unofficial mirror of guix-devel@gnu.org 
 help / color / mirror / code / Atom feed
* [PATCH 0/2] New pinentries
@ 2016-04-26 14:03 Efraim Flashner
  2016-04-26 14:03 ` [PATCH 1/2] gnu: Add minimal pinentry Efraim Flashner
                   ` (2 more replies)
  0 siblings, 3 replies; 14+ messages in thread
From: Efraim Flashner @ 2016-04-26 14:03 UTC (permalink / raw)
  To: guix-devel

On a whim I removed gtk2 and glib from pinentry and the size of the closure
dropped from 700 MiB to 100 MiB. While I was at it I built a version with
qt5, if someone wanted it to match a future kde/qt-based desktop. I couldn't
get a gtk3 version building, but I didn't try too hard.

Efraim Flashner (2):
  gnu: Add minimal pinentry.
  gnu: Add pinentry-qt.

 gnu/packages/gnupg.scm | 34 +++++++++++++++++++++++++++++-----
 1 file changed, 29 insertions(+), 5 deletions(-)

-- 
2.8.1

^ permalink raw reply	[flat|nested] 14+ messages in thread

* [PATCH 1/2] gnu: Add minimal pinentry.
  2016-04-26 14:03 [PATCH 0/2] New pinentries Efraim Flashner
@ 2016-04-26 14:03 ` Efraim Flashner
  2016-04-26 17:14   ` Leo Famulari
  2016-04-26 14:03 ` [PATCH 2/2] gnu: Add pinentry-qt Efraim Flashner
  2016-04-26 14:33 ` [PATCH 0/2] New pinentries Ricardo Wurmus
  2 siblings, 1 reply; 14+ messages in thread
From: Efraim Flashner @ 2016-04-26 14:03 UTC (permalink / raw)
  To: guix-devel

* gnu/packages/gnupg.scm (pinentry): Rename pinentry-gtk, inherit from
pinentry.
[arguments]: Add pinentry-tty flag.
[inputs]: Use gtk+-2, glib for pinentry-gtk2 only.
[description]: Modify description based on inputs.
---
 gnu/packages/gnupg.scm | 22 +++++++++++++++++-----
 1 file changed, 17 insertions(+), 5 deletions(-)

diff --git a/gnu/packages/gnupg.scm b/gnu/packages/gnupg.scm
index d447007..71f6ece 100644
--- a/gnu/packages/gnupg.scm
+++ b/gnu/packages/gnupg.scm
@@ -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)
+    (name "pinentry-gtk2")
+    (inputs
+     `(("gtk+" ,gtk+-2)
+       ("glib" ,glib)
+       ,@(package-inputs pinentry)))
+    (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 paperkey
   (package
     (name "paperkey")
-- 
2.8.1

^ permalink raw reply related	[flat|nested] 14+ messages in thread

* [PATCH 2/2] gnu: Add pinentry-qt.
  2016-04-26 14:03 [PATCH 0/2] New pinentries Efraim Flashner
  2016-04-26 14:03 ` [PATCH 1/2] gnu: Add minimal pinentry Efraim Flashner
@ 2016-04-26 14:03 ` Efraim Flashner
  2016-04-26 17:15   ` Leo Famulari
  2016-04-26 14:33 ` [PATCH 0/2] New pinentries Ricardo Wurmus
  2 siblings, 1 reply; 14+ messages in thread
From: Efraim Flashner @ 2016-04-26 14:03 UTC (permalink / raw)
  To: guix-devel

* 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 71f6ece..6eac42d 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)
+    (name "pinentry-qt")
+    (inputs
+     `(("qt" ,qt)
+     ,@(package-inputs pinentry)))
+  (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 paperkey
   (package
     (name "paperkey")
-- 
2.8.1

^ permalink raw reply related	[flat|nested] 14+ messages in thread

* Re: [PATCH 0/2] New pinentries
  2016-04-26 14:03 [PATCH 0/2] New pinentries Efraim Flashner
  2016-04-26 14:03 ` [PATCH 1/2] gnu: Add minimal pinentry Efraim Flashner
  2016-04-26 14:03 ` [PATCH 2/2] gnu: Add pinentry-qt Efraim Flashner
@ 2016-04-26 14:33 ` Ricardo Wurmus
  2016-04-26 17:13   ` Leo Famulari
  2 siblings, 1 reply; 14+ messages in thread
From: Ricardo Wurmus @ 2016-04-26 14:33 UTC (permalink / raw)
  To: Efraim Flashner; +Cc: guix-devel


Hi Efraim,

> On a whim I removed gtk2 and glib from pinentry and the size of the closure
> dropped from 700 MiB to 100 MiB. While I was at it I built a version with
> qt5, if someone wanted it to match a future kde/qt-based desktop. I couldn't
> get a gtk3 version building, but I didn't try too hard.
>
> Efraim Flashner (2):
>   gnu: Add minimal pinentry.
>   gnu: Add pinentry-qt.
>
>  gnu/packages/gnupg.scm | 34 +++++++++++++++++++++++++++++-----
>  1 file changed, 29 insertions(+), 5 deletions(-)

These both look good to me.  I think our policy requires to split the
first patch in two, one to reduce pinentry, the other to add
pinentry-gtk2, but I’m not sure.

~~ Ricardo

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [PATCH 0/2] New pinentries
  2016-04-26 14:33 ` [PATCH 0/2] New pinentries Ricardo Wurmus
@ 2016-04-26 17:13   ` Leo Famulari
  2016-04-26 21:00     ` Efraim Flashner
  0 siblings, 1 reply; 14+ messages in thread
From: Leo Famulari @ 2016-04-26 17:13 UTC (permalink / raw)
  To: Ricardo Wurmus; +Cc: guix-devel

On Tue, Apr 26, 2016 at 04:33:16PM +0200, Ricardo Wurmus wrote:
> 
> Hi Efraim,
> 
> > On a whim I removed gtk2 and glib from pinentry and the size of the closure
> > dropped from 700 MiB to 100 MiB. While I was at it I built a version with
> > qt5, if someone wanted it to match a future kde/qt-based desktop. I couldn't
> > get a gtk3 version building, but I didn't try too hard.
> >
> > Efraim Flashner (2):
> >   gnu: Add minimal pinentry.
> >   gnu: Add pinentry-qt.
> >
> >  gnu/packages/gnupg.scm | 34 +++++++++++++++++++++++++++++-----
> >  1 file changed, 29 insertions(+), 5 deletions(-)
> 
> These both look good to me.  I think our policy requires to split the
> first patch in two, one to reduce pinentry, the other to add
> pinentry-gtk2, but I’m not sure.

I had the same thought, but it would mean we have a commit in our
history where we *don't* have the GTK pinentry. I think we should avoid
that.

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [PATCH 1/2] gnu: Add minimal pinentry.
  2016-04-26 14:03 ` [PATCH 1/2] gnu: Add minimal pinentry Efraim Flashner
@ 2016-04-26 17:14   ` Leo Famulari
  2016-04-26 21:02     ` Efraim Flashner
  0 siblings, 1 reply; 14+ messages in thread
From: Leo Famulari @ 2016-04-26 17:14 UTC (permalink / raw)
  To: Efraim Flashner; +Cc: guix-devel

On Tue, Apr 26, 2016 at 05:03:18PM +0300, Efraim Flashner wrote:
> * gnu/packages/gnupg.scm (pinentry): Rename pinentry-gtk, inherit from
> pinentry.
> [arguments]: Add pinentry-tty flag.
> [inputs]: Use gtk+-2, glib for pinentry-gtk2 only.
> [description]: Modify description based on inputs.
> ---
>  gnu/packages/gnupg.scm | 22 +++++++++++++++++-----
>  1 file changed, 17 insertions(+), 5 deletions(-)
> 
> diff --git a/gnu/packages/gnupg.scm b/gnu/packages/gnupg.scm
> index d447007..71f6ece 100644
> --- a/gnu/packages/gnupg.scm
> +++ b/gnu/packages/gnupg.scm
> @@ -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")))

Won't pinentry-gtk2 get configured with this? Can you change
pinentry-gtk2 so that it doesn't get this flag?

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [PATCH 2/2] gnu: Add pinentry-qt.
  2016-04-26 14:03 ` [PATCH 2/2] gnu: Add pinentry-qt Efraim Flashner
@ 2016-04-26 17:15   ` Leo Famulari
  0 siblings, 0 replies; 14+ messages in thread
From: Leo Famulari @ 2016-04-26 17:15 UTC (permalink / raw)
  To: Efraim Flashner; +Cc: guix-devel

On Tue, Apr 26, 2016 at 05:03:19PM +0300, Efraim Flashner wrote:
> * gnu/packages/gnupg.scm (pinentry-qt): New variable.

I have the same request about not passing --enable-pinentry-tty to this
package.

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [PATCH 0/2] New pinentries
  2016-04-26 17:13   ` Leo Famulari
@ 2016-04-26 21:00     ` Efraim Flashner
  2016-04-27 17:05       ` Leo Famulari
  0 siblings, 1 reply; 14+ messages in thread
From: Efraim Flashner @ 2016-04-26 21:00 UTC (permalink / raw)
  To: Leo Famulari; +Cc: guix-devel

[-- Attachment #1: Type: text/plain, Size: 1684 bytes --]

On Tue, Apr 26, 2016 at 01:13:09PM -0400, Leo Famulari wrote:
> On Tue, Apr 26, 2016 at 04:33:16PM +0200, Ricardo Wurmus wrote:
> > 
> > Hi Efraim,
> > 
> > > On a whim I removed gtk2 and glib from pinentry and the size of the closure
> > > dropped from 700 MiB to 100 MiB. While I was at it I built a version with
> > > qt5, if someone wanted it to match a future kde/qt-based desktop. I couldn't
> > > get a gtk3 version building, but I didn't try too hard.
> > >
> > > Efraim Flashner (2):
> > >   gnu: Add minimal pinentry.
> > >   gnu: Add pinentry-qt.
> > >
> > >  gnu/packages/gnupg.scm | 34 +++++++++++++++++++++++++++++-----
> > >  1 file changed, 29 insertions(+), 5 deletions(-)
> > 
> > These both look good to me.  I think our policy requires to split the
> > first patch in two, one to reduce pinentry, the other to add
> > pinentry-gtk2, but I’m not sure.
> 
> I had the same thought, but it would mean we have a commit in our
> history where we *don't* have the GTK pinentry. I think we should avoid
> that.

I thought about that too. With the patches I have we'll have people who
have pinentry installed who suddenly find that they don't have a gtk-2
pop-up anymore. I suppose another option would be to leave pinentry its
name and call the curses-only pinentry pinentry-curses or
pinentry-minimal or pinentry-tty.

In terms of the commit order, maybe one to rename pinentry->pinentry-gtk
and a second to add pinentry?

-- 
Efraim Flashner   <efraim@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

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 819 bytes --]

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [PATCH 1/2] gnu: Add minimal pinentry.
  2016-04-26 17:14   ` Leo Famulari
@ 2016-04-26 21:02     ` Efraim Flashner
  2016-04-27 17:06       ` Leo Famulari
  0 siblings, 1 reply; 14+ messages in thread
From: Efraim Flashner @ 2016-04-26 21:02 UTC (permalink / raw)
  To: Leo Famulari; +Cc: guix-devel

[-- Attachment #1: Type: text/plain, Size: 1583 bytes --]

On Tue, Apr 26, 2016 at 01:14:40PM -0400, Leo Famulari wrote:
> On Tue, Apr 26, 2016 at 05:03:18PM +0300, Efraim Flashner wrote:
> > * gnu/packages/gnupg.scm (pinentry): Rename pinentry-gtk, inherit from
> > pinentry.
> > [arguments]: Add pinentry-tty flag.
> > [inputs]: Use gtk+-2, glib for pinentry-gtk2 only.
> > [description]: Modify description based on inputs.
> > ---
> >  gnu/packages/gnupg.scm | 22 +++++++++++++++++-----
> >  1 file changed, 17 insertions(+), 5 deletions(-)
> > 
> > diff --git a/gnu/packages/gnupg.scm b/gnu/packages/gnupg.scm
> > index d447007..71f6ece 100644
> > --- a/gnu/packages/gnupg.scm
> > +++ b/gnu/packages/gnupg.scm
> > @@ -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")))
> 
> Won't pinentry-gtk2 get configured with this? Can you change
> pinentry-gtk2 so that it doesn't get this flag?

It will get the flag the way its currently configured, but pinentry-gtk2
will still be the default method. The real difference (if I understand
it correctly) is that now if you ssh into the box and you trigger
pinentry it should now work.

-- 
Efraim Flashner   <efraim@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

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 819 bytes --]

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [PATCH 0/2] New pinentries
  2016-04-26 21:00     ` Efraim Flashner
@ 2016-04-27 17:05       ` Leo Famulari
  2016-04-28  1:59         ` Efraim Flashner
  0 siblings, 1 reply; 14+ messages in thread
From: Leo Famulari @ 2016-04-27 17:05 UTC (permalink / raw)
  To: Efraim Flashner; +Cc: guix-devel

On Wed, Apr 27, 2016 at 12:00:59AM +0300, Efraim Flashner wrote:
> On Tue, Apr 26, 2016 at 01:13:09PM -0400, Leo Famulari wrote:
> > On Tue, Apr 26, 2016 at 04:33:16PM +0200, Ricardo Wurmus wrote:
> > > 
> > > Hi Efraim,
> > > 
> > > > On a whim I removed gtk2 and glib from pinentry and the size of the closure
> > > > dropped from 700 MiB to 100 MiB. While I was at it I built a version with
> > > > qt5, if someone wanted it to match a future kde/qt-based desktop. I couldn't
> > > > get a gtk3 version building, but I didn't try too hard.
> > > >
> > > > Efraim Flashner (2):
> > > >   gnu: Add minimal pinentry.
> > > >   gnu: Add pinentry-qt.
> > > >
> > > >  gnu/packages/gnupg.scm | 34 +++++++++++++++++++++++++++++-----
> > > >  1 file changed, 29 insertions(+), 5 deletions(-)
> > > 
> > > These both look good to me.  I think our policy requires to split the
> > > first patch in two, one to reduce pinentry, the other to add
> > > pinentry-gtk2, but I’m not sure.
> > 
> > I had the same thought, but it would mean we have a commit in our
> > history where we *don't* have the GTK pinentry. I think we should avoid
> > that.
> 
> I thought about that too. With the patches I have we'll have people who
> have pinentry installed who suddenly find that they don't have a gtk-2
> pop-up anymore. I suppose another option would be to leave pinentry its
> name and call the curses-only pinentry pinentry-curses or
> pinentry-minimal or pinentry-tty.

Good point. That would be a poor experience for our users.

Although I would prefer if the console-based pinentry was called
pinentry, I'd rather not change the meaning of the existing variable for
a program that is so important.

So, pinentry-tty or pinentry-curses makes sense to me.

> In terms of the commit order, maybe one to rename pinentry->pinentry-gtk
> and a second to add pinentry?

Since I think it's best if users of 'pinentry' don't experience any
disruption, perhaps we could add a variable pinentry-gtk that inherits
from pinentry? Maybe eventually we could deprecate 'pinentry'.

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [PATCH 1/2] gnu: Add minimal pinentry.
  2016-04-26 21:02     ` Efraim Flashner
@ 2016-04-27 17:06       ` Leo Famulari
  0 siblings, 0 replies; 14+ messages in thread
From: Leo Famulari @ 2016-04-27 17:06 UTC (permalink / raw)
  To: Efraim Flashner; +Cc: guix-devel

On Wed, Apr 27, 2016 at 12:02:47AM +0300, Efraim Flashner wrote:
> On Tue, Apr 26, 2016 at 01:14:40PM -0400, Leo Famulari wrote:
> > On Tue, Apr 26, 2016 at 05:03:18PM +0300, Efraim Flashner wrote:
> > > * gnu/packages/gnupg.scm (pinentry): Rename pinentry-gtk, inherit from
> > > pinentry.
> > > [arguments]: Add pinentry-tty flag.
> > > [inputs]: Use gtk+-2, glib for pinentry-gtk2 only.
> > > [description]: Modify description based on inputs.
> > > ---
> > >  gnu/packages/gnupg.scm | 22 +++++++++++++++++-----
> > >  1 file changed, 17 insertions(+), 5 deletions(-)
> > > 
> > > diff --git a/gnu/packages/gnupg.scm b/gnu/packages/gnupg.scm
> > > index d447007..71f6ece 100644
> > > --- a/gnu/packages/gnupg.scm
> > > +++ b/gnu/packages/gnupg.scm
> > > @@ -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")))
> > 
> > Won't pinentry-gtk2 get configured with this? Can you change
> > pinentry-gtk2 so that it doesn't get this flag?
> 
> It will get the flag the way its currently configured, but pinentry-gtk2
> will still be the default method. The real difference (if I understand
> it correctly) is that now if you ssh into the box and you trigger
> pinentry it should now work.

Ah, that sounds good! I've never used pinentry on a remote box but I can
see it being annoying if one's preferred pinentry did not work at all on
the console.

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [PATCH 0/2] New pinentries
  2016-04-27 17:05       ` Leo Famulari
@ 2016-04-28  1:59         ` Efraim Flashner
  2016-04-28  2:49           ` Efraim Flashner
  0 siblings, 1 reply; 14+ messages in thread
From: Efraim Flashner @ 2016-04-28  1:59 UTC (permalink / raw)
  To: Leo Famulari; +Cc: guix-devel

[-- Attachment #1: Type: text/plain, Size: 2669 bytes --]

On Wed, Apr 27, 2016 at 01:05:49PM -0400, Leo Famulari wrote:
> On Wed, Apr 27, 2016 at 12:00:59AM +0300, Efraim Flashner wrote:
> > On Tue, Apr 26, 2016 at 01:13:09PM -0400, Leo Famulari wrote:
> > > On Tue, Apr 26, 2016 at 04:33:16PM +0200, Ricardo Wurmus wrote:
> > > > 
> > > > Hi Efraim,
> > > > 
> > > > > On a whim I removed gtk2 and glib from pinentry and the size of the closure
> > > > > dropped from 700 MiB to 100 MiB. While I was at it I built a version with
> > > > > qt5, if someone wanted it to match a future kde/qt-based desktop. I couldn't
> > > > > get a gtk3 version building, but I didn't try too hard.
> > > > >
> > > > > Efraim Flashner (2):
> > > > >   gnu: Add minimal pinentry.
> > > > >   gnu: Add pinentry-qt.
> > > > >
> > > > >  gnu/packages/gnupg.scm | 34 +++++++++++++++++++++++++++++-----
> > > > >  1 file changed, 29 insertions(+), 5 deletions(-)
> > > > 
> > > > These both look good to me.  I think our policy requires to split the
> > > > first patch in two, one to reduce pinentry, the other to add
> > > > pinentry-gtk2, but I’m not sure.
> > > 
> > > I had the same thought, but it would mean we have a commit in our
> > > history where we *don't* have the GTK pinentry. I think we should avoid
> > > that.
> > 
> > I thought about that too. With the patches I have we'll have people who
> > have pinentry installed who suddenly find that they don't have a gtk-2
> > pop-up anymore. I suppose another option would be to leave pinentry its
> > name and call the curses-only pinentry pinentry-curses or
> > pinentry-minimal or pinentry-tty.
> 
> Good point. That would be a poor experience for our users.
> 
> Although I would prefer if the console-based pinentry was called
> pinentry, I'd rather not change the meaning of the existing variable for
> a program that is so important.
> 
> So, pinentry-tty or pinentry-curses makes sense to me.

I'll double-check the descriptions to add that the gtk/qt versions also
have the curses interface, don't want people to think they need
pinentry-curses and pinentry-gtk.

> 
> > In terms of the commit order, maybe one to rename pinentry->pinentry-gtk
> > and a second to add pinentry?
> 
> Since I think it's best if users of 'pinentry' don't experience any
> disruption, perhaps we could add a variable pinentry-gtk that inherits
> from pinentry? Maybe eventually we could deprecate 'pinentry'.

I like that idea.

-- 
Efraim Flashner   <efraim@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

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 819 bytes --]

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [PATCH 0/2] New pinentries
  2016-04-28  1:59         ` Efraim Flashner
@ 2016-04-28  2:49           ` Efraim Flashner
  2016-04-29  5:42             ` Leo Famulari
  0 siblings, 1 reply; 14+ messages in thread
From: Efraim Flashner @ 2016-04-28  2:49 UTC (permalink / raw)
  To: Leo Famulari; +Cc: guix-devel


[-- Attachment #1.1: Type: text/plain, Size: 571 bytes --]

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   <efraim@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

[-- Attachment #1.2: 0001-gnu-pinentry-Rename-to-pinentry-gtk2.patch --]
[-- Type: text/plain, Size: 1322 bytes --]

From 533668b17bcc901c132d93144a78f45c2f8aa918 Mon Sep 17 00:00:00 2001
From: Efraim Flashner <efraim@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


[-- Attachment #1.3: 0002-gnu-Add-pinentry-tty.patch --]
[-- Type: text/plain, Size: 2605 bytes --]

From 730e98dd23da1fb408ec8e1942a2cc526b3e988b Mon Sep 17 00:00:00 2001
From: Efraim Flashner <efraim@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


[-- Attachment #1.4: 0003-gnu-Add-pinentry-qt.patch --]
[-- Type: text/plain, Size: 1482 bytes --]

From 843be013bae7207403b120e70ff1f115b2e1d967 Mon Sep 17 00:00:00 2001
From: Efraim Flashner <efraim@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


[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 819 bytes --]

^ permalink raw reply related	[flat|nested] 14+ messages in thread

* Re: [PATCH 0/2] New pinentries
  2016-04-28  2:49           ` Efraim Flashner
@ 2016-04-29  5:42             ` Leo Famulari
  0 siblings, 0 replies; 14+ messages in thread
From: Leo Famulari @ 2016-04-29  5:42 UTC (permalink / raw)
  To: Efraim Flashner; +Cc: guix-devel

On Thu, Apr 28, 2016 at 05:49:09AM +0300, Efraim Flashner wrote:
> 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

They work for me!

^ permalink raw reply	[flat|nested] 14+ messages in thread

end of thread, other threads:[~2016-04-29  5:42 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-04-26 14:03 [PATCH 0/2] New pinentries Efraim Flashner
2016-04-26 14:03 ` [PATCH 1/2] gnu: Add minimal pinentry Efraim Flashner
2016-04-26 17:14   ` Leo Famulari
2016-04-26 21:02     ` Efraim Flashner
2016-04-27 17:06       ` Leo Famulari
2016-04-26 14:03 ` [PATCH 2/2] gnu: Add pinentry-qt Efraim Flashner
2016-04-26 17:15   ` Leo Famulari
2016-04-26 14:33 ` [PATCH 0/2] New pinentries Ricardo Wurmus
2016-04-26 17:13   ` Leo Famulari
2016-04-26 21:00     ` Efraim Flashner
2016-04-27 17:05       ` Leo Famulari
2016-04-28  1:59         ` Efraim Flashner
2016-04-28  2:49           ` Efraim Flashner
2016-04-29  5:42             ` Leo Famulari

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).