summaryrefslogtreecommitdiff
path: root/modules/packages/kitty.nix
blob: 4e204adc2644923761fd35842c61963a35d56143 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
{
  self,
  inputs,
  ...
}: {
  flake.wrapperModules.kitty = {
    config,
    lib,
    ...
  }: {
    options.shell = lib.mkOption {
      type = lib.types.str;
      default = "";
    };
    config.args = lib.mkAfter (lib.optionals (config.shell != "") [config.shell]);
    config.settings = {
      font_size = 10;
      font_family = "JetBrainsMono Nerd Font";

      shell_integration = "enabled";
      allow_remote_control = "yes";

      # Gruvbox Material Dark Hard
      background = "#1d2021";
      foreground = "#d4be98";

      selection_background = "#d4be98";
      selection_foreground = "#1d2021";

      cursor = "#a89984";
      cursor_text_color = "background";

      # Black
      color0 = "#665c54";
      color8 = "#928374";

      # Red
      color1 = "#ea6962";
      color9 = "#ea6962";

      # Green
      color2 = "#a9b665";
      color10 = "#a9b665";

      # Yellow
      color3 = "#e78a4e";
      color11 = "#d8a657";

      # Blue
      color4 = "#7daea3";
      color12 = "#7daea3";

      # Magenta
      color5 = "#d3869b";
      color13 = "#d3869b";

      # Cyan
      color6 = "#89b482";
      color14 = "#89b482";

      # White
      color7 = "#d4be98";
      color15 = "#d4be98";

      # START_AUTOGENERATED_TAB_STYLE
      # Feel free to update these colors manually and remove these comments.
      active_tab_foreground = "#444444";
      active_tab_background = "#d4be98";
      inactive_tab_foreground = "#d4be98";
      inactive_tab_background = "#171a1a";
    };
  };

  perSystem = {pkgs, ...}: {
    packages.kitty =
      (inputs.wrappers.wrapperModules.kitty.apply {
        inherit pkgs;
        imports = [self.wrapperModules.kitty];
      }).wrapper;
  };
}