A daemon which manages your desktop wallpapers. Sort of the 'mpd' of wallpapers.
Project description
Wallpaper Changing Daemon (wcd)
Wallpaper Changing Daemon reminds me of mpd, but it manages wallpapers instead of music.
Overview
- It comes with wcc too, which is a CLI client app, used to interact with the Daemon.
- It works on python 3.9 (and, probably, on 3.7 and 3.8 too, not sure about lower versions though).
- It only depends on
PyYAML
andcoloredlogs
, but you don't have to worry about installing them manually, pip's got you covered. - It copies it's default config file into
~/.config/wcd/
, or to wherever you point it to, via$WCD_CFG
. - I only code as a hobby, but I'd say I made a good job to make this very readable and, thus, feel very welcomed to check how things are implemented, to get a better understanding of what this program does, its capabilities, etc...
- You need to have a program which will do the wallpaper switching (such as
xwallpaper
,feh
ornitrogen
) installed on your machine.
Installation
- Install the package: either
pip install wcd
or clone this repo and runsetup.py
- Run the package once, to generate config files. If you wan't, you can point to where you want your config to be stored in by exporting an evironment variable named
WCD_CFG
, like this:export WCD_CFG="path/to/config" # be sure to add this line to your ~/.profile or ~/.bashrc or whatever shell you use
python -m wcd
- Load the config file (defaults to
~/.config/wcd/cfg.yml
) on your text editor and change thewallpaper_cmd
entry to whatever suits you best. - Kill the previous running instance if you haven't already and, then, restart the program.
- You're all set, enjoy.
Installing and Running as systemd Service
- Clone this repo:
git clone https://github.com/brunofauth/wcd.git
- cd into it:
cd wcd
- Copy the unit file to your systemd config folder:
cp wcd.service ~/.config/systemd/user/wcd.service
- To enable starting wcd on login, run:
systemctl enable --user wcd.service
- To immediatly start wcd, run:
systemctl start --user wcd.service
Communicating with the wcd
python -m wcd.wcc --help
sxhkd keybindings for wcc (append to your sxhkdrc)
shift + XF86Audio{Play,Next,Prev}
python -m wcd.wcc {toggle_cycle,next,prev}
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
wcd-0.0.0a4.tar.gz
(9.1 kB
view details)
Built Distribution
wcd-0.0.0a4-py3-none-any.whl
(9.7 kB
view details)
File details
Details for the file wcd-0.0.0a4.tar.gz
.
File metadata
- Download URL: wcd-0.0.0a4.tar.gz
- Upload date:
- Size: 9.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 95cc4c8473c2e4cb80b4b281542a3b31ce13a47d5a4011f933c6380447746fc9 |
|
MD5 | 51f2d33bca141c1d8a0759a17f66dff1 |
|
BLAKE2b-256 | c8c884be87f8570e8176c6a3a5ea02b5173f4731ca148c5c749417b470070157 |
File details
Details for the file wcd-0.0.0a4-py3-none-any.whl
.
File metadata
- Download URL: wcd-0.0.0a4-py3-none-any.whl
- Upload date:
- Size: 9.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | e9c2c521b2c640dc29e85d7ed4878570ade9d53ac07ab63d6688d87651366379 |
|
MD5 | fd38751aefda45ab9e89f1f51eec6696 |
|
BLAKE2b-256 | b08070a7cb4f09af3ef73f8bf3399355303e07f9f75c8a10234075fe7f0691c3 |