Files
nixos/modules/home-manager/zsh.nix
T

51 lines
1.7 KiB
Nix

{
config,
pkgs,
...
}: {
programs.zsh = {
enable = true;
autosuggestion.enable = true;
initContent = ''
# Safe cat that uses colorize plugin ccat
custom-cat() {
if [[ -t 1 ]]; then
ccat "$@"
else
command cat "$@"
fi
}
custom-eza() { # behaves differently if we just call it or if we pipe initContent
if [[ -t 1 ]]; then
eza -hlF -aa --color=always --hyperlink --group-directories-first --show-symlinks --icons=always --git --no-permissions "$@"
else
command eza "$@"
fi
}
eval "$(direnv hook zsh)"
export PATH="$PATH:$HOME/NoteWrapper" # some project im coding
fastfetch''\n'';
shellAliases = {
".." = "z ..";
grep = "rg";
ll = "custom-eza"; # if there is a special ls just use the big eza
la = "custom-eza";
l = "custom-eza";
eza = "custom-eza";
ls = "\\eza -a"; # ls -> normal ls. eza gives more info
tree = "\\eza -hlTF --color=always --hyperlink --group-directories-first --show-symlinks --icons=always --git --no-permissions";
cat = "custom-cat";
pomodoro = "custom-tomato";
librewolf = "kitty --class \"custom-librewolfprofiles\" --name \"Select LibreWolf profile\" --hold custom-librewolfprofiles";
manix = "custom-manix";
man = "custom-man";
mplayer = "mplayer -volume 5";
snrt = "git add -A && sudo nixos-rebuild test --flake ~/nixos/#laptop";
snrs = "git add -A && sudo nixos-rebuild switch --flake ~/nixos/#laptop";
# these are to create the developpement shell
cenv = "nix-shell -p zsh gcc raylib libx11 libGL";
};
};
}