waypaper/README.md

96 lines
4.1 KiB
Markdown
Raw Normal View History

2023-08-08 06:44:27 +03:00
# Waypaper
2023-09-01 11:39:06 +03:00
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](https://www.reddit.com/r/unixporn/comments/15lbhuc/hyprland_waypaper_gui_wallpaper_setter_for_wayland/).
2023-08-08 06:44:27 +03:00
2023-08-08 10:03:38 +03:00
![screenshot](screenshot.jpg)
2023-08-09 12:18:56 +03:00
## Features
2023-09-01 11:39:06 +03:00
- 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`)
2023-08-10 18:30:42 +03:00
- Restores wallpaper at launch of your WM
2023-08-20 17:45:49 +03:00
- Caching for fast loading
2023-08-09 12:18:56 +03:00
2023-08-08 06:44:27 +03:00
## Installation
2023-08-10 18:30:42 +03:00
You need to install at least one of the backends and Waypaper, which works as a frontend.
2023-08-10 15:40:29 +03:00
2023-08-10 18:30:42 +03:00
### 1. Install a backend
2023-08-10 15:40:29 +03:00
Install a preferred backend from your package manager: [swww](https://github.com/Horus645/swww) or [swaybg](https://github.com/swaywm/swaybg) on Wayland or [feh](https://github.com/derf/feh) on Xorg or [wallutils](https://github.com/xyproto/wallutils) on both.
2023-08-10 15:40:29 +03:00
2023-08-20 17:45:49 +03:00
### 2. Install Waypaper
2023-08-10 15:40:29 +03:00
2023-08-20 18:37:02 +03:00
Waypaper is available as a package in different repositories listed below:
2023-09-07 04:49:11 +03:00
#### On all distributions
2023-08-10 15:40:29 +03:00
`pipx install waypaper`
2023-08-09 12:18:56 +03:00
2023-08-10 15:22:13 +03:00
If `pipx` is not found, you first need to install `pipx` from your package manager, it's sometimes called `python-pipx`.
2023-09-07 04:49:11 +03:00
#### On Arch-based distributions
2023-08-10 15:22:13 +03:00
2023-08-10 15:40:29 +03:00
`yay -S waypaper-git`
2023-08-08 06:44:27 +03:00
2023-08-20 18:37:02 +03:00
The [waypaper-git](https://aur.archlinux.org/packages/waypaper-git) package is available in AUR, thanks to *metak*. Please upvote to support the project.
2023-09-07 04:49:11 +03:00
#### On NixOS
The `waypaper` package is available thanks to Basil Keeler.
2023-08-20 18:37:02 +03:00
2023-08-08 06:44:27 +03:00
### Dependencies
- `swww` or `swaybg` or `feh` or `wallutils`
2023-08-08 06:44:27 +03:00
- gobject python library (it might be called `python-gobject` or `python3-gi` or `python3-gobject` in your package manager.)
## Usage
2023-08-10 18:30:42 +03:00
`waypaper` command will run GUI application. Make sure to choose the backend that you installed.
2023-08-10 15:22:13 +03:00
2023-08-10 15:40:29 +03:00
To restore your wallpaper at launch, add `waypaper --restore` to your startup config. For example:
2023-08-08 06:44:27 +03:00
2023-08-10 15:40:29 +03:00
**In Hyprland**
2023-08-08 06:44:27 +03:00
`exec-once=waypaper --restore`
2023-08-10 15:40:29 +03:00
**In Sway or I3**
2023-08-10 15:22:13 +03:00
`exec waypaper --restore`
2023-08-10 18:30:42 +03:00
2023-08-29 09:32:21 +03:00
To see the list of hotkeys, press `?`.
2023-08-10 18:30:42 +03:00
### Options
`--restore` - sets the last chosen wallpaper. Useful at launch of the window manager.
2023-09-03 04:00:11 +03:00
`--random` - sets a random wallpaper. Makes sense only together with `--restore` key.
2023-08-28 06:24:15 +03:00
`--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.
2023-08-10 18:30:42 +03:00
2023-08-11 04:40:55 +03:00
`--fill XXX` - specifies filling type, which can be eiher `fill`, `stretch`, `fit`, `center`, or `tile`.
2023-08-10 15:22:13 +03:00
2023-08-08 06:44:27 +03:00
## Troubleshooting
2023-08-28 06:24:15 +03:00
- 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.
2023-08-08 06:44:27 +03:00
2023-08-08 10:03:38 +03:00
## Roadmap
2023-09-01 11:39:06 +03:00
- Additional options for ~subfolders~, ~color~, ~sorting~, ~randomizing~ and setting a uniform color.
- ~Support for other backends like swww, feh, wallutils~, and maybe hyprpaper.
2023-08-29 04:06:59 +03:00
- ~Better keyboard-driven experience and hjkl support.~
2023-09-07 04:49:11 +03:00
- ~Support for multiple monitors with swww~ and swaybg
- Display animated previews of gif wallpapers
- Translations
2023-08-08 10:03:38 +03:00
2023-08-08 06:44:27 +03:00
## Contributions
2023-09-07 04:49:11 +03:00
Feel free to propose PR and suggest the improvements. I'll also appreciate any help with packaging for various distributions. Also, if you wish to contribute with translation into your language, plese translate `translation_en.py` file, and I'll do the rest.
2023-08-10 15:40:29 +03:00
2023-08-08 06:44:27 +03:00
If you'd like to support the development, consider [donations](https://www.buymeacoffee.com/angryprofessor).