{ inputs, ... }: with inputs; with nixpkgs.lib; { flake.nixosConfigurations = (lists.foldr ( name: spec: spec // { ${name} = nixpkgs.lib.nixosSystem { system = "x86_64-linux"; specialArgs = inputs // { inherit inputs; }; modules = [ ../global ../home/profile.nix ../home/user.nix ../package ./constant.nix ./channel.nix impermanence.nixosModules.impermanence home-manager.nixosModules.home-manager catppuccin.nixosModules.catppuccin { home-manager.useGlobalPkgs = true; home-manager.useUserPackages = true; } lanzaboote.nixosModules.lanzaboote ./${name} { networking.hostName = name; } ]; }; } ) { }) ( pipe ./. [ builtins.readDir (filterAttrs (n: ty: ty == "directory" && builtins.pathExists ./${n}/default.nix)) (mapAttrsToList (n: _: n)) ] ); }