this repo has no description
nix
1{ lib, ... }:
2let
3 inherit (lib) mkDefault optionals;
4in
5{
6 programs.ghostty = {
7 darwin = {
8 homebrew.casks = [ "ghostty" ];
9 };
10
11 homeManager =
12 { pkgs, ... }:
13 let
14 inherit (pkgs.stdenv) isDarwin;
15 package = if isDarwin then null else pkgs.ghostty;
16 in
17 {
18 home.sessionVariables.TERMINAL = mkDefault "ghostty";
19 xdg.configFile."ghostty/tab-style.css".source = ./tab-style.css;
20 systemd.user.sessionVariables.TERMINAL = mkDefault "ghostty";
21 programs = {
22 ghostty = {
23 enable = mkDefault true;
24 package = mkDefault package;
25 enableZshIntegration = true;
26 settings = {
27 font-family = [
28 "Iosevka Sharpie Term"
29 "Iosevka Term"
30 "Iosevka Nerd Font Mono"
31 "Symbols Nerd Font Mono"
32 ];
33 font-size = mkDefault 12;
34 # theme = "catppuccin-macchiato";
35 background-opacity = 0.95;
36 background-blur = false;
37 shell-integration-features = [
38 "ssh-terminfo"
39 "ssh-env"
40 ];
41 quick-terminal-position = "top";
42 quick-terminal-screen = "main"; # default: "main"
43 # quick-terminal-animation-duration = 0;
44 quick-terminal-autohide = true;
45 quick-terminal-space-behavior = "move"; # default: "move"
46 gtk-wide-tabs = false;
47 gtk-tabs-location = "bottom";
48 gtk-custom-css = "tab-style.css";
49 keybind = optionals isDarwin [
50 "global:ctrl+cmd+f12=toggle_quick_terminal"
51 ];
52 };
53 };
54 };
55 };
56 };
57}