diff options
Diffstat (limited to 'gnu/packages/file-systems.scm')
-rw-r--r-- | gnu/packages/file-systems.scm | 118 |
1 files changed, 57 insertions, 61 deletions
diff --git a/gnu/packages/file-systems.scm b/gnu/packages/file-systems.scm index bc286d3bea..4589db965d 100644 --- a/gnu/packages/file-systems.scm +++ b/gnu/packages/file-systems.scm @@ -176,14 +176,14 @@ large and/or frequently changing (network) environment.") (define-public bindfs (package (name "bindfs") - (version "1.15.1") + (version "1.17.4") (source (origin (method url-fetch) (uri (string-append "https://bindfs.org/downloads/bindfs-" version ".tar.gz")) (sha256 (base32 - "1av8dj9i1g0105fs5r9srqqsp7yahlhwc0yl8i1szyfdls23bp84")))) + "1k1xkyjk8ms11djbhlmykkzfbcids6ls5vpq7rhdnazcladszm3g")))) (build-system gnu-build-system) (arguments ;; XXX: The tests have no hope of passing until there is a "nogroup" @@ -198,7 +198,7 @@ large and/or frequently changing (network) environment.") ;; ("which" ,which) (list pkg-config)) (inputs - (list fuse)) + (list fuse-2)) (home-page "https://bindfs.org") (synopsis "Bind mount a directory and alter permission bits") (description @@ -275,7 +275,7 @@ unmaintained---to use the @code{inotify} API instead of the deprecated (arguments '(#:configure-flags '("--enable-library" "--enable-fuse"))) (native-inputs (list pkg-config)) - (inputs (list xz fuse)) + (inputs (list xz fuse-2)) (synopsis "Virtual file system that allows browsing of compressed files") (description "AVFS is a FUSE-based filesystem that allows browsing of compressed @@ -565,7 +565,7 @@ AES-GCM implementation.") (native-inputs (list pkg-config)) (inputs - (list fuse glib libgphoto2)) + (list fuse-2 glib libgphoto2)) (synopsis "Virtual file system for libgphoto2 using FUSE") (description "GPhotoFS is a FUSE file system module to mount your camera as a file system on Linux. This allow using your camera with any tool able to read @@ -618,7 +618,17 @@ 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 '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. @@ -639,11 +649,7 @@ from a mounted file system.") `(,util-linux "lib") lz4 zlib - `(,zstd "lib") - ;; Only for mount.bcachefs.sh. - coreutils-minimal - gawk - util-linux)) + `(,zstd "lib"))) (home-page "https://bcachefs.org/") (synopsis "Tools to create and manage bcachefs file systems") (description @@ -667,17 +673,7 @@ performance and other characteristics.") (substitute-keyword-arguments (package-arguments bcachefs-tools) ((#:make-flags make-flags) #~(append #$make-flags - (list "LDFLAGS=-static"))) - ((#:phases phases) - #~(modify-phases #$phases - (add-after 'unpack 'skip-shared-library - (lambda _ - (substitute* "Makefile" - ;; Building the shared library with ‘-static’ obviously fails… - (("^((all|install):.*)\\blib\\b(.*)" _ prefix suffix) - (string-append prefix suffix "\n")) - ;; …as does installing a now non-existent file. - ((".*\\$\\(INSTALL\\).* lib.*") "")))))))) + (list "LDFLAGS=-static"))))) (inputs (modify-inputs (package-inputs bcachefs-tools) (prepend `(,eudev "static") `(,keyutils "static") @@ -760,7 +756,7 @@ Extensible File Allocation Table} file systems. Included are (native-inputs (list asciidoc docbook-xml libxml2 libxslt pkg-config)) (inputs - (list fuse gnutls)) + (list fuse-2 gnutls)) (arguments (list #:phases #~(modify-phases %standard-phases @@ -925,7 +921,7 @@ files mistakenly overwritten or destroyed just a few seconds ago.") (native-inputs (list pkg-config)) (inputs - (list fuse attr)) + (list fuse-2 attr)) (arguments `(#:phases (modify-phases %standard-phases (delete 'configure)) ; no configure script @@ -987,7 +983,7 @@ non-determinism in the build process.") ("cmocka" ,cmocka))) (inputs `(("acl" ,acl) - ("fuse" ,fuse) + ("fuse" ,fuse-2) ("openssl" ,openssl) ("liburcu" ,liburcu) ("libuuid" ,util-linux "lib") @@ -1016,8 +1012,12 @@ All of this is accomplished without a centralized metadata server.") (uri (string-append "mirror://sourceforge/curlftpfs/curlftpfs/" version "/curlftpfs-" version ".tar.gz")) (sha256 - (base32 - "0n397hmv21jsr1j7zx3m21i7ryscdhkdsyqpvvns12q7qwwlgd2f")))) + (base32 "0n397hmv21jsr1j7zx3m21i7ryscdhkdsyqpvvns12q7qwwlgd2f")) + (patches + (search-patches "curlftpfs-fix-error-closing-file.patch" + "curlftpfs-fix-file-names.patch" + "curlftpfs-fix-memory-leak.patch" + "curlftpfs-fix-no_verify_hostname.patch")))) (build-system gnu-build-system) (arguments `(#:phases @@ -1030,7 +1030,7 @@ All of this is accomplished without a centralized metadata server.") (("4426192") "12814800")) #t))))) (inputs - (list curl glib fuse)) + (list curl glib fuse-2)) (native-inputs (list pkg-config)) (home-page "https://curlftpfs.sourceforge.net/") @@ -1158,9 +1158,8 @@ network. LIBNFS offers three different APIs, for different use : )))) (define-public apfs-fuse - ;; Later versions require FUSE 3. - (let ((commit "7b89418e8dc27103d3c4f8fa348086ffcd634c17") - (revision "1")) + (let ((commit "66b86bd525e8cb90f9012543be89b1f092b75cf3") + (revision "2")) (package (name "apfs-fuse") (version (git-version "0.0.0" revision commit)) @@ -1171,14 +1170,11 @@ network. LIBNFS offers three different APIs, for different use : (recursive? #t) ; for lzfse (commit commit))) (sha256 - (base32 - "0x2siy3cmnm9wsdfazg3xc8r3kbg73gijmnn1vjw33pp71ckylxr")) + (base32 "0f63slyzv8fbgshpzrx2g01x9h73g5yvh5kis4yazl19fjm2b05r")) (file-name (git-file-name name version)))) (build-system cmake-build-system) (arguments `(#:tests? #f ; No test suite - #:configure-flags - '("-DUSE_FUSE3=OFF") ; FUSE 3 is not packaged yet. #:phases (modify-phases %standard-phases ;; No 'install' target in CMakeLists.txt @@ -1192,9 +1188,7 @@ network. LIBNFS offers three different APIs, for different use : (install-file "apfs-dump" bin) (install-file "apfs-dump-quick" bin) (install-file "apfs-fuse" bin) - (install-file "libapfs.a" lib) - (install-file "../source/README.md" doc) - #t)))))) + (install-file "../source/README.md" doc))))))) (inputs (list bzip2 fuse zlib)) (synopsis "Read-only FUSE driver for the APFS file system") @@ -1614,7 +1608,7 @@ On Guix System, you will need to invoke the included shell scripts as (("/sbin") "$(EXEC_PREFIX)/sbin") (("chown") "true") ; disallowed in the build environment (("strip") "true")) ; breaks cross-compilation - ;; These were copied from the fuse package. + ;; These were copied from the fuse-2 package. (substitute* '("libfuse/lib/mount_util.c" "libfuse/util/mount_util.c") (("/bin/(u?)mount" _ maybe-u) @@ -1776,9 +1770,8 @@ local file system using FUSE.") (license license:bsd-3))) (define-public rewritefs - (let ((revision "0") - ;; This is the last commit supporting our fuse@2. - (commit "31e2810b596028a12e49a08664567755f4b387b2")) + (let ((revision "1") + (commit "3a56de8b5a2d44968b8bc3885c7d661d46367306")) (package (name "rewritefs") (version (git-version "0.0.0" revision commit)) @@ -1790,24 +1783,27 @@ local file system using FUSE.") (commit commit))) (file-name (git-file-name name version)) (sha256 - (base32 "0k1aas2bdq2l3a6q3fvmngpakcxiws8qny2w6z7ffngyqxh33fv7")))) + (base32 "1w2rik0lhqm3wr68x51zs45gqfx79l7fi4p0sqznlfq7sz5s8xxn")))) (build-system gnu-build-system) (arguments - `(#:modules ((srfi srfi-26) - ,@%gnu-build-system-modules) - #:make-flags - (list (string-append "PREFIX=" (assoc-ref %outputs "out"))) - #:test-target "test" - #:tests? #f ; all require a kernel with FUSE loaded - #:phases - (modify-phases %standard-phases - (delete 'configure) ; no configure script - (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))) - (for-each (cut install-file <> (string-append doc "/examples")) - (find-files "." "^config\\.")))))))) + (list + #:modules + '((guix build gnu-build-system) + (guix build utils) + (srfi srfi-26)) + #:make-flags + #~(list (string-append "PREFIX=" #$output)) + #:test-target "test" + #:tests? #f ; all require a kernel with FUSE loaded + #:phases + #~(modify-phases %standard-phases + (delete 'configure) ; no configure script + (add-after 'install 'install-examples + (lambda _ + (let ((doc (string-append #$output "/share/doc/" + #$name "-" #$version))) + (for-each (cut install-file <> (string-append doc "/examples")) + (find-files "." "^config\\.")))))))) (native-inputs (list pkg-config)) (inputs @@ -1839,7 +1835,7 @@ the XDG directory specification from @file{~/.@var{name}} to (base32 "03aw8pw8694jyrzpnbry05rk9718sqw66kiyq878bbb679gl7224")))) (build-system gnu-build-system) (native-inputs (list autoconf automake libtool pkg-config)) - (inputs (list attr fuse xz zlib `(,zstd "lib"))) + (inputs (list attr fuse-2 xz zlib `(,zstd "lib"))) (home-page "https://github.com/vasi/squashfuse") (synopsis "Fuse filesystem to mount squashfs archives") (description @@ -1935,7 +1931,7 @@ and rewritable media that wears out (DVD/CD-RW).") (native-inputs (list automake autoconf libtool pkg-config)) (inputs - (list fuse-3)) + (list fuse)) (home-page "https://github.com/containers/fuse-overlayfs") (synopsis "FUSE implementation of overlayfs") (description "This package provides an implementation of overlay+shiftfs @@ -2056,7 +2052,7 @@ spend on disk between being written and being deduplicated.") boost double-conversion fmt - fuse-3 + fuse gflags jemalloc libarchive |