Download pictures-of-the-day and set them via hyprpaper, inspired by the KDE wallpaper module. The name is literally just a portmanteau of hyprland + POTD (short for picture of the day) because I'm uncreative ^^
This repository contains a Nix flake you can use to install hypotd with home manager. Simply add the repository as a flake input:
{
inputs = {
# ...
hypotd.url = "github:SuNNjek/hypotd";
};
# ...
}and add it to your home manager config:
{ inputs, ... }: {
imports = [
inputs.hypotd.homeManagerModules.default
];
programs.hypotd = {
enable = true;
config = {
provider = "pexels";
pexels = {
apiKey = "<API_KEY>";
};
};
};
# ...
}The Bing provider has no options, just set provider to "bing":
provider = "bing"For the Pexels provider you must provide an API key:
provider = "pexels"
[pexels]
apiKey = "<API_KEY>" # <-- Replace with your API keyFor the APOD provider you can provide an API key. If you don't, it will use the DEMO_KEY key
which is rate-limited (maximum of 30 requests per hour, 50 per day). If you plan to logout/login more
often than that, maybe request an API key ^^
provider = "apod"
[apod]
apiKey = "<API_KEY>" # <-- Replace with your API key (or don't specify any)For the E621/E926 provider you can supply your username and an API key. See https://e621.net/wiki_pages/2425#api for instructions on how to generate an API key.
Automatically adds type and randseed tags to restrict results
to images and keeping random posts "daily", i.e. re-running the program
when having "order:random" in the tags will return the same post for the current day.
provider = "e621"
[e621]
username = "<USERNAME>"
apiKey = "<API_KEY>"
sfw = true # <-- Whether or not to use the E926 (aka E621 but safe for work) API. Defaults to false if not given!
tags = [ "order:random", "buizel" ] # <-- Search tags to use. hypotd will use the first image result returned by the searchBy default, hypotd uses hyprpaper to set the wallpaper. If you want to use a custom command, you can configure it like this:
customCommand = "caelestia wallpaper -f {{.Path}}"This uses a Go template to construct the command. {{.Path}} is the path to the wallpaper.