{ pkgs }: { enable = true; interactiveShellInit = '' #disable greeting set fish_greeting #fixes gnupg password entry export GPG_TTY=(${pkgs.coreutils}/bin/tty) #pfetch on shell start PF_INFO="ascii title os host kernel uptime memory editor wm" ${pkgs.pfetch-rs}/bin/pfetch ''; shellAliases = let eza_common = "${pkgs.eza}/bin/eza --color=always --group-directories-first"; in { c = "${pkgs.cargo}/bin/cargo"; cr = "${pkgs.cargo}/bin/cargo run"; cb = "${pkgs.cargo}/bin/cargo build"; # from DistroTube's dot files: Changing "ls" to "eza" ls = "${eza_common} -al"; la = "${eza_common} -a"; ll = "${eza_common} -l"; lt = "${eza_common} -aT"; # gets the largest files in a git repo's history "git-size" = '' ${pkgs.git}/bin/git rev-list --objects --all | ${pkgs.git}/bin/git cat-file --batch-check='%(objecttype) %(objectname) %(objectsize) %(rest)' | ${pkgs.gnused}/bin/sed -n 's/^blob //p' | ${pkgs.coreutils}/bin/sort --numeric-sort --key=2 | ${pkgs.coreutils}/bin/cut -c 1-12,41- | ${pkgs.coreutils}/bin/numfmt --field=2 --to=iec-i --suffix=B --padding=7 --round=nearest''; #aliases for (I think) macos commands pbcopy = "${pkgs.wl-clipboard}/bin/wl-copy"; pbpaste = "${pkgs.wl-clipboard}/bin/wl-paste"; }; shellInit = '' fish_add_path ~/.local/bin fish_add_path ~/.cargo/bin set hydro_color_pwd 62A set hydro_color_error red set hydro_color_duration yellow set hydro_color_prompt green set hydro_color_git blue ''; plugins = [ { name = "hydro"; src = pkgs.fishPlugins.hydro.src; } ]; }