28.02.2024

Первый выпуск композитного сервера Niri, использующего Wayland

Опубликован первый выпуск композитного сервера Niri. Проект создан под впечатлением от GNOME-расширения PaperWM и реализует метод мозаичной (tiling) компоновки, при котором окна группируются в бесконечно прокручиваемую на экране ленту. Открытие нового окна приводит к расширению ленты, а ранее добавленные окна никогда не меняют свой размер. Код проекта написан на языке Rust и распространяется под лицензией GPLv3. Пакеты собраны для Fedora, NixOS , Arch Linux и FreeBSD.

В качестве причины создания отдельного композитного менеджера отмечается невозможность реализации в PaperWM раздельной работы с мониторами из-за особенностей GNOME Shell (привязка к глобальным оконным координатам). Основным отличием Niri от PaperWM является привязка к каждому монитору собственной ленты окон, которые не пересекаются между собой. Niri поддерживает HiDPI и может работать на системах с несколькими GPU (например, гибридных системах с дискретной видеокартой и встроенным GPU).

Виртуальные рабочие столы в Niri создаются динамически (как в GNOME) и размещаются вертикально (лента окон вращается горизонтально, а лента рабочих столов — вертикально). На каждом мониторе может отображаться независимый набор виртуальных рабочих столов. Для переключения между рабочими столами можно использовать управляющие жесты на тачпаде. При отключении монитора раскладка виртуальных рабочих столов запоминается и переносится на оставшийся монитор, а при возвращении монитора восстанавливается в исходное состояние.

Имеется встроенный интерфейс для создания скриншотов и записи скринкастов (для доступа используется xdg-desktop-portal-gnome). Для запуска приложений X11 предусмотрена возможность задействования DDX-сервера Xwayland. Настройка осуществляется через файл конфигурации, позволяющий изменять базовые параметры окружения, такие как ширина рамок, отступы, режимы вывода и размеры окон. Изменения конфигурации применяются на лету без перезапуска композитного сервера.

Источник: https://www.opennet.ru/opennews/art.shtml?num=60511 Источник.