otter-wallpaper draws backgrounds on the Wayland background layer via zwlr_layer_shell_v1. Each image is decoded to an SHM buffer, then freed to keep memory use low.
Usage
Configuration
Config file:~/.config/otter-shell/otter-wallpaper.conf
| Key | Default | Description |
|---|---|---|
path | /usr/share/wallpapers/pika/ | File or directory |
rotation_interval | 300 | Seconds between rotations (0 = disabled) |
rotation_order | random | sequential or random |
scale_mode | cover | cover (fill+crop) or fit (letterbox) |
same_on_all_displays | true | Same image on all outputs |
overview_enabled | false | Blurred overview surface for Niri |
overview_blur_radius | 20 | Blur strength for overview |
display_0_name, display_0_path, through display_7_*.
Lockscreen integration
On wallpaper change,otter-wallpaper writes the current path per output to:
output_name=path line per output. otter-lock reads this file for the lock screen background.
Niri overview
Withoverview_enabled = true, a blurred layer surface is created with namespace otter-wallpaper-overview. Add to your Niri config:

