[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
01/04: gnu: Add jetring.
From: |
Efraim Flashner |
Subject: |
01/04: gnu: Add jetring. |
Date: |
Mon, 12 Mar 2018 15:58:34 -0400 (EDT) |
efraim pushed a commit to branch master
in repository guix.
commit 607d280ec82e8c4849926a380f4c717585a4ce80
Author: Efraim Flashner <address@hidden>
Date: Mon Mar 5 11:03:28 2018 +0200
gnu: Add jetring.
* gnu/packages/gnupg.scm (jetring): New variable.
---
gnu/packages/gnupg.scm | 57 +++++++++++++++++++++++++++++++++++++++++++++++++-
1 file changed, 56 insertions(+), 1 deletion(-)
diff --git a/gnu/packages/gnupg.scm b/gnu/packages/gnupg.scm
index 28f5b58..2696e33 100644
--- a/gnu/packages/gnupg.scm
+++ b/gnu/packages/gnupg.scm
@@ -4,7 +4,7 @@
;;; Copyright © 2014 Eric Bavier <address@hidden>
;;; Copyright © 2014, 2015, 2016 Mark H Weaver <address@hidden>
;;; Copyright © 2015 Paul van der Walt <address@hidden>
-;;; Copyright © 2015, 2016, 2017 Efraim Flashner <address@hidden>
+;;; Copyright © 2015, 2016, 2017, 2018 Efraim Flashner <address@hidden>
;;; Copyright © 2015, 2016, 2017 Ricardo Wurmus <address@hidden>
;;; Copyright © 2016 Christopher Allan Webber <address@hidden>
;;; Copyright © 2016, 2017 ng0 <address@hidden>
@@ -929,3 +929,58 @@ keyring content. Parcimonie is a daemon that fetches one
key at a time using
the Tor network, waits a bit, changes the Tor circuit being used, and starts
over.")
(license license:gpl1+)))
+
+(define-public jetring
+ (package
+ (name "jetring")
+ (version "0.25")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "mirror://debian/pool/main/j/" name "/"
+ name "_" version ".tar.xz"))
+ (sha256
+ (base32
+ "0shcnnw0h31b08vmnvf18ni33dg40w18wv9smb69vkklz3h4jhpw"))))
+ (build-system gnu-build-system)
+ (arguments
+ '(#:phases
+ (modify-phases %standard-phases
+ (delete 'configure) ; no configure script
+ (add-before 'install 'hardlink-gnupg
+ (lambda* (#:key inputs #:allow-other-keys)
+ (let ((gpg (string-append (assoc-ref inputs "gnupg")
+ "/bin/gpg")))
+ (substitute* (find-files "." "jetring-[[:alpha:]]+$")
+ (("gpg -") (string-append gpg " -"))
+ (("\\\"gpg\\\"") (string-append "\"" gpg "\"")))
+ #t)))
+ (replace 'install
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out"))
+ (man (string-append out "/share/man")))
+ (for-each (lambda (file)
+ (install-file file (string-append out "/bin/")))
+ (find-files "." "jetring-[[:alpha:]]+$"))
+ (for-each (lambda (file)
+ (install-file file (string-append man "/man1/")))
+ (find-files "." ".*\\.1$"))
+ (install-file "jetring.7" (string-append man "/man7/"))
+ #t))))
+ #:tests? #f)) ; no test phase
+ (inputs
+ `(("gnupg" ,gnupg)
+ ("perl" ,perl)))
+ (home-page "https://joeyh.name/code/jetring/")
+ (synopsis "GnuPG keyring maintenance using changesets")
+ (description
+ "Jetring is a collection of tools that allow for gpg keyrings to be
+maintained using changesets. It was developed with the Debian keyring in mind,
+and aims to solve the problem that a gpg keyring is a binary blob that's hard
+for multiple people to collaboratively edit.
+
+With jetring, changesets can be submitted, reviewed to see exactly what they
+will do, applied, and used to build a keyring. The origin of every change made
+to the keyring is available for auditing, and gpg signatures can be used for
+integrity guarantees.")
+ (license license:gpl2+)))