diff options
Diffstat (limited to 'roles/home/desktop/theme.nix')
| -rw-r--r-- | roles/home/desktop/theme.nix | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/roles/home/desktop/theme.nix b/roles/home/desktop/theme.nix new file mode 100644 index 0000000..056c8ac --- /dev/null +++ b/roles/home/desktop/theme.nix @@ -0,0 +1,39 @@ +{ lib, ... }: + +with lib; + +{ + options.theme = { + background = mkOption { + type = types.str; + example = "mem.png"; + description = '' + Background image. Path starts in ~/Pictures/bg/ + ''; + }; + + colors = let + mkColorOption = name: { + inherit name; + value = mkOption { + type = types.strMatching "[a-fA-F0-9]{6}"; + default = "ff00ff"; + example = "23ce94"; + description = '' + Hex value for color "${name}". + ''; + }; + }; + in listToAttrs (map mkColorOption [ + "accent" + + "black" "red" "green" "yellow" "blue" "magenta" "cyan" "white" + "brightBlack" "brightRed" "brightGreen" "brightYellow" "brightBlue" "brightMagenta" "brightCyan" "brightWhite" + + "bg" "bg0" "bg1" "bg2" "bg3" "bg4" + "fg" "fg0" "fg1" "fg2" "fg3" "fg4" + + "orange" "brightOrange" + ]); + }; +} |