summary refs log tree commit diff
path: root/gnu/packages/file-systems.scm
diff options
context:
space:
mode:
authorRicardo Wurmus <rekado@elephly.net>2018-12-06 07:23:22 +0100
committerRicardo Wurmus <rekado@elephly.net>2019-01-18 20:32:24 +0100
commit3b39ae9f4b9d2ac47383fa012f4077a0d006c66f (patch)
treed35307c402c8f24015d2c7f2f3486e84464c35df /gnu/packages/file-systems.scm
parent204cfbe1f40bcb1584bfca6dfc1c5c46f6e8ac61 (diff)
downloadguix-3b39ae9f4b9d2ac47383fa012f4077a0d006c66f.tar.gz
gnu: Add libnfs.
* gnu/packages/file-systems.scm (libnfs): New variable.
Diffstat (limited to 'gnu/packages/file-systems.scm')
-rw-r--r--gnu/packages/file-systems.scm35
1 files changed, 35 insertions, 0 deletions
diff --git a/gnu/packages/file-systems.scm b/gnu/packages/file-systems.scm
index 9260fdf946..066d6d843b 100644
--- a/gnu/packages/file-systems.scm
+++ b/gnu/packages/file-systems.scm
@@ -248,6 +248,41 @@ All of this is accomplished without a centralized metadata server.")
      "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"))