A stable version of the Weston 10.0 composite server has been released, that develops technologies that contribute to the full compatibility of the Wayland protocol in Enlightenment, Gnome, KDE and other user environments.
Wayland consists of a protocol (largely complete) and a reference implementation called Weston. For rendering, Weston can use OpenGL ES or software (the pixman library). Currently, clients are limited to OpenGL ES instead of full OpenGL because “libGL uses GLX and all X dependencies.” The project is also developing versions of GTK+ and Qt which render towards Wayland instead of X.
The development of Weston is focused on providing a high quality code base and working examples. to use Wayland in desktop environments and embedded solutions.
Main new features of Weston 10.0
In this new version of Weston 10.0 that is presented as the main novelty, it is highlighted that added components for color management, which allows you to convert colors, perform gamma corrections, and work with color profiles. It is mentioned that at the moment the changes are limited to the internal subsystems for now, the user visible color controls will appear in a future version.
Another novelty that stands out in Weston 10.0 is that in the linux-dmabuf-unstable-v1 protocol implementationwhich provides the ability to share multiple video cards using DMA-BUF technology, has been added with the “dma-buf feedback” mechanismwhich provides the composite server with additional information about available GPUs and improves the efficiency of data exchange between the primary and secondary GPUs.
For example, it is mentioned that “dma-buf feedback” support extends the applicability of output without intermediate buffering (zero-copy scanning).
On the other hand, we can also find that added support for libseat library, which provides functions to organize access to shared input and output devices without root privileges (access is coordinated by a separate background process). With the addition of this new library it is kept in mind that for future versions, it is planned to replace all components to run Weston with libseat.
In addition, it is also noted that all client application examples have been translated to use the xdg-shell protocol extension, which provides an interface for interacting with surfaces as with windows, allowing surfaces to be moved around the screen, minimized, expanded, resized, etc.
It is also noted thate added the ability to automatically run client software after startup, for example, to organize autorun programs after login.
Of the Other changes that stand out of this new version:
- Deprecated wl_shell interface, fbdev backend, and weston-launch utility (must use seated-launch or logind-launch to launch).
- Support for weston-launch is now deprecated and disabled by default (will be
be removed in a future version, but can be re-enabled with the Meson option.
- Dependency requirements have been increased, the build now requires libdrm 2.4.95, libwayland 1.18.0 and wayland-protocols 1.24. When creating a remote plugin based on PipeWire, libpipewire 0.3 is required.
- Extended test suite.
Finally, if you are interested in knowing more about it, you can consult the details in the following link.
How to install Weston 10.0 on Ubuntu and derivatives?
Well, for those who are interested in being able to install this new version of Weston, they must have Wayland installed on their system.To be able to install it, we only have to open a terminal and in it we are going to type the following:
pip3 install --user meson
done this, Now we are going to download the new version of Weston 7.0 with the following command:
We decompress the content with:
tar -xvf weston-10.0.0.tar.xz
We access the created folder with:
And we carry out the compilation and installation with:
meson build/ --prefix=... ninja -C build/ install cd ..
At the end, it is recommended to restart the computer to start with the changes in the new user session.