How to look up on what packages specific runtimes are dependent on?

Dear all!

I have already searched a bit but haven’t been successful. I would like to know on what packages specific runtimes are dependent on.

To explain this:

~ # flatpak list
Name                                               Application ID                                    Version                             Branch                  Installation
Pinta                                              com.github.PintaProject.Pinta                     2.1.2                               stable                  system
VSCodium                                           com.vscodium.codium                               1.95.2.24313                        stable                  system
XnView MP                                          com.xnview.XnViewMP                               1.8.3                               stable                  system
MediathekView                                      de.mediathekview.MediathekView                    14.1.0                              stable                  system
HandBrake                                          fr.handbrake.ghb                                  1.8.2                               stable                  system
Qalculate! (GTK UI)                                io.github.Qalculate                               5.3.0                               stable                  system
Freedesktop Platform                               org.freedesktop.Platform                          freedesktop-sdk-24.08.7             24.08                   system
Mesa                                               org.freedesktop.Platform.GL.default               24.2.5                              23.08                   system
Mesa (Extra)                                       org.freedesktop.Platform.GL.default               24.2.5                              23.08-extra             system
Mesa                                               org.freedesktop.Platform.GL.default               24.2.7                              24.08                   system
Mesa (Extra)                                       org.freedesktop.Platform.GL.default               24.2.7                              24.08extra              system
Intel VAAPI driver                                 org.freedesktop.Platform.VAAPI.Intel                                                  23.08                   system
Intel VAAPI driver                                 org.freedesktop.Platform.VAAPI.Intel                                                  24.08                   system
FFmpeg extension with extra codecs                 org.freedesktop.Platform.ffmpeg-full                                                  23.08                   system
FFmpeg extension with extra codecs                 org.freedesktop.Platform.ffmpeg-full                                                  24.08                   system
openh264                                           org.freedesktop.Platform.openh264                 2.1.0                               2.2.0                   system
openh264                                           org.freedesktop.Platform.openh264                 2.4.1                               2.4.1                   system
Freedesktop SDK                                    org.freedesktop.Sdk                               freedesktop-sdk-24.08.7             24.08                   system
GNOME Application Platform version 46              org.gnome.Platform                                                                    46                      system
GNOME Application Platform version 47              org.gnome.Platform                                                                    47                      system
Gramps                                             org.gramps_project.Gramps                         5.2.3                               stable                  system
Adwaita theme                                      org.kde.KStyle.Adwaita                                                                6.7                     system
KDE Application Platform                           org.kde.Platform                                                                      6.7                     system
digiKam                                            org.kde.digikam                                   8.5.0                               stable                  system
ScummVM                                            org.scummvm.ScummVM                               2.8.1                               stable                  system

gives me a list of all installed packages.

~ # flatpak list --runtime
Name                                               Application ID                                    Version                             Branch                  Installation
Freedesktop Platform                               org.freedesktop.Platform                          freedesktop-sdk-24.08.7             24.08                   system
Mesa                                               org.freedesktop.Platform.GL.default               24.2.5                              23.08                   system
Mesa (Extra)                                       org.freedesktop.Platform.GL.default               24.2.5                              23.08-extra             system
Mesa                                               org.freedesktop.Platform.GL.default               24.2.7                              24.08                   system
Mesa (Extra)                                       org.freedesktop.Platform.GL.default               24.2.7                              24.08extra              system
Intel VAAPI driver                                 org.freedesktop.Platform.VAAPI.Intel                                                  23.08                   system
Intel VAAPI driver                                 org.freedesktop.Platform.VAAPI.Intel                                                  24.08                   system
FFmpeg extension with extra codecs                 org.freedesktop.Platform.ffmpeg-full                                                  23.08                   system
FFmpeg extension with extra codecs                 org.freedesktop.Platform.ffmpeg-full                                                  24.08                   system
openh264                                           org.freedesktop.Platform.openh264                 2.1.0                               2.2.0                   system
openh264                                           org.freedesktop.Platform.openh264                 2.4.1                               2.4.1                   system
Freedesktop SDK                                    org.freedesktop.Sdk                               freedesktop-sdk-24.08.7             24.08                   system
GNOME Application Platform version 46              org.gnome.Platform                                                                    46                      system
GNOME Application Platform version 47              org.gnome.Platform                                                                    47                      system
Adwaita theme                                      org.kde.KStyle.Adwaita                                                                6.7                     system
KDE Application Platform                           org.kde.Platform                                                                      6.7                     system

gives me runtimes only.

~ # flatpak list --app-runtime=org.freedesktop.Platform
Name                  Application ID                         Version        Branch        Installation
XnView MP             com.xnview.XnViewMP                    1.8.3          stable        system
MediathekView         de.mediathekview.MediathekView         14.1.0         stable        system
ScummVM               org.scummvm.ScummVM                    2.8.1          stable        system

resp.

~ # flatpak list --app-runtime=org.freedesktop.Sdk
Name            Application ID            Version            Branch       Installation
VSCodium        com.vscodium.codium       1.95.2.24313       stable       system

resp.

~ # flatpak list --app-runtime=org.gnome.Platform
Name                        Application ID                        Version         Branch         Installation
Pinta                       com.github.PintaProject.Pinta         2.1.2           stable         system
HandBrake                   fr.handbrake.ghb                      1.8.2           stable         system
Qalculate! (GTK UI)         io.github.Qalculate                   5.3.0           stable         system
Gramps                      org.gramps_project.Gramps             5.2.3           stable         system

resp.

~ # flatpak list --app-runtime=org.kde.Platform
Name          Application ID       Version      Branch      Installation
digiKam       org.kde.digikam      8.5.0        stable      system

give me on what packages the main runtimes are dependent on… So far so good!

But, how to find out the dependencies for the likes such as org.freedesktop.Platform.GL.default,
org.freedesktop.Platform.VAAPI.Intel,
org.freedesktop.Platform.ffmpeg-full,
org.freedesktop.Platform.openh264?

For example,

~ # flatpak list --app-runtime=org.freedesktop.Platform.GL.default
~ # flatpak list --app-runtime=org.freedesktop.Platform.GL.default//23.08

give no result.

Currently, I use as a work-around (example for one specific runtime)

~ # flatpak uninstall org.freedesktop.Platform.GL.default
Similar installed refs found for ‘org.freedesktop.Platform.GL.default’:

   1) runtime/org.freedesktop.Platform.GL.default/x86_64/24.08 (system)
   2) runtime/org.freedesktop.Platform.GL.default/x86_64/23.08 (system)
   3) runtime/org.freedesktop.Platform.GL.default/x86_64/23.08-extra (system)
   4) runtime/org.freedesktop.Platform.GL.default/x86_64/24.08extra (system)
   5) All of the above

Which do you want to use (0 to abort)? [0-5]: 2
Info: applications using the extension org.freedesktop.Platform.GL.default branch 23.08:
   fr.handbrake.ghb, org.gramps_project.Gramps, org.kde.digikam
Really remove? [y/n]: n
~ # flatpak uninstall org.freedesktop.Platform.GL.default
Similar installed refs found for ‘org.freedesktop.Platform.GL.default’:

   1) runtime/org.freedesktop.Platform.GL.default/x86_64/24.08 (system)
   2) runtime/org.freedesktop.Platform.GL.default/x86_64/23.08 (system)
   3) runtime/org.freedesktop.Platform.GL.default/x86_64/23.08-extra (system)
   4) runtime/org.freedesktop.Platform.GL.default/x86_64/24.08extra (system)
   5) All of the above

Which do you want to use (0 to abort)? [0-5]: 1
Info: applications using the extension org.freedesktop.Platform.GL.default branch 24.08:
   com.xnview.XnViewMP, de.mediathekview.MediathekView, org.scummvm.ScummVM, com.vscodium.codium, com.github.PintaProject.Pinta, io.github.Qalculate
Really remove? [y/n]: n

Isn’t there any better way? I.e. a proper way to do this?

Thank you!

These aren’t exactly “runtimes” but more like “runtime extensions”. GL, Intel and openh264 are used by any Flatpak using the corresponding Freedesktop/GNOME/KDE runtimes. So “all” apps can use those. See Extensions - Flatpak documentation

ffmpeg-full is an opt-in extension for apps.

There isn’t a way to search which apps are using this, but you can run flatpak info -m $APPID|grep "Extension org.freedesktop.Platform.ffmpeg-full" in a loop for all your apps.

Eg.

for i in $(flatpak list --app --columns=ref); do if flatpak info -m "$i"|grep -q "Extension org.freedesktop.Platform.ffmpeg-full"; then echo "$i"; fi; done

@bbhtt

Thank you! Looks promising…

Can I put your script in an outer for for all the runtimes?

~ # flatpak list --runtime --columns=ref
Ref
org.freedesktop.Platform/x86_64/24.08
org.freedesktop.Platform.GL.default/x86_64/23.08
org.freedesktop.Platform.GL.default/x86_64/23.08-extra
org.freedesktop.Platform.GL.default/x86_64/24.08
org.freedesktop.Platform.GL.default/x86_64/24.08extra
org.freedesktop.Platform.VAAPI.Intel/x86_64/23.08
org.freedesktop.Platform.VAAPI.Intel/x86_64/24.08
org.freedesktop.Platform.ffmpeg-full/x86_64/23.08
org.freedesktop.Platform.ffmpeg-full/x86_64/24.08
org.freedesktop.Platform.openh264/x86_64/2.2.0
org.freedesktop.Platform.openh264/x86_64/2.4.1
org.freedesktop.Sdk/x86_64/24.08
org.gnome.Platform/x86_64/46
org.gnome.Platform/x86_64/47
org.kde.KStyle.Adwaita/x86_64/6.7
org.kde.Platform/x86_64/6.7

Well, this attempt does not work:

~ # for j in $(flatpak list --columns=ref); do  for i in $(flatpak list --app --columns=ref); do if flatpak info -m "$i"|grep -q "$j"; then echo "$j: $i"; fi; done; done
org.freedesktop.Platform/x86_64/24.08: com.xnview.XnViewMP/x86_64/stable
org.freedesktop.Platform/x86_64/24.08: de.mediathekview.MediathekView/x86_64/stable
org.freedesktop.Platform/x86_64/24.08: org.scummvm.ScummVM/x86_64/stable
org.freedesktop.Sdk/x86_64/24.08: com.vscodium.codium/x86_64/stable
org.freedesktop.Sdk/x86_64/24.08: com.xnview.XnViewMP/x86_64/stable
org.freedesktop.Sdk/x86_64/24.08: de.mediathekview.MediathekView/x86_64/stable
org.freedesktop.Sdk/x86_64/24.08: org.scummvm.ScummVM/x86_64/stable
org.gnome.Platform/x86_64/46: fr.handbrake.ghb/x86_64/stable
org.gnome.Platform/x86_64/46: org.gramps_project.Gramps/x86_64/stable
org.gnome.Platform/x86_64/47: com.github.PintaProject.Pinta/x86_64/stable
org.gnome.Platform/x86_64/47: io.github.Qalculate/x86_64/stable
org.kde.Platform/x86_64/6.7: org.kde.digikam/x86_64/stable

It just gives me results for the main runtimes (or how to call them), not the runtime extensions (or how to call them).

This wouldn’t show anything useful. Like I said every installed app will depend on those for a particular runtime branch.

Let me explain why I am interested in and asking for.

When looking at

~ # flatpak list --runtime
Name                                               Application ID                                    Version                             Branch                  Installation
Freedesktop Platform                               org.freedesktop.Platform                          freedesktop-sdk-24.08.7             24.08                   system
Mesa                                               org.freedesktop.Platform.GL.default               24.2.5                              23.08                   system
Mesa (Extra)                                       org.freedesktop.Platform.GL.default               24.2.5                              23.08-extra             system
Mesa                                               org.freedesktop.Platform.GL.default               24.2.7                              24.08                   system
Mesa (Extra)                                       org.freedesktop.Platform.GL.default               24.2.7                              24.08extra              system
Intel VAAPI driver                                 org.freedesktop.Platform.VAAPI.Intel                                                  23.08                   system
Intel VAAPI driver                                 org.freedesktop.Platform.VAAPI.Intel                                                  24.08                   system
FFmpeg extension with extra codecs                 org.freedesktop.Platform.ffmpeg-full                                                  23.08                   system
FFmpeg extension with extra codecs                 org.freedesktop.Platform.ffmpeg-full                                                  24.08                   system
openh264                                           org.freedesktop.Platform.openh264                 2.1.0                               2.2.0                   system
openh264                                           org.freedesktop.Platform.openh264                 2.4.1                               2.4.1                   system
Freedesktop SDK                                    org.freedesktop.Sdk                               freedesktop-sdk-24.08.7             24.08                   system
GNOME Application Platform version 46              org.gnome.Platform                                                                    46                      system
GNOME Application Platform version 47              org.gnome.Platform                                                                    47                      system
Adwaita theme                                      org.kde.KStyle.Adwaita                                                                6.7                     system
KDE Application Platform                           org.kde.Platform                                                                      6.7                     system

you see that

Freedesktop Platform                               org.freedesktop.Platform                          freedesktop-sdk-24.08.7             24.08                   system

and

Freedesktop SDK                                    org.freedesktop.Sdk                               freedesktop-sdk-24.08.7             24.08                   system

only… only 24.08
and besides

GNOME Application Platform version 46              org.gnome.Platform                                                                    46                      system
GNOME Application Platform version 47              org.gnome.Platform                                                                    47                      system

46 and 47, and

KDE Application Platform                           org.kde.Platform                                                                      6.7                     system

only… only 6.7.

But

Mesa                                               org.freedesktop.Platform.GL.default               24.2.5                              23.08                   system
Mesa (Extra)                                       org.freedesktop.Platform.GL.default               24.2.5                              23.08-extra             system
Mesa                                               org.freedesktop.Platform.GL.default               24.2.7                              24.08                   system
Mesa (Extra)                                       org.freedesktop.Platform.GL.default               24.2.7                              24.08extra              system
Intel VAAPI driver                                 org.freedesktop.Platform.VAAPI.Intel                                                  23.08                   system
Intel VAAPI driver                                 org.freedesktop.Platform.VAAPI.Intel                                                  24.08                   system
FFmpeg extension with extra codecs                 org.freedesktop.Platform.ffmpeg-full                                                  23.08                   system
FFmpeg extension with extra codecs                 org.freedesktop.Platform.ffmpeg-full                                                  24.08                   system

These extensions are in 23.08 and 24.08.

First, I want to know (and have the chance to) what packages still use 23.08 (instead of 24.08). I just would like to use a proper way to do that.

And then second, I wonder on what this depends? Why are there still 23.08 runtime extensions? When I go to the relating project sites (FlatHub GitHub), I cannot find what exactly specifies 23.08. I mostly find only 24.08 strings…

These extensions are in 23.08 and 24.08.

Because GNOME and KDE runtimes are derived from Freedesktop runtimes. The extensions are common for all 3 runtimes.

GNOME 47 is based on Freedesktop runtime 24.08 and uses the org.freedesktop.Platform.GL.default 24.08 branch and so on.

KDE 6.7 is based on Freedesktop runtime 23.08 and it will use the 23.08 branch extensions etc.

OK, then this is clear now. Thank you! I was confused on that before.

Now, I have only one question left: which packages do require these ones?

openh264                                           org.freedesktop.Platform.openh264                 2.1.0                               2.2.0                   system
openh264                                           org.freedesktop.Platform.openh264                 2.4.1                               2.4.1                   system
~ # flatpak uninstall org.freedesktop.Platform.openh264
Similar installed refs found for ‘org.freedesktop.Platform.openh264’:

   1) runtime/org.freedesktop.Platform.openh264/x86_64/2.4.1 (system)
   2) runtime/org.freedesktop.Platform.openh264/x86_64/2.2.0 (system)
   3) All of the above

Which do you want to use (0 to abort)? [0-3]: 1


        ID                                         Branch          Op
 1.     org.freedesktop.Platform.openh264          2.4.1           r

Proceed with these changes to the system installation? [Y/n]: n
~ # flatpak uninstall org.freedesktop.Platform.openh264
Similar installed refs found for ‘org.freedesktop.Platform.openh264’:

   1) runtime/org.freedesktop.Platform.openh264/x86_64/2.4.1 (system)
   2) runtime/org.freedesktop.Platform.openh264/x86_64/2.2.0 (system)
   3) All of the above

Which do you want to use (0 to abort)? [0-3]: 2


        ID                                         Branch          Op
 1.     org.freedesktop.Platform.openh264          2.2.0           r

Proceed with these changes to the system installation? [Y/n]: n

give no results…
unlike before:

~ # flatpak uninstall org.freedesktop.Platform.GL.default
Similar installed refs found for ‘org.freedesktop.Platform.GL.default’:

   1) runtime/org.freedesktop.Platform.GL.default/x86_64/24.08 (system)
   2) runtime/org.freedesktop.Platform.GL.default/x86_64/23.08 (system)
   3) runtime/org.freedesktop.Platform.GL.default/x86_64/23.08-extra (system)
   4) runtime/org.freedesktop.Platform.GL.default/x86_64/24.08extra (system)
   5) All of the above

Which do you want to use (0 to abort)? [0-5]: 2
Info: applications using the extension org.freedesktop.Platform.GL.default branch 23.08:
   fr.handbrake.ghb, org.gramps_project.Gramps, org.kde.digikam
Really remove? [y/n]: n
~ # flatpak uninstall org.freedesktop.Platform.GL.default
Similar installed refs found for ‘org.freedesktop.Platform.GL.default’:

   1) runtime/org.freedesktop.Platform.GL.default/x86_64/24.08 (system)
   2) runtime/org.freedesktop.Platform.GL.default/x86_64/23.08 (system)
   3) runtime/org.freedesktop.Platform.GL.default/x86_64/23.08-extra (system)
   4) runtime/org.freedesktop.Platform.GL.default/x86_64/24.08extra (system)
   5) All of the above

Which do you want to use (0 to abort)? [0-5]: 1
Info: applications using the extension org.freedesktop.Platform.GL.default branch 24.08:
   com.xnview.XnViewMP, de.mediathekview.MediathekView, org.scummvm.ScummVM, com.vscodium.codium, com.github.PintaProject.Pinta, io.github.Qalculate
Really remove? [y/n]: n

Whenever I actually uninstall them (org.freedesktop.Platform.openh264), they are reinstalled very soon…