IT-словарь › Программирование › wlroots

wlroots

Программирование Svenska → Обновлено: 2026-10-18
Подробнее
Создатель
Drew DeVault
Год
Тип
Библиотека
Лицензия
MIT
Исходный код
gitlab.freedesktop.org/wlroots/wlroots

Библиотека, превратившая написание композитора Wayland из шестидесяти тысяч строк в тысячу: её сделали для Sway в 2017 году, и с тех пор она — основа большинства композиторов, кроме Mutter и KWin.

Wayland — это протокол, а тот, кто пишет композитор, должен реализовать всё, что раньше делал X-сервер: работать с DRM/KMS, читать ввод через libinput, рисовать через OpenGL или Vulkan, реализовать xdg-shell и ещё десяток протоколов и запускать XWayland для устаревших клиентов. Дрю ДеВолт начал wlroots в 2017 году, когда Sway перерос прежнюю библиотеку wlc, а в README написал про «60 000 строк кода, которые вам всё равно пришлось бы писать». Модули намеренно слабо связаны: композитор берёт нужное и все решения об окнах и фокусе оставляет за собой.

В библиотеку входят бэкенды для DRM, libinput, вложенной работы внутри X11 или другой сессии Wayland и безголового режима; три рендерера; граф сцены (wlr_scene, 2021), берущий на себя отслеживание повреждений и перерисовку; и tinywl — образцовый композитор примерно в тысячу строк на C. На ней построены Sway, river, labwc, Wayfire, Cage и dwl; Hyprland — до 2024 года, когда перешёл на собственную Aquamarine. Когда ДеВолт отошёл от дел, ведущим мейнтейнером стал Simon Ser, а код переехал на GitLab freedesktop.org. До версии 1.0 проект так и не дошёл, и каждый релиз 0.x ломает API — с чем композиторы научились жить.

Источники wlroots
← Назад к словарю