wallswitch 0.10.0

randomly set wallpapers for n monitor Linux desktop (horizontally arranged).
Documentation
wallswitch-0.10.0 has been yanked.

wallswitch

#-----------#-----------# ... ... #-----------#
|           |           |         |           |
| Monitor 1 | Monitor 2 |         | Monitor n |
|           |           |         |           |
#-----------#-----------# ... ... #-----------#

randomly set wallpapers for n monitor Linux desktop (monitors arranged horizontally).

Definir papéis de parede aleatoriamente para desktop Linux com n monitores (monitores dispostos horizontalmente).

Run the command:

wallswitch

The default number of monitors is n = 2.

Help messages

To get help messages, run the command:

wallswitch -h

The output:

randomly set wallpapers for n monitor Linux desktop (horizontally arranged).

Usage: wallswitch [OPTIONS]

Options:
  -d, --display
          Display found images
  -i, --interval <INTERVAL>
          Set the interval (in seconds) between each wallpaper displayed
  -n, --monitor_number <MONITOR_NUMBER>
          Set the number of monitors [default: 2]
  -p, --pid
          Show pid numbers of previous running program
  -r, --read_config
          Read the configuration file and exit the program
  -s, --sort
          Sort the images found
  -h, --help
          Print help
  -V, --version
          Print version

Configuration

Edit the configuration file: "/home/user_name/.config/wallswitch/wallswitch.json"

The contents of the configuration file can be displayed with the command:

cat ~/.config/wallswitch/wallswitch.json | jq

{
  "interval": 1800,
  "min_dimension": 800,
  "wallpaper": "/home/user_name/wallswitch.jpg",
  "desktop": "gnome-xorg",
  "dirs": [
    "/home/user_name/Figures",
    "/home/user_name/Images",
    "/home/user_name/Wallpapers",
    "/home/user_name/Pictures",
    "/home/user_name/Imagens",
    "/usr/share/wallpapers",
    "/usr/share/backgrounds",
    "/usr/share/antergos/wallpapers",
    "/tmp/teste"
  ]
}

The default configuration file.

Add or remove directory paths that contain image files.

The interval between wallpapers is given in seconds.

Desktops

Make changes to the source code.

git clone https://github.com/claudiofsr/wallswitch.git

cd wallswitch

Edit the file: 'src/desktops.rs'.

To build and install from source, run the following command:

cargo b -r && cargo install --path=.

Options:

gnome

See the function:

fn set_gnome_wallpaper()

xfce

See the function:

fn set_xfce_wallpaper()

Monitor 1: "/backdrop/screen0/monitorDP-0/workspace0/last-image"

Monitor 2: "/backdrop/screen0/monitorDP-2/workspace0/last-image"

Monitor N: ???

openbox

See the function:

fn set_openbox_wallpaper()

Dependencies

imagemagick (image viewing/manipulation program).

feh (fast and light imlib2-based image viewer).