/ modules / linux-terminals.nix
linux-terminals.nix
 1  { pkgs, config, inputs, ... }:
 2  let
 3    link = config.lib.file.mkOutOfStoreSymlink;
 4    dotfiles = "${config.home.homeDirectory}/.dotfiles";
 5  in
 6  {
 7    home.packages = [
 8      (config.lib.nixGL.wrap pkgs.ghostty)
 9    ];
10  
11    # terminals produces their own config file which causes conflict
12    xdg.configFile = {
13      "wezterm/wezterm.lua".enable = false;
14      "kitty/kitty.conf".enable = false;
15  
16      "wezterm" = {
17        source = link "${dotfiles}/wezterm";
18        recursive = true;
19      };
20      "kitty" = {
21        source = link "${dotfiles}/kitty";
22        recursive = true;
23      };
24      "ghostty" = {
25        source = link "${dotfiles}/ghostty";
26        recursive = true;
27      };
28    };
29  }