Tras tres meses de desenvolvemento, lanzouse Niri 25.11, un servidor de composición. Implementa un método de deseño en mosaico similar á extensión PaperWM de GNOME, agrupando as xanelas nunha cinta de desprazamento infinito. Ao abrir unha nova xanela, a cinta expándese, mentres que as xanelas engadidas anteriormente permanecen sen cambios. O proxecto baséase no protocolo Wayland, pero permite executar aplicacións X11 usando o servidor DDX de Xwayland. O código do proxecto está escrito en Rust e ten licenza GPLv3. Hai paquetes dispoñibles para Fedora, NixOS e Arch. Linux e FreeBSD.
A diferenza fundamental entre Niri e PaperWM é que cada monitor ten a súa propia liña de tempo de xanela, que non se solapa coas liñas de tempo doutros monitores (en PaperWM, o traballo por separado con monitores é imposible debido ás coordenadas globais da xanela en GNOME Shell). Niri admite HiDPI e pode executarse en sistemas con varias GPU (por exemplo, sistemas híbridos cunha tarxeta gráfica discreta e unha GPU integrada). Ten unha interface integrada para crear capturas de pantalla e gravar screencasts, que inclúe a capacidade de excluír xanelas individuais da gravación. información confidencial.
Os escritorios virtuais en Niri créanse dinamicamente e, de xeito similar a GNOME, están dispostos verticalmente (a cinta da xanela xira horizontalmente, mentres que a cinta do escritorio xira verticalmente). Cada monitor pode mostrar un conxunto independente de escritorios virtuaisPodes usar xestos do panel táctil para cambiar entre escritorios e xanelas. Cando desconectas un monitor, o deseño do escritorio virtual lémbrase e transfírese ao monitor restante e, cando devolves o monitor, restablécese ao seu estado orixinal. A configuración realízase mediante un ficheiro de configuración, o que che permite cambiar parámetros como o ancho do bordo, as marxes, os modos de visualización e os tamaños das xanelas. Os cambios realizados no ficheiro de configuración aplícanse automaticamente sen reiniciar o servidor composto.

Na nova versión:
- Engadiuse unha interface para cambiar entre xanelas usando Alt+Tab, con vistas previas en miniatura que se mostran mentres se despraza. As xanelas pódense mostrar en relación co escritorio virtual actual (premendo "w") ou co dispositivo de saída (premendo "o"). O atallo de teclado Alt+"`" tamén está dispoñible para cambiar entre xanelas dentro da aplicación actual.

- Engadíronse efectos de animación para as transicións de xanelas ao modo de pantalla completa e as saídas deste.
- Implementouse compatibilidade total coa expansión das xanelas a pantalla completa (antes, era posible expandir a ancho completo conservando as marxes e os bordos, pero agora si que se pode expandir para cubrir toda a área dispoñible sen mostrar os bordos). A expansión realízase facendo clic no botón correspondente na parte superior da xanela ou facendo dobre clic na barra de título.

- Engadiuse a capacidade de xerar eventos de desprazamento de contido ao arrastrar o título da xanela horizontalmente nun deseño en mosaico (arrastrar verticalmente move a xanela e arrastrar horizontalmente despraza a información na xanela).
- Agora está dispoñible a capacidade de definir configuracións de deseño de xanela individuais vinculadas a un dispositivo de saída (monitor) ou escritorio virtual específico.
- Os ficheiros de configuración implementan a directiva "include" para substituír o contido doutros ficheiros.
- Engadiuse compatibilidade con monitores externos conectados a través do porto DisplayLink.
- Fixéronse cambios para reducir o parpadeo da pantalla.
- Engadiuse compatibilidade coa configuración de modos de vídeo personalizados para dispositivos de saída que non estean limitados polos modos pasados a través de EDID. Por exemplo, 'mode custom=true "1920×1080@100″'.
- Engadiuse compatibilidade para executar unha sesión niri en xanela en WSL (Windows Subsistema para Linux).
Fonte: opennet.ru


