Qu’est-ce que Wayland et qu’est-ce que cela signifie pour les utilisateurs de Linux ?

Qu’est-ce que Wayland et qu’est-ce que cela signifie pour les utilisateurs de Linux ?

Depuis que Fedora 25 a introduit avec audace la pile graphique Wayland par défaut en 2016, elle a été installée comme option principale dans plusieurs distributions Linux. Vous pouvez même l’utiliser maintenant si vous lisez ceci à partir d’une machine Linux. Même si Wayland existe depuis un certain temps, c’est toujours un sujet d’intrigue parmi les personnes habituées à utiliser l’ancien protocole X11 omniprésent via Xorg.

Ce guide explique brièvement ce qu’est Wayland, ce qu’il fait et pourquoi les développeurs y affluent en masse !

Qu’est-ce que Wayland ?

Pour afficher les fenêtres sur votre écran et dessiner correctement chacun de leurs éléments, Linux a besoin d’un moyen de communiquer avec votre matériel graphique et vos écrans. De 1984 à 2016, la plupart des distributions utilisaient un protocole d’affichage appelé « protocole central du système X window » (ou simplement X). Wayland est apparu à la fin de cette période, présentant une alternative plus légère, plus sécurisée et plus optimisée pour fonctionner sur les technologies d’affichage modernes.

Cependant, les protocoles d’affichage ne peuvent pas fonctionner seuls pour dessiner des choses sur votre écran. Ils doivent être implémentés dans des logiciels appelés serveurs d’affichage. Pour X, le champion en titre pendant très longtemps a été Xorg.

wayland-xorg-xsession

Dans Wayland, le serveur d’affichage ne sera souvent que le gestionnaire de fenêtres utilisé par votre environnement de bureau. Pour GNOME, c’est Mutter. Dans KDE Plasma, c’est KWin. Au lieu d’avoir un processus autonome séparé exécutant le serveur, le gestionnaire de fenêtres appelle une bibliothèque du système pour communiquer avec le matériel graphique. Dans la plupart des cas, ce serait wlroots.

Cela permet à Mutter de GNOME, par exemple, d’écrire directement des données dans le framebuffer, au lieu d’utiliser un intermédiaire (un peu comme la façon dont Xorg est utilisé), ce qui améliore sensiblement les performances.

Comment fonctionne Wayland ?

Les serveurs d’affichage donnent des informations au noyau et au matériel graphique afin qu’ils puissent rapidement transmettre les choses à l’affichage. Ils reçoivent ces informations via des applications qui communiquent avec eux en utilisant leurs protocoles respectifs. Une application conçue pour fonctionner avec X, par exemple, ne peut pas communiquer avec un serveur Wayland.

Serveur d'affichage Wayland

Wayland résout ce problème grâce à quelque chose appelé XWayland, qui agit comme une couche de compatibilité qui permet de traduire l’interaction client-serveur X en quelque chose que Wayland peut « comprendre ».

Dans Wayland, le serveur et le compositeur ne font qu’un. Chaque environnement de bureau qui utilise Wayland appelle une bibliothèque qui implémente le protocole Wayland pour dessiner des effets, tels que la transparence, le flou des fenêtres, les animations de transition et les ombres portées, qui donnent aux fenêtres une dimension.

Wayland rapproche toutes ces fonctions du noyau, et vous le ressentirez souvent par la « fluidité » que vous ressentez dans l’environnement graphique.

Au lieu de dessiner à l’aide d’un logiciel tiers, Wayland appelle ce que l’on appelle le tampon Direct Rendering Manager (DRM) dans le noyau pour dessiner des choses.

Vous remarquerez peut-être que dans Wayland, les étapes sont beaucoup plus simples et le processus simple. Cela conduit à de meilleures performances dans des situations graphiquement intenses et permet aux développeurs de créer plus facilement des applications qui s’exécutent sous ce protocole.

Comment essayer Wayland

La plupart des distributions Linux ont décidé d’utiliser Wayland comme option par défaut, vous pouvez donc même l’utiliser en ce moment ! Vous pouvez facilement vérifier cela en ouvrant un terminal et en tapant echo $XDG_SESSION_TYPE.

Il y a quelques récalcitrants, comme Linux Mint, en raison du cycle de développement lent de ses environnements de bureau et du débat sur la question de savoir si Wayland est vraiment suffisamment mature pour fonctionner sur la distribution.

Pour le moment, l’installation d’Ubuntu 22.04 ou d’une version ultérieure – ou de toute version actuellement prise en charge de Fedora – offre le moyen le plus simple de découvrir Wayland.

wayland-gnome-wayland-session

Dans toute autre distribution, si elle utilise une version actuelle de GNOME ou KDE Plasma, elle a la possibilité d’utiliser Wayland.

Si vous utilisez Arch Linux , vous devrez peut-être suivre ces étapes :

  • Si vous utilisez GNOME, il n’y a rien à faire, car votre gestionnaire d’affichage (GDM) le prend en charge par défaut. Si vous utilisez KDE Plasma avec son gestionnaire d’affichage par défaut, vous devez en récupérer la version « git » depuis l’AUR :

yay -S sddm-git

ou

paru -S sddm-git

  • Si vous avez fait quoi que ce soit à l’étape 1, vérifiez que le service systemd n’a pas été désactivé ou quelque chose :

sudo systemctl enable sddm

  • Installez XWayland :

sudo pacman -S xorg-xwayland

C’est ça! La prochaine fois que vous démarrerez votre système, vous aurez la possibilité de sélectionner Wayland comme protocole d’affichage pour votre environnement de bureau sur votre écran de connexion.

Si vous souhaitez déboguer des événements pour voir pourquoi quelque chose ne fonctionne pas correctement, exécutez :

qdbus org.kde.KWin /KWin org.kde.KWin.showDebugConsole

Questions fréquemment posées

Quels pilotes prennent actuellement en charge Wayland ?

Depuis que Nvidia a publié la version 495.44 le 26 octobre 2021, tous les principaux fabricants de cartes graphiques (AMD, Nvidia et Intel) ont implémenté une prise en charge complète de Wayland dans leurs pilotes avec Generic Buffer Management (GBM), qui est actuellement la référence absolue pour les implémentations de le protocole d’affichage.

Wayland arrêtera-t-il les enregistreurs de frappe ?

X11 est connu depuis longtemps pour être vulnérable à ce que l’on appelle «l’attaque par accès non autorisé» ( CVE-1999-0526 ), qui permet aux applications de prendre des captures d’écran injustifiées, d’exploiter les événements du clavier et de la souris, etc., pour accéder aux noms d’utilisateur et mots de passe. Bien que Wayland ait mis en place des mesures de sécurité pour empêcher ce type d’attaques, cette protection ne concerne que la diffusion de graphiques sur votre écran. Une application peut toujours, en pratique, écouter d’autres types de messages envoyés au noyau via le clavier.

En bref, évitez l’excès de confiance dans votre machine, car Wayland améliore votre sécurité de manière ciblée !

Comment Wayland fonctionne-t-il avec les jeux?

Dans certains cas de niche, vous remarquerez quelques améliorations lorsque vous jouez avec Wayland, mais les jeux rendus via Xorg peuvent avoir de petits problèmes graphiques. Certaines applications de superposition (comme WTRTI, qui fournit une superposition pour War Thunder, par exemple) peuvent ne pas fonctionner du tout, car il s’agit d’une fenêtre XWayland essayant de parler à une autre fenêtre XWayland, ce qui peut être très difficile. Votre kilométrage peut varier et vous pouvez être aussi satisfait de certains résultats que déçu d’autres.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *