anchor.diff:                   in if e == "" then [] else [(import e)]
   }:
   
  -let extraArgs_ = extraArgs; pkgs_ = pkgs;
  +let pkgs_ = pkgs;
   in
   
   let
  
positive.code:     };
    };
  
    noUserModules = lib.evalModules {
      inherit prefix check;
      modules = baseModules ++ extraModules ++ [ pkgsModule ];
      args = extraArgs;
      specialArgs =
        { modulesPath = builtins.toString ../modules; } // specialArgs;
    };
  
    # These are the extra arguments passed to every module.  In
    # particular, Nixpkgs is passed through the "pkgs" argument.
    extraArgs = extraArgs_ // {
      inherit noUserModules baseModules extraModules modules;
    };
  
  in rec {
  
    # Merge the option definitions in all modules, forming the full
    # system configuration.
    inherit (noUserModules.extendModules { inherit modules; })
      config options _module type;
  
    inherit extraArgs;
  
negative.code: # as subcomponents (e.g. the container feature, or nixops if network
  # expressions are ever made modular at the top level) can just use
  # types.submodule instead of using eval-config.nix
  evalConfigArgs@
  { # !!! system can be set modularly, would be nice to remove
    system ? builtins.currentSystem
  , # !!! is this argument needed any more? The pkgs argument can
  