{ self, inputs, hostName, userName, flakeDir, wm, ... }: { flake = let pkgs = inputs.nixpkgs.legacyPackages.x86_64-linux; sec = import ./secrets.nix; args = rec { # IMPORTS LET_IN FROM HOSTS TO ALL SYSTEM # DIRECTORIES homeDir = "${flakeDir}/modules/home"; nixosDir = "${flakeDir}/modules/nixos"; # OTHER True = { enable = true; }; False = { enable = false; }; # SYSINFO stateVersion = "24.05"; # IDK platform = "x86_64-linux"; inherit self inputs hostName userName flakeDir sec wm; }; in with inputs; { nixosConfigurations.${hostName} = nixpkgs.lib.nixosSystem { modules = [ ../${hostName}/host ]; specialArgs = args; }; homeConfigurations.${userName} = home-manager.lib.homeManagerConfiguration { modules = [ ../${hostName}/home ]; extraSpecialArgs = args; inherit pkgs; }; }; }