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.
Reviewed and uploaded gnome-shell and mutter to 3.28.4 to the bionic queue (thanks @3v1n0)
Reviewed and uploaded gnome-shell and mutter 3.32.2 to experimental and eoan (thanks @3v1n0)
Uploaded glib2.0 2.60.3 to experimental and eoan, will push this to disco too once it’s validated on eoan
Tested GStreamer 1.14.4 SRUs and then pushed those to the bionic queue
@jibel found a problem with the theme with the disco proposed updates to GNOME Shell. Fixed that in the theme and then helped shepherd an upload to disco-proposed / eoan (thanks @c-lobrano / Feichtmeier / sil2100)
autopkgtest: One of the cloud regions went bad on arm64 last week, so I spent some time testing that out. It ended up randomly fixing itself… so I switched it back on.
Investigated the poor window movement performance on Nvidia-418 and discovered I had a fix already (now updated).
Landed upstream in mutter 3.33.2: clutter/stage-cogl: Reschedule update on present (thanks Marco). Probably the most exciting performance fix that was brewing. This means Xorg sessions will now maintain the same low output latency as Wayland sessions. That’s one frame lower latency than they had before. This does not depend on the power of the machine, but on the behaviour of the driver - both Intel and Nvidia Xorg drivers are known to require this fix.
Landed upstream in mutter 3.33.2: renderer-native: Reference count front buffers. A very large prerequisite cleanup for the future high performance multi-monitor Wayland work. But by itself won’t change anything the user can see.
Profiled Nvidia EGLStreams (Wayland support) because I thought its high CPU usage would be easy to fix. But maybe not. It’s all buried in the closed source Nvidia driver.
gnome-shell high memory and CPU usage when desktop files are constantly created or deleted: Fix still in upstream review. I expect I will return to this (consider alternative fixes) when I have more time and patience but most likely it will involve building a new memory profiler for gjs from the ground up. But now we know how obscure and how hard the leak is to trigger by accident (Chris seriously hacked his system in order to encounter the bug in the first place), it’s not a priority.
temporary work-around for firefox 67.0+build2: rebuilt packages for bionic, cosmic, disco and eoan sequentially to ensure the BuildIDs are in ascending order − waiting on the security team to validate and publish
suggested a patch upstream to allow overriding the build ID in downstream builds
looked into porting chromium-browser autopkgtests to firefox, and found that the geckodriver executable (required for selenium to drive firefox) is not installed by any binary package, despite being built by the firefox source package − looking into adding the firefox-geckodriver package
dropped libnm-gtk from nm-applet and review patches, upstreamed some, removed one
removed the deprecated libnm-glib/vpn/util libraries from n-m, cleaned out a patch that was commented by error and which turns out to be not be needed anymore
sponsored a ibus-libpinyin fix for Gunnar (to DIsco as well)
tweaked the software-properties .desktop to list the “Additional Drivers” under GNOME, it’s not obvious that feature exists under “software sources” otherwise
SRUs
Tried to help gettings things moved on the n-m/bionic SRU
SRUed a poppler fix for a regression in unicode search
did a follow up SRU for update-notifier/livepatch/bionic, not showing the indicator if the service is disabled rather than showing an error
looked at the reported regression in the software-properties/bionic SRU, updated the snapd-glib requirement (some users updated s-p on an outdated system which was leading to errors)
uploaded a new software-properties/bionic SRU with the change and a fix from @Laney to fix a bug in error handling
continue working on tests, got ext4 mocking done and so added relevant “separate etc, boot…” tests.
added more and more other part of test for grub menu generation, supports now:
metadata extraction tests (stage 1)
redordering of metadata (current system, side by side for other zsys/zfs, extracting snapshots/clone, ordering by last used/creation/other date meta) (stage 2)
printing the previous case in grub menu, different if full zsys, pure zfs, or a mix with ext4 (stage 3)
full integration tests running the 3 steps in one shot.
Fixed 15_linux_zfs as we saw issues/races/new corner cases coming up.
Tests changes are available at https://github.com/ubuntu/grubmenugen-zfs-tests/commits/master and 15_linux_zfs changes at https://github.com/ubuntu/zfs/commits/master.
We still need to stabilize some tests for corner cases.
We also noticed some issues in zfs 0.7 after creating and removing a lot of datasets for our tests (zpool list blocking and all zfs related commands blocked), with a kernel systrace. As this is quite a special use case (hundreds of datasets created in minutes), we will retest against 0.8 (also see if we can get unique dataset names) and report it upstream with all details if we still get it
Misc:
upgraded main system to eaon, looking good so far!
network-manager: Tried to find out more about the Bionic regressions(bug 1754671, bug 1829913, bug 1829566, bug 1829838), put up systemd SRU on PPA for the reporters to try it but did not help for them, asked on #nm IRC channel and they need debug logs, asked the users for the logs but no answer so far.
foomatic-db: Received first manufacturer PPDs (85 printers from Ricoh) after switchover to GitHub and all worked perfectly. Ricoh guy posted pull request, I merged and ran site update script on server.
cups-filters: Posted 1.23.0 for Cosmic on PPA to ask reporter of bug 1731417 whether fix actually helped. No answer yet.
cups-filters: Worked out some fixes still needed on the cups-browsed changes for the 1.24.0 release with the GSoC 2018 student.
Google Summer of Code 2019: Official coding period has started, but due to end-of-semester exams in India students will really start coding somewhat later.
Eoan Ermine: Updated my Lenovo X1 Yoga and all working nicely so far.
Worked on the first stages of the snap user session agent. I’ve got things set up so the existing “snap userd” process will launch via systemd, and activatable by either the existing D-Bus interface or the new unix socket interface.
Still working on getting the HTTP/REST code hooked up. The plan is to have a simple “version” API call, and a spread test verifying that root can activate the user’s userd and get a reasonable response back. That would be the minimal reviewable change.
other snaps:
Investigating viability of building a custom base snap to support an application.