Snap happy
Snaps (or snappy packages or whatever you want to call them) and the tooling for dealing with them, have been available in Ubuntu since 16.04. They solve a number of shortcomings of current packaging methods. First and foremost, thanks to containers being all the rage they are installed in isolation to the rest of the system. So even if you install a rogue snap, it’s very limited in the amount of damage it can do. Snaps are also, in one sense anyway, much more portable than traditional .deb packages. They can be installed on any distribution supporting snaps, since they include all of their dependencies. This of course has the adverse effect of making them larger than traditional packages, but also makes the packaging process far more simple – developers can package once for many distributions. Snaps can be easily updated too, so common gripes about packages in repos being out of date are assuaged. For example, if you wanted to have an always-updated version of the Telegram secure messaging app, then all you need is: $ sudo snap install telegram-latest There are many more snaps available on the UAppExplorer website https://uappexplorer.
com/apps?type=snappy. One of our favourites is the mighty OhMyGiraffe, which we’ll leave you to investigate. Snaps are not the only dependency-free, distro-agnostic way of packaging things – the Flatpak (formerly xdgapp) and AppImage formats have been around for a while, too.
Flatpaks, essentially a more desktop-centric approach to application packaging, are supported by the software app too. Hopefully these formats can coexist harmoniously and lead to developers’ lives being made easier without causing fragmentation.