{ pkgs, ... }: let fishPlugin = p: { inherit (p) src; name = p.pname; }; in { programs = { fish = { enable = true; interactiveShellInit = '' set fish_greeting ''; plugins = with pkgs.fishPlugins; [ (fishPlugin sponge) (fishPlugin colored-man-pages) ]; }; zoxide = { enable = true; enableFishIntegration = true; }; starship = { enable = true; enableFishIntegration = true; settings = { # gcloud is always in the prompt when there's a valid auth key, # so it's always on, and shows my huge work email address, # which is 1) completely obvious 2) completely useless. # also the cloud icon is broken in my font! ☁️! gcloud.disabled = true; }; }; direnv = { enable = true; }; }; }