guix-glicid/glicid/packages/virtualization.scm

89 lines
4.6 KiB
Scheme

(define-module (glicid packages virtualization)
#:use-module (guix packages)
#:use-module (guix gexp)
#:use-module (gnu packages)
#:use-module (guix utils)
#:use-module (gnu packages virtualization)
#:use-module (gnu packages storage)
#:use-module (guix download)
#:use-module (glicid utils))
(define-public qemu-latest
qemu)
(define-public qemu-minimal-latest
qemu-minimal)
(define-public qemu-with-rbd
(package
(inherit qemu-latest)
(version "8.2.1")
(name "qemu-with-rbd")
(source
(origin
(method url-fetch)
(uri (string-append "https://download.qemu.org/qemu-"version ".tar.xz"))
(sha256 (base32 "1gi9fyc6sk632bnqqp1jy1qciqxbamsva8jzghc9spqpb08paql5"))
(patches (search-patches "qemu-fix-agent-paths.patch"))
(modules '((guix build utils)))
(snippet
'(begin
(with-directory-excursion "pc-bios"
(for-each delete-file (find-files "." "^(bios|vgabios).*\\.bin$"))
(delete-file "openbios-ppc")
(delete-file "opensbi-riscv64-generic-fw_dynamic.bin")
(for-each delete-file (find-files "." "^(efi|pxe)-.*\\.rom$")))
(for-each delete-file-recursively
'("subprojects/dtc"
"roms/ipxe"
"roms/openbios"
"roms/opensbi"
"roms/seabios"))))))
(arguments
(substitute-keyword-arguments (package-arguments qemu)
((#:tests? _ #f)
#f)))
(inputs `(("ceph:lib" ,ceph "lib")
,@(package-inputs qemu)))))
(define-public qemu-minimal-with-rbd
(package
(inherit qemu-minimal-latest)
(version "8.2.1")
(name "qemu-minimal-with-rbd")
(source
(origin
(method url-fetch)
(uri (string-append "https://download.qemu.org/qemu-"version ".tar.xz"))
(sha256 (base32 "1gi9fyc6sk632bnqqp1jy1qciqxbamsva8jzghc9spqpb08paql5"))
(patches (search-patches "qemu-fix-agent-paths.patch"))
(modules '((guix build utils)))
(snippet
'(begin
(with-directory-excursion "pc-bios"
(for-each delete-file (find-files "." "^(bios|vgabios).*\\.bin$"))
(delete-file "openbios-ppc")
(delete-file "opensbi-riscv64-generic-fw_dynamic.bin")
(for-each delete-file (find-files "." "^(efi|pxe)-.*\\.rom$")))
(for-each delete-file-recursively
'("subprojects/dtc"
"roms/ipxe"
"roms/openbios"
"roms/opensbi"
"roms/seabios"))))))
(arguments
(substitute-keyword-arguments `(#:tests? #f
,@(package-arguments qemu-minimal))
))
(inputs `(("ceph:lib" ,ceph "lib")
,@(package-inputs qemu-minimal)))))
(define-public libvirt-8.5
(package
(inherit libvirt)
(name "libvirt")
(version "8.5.0")
(source (origin
(method url-fetch)
(uri (string-append "https://libvirt.org/sources/libvirt-" version ".tar.xz"))
(sha256 (base32 "0qnvjy7k4l52bb5xylvhm21blkgbhld0jzilhsdf6gdqw6srj7j0"))
(patches (search-patches "glicid/packages/patches/glicid-libvirt-add-install-prefix.patch"))))))