Site WWW de Laurent Bloch
Slogan du site

ISSN 2271-3905
Cliquez ici si vous voulez visiter mon autre site, orienté vers des sujets moins techniques.

Pour recevoir (au plus une fois par semaine) les nouveautés de ce site, indiquez ici votre adresse électronique :

Installer un environnement graphique X (Linux) et de programmation sous Windows 10 (Windows Services for Linux, WSL)
Article mis en ligne le 20 juillet 2016
dernière modification le 16 octobre 2017

par Laurent Bloch
logo imprimer
Licence : CC by-nd

Un article précédent exposait comment installer les services Linux de Windows 10 (WSL) dans l’environnement Windows.

Ceci accompli, on peut travailler en ligne de commande sous le shell Bash de Linux, dans la fenêtre d’invite de commande de Windows, ou dans une fenêtre PowerShell, quand même plus confortable. C’est parfait pour l’homme système, mais l’utilisateur moyen attend de nos jours un environnement graphique, ne serait-ce que pour son navigateur Web. C’est encore du travail, mais on va y arriver.

 Installer l’environnement de programmation pour Bigloo

Dans un premier temps je pense à mes étudiants du Cnam, qui ont besoin de l’environnement de programmation Bigloo pour faire le travail que je leur donne.

Les prérequis sont les mêmes que pour Ubuntu normal (cf. l’article qui en parle). Dans une fenêtre PowerShell entrer les commandes suivants :

Toutes les versions de Bigloo ne s’installent pas parfaitement, la démarche que je conseille, parce que je l’ai effectuée avec succès, passe par l’enchaînement des commandes suivantes (toujours sous bash dans une fenêtre PowerShell) :

Si tout s’est bien passé, normalement Bigloo fonctionne et on peut commencer à programmer dans une fenêtre PowerShell où on aura lancé bash, en saisissant les texte de ses programmes avec emacs (emacs -nw <mon-fichier>). Mais ce sera mieux avec un environnement graphique.

 Windows Services for Linux (WSL) en mode graphique

L’environnement graphique sera un de ceux habituels sous Linux, c’est-à-dire un système à fenêtres sous X [1], mais l’affichage sera assuré par un serveur d’affichage X sous Windows 10, il faut donc commencer par installer un tel serveur.

 Un serveur d’affichage X pour Windows 10

Les deux serveurs X disponibles pour Windows, logiciels libres et bien maintenus sont Xming et VcXsrv. Les deux viennent avec leur outil de lancement Xlaunch, fonctionnent correctement, modulo quelques restrictions, on peut les télécharger sur Sourceforge.net. Pour VcXsrv, pour lequel j’ai une légère préférence :

https://sourceforge.net/projects/vcxsrv/

Ce logiciel s’installe comme tout logiciel Windows.

Il faudra lancer VcXsrv au moyen de Xlaunch (pour lequel un raccourci est créé sur l’écran d’accueil) avant les opérations suivantes. Attention, la procédure de lancement propose plusieurs options, avec plusieurs fenêtres, plein écran, etc., mais la seule qui fonctionne est : une seule grande fenêtre, comme indiqué sur cette figure. J’ai perdu trois jours avant de trouver cette information capitale sur ce forum ou sur cet autre (consulter les deux ne sera pas du temps perdu).

Il est aussi possible, toujours dans le menu Xlaunch, de désactiver le contrôle d’accès, mais cela fonctionne également avec le contrôle d’accès [2].

 Correctif pour dbus

De nombreux logiciels Unix/Linux utilisent, notamment en mode graphique, un service de communication nommé dbus, qui ne fonctionne pas avec WSL. Il faut donc le contourner. Le correctif a été fourni par ShaRose. Il faut modifier deux fichiers, .bashrc dans votre répertoire d’accueil (home directory), et /usr/share/dbus-1/session.conf, soit en les éditant avec Emacs, soit ainsi (bon exercice de shell Unix) :

C’est-à-dire, placer à la fin de .bashrc la ligne :

et dans le fichier /usr/share/dbus-1/session.conf modifier la ligne <listen>...</listen> ainsi :

Toujours dans ce même fichier /usr/share/dbus-1/session.conf j’ai remplacé la ligne <auth>EXTERNAL</auth> par les deux lignes suivantes, avec un bon résultat, même Emacs se présentait bien :

Une autre invocation magique qui m’a semblé avoir de l’effet (je l’ai appliquée, peu après XFCE démarrait...) :

Plus de détails, si besoin, ici. Mais, très clairement, tout ce que j’obtiens dans l’environnement graphique est un peu instable.

Après ces opérations, il faut sortir de bash et le relancer pour que les modifications soient prises en compte.

 Retour à WSL et Bash

Une fois notre serveur X pour Windows lancé, retour à la fenêtre PowerShell et à Bash. Il y a encore quelques petites choses à installer (c’est l’environnement Xfce4 qui m’a donné les meilleurs résultats) :

et ensuite :

et si tout s’est bien passé, on a un bureau Linux complet ! Bon, on lance une fenêtre Terminal, on clique sur le menu Edit -> Profile Preferences pour choisir la couleur « Noir sur fond clair », parce qu’avec « Noir sur noir » on n’y voit rien.

Voilà, ainsi on est enfin dans un monde familier, sous Windows, et avec de bien meilleures performances qu’avec une machine virtuelle !

Notes :

[1Souvent on l’oublie, mais les systèmes Unix, dont Linux, sont dotés d’un système d’interface graphique inégalé, X Windows System, ou tout simplement X. C’est un protocole en réseau, ce qui permet, depuis un ordinateur, d’ouvrir une fenêtre sur un autre ordinateur. Le serveur X est le serveur d’affichage, pas le serveur de programmes ou de données, ce qui est un peu déroutant quand on n’est pas habitué. Ce système extraordinaire est le fruit de la collaboration entre Digital Equipment Corporation (DEC), IBM et le MIT dans les années 1980 (première version en 1984), sous la bannière du projet Athena.

[2Si comme moi vous avez des souvenirs émus des débuts de X dans les années 80, lancez plutôt Xming : la fenêtre qui s’ouvre est exactement celle d’il y a un quart de siècle, c’est émouvant...


Forum
Répondre à cet article


pucePlan du site puceContact puceEspace rédacteurs puce

RSS

2004-2017 © Site WWW de Laurent Bloch - Tous droits réservés
Site réalisé sous SPIP
avec le squelette ESCAL-V3
Version : 3.87.47