Usage

waypaper command will run GUI application. Make sure to choose the backend that you installed.

To restore your wallpaper at launch, add waypaper --restore to your startup config. For example:

In Hyprland

exec-once=waypaper --restore

In Sway or I3

exec waypaper --restore

To see the list of hotkeys, press ?.

CLI options

--restore - sets the last chosen wallpaper. Useful at launch of the window manager.

--random - sets a random wallpaper.

--folder path/to/folder - sets folder of wallpaper images.

--wallpaper path/to/image.jpg - sets the wallpaper without running the GUI.

--backend XXX - specifies which backend to use. Accepted values: swaybg, swww, awww, hyprpaper, mpvpaper, gslapper, feh, xwallpaper, wallutils, linux-wallpaperengine, macos. Useful if you use waypaper on both Wayland and Xorg on the same machine. By default, the last used backend is used.

--monitor NAME - specifies the target monitor by name. If omitted, the wallpaper is set on all monitors.

--fill XXX - specifies filling type, which can be either fill, stretch, fit, center, or tile.

--list - list current wallpapers, monitors and backend in standard output in json format.

--state-file path/to/file - sets alternative path to state file.

--config-file path/to/file - sets alternative path to configuration fiile.

--no-post-command - prevents running the post_command set in config.

Automatically changing wallpaper

Simple bash script

The most basic way to automatically change wallpaper at set intervals is to run a simple script:

You can start it with the start of your system, for example.

Cron job

For a more sophisticated solution, create these two files:

~/.config/systemd/user/waypaper.timer

~/.config/systemd/user/waypaper.service

Note, depending on how waypaper is installed, you may need to provide a full path to the executable in ExecStart.

To test, run $ systemctl --user start waypaper.timer To make persistent, run $ systemctl --user enable waypaper.timer

Last updated