From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ricardo Wurmus Subject: [PATCH 1/5] gnu: Add libvirt. Date: Wed, 3 Aug 2016 17:45:59 +0200 Message-ID: <20160803154603.6939-2-rekado@elephly.net> References: <20160803154603.6939-1-rekado@elephly.net> Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:51318) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bUyNC-0006em-HP for guix-devel@gnu.org; Wed, 03 Aug 2016 11:46:25 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1bUyN9-00050q-0K for guix-devel@gnu.org; Wed, 03 Aug 2016 11:46:22 -0400 Received: from sender163-mail.zoho.com ([74.201.84.163]:24035) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bUyN8-00050f-LB for guix-devel@gnu.org; Wed, 03 Aug 2016 11:46:18 -0400 In-Reply-To: <20160803154603.6939-1-rekado@elephly.net> List-Id: "Development of GNU Guix and the GNU System distribution." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org Sender: "Guix-devel" To: guix-devel@gnu.org * 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 ;;; Copyright © 2015, 2016 Mark H Weaver ;;; Copyright © 2016 Efraim Flashner +;;; Copyright © 2016 Ricardo Wurmus ;;; ;;; 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