* [PATCH 1/5] gnu: Add libvirt.
2016-08-03 15:45 [PATCH 0/5] Add virt-manager Ricardo Wurmus
@ 2016-08-03 15:45 ` Ricardo Wurmus
2016-08-07 2:26 ` Leo Famulari
2016-08-03 15:46 ` [PATCH 2/5] gnu: Add libosinfo Ricardo Wurmus
` (3 subsequent siblings)
4 siblings, 1 reply; 11+ messages in thread
From: Ricardo Wurmus @ 2016-08-03 15:45 UTC (permalink / raw)
To: guix-devel
* gnu/packages/qemu.scm (libvirt): New variable.
---
gnu/packages/qemu.scm | 84 +++++++++++++++++++++++++++++++++++++++++++++++++--
1 file changed, 82 insertions(+), 2 deletions(-)
diff --git a/gnu/packages/qemu.scm b/gnu/packages/qemu.scm
index 911ed4c..a12a3f6 100644
--- a/gnu/packages/qemu.scm
+++ b/gnu/packages/qemu.scm
@@ -2,6 +2,7 @@
;;; Copyright © 2013, 2014, 2015, 2016 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2015, 2016 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
+;;; Copyright © 2016 Ricardo Wurmus <rekado@elephly.net>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -20,9 +21,13 @@
(define-module (gnu packages qemu)
#:use-module (gnu packages)
- #:use-module (gnu packages autotools)
+ #:use-module (gnu packages admin)
#:use-module (gnu packages attr)
+ #:use-module (gnu packages autotools)
#:use-module (gnu packages compression)
+ #:use-module (gnu packages curl)
+ #:use-module (gnu packages cyrus-sasl)
+ #:use-module (gnu packages disk)
#:use-module (gnu packages gl)
#:use-module (gnu packages glib)
#:use-module (gnu packages image)
@@ -31,13 +36,17 @@
#:use-module (gnu packages ncurses)
#:use-module (gnu packages perl)
#:use-module (gnu packages pkg-config)
+ #:use-module (gnu packages polkit)
#:use-module (gnu packages python)
#:use-module (gnu packages sdl)
#:use-module (gnu packages texinfo)
+ #:use-module (gnu packages tls)
+ #:use-module (gnu packages web)
#:use-module (gnu packages xdisorg)
+ #:use-module (gnu packages xml)
#:use-module (guix build-system gnu)
#:use-module (guix download)
- #:use-module ((guix licenses) #:select (gpl2))
+ #:use-module ((guix licenses) #:select (gpl2 lgpl2.1+))
#:use-module (guix packages)
#:use-module (guix utils)
#:use-module (srfi srfi-1))
@@ -176,3 +185,74 @@ server and embedded PowerPC, and S390 guests.")
;; Remove dependencies on optional libraries, notably GUI libraries.
(inputs (fold alist-delete (package-inputs qemu)
'("sdl" "mesa" "libusb")))))
+
+(define-public libvirt
+ (package
+ (name "libvirt")
+ (version "2.1.0")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "http://libvirt.org/sources/libvirt-"
+ version ".tar.xz"))
+ (sha256
+ (base32
+ "0sriasjc573c519yqw1hcfb3qqjcsm9hm8vayw0anwkl6di9ay8s"))))
+ (build-system gnu-build-system)
+ (arguments
+ `(;; FAIL: virshtest
+ ;; FAIL: virfirewalltest
+ ;; FAIL: virkmodtest
+ ;; FAIL: virnetsockettest
+ ;; FAIL: networkxml2firewalltest
+ ;; FAIL: nwfilterebiptablestest
+ ;; FAIL: nwfilterxml2firewalltest
+ ;; Times out after PASS: virsh-vcpupin
+ #:tests? #f
+ #:configure-flags
+ (list "--with-polkit"
+ "--localstatedir=/var")
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'fix-tests
+ (lambda _
+ (substitute* '("tests/commandtest.c"
+ "gnulib/tests/test-posix_spawn1.c"
+ "gnulib/tests/test-posix_spawn2.c")
+ (("/bin/sh") (which "bash")))
+ #t))
+ (add-after 'unpack 'do-not-mkdir-in-/var
+ ;; Since the localstatedir should be /var at runtime, we must
+ ;; prevent writing to /var at installation time.
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out"))
+ (localstatedir (string-append out "/var")))
+ (substitute* '("src/Makefile.in"
+ "daemon/Makefile.in")
+ (("\\$\\(DESTDIR\\)\\$\\(localstatedir)") localstatedir)))
+ #t)))))
+ (inputs
+ `(("libxml2" ,libxml2)
+ ("gnutls" ,gnutls)
+ ("dbus" ,dbus)
+ ("qemu" ,qemu)
+ ("polkit" ,polkit)
+ ("libpcap" ,libpcap)
+ ("libnl" ,libnl)
+ ("libuuid" ,util-linux)
+ ("lvm2" ,lvm2) ; for libdevmapper
+ ("curl" ,curl)
+ ("openssl" ,openssl)
+ ("cyrus-sasl" ,cyrus-sasl)
+ ("perl" ,perl)
+ ("python" ,python-2)
+ ("libyajl" ,libyajl)
+ ("audit" ,audit)))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (home-page "http://libvirt.org")
+ (synopsis "Simple API for virtualization")
+ (description "Libvirt is a C toolkit to interact with the virtualization
+capabilities of recent versions of Linux. The library aims at providing long
+term stable C API initially for the Xen paravirtualization but should be able
+to integrate other virtualization mechanisms if needed.")
+ (license lgpl2.1+)))
--
2.9.0
^ permalink raw reply related [flat|nested] 11+ messages in thread
* Re: [PATCH 1/5] gnu: Add libvirt.
2016-08-03 15:45 ` [PATCH 1/5] gnu: Add libvirt Ricardo Wurmus
@ 2016-08-07 2:26 ` Leo Famulari
2016-08-10 14:13 ` Ricardo Wurmus
0 siblings, 1 reply; 11+ messages in thread
From: Leo Famulari @ 2016-08-07 2:26 UTC (permalink / raw)
To: Ricardo Wurmus; +Cc: guix-devel
On Wed, Aug 03, 2016 at 05:45:59PM +0200, Ricardo Wurmus wrote:
> + (add-after 'unpack 'fix-tests
> + (lambda _
> + (substitute* '("tests/commandtest.c"
> + "gnulib/tests/test-posix_spawn1.c"
> + "gnulib/tests/test-posix_spawn2.c")
> + (("/bin/sh") (which "bash")))
> + #t))
According to the man page, Bash changes its behavior to be more POSIX-y
when called as sh. So, how about replacing these shebangs with (which
"sh"), since their names suggest they are testing some POSIX behavior
(at least the latter two tests).
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [PATCH 1/5] gnu: Add libvirt.
2016-08-07 2:26 ` Leo Famulari
@ 2016-08-10 14:13 ` Ricardo Wurmus
0 siblings, 0 replies; 11+ messages in thread
From: Ricardo Wurmus @ 2016-08-10 14:13 UTC (permalink / raw)
To: Leo Famulari; +Cc: guix-devel
Leo Famulari <leo@famulari.name> writes:
> On Wed, Aug 03, 2016 at 05:45:59PM +0200, Ricardo Wurmus wrote:
>> + (add-after 'unpack 'fix-tests
>> + (lambda _
>> + (substitute* '("tests/commandtest.c"
>> + "gnulib/tests/test-posix_spawn1.c"
>> + "gnulib/tests/test-posix_spawn2.c")
>> + (("/bin/sh") (which "bash")))
>> + #t))
>
> According to the man page, Bash changes its behavior to be more POSIX-y
> when called as sh. So, how about replacing these shebangs with (which
> "sh"), since their names suggest they are testing some POSIX behavior
> (at least the latter two tests).
Good point. I’ll change this.
~~ Ricardo
^ permalink raw reply [flat|nested] 11+ messages in thread
* [PATCH 2/5] gnu: Add libosinfo.
2016-08-03 15:45 [PATCH 0/5] Add virt-manager Ricardo Wurmus
2016-08-03 15:45 ` [PATCH 1/5] gnu: Add libvirt Ricardo Wurmus
@ 2016-08-03 15:46 ` Ricardo Wurmus
2016-08-07 2:30 ` Leo Famulari
2016-08-03 15:46 ` [PATCH 3/5] gnu: Add libvirt-glib Ricardo Wurmus
` (2 subsequent siblings)
4 siblings, 1 reply; 11+ messages in thread
From: Ricardo Wurmus @ 2016-08-03 15:46 UTC (permalink / raw)
To: guix-devel
* gnu/packages/qemu.scm (libosinfo): New variable.
---
gnu/packages/qemu.scm | 61 +++++++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 61 insertions(+)
diff --git a/gnu/packages/qemu.scm b/gnu/packages/qemu.scm
index a12a3f6..36faa7c 100644
--- a/gnu/packages/qemu.scm
+++ b/gnu/packages/qemu.scm
@@ -24,12 +24,15 @@
#:use-module (gnu packages admin)
#:use-module (gnu packages attr)
#:use-module (gnu packages autotools)
+ #:use-module (gnu packages check)
#:use-module (gnu packages compression)
#:use-module (gnu packages curl)
#:use-module (gnu packages cyrus-sasl)
#:use-module (gnu packages disk)
#:use-module (gnu packages gl)
#:use-module (gnu packages glib)
+ #:use-module (gnu packages gnome)
+ #:use-module (gnu packages gtk)
#:use-module (gnu packages image)
#:use-module (gnu packages libusb)
#:use-module (gnu packages linux)
@@ -186,6 +189,64 @@ server and embedded PowerPC, and S390 guests.")
(inputs (fold alist-delete (package-inputs qemu)
'("sdl" "mesa" "libusb")))))
+(define-public libosinfo
+ (package
+ (name "libosinfo")
+ (version "0.3.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "https://fedorahosted.org/releases/l/i/libosinfo/libosinfo-"
+ version ".tar.gz"))
+ (sha256
+ (base32
+ "151qrzmafxww5yfamrr7phk8217xmihfhazpb597vdv87na75cjh"))))
+ (build-system gnu-build-system)
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'copy-ids
+ (lambda* (#:key inputs #:allow-other-keys)
+ (copy-file (assoc-ref inputs "pci.ids") "data/pci.ids")
+ (copy-file (assoc-ref inputs "usb.ids") "data/usb.ids")
+ #t)))))
+ (inputs
+ `(("libsoup" ,libsoup)
+ ("libxml2" ,libxml2)
+ ("libxslt" ,libxslt)
+ ("gobject-introspection" ,gobject-introspection)))
+ (native-inputs
+ `(("check" ,check)
+ ("glib" ,glib "bin") ; glib-mkenums, etc.
+ ("gtk-doc" ,gtk-doc)
+ ("vala" ,vala)
+ ("intltool" ,intltool)
+ ("pkg-config" ,pkg-config)
+ ("pci.ids"
+ ,(origin
+ (method url-fetch)
+ (uri "http://pciids.sourceforge.net/v2.2/pci.ids")
+ (sha256
+ (base32
+ "0h8v0lrlrxkfnjiwnwiq86zyvb8qa2n3844dp1m01lh2nb2fliqw"))))
+ ("usb.ids"
+ ,(origin
+ (method url-fetch)
+ ;; FIXME: there is no versioned URL
+ (uri "http://www.linux-usb.org/usb.ids")
+ (sha256
+ (base32
+ "0s7s5lj75srx3fwl3gd4n0dsdpbxv63q78slv3qx4zp8mgh4s8a9"))))))
+ (home-page "https://libosinfo.org/")
+ (synopsis "Operating system information database")
+ (description "libosinfo is a GObject based library API for managing
+information about operating systems, hypervisors and the (virtual) hardware
+devices they can support. It includes a database containing device metadata
+and provides APIs to match/identify optimal devices for deploying an operating
+system on a hypervisor. Via GObject Introspection, the API is available in
+all common programming languages. Vala bindings are also provided.")
+ (license lgpl2.1+)))
+
(define-public libvirt
(package
(name "libvirt")
--
2.9.0
^ permalink raw reply related [flat|nested] 11+ messages in thread
* Re: [PATCH 2/5] gnu: Add libosinfo.
2016-08-03 15:46 ` [PATCH 2/5] gnu: Add libosinfo Ricardo Wurmus
@ 2016-08-07 2:30 ` Leo Famulari
2016-08-11 16:41 ` Ricardo Wurmus
2016-08-12 18:17 ` Ricardo Wurmus
0 siblings, 2 replies; 11+ messages in thread
From: Leo Famulari @ 2016-08-07 2:30 UTC (permalink / raw)
To: Ricardo Wurmus; +Cc: guix-devel
On Wed, Aug 03, 2016 at 05:46:00PM +0200, Ricardo Wurmus wrote:
> * gnu/packages/qemu.scm (libosinfo): New variable.
> + ("usb.ids"
> + ,(origin
> + (method url-fetch)
> + ;; FIXME: there is no versioned URL
> + (uri "http://www.linux-usb.org/usb.ids")
Is it worth sending them a message asking for a version URL?
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [PATCH 2/5] gnu: Add libosinfo.
2016-08-07 2:30 ` Leo Famulari
@ 2016-08-11 16:41 ` Ricardo Wurmus
2016-08-12 18:17 ` Ricardo Wurmus
1 sibling, 0 replies; 11+ messages in thread
From: Ricardo Wurmus @ 2016-08-11 16:41 UTC (permalink / raw)
To: Leo Famulari; +Cc: guix-devel
Leo Famulari <leo@famulari.name> writes:
> On Wed, Aug 03, 2016 at 05:46:00PM +0200, Ricardo Wurmus wrote:
>> * gnu/packages/qemu.scm (libosinfo): New variable.
>
>> + ("usb.ids"
>> + ,(origin
>> + (method url-fetch)
>> + ;; FIXME: there is no versioned URL
>> + (uri "http://www.linux-usb.org/usb.ids")
>
> Is it worth sending them a message asking for a version URL?
Yes, I just sent them an email to ask for either a versioned URL or
read-only access to the repository.
~~ Ricardo
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [PATCH 2/5] gnu: Add libosinfo.
2016-08-07 2:30 ` Leo Famulari
2016-08-11 16:41 ` Ricardo Wurmus
@ 2016-08-12 18:17 ` Ricardo Wurmus
1 sibling, 0 replies; 11+ messages in thread
From: Ricardo Wurmus @ 2016-08-12 18:17 UTC (permalink / raw)
To: Leo Famulari; +Cc: guix-devel
Leo Famulari <leo@famulari.name> writes:
> On Wed, Aug 03, 2016 at 05:46:00PM +0200, Ricardo Wurmus wrote:
>> * gnu/packages/qemu.scm (libosinfo): New variable.
>
>> + ("usb.ids"
>> + ,(origin
>> + (method url-fetch)
>> + ;; FIXME: there is no versioned URL
>> + (uri "http://www.linux-usb.org/usb.ids")
>
> Is it worth sending them a message asking for a version URL?
They already replied to my message and I updated the patch to use the
versioned URL. I’ll push the patches in a moment.
~~ Ricardo
^ permalink raw reply [flat|nested] 11+ messages in thread
* [PATCH 3/5] gnu: Add libvirt-glib.
2016-08-03 15:45 [PATCH 0/5] Add virt-manager Ricardo Wurmus
2016-08-03 15:45 ` [PATCH 1/5] gnu: Add libvirt Ricardo Wurmus
2016-08-03 15:46 ` [PATCH 2/5] gnu: Add libosinfo Ricardo Wurmus
@ 2016-08-03 15:46 ` Ricardo Wurmus
2016-08-03 15:46 ` [PATCH 4/5] gnu: Add python-libvirt Ricardo Wurmus
2016-08-03 15:46 ` [PATCH 5/5] gnu: Add virt-manager Ricardo Wurmus
4 siblings, 0 replies; 11+ messages in thread
From: Ricardo Wurmus @ 2016-08-03 15:46 UTC (permalink / raw)
To: guix-devel
* gnu/packages/qemu.scm (libvirt-glib): New variable.
---
gnu/packages/qemu.scm | 48 ++++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 48 insertions(+)
diff --git a/gnu/packages/qemu.scm b/gnu/packages/qemu.scm
index 36faa7c..a577cd1 100644
--- a/gnu/packages/qemu.scm
+++ b/gnu/packages/qemu.scm
@@ -317,3 +317,51 @@ capabilities of recent versions of Linux. The library aims at providing long
term stable C API initially for the Xen paravirtualization but should be able
to integrate other virtualization mechanisms if needed.")
(license lgpl2.1+)))
+
+(define-public libvirt-glib
+ (package
+ (name "libvirt-glib")
+ (version "0.2.3")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "ftp://libvirt.org/libvirt/glib/"
+ "libvirt-glib-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1pahj8qa7k2307sd57rwqwq1hijya02v0sxk91hl3cw48niimcf3"))))
+ (build-system gnu-build-system)
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'fix-tests
+ (lambda _
+ (substitute* "tests/test-events.c"
+ (("/bin/true") (which "true")))
+ #t)))))
+ (inputs
+ `(("libxml2" ,libxml2)
+ ("libvirt" ,libvirt)
+ ("gobject-introspection" ,gobject-introspection)
+ ("glib" ,glib)
+ ("openssl" ,openssl)
+ ("cyrus-sasl" ,cyrus-sasl)
+ ("lvm2" ,lvm2) ; for libdevmapper
+ ("libyajl" ,libyajl)))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)
+ ("intltool" ,intltool)
+ ("glib" ,glib "bin")
+ ("vala" ,vala)))
+ (home-page "http://libvirt.org")
+ (synopsis "GLib wrapper around libvirt")
+ (description "libvirt-glib wraps the libvirt library to provide a
+high-level object-oriented API better suited for glib-based applications, via
+three libraries:
+
+@enumerate
+@item libvirt-glib - GLib main loop integration & misc helper APIs
+@item libvirt-gconfig - GObjects for manipulating libvirt XML documents
+@item libvirt-gobject - GObjects for managing libvirt objects
+@end enumerate
+")
+ (license lgpl2.1+)))
--
2.9.0
^ permalink raw reply related [flat|nested] 11+ messages in thread
* [PATCH 4/5] gnu: Add python-libvirt.
2016-08-03 15:45 [PATCH 0/5] Add virt-manager Ricardo Wurmus
` (2 preceding siblings ...)
2016-08-03 15:46 ` [PATCH 3/5] gnu: Add libvirt-glib Ricardo Wurmus
@ 2016-08-03 15:46 ` Ricardo Wurmus
2016-08-03 15:46 ` [PATCH 5/5] gnu: Add virt-manager Ricardo Wurmus
4 siblings, 0 replies; 11+ messages in thread
From: Ricardo Wurmus @ 2016-08-03 15:46 UTC (permalink / raw)
To: guix-devel
* gnu/packages/qemu.scm (python-libvirt, python2-libvirt): New
variables.
---
gnu/packages/qemu.scm | 37 +++++++++++++++++++++++++++++++++++++
1 file changed, 37 insertions(+)
diff --git a/gnu/packages/qemu.scm b/gnu/packages/qemu.scm
index a577cd1..6c36815 100644
--- a/gnu/packages/qemu.scm
+++ b/gnu/packages/qemu.scm
@@ -48,6 +48,7 @@
#:use-module (gnu packages xdisorg)
#:use-module (gnu packages xml)
#:use-module (guix build-system gnu)
+ #:use-module (guix build-system python)
#:use-module (guix download)
#:use-module ((guix licenses) #:select (gpl2 lgpl2.1+))
#:use-module (guix packages)
@@ -365,3 +366,39 @@ three libraries:
@end enumerate
")
(license lgpl2.1+)))
+
+(define-public python-libvirt
+ (package
+ (name "python-libvirt")
+ (version "2.0.0")
+ (source (origin
+ (method url-fetch)
+ (uri (pypi-uri "libvirt-python" version))
+ (sha256
+ (base32
+ "0h0x5lpsx97bvw20pzfcsdmmivximddq4qmn8fk0n55dqv0wn5kq"))))
+ (build-system python-build-system)
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'patch-nosetests-path
+ (lambda* (#:key inputs #:allow-other-keys)
+ (substitute* "setup.py"
+ (("sys.executable, \"/usr/bin/nosetests\"")
+ (string-append "\"" (which "bash") "\", \""
+ (which "nosetests") "\"")))
+ #t)))))
+ (inputs
+ `(("libvirt" ,libvirt)
+ ("python-lxml" ,python-lxml)))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)
+ ("python-nose" ,python-nose)))
+ (home-page "http://libvirt.org")
+ (synopsis "Python bindings to libvirt")
+ (description "This package provides Python bindings to the libvirt
+virtualization library.")
+ (license lgpl2.1+)))
+
+(define-public python2-libvirt
+ (package-with-python2 python-libvirt))
--
2.9.0
^ permalink raw reply related [flat|nested] 11+ messages in thread
* [PATCH 5/5] gnu: Add virt-manager.
2016-08-03 15:45 [PATCH 0/5] Add virt-manager Ricardo Wurmus
` (3 preceding siblings ...)
2016-08-03 15:46 ` [PATCH 4/5] gnu: Add python-libvirt Ricardo Wurmus
@ 2016-08-03 15:46 ` Ricardo Wurmus
4 siblings, 0 replies; 11+ messages in thread
From: Ricardo Wurmus @ 2016-08-03 15:46 UTC (permalink / raw)
To: guix-devel
* gnu/packages/qemu.scm (virt-manager): New variable.
---
gnu/packages/qemu.scm | 77 ++++++++++++++++++++++++++++++++++++++++++++++++++-
1 file changed, 76 insertions(+), 1 deletion(-)
diff --git a/gnu/packages/qemu.scm b/gnu/packages/qemu.scm
index 6c36815..04aa18f 100644
--- a/gnu/packages/qemu.scm
+++ b/gnu/packages/qemu.scm
@@ -50,7 +50,7 @@
#:use-module (guix build-system gnu)
#:use-module (guix build-system python)
#:use-module (guix download)
- #:use-module ((guix licenses) #:select (gpl2 lgpl2.1+))
+ #:use-module ((guix licenses) #:select (gpl2 gpl2+ lgpl2.1+))
#:use-module (guix packages)
#:use-module (guix utils)
#:use-module (srfi srfi-1))
@@ -402,3 +402,78 @@ virtualization library.")
(define-public python2-libvirt
(package-with-python2 python-libvirt))
+
+(define-public virt-manager
+ (package
+ (name "virt-manager")
+ (version "1.4.0")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "https://virt-manager.org/download/sources"
+ "/virt-manager/virt-manager-"
+ version ".tar.gz"))
+ (sha256
+ (base32
+ "1jnawqjmcqd2db78ngx05x7cxxn3iy1sb4qfgbwcn045qh6a8cdz"))))
+ (build-system python-build-system)
+ (arguments
+ `(#:python ,python-2
+ ;; Some of the tests seem to require network access to install virtual
+ ;; machines.
+ #:tests? #f
+ #:modules ((ice-9 match)
+ (srfi srfi-26)
+ (guix build python-build-system)
+ (guix build utils))
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'fix-setup
+ (lambda* (#:key outputs #:allow-other-keys)
+ (substitute* "virtcli/cliconfig.py"
+ (("/usr") (assoc-ref outputs "out")))
+ #t))
+ (add-before 'wrap 'wrap-with-GI_TYPELIB_PATH
+ (lambda* (#:key inputs outputs #:allow-other-keys)
+ (let* ((bin (string-append (assoc-ref outputs "out") "/bin"))
+ (bin-files (find-files bin ".*"))
+ (paths (map (match-lambda
+ ((output . directory)
+ (let* ((girepodir (string-append
+ directory
+ "/lib/girepository-1.0")))
+ (if (file-exists? girepodir)
+ girepodir #f))))
+ inputs)))
+ (for-each (lambda (file)
+ (format #t "wrapping ~a\n" file)
+ (wrap-program file
+ `("GI_TYPELIB_PATH" ":" prefix
+ ,(filter identity paths))))
+ bin-files))
+ #t)))))
+ (inputs
+ `(("gtk+" ,gtk+)
+ ("libvirt" ,libvirt)
+ ("libvirt-glib" ,libvirt-glib)
+ ("libosinfo" ,libosinfo)
+ ("gobject-introspection" ,gobject-introspection)
+ ("python2-libvirt" ,python2-libvirt)
+ ("python2-requests" ,python2-requests)
+ ("python2-ipaddr" ,python2-ipaddr)
+ ("python2-pygobject" ,python2-pygobject)
+ ("python2-libxml2" ,python2-libxml2)))
+ ;; virt-manager searches for qemu-img or kvm-img in the PATH.
+ (propagated-inputs
+ `(("qemu" ,qemu)))
+ (native-inputs
+ `(("glib" ,glib "bin") ; glib-compile-schemas.
+ ("perl" ,perl) ; pod2man
+ ("intltool" ,intltool))) ; intltool
+ (home-page "https://virt-manager.org/")
+ (synopsis "Manage virtual machines with virt-manager")
+ (description
+ "The virt-manager application is a desktop user interface for managing
+virtual machines through libvirt. It primarily targets KVM VMs, but also
+manages Xen and LXC (linux containers). It presents a summary view of running
+domains, their live performance & resource utilization statistics.")
+ (license gpl2+)))
--
2.9.0
^ permalink raw reply related [flat|nested] 11+ messages in thread