Flatpak runtime platforms: purposes, sizes, updates

Flatpaks dominate application software in Kinoite. This works very well. They’re supported by a number of bulky, frequently updated runtime platforms. This sparked my curiosity about which apps require which runtimes, how much space is taken by them, and how much is saved because they’re shared between applications.

I listed runtime platforms with flatpak list --runtime.
For each, I ran flatpak list --app-runtime [runtime name] to find runtime “dependencies.”

In my particular desktop, I found that

  • a bunch of apps use org.fedoraproject.KDE6Platform,
  • one app uses org.fedoraprojectKDE5Platform,
  • several use org.gnome.Platform,
  • several use org.freedesktop.Platform, and
  • several others use org.kde.Platform.

The flatpak list command does not reveal the purposes of a larger group of runtime platforms, many of while ride under the Mesa banner. The following came up blank:

  • org.fedoraproject.Platform.CL.default
  • org.fedoraproject.Platform.GL.default
  • org.fedoraproject.Platform.Locale
  • org.fedoraproject.Platform.VAAPI.Intel
  • org.fedoraproject.Platform.tessdata
  • org.freedesktop.Platform.GL.default
  • org.freedesktop.Platform.VAAPI.Intel
  • org.freedesktop.Platform.codecs-extra
  • org.freedesktop.Platform.openh264
  • org.kde.KStyle.Adwaita

Some of these seemingly application-less runtimes exist in multiple branches on my machine, with the branches sharing an application ID. Perhaps some of them are used, in turn, by the runtimes that my applications require?

All this leaves me puzzled about the function of many of these runtime platform flatpaks. Are they all truly needed? How important are their frequent, massive updates?

Many thanks to any who have read this far. I’d be grateful for a pointer to some information that would reduce my cluelessness.

You can reduce space usage by not using Fedora Flatpaks (org.fedoraproject.KDE6Platform and org.fedoraprojectKDE5Platform). The vast majority of apps, if not all, from Fedora Flatpaks are also available on Flathub.

You can remove unused dependencies with flatpak remove --unused.

Otherwise, there’s not much you can do besides no longer using the app, finding an alternative version (e.g. traditional package or Appimage), and asking the flatpak maker to update the runtime used (if it’s out of date).

Many thanks, novafunc. This clarified some things for me, and also reduced the disk footprint of my flatpaks by about 4.1GB.

The next layer relates to runtime updates by flatpak makers (aka packagers?). The moves and cleanup you suggested almost totally expunged Fedora runtimes (just one left), but added a newer org.kde.Platform branch. I would hope and imagine that porting an app to a newer runtime wouldn’t be hard, but I have zero knowledge in that area. However, I’ll reach out regarding the flatpaks using the oldest versions of that large runtime.

Thanks again!