Snapcraft.io: a universal app store for IoT Linux running on emtrion boards
Today software installation is facing lot of issues and many problems to overcome, especially into the expandable world of IoT devices. The firm Canonical is aiming to fix this with the snapcraft project (https://snapcraft.io). Snaps are containerised software packages that are simple to create and install. They auto-update and are safe to run. And because they bundle their dependencies, they work on all major Linux systems without modification.
All of that said; let’s try on our emSTAMP-Helium SBC (https://www.emtrion.de/en/details_developer-kits/emstamp-helium-devkit-linux-headless.html ). This dev kit runs Debian Stretch (9.5) and a little Kernel modification has been made to meet the requirement for the snaps to run on the device (cgroup, squashfs, …).
The installation of the snap demon is quite trivial on Debian: a simple "apt install snapd" and you're done!
Let's try some basic command. First of all, let's test snap:
Now let's search for a "hello-world" application
Now let's install one (the one with the little green stars are from verified source):
Let's run it!
Easy and seamless!
You can check services that are running:
Or list the one available on the machine:
To conclude this review, Snapcraft is a great way to publish an application into any Linux distribution and certainly the easiest way (it takes no more than 15min to publish your first app!). It works with prebuilt application, many languages and major publishers like Mozilla, Amazon, Google, Microsoft.. are already using it. Transactional updates, airtight security, and compatibility across architectures and OSes make snaps a perfect fit for IoT.