Выпуск miracle-wm 0.4, композитного менеджера на базе Wayland и Mir

Мэтью Косарек (Matthew Kosarek) из компании Canonical опубликовал выпуск композитного менеджера miracle-wm 0.4, использующего протокол 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».

При подготовке новой версии основное внимание было сосредоточено на обеспечении полной поддержки IPC-протокола оконного менеджера i3, на базе которого также построен IPC-протокол для взаимодействия с композитным менеджером Sway. В miracle-wm 0.4 реализованы почти все возможности i3 IPC, за исключением вызовов для пометки и выделения окон, что позволило существенно улучшить совместимость со сторонними проектами, поддерживающими i3 IPC, такими как панель waybar и графическая оболочка nwg-shell.

Из не связанных с IPC изменений можно отметить:

  • Режим стековой компоновки окон.
  • Объединение окон в группы с переключением между элементами группы при помощи вкладок.
  • Работа в могомониторных конфигурациях и возможность перемещения окон и групп окон на другие устройства вывода.
  • Прикрепление произвольных имён к виртуальным рабочим столам, не ограничиваясь цифровыми идентификаторами.
  • Команды управления раскладкой окон, совместимые с i3.
  • Компоненты для интеграции с systemd (запуск через менеджер сеансов systemd, обработка специфичных событий, запись логов в systemd-journal).
  • Утилита miraclemsg (форк swaymsg) для отправки управляющих команд, например, для смены фокуса ввода или перемещения окна с одного рабочего стола на другое.

Среди идей на будущее упоминается поддержка обзорного режима навигации по окнам и рабочим столам, контекстные меню с действиями над окнами, режим «картинка в картинке», режим с выводом активного окна по центру экрана, графический конфигуратор, собственная панель приложений, прокручиваемый виртуальный рабочий стол, выходящий за границы экрана.

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