Hi everyone, below you will find the updates from the Desktop team from the last week.
If you’re interested in discussing a topic please start a thread in the Desktop area of Discourse.
We also have our weekly meeting on IRC. We meet on Tuesday at 13:30 UTC in #ubuntu-desktop on Freenode. There will be an “Any Other Business” section at the end where you are welcome to raise topics. These topics might be discussed during the meeting, or afterwards depending on the time, depth of conversation, topic and so on.
Also new this week; Release affecting bugs are now listed here:
That post is a wiki and you should be able to provide any updates inline.
Implemented the “machine” layer, which enable to detect and group ZFS datasets per machine (system on boot and late system datasets, userdata and persistent datasets) + history of each one (clones and snapshots)
Continue discussion and addressing comments of the Fedora zfs maintainer.
Implemented Boot phase: Switch on and off correct datasets for mounting + cloning what’s needed to be cloned, like userdata with user dataset revert if booting on a snapshot. /!\ needs to make them idempotent.
Implemented Commit phase: Tag as appropriate user datasets with system, and promote needed ones.
Incremented and changed/rethought the design to have as few changes as possible before Commit() and ensure that if boot fails, no impact on further boots.
Adapted zfs layer to those changes, simplifying the golden files.
Note: tests nor CLI hooks are implemented yet, this will be the next steps
Some reviewing and sponsoring for Marco for experimental/eoan/disco
Saw a bug noting that snaps aren’t working on current daily images; had a look into this and uploaded a potential fix (will see with tomorrow’s images, assuming it passes testing and gets used to build them).
A lot of behind the scenes cloud wrangling for autopkgtest happened this week too. Most of the clouds broke at least once, and for a time we had no ppc64el capacity.
reviewed/sponsor an ibus fix to handle common_name properties from Gunnar
reviewed our plymouth package patches, found that some were not needed anymore and had been fixed upstream differently, removed those, upstreamed some others
updated plymouth to a git snapshot include the new bgrt theme
SRUs
SRU-ed the livepatch indicator control in s-p to bionic
reviewed/sponsored a pulseaudio segfault fix to Bionic from Daniel
backported/SRUed NTLMv2 support to libsoup/bionic which is required by evolution-ews to be able to connect to some exchange servers
sponsored a gtk printing SRU fix from Till (bionic)
review some autopkgtest failures follow SRUs in bionic, retried them since they looked like archive issues
Other
looked again at the duplicity python3 update, reported some test failures from the current trunk version. Tested the new 8.01 but it still has failing tests issues
prepared firefox 68.0 update (3 release candidates over the last week), now published to all stable releases
successfully tested a distro-patch to override the default build ID (a timestamp) with the build candidate number, to ensure packages targetting different Ubuntu releases have the exact same build ID, to address bug #1830096, and submitted the relevant part of the patch upstream
successfully tested Łukasz’s update of rustc to 1.35 by rebuilding firefox against it in a PPA
chromium
updated bionic deb packaging branches to use clang and llvm 8, now that they are in bionic-updates
committed a tentative fix for bug #1821765. Ken later confirmed the fix as working, and found a reliable way to reproduce the bug, so I was able to confirm the fix too.
updated beta to 76.0.3809.62
filed bug #1836616 to track the problem of loosing saved passwords when transitioning from the deb to the snap because the password-manager-service interface is not auto-connected
snaps
reviewed and merged Marcus’s PR #190 that decreases significantly cold startup time for snaps that use the desktop helpers
backported a fix from snapcraft-desktop-helpers to the 0AD snap
other
Tested WSL in a Windows 10 VM, failed to upgrade to WSL2 because this requires nested virtualization and I haven’t managed to make it work (yet)
I addressed the last round of review comments on PR #6954, with it waiting on Samuele to sign off.
As a side effect of this work, I submitted PR #7036 to make the main snapd rest service use the newer stdlib http.Server.Shutdown method, as used in the session agent. That PR got merged this week.
snapd interfaces for snap store
No change on PR #7042 (appstream-metadata interface).
For PR #7054 (packagekit-control interface), I received some review feedback from @jdstrand that I have responded to. I’ve tightened up the rules governing access to transactions, and set the base declaration to deny the ability to install a snap using the interface without a store assertion specifically allowing it (as is done for e.g. snapd-control).
snapd icon theme support
I worked on PR #6959 (the EnsureTreeState helper), adjusting the semantics as requested and adding a few more tests. I think this is fairly solid now, which should unblock the icon theme PR.
Other snapd interface work
PR #7073, extending the opengl interface to allow access to drivers provided by the base has been marked blocked.
There is some push back against adding ad-hoc AppArmor rules to the interface implementations to support one particular base snap, which I can understand.
There is some discussion on the forum about how AppArmor file based restrictions should be handled for base snaps other than core/core18. My personal preference would be to use a fairly open profile for non-bootable base snaps: there isn’t really any reason for them to include files that would be off limits to application snaps using them as a base, so why not make the entire base readable?
network-manager: Further improvement on debuggability of autopkg test script, more testing of where the test fails.
network-manager: Seth Forshee reported that the autopkg tests of NM fail more frequently with the new kernel 5.2.x in Eoan. Had some discussion on #ubuntu-release with him. As tests do not fail always it looks like a timimg issue (appearing of resources takes longer). Seth released the kernel anyway and reported bug 1836209. My tests after updating a VM show less failures than before, especially The emulated API for Wi-Fi appears reliably.
Google Summer of Code 2019: Had a look into the code of the Printer Application Snap framework, student is committing frequently.
GTK SRU for print dialog: SRU for Bionic got sponsored so it is in -proposed now (Bug 1763520).