From bd6af33dbf2d89e2c34e6990de489c04e6ca8f35 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Sun, 24 Sep 2023 02:00:00 +0200 Subject: gnu: bcachefs-tools: Restore mount.bcachefs shell script version. * gnu/packages/file-systems.scm (bcachefs-tools): Add back the old 'promote-mount.bcachefs.sh, tweaked to remove the new symlink. [inputs]: Add back coreutils-minimal, gawk, and util-linux. --- gnu/packages/file-systems.scm | 26 ++++++++++++++++++++++++-- 1 file changed, 24 insertions(+), 2 deletions(-) diff --git a/gnu/packages/file-systems.scm b/gnu/packages/file-systems.scm index b98a838f43..63de393851 100644 --- a/gnu/packages/file-systems.scm +++ b/gnu/packages/file-systems.scm @@ -619,7 +619,24 @@ from a mounted file system.") "not test_fsck and " "not test_list and " "not test_list_inodes and " - "not test_list_dirent")))))))) + "not test_list_dirent"))))) + (add-after 'install 'promote-mount.bcachefs.sh + ;; The (optional) ‘mount.bcachefs’ requires rust:cargo. + ;; This shell alternative does the job well enough for now. + (lambda* (#:key inputs #:allow-other-keys) + (define (whence file) + (dirname (search-input-file inputs file))) + (let ((mount (string-append #$output + "/sbin/mount.bcachefs"))) + (delete-file mount) ; symlink to ‘bcachefs’ + (copy-file "mount.bcachefs.sh" mount) + ;; WRAP-SCRIPT causes bogus ‘Insufficient arguments’ errors. + (wrap-program mount + `("PATH" ":" prefix + ,(list (getcwd) + (whence "bin/tail") + (whence "bin/awk") + (whence "bin/mount")))))))))) (native-inputs (cons* pkg-config ;; For generating documentation with rst2man. @@ -640,7 +657,12 @@ from a mounted file system.") `(,util-linux "lib") lz4 zlib - `(,zstd "lib"))) + `(,zstd "lib") + + ;; Only for mount.bcachefs.sh. + coreutils-minimal + gawk + util-linux)) (home-page "https://bcachefs.org/") (synopsis "Tools to create and manage bcachefs file systems") (description -- cgit v1.2.3