diff --git a/home/hosts/work/default.nix b/home/hosts/work/default.nix index fe8f2535..a1152e3d 100644 --- a/home/hosts/work/default.nix +++ b/home/hosts/work/default.nix @@ -90,6 +90,7 @@ redis.enable = true; }; k8s.enable = true; + shell.enable = true; my.stylix.enable = true; git.github.enable = true; git.gitlab.enable = true; diff --git a/home/modules/shell/bash.nix b/home/modules/shell/bash.nix index 9e6097d6..b99d16cc 100644 --- a/home/modules/shell/bash.nix +++ b/home/modules/shell/bash.nix @@ -4,13 +4,12 @@ dotsPath, ... }: + let cfg = config.shell.bash; inherit (config.home) username; in { - imports = [ ./utils.nix ]; - options.shell.bash = { aliases = { all = lib.mkOption { @@ -34,7 +33,7 @@ in }; }; - config = { + config = lib.mkIf config.shell.enable { programs.bash = { enable = true; enableCompletion = true; diff --git a/home/modules/shell/default.nix b/home/modules/shell/default.nix index ae6364cc..79872249 100644 --- a/home/modules/shell/default.nix +++ b/home/modules/shell/default.nix @@ -1,4 +1,5 @@ { + config, lib, ... }: @@ -11,5 +12,9 @@ ../tmux ]; - tmux.enable = lib.mkDefault true; + options.shell.enable = lib.mkEnableOption "shell"; + + config = lib.mkIf config.shell.enable { + tmux.enable = lib.mkDefault true; + }; } diff --git a/home/modules/shell/prompt.nix b/home/modules/shell/prompt.nix index 796f0ea9..d195409d 100644 --- a/home/modules/shell/prompt.nix +++ b/home/modules/shell/prompt.nix @@ -1,3 +1,11 @@ { - programs.starship.enable = true; + config, + lib, + ... +}: + +{ + config = lib.mkIf config.shell.enable { + programs.starship.enable = true; + }; } diff --git a/home/modules/shell/utils.nix b/home/modules/shell/utils.nix index 475ce78c..f0be8b64 100644 --- a/home/modules/shell/utils.nix +++ b/home/modules/shell/utils.nix @@ -1,19 +1,23 @@ { + config, lib, pkgs, ... }: -{ - programs.fzf = { - enable = true; - enableBashIntegration = lib.mkDefault true; - }; - home.packages = with pkgs; [ - ripgrep - bat - jq - entr - parallel - ]; +{ + config = lib.mkIf config.shell.enable { + programs.fzf = { + enable = true; + enableBashIntegration = lib.mkDefault true; + }; + + home.packages = with pkgs; [ + ripgrep + bat + jq + entr + parallel + ]; + }; }