summary refs log tree commit diff
path: root/gnu/packages/crypto.scm
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/packages/crypto.scm')
-rw-r--r--gnu/packages/crypto.scm90
1 files changed, 83 insertions, 7 deletions
diff --git a/gnu/packages/crypto.scm b/gnu/packages/crypto.scm
index f167f3320c..7d61164b05 100644
--- a/gnu/packages/crypto.scm
+++ b/gnu/packages/crypto.scm
@@ -3,6 +3,7 @@
 ;;; Copyright © 2015 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2016 Leo Famulari <leo@famulari.name>
 ;;; Copyright © 2016 Lukas Gradl <lgradl@openmailbox>
+;;; Copyright © 2016 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -22,14 +23,18 @@
 (define-module (gnu packages crypto)
   #:use-module (gnu packages)
   #:use-module (gnu packages autotools)
+  #:use-module (gnu packages boost)
+  #:use-module (gnu packages gettext)
   #:use-module (gnu packages pkg-config)
   #:use-module (gnu packages libbsd)
+  #:use-module (gnu packages linux)
   #:use-module (gnu packages nettle)
   #:use-module (gnu packages password-utils)
+  #:use-module (gnu packages perl)
   #:use-module (gnu packages readline)
   #:use-module (gnu packages serialization)
   #:use-module (gnu packages tls)
-  #:use-module (guix licenses)
+  #:use-module ((guix licenses) #:prefix license:)
   #:use-module (guix packages)
   #:use-module (guix download)
   #:use-module (guix build-system gnu))
@@ -54,7 +59,7 @@
     (description
      "Sodium is a new easy-to-use high-speed software library for network
 communication, encryption, decryption, signatures, etc.")
-    (license isc)
+    (license license:isc)
     (home-page "http://libsodium.org")))
 
 (define-public signify
@@ -91,10 +96,11 @@ OpenBSD tool of the same name.")
     (home-page "https://github.com/aperezdc/signify")
     ;; This package includes third-party code that was originally released under
     ;; various non-copyleft licenses. See the source files for clarification.
-    (license (list bsd-3 bsd-4 expat isc public-domain
-                   (non-copyleft "file://base64.c"
-                                 "See base64.c in the distribution for
-                                 the license from IBM.")))))
+    (license (list license:bsd-3 license:bsd-4 license:expat license:isc
+                   license:public-domain (license:non-copyleft
+                                          "file://base64.c"
+                                          "See base64.c in the distribution for
+                                           the license from IBM.")))))
 
 
 (define-public opendht
@@ -146,4 +152,74 @@ OpenBSD tool of the same name.")
     (description "OpenDHT is a Distributed Hash Table (DHT) library.  It may
 be used to manage peer-to-peer network connections as needed for real time
 communication.")
-    (license gpl3)))
+    (license license:gpl3)))
+
+(define rlog
+  (package
+    (name "rlog")
+    (version "1.4")
+    (source
+     (origin
+       (method url-fetch)
+       (uri
+        (string-append "http://rlog.googlecode.com/files/rlog-"
+                       version ".tar.gz"))
+       (sha256
+        (base32
+         "0y9zg0pd7vmnskwac1qdyzl282z7kb01nmn57lsg2mjdxgnywf59"))))
+    (build-system gnu-build-system)
+    (arguments
+     `(#:phases (modify-phases %standard-phases
+                  (add-before 'configure 'patch-/bin/sh
+                    (lambda _
+                      (substitute* "docs/Makefile.in"
+                        (("/bin/sh") "sh")))))))
+    (home-page "http://www.arg0.net/rlog")
+    (synopsis "Flexible message logging library for EncFS")
+    (description
+     "RLog provides message logging for EncFS.  It is no longer maintained.")
+    (license license:lgpl2.1+)))
+
+(define-public encfs
+  (package
+    (name "encfs")
+    (version "1.8.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri
+        (string-append "https://github.com/vgough/encfs/releases/download/v"
+                       version "/encfs-" version ".tar.gz"))
+       (sha256
+        (base32
+         "1lfmcsk187qr6ahy8c8959p7jrk9d5rd9kcsx572850ca3zmf0la"))))
+    (build-system gnu-build-system)
+    (arguments
+     `(#:configure-flags '("--with-boost-serialization=boost_wserialization"
+                           "--with-boost-filesystem=boost_filesystem")
+       #:phases (modify-phases %standard-phases
+                  (add-before 'configure 'autoconf
+                    (lambda _
+                      (zero? (system* "autoreconf" "-vfi")))))))
+    (native-inputs
+     `(("autoconf" ,autoconf)
+       ("automake" ,automake)
+       ("gettext" ,gnu-gettext)
+       ("libtool" ,libtool)
+       ("perl" ,perl)
+       ("pkg-config" ,pkg-config)))
+    (inputs
+     `(("boost" ,boost)
+       ("fuse" ,fuse)
+       ("openssl" ,openssl)
+       ("rlog" ,rlog)))
+    (home-page "https://vgough.github.io/encfs")
+    (synopsis "Encrypted virtual file system")
+    (description
+     "EncFS creates a virtual encrypted file system in user-space.  Each file
+created under an EncFS mount point is stored as a separate encrypted file on
+the underlying file system.  Like most encrypted file systems, EncFS is meant
+to provide security against off-line attacks, such as a drive falling into
+the wrong hands.")
+    (license (list license:lgpl3+                 ;encfs library
+                   license:gpl3+))))              ;command-line tools