aboutsummaryrefslogtreecommitdiff
path: root/home/wm/theme/default.nix
diff options
context:
space:
mode:
Diffstat (limited to 'home/wm/theme/default.nix')
-rw-r--r--home/wm/theme/default.nix63
1 files changed, 63 insertions, 0 deletions
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;
+ };
+ };
+ })]);
+}