Here’s what happened in the Reproducible Builds effort between Sunday May 28 and Saturday June 3 2017:
Past and upcoming events
-
On June 9th, Chris Lamb will present at the Hong Kong Open Source Conference 2017 on reproducible builds.
-
We restarted our IRC meetings, now with a monthly schedule where we meet on the first Thursday of the month at a varying time. Our next meeting will be on the first 6th of July at 17:00 UTC. At the June meeting we had the following agenda, and if you are interested there is an automated summary and full logs too.
- Introductions
- Feedback for the reproducible.json spec format - is that suitable for Guix and F-Droid as well? LEDE/OpenWrt? Coreboot?
- writing parser + user interface for
reproducible.json
- tests.r-b.o/Debian once Stretch has been released
- Reproducible Builds Summit 2017
- Next meeting
- Any other business
Documentation updates
- Holger added a link to the blog post with a report about the recent hackathon to our website.
Toolchain development and fixes
-
Chris Lamb wrote a proof-of-concept implementation for #863622 (“apt: warn when installing packages that are not reproducible”). Try it, it’s fun!
-
Russ worked on making the debian-policy package build reproducibly which is a good opportunity to shamelessly plug that #844431 (“debian-policy: Packages should be reproducible”) is still a work in progress.
Patches and bugs filed
4 package reviews have been added, 6 have been updated and 25 have been removed in this week, adding to our knowledge about identified issues.
Weekly QA work
During our reproducibility testing, FTBFS bugs have been detected and reported by:
- Adrian Bunk (2)
- Chris Lamb (1)
diffoscope development
- Chris Lamb:
- anthraxx:
- Ximin Luo:
- Add a –exclude-command CLI for filtering out long-running commands like “readelf –debug-dump=info”
- Use unicode chars for the +/- controls instead of hacky punctuation
- Don’t show +/- controls for differences with no children
- Fix create_limited_print_func
- Add a size() method to Difference and check that self._visuals is empty in get_reverse()
- Add a reader for the JSON format
- Allow the “source” param to overridden compare() methods to be given as a positional argument
tests.reproducible-builds.org
Mattia Rizzolo:
packages-tests
: go back to the shorter way of specifying JUnit jobs.update_jdn
: call jenkins-jobs instead of jenkins-job-builder, as that’s how it is named in 1.6.1 version.- Upload
jenkins-job-builder
1.6.1-1~bpo8+1 to jessie-backports.
Daniel Kahn Gillmor:
- Contribute a few typo fixes.
Vagrant Cascadian:
- Update README to reflect switch to PostgreSQL (some time ago).
- Add three new boards for
armhf
tests:ff64a-armhf-rb.debian.net
: Firefly-rk3399, Rockchip six-core (Cortex-A72 x2 + Cortex-A53 x4), 2GB RAM, USB-sata (future plans for native sata.)jtx1a-armhf-rb.debian.net
: Jetson-tx1, quad-core (big.LITTLE Cortex-A53/A57), ~3.5GB RAM, native SATA ~500GB diskodc2a-armhf-rb.debian.net
: Odroic-C2, quad-core (Cortex-A53), ~2GB ram, 128GB eMMC
- Resurrect
rpi2c-armhf-rb.debian.net
(Raspberry PI 2B, broadcom bcm2836 quad-core (cortex-A7), 1GB RAM) from the dead.
Holger Levsen:
- Configure the
rc.local
service on all build nodes to only start when the network is actually up, as configuring half of them to run in the future requires networking to determine the real current date. See Running Services After the Network is up if you want to learn more about networking withsystemd
. Somehow this doesn’t work yet on the Ubuntu 16.05arm64
nodes; help welcome, either on#debian-qa
or#debian-reproducible
. - Add
rpi2c
back to thearmhf
network. - Also add
ff64a
,odc2a
&jtx1a
to thearmhf
network.- Add pbuilder/schroot-setup jobs for the new nodes.
- Add 10 new
armhf
builder jobs. - Disable all build jobs on
odc2a
again ashaveged
segfaults on 4.12~rc2, which is needed for this board & setup.
- Reproducible_cleanup_nodes.sh: adapt for new build service
- Make performance.html show if build jobs are down due to remote node problems and make code to count enabled jobs more robust.
reproducible_build_service
: Make it cope with disabled workers.jenkins-master-wrapper
: Fail loudly if remote node is not accessible.- Increase maximum scheduling queue sizes, to adjust for faster scheduler.
- New script,
init_node
, to initialize new build nodes (derived from refactored existing script). - Update INSTALL documentation to reflect that we’re testing
arm64
now too.
Misc.
This week’s edition was written by Chris Lamb, Bernhard M. Wiedemann and Holger Levsen & reviewed by a bunch of Reproducible Builds folks on IRC & the mailing lists.