summary refs log tree commit diff
path: root/gnu/packages/gnupg.scm
diff options
context:
space:
mode:
authorEric Bavier <ericbavier@gmail.com>2014-02-07 10:55:42 -0600
committerLudovic Courtès <ludo@gnu.org>2014-02-07 23:33:30 +0100
commit4380a7b4b866f03c4775966647075b1bcaf75f32 (patch)
tree0cd0e28b960f3abca52d6446f89a8873b3a230dd /gnu/packages/gnupg.scm
parentb93afd5b53714cb896e2abdea1e0b405550fb67b (diff)
downloadguix-4380a7b4b866f03c4775966647075b1bcaf75f32.tar.gz
gnu: Add paperkey.
* gnu/packages/gnupg.scm (paperkey): New variable.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
Diffstat (limited to 'gnu/packages/gnupg.scm')
-rw-r--r--gnu/packages/gnupg.scm35
1 files changed, 35 insertions, 0 deletions
diff --git a/gnu/packages/gnupg.scm b/gnu/packages/gnupg.scm
index 82293fbabd..499b20097f 100644
--- a/gnu/packages/gnupg.scm
+++ b/gnu/packages/gnupg.scm
@@ -1,6 +1,7 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2012, 2013, 2014 Ludovic Courtès <ludo@gnu.org>
 ;;; Copyright © 2013 Andreas Enge <andreas@enge.fr>
+;;; Copyright © 2014 Eric Bavier <bavier@member.fsf.org>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -422,3 +423,37 @@ including tools for signing keys, keyring analysis, and party preparation.
      "Pinentry provides a console and a GTK+ GUI that allows users to
 enter a passphrase when `gpg' or `gpg2' is run and needs it.")
     (license gpl2+)))
+
+(define-public paperkey
+  (package
+    (name "paperkey")
+    (version "1.3")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "http://www.jabberwocky.com/"
+                                  "software/paperkey/paperkey-"
+                                  version ".tar.gz"))
+              (sha256
+               (base32
+                "1yybj8bj68v4lxwpn596b6ismh2fyixw5vlqqg26byrn4d9dfmsv"))))
+    (build-system gnu-build-system)
+    (arguments
+     `(#:phases
+       (alist-replace
+        'check
+        (lambda* (#:key #:allow-other-keys #:rest args)
+          (let ((check (assoc-ref %standard-phases 'check)))
+            (substitute* '("checks/roundtrip.sh"
+                           "checks/roundtrip-raw.sh")
+              (("/bin/echo") "echo"))
+            (apply check args)))
+        %standard-phases)))
+    (home-page "http://www.jabberwocky.com/software/paperkey/")
+    (synopsis "Backup OpenPGP keys to paper")
+    (description
+     "Paperkey extracts the secret bytes from an OpenPGP (GnuPG, PGP, etc) key
+for printing with paper and ink, which have amazingly long retention
+qualities.  To reconstruct a secret key, you re-enter those
+bytes (whether by hand, OCR, QR code, or the like) and paperkey can use
+them to transform your existing public key into a secret key.")
+    (license gpl2+)))