* Re: [gentoo-portage-dev] [PATCH][v4] enable user settable gpg keyservers
@ 2019-03-03 21:43 99% ` Matthew Thode
0 siblings, 0 replies; 1+ results
From: Matthew Thode @ 2019-03-03 21:43 UTC (permalink / raw
To: gentoo-portage-dev
[-- Attachment #1.1: Type: text/plain, Size: 2611 bytes --]
On 19-02-26 15:33:53, Matthew Thode wrote:
> On 19-02-26 10:52:52, Zac Medico wrote:
> > On 2/26/19 10:48 AM, Zac Medico wrote:
> > > On 2/25/19 1:45 PM, Matthew Thode wrote:
> > >> On 19-02-25 15:41:03, Matthew Thode wrote:
> > >>> On 19-02-25 14:34:46, Matthew Thode wrote:
> > >>>> Allowing users to define which keyservers they update from allows them
> > >>>> to work around buggy keyservers. It is also useful for local mirrors
> > >>>> and / or private keyservers.
> > >>>>
> > >>>> It's likely that I'm setting the default incorrectly and not
> > >>>> alphabetizing right, but the code works at least...
> > >>>>
> > >>>
> > >>> Ok, let's try that again, should be cleaner/better/etc
> > >>>
> > >>
> > >> v3, attached
> > >>
> > >> ---
> > >
> > >> lib/portage/repository/config.py | 6 ++++++
> > >> lib/portage/sync/syncbase.py | 6 +++---
> > >> 2 files changed, 9 insertions(+), 3 deletions(-)
> > >>
> > >> diff --git a/lib/portage/repository/config.py b/lib/portage/repository/config.py
> > >> index 482711c4b..235371ce5 100644
> > >> --- a/lib/portage/repository/config.py
> > >> +++ b/lib/portage/repository/config.py
> > >> @@ -109,6 +109,7 @@ class RepoConfig(object):
> > >> 'sync_allow_hardlinks',
> > >> 'sync_depth',
> > >> 'sync_hooks_only_on_change',
> > >> + 'sync_openpgp_keyserver',
> > >> 'sync_openpgp_key_path',
> > >> 'sync_openpgp_key_refresh_retry_count',
> > >> 'sync_openpgp_key_refresh_retry_delay_exp_base',
> > >> @@ -224,6 +225,9 @@ class RepoConfig(object):
> > >> self.sync_allow_hardlinks = repo_opts.get(
> > >> 'sync-allow-hardlinks', 'true').lower() in ('true', 'yes')
> > >>
> > >> + self.sync_openpgp_keyserver = repo_opts.get(
> > >> + 'sync-openpgp-keyserver', 'hkps.pool.sks-keyservers.net').strip.lower()
> > >
> > > It needs to be like this:
> > >
> > > + 'sync-openpgp-keyserver', 'hkps.pool.sks-keyservers.net').strip().lower() or None
> > >
> > > because gemato handles None but not empty strings.
> >
> > Also let's not provide a default keyserver, let gemato handle that.
> >
> > Also please update man/portage.5.
> >
>
> Ok, that stanza no reads:
>
> self.sync_openpgp_keyserver = repo_opts.get(
> 'sync-openpgp-keyserver').strip.lower() or None
>
> I didn't see a section for the sync-openpgp options though, let me know
> anything else or I'll send the updated patch tonight.
>
v4 patch attached (as said previously, no section in man page for
sync-openpgp options so not added there).
--
Matthew Thode (prometheanfire)
[-- Attachment #1.2: 0001-enable-user-settable-gpg-keyservers.patch --]
[-- Type: text/x-diff, Size: 3135 bytes --]
From f87a788f58b4efab07d09947be0920bffa01c66b Mon Sep 17 00:00:00 2001
From: Matthew Thode <mthode@mthode.org>
Date: Mon, 25 Feb 2019 14:14:20 -0600
Subject: [PATCH] enable user settable gpg keyservers
Allowing users to define which keyservers they update from allows them
to work around buggy keyservers. It is also useful for local mirrors
and / or private keyservers.
Signed-off-by: Matthew Thode <mthode@mthode.org>
---
lib/portage/repository/config.py | 6 ++++++
lib/portage/sync/syncbase.py | 6 +++---
2 files changed, 9 insertions(+), 3 deletions(-)
diff --git a/lib/portage/repository/config.py b/lib/portage/repository/config.py
index 482711c4b..e9d5e0a9a 100644
--- a/lib/portage/repository/config.py
+++ b/lib/portage/repository/config.py
@@ -109,6 +109,7 @@ class RepoConfig(object):
'sync_allow_hardlinks',
'sync_depth',
'sync_hooks_only_on_change',
+ 'sync_openpgp_keyserver',
'sync_openpgp_key_path',
'sync_openpgp_key_refresh_retry_count',
'sync_openpgp_key_refresh_retry_delay_exp_base',
@@ -224,6 +225,9 @@ class RepoConfig(object):
self.sync_allow_hardlinks = repo_opts.get(
'sync-allow-hardlinks', 'true').lower() in ('true', 'yes')
+ self.sync_openpgp_keyserver = repo_opts.get(
+ 'sync-openpgp-keyserver').strip.lower() or None
+
self.sync_openpgp_key_path = repo_opts.get(
'sync-openpgp-key-path', None)
@@ -601,6 +605,7 @@ class RepoConfigLoader(object):
'sync_allow_hardlinks',
'sync_depth',
'sync_hooks_only_on_change',
+ 'sync_openpgp_keyserver',
'sync_openpgp_key_path',
'sync_openpgp_key_refresh_retry_count',
'sync_openpgp_key_refresh_retry_delay_exp_base',
@@ -1047,6 +1052,7 @@ class RepoConfigLoader(object):
"main_repo",
"priority",
"sync_depth",
+ "sync_openpgp_keyserver",
"sync_openpgp_key_path",
"sync_openpgp_key_refresh_retry_count",
"sync_openpgp_key_refresh_retry_delay_exp_base",
diff --git a/lib/portage/sync/syncbase.py b/lib/portage/sync/syncbase.py
index 83b35c667..ae9ec938e 100644
--- a/lib/portage/sync/syncbase.py
+++ b/lib/portage/sync/syncbase.py
@@ -252,10 +252,10 @@ class SyncBase(object):
@type openpgp_env: gemato.openpgp.OpenPGPEnvironment
"""
out = portage.output.EOutput(quiet=('--quiet' in self.options['emerge_config'].opts))
- out.ebegin('Refreshing keys from keyserver')
+ out.ebegin('Refreshing keys from keyserver {s}'.format(s=self.repo.sync_openpgp_keyserver))
retry_decorator = self._key_refresh_retry_decorator()
if retry_decorator is None:
- openpgp_env.refresh_keys()
+ openpgp_env.refresh_keys(keyserver=self.repo.sync_openpgp_keyserver)
else:
def noisy_refresh_keys():
"""
@@ -263,7 +263,7 @@ class SyncBase(object):
errors, display errors as soon as they occur.
"""
try:
- openpgp_env.refresh_keys()
+ openpgp_env.refresh_keys(keyserver=self.repo.sync_openpgp_keyserver)
except Exception as e:
writemsg_level("%s\n" % (e,),
level=logging.ERROR, noiselevel=-1)
--
2.19.2
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]
^ permalink raw reply related [relevance 99%]
Results 1-1 of 1 | reverse | options above
-- pct% links below jump to the message on this page, permalinks otherwise --
2019-02-25 20:34 [gentoo-portage-dev] [PATCH] enable user settable gpg keyservers Matthew Thode
2019-02-25 21:41 ` Matthew Thode
2019-02-25 21:45 ` [gentoo-portage-dev] [PATCH][v3] enable user settable gpg keyservers (attached) Matthew Thode
2019-02-26 18:48 ` Zac Medico
2019-02-26 18:52 ` Zac Medico
2019-02-26 21:33 ` Matthew Thode
2019-03-03 21:43 99% ` [gentoo-portage-dev] [PATCH][v4] enable user settable gpg keyservers Matthew Thode
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox