{ lib, config, ... }: with lib; let cfg = config.mjallen.programs.kitty; in { imports = [ ./options.nix ]; config = mkIf cfg.enable { programs.kitty = { enable = true; shellIntegration.enableZshIntegration = true; font = { name = mkDefault cfg.font.name; package = mkDefault cfg.font.package; size = mkDefault cfg.font.size; }; settings = { bold_font = "auto"; italic_font = "auto"; bold_italic_font = "auto"; mouse_hide_wait = "2.0"; cursor_shape = "block"; url_style = "dotted"; confirm_os_window_close = "0"; background_opacity = mkForce "0.85"; # # The basic colors # foreground = config.lib.stylix.colors.base06; # background = config.lib.stylix.colors.base00; # selection_foreground = config.lib.stylix.colors.base00; # selection_background = config.lib.stylix.colors.base0E; # # Cursor colors # cursor = config.lib.stylix.colors.base0E; # cursor_text_color = config.lib.stylix.colors.base00; # # URL underline color when hovering with mouse # url_color = config.lib.stylix.colors.base0E; # # Kitty window border colors # active_border_color = config.lib.stylix.colors.base0F; # inactive_border_color = config.lib.stylix.colors.base01; # bell_border_color = config.lib.stylix.colors.base0A; # # OS Window titlebar colors # wayland_titlebar_color = config.lib.stylix.colors.base00; # macos_titlebar_color = config.lib.stylix.colors.base00; # # Tab bar colors # active_tab_foreground = config.lib.stylix.colors.base03; # active_tab_background = config.lib.stylix.colors.base0E; # inactive_tab_foreground = config.lib.stylix.colors.base06; # inactive_tab_background = config.lib.stylix.colors.base01; # tab_bar_background = config.lib.stylix.colors.base03; # # Colors for marks (marked text in the terminal) # mark1_foreground = config.lib.stylix.colors.base00; # mark1_background = config.lib.stylix.colors.base0F; # mark2_foreground = config.lib.stylix.colors.base00; # mark2_background = config.lib.stylix.colors.base0E; # mark3_foreground = config.lib.stylix.colors.base00; # mark3_background = config.lib.stylix.colors.base0C; # # The 16 terminal colors # # black # color0 = config.lib.stylix.colors.base00; # # Autosuggestion # color8 = config.lib.stylix.colors.base0F; # # red # color1 = config.lib.stylix.colors.base08; # color9 = config.lib.stylix.colors.base08; # # green # color2 = config.lib.stylix.colors.base0B; # color10 = config.lib.stylix.colors.base0B; # # yellow # color3 = config.lib.stylix.colors.base0A; # color11 = config.lib.stylix.colors.base0A; # # blue # color4 = config.lib.stylix.colors.base0F; # color12 = config.lib.stylix.colors.base0F; # # magenta # color5 = config.lib.stylix.colors.base0E; # color13 = config.lib.stylix.colors.base0E; # # cyan # color6 = config.lib.stylix.colors.base0C; # color14 = config.lib.stylix.colors.base0C; # # white # color7 = config.lib.stylix.colors.base05; # color15 = config.lib.stylix.colors.base06; }; }; }; }