diff options
Diffstat (limited to 'gnu/packages/file-systems.scm')
-rw-r--r-- | gnu/packages/file-systems.scm | 134 |
1 files changed, 57 insertions, 77 deletions
diff --git a/gnu/packages/file-systems.scm b/gnu/packages/file-systems.scm index 35d28c4ce2..bad0b75f60 100644 --- a/gnu/packages/file-systems.scm +++ b/gnu/packages/file-systems.scm @@ -48,7 +48,7 @@ #:use-module (guix build-system gnu) #:use-module (guix build-system go) #:use-module (guix build-system linux-module) - #:use-module (guix build-system python) + #:use-module (guix build-system pyproject) #:use-module (guix build-system trivial) #:use-module (guix utils) #:use-module (gnu packages) @@ -65,7 +65,6 @@ #:use-module (gnu packages check) #:use-module (gnu packages compression) #:use-module (gnu packages cpp) - #:use-module (gnu packages crates-io) #:use-module (gnu packages crypto) #:use-module (gnu packages curl) #:use-module (gnu packages cyrus-sasl) @@ -81,6 +80,7 @@ #:use-module (gnu packages glib) #:use-module (gnu packages gnome) #:use-module (gnu packages gnupg) + #:use-module (gnu packages golang) #:use-module (gnu packages golang-build) #:use-module (gnu packages golang-check) #:use-module (gnu packages golang-crypto) @@ -109,6 +109,7 @@ #:use-module (gnu packages popt) #:use-module (gnu packages pretty-print) #:use-module (gnu packages python) + #:use-module (gnu packages python-build) #:use-module (gnu packages python-crypto) #:use-module (gnu packages python-web) #:use-module (gnu packages python-xyz) @@ -122,6 +123,7 @@ #:use-module (gnu packages tls) #:use-module (gnu packages valgrind) #:use-module (gnu packages version-control) + #:use-module (gnu packages vim) #:use-module (gnu packages web) #:use-module (gnu packages xml)) @@ -474,6 +476,7 @@ is corrupted you'll lose the affected file(s) but not the whole back-up.") (build-system go-build-system) (arguments (list + #:go go-1.23 #:import-path "github.com/google/fscrypt" #:install-source? #f #:test-flags @@ -604,7 +607,7 @@ significantly increases the risk of irreversible data loss!") (define-public gocryptfs (package (name "gocryptfs") - (version "2.5.1") + (version "2.5.4") (source (origin (method git-fetch) (uri (git-reference @@ -613,10 +616,11 @@ significantly increases the risk of irreversible data loss!") (file-name (git-file-name name version)) (sha256 (base32 - "0ai30h56qvp31a3rl72biwx8w9blmi7va7d1bflmxbp41zhl6dn9")))) + "1glzq6syid1ws3wc9fk16z3vmphvgaf8dwr8hrg4s02bqqqhlcll")))) (build-system go-build-system) (arguments (list + #:go go-1.23 #:install-source? #f #:import-path "github.com/rfjakob/gocryptfs" #:build-flags @@ -767,29 +771,6 @@ from a mounted file system.") ;; even in Rust crates, creating ludicrous and totally bogus dependencies ;; such as the Android SDK. Put our crates elsewhere. #:vendor-dir "../guix-vendor" - #:cargo-inputs - `(("rust-aho-corasick" ,rust-aho-corasick-1) - ("rust-anstream" ,rust-anstream-0.6) - ("rust-anstyle" ,rust-anstyle-1) - ("rust-anstyle-parse" ,rust-anstyle-parse-0.2) - ("rust-anyhow" ,rust-anyhow-1) - ("rust-autocfg" ,rust-autocfg-1) - ("rust-bitfield" ,rust-bitfield-0.14) - ("rust-clap" ,rust-clap-4) - ("rust-clap-complete" ,rust-clap-complete-4) - ("rust-either" ,rust-either-1) - ("rust-errno" ,rust-errno-0.2) - ("rust-env-logger" ,rust-env-logger-0.10) - ("rust-libc" ,rust-libc-0.2) - ("rust-log" ,rust-log-0.4) - ("rust-memoffset" ,rust-memoffset-0.8) - ("rust-owo-colors" ,rust-owo-colors-4) - ("rust-rustix" ,rust-rustix-0.38) - ("rust-strum" ,rust-strum-0.26) - ("rust-strum-macros" ,rust-strum-macros-0.26) - ("rust-udev" ,rust-udev-0.7) - ("rust-uuid" ,rust-uuid-1) - ("rust-zeroize" ,rust-zeroize-1)) #:phases #~(modify-phases %standard-phases (replace 'build @@ -815,17 +796,18 @@ from a mounted file system.") (native-inputs (list pkg-config)) (inputs - (list clang - eudev - keyutils - libaio - libscrypt - libsodium - liburcu - `(,util-linux "lib") ;libblkid - lz4 - zlib - `(,zstd "lib"))) + (cons* clang + eudev + keyutils + libaio + libscrypt + libsodium + liburcu + `(,util-linux "lib") ;libblkid + lz4 + zlib + `(,zstd "lib") + (cargo-inputs 'bcachefs-tools))) (home-page "https://bcachefs.org/") (synopsis "Tools to create and manage bcachefs file systems") (description @@ -968,36 +950,24 @@ minimal bcachefs-tools package. It is meant to be used in initrds.") (define-public exfatprogs (package (name "exfatprogs") - (version "1.2.5") + (version "1.2.9") (source (origin (method git-fetch) (uri (git-reference - (url "https://github.com/exfatprogs/exfatprogs") - (commit version))) + (url "https://github.com/exfatprogs/exfatprogs") + (commit version))) (file-name (git-file-name name version)) (sha256 - (base32 "0plj52kjvhy94hdk0bq8bc7ql6yh44x76kryxhn46vwbxayv790j")))) + (base32 "0phimvrm13kjrfdlsvzkapy8hgfgf4w62yz3zg4y4yjvzsal2hqh")))) (build-system gnu-build-system) (arguments (list #:configure-flags #~(list "--disable-static") - #:phases - #~(modify-phases %standard-phases - (replace 'check - (lambda* (#:key tests? #:allow-other-keys) - (when tests? - (setenv "FSCK1" "../fsck/fsck.exfat") - ;; Upstream CI uses a second FSCK provided by its host operating - ;; system to verify the results of the newly-built one. That - ;; makes no sense in Guix, but we can detect crashes, unexpected - ;; inconsistencies, and other badness by testing with only one. - (setenv "FSCK2" (getenv "FSCK1")) - (with-directory-excursion "tests" - (invoke "./test_fsck.sh")))))))) + #:tests? #f)) ;the tests require QEMU (native-inputs - (list autoconf automake libtool pkg-config)) + (list autoconf-2.72 automake libtool pkg-config)) (home-page "https://github.com/exfatprogs/exfatprogs") (synopsis "Tools to create, check, and repair exFAT file systems") (description @@ -1697,7 +1667,7 @@ with the included @command{xfstests-check} helper.") (define-public zfs (package (name "zfs") - (version "2.3.3") + (version "2.3.4") (outputs '("out" "module" "src")) (source (origin @@ -1706,7 +1676,7 @@ with the included @command{xfstests-check} helper.") "/download/zfs-" version "/zfs-" version ".tar.gz")) (sha256 - (base32 "0wgh64qjfm81s7f6dy61cy4hycqm2g5vnlqpl02i5a0fiw8j4hc4")))) + (base32 "15d47y4alicdl99pjidks9p1hqk9glz5y0w024d1ccq16v7rghwy")))) (build-system linux-module-build-system) (arguments (list @@ -2057,7 +2027,7 @@ compatible directories.") ;; Don't check for package updates. (substitute* "dbxfs/main.py" (("if version") "if False")))))) - (build-system python-build-system) + (build-system pyproject-build-system) (arguments '(#:tests? #f #:phases @@ -2075,6 +2045,8 @@ compatible directories.") python-keyrings-alt python-privy python-userspacefs)) + (native-inputs + (list python-setuptools)) (home-page "https://thelig.ht/code/dbxfs/") (synopsis "User-space file system for Dropbox") (description @@ -2206,8 +2178,8 @@ memory-efficient.") (build-system go-build-system) (arguments (list + #:go go-1.23 #:import-path "github.com/oniony/TMSU" - #:unpack-path "github.com/oniony/TMSU" #:install-source? #f #:phases #~(modify-phases %standard-phases @@ -2495,32 +2467,40 @@ filtering and ordering functionality. (define-public watcher (package (name "watcher") - (version "0.13.6") + (version "0.13.8") (source (origin (method git-fetch) (uri (git-reference (url "https://github.com/e-dant/watcher") - (commit version))) + (commit (string-append "release/" version)))) (file-name (git-file-name name version)) (sha256 (base32 - "1ikcdskb3z3wggxb12vi0y3rng2hcswl0fpk6sjqqlz34nvwijcr")))) + "118zkz6zfj57rny1ysy80ib3sqy3lfjpf611j5b4rw29dzwsa1xi")))) (build-system cmake-build-system) (arguments - (list #:configure-flags - #~(list "-DBUILD_TESTING=ON" - ;; This is needed to find 'snitch' from the system. - "-DFETCHCONTENT_TRY_FIND_PACKAGE_MODE=ALWAYS") - #:phases - #~(modify-phases %standard-phases - (replace 'check - (lambda* (#:key tests? #:allow-other-keys) - (setenv "PATH" (string-append (getcwd) ":" (getenv "PATH"))) - (substitute* "../source/tool/test/.ctx" - (("../../out") - "../../../build") - (("which") "command -v")) - (invoke "../source/tool/test/all")))))) + (list + #:configure-flags + #~(list "-DBUILD_TESTING=ON" + ;; This is needed to find 'snitch' from the system. + "-DFETCHCONTENT_TRY_FIND_PACKAGE_MODE=ALWAYS") + #:phases + #~(modify-phases %standard-phases + (add-after 'unpack 'fix-.pc-files-prefix + ;; There are some issues with the new .pc files (see: + ;; <https://github.com/e-dant/watcher/issues/82>). + (lambda _ + (substitute* "CMakeLists.txt" + (("\"\\$\\{CMAKE_INSTALL_LIBDIR}\"") + "\"${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_LIBDIR}\"") + (("\\$\\{CMAKE_INSTALL_INCLUDEDIR}/wtr") + "${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_INCLUDEDIR}/wtr")) + (substitute* "watcher.pc.in" + (("@PC_WATCHER_PREFIX@") + #$output)) + (substitute* "watcher-c/watcher-c.pc.in" + (("@PC_LIBWATCHER_C_PREFIX@") + #$output))))))) (native-inputs (list jq snitch)) (home-page "https://github.com/e-dant/watcher") (synopsis "File system watcher program and library") |