From 34e2f2666627a516a73df8f7c19b3abac75050d6 Mon Sep 17 00:00:00 2001 From: sefidel Date: Sat, 1 Jan 2022 01:44:39 +0900 Subject: home/neotheme: init --- home/modules/misc/neotheme/default.nix | 59 ++++++++++++++++++++++++++++++++++ 1 file changed, 59 insertions(+) create mode 100644 home/modules/misc/neotheme/default.nix (limited to 'home/modules/misc') diff --git a/home/modules/misc/neotheme/default.nix b/home/modules/misc/neotheme/default.nix new file mode 100644 index 0000000..74f2c74 --- /dev/null +++ b/home/modules/misc/neotheme/default.nix @@ -0,0 +1,59 @@ +{ lib, pkgs, config, ... }: + +with lib; +let cfg = config.neotheme; +in { + options.neotheme = { + wallpaper = mkOption { + type = types.str; + default = ""; + description = "path for wallpaper image file"; + example = "/weird/dir/wallpaper.png"; + }; + + palette = { + identifier = mkOption { + type = types.str; + default = ""; + description = "palette identifier"; + example = "mytheme"; + }; + + name = mkOption { + type = types.str; + default = ""; + description = "palette name"; + example = "My Amazing Theme"; + }; + + colors = let + mkColorOption = name: { + inherit name; + value = mkOption { + type = types.strMatching "[a-fA-F0-9]{6}"; + description = "color ${name}."; + }; + }; + in listToAttrs (map mkColorOption [ + "background" + "foreground" + "color0" + "color1" + "color2" + "color3" + "color4" + "color5" + "color6" + "color7" + "bright0" + "bright1" + "bright2" + "bright3" + "bright4" + "bright5" + "bright6" + "bright7" + ]); + }; + }; +} -- cgit 1.4.1