hyprwm / hyprpaper

Hyprpaper is a blazing fast wayland wallpaper utility with IPC controls.
https://wiki.hyprland.org/Hypr-Ecosystem/hyprpaper/
BSD 3-Clause "New" or "Revised" License
773 stars 54 forks source link

How can I set wallpaper to all monitors? #60

Closed mrunhap closed 1 year ago

mrunhap commented 1 year ago

It's like I have to write it manually in config file for every monitor?

And can I make it to use a random image in a folder like feh?

vaxerski commented 1 year ago

monitor is the monitor's name, easily can be retrieved with hyprctl monitors. You can leave it empty for a wildcard (aka fallback)

wallpaper = ,/path/to/jpeg.jpg

ref: readme

And can I make it to use a random image in a folder like feh?

#!/bin/zsh
randomwp=$(find /my/papers/dir/ | shuf -n 1)
echo -ne "preload=$randomwp\nwallpaper=,$randomwp" > ~/.config/hypr/hyprpaper.conf
hyprpaper & disown
Hubro commented 1 year ago
wallpaper = ,/path/to/jpeg.jpg

This works for the config, but it doesn't appear to work through the IPC. This does nothing:

$ hyprctl hyprpaper wallpaper ",my-wallpaper.png"

It would be nice if this worked too. I have automatic switching between light and dark themes, and I have multiple computers with different monitor layouts so I can't hard-code the monitor names.

I can fetch all monitor names and run the IPC in a loop, but that seems like a lot of work for something that feels like very basic functionality.