eg. change this:

runtime: org.gnome.Platform
runtime-version: "46"

to this:

runtimes:
  - org.gnome.Platform/46
  - org.gnome.Platform/45
  - org.freedesktop.Platform/20.08
  - org.kde.Platform/5.15

Many people complain about flatpaks taking up too much space. Allowing for more runtimes to be shared between apps would take up less space. However, this has been denied.

If I am an app developer and I know my app runs on several different runtimes, why shouldn’t I be able to specify all of those runtimes? Are there technical reasons why this is a bad idea?

EDIT: I mean a list of runtimes of which one must be installed, not a list of runtimes of which all must be installed.

  • wisha@lemmy.ml
    link
    fedilink
    arrow-up
    19
    ·
    5 months ago

    We could take this further and let developers specify exactly the dependencies they need! No more bloated runtimes! App A could specify libfoo>=1.23.45 while app B specify libfoo<1.24 and Flatpak could resolve the compatible version automatically!

    Serious answer: If space saving is the goal, traditional packaging is the way to go. Allowing multiple runtimes is a slippery slope away from the core idea of Flatpak (simplest dependency management possible so developers don’t have to test many configurations).

    (Not that there’s anything wrong with traditional packaging with more complicated dependency management - it’s just not Flatpak’s thing).