[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH 3/3] gnu: Add encfs.
From: |
Tobias Geerinckx-Rice |
Subject: |
[PATCH 3/3] gnu: Add encfs. |
Date: |
Thu, 14 Jul 2016 17:07:26 +0200 |
* gnu/packages/crypto.scm (encfs): New variable.
* gnu/packages/logging.scm (rlog): New variable.
---
rlog started off as a non-public variable in crypto.scm, but that
annoyed me and I moved it to logging.scm. It's very encfs-specific
(and will be removed again in EncFS 1.9), though.
Does it warrant its own commit? Or not even a public variable? Thoughts?
gnu/packages/crypto.scm | 50 ++++++++++++++++++++++++++++++++++++++++++++++++
gnu/packages/logging.scm | 29 ++++++++++++++++++++++++++++
2 files changed, 79 insertions(+)
diff --git a/gnu/packages/crypto.scm b/gnu/packages/crypto.scm
index 041dc20..ad566ad 100644
--- a/gnu/packages/crypto.scm
+++ b/gnu/packages/crypto.scm
@@ -3,6 +3,7 @@
;;; Copyright ?? 2015 Ricardo Wurmus <address@hidden>
;;; Copyright ?? 2016 Leo Famulari <address@hidden>
;;; Copyright ?? 2016 Lukas Gradl <address@hidden>
+;;; Copyright ?? 2016 Tobias Geerinckx-Rice <address@hidden>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -22,10 +23,15 @@
(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 logging)
#: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)
@@ -148,3 +154,47 @@ OpenBSD tool of the same name.")
be used to manage peer-to-peer network connections as needed for real time
communication.")
(license license:gpl3)))
+
+(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:lgpl2.1+ ; encfs library
+ license:gpl3+)))) ; command-line tools
diff --git a/gnu/packages/logging.scm b/gnu/packages/logging.scm
index c40d6eb..b021d58 100644
--- a/gnu/packages/logging.scm
+++ b/gnu/packages/logging.scm
@@ -1,6 +1,7 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright ?? 2016 Ricardo Wurmus <address@hidden>
;;; Copyright ?? 2016 Ludovic Court??s <address@hidden>
+;;; Copyright ?? 2016 Tobias Geerinckx-Rice <address@hidden>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -88,3 +89,31 @@ helper macros. You can log a message by simply streaming
things to log at a
particular severity level. It allows logging to be controlled from the
command line.")
(license license:bsd-3)))
+
+(define-public 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 a flexible message logging facility for C++ programs
+and libraries. It was originally the internal logging mechanism of EncFS
+but was subsequently broken out into a separate package.")
+ (license license:lgpl2.1+)))
--
2.9.0