aboutsummaryrefslogtreecommitdiff
path: root/gnu/packages/disk.scm
diff options
context:
space:
mode:
authorMaxim Cournoyer <maxim.cournoyer@gmail.com>2022-02-22 23:19:28 -0500
committerMaxim Cournoyer <maxim.cournoyer@gmail.com>2022-02-22 23:28:47 -0500
commitf1f1b8b4e69055313fc0281528d31b5afa42b861 (patch)
treead2c8a1c7aa12fc5ea208a1b95f2d570309644b8 /gnu/packages/disk.scm
parentb04d2724f7434401b4311eee4ceb0e6d70033f83 (diff)
downloadguix-f1f1b8b4e69055313fc0281528d31b5afa42b861.tar
guix-f1f1b8b4e69055313fc0281528d31b5afa42b861.tar.gz
gnu: testdisk: Relocate and improve description.
This is the result of attempting to package 'photorec', only to realize it's part of testdisk, which we already had in the first place. * gnu/packages/admin.scm (testdisk): Move to... * gnu/packages/disk.scm (testdisk): ... here. [description]: Expound, and add a description section about the included PhotoRec tool.
Diffstat (limited to 'gnu/packages/disk.scm')
-rw-r--r--gnu/packages/disk.scm60
1 files changed, 60 insertions, 0 deletions
diff --git a/gnu/packages/disk.scm b/gnu/packages/disk.scm
index 1a196f4b40..15d0401090 100644
--- a/gnu/packages/disk.scm
+++ b/gnu/packages/disk.scm
@@ -22,6 +22,8 @@
;;; Copyright © 2021 Mathieu Othacehe <othacehe@gnu.org>
;;; Copyright © 2021 Brice Waegeneire <brice@waegenei.re>
;;; Copyright © 2021 Justin Veilleux <terramorpha@cock.li>
+;;; Copyright © 2014 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2022 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -63,6 +65,7 @@
#:use-module (gnu packages graphics)
#:use-module (gnu packages gtk)
#:use-module (gnu packages guile)
+ #:use-module (gnu packages image)
#:use-module (gnu packages linux)
#:use-module (gnu packages ncurses)
#:use-module (gnu packages nss)
@@ -81,6 +84,7 @@
#:use-module (gnu packages swig)
#:use-module (gnu packages terminals)
#:use-module (gnu packages textutils)
+ #:use-module (gnu packages tls)
#:use-module (gnu packages vim)
#:use-module (gnu packages w3m)
#:use-module (gnu packages web)
@@ -586,6 +590,62 @@ permit managing file systems not included in libparted.")
;; The home page says GPLv2, but the source code says GPLv2+.
(license license:gpl2+)))
+(define-public testdisk
+ (package
+ (name "testdisk")
+ (version "7.1")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "https://www.cgsecurity.org/testdisk-"
+ version ".tar.bz2"))
+ (sha256
+ (base32
+ "1zlh44w67py416hkvw6nrfmjickc2d43v51vcli5p374d5sw84ql"))))
+ (build-system gnu-build-system)
+ (inputs
+ (list ntfs-3g
+ `(,util-linux "lib")
+ openssl
+ ;; FIXME: add reiserfs.
+ zlib
+ e2fsprogs
+ libjpeg-turbo
+ ncurses))
+ (home-page "https://www.cgsecurity.org/wiki/TestDisk")
+ (synopsis "Data recovery tool")
+ (description "TestDisk is primarily designed to help recover lost
+partitions and/or make non-booting disks bootable again when these symptoms
+were caused by faulty software or human error (such as accidentally deleting a
+partition table). TestDisk can:
+@enumerate
+@item Fix partition table, recover deleted partition
+@item Recover FAT32 boot sector from its backup
+@item Rebuild FAT12/FAT16/FAT32 boot sector
+@item Fix FAT tables
+@item Rebuild NTFS boot sector
+@item Recover NTFS boot sector from its backup
+@item Fix MFT using MFT mirror
+@item Locate ext2/ext3/ext4 Backup SuperBlock
+@item Un-delete files from FAT, exFAT, NTFS and ext2 file systems
+@item Copy files from deleted FAT, exFAT, NTFS and ext2/ext3/ext4 partitions.
+@end enumerate
+This package also includes the @command{photorec} command, described below.
+
+PhotoRec is file data recovery software designed to recover lost files
+including video, documents and archives from hard disks, CD-ROMs, and lost
+pictures (thus the Photo Recovery name) from digital camera memory. PhotoRec
+ignores the file system and goes after the underlying data, so it will still
+work even if your media's file system has been severely damaged or
+reformatted. It can recover lost files from at least:
+@enumerate
+@item FAT
+@item NTFS
+@item exFAT
+@item ext2/ext3/ext4 file system
+@item HFS+
+@end enumerate")
+ (license license:gpl2+)))
+
(define-public pydf
(package
(name "pydf")