Hi, Reiner Herrmann <rei...@reiner-h.de> (2016-04-03): > Source: debootstrap > Version: 1.0.80 > Severity: wishlist > Tags: patch > User: reproducible-bui...@lists.alioth.debian.org > Usertags: fileordering > X-Debbugs-Cc: reproducible-bui...@lists.alioth.debian.org > > Hi! > > While working on the "reproducible builds" effort [1], we have noticed > that debootstrap could not be built reproducibly. > The devices.tar.gz tarball contains devices in unsorted (readdir) order. > > The attached patch fixes this by telling tar to sort the archive > members. > > Regards, > Reiner > > [1]: https://wiki.debian.org/ReproducibleBuilds
> diff --git a/Makefile b/Makefile > index 1020cbc..07682bc 100644 > --- a/Makefile > +++ b/Makefile > @@ -36,7 +36,7 @@ devices.tar.gz: > chown 0:0 dev > chmod 755 dev > (cd dev && $(MAKEDEV) std ptmx fd consoleonly) > - tar --mtime="$(DATE)" -cf - dev | gzip -9n >devices.tar.gz > + tar --sort=name --mtime="$(DATE)" -cf - dev | gzip -9n >devices.tar.gz > @if [ "$$(tar tvf devices.tar.gz | wc -l)" -lt 2 ]; then \ > echo " ** devices.tar.gz is empty!" >&2; \ > exit 1; \ > diff --git a/debian/control b/debian/control > index 46e2b93..40cfbcd 100644 > --- a/debian/control > +++ b/debian/control > @@ -3,7 +3,7 @@ Section: admin > Priority: extra > Maintainer: Debian Install System Team <debian-boot@lists.debian.org> > Uploaders: Junichi Uekawa <dan...@debian.org>, Colin Watson > <cjwat...@debian.org>, Christian Perrier <bubu...@debian.org>, Steve McIntyre > <93...@debian.org> > -Build-Depends: debhelper (>= 9), makedev (>= 2.3.1-69) [linux-any] > +Build-Depends: debhelper (>= 9), makedev (>= 2.3.1-69) [linux-any], tar (>= > 1.28) > Standards-Version: 3.9.6 > Vcs-Browser: https://anonscm.debian.org/cgit/d-i/debootstrap.git > Vcs-Git: https://anonscm.debian.org/git/d-i/debootstrap.git Thanks for the patch. I'm not sure it's reasonable to introduce a versioned build-dep on tar at this point: 1.28 is only available in sid and stretch, and we tend to backport debootstrap semi-regularly to stable. Is there any chance we could detect which tar version/features we have, and only add --sort=name when it's fine to do so? KiBi.
signature.asc
Description: Digital signature