{ inputs }: { system , username , email , hostname , extraHomeManagerModules ? [ ] }: let systemConfig = import ../module/configuration.nix { inherit hostname username; }; homeManagerConfig = import ../module/home-manager.nix { inherit email; }; in inputs.darwin.lib.darwinSystem { inherit system; modules = [ { users.users.${username}.home = "/Users/${username}"; } systemConfig inputs.home-manager.darwinModules.home-manager { home-manager.useGlobalPkgs = true; home-manager.useUserPackages = true; home-manager.users."${username}" = inputs.nixpkgs.lib.modules.mkMerge ( [ homeManagerConfig ] ++ extraHomeManagerModules ); home-manager.backupFileExtension = "backup"; } ]; }