Проект NetBSD
Оконный менеджер twm предлагался в NetBSD последние 20 лет и в современных условиях выглядел архаично. Негативная реакция людей на предлагаемый по умолчанию twm заставила разработчиков пересмотреть оболочку по умолчанию и задействовать более функциональный оконный менеджер CTWM для формирования окружения, дружественного для пользователей, имеющих опыт работы в других операционных системах.
CTWM поддерживает виртуальные рабочие столы, активно развивается и поставляется под совместимой с NetBSD лицензией. Из реализованных на базе CTWM новых возможностей отмечается автоматически генерируемое меню приложений, полезные клавиатурные комбинации для полноценного управления без мыши, адаптация для работы с разными разрешениями экрана (в том числе HiDPI после добавления крупных шрифтов), возможность поддержки как очень медленных, так и очень быстрых систем при помощи одного файла конфигурации.
ఉంది:
ఇది మారింది:
అదనంగా
Из особенностей 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 планируется добавить поддержку фреймбуферов.
మూలం: opennet.ru