diff --git a/themes/engine/files.nix b/themes/engine/files.nix index 63389d3..9adfa95 100644 --- a/themes/engine/files.nix +++ b/themes/engine/files.nix @@ -33,6 +33,62 @@ in @define-color accent #${palette.base0D}; ''; + # Per-palette kitty colors. features/apps/kitty/config/kitty.conf includes + # this file; without it the include silently failed and kitty stayed on + # default colors for every palette (Stylix's kitty target only kicks in + # when programs.kitty.enable is set, which the module doesn't use). + xdg.configFile."nomarchy/current/theme/kitty.conf".text = '' + background #${palette.base00} + foreground #${palette.base05} + cursor #${palette.base05} + selection_background #${palette.base02} + selection_foreground #${palette.base05} + color0 #${palette.base01} + color1 #${palette.base08} + color2 #${palette.base0B} + color3 #${palette.base0A} + color4 #${palette.base0D} + color5 #${palette.base0E} + color6 #${palette.base0C} + color7 #${palette.base04} + color8 #${palette.base03} + color9 #${palette.base08} + color10 #${palette.base0B} + color11 #${palette.base0A} + color12 #${palette.base0D} + color13 #${palette.base0E} + color14 #${palette.base0C} + color15 #${palette.base07} + ''; + + # Per-palette ghostty colors. features/apps/ghostty/config/config uses an + # optional include (?-prefix) of this file; without it the include was + # silently skipped and ghostty rendered with its built-in defaults across + # every palette. ghostty has no Stylix target. + xdg.configFile."nomarchy/current/theme/ghostty.conf".text = '' + background = ${palette.base00} + foreground = ${palette.base05} + cursor-color = ${palette.base05} + selection-background = ${palette.base02} + selection-foreground = ${palette.base05} + palette = 0=#${palette.base01} + palette = 1=#${palette.base08} + palette = 2=#${palette.base0B} + palette = 3=#${palette.base0A} + palette = 4=#${palette.base0D} + palette = 5=#${palette.base0E} + palette = 6=#${palette.base0C} + palette = 7=#${palette.base04} + palette = 8=#${palette.base03} + palette = 9=#${palette.base08} + palette = 10=#${palette.base0B} + palette = 11=#${palette.base0A} + palette = 12=#${palette.base0D} + palette = 13=#${palette.base0E} + palette = 14=#${palette.base0C} + palette = 15=#${palette.base07} + ''; + # Ensure theme-specific hyprland config exists # Lookup priority: palette apps/ > feature themes/ > nord fallback xdg.configFile."nomarchy/current/theme/apps/hyprland.conf" = lib.mkIf (!hasHyprlandConf) {