Выпуск композитных серверов Wayfire 0.10 и Wlmaker 0.6, использующих Wayland

После года разработки опубликован релиз композитного сервера Wayfire 0.10, использующего Wayland и позволяющего формировать нетребовательные к ресурсам интерфейсы пользователя c 3D-эффектами в стиле 3D-плагинов к Compiz (переключение экранов через 3D-куб, пространственная раскладка окон, морфинг при работе с окнами и т.п.). Wayfire поддерживает расширение функциональности через плагины и предоставляет гибкую систему настройки. Код проекта написан на языке C++ и распространяется под лицензией MIT.

Проект построен на базе библиотеки wlroots, развиваемой разработчиками пользовательского окружения Sway и предоставляющей базовые функции для организации работы композитного менеджера на базе Wayland. Для управления сеансами могут применяться systemd, elogind или seatd. Поддерживается запуск X11-приложений при помощи XWayland. В качестве панели можно использовать wf-shell от разработчиков Wayfire или стороннюю панель LavaLauncher. Проектом также развивается библиотека для работы с файлами конфигурации wf-config и графический конфигуратор wcm.

В новой версии Wayfire:

  • Добавлена возможность раздельной настройки разных устройств ввода. Например, можно настроить разные наборы раскладок для нескольких подключённых клавиатур.
  • Добавлена экспериментальная поддержка бэкендов отрисовки, использующих графический API Vulkan и библиотеку Pixman, помимо штатного бэкенда на базе OpenGL ES.
  • API отрисовки переделан для интеграции с системой отрисовки библиотеки wlroots.
  • Реализована возможность задания своего цветового профилей для каждого устройства вывода.
  • В плагин “animate” добавлены новые анимированные эффекты, такие как
    эффект волшебной лампы, при котором при сворачивании окно сжимается и складывается в пиктограмму, а также эффекты вращения (spin) и раскрытия (zap) окна. Предоставлена возможность подключения внешних плагинов для создания своих анимационных эффектов.
  • Добавлены новые методы IPC для определения и выставления раскладки клавиатуры, отправки окон на заданный рабочий стол и определения позиции курсора.
  • Добавлена поддержка выпуска библиотеки wlroots 0.19, в котором реализованы новые протоколы Wayland, поддержка Multi-GPU и возможность явной синхронизации буферов при помощи объектов синхронизации DRM (Direct Rendering Manager).
  • В плагине “resize” улучшена обработка максимального и минимального размера окон.
  • Добавлена поддержка скрипта для запуска Xwayland, позволяющего выполнять дополнительные команды после старта и перезапуска Xwayland по аналогии с .xinitrc.


Дополнительно можно отметить выпуск композитного сервера Wayland Maker 0.6, реализующего пользовательское окружение в стиле Window Maker, построенное с использованием протокола Wayland. Среди поддерживаемых возможностей: стековый режим компоновки окон, использование виртуальных рабочих столов, боковая панель, оформление в стиле NeXTSTEP, поддержка закрепления приложений на экране, ориентация на легковесность и высокую производительность, возможность запуска X11-приложений при помощи XWayland. Поддерживаются Wayland протоколы: xdg-decoration-unstable-v1, ext_session_lock_v1, wlr_layer_shell_unstable_v1, wlr-output-management-unstable-v1, xdg_shell и idle_inhibit_unstable_v1. Код проекта написан на языке Си и распространяется под лицензией Apache 2.0.

В новой версии Wayland Maker реализована возможность использования нескольких устройств вывода и поддержка Wayland-протокола wlr-output-management для изменения настроек устройств вывода. Для настройки параметров экрана могут использоваться приложения wdisplays и wlr-randr. Добавлена поддержка генерации корневого меню из репозитория XDG при помощи утилиты wmmenugen. Реализована навигация по меню, используя клавиатуру. Подготовлено руководство пользователя.


Release. Ссылка here.