https://github.com/aragami3070/hyprpaper-picker
Blazingly-fast wallpaper changer for hyprland with hyprpicker
https://github.com/aragami3070/hyprpaper-picker
hyprland rust wallpaper-changer
Last synced: 9 days ago
JSON representation
Blazingly-fast wallpaper changer for hyprland with hyprpicker
- Host: GitHub
- URL: https://github.com/aragami3070/hyprpaper-picker
- Owner: aragami3070
- License: other
- Created: 2025-07-27T18:58:16.000Z (11 months ago)
- Default Branch: master
- Last Pushed: 2026-06-07T12:04:40.000Z (12 days ago)
- Last Synced: 2026-06-07T14:06:13.398Z (12 days ago)
- Topics: hyprland, rust, wallpaper-changer
- Language: Rust
- Homepage:
- Size: 63.5 KB
- Stars: 1
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: License
Awesome Lists containing this project
README
# Hyprpaper picker
Blazing fast wallpaper changer for Hyprland.
Table of Contents
* [Requirements](#Requirements)
* [Installation (only manual for now)](#Installation)
* [Usage](#Usage)
* [Arguments](#Arguments)
* [Flags](#Flags)
* [Contributing](#Contributing)
* [License](#License)
## Requirements
- [Rust with Cargo](https://www.rust-lang.org/tools/install)
- [Hyprland](https://github.com/hyprwm/Hyprland)
- [Hyprpaper](https://github.com/hyprwm/Hyprpaper)
## Installation
* Clone the repository
```bash
git clone https://github.com/aragami3070/hyprpaper-picker.git
cd hyprpaper-picker
```
* Build the project
```bash
cargo build --release
```
* Add the binary to your /bin directory (this important because from other directories hyprland can't find it)
```bash
ln --symbolic target/release/hyprpaper-picker /bin/hyprpaper-picker
```
## Usage
You can bind the command to a key in Hyprland.
For example, if you can bind the command to `Super+Shift+W` key, to change on random wallpaper from dir:
```bash
# In hyprland.conf
$mainMod = SUPER # Sets "Windows" key as main modifier
# Path to the directory with wallpapers
$wallpaperDir = $(dirname $(hyprctl hyprpaper listactive | head -n1 | awk -F'=' '{print $2}' | awk -F'.' '{print $1"."$2}'))
# Or you can hardcode it like this
# $wallpaperDir = /home/aragami3070/wallpapers
bind = $mainMod SHIFT, W, exec, hyprpaper-picker rand -d $wallpaperDir
```
### Arguments
- `rand` - choose random wallpaper from dir
- `next` - choose next wallpaper from dir
- `prev` - choose prev wallpaper from dir
### Flags
- `-d` - path to the directory with wallpapers
## Contributing
See [CONTRIBUTING.md](CONTRIBUTING.md).
## License
[License](License)