Weston 10.0 arrives with color management improvements, new libraries and more

wayland screenshot

A stable version of Weston 10.0 Composite Server has been released, that develops technologies which 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 customers are limited to OpenGL ES rather than full OpenGL because "libGL uses GLX and all X dependencies." The project is also developing GTK + and Qt versions which render to 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 implementation, which provides the ability to share multiple video cards using DMA-BUF technology, has been added with the "dma-buf feedback" mechanism, which 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 to this, it is also highlighted 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 highlighted that se 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 being able to know 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 of you interested in being able to install this new version of Weston, they must have Wayland installed on their system.In order 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:

wget https://wayland.freedesktop.org/releases/weston-10.0.0.tar.xz

We unzip the content with:

tar -xvf weston-10.0.0.tar.xz

We access the folder created with:

cd weston-10.0.0

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.


Leave a Comment

Your email address will not be published. Required fields are marked with *

*

*

  1. Responsible for the data: Miguel Ángel Gatón
  2. Purpose of the data: Control SPAM, comment management.
  3. Legitimation: Your consent
  4. Communication of the data: The data will not be communicated to third parties except by legal obligation.
  5. Data storage: Database hosted by Occentus Networks (EU)
  6. Rights: At any time you can limit, recover and delete your information.