summaryrefslogtreecommitdiff
path: root/common/modules/terminal/ghostty.nix
blob: 4ca438447d0958309cce2d4e45ee984ce7850da1 (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
{
  lib,
  config,
}:
let
  cfg = config.beeMods.terminal;
in
{
  config = lib.mkIf cfg.ghostty {
    programs.ghostty = {
      enable = true;
      enableFishIntegration = true;
      settings = {
        theme =
          if
            config.beeMods.matugen.enable
            && config.beeMods.windowManagers.beeConfig.enable
            && !config.beeMods.windowManagers.noctalia
          then
            [ "matugen" ]
          else
            [ "noctalia" ];

        font-family = cfg.font.family;
        font-size = cfg.font.size;
        # alpha-blending = "linear";
        window-padding-x = cfg.window.padding-x;
        window-padding-y = cfg.window.padding-y;
        window-decoration = "none";
        window-inherit-working-directory = false;
        cursor-style-blink = false;
        cursor-style = "block";
        shell-integration-features = "no-cursor";

        adjust-underline-position = "7%";
        # adjust-cell-width = "";
        # adjust-cell-height = "";
        # adjust-font-baseline = "";
        gtk-titlebar = false;
        gtk-single-instance = true;
        gtk-tabs-location = "bottom";
        gtk-wide-tabs = false;
        resize-overlay = "never";
        copy-on-select = false;
        confirm-close-surface = false;
        mouse-hide-while-typing = true;
        app-notifications = false;
        # app-notifications = [
        #   "no-clipboard-copy"
        #   "no-config-reload"
        # ];
      };
    };
  };
}