О переходе с X11 на Wayland в Linux
Сегодня мы поговорим о двух серверных системах отображения в Linux — X11 и Wayland.
Что такое сервер отображения?
Сервер отображения — это программа, которая координирует ввод и вывод данных между приложениями, операционной системой и оборудованием. Это ключевой компонент любой графической оболочки: без него можно было бы работать только через командную строку.
X11
X11 — это преемник системы X Window, используемой с 1984 года. Это сетевой протокол, который определяет, как приложения (клиенты) и дисплей (сервер) обмениваются сообщениями. Эти сообщения могут содержать команды вроде «нарисовать прямоугольник», «показать текст» или «обнаружено нажатие мыши».
Однако X11 устарел. Его не обновляли уже более 30 лет, и большинство его функций сегодня не нужны. Это снижает как производительность, так и безопасность. Например, в X11 любая программа может работать как кейлоггер, перехватывая всё, что набирается в других приложениях.
Wayland
Wayland — это современная замена X11, разработанная сообществом. Он более безопасен и эффективен, с упрощённой архитектурой. В Wayland сервер отображения называется композитором — он управляет окнами, буферизует их вне экрана и затем выводит итоговое изображение на дисплей.
Wayland повышает безопасность за счёт изоляции приложений. В отличие от X11, ни одна программа не может видеть содержимое окон других приложений.
Wayland против X11
Несмотря на свои преимущества, Wayland пока ещё не полностью стабилен. Многие игры и графические приложения для Linux всё ещё зависят от X11. Кроме того, некоторые проприетарные драйверы (например, NVIDIA) имеют неполную поддержку Wayland.
До недавнего времени StaffCounter для Linux (до версии 2.0.29) работал только с X11. Это позволяло делать снимки экрана, отслеживать веб-адреса и записывать текстовый ввод. Но поскольку новые дистрибутивы Linux (Ubuntu, Debian, Red Hat) стали использовать Wayland по умолчанию, пользователям приходилось возвращаться к X11 для сохранения полной функциональности.
StaffCounter и Wayland
Теперь наши разработчики выпустили версию StaffCounter, работающую в обеих средах. Однако при запуске в Wayland всё ещё существуют некоторые ограничения:
- Нет снимков экрана
- Нет отслеживания веб-адресов
Доступно следующее:
- Названия запущенных программ
- Заголовки окон
- Регистрация нажатий клавиш (поддерживает несколько языков, не только латиницу)
Если вам нужны снимки экрана, вы можете отключить Wayland и вернуться к X11. Инструкции доступны в разделе Установка на Ubuntu 22 на этой странице.