{ programs.bash = { interactiveShellInit = '' bind '"\e[A":history-search-backward' bind '"\e[B":history-search-forward' # Ignore duplicate commands, ignore commands starting with a space export HISTCONTROL=erasedups:ignorespace export HISTSIZE=42000 # Append to the history instead of overwriting (good for multiple connections) shopt -s histappend # Utilities mkcd () { mkdir -p "$1"; cd "$1"; } ''; shellAliases = { cl = "clear"; grep = "grep --color"; l = "ls -alh"; ll = "ls -al"; ls = "ls --color=tty"; mem = "ps -e -orss=,user=,args= | sort -b -k1,1n"; s="sudo systemctl"; st="sudo systemctl status"; j="sudo journalctl -u"; jb="sudo journalctl -b"; nix-history="sudo nix-env --list-generations --profile /nix/var/nix/profiles/system"; mv = "mv -i"; }; }; }