Niri 26.04 : le blur arrive enfin (et c'est complexe)
Pourquoi ça compte pour toi
Tu utilises Linux en mode graphique et tu trouves les fenêtres trop carrées ? Niri propose une approche révolutionnaire (vraiment) : les fenêtres scrollent horizontalement dans une bande infinie, sans jamais se redimensionner. Avec cette version, le flou arrive enfin—après 2 ans d'attente. C'est une belle leçon sur pourquoi les vrais détails techniques prennent du temps.
Ce qu'il faut retenir
- 1.Blur activé nativement via le protocole Wayland ext-background-effect (zéro config pour les apps compatibles)
- 2.Deux modes : xray blur (super rapide, affiche le fond) et normal blur (plus gourmand en ressources)
- 3.Contrôle par config niri pour les apps qui ne supportent pas le blur natif (Alacritty, fuzzel, etc.)
- 4.Optional includes ajoutés : tes configs peuvent inclure des fichiers optionnels sans crash si manquants
- 5.Le projet a passé 20k stars ; équipe renforcée avec issue triage dédié
## Le blur, c'est dingue techniquement
La feature a pris des mois parce que c'est loin d'être trivial. Deux approches radicalement différentes coexistent :
**Xray blur** (défaut) : Niri bake le fond flou une seule fois, puis le réutilise comme image statique. Hyper efficace, sauf si tu as un fond animé. C'est la magie : pas de recalcul à chaque frame.
**Normal blur** : relit les pixels qu'on vient de dessiner, les flute au milieu du rendu, puis continue. Ça a demandé de refactorer la render pipeline de Smithay (la lib Wayland sous-jacente). Chaque mode est un beast complètement différent en code.
## Comment ça marche pour toi
Si ton appli supporte `ext-background-effect` (GNOME Shell 47+, foot terminal, kitty, ghostty bientôt), activé blur depuis ses settings. C'est tout.
Sinon, ajoute dans `~/.config/niri/config.kdl` :
```kdl window-rule { match app-id="^Alacritty$" background-effect { blur true } } ```
Tu peux même utiliser xray sans blur : `xray true` seul donne un effet de transparence vers le fond.
## Optional includes : DRY pour ta config
Petit bonus : les includes peuvent être optionnels maintenant.
```kdl include optional=true "~/niri-local.kdl" ```
Si le fichier manque, Niri charge quand même. Parfait pour NixOS ou quand tu veux des overrides privées. Les paths `~/` se développent aussi enfin correctement.
## La vraie complexité : screencasts et pop-ups
Le blur joue aussi avec les screencasts (masquage de contenu sensible). Si une fenêtre est bloquée dans le rendu, facile. Mais si le truc bloqué est *dans le flou de l'arrière-plan* ? Niri gère ça pour éviter les fuites. Même logic pour les pop-up menus avec la nouvelle config `popups`.
C'est du polish hardcore, le genre qu'on voit rarement.
Essayer maintenant
Installer Niri 26.04 depuis GitHub →Source
Pour aller plus loin
Cet article t'a donné envie d'approfondir ? Deux formations Noésis t'attendent :
Tu aimes ce qu'on fait ?
Noésis vit grâce à des lecteurs comme toi. Dès 3 €, annulable 1 clic.
Explorer les thèmes de cet article :