modules/ryan-packages/virtualization.scm

f2d68275367f105a0b3c25d9ab3f9245f143a271 · 1.8 KB · 45 lines raw

1 ;;; Stolen from https://g.tylerm.dev/tylerm/dotfiles/raw/branch/main/modules/home-packages/virtualization.scm
2
3 (define-module (ryan-packages virtualization)
4 #:use-module (guix packages)
5 #:use-module (guix utils)
6 #:use-module (gnu packages)
7 #:use-module (gnu packages package-management)
8 #:use-module (gnu packages build-tools)
9 #:use-module (gnu packages virtualization)
10 #:use-module (gnu packages firmware)
11 #:use-module (guix gexp))
12
13 (define-public libvirt-ovmf
14 (package
15 (inherit libvirt)
16 (name "libvirt-ovmf")
17 (inputs
18 (modify-inputs (package-inputs libvirt)
19 (append qemu)))
20 (arguments
21 (substitute-keyword-arguments (package-arguments libvirt)
22 ((#:phases phases)
23 #~(modify-phases #$phases
24 (add-after 'install 'install-firmware
25 (lambda _
26 (let ((fmw (string-append #$output "/share/qemu")))
27 (mkdir-p fmw)
28 (copy-recursively #$(file-append qemu "/share/qemu") fmw))))))))))
29
30 (define-public virt-manager-ovmf
31 (package
32 (inherit virt-manager)
33 (name "virt-manager-ovmf")
34 (inputs
35 (modify-inputs (package-inputs virt-manager)
36 (append qemu)))
37 (arguments
38 (substitute-keyword-arguments (package-arguments virt-manager)
39 ((#:phases phases)
40 #~(modify-phases #$phases
41 (add-after 'install 'install-firmware
42 (lambda _
43 (let ((fmw (string-append #$output "/share/qemu")))
44 (mkdir-p fmw)
45 (copy-recursively #$(file-append qemu "/share/firmware") fmw))))))))))