summaryrefslogtreecommitdiff
path: root/gnu/packages/file-systems.scm
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/packages/file-systems.scm')
-rw-r--r--gnu/packages/file-systems.scm118
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