Skip to main content

GUI wallpaper setter for Wayland

Project description

Waypaper

GUI wallpaper setter for Wayland and Xorg window managers. It works as a frontend for popular wallpaper backends like swaybg, swww, wallutils and feh. You can check a demo on reddit.

screenshot

Features

  • Vim keys
  • Support for GIF animations (with swww)
  • Support for multiple monitors (with swww)
  • Works on both Wayland (with swww or swaybg or wallutils) and Xorg (with feh or wallutils)
  • Restores wallpaper at launch of your WM
  • Caching for fast loading

Installation

You need to install at least one of the backends and Waypaper, which works as a frontend.

1. Install a backend

Install a preferred backend from your package manager: swww or swaybg on Wayland or feh on Xorg or wallutils on both.

2. Install Waypaper

Waypaper is available as a package in different repositories listed below:

From PyPi

pipx install waypaper

If pipx is not found, you first need to install pipx from your package manager, it's sometimes called python-pipx.

From AUR

yay -S waypaper-git

The waypaper-git package is available in AUR, thanks to metak. Please upvote to support the project.

Dependencies

  • swww or swaybg or feh or wallutils
  • gobject python library (it might be called python-gobject or python3-gi or python3-gobject in your package manager.)

Usage

waypaper command will run GUI application. Make sure to choose the backend that you installed.

To restore your wallpaper at launch, add waypaper --restore to your startup config. For example:

In Hyprland

exec-once=waypaper --restore

In Sway or I3

exec waypaper --restore

To see the list of hotkeys, press ?.

Options

--restore - sets the last chosen wallpaper. Useful at launch of the window manager.

--random - sets a random wallpaper. Makes sense only together with --restore key.

--backend XXX - specifies which backend to use, which can be either swaybg, swww, feh, or wallutils. Useful if you use waypaper on both Wayland and Xorg on the same machine. By default, last used backend is used.

--fill XXX - specifies filling type, which can be eiher fill, stretch, fit, center, or tile.

Troubleshooting

  • If wallpaper does not change, first, try to launch waypaper in the terminal and see the output. Also, try to change it via command line using chosen backend to make sure that backend by itself works correctly.
  • If application does not run, make sure to install gobject library (it might be called python-gobject or python3-gi in your package manager). Although it is supposed to be installed automatically with the package.
  • Please understand that not all backends work on all systems. feh is only for Xorg, while swww and swaybg are only for Wayland.
  • If you use different WMs on the same system, specify the backend when you restore the wallpaper at launch. For example: waypaper --restore --backend feh or use wallutils which works on both Wayland and Xorg.

Roadmap

  • Improve loading of folders with many images.
  • Additional options for subfolders, color, sorting, randomizing and setting a uniform color.
  • Support for other backends like swww, feh, wallutils, and maybe hyprpaper.
  • Better keyboard-driven experience and hjkl support.
  • Support for multiple monitors with swww
  • Support for multiple monitors with swaybg
  • Support for some backend-specific features

Contributions

Feel free to propose PR and suggest the improvements. I'll also appreciate any help with packaging for various distributions.

If you'd like to support the development, consider donations.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

waypaper-1.9.tar.gz (25.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

waypaper-1.9-py3-none-any.whl (25.5 kB view details)

Uploaded Python 3

File details

Details for the file waypaper-1.9.tar.gz.

File metadata

  • Download URL: waypaper-1.9.tar.gz
  • Upload date:
  • Size: 25.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.3

File hashes

Hashes for waypaper-1.9.tar.gz
Algorithm Hash digest
SHA256 333600acc4d00fc7679b59a4aeb41217aed8fb55cf8ad734ba3b3c0b384b7b48
MD5 d476b989051d28389c3f350b8a97caca
BLAKE2b-256 3a1675f63ddb473e40d497d7462c792e65991f62fd8c5f2ee125db232613c485

See more details on using hashes here.

File details

Details for the file waypaper-1.9-py3-none-any.whl.

File metadata

  • Download URL: waypaper-1.9-py3-none-any.whl
  • Upload date:
  • Size: 25.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.3

File hashes

Hashes for waypaper-1.9-py3-none-any.whl
Algorithm Hash digest
SHA256 221e6cd1f63d3b8d419580abcd1f3e75cabda6b4529f88dad974383171223dfd
MD5 0fbf63d54000ad6191544f8274eb8fe4
BLAKE2b-256 6c8f0c62297b56a67dd1e407377febc0c83c353c8210e49758020a9eccd16b9a

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page