Monday 25th March 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 18th March 2019
Next week’s notes are here:

1 Like
  • Finished the work on the automated installation of open-vm-tools-desktop when installing a VMware guest.
  • Investigated daily image build failure
  • QA infrastructure maintenance
  • Added static code analysis tests to ubuntu-drivers
  • Investigated how to lock down a desktop session.

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

:mag: Investigations related to fractional scaling:

  • Spent a day investigating panel menu rendering problems which only seem to occur with fractional scaling + ClutterOffscreenEffect. This is somewhat my responsibility since I touched ClutterOffscreenEffect last and seem to know that area best.
    • Stopped due to a higher Ubuntu priority below…
  • Most of the week investigating tearing in the proposed X11 fractional scaling support:
    • Found it is caused by using Xrandr because no compositor can (yet) flip an image to the kernel that’s a different resolution from the monitor.
    • Relearned how to build and debug Xorg.
    • Found that the present extension is already asking the modesetting driver to sync to vblank. Just that the modesetting driver’s preferred vsync method is inaccurate in Xrandr scaled configurations. It’s the right vsync frequency but out of phase after the time glamor takes to render to the scaled-down buffer using single buffering. Hence tearing. So the root cause of the problem is that it’s using single buffered scanouts when scaling. It should be double buffered.
    • Also found that the i915 kernel driver doesn’t yet adequately support the KMS DRM “scaling mode” property, which would allow us to move scaling into the kernel and avoid having to do it manually with GL and would avoid tearing.
    • Started some early attempts at a fix, although it was also pointed out a related big fix is coming upstream.

:computer_mouse: Gnome Shell other bugs:

:beetle: Release bugs (little progress this week due to the above disco issues):

:pick: Backlogs progress:

  • :chart_with_downwards_trend: Good news (falling backlogs): gnome-control-center, nautilus, firefox, thunderbird
  • :chart_with_upwards_trend: Bad news (consistently growing backlogs): ubiquity
1 Like

Shorter week (1 day off):

1 Like

firefox24 firefox

  • worked around trusty build failures for 66
  • prepared 66.0+build3 and 66.0.1+build1 updates, published by the security team
  • added support for U2F devices to the snap
  • rebuilt nasm-mozilla from source for trusty and xenial in ppa:ubuntu-mozilla-security/ppa and pushed packaging branches

thunderbird24 thunderbird

  • prepared update for 60.6.1+build2, pending validation and publication to stable releases by the security team
  • removed thunderbird-testsuite package as it was blocking the migration in disco because it depends on packages that are not available on s390x

chromium22 chromium

  • finished upgrading chromium-ffmpeg snap for 73.0.3683.75
  • updated dev to 74.0.3729.22
  • updating stable to 73.0.3683.86
  • updating beta to 74.0.3729.28

libreoffice24-margin libreoffice

  • prepared et tested 6.2.2 RC2 packages and snap
  • discussed archive administration with release team re-bug #1820062
  • updated to 6.2.2 in disco
  • built 6.2.2 snap in candidate channel and found a problem with firebird databases, working on it before promoting to stable

snapcraft24 snaps

1 Like

:control_knobs: GNOME Control Center:

:desktop_computer: Desktop Icons:

:shell: GNOME Shell:

  • :white_check_mark: Fixed issue with the position of a popup menu when the workarea != monitor size.

Sorry, I’ve had some other things come up and didn’t prepare an update this week.


  • The backport of 1.0.3 to bionic was held up by test failures on Bionic.
  • The underlying cause of the crash seems to be a stray FUSE forget() call on the root inode of the document portal file system, not matched by any operation that would increase the lookup count. There was no protection against this in the xdg-document-portal source code, so resulted in a reference count under-run.
  • I put together xdg-desktop-portal PR #310 to instead print a warning when it detects the under-run. Ken added this patch to the Ubuntu package, so hopefully it will be accepted into proposed soon and move forward.
  • I haven’t been successful in determining why we are getting that stray forget() call though: upgrading the user space libfuse doesn’t make a difference, and on the kernel side it looks like such a call should be paired with other operations that I’m not seeing delivered to the daemon. Maybe the existing patch is enough.

snapd branches:

  • The user daemon PR has tests passing with the new functionality hidden behind a feature flag. That should be enough to allow the code to be merged while there are still open questions about how it should be exposed.
  • The dbus activation PR implements the new YAML syntax requested. I need to check if this needs a feature flag too.
  • Both PRs are back to waiting on code review now.
  • cups-filters: Got confirmation from the admin of the German state administration with 12000 SUSE boxes that my fix from last week actually solved their problem.
  • cups-filters: Released 1.22.3 with a fix avoiding the image filter hanging or even crashing on broken GIF input files. Fix contributed by a candidate student for this year’s GSoC.
  • cups-filters: List of GitHub issues got down from 26 to 18 in the last 2 weeks, with a lot of help from GSoC candidate students and students from former GSoCs.
  • OpenPrinting web site: Student candidate is converting the web app scripts for the Foomatic database to GIT, I will probably be able to switch over the server this week.
  • modemmanager: Did some fixes on the packages for the Bionic SRU to version 1.10, especially added one new bug fix from Disco.
  • network-manager: Marked 1.10.14 SRU for Bionic as verified as it is already open for testing for 3 months and no one complained.
  • Google Summer of Code 2019: Official application window for students has opened. It will close on Tuesday, April 9 at 18:00 UTC.
  • Avahi: Still trying together with @willcooke and @kenvandine to make Trent merging the localhost support.
  • Bugs.
  • Sponsored modemmanager related SRUs for libmbim, libqmi and modemmanager
  • Sponsored fix for xdg-desktop-portal autopackagetest failures in bionic
  • Snapcraft release testing
  • Published updates (based on core18) for all the seeded snaps to stable
  • Cross distro snap testing
  • Disco iso testing, specifically for the seeded snaps


  • Cleanups in the xrandr fractional scaling code
  • Some fixes and tests in other platforms
  • Preapared a PPA
1 Like