11 айлык иштеп чыгуудан кийин, Wayland протоколун колдонуп курулган жана i3 плитка терезе менеджери жана i3bar менен толук шайкеш келген Sway 1.8 композиция менеджери чыгарылды. Долбоордун коду C тилинде жазылган жана MIT лицензиясы боюнча таратылган. Долбоордун максаты... Linux жана FreeBSD.
i3 менен шайкештик буйруктардын, конфигурация файлдарынын жана IPC деңгээлинде камсыз кылынат, бул Swayди X3дин ордуна Wayland аркылуу i11 үчүн тунук алмаштыруу катары колдонууга мүмкүндүк берет. Sway терезелерди экранга мейкиндик боюнча эмес, логикалык жактан жайгаштырууга мүмкүндүк берет. Терезелер экрандын мейкиндигин оптималдуу пайдаланган тордо жайгаштырылган жана клавиатураны колдонуу менен терезелерди тез башкарууга мүмкүндүк берет.
Колдонуучунун толук чөйрөсүн орнотуу үчүн тиешелүү компоненттер сунушталат: swayidle (KDE бош жүрүү протоколун ишке ашыруу менен фон процесси), swaylock (экран сактагыч), mako (билдирүү менеджери), грим (скриншотторду түзүү), slurp (аймакты тандоо) экранда), wf-жазуучу (видео тартуу), жол панели (колдонмо тилкеси), virtboard (экрандагы клавиатура), wl-буфердик буфер (алмашуу буфери), wallutils (иш столунун обои башкаруу).
Sway курама менеджердин ишин уюштуруу үчүн бардык негизги примитивдерди камтыган wlroots китепканасынын үстүнө курулган модулдук долбоор катары иштелип чыккан. Wlroots экранга кирүү, киргизүү түзмөктөрүн абстракциялоо, OpenGLге түздөн-түз кирбестен көрсөтүү, KMS/DRM, libinput, Wayland жана X11 менен интерфейсти камтыйт (катмар Xwayland негизинде X11 тиркемелерин иштетүү үчүн берилген). Swayден тышкары, wlroots китепканасы Librem5 жана Cage сыяктуу башка долбоорлордо жигердүү колдонулат. C/C++ тилинен тышкары Scheme, Common Lisp, Go, Haskell, OCaml, Python жана Rust үчүн байланыштар иштелип чыккан.

Жаңы чыгарылышта:
- Иш-аракеттерди сенсордук панелдин жаңсоолоруна байланыштыруу үчүн жаңы "bindgesture" буйругу ишке ашырылды.
- Экранды кулпулоо процесси (swaylock) Wayland ext-session-lock-v1 протоколун колдонууга которулду, ал сессияны кулпулоонун ишенимдүүлүгүн жана коопсуздугун жогорулатты.
- Виртуалдык чыгаруу түзмөктөрүн алып салуу үчүн жаңы "output unplug" буйругу кошулду.
- Чычкандын дөңгөлөктөрүн жылдыруу окуялары үчүн жогорку чечилишке колдоо кошулду.
- Көрсөтүү таякчасын (Thinkpad ноутбуктарындагы трекпункт) колдонууда трекпад өчүрүлгөнүн көзөмөлдөө үчүн libinput китепканасында "көзөмөлдөө учурунда өчүрүү" жөндөөсүнө колдоо көрсөтөт.
- Жаңы кардар тиркемелерин ишке киргизүүдө жумушчу мейкиндигин аныктоонун ишенимдүүлүгүн жогорулатуу үчүн xdg-activation-v1 протоколу колдонулат.
- Wlroots китепканасы Vulkan графикалык API аркылуу рендеринг системасын ишке ашырууну жакшыртты.
- Платформада тапшырмаларды пландаштыруу процессин оптималдаштыруу үчүн Linux CAP_SYS_NICE уруксаттарын орнотуу мүмкүнчүлүгү ишке ашырылды.
- SUID тамыр желеги менен иштөөнү колдоо токтотулду.
- "output dpms" буйругу жокко чыгарылды жана азыр "output power" буйругу менен алмаштырылды.
- Регулярдуу туюнтмалар менен иштөө үчүн азыр pcre китепканасынын ордуна pcre2 колдонулат.
Source: opennet.ru
