summaryrefslogtreecommitdiff
path: root/gnu/packages/firmware.scm
diff options
context:
space:
mode:
authorEfraim Flashner <efraim@flashner.co.il>2024-04-30 16:26:29 +0300
committerEfraim Flashner <efraim@flashner.co.il>2024-05-27 10:26:23 +0300
commit2a45000102f5e9add6f6d47e4d460c40701cc9c9 (patch)
tree3d0ff360c89b536ea32faebbe1e97ba74d9e6293 /gnu/packages/firmware.scm
parentd0de3c76028722e347874d3bbeae854dd936776b (diff)
downloadguix-patches-2a45000102f5e9add6f6d47e4d460c40701cc9c9.tar
guix-patches-2a45000102f5e9add6f6d47e4d460c40701cc9c9.tar.gz
gnu: Add ovmf-i686.
* gnu/packages/firmware.scm (ovmf-i686): New variable. Change-Id: Ie5702435695e24ed1d2731152a89b0aeb9a050dd
Diffstat (limited to 'gnu/packages/firmware.scm')
-rw-r--r--gnu/packages/firmware.scm22
1 files changed, 22 insertions, 0 deletions
diff --git a/gnu/packages/firmware.scm b/gnu/packages/firmware.scm
index ea3654f01d..bd7b8f9026 100644
--- a/gnu/packages/firmware.scm
+++ b/gnu/packages/firmware.scm
@@ -1016,6 +1016,28 @@ Virtual Machines. OVMF contains a sample UEFI firmware for QEMU and KVM.")
"OVMF_CODE"
"OVMF_VARS"))))))))))))
+(define-public ovmf-i686
+ (let ((base (make-ovmf-firmware "i686")))
+ (package
+ (inherit base)
+ (arguments
+ (substitute-keyword-arguments (package-arguments base)
+ ((#:phases phases)
+ #~(modify-phases #$phases
+ (replace 'install
+ (lambda _
+ (let ((fmw (string-append #$output "/share/firmware")))
+ (mkdir-p fmw)
+ (for-each
+ (lambda (file)
+ (copy-file
+ (string-append "Build/OvmfIa32/RELEASE_GCC"
+ "/FV/" file ".fd")
+ (string-append fmw "/" (string-downcase file) "_ia32.bin")))
+ (list "OVMF"
+ "OVMF_CODE"
+ "OVMF_VARS"))))))))))))
+
(define-public ovmf
(let ((toolchain-ver "GCC5"))
(package