Desktop Team Updates - Monday 19th July 2021

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 12th July 2021


Ubuntu Desktop Installer



  • Testing initial OOBE API with Integration
  • Initial WSLConf1/WSLConf2 API completed
  • Update current Subiquity Server API for WSL
  • Initial TUI works (Identity, Integration, Overview)
  • updated fwupd-signed to unblock the recent fwupd upload
  • restored network-manager patch to workaround issue in lxd
  • helped unblocking the new GNOME
  • joined mid-cycle roadmap meetings
  • Review and sponsoring
    • helped landing changes from the unity team
    • uploaded g-s-d fixes from oem for bluetooth and flightmode issues
  • New Desktop Installer
    • debugged issues with the subiquity integration (not finding curtin, using the wrong python environment, failing to find the post install apt job), reviewed and merged the fixes from Dan, thanks!
    • did extra tweaks to the ISO, installed cloud-init on the target system which is needed for some of the post installation configurations
    • we have a basic autoguided installation working now \o/ (the UI is still rough though and there is no selection of the target partition so don’t try on a real machine yet)
  • Snaps
    • updated thunderbird stable to 78.12.0 and beta to 91.0b1


  • Fixes on GDM backported to 20.04 for password changes
  • Multiple fixes and update to cobra command line completion 2.0
  • Small fixes and changes


  • Prototype the TUI based on subiquity to display some graphics
  • Joined some mid cycle meetings
  • Did some random AA helping out with various things, like promotion of gtk4 (half of it)
  • Further fixes on tracker 3, looks like tracker’s tests fail on armhf, investigating now but will land soon
  • Started prototyping showing ESM updates in update-manager, will have something to demo soon
  • CUPS Snap: Waiting for @ijohnson’s pull request on snapd for the cups printing interface to get merged by the snapd team.
  • cups-filters: Retro-fitting CUPS Raster drivers into Printer Applications got more complex than expected. Therefore added the pwgtoraster() filter function for use in Printer Applications which retro-fit CUPS Raster drivers (like HPLIP, Gutenprint, SpliX, most proprietary raster drivers). The function is derived from the pdftoraster() filter function and overcomes all the oddities of CUPS Raster drivers, as a wide range of accepted color spaces (not only the few used by IPP), color space and resolution info hidden in Pseudo-PostScript code in PPDs, borderless page size has larger dimensions for overspray, … The hpcups filter of HPLIP works correctly with it now. See also GitHub commits on July 16-19 and July OpenPrinting News. Also improved libppd function to find page size to support page size variants (“A4”, “A4.Borderless”, …), especially needed for hpcups but also for some Ricoh printers, and done some bug fixes.
  • PAPPL: With the PostScript Printer Application and the general driver-retro-fitting framework PAPPL gets its first real-live exercise. Adding more and more features to the retro-fitting framework a data corruption problem in PAPPL occured. As Michael Sweet is very busy currently, reporting a bug will not help much. Starting the investigation of the problem.
  • Retro-fitting of classic CUPS drivers into Printer Applications: Continued on the driver retro-fit library code. Now it should work at least with Foomatic drivers (not yet systematically tested) and CUPS Raster drivers (hpcups of HPLIP works). Still missing are PPD files which accept only PDF (Ricoh’s PDF printers) and CUPS drivers which come with their own CUPS backend. Many oddities like diversity of CUPS color spaces, page size variants, overspraying borderless printing, … got addressed (code not yet in GitHub, state of the art of Friday).
  • Google Summer of Code 2021: Completed the mid-term evaluations and all the 5 students on OpenPrinting passed and so continue for the second half of the GSoC. They introduced themselves and presented their work on the monthly OpenPrinting video meeting. Added a summary of their work to the July news post. Continued mentoring the students.
  • Linux Plumbers Conference 2021: The OpenPrinting micro-conference got accepted! Now we are correcting and fine-tuning the announcement text and in some days the announcement will appear.
  • OpenPrinting: Monthly video meeting and July news post
  • Bugs.
  • worked mostly on LO 7.2.0 snap debugging. code and builds. I mostly fixed up patches. There was a hairy issue to debug around building from the tarballs (start with LP bug). By Monday the 19th i had another error that needed patching.
  • also tested 7.2.0 deb and gave ricotz feedback
  • updated five-or-more to gnome-3-38 snapcraft extension and core20. the build locally works but I think I did something to the container the GH runner uses and not sure how to go clean it…

snapd polkit support:

  • I updated snapd PR #9986 (polkit policy file validation code) based on review feedback.
  • I’ve been working on a polkit-agent interface that will allow a polkit agent to run on Core Desktop. It is complicated somewhat by the setuid polkit-agent-helper-1 utility the agent needs to call, but I think I’ve got things sorted out: I can switch away from the app’s main AppArmor profile when executing it, and we can make sure the seccomp filter allows all the calls it needs to perform.

snapd theme support:

  • I’ve got together two accessChecker implementations to allow snapd REST API access on the socket visible to snaps provided the caller has plugged the snapd-theme-control interface (name is provisional). These would be applied to the theme API already merged to snapd. This still needs some extra test coverage to show it works as expected.