Release of the Sway 1.11 user environment

After 7 months of development, the release of the Sway 1.11 compositor has been published, built using the Wayland protocol and compatible with the i3 tiling window manager and the i3bar panel. The project code is written in C and is distributed under the MIT license. The project is aimed at use in Linux and FreeBSD.

Sway arranges windows on the screen logically rather than spatially. Windows are laid out in a grid that optimally utilizes screen space and allows for quick manipulation of windows using only the keyboard. Compatibility with i3 is ensured at the command level, configuration files, and IPC, making it possible to use Sway as a drop-in replacement for i3, utilizing Wayland instead of X11.

To set up a complete user environment, additional components are provided: swayidle (a background process implementing a sleep mode), swaylock (a screen locker), mako (a notification manager), grim (screenshot creation), slurp (screen area selection), wf-recorder (video capture), waybar (application panel), virtboard (on-screen keyboard), wl-clipboard (clipboard management), and wallutils (desktop wallpaper management).

Sway is developed as a modular project built on top of the wlroots library, which abstracts all the basic primitives for managing the compositor. Wlroots includes backends for abstracting access to screens, input devices, rendering without direct access to OpenGL, interaction with KMS/DRM, libinput, Wayland, and X11 (providing a layer for running X11 applications on Xwayland). In addition to Sway, the wlroots library is actively used in other projects. It supports C/C++ and provides bindings for Scheme, Common Lisp, Go, Haskell, OCaml, Zig, Python, and Rust.

In the new release:

  • Support for the Wayland protocol linux-drm-syncobj-v1 has been added for explicit buffer synchronization, ensuring that the rendering operation to the buffer is complete before the compositor displays that buffer.
  • Support for the Wayland protocol alpha-modifier-v1 has been added, allowing clients to change the surface transparency level and offload transparency operations to the compositor, serverwhich in turn can redirect these operations to a KMS module running at kernel level.
  • Added support for Wayland protocols ext-image-capture-source and ext-image-copy-capture for capturing content displayed on the screen.
  • Added support for the Wayland protocol ext-data-control, allowing privileged clients to manage data processing, for instance, to enable clipboard managers.
  • The inter-process communication (IPC) mechanism integrated metadata support for security contexts implemented via the Wayland protocol security-context-v1.
  • Improved output configuration logic for more efficient and quicker rollback to other devices.
  • Support for pointer control keys has been added.
  • The default configuration file now includes key combinations to invoke the utilities pactl, brightnessctl, and grim.
  • The default proposed menu has been translated to use the utility wmenu-run and is no longer dependent on the dmenu_path script.
  • New features of the wlroots 0.19 library have been engaged. Among the changes in wlroots:
    • Implemented Wayland protocols:
      • color-management-v1 (for HDR10 support);
      • ext-image-capture-source-v1 and ext-image-copy-capture-v1 (for screen content capture);
      • ext-data-control-v1 (for clipboard management);
      • xdg-toplevel-icon-v1 (for custom icon binding);
      • xdg-dialog-v1 (for creating advanced dialog windows);
      • xdg-system-bell-v1 (for triggering a bell sound);
      • ext-idle-notify-v1 (for activity tracking);
      • presentation-time (for adaptive refresh rate adjustments for displays);
      • wlr-layer-shell-v1.5 (for defining exclusive zone boundaries on the screen).
    • Backends and rendering engines have implemented explicit buffer synchronization support using DRM (Direct Rendering Manager) synchronization objects.
    • Added Multi-GPU support for display output devices like USB adapters GUD.
    • Direct scanout implementation in backends now supports buffer clipping and scaling.
    • Scene graph operations have been optimized.

Release of the Sway 1.11 user environment


Source: opennet.ru
Buy reliable website hosting with DDoS protection, VPS VDS servers 🔥 Buy reliable website hosting with DDoS protection, VPS VDS servers | ProHoster