aboutsummaryrefslogtreecommitdiff
path: root/modules/users/terminal
diff options
context:
space:
mode:
Diffstat (limited to 'modules/users/terminal')
-rw-r--r--modules/users/terminal/default.nix36
-rw-r--r--modules/users/terminal/foot.nix57
-rw-r--r--modules/users/terminal/kitty.nix33
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";
+ };
+ };
+ };
+}