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()