diff --git a/gnu-system.am b/gnu-system.am index a1dea392e6..66a1677c7e 100644 --- a/gnu-system.am +++ b/gnu-system.am @@ -155,7 +155,6 @@ GNU_SYSTEM_MODULES = \ gnu/packages/lsh.scm \ gnu/packages/lsof.scm \ gnu/packages/lua.scm \ - gnu/packages/lvm.scm \ gnu/packages/lynx.scm \ gnu/packages/m4.scm \ gnu/packages/man.scm \ diff --git a/gnu/packages/cryptsetup.scm b/gnu/packages/cryptsetup.scm index c362a63b8b..781147cc35 100644 --- a/gnu/packages/cryptsetup.scm +++ b/gnu/packages/cryptsetup.scm @@ -24,7 +24,6 @@ #:use-module (guix build-system gnu) #:use-module (gnu packages) #:use-module (gnu packages gnupg) - #:use-module (gnu packages lvm) #:use-module (gnu packages popt) #:use-module (gnu packages python) #:use-module (gnu packages linux)) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index 42e82fb88e..73409cc29d 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -1,6 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2012, 2013, 2014 Ludovic Courtès -;;; Copyright © 2014 Andreas Enge +;;; Copyright © 2013, 2014 Andreas Enge ;;; Copyright © 2012 Nikita Karetnikov ;;; Copyright © 2014 Mark H Weaver ;;; @@ -1344,6 +1344,65 @@ device nodes from /dev/, handles hotplug events and loads drivers at boot time.") (license gpl2+))) ; libudev is under lgpl2.1+ +(define-public lvm2 + (package + (name "lvm2") + (version "2.02.109") + (source (origin + (method url-fetch) + (uri (string-append "ftp://sources.redhat.com/pub/lvm2/releases/LVM2." + version ".tgz")) + (sha256 + (base32 + "1rv5ivg0l1w3nwzwdkqixm96h5bzg7ib4rr196ysb2lw42jmpjbv")) + (modules '((guix build utils))) + (snippet + '(begin + (use-modules (guix build utils)) + + ;; Honor sysconfdir. + (substitute* "make.tmpl.in" + (("confdir = .*$") + "confdir = @sysconfdir@\n") + (("DEFAULT_SYS_DIR = @DEFAULT_SYS_DIR@") + "DEFAULT_SYS_DIR = @sysconfdir@")))))) + (build-system gnu-build-system) + (native-inputs + `(("pkg-config" ,pkg-config) + ("procps" ,procps))) ;tests use 'pgrep' + (inputs + `(("udev" ,udev))) + (arguments + '(#:phases (alist-cons-after + 'configure 'set-makefile-shell + (lambda _ + ;; Use 'sh', not 'bash', so that '. lib/utils.sh' works as + ;; expected. + (setenv "SHELL" (which "sh")) + + ;; Replace /bin/sh with the right file name. + (patch-makefile-SHELL "make.tmpl")) + %standard-phases) + + #:configure-flags (list (string-append "--sysconfdir=" + (assoc-ref %outputs "out") + "/etc/lvm") + "--enable-udev_sync" + "--enable-udev_rules") + + ;; The tests use 'mknod', which requires root access. + #:tests? #f)) + (home-page "http://sourceware.org/lvm2/") + (synopsis "Logical volume management for Linux") + (description + "LVM2 is the logical volume management tool set for Linux-based systems. +This package includes the user-space libraries and tools, including the device +mapper. Kernel components are part of Linux-libre.") + + ;; Libraries (liblvm2, libdevmapper) are LGPLv2.1. + ;; Command-line tools are GPLv2. + (license (list gpl2 lgpl2.1)))) + (define-public wireless-tools (package (name "wireless-tools") diff --git a/gnu/packages/lvm.scm b/gnu/packages/lvm.scm deleted file mode 100644 index 82e93dcc66..0000000000 --- a/gnu/packages/lvm.scm +++ /dev/null @@ -1,62 +0,0 @@ -;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2013 Andreas Enge -;;; -;;; This file is part of GNU Guix. -;;; -;;; GNU Guix is free software; you can redistribute it and/or modify it -;;; under the terms of the GNU General Public License as published by -;;; the Free Software Foundation; either version 3 of the License, or (at -;;; your option) any later version. -;;; -;;; GNU Guix is distributed in the hope that it will be useful, but -;;; WITHOUT ANY WARRANTY; without even the implied warranty of -;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -;;; GNU General Public License for more details. -;;; -;;; You should have received a copy of the GNU General Public License -;;; along with GNU Guix. If not, see . - -(define-module (gnu packages lvm) - #:use-module ((guix licenses) - #:renamer (symbol-prefix-proc 'license:)) - #:use-module (guix packages) - #:use-module (guix download) - #:use-module (guix build-system gnu) - #:use-module (gnu packages) - #:use-module (gnu packages linux) - #:use-module (gnu packages pkg-config)) - -(define-public lvm2 - (package - (name "lvm2") - (version "2.02.98") - (source (origin - (method url-fetch) - (uri (string-append "ftp://sources.redhat.com/pub/lvm2/LVM2." - version ".tgz")) - (sha256 - (base32 - "0r6q6z8ip6q5qgkzng0saljassp4912k6i21ra10vq7pzrc0l0vi")))) - (build-system gnu-build-system) - (native-inputs - `(("pkg-config" ,pkg-config) - ("procps" ,procps))) - (arguments - `(#:tests? #f ; require to be root - #:configure-flags - `(,(string-append "--with-confdir=" (assoc-ref %outputs "out") "/etc")) - #:phases - (alist-cons-before - 'configure 'patch-make-tmpl - (lambda _ - (substitute* "make.tmpl.in" - (("/bin/sh") (which "sh")) - (("CC \\?=") "CC ="))) ; force CC argument to be set from configure - %standard-phases))) - (synopsis "logical volume management") - (description - "LVM2 refers to the userspace toolset that provides logical volume -management facilities on linux. It is reasonably backwards-compatible with -the original LVM toolset.") - (license license:gpl2) - (home-page "http://www.sourceware.org/lvm2/")))