| external | ||
| images | ||
| src | ||
| .gitignore | ||
| .gitmodules | ||
| CMakeLists.txt | ||
| README.md | ||
Niri Wallpaper
Display wallpapers on Niri, this is a wrapper utility for swaybg, swaylock, swww and magick, they are
required to run this utility.
swaybg is used for the workspaces wallpapers and swaylock is used for locking the screen.
magick is used to blur the wallpaper and then displays it on the backdrop using swww.
Features
- Set the backdrop wallpaper with a blur effect
- Specify a directory containing all your wallpapers
- Specify for which display
- Set interval to automatically change wallpaper after some time
- Wallpapers can be chosen randomly
- Wallpapers can be chosen in alphabetical order
- No "grey" flash when switching wallpapers
Setup the backdrop wallpaper
- The
swww-daemonneeds to be running for the backdrop wallpaper to work. - You need to tell niri that
swww-daemonwill be used for the backdrop.
Here is a quick code snippet to put in your niri config file that will set it up correctly
spawn-at-startup "swww-daemon"
layer-rule {
match namespace="^swww-daemon$"
place-within-backdrop true
}
Usage
usage: niri-wallpaper [options] <path>
required:
path The path to the directory containing the wallpapers
options:
-h, --help Show help
-i, --interval Specify the interval between wallpapers in seconds
--lock Lock the screen using swaylock instead of applying a wallpaper
--never-random if set, wallpapers order is based on the names of the files
-o, --output The outputs as shown with the command `niri msg outputs`, by default the wallpaper will be applied to all outputs
--path-magick Set the path for executing magick
--path-swaybg Set the path for executing swaybg
--path-swaylock Set the path for executing swaylock
--path-swww Set the path for executing swww
Example in a terminal:
./niri-wallpaper /path/to/wallpapers -i 3600 -o DP-1
Example in the niri config file:
spawn-at-startup "/path/to/niri-wallpaper" "/path/to/wallpapers" "-i" "3600" "-o" "DP-1"
Installation
First, clone this repository git clone --recursive https://codeberg.org/vyn/niri-wallpaper.git (or download it the way you prefer).
You only need gcc and cmake, run these commands in the project directory:
mkdir build
cd build
cmake -DCMAKE_BUILD_TYPE=Release ..
make
The executable should be located in build/niri-wallpaper
