Выпуск пользовательского окружения Sway 1.12

После почти года разработки опубликован релиз композитного менеджера Sway 1.12, построенного с использованием протокола Wayland и совместимого с мозаичным оконным менеджером i3 и панелью i3bar. Код проекта написан на языке Си и распространяется под лицензией MIT. Проект нацелен на использование в Linux и FreeBSD.

Sway позволяет размещать окна на экране не пространственно, а логически. Окна располагаются, образуя сетку, оптимально использующую экранное пространство и позволяющую быстро манипулировать окнами только при помощи клавиатуры. Совместимость с i3 обеспечена на уровне команд, файлов конфигурации и IPC, что позволяет использовать Sway в качестве прозрачной замены i3, использующей Wayland вместо X11.

Для обустройства полноценного пользовательского окружения предлагаются сопутствующие компоненты: swayidle (фоновый процесс с реализацией ждущего режима), swaylock (хранитель экрана), mako (менеджер уведомлений), grim (создание скриншотов), slurp (выделение области на экране), wf-recorder (захват видео), waybar (панель приложений), virtboard (экранная клавиатура), wl-clipboard (работа с буфером обмена), wallutils (управление обоями рабочего стола).

Sway развивается как модульный проект, построенный поверх библиотеки wlroots, в которую вынесены все базовые примитивы для организации работы композитного менеджера. Wlroots включает бэкенды для абстрагирования доступа к экрану, устройствам ввода, отрисовки без прямого обращения к OpenGL, взаимодействию с KMS/DRM, libinput, Wayland и X11 (предоставляется прослойка для запуска X11-приложений на базе Xwayland). Помимо Sway библиотека wlroots активно используется и в других проектах. Кроме поддержки языков Си/С++, предоставляются обвязки для языков Scheme, Common Lisp, Go, Haskell, OCaml, Zig, Python и Rust.

В новом выпуске:

  • Добавлена возможность захвата отдельных окон.
  • Реализована поддержка вывода в расширенном динамическом диапазоне яркости HDR10 при использовании отрисовки на базе API Vulkan.
  • Добавлена поддержка Wayland-протоколов:
    • color-management-v1 для управления цветом и поддержки расширенного динамического диапазона яркости (HDR, High Dynamic Range).
    • color-representation-v1 для определение цветового представления Wayland-поверхности.

    • xdg-toplevel-tag-v1 для прикрепления Wayland-клиентами тегов к поверхностями верхнего уровня, которые композитный сервер может использовать для восстановления позиции, размера и свойств окон после перезапуска, а также для определения особых правил для отдельных видов окон.
    • ext-workspace-v1 для создания панелей или индикаторов, выводящих список доступных виртуальных рабочих столов и позволяющих переключаться между ними.
    • wl_fixes для решения проблем с другими программными интерфейсами базовых протоколов, которые не могут быть устранены собственными возможностями этих интерфейсов.
  • Реализована опция »--device-primaries», при указании которой цветовой профиль формируется на основе данных, вызываемых монитором через EDID.

  • Добавлена поддержка определения наличия кейпада, используя флаг LIBINPUT_SWITCH_KEYPAD_SLIDE в libinput.

  • В файл конфигурации включены привязки специальных мультимедийных клавиш (приостановить, продолжить воспроизведение, следующая композиция и т.п.) для управления воспроизведением мультимедийного содержимого при помощи утилиты playerctl.

  • Цветовой профиль вывода srgb переведён на использование кусочной (piece-wise) передаточной функции sRGB вместо gamma 2.2 (для gamma 2.2 следует использовать отдельный профиль gamma22, который применяется по умолчанию).

  • Запуск в системах с неподдерживаемыми GPU (например, при использовании проприетарных драйверов NVIDIA), теперь приводит к выводу предупреждения, а не к завершению работы с ошибкой. Предупреждение можно отключить при помощи флага »--unsupported-gpu» или переменной окружения SWAY_UNSUPPORTED_GPU.
  • Добавлена официальная поддержка использования дисплейных менеджеров для запуска Sway.

  • Задействованы новые возможности библиотеки wlroots 0.20. Среди изменений в новой версии wlroots: Поддержка определения цветового представления Wayland-поверхности, управления цветом и использования HDR при помощи протоколов color-representation-v1 и color-management-v1. Поддержка Wayland-протоколов cursor-shape-v1 для настройки внешнего вида курсора, ext-workspace-v1 для использования концепции виртуальных рабочих столов и xdg-toplevel-tag-v1 для идентификации окон/поверхностей через привязку тегов.

CFD0C5CECEC5D4_1767072559.png

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

© OpenNet