The first release of the Niri composite server has been published. The project is inspired by the GNOME extension PaperWM and implements a tiling layout method, where windows are grouped into an endlessly scrollable ribbon on the screen. Opening a new window expands the ribbon, and previously added windows never change their size. The project code is written in Rust and distributed under the GPLv3 license. Packages are available for Fedora, NixOS, Arch Linux, and FreeBSD.

The reason for creating a separate composite manager is the inability to implement independent monitor work in PaperWM due to the features of GNOME Shell (binding to global window coordinates). The main difference between Niri and PaperWM is the binding of each monitor to its own ribbon of windows, which do not overlap. Niri supports HiDPI and can operate on systems with multiple GPUs (for example, hybrid systems with a discrete graphics card and integrated GPU).
Virtual desktops in Niri are created dynamically (as in GNOME) and arranged vertically (the window ribbon scrolls horizontally while the desktops ribbon is vertical). An independent set can be displayed on each monitor. virtual desktopsTo switch between desktops, control gestures on the touchpad can be used. When a monitor is disconnected, the layout of virtual desktops is saved and transferred to the remaining monitor, and when the monitor returns, it is restored to its original state.
There is a built-in interface for creating screenshots and recording screencasts (access is provided via xdg-desktop-portal-gnome). For launching X11 applications, the option to utilize the Xwayland DDX server is available. Configuration is done through a configuration file, allowing changes to basic environment parameters such as frame width, padding, output modes, and window sizes. Configuration changes are applied on the fly without restarting the composite server. server.



Source: opennet.ru
