nixcfg/homeManagerModules/apps/shell/default.nix

77 lines
1.5 KiB
Nix
Raw Normal View History

2024-04-07 22:16:33 -04:00
{
config,
lib,
pkgs,
2024-04-07 22:16:33 -04:00
...
}: {
config = lib.mkIf config.ar.home.apps.shell.enable {
home.shellAliases = {
cat = lib.getExe pkgs.bat;
grep = lib.getExe config.programs.ripgrep.package;
};
programs = {
bash = {
enable = true;
enableCompletion = true;
enableVteIntegration = true;
2024-07-10 23:43:51 -04:00
shellOptions = [
"autocd"
"cdspell"
"checkjobs"
"checkwinsize"
"dirspell"
"dotglob"
"extglob"
"globstar"
"histappend"
];
2024-07-10 23:43:51 -04:00
initExtra = ''
export PS1="[\[$(tput setaf 27)\]\u\[$(tput setaf 135)\]@\[$(tput setaf 45)\]\h:\[$(tput setaf 33)\]\w] \[$(tput sgr0)\]$ "
'';
2024-06-19 15:34:11 -04:00
};
2024-09-05 21:51:21 -04:00
direnv.enable = true;
2024-06-25 20:46:13 -04:00
eza = {
enable = true;
extraOptions = ["--group-directories-first" "--header"];
git = true;
icons = true;
};
fzf = {
enable = true;
tmux.enableShellIntegration = true;
};
oh-my-posh = {
enable = true;
useTheme = "zash";
};
ripgrep = {
enable = true;
arguments = ["--pretty"];
};
zsh = {
enable = true;
autocd = true;
autosuggestion.enable = true;
enableCompletion = true;
enableVteIntegration = true;
historySubstringSearch.enable = true;
history = {
expireDuplicatesFirst = true;
extended = true;
ignoreAllDups = true;
};
};
2024-03-28 19:52:15 -04:00
};
};
}