Comme tout le monde j’aime bien partager des photos à travers mes comptes twitter ou facebook, or dans ma quête d”autohébergement de mes fichiers, je cherchais à faire cette opération simplement via nautilus, sur mon serveur. J’ai donc écrit un petit script à copier dans ~/.gnome2/nautilus-scripts . Le script est tout bidon mais répond aux besoin que j’avais. Il requière l’installation des paquets ncftp et xclip. En gros, le script prend un fichier via nautilus, l’upload sous un nom aléatoire (en conservant l’extension) en ftp dans un répertoire non indexé lié à une url, suivant le résultat, il utilise la notification de votre desktop pour signaler une erreur ou vous afficher l’url de partage. Cette url est copiée dans le presse papier.
Quitte à donner du grain à moudre aux robots qui scannent nos datas sur les réseaux sociaux ou autres clouds, autant qu’ils viennent les chercher eux mêmes.
Voici le code:
server=”nom du serveur ftp”
login=”login ftp”
pass=”pass ftp”
site=”url du partage”
dir=”répertoire sur le serveur”icon_ok=”/usr/share/icons/Faenza/places/48/gnome-fs-share.png”
icon_error=”/usr/share/icons/Faenza/status/48/dialog-error.png”if [ "$1" != "" ] then
i=1
file=`echo “$NAUTILUS_SCRIPT_SELECTED_FILE_PATHS” | sed ”$i’!d’`
rand=`perl -e ‘print int(rand(605000-2000)) + 2000′`;
ext=`echo $file | rev | cut -d “.” -f 1 |rev`;
url=$site”/”$rand.$ext;
/bin/cp -f “$file” /tmp/$rand.$ext
ncftpput -u $login -p $pass $server $dir /tmp/$rand.$extif [ $? -eq 0 ] then
/bin/rm -f /tmp/$rand.$ext
notify-send “Url to copy” “$url” -i $icon_ok -t 5000
echo $url | xclip
else
notify-send “Log” “Something went wrong !” -i $icon_error -t 5000
fi
else
notify-send “Log” “Error on file” -i $icon_error -t 5000
fi





