È stato pubblicato il rilascio del server composito Niri 25.08, che implementa un metodo di layout a mosaico (tiling) nello stile dell'estensione GNOME PaperWM, in cui le finestre sono raggruppate in una striscia che può essere scorsa all'infinito sullo schermo. L'apertura di una nuova finestra porta all'espansione della striscia, mentre le finestre precedentemente aggiunte non cambiano dimensione. Il progetto si basa sull'uso del protocollo Wayland, ma consente l'esecuzione di applicazioni X11 tramite il server DDX Xwayland. Il codice del progetto è scritto in Rust e distribuito sotto licenza GPLv3. I pacchetti sono formati per Fedora, NixOS, Arch Linux e FreeBSD.
La principale differenza tra Niri e PaperWM è la possibilità di associare una propria barra delle finestre a ciascun monitor, senza sovrapporsi alle barre sugli altri monitor (in PaperWM non è possibile gestire separatamente i monitor a causa del legame con le coordinate globali delle finestre in GNOME Shell). Niri supporta HiDPI e può funzionare su sistemi con più GPU (ad esempio, sistemi ibridi con scheda grafica discreta e GPU integrata). È presente un'interfaccia integrata per la creazione di schermate e registrazioni video, che offre la possibilità di escludere dalla registrazione finestre specifiche con informazioni riservate.
I desktop virtuali in Niri vengono creati dinamicamente e, analogamente a GNOME, sono disposti verticalmente (lo stack delle finestre ruota orizzontalmente, mentre lo stack dei desktop è verticale). Su ciascun monitor può essere visualizzato un insieme indipendente. scrivanie virtuali. Per passare tra i desktop e le finestre, è possibile utilizzare le gesture sul touchpad. Quando il monitor è spento, la disposizione dei desktop virtuali viene memorizzata e trasferita sul monitor rimanente, e quando il monitor viene riacceso, torna allo stato originale. La configurazione avviene tramite un file di configurazione che consente di modificare parametri come la larghezza delle cornici, i margini, i modi di uscita e le dimensioni delle finestre. Le modifiche apportate al file di configurazione vengono applicate automaticamente senza riavviare il server composito.

Nella nuova versione:
- Per eseguire applicazioni X11 utilizzando Xwayland, è stato integrato il componente xwayland-satellite, che consente di utilizzare finestre standard basate su Wayland per la sessione X11 senza la necessità di aggiungere funzionalità di gestione delle finestre specifiche per X11, come un sistema di coordinate globale. Con xwayland-satellite, è possibile eseguire senza problemi giochi, Steam, Proton, IDE JetBrains, Ghidra, applicazioni basate su Electron e la maggior parte degli altri client X11.
- È stata aggiunta la supporto per gli screen reader. Per il progetto Orca è stato realizzato un'interfaccia D-Bus org.freedesktop.a11y.KeyboardMonitor, che consente di intercettare le pressioni dei tasti. Attraverso AccessKit è possibile eseguire comandi vocali per passare tra i desktop, confermare l'uscita, creare screenshot e attivare scorciatoie da tastiera. È stata aggiunta una combinazione di tasti Super+Alt+S per attivare e disattivare Orca.
- È stato aggiunto un dialogo modale di conferma per la fine della sessione, attivando il quale viene applicato uno sfarfallio dello sfondo, e viene utilizzato un effetto animato per l'apertura e la chiusura.

- Nella creazione di screenshot, è stata ampliata l'interfaccia per selezionare l'area e la finestra di interesse per lo scatto, è stata inclusa la supporto per configurazioni multimonitor e il controllo tramite schermi touch. Sono stati risolti problemi di sfarfallio durante la registrazione di screencast su sistemi con schede grafiche NVIDIA.

- È stata implementata la possibilità di ottenere informazioni sulla disposizione della tastiera tramite systemd-localed, utilizzando l'interfaccia D-Bus org.freedesktop.locale1, che consente di utilizzare i parametri di layout selezionati durante l'installazione senza necessità di una configurazione separata del layout XKB.
- È stata aggiunta la supporto per il protocollo Wayland ext-workspace, che implementa eventi con informazioni sullo stato dei desktop virtuali, oltre a funzionalità per attivare e disattivare i desktop. Il supporto per ext-workspace ha reso possibile la compatibilità dell'indicatore dei desktop con altri server compositivi e l'utilizzo del modulo ext/workspaces in Waybar 0.14, così come in future versioni di sfwbar e xfce4-panel.
- È stata aggiunta la supporto per la seconda versione del protocollo Wayland cursor-shape, che fornisce un modo alternativo per configurare l'aspetto del cursore, basato sulla trasmissione di una serie di immagini del cursore invece di essere vincolato alla superficie (wl_surface).
- Sono state aggiunte funzionalità all'interfaccia IPC per gestire la posizione e le dimensioni delle finestre.
- È stato implementato un servizio D-Bus per bloccare l'attivazione automatica del salvaschermo durante la visione di video in programmi come VLC.
- È stato creato il logo del progetto e avviato un wiki con la documentazione.

Fonte: opennet.ru



