2024-04-07 22:16:33 -04:00
|
|
|
{
|
|
|
|
config,
|
2024-07-18 21:05:35 -04:00
|
|
|
lib,
|
|
|
|
pkgs,
|
2024-04-07 22:16:33 -04:00
|
|
|
...
|
|
|
|
}: {
|
2024-08-04 11:47:57 -04:00
|
|
|
config = lib.mkIf config.ar.home.apps.shell.enable {
|
2024-06-25 23:43:59 -04:00
|
|
|
home.shellAliases = {
|
|
|
|
cat = lib.getExe pkgs.bat;
|
|
|
|
grep = lib.getExe config.programs.ripgrep.package;
|
|
|
|
};
|
|
|
|
|
2024-06-25 16:58:20 -04:00
|
|
|
programs = {
|
|
|
|
bash = {
|
|
|
|
enable = true;
|
|
|
|
enableCompletion = true;
|
|
|
|
enableVteIntegration = true;
|
2024-07-10 23:43:51 -04:00
|
|
|
|
2024-06-25 16:58:20 -04:00
|
|
|
shellOptions = [
|
|
|
|
"autocd"
|
|
|
|
"cdspell"
|
|
|
|
"checkjobs"
|
|
|
|
"checkwinsize"
|
|
|
|
"dirspell"
|
|
|
|
"dotglob"
|
|
|
|
"extglob"
|
|
|
|
"globstar"
|
|
|
|
"histappend"
|
|
|
|
];
|
2024-07-10 23:43:51 -04:00
|
|
|
|
2024-06-25 16:58:20 -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-06-25 23:43:59 -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;
|
2024-10-18 09:06:25 -04:00
|
|
|
icons = "auto";
|
2024-06-25 20:46:13 -04:00
|
|
|
};
|
|
|
|
|
|
|
|
fzf = {
|
|
|
|
enable = true;
|
|
|
|
tmux.enableShellIntegration = true;
|
|
|
|
};
|
|
|
|
|
2024-08-04 11:47:57 -04:00
|
|
|
oh-my-posh = {
|
|
|
|
enable = true;
|
|
|
|
useTheme = "zash";
|
|
|
|
};
|
|
|
|
|
2024-06-25 23:43:59 -04:00
|
|
|
ripgrep = {
|
|
|
|
enable = true;
|
|
|
|
arguments = ["--pretty"];
|
|
|
|
};
|
2024-08-04 11:47:57 -04:00
|
|
|
|
2024-09-12 22:27:58 -04:00
|
|
|
zellij.enable = true;
|
|
|
|
|
2024-08-04 11:47:57 -04:00
|
|
|
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
|
|
|
};
|
|
|
|
};
|
|
|
|
}
|