Assuming no-one has any objections, this is my current patch set for pinentry.
$ ./pre-inst-env guix package -A pinentry pinentry 0.9.7 out gnu/packages/gnupg.scm:623:2 pinentry-gtk2 0.9.7 out gnu/packages/gnupg.scm:600:2 pinentry-qt 0.9.7 out gnu/packages/gnupg.scm:612:2 pinentry-tty 0.9.7 out gnu/packages/gnupg.scm:573:2 -- Efraim Flashner <efr...@flashner.co.il> אפרים פלשנר GPG key = A28B F40C 3E55 1372 662D 14F7 41AA E7DC CA3D 8351 Confidentiality cannot be guaranteed on emails sent or received unencrypted
From 533668b17bcc901c132d93144a78f45c2f8aa918 Mon Sep 17 00:00:00 2001 From: Efraim Flashner <efr...@flashner.co.il> Date: Thu, 28 Apr 2016 05:20:45 +0300 Subject: [PATCH 1/3] gnu: pinentry: Rename to pinentry-gtk2. * gnu/packages/gnupg.scm (pinentry): Rename to pinentry-gtk2. Define pinentry as pinentry-gtk2. --- gnu/packages/gnupg.scm | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/gnu/packages/gnupg.scm b/gnu/packages/gnupg.scm index d447007..6e16429 100644 --- a/gnu/packages/gnupg.scm +++ b/gnu/packages/gnupg.scm @@ -568,9 +568,9 @@ including tools for signing keys, keyring analysis, and party preparation. (license license:gpl2) (home-page "http://pgp-tools.alioth.debian.org/"))) -(define-public pinentry +(define-public pinentry-gtk2 (package - (name "pinentry") + (name "pinentry-gtk2") (version "0.9.7") (source (origin (method url-fetch) @@ -595,6 +595,10 @@ including tools for signing keys, keyring analysis, and party preparation. enter a passphrase when `gpg' or `gpg2' is run and needs it.") (license license:gpl2+))) +(define-public pinentry + (package (inherit pinentry-gtk2) + (name "pinentry"))) + (define-public paperkey (package (name "paperkey") -- 2.8.1
From 730e98dd23da1fb408ec8e1942a2cc526b3e988b Mon Sep 17 00:00:00 2001 From: Efraim Flashner <efr...@flashner.co.il> Date: Tue, 26 Apr 2016 16:29:21 +0300 Subject: [PATCH 2/3] gnu: Add pinentry-tty. * gnu/packages/gnupg.scm (pinentry-tty): New variable. [arguments]: Add pinentry-tty flag. (pinentry-gtk2): Inherit from pinentry-tty. [inputs]: Use gtk+-2, glib for pinentry-gtk2 only. [description]: Modify description based on inputs. --- gnu/packages/gnupg.scm | 26 +++++++++++++++++++------- 1 file changed, 19 insertions(+), 7 deletions(-) diff --git a/gnu/packages/gnupg.scm b/gnu/packages/gnupg.scm index 6e16429..28ab67c 100644 --- a/gnu/packages/gnupg.scm +++ b/gnu/packages/gnupg.scm @@ -568,9 +568,9 @@ including tools for signing keys, keyring analysis, and party preparation. (license license:gpl2) (home-page "http://pgp-tools.alioth.debian.org/"))) -(define-public pinentry-gtk2 +(define-public pinentry-tty (package - (name "pinentry-gtk2") + (name "pinentry-tty") (version "0.9.7") (source (origin (method url-fetch) @@ -580,21 +580,33 @@ including tools for signing keys, keyring analysis, and party preparation. (base32 "1cp7wjqr6nx31mdclr61s2h84ijqjl0ph99kgj4vyawpjj1j1633")))) (build-system gnu-build-system) + (arguments + `(#:configure-flags '("--enable-pinentry-tty"))) (inputs `(("ncurses" ,ncurses) ("libassuan" ,libassuan) - ("libsecret" ,libsecret "out") - ("gtk+" ,gtk+-2) - ("glib" ,glib))) + ("libsecret" ,libsecret "out"))) (native-inputs `(("pkg-config" ,pkg-config))) (home-page "https://gnupg.org/aegypten2/") (synopsis "GnuPG's interface to passphrase input") (description - "Pinentry provides a console and a GTK+ GUI that allows users to -enter a passphrase when `gpg' or `gpg2' is run and needs it.") + "Pinentry provides a console that allows users to enter a passphrase when +@code{gpg} or @code{gpg2} is run and needs it.") (license license:gpl2+))) +(define-public pinentry-gtk2 + (package + (inherit pinentry-tty) + (name "pinentry-gtk2") + (inputs + `(("gtk+" ,gtk+-2) + ("glib" ,glib) + ,@(package-inputs pinentry-tty))) + (description + "Pinentry provides a console and a GTK+ GUI that allows users to enter a +passphrase when @code{gpg} or @code{gpg2} is run and needs it."))) + (define-public pinentry (package (inherit pinentry-gtk2) (name "pinentry"))) -- 2.8.1
From 843be013bae7207403b120e70ff1f115b2e1d967 Mon Sep 17 00:00:00 2001 From: Efraim Flashner <efr...@flashner.co.il> Date: Tue, 26 Apr 2016 16:39:31 +0300 Subject: [PATCH 3/3] gnu: Add pinentry-qt. * gnu/packages/gnupg.scm (pinentry-qt): New variable. --- gnu/packages/gnupg.scm | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/gnu/packages/gnupg.scm b/gnu/packages/gnupg.scm index 28ab67c..b7c6612 100644 --- a/gnu/packages/gnupg.scm +++ b/gnu/packages/gnupg.scm @@ -31,6 +31,7 @@ #:use-module (gnu packages perl) #:use-module (gnu packages pth) #:use-module (gnu packages python) + #:use-module (gnu packages qt) #:use-module (gnu packages readline) #:use-module (gnu packages compression) #:use-module (gnu packages databases) @@ -607,6 +608,17 @@ 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 @code{gpg} or @code{gpg2} is run and needs it."))) +(define-public pinentry-qt + (package + (inherit pinentry-tty) + (name "pinentry-qt") + (inputs + `(("qt" ,qt) + ,@(package-inputs pinentry-tty))) + (description + "Pinentry provides a console and a Qt GUI that allows users to enter a +passphrase when @code{gpg} or @code{gpg2} is run and needs it."))) + (define-public pinentry (package (inherit pinentry-gtk2) (name "pinentry"))) -- 2.8.1
signature.asc
Description: PGP signature