On Sat, Jun 30, 2018 at 12:50 PM Nikos Chantziaras <rea...@gmail.com> wrote:
>
> On 30/06/18 19:15, Rich Freeman wrote:
> >
> > If you are using git syncing I believe that portage will verify that
> > the top commit (which is the only one that really matters) is using a
> > trusted key if you put the following line in repos.conf for the
> > repository:
> > sync-git-verify-commit-signature = true
> >
> > Obviously this only works with repositories signed by one of the Gentoo 
> > keys.
>
> When using git to sync portage, aren't you supposed to use:
>
>    git://anongit.gentoo.org/repo/sync/gentoo.git
>
> anyway instead of GitHub?
>

A few comments there:

1.  That particular repository isn't ideal since it lacks metadata.
You'll benefit from the better performance of git vs rsync, but you'll
lose out regenerating the cache.  It is of course the right place to
pull for patches/etc.
2.  The gentoo-mirror stable branch that benefits from CI+metadata
isn't available on Gentoo infra as far as I'm aware.
3.  No matter where you're syncing from, it still makes sense to
verify the gpg signatures.  This time it was github being compromised,
but what if a mirror or a gentoo infra server had been compromised?
Granted, in some of those scenarios gpg wouldn't help, but it will
definitely defeat some attacks, so it is beneficial to test it.  If
gpg doesn't verify the repository, you probably don't want to be using
it without some attention.

All that said, I'm not sure what portage even does if it fails to
verify.  The git pull was already done, so does it just output an
error but still leave the corrupt tree out there for any subsequent
emerge commands to see?  Or does it do something to make the tree
invalid?

-- 
Rich

Reply via email to