J'ai essayé WSL2 de windows en tant que développeur

a marqué ce sujet comme résolu.

ça fait quelques semaines que j’essaie wsl2 en pour faire du dev linux embarqué. Je l’utilise avec des applis gui comme eclipse ou meld et je trouve qu’il est leger et rapide ce qui est un plus, par contre pour les applis graphiques je suis obligé d’utiliser un serveur x11 (j’utilise xlaunch) et il arrive souvent qu’en perdant la connexion, par exemple en enlevant mon pc du dock, la partie graphique crash ou que la résolution soit mauvaise.

Au final je trouve que l’outil n’est pas encore assez mature et je vais repasser sur une vm.

Est ce que des gens qui l’ont utilisé aurait un avis à donné à ce sujet ?

Je l’utilise avec des applications graphiques (donc X11) depuis un peu plus d’un an, et le principal reproche que je lui ferais, c’est précisément celui que tu décris : X11 passant par le réseau, toute déconnexion réseau physique a une chance non négligeable de faire péter l’affichage. Il n’y a aucun moyen connu de corriger ça, c’est un problème « par conception ». Et souvent, une fois l’affichage HS, la seule solution propre est de redémarrer complètement WSL.

Un autre problème c’est qu’il est impossible de forcer l’IP de la VM. D’après Microsoft, c’est volontaire par conception…

Je rajoute que la nouvelle version de WSL est censée gérer Wayland en natif (cf https://linuxfr.org/users/psychofox/journaux/wayland-dans-windows-10-et-11), mais je ne peux pas la tester à cause d’obscurs blocages sur mon PC pro qui m’interdisent la mise à jour.

En fait c’était tout à fait possible pour moi de faire cette mise à jour et d’utiliser WSLg à la place d’un bricolage avec un serveur X pour Windows.

Avantages :

  • C’est beaucoup plus facile à configurer.
  • Moins de petits bugs étranges, en particulier sur le focus et les fenêtres modales.

Inconvénients :

  • Le système utilise RDP pour la communication entre la VM et Windows, ce qui a deux inconvénients majeurs :
    1. Ça ne survit probablement toujours pas à une coupure réseau (pas testé),
    2. Surtout : il y a les bugs connus de RDP, à commencer par le fait que altgr ne fonctionne pas ! (super pratique…)
  • Si la fenêtre est une fenêtre X11 (comme IntelliJ par exemple), il y a une gros cadre gris moche autour.
  • Les raccourcis de positionnement des fenêtres (windows-flèche) ne fonctionnent plus (sauf sous Windows 11 avec une configuration spécifique, semble-t-il).
  • Aucune configuration graphique (on est obligés d’avoir la grosse ombre moche).
  • J’ai l’impression que c’est moins réactif.

Bref, c’est pas sec et pas mieux que la solution actuelle en l’état.

Je n’ai jamais utilisé WSL2, mais comme je travaille avec le protocole RDP, je peux parler de cette partie et proposer quelques contournements (ne vous attendez pas à un miracle).

  1. Ça ne survit probablement toujours pas à une coupure réseau (pas testé),

RDP à une option de reconnexion automatique. Freerdp le supporte, mais peut-être pas au niveau du serveur, à voir. Mais il faut probablement une adresse fixe.

  1. Surtout : il y a les bugs connus de RDP, à commencer par le fait que altgr ne fonctionne pas ! (super pratique…)

J’ai trouvé l’issue qui dit cela, mais l’auteur prend un raccourci: ce n’est pas un bug du protocole RDP, mais de l’implémentation du client (mstsc ici comme précisé dans l’autre issue). Il n’y a pas plus d’explication sur la raison du bug, mais c’est probablement parce que pour Windows AltGr <=> Ctrl + Alt (on doit probablement pourvoir le vérifier avec wev équivalent Wayland de xev). Il faut savoir que la majorité des serveurs RDP sont des windows, ce qui rend beaucoup de bug du client invisible.

Après s’ajoute les problèmes de layout envoyé à l’ouverture de la session RDP. Le client envoi un id et le serveur va utiliser le layout annoncé. Sauf que les layouts entre windows et linux sont différents et freerdp (le serveur) va prendre le "plus proche". Plus embêtant, dans un message plus bas, la même personne indique que s’il n’y a pas de correspondance de touche côté windows, rien n’est envoyé au serveur (ce qui est à mon sens encore un bug client).

Se serait assez drôle qu’utiliser un autre client RDP règle le problème. Mais se sera moins bien intégré puisque Microsoft a fait 2 ou 3 extensions (dont applist qui liste les applis linux pour les démarrer via le menu, beaucoup plus simple que d’indiquer les chemins des exécutables en remoteApp).

  • Si la fenêtre est une fenêtre X11 (comme IntelliJ par exemple), il y a un gros cadre gris moche autour.
  • Les raccourcis de positionnement des fenêtres (windows-flèche) ne fonctionnent plus (sauf sous Windows 11 avec une configuration spécifique, semble-t-il).
  • Aucune configuration graphique (on est obligés d’avoir la grosse ombre moche).

À moins qu’une des extensions ajoutées remplace ce comportement, la connexion se fait en remoteApp pour que les fenêtres soient intégrées au bureau (i. e. qu’on ne fasse pas la différence entre une application sur le serveur et une application locale). Cette intégration fonctionne très bien pour un serveur et un client qui utilise la même version de Windows parce qu’en remoteApp le serveur décide des comportements de la fenêtre (dont les raccourcies de déplacement, l’aspect des fenêtres et les ombres).

Pour avoir les mêmes raccourcies, il faut que le serveur le supporte. KDE / KWin les a (il faut probablement les remapper), sinon il doit y avoir moyen de bricoler des trucs avec wtype (équivalent wayland de xdotool) et un machin du genre de xbindkeys. La configuration spéciale de W11 est probablement une interception du raccourci au niveau client.

Le cadre gris que tu vois (qui devrait être transparent si c’est bien ce que j’ai en tête) sert à étendre la fenêtre pour ne pas avoir de comportement chaotique sur les redimensionnements avec la souris. Tous les déplacements de souris dans le cadre est envoyé au serveur. Sans cadre, c’est très difficile de choper un coin et il n’est pas possible d’agrandir la fenêtre puisque le serveur ne reçoit pas la nouvelle position de la souris. Il y a peut-être moyen de configurer une transparence au niveau de X11 / Weston.

Pour les ombres, il faudrait regarder la configuration du DE / Compositeur de fenêtre du linux, c’est probablement le thème utilisé qui fait ça. Sinon, je ne sais pas s’il y a moyen de configurer des paramètres pour la connexion RDP, mais il y a disable themes:i:1 qui pourrait fonctionner (aucune idée si c’est bien pris en compte par freerdp).

+0 -0
Connectez-vous pour pouvoir poster un message.
Connexion

Pas encore membre ?

Créez un compte en une minute pour profiter pleinement de toutes les fonctionnalités de Zeste de Savoir. Ici, tout est gratuit et sans publicité.
Créer un compte