by Swapnil Bhartiya

Is Ubuntu moving away from .deb packages? Here is the complete story

Apr 27, 20156 mins
LinuxOpen SourceOperating Systems

Snappy will take the center stage at Ubuntu.

Canonical loves to shake things up. After introducing Unity, HUD, Mir, Click and Snappy the sponsor of Ubuntu is now contemplating moving away from just .deb based desktop and adopting its own Snappy.

Will Cooke, Ubuntu Desktop Engineering Manager, posted on Google+ “Our plan for 15.10 (which is still being finalised, and will be discussed in more depth at UOS in a couple of weeks) is to have a build based on Snappy Personal and so the current .deb based Desktop Next image will be going away and will be replaced with the new Snappy version.”

Cooke’s post has the potential to spread confusion among users and the Linux community, so to clear things up, I talked to Ubuntu Community managers Alan Pope and Michael Hall, and Canonical engineer Robert Ancell.

Is Desktop Next getting too Personal?

Snappy Personal is a successor of Desktop Next (a term used by Canonical to describe “The next generation of Ubuntu built on Unity 8 / Mir”). There will now be two images of Ubuntu based on Snappy: Snappy Core and Snappy Personal. Snappy Core will be aimed at servers and Internet of Things (IoT) and will come without any graphics stack pre-installed; Snappy Personal is the ‘desktop’ image that comes with the graphics stack; it is built on top of MIR and Unity 8.

Not moving away from Debian

Ubuntu is not moving away from Debian. They are still using Debian to build images of Ubuntu using packages from the archives. What they are doing is moving the desktop to Snappy-based images and applications.

Two major advantages of using Snappy over the traditional model are faster and guaranteed upgrade and increased security due to the confinement of apps.

Snappy Personal will offer an experience similar to Ubuntu Phone or Android as it will also move to an image based model. On Android and Ubuntu Phones you get a single system that contains the file system and when you get an update there is no chance for broken systems or missing dependencies. The upgrade is smoother than a hot knife passing through butter.

Snappy Personal will be using Snappy package to take advantages of enhanced security and ease of installation. That doesn’t mean .deb packages will no longer work on Ubuntu, but these packages won’t have the same level of security as there is no application isolation. That is not to say that they are ‘insecure,’ though, as they are still code-reviewed by Debian and Ubuntu developers.

To address this issue, Ubuntu developers are thinking of providing a confined space for Debian packages that can be kept separate from the image (OS) and Snappy packages. So even if a Debian package is compromised, it won’t bring down the whole system with it.

This way users will continue to use those .deb packages that are not yet ported to Snappy without compromising their systems. This will also allow developers enough time to port their apps without losing those users who chose to migrate to Snappy. The devil is in the details and Canonical developers have yet to finalize it.

You may be wondering what happened to ‘Click’ that Canonical was talking about of late. Snappy is actually version 2.0 of Click. It can do everything that Click can do plus more. One of the biggest differences between the two is that Snappy can also include its own frameworks, something that Click can’t. So someone can make a Java Runtime Snappy package and it will install Java. If there are apps that also use Java, they can be installed and used on this system. Click will be phased out to be replaced by Snappy.

More work for developers?

Does that mean more work for developers? Yes and no. Ubuntu engineers told me that it’s easier to create a Snappy package than a Debian package, which means less friction for app developers. Ubuntu is known for documentation and they are providing documentation and tools to enable people to easily package apps. Since Click and Snappy are essentially the same thing there will be zero migration effort for a developer.

Will it confuse users?

Not really. Canonical will be offering two editions of Ubuntu: one based on the traditional .deb-based desktop and the other based on Snappy.

Canonical will offer a traditional 16.04 Debian package edition and a Snappy desktop so users can choose whichever version they want. Since 16.04 will be LTS it will be critical for Canonical to not ‘touch’ the users who want to use the traditional desktop and at the same time offer an LTS release of Snappy to those who want to climb up the evolutionary ladder.

So those users who want the traditional desktop will be able to download it. And those who want security benefits and a much smoother, Android-like upgrade experience can migrate to the Snappy-based image.

Snappy users will also get more frequent updates to their applications, rather than waiting 6 months for the next Ubuntu release.

In a nutshell these are the benefits of Snappy:

  • Users don’t need to wait for the archive to get updates to their apps
  • No need to install PPAs to get updates to applications
  • Snaps will (eventually) be installable on all form factors (rather than .debs for desktop and clicks for phone)
  • Snaps are easier to create
  • Snappy packaged apps are confined, so applications cannot steal data from places they’re not permitted to touch.
  • Snappy packages can be more easily rolled back when an update goes bad
  • Snappy packages have delta updates to reduce download size
  • The Snappy store has automated reviews, meaning uploaded Snaps are available to users very quickly, without manual review — similar to the Click store today.

Will flavors and derivatives have a harder time?

Ubuntu has more than half a dozen official flavors and many more derivatives. One question this raises is how will official flavors like Kubuntu and major derivatives like Linux Mint be affected, if at all?

The team says that since they still need the .deb-based archive to build from there won’t be any affect on flavors and derivatives as they can build from that. And if such projects want to take advantage of Snappy then they can easily do that too.

It looks like things are only going to get better for Ubuntu users. It will be interesting to see if other distros will adopt the same approach to improve the user experience.

The biggest question for Ubuntu users is, “to be or not to be”. As a Ubuntu user, will you migrate to Snappy? Tell us in the comments below.