Desktop Team Updates - Monday 2nd November 2020

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.

Last week’s notes are here: Desktop Team Updates - Monday 26th October 2020


Snap Store

  • After @robert.ancell rebased the snap-store branch on GNOME Software 3.38.1, I got a build of it up in the edge channel for further testing. Please test if you can!


  • I updated this to use gnome-3-34 and was surprised to see it doesn’t use xdg-desktop-portals, in further investigation upstream has actually disabled using portals. We need to consider making this a classic snap like other development tools.
  • Some plugins trigger crashes, I think related to libpeas from the platform snap


  • submitted PR fixing XDG_DATA_DIRS in the extension’s build environment
  • Landed small changes in Flutter engine.
  • Released updated versions of Dart dbus and Network Manager libraries.
  • Did some more work on exercising dbus and Flutter in a DBus navigator app.
  • Rebased snap-store on gnome-control-center 3.38.
  • Reviewed and landed MRs for gnome-control-center.
  • Worked on code cleanup in gnome-control-center.

:desktop_computer: Gnome Shell and friends:

:hiking_boot: Boot things:

  • The fix for boot failures with multi-monitors (or even with a single monitor if you’re unlucky) is now published, thanks Seb!
    • hirsute: Fix Released
    • groovy: Fix Committed and verified in proposed.

:chart_with_downwards_trend: Bug tracking:

  • Lots of daily bug triage in Launchpad and upstreams. Busier than usual this week with the release of 20.10.
  • Backlog tracking.

4-day week - off on Thursday

  • Ubuntu Core GDM Experiment:
    • Prepping Hirsute PRs for systemd, adduser, and shadow.
    • SRUs postponed until the above land.
  • Subiquity Client:
    • Poked at the new Subiquity API a bit.
    • Began drafting client wrapper library.
  • Automatic Theme Snap Installation:
    • Did some valgrind profiling and clean up.
    • Some discussion with @sergiusens on creating new theme snaps.
  • short week, worked only 3 days
  • fixed the lightdm-gtk-greeter segfault, turned out to be due to mlockall vs systemd also for VM cases
  • debugged classic snaps opening firefox on the wrong profile, turned out to be a firefox bug created by a workaround in the profile selector made for the firefox snap but kicking in any snap environment, Olivier picked up from there and submitted a patch
  • debugged the thunderbird apport hook failing to collect profile informations, sent a patch but that still requires work to be compatible with old as well as new profiles
  • debugged a sanebackend issue, turned out they install a lock file in /var/lock from the install but don’t recreate it or the directory isn’t persistent, disabled back the locking feature for now
  • upstreamed our plymouth patch for ping timeouts
  • Updates and SRU
  • Sponsoring
    • reviewed and merged the langpack’s crontab update to enable hirsute
    • uploaded a fontconfig fix from Gunnar
  • versions script changes
    • copied files locally that couldn’t be loaded through the proxy
    • added some upstream url definitions
    • switched to hirsute
  • thunderbird snap
    • updated the thunderbird to 78.4.0
    • converted the vcs from bzr to git
    • debugged the snap failing to build, turned out that git doesn’t know how to handle empty directories and just silently ignore those, fixed that by replacing the dir by a mkdir in the build
    • requested autoconnecting of printing, removable media and gupnp interfaces
    • played a bit with the store banner to try finding a nicer one without success so kept the autogenerated one
  • Other
    • spent some time trying to get familiar with how installer ISO images are built
  • Finished initialising of hirsute, opened the archive for general uploading.
  • Seb pointed me to a crash bug in gnome-initial-setup because I have a Pi. That was a naughty trick though, the crash is not Pi specific in any way :slightly_smiling_face: . See the details here.
  • Did some investigation into this race condition at session startup, then asked some more knowledgable people to help out.
  • Some SRU verification (thanks SRU team for being fast with Groovy SRUs)
  • Spent ages with my face inside proposed-migration’s code - the complicated “output” stage that is deciding whether a potential migration makes installability worse - to fix a crash bug we were seeing on Xenial.

firefox24 firefox

thunderbird24 thunderbird

  • Confirmed and investigated a regression apparently caused by the 20.04 → 20.10 upgrade, and found a workaround. I need to investigate further to understand why the issue happened in the first place, and whether it can be mitigated with a distro-patch.
  • Created hirsute branch and uploaded 78.4.0

chromium22 chromium

  • Validated the focal SRU for bug #1900170
  • updating dev to 88.0.4300.0 − libva was enabled by default for i386/amd64 in that branch, so I’m merging some of my changes that until now lived in an experimental branch for VA-API support
  • created a branch that uses the gnome-3-28 extension, and published it for testing to the candidate/gnome-3-28-extension channel
    • when built with snapcraft 4.4, it takes advantage of the new mechanism to pre-generate font caches at install time rather than build time, thus speeding up significantly cold boot startup time

package24 other


####network manager snap

  • Discussed with @jamesh enabling polkit for root-only and sounds like the way to go even though we can’t test it.
  • looking at enabling netplan by default… would be done with configure hooks


  • snap with lzo compression and built with snapcraft 4.4 (for the improved fontcaches) was pushed, tested, and is published in the stable channel. Fonts looked good on kubuntu and fedora (thanks @kenvandine for testing!)
  • tinkering with the new etrace snap based on this blog post to try and investigate slowness in the LO snap


  • Assisted field engineer with network manager issue regarding customer unable to connect to EAP/TLS enterprise network. The issue was actually on the customer’s side (incorrect trust setting for certificate in chain of trust). But this still caused me to research quite a bit of the NM internals around this to try and solve the problem.
  • Looked into trying to help the same field engineer with another issue that the same customer is having around an unrecoverable failure with sssd. Chased a red herring around encodings when it is really an issue with vim viewing the log. I won’t spend more time on this.


  • a lot of refactoring, separating daemon, service and client into reusable pieces for future projects with tests.
  • get some test fixes upstream
  • restart exploration on GPO and how we can get encode gsettings default values into admx.


  • bug triaging and user support
  • Fixed a GDM security issue
  • Continued working in libfprint upstream work
  • Mutter work for privacy screen
  • PostScript Printer Application: Continued the development. Optimized the presentation of the list of the included ~4000 PPD files, added a function to auto-associate the correct PPD to a discovered printer via device ID, added a generic PPD for PostScript printers not explicitly supported, and started a special non-spooling infinite-job-capable printing mode for PWG/Apple-Raster input as needed by driverless IPP printing standards (see this issue in PAPPL). Posted several issues/bugs/feature requests on PAPPL and discussed with Michael Sweet.
  • snapcraft: Got solution for the Snap building problem on Groovy. Thanks to @ijohnson.
  • CUPS Snap: Builds on my Groovy laptop again!! Still waiting for @jamesh’s API extension of snapd so that it makes it into the Snap Store.
  • sane-airscan: Waiting for the MIR to get reviewed by the security team.
  • system-config-printer: Merged pull request to fix bug on USB printers not getting disabled when unplugging them, both bug report and patch are from Hugh Chao. Hugh will create an SRU of system-config-printer for 20.04.
  • Linux Foundation Mentorship Program: Mentoring the two IPP Scan students (Client, Server). Video meeting with the students.
  • Google Season of Docs 2020: Mentoring our technical writer, doing corrections. Follow his work growing on our web site.
  • Bugs.