anchor.diff:          extraArgs = { nodes = generateConfigurations network enableDisnix nixOpsModel useVMTesting useBackdoor; };
         }) network;
   
  +  /*
  +   * Generates a list of NixOS system profiles mapped to target machines.
  +   *
  +   * Parameters:
  +   * configurations: An attribute set with evaluated configurations
  +   * targetProperty: Attribute from the infrastructure model that is used to connect to the Disnix interface
  +   *
  +   * Returns:
  +   * A list of attribute sets in which NixOS profiles are mapped to target machines
  +   */
     generateProfiles = configurations: targetProperty:
       map (targetName:
         let
  
positive.code:     ) (attrNames configurations)
    ;
    
    generateTargetPropertyList = configurations: targetProperty:
      map (targetName:
        let
  
negative.code:     in
      if nixOpsModel then removeAttrs mergedNetwork [ "network" "resources" ] else mergedNetwork; # A NixOps model has a reserved network attributes that cannot be machines
    
    /*
     * Takes a merged network configuration and evaluates them producing a config
     * attribute for each of them.
     *
     * Parameters:
     * enableDisnix: Indicates whether Disnix must be enabled
     * nixOpsModel: Indicates whether we should use NixOps specific settings
     * useVMTesting: Indicates whether we should enable NixOS test instrumentation and VM settings
     * useBackdoor: Indicates whether we should enable the backdoor
     *
     * Returns:
     * An attribute set with evaluated machine configurationb properties
     */
    generateConfigurations = network: enableDisnix: nixOpsModel: useVMTesting: useBackdoor:
      pkgs.lib.mapAttrs (targetName: configuration:
        evalConfig {
  