aboutsummaryrefslogtreecommitdiff
path: root/infra/corenix/pkgs/coreboot-payload-seabios/default.nix
diff options
context:
space:
mode:
Diffstat (limited to 'infra/corenix/pkgs/coreboot-payload-seabios/default.nix')
-rw-r--r--infra/corenix/pkgs/coreboot-payload-seabios/default.nix20
1 files changed, 20 insertions, 0 deletions
diff --git a/infra/corenix/pkgs/coreboot-payload-seabios/default.nix b/infra/corenix/pkgs/coreboot-payload-seabios/default.nix
new file mode 100644
index 000000000000..72a104e1b046
--- /dev/null
+++ b/infra/corenix/pkgs/coreboot-payload-seabios/default.nix
@@ -0,0 +1,20 @@
+{ seabios, coreboot, stdenv, fetchurl, seabiosConfig ? {
+ CONFIG_COREBOOT = "y";
+ CONFIG_VGA_COREBOOT = "y";
+ CONFIG_BUILD_VGABIOS = "y";
+} }:
+
+seabios.overrideAttrs (oA: rec {
+ pname = "coreboot-payload-seabios";
+
+ configurePhase = ''
+ runHook preConfigure
+ cp ${coreboot.writeConfig seabiosConfig} .config
+ make olddefconfig
+ runHook postConfigure
+ '';
+ installPhase = ''
+ install -D out/bios.bin.elf -t $out
+ [ -f out/vgabios.bin ] && install -D out/vgabios.bin -t $out
+ '';
+})