aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author宋文武 <iyzsong@member.fsf.org>2019-08-28 20:49:40 +0800
committer宋文武 <iyzsong@member.fsf.org>2019-09-11 19:15:30 +0800
commitef640db2f509f51ebfe3a6a66ba837ef3103bbb7 (patch)
tree4babb2f3074eb78980202e235a1b882537760ac7
parente135ef96868f8a50d2a5da536d4f693f577f4f80 (diff)
downloadpatches-ef640db2f509f51ebfe3a6a66ba837ef3103bbb7.tar
patches-ef640db2f509f51ebfe3a6a66ba837ef3103bbb7.tar.gz
gnu: libvirt: Don't wrap with PATH.
This reverts commit 903e051a71467bc96a054c9b4ed89348fdae8977 to fix <https://bugs.gnu.org/31365>. The full path of the 'ip' command is already embedded, and we want to search 'qemu' in PATH. * gnu/packages/virtualization.scm (libvirt): Remove 'wrap-libvirtd phase. Add configure flags to run qemu as 'nobody:kvm'. * gnu/services/virtualization.scm (libvirt-service-type): Add 'qemu' to the system profile.
-rw-r--r--gnu/packages/virtualization.scm17
-rw-r--r--gnu/services/virtualization.scm6
2 files changed, 9 insertions, 14 deletions
diff --git a/gnu/packages/virtualization.scm b/gnu/packages/virtualization.scm
index 26477714e4..f46c31df1f 100644
--- a/gnu/packages/virtualization.scm
+++ b/gnu/packages/virtualization.scm
@@ -401,7 +401,10 @@ manage system or application containers.")
(build-system gnu-build-system)
(arguments
`(#:configure-flags
- (list "--with-polkit"
+ (list "--with-qemu"
+ "--with-qemu-user=nobody"
+ "--with-qemu-group=kvm"
+ "--with-polkit"
(string-append "--docdir=" (assoc-ref %outputs "out") "/share/doc/"
,name "-" ,version)
"--sysconfdir=/etc"
@@ -431,23 +434,13 @@ manage system or application containers.")
(apply invoke "make" "install"
"sysconfdir=/tmp/etc"
"localstatedir=/tmp/var"
- make-flags)))
- (add-after 'install 'wrap-libvirtd
- (lambda* (#:key inputs outputs #:allow-other-keys)
- (let ((out (assoc-ref outputs "out")))
- (wrap-program (string-append out "/sbin/libvirtd")
- `("PATH" = (,(string-append (assoc-ref inputs "iproute")
- "/sbin")
- ,(string-append (assoc-ref inputs "qemu")
- "/bin"))))
- #t))))))
+ make-flags))))))
(inputs
`(("libxml2" ,libxml2)
("eudev" ,eudev)
("libpciaccess" ,libpciaccess)
("gnutls" ,gnutls)
("dbus" ,dbus)
- ("qemu" ,qemu)
("libpcap" ,libpcap)
("libnl" ,libnl)
("libuuid" ,util-linux)
diff --git a/gnu/services/virtualization.scm b/gnu/services/virtualization.scm
index 705ed84d06..03aedd326c 100644
--- a/gnu/services/virtualization.scm
+++ b/gnu/services/virtualization.scm
@@ -442,8 +442,10 @@ potential infinite waits blocking libvirt."))
(service-extension polkit-service-type
(compose list libvirt-configuration-libvirt))
(service-extension profile-service-type
- (compose list
- libvirt-configuration-libvirt))
+ (lambda (config)
+ (list
+ (libvirt-configuration-libvirt config)
+ qemu)))
(service-extension activation-service-type
%libvirt-activation)
(service-extension shepherd-root-service-type