So this attempts to solve the problem of shipping and running desktop applications in a distribution agnostic way.<p>It cannot actually do this however, because in order for an application to actually run you need to ensure that it&#x27;s dependencies (in particular shared libraries) are installed on the OS in a version that&#x27;s compatible with the application, and the documentation is essentially hand-waving the problem away:<p><pre><code>  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.
</code></pre>
So what does an application author do if the application requires OpenSSL, which exists in multiple ABI incompatible versions in different versions of distros?<p>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&#x27;t be updated in ABI breaking ways.  Application authors know exactly which libraries they can rely on and which they have to bundle.