Xfce's desktop environment development team has announced the start of development for a new composite server, Xfwl4, which uses the Wayland protocol. In Xfwl4, it was decided not to use the codebase of the currently used window manager xfwm4 and to develop the project from scratch in Rust, utilizing the Smithay library. The project is in its initial development stage, and the first test release is expected in mid-2026. The Xfwl4 code is distributed under the GPLv3 license.
Xfwl4 aims to implement all functionalities available in xfwm4, including the ability to use existing xfconf settings and the configuration interface, but with consideration for the specifics of using Wayland instead of X11. Noteworthy advanced features include a significant overhaul of session start logic, implementation of the Wayland protocol xdg-session-management, and support for launching X11 applications using XWayland.
The reason for creating a new composite server is attributed to the unsuccessful attempt to simultaneously support X11 and Wayland in the existing codebase of the xfwm4 window manager, which was originally designed with close integration of the X11 protocol, making it challenging to separate the common window management logic from the specifics of X11.
The gradual addition of Wayland support in xfwm4 has been deemed impractical due to the likelihood of decreased stability and the emergence of new bugs during the refactoring process. It was simpler to keep xfwm4 tied to X11 while simultaneously developing a new composite server for Wayland. Other reasons mentioned include the inability to adapt certain X11 window management concepts for Wayland and the necessity of using the C language and the wlroots library if the development of xfwm4 were to continue, despite the existence of better alternatives.
Xfwl4 er blevet besluttet at udvikle ovenpå Smithay-biblioteket, som giver implementering af næsten alle officielle udvidelser af Wayland-protokollen samt protokoller fra wlroots og KDE. Smithay anvendes i projekter som Cosmic og Niri. På samme måde som wlroots tilbyder Smithay højniveau-abstraktioner, men det tillader samtidig indgreb i lavniveau-systemer og tilpasning af grafikudgangsmetoder, håndtering af input-enheder, adfærd af Wayland-protokoller og behandling af opgaver relateret til arbejdsbordopbygning. Rust-sproget er valgt, da det mindsker risikoen for fejl ved hukommelsesarbejde og reducerer sandsynligheden for problemer, der kan føre til nedbrud.
Kilde: opennet.ru
