9 releases
0.3.1 | Mar 9, 2023 |
---|---|
0.3.0 | Nov 28, 2022 |
0.2.5 | Nov 27, 2022 |
0.1.0 | Nov 27, 2022 |
#21 in #wallpaper
390KB
113 lines
wallpapergen
A CLI tool for generating gradient wallpapers.
Installation
If you don't have Rust, follow the installation instructions here.
Run the following command to install wallpapergen:
cargo install wallpapergen
Usage
Run the following command to view help:
wallpapergen --help
If the command isn't found, you will need to add ~/.cargo/bin
to your path.
echo 'export PATH=$PATH:~/.cargo/bin' >> ~/.bashrc
source ~/.bashrc
If you're using zsh, replace ~/.bashrc
with ~/.zshrc
.
Examples
Here is the command used to generate the samples seen below:
wallpapergen -W 825 -H 350 \
-c '#f2cdcd' \
-c '#f5c2e7' \
-c '#cba6f7' \
-c '#f38ba8' \
-c '#eba0ac' \
-c '#fab387' \
-c '#f9e2af' \
-c '#a6e3a1' \
-c '#94e2d5' \
-c '#89dceb' \
-c '#74c7ec' \
-c '#89b4fa' \
-c '#b4befe'
(These colors are from catppuccin)
Issues
This project is very early and may be buggy. Please file an issue if you have a problem.
Troubleshooting
- Output paths passed in quotes may fail, prefer
-o ~/example.png
over-o '~/example.png'
when possible. - Wallpapers generated within 1ms of each other will overwrite if no output path is specified. This occurs because the default filename includes the time in milliseconds.
Window manager integration
This program will print the path of the output file before it exits, so you can
use xargs
to pipe it to your wallpaper program. Here's my personal script:
wallpapergen -o ~/.wallpaper.png \
-W 3440 \
-H 1440 \
-c '#f2cdcd' \
-c '#f5c2e7' \
-c '#cba6f7' \
-c '#f38ba8' \
-c '#eba0ac' \
-c '#fab387' \
-c '#f9e2af' \
-c '#a6e3a1' \
-c '#94e2d5' \
-c '#89dceb' \
-c '#74c7ec' \
-c '#89b4fa' \
-c '#b4befe' \
| xargs -I{} swww img {} \
--transition-type 'grow' \
--transition-speed '20' \
--transition-fps '100' \
--transition-pos 0.5,0.5
Unnecessary, but it removes the need to repeat the output file path without using a variable.
Samples
Dependencies
~10–19MB
~250K SLoC