Wayland 1.23 has already been released and these are its news

wayland

After more than a year of development, the release of the new version of Wayland 1.23, version in whichl improvements have been implemented in wayland-scanner, as well as support improvements, new APIs, bug fixes and more.

For those who are unfamiliar with Wayland, it is important to know that This protocol facilitates the interaction between a composite server and the applications that work with it. Clients manage the rendering of their windows in a separate buffer and communicate updates to the composite server. This server, in turn, combines the contents of the individual applications' buffers to generate the final result, taking into account aspects such as window overlap and transparency.

In other words, Wayland's composite server does not provide an API for rendering individual elements, but instead operates on already formed windows. This eliminates the need for double buffering when using high-level libraries such as GTK and Qt, which are responsible for managing window content.

Main news of Wayland 1.23

Branch 1.23 maintains backward compatibility at the API and ABI level with versions 1.x, and focuses mainly on bug fixes and minor updates to the protocol and in this new version that is presented, one of the new features that is presented is in libwayland, since an API is implemented that allows the client to determine the maximum size of the buffer of internal connection on the server side.

The maximum base buffer size is set via the interface wl_display, and the new API allows clients to adjust it based on the client connection. This change allows the use of larger buffers on specific Wayland clients, such as Xwayland, that have a higher intensity of input events.

Another of the changes that stands out in this new version are the changes in the requests, events, and enumerations, as they can now use the “deprecated-since” XML attribute to mark items as obsolete. In Wayland, requests are messages sent by a client to a server; events are messages transmitted from the server to the client; and enums are sets of numerical values ​​associated with a specific name handled by the protocol.

In addition to that, “enum-header” mode has been added to the utility wayland-scanner, designed to generate header files and code in C language based on XML files that describe the protocol, including only "enums" in the header files. Also, another change is that wayland-scanner now provides generation of verification functions (validator) for "enums" on the server side.

On the other hand, it has been added OpenBSD support, has been added ability to assign names to event queues to simplify debugging, functions have been added wl_client_get_user_data() y wl_client_set_user_data() to facilitate the association of arbitrary data with the client and the request has been added wl_shm.release to allow the client to inform the server to stop using a shared object, thus allowing the server to free the associated memory.

As for the part of the Wayland-related changes in applications, desktop environments and distributions, the following is highlighted:

  • XWayland 24.1.0 has been released with support for Explicit Sync technology and improved support for GLAMOR and EXA 2D acceleration architectures.
  • The project wprs develops a session manager for Wayland, similar to the display utility, but for graphical applications.
  • Launch of the desktop environment LXQt 2.0.0 with Wayland support in PCManFM-Qt file manager, notification system, desktop, Runner, dashboard, logout interface, LXQt settings interface and most applications.
  • Working on implementing Wayland support in Xfce.
  • Initial support for Wayland in the desktop environment Budgie.
  • Initial support for Wayland in the desktop environment Cinnamon.
  • Desktop migration MATE Wayland is almost complete.
  • KDE 6 offers a default session that uses the Wayland protocol. Implemented support for Wayland extensions for color management.
  • Wayland support in text editor GNU Emacs.
  • The Wayland-based session GNOME includes support for software KVM switch Input Leap, which allows you to use a single keyboard and mouse to control multiple computers.
  • The desktop edition Fedora KDE stopped supporting X11-based sessions in the base distribution.
  • Improved support for Wayland-based environments on proprietary controllers NVIDIA.
  • A driver has been implemented that allows using Wine in environments based on the Wayland protocol without using XWayland and X11 components.
  • The Linux versions of Firefox They are enabled by default to use the Wayland composite server instead of XWayland. It is possible to create assemblies that support work only in Wayland.

Finally, for those who are interested in being able to try this new version You can download the source code for your build from the following link.