Po 11 mesiacoch vývoja bol vydaný release kompozitného správcu Sway 1.8, postaveného na protokole Wayland a plne kompatibilného s dlaždicovým správcom okien i3 a panelom i3bar. Kód projektu je napísaný v jazyku C a je distribuovaný pod licenciou MIT. Projekt je zameraný na používanie v Linuxe a FreeBSD.
Kompatibilita s i3 je zabezpečená na úrovni príkazov, konfiguračných súborov a IPC, čo umožňuje používať Sway ako transparentnú náhradu i3, ktorá používa Wayland namiesto X11. Sway umožňuje umiestnenie okien na obrazovke nie priestorovo, ale logicky. Okna sú usporiadané tak, aby vytvárali mriežku, ktorá optimálne využíva priestor na obrazovke a umožňuje rýchlu manipuláciu s oknami len pomocou klávesnice.
Na zariadenie plnohodnotného používateľského prostredia sú k dispozícii sprievodné komponenty: swayidle (na pozadí bežiaca úloha s implementáciou KDE idle protokolu), swaylock (ochrana obrazovky), mako (správca upozornení), grim (tvorba snímok obrazovky), slurp (vyberanie oblasti na obrazovke), wf-recorder (zachytávanie videa), waybar (panel aplikácií), virtboard (obrazovková klávesnica), wl-clipboard (práca s schránkou), wallutils (správa pozadí pracovnej plochy).
Sway sa vyvíja ako modulárny projekt, postavený na knižnici wlroots, do ktorej sú presunuté všetky základné primitívy pre organizáciu práce kompozitného správcu. Wlroots obsahuje backendy na abstrakciu prístupu k obrazovke, vstupným zariadeniam, vykreslovaniu bez priameho volania OpenGL, interakcii s KMS/DRM, libinput, Wayland a X11 (poskytuje prepojovaciu vrstvu na spúšťanie X11 aplikácií založených na Xwayland). Okrem Sway sa knižnica wlroots aktívne používa aj v iných projektoch, vrátane Librem5 a Cage. Okrem C/C++ boli vyvinuté aj väzby pre Scheme, Common Lisp, Go, Haskell, OCaml, Python a Rust.

V novom vydaní:
- Bola implementovaná nová príkazová sekvencia „bindgesture“ na priradenie akcií k gestám na touchpade.
- Proces zamykania obrazovky (swaylock) bol preložený na používanie protokolu Wayland ext-session-lock-v1, čo umožňuje zvýšiť spoľahlivosť a bezpečnosť zamknutia relácie.
- Bola pridaná nová príkazová sekvencia „output unplug“ na odstránenie virtuálnych výstupných zariadení.
- Bola pridaná podpora pre udalosti skrolovania s vysokým rozlíšením.
- Bola zabezpečená podpora nastavenia „disable while trackpointing“ v knižnici libinput na riadenie vypnutia touchpadu pri používaní trackpointu (tenzometrického joysticku) na prenosných počítačoch Thinkpad.
- Na zvýšenie spoľahlivosti určovania pracovnej plochy pri spúšťaní nových klientske aplikácie bol zapojený protokol xdg-activation-v1.
- V knižnici wlroots bola vylepšená implementácia systému renderovania pomocou grafického API Vulkan.
- Na optimalizáciu procesu plánovania spúšťania úloh na platforme Linux bola implementovaná možnosť nastavenia oprávnení CAP_SYS_NICE.
- Podpora práce s vlajkou SUID root bola zastavená.
- Príkaz „output dpms“ bol označený za zastaraný, namiesto neho sa teraz používa príkaz „output power“.
- Na prácu s regulárnymi výrazmi sa namiesto knižnice pcre teraz používa pcre2.
Zdroj: opennet.ru
