Пуснат е релиз на композитния мениджър Sway 1.7, построен с използването на протокола Wayland и напълно съвместим с мозаичния управляващ прозорци i3 и панела i3bar. Кодът на проекта е написан на C и се разпространява под MIT лиценз. Проектът е насочен към използване в Linux и FreeBSD.
Съвместимостта с i3 е осигурена на ниво команди, файлове с конфигурация и IPC, което позволява използването на Sway като прозрачна замяна на i3, използваща Wayland вместо X11. Sway позволява позициониране на прозорците на екрана не пространствено, а логически. Прозорците се разполагат, образувайки мрежа, оптимално използваща екранното пространство и позволяваща бърза манипулация на прозорците само с клавиатура.
За изграждане на полноценна потребителска среда се предлагат придружаващи компоненти: swayidle (бекграунд процес с реализация на протокола KDE idle), swaylock (протектор на екрана), mako (мениджър на известия), grim (създаване на скрийншотове), slurp (обозначаване на област на екрана), wf-recorder (заснемане на видео), waybar (приложен панел), virtboard (екранна клавиатура), wl-clipboard (работа с буфера на обмен), wallutils (управление на настолни тапети).
Sway се развива като модулен проект, построен върху библиотеката wlroots, в която са пренесени всички основни примитиви за организиране на работата на композитния мениджър. Wlroots включва бекенди за абстрахиране на достъпа до екрана, входни устройства, изобразяване без директен достъп до OpenGL, взаимодействие с KMS/DRM, libinput, Wayland и X11 (предоставя се междинен слой за стартиране на X11 приложения на базата на Xwayland). Освен Sway, библиотеката wlroots активно се използва и в други проекти, включително Librem5 и Cage. Освен C/C++, са разработени биндинги за Scheme, Common Lisp, Go, Haskell, OCaml, Python и Rust.
В новото издание:
- Добавена е възможност за преместване на табове с мишката.
- Добавена е поддръжка за изход към виртуални шлемове.
- Добавена е команда „output render_bit_depth“ за включване на режима на композитиране с висока дълбочина на цвета.
- Повишена е надеждността и производителността на изхода за fullscreen прозорци (чрез dmabuf е осигурен директен изход без допълнително буферизиране).
- Активиран е протоколът xdg-activation-v1, който позволява прехвърляне на фокуса между различни повърхности на първо ниво (например, чрез xdg-activation едно приложение може да прехвърли фокуса на друго).
- Добавена е опция client.focused_tab_title за настройка на цвета на активния таб.
- Добавена е команда „output modeline“ за задаване на собствен режим DRM (Direct Rendering Manager).
- Добавена е команда „output dpms toggle“ за опростяване на изключването на екрана от скриптове. Също така са добавени командите „gaps toggle “, „smart_gaps inverse_outer“ и „split none“.
- Опцията „—my-next-gpu-wont-be-nvidia“ е премахната, вместо нея трябва да се използва режимът „—unsupported-gpu“. Проприетарните драйвери NVIDIA все още не се поддържат.
- Определеният по подразбиране емулатор на терминал е заменен с foot.
- Добавена е възможност за изключване на панела swaybar и диалоговите прозорци swaynag по време на компилацията.
- Забранено е динамичното изменение на височината на заглавката на прозореца в зависимост от символите в текста на заглавката, заглавката сега винаги има фиксирана височина.

Източник: opennet.ru
