#wallpaper

no-std bin+lib rust-paper

Rust Wallpaper manager from ( https://wallhaven.cc/ ) for Linux/UNIX only

3 releases

new 0.1.2 Oct 21, 2024
0.1.1 Oct 19, 2024
0.1.0 Oct 13, 2024

#646 in Parser implementations

Download history 169/week @ 2024-10-10 299/week @ 2024-10-17

468 downloads per month

MIT license

23KB
435 lines

Rust Paper

A Rust-based wallpaper manager for Linux/UNIX systems that fetches wallpapers from Wallhaven.

Installation

To get started with rust-paper, first install it:

cargo install rust-paper

Configuration

Run rust-paper once to initiaze config directory and files.

Configuration files are stored in different locations depending on your operating system:

  • Linux: ~/.config/rust-paper/config.toml
  • macOS: ~/Library/Application Support/rs.rust-paper/config.toml

Example config.toml

save_location = "/Users/abhaythakur/Pictures/wall"
integrity = true
  • save_location: The directory where wallpapers will be saved.
  • integrity: If set to true, SHA256 checksums will be used for integrity verification.

Additional Files

  • wallpaper.lock: This file is used for integrity checks when integrity is set to true.
  • wallpapers.lst: This file stores the IDs of the wallpapers from Wallhaven. An example of its content is shown below:
p9pzk9
x6m3gl
gpl8d3
5gqmg7
qzp8dr
yx3kok
85pgqk
3lgk6y
kx6yqm
o5ww39
o5m9xm
l8rloq
l8o2op
7pmgv9

Usage

Once configured, you can run the application to download and manage wallpapers seamlessly.

Command Line Interface

rust-paper <COMMAND>

Commands:

  • sync Sync wallpapers Example -
rust-paper sync
  • add Add new wallpapers Example -
rust-paper add 7pmgv9,l8o2op

Or

rust-paper add 7pmgv9 l8o2op

Or

rust-paper add https://wallhaven.cc/w/7pmgv9, https://wallhaven.cc/w/l8o2op
  • help Print this message or the help of the given subcommand(s) Example -
rust-paper help

Options:

  • -h, --help Print help

Contributing

Contributions are welcome! Feel free to submit issues or pull requests.

License

This project is licensed under the MIT License. See the LICENSE file for more details.


Dependencies

~10–25MB
~325K SLoC