Po 11 mesecih razvoja je objavljena različica kompozitnega管理 ž器ja Sway 1.8, zgrajena z uporabo protokola Wayland in popolnoma združljiva z mozaikovnim upravljalnikom oken i3 ter ploščo i3bar. Koda projekta je napisana v jeziku C in se distribuira pod MIT licenco. Projekt je usmerjen v uporabo v Linuxu in FreeBSD.
Kompatibilnost sa i3 je obezbeđena na nivou komandi, konfiguracionih datoteka i IPC-a, što omogućava korišćenje Sway-a kao transparentne zamene za i3, koristeći Wayland umesto X11. Sway omogućava organizaciju prozora na ekranu logički, ne prostorno. Prozori su postavljeni tako da formiraju mrežu koja optimalno koristi prostor na ekranu i omogućava brzo upravljanje prozorima samo pomoću tastature.
Za krepitev popolnega uporabniškega okolja so na voljo spremljajoče komponente: swayidle (ozadnji proces z implementacijo KDE idle protokola), swaylock (varovalo zaslona), mako (upravljalnik obvestil), grim (izdelava posnetkov zaslona), slurp (izbor območja na zaslonu), wf-recorder (posnetek videa), waybar (aplikacijska vrstica), virtboard (zaslonska tipkovnica), wl-clipboard (upravljanje s pametnim odrezkom), wallutils (upravljanje s slikami na namizju).
Sway se razvija kot modularni projekt, zgrajen na vrhu knjižnice wlroots, ki vključuje vse osnovne primitivne za organizacijo delovanja kompozitnega upravljalnika. Wlroots vsebuje vtičnice za abstraktno dostopanje do zaslona, vhodnih naprav, risanja brez neposrednega dostopa do OpenGL, interakcijo z KMS/DRM, libinput, Wayland in X11 (tehnologija za zagon X11 aplikacij na Xwayland). Poleg Sway se knjižnica wlroots aktivno uporablja tudi v drugih projektih, vključno z Librem5 in Cage. Poleg C/C++ so bili razviti tudi vezniki za Scheme, Common Lisp, Go, Haskell, OCaml, Python in Rust.

U novom izdanju:
- Uvedena je nova ukazna funkcija 'bindgesture' za dodeljevanje dejanj dotikom na touchpadu.
- Postopek zaklepanja zaslona (swaylock) je bil prešel na uporabo protokola Wayland ext-session-lock-v1, kar je omogočilo povečanje zanesljivosti in varnosti zaklepanja seje.
- Dodana je nova ukazna funkcija 'output unplug' za odstranjevanje virtualnih izhodnih naprav.
- Dodana je podpora za dogodke drsenja miške z visoko ločljivostjo.
- Zagotovljena je podpora za nastavitev 'disable while trackpointing' v knjižnici libinput za nadzor izklopa touchpada med uporabo tensiometrskega joysticka (trackpoint na prenosnih računalnikih Thinkpad).
- Za povečanje zanesljivosti določitve delovnega prostora pri zagonu novih odjemalskih aplikacij je bil uveden protokol xdg-activation-v1.
- V knjižnici wlroots je izboljšana implementacija sistema za_renderiranje s pomočjo grafičnega API Vulkan.
- Za optimizacijo procesa načrtovanja zagonov nalog na platformi Linux je bila omogočena možnost dodeljevanja pooblastil CAP_SYS_NICE.
- Opustili so podporo za delovanje s zastavo SUID root.
- Ukaz 'output dpms' je označen kot zastarel, zdaj pa se uporablja ukaz 'output power'.
- Za delo z regularnimi izrazi se namesto knjižnice pcre zdaj uporablja pcre2.
Izvor: opennet.ru
