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.

rls: Poked a bit more at the rls bug that I’d been assigned. I’m relatively certain it’s a dnsmasq bug. Forwarded upstream (before the holidays), and poked at it some more this week. We’d identified a commit that included the probable bug, and juliank reverted it - so the bug is “fixed” for disco.

Some babysitting of autopkgtest required - identified that openjdk-lts was killing it because it was dumping gigs into the artifacts directory. Reported that to tdaitx and blacklisted for now.

Ubuntu/Debian

The buildstream package is now in Debian and Ubuntu. It’s the tool the GNOME Release Team uses to make GNOME releases. (You’ll probably want to keep using jhbuild since buildstream is still a bit slow for active development. GNOME Builder’s Flatpak build thing is fairly fast too.)

Packaged bst-external (in NEW queue), an addon package for buildstream used by GNOME.

Stopped using intltool in gedit-plugins. intltool has a bug where it broke translations when built in parallel which affects apps with multiple .desktop or plugin files like this one. Sadly, intltool is unmaintained so even though there are patches to fix some of its bugs, there is no one to do a release. I contacted the only person on the Launchpad intltool team to see about getting a release done or adding someone else to the team. I haven’t heard back. Maybe we’ll eventually want to ask the Launchpad admins to allow us to have access.

OpenURI (both opening local files in associated applications, and URLs in browser)

Screenshot (take screenshot, deliver payload via document portal)

All tests are using the real xdg-desktop-portal and xdg-document-portal with a custom UI service to allow to run headless.

GLib support for OpenURI.OpenFile portal API:

Last year while working on portals, I discovered a problem in the way it was using file descriptor passing to prove access to files: it required O_PATH descriptors, but you can easily create such descriptors for inaccessible files. A fix was made on the xdg-desktop-portal side with a compatibility carve out for flatpak.

Ken discovered that opening local files from snap apps, which led me to find that the corresponding GLib side change hadn’t been made.

Submitted MR !585 to handle this, which fixed the problem for the portal-test snap.

Inhibit portal API:

The inhibit feature doesn’t seem to work from portal-test. I’ve been investigating, but haven’t tracked down the exact cause yet. The code in GTK seems to contact the portal API only after a failure to contact org.gnome.SessionManager. I suspect it is hitting some other error condition that causes it to skip the portal fallback.

cups-filters: With the new QPDF version I have now switched the flattening on interactive PDF forms and annotations (integgrating the data into the PDF pages as static part so that it gets printed) is done by pdftopdf itself and not by external utilities removing an important slowdown factor from the print filtering process. The QPDF work for this was started years ago in a GSoC and got finally completed these days.

Google Summer of Code 2019: Set up the project ideas pages for the Linux Foundation and preparing the mentoring organization application for submission today