From cc4a2aeb984b8cd007c48a2fb140792ce2a70a56 Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Tue, 3 Jun 2014 22:12:05 +0200 Subject: gnu: Merge Parted, fdisk, and ddrescue in (gnu packages disk). * gnu/packages/parted.scm: Rename to... * gnu/packages/disk.scm: ... this. New file. Merge with... * gnu/packages/fdisk.scm: ... this; remove file; * gnu/packages/ddrescue.scm: ... and this; remove file. * gnu/system/install.scm, gnu/system/vm.scm: Adjust accordingly. * gnu-system.am (GNU_SYSTEM_MODULES): Remove gnu/packages/{parted,fdisk,ddrescue}.scm and add gnu/packages/disk.scm. --- gnu/packages/disk.scm | 121 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 121 insertions(+) create mode 100644 gnu/packages/disk.scm (limited to 'gnu/packages/disk.scm') diff --git a/gnu/packages/disk.scm b/gnu/packages/disk.scm new file mode 100644 index 0000000000..a5404b2749 --- /dev/null +++ b/gnu/packages/disk.scm @@ -0,0 +1,121 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2012, 2013 Nikita Karetnikov +;;; +;;; 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 disk) + #:use-module (guix licenses) + #:use-module (guix packages) + #:use-module (guix download) + #:use-module (guix build-system gnu) + #:use-module (gnu packages check) + #:use-module (gnu packages gettext) + #:use-module (gnu packages linux) + #:use-module (gnu packages readline) + #:use-module (gnu packages guile) + #:use-module ((gnu packages compression) + #:select (lzip))) + +(define-public parted + (package + (name "parted") + (version "3.1") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://gnu/parted/parted-" + version ".tar.xz")) + (sha256 + (base32 + "05fa4m1bky9d13hqv91jlnngzlyn7y4rnnyq6d86w0dg3vww372y")))) + (build-system gnu-build-system) + (arguments `(#:configure-flags '("--disable-device-mapper") + #:phases (alist-cons-before + 'configure 'fix-mkswap + (lambda* (#:key inputs #:allow-other-keys) + (let ((util-linux (assoc-ref inputs + "util-linux"))) + (substitute* + "tests/t9050-partition-table-types.sh" + (("mkswap") + (string-append util-linux "/sbin/mkswap"))))) + %standard-phases))) + (inputs + ;; XXX: add 'lvm2'. + `(("check" ,check) + + ;; With Readline 6.3, parted/ui.c fails to build because it uses the + ;; now undefined 'CPPFunction' type. + ("readline" ,readline-6.2) + + ("util-linux" ,util-linux))) + (native-inputs + `(("gettext" ,gnu-gettext))) + (home-page "http://www.gnu.org/software/parted/") + (synopsis "Disk partition editor") + (description + "GNU Parted is a package for creating and manipulating disk partition +tables. It includes a library and command-line utility.") + (license gpl3+))) + +(define-public fdisk + (package + (name "fdisk") + (version "2.0.0a") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://gnu/fdisk/gnufdisk-" + version ".tar.gz")) + (sha256 + (base32 + "04nd7civ561x2lwcmxhsqbprml3178jfc58fy1v7hzqg5k4nbhy3")))) + (build-system gnu-build-system) + (inputs + `(("gettext" ,gnu-gettext) + ("guile" ,guile-1.8) + ("util-linux" ,util-linux) + ("parted" ,parted))) + (home-page "https://www.gnu.org/software/fdisk/") + (synopsis "Low-level disk partitioning and formatting") + (description + "GNU fdisk provides a GNU version of the common disk partitioning tool +fdisk. fdisk is used for the creation and manipulation of disk partition +tables, and it understands a variety of different formats.") + (license gpl3+))) + +(define-public ddrescue + (package + (name "ddrescue") + (version "1.17") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://gnu/ddrescue/ddrescue-" + version ".tar.lz")) + (sha256 + (base32 + "0bvmsbzli2j4czwkabzs978n1y6vx31axh02kpgcf7033cc6rydy")))) + (build-system gnu-build-system) + (home-page "http://www.gnu.org/software/ddrescue/ddrescue.html") + (synopsis "Data recovery utility") + (native-inputs `(("lzip" ,lzip))) + (description + "GNU ddrescue is a fully automated data recovery tool. It copies data +from one file to another, working to rescue data in case of read errors. The +program also includes a tool for manipulating its log files, which are used +to recover data more efficiently by only reading the necessary blocks.") + (license gpl3+))) -- cgit v1.2.3