{ lib, config, pkgs, ... }: let cfg = config.snowhawk.kitty; macos = config.snowhawk.macos.enable; in { options.snowhawk.kitty = { enable = lib.mkEnableOption "kitty home-manager module"; }; config = lib.mkIf cfg.enable { programs.kitty = { enable = true; shellIntegration.enableFishIntegration = true; settings = let macos_fonts = { font_family = lib.mkForce "family=\"JetBrainsMono Nerd Font Mono\" style=\"Light\""; bold_font = lib.mkForce "family=\"JetBrainsMono Nerd Font Mono\" style=\"Regular\""; italic_font = lib.mkForce "family=\"JetBrainsMono Nerd Font Mono\" style=\"Light Italic\""; bold_italic_font = lib.mkForce "family=\"JetBrainsMono Nerd Font Mono\" style=\"Regular Italic\""; }; linux_fonts = { font_family = "family=\"JetBrainsMono Nerd Font\" style=\"ExtraLight\""; bold_font = "family=\"JetBrainsMono Nerd Font\" style=\"Light\""; italic_font = "family=\"JetBrainsMono Nerd Font\" style=\"ExtraLight Italic\""; bold_italic_font = "family=\"JetBrainsMono Nerd Font\" style=\"Light Italic\""; }; in { background = "#050505"; background_opacity = 0.98; font_size = 12; # allow_remote_control = "yes"; } // (if !macos then linux_fonts else macos_fonts); extraConfig = let kitten = "${pkgs.kitty}/bin/kitten"; in '' include ${../../home/kitty/alacritty-colors.conf} # map ctrl+k ${pkgs.writeShellScript "kitten-snap" "${kitten} @ get-text --self --ansi > /tmp/test"} ''; }; }; }