inputs: with inputs.self.lib; let mkConfiguration = name: { modules ? [], configuration ? ./${name}, this ? my.configurations.${name}, extraSpecialArgs ? { localUsername = my.username; localHostname = this.hostname; }, }: nameValuePair name (inputs.darwin.lib.darwinSystem { inherit (this) system; modules = modules ++ attrValues inputs.self.modules ++ attrValues inputs.self.darwinModules ++ optional (configuration != null) (import configuration); specialArgs = { inherit inputs this; inherit (inputs.self) lib; } // extraSpecialArgs; }); in mapAttrs' mkConfiguration { mairon.extraSpecialArgs = { # These values are managed by my employer. localUsername = "username"; localHostname = "hostname"; }; }