Internal format updates

Michael Vogt michael.vogt at canonical.com
Tue Mar 8 14:31:59 UTC 2016


Hello,

We are happy to announce a new rolling OS snap update and a
corresponding update of the snappy package in ubuntu 16.04 xenial.

It contains some user visible changes so you may need to adjust your
application:

1. plug<->slot got switched

This only has implications if you use the old-security interface
(previously migration-skill), the change is very simple, just replace
"slots:" with "plugs:" in your snap.yaml.  E.g.:

name: foo
slots: [something]
slots:
something:
interface: old-security
caps: []

becomes:

name: foo
plugs: [something]
plugs:
something:
interface: old-security
caps: []


2. Default working directory

The path that an application starts in is no longer the $SNAP path
(that contains all the binary data of the snap) but instead it is the
$SNAP_DATA path. So if your wrapper script was doing something like
"./my-binary" you may want to use "${SNAP}/my-binary"


3. The icon location has changed

It is now in meta/gui/icon.png instead of meta/icon.png


4. Support for .desktop files under meta/gui/:

If you want to install desktop files as part of your application you
can do so by just dropping the files into meta/gui/. Please note that
the only allowed thing you can Exec= there is an application from your
snap. Everything else will be filtered out when the desktop file gets
installed.  E.g.:

name: snapname
apps:
 appname:
  command: cmd

You desktop file should look like this:

[Desktop Entry]
Name=what-you-want
Exec=snapname.appname


Thanks and sorry for the inconvenience these changes may cause. The
added clarity to the syntax and structure makes up for it we hope.


Cheers,
Michael (for the snappy team)




More information about the snappy-devel mailing list