Bruno Haible <br...@clisp.org> writes:

> Simon Josefsson wrote:
>> Why you may ask?
>
> Yes, the question immediately comes up: What problem do you propose to solve?
>
>> 1) If savannah is offline or compromised, having widely mirrored
>> known-good offline copies of the entire gnulib repository is nice.
>> 
>> 2) Output of 'git clone' is not serialized or use a stable format, so a
>> 'tar cfz gnulib-20241210.tar.gz gnulib/' works poorly.
>> 
>> 3) It would add PGP-style authentication and integrity checking of the
>> repository.  Currently we only offer HTTPS only against Savannah and the
>> WebPKI is not as strong as trusting a PGP signature directly.
>
> These three arguments apply to all packages that are hosted on savannah,
> from emacs to coreutils, and from libidn to gnutls.
>
> Do you plan to propose the same thing for essentially all GNU packages?
>
> Or is there a specific reason why you propose it for Gnulib?

All those other already ship source code on ftp.gnu.org that achieve the
goal of having a stable archival copy of a project.  Gnulib doesn't fit
into that model, but not fitting into that model also means we are doing
away with all the advantages of release tarballs, including the ability
to have offline copies with a PGP signature on.  This makes the Savannah
gnulib git repository a more attractive target.  People are relying on
it to build projects, instead of using release tarballs.

There are other git-only technologies to achieve some of these goals
(PGP authentication) that we could consider -- for example
https://archive.fosdem.org/2023/schedule/event/security_where_does_that_code_come_from/
-- but it doesn't solve 1) above.

We could start to do proper versioned releases of gnulib.  Is that
better?  We are already fairly close to this, with the v1.0 git tag and
the stable branches.  Maybe that is the closest we want go towards
making proper releases though, and we don't actually want a
ftp://ftp.gnu.org/gnu/gnulib/gnulib-1.1.tar.gz.

My primary goal is to have something stronger than a HTTPS URL to
Savannah as a trust anchor for how to retrieve gnulib.  PGP signatures
on a serialized file, like a tarball or git bundle, is stronger.  Going
towards release tarballs doesn't fully solve this: people aren't using a
particular gnulib release, they use wildly different git commits of
gnulib.  I suspect we don't want to release them all as different gnulib
releases.

/Simon

Attachment: signature.asc
Description: PGP signature

  • publish PGP-signed git bundles ... Simon Josefsson via Gnulib discussion list
    • Re: publish PGP-signed git... Bruno Haible via Gnulib discussion list
      • Re: publish PGP-signed... Simon Josefsson via Gnulib discussion list
        • Re: publish PGP-si... Bruno Haible via Gnulib discussion list
          • Re: publish PG... Simon Josefsson via Gnulib discussion list
            • Re: publi... Bruno Haible via Gnulib discussion list
              • Re: p... Simon Josefsson via Gnulib discussion list
                • R... Bruno Haible via Gnulib discussion list
                • R... Simon Josefsson via Gnulib discussion list
                • R... Simon Josefsson via Gnulib discussion list
                • R... Bruno Haible via Gnulib discussion list
                • R... Simon Josefsson via Gnulib discussion list
                • R... Bruno Haible via Gnulib discussion list

Reply via email to