feat: fix kitty theme switching via auto.conf, add catppuccin mocha theme

This commit is contained in:
2026-03-04 22:21:12 +01:00
parent 3cc73f77bb
commit 0d2d04ede1
3 changed files with 102 additions and 53 deletions
+49 -8
View File
@@ -1,11 +1,7 @@
{ lib, ... }:
{
options.theme.colors = lib.mkOption {
type = lib.types.attrsOf lib.types.str;
description = "Named color palette";
default = {
# Gruvbox Dark Medium
{ lib, config, ... }:
let
themes = {
gruvboxDarkMedium = {
bg = "#282828";
bg0_h = "#1d2021";
bg0_s = "#32302f";
@@ -34,5 +30,50 @@
orange_b = "#fe8019";
gray = "#928374";
};
catppuccinMocha = {
bg = "#1e1e2e";
bg0_h = "#11111b";
bg0_s = "#181825";
bg1 = "#313244";
bg2 = "#45475a";
bg3 = "#585b70";
bg4 = "#6c7086";
fg = "#cdd6f4";
fg1 = "#cdd6f4";
fg2 = "#bac2de";
fg3 = "#a6adc8";
fg4 = "#9399b2";
red = "#d20f39";
red_b = "#f38ba8";
green = "#40a02b";
green_b = "#a6e3a1";
yellow = "#df8e1d";
yellow_b = "#f9e2af";
blue = "#1e66f5";
blue_b = "#89b4fa";
purple = "#8839ef";
purple_b = "#cba6f7";
aqua = "#179299";
aqua_b = "#94e2d5";
orange = "#fe640b";
orange_b = "#fab387";
gray = "#7f849c";
};
};
in
{
options.theme = {
name = lib.mkOption {
type = lib.types.enum (builtins.attrNames themes);
default = "gruvboxDarkMedium";
description = "Theme name to use";
};
colors = lib.mkOption {
type = lib.types.attrsOf lib.types.str;
description = "Named color palette";
default = themes.gruvboxDarkMedium;
};
};
config.theme.colors = themes.${config.theme.name};
}