anchor.diff:  
     config = mkIf cfg.enable {
   
  -    environment.etc."fish/foreign-env/shellInit".text = cfge.shellInit;
  -    environment.etc."fish/foreign-env/loginShellInit".text = cfge.loginShellInit;
  -    environment.etc."fish/foreign-env/interactiveShellInit".text = cfge.interactiveShellInit;
  -
       environment.etc."fish/config.fish".text = ''
         # /etc/fish/config.fish: DO NOT EDIT -- this file has been generated automatically.
   
  
positive.code: 
        ${config.system.build.setEnvironment}
  
        fenv source /etc/fish/foreign-env/shellInit > /dev/null
  
        ${cfg.shellInit}
  
        ${concatStringsSep "\n" fishVariables}
  
        if status --is-login
          fenv source /etc/fish/foreign-env/loginShellInit > /dev/null
          ${cfg.loginShellInit}
        end
  
        if status --is-interactive
          ${fishAliases}
          fenv source /etc/fish/foreign-env/interactiveShellInit > /dev/null
          ${cfg.interactiveShellInit}
          ${cfg.promptInit}
        end
  
negative.code:   fishAliases = concatStringsSep "\n" (
      mapAttrsFlatten (k: v: "alias ${k} '${v}'") cfg.shellAliases
    );
  
    fishVariables =
      mapAttrsToList (n: v: ''set -x ${n} "${v}"'') cfg.variables;
  
  in
  
  