~ruther/guix-local

a5477e3a82114ce2909e63a07c7e6df6da617821 — Ahmad Draidi 2 years ago 7efa17a
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 <mail@cbaines.net>
1 files changed, 84 insertions(+), 79 deletions(-)

M gnu/packages/file-systems.scm
M gnu/packages/file-systems.scm => gnu/packages/file-systems.scm +84 -79
@@ 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