A wallpaper recommender engine that suggests a wallpaper based on the time of day
| src | ||
| .gitignore | ||
| Cargo.lock | ||
| Cargo.toml | ||
| flake.lock | ||
| flake.nix | ||
| index_wallpapers.sh | ||
| README.md | ||
| switch_wallpaper.sh | ||
Wallpaper Recommender
A small tool to suggest wallpapers based on the time of day and the luminosity of the wallpaper.
This is made to work using SWWW and Hyprland.
Install
You can add the project as a flake input:
{
inputs = {
wallpaper-recommender = {
url = "git+https://git.argmin.dk/joshnie/wallpaper_recommender";
inputs.nixpkgs.follows = "nixpkgs";
};
};
outputs =
{
self,
wallpaper-recommender,
...
}@inputs:
Configuration for home-manager:
{
inputs,
pkgs,
...
}:
{
home.packages = with pkgs; [
inputs.wallpaper-recommender.packages.${pkgs.system}.default
];
}
How to use
This package exposes two commands:
index-wallpapers: Indexes all wallpapers and computes their luminosities.switch-wallpapers: Selects a new random wallpaper and updates it using SWWW.
The following two env vars are used by this flake:
WALLPAPER_DB: This is a file path for the sqlite DB, defaults to~/.local/share/wallpapers.db.WALLPAPER_DIR: This is the folder to put wallpapers in, defaults to~/Wallpapers
Dependencies
All dependencies are handled automatically by Nix, but if you were to manually resolve them, the following are required:
- SQLite
- SWWW (and a Wayland compatible DE)
- ImageMagick
file