{ lib, inputs, self, }: let util = import ../lib { inherit lib; }; registry = import ./registry.nix { inherit lib; hosts = self.nixosConfigurations; root = self + "/registry"; }; modules = import ./module.nix { inherit util; root = self + "/modules"; }; guestModules = import ./guest.nix { inherit inputs lib registry specialArgs util ; repositoryModules = modules; root = self + "/guests"; }; specialArgs = { inherit inputs self util ; registry = registry.collected; }; in { nixosConfigurations = import ./host.nix { inherit inputs lib specialArgs guestModules ; registryModule = registry.module; repositoryModules = modules; root = self + "/hosts"; }; }