X dans X

Publié le par Peck

Maintenant sur http://linux-attitude.fr/post/X-dans-X

Niveau
:
Résumé: Xnest :1&

Il y a certains outils dont on se demande parfois l'utilité, qui ont été faits pour faire des tests et qui s'avèrent finalement bien pratiques dans des situations bien particulières.

Xnest
Xnest est un serveur X qui ne fonctionne que dans un autre serveur X. C'est-à-dire que pour le serveur X existant, il s'agit d'une simple fenêtre mais pour l'application qui affiche sur ce serveur, il s'agit d'un vrai serveur X.

Comment ça marche ?

 # A lancer dans un terminal ayant accès à un serveur X
 $ Xnest -ac :1 &
 $ export DISPLAY=:1
 $ xclock

  • L'option -ac indique de ne pas faire de contrôle d'accès pour nous simplifier le droit d'utiliser ce serveur X
  • L'option :1 dit que ce nouveau serveur X a pour identifiant 1. Sachant qu'il y a probablement déjà un serveur avec l'identifiant 0 sur votre machine. On peut indiquer n'importe quel nombre positif.
  • Le export DISPLAY indique aux commandes graphiques d'utiliser le serveur X d'identifiant donné sur la machine locale.
  • La commande xclock devrait vous ouvrir une horloge dans la fenêtre du nouveau serveur X.

Utilité
Il m'est arrivé plusieurs fois de trouver une utilité à ce serveur Xnest.


Tout d'abord pour tester un nouveau window manager sans risquer de casser l'environnement dans lequel on tourne. Il suffit de lancer le serveur Xnest et le window manager à l'intérieur, ainsi, pas de risques.


Une autre fonction m'est apparue lorsqu'une application qui utilise la bibliothèque athena, s'est mise à refuser les entrées souris (semblerait-il a cause du window manager). J'ai donc créé un petit script pour la lancer a l'intérieur d'un Xnest, sans window manager bien sur. Ainsi plus de problème. On ferme la fenêtre X lorsqu'on n'en a plus besoin.


Une dernière utilisation, mais pas des moindres, l'accès à un bureau distant. Si vous avez une machine qui propose un login pas X à distance (par gdm,kdm,xdm), vous pouvez vous y connecter de la façon suivante :
$ Xnest -query your.machine.net :1
Et vous vous retrouvez avec un login complet et ensuite le bureau distant dans une fenêtre.


L'utilisation de Xnest reste bien sûr anecdotique, mais il est toujours utile de connaître son existence.

PS: Xnest est/sera bientôt remplacé par Xephyr qui apporte un support plus complet de certaines extensions, du clavier, de l'openGL ...

Publié dans admin

Commenter cet article