anchor.diff:      environment.etc."fish/config.fish".text = ''
         # /etc/fish/config.fish: DO NOT EDIT -- this file has been generated automatically.
   
  -      # if our parent shell didn't source the general config, do it
  +      # if we haven't sourced the general config, do it
         if not set -q __fish_nixos_general_config_sourced
           set fish_function_path ${pkgs.fish-foreign-env}/share/fish-foreign-env/functions $fish_function_path
           fenv source /etc/fish/foreign-env/shellInit > /dev/null
  
positive.code:         
          ${cfg.shellInit}
  
          # and leave a note to our children to spare them the same work
          set -gx __fish_nixos_general_config_sourced 1
        end
  
        # if our parent shell didn't source the login config, do it
        status --is-login; and not set -q __fish_nixos_login_config_sourced
        and begin
          set fish_function_path ${pkgs.fish-foreign-env}/share/fish-foreign-env/functions $fish_function_path
  
negative.code:     environment.etc."fish/foreign-env/interactiveShellInit".text = cfge.interactiveShellInit;
  
      environment.etc."fish/nixos-env-preinit.fish".text = ''
        # This happens before $__fish_datadir/config.fish sets fish_function_path, so it is currently
        # unset. We set it and then completely erase it, leaving its configuration to $__fish_datadir/config.fish
        set fish_function_path ${pkgs.fish-foreign-env}/share/fish-foreign-env/functions $__fish_datadir/functions
  