83 lines
2.2 KiB
Nix
83 lines
2.2 KiB
Nix
{ config, pkgs, ... }:
|
|
let
|
|
c = config.theme.colors;
|
|
colorConf = ''
|
|
background ${c.bg}
|
|
foreground ${c.fg}
|
|
selection_background ${c.bg2}
|
|
selection_foreground ${c.fg}
|
|
cursor ${c.fg}
|
|
cursor_text_color ${c.bg}
|
|
url_color ${c.blue_b}
|
|
color0 ${c.bg1}
|
|
color8 ${c.bg2}
|
|
color1 ${c.red}
|
|
color9 ${c.red_b}
|
|
color2 ${c.green}
|
|
color10 ${c.green_b}
|
|
color3 ${c.yellow}
|
|
color11 ${c.yellow_b}
|
|
color4 ${c.blue}
|
|
color12 ${c.blue_b}
|
|
color5 ${c.purple}
|
|
color13 ${c.purple_b}
|
|
color6 ${c.aqua}
|
|
color14 ${c.aqua_b}
|
|
color7 ${c.fg4}
|
|
color15 ${c.fg1}
|
|
'';
|
|
in
|
|
{
|
|
programs.kitty = {
|
|
enable = true;
|
|
package = pkgs.emptyDirectory;
|
|
font = {
|
|
name = "JetBrainsMono Nerd Font";
|
|
size = 12;
|
|
};
|
|
settings = {
|
|
shell = "zsh";
|
|
window_padding_width = 12;
|
|
background_opacity = "1.0";
|
|
hide_window_decorations = "yes";
|
|
cursor_shape = "block";
|
|
cursor_blink_interval = 1;
|
|
scrollback_lines = 3000;
|
|
copy_on_select = "yes";
|
|
strip_trailing_spaces = "smart";
|
|
tab_bar_style = "powerline";
|
|
tab_powerline_style = "round";
|
|
tab_bar_align = "left";
|
|
tab_bar_edge = "top";
|
|
tab_bar_min_tabs = 1;
|
|
shell_integration = "enabled";
|
|
active_tab_foreground = "#eeeeee";
|
|
active_tab_background = "#d65d0e";
|
|
inactive_tab_foreground = "#ebdbb2";
|
|
inactive_tab_background = "#202020";
|
|
};
|
|
keybindings = {
|
|
"ctrl+shift+n" = "new_window";
|
|
"ctrl+t" = "new_tab";
|
|
"ctrl+plus" = "change_font_size all +1.0";
|
|
"ctrl+minus" = "change_font_size all -1.0";
|
|
"ctrl+0" = "change_font_size all 0";
|
|
};
|
|
};
|
|
|
|
# Write theme colors into the auto conf files so they take effect
|
|
# regardless of OS dark/light mode setting
|
|
home.file.".config/kitty/dark-theme.auto.conf" = {
|
|
force = true;
|
|
text = colorConf;
|
|
};
|
|
home.file.".config/kitty/light-theme.auto.conf" = {
|
|
force = true;
|
|
text = colorConf;
|
|
};
|
|
home.file.".config/kitty/no-preference-theme.auto.conf" = {
|
|
force = true;
|
|
text = colorConf;
|
|
};
|
|
}
|