Contents

Applications

At the moment we are building nightlies of most of our applications. It has the master version of the applications, so expect some unstable development quirks.
On the bright side, if you find one, you get to tell the developers so they can fix it!

All flatpak commands (such as remote-add and install) accept a --user option to install things at the user level, without being prompted for the sudo password every time.

Compile your application

Now you get to compile your favorite application. If you want to see how it's done, you can see some of the ones that have already been built. You can find it here.

To compile applications, you should create a json file similar to the ones in the previous link. Then you'd just need to trigger the build and get it into a repository. For testing, I recommend just creating a local one (to publish an rsync will be required).

Flatpak portals

Portals are high-level session bus APIs that provide selective access to resources to sandboxed applications. The implicit expectation of portals is that the user will always be involved in granting or rejecting a portal request, thus most portal APIs will lead to user interaction in the form of dialogs.

Since such dialogs must fit into the user experience of the desktop shell, the portal APIs are implemented by a generic frontend called xdg-desktop-portal which calls out to desktop-specific implementations that provide the actual UI. The bus name through which the portal APIs are available is org.freedesktop.portal.Desktop, with the object path /org/freedesktop/portal/desktop implementing the various portal interfaces.

KDE implementation of portals

KDE backend for flatpak portals is called xdg-desktop-portal-kde and is now part of Plasma releases (starting with Plasma 5.10). Currently it supports most of the portals. If you want to test KDE flatpak portals, you can use this simple test app.

Debugging portals

To get some debug information, you first kill the running xdg-desktop-portal-kde instance. Then first start xdg-desktop-portal-kde with:

You can see which portal has been called, whether it has been called or when you check output from xdg-desktop-portal then you should see message in case of portal error (usually related to DBus). You can also monitor dbus messages using dbus-monitor, which indicates whether portals get involved at all as everything goes through DBus.

Styles and integration with other desktops

We are aware that not everyone is using KDE/Qt applications in Plasma desktop. For this flatpak comes with extensions, where you specify a directory (with themes, icons) where third-party is allowed to install additional stuff as an addition to what we have in our runtimes. At this moment we have added support for Gnome in form of adwaita icons and adwaita-qt style. All you need to is install following extensions using commands below: