Публикувано е първото значително издание на X11-сървъра yserver, написан от нулата на езика Rust и поддържащ актуалните разширения на протокола X11. Проектът не си поставя за цел да повтори всички възможности на Xorg Server и се ограничава само до функционалността, необходима за стартиране на съвременни работни среди, мениджъри на прозорци, приложения и графични библиотеки (GTK, Qt, SDL, GLFW). От тестваните среди са отбелязани MATE, Xfce и Cinnamon, както и мениджърите на прозорци FVWM3, e16 и wmaker. Кодът на проекта се разпространява под лицензия MIT.
В yserver е решено да не се поддържат остарели и специфични възможности, като обработка на няколко X11-екрани на един сървър (многомониторният изход се поддържа), различни от TrueColor цветови режими, непряк рендеринг (indirect GLX), API на драйверите DDX, стари методи за работа с шрифтове и свързване на клиенти с различен ред на байтовете (превод между big-endian и little-endian).
Изходната графика е организирана чрез DRM/KMS и Vulkan драйвери Mesa. За управление на сесията и организиране на достъпа до споделени входни и изходни устройства се използва библиотеката libseat. В допълнение на отделния X-сервер, се предоставя ynest — бекенд за вложено стартиране, поддържащ работа от Xwayland или друг X11.сървър.
Работата е тествана на системи с 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. В момента се поддържа само работа в Linux, но в плановете е добавянето на поддръжка за FreeBSD.
Поддържаните разширения на X11:
- BIG-REQUESTS
- Composite
- DAMAGE
- DPMS
- DRI3
- GLX
- Generic Event Extension
- MIT-SCREEN-SAVER
- MIT-SHM
- Present
- RANDR
- RENDER
- SHAPE
- SYNC
- X-Resource
- XFIXES
- XInputExtension
- XKEYBOARD
- XTEST
Източник: opennet.ru
