Snappifying a big toplevel program

Michael Terry michael.terry at
Mon Feb 23 17:04:14 UTC 2015

On Sun, Feb 22, 2015 at 4:58 AM, Oliver Grawert <ogra at> wrote:

> hi,
> Am Freitag, den 20.02.2015, 15:21 -0500 schrieb Michael Terry:
> > So I was thinking about the problem of snappifying a complex top-level
> > native program like unity8 (all the way down to Ubuntu Core, as one
> > giant snappy package).
> >
> your biggest blocker will currently be that you will need to hack
> hardware access into apparmor rules to get graphical bits to work at
> all ... (and these hacks will prevent you from landing it in the store
> so you will only be able to sideload your snap)
> the hardware access support in snaps is just being implemented and
> should be there soon though ...

Ah interesting, good to know.

also as mark mentioned, you will want to split up that work into
> framework and app layer (i would see shell, lightdm and indicators as
> the app layer here, everything below (Mir, Qt and platform-api) as
> framework)

Yes.  That is certainly the long term goal.  But I was asked to
specifically look into what would be required to do everything as one giant
snap, as a shorter term goal.

> while you can indeed do what you want and dump the whole stuff in a
> single unconfined snap, i doubt that would be maintainable and not much
> more than a finger training for a proper set-up later, not sure if you
> consider the amount of throw-away work this would cause worth the
> hassle ...

Well I was hoping that some of the work would be useful even though some
certainly would be throw-away in the long term.

Certainly, a reliable way to suck up a standard Debian package and its
dependencies into a snap would be useful in a generic way. As would the
ability to actually use that tree of files + the root tree of files.

But unsurprisingly, you folks have already thought about those problems!
Looks like the "incude-debs" yaml property handles the first problem and
the "rootfs" property handles the second problem (so no need for LD_PRELOAD
tricks like I talked about).

I gathered there is still some work to do on those properties?  Is that
effort something that could use an extra hand, or is it already well along?

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <>

More information about the snappy-devel mailing list