4 ms·
So this attempts to solve the problem of shipping and running desktop applications in a distribution agnostic way. It cannot actually do this however, because
by the_why_of_y 11y ago
So this attempts to solve the problem of shipping and running desktop applications in a distribution agnostic way.
It cannot actually do this however, because in order for an application to actually run you need to ensure that it's dependencies (in particular shared libraries) are installed on the OS in a version that's compatible with the application, and the documentation is essentially hand-waving the problem away:
Gather suitable binaries of all dependencies that
are not part of the base operating systems you
are targeting. For example, if you are targeting
Ubuntu, Fedora, and openSUSE, then you need to
gather all libraries and other dependencies that
your app requires to run that are not part of
Ubuntu, Fedora, and openSUSE.
So what does an application author do if the application requires OpenSSL, which exists in multiple ABI incompatible versions in different versions of distros?
xdg-app actually solves that problem with its Runtimes - you create an xdg-app application by building it against a SDK that corresponds to a particular Runtime, which won't be updated in ABI breaking ways. Application authors know exactly which libraries they can rely on and which they have to bundle.