From a5477e3a82114ce2909e63a07c7e6df6da617821 Mon Sep 17 00:00:00 2001 From: Ahmad Draidi Date: Sun, 17 Sep 2023 10:38:01 +0400 Subject: gnu: bcachefs-tools: Restyle format. * gnu/packages/file-systems.scm (bcachefs-tools): Reformat with 'guix style' and manually break some long lines. Signed-off-by: Christopher Baines --- gnu/packages/file-systems.scm | 163 ++++++++++++++++++++++-------------------- 1 file changed, 84 insertions(+), 79 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/file-systems.scm b/gnu/packages/file-systems.scm index f362a2d143..215c1d338b 100644 --- a/gnu/packages/file-systems.scm +++ b/gnu/packages/file-systems.scm @@ -575,84 +575,89 @@ from a mounted file system.") (license license:gpl2+))) (define-public bcachefs-tools - (package - (name "bcachefs-tools") - (version "1.2") - (source - (origin - (method git-fetch) - (uri (git-reference - (url "https://evilpiepirate.org/git/bcachefs-tools.git") - (commit (string-append "v" version)))) - (file-name (git-file-name name version)) - (sha256 - (base32 "0wgqclkkdkqis3aq6wp0kcn1bsynybm3dnpcf7vlcvx85kdmcxg8")))) - (build-system gnu-build-system) - (arguments - (list #:make-flags - #~(list (string-append "VERSION=" #$version) ; ‘v…-nogit’ otherwise - (string-append "PREFIX=" #$output) - "INITRAMFS_DIR=$(PREFIX)/share/initramfs-tools" - (string-append "CC=" #$(cc-for-target)) - (string-append "PKG_CONFIG=" #$(pkg-config-for-target)) - ;; ‘This will be less of an option in the future, as more - ;; code gets rewritten in Rust.’ - "NO_RUST=better") - #:phases - #~(modify-phases %standard-phases - (delete 'configure) ; no configure script - (replace 'check - ;; The test suite is moribund upstream (‘never been useful’), - ;; but let's keep running it as a sanity check until then. - (lambda* (#:key tests? make-flags #:allow-other-keys) - (when tests? - ;; We must manually build the test_helper first. - (apply invoke "make" "tests" make-flags) - (invoke (string-append - #$(this-package-native-input "python-pytest") - "/bin/pytest") "-k" - ;; These fail (‘invalid argument’) on kernels - ;; with a previous bcachefs version. - (string-append "not test_format and " - "not test_fsck and " - "not test_list and " - "not test_list_inodes and " - "not test_list_dirent"))))) - (add-after 'install 'patch-shell-wrappers - ;; These are overcomplicated wrappers that invoke readlink(1) - ;; to exec the appropriate bcachefs(8) subcommand. We can - ;; simply patch in the latter file name directly, and do. - (lambda _ - (let ((sbin/ (string-append #$output "/sbin/"))) - (substitute* (find-files sbin/ (lambda (file stat) - (not (elf-file? file)))) - (("SDIR=.*") "") - (("\\$\\{SDIR.*}/") sbin/)))))))) - (native-inputs - (cons* pkg-config - ;; For generating documentation with rst2man. - python - python-docutils - ;; For tests. - python-pytest - (if (member (%current-system) (package-supported-systems valgrind)) - (list valgrind) - '()))) - (inputs - (list eudev - keyutils - libaio - libscrypt - libsodium - liburcu - `(,util-linux "lib") - lz4 - zlib - `(,zstd "lib"))) - (home-page "https://bcachefs.org/") - (synopsis "Tools to create and manage bcachefs file systems") - (description - "The bcachefs-tools are command-line utilities for creating, checking, + (package + (name "bcachefs-tools") + (version "1.2") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://evilpiepirate.org/git/bcachefs-tools.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0wgqclkkdkqis3aq6wp0kcn1bsynybm3dnpcf7vlcvx85kdmcxg8")))) + (build-system gnu-build-system) + (arguments + (list #:make-flags #~(list (string-append "VERSION=" + #$version) ;‘v…-nogit’ otherwise + (string-append "PREFIX=" + #$output) + "INITRAMFS_DIR=$(PREFIX)/share/initramfs-tools" + (string-append "CC=" + #$(cc-for-target)) + (string-append "PKG_CONFIG=" + #$(pkg-config-for-target)) + ;; ‘This will be less of an option in the future, as more + ;; code gets rewritten in Rust.’ + "NO_RUST=better") + #:phases #~(modify-phases %standard-phases + (delete 'configure) ;no configure script + (replace 'check + ;; The test suite is moribund upstream (‘never been + ;; useful’), but let's keep running it as a sanity + ;; check until then. + (lambda* (#:key tests? make-flags #:allow-other-keys) + (when tests? + ;; We must manually build the test_helper first. + (apply invoke "make" "tests" make-flags) + (invoke (string-append #$(this-package-native-input + "python-pytest") + "/bin/pytest") "-k" + ;; These fail (‘invalid argument’) on kernels + ;; with a previous bcachefs version. + (string-append "not test_format and " + "not test_fsck and " + "not test_list and " + "not test_list_inodes and " + "not test_list_dirent"))))) + (add-after 'install 'patch-shell-wrappers + ;; These are overcomplicated wrappers that invoke readlink(1) + ;; to exec the appropriate bcachefs(8) subcommand. We can + ;; simply patch in the latter file name directly, and do. + (lambda _ + (let ((sbin/ (string-append #$output "/sbin/"))) + (substitute* (find-files sbin/ + (lambda (file stat) + (not (elf-file? file)))) + (("SDIR=.*") + "") + (("\\$\\{SDIR.*}/") + sbin/)))))))) + (native-inputs (cons* pkg-config + ;; For generating documentation with rst2man. + python + python-docutils + ;; For tests. + python-pytest + (if (member (%current-system) + (package-supported-systems valgrind)) + (list valgrind) + '()))) + (inputs (list eudev + keyutils + libaio + libscrypt + libsodium + liburcu + `(,util-linux "lib") + lz4 + zlib + `(,zstd "lib"))) + (home-page "https://bcachefs.org/") + (synopsis "Tools to create and manage bcachefs file systems") + (description + "The bcachefs-tools are command-line utilities for creating, checking, and otherwise managing bcachefs file systems. Bcachefs is a @acronym{CoW, copy-on-write} file system supporting native @@ -662,7 +667,7 @@ multiple block devices for replication and/or performance, similar to RAID. In addition, bcachefs provides all the functionality of bcache, a block-layer caching system, and lets you assign different roles to each device based on its performance and other characteristics.") - (license license:gpl2+))) + (license license:gpl2+))) (define-public bcachefs-tools/static (package -- cgit v1.2.3