
Состоялся первый значительный релиз открытого X11-сервера yserver. Данное решение было написано с нуля на языке Rust и поддерживает актуальные расширения протокола X11. Проект не стремится воспроизвести все функции Xorg Server, а ограничивается лишь тем функционалом, который необходим для запуска современных сред рабочего стола, оконных менеджеров, приложений и графических библиотек (GTK, Qt, SDL, GLFW). Исходный код yserver опубликован на GitHub под лицензией MIT.
Согласно информации OpenNET, среди протестированных в yserver окружений отмечены MATE, Xfce и Cinnamon, а также оконные менеджеры FVWM3, e16 и wmaker.
В yserver было принято решение не поддерживать устаревшие и узкоспециализированные возможности, такие как обработка нескольких X11-экранов в одном сервере (при этом многомониторный вывод поддерживается), режимы цветности, отличные от TrueColor, непрямой рендеринг (indirect GLX), API драйверов DDX, старые методы работы со шрифтами и подключение клиентов с другим порядком следования байтов (трансляция между big-endian и little-endian).
Вывод графики осуществляется через DRM/KMS и Vulkan-драйверы Mesa. Для управления сеансом и организации доступа к совместно используемым устройствам ввода и вывода применяется библиотека libseat. Помимо автономного X-сервера, поставляется ynest — бэкенд для вложенного запуска, который поддерживает работу из Xwayland или другого X11-сервера.
Работа yserver была протестирована на системах с GPU AMD Ryzen 9 6900HX (Rembrandt, RDNA2, драйвер Mesa RADV), AMD RX580 (Polaris/GCN4, RADV), Intel i5-7200U (Kaby Lake, драйвер Mesa ANV), NVIDIA GTX 1050, Snapdragon X1 X1E80100 (Adreno X1, Turnip), Apple M1 MBA, M2 MBP, а также в системах виртуализации с virtio-gpu и виртуальным GPU Venus. В настоящее время yserver поддерживает только работу в Linux, однако в планах отмечено добавление поддержки FreeBSD.
Поддерживаемые yserver расширения X11:
BIG-REQUESTS;
BIG-REQUESTS;
Composite;
Composite;
DAMAGE;
DAMAGE;
DPMS;
DPMS;
DRI3;
DRI3;
GLX;
GLX;
Generic Event Extension;
Generic Event Extension;
MIT-SCREEN-SAVER;
MIT-SCREEN-SAVER;
MIT-SHM;
MIT-SHM;
Present;
Present;
RANDR;
RANDR;
RENDER;
RENDER;
SHAPE;
SHAPE;
SYNC;
SYNC;
X-Resource;
X-Resource;
XFIXES;
XFIXES;
XInputExtension;
XInputExtension;
XKEYBOARD;
XKEYBOARD;
XTEST.
XTEST.