After eight months of development, a stable release of the composite server Weston 12.0 has been published, advancing technologies that contribute to full support for the Wayland protocol in Enlightenment, GNOME, KDE, and other user environments. The development of Weston aims to provide a high-quality codebase and working examples for using Wayland in desktop environments and embedded solutions, such as platforms for automotive infotainment systems, smartphones, televisions, and other consumer devices. The project's code is distributed under the MIT license.
The change in the significant version number of Weston is due to ABI changes that break compatibility. Changes in the new branch of Weston:
- A backend for remote desktop access has been added — backed-vnc, which performs functions similar to backend-rpd. The VNC protocol is implemented using aml and neatvnc. User authentication and channel encryption (TLS) are supported.
- A backend for multimedia operations has been added. proxy server PipeWire.
- Changes in the DRM (Direct Rendering Manager) backend:
- Support for multi-GPU configurations has been implemented. To utilize additional GPUs, the option ‘—additional-devices device_list’ has been proposed.
- Support for the tearing-control protocol has been added to disable vertical synchronization (VSync) with a frame-shedding pulse, applied to prevent tearing artifacts during output. In gaming applications, disabling VSync can reduce display latency at the cost of introducing artifacts from tearing.
- Support for content type detection for HDMI (graphics, photos, movies, and games) has been added.
- A property for plane rotation has been added and utilized where possible.
- Support for delayed connectors (writeback connector) has been added, used for creating screenshots.
- A property for determining the transparency level of a plane has been added.
- An external library, libdisplay-info, has been employed for parsing EDID metadata.
- In backend-wayland, resizing operations are implemented using the xdg-shell extension.
- In the remote access backend backend-rdp, preliminary support for multi-monitor systems (multi-head) has been added.
- In the backend headless-backend, designed for operation on systems without a display, support for output decoration has been added, which is applied for testing the color-lcms plugin.
- The launcher-logind component has been deprecated and is disabled by default; instead, it is recommended to use launcher-libseat, which also supports logind.
- In libweston/desktop (libweston-desktop), support for the waiting state has been implemented, used in the stage prior to attaching the output buffer to the client, which can, for example, be used to launch the client initially in full-screen mode.
- The weston-output-capture protocol has been implemented, designed for taking screenshots and serving as a more functional replacement for the old weston-screenshooter protocol.
- Support for the xwayland_shell_v1 protocol has been added, which allows for the creation of an xwayland_surface_v1 object for a specific wl_surface.
- Support for user authentication through PAM has been implemented in the libweston library, and support for version 4 of the wl_output API has been added.
- A simplified mode for selecting the backend, shell, and renderer has been added to the compositor process, allowing the use of syntax "—backend=headless", "—shell=foo", and "—renderer=gl|pixman" instead of "—backend=headless-backend.so", "—shell=foo-shell.so", and "—renderer=gl-renderer.so".
- The simple-egl client now supports the fractional-scale protocol, allowing for the use of non-integer scale values, and a vertical rendering mode for the panel has been implemented.
- In the shell for automotive infotainment systems, the ivi-shell, keyboard input focus activation for the xdg-shell surface has been realized, modeled after the input activation in the desktop-shell and kiosk-shell.
- The shared libweston-desktop library has been integrated into the libweston library; linking applications to libweston will provide access to all the features previously offered in libweston-desktop.
Source: opennet.ru
