Après un an et demi de développement, la version stable du serveur composite Weston 10.0 a été publiée, développant des technologies qui soutiennent la prise en charge complète du protocole Wayland dans Enlightenment, GNOME, KDE et d'autres environnements utilisateur. Le développement de Weston vise à fournir une base de code de haute qualité et des exemples de travail pour l'utilisation de Wayland dans des environnements de bureau et des solutions intégrées, telles que des plateformes pour des systèmes d'information et de divertissement automobiles, des smartphones, des téléviseurs et d'autres appareils grand public. Le code du projet est distribué sous licence MIT.
Le changement de numéro de version significatif de Weston est dû à des modifications de l'ABI qui rompent la compatibilité. Les modifications dans la nouvelle branche de Weston :
- Des composants pour la gestion des couleurs ont été ajoutés, permettant de transformer les couleurs, d'effectuer des corrections gamma et de travailler avec des profils de couleurs. Les changements sont pour le moment limités aux sous-systèmes internes, des outils de gestion des couleurs visibles pour l'utilisateur apparaîtront dans la prochaine version.
- La mise en œuvre du protocole linux-dmabuf-unstable-v1, qui permet le partage de plusieurs cartes graphiques grâce à la technologie DMA-BUF, a été ajoutée avec un mécanisme de « retour d'information dma-buf », fournissant au compositeur serveur des informations supplémentaires sur les GPU disponibles et permettant d'augmenter l'efficacité de l'échange de données entre le GPU principal et le GPU secondaire. Par exemple, le support du « retour d'information dma-buf » élargit l'applicabilité de la sortie sans mise en tampon intermédiaire (zero-copy scanout).
- Ajout du support de la bibliothèque libseat, qui fournit des fonctions pour gérer l'accès aux périphériques d'entrée et de sortie partagés, permettant d'éviter les droits root (la coordination d'accès est gérée par un processus en arrière-plan distinct appelé seatd). Dans les futures versions, il est prévu de remplacer tous les composants de lancement de Weston par libseat.
- Tous les exemples d'applications clientes ont été mis à jour pour utiliser l'extension du protocole xdg-shell, qui fournit une interface pour interagir avec les surfaces comme des fenêtres, permettant de déplacer les surfaces sur l'écran, de les minimiser, de les restaurer, de les redimensionner, etc.
- Ajout de la possibilité d'exécuter automatiquement le logiciel client au démarrage, par exemple pour organiser le lancement automatique des programmes après la connexion.
- Les interfaces wl_shell, le backend fbdev et l'outil weston-launch sont désormais obsolètes (il faut utiliser seatd-launch ou logind-launch pour le démarrage).
- Les exigences en matière de dépendances ont été augmentées, il est désormais nécessaire d'avoir libdrm 2.4.95, libwayland 1.18.0 et wayland-protocols 1.24 pour la compilation. Pour le plugin d'accès distant basé sur PipeWire, libpipewire 0.3 est requis.
- Le jeu de tests a été élargi.
Source : opennet.ru
