aboutsummaryrefslogtreecommitdiff
path: root/infra/corenix/default.nix
blob: 08cceadc7f846ff3bdf0048fe9b09c9815fc39e3 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
{ ... }:

let
  sources = import ./nix/sources.nix;
  nixpkgsOptions = {
    system = "x86_64-linux";
    overlays = [ (import ./pkgs/overlay.nix) ];
  };
  pkgs = import sources.nixpkgs nixpkgsOptions;
  inherit (pkgs) lib;

  makeDevice = configFile:
    (lib.evalModules {
      modules = [
        ({ ... }: { nixpkgs = nixpkgsOptions; })
        ("${sources.nixpkgs}/nixos/modules/misc/assertions.nix")
        ("${sources.nixpkgs}/nixos/modules/misc/nixpkgs.nix")
        ./modules
        configFile
      ];
    }).config.corenix.rom;

in rec {
  inherit makeDevice;

  inherit (pkgs)
    coreboot coreboot-payload-grub2 coreboot-payload-tianocore
    coreboot-payload-seabios coreboot-payload-tint
    coreboot-payload-nvramcui coreboot-payload-coreinfo;

  milan-x1c = makeDevice ./configs/milan/milan-x1c.nix;
  milan-x230t = makeDevice ./configs/milan/milan-x230t.nix;
  milan-x230-fhd = makeDevice ./configs/milan/milan-x230-fhd.nix;
  kookie-uwu = makeDevice ./configs/kookie/uwu.nix;
}