$ strings main | grep ^/ /lib64/ld-linux-x86-64.so.2 /home/user/main.c
dpkg-buildflags (1.19.1/Sep 2018)
DEB_BUILD_OPTIONS="reproducible=+fixfilepath"
Adds -ffile-prefix-map=BUILD_PATH=. to default GCC flags
macro-prefix-map is in gcc-8
... not enabled by default in dpkg-buildflags
Some buildsystems embed gcc commandline.
Some test suites rely on full paths
Only works with gcc, needs to be fixed in other tools
Simple workaround: rebuild in recorded path (testing/stable)
Ignore these issues for bullseye
BUILD_PATH_PREFIX_MAP
https://reproducible-builds.org/specs/build-path-prefix-map
https://wiki.debian.org/ReproducibleBuilds/GCC-build-path
Your fixes on important toolchains?
93% is a lie. We need infrastructure, processes and policies. (And testing. Currently we only have testing and a vague goal.)
With the upcoming list of bugs we
don't want to fingerpoint at individual teams,
instead I think we can only solve this if we as Debian
decide we want to solve it for bullseye.
I think this is not happening because people believe
things have been sorted out and we take care of them.
But we are not, we can't do this alone.
93% is a lie.
54% on March 5th 2019.
31% today.
We can still improve this, though 24% (6804) of our source packages have not been uploaded nor binNMUed since December 2016.
I'm not sure I want to / we should upload >6800 source packages in the next 2 years. So mass binNMUs for the rescue? maybe do those mass uploads to experimental first? contra: more work
#869184
sbuild, dput, dpkg: source uploads including _amd64.buildinfo causes problems
#894441
binNMUs, mtimes and rsync(1) causes problems and binNMUs should be replaced by easy "no-change-except-debian/changelog-uploads"
blocker for #900837
release.debian.org: Mass-rebuild of packages for reproducible builds"
.buildinfo files#862073
ftp.debian.org: Please POST .buildinfo files to buildinfo.debian.net
#763822
ftp.debian.org: please include .buildinfo file in the archive
#862538
security.debian.org: Please POST .buildinfo files to buildinfo.debian.net
.buildinfo filesbuildinfo.debian.net
buildinfos.debian.net
.buildinfo filesbuildinfo.debian.net: Allows submissions from everyone (PostgreSQL)
buildinfos.debian.net: ftp-master.d.o based view with pool structure and build date
.buildinfo files from an unofficial service?There should be a debian.org machine serving .buildinfo files to the public.
Since December 2016: 965,333 files in total, eg 118,195 amd64 related.
12 GB files, 4 GB links.
#863622
apt: warn when installing packages that are not reproducible
That would be great for bullseye, but...
The goal should be to not install nor to run unreproducible software.
in-toto could bring this to the next level
Results saved in common database
.json for Debian, openSUSE, Arch Linux, OpenWrt, Alpine
shared notes, cross distro links
Two kinds of tests: CI tests (like we have now) and tests against what's on "ftp.(debian|archlinux|...).org"
The "reproducible in theory but not in practice" release
The "we could be reproducible but we are not" release
The "we are almost there but still haven't sorted out..." release?
The release is still far away and we haven't frozen yet!
Ride like the wind, bullseye
We are very happy that testing migration is blocked for binary uploads
We very much like the idea of accellerating migration for reproducibility. You?
Debian policy: probably too early for "must", but maybe time for "must not regress"?