xen: fix IPXE sourcing

`xl` needs a full path to the efirom executable.
This does not fix the qemu-dm issue. A stubdom is still required.

Reported-by: HeHongbo <hehongbo@mail.com>
Signed-off-by: Fernando Rodrigues <alpha@sigmasquadron.net>
This commit is contained in:
Fernando Rodrigues 2024-11-12 21:51:59 +00:00
parent 1200719b87
commit e3b83d4525
No known key found for this signature in database
GPG Key ID: CC3AE2EA00000000
2 changed files with 7 additions and 3 deletions

View File

@ -265,7 +265,7 @@ stdenv.mkDerivation (finalAttrs: {
"--with-system-qemu"
(if withSeaBIOS then "--with-system-seabios=${systemSeaBIOS.firmware}" else "--disable-seabios")
(if withOVMF then "--with-system-ovmf=${OVMF.firmware}" else "--disable-ovmf")
(if withIPXE then "--with-system-ipxe=${ipxe}" else "--disable-ipxe")
(if withIPXE then "--with-system-ipxe=${ipxe.firmware}" else "--disable-ipxe")
(enableFeature withFlask "xsmpolicy")
];

View File

@ -14,6 +14,7 @@
embedScript ? null,
additionalTargets ? { },
additionalOptions ? [ ],
firmwareBinary ? "ipxe.efirom",
}:
let
@ -130,8 +131,11 @@ stdenv.mkDerivation (finalAttrs: {
enableParallelBuilding = true;
passthru.updateScript = unstableGitUpdater {
tagPrefix = "v";
passthru = {
firmware = "${finalAttrs.finalPackage}/${firmwareBinary}";
updateScript = unstableGitUpdater {
tagPrefix = "v";
};
};
meta = {