Wayland 1.24 is beschikbaar.

Na 13 maanden ontwikkeling is de stabiele release van het Wayland-protocol, het mechanisme voor interprocesscommunicatie en de bibliotheken 1.24 gepresenteerd. Tak 1.24 is achterwaarts compatibel op het niveau van API en ABI met de releases 1.x en bevat voornamelijk bugfixes en kleine protocolupdates. De ontwikkelingen van het project worden verspreid onder de MIT-licentie. De referentie-compositieserver Weston, die code en werkvoorbeelden biedt voor het gebruik van Wayland in desktopomgevingen en ingebedde oplossingen, ontwikkelt zich binnen een aparte ontwikkelcyclus.

Belangrijkste wijzigingen in het protocol:

  • De interface wl_fixes is geïmplementeerd om problemen op te lossen met andere softwareinterfaces van basisprotocollen, die niet kunnen worden verholpen met de eigen mogelijkheden van deze interfaces. Bijvoorbeeld, de aanvraag 'wl_fixes::destroy_registry' stelt in staat om het object wl_registry te verwijderen, waarna de cliënt het niet meer kan gebruiken en de compositieserver stopt met het verzenden van gebeurtenissen via dit object.
  • In de software-interface wl_keyboard::key is een pseudo-status 'repeated' geïmplementeerd, wat betekent dat de toets is ingedrukt. Een toets kan alleen in de staat 'repeated' worden gezet nadat deze in de status 'pressed' is gegaan, maar voordat de status 'released' is bereikt. De bij het nieuwe status gerelateerde gebeurtenissen kunnen meerdere keren worden gegenereerd zolang de toets ingedrukt blijft. Deze wijziging stelt compositieservers in staat om herhaalde indrukken bij het vasthouden van toetsen als aparte statussen te verwerken, en niet alleen als een stroom van herhaalde indrukkevenementen ('pressed'), wat nuttig kan zijn voor de organisatie van de interactie met een externe desktop.
  • De functies wl_display_dispatch_queue_timeout() en wl_display_dispatch_timeout() zijn toegevoegd voor het dispatchen van gebeurtenissen in de wachtrij met inachtneming van de time-out (de functies wl_display_dispatch en wl_display_dispatch_queue retourneren 0 alleen als er geen gebeurtenissen zijn, terwijl de variant *_timeout ook retourneert bij het optreden van een time-out).
  • De functies wl_shm_buffer_ref() en wl_shm_buffer_unref() zijn toegevoegd voor toegang tot het gedeelde geheugen dat is gekoppeld aan de wl_shm_buffer, na de verwijdering ervan (bijvoorbeeld wanneer de cliënt wordt afgesloten). Deze functies stellen de compositieserver in staat om de wl_shm_buffer los te koppelen van de levensduur van de hoofdresource wl_buffer, wanneer de compositieserver moet wachten met de overgang naar een nieuwe status.
  • Functies wl_proxy_get_interface() en wl_resource_get_interface() toegevoegd, die de wl_interface voor de opgegeven resource teruggeven, wat noodzakelijk is in bindings voor dynamisch getypeerde talen.
  • De functie wl_resource_post_error_vargs() toegevoegd, die een alternatief is voor de functie wl_resource_post_error() met de mogelijkheid om een lijst met argumenten voor het formatteren van de string (va_list) door te geven.

De meest opvallende gebeurtenissen met betrekking tot Wayland die hebben plaatsgevonden sinds de publicatie van de vorige release:

  • Verbeterde ondersteuning voor Wayland in proprietary NVIDIA-drivers.
  • KDE is van plan alleen ondersteuning voor Wayland te behouden. Scheiding van de code kwin_x11 en kwin_wayland.
  • Ubuntu en Kubuntu zullen alleen ondersteuning voor de Wayland-sessie in GNOME en KDE behouden.
  • In GDM is standaard alleen ondersteuning voor Wayland behouden.
  • GTK heeft de back-end voor X11 als verouderd gemarkeerd.
  • In Fedora 43 is besloten om pakketten te verwijderen uit de repository die in GNOME worden gebruikt om bovenop de X-server te werken. Alle GNOME-gebruikers met X11 zullen gedwongen worden over te schakelen naar een sessie gebaseerd op Wayland.
  • In de Budgie-desktopomgeving zal alleen ondersteuning voor Wayland worden behouden.
  • In Xfce 4.20 is gedeeltelijke ondersteuning voor Wayland gerealiseerd.
  • MATE 1.28 met experimentele ondersteuning voor Wayland.
  • Wayback - een compositieve server voor Wayland om desktops op basis van X11 uit te voeren.
  • Het bedrijf Valve heeft project Frog gelanceerd om de promotie van nieuwe Wayland-protocollen te versnellen.
  • De grafische gebruikersinterface bibliotheek Cosmoe, die Wayland en een BeOS-achtige API gebruikt.
  • Standaard inschakeling van de Wayland-driver in Wine.
  • Overgang van Raspberry Pi OS naar het gebruik van Wayland.
  • Uitgave van de grafische toolkit FLTK 1.4.0 met ondersteuning voor Wayland.
  • Aan de Wayland-Protocols is een extra fase van protocolpromotie toegevoegd - "experimenteel", gericht op het verlagen van de barrières voor protocolintegratie, het versnellen van de ontwikkeling van protocollen en het stimuleren van vroege implementatie in bestaande projecten.
  • AMD ontwikkelt zijn eigen compositieve server ACS, die Wayland gebruikt.
  • Zeven alfa-releases van de desktopomgeving COSMIC.
  • Bijwerking van compositieve servers: Weston 14.0, Niri 25.05, Wayland Maker 0.5, miracle-wm 0.5, Hyprland 0.49, labwc 0.8.3, Cage 0.2, Wayfire 0.9, Sway 1.11.

Toegevoegde extensies van het afgelopen jaar, die het basisprotocol Wayland aanvullen en worden geleverd in een aparte set Wayland-Protocols:

  • color-management - mogelijkheden voor kleurbeheer en ondersteuning voor een uitgebreid dynamisch bereik (HDR, High Dynamic Range).
  • color-representation-v1 - het definiëren van de kleurweergave van een Wayland-oppervlak.
  • xdg-toplevel-tag — stelt Wayland-clients in staat om tags aan top-level oppervlakken te koppelen, die de compositieserver kan gebruiken om vensters te identificeren na het opnieuw opstarten van de applicatie.
  • ext-achtergrond-effect — toepassing van effecten op de semi-transparante delen van een Wayland-oppervlak, zoals achtergrondvervaging.
  • pointer-warp — stelt een applicatie in staat de aanwijzer onmiddellijk naar een opgegeven positie te verplaatsen.
  • xx-sessiebeheer — herstel van de vensterstatus voor onderbroken sessies (bijvoorbeeld na een crash van de compositormanagers).
  • xx-input-method — ontwikkeling van een nieuw protocol voor het gebruik van tekstinvoermethoden. ext-data-control — stelt geprivilegieerde clients in staat om de gegevensverwerking te beheren, bijvoorbeeld voor de implementatie van klembordmanagers.
  • ext-workspace — implementeert het concept virtuele desktops en biedt gebeurtenissen met informatie over de status van werkruimten, evenals mogelijkheden voor het activeren en deactiveren van werkruimten.
  • xdg-system-bell — stelt het afspelen van een systeemsignaal mogelijk, dat bijvoorbeeld kan worden gebruikt als waarschuwing in terminalemulators.
  • xdg-toplevel-icon — voor het koppelen van een pictogram aan een top-level venster.
  • ext-image-capture-source en ext-image-copy-capture — het vastleggen van inhoud die op het scherm wordt weergegeven.
  • fifo — implementeert de FIFO-mechanismes (first in, first out) voor de verwerking van de queue van updates van de weergegeven oppervlakte.
  • commit-timing — maakt het mogelijk om een tijdslimiet aan de inhoudsoppervlakte te koppelen (de composietserver moet de wijziging van de inhoud zo mogelijk doorvoeren binnen de opgegeven tijd, maar niet eerder).

Ter herinnering, Wayland is een protocol voor de interactie tussen de compositieserver en de applicaties die ermee werken. Clients voeren de rendering van hun vensters zelfstandig uit in een aparte buffer en geven informatie over updates door aan de compositieserver, die de inhoud van de buffers van afzonderlijke applicaties combineert om de uiteindelijke output te vormen, rekening houdend met nuances zoals vensteroverlapping en transparantie. Met andere woorden, de compositieserver biedt geen API voor het renderen van afzonderlijke elementen, maar werkt alleen met reeds gevormde vensters, wat het mogelijk maakt om dubbele buffering te vermijden bij het gebruik van hoog-niveau bibliotheken zoals GTK en Qt, die de taak van de compositie van vensterinhoud op zich nemen.

Wayland solves many security issues of X11, as it isolates input and output for each window, preventing a client from accessing the content of other clients' windows, and also prevents capturing input events related to other windows. Direct support for working with Wayland has been implemented for most graphic libraries used in Linux, including GTK, Qt, SDL, FLTK, wxWidgets, Clutter, and EFL (Enlightenment Foundation Library).

Interactie met hardware in Wayland/Weston, zoals het uitvoeren van initialisatie, het schakelen van videomodi (drm modesetting) en het beheren van geheugen (GEM voor i915 en TTM voor radeon en nouveau) van grafische kaarten, kan direct gebeuren via een module die op kernniveau werkt, wat het mogelijk maakt zonder superuserprivileges te werken. Voor de uitvoering van standaard X11-applicaties in een omgeving op basis van Wayland wordt het DDX-component XWayland (Device-Dependent X) gebruikt, dat qua werking vergelijkbaar is met Xwin en Xquartz voor Win32- en macOS-platforms.

Wayland 1.24 is beschikbaar.Wayland 1.24 is beschikbaar.


Bron: opennet.ru
Koop betrouwbare webhosting met bescherming tegen DDoS, VPS VDS servers 🔥 Koop betrouwbare webhosting met bescherming tegen DDoS, VPS VDS servers | ProHoster