Snappy and Ubuntu Desktop

Robert Ancell robert.ancell at
Tue Apr 21 10:06:32 UTC 2015

We're looking at how to get Ubuntu Desktop into snaps. We're
struggling to work out how to create a framework for this. There are
many problems where snappy doesn't seem sufficient to do this so we'll
try and start with a simple use case of something that needs to be
packaged - CUPS (the service that allows us to access printers).

1. CUPS is required by Ubuntu Desktop.
2. CUPS is shared with other desktops e.g. GNOME, KDE. Is also used in
print servers that will not have desktop frameworks installed.
3. CUPS has a system service, which requires a socket /var/run/cups/cups.sock.
4. Applications that access CUPS do so via a library (libcups).
5. CUPS is just one of many shared services, e.g. SAMBA, Avahi, BlueZ,
NetworkManager, AccountsService, GVFS, iBus, Zeitgeist, etc.

What is the ideal size of framework? Do we put CUPS into its own snap?

Are applications just supposed to depend on one framework? How does
that work if Ubuntu desktop is made up of multiple framework snaps?

If two applications require different versions of a framework, what happens?

Where do helper libraries for services live? Applications access CUPS
through libcups - does every snap then require a copy of libcups?

--Robert and Didier

More information about the snappy-devel mailing list