Niri 26.04 has just been released as the latest version of the scrollable-tiling Wayland compositor. The headline feature is background blur, and according to the devs, this was the project’s most-requested feature. Several applications and shell components already support it or are adding support, including Dank Material Shell, Noctalia shell, Vicinae launcher, Foot, Kitty, Ghostty, Quickshell, and winit.
In addition, Niri allows manual blur configuration for applications that do not yet support the protocol. Users can apply blur through window-rule and layer-rule blocks in the Niri configuration. However, manually configured blur requires proper geometry and corner-radius settings and does not work well with complex surface shapes. Plus, Niri 26.04 extends background effects to pop-up menus through a new popups block in the window and layer rules.

Configuration handling has improved as well with optional includes. Users can mark an included configuration file as optional by setting optional=true, allowing Niri to load even if the file is missing. Missing optional files still generate warnings, and if the file later appears, Niri reloads the configuration automatically.
Another usability change is pointer warping during scrolling gestures. When scrolling horizontally through the Niri view, the pointer can move from one side of the screen to the other, similar to Blender’s behavior. This makes mouse-only navigation through multiple windows easier, especially when the pointer starts near a monitor edge.
On top of that, Niri can now screencast through xdg-desktop-portal-gnome via PipeWire, the recommended approach, or through wlr-screencopy for tools like wf-recorder. Niri also adds a screenshot-window show-pointer=true action flag to capture the pointer in window screenshots.
The release also introduces screencast IPC. The new niri msg casts command shows currently active screencasts, while desktop components can listen for new cast events through Niri’s event stream. In addition, a new niri msg action stop-cast --session-id <ID> command can force-stop PipeWire screencasts.
On the bug fixes front, several animation problems have been fixed, including synchronization issues when unfullscreening or unmaximizing windows and a case where dragging a maximized window into floating mode skipped the horizontal view movement animation. Niri also fixes awkward behavior when dragging out the leftmost column on a workspace and stops animation slowdown or speedup settings from affecting how long config error notifications stay visible.
It’s also worth noting that Niri 26.04 includes a rendering architecture refactor that replaces pull-based iterator rendering with a push-based approach. According to the project, this removed temporary allocations and sped up render list construction by 2–3× on the developer’s main machines and up to 8× on an old ASUS Eee PC.
Other changes include a fix for a VRAM leak seen on some systems after closing certain applications, support for the ext-foreign-toplevel-list protocol, clearer duplicate keybind errors, DMA-BUF support for nested Niri, improved OpenBSD builds, better automatic GPU selection on devices such as ARM Macs, fixes for stale outputs after USB-C dock disconnects during suspend, and several crash and memory leak fixes in Smithay.
For more details, see the changelog.
