{ inputs.nixpkgs = { type = "github"; owner = "nixos"; repo = "nixpkgs"; ref = "master"; }; description = "A collections of derivations for coreboot and payloads"; outputs = { self, nixpkgs }: { packages.x86_64-linux = let nixpkgsOptions = { system = "x86_64-linux"; overlays = [ (import ./pkgs/overlay.nix) ]; }; pkgs = import nixpkgs nixpkgsOptions; inherit (pkgs) lib; makeDevice = configFile: with lib.evalModules { modules = [ ({ ... }: { nixpkgs = nixpkgsOptions; }) ("${nixpkgs}/nixos/modules/misc/assertions.nix") ("${nixpkgs}/nixos/modules/misc/nixpkgs.nix") ./modules configFile ]; }; config.coreboot.rom; in { inherit (pkgs) coreboot-payload-grub2 coreboot-payload-tianocore coreboot; milan-x1c = makeDevice ./configs/milan-x1c.nix; }; }; }