Thinking of installing snap on Debian due to scarcity of snap packages for armhf

Mark Shuttleworth mark at
Wed Jan 4 07:30:51 UTC 2017

Leo, I think we're inadvertently confusing folks by talking about the
two different kinds of "classic" in the same thread, although our use of
the term "classic" for two different things is the root cause.

Luther, there are two different 'classics' in play.

Classic Ubuntu is the deb based Ubuntu, where you install a root
filesystem which deb based, and where confinement is a
mixed-proposition. Snaps can be installed on Classic Ubuntu, they get a
crafted filesystem space that they see depending on the metadata
properties of the snap (they can sometimes see the deb based filesystem,
sometimes they can only see a core snap based filesystem, it depends on
their properties).

Ubuntu Core is the "pure snap" world, where *everything is a snap by
default*. But on Ubuntu Core, you can create a special container (the
"classic mode") where you can use debs.

These two approaches serve different needs.

For developer environments, or in the cloud, it's often convenient to
use debs for the base system. You have a developer to look after the
system and so totally automated updates aren't as important. Also,
there's a high ratio of professionals-to-systems, so admin costs
disappear in that budget (you don't think of yourself as paying a price
for admining your own system, even if in fact there is a cost in time).
So the Classic Ubuntu approach gives us snaps as a convenient delivery
mechanism for newer apps on the older, but familiar and convenient, deb
based filesystem.

For devices, or for very simplistic cloud systems like container hosts,
you want to have a base system that has the very low friction of snaps
by default. Imagine having 10 million home routers out there. Each of
them is very cheap to buy, but it would be expensive to SSH to them
individually and resolve package conflicts. So a pure-snap base system
for devices makes a lot of sense - you have a few apps that you care
about, and you want the lowest possible friction across millions of
those devices while preserving security and the ability to updates them

So Leo was talking about the "classic mode" (container) on a "pure-snap
Ubuntu Core" device. I was talking about "snaps on a classic (deb-based
root filesystem) Ubuntu".

Make sense?

In your case, I think my approach will be better for you. Use vanilla
Ubuntu Server (deb based and familiar) then use snaps for fresher and
auto-updating apps.


On 03/01/17 19:49, Leo Arias wrote:
> On Tue, Jan 3, 2017 at 10:26 AM, Luther Goh Lu Feng <elfgoh at> wrote:
>> - Ubuntu core + snaps via classic mode
> If you install a deb in classic mode, it will not be able to affect
> the kernel, gadget or core snaps. It's isolated. The deb can break
> your classic chroot, but nothing else. You can just throw it away, and
> create it clean again.
> However, there are still things that will work on a classic ubuntu
> installation, but will not work in classic mode yet. Most of them are
> just bugs that need to be reported and somebody will fix them.
> I use classic mode to do prototyping and development while I get my
> software ready to work as a snap. And I find myself using it less
> every day, as new snaps are released to the store.
>> - Debian + snaps via snap
> This will give you a complete traditional system. Everything you
> learned in debian and ubuntu before will just work. So it could be a
> softer transition while you learn about snaps and your dependencies
> are shipped as snaps. You will not get all the benefits of a full
> snappy system, but you will get some by installing the snaps that are
> ready.
> As always, it's a trade-off. If you can give a try to both approaches,
> I would be really interested to hear your opinion.
> pura vida

More information about the Snapcraft mailing list