Выпуск 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».

CFD0C5CECEC5D4_1775709069.png

Основные новшества:

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

    CFD0C5CECEC5D4_1782108713.png

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

    CFD0C5CECEC5D4_1782109106.png

  • Задействованы 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