Dostupný Wayland 1.23

Po více než roce vývoje byl představen stabilní výstup protokolu, mechanismu meziprocesní komunikace a knihoven Wayland 1.23. Větev 1.23 je zpětně kompatibilní na úrovni API a ABI s verzemi 1.x a obsahuje převážně opravy chyb a drobné aktualizace protokolu. Výsledky projektu jsou dostupné pod licencí MIT. Referenční kompozitní server Weston, poskytující kód a pracovní příklady pro použití Wayland v desktopových prostředích a vestavěných řešeních, se vyvíjí v rámci samostatného vývojového cyklu.

Hlavní změny v protokolu:

  • V libwayland je implementováno API, které umožňuje klientovi určit maximální velikost interního vyrovnávacího prostoru připojení na straně serveru. Základní maximální velikost vyrovnávacího prostoru je nastavena prostřednictvím rozhraní wl_display a nové API umožňuje klientům měnit ji vázanou na každé klientské připojení. Z praktického hlediska změna umožňuje použít větší vyrovnávací prostory ve specifických Wayland-klientech, jako je Xwayland, pro které je charakteristická vyšší intenzita vstupních událostí.
  • Pro požadavky (request), události (event) a výčty (enum) byla poskytnuta možnost využití XML-atributu „deprecated-since“ k označení zastaralých prvků. V terminologii Wayland jsou požadavky zprávy, které klient posílá serveru; události jsou zprávy posílané ze serveru k klientovi; výčty jsou související s určitým názvem soubory číselných hodnot, s nimiž manipuluje protokol.
  • Do utility wayland-scanner, určené pro generaci záhlaví a kódu v jazyce C na základě XML souborů s popisem protokolu, byl přidán režim „enum-header“, který zahrnuje uvedení v záhlavích pouze „výčtů“.
  • V wayland-scanner byla zajištěna generace validačních funkcí (validator) pro „výčty“ na straně serveru.
  • Byla přidána možnost přiřazení názvů frontám událostí za účelem zjednodušení ladění.
  • Byly přidány funkce wl_client_get_user_data() a wl_client_set_user_data(), které usnadňují připojení libovolných dat k klientovi.
  • Byl přidán požadavek wl_shm.release, který umožňuje klientovi informovat server o ukončení používání sdíleného objektu, což umožňuje serveru uvolnit s ním spojenou paměť.
  • Byla přidána podpora platformy OpenBSD.

Události související s Waylandem, které se staly od publikace minulého vydání:

  • Bylo vydáno XWayland 24.1.0 s podporou technologie Explicit Sync a zlepšenou podporou architektur 2D zrychlení GLAMOR a EXA.
  • Aktualizace kompozitního serveru labwc (Lab Wayland Compositor) s funkcemi připomínajícími správce oken Openbox.
  • Projekt wprs, který rozvíjí pro Wayland správce relací podobný utilitě screen, ale pro grafické aplikace.
  • Publikace kompozitního serveru Niri, který používá Wayland a nabízí metodu mřížkové (tiling) kompozice s seskupováním oken do nekonečně posuvného pásu na obrazovce.
  • Aktualizace sady protokolů a rozšíření Wayland-Protocols: 1.34, 1.33, 1.32, 1.35.
  • Vývoj knihovny SDL3, která používá Wayland jako výchozí.
  • Vydání prostředí pracovního stolu LXQt 2.0.0 s podporou Waylandu v souborovém správci PCManFM-Qt, systému upozornění, pracovní ploše, utilitě pro spouštění programů (Runner), panelu, rozhraní pro odhlášení, rozhraní pro nastavení LXQt a většině aplikací.
  • Uvolnění uživatelského prostředí Sway 1.9, které používá Wayland.
  • Nový kompozitní správce miracle-wm, který se zakládá na Waylandu a komponentech pro výstavbu kompozitních správců Mir.
  • Louvre — nová knihovna pro vývoj kompozitních servery na bázi Waylandu.
  • Práce na implementaci podpory Waylandu v Xfce.
  • Základní podpora Waylandu v prostředí pracovního stolu Budgie.
  • Základní podpora Waylandu v prostředí pracovního stolu Cinnamon.
  • Téměř dokončeno portování pracovní plochy MATE pro Wayland.
  • Distribuce Lubuntu přechází na používání Qt 6 a Waylandu.
  • Ve KDE 6 je výchozím režimem sezení, které používá protokol Wayland. Byla implementována podpora rozšíření Wayland pro správu barev.
  • V platformě Electron byl zahrnut režim dekorace oken pro Wayland.
  • Aktualizace kompozitního serveru Wayfire, který používá Wayland a umožňuje vytvářet uživatelská rozhraní s 3D efekty ve stylu 3D pluginů pro Compiz.
  • Podpora Waylandu v IDE IntelliJ a OpenJDK.
  • Podpora Waylandu v textovém editoru GNU Emacs.
  • V GNOME v sezení založeném na Waylandu byla implementována podpora programového KVM přepínače Input Leap, který umožňuje používat jednu klávesnici a myš k ovládání několika počítačů.
  • Verze Fedora s pracovním stolem KDE přestala podporovat sezení založené na protokolu X11 ve své základní nabídce.
  • Byla vylepšena podpora prostředí založených na Waylandu v proprietárních ovladačích NVIDIA.
  • Byl zaveden ovladač, který umožňuje používat Wine v prostředích založených na protokolu Wayland bez použití XWayland a komponentů X11.
  • Byla vydána verze kompozitního serveru Weston 13.0.
  • Pro testování práce KDE, GNOME, Enlightenment, Wayfire, Mir, Xfce a Sway na Waylandu je k dispozici speciální Live distribuce Rebecca Black Linux.
  • V linuxových verzích Firefoxu je ve výchozím nastavení zapnuta podpora kompozitního serveru Wayland místo XWayland. Je poskytnuta možnost vytvářet verze, které podporují práci pouze v Waylandu.

Připomeňme, že Wayland je protokol pro interakci mezi kompozitním serverem a aplikacemi, které s ním pracují. Klienti samostatně provádějí vykreslování svých oken v odděleném vyrovnávacím paměti, předávají informace o aktualizacích kompozitnímu serveru, který kombinuje obsah bufferů jednotlivých aplikací pro vytváření konečného výstupu s ohledem na možné nuance, jako je překrytí oken a průhlednost. Jinými slovy, kompozitní server neposkytuje API pro vykreslování jednotlivých prvků, ale operuje pouze s již vytvořenými okny, což umožňuje zbavit se dvojitého vyrovnávání při používání vysoce úrovňových knihoven, jako jsou GTK a Qt, které se ujímají práce s uspořádáním obsahu oken.

Wayland řeší mnoho bezpečnostních problémů X11, protože na rozdíl od něj izoluje vstup a výstup pro každé okno, neumožňuje klientovi přístup k obsahu oken jiných klientů a také nezpřístupňuje zachytávání událostí vstupu souvisejících s jinými okny. V současnosti je podpora přímé práce s Waylandem již realizována pro knihovny GTK, Qt, SDL (od verze 2.0.2), Clutter a EFL (Enlightenment Foundation Library). Od Qt 5.4 je součástí také modul QtWayland s implementací komponent pro práci Qt aplikací v prostředí kompozitního serveru Weston, který vyvíjí projekt Wayland.

Interakce s hardwarem v Waylandu/Westonu, například provádění inicializace, přepínání video režimů (drm modesetting) a správa paměti (GEM pro i915 a TTM pro radeon a nouveau) grafických karet, může probíhat přímo prostřednictvím modulu běžícího na úrovni jádra, což umožňuje obejít se bez práv superuživatele. Kompozitní server Weston může pracovat nejen s využitím DRM modulu jádra Linux, ale také nad X11, dalším kompozitním serverem Wayland, framebufferem a RDP. Kromě toho se rozvíjejí projekty pro zajištění práce nad grafickým stackem platformy Android.

V rámci projektu Weston se vyvíjí jedna z realizací kompozitního serveru. Jako kompozitní server může také fungovat jakýkoli jiný produkt, který podporuje protokol Wayland. Například v současnosti se pracuje na zajištění podpory Wayland v KWin. V aktuálním stavu již Weston přesáhl rámec sady příkladů pro testování protokolu Wayland a může rozšiřovat funkčnost pomocí pluginů a doplňků. Uživatelská rozhraní a rozšířené funkce správy oken se navrhují realizovat ve formě externích backendů k Weston. Pro zajištění fungování obvyklých aplikací X11 v prostředí založeném na Wayland se používá DDX komponent XWayland (Device-Dependent X), který je organizací práce podobný Xwin a Xquartz pro platformy Win32 a macOS.

Dostupný Wayland 1.23Dostupný Wayland 1.23


Zdroj: opennet.ru
Koupit spolehlivý hosting pro webové stránky s ochranou proti DDoS, VPS VDS servery 🔥 Koupit spolehlivý hosting pro webové stránky s ochranou proti DDoS, VPS VDS servery | ProHoster