summary refs log tree commit diff
path: root/gnu/packages
diff options
context:
space:
mode:
authornixo <nicolo@nixo.xyz>2018-10-16 14:18:14 +0200
committerLudovic Courtès <ludo@gnu.org>2018-10-19 23:39:41 +0200
commitb5a927b3baa10d4eade7e7194db6c2b5b7d8c6b6 (patch)
tree82efbee40109c21f174a373e8d000179ac94074b /gnu/packages
parent64791eb7e1dceb0940cc881e84820f0170298b34 (diff)
downloadguix-b5a927b3baa10d4eade7e7194db6c2b5b7d8c6b6.tar.gz
gnu: Add enchive.
* gnu/packages/crypto.scm (enchive): New variable.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
Diffstat (limited to 'gnu/packages')
-rw-r--r--gnu/packages/crypto.scm34
1 files changed, 34 insertions, 0 deletions
diff --git a/gnu/packages/crypto.scm b/gnu/packages/crypto.scm
index 33f4abb5ae..77b4dba6d4 100644
--- a/gnu/packages/crypto.scm
+++ b/gnu/packages/crypto.scm
@@ -10,6 +10,7 @@
 ;;; Copyright © 2018 Efraim Flashner <efraim@flashner.co.il>
 ;;; Copyright © 2018 Arun Isaac <arunisaac@systemreboot.net>
 ;;; Copyright © 2018 Nicolas Goaziou <mail@nicolasgoaziou.fr>
+;;; Copyright © 2018 Nicolò Balzarotti <nicolo@nixo.xyz>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -854,3 +855,36 @@ public-key cryptography.  Asignify is designed to be portable and self-contained
 with zero external dependencies.  Asignify can verify OpenBSD signatures, but it
 cannot sign messages in OpenBSD format yet.")
       (license license:bsd-2))))
+
+(define-public enchive
+  (package
+    (name "enchive")
+    (version "3.4")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "https://github.com/skeeto/" name "/archive/"
+                                  version ".tar.gz"))
+              (sha256
+               (base32
+                "17hrxpp4cpn10bk48sfvfjc8hghky34agsnypam1v9f36kbalqfk"))
+              (file-name (string-append name "-" version ".tar.gz"))))
+    (build-system gnu-build-system)
+    (arguments
+     '(#:tests? #f                      ; no check target         '
+       #:make-flags (list "CC=gcc" "PREFIX=$(out)")
+       #:phases (modify-phases %standard-phases
+                  (delete 'configure)
+                  (add-after 'install 'post-install
+                    (lambda _
+                      (let* ((out (assoc-ref %outputs "out"))
+                             (lisp (string-append out "/share/emacs/site-lisp")))
+                        (install-file "enchive-mode.el" lisp)
+                        #t))))))
+    (synopsis "Encrypted personal archives")
+    (description
+     "Enchive is a tool to encrypt files to yourself for long-term
+archival.  It's a focused, simple alternative to more complex solutions such as
+GnuPG or encrypted filesystems.  Enchive has no external dependencies and is
+trivial to build for local use.  Portability is emphasized over performance.")
+    (home-page "https://github.com/skeeto/enchive")
+    (license license:unlicense)))