Release of the alternative X server yserver 1.5

The release of the X11 server yserver 1.5.0 has taken place, developed from scratch in Rust and supporting the latest extensions of the X11 protocol. The project does not aim to replicate all the capabilities of Xorg Server and is limited to the functionalities necessary for running modern desktop environments, window managers, applications, and graphics libraries (GTK, Qt, SDL, GLFW). Environments that have been tested include MATE, Xfce, Cinnamon, Sonic, and Enlightenment, as well as window managers like icewm, FVWM3, openbox, i3, and wmaker. The project code is distributed under the MIT license.

In yserver, it has been decided not to support obsolete and specific features, such as handling multiple X11 screens in one server (multi-monitor output is supported), color modes other than TrueColor, indirect rendering (indirect GLX), DDX driver API, old font handling methods, and connecting clients with a different byte order (translation between big-endian and little-endian).

Graphical output is organized through DRM/KMS and Mesa Vulkan drivers. For session management and organizing access to shared input and output devices, the libseat library is used. In addition to the standalone X server, ynest is provided — a backend for nested running, supporting operation from Xwayland or another X11.server.

Operation has been tested on systems with AMD Ryzen 9 6900HX (Rembrandt, RDNA2, RADV Mesa driver), AMD RX580 (Polaris/GCN4, RADV), Intel i5-7200U (Kaby Lake, ANV Mesa driver), NVIDIA GTX 1050, Snapdragon X1 X1E80100 (Adreno X1, Turnip), Apple M1 MBA, M2 MBP, as well as in virtualization systems with virtio-gpu and the virtual GPU Venus. Support is provided for operating in Linux and FreeBSD.

In the new version:

  • Support for the reverse-PRIME mechanism has been added, allowing the use of the integrated GPU for rendering and the discrete graphics card for screen output when external monitors are connected to the discrete graphics card ports.
  • Support has been added for passing screen refresh rate data to Mesa via the GLX_OML_sync_control extension.
  • An optimization has been implemented to reduce latency for clients with vertical sync turned off (vsync-off).
  • Extraction of GLX manufacturer names from the video driver has been ensured for selecting the appropriate GLX client library (for example, Mesa or NVIDIA).
  • Support for DRI3 1.4 synchronization objects has been implemented using drm_syncobj primitives from the DRM (Direct Rendering Manager) kernel subsystem.
  • Support for change tracking algorithms has been added to redraw only the modified parts of the content instead of the entire screen, applicable in composite environments. servers Wayland based on the wlroots library.
  • The ability to draw window borders on the X11 server side has been provided.
  • Package builds for the Aarch64 architecture have been implemented, in addition to x86_64.

Source: opennet.ru

Buy reliable website hosting with DDoS protection, VPS VDS servers 🔥 Buy reliable website hosting with DDoS protection, VPS VDS servers | ProHoster