mirror of
https://git.in.rschanz.org/ryan77627/guix.git
synced 2024-12-24 05:18:07 -05:00
gnu: Remove QEMU-KVM, which is no longer needed.
* gnu/packages/qemu.scm (qemu-kvm): Remove. (qemu): Incorporate parts of QEMU-KVM that used to be inherited. (qemu-kvm/smb-shares): Rename to... (qemu/smb-shares): ... this. * gnu/system/vm.scm (expression->derivation-in-linux-vm): Adjust accordingly.
This commit is contained in:
parent
e928da09c9
commit
50731c51a4
2 changed files with 34 additions and 60 deletions
|
@ -37,17 +37,18 @@ (define-module (gnu packages qemu)
|
|||
#:use-module (gnu packages xorg)
|
||||
#:use-module (gnu packages perl))
|
||||
|
||||
(define-public qemu-kvm
|
||||
(define-public qemu
|
||||
;; Since QEMU 1.3, it incorporates KVM support formerly found in QEMU-KVM.
|
||||
(package
|
||||
(name "qemu-kvm")
|
||||
(version "1.2.0")
|
||||
(name "qemu")
|
||||
(version "1.5.1")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://sourceforge/kvm/qemu-kvm/"
|
||||
version "/qemu-kvm-" version ".tar.gz"))
|
||||
(uri (string-append "http://wiki.qemu-project.org/download/qemu-"
|
||||
version ".tar.bz2"))
|
||||
(sha256
|
||||
(base32
|
||||
"018vb5nmk2fsm143bs2bl2wirhasd4b10d7jchl32zik4inbk2p9"))))
|
||||
"1s7316pgizpayr472la8p8a4vhv7ymmzd5qlbkmq6y9q5zpa25ac"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
'(#:phases (alist-replace
|
||||
|
@ -59,6 +60,10 @@ (define-public qemu-kvm
|
|||
(samba (assoc-ref inputs "samba")))
|
||||
(setenv "SHELL" (which "bash"))
|
||||
|
||||
;; While we're at it, patch for tests.
|
||||
(substitute* "tests/libqtest.c"
|
||||
(("/bin/sh") (which "sh")))
|
||||
|
||||
;; The binaries need to be linked against -lrt.
|
||||
(setenv "LDFLAGS" "-lrt")
|
||||
(zero?
|
||||
|
@ -68,6 +73,7 @@ (define-public qemu-kvm
|
|||
(string-append "--smbd=" samba
|
||||
"/sbin/smbd")))))
|
||||
%standard-phases)))
|
||||
|
||||
(inputs ; TODO: Add optional inputs.
|
||||
`(;; ("mesa" ,mesa)
|
||||
;; ("libaio" ,libaio)
|
||||
|
@ -86,66 +92,34 @@ (define-public qemu-kvm
|
|||
("zlib" ,zlib)
|
||||
("attr" ,attr)
|
||||
("samba" ,samba))) ; an optional dependency
|
||||
(home-page "http://www.linux-kvm.org/")
|
||||
(synopsis
|
||||
"Virtualization for Linux on x86 hardware containing virtualization extensions")
|
||||
(description
|
||||
"KVM (for Kernel-based Virtual Machine) is a full virtualization solution
|
||||
for Linux on x86 hardware containing virtualization extensions (Intel VT or
|
||||
AMD-V). It consists of a loadable kernel module, kvm.ko, that provides the
|
||||
core virtualization infrastructure and a processor specific module,
|
||||
kvm-intel.ko or kvm-amd.ko. KVM also requires a modified QEMU although work is
|
||||
underway to get the required changes upstream.")
|
||||
|
||||
;; Many files are GPLv2+, but some are GPLv2-only---e.g., `memory.c'.
|
||||
(license gpl2)))
|
||||
|
||||
(define-public qemu-kvm/smb-shares
|
||||
;; A patched QEMU-KVM where `-net smb' yields two shares instead of one: one
|
||||
;; for the store, and another one for exchanges with the host.
|
||||
(package (inherit qemu-kvm)
|
||||
(name "qemu-kvm-with-multiple-smb-shares")
|
||||
(inputs `(,@(package-inputs qemu-kvm)
|
||||
("patch/smb-shares"
|
||||
,(search-patch "qemu-multiple-smb-shares.patch"))))
|
||||
(arguments
|
||||
`(#:patches (list (assoc-ref %build-inputs "patch/smb-shares"))
|
||||
,@(package-arguments qemu-kvm)))))
|
||||
|
||||
(define-public qemu
|
||||
;; The real one, with a complete target list.
|
||||
(package (inherit qemu-kvm)
|
||||
(name "qemu")
|
||||
(version "1.5.1")
|
||||
(location (source-properties->location (current-source-location)))
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "http://wiki.qemu-project.org/download/qemu-"
|
||||
version ".tar.bz2"))
|
||||
(sha256
|
||||
(base32
|
||||
"1s7316pgizpayr472la8p8a4vhv7ymmzd5qlbkmq6y9q5zpa25ac"))))
|
||||
(arguments
|
||||
(substitute-keyword-arguments (package-arguments qemu-kvm)
|
||||
((#:phases phases)
|
||||
`(alist-cons-before
|
||||
'build 'pre-build
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(substitute* "tests/libqtest.c"
|
||||
(("/bin/sh") (which "sh"))))
|
||||
,phases))))
|
||||
(native-inputs `(("perl" ,perl)))
|
||||
|
||||
(home-page "http://www.qemu-project.org")
|
||||
(synopsis "Machine emulator and virtualizer")
|
||||
(description
|
||||
"QEMU is a generic and open source machine emulator and virtualizer.
|
||||
"QEMU is a generic machine emulator and virtualizer.
|
||||
|
||||
When used as a machine emulator, QEMU can run OSes and programs made for one
|
||||
machine (e.g. an ARM board) on a different machine
|
||||
(e.g. your own PC). By using dynamic translation, it achieves very good
|
||||
performance.
|
||||
machine (e.g. an ARM board) on a different machine---e.g., your own PC. By
|
||||
using dynamic translation, it achieves very good performance.
|
||||
|
||||
When used as a virtualizer, QEMU achieves near native performances by
|
||||
executing the guest code directly on the host CPU. QEMU supports
|
||||
virtualization when executing under the Xen hypervisor or using
|
||||
the KVM kernel module in Linux. When using KVM, QEMU can virtualize x86,
|
||||
server and embedded PowerPC, and S390 guests.")))
|
||||
server and embedded PowerPC, and S390 guests.")
|
||||
|
||||
;; Many files are GPLv2+, but some are GPLv2-only---e.g., `memory.c'.
|
||||
(license gpl2)))
|
||||
|
||||
(define-public qemu/smb-shares
|
||||
;; A patched QEMU where `-net smb' yields two shares instead of one: one for
|
||||
;; the store, and another one for exchanges with the host.
|
||||
(package (inherit qemu)
|
||||
(name "qemu-with-multiple-smb-shares")
|
||||
(inputs `(,@(package-inputs qemu)
|
||||
("patch/smb-shares"
|
||||
,(search-patch "qemu-multiple-smb-shares.patch"))))
|
||||
(arguments
|
||||
`(#:patches (list (assoc-ref %build-inputs "patch/smb-shares"))
|
||||
,@(package-arguments qemu)))))
|
||||
|
|
|
@ -44,7 +44,7 @@ (define* (expression->derivation-in-linux-vm store name system exp inputs
|
|||
#:key
|
||||
(linux linux-libre)
|
||||
(initrd qemu-initrd)
|
||||
(qemu qemu-kvm/smb-shares)
|
||||
(qemu qemu/smb-shares)
|
||||
(env-vars '())
|
||||
(modules '())
|
||||
(guile-for-build
|
||||
|
|
Loading…
Reference in a new issue