Выпуск miracle-wm 0.10, композитного менеджера на базе Wayland и Mir
Опубликован выпуск композитного менеджера miracle-wm 0.10, использующего протокол Wayland и компоненты для построения композитных менеджеров Mir. Miracle-wm поддерживает мозаичную (tiling) компоновку окон, схожую с аналогичной в проектах i3 и Sway. В качестве панели может применяться Waybar. Код проекта написан на языке C++ и распространяется под лицензией GPLv3. Готовые сборки сформированы в формате snap, а также в пакетах rpm и deb для Fedora и Ubuntu.
Целью miracle-wm является создание композитного сервера, применяющего мозаичное управление окнами, но более функционального и стильного, чем такие продукты, как Swayfx. При этом проект позволяет использовать и классические приёмы работы с плавающими окнами, например, можно размещать отдельные окна поверх мозаичной сетки или закреплять окна к определённому месту на рабочем столе. Поддерживается виртуальные рабочие столы с возможностью выставления для каждого рабочего стола своего режима работы с окнами по умолчанию (мозаичная компоновка или плавающие окна).
Предполагается, что miracle-wm может оказаться полезным пользователям, которые отдают предпочтение мозаичной компоновке, но желают получить визуальные эффекты и более яркое графическое оформление с плавными переходами и цветами. Конфигурация определяется в формате YAML. Для установки miracle-wm можно использовать команду «sudo snap install miracle-wm --classic».

Основные новшества:
В системе плагинов реализована возможность применения шейдеров в привязке к отдельным окнам. В качестве примера подготовлен плагин focus-blur-plugin, размывающий содержимое всех окон, за исключением активного окна.

В плагинах добавлена поддержка создания фильтров вывода, использующих шейдеры. Данная возможность задействована в плагине night-light-plugin, добавляющем оранжевый оттенок в дневное время.

- Задействованы Wayland-протоколы
ext-data-control-manager-v1 для управления буфером обмена. Поддержка данного протокола обеспечила возможность использования утилиты wl-copy для помещения данных в буфер обмена.
ext-image-capture-source-manager-v1 и ext-image-copy-capture-manager-v1 для организация захвата контента, выводимого на экран. Обеспечена совместимость с XDG-порталом xdg-desktop-portal-wlr и утилитой для создания скриншотов grimshot.
ext-foreign-toplevel-list-v1 для закрепления окон поверх другого содержимого, например, для подключения панелей и переключателей окон.
- zwp-input-method для создания виртуальных клавиатур и IME-прослоек (Input Method Editor) обработки ввода.
Реализован интерфейс (на базе GTK4) для вывода информации об ошибках в конфигурации. Сведения об ошибках передаются через IPC-сокет.
Реализован интерфейс для показа отладочной информации о позиционировании окон и областях ввода. Интерфейс написан на GTK4 и активируется командой «miraclemsg debug overlay».
Обеспечена автоматическая загрузка плагинов, собранных в формате WebAssembly и размещённых в каталоге ~/.config/miracle-wm/plugins с расширением ».wasm».
Источник: http://www.opennet.ru/opennews/art.shtml? num=65738
© OpenNet
