SyncThing : interface de gestion GTK/Desktop/Systray

14 juin 2016

Inconditionnel de SyncThing, il est installé sur chacune de mes machines. Soit pour rapatrier sur mes NAS des fichiers depuis des serveurs (donc à sens unique) soit pour synchroniser bilatéralement des fichiers perso entre PC/smartphones => je suis un gros gros fan de cette solution Open Source ne nécessitant pas de faire transiter mes fichiers par d’autres machines que les miennes *___*

Pour tout ce qui concerne le DL/rapatriement @home, c’est mon valeureux NUC “PCTV” qui s’en charge. En même temps vu le prix que j’y ai mis, c’était le but. Bien que ST soit pour moi comme Sonarr, SickRage, CouchPotato, SABnzbd/NZBget, ruTorrent, c’est-à-dire fait pour bosser tout seul sans nécessiter d’intervention autre qu’un clic sur un nom de film/série ou un lien .nzb/.torrent, j’apprécie tout de même de pouvoir regarder de temps à autres où en est le rapatriement depuis telle ou telle machine. “Sans doute un côté voyeur refoulé”, peut-être. Passons.

Le fait est qu’ouvrir une page Web “juste pour ça”, c’est ennuyeux pour un flemmard pas assez geek. C’est là qu’entre en jeu SyncThing-GTK (pour Linux).

Syncthing-GTK_001

 

Okay les Windosiens, ne partez pas, voyez ce que Linux permet de réaliser avant :)  En mode moins bullsh$t, je vous informe aussi qu’il existe SyncTrayzor pour Windows (notamment dispo sur Chocolatey via choco install synctrayzor). Au-delà du nom qui peut faire peur au premier abord, sachez que c’est un systray pour ST. Je n’ai pas testé mais je suppose que c’est très efficace/complet et qu’on peut, comme je vais le montrer ensuite pour la “version” Linux, le modifier pour afficher un ST distant.

Parce que oui, je veux afficher un SyncThing qui n’est pas sur mon PC mais sur le “PCTV”. C’est facile et ça me permet de voir cette interface tout comme les notifications de fichiers ajoutés/supprimés.

 

Installation

Ce paquet pour ArchLinux et pour Debian/Unbuntu voir ce sujet. Vous installez donc à la fois SyncThing et l’interface GTK. C’est justement ensuite en modifiant le fichier de configuration du SyncThing installé localement qu’on peut en afficher un distant. Donc ATTENTION, ça signifie que si vous installez ST-GTK sur un PC où vous avez déjà ST, il faut sauvegarder son fichier de configuration pour le remettre ensuite (qu’il ne soit pas écrasé lors de l’installation du GTK). Ce fichier config.xml est situé dans /home/USER/.config/SyncThing/.

 

 

Configuration

Je passe pour l’instant sur la configuration du daemon ST qui sera affiché dans ST-GTK. Si vous avec un ST local vous aurez alors remis votre config.xml et ce sera simple. Pour un ST distant je mets ça ensuite.

SyncThing-GTK est très complet, que ce soit niveau interface mais aussi options.

On y retrouve nos différents serveurs sur la droite et à gauche les dossier partagés sur le ST affiché (ici “HOME”).

 

Syncthing-GTK_008

Un clic droit sur un dossier partagé vous donnera accès à un menu complet  =>Menu_002Menu_003

 

<=  Et il en sera de même avec un Serveur

 

 

Car vous avez accès en effet accès aux mêmes options (voire un peu plus si on prend en compte celle de l’interface) sur ST-GTK que la page d’admin Web de ST.

Edit Shared Folder_007

Edit Shared Folder_006

Edit Shared Folder_005

Syncthing-GTK_004

Réglages de l'Interface Utilisateur_009

Réglages de l'Interface Utilisateur_010

Réglages de l'Interface Utilisateur_012

 

Réglages de l'Interface Utilisateur_013

Réglages du démon Syncthing_014

 

Configuration pour afficher un ST distant

Ce ne sera possible qu’en modifiant le fichier de configuration du ST local. Par conséquent cette astuce ne fonctionne que si votre SyncThing installé localement n’est pas utilisé.

Dans mon cas je veux afficher sur ce PC le ST du PCTV. Il faut donc que je récupère les informations suivantes dans la configuration du ST distant (soit dans son config.xml soit via son interface Web) :

 – Son ID et son Nom

Sélection_015

Ou à récupérer ligne 18 du config.xml

<device id="XXX-XXX-XXX" name="Home"

 – Son adresse (IP:port). Au cas où vous ne sauriez pas lire l’URL de votre interface Web, ça se retrouve aussi dans le config.xml, ligne 22

 <address>192.168.1.101:7070</address>

 – Son API

Sélection_016

Qu’on trouve également ligne 23 du config.xml

 <apikey>ABCD1234</apikey>

 

Il suffit ensuite de reporter ses informations dans le config.xml (/home/USER/.config/SyncThing/config.xml) du SyncThing “local”, installé avec SyncThing-GTK puis de relancer le tout. Et vous avez ainsi accès localement à un ST distant :)

 

 

Mots clés