Desktop Team Updates - Monday 28th November 2022

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 .

Last week’s notes are here: Desktop Team Updates - Monday 21st November 2022

  • Submitted changes to Apparmor (so as to report to Github when appropriate) for review.
  • Submitted a couple of Debian merges.
  • Chromium
    • Trying to identify what is causing password storage bugs.
    • Performed tests on 107.0.5304.121; Released to stable.
    • Triaged bugs.

Desktop installer





  • Extended the network information popup to show general information about the instance and its state and made it refresh automatically #204
  • Visual improvements to the popup; made it available in the shortcut menu #217
  • Made sure simply clicking on an instance opens a terminal again #213
  • Fixed a bug in the creation dialog where the user would see misleading information in the image type dropdown #230


  • Small UI adjustments (fixed alignment issues #139, decreased default window size #142)
  • Made some progress concerning DBus activation in the snap #141 - thanks @jamesh!

yaru widgets

  • WIP: implementing a page controller for the main layout widgets #414

:package: package merges

merged and uploaded the following packages from Debian unstable into
Lunar (thanks @jbicha!):

firefox24 firefox

  • tested patch aiming to fix crash on Wayland when [screen-]sharing a window
  • started preliminary work and research for writing a testplan for firefox and a common one for any browser package in general

A short week (off on friday) of iteration and refactoring.


  • Continued with abstracting Ubuntu WSL’s Azure testbed setup into a set of reusable Github actions ubuntu/WSL #322
  • Started refactoring End-to-end testing framework to be more idiomatic.
  • Fixed a minor issue ubuntu/WSL #325

GoWSL module


  • ISO builds
    • Updated live-build to handle the new memtest86+ bin names to try to fix the desktop iso build
    • live-build wasn’t the right place, fixed also debian-cd which worked, we have a Lunar daily ISO now!
  • Packaging
    • Debian merges (shotwell, modemmanager)
    • Investigated and discussed libdbus installability issues on the Lunar/autopkgtest infrastructure which got workarounded by doing a pocket copy of the update to Lunar, the image used by the autopkgtest workers need to be rebased on Lunar still though.
    • Merge pipewire Debian update to build a pipewire-libcamera binary
    • Fixed an invalid filename in the ubuntu-wallpapers kinectic slidehow
    • Upload a SRU to update modemmanager from a git snapshot to the stable 1.20 release in Kinetic
    • Cherrypicked and SRUed a librest fix for gnome-online-accounts sometime crashing after suspend in kinetic
    • Updated user-setup to add the initial user to the ‘users’ group instead of ‘lxd’, it will make lxd default to unprivledged containers which is a better default
    • Updated the lerc c++ symbols to fix the build
    • Reviewed the nm plugins that needed to be ported to a newer GTK to be compatible with gnome-control-center 42, there are 3 in the archive, network-manager-fortisslvpn-gnome network-manager-iodine-gnome network-manager-ssh-gnome
    • Got some debug information about the liblc3 tests failing on s390x and reported upstream
  • MIR
    • Opened a MIR for libcamera, work is still needed on the package though (build failing on symbols errors, lack of tests, lintian)
    • Worked on the libcamera improvements needed for the MIR (fixed build, enabled build and autopkg tests, reduced lintian warnings)
    • Review the MIR for fonts-sil-annapurna, which is a new depends for fonts-deva
    • Opened a MIR for liblc3, which is used by pipewire now for bluetooth LE audio
    • Updated to liblc3 package to run the upstream tests at buildtime and as autopkgtest
  • Ubuntu Archive
    • Enabled i386 build for chafa (needed by harfbuzz), duktape (needed by polkit), liblc3 (needed by pipewire), pkgconf (replace pkg-config) and libcamera (needed by pipewire)
    • Added extra packages to the i386 whitelist to be able to build pkgconf
    • Proposed to skip espeak-ng autopkgtests result on i386, newer tests depends on clang which isn’t installable
  • Other
    • Updated versions to not consider build revisions as newer, they are rebuilt from the same version
    • Removed the armhf binaries for some of desktop snaps since we aren’t building the newer sdk there
    • Tested and promoted to stable the fixed core22 snap of epiphany
  • cups-filters, libcupsfilters, libppd: Fixes on minor bugs found while preparing the release of pappl-retrofit and making all the Snaps (Printer Applications, CUPS) building with libcupsfilters, libppd, and cups-filters 2.0b1. Added foreign to AM_INIT_AUTOMAKE() in to cope with instead of README, removed check for GLib in libcupsfilters, many fixes and improvements in,, and INSTALL. Also found some minor bugs in the filters: cfFilterGhostscript() does not use the page dimensions of the input pages if no page size information is supplied, cfFilterPDFToPDF() can produce output which Ghostscript turns into blank pages, cfTextToPDF() produces one blank page per input character if no page size information is supplied.
  • pappl-rerofit: Continued preparation of its 1.0b1 release: Renamed all functions to follow OpenPrinting policy, API function names starting with pr and name itself in CamelCase, library-internal function’s names starting with _pr, constants PR_ and then all-uppercase underscore-separated. White-space/indentation clean-up, renamed internal header files to ...-private.h and API header file (former base.h) to pappl-retrofit.h. Release will follow after building and testing all Snaps with the new pappl-retrofit (and also with libcupsfilters, libppd, and cups-filters 2.0b1).
  • Retro-fitting Printer Application Snaps and CUPS Snap: Updated all Snaps to build and work with the new second-generation libcupsfilters, libppd, cups-filters, and pappl-retrofit. Required setting build-environment: for the next part finding the libraries built by the previous parts, removing bogus *.la files, distribution of the old cups-filters’ dependencies and ./configure arguments to libcupsfilters and libppd, Also removed the unnecessary patches parts as one can access patches directly in the Snap’s source repo via $SNAPCRAFT_PROJECT_DIR (Thanks, Sergio Cazzolato, for giving me the hint when preparing the Daemon Snapper’s Workshop).
  • Workshops: I got a happy user of the new Workshops utility. I got aware of it by Desktop Team meetings and tried it for the first time on the Engineering Sprint in Prague, then also used it to get a Ubuntu 20.04 environment when attending the Mini Pupper workshop on the Ubuntu Summit in Prague. Now I have used it for testing the new cups-filters on older distros, to investigate bugs. And a nice thing: When building Snaps with LXD (--use-lxd) the LXD containers of the build processes appear in Workshops and one can simply open a terminal on them.
  • Ubuntu Summit 2022: Helped on the text for the post-Summit Ubuntu blog, reviewing it, giving comments, added some text about sessions which I have attended or where I was speaker of, minor text fixes, … Also read some articles and listened to some podcasts about the Summit, commented on them on our internal link list, added also some entries. Especially to mention are Will Cooke (@willcooke) and Alan Pope (@popey) talking about my lightning talk about saving legacy printers with WSL and about OpenPrinting in general, my GSoC participation, … in a Late Night Linux podcast (8:50 min -> 11:50 min). My lightning talk got also mentioned, and even as first item in the Summit section in the Ask Noah podcast (29:35 min -> 32:10 min). Martin Wimpress (@Wimpress) talks about his exciting experience with Flutter Track at the Ubuntu Summit and his project Butterfly, an all-Flutter desktop, right in the beginning, in the first section of the Linux Downtime podcast. And Jim Salter is talking about the Summit, complaining about too much Snap (“it is rather a Snap Summit than an Ubuntu Summit”) at 14:00 min in the 2.5 Admins podcast.
  • Google Summer of Code 2022: Coordinating with the contributors to get their code upstream.
  • Google Summer of Code 2023: My OpenPrinting colleague Aveek Basu is finding new contributors at several Indian colleges and universities. First they get some introductory assignments (like building CUPS and cups-filters, doing small modifications on them, …) and I recommend to them to do these exercises in a container/VM via Workshops. Also asked the newcomers to read my write-ups about our OpenPrinting work and watch the Indaba and Office Hours videos.
  • Bugs.
  • Worked with the Security Team to get sbuild-launchpad-chroot fixed in all supported Ubuntu releases after it was broken by a schroot security fix.
  • Fascinatingly, we discovered that sbuild-launchpad-chroot failed to build on Ubuntu 18.04 LTS until the ubuntu-dev-tools update was pushed to bionic-security.
  • Helped escalate a few issues with Seb to fix sbuild-launchpad-chroot for creating Lunar chroots and fixing dbus installability on the Lunar autopkgtest system.
  • Worked with Amin on merging updates from Debian for Ubuntu 23.04
  • Merged a few other updates myself
  • Prepared the gnome-shell 43.1 SRU for Ubuntu 22.10 which includes a fix for the captive portal popup not popping up
  • Co-discovered a weird bug where the website pops up now that the captive portal popup is popping up.
  • Helped get evolution-data-server rebuilt on Debian as part of the protobuf/libphonenumber transition.
  • Miscellaneous +1 maintenance including building a few more build dependencies on i386

Steam Snap

  • Continue investigations into including Gamescope as a part
    • Fixed xwayland related build errors
    • Still experiencing errors from xwayland binds for x11 server when running a game with Gamescope
  • Fixes for my xdg-desktop-portals PR

firefox24 firefox

  • added Amin to relevant teams / mailing lists
  • walked Amin through the process of preparing a firefox point release (107.0.1)

flutter24 Ubuntu Store

  • #567 Use Appstream to search for apps/packages, instead of PackageKit
  • #26 Read and parse XML/YAML files using isolates to avoid blocking the main event loop