Wara 13-il xahar ta' żvilupp, ġiet rilaxxata r-rilaxx stabbli tal-protokoll Wayland 1.24, il-mekkaniżmu ta' komunikazzjoni bejn il-proċessi, u l-libreriji. Il-fergħa 1.24 hija kompatibbli b'lura fil-livell tal-API u l-ABI mar-rilaxxi 1.x u fiha prinċipalment korrezzjonijiet ta' bugs u aġġornamenti minuri tal-protokoll. L-iżviluppi tal-proġett huma mqassma taħt il-liċenzja MIT. Is-server kompost ta' referenza Weston, li jipprovdi kodiċi u eżempji ta' ħidma għall-użu ta' Wayland f'ambjenti tad-desktop u soluzzjonijiet integrati, qed jiġi żviluppat bħala parti minn ċiklu ta' żvilupp separat.
Bidliet ewlenin fil-protokoll:
- L-interfaċċja wl_fixes ġiet implimentata biex tindirizza kwistjonijiet b'APIs oħra tal-protokoll bażi li ma jistgħux jiġu solvuti mill-kapaċitajiet nattivi ta' dawk l-interfaċċji. Pereżempju, it-talba "wl_fixes::destroy_registry" tippermetti li l-oġġett wl_registry jinqered, u wara dan il-klijent ma jkunx jista' jużah, u s-server kompost jieqaf jibgħat avvenimenti permezz tiegħu.
- L-API wl_keyboard::key timplimenta stat pseudo "ripetut", li jindika jekk tast huwiex ippressat. Tasta tista' titpoġġa fl-istat "ripetut" biss wara li tidħol fl-istat "ippressat", iżda qabel ma tidħol fl-istat "rilaxxat". Avvenimenti assoċjati mal-istat il-ġdid jistgħu jiġu ġġenerati diversi drabi waqt li ċ-ċavetta tkun ippressata. Din il-bidla tippermetti lis-servers komposti jimmaniġġjaw l-ippressar ripetut taċ-ċwievet bħala stati separati, aktar milli sempliċement nixxiegħa ta' avvenimenti "ippressati" ripetuti, li jistgħu jkunu utli għall-immaniġġjar tal-ippressar taċ-ċwievet. desktop remot.
- Żidna l-funzjonijiet wl_display_dispatch_queue_timeout() u wl_display_dispatch_timeout() biex nibagħtu avvenimenti fi kju filwaqt li nqisu t-timeout (il-funzjonijiet wl_display_dispatch u wl_display_dispatch_queue jirritornaw 0 biss jekk ma jkunx hemm avvenimenti, u l-varjanti *_timeiout jirritornaw ukoll XNUMX meta jseħħ timeout).
- Żidna l-funzjonijiet wl_shm_buffer_ref() u wl_shm_buffer_unref() biex naċċessaw il-memorja kondiviża assoċjata mal-buffer wl_shm_buffer wara li tkun ġiet meqruda (eż. meta l-klijent jieqaf). Il-funzjonijiet jippermettu li l-buffer wl_shm_buffer jiġi skonnettjat mill-ħajja tar-riżorsa sottostanti wl_buffer meta s-server kompost ikollu bżonn idewwem it-tranżizzjoni għal stat ġdid.
- Żidna l-funzjonijiet wl_proxy_get_interface() u wl_resource_get_interface(), li jirritornaw wl_interface għar-riżorsa speċifikata, li hija fid-domanda f'rabtiet għal lingwi b'tajping dinamiku.
- Żidna l-funzjoni wl_resource_post_error_vargs(), li sservi bħala alternattiva għall-funzjoni wl_resource_post_error() bil-ħila li tgħaddi lista ta' argumenti għall-ifformattjar tal-istring (va_list).
L-aktar avvenimenti notevoli relatati ma' Wayland li seħħew minn mindu ġiet ippubblikata l-aħħar ħarġa:
- Appoġġ imtejjeb għal Wayland fis-sewwieqa proprjetarji ta' NVIDIA.
- KDE qed tippjana li żżomm biss l-appoġġ għal Wayland. Separazzjoni tal-kodiċi kwivin_x11 u kwivin_wayland.
- Ubuntu u Kubuntu se jħalli biss l-appoġġ għas-sessjoni Wayland fil-GNOME u l-KDE.
- GDM jappoġġja biss lil Wayland awtomatikament.
- Il-GTK iddepreka l-backend tal-X11.
- Fedora 43 iddeċidiet li tneħħi mir-repożitorju l-pakketti użati fil-GNOME biex jaħdmu fuq is-server X. L-utenti kollha tal-GNOME b'X11 se jkunu mġiegħla jaqilbu għal sessjoni bbażata fuq Wayland.
- L-ambjent tad-desktop Budgie se jżomm biss l-appoġġ ta' Wayland.
- Xfce 4.20 jintroduċi appoġġ parzjali għal Wayland.
- MATE 1.28 b'appoġġ sperimentali ta' Wayland.
- Wayback - Server kompost Wayland għat-tħaddim ta' desktops ibbażati fuq X11
- Valve nediet il-Proġett Frog biex tħaffef l-avvanz tal-protokolli l-ġodda ta' Wayland.
- Cosmoe hija librerija GUI li tuża Wayland u API fl-istil ta' BeOS.
- Ippermetti s-sewwieq Wayland awtomatikament f'Wine.
- Tranżizzjoni minn Raspberry Pi OS għal Wayland.
- Rilaxx tas-sett ta' għodod tal-grafika FLTK 1.4.0 bl-appoġġ ta' Wayland.
- Is-suite Wayland-Protocols ġiet estiża b'fażi addizzjonali ta' promozzjoni tal-protokolli, "sperimentali", bil-għan li tnaqqas l-ostaklu għall-integrazzjoni tal-protokolli, taċċellera l-kunsinna tal-protokolli lill-iżviluppaturi, u tħeġġeġ implimentazzjoni bikrija fi proġetti eżistenti.
- L-AMD qed tiżviluppa s-server kompost ACS tagħha stess bl-użu ta' Wayland.
- Seba' rilaxxi alfa tal-ambjent tad-desktop COSMIC.
- Servers komposti aġġornati: 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.
Estensjonijiet tal-protokoll miżjuda matul l-aħħar sena li jikkumplimentaw il-protokoll bażiku ta' Wayland u huma fornuti f'sett separat ta' Wayland-Protocols:
- ġestjoni tal-kulur — kapaċitajiet għall-ġestjoni tal-kulur u appoġġ għal firxa dinamika estiża ta' luminożità (HDR, High Dynamic Range).
- color-representation-v1 — tispeċifika r-rappreżentazzjoni tal-kulur tal-wiċċ ta' Wayland.
- xdg-toplevel-tag - Jippermetti lill-klijenti ta' Wayland li jwaħħlu tikketti ma' uċuħ ta' livell għoli li s-server tal-kompożizzjoni jista' juża biex jidentifika t-twieqi wara li terġa' tibda l-applikazzjoni.
- ext-background-effect - japplika effetti għal partijiet semi-trasparenti ta' wiċċ Wayland, bħal ċċajpar tal-isfond.
- pointer-warp - Jippermetti lil applikazzjoni li ċċaqlaq il-pointer istantanjament għal pożizzjoni speċifikata.
- xx-session-management - jirrestawra l-istat tat-twieqi għal sessjonijiet interrotti (pereżempju, wara li l-maniġer tal-kompożizzjoni jiġġarraf).
- xx-input-method — żvilupp ta' protokoll ġdid għall-użu ta' metodi ta' input ta' test. ext-data-control — jippermetti lill-klijenti privileġġjati jikkontrollaw l-immaniġġjar tad-dejta, pereżempju biex jimplimentaw maniġers tal-clipboard.
- spazju tax-xogħol estern — jimplimenta l-kunċett virtualnyx rabochikh stolov u joffri avvenimenti b'informazzjoni dwar l-istat tad-desktops, kif ukoll il-ħila li jiġu attivati u diżattivati d-desktops.
- xdg-system-bell - jippermettilek li toħroġ qanpiena tas-sistema, li tista' tintuża, pereżempju, bħala twissija f'emulatur tat-terminal.
- xdg-toplevel-icon - biex twaħħal ikona ma' tieqa tal-ogħla livell.
- ext-image-capture-source u ext-image-copy-capture - jaqbdu l-kontenut muri fuq l-iskrin.
- fifo — jimplimenta mekkaniżmu FIFO (first in, first out) għall-ipproċessar tal-kju għall-aġġornament tal-kontenut tal-wiċċ muri.
- commit-timing - jippermettilek li torbot limitu ta' żmien mal-kontenut tal-wiċċ (is-server kompost għandu jirrifletti l-bidla fil-kontenut jekk possibbli wara ż-żmien speċifikat, iżda mhux qabel).
Ejja nfakkru li Wayland huwa protokoll għall-interazzjoni bejn server kompost u applikazzjonijiet li jaħdmu miegħu. Il-klijenti jrendu t-twieqi tagħhom stess f'buffer separat, u jgħaddu aġġornamenti lis-server kompost, li jgħaqqad il-kontenut tal-buffers tal-applikazzjoni individwali biex jipproduċi output finali li jqis sfumaturi possibbli bħal koinċidenza tat-twieqi u trasparenza. Fi kliem ieħor, is-server kompost ma jipprovdix API għall-għoti ta’ elementi individwali, iżda jopera biss fuq twieqi diġà ffurmati, li jippermettilek teħles minn buffering doppju meta tuża libreriji ta’ livell għoli bħal GTK u Qt, li jieħdu fuq il- xogħol ta 'kompożizzjoni tal-kontenut tat-twieqi.
Wayland isolvi ħafna mill-problemi ta' sigurtà ta' X11, għax għall-kuntrarju ta' X11, jiżola l-input u l-output għal kull tieqa, jipprevjeni klijent milli jaċċessa l-kontenut tat-twieqi ta' klijenti oħra, u jipprevjeni l-interċettazzjoni ta' avvenimenti ta' input relatati ma' twieqi oħra. L-appoġġ għal xogħol dirett ma' Wayland huwa implimentat għall-biċċa l-kbira tas-sistemi operattivi użati fi Linux libreriji grafiċi inklużi GTK, Qt, SDL, FLTK, wxWidgets, Clutter, u EFL (Enlightenment Foundation Library).
L-interazzjoni mal-ħardwer f'Wayland/Weston, bħall-inizjalizzazzjoni, il-bdil tal-modalità tal-vidjo (issettjar tal-modalità DRM), u l-ġestjoni tal-memorja (GEM għal i915 u TTM għal Radeon u Nouveau) għall-kards grafiċi, tista' titwettaq direttament permezz ta' modulu fil-livell tal-kernel, u b'hekk tiġi eliminata l-ħtieġa għal privileġġi ta' superuser. Biex tiġi żgurata l-eżekuzzjoni ta' applikazzjonijiet standard X11 f'ambjent ibbażat fuq Wayland, jintuża l-komponent DDX XWayland (Device-Dependent X), li huwa simili fl-operazzjoni għal Xwin u Xquartz għal Win32 u macOS.


Sors: opennet.ru
