2013-12-05 23:22

Bsync est un outil de synchronisation bidirectionnelle utilisant Rsync pour les transferts. Les fichiers déplacés sont également synchronisés de manière intelligente.

Il utilise rsync pour les transferts de fichiers, find pour générer les snapshots de listes de fichiers, et ssh pour les les transferts distants.

bsync est une alternative à Unison, écrit en Python 3. Une grande force de bsync : il détecte et applique les déplacements de fichiers d’un dossier vers l’autre (Unison utilise des copies pour gérer les fichiers déplacés).

J’ai développé bsync pour synchroniser mon dossier de musique de mon laptop vers mon Raspberry Pi de manière efficace, et pour synchroniser avec le laptop de ma compagne également.

Bsync est publié sous GPL. N’hésitez pas à soumettre bugs et suggestions dans les tickets GitHub.

Infos, Téléchargement et Installation sur le dépôt GitHub.

2013-12-05 23:22 · Tags: , , , , ,
2012-09-08 23:59

Un petit script pour écouter les événements souris avec la commande mev utilisant gpm (General Purpose Mouse).

Utilisé sur mon Raspberry Pi pour lancer des commandes MPD (Music Player Daemon), pour utilisé la souris comme télécommande.

Je n’ai pas encore trouvé comment isolé les événements de la molette souris, pour pouvoir régler le volume. Quelqu’un a une idée ?

Sous Archlinux, vous pouvez ajouter la commande suivante dans /etc/rc.local pour le lancer au boot :

nohup /usr/local/bin/mpd_mouse.sh > /tmp/mpd_mouse.log 2>&1 &
#!/bin/sh
# This script listen to mouse events with the mev command using gpm.
# Can be used for example on the Raspberry Pi to run mpd commands, to use a mouse as a remote control.
# You can start it as a daemon with:
# nohup /usr/local/bin/mpd_mouse.sh > /tmp/mpd_mouse.log 2>&1 &

# start gpm if not already started
gpm -m /dev/input/mice -t imps2

# unset TERM variable, otherwise mev refuses to start when detecting xterm
unset TERM

echo "Listening to mouse events..."

# we use script to fake a tty for mev, otherwise it exits (note: mev logs errors in syslog)
script -qc "mev -E" /dev/null </dev/null | grep --line-buffered -v "mouse-movement" | while read LINE
do
        echo
        echo "$LINE"

        EVENT=$(echo "$LINE" | cut -d' ' -f1 | cut -d'(' -f2)

        if [ "$EVENT" = "down-mouse-1" ]
        then
                echo mpc stop
                mpc stop
        elif [ "$EVENT" = "down-mouse-2" ]
        then
                echo mpc toggle
                mpc toggle
        elif [ "$EVENT" = "down-mouse-3" ]
        then
                echo mpc next
                mpc next
        else
                echo "nothing"
        fi

done
2012-09-08 23:59 · Tags: , ,