Екипът на разработчиците на работната среда Xfce обяви началото на разработката на нов композитен сървър Xfwl4, който използва протокола Wayland. В Xfwl4 е решено да не се използва кодовата база на текущия мениджър на прозорци xfwm4 и проектът ще бъде развиван от нулата на езика Rust, използвайки библиотеката Smithay. Проектът е на начален етап на разработка и първото тестово издание се очаква през средата на 2026 година. Кодът на Xfwl4 се разпространява под лицензия GPLv3.
В Xfwl4 се планира да се реализира цялата функционалност, налична в xfwm4, включително възможността за използване на съществуващите настройки на xfconf и интерфейса за конфигуриране, но с отчет за спецификите на използването на Wayland вместо X11. Сред разширените функции се открояват значителна преработка на логиката при стартирането на сесиите, реализация на Wayland протокола xdg-session-management и поддръжка на стартиране на X11 приложения чрез XWayland.
Като причина за създаването на новия композитен сървър се споменава неуспешен опит за реализиране на едновременно поддържане на X11 и Wayland в съществуващата кодова база на мениджъра на прозорци xfwm4, който първоначално е проектиран с оглед на тясната интеграция на протокола X11, което е затруднявало отделянето на общата логика за управление на прозорците от спецификата на X11.
Постепенното добавяне на поддръжка за Wayland в xfwm4 е признато за нецелесъобразно поради вероятността за снижена стабилност и появата на нови грешки в процеса на рефакторинг. Оказа се, че е по-лесно да се остави xfwm4 свързан с X11 и от време на време да се развива новият композитен сървър за Wayland. Като причини също така се посочва невъзможността за адаптиране на някои концепции за управление на прозорците от X11 за Wayland и необходимостта от използването на езика C и библиотеката wlroots в случай на продължаване на развитието на xfwm4, независимо от наличието на по-добри алтернативи.
Xfwl4 реши да се развива над библиотеката Smithay, която предоставя реализация на почти всички официални разширения на протокола Wayland, както и на протоколите wlroots и KDE. Smithay се използва в проекти като Cosmic и Niri. По аналогия с wlroots библиотеката Smithay предлага висококачествени абстракции, но позволява и намеса в работата на нискоуровневите системи и адаптиране на методите за визуализация, работа с входни устройства, поведение на Wayland протоколите и обработка на задачи свързани с изграждането на работния плот. Езикът Rust е избран, за да затрудни допускането на грешки при работа с паметта и да намали вероятността от проблеми, водещи до аварийно спиране на програмата.
Източник: opennet.ru
