{pkgs, lib, ...}:
let
  stylix = import ./stylix.nix { inherit pkgs; };
in
{
    programs.kitty = {
        enable = true;
        shellIntegration.enableFishIntegration = true;
        settings = {
            # # import the colors from the stylix theme, but keep the background black
            # color0 = stylix.stylix.base16Scheme.base00;
            # color8 = stylix.stylix.base16Scheme.base08;

            # color1 = stylix.stylix.base16Scheme.base01;
            # color9 = stylix.stylix.base16Scheme.base09;

            # color2 = stylix.stylix.base16Scheme.base02;
            # color10 = stylix.stylix.base16Scheme.base0A;

            # color3 = stylix.stylix.base16Scheme.base03;
            # color11 = stylix.stylix.base16Scheme.base0B;

            # color4 = stylix.stylix.base16Scheme.base04;
            # color12 = stylix.stylix.base16Scheme.base0C;

            # color5 = stylix.stylix.base16Scheme.base05;
            # color13 = stylix.stylix.base16Scheme.base0D;

            # color6 = stylix.stylix.base16Scheme.base06;
            # color14 = stylix.stylix.base16Scheme.base0E;

            # color7 = stylix.stylix.base16Scheme.base07;
            # color15 = stylix.stylix.base16Scheme.base0F;

            # also reuse the background opacity by stylix
            background_opacity = stylix.stylix.opacity.terminal;

            background = "#000000";

            confirm_os_window_close = 0;
            enable_audio_bell = false;
            cursor_trail = 3;
            cursor_trail_decay = "0.1 0.4";
            url_style = "curly";
            notify_on_cmd_finish = "unfocused";
        };

        keybindings = {
            # copy and paste
            "ctrl+shift+c" = "copy_to_clipboard";
            "ctrl+shift+v" = "paste_from_clipboard";
            # zoom
            "ctrl+shift+plus" = "increase_font_size";
            "ctrl+shift+minus" = "decrease_font_size";
            "ctrl+shift+0" = "reset_font_size";
            # tabs
            "ctrl+shift+t" = "new_tab";
            "ctrl+shift+w" = "close_tab";
        };
    };
}
