Monday 24th June 2019

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 the Community Hub (this site).
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: Monday 17th June 2019
Next week’s notes are here: Monday 1st July 2019

  • Added gtk2-common-themes support to the inkscape 0.92 snap PR
  • Updated ubuntudesktop/gnome-3-28-1804 docker image to handle some changes in snapcraft which were breaking Remmina and GNOME CI builds
  • Snap startup profiling, collecting info at
  • USN refreshes
  • Updated the last two GNOME snaps to use core18/gnome-3-2-1804
  • Fixed crasher in gnome-clocks snap, caused by a relocation issue.
1 Like
  • Stats for OEM installations.
  • Started work on zsys daemon + testsuite.
  • Writing doc to automate an installation for Ubuntu Desktop with full disk encryption.
  • ubuntu-report: Added product_family to OEM information (LP: #1833555) and prepared the SRU to Bionic.
  • Lab maintenance.
1 Like

firefox24 firefox

  • prepared 67.0.3+build1 update, published to eoan and all stable releases
  • prepared 67.0.4+build1 update, published to eoan and all stable releases
  • found a workaround for the firefox-next (beta 68) build failures on i386 and s390x

thunderbird24 thunderbird

  • 60.7.1 published to all stable releases

chromium22 chromium

:computer_mouse: Gnome Shell performance (stutter | latency | CPU):

:bug: Release bugs:

:pick: Backlogs progress:

  • :chart_with_downwards_trend: Good news (falling backlogs): gdm3, gedit
  • :chart_with_upwards_trend: Bad news (consistently growing backlogs): grub2

libreoffice24-margin libreoffice

GNOME build-snap

  • Got Launchpad compiling the build-snap and platform-snap in sequence.
    • Set up a server that uses the snap:build:0.1 webhook of the former to trigger the latter.
    • Discovered a bug in Launchpad in the process.
  • Left a short summary of the build-snap work on forum.snapcraft
  • itstool successfully moved into build-snap - still working on gettext.

snapcraft24 snap profiling

  • Hacked a bit at the --trace-exec util in snapd to get some more detailed traces.
  • Briefly scanned over various snap traces - will spend more time on this over the next weeks.
  • Eoan archive work
    • updated gnome-settings-daemon to 3.32.1
    • sponsored an unity-settings-daemon fix for the airplaine mode control
    • did Debian merges (gnome-video-effects, brasero, libcanberra, alsa-utils, hfst-ospell, rhythmbox, ibus)
  • SRUs
    • gnome-settings-daemon 3.32.1 to disco
  • Other
    • participated in snaps vs deb discussions on discourse, explained the motivation behind some of the changes
    • participated in the i386 discussion on discourse, started a new topic about printer drivers and poke a bit at some examples
    • installed win10 to test WSL2
    • took some notes about the win10/WSL2 testing and posted on discourse, hopefully it’s useful to others who want to give it a try
    • did some poking around to get a status update about the geoclue key problem, got a reply from the GNOME side, they managed to get the quota bumped
    • looked at the duplicity update, talked a bit to the Debian maintainer about problems, reported upstream some testsuite problems

4 days week:

  • ZFS:
  • Misc:
    • Review and help debugging ubuntu-report for added product_family to OEM information.
    • WSL2 ideas/comments
    • Test and merge patch removal (not needed anymore) to disable
    • Installed win10 to test WSL2 (still need to upgrade to WSL2)

Mostly just this:

but also:

  • cups-filters: Continued on the cups-browsed issue with legacy CUPS servers (IPP 1.x). We have found a possible solution and it will get implemented in the next days and released as 1.25.1.
  • network-manager: Found a way to debug the autopkg script by calling it directly (not using autopkgtest utility) but on an Eoan Desktop VM as one needs to reboot after a failure. Found all the issues (NM API changes) and fixed them (~5 API adaptations). All the tests are passing now. Made the result available.
  • Google summer of Code 2019: The student who did pdftoraster has now started to work on the Common Print Dialog Backends support for the GTK print dialog. Explained him in-depth what exactly needs to be done and told him which code pieces to get familiar with.
  • Bugs.

snapd user session agent (PR #6954):

  • Received in-principle approval to have the user session agent run as an independent process to snap userd: trying to merge the two basically broke the D-Bus services provided by userd on systems where the session bus wasn’t launched by a user instance of systemd (i.e. Ubuntu 14.04, Ubuntu 16.04, CentOS 7).
  • Asked for and received a second round of review feedback that I am working my way through. This included requests to split some changes out into their own PRs, leading to the creation of #7027 and #7028 (both since merged).
  • I hope to get the main PR merged this week.

Desktop notifications for the session agent:

  • One of the features the session agent will need is the ability to post desktop notifications. There are a number of Go libraries to handle this, but none felt appropriate. Most were simple wrappers for notify-send, with no support for actions, and one was part of a larger glib/gobject cgo binding.
  • So I put together a rudimentary native implementation using the D-Bus binding already in use by snapd. At 350 lines, I’ve got something that approximates the libgio GNotification API and supports both the GTK and notification APIs. This covers all desktop environments we care about, and allows for persistent notifications on GNOME 3 based desktops.
  • While working on that, I discovered a possible deadlock in the godbus code. I submitted PR #161 to fix that, which has been accepted upstream.


  • Various cleanups to Default Workspace Focus fixes causing gnome-shell crashes with some programs (including jetbrains products in snap store). Finally merged and backported to all the stable series. Packaging the fix in progress too [!307, merged]
  • Cleanup in the app-display reallocation cycles fix [!581, merged]
  • Some discussion in multi-monitor and shell CyclerPopup’s (alt/super+tab/backtick/escape) [#1395]
  • Fixed a regression causing keyboard popups to be shown in under the keyboard [!583, merged]
  • Looking in fixing crash mutter#652 (i.e LP: #1832869), debugged (see traces there), I’ve a fix to be proposed today
  • Gjs, fixed proxy wrapper properties to respect read-write-ability of the proxy [!298, merged]
  • Gjs, reduced memory usage for the JSObject wrapper used by GObject’s [!303, merged]
  • Looking at the bigger blocker for gjs#217 to implement a faster and cleaner path for managing GObject’s ownership (removing the big hammer for garbage collecting which is quite CPU intensive, see details here)
    • Proposed a workaround for GCC issue (merged) to upstream GJS [Bug 1560064, fixed]
    • Wrote a testcase for the gcc issue [Bug 90942]
    • Had some weekend fun in finding a fix for it, I will send the patch once I’ve some free time
  • Upstream reviews and merges


  • Improved apport tracing for gnome-shell [!23, merged - thanks Iain]
  • Proposed @vanvugt crash-prevention for mutter on X11 resource release [!37, please review]
  • Proposed gjs-needed symbols exportation workaround for mozjs [!4, merged - thanks Iano]
1 Like