View all weekly reports

Reproducible Builds: Weekly report #109

Published: May 30, 2017.

Here’s what happened in the Reproducible Builds effort between Sunday May 21 and Saturday May 27 2017:

Past and upcoming events

Bernhard M. Wiedemann gave a short talk on reproducible builds in openSUSE at the openSUSE Conference 2017. Slides and video recordings are available on that page.

Chris Lamb will present at the Hong Kong Open Source Conference 2017 on reproducible builds on June 9th.

Our next IRC meeting has been scheduled for Thursday June 1 at 16:00 UTC with this agenda.


Justin Cappos continued his work on the reproducible builds paper, with text and suggestions from Ximin Luo integrated.

Toolchain developments

#863470: “ security sync must not exclude .buildinfo” - while this bug isn’t fixed, you need to make sure not to build jessie updates with stretch’s dpkg, or else the upload will be rejected.

Ximin Luo built GCC twice and ran diffoscope on them. Unfortunately the results were 1.7 GB in size and it can’t be displayed in a web browser. 99/171 of the .debs are reproducible, though. He’s now working on diffoscope (see below) to make it generate output more intelligently for such large size diffs. Here is a summary diff where the recursion depth cut-off was set low, so the size is reasonable and one can still see the outlines of where to look next.

debuerreotype was newly added to Debian unstable. It is a reproducible, snapshot-based Debian rootfs builder.

Patches and bugs filed

Reviews of unreproducible packages

29 package reviews have been added, 49 have been updated and 23 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 (10)
  • Chris Lamb (2)
  • James Clarke (1)

diffoscope development

Development continued in git, with commits from:

  • Ximin Luo:
    • Refactor container-related logic to make the code clearer.
    • Various improvements to the progress bar, making it behave more accurately and make it compatible with --debug logging output.
    • Fix --exclude control.tar.gz.
    • When enforcing max-container-depth, show which internal files differ, without showing their details.
    • Add --max-container-depth CLI option.

strip-nondeterminism development

Version 0.034-1 was uploaded to unstable by Chris Lamb. It included previous weeks’ contributions from:

  • Chris Lamb
    • Only print log messages by default if the file was actually modified. (Closes: #863033)
  • Bernhard M. Wiedemann
    • zip: make sure we have permissions on extracted file
    • Add function prototypes.

  • Alexander Couzens
    • Use Alexander’s LEDE git repo to test his mksquashfs patches.
  • Daniel Shahaf
    • Refactored to add support for multiple suites in one invocation.
  • Holger Levsen
    • Prevent the two fdroid jobs from running together by using the Build Blocker Plugin.
    • A niceness variation was also added (see #863440) to the Debian tests, but this change was reverted for now, as it was breaking stuff and needs to be readded properly.
    • Some adjustments to the Debian scheduler, still due to the improve performance through the new build services.
  • Mattia Rizzolo
    • Update dsa-check-running-kernel from dsa-nagios (to support kernel 4.x as present in stretch) on all jenkins nodes.


This week’s edition was written by Ximin Luo, Bernhard M. Wiedemann, Chris Lamb and Holger Levsen & reviewed by a bunch of Reproducible Builds folks on IRC & the mailing lists.

View all weekly reports