{ lib, inputs, outputs, self, kansaiPkgs, secrets, ... }: let defaultModules = with inputs; [ nix-index-database.nixosModules.nix-index sops-nix.nixosModules.sops ]; pcModules = [ inputs.nix-gaming.nixosModules.pipewireLowLatency ]; 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 pia.nixosModules.${pkgs.system}.default nur.nixosModules.nur chaotic.nixosModules.default ./kansai ] ++ defaultModules ++ pcModules; }; himeji = nixosSystem { pkgs = (kansaiPkgs { } )."x86_64-linux"; specialArgs = { inherit inputs outputs secrets self ; }; modules = [ ./himeji inputs.disko.nixosModules.disko ] ++ defaultModules; }; akashi = nixosSystem { modules = [ ./akashi ] ++ defaultModules ++ pcModules; pkgs = (kansaiPkgs { nixpkgsAllowUnfree = true; })."x86_64-linux"; specialArgs = { inherit inputs outputs secrets self ; }; }; }; }