NetBSD перешёл на оконный менеджер CTWM по умолчанию и экспериментирует с Wayland
28 сентября 2020 года
Проект NetBSD объявил о смене предлагаемого по умолчанию в сеансе X11 оконного менеджера с twm на CTWM. CTWM представляет собой форк twm, ответвившийся в 1992 году и развивавшийся в направлении создания легковесного и полностью настраиваемого оконного менеджера, позволяющего менять оформление и поведение на свой вкус.
Оконный менеджер twm предлагался в NetBSD последние 20 лет и в современных условиях выглядел архаично. Негативная реакция людей на предлагаемый по умолчанию twm заставила разработчиков пересмотреть оболочку по умолчанию и задействовать более функциональный оконный менеджер CTWM для формирования окружения, дружественного для пользователей, имеющих опыт работы в других операционных системах.
CTWM поддерживает виртуальные рабочие столы, активно развивается и поставляется под совместимой с NetBSD лицензией. Из реализованных на базе CTWM новых возможностей отмечается автоматически генерируемое меню приложений, полезные клавиатурные комбинации для полноценного управления без мыши, адаптация для работы с разными разрешениями экрана (в том числе HiDPI после добавления крупных шрифтов), возможность поддержки как очень медленных, так и очень быстрых систем при помощи одного файла конфигурации.
Было:
Стало:
Дополнительно опубликована заметка о состоянии проекта по обеспечению работы в NetBSD композитного сервера swc на базе протокола Wayland. Порт пока не готов для повседневного использования, но уже пригоден для экспериментов и запуска приложений, использующих Qt5, GTK3 или SDL2. Из проблем отмечается несовместимость с некоторыми приложениями, включая Firefox, отсутствие поддержки запуска приложений X11, возможность работы только с GPU Intel для которых имеется драйвер для переключения видеорежимов на уровне ядра.
Из особенностей Wayland, затрудняющих портирование в NetBSD, упоминается наличие большого объёма специфичного для ОС кода в композитных менеджерах, отвечающих за управление экраном, вводом и управлением окнами. Wayland не предоставляет готовые протоколы для таких возможностей, как создание скриншотов, блокировка экрана и управление окнами, и пока отстаёт от X-сервера в таких областях, как переносимость, модульность и стандартизация.
Дополнительные возможности реализуются силами композитного менеджера или через определение расширений к протоколам. Эталонный композитный сервер Weston сильно завязан на API ядра Linux. Например, привязка к механизму мультиплексирования ввода-вывода epoll требует переработки для поддержки kqueue. Патчи для использования kqueue уже подготовлены разработчиками BSD-систем, но пока не приняты в основной состав.
Код эталонного композитного сервера изначально написан с оглядкой только на Linux и не учитывает особенности других систем (например, в коде используется "#include <linux/input.h>" и зависимость от libinput). Во FreeBSD реализован клон API ввода Linux, но в NetBSD применяется принципиально иной API для управления вводом - wscons. В настоящее время поддержка wscons уже добавлена в swc и запланирована для переноса в другие композитные менеджеры.
Представители NetBSD намерены убедить разработчиков Wayland не использовать жесткую привязку к epoll, а перейти на универсальную прослойку, такую как libevent. Из планируемых работ также отмечается обновление DRM/KMS стека ядра NetBSD и графических драйверов, в том числе с портированием кода из ядра Linux, а также добавление поддержки атомарного переключения видеорежимов, новых версий DRM и API Glamor (для запуска X11-приложений под управлением xwayland). В композитный сервер на базе Wayland планируется добавить поддержку фреймбуферов.
Источники
править
Любой участник может оформить статью: добавить иллюстрации, викифицировать, заполнить шаблоны и добавить категории.
Любой редактор может снять этот шаблон после оформления и проверки.
Комментарии
Если вы хотите сообщить о проблеме в статье (например, фактическая ошибка и т. д.), пожалуйста, используйте обычную страницу обсуждения.
Комментарии на этой странице могут не соответствовать политике нейтральной точки зрения, однако, пожалуйста, придерживайтесь темы и попытайтесь избежать брани, оскорбительных или подстрекательных комментариев. Попробуйте написать такие комментарии, которые заставят задуматься, будут проницательными или спорными. Цивилизованная дискуссия и вежливый спор делают страницу комментариев дружелюбным местом. Пожалуйста, подумайте об этом.
Несколько советов по оформлению реплик:
- Новые темы начинайте, пожалуйста, снизу.
- Используйте символ звёздочки «*» в начале строки для начала новой темы. Далее пишите свой текст.
- Для ответа в начале строки укажите на одну звёздочку больше, чем в предыдущей реплике.
- Пожалуйста, подписывайте все свои сообщения, используя четыре тильды (~~~~). При предварительном просмотре и сохранении они будут автоматически заменены на ваше имя и дату.
Обращаем ваше внимание, что комментарии не предназначены для размещения ссылок на внешние ресурсы не по теме статьи, которые могут быть удалены или скрыты любым участником. Тем не менее, на странице комментариев вы можете сообщить о статьях в СМИ, которые ссылаются на эту заметку, а также о её обсуждении на сторонних ресурсах.