Foundations Team Updates - Thursday 24 Aug 2023


  • glibc currently blocks other package binutils armhf. Started local analysis.


  • Fix autopkgtests. Merge request is under review.

Silicon vendor collaboration

  • Reviewed patches and fixed U-Boot issues.


  • Evaluate written interviews


  • Uploaded systemd SRUs for Jammy and Lunar, waiting on SRU review
  • Working on adding deb822 support to curtin


  • responding to question from MIR Team for dotnet6 MIR
  • writing an SRU Exception request for .NET Packages End of (Support) Life Process (requested by MIR Team)
  • attended weekly .NET Partners Sync
  • attended MIR meeting

Ubuntu Packaging Guide

  • Restructured Content of PR #27 Add content for how-to/download-new-upstream-version
  • Discussion #28 Glossary gathering
  • Discussion #29: Should we add the lxd-sphinx-extensions?
  • Discussion #30: Should we add the sphinx-tabs extension?
  • Educated myself about Sphinx feature to include snippets of files for testing documented Commands
  • attending Ubuntu Packaging Guide Meeting
  • Preparing PR for initial version of
    • tutorial “Getting Set Up”
    • how-to “Using Schroots”

Ubuntu MIR Documentation

  • PR #37: Greet new contributers on first issue/pr




  • Attended the weekly .NET partners sync meeting
  • Investigated bug report regarding /usr/bin/dotnet being a relative symlink. Turned out to be a won’t fix.


  • Investigating nvme-stas autopkgtests on different architectures, including iputils unit test failing on s390x.
  • Seeded the nvme-stas package on mantic as part of the MIR process. Currently waiting on the dasbus MIR to go through security review before promoting nvme-stas to main.


  • Code review of @andersson123’s MP which revives unit tests in autopkgtest-cloud.
  • Merged an MP from Zixing adding a couple of node packages to big_packages.
  • Submitted an MP modifying the stages at which pre-commit is run.
  • Submitted an MP modifying autopkgtest-web such that the duplicate request check is not used with github requests. This is change that was cowboy’ed because systemd-upstream was encountering issues with it. A proper fix is being tracked in a separate card.


  • Further modifications to crichton, a bug bot, so that it can run on a system in PS5. Additionally, tested and moved the code for the bug bot to that system.
  • Confirmed bug 2032647 when doing FDE installer testing using the Mantic canary image.
  • Reported bug 2032677 which I observed after a fresh install of Mantic.
  • Reported bug 2032701 regarding there not being release notes about FDE install option.
  • Sync’ed memtest86+ from Debian as it’ll resolve bug 2031420 which is causing our automated dist-upgrades to fail.


  • Finished @vorlon’s conversion (which was started in 2019) of lpltk to python3, this was necessary to get arsenal running with python3 in PS5.
  • Attended interviewer training.


  • submitted a patch to debhelper to automate Provides: for 64-bit time_t libs
  • worked with mwhudson to fix duplication of all the snaps between squashfs layers in the canary image; successfully brought image size down from 5.7G to 4.0G
  • some additional triage of dhclient migration work for 23.10, identified that avahi-autoipd is almost certainly useless in our current network stack and should be unseeded
  • consulted on cloud-minimal seeds wrt currently having a hard dependency on systemd-timesyncd that disallows users to replace it with chrony
  • discussion with IS about the state of porter boxes (canonistack)


  • Added gtk3-nocsd to the i386 whitelist in response to a misfiled bug report I happened across
  • assisted with bootstrap of versioned rustc-1.68 package for mantic
  • assisted with a bootstrap of several node packages for +1 maintenance
  • further discussion around fortune-mod in stable releases


  • spent a whole day debugging why rmadison was not working, learning in the end that rsync --delete is unreliable without the addition of --ignore-errors and therefore the ubuntu-archive-team frontend’s disk had filled up


  • SRU day on Friday, not very successful overall and didn’t make it all the way through the queues
  • Review of a new proposed exception policy for ubuntu-advantage-tools (still in progress)


  • golang-defaults has been updated to golang-1.21 and migrated.
  • Implement scripts to filter out packages built by old Go toolchains. mwhudson helps me to run these scripts to rebuild packages with golang-1.21.
    I’m watching the build results and proposed migrations for these packages.
  • Fix packages FTBFS with golang-1.21 in Debian and ask for syncing to Ubuntu.
    • golang-github-mdlayher-socket/0.4.1-2
    • golang-github-mdlayher-vsock/1.2.1-2
    • caddy/2.6.2-6
    • kxd/0.15-4.1
  • Short week; Covering more school holidays last week
  • Working on GPIO changes to upstream lg-gpio switch
  • Tested NBD-based net-boot and runtime operation
  • Reported issue with keyboard settings in cloud-init (LP: #2030788)
  • Pi meetings
  • Operated the somewhat cantankerous and semi-reliable Dave’s-Pi-as-a-Service on behalf of colleagues sadly bereft of Raspberry-flavoured goodness

grub2 (2.12~rc1-4ubuntu2)

  • ubuntu-zfs-enhance-support.patch: Adjustments for 2.12 library (LP: #2029260)
  • zfs: on_exit: Unmount ${MNTDIR}/boot before ${MNTDIR} (LP: #2031042)
  • Temporarily rmmod peimage for os-prober chainloader entries (LP: #2030810)

And adding deb822 ubuntu sources support to software-properties (and python-apt’s aptsource’s distro module). API unaligned with deb822 format makes it annoyingly frustrating.



  1. Spent time running ML-like performance benchmarks on ppc64el and s390x, for the evaluation of an upstream JIT compiler performance patch, followed by some number crunching. Surprisingly (or may be not) the gains on s390x are decent [3-10%], but those on ppc64el aren’t very exciting [1-3%], with some benchmarks showing negative gains on both archs. We used 17.0.8 as the baseline.


  1. A second code review iteration for MR#449316
  2. Created MR 449637 to propose man pages support for the openjdk-fips package. I am still working on the review comments and expecting a significant change to the MR.
  3. I began prototyping an openssl-based JNI wrapper library with FIPS support. The goals of this prototyping activity are (a) learning the openssl crypto API and (b) creating reusable code for some prospective FIPS work. This week, I’ve been prototyping basic functionalities of a simple DRBG (Deterministic Random Bit Generator) wrapper.

Proposed Migration

  1. Spent an hour or so looking at the sudo proposed migration block and realized that the one autopkgtest regression (on armhf/arm64) had been already sorted out and the package is ready for migration (waiting on glibc only). Thanks to @ginggs


  1. Adoptium Steering committee meeting
1 Like


  • djbdns: investigated and fixed a problem with the new glibc in the tinydns binary on all archs and tests timeouts on arm*. (sponsored and reported to Debian).
  • vim: trying to fix the build on ppc64el.


  • Rebased the netplan diff work and did some refactoring after the support for the new python bindings was merged. All the changes required by netplan diff were also merged.
  • Added support for WPA3-Enterprise (PR#402)
  • Writing a testsuite to test upgrades to Mantic and check if network-manager+netplan will not break.

Network Manager

  • Found a bug on Jammy preventing veth pairs to be activated. Also prepared an MP and PPA with a fix from upstream. This bug is affecting Netplan’s CI on Github LP: #2032824 PR#403
  • Investigated an issue affecting autopkgtests on the new version of NM cause by a change in behavior. NM will not install routes anymore if the interface doesn’t have an IP address. LP: #2031421




  • figure out how to test proposed fix for LP: #2031576 - simulate what livecd-rootfs does, use a ‘dangerous’ model to allow updating the pc-kernel to the special edge channel version
  • subiquity:
    • PR: #1768 - relax required models to not need network in some cases
    • PR: #1769 - upload my bind-patch test script for modifying a snap in the live environment
    • help debug issues with desktop iso - find model config issue, testing help, identify source of imaging failure
    • LP: #2032961 - Investigate IRC reported issue with late-commands. They need to be run with a clean environment.
  • proposed-migration
    • p11-kit: on tip from Steve, file LP: #2032576 to fix build issues with p11-kit, which gnutls28 needed. fixed and uploaded.
    • util-linux: run some migration tests on mir to clear the last regressions
    • gnuttls28: investigate test problems on i386. My initial tests were done in schroot, but how do we debug i386 issues on the wiki is more accurate. Device a fix for using the wrong architecture openssl and for not running 64 bit time_t tests (dpkg-architecture gives amd64 answers in this environment) and upload.
  • patch pilot
  • get canonistack working again (ignoring ssh key issues)
  • In theory, I’ve been working full time on armhf time_t.
  • In practice, my week was a lot about investigating glibc-related things

Oh, and I also broke my Pi :frowning_face:



  • +1 Maintenance Shift
    • Solved Node.js clusters
      • node-signal-exit
    • Currently solving Rust clusters
      • Blocked by rust-log and rust-sval-derive (waiting for a sync from Debian)



  • Finished and merged MR with launcher fixes
  • Reviewed man MR


openjdk ReduceAlllocationsMerge patch:

  • profiled arm64 platform and have 3-15% gains in ML benchmarks.
  • armhf will run over weekend (it is rather slow - I have only collected baseline so far)
  • profiling arm64 - as numbers do not align with amd64 results (up to 50% improvement in some benchmarks).
1 Like


  • MP for custom exit code suite
  • Working on an MP to revive old unit tests and place them in CI
  • Input argument validation MP incase a user doesn’t supply the appropriate arguments when requesting a test via the webui
  • MP for adding an endpoint to the webui that shows version info for charms and autopkgtest for the autopkgtest-cloud environment


ISO testing

  • Been doing some install testing of the canary images to check for new bugs and validate the existence/amendments of existing bugs
1 Like

You test the canary images but the canary is missing in
I would test canary ISO if I knew what they are for and where to put the results.
Why do you test the canary ISO and not the daily ones?

Thanks for the interest in helping us to test this image. The canary images are intended to be short-lived development branches for the engineering team to test out new features before landing them in the regular Desktop image. In this case, the current canary contents are expected to land in the regular Desktop image in the coming week. We therefore will not be spending time to expose these images as an option on the ISO tracker, it will instead be possible to test the new functionality when it lands.