Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 553628 - app-eselect/eselect-pinentry-0.5: list pinentry-gnome3 before pinentry-gtk-2
Summary: app-eselect/eselect-pinentry-0.5: list pinentry-gnome3 before pinentry-gtk-2
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Crypto team [DISABLED]
URL:
Whiteboard:
Keywords:
Depends on:
Blocks: gnome-3.16
  Show dependency tree
 
Reported: 2015-06-30 10:26 UTC by Pacho Ramos
Modified: 2015-07-01 19:00 UTC (History)
3 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Pacho Ramos gentoo-dev 2015-06-30 10:26:20 UTC
Current eselect file has:
SYMLINK_TARGETS=( pinentry-qt pinentry-gtk-2 pinentry-qt4 pinentry-curses pinentry-gnome3 )

As the first is preferred by bin-symlink.bash, people having both USE flags (gtk and gnome-keyring... that is the default for all Gnome users) will always get the old gtk2 one selected over gnome3 one by default. 

This could be avoided simply moving pinentry-gnome3 over pinentry-gtk2 and this won't affect non gnome users as those won't have "gnome-keyring" USE enabled and, then, pinentry-gnome3 won't be installed

Thanks
Comment 1 Kristian Fiskerstrand (RETIRED) gentoo-dev 2015-06-30 10:42:14 UTC
(In reply to Pacho Ramos from comment #0)
> Current eselect file has:
> SYMLINK_TARGETS=( pinentry-qt pinentry-gtk-2 pinentry-qt4 pinentry-curses
> pinentry-gnome3 )
> 
> As the first is preferred by bin-symlink.bash, people having both USE flags
> (gtk and gnome-keyring... that is the default for all Gnome users) will
> always get the old gtk2 one selected over gnome3 one by default. 

Personally I prefer it that way, i.e. that the optional gnome3 functionality is specifically activated. This should be easy enough to write up in a wiki or whatnot, or elog during installation of related packages.
Comment 2 Alon Bar-Lev (RETIRED) gentoo-dev 2015-06-30 11:06:48 UTC
(In reply to Kristian Fiskerstrand from comment #1)
> (In reply to Pacho Ramos from comment #0)
> > Current eselect file has:
> > SYMLINK_TARGETS=( pinentry-qt pinentry-gtk-2 pinentry-qt4 pinentry-curses
> > pinentry-gnome3 )
> > 
> > As the first is preferred by bin-symlink.bash, people having both USE flags
> > (gtk and gnome-keyring... that is the default for all Gnome users) will
> > always get the old gtk2 one selected over gnome3 one by default. 
> 
> Personally I prefer it that way, i.e. that the optional gnome3 functionality
> is specifically activated. This should be easy enough to write up in a wiki
> or whatnot, or elog during installation of related packages.

I was about to reply the same :)
Comment 3 Pacho Ramos gentoo-dev 2015-06-30 18:50:52 UTC
I don't see much sense on defaulting to old gtk2 pinentry for people enabling "gnome-keyring" USE flag :/. With current setup all people with that setup will need to change the provider
Comment 4 Alon Bar-Lev (RETIRED) gentoo-dev 2015-06-30 18:57:00 UTC
(In reply to Pacho Ramos from comment #3)
> I don't see much sense on defaulting to old gtk2 pinentry for people
> enabling "gnome-keyring" USE flag :/. With current setup all people with
> that setup will need to change the provider

gtk2 is not old it is an option detached from gnome, this option is what gnupg upstream supports. the issue is gnome specific.

as far as I can see eselect-xxx does not have USE flags, it selects based on priority provided by author, in case of pinentry the upstream options should be first.
Comment 5 Pacho Ramos gentoo-dev 2015-06-30 19:12:47 UTC
I am referring to the USE flags from app-crypt/pinentry... that uses eselect-pinentry and, then the problem appears as it forces all people wanting gnome integration to change that setting manually. If pinentry is emerged without "gnome-keyring" USE flag, eselect-pinentry will simply go to the next option and then it will still use the gtk2 one (well... if you want to make it even more "gnome specific", maybe the pinentry "gnome-keyring" USE flag could be renamed to "gnome" to clarify it will add gnome integration support)
Comment 6 Alon Bar-Lev (RETIRED) gentoo-dev 2015-06-30 19:33:48 UTC
the only thing we can do is to add virtual/pinentry so that gnupg will depend on this instead of app-crypt/pinentry, of course default will be app-crypt/pinentry.

if you think all gnome users will want the gnome pinentry you can pull it directly within gnome packages.

gnupg and pinentry should not be gnome aware, the eselect-pinentry should prefer upstream if exists.
Comment 7 Alon Bar-Lev (RETIRED) gentoo-dev 2015-06-30 19:48:48 UTC
Maybe I understand now what you want... sorry for the delay.

You want app-crypt/pinentry to skip build of gtk2 if gnome-keyring USE is enabled? This I can understand.
Comment 8 Pacho Ramos gentoo-dev 2015-06-30 20:41:24 UTC
Well... I have no problems on having both (gtk2 and gnome) pinentry providers present. The situation is:
- Most gnome users will have "gnome gnome-keyring gtk" globally enabled in USE flags

=> This will lead to both pinentries being built but gtk2 still being preferred even for this "gnome setup"

Moving the order in eselect module will solve this while not affecting to people running with "-gnome-keyring" and, then:
- gnome users will still have gtk2 pinentry built (if they want to use it for testing or some other strange reason) but gnome3 one preferred
- Non gnome users will see no change as they won't have the new gnome3 pinentry built and, then, they will still follow to upstream preference on gtk2 one
Comment 9 Gilles Dartiguelongue (RETIRED) gentoo-dev 2015-07-01 13:32:55 UTC
In other words, what is proposed is that have a relevant default for people having gnome profile selected while still respecting upstream default for others.
Comment 10 Kristian Fiskerstrand (RETIRED) gentoo-dev 2015-07-01 14:12:16 UTC
(In reply to Gilles Dartiguelongue from comment #9)
> In other words, what is proposed is that have a relevant default for people
> having gnome profile selected while still respecting upstream default for
> others.

If we end up doing this I actually agree the correct place to do it is in eselect-pinentry rather than completely disabling the gtk2 version in pinentry, that changes the default but leaves the optionality.

As this seems to be a strong request from gnome, and it is controlled through a gnome-keyring USE flag, i.e clearly specific to gnome and this pinentry variant is included in upstream, so its not such a large deviation, upon some more thinking I'm actually OK with such a change.
Comment 11 Alon Bar-Lev (RETIRED) gentoo-dev 2015-07-01 16:54:31 UTC
ok
Comment 12 Kristian Fiskerstrand (RETIRED) gentoo-dev 2015-07-01 17:57:48 UTC
(In reply to Alon Bar-Lev from comment #11)
> ok

*eselect-pinentry-0.6 (01 Jul 2015)

  01 Jul 2015; Kristian Fiskerstrand <k_f@gentoo.org>
  +eselect-pinentry-0.6.ebuild, +files/pinentry.eselect-0.6:
  If pinentry-gnome3 exist, prefer this over the qt and gtk versions. The
  version will only exist if gnome-keyring is specified for pinentry build.
Comment 13 Gilles Dartiguelongue (RETIRED) gentoo-dev 2015-07-01 18:18:00 UTC
Thanks guys.
Comment 14 Pacho Ramos gentoo-dev 2015-07-01 19:00:54 UTC
Thanks a lot :)