nix-config/dots/.config/kitty/kitty.conf.nix
2025-11-25 21:52:02 +01:00

107 lines
2.8 KiB
Nix

{
lib,
config,
...
}: let
inherit (lib) mkIf mkEnableOption mkOption types;
cfg = config.horseman.dots.kitty;
username = config.horseman.username;
colors = config.horseman.catppuccin.colors;
in {
options = {
horseman.dots.kitty = {
enable = mkEnableOption "~/.config/kitty/kitty.conf";
fontSize = mkOption {
type = types.int;
default = 11;
};
};
};
config = mkIf cfg.enable {
home-manager.users.${username}.xdg.configFile."kitty/kitty.conf".text = ''
enable_audio_bell no
confirm_os_window_close 0
background_opacity 0.7
font_family family='CaskaydiaCove Nerd Font' postscript_name=CaskaydiaCoveNF-Light
bold_font family='CaskaydiaCove Nerd Font' style=SemiBold
italic_font family='CaskaydiaCove Nerd Font' postscript_name=CaskaydiaCoveNF-LightItalic
bold_italic_font family='CaskaydiaCove Nerd Font' style='SemiBold Italic'
font_size ${toString cfg.fontSize}
# The basic colors
foreground ${colors.text}
background #000000
selection_foreground ${colors.base}
selection_background ${colors.rosewater}
# Cursor colors
cursor ${colors.rosewater}
cursor_text_color ${colors.base}
# URL underline color when hovering with mouse
url_color ${colors.rosewater}
# Kitty window border colors
active_border_color ${colors.lavender}
inactive_border_color ${colors.overlay0}
bell_border_color ${colors.yellow}
# OS Window titlebar colors
wayland_titlebar_color system
macos_titlebar_color system
# Tab bar colors
active_tab_foreground ${colors.crust}
active_tab_background ${colors.mauve}
inactive_tab_foreground ${colors.text}
inactive_tab_background ${colors.mantle}
tab_bar_background ${colors.crust}
# Colors for marks (marked text in the terminal)
mark1_foreground ${colors.base}
mark1_background ${colors.lavender}
mark2_foreground ${colors.base}
mark2_background ${colors.mauve}
mark3_foreground ${colors.base}
mark3_background ${colors.sapphire}
# The 16 terminal colors
# black
color0 ${colors.surface1}
color8 ${colors.surface2}
# red
color1 ${colors.red}
color9 ${colors.red}
# green
color2 ${colors.green}
color10 ${colors.green}
# yellow
color3 ${colors.yellow}
color11 ${colors.yellow}
# blue
color4 ${colors.blue}
color12 ${colors.blue}
# magenta
color5 ${colors.pink}
color13 ${colors.pink}
# cyan
color6 ${colors.teal}
color14 ${colors.teal}
# white
color7 ${colors.subtext1}
color15 ${colors.subtext0}
'';
};
}