;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2017 Gábor Boskovits <boskovits@gmail.com>
;;; Copyright © 2017, 2018 Ricardo Wurmus <rekado@elephly.net>
+;;; Copyright © 2018 Leo Famulari <leo@famulari.name>
;;;
;;; This file is part of GNU Guix.
;;;
#:use-module (guix packages)
#:use-module (guix download)
#:use-module (guix git-download)
+ #:use-module (guix build-system cmake)
#:use-module (guix build-system gnu)
#:use-module (guix utils)
#:use-module (gnu packages)
#:use-module (gnu packages check)
#:use-module (gnu packages compression)
#:use-module (gnu packages curl)
- #:use-module (gnu packages databases)
#:use-module (gnu packages datastructures)
#:use-module (gnu packages documentation)
#:use-module (gnu packages docbook)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages python)
#:use-module (gnu packages readline)
+ #:use-module (gnu packages sqlite)
#:use-module (gnu packages tls)
#:use-module (gnu packages xml))
(define-public disorderfs
(package
(name "disorderfs")
- (version "0.5.3")
+ (version "0.5.5")
(source
(origin
(method git-fetch)
(file-name (git-file-name name version))
(sha256
(base32
- "1nmhfvxpvz3xsfxl9wqnh6r2l5m7hjq6n0vpblsl5xdcvwaqcf50"))))
+ "18c32qcdzbxrzg7srnqnw1ls9yqqxyk9b996yxr6w2znw6x6n8v4"))))
(build-system gnu-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)))
("attr" ,attr)))
(arguments
`(#:phases (modify-phases %standard-phases
- (delete 'configure))
+ (delete 'configure)) ; no configure script
#:make-flags (let ((out (assoc-ref %outputs "out")))
(list (string-append "PREFIX=" out)))
#:test-target "test"
(description
"This is a file system client based on the FTP File Transfer Protocol.")
(license license:gpl2+)))
+
+(define-public libnfs
+ (package
+ (name "libnfs")
+ (version "3.0.0")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/sahlberg/libnfs.git")
+ (commit (string-append "libnfs-" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "115p55y2cbs92z5lmcnjx1v29lwinpgq4sha9v1kq1vd8674h404"))))
+ (build-system gnu-build-system)
+ (home-page "https://github.com/sahlberg/libnfs")
+ (native-inputs
+ `(("autoconf" ,autoconf)
+ ("automake" ,automake)
+ ("libtool" ,libtool)
+ ("pkg-config" ,pkg-config)))
+ (synopsis "Client library for accessing NFS shares")
+ (description "LIBNFS is a client library for accessing NFS shares over a
+network. LIBNFS offers three different APIs, for different use :
+
+@enumerate
+@item RAW, a fully asynchronous low level RPC library for NFS protocols. This
+ API provides very flexible and precise control of the RPC issued.
+@item NFS ASYNC, a fully asynchronous library for high level vfs functions
+@item NFS SYNC, a synchronous library for high level vfs functions.
+@end enumerate\n")
+ (license (list license:lgpl2.1+ ; library
+ license:gpl3+ ; tests
+ license:bsd-3 ; copied nsf4 files
+ ))))
+
+(define-public apfs-fuse
+ (let ((commit "c7036a3030d128bcecefc1eabc47c039ccfdcec9")
+ (revision "0"))
+ (package
+ (name "apfs-fuse")
+ (version (git-version "0.0.0" revision commit))
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/sgan81/apfs-fuse")
+ (recursive? #t) ; for lzfse
+ (commit commit)))
+ (sha256
+ (base32
+ "1akd4cx1f9cyq6sfk9ybv4chhjwjlnqi8ic4z5ajnd5x0g76nz3r"))
+ (file-name (git-file-name name version))))
+ (build-system cmake-build-system)
+ (arguments
+ `(#:tests? #f ; No test suite
+ #:phases
+ (modify-phases %standard-phases
+ ;; No 'install' target in CMakeLists.txt
+ (replace 'install
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out"))
+ (bin (string-append out "/bin"))
+ (lib (string-append out "/lib"))
+ (doc (string-append out "/share/doc/"
+ (string-append ,name "-" ,version))))
+ (install-file "apfs-dump" bin)
+ (install-file "apfs-dump-quick" bin)
+ (install-file "apfs-fuse" bin)
+ (install-file "libapfs.a" lib)
+ (install-file "../source/LICENSE" doc)
+ #t))))))
+ (inputs
+ `(("bzip2" ,bzip2)
+ ("fuse" ,fuse)
+ ("zlib" ,zlib)))
+ (synopsis "Read-only FUSE driver for the APFS filesystem")
+ (description "APFS-FUSE is a read-only FUSE driver for the @dfn{Apple File
+System} (APFS). It is currently in an experimental state — it may not be able
+to read all files, and it does not support all the compression methods in
+APFS.")
+ (home-page "https://github.com/sgan81/apfs-fuse")
+ (license license:gpl2+))))