{ pkgs, lib, ... }: let inherit (lib) getExe; in { programs.fish.enable = true; # friendly interactive shell in rust programs.fish = { shellAliases = { cd = "z"; ed = "$EDITOR"; jf = "jj-fzf"; # think of jeff jo = "joshuto"; # think of josh l = "ls -lah"; la = "ls -ah"; ll = "ls -lh"; p = "pueue"; s = "systemctl"; stui = "systemctl-tui"; }; shellAbbrs = { pa = "pueue add --"; pl = "pueue log"; }; interactiveShellInit = '' bind \e\[3\;5~ kill-word bind \cH backward-kill-word set fish_greeting set fish_cursor_default block blink # ${getExe pkgs.bat-extras.batman} --export-env | source if test -e ~/.profile; source ~/.profile; end ''; }; }