Re: GNU Coding Standards, automake, and the recent xz-utils backdoor
Tomas Volf <[email protected]>
| Newsgroups | gmane.comp.gnu.standards,gmane.comp.sysutils.automake.general |
|---|---|
| Message-ID | <ZgmzZ4uiS3dq8QWa@ws> |
On 2024-03-31 14:50:47 -0400, Eric Gallager wrote: > > > With a reproducible build system, multiple maintainers can "make dist" > > > and compare the output to cross-check for erroneous / malicious dist > > > environments. Multiple signatures should be harder to compromise, > > > assuming each is independent and generally trustworthy. > > > > This can only work if a package /has/ multiple active maintainers. > > Well, other people besides the maintainers can also run `make dist` > and `make distcheck`. My idea was to get end-users in the habit of > running `make distcheck` themselves before installing stuff. And if > that's too much to ask of end users, I'd also point out that there are > multiple kinds of maintainer: besides the upstream maintainer, there > are also usually separate distro maintainers. Even if there's only 1 > upstream maintainer, as was the case here, I still think that it would > be good to get distro maintainers in the habit of including `make > distcheck` as part of their own release process, before they accept > updates from upstream. What would be helpful is if `make dist' would guarantee to produce the same tarball (bit-to-bit) each time it is run, assuming the tooling is the same version. Currently I believe that is not the case (at least due to timestamps). Combined with GNU Guix that would allow simple way to verify that `make dist' was used, and the resulting artifact not tampered with, even without any central signing. Maybe new `dist-reproducible' automake option which would do two things: 1. Try to make things under its control reproducible (e.g.: set timestamps to 0) 2. `make distcheck' would build the archive twice (sequentially), checking that the hash matches. Have a nice day, Tomas Volf -- There are only two hard things in Computer Science: cache invalidation, naming things and off-by-one errors.
signature.asc
(application/pgp-signature, 833 B)
-----BEGIN PGP SIGNATURE----- iQIzBAEBCgAdFiEEt4NJs4wUfTYpiGikL7/ufbZ/wakFAmYJs2YACgkQL7/ufbZ/ wanDWBAAhcCxEr18ddL3MeaITQlZrT3DDHSBeO9fX2RTCNl5GG86eq95V0C8AyzD Zn+AlsSyt7ieQU3MN/JUruoL6agm1vFiDpHHlyVozSzfoL3E71Y5lwLjGYfPI4MO d/QhmBTedNvh0Y8RegRniGdK8FxMmwztajNYwKNyDYHCRgfr4fyGSc0qFjSCF8j+ xEnPI2qwX89bKaOcsUYx9Pt3mdyNf5vrTeYhepQ5jZxQ1GEf4JTkYUovHWcin91y 7X7omzO/EJi9x1NZZMe/w0/DcC8w4zKfPyNGbVMDyVKvtPDiZAT1HpwKSzxaj0eP rrFOrceNjCPgwKR29bbLeVcrM+ky8oXZDlYrmoklVkGFwBf4T42VNGX3HmcoC4TB tgBpmCOA8gZgoXqYUR4bIPVMbMS8eFl+ysRJ/SHUf6l1rbO/PjFqPfTJccIkLNRU jOgVnjogT9or178XlMKcL0Sgf5zrt5BHDjIqDzvZY6kLY4ZJylfSMeVAekWMHPbF RkeCCfsHzHh5FVK6rNBBrN0UyhBcQ3I7Z6WHVCcJp3WOKqpbH9HgvXY0DqgrO02i qJZSCd86DYsHLDfT1KhG5hBc35R8DcIaWvwaIBSupyiZ9C+PsSChWmP6Eje07nXu cCl1jTnSHrXNluGfiANlO7dCjtObdumzDYluO9HOw5d8dPwxVIw= =oywB -----END PGP SIGNATURE-----