nix/option/Wallpaper.nix

44 lines
1.5 KiB
Nix
Raw Normal View History

2024-11-16 04:43:59 +03:00
# Download the wallpaper here.
{ pkgs, lib, ... }:
let
2024-12-29 11:47:42 +03:00
url = "https://i.imgur.com/KkZFMD3.png";
sha256 = "sha256-cTNUeamZTjQDx8gGZkU1mj4kKS3FEE0+EDzFb5bsyZE=";
forceContrastText = false;
2024-12-30 05:14:17 +03:00
# SEE: https://github.com/tinted-theming/schemes
# Blue: "${pkgs.base16-schemes}/share/themes/moonlight.yaml"
# Brown: "${pkgs.base16-schemes}/share/themes/sandcastle.yaml"
# Classy: "${pkgs.base16-schemes}/share/themes/monokai.yaml"
# Cold: "${pkgs.base16-schemes}/share/themes/nord.yaml"
# Cool: "${pkgs.base16-schemes}/share/themes/tokyo-night-dark.yaml"
# Gray: "${pkgs.base16-schemes}/share/themes/nova.yaml"
# Material: "${pkgs.base16-schemes}/share/themes/material.yaml"
# Purple: "${pkgs.base16-schemes}/share/themes/shades-of-purple.yaml"
# Retro: "${pkgs.base16-schemes}/share/themes/mocha.yaml"
# Warm: "${pkgs.base16-schemes}/share/themes/gruvbox-dark-hard.yaml"
# scheme = "${pkgs.base16-schemes}/share/themes/moonlight.yaml";
scheme = null;
in
2024-11-04 04:37:29 +03:00
{
options.module.wallpaper = {
forceContrastText = lib.mkOption {
default = lib.warnIf forceContrastText "Wallpaper: Forced text contrast." forceContrastText;
type = lib.types.bool;
};
path = lib.mkOption {
default = pkgs.fetchurl { inherit url sha256; };
type = lib.types.path;
};
2024-12-30 05:14:17 +03:00
scheme = lib.mkOption {
default = scheme;
type =
with lib.types;
nullOr (oneOf [
path
lines
attrs
]);
};
};
2024-11-04 04:37:29 +03:00
}