diff options
author | Nikita Karetnikov <nikita@karetnikov.org> | 2012-11-24 00:20:46 +0000 |
---|---|---|
committer | Ludovic Courtès <ludo@gnu.org> | 2012-11-24 16:14:39 +0100 |
commit | 034cb8e78127e97bb40bbd9de4072cb0accc02b6 (patch) | |
tree | 174418ef267b7ae7db92ab0008fbfede248566a3 | |
parent | a65e3306d1bc91d51cd9702a3b457f18ace398eb (diff) | |
download | guix-034cb8e78127e97bb40bbd9de4072cb0accc02b6.tar guix-034cb8e78127e97bb40bbd9de4072cb0accc02b6.tar.gz |
distro: Add GNU Ddrescue.
* distro/packages/ddrescue.scm: New file.
* Makefile.am (MODULES): Add it.
-rw-r--r-- | Makefile.am | 1 | ||||
-rw-r--r-- | distro/packages/ddrescue.scm | 59 |
2 files changed, 60 insertions, 0 deletions
diff --git a/Makefile.am b/Makefile.am index 08c12fbb5f..4ee3a24ac1 100644 --- a/Makefile.am +++ b/Makefile.am @@ -48,6 +48,7 @@ MODULES = \ distro/packages/bison.scm \ distro/packages/bootstrap.scm \ distro/packages/compression.scm \ + distro/packages/ddrescue.scm \ distro/packages/ed.scm \ distro/packages/flex.scm \ distro/packages/gawk.scm \ diff --git a/distro/packages/ddrescue.scm b/distro/packages/ddrescue.scm new file mode 100644 index 0000000000..cd02e49544 --- /dev/null +++ b/distro/packages/ddrescue.scm @@ -0,0 +1,59 @@ +;;; Guix --- Nix package management from Guile. -*- coding: utf-8 -*- +;;; Copyright (C) 2012 Nikita Karetnikov <nikita@karetnikov.org> +;;; +;;; This file is part of Guix. +;;; +;;; 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. +;;; +;;; 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 Guix. If not, see <http://www.gnu.org/licenses/>. + +(define-module (distro packages ddrescue) + #:use-module (guix packages) + #:use-module (guix download) + #:use-module (guix build-system gnu)) + +(define-public ddrescue + (package + (name "ddrescue") + (version "1.16") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://gnu/ddrescue/ddrescue-" + version ".tar.gz")) + (sha256 + (base32 + "1rixya7p8c4jrn4p0flf6h5dqwybrilf3hrj4r7x41h3zgjz5cvn")))) + (build-system gnu-build-system) + (home-page + "http://www.gnu.org/software/ddrescue/ddrescue.html") + (synopsis "GNU ddrescue, a data recovery tool") + (description + "GNU ddrescue is a data recovery tool. It copies data from one +file or block device (hard disc, cdrom, etc) to another, trying hard to +rescue data in case of read errors. + +The basic operation of ddrescue is fully automatic. That is, you don't +have to wait for an error, stop the program, read the log, run it in +reverse mode, etc. + +If you use the logfile feature of ddrescue, the data is rescued very +efficiently (only the needed blocks are read). Also you can interrupt +the rescue at any time and resume it later at the same point. + +Automatic merging of backups: If you have two or more damaged copies of +a file, cdrom, etc, and run ddrescue on all of them, one at a time, with +the same output file, you will probably obtain a complete and error-free +file. This is so because the probability of having damaged areas at the +same places on different input files is very low. Using the logfile, +only the needed blocks are read from the second and successive copies.") + (license "GPLv3+"))) |