summaryrefslogtreecommitdiff
path: root/gnu/packages/file-systems.scm
diff options
context:
space:
mode:
authorTobias Geerinckx-Rice <me@tobias.gr>2020-12-17 12:39:09 +0100
committerTobias Geerinckx-Rice <me@tobias.gr>2020-12-17 23:01:22 +0100
commit59d97bb4598c7b513733b97fcc5185be33da531a (patch)
treead5cb29fc1f9fae56a2104ef68f6489fa064d51e /gnu/packages/file-systems.scm
parentbf128682056f7234bd83424c3dee92a91cf93e86 (diff)
downloadguix-patches-59d97bb4598c7b513733b97fcc5185be33da531a.tar
guix-patches-59d97bb4598c7b513733b97fcc5185be33da531a.tar.gz
gnu: bcachefs-tools: Provide a mount.bcachefs helper.
* gnu/packages/file-systems.scm (bcachefs-tools)[arguments]: Add a 'promote-mount.bcachefs.sh phase to install the shell script version. [inputs]: Rename "util-linux" to "util-linux:lib". Add coreutils-minimal, gawk, and util-linux(:out).
Diffstat (limited to 'gnu/packages/file-systems.scm')
-rw-r--r--gnu/packages/file-systems.scm30
1 files changed, 27 insertions, 3 deletions
diff --git a/gnu/packages/file-systems.scm b/gnu/packages/file-systems.scm
index 6e448ffec5..af587f73fe 100644
--- a/gnu/packages/file-systems.scm
+++ b/gnu/packages/file-systems.scm
@@ -38,6 +38,7 @@
#:use-module (gnu packages acl)
#:use-module (gnu packages attr)
#:use-module (gnu packages autotools)
+ #:use-module (gnu packages base)
#:use-module (gnu packages bison)
#:use-module (gnu packages check)
#:use-module (gnu packages compression)
@@ -48,6 +49,7 @@
#:use-module (gnu packages documentation)
#:use-module (gnu packages docbook)
#:use-module (gnu packages flex)
+ #:use-module (gnu packages gawk)
#:use-module (gnu packages glib)
#:use-module (gnu packages gnupg)
#:use-module (gnu packages kerberos)
@@ -352,7 +354,24 @@ from a mounted file system.")
"PYTEST=pytest")
#:phases
(modify-phases %standard-phases
- (delete 'configure)) ; no configure script
+ (delete 'configure) ; no configure script
+ (add-after 'install 'promote-mount.bcachefs.sh
+ ;; XXX The (optional) mount.bcachefs helper requires rust:cargo.
+ ;; This alternative shell script does the job well enough for now.
+ (lambda* (#:key inputs outputs #:allow-other-keys)
+ (let ((out (assoc-ref outputs "out")))
+ (with-directory-excursion (string-append out "/sbin")
+ (rename-file "mount.bcachefs.sh" "mount.bcachefs")
+ ;; WRAP-SCRIPT causes bogus ‘Insufficient arguments’ errors.
+ (wrap-program "mount.bcachefs"
+ `("PATH" ":" prefix
+ ,(cons (string-append out "/sbin")
+ (map (lambda (input)
+ (string-append (assoc-ref inputs input)
+ "/bin"))
+ (list "coreutils"
+ "gawk"
+ "util-linux"))))))))))
#:tests? #f)) ; XXX 6 valgrind tests fail
(native-inputs
`(("pkg-config" ,pkg-config)
@@ -367,10 +386,15 @@ from a mounted file system.")
("libscrypt" ,libscrypt)
("libsodium" ,libsodium)
("liburcu" ,liburcu)
- ("util-linux" ,util-linux "lib") ; lib{blkid,uuid}
+ ("util-linux:lib" ,util-linux "lib") ; lib{blkid,uuid}
("lz4" ,lz4)
("zlib" ,zlib)
- ("zstd:lib" ,zstd "lib")))
+ ("zstd:lib" ,zstd "lib")
+
+ ;; Only for mount.bcachefs.sh.
+ ("coreutils" ,coreutils-minimal)
+ ("gawk" ,gawk)
+ ("util-linux" ,util-linux)))
(home-page "https://bcachefs.org/")
(synopsis "Tools to create and manage bcachefs file systems")
(description