{ inputs, pkgs, pkgs-stable, attrs, system, ... }: let defaultModules = [ ./configuration.nix inputs.sops-nix.nixosModules.sops inputs.nix-index-database.nixosModules.nix-index # inputs.determinate.nixosModules.default # https://github.com/serokell/deploy-rs/issues/340 ] ++ builtins.attrValues (builtins.mapAttrs (name: _: ./modules/${name}) (builtins.readDir ./modules)); in { t14 = inputs.nixpkgs.lib.nixosSystem { inherit pkgs; specialArgs = { inherit inputs system attrs; host = { hostName = "t14"; inherit (attrs) username; }; }; modules = defaultModules ++ [ ./t14/configuration.nix inputs.nixos-hardware.nixosModules.lenovo-thinkpad-t14-amd-gen1 ]; }; consensus = inputs.nixpkgs-stable.lib.nixosSystem { pkgs = pkgs-stable; specialArgs = { pkgs-unstable = pkgs; inherit inputs system attrs; host = { hostName = "consensus"; inherit (attrs) username; }; }; modules = defaultModules ++ [ ./consensus/configuration.nix ]; }; zen = inputs.nixpkgs-stable.lib.nixosSystem { pkgs = pkgs-stable; specialArgs = { inherit inputs system attrs; host = { hostName = "zen"; inherit (attrs) username; }; }; modules = defaultModules ++ [ ./zen/configuration.nix ]; }; oracle1 = inputs.nixpkgs-stable.lib.nixosSystem { pkgs = pkgs-stable; specialArgs = { inherit inputs system attrs; host = { hostName = "oracle1"; inherit (attrs) username; }; }; modules = defaultModules ++ [ ./oracle/configuration.nix ]; }; }