{ lib, inputs, outputs, self, kansaiPkgs, secrets, ... }: let defaultModules = with inputs; [ nix-index-database.nixosModules.nix-index sops-nix.nixosModules.sops ]; pcModules = system: with inputs; [ nix-gaming.nixosModules.pipewireLowLatency pia.nixosModules.${system}.default ] ++ defaultModules; in { flake.nixosConfigurations = with lib; { kansai = let pkgs = (kansaiPkgs { nixpkgsAllowUnfree = true; nixpkgsCudaSupport = true; })."x86_64-linux"; in nixosSystem { inherit pkgs; specialArgs = { inherit inputs outputs secrets self ; }; modules = with inputs; [ home-manager.nixosModule nur.nixosModules.nur chaotic.nixosModules.default ./kansai ] ++ pcModules pkgs.system; }; himeji = nixosSystem { pkgs = (kansaiPkgs { } )."x86_64-linux"; specialArgs = { inherit inputs outputs secrets self ; }; modules = [ ./himeji inputs.disko.nixosModules.disko ] ++ defaultModules; }; akashi = let pkgs = (kansaiPkgs { nixpkgsAllowUnfree = true; })."x86_64-linux"; in nixosSystem { inherit pkgs; modules = [ ./akashi ] ++ pcModules pkgs.system; specialArgs = { inherit inputs outputs secrets self ; }; }; }; }