Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 775143 - app-admin/gopass >=1.12.x needs to build other gopass binareis, otherwise it is useless
Summary: app-admin/gopass >=1.12.x needs to build other gopass binareis, otherwise it ...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal
Assignee: Mikle Kolyada (RETIRED)
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2021-03-09 21:44 UTC by Mamadou Babaei
Modified: 2021-03-12 15:11 UTC (History)
1 user (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 Mamadou Babaei 2021-03-09 21:44:24 UTC
In the past all gopass binaries (e.g. goass, gopass-git-credentials, gopass-hibp, gopass-jsonapi, gopass-summon-provider) were hosted on the same repo at https://github.com/gopasspw/gopass. Now, if you check the repo for version >=1.12.0 onwards, they separated each binary under https://github.com/gopasspw.

So what is wrong? Up to the 1.11.x ebuild all those binaries were installed along with gopass binary. For example, my browser integration stopped working after an emerge --sync, because the 1.12.x ebuild won't build the gopass-jsonapi anymore.

So, basically, the ebuild now should fetch and build those binaries from separate repos. I don't know if that's possible or no with portage or each one should have its own ebuild. Otherwise, I would have submitted a patch.

Thank you.
Comment 1 Mikle Kolyada (RETIRED) archtester Gentoo Infrastructure gentoo-dev Security 2021-03-09 22:37:40 UTC
I will take a look. We will need a separate ebuild for every single plugin *sigh*. Morover, these plugins need only specific gopass version to *build* themselves [1] so making them depending on in-tree gopass versions is pointless, we still need to define an EGO_SUM dependency (even though the resulting gopass-jsonapi binary requires 1.11.x to build but works pretty well on gopass 1.12.x as per upstream and tests :/).

[1] - https://github.com/gopasspw/gopass-jsonapi/blob/v1.11.1/go.sum#L48
Comment 2 Mamadou Babaei 2021-03-09 23:35:29 UTC
Thank you for the explanation. Their decision is a bit weird in respect to packaging in source distros (Gentoo, FreeBSD, ...) and Go projects directory structure. They could have used Git submodules.
Comment 3 Larry the Git Cow gentoo-dev 2021-03-10 07:32:16 UTC
The bug has been referenced in the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d397b83d464ff1f9c252d03cd098e1793bb543ba

commit d397b83d464ff1f9c252d03cd098e1793bb543ba
Author:     Mikle Kolyada <zlogene@gentoo.org>
AuthorDate: 2021-03-10 07:30:22 +0000
Commit:     Mikle Kolyada <zlogene@gentoo.org>
CommitDate: 2021-03-10 07:31:33 +0000

    app-admin/gopass-jsonapi: initial import
    
    Bug: https://bugs.gentoo.org/775143
    Package-Manager: Portage-3.0.13, Repoman-3.0.2
    Signed-off-by: Mikle Kolyada <zlogene@gentoo.org>

 app-admin/gopass-jsonapi/Manifest                  | 230 ++++++++++++++++++
 .../gopass-jsonapi/gopass-jsonapi-1.11.1.ebuild    | 260 +++++++++++++++++++++
 app-admin/gopass-jsonapi/metadata.xml              |  11 +
 3 files changed, 501 insertions(+)
Comment 4 Larry the Git Cow gentoo-dev 2021-03-10 08:01:28 UTC
The bug has been referenced in the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=3b14f365d1e2593ad002d30958821024266f1687

commit 3b14f365d1e2593ad002d30958821024266f1687
Author:     Mikle Kolyada <zlogene@gentoo.org>
AuthorDate: 2021-03-10 08:00:52 +0000
Commit:     Mikle Kolyada <zlogene@gentoo.org>
CommitDate: 2021-03-10 08:00:52 +0000

    app-admin/gopass-hibp: Initial import
    
    Bug: https://bugs.gentoo.org/775143
    Package-Manager: Portage-3.0.13, Repoman-3.0.2
    Signed-off-by: Mikle Kolyada <zlogene@gentoo.org>

 app-admin/gopass-hibp/Manifest                  | 203 +++++++++++++++++++++
 app-admin/gopass-hibp/gopass-hibp-1.12.0.ebuild | 233 ++++++++++++++++++++++++
 app-admin/gopass-hibp/metadata.xml              |  11 ++
 3 files changed, 447 insertions(+)
Comment 5 Larry the Git Cow gentoo-dev 2021-03-10 09:32:37 UTC
The bug has been referenced in the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c08d194e9f66526dd3260d8daedbfb6a7fc85df3

commit c08d194e9f66526dd3260d8daedbfb6a7fc85df3
Author:     Mikle Kolyada <zlogene@gentoo.org>
AuthorDate: 2021-03-10 09:29:04 +0000
Commit:     Mikle Kolyada <zlogene@gentoo.org>
CommitDate: 2021-03-10 09:29:28 +0000

    app-admin/gopass-summon-provider: Initial import
    
    Bug: https://bugs.gentoo.org/775143
    Package-Manager: Portage-3.0.13, Repoman-3.0.2
    Signed-off-by: Mikle Kolyada <zlogene@gentoo.org>

 app-admin/gopass-summon-provider/Manifest          | 134 +++++++++++++++++
 .../gopass-summon-provider-1.12.0.ebuild           | 165 +++++++++++++++++++++
 app-admin/gopass-summon-provider/metadata.xml      |  11 ++
 3 files changed, 310 insertions(+)
Comment 6 Mikle Kolyada (RETIRED) archtester Gentoo Infrastructure gentoo-dev Security 2021-03-10 10:10:17 UTC
All should be fine now and usable
Comment 7 Mamadou Babaei 2021-03-10 15:27:26 UTC
Thank you so much for the quick action! I updated and it works flawlessly.

As a suggestion (please feel free to ignore it if you think it won't make sense), maybe it's a good idea to add the other ebuilds as use flags, so the installation could be controlled through the main ebuild. I think it would be a nice addition to the main ebuild.

app-admin/gopass git-credential hibp jsonapi summon-provider
Comment 8 Mikle Kolyada (RETIRED) archtester Gentoo Infrastructure gentoo-dev Security 2021-03-12 14:28:27 UTC
(In reply to Mamadou Babaei from comment #7)
> Thank you so much for the quick action! I updated and it works flawlessly.
> 
> As a suggestion (please feel free to ignore it if you think it won't make
> sense), maybe it's a good idea to add the other ebuilds as use flags, so the
> installation could be controlled through the main ebuild. I think it would
> be a nice addition to the main ebuild.
> 
> app-admin/gopass git-credential hibp jsonapi summon-provider

Adding use flags for plugins to gopass itself is not optimal. Gentoo has no runtime USE flags (yet), this means, whenever you change the USE flags for gopass to build a plugin (which is gopass independent per se) you gonna also rebuild gopass for nothing.
Comment 9 Mamadou Babaei 2021-03-12 15:11:33 UTC
Thank you for the clarification.