diff --git a/modules/home/shell.nix b/modules/home/shell.nix index 1162aaf..211a9c9 100644 --- a/modules/home/shell.nix +++ b/modules/home/shell.nix @@ -14,27 +14,35 @@ in { direnv.enable = lib.mkEnableOption ""; }; - config = { - programs.bash.enable = cfg.bash.enable; + config = lib.mkMerge [ + { + programs.bash.enable = cfg.bash.enable; - programs.zsh.enable = cfg.zsh.enable; + programs.zsh.enable = cfg.zsh.enable; - programs.starship = lib.mkIf cfg.starship.enable { - enable = true; - enableBashIntegration = cfg.bash.enable; - enableZshIntegration = cfg.zsh.enable; - settings = { - cmd_duration.disabled = true; - directory = { - truncation_length = 0; - truncation_symbol = "…/"; - truncate_to_repo = false; + programs.starship = lib.mkIf cfg.starship.enable { + enable = true; + enableBashIntegration = cfg.bash.enable; + enableZshIntegration = cfg.zsh.enable; + settings = { + cmd_duration.disabled = true; + directory = { + truncation_length = 0; + truncation_symbol = "…/"; + truncate_to_repo = false; + }; }; }; - }; - home.shellAliases = let - nixAliases = lib.mkIf cfg.nixAliases.enable { + programs.direnv = lib.mkIf cfg.direnv.enable { + enable = true; + nix-direnv.enable = true; + config.global.hide_env_diff = true; + }; + } + + (lib.mkIf cfg.nixAliases.enable { + home.shellAliases = { nr = "sudo nixos-rebuild --flake $FLAKE"; nrs = "nr switch"; nrt = "nr test"; @@ -42,30 +50,23 @@ in { nrrb = "nrb && reboot"; nu = "sudo nix flake update"; }; - commandAliases = lib.mkIf cfg.improvedCommands.enable { - cat = "bat -p"; + }) + + (lib.mkIf cfg.improvedCommands.enable { + programs.lsd = { + enable = true; + enableAliases = true; }; - in - lib.mkMerge [nixAliases commandAliases]; - programs.lsd = lib.mkIf cfg.improvedCommands.enable { - enable = true; - enableAliases = true; - }; + programs.bat.enable = true; + home.shellAliases.cat = "bat -p"; - programs.bat.enable = cfg.improvedCommands.enable; + programs.fzf.enable = true; - programs.fzf.enable = cfg.improvedCommands.enable; - - programs.zoxide = lib.mkIf cfg.improvedCommands.enable { - enable = true; - options = ["--cmd cd"]; - }; - - programs.direnv = lib.mkIf cfg.direnv.enable { - enable = true; - nix-direnv.enable = true; - config.global.hide_env_diff = true; - }; - }; + programs.zoxide = { + enable = true; + options = ["--cmd cd"]; + }; + }) + ]; }