Skip to content

hyprpaper

hyprpaper is a fast, IPC-controlled wallpaper utility for Hyprland.

Installation

Arch
pacman -S hyprpaper
openSUSE
zypper install hyprpaper
Fedora
sudo dnf install hyprpaper

Configuration

The config file is located at ~/.config/hypr/hyprpaper.conf. It is not required.

Setting wallpapers

Wallpapers are set as anonymous special categories. Monitor can be left empty for a fallback.

variabledescriptionvalue
monitorMonitor to display this wallpaper on. If empty, will use this wallpaper as a fallbackmonitor ID
pathPath to an image file or a directory containing image filespath
fit_modeDetermines how to display the image. Optional and defaults to covercontain|cover|tile|fill
timeoutTimeout between each wallpaper change (in seconds, if path is a directory). Optional and defaults to 30 secondsint
orderDetermines the order to display images when a directory is passed to the path option. Optional, currently only supported value is randomrandom
recursiveWhether to scan subdirectories recursively when path is a directory. Optional and defaults to falsebool
wallpaper {
    monitor = DP-3
    path = ~/myFile.jxl
    fit_mode = cover
}

wallpaper {
    monitor = DP-2
    path = ~/myFile2.jxl
    fit_mode = cover
}

wallpaper {
    monitor = 
    path = ~/fallback.jxl
    fit_mode = cover
}

# ...

Run at Startup

To run hyprpaper at startup edit hyprland.conf and add: exec-once = hyprpaper.
If you start Hyprland with uwsm, you can also use the systemctl --user enable --now hyprpaper.service command.

Misc Options

These should be set outside of the wallpaper{...} sections.

variabledescriptiontypedefault
splashenable rendering of the hyprland splash over the wallpaperbooltrue
splash_offsethow far up should the splash be displayedfloat20
splash_opacityhow opaque the splash isfloat0.8
ipcwhether to enable IPCbooltrue

Sourcing

Use the source keyword to source another file. Globbing, tilde expansion and relative paths are supported.

source = ~/.config/hypr/hyprpaper.d/*.conf

Please note it’s LINEAR. Meaning lines above the source = will be parsed first, then lines inside ~/.config/hypr/hyprpaper.d/*.conf files, then lines below.

IPC

hyprpaper supports IPC via hyprctl. You can set wallpapers like so:

hyprctl hyprpaper wallpaper '[mon], [path], [fit_mode]'

fit_mode is optional, and mon can be empty for a fallback, just like in the config file. The fallback wallpaper only applies to monitors that have never had a specific monitor target assigned.

Last updated on