summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarius Bakke <mbakke@fastmail.com>2017-02-16 01:02:08 +0100
committerMarius Bakke <mbakke@fastmail.com>2017-03-28 16:40:55 +0200
commitb3ed50e6ad22ef0782dff7ee7700cd4c817866af (patch)
tree5024b2bdb22a835174c7851cba923da1a39a5d7c
parentaadead6f17ef240714d06513e8b4f42b9f0ecf85 (diff)
downloadgnu-guix-b3ed50e6ad22ef0782dff7ee7700cd4c817866af.tar
gnu-guix-b3ed50e6ad22ef0782dff7ee7700cd4c817866af.tar.gz
gnu: Add multipath-tools.
* gnu/packages/linux.scm (multipath-tools): New variable.
-rw-r--r--gnu/packages/linux.scm64
1 files changed, 64 insertions, 0 deletions
diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm
index 9a466e0ad5..608cb2975c 100644
--- a/gnu/packages/linux.scm
+++ b/gnu/packages/linux.scm
@@ -53,6 +53,7 @@
#:use-module (gnu packages crypto)
#:use-module (gnu packages compression)
#:use-module (gnu packages databases)
+ #:use-module (gnu packages datastructures)
#:use-module (gnu packages docbook)
#:use-module (gnu packages documentation)
#:use-module (gnu packages elf)
@@ -78,8 +79,10 @@
#:use-module (gnu packages readline)
#:use-module (gnu packages rrdtool)
#:use-module (gnu packages slang)
+ #:use-module (gnu packages storage)
#:use-module (gnu packages texinfo)
#:use-module (gnu packages tls)
+ #:use-module (gnu packages valgrind)
#:use-module (gnu packages video)
#:use-module (gnu packages xiph)
#:use-module (gnu packages xml)
@@ -2583,6 +2586,67 @@ arrays when needed.")
'("out")))) ;refer only self
(synopsis "Statically-linked 'mdadm' command for use in an initrd")))
+(define-public multipath-tools
+ (package
+ (name "multipath-tools")
+ (version "0.6.4")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "http://git.opensvc.com/?p=multipath-tools/"
+ ".git;a=snapshot;h=" version ";sf=tgz"))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "12smwmljrkl2afc06dghd2253rqnfawvzr818a2xpxr06f44f9qy"))
+ (modules '((guix build utils)))
+ (snippet
+ '(begin
+ ;; Drop bundled valgrind headers.
+ (delete-file-recursively "third-party")
+ (substitute* '("multipathd/main.c"
+ "libmultipath/debug.c")
+ (("#include \"../third-party/")
+ "#include \""))
+ #t))))
+ (build-system gnu-build-system)
+ (arguments
+ '(#:tests? #f ; No tests.
+ #:make-flags (list (string-append "DESTDIR="
+ (assoc-ref %outputs "out"))
+ (string-append "LDFLAGS=-Wl,-rpath="
+ (assoc-ref %outputs "out")
+ "/lib"))
+ #:phases
+ (modify-phases %standard-phases
+ (delete 'configure)
+ (add-before 'build 'set-CC
+ (lambda _
+ (setenv "CC" "gcc")
+ #t)))))
+ (native-inputs
+ `(("valgrind" ,valgrind)))
+ (inputs
+ `(("ceph:lib" ,ceph "lib")
+ ("libaio" ,libaio)
+ ("liburcu" ,liburcu)
+ ("lvm2" ,lvm2)
+ ("readline" ,readline)
+ ("udev" ,eudev)))
+ (home-page "http://christophe.varoqui.free.fr/")
+ (synopsis "Access block devices through multiple paths")
+ (description
+ "This package provides the following binaries to drive the
+Linux Device Mapper multipathing driver:
+@enumerate
+@item @command{multipath} - Device mapper target autoconfig.
+@item @command{multipathd} - Multipath daemon.
+@item @command{mpathpersist} - Manages SCSI persistent reservations on
+@code{dm} multipath devices.
+@item @command{kpartx} - Create device maps from partition tables.
+@end enumerate")
+ (license (list license:gpl2+ ; Main distribution.
+ license:lgpl2.0+)))) ; libmpathcmd/mpath_cmd.h
+
(define-public libaio
(package
(name "libaio")