IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)

Vous êtes nouveau sur Developpez.com ? Créez votre compte ou connectez-vous afin de pouvoir participer !

Vous devez avoir un compte Developpez.com et être connecté pour pouvoir participer aux discussions.

Vous n'avez pas encore de compte Developpez.com ? Créez-en un en quelques instants, c'est entièrement gratuit !

Si vous disposez déjà d'un compte et qu'il est bien activé, connectez-vous à l'aide du formulaire ci-dessous.

Identifiez-vous
Identifiant
Mot de passe
Mot de passe oublié ?
Créer un compte

L'inscription est gratuite et ne vous prendra que quelques instants !

Je m'inscris !

Windows 10 : la prise en charge des applications GUI Linux pour le sous-système Windows pour Linux (WSL) débarque en Initial Preview
Et est baptisée « WSLg »

Le , par Stéphane le calme

114PARTAGES

18  0 
Il y a un an, lors de la BUILD 2020, Microsoft a présenté son objectif d'apporter des applications GUI Linux au sous-système Windows pour Linux (WSL) pour exécuter des applications GUI Linux. Microsoft vient d’annoncer la disponibilité de la première Preview de cette fonctionnalité open source très attendue ! L’éditeur a donné à cette fonctionnalité le surnom : « WSLg ».

WSL 2 est une nouvelle version de l’architecture qui permet au sous-système Windows pour Linux d’exécuter des fichiers binaires ELF64 Linux sous Windows. Cette nouvelle architecture, qui utilise un véritable noyau Linux, modifie la façon dont ces binaires Linux interagissent avec Windows et le matériel de votre ordinateur, tout en offrant la même expérience utilisateur que dans WSL 1 (la version actuellement disponible en version stable). WSL 2 offre des performances de système de fichiers beaucoup plus rapides et une compatibilité totale des appels système, ce qui vous permet d'exécuter davantage d'applications comme Docker !

WSL 2 inclut donc un véritable noyau Linux qui vous permet d’exécuter davantage de logiciels Linux sous Windows et offrant de meilleures performances que WSL 1.

Cette nouvelle version de WSL 2 utilise les fonctionnalités Hyper-V pour créer une machine virtuelle légère avec un noyau Linux minimal. Il faut s’attendre à une meilleure compatibilité avec les logiciels Linux, y compris la prise en charge de Docker, et « une augmentation spectaculaire des performances du système de fichiers ».

Par le biais de Craig Loewen, Program Manager, Windows Developer Platform, Microsoft a indiqué l'année dernière que la prise en charge des interfaces graphiques d'applications arriverait sur WSL. Avec la sortie de WSL 2, il a révélé que le travail sur cette fonctionnalité était presque terminé. En d'autres termes, que les utilisateurs seraient bientôt en mesure d'exécuter des applications Linux en WSL dans leur propre interface utilisateur dédiée, ce qui rendra l'expérience globale plus native. Une démo fournie par Microsoft montrait alors que Microsoft Teams s'exécute dans WSL.

« La prise en charge des interfaces graphiques d'applications dans WSL devient une réalité ! Nous nous rapprochons d'une Preview initiale et sommes heureux d'annoncer une version Preview pour Windows Insiders dans les prochains mois.

« Vous pouvez voir que WSL prend en charge de nombreux types d'applications différents, y compris les EDI s'exécutant entièrement dans un environnement Linux. Nous avons inclus de nombreux détails d'ajustement et de finition, tels que l'affichage des icônes pour les applications Linux dans la barre des tâches et la prise en charge de l'audio avec votre microphone (et oui, c'est vraiment la version Linux de Microsoft Teams exécutée dans WSL). »

L'arrivée de l'Initial Preview

Dans un billet de blog, Craig Loewen a annoncé la disponibilité de la Preview.

Pour quoi puis-je utiliser la prise en charge des applications GUI?

WSL vous permet d'exécuter un environnement Linux et jusqu'à présent, il s'est concentré sur l'activation des utilitaires et des applications des outils de ligne de commande. La prise en charge des applications GUI vous permet désormais d'utiliser également vos applications GUI Linux préférées. WSL est utilisé dans une grande variété d’applications, de charges de travail et de cas d’utilisation. En fin de compte, c’est à vous de décider dans quelle mesure vous souhaitez utiliser la prise en charge des applications GUI. Microsoft a mis en évidence certains scénarios clés pour vous permettre d'apprécier l'exécution d'applications dans un environnement Linux.

Utilisez votre EDI de choix pour développer des projets Linux

Avec Visual Studio Code, vous pouvez utiliser VS Code Remote pour créer un moyen pour vous d'avoir un EDI Linux à part entière directement sur votre machine Windows, de conserver les extensions et les paramètres à la fois sur Windows et différentes distributions WSL. WSLg vous permettra d'exécuter d'autres EDI tels que gedit, les éditeurs basés sur JetBrains, gvim, etc., pour tester, créer et déboguer vos applications Linux de manière performante.

Exécutez uniquement des applications Linux ou des cas d'utilisation spécifiques à Linux tels que les tests

Vous pouvez utiliser cette fonction pour exécuter n'importe quelle application GUI qui pourrait exister uniquement sous Linux, ou pour exécuter vos propres applications ou des tests dans un environnement Linux. Cela pourrait être extrêmement utile pour les développeurs qui souhaitent tester leur application multiplateforme, car ils peuvent désormais l'exécuter directement sur Windows 10, puis facilement à l'intérieur de Linux sans jamais avoir besoin de changer de machine ou de gérer une machine virtuelle.


Créez, testez et utilisez des applications Linux qui utilisent l'audio ou le microphone avec prise en charge audio intégrée

Les applications GUI Linux sur WSL incluront également une prise en charge audio et microphone prête à l'emploi. Cet aspect passionnant permettra à vos applications de lire des signaux audio et d'utiliser le microphone, parfait pour créer, tester ou utiliser des lecteurs de films, des applications de télécommunication, etc.

Tirez parti de l'accès GPU de WSL pour exécuter des applications Linux avec une accélération 3D

Dans le cadre de cette fonctionnalité, Microsoft a également activé la prise en charge des graphiques 3D accélérés par GPU! Grâce au travail effectué dans Mesa 21.0, toutes les applications qui effectuent un rendu 3D complexe peuvent tirer parti d'OpenGL pour les accélérer à l'aide du GPU de votre machine Windows 10. Cela permettra à certaines de vos applications les plus complexes de fonctionner correctement, comme l'exécution de Gazebo, un outil de simulation robotique. Cette expérience sera bientôt incluse par défaut avec différentes distributions WSL, mais Microsoft a donné des instructions que vous pouvez suivre afin d'y accéder immédiatement, obtenir le bon pilote graphique et vous assurer que votre distribution a une version compatible de Mesa.

Comment marche cette fonctionnalité?

Dans le billet en source, Microsoft a proposé une série de démos et fait remarquer aux développeurs qu'il n'était pas nécessaire de démarrer un serveur X manuellement. L'éditeur explique :

« avec cette fonctionnalité, nous démarrons automatiquement une distribution système compagnon, contenant un Wayland, un serveur X, un serveur audio pulsé et tout le reste nécessaire pour que les applications GUI Linux communiquent avec Windows. Une fois que vous avez fini d'utiliser les applications GUI et que vous avez terminé votre distribution WSL, la distribution système mettra également fin automatiquement à sa session ».

Et d’indiquer que, comme pour le reste de la plomberie WSL, son intention est que ce composant soit entièrement géré et transparent pour les utilisateurs :

« Nos intentions sont que cette distribution système soit aussi invisible que possible pour l'utilisateur, et c'est pourquoi vous ne verrez pas cette distribution système lorsque vous exécutez wsl -l –v ».

Enfin, l'éditeur a indiqué qu'il se sert de la distribution CBL-Mariner de Microsoft pour cette distribution système!

« CBL-Mariner est une distribution Linux interne utilisée traditionnellement pour l'infrastructure cloud et les produits et services de périphérie de Microsoft, et nous étendons maintenant son utilisation pour prendre en charge les applications GUI à l'intérieur de WSL ».

Le diagramme ci-dessous donne un résumé général de l'architecture de cette fonctionnalité.


Pour une vue complète du travail abattu par Microsoft et des détails techniques approfondis, un billet de blog rédigé par les développeurs qui ont rendu cette fonctionnalité possible est disponible.

Microsoft amorce le déploiement de cette fonctionnalité en tant qu'Initial Preview avant de l'intégrer complètement à l'expérience WSL. Pour commencer à utiliser la prise en charge des applications GUI Linux, vous devez vous assurer que vous utilisez Windows 10 Insiders preview build 21364 ou une version ultérieure. Si WSL est déjà installé, il vous suffit d'exécuter wsl --update et vous serez configuré pour utiliser les applications GUI. Si WSL n'est pas activé, l'exécution de wsl --install installera WSLg automatiquement dans le cadre de la configuration initiale de WSL.

Source : Microsoft

Et vous ?

Sur quel système d'exploitation êtes-vous en privé et/ou en entreprise ?
Si vous êtes sur Windows, avez-vous déjà essayé WSL ? Qu'en pensez-vous ?
Que pensez-vous de cette WSLg ?

Une erreur dans cette actualité ? Signalez-le nous !

Avatar de earhater
Membre éclairé https://www.developpez.com
Le 25/05/2021 à 22:18
Bonjour ! J'utilise WSL au quotidien et c'est un super outil. Je suis très intéressé par la prise en charge de ces applications graphiques nativement (j'utilise x410 aujourd'hui pour lancer par exemple mon IDE depuis linux). J'ai regardé la vidéo en source de cet article, il consiste simplement à faire un "wsl --update" et "sudo apt-get install gedit && gedit" depuis linux. Malheureusement déjà pour moi "wsl --update" n'est pas pris en charge. En regardant sur le github de WSL j'ai trouvé le moyen de télécharger le dernier kernel manuellement et de l'appliquer. Malheureusement une fois que je lance gedit il ne trouve pas de gestionnaire de fenêtre "cannot open display". Quelqu'un a-t-il plus d'infos ou a réussi à le faire fonctionner ? Cette MAJ est-t-elle déjà dispo pour tout le monde ?

EDIT: j'ai trouvé la réponse ici. Cette MAJ est disponible pour le build "build 21364" quand la version grand publique est "19042". Ce n'est donc pas disponible sans passer par le canal beta windows insider
3  0 
Avatar de earhater
Membre éclairé https://www.developpez.com
Le 26/05/2021 à 14:05
Y a t'il d'autres utilisateurs de WSL qui pourraient donner leur retour d’expérience, positifs et négatifs et si possible en quoi WSL est mieux/plus pratique qu'une VM ou un conteneur ?
Bonjour ça y ressemble fortement sans être vraiment pareil. Le gros avantage de WSL c'est que c'est l'ip locale et pas de la VM qui est utilisée (si on lance un script qui écoute en http sur localhost:8080 on va sur chrome windows et on tape http://localhost:8080). Le second gros avantage c'est de pouvoir utiliser les commandes windows directement dans linux. Le dernier avantage est d'être nativement intégré à windows. Je pense que l'on peut toutefois avoir le même résultat avec quelque chose comme vagrant mais en moins pratique à utiliser, avec les problèmes réseaux que ça engendre et le fait que ce ne soit pas natif (là il suffit d'aller dans le store télécharger ubuntu en plus d'être intégré dans le terminal windows et nativement dans les IDE de type jetbrains ou VS code). Ils ont en plus intégré le fait de pouvoir utiliser la carte graphique de son PC comme carte dédiée dans WSL, là où ce n'est pas possible avec une VM à moins d'avoir 2 GPU et de faire du passthrough

C'est pour cela que la prise en charge des applications graphiques est un gros plus, là un conteneur ne peut pas le gérer et on sait très bien qu'une full VM n'est pas très pratique à utiliser en interface graphique (là les applications de bureaux linux se lancent comme une app windows)
3  0 
Avatar de vicolachips44
Candidat au Club https://www.developpez.com
Le 28/05/2021 à 5:34
"Microsoft en a surpris plus d'un dans la communauté des développeurs Linux ces dernières années."
Surprenant de commencer l'article par une telle affirmation ou alors il faudrait préciser ce qu'est un développeur Linux ?

Développeur WEB aurait été plus approprié selon moi.

Microsoft a une stratégie commerciale basique qui consiste à croître et engranger plus de profits
et donc à tenter de prendre des parts de marché là où il en reste encore et de ce point de vue, on peut
dire que c'est une belle réussite.

Non, la disponibilité de WSL2 n'est pas du tout une raison valable de faire passer tous les serveurs
sous Windows xD!
2  0 
Avatar de chrtophe
Responsable Systèmes https://www.developpez.com
Le 26/05/2021 à 18:13
Pour un devops qui fait de l'hétérogène, c'est peut-être pratique.
1  0 
Avatar de chrtophe
Responsable Systèmes https://www.developpez.com
Le 26/05/2021 à 12:37
Windows pour Linux ». WSL 2 exécute un noyau Linux complet dans une machine virtuelle légère.
Donc en gros du conteneur. Perso dans ce cas pourquoi ne pas faire du conteneur ? Tout simplement parce que cette réflexion que je fais est une réflexion de sysadmin, pas de développeur.

Mais vu les remarques de earhater, ça me donne pas envie d'utiliser WSL.

Y a t'il d'autres utilisateurs de WSL qui pourraient donner leur retour d’expérience, positifs et négatifs et si possible en quoi WSL est mieux/plus pratique qu'une VM ou un conteneur ?
1  1 
Avatar de esperanto
Membre chevronné https://www.developpez.com
Le 27/05/2021 à 10:34
Citation Envoyé par earhater Voir le message
Bonjour ça y ressemble fortement sans être vraiment pareil. Le gros avantage de WSL c'est que c'est l'ip locale et pas de la VM qui est utilisée (si on lance un script qui écoute en http sur localhost:8080 on va sur chrome windows et on tape http://localhost:8080). Le second gros avantage c'est de pouvoir utiliser les commandes windows directement dans linux. Le dernier avantage est d'être nativement intégré à windows.
C'est intéressant mais moi ça fait des années que j'utilise Cygwin pour toutes les raisons que tu cites. A part peut-être la dernière qui est discutable, comment comparerais-tu WSL à Cygwin?

J'utilse Cygwin pour avoir quand même un environnement de type Unix chez un client qui impose des machines Windows. Et avec le client X sous Cygwin, pas de souci pour les applications graphiques. Mais si WSL fait encore mieux, ce sont de vraies questions, je suis réellement intéressé mais faute d'avoir pu l'installer pour le moment je pose des questions.
0  0