diff options
Diffstat (limited to 'modules/users/terminal')
| -rw-r--r-- | modules/users/terminal/default.nix | 36 | ||||
| -rw-r--r-- | modules/users/terminal/foot.nix | 57 | ||||
| -rw-r--r-- | modules/users/terminal/kitty.nix | 33 |
3 files changed, 126 insertions, 0 deletions
diff --git a/modules/users/terminal/default.nix b/modules/users/terminal/default.nix new file mode 100644 index 0000000..4a9b254 --- /dev/null +++ b/modules/users/terminal/default.nix @@ -0,0 +1,36 @@ +{ + pkgs, + config, + lib, + ... +}: +let + inherit (lib) mkOption types; + cfg = config.nx.terminal; +in +{ + imports = [ + ./foot.nix + ./kitty.nix + ]; + options.nx.terminal = { + font = mkOption { + description = "default font"; + default = "Victor Mono"; + }; + + multiplexer = mkOption { + type = types.enum [ "tmux" ]; + default = "tmux"; + }; + + defaultShell = mkOption { + description = "default shell"; + type = types.enum [ + "bash" + "zsh" + ]; + default = "zsh"; + }; + }; +} diff --git a/modules/users/terminal/foot.nix b/modules/users/terminal/foot.nix new file mode 100644 index 0000000..fbaba8f --- /dev/null +++ b/modules/users/terminal/foot.nix @@ -0,0 +1,57 @@ +{ + config, + lib, + pkgs, + ... +}: + +{ + options.nx.terminal.foot.enable = lib.mkEnableOption "Enable foot terminal"; + config = lib.mkIf config.nx.terminal.foot.enable { + home.packages = with pkgs; [ + nerd-fonts.space-mono + ]; + + programs.foot = { + enable = true; + settings = { + main = { + pad = "10x10"; + font = "SpaceMono Nerd Font Mono:size=10"; + line-height = 12; + }; + + cursor = { + style = "underline"; + unfocused-style = "unchanged"; + blink = true; + }; + + colors = { + alpha = 0.9; + # Gruvbox Theme + background = "000000"; + foreground = "ebdbb2"; + + regular0 = "282828"; + regular1 = "cc241d"; + regular2 = "98971a"; + regular3 = "d79921"; + regular4 = "458588"; + regular5 = "b16286"; + regular6 = "689d6a"; + regular7 = "a89984"; + + bright0 = "928374"; + bright1 = "fb4934"; + bright2 = "b8bb26"; + bright3 = "fabd2f"; + bright4 = "83a598"; + bright5 = "d3869b"; + bright6 = "8ec07c"; + bright7 = "ebdbb2"; + }; + }; + }; + }; +} diff --git a/modules/users/terminal/kitty.nix b/modules/users/terminal/kitty.nix new file mode 100644 index 0000000..02789cd --- /dev/null +++ b/modules/users/terminal/kitty.nix @@ -0,0 +1,33 @@ +{ + config, + lib, + ... +}: + +{ + options.nx.programs.kitty.enable = lib.mkEnableOption "Enable kitty"; + config = lib.mkIf config.nx.programs.kitty.enable { + programs.kitty = { + enable = true; + shellIntegration.enableFishIntegration = true; + font = { + name = "monospace"; + size = 11; + }; + settings = { + cursor_shape = "underline"; + cursor_blink_interval = "-1"; + cursor_stop_blinking_after = "15.0"; + + background_opacity = "0.3"; + + enable_audio_bell = false; + bell_on_tab = false; + + window_border_width = "0"; + window_margin_width = "4"; + window_padding_width = "5"; + }; + }; + }; +} |
