Опубликован выпуск композитного менеджера 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".
Источник: https://www.opennet.ru/opennews/art.shtml?num=65738







