summaryrefslogtreecommitdiff
path: root/gnu/packages/disk.scm
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/packages/disk.scm')
-rw-r--r--gnu/packages/disk.scm206
1 files changed, 173 insertions, 33 deletions
diff --git a/gnu/packages/disk.scm b/gnu/packages/disk.scm
index bf0897b083..7d6f3811dd 100644
--- a/gnu/packages/disk.scm
+++ b/gnu/packages/disk.scm
@@ -13,12 +13,14 @@
;;; Copyright © 2018 Eric Bavier <[email protected]>
;;; Copyright © 2018 Rutger Helling <[email protected]>
;;; Copyright © 2018, 2019, 2020 Pierre Neidhardt <[email protected]>
-;;; Copyright © 2019 Leo Famulari <[email protected]>
+;;; Copyright © 2019, 2021 Leo Famulari <[email protected]>
;;; Copyright © 2019 Pierre Langlois <[email protected]>
;;; Copyright © 2020 Pkill -9 <[email protected]>
;;; Copyright © 2020 Vincent Legoll <[email protected]>
;;; Copyright © 2020 Raghav Gururajan <[email protected]>
;;; Copyright © 2021 Michael Rohleder <[email protected]>
+;;; Copyright © 2021 Mathieu Othacehe <[email protected]>
+;;; Copyright © 2021 Brice Waegeneire <[email protected]>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -45,6 +47,7 @@
#:use-module (gnu packages compression)
#:use-module (gnu packages crypto)
#:use-module (gnu packages cryptsetup)
+ #:use-module (gnu packages databases)
#:use-module (gnu packages docbook)
#:use-module (gnu packages documentation)
#:use-module (gnu packages elf)
@@ -68,6 +71,7 @@
#:use-module (gnu packages python-xyz)
#:use-module (gnu packages readline)
#:use-module (gnu packages samba)
+ #:use-module (gnu packages serialization)
#:use-module (gnu packages sphinx)
#:use-module (gnu packages sqlite)
#:use-module (gnu packages swig)
@@ -357,14 +361,14 @@ output without any plausibility checks.")
(define-public gptfdisk
(package
(name "gptfdisk")
- (version "1.0.7")
+ (version "1.0.8")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/gptfdisk/gptfdisk/"
version "/gptfdisk-" version ".tar.gz"))
(sha256
- (base32 "1h1871gwlq05gdc2wym98ghfmq6pn5lh8g5cqy3r49svz2vh8h3m"))))
+ (base32 "1py6klp1b7rni1qjj110snyyxafhx092carlii5vrnh4y1b9ilcm"))))
(build-system gnu-build-system)
(inputs
`(("gettext" ,gettext-minimal)
@@ -494,14 +498,14 @@ and a @command{fsck.vfat} compatibility symlink for use in an initrd.")
(define-public sdparm
(package
(name "sdparm")
- (version "1.11")
+ (version "1.12")
(source
(origin
(method url-fetch)
(uri (string-append "http://sg.danny.cz/sg/p/"
"sdparm-" version ".tar.xz"))
(sha256
- (base32 "1nqjc4w2w47zavcbf5xmm53x1zbwgljaw1lpajcdi537cgy32fa8"))))
+ (base32 "1gmdxr36allrgap2j4dv238d8awkj327ww0jjwpjwrpbvfpyzjf4"))))
(build-system gnu-build-system)
(home-page "http://sg.danny.cz/sg/sdparm.html")
(synopsis "Provide access to SCSI device parameters")
@@ -551,14 +555,14 @@ and can dramatically shorten the lifespan of the drive if left unchecked.")
(define-public gparted
(package
(name "gparted")
- (version "1.2.0")
+ (version "1.3.1")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/gparted/gparted/gparted-"
version "/gparted-" version ".tar.gz"))
(sha256
- (base32 "06f72hqx5jf2irzsmi7lgpxxj38ncixh0acb4307wyjd4mfp343c"))))
+ (base32 "02g1s6hrhnias7kj241l0f72kllfhq6338mk2dmzjpmifinjxvjy"))))
(build-system glib-or-gtk-build-system)
(arguments
;; Tests require access to paths outside the build container, such
@@ -684,7 +688,7 @@ a card with a smaller capacity than stated.")
(define-public duperemove
(package
(name "duperemove")
- (version "0.11.2")
+ (version "0.11.3")
(source
(origin
(method git-fetch)
@@ -692,7 +696,7 @@ a card with a smaller capacity than stated.")
(url "https://github.com/markfasheh/duperemove")
(commit (string-append "v" version))))
(sha256
- (base32 "1a87mka2sfzhbch2jip6wlvvs0glxq9lqwmyrp359d1rmwwmqiw9"))
+ (base32 "0jwxmhadv2f1mx7gan4gk0xwrjr5g2xa71z1rp0knc1acbkhqdas"))
(file-name (git-file-name name version))))
(build-system gnu-build-system)
(native-inputs
@@ -924,6 +928,7 @@ to create devices with respective mappings for the ATARAID sets discovered.")
(uri (string-append "https://github.com/storaged-project/"
"libblockdev/releases/download/"
version "-1/libblockdev-" version ".tar.gz"))
+ (patches (search-patches "libblockdev-glib-compat.patch"))
(sha256
(base32
"0s0nazkpzpn4an00qghjkk9n7gdm5a8dqfr5hfnlk5mk5lma8njm"))))
@@ -1067,19 +1072,27 @@ since they are better handled by external tools.")
(define-public xfe
(package
(name "xfe")
- (version "1.43.2")
+ (version "1.44")
(source
(origin
(method url-fetch)
(uri
(string-append "mirror://sourceforge/xfe/xfe/" version "/"
- "xfe-" version ".tar.gz"))
+ "xfe-" version ".tar.xz"))
(sha256
- (base32 "1fl51k5jm2vrfc2g66agbikzirmp0yb0lqhmsssixfb4mky3hpzs"))))
+ (base32 "1dihq03jqjllb69r78d9ihjjadi39v7sgzdf68qpxz5xhp8i8k2r"))))
(build-system gnu-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
+ (add-after 'unpack 'patch-potfiles
+ (lambda _
+ ;; To add missing entry 'intl/plural.c' to potfiles list.
+ ;; Refer to https://sourceforge.net/p/xfe/bugs/257/
+ (substitute* "po/POTFILES.in"
+ (("src/help.h")
+ (string-append "src/help.h\n"
+ "intl/plural.c")))))
(add-after 'unpack 'patch-bin-dirs
(lambda* (#:key inputs #:allow-other-keys)
(let* ((bash (assoc-ref inputs "bash"))
@@ -1134,15 +1147,18 @@ of choice for all light thinking Unix addicts!")
(define-public hddtemp
(package
(name "hddtemp")
- (version "0.3-beta15")
- (source (origin
- (method url-fetch)
- (uri (string-append "mirror://savannah/hddtemp/hddtemp-"
- version
- ".tar.bz2"))
- (sha256
- (base32
- "0nzgg4nl8zm9023wp4dg007z6x3ir60rwbcapr9ks2al81c431b1"))))
+ ;; <https://savannah.nongnu.org/projects/hddtemp/> advertises the project as
+ ;; ‘orphaned/unmaintained’. Use a maintained fork/continuation.
+ (version "0.4.3")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/vitlav/hddtemp")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "04kylb2ka0jimi238zpfq1yii2caidpmj3ck51rvxz03y5lpq8fw"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags (list (string-append
@@ -1151,19 +1167,20 @@ of choice for all light thinking Unix addicts!")
"/share/hddtemp/hddtemp.db"))
#:phases
(modify-phases %standard-phases
+ (add-before 'bootstrap 'delete-autogen.sh
+ (lambda _
+ ;; The default 'bootstrap phase works better.
+ (delete-file "autogen.sh")))
(add-after 'install 'install-db
- (lambda* (#:key inputs outputs #:allow-other-keys)
- (let ((target (string-append (assoc-ref outputs "out")
- "/share/hddtemp/hddtemp.db")))
- (mkdir-p (dirname target))
- (copy-file (assoc-ref inputs "db") target)))))))
- (inputs
- `(("db" ,(origin
- (method url-fetch)
- (uri "mirror://savannah/hddtemp/hddtemp.db")
- (sha256
- (base32 "1fr6qgns6qv7cr40lic5yqwkkc7yjmmgx8j0z6d93csg3smzhhya"))))))
- (home-page "https://savannah.nongnu.org/projects/hddtemp/")
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let ((out (assoc-ref outputs "out")))
+ (install-file "data/hddtemp.db"
+ (string-append out "/share/hddtemp"))))))))
+ (native-inputs
+ `(("autoconf" ,autoconf)
+ ("automake" ,automake)
+ ("gettext" ,gettext-minimal)))
+ (home-page "https://github.com/vitlav/hddtemp")
(synopsis "Report the temperature of hard drives from S.M.A.R.T. information")
(description "@command{hddtemp} is a small utility that gives you the
temperature of your hard drive by reading S.M.A.R.T. information (for drives
@@ -1216,3 +1233,126 @@ that support this feature).")
built on top of jemalloc which enables control of memory characteristics
and a partitioning of the heap between kinds of memory (for NUMA).")
(license license:bsd-3)))
+
+(define-public mmc-utils
+ (let ((commit "e9654ebc4a6a48642848822c4a1355a9de4958d1")
+ (revision "0"))
+ (package
+ (name "mmc-utils")
+ (version (git-version "0.1" revision commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://git.kernel.org/pub/scm/linux/kernel/git/cjb/mmc-utils.git")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1dbsppsmky0r4z6kxwczrw8pih8bhc2pb61gsvs986r4xy6jr17a"))))
+ (build-system gnu-build-system)
+ (arguments
+ `(#:tests? #f ; No test suite
+ #:make-flags (list (string-append "prefix=" (assoc-ref %outputs "out"))
+ (string-append "CC=" ,(cc-for-target)))
+ #:phases
+ (modify-phases %standard-phases
+ ;; No ./configure script
+ (delete 'configure)
+ ;; The Makefile's "install-man" target is a no-op.
+ (add-after 'install 'install-doc
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out"))
+ (man1 (string-append out "/share/man/man1")))
+ (install-file "man/mmc.1" man1)))))))
+ (home-page "https://git.kernel.org/pub/scm/linux/kernel/git/cjb/mmc-utils.git/")
+ (synopsis "Configure MMC storage devices from userspace")
+ (description "mmc-utils is a command-line tool for configuring and
+inspecting MMC storage devices from userspace.")
+ (license license:gpl2))))
+
+(define-public bmaptools
+ (package
+ (name "bmaptools")
+ (version "3.6")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/intel/bmap-tools")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "01xzrv5nvd2nvj91lz4x9s91y9825j9pj96z0ap6yvy3w2dgvkkl"))))
+ (build-system python-build-system)
+ (arguments
+ '(#:phases
+ (modify-phases %standard-phases
+ (replace 'check
+ (lambda _
+ ;; XXX: Remove failing test.
+ (invoke "nosetests" "-v"
+ "--exclude" "test_bmap_helpers"))))))
+ (native-inputs
+ `(("python-mock" ,python-mock)
+ ("python-nose" ,python-nose)))
+ (propagated-inputs
+ `(("python-six" ,python-six)))
+ (home-page "https://github.com/intel/bmap-tools")
+ (synopsis "Create block map for a file or copy a file using block map")
+ (description "Bmaptool is a tool for creating the block map (bmap) for a
+file and copying files using the block map. The idea is that large files,
+like raw system image files, can be copied or flashed a lot faster and more
+reliably with @code{bmaptool} than with traditional tools, like @code{dd} or
+@code{cp}.")
+ (license license:gpl2)))
+
+(define-public duc
+ (package
+ (name "duc")
+ (version "1.4.4")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/zevv/duc")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1i7ry25xzy027g6ysv6qlf09ax04q4vy0kikl8h0aq5jbxsl9q52"))))
+ (build-system gnu-build-system)
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'patch
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out")))
+ (substitute* "src/duc/cmd-ui.c"
+ (("ncursesw/ncurses.h") "ncurses.h"))
+ (substitute* "examples/index.cgi"
+ (("/usr/local/bin/duc")
+ (string-append out "/bin/duc"))))))
+ (add-after 'install 'install-examples
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out"))
+ (doc (string-append out "/share/doc/" ,name "-" ,version)))
+ (copy-recursively "examples" (string-append doc "/examples"))))))))
+ (native-inputs
+ `(("autoconf" ,autoconf)
+ ("automake" ,automake)
+ ("libtool" ,libtool)
+ ("pkg-config" ,pkg-config)))
+ (inputs
+ `(("cairo" ,cairo)
+ ("pango" ,pango)
+ ("tokyocabinet" ,tokyocabinet)
+ ("ncurses" ,ncurses)))
+ (home-page "http://duc.zevv.nl")
+ (synopsis "Library and suite of tools for inspecting disk usage")
+ (description "Duc maintains a database of accumulated sizes of
+directories of the file system, and allows you to query this database with
+some tools, or create fancy graphs showing you where your bytes are.
+
+Duc comes with console utilities, ncurses and X11 user interfaces and a CGI
+wrapper for disk usage querying and visualisation.")
+ (license license:lgpl3+)))