Restructure the shell module for better readability

This commit is contained in:
SebastianStork 2024-03-25 17:52:32 +01:00
parent 8fd578e573
commit 2ea784c007

View file

@ -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"];
};
})
];
}