Després de vuit mesos de desenvolupament, s'ha publicat la versió estable del protocol Wayland 1.25, el mecanisme de comunicació entre processos i les biblioteques. La branca 1.25 és compatible amb versions anteriors de les versions 1.x a nivell d'API i ABI i conté principalment correccions d'errors i actualitzacions menors de protocol. El treball del projecte està subjecte a la llicència MIT. El servidor compost de referència Weston, que proporciona codi i exemples de funcionament per utilitzar Wayland en entorns d'escriptori i solucions integrades, s'està desenvolupant en un cicle de desenvolupament separat.
Canvis importants al protocol:
- La documentació s'ha convertit del format DocBook al format mdBook (Markdown).
- El dialecte XML de Wayland, el model d'actualització de contingut i les capacitats de gestió del color estan completament documentats.
- S'ha afegit un nou atribut "congelat" per a les interfícies amb diverses interfícies principals.
- S'ha afegit una nova sol·licitud wl_surface.get_release per rebre una notificació de l'alliberament d'un buffer adjunt pel client mitjançant wl_surface.attach. A diferència de wl_buffer.release, la notificació de wl_surface.get_release està vinculada a un moment de renderització específic.
- S'ha afegit la funció wl_display_dispatch_pending_single(), que permet recuperar i processar només un esdeveniment de la cua d'esdeveniments, en lloc de tots els esdeveniments acumulats, tal com fa wl_display_dispatch_pending().
- S'ha proporcionat el ressaltat de color de la sortida de depuració de WAYLAND_DEBUG.
Extensions de protocol afegides des del llançament de Wayland 1.25, que complementen el protocol bàsic de Wayland i es subministren en un conjunt separat de Wayland-Protocols:
- xx-input-method — Permet a les aplicacions implementar mètodes d'entrada de text per a dades compostes servidors i generar el text introduït, que es pot utilitzar, per exemple, per crear teclats virtuals i capes IME (Input Method Editor) per processar l'entrada.
- xx-text-input — permet als servidors compostos implementar mètodes d'entrada i enviar text a les aplicacions. El protocol estandarditza la interacció entre els servidors compostos servidor i aplicacions, i permet gestionar capacitats com ara la transmissió de text d'entrada, la gestió d'esdeveniments de canvi de focus d'entrada i la consideració de les especificitats dels camps d'entrada (idioma, selecció de text, tipus de contingut).
- Els protocols color-management-v1 i color-representation-v1 s'han millorat, proporcionant capacitats per a la gestió del color, compatibilitat amb HDR i definint la representació del color d'una superfície Wayland.
Els esdeveniments més destacats relacionats amb Wayland que han tingut lloc des de la publicació de l'últim número:
- El GNOME 50 ha eliminat el suport per a X11. El KDE Plasma 6.8 també deixarà de tenir suport per a X11.
- JetBrains està movent l'IDE d'IntelliJ per utilitzar Wayland per defecte.
- Xfce ha anunciat el servidor de composició Xfwl4 que utilitza Wayland.
- L'entorn d'escriptori Budgie 10.10 s'ha migrat a Wayland.
- Escriptori per a desenvolupadors QNX basat en Wayland.
- Marathon OS és un sistema operatiu mòbil basat en Wayland.
- Llançament de Wayback, una capa per executar escriptoris X11 utilitzant components de Wayland.
- Cinnamon ara té l'opció d'instal·lar fitxers de sessió per a Wayland i implementa la capacitat de canviar les distribucions de teclat quan s'utilitza Wayland.
- El controlador Wine implementa compatibilitat amb el porta-retalls, els mètodes d'entrada, les finestres no rectangulars i la transparència quan s'executa en entorns basats en Wayland.
- S'ha afegit compatibilitat amb Wayland a Cairo-Dock.
- Servidors compostos actualitzats: Weston 15.0, River 0.4.0, Hyprland 0.54, labwc 0.9.4, Niri 25.11, miracle-wm 0.8, Wayfire 0.10, wlmaker 0.6, labwc 0.9.0.
Recordem que Wayland és un protocol de comunicació compost servidor i aplicacions que hi treballen. Els clients renderitzen les seves finestres de manera independent en una memòria intermèdia separada, passant informació sobre les actualitzacions al compost servidor, que combina el contingut de les memòries intermèdies de les aplicacions individuals per generar la sortida final, tenint en compte possibles matisos com la superposició i la transparència de les finestres. En altres paraules, el servidor compost no proporciona una API per renderitzar elements individuals, sinó que només funciona en finestres prerenderitzades, eliminant el doble buffering quan s'utilitzen biblioteques d'alt nivell com ara GTK i Qt, que gestionen la tasca de compondre el contingut de les finestres.
Wayland resol molts dels problemes de seguretat de X11, ja que, a diferència d'aquest últim, aïlla l'entrada i la sortida de cada finestra, no permet que un client accedeixi al contingut de les finestres d'altres clients i no permet la intercepció d'esdeveniments d'entrada associats amb altres finestres. El suport per al treball directe amb Wayland està implementat per a la majoria de biblioteques gràfiques utilitzades a Linux, incloent GTK, Qt, SDL, FLTK, wxWidgets, Clutter i EFL (Enlightenment Foundation Library).
La interacció amb el maquinari a Wayland/Weston, com ara la inicialització, el canvi de modes de vídeo (drm modesetting) i la gestió de memòria (GEM per a i915 i TTM per a radeon i nouveau) de les targetes gràfiques, es pot dur a terme directament a través d'un mòdul que s'executa a nivell de nucli, cosa que permet prescindir dels privilegis de superusuari. Per garantir l'execució d'aplicacions X11 normals en un entorn basat en Wayland, s'utilitza el component DDX XWayland (Device-Dependent X), similar en la seva organització a Xwin i Xquartz per a plataformes Win32 i macOS.


Font: opennet.ru
