diff options
Diffstat (limited to 'gnu/packages/disk.scm')
-rw-r--r-- | gnu/packages/disk.scm | 94 |
1 files changed, 90 insertions, 4 deletions
diff --git a/gnu/packages/disk.scm b/gnu/packages/disk.scm index 20549c0cd8..595000bf88 100644 --- a/gnu/packages/disk.scm +++ b/gnu/packages/disk.scm @@ -2,13 +2,14 @@ ;;; Copyright © 2012, 2013 Nikita Karetnikov <nikita@karetnikov.org> ;;; Copyright © 2015 Mathieu Lirzin <mthl@gnu.org> ;;; Copyright © 2015 Mark H Weaver <mhw@netris.org> -;;; Copyright © 2016 Tobias Geerinckx-Rice <me@tobias.gr> +;;; Copyright © 2016, 2018 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2016 Jan Nieuwenhuizen <janneke@gnu.org> ;;; Copyright © 2016 Roel Janssen <roel@gnu.org> ;;; Copyright © 2016, 2017 Marius Bakke <mbakke@fastmail.com> ;;; Copyright © 2017 Hartmut Goebel <h.goebel@crazy-compilers.com> ;;; Copyright © 2017 Stefan Reichör <stefan@xsteve.at> +;;; Copyright © 2018 Vasile Dumitrascu <va511e@yahoo.com> ;;; ;;; This file is part of GNU Guix. ;;; @@ -34,6 +35,7 @@ #:use-module (guix build-system python) #:use-module (gnu packages) #:use-module (gnu packages base) + #:use-module (gnu packages databases) #:use-module (gnu packages docbook) #:use-module (gnu packages gettext) #:use-module (gnu packages glib) @@ -319,17 +321,17 @@ and can dramatically shorten the lifespan of the drive if left unchecked.") (define-public gparted (package (name "gparted") - (version "0.30.0") + (version "0.31.0") (source (origin (method url-fetch) (uri (string-append "mirror://sourceforge/gparted/gparted/gparted-" version "/gparted-" version ".tar.gz")) (sha256 - (base32 "0jngbsbvg8k8vbpsphqbk8br2cbmxhabbm2c5bmxm2q5zvpr64fk")))) + (base32 "1fh7rpgb4xxdhgyjsirb83zvjfc5mfngb8a1pjbv7r6r6jj4jyrv")))) (build-system gnu-build-system) (arguments - `(#:tests? #f ; Tests require a network connection. + `(#:tests? #f ; tests require a network connection #:configure-flags '("--disable-scrollkeeper"))) (inputs `(("util-linux" ,util-linux) @@ -416,3 +418,87 @@ capacity of a flash card (flash drive, flash disk, pendrive). F3 writes to the card and then checks if can read it. It will assure you haven't been sold a card with a smaller capacity than stated.") (license license:gpl3+))) + +(define-public python-parted + (package + (name "python-parted") + (version "3.11.1") + (source + (origin + (method url-fetch) + (uri (string-append "https://github.com/dcantrell/pyparted/archive/v" + version ".tar.gz")) + (sha256 + (base32 + "0r1nyjj40nacnfnv17x2mnsj6ga1qplyxyza82v2809dfhim2fwq")))) + (build-system python-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (delete 'check) + (add-after 'install 'check + (lambda* (#:key outputs inputs #:allow-other-keys) + (add-installed-pythonpath inputs outputs) + ;; See <https://github.com/dcantrell/pyparted/issues/47>. + (substitute* "tests/test__ped_ped.py" + (("\"/tmp/temp-device-\"") "self.path")) + (invoke "python" "-m" "unittest" "discover" "-v") + #t))))) + (native-inputs + `(("e2fsprogs" ,e2fsprogs) + ("pkg-config" ,pkg-config))) + (propagated-inputs + `(("python-six" ,python-six))) + (inputs + `(("parted" ,parted))) + (home-page "https://github.com/dcantrell/pyparted") + (synopsis "Parted bindings for Python") + (description "This package provides @code{parted} bindings for Python.") + (license license:gpl2+))) + +(define-public python2-parted + (package-with-python2 python-parted)) + +(define-public duperemove + (package + (name "duperemove") + (version "v0.11.beta4") + (source (origin + (method url-fetch) + (uri (string-append + "https://github.com/markfasheh/duperemove/archive/" + version ".tar.gz")) + (sha256 + (base32 + "1h5nk03kflfnzihvn2rvfz1h623x1zpkn9hp29skd7n3f2bc5k7x")) + (file-name (string-append name "-" version ".tar.gz")))) + (build-system gnu-build-system) + (native-inputs + `(("pkg-config" ,pkg-config))) + (inputs + `(("glib" ,glib) + ("sqlite" ,sqlite))) + (arguments + `(#:tests? #f ;no test suite + #:phases + (modify-phases %standard-phases + ;; no configure script + (delete 'configure)) + #:make-flags (list (string-append "PREFIX=" %output) + "CC=gcc"))) + (home-page "https://github.com/markfasheh/duperemove") + (synopsis "Tools for de-duplicating file system data") + (description "Duperemove is a simple tool for finding duplicated extents +and submitting them for deduplication. When given a list of files it will +hash their contents on a block by block basis and compare those hashes to each +other, finding and categorizing blocks that match each other. When given the +@option{-d} option, duperemove will submit those extents for deduplication +using the Linux kernel extent-same @code{ioctl}. + +Duperemove can store the hashes it computes in a @dfn{hash file}. If given an +existing hash file, duperemove will only compute hashes for those files which +have changed since the last run. Thus you can run duperemove repeatedly on +your data as it changes, without having to re-checksum unchanged data. + +Duperemove can also take input from the @command{fdupes} program.") + (license license:gpl2))) |