diff --git a/packages/virtualization.scm b/packages/virtualization.scm new file mode 100644 index 0000000..3e24723 --- /dev/null +++ b/packages/virtualization.scm @@ -0,0 +1,47 @@ +(define-module (packages virtualization) + #:use-module (guix packages) + #:use-module (guix utils) + #:use-module (gnu packages) + #:use-module (gnu packages package-management) + #:use-module (gnu packages build-tools) + #:use-module ((gnu packages virtualization) #:prefix virt:) + #:use-module (gnu packages firmware) + #:use-module (guix gexp)) + +(define-public libvirt + (package + (inherit virt:libvirt) + (name "libvirt") + (inputs + (modify-inputs (package-inputs virt:libvirt) + (append qemu))) + (arguments + (substitute-keyword-arguments (package-arguments virt:libvirt) + ((#:phases phases) + #~(modify-phases #$phases + (add-after 'install 'install-uefi + (lambda _ + (let ((fmw (string-append #$output "/share/qemu"))) + (mkdir-p fmw) + (copy-recursively #$(file-append qemu "/share/qemu") fmw)) + )) + )))))) + +(define-public virt-manager + (package + (inherit virt:virt-manager) + (name "virt-manager") + (inputs + (modify-inputs (package-inputs virt:virt-manager) + (append qemu))) + (arguments + (substitute-keyword-arguments (package-arguments virt:virt-manager) + ((#:phases phases) + #~(modify-phases #$phases + (add-after 'install 'install-uefi + (lambda _ + (let ((fmw (string-append #$output "/share/qemu"))) + (mkdir-p fmw) + (copy-recursively #$(file-append qemu "/share/firmware") fmw)) + )) + ))))))