anchor.diff:  
     fish = stdenv.mkDerivation rec {
       pname = "fish";
  -    version = "3.0.2";
  +    version = "3.1.0";
   
       etcConfigAppendix = builtins.toFile "etc-config.appendix.fish" etcConfigAppendixText;
   
  
positive.code:       # There are differences between the release tarball and the tarball github packages from the tag
        # Hence we cannot use fetchFromGithub
        url = "https://github.com/fish-shell/fish-shell/releases/download/${version}/${pname}-${version}.tar.gz";
        sha256 = "03j3jl9jzlnhq4p86zj8wqsh5sx45j1d1fvfa80ks1cfdg68qwhl";
      };
  
      nativeBuildInputs = [ cmake ];
  
negative.code:           -i "$out/share/fish/functions/_.fish"
        sed -e "s|uname|${coreutils}/bin/uname|"             \
            -i "$out/share/fish/functions/__fish_pwd.fish"   \
               "$out/share/fish/functions/prompt_pwd.fish"
        sed -e "s|sed |${gnused}/bin/sed |"                  \
            -i "$out/share/fish/functions/alias.fish"        \
               "$out/share/fish/functions/prompt_pwd.fish"
        sed -i "s|nroff |${groff}/bin/nroff |"               \
               "$out/share/fish/functions/__fish_print_help.fish"
        sed -e "s|clear;|${getBin ncurses}/bin/clear;|"      \
            -i "$out/share/fish/functions/fish_default_key_bindings.fish"
        sed -e "s|python3|${getBin python3}/bin/python3|"    \
            -i $out/share/fish/functions/{__fish_config_interactive.fish,fish_config.fish,fish_update_completions.fish}
        sed -i "s|/usr/local/sbin /sbin /usr/sbin||"         \
               $out/share/fish/completions/{sudo.fish,doas.fish}
  
      '' + optionalString stdenv.isLinux ''
        sed -e "s| ul| ${utillinux}/bin/ul|" \
  