Skip to main content

Pyrrot

This is a collection of scripts I use to manage my wallpapers. This is made for my usage in mind, and hasn't been tested much by others, but it might interest you. If you've got any suggestion or issue, please let me know.

I personnally use Archlinux, and more importantly i3wm and Sway. These scripts may not work on other window managers.

What does it do ?

The wallpaper.py script sets you wallpaper from a json file listing all your wallpapers with a few attributes. Wallpapers may be any file supported by feh (jpeg and non-animated png and gif) on X11, and Swaymsg on Sway (Wayland). Animated gif or vidéo support for live-wallpapers will be supported later using xwinwrap for X11. (I should also make a script to aut-generate such a json file if you just want to use a list of images without selection by tags or colors for instance.)

mpd-wallpaper will allow you to set your wallpaper with the cover of the current music you're listening to with your mpd server. It requires wallpaper.py.

Usage

  1. Edit wallpaper.conf according to your needs.
  2. Setup a cron job to run wallpaper.py to change the wallpaper regularly. Mine is */5 * * * * DISPLAY=:0 /home/user/scripts/wallpaper/wallpaper.py for X11, and SWAYSOCK=/run/user/$(id -u)/sway-ipc.$(id -u).$(pgrep -x sway).sock /home/inazu ma/scripts/pyrrot/pyrrot-wrapper.sh for Wayland.
  3. Setup a systemd task for the mpd part (optional). See the mpd-wallpaper.service.example. Of course if you prefer not to run the scripts with cron or systemd, you're free to use them as you want.

Prerequisites

Python 3.7 for the mpd script, Python 3.5 for the wallpaper.py, pywal and either feh and i3wm or Sway. Linux (it might work on some BSD or macOS but it may need some tweaks, and it hasn't been tested at all)

Development

This software uses pytest to run automated test, checking that it functions well. Below is a list of commands useful for checking everything is allright.

pip install -e .
coverage run -m pytest --junitxml=report.xml
coverage report
pylint src/

Metadata

Release files for pyrrot-wallpaper 1.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for pyrrot-wallpaper 1.1.0
File Size Uploaded Provenance Actions
pyrrot_wallpaper-1.1.0.tar.gz 46.9 kB Without provenance Details for pyrrot_wallpaper-1.1.0.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for pyrrot-wallpaper 1.1.0
File Interpreter ABI Platform Actions
pyrrot_wallpaper-1.1.0-py3-none-any.whl Python 3 none any Details for pyrrot_wallpaper-1.1.0-py3-none-any.whl

Total release size: 80.0 kB

Release files / pyrrot_wallpaper-1.1.0.tar.gz

Download URL pyrrot_wallpaper-1.1.0.tar.gz
Size 46.9 kB
Tags Source
SHA-256 checksum
How to use checksums
9ba50189cb1e2e37182178813baba189c41418675ec7afd7aa82adab8eb2309f
BLAKE2b-256 checksum
How to use checksums
1db14259c8c20dd97acf88185aa0b67fc915ad17c884f0f8ee0108b6fefed53f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.3

Release files / pyrrot_wallpaper-1.1.0-py3-none-any.whl

Download URL pyrrot_wallpaper-1.1.0-py3-none-any.whl
Size 33.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
6dca5379044e4b41c2a83b079c515217e0627f1c4379694e6dea2e642f5acf44
BLAKE2b-256 checksum
How to use checksums
a987400a19446822d153b3c5bd242ba9c8706ef988c24ef9b36359ef5e1d632f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.3

Security for pyrrot-wallpaper 1.1.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page