Snaps are now available for Ubuntu 14.04 LTS desktop and server

The snapd team recently announced a new release of snapd supporting Ubuntu 14.04 LTS (Trusty) for servers and desktop (i386, amd64). The snapd service is what makes possible the installation and management of applications packaged as snaps.

In a nutshell, if you have systems using Ubuntu 14.04 LTS, welcome to a brand new world!

How to install snapd?

Installation on Ubuntu 14.04 is straightforward. Firstly, open a terminal, and type the following command to install snapd:

$ sudo apt install snapd 

You can now download and run any application from the Ubuntu snap store, let’s start by installing a hello-world snap!

$ sudo snap install hello-world 

The first time you install a snap, snapd also installs the “core” snap, which is the common platform for all other snaps. After the installation, you can use the “snap list” command to list installed snaps:

$ snap list
Name         Version  Rev   Developer  Notes
core         16-2     1441  canonical  -
hello-world  6.3      27    canonical  - 

Then, in order to run “hello-world”:

$ hello-world 

However, the first time you try to run a snap on 14.04, you might experience the error “The command cannot be found”. This is due to the fact that “/snap/bin” has not been added to the $PATH environment variable. To do so, a script called “apps-bin-path.sh” has been added to /etc/profile.d. It will automatically run after you reboot or re-login and add snaps launchers to your path. When this is done, snaps should launch as expected:

$ hello-world
Hello World! 

Hooray! The “hello-world” snap is running on your Ubuntu 14.04 machine. To further explore snaps, you can use the “snap find” command to search for more.

Without any arguments, it will show featured snaps:
Command output edited to fit the blog width.

$ snap find
Name               Version   Developer   Notes  Summary
docker             1.11.2-9  docker-inc  -      The docker app de...
lxd                2.12      canonical   -      System container m...
mongo32            3.2.7     niemeyer    -      MongoDB document-o...
rocketchat-server  0.54.2    rocketchat  -      Group chat server...

It can also be used as a search engine for all stable snaps:

$ snap find 3d
Name                 Version      Developer     Notes  Summary
blender-tpaw         2.78c        tpaw          -      The free a...
cloudcompare         2.8.1-1      cloudcompare  -      3D point clo...
mvs-texturing-mardy  20170215-1   mardy         -      MVS Textur...
[...] 

As you can see, the “snap” command is used to manage snaps the same way you use “apt” to manage debs. You can learn more about it by following this short tutorial (the first two steps are about installing snapd on various distros, you can skip them!). Of course, the built-in help is available through “snap –help”.

A few snaps to try

Krita : a free and open source digital painting application. Snaps allow Krita developers to release their software directly to users, at their own pace, regardless of OS release schedules.

$ sudo snap install krita

PostgreSQL 93, 94, 95 and 96: since snaps are confined, you can install multiple PostreSQL versions at the same time, which comes in handy for testing.

$ sudo snap install postgresql96

Nextcloud and Wekan: No need to present Nextcloud for file sharing, but maybe you don’t know about Wekan: a kanban boards server similar to Trello. By installing these snaps you can spin up instances of complex collaboration software in minutes.

$ sudo snap install nextcloud
$ sudo snap install wekan-ondra

openHAB: turn any system into a home automation backend, in a minute.

$ sudo snap install openhab

Ubuntu Make: deploy and setup developer environments easily on Ubuntu (Android, Unity3D, Arduino, Swift, etc.). As this snap requires full access to your system, it’s only installable in “classic” mode, which more or less means “unconfined”.

$ sudo snap install --classic ubuntu-make

To get some insight on available or installed snaps, the “snap info” command will give you everything you need, such as commands provided by the snap:

$ snap info ubuntu-make
name:      ubuntu-make
summary:   "Setup your development environment on ubuntu easily"
publisher: 
description: |
  Ubuntu Make provides a set of functionality to setup,
  maintain and personalize your developer environment easily. It will handle
  all dependencies, even those which aren't in Ubuntu itself, and install
  latest versions of the desired and recommended tools.
  .
  This is the latest master from ubuntu make, freshly built from
  https://github.com/ubuntu/ubuntu-make. It may contain even unreleased
  features!
  
commands:
  - ubuntu-make.umake
tracking:    stable
installed:   master (x1) 13MB classic
refreshed:   2017-03-29 10:47:09 +0200 CEST
channels:                
  stable:    master (17) 17MB classic
  candidate: master (17) 17MB classic
  beta:      master (17) 17MB classic
  edge:      master (17) 17MB classic

Next steps

To browse all the available stable snaps in the store, you can visit uappexplorer, use the “snap find” command or install the “snapweb” snap and visit https://localhost:4201 for a local store interface.

If you want to snap your software and publish it, you can have a quickstart at tutorials.ubuntu.com and dive-in further with the snapcraft documentation.

If you have any questions, get in touch with the snapcraft team on Rocket.Chat and on the snapcraft mailing-list.

Posted in: