Azote is a GTK+3 - based picture browser and background setter, as the
frontend to the swaybg (sway/Wayland) and feh (X windows) commands.
The user interface is being developed with multi-headed setups in mind.
Azote also includes several colour management tools.
The program is confirmed to work on sway, Wayfire, i3, Openbox, Fluxbox
and dwm window managers. Wayland support is limited to wlroots-based
compositors. GNOME is not supported.

Usage

Select the folder your wallpapers are stored in. If it contains a lot
of big pictures, it may take some time for Azote to create thumbnails. 
It's being performed once per folder, unless you clear the thumbnails
folder.

Most of the buttons seem to be self-explanatory, with a little help from
their tooltip text. What may not be clear at first is the Apply selected
picture to all screens button. It applies unchanged selected picture to
all displays, regardless of whether they are currently
connected/detected. It may be useful if you often connect and disconnect
displays. A shortcut to this feature is just to double click a
thumbnail. It'll always use the 'fill' mode, however.

Azote, as well as feh, saves a batch file to your home directory. It
needs to be executed in order to set the wallpaper on subsequent logins
or reboot.

sway

Edit your ~/.config/sway/config file.

Replace your current wallpaper settings, like:

output * bg /usr/share/backgrounds/sway/Sway_Wallpaper.png fill

with:

exec ~/.azotebg

Wayfire

In ~/.config/wayfire.ini set autostart_wf_shell = false,
and replace background = wf-background with background = ~/.azotebg.

Important: optional wlr-randr / wlr-randr-git and swaybg packages are
necessary.

X window managers (i3, Openbox, dwm etc.)

You need to execute ~/.fehbg from your window manager’s startup file.
You'll also need optional feh and xorg-xrandr packages.

Important: optional xorg-xrandr and feh packages are necessary.

dwm note:

If you start dwm from a script, it may look something like this:

# Statusbar loop
while true; do
   xsetroot -name "$( date +"%F %R" )"
   sleep 1m    # Update time every minute
done &

# Autostart section
~/.fehbg & 

exec dwm
