To encourage app distribution advancements, Canonical is now letting Ubuntu app developers build their Snaps without bundling their dependencies. The new support comes through the ubuntu-app-platform snap that has just been reached the Ubuntu Software store.
Canonical’s ubuntu-app-platform snap comes bundled with standard Qt libraries and QML runtime alongside the Ubuntu UI toolkit and related dependencies and Chromium content API oxide with its QML bindings.
“This allows app developers to declare a dependency on this snap through the content sharing mechanism, thus reducing dramatically the size of the resulting app snaps,” Canonical developer Olivier Tilloy writes in a Google+ post.
The idea to make Snap as the default app package format on Ubuntu was mainly to reduce app presence on system’s memory. Though it so far found to be effective for certain apps, the arrival of the ubuntu-app-platform snap would expand Snaps universally and help reducing app sizes.
Tilloy notes that the webbrowser-app snap has already proved the success of the fresh development by reducing its size from 136MB to 22MB.
Snapcraft might conflict initially
While Canonical has added its advanced snap to the store, it is yet to update Snapcraft — the tool that is used in developing snap apps. This might bring some issues as the resulting snaps could consume quite lesser space than their original size and the Snapcraft utility would still look for dependencies to crawl while packaging apps as Snaps. Developers also need to add their Qt modules to the stage packages of snaps if they want to integrate them into their apps.