From 2aa3e62136109c5c4762e951525d68aff3e1ac5a Mon Sep 17 00:00:00 2001 From: Franck Cuny Date: Fri, 8 Apr 2022 08:30:17 -0700 Subject: home: add more configurations for home-manager --- home/wm/theme/default.nix | 63 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 63 insertions(+) create mode 100644 home/wm/theme/default.nix (limited to 'home/wm/theme') diff --git a/home/wm/theme/default.nix b/home/wm/theme/default.nix new file mode 100644 index 0000000..e466d6c --- /dev/null +++ b/home/wm/theme/default.nix @@ -0,0 +1,63 @@ +{ config, lib, ... }: +let + isEnabled = config.my.home.wm.windowManager == "sway"; + cfg = config.base16-theme; + inherit (lib) mkOption mkMerge mkIf mkEnableOption types; + cnotation = builtins.replaceStrings [ "#" ] [ "0x" ]; + color = default: + mkOption { + inherit default; + type = types.str; + }; + alpha = clr: a: "${clr}${a}"; +in { + options.base16-theme = { + enable = mkEnableOption "Enable base16 theme systemwide"; + base00 = color "#2E3440"; # polar night + base01 = color "#3B4252"; # polar night + base02 = color "#434C5E"; # polar night + base03 = color "#4C566A"; # polar night + base04 = color "#D8DEE9"; # snow storm + base05 = color "#E5E9F0"; # snow storm + base06 = color "#ECEFF4"; # snow storm + base07 = color "#8FBCBB"; # frost + base08 = color "#88C0D0"; # frost + base09 = color "#81A1C1"; # frost + base0A = color "#5E81AC"; # frost + base0B = color "#BF616A"; # aurora + base0C = color "#D08770"; # aurora + base0D = color "#EBCB8B"; # aurora + base0E = color "#A3BE8C"; # aurora + base0F = color "#B48EAD"; # aurora + }; + + config = mkIf isEnabled (mkMerge [({ + wayland.windowManager.sway.config.colors = rec { + focused = { + border = cfg.base0A; + background = cfg.base0A; + text = cfg.base06; + indicator = cfg.base0A; + childBorder = cfg.base0A; + }; + + focusedInactive = { + border = cfg.base00; + background = cfg.base00; + text = cfg.base07; + indicator = cfg.base00; + childBorder = cfg.base00; + }; + + unfocused = focusedInactive; + + urgent = { + border = cfg.base0B; + background = cfg.base0B; + text = cfg.base05; + indicator = cfg.base0B; + childBorder = cfg.base0B; + }; + }; + })]); +} -- cgit 1.4.1