Here’s what happened in the Reproducible Builds effort between Sunday June 18 and Saturday June 24 2017:
Upcoming and Past events
Our next IRC meeting is scheduled for the 6th of July at 17:00 UTC with this agenda currently:
- Reproducible Builds Summit update
- NMU campaign for buster
- Press release: Debian is doing Reproducible Builds for Buster
- Reproducible Builds Branding & Logo
- should we become an SPI member
- Next meeting
- Any other business
On June 19th, Chris Lamb presented at LinuxCon China 2017 on Reproducible Builds.
On June 23rd, Vagrant Cascadian held a Reproducible Builds question and answer session at Open Source Bridge.
Reproducible work in other projects
LEDE: firmware-utils and mtd-utils/mkfs.jffs2 now honor SOURCE_DATE_EPOCH.
Toolchain development and fixes
There was discussion on #782654 about packaging bazel for Debian.
Dan Kegel wrote a patch to use
Homebrew, a package manager for MacOS.
Dan Kegel worked on using
SOURCE_DATE_EPOCH and other reproduciblity fixes
in fpm, a multi platform
The Fedora Haskell team disabled parallel builds to achieve reproducible builds.
Bernhard M. Wiedemann submitted many patches upstream:
- Sorting file lists:
- Use date from
Packages fixed and bugs filed
Patches submitted upstream:
- Bernhard M. Wiedemann
- samba, sorting file lists
- open-mpi, merged, sorting file lists
- virtualbox, incomplete fix, use
- nautilus-dropbox, drop date
use date from
Other patches filed in Debian:
- Adrian Bunk:
- #865577 filed against cloud-init.
- #865813 filed against jumpnbump.
- Chris Lamb:
Reviews of unreproducible packages
573 package reviews have been added, 154 have been updated and 9 have been removed in this week, adding to our knowledge about identified issues.
1 issue type has been updated:
- random_order_of_pdf_ids_generated_by_latex, added the name of the function that possibly causes this issue.
Weekly QA work
During our reproducibility testing, FTBFS bugs have been detected and reported by:
- Adrian Bunk (98)
Version 83 was uploaded to unstable by Chris Lamb. It also moved the previous changes from experimental (to where they were uploaded) to unstable. It included contributions from previous weeks.
You can read about these changes in our previous weeks’ posts, or view the changelog directly (raw form).
We plan to maintain a backport of this and future versions in stretch-backports.
Ximin Luo also worked on better
html-dir output for very very large diffs such
as those for GCC. So far, this includes unreleased work on a
data structure which will form a core part of a new and more intelligent
recursive display algorithm.
Versions 0.035-1 was uploaded to unstable from experimental by Chris Lamb. It included contributions from:
- Bernhard M. Wiedemann
- Add CPIO handler and test case.
- Chris Lamb
- Packaging improvements.
Later in the week Mattia Rizzolo uploaded 0.035-2 with some improvements to the autopkgtest and to the general packaging.
We currently don’t plan to maintain a backport in stretch-backports like we did for jessie-backports. Please speak up if you think otherwise.
- Chris Lamb:
- Add OpenEmbedded to projects page after a discussion at LinuxCon China.
- Update some metadata for existing talks.
- Add 13 missing talks.
- Alexander ‘lynxis’ Couzens
- LEDE: do a quick
sha256sumbefore calling diffoscope. The LEDE build consists of 1000 packages, using diffoscope to detect whether two packages are identical takes 3 seconds in average, while calling
sha256sumon those small packages takes less than a second, so this reduces the runtime from 3h to 2h (roughly). For Debian package builds this is neglectable, as each build takes several minutes anyway, thus adding 3 seconds to each build doesn’t matter much.
- LEDE/OpenWrt: move
toolchain.htmlcreation to remote node, as this is were the toolchain is build.
- LEDE: remove debugging output for images.
- LEDE: fixup HTML creation for toolchain, build path, downloaded software and GIT commit used.
- LEDE: do a quick
- Mattia ‘mapreri’ Rizzolo:
- Debian: introduce Buster.
- Debian: explain how to migrate from squid3 (in jessie) to squid (in stretch).
- Holger ‘h01ger’ Levsen:
- Add jenkins jobs to create schroots and configure pbuilder for Buster.
- Add Buster to README/about jenkins.d.n.
- Teach jessie and ubuntu 16.04 systems how to debootstrap Buster.
- Only update indexes and pkg_sets every 30min as the jobs almost run for 15 min now that we test four suites (compared to three before).
- Create HTML dashboard, live status and dd-list pages less often.
- (Almost) stop scheduling old packages in stretch, new versions will still be scheduled and tested as usual.
- Increase scheduling limits, especially for untested, new and depwait packages.
- Replace Stretch with Buster in the repository comparison page.
- Only keep build_service logs for a day, not three.
- Add check for hanging mounts to node health checks.
- Add check for haveged to node health checks.
- Disable ntp.service on hosts running in the future, needed on stretch.
- Install amd64 kernels on all i386 systems. There is a performance issue with i386 kernels, for which a bug should be filed. Installing the amd64 kernel is a sufficient workaround, but it breaks our 32/64 bit kernel variation on i386.
- LEDE, OpenWrt: Fix up links and split TODO list.
- Upgrade i386 systems (used for Debian) and
pb3+4-amd64(used for coreboot, LEDE, OpenWrt, NetBSD, Fedora and Arch Linux tests) to Stretch
- jenkins: use java 8 as required by jenkins >= 2.60.1
This week’s edition was written by Ximin Luo, Holger Levsen, Bernhard M. Wiedemann, Mattia Rizzolo, Chris Lamb & reviewed by a bunch of Reproducible Builds folks on IRC & the mailing lists.