Table des matières

, ,

Visionneur de bureaux distants Gitso

Ce logiciel n'est plus maintenu et ne semble plus fonctionner avec Ubuntu 20.04.

Comme d'autres visionneurs de bureau à distance, Gitso est un logiciel permettant de se connecter à distance, à travers une interface graphique, à un serveur d'affichage. De cette manière, vous affichez sur votre propre écran ce que vous verriez à l'écran d'un autre ordinateur.

Contrairement à la plupart des autres solutions, Gitso utilise le reverse VNC, c'est à dire que le serveur est la machine de la personne qui aide et le client - qui va se connecter au serveur - est la machine de la personne aidée. C'est donc le serveur (l'ordinateur qui prend la main) qui devra ouvrir le port TCP 5500 correspondant au protocole VNC. Ceci permet à un utilisateur confirmé ("serveur", le dépanneur) d'aider un utilisateur parfaitement novice ("client", ordinateur dépanné). Le "client" (le dépanné) aura pour seule mission d'installer Gitso (si cela n'a pas été fait en amont), de le lancer et de saisir l'adresse IP du "serveur" (le dépanneur).

Gitso utilise le protocole VNC. C'est un logiciel libre, multi-plateforme, sous licence GNU GPL v3.

En 2020, le logiciel n'est plus développé depuis plusieurs années, mais il est toujours fonctionnel (?), et toujours présent dans les dépôts officiels Ubuntu (version 20.04).

Il est conseillé de lire la page VNC ainsi que celle sur le Bureau à distance pour avoir une vue globale du principe de la connexion à distance.

Pré-requis

Installation

Il suffit d'installer le paquet gitso sur les 2 PC (le dépanneur et le dépanné).

Utilisation côté serveur (aidant)

Lancer l'application par votre menu des applications (ou en tapant son nom dans un terminal).

Le PC qui veut prendre la main (le "serveur"), doit d'abord ouvrir son port TCP 5500 correspondant au port par défaut du protocole VNC. Ceci se configure au niveau du pare-feu.

Le serveur cochera la case Give Support (venir en aide) puis Start (commencer) pour lancer le serveur qui va écouter sur le port 5500.

Il lui faut ensuite communiquer son adresse IP à l'utilisateur côté "client" (par téléphone, mail, irc, fax, signaux de fumée…).

Depuis un terminal, avec curl :

curl ifconfig.me

ou avec wget :

wget http://checkip.dyndns.org/ -O - -o /dev/null | cut -d: -f 2 | cut -d' ' -f 2 | cut -d\< -f 1

Autre solution, pour connaître l'adresse IP du poste serveur : naviguer sur un site tel que anonymat.org ou mon-ip.com ou mon-ip-addresse.com.

Utilisation côté client (aidé)

Le client, qui veut être aidé, n'a aucune intervention à faire sur la configuration de son pare-feu. Il n'a qu'à exécuter Gitso, laisser cochée la case Get Help (obtenir de l'aide, cochée par défaut), saisir l'IP du serveur qui va l'aider et enfin Start (commencer).

Après quelques secondes, une fenêtre contenant le bureau du client va apparaître sur le poste serveur : c'est à lui de jouer !

Problème connu

Pas de bouton Start

Si la fenêtre de connexion ne comporte aucun bouton "Start", il suffit de valider en tapant sur la touche "Entrée" du clavier.

Le fait que les boutons "Start" et "Stop" n'apparaissent pas est lié au fait que la taille de la fenêtre de Gitso est définie en valeur absolue, l'unité étant le pixel. Il en résulte que, selon votre résolution d'écran, cette taille ne sera pas assez importante pour faire tenir tous les éléments de la fenêtre. En effet, la taille de ces éléments est relative à la résolution.

Avec des résolutions d'écran élevées, ce ne sont donc pas seulement les boutons "Start" et "Stop" qui sont manquants mais ce peut être aussi l'option "Give support" qui sera partiellement ou en totalité masquée, ce qui est plus problématique.

Une solution pour remédier à ce problème et récupérer l'affichage de l'intégralité des éléments constitutifs de la fenêtre de Gitso, c'est d'éditer le fichier /usr/share/gitso/ConnectionWindow.py qui définit la taille de sa fenêtre.

On prendra donc d'abord soin d'effectuer une copie de sauvegarde de ce fichier, en ouvrant un terminal puis en y entrant la commande suivante :

sudo cp /usr/share/gitso/ConnectionWindow.py /usr/share/gitso/ConnectionWindow.py.BKP

On pourra ensuite éditer le fichier qui nous intéresse. Par exemple, en mode graphique, avec l'éditeur de texte gedit comme ceci :

sudo -H gedit /usr/share/gitso/ConnectionWindow.py

Repérer alors le bloc suivant du fichier qui débute à la ligne n°53 :

		if re.match('(?:open|free|net)bsd|linux',sys.platform):
			width = 165
			height = 350 
			xval1 = 155
			xval2 = 250
		else:
			height = 175 
			width = 350
			xval1 = 180
			xval2 = 265

Ce bloc indique que si le système d'exploitation est une variante de BSD ou de GNU+Linux, alors la fenêtre adopte une certaine taille et position, sinon elle en adopte une autre.

Il s'agit donc ici (puisque nous utilisons un système GNU+Linux) de modifier la valeur de la première ligne commençant par width (qui signifie largeur) et qui correspond à la ligne n°54 du fichier, ainsi que celle de la ligne suivante qui commence par height (pour hauteur) et qui correspond à la ligne n°55.

Voici, par exemple, le bloc ainsi modifié en utilisant des valeurs adaptées pour un écran dont la résolution est de 1680x1050 pixels :

                if re.match('(?:open|free|net)bsd|linux',sys.platform):
                        width = 220 
                        height = 400 
                        xval1 = 155 
                        xval2 = 250 
                else:
                        height = 175 
                        width = 350 
                        xval1 = 180 
                        xval2 = 265

Une fois les modifications voulues effectuées, enregistrer le fichier puis relancer Gitso qui doit alors afficher l'intégralité de ses options et boutons. Si ce n'est toujours pas le cas, éditer à nouveau le fichier pour ajuster les valeurs des lignes 54 et 55.

Notons également que les valeurs "xval1" (ligne 56 du fichier) et "xval2" (ligne 57) correspondent respectivement, sous GNU+Linux, à l'alignement horizontal du bouton "Start" et à celui du bouton "Stop". On pourra donc également ajuster ces valeurs si, par exemple, le bouton "Start" empiète sur le texte de l'option "Use low colors".

Enfin, il est également possible de paramétrer la position et la taille de la liste déroulante située en face de l'option "Get Help", notamment si elle empiète sur l'intitulé de ce bouton ou qu'elle est trop petite. Ceci est géré au niveau de la ligne 331 du fichier qui est par défaut la suivante :

                 self.hostField = wx.ComboBox(self, 30, "", wx.Point(105, 12), wx.Size(230, -1), list, wx.CB_DROPDOWN)

Pour régler la position horizontale de la liste en question, il faudra adapter la valeur située juste après le paramètre "wx.Point(", tandis que pour régler sa largeur on ajustera la valeur située juste après le paramètre "wx.Size(".

Voici par exemple la ligne ainsi modifiée pour un écran de résolution 1680x1050 pixels, suite à l'adaptation des dimensions de la fenêtre déjà indiquée plus haut :

                 self.hostField = wx.ComboBox(self, 30, "", wx.Point(108, 12), wx.Size(270, -1), list, wx.CB_DROPDOWN)

Désinstallation

Pour supprimer cette application, il suffit de supprimer son paquet. Selon la méthode choisie, la configuration globale de l'application est conservée ou supprimée. Les journaux du système, et les fichiers de préférence des utilisateurs dans leurs dossiers personnels sont toujours conservés.

Liens

* Dépanner à distance avec Gitso
* page google code de gitso