Na voljo Wayland 1.24

Po 13 mesecih razvoja je predstavljen stabilni izdajni protokol, mehanizem medprocesnega komuniciranja in knjižnice Wayland 1.24. Večja različica 1.24 je povsem združljiva z API in ABI različicami 1.x ter vsebuje predvsem popravke napak in majhne posodobitve protokola. Rezultati projekta so distribuirani pod MIT licenco. Referenčni sestavljalni strežnik Weston, ki zagotavlja kodo in delovne primere za uporabo Waylanda v namiznih okoljih in vgrajenih rešitvah, se razvija v okviru ločenega razvojnega cikla.

Glavne spremembe v protokolu:

  • Uveden je vmesnik wl_fixes, ki omogoča reševanje težav z drugimi programski vmesniki osnovnih protokolov, ki jih ni mogoče odpraviti z lastnimi zmogljivostmi teh vmesnikov. Na primer, zahteva „wl_fixes::destroy_registry“ omogoča uničenje objekta wl_registry, po čemer ga stranka ne more več uporabljati, sestavljalni strežnik pa preneha posredovati dogodke prek njega.
  • V programski vmesnik wl_keyboard::key je vključeno psevdostanje „repeated“, ki pomeni, da je tipka pritisnjena. Tipka se lahko prevede v stanje „repeated“ le po prehodu v stanje „pressed“, vendar pred nastopom stanja „released“. Z novim stanjem povezani dogodki se lahko generirajo večkrat, dokler je tipka pritisnjena. Sprememba omogoča sestavljalnim strežnikom obravnavo ponovnih pritiskov prek tipkovnice kot ločena stanja, ne le kot tok ponovljenih dogodkov pritiska („pressed“), kar je lahko koristno za delovanje z oddaljenim namizjem.
  • Dodane so funkcije wl_display_dispatch_queue_timeout() in wl_display_dispatch_timeout() za razporejanje dogodkov v vrsti ob upoštevanju časovne omejitve (funkciji wl_display_dispatch in wl_display_dispatch_queue vrneta 0 le ob odsotnosti dogodkov, možnosti *_timeout pa še ob nastopu časovne omejitve).
  • Dodane so funkcije wl_shm_buffer_ref() in wl_shm_buffer_unref() za dostop do deljene pomnilnika, povezane z bufferjem wl_shm_buffer, po njegovem uničenju (na primer, ko stranka konča delo). Te funkcije omogočajo, da se buffer wl_shm_buffer odveže od življenjske dobe osnovnega vira wl_buffer, ko mora sestavljalni strežnik odložiti prehod na novo stanje.
  • Dodane funkcije wl_proxy_get_interface() in wl_resource_get_interface(), ki vračata wl_interface za določene vire, kar je iskana funkcionalnost v obvezavah za jezike z dinamičnim tipiziranjem.
  • Dodana funkcija wl_resource_post_error_vargs(), ki je alternativa funkciji wl_resource_post_error() z možnostjo posredovanja seznama argumentov za oblikovanje niza (va_list).

Najbolj opazni dogodki, povezani z Waylandom, ki so se zgodili od izdaje prejšnjega izida:

  • Izboljšana podpora Waylandu v proprietary gonilnikih NVIDIA.
  • KDE načrtuje, da bo obdržal le podporo za Wayland. Ločitev kode kwin_x11 in kwin_wayland.
  • Ubuntu in Kubuntu bosta obdržala le podporo za sejo Wayland v GNOME in KDE.
  • V GDM je privzeto obdržana le podpora za Wayland.
  • GTK je backend za X11 preklopil v razred zastarele.
  • V Fedora 43 so se odločili, da odstranijo iz repozitorija pakete, ki se uporabljajo v GNOME za delo na X-serverju. Vsi uporabniki GNOME c X11 bodo prisiljeni preklopiti na sejo, ki temelji na Waylandu.
  • V okolju namizja Budgie bo obdržana le podpora za Wayland.
  • V Xfce 4.20 je bila uvedena delna podpora za Wayland.
  • MATE 1.28 z eksperimentalno podporo za Wayland.
  • Wayback — kompozitni strežnik Wayland za zagon namizij, temelječih na X11.
  • Podjetje Valve je zagnalo projekt Frog za pospeševanje napredovanja novih protokolov Wayland.
  • Knjižnica za izdelavo grafičnih vmesnikov Cosmoe, ki uporablja Wayland in API v slogu BeOS.
  • Privzeto vključitev gonilnika Wayland v Wine.
  • Prehod Raspberry Pi OS na uporabo Waylanda.
  • Izdaja grafičnega orodja FLTK 1.4.0 s podporo za Wayland.
  • V nabor Wayland-Protocols je dodana dodatna faza napredovanja protokolov — 'experimental', usmerjena na zmanjšanje ovire pri integraciji protokolov, pospešitev dostave protokolov razvijalcem in spodbujanje zgodnje implementacije v obstoječih projektih.
  • AMD razvija svoj kompozitni strežnik ACS, ki uporablja Wayland.
  • Sedem alfa izdaj okolja namizja COSMIC.
  • Posodobitve kompozitnih strežnikov: 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.

Dodatki protokolov, dodani v preteklem letu, ki dopolnjujejo osnovni protokol Wayland in se dobavljajo v ločenem naboru Wayland-Protocols:

  • color-management — možnosti za upravljanje barv in podporo razširjenemu dinamičnemu razponu svetlosti (HDR, visok dinamični razpon).
  • color-representation-v1 — naloga barvnega predstavitve Wayland površine.
  • xdg-toplevel-tag — omogoča Wayland strankam, da pripnejo oznake na površine vrhnje ravni, ki jih lahko sestavni strežnik uporablja za identifikacijo oken po ponovnem zagonu aplikacije.
  • ext-background-effect — uporaba učinkov na prozornih delih Wayland površine, kot je zameglitev ozadja.
  • pointer-warp — omogoča aplikaciji, da takoj premakne kazalec na določeno mesto.
  • xx-session-management — obnavljanje stanja oken za prekinjene seje (na primer po nenadnem končanju kompozitnega upravljalnika).
  • xx-input-method — razvoj novega protokola za uporabo metod vnosa besedila. ext-data-control — omogoča privilegiranim strankam upravljanje obdelave podatkov, na primer za implementacijo upravljalnikov odložišča.
  • ext-workspace — реализует концепцию virtualnih delovnih namizij in ponuja dogodke z informacijami o stanju delovnih površin ter možnosti za aktivacijo in deaktivacijo delovnih površin.
  • xdg-system-bell — omogoča izhod sistemskega signala, ki se lahko uporablja, na primer, kot opozorilo v emulacijah terminalov.
  • xdg-toplevel-icon — za povezavo ikone z oknom vrhnje ravni.
  • ext-image-capture-source in ext-image-copy-capture — zajem vsebine na zaslonu.
  • fifo — implementira mehanizem FIFO (prvi prišel - prvi odšel) za obdelavo predpomnilnika posodobitev vsebine prikazovane površine.
  • commit-timing — позволяет привязать ограничение времени к содержимому поверхности (композитный сервер должен отобразить изменение контента по возможности через указанное время, но не раньше).

Pripomnimo, da Wayland predstavlja protokol sodelovanja med sestavnim strežnikom in aplikacijami, ki delujejo z njim. Stranke samostojno izvajajo risanje svojih oken v ločenem pomnilniku, posredujejo informacije o posodobitvah sestavnemu strežniku, ki združuje vsebine pomnilnikov posameznih aplikacij za ustvarjanje končnega izhoda ob upoštevanju morebitnih posebnosti, kot so prekrivanje oken in prosojnost. Z drugimi besedami, sestavni strežnik ne zagotavlja API-ja za risanje posameznih elementov, temveč deluje zgolj s že oblikovanimi okni, kar omogoča odpravo dvojnega pomnilnika pri uporabi visokolegiranih knjižnic, kot sta GTK in Qt, ki prevzemajo delo s sestavljanjem vsebine oken.

Wayland rešuje številne varnostne težave X11, saj v nasprotju z zadnjim izolira vhod in izhod za vsako okno, ne omogoča strankam dostopa do vsebine oken drugih strank in tudi ne dopušča prestrezanja dogodkov vnosa, povezanih z drugimi okni. Podpora za neposredno delo z Waylandom je bila implementirana za večino uporabljenih grafičnih knjižnic v Linuxu, vključno z GTK, Qt, SDL, FLTK, wxWidgets, Clutter in EFL (Enlightenment Foundation Library).

Interakcija z strojno opremo v Waylandu/Westonu, na primer inicializacija, preklapljanje video načinov (drm modesetting) in upravljanje pomnilnika (GEM za i915 in TTM za radeon in nouveau) grafičnih kartic, se lahko izvaja neposredno preko modula, ki deluje na ravni jedra, kar omogoča posluženje brez privilegijev superuporabnika. Za omogočanje delovanja običajnih X11 aplikacij v okolju, ki temelji na Waylandu, se uporablja DDX komponenta XWayland (Device-Dependent X), ki je organizacijsko podobna Xwin in Xquartz za platforme Win32 in macOS.

Na voljo Wayland 1.24Na voljo Wayland 1.24


Izvor: opennet.ru
Kupite zanesljivo gostovanje za spletne strani z zaščito pred DDoS, VPS VDS strežniki 🔥 Kupite zanesljivo gostovanje za spletne strani z zaščito pred DDoS, VPS VDS strežniki | ProHoster