Oh Snap... Desktop Ubuntu Core to arrive in 2024
Changes are happening in Fedora and openSUSE immutable distros, too
Initially leaked in a forum comment, it has been confirmed in a blog post: Canonical will soon snappily jump aboard the immutable distro bandwagon.
Lead Snap developer Oliver Grawert casually dropped the announcement in a comment in a story on the popular OMG Ubuntu site, but the news was confirmed the very next day in a lengthy and very detailed blog post by Ubuntu desktop product manager Oliver Smith. As of the next LTS release, which will appear next April, numbered as version 24.04, the standard Ubuntu desktop distro will be joined by a new immutable desktop version, based on the existing Ubuntu Core immutable distribution.
Why it's important
What this means is severalfold. Firstly, although this is a new product for Ubuntu, it's not a whole new distribution: although Ubuntu Core is not as well known as mainstream Ubuntu, it's an established product which has been around for years. We looked at the then-new release about a year ago; that was Core 22, the fourth release. So even though Canonical has not yet officially confirmed what the new product's name will be, it will be based on Core 24, with a set of additional packages on top to provide a graphical desktop. On Canonical's GitHub repository, there's already a test build of what will probably be the new desktop edition.
Secondly, we already know a bit about it, and can safely make a few predictions. For instance, we know that it will use the GNOME desktop, because that's the only official Ubuntu offering. Some of the other flavors may of course follow with their own immutable variants. The maintainer of Ubuntu Unity already has his own immutable distro, called blendOS, for instance.
It's also important to look at the context of existing immutable distributions, of which there are already quite a few. One of the longest standing is Endless OS, version 5 of which we looked at early this year. The Red Hat-sponsored Fedora project has several, including Silverblue (GNOME) and Kinoite (KDE) spins – which will soon be joined by the recently announced Onyx, a new immutable edition based on the Budgie desktop.
However, an issue with all of these is that they need two software distribution toolchains: one, OStree, for installing and maintaining the operating system itself, and another, entirely separate one, Flatpak, for the applications that run on top of it. (The other alternative, of course, is the ChromeOS route: you don't get to install native, local apps at all. Punters can opt for Android apps, and techies get a Debian container and all the good luck that they might need to use it.)
We've discussed OStree before. It uses a model derived from the Git version control system to distribute operating system binaries. Like Git itself, this is very clever, sophisticated, smart — and yet few fully understand exactly how Git works under the hood. The Red Hat-backed Flatpak also uses a similar, and related, toolchain to do its job… only it doesn't work very well for command line apps. Flatpak is strongly aimed at graphical desktop applications. As we discussed before, we feel that we need to specifically mention that tools such as OStree and Flatpak are backed by Red Hat, because this explains some of the technological choices that they make: they are a direct result of the fact that Red Hat does not currently have a next-generation file system capable of copy-on-write snapshots.
Somewhat paradoxically, although Canonical was experimenting with a COW-capable file system in the form of ZFS for some years, it now seems to have set this aside. However, Snap predates all that; it was designed for Ubuntu Phone. Each Snap package is a single, heavily compressed file — as of course are
.RPM packages, when you think about it. Rather than unpacking them and spraying their contents across the file system, Snap keeps them whole and loop-mounts them to run their contents.
- Russia tops national leagues in open source downloads
- Debian 12 'Bookworm' is the excitement-free Linux you've been waiting for
- An unexpectedly fresh blast from the past, Freespire 9.5 has landed
- Building your own private 5G is as easy as Wi-Fi
As such, our third conclusion is also a very safe one. Ubuntu Core is already based around Snap packages. It's Snap all the way down, and includes no other packaging system whatsoever. We also know that Ubuntu remixes aren't allowed to include Flatpak any more. So it's a certainty that same will be true of the desktop version of Core: it will use Snap, wholly Snap and nothing but Snap. No Flatpak, and no APT.
Although a lot of people don't like Snap and Snap-packaged apps, the Snapcraft tooling is quite mature and it does work. Unlike Flatpak, Ubuntu's Snappy tools are equally suitable for packaging command-line programs and operating system components. So, in a significant contrast with all other immutable distros, the desktop edition of Core will have a single packaging system used throughout the entire OS.
So even while being new, the forthcoming Core Desktop (whatever it ends up being named) will have some advantages over its existing immutable rivals. As an edition of Ubuntu Core, it will be the fifth release. Canonical already has Core 16, 18, 20 and 22, out there and working in the field.
The immutable distribution model is also exceptionally well proven: it's basically how both iOS and Android work. In the fondleslab market, handset vendors periodically issue complete OS images. An Android update, for example, is a complete installed copy of the OS, and the end user doesn't get to change a single byte. You don't even get an admin account, or write access to the operating system partition. It's effectively a sealed unit. On top of that, apps are also sealed units — they can be installed, updated, and removed again, all without making any change to the underlying OS. Because of this, when you get an OS update, you can safely install it knowing that it won't affect any of your apps. It's not how desktop Linux users are accustomed to working, but it already has billions of happy users out there.
At this point it's worth remarking that there is a whole other family of immutable distributions out there: the SUSE and openSUSE microOS range. The openSUSE project has recently renamed its two desktop distributions. The GNOME version is now called Aeon, and the KDE edition Kalpa.
Unlike Red Hat, SUSE does have a COW file system, and its immutable offerings thoroughly exploit it. At the cost of being heavily reliant on Btrfs, SUSE is able to offer OS snapshots, transactional package installation, and version rollback, all using the capabilities of its next-gen file system. None of this needs new package formats or elaborate tooling such as OStree layered on top of the filesystem. This makes for a simpler, cleaner stack. The desktop products do, however, use Flatpak for app installation.
It's interesting to note that Canonical's official blog post announcing the new immutable desktop refers in considerable depth to rival offering, including ChromeOS, Fedora Silverblue, and the SUSE distros – using their new names, no less. It also cheekily has the sub-heading "Even more atomic", which may be a sly dig at Red Hat's original immutable operating system effort, Project Atomic, which was discontinued after Big Purple acquired CoreOS.
On one hand, we find it very refreshing to see a company in the Linux space openly and knowledgeably discussing its rivals and their technology. The other enterprise Linux vendors generally go out of their way to avoid mentioning competitors or even acknowledging that any exist. When the Reg FOSS desk has asked Red Hat representatives how their products are positioned against rival distros, for instance, they typically react with shock, followed by offended adamant refusal to speculate about any other vendors or their products.
On the other hand, entering the immutable desktop market relatively late, well aware of the existing rivals, and with arguably a simpler but more capable and better-integrated software stack, clearly could work to Canonical's advantage. In terms of integration, fit and finish, and end-user polish, Ubuntu still has the edge over pretty much every other desktop Linux distro. The only other distros that can genuinely rival it are based upon it. Judging by Canonical's willingness to engage with and discuss others' technologies, it could be that Ubuntu enters the immutable-distro space with a better offering than any of the incumbents.
We suspect that the desktop edition of Ubuntu Core will primarily be positioned at paying enterprise customers, perhaps ones looking to repurpose existing fleets of desktop machines and thin clients which used to run Windows. For example, subsequent to a ransomware attack — a window of sales opportunity exists which Google has used to its advantage to sell its ChromeOS Flex offering before now. One of the advantages of ChromeOS Flex is that it can be managed with Google's existing management tooling for fleets of ChromeBooks.
Canonical already has its own Landscape management tooling for Ubuntu, Ubuntu Server, and Ubuntu Core, but unlike Google, Canonical isn't trying to sell any kind of cloud-based applications or services on the back of its OS offerings. It is, obviously, way too early to tell, but this new offering could potentially give Canonical a significant boost in corporate desktop adoption… and that in turn could be the thing that propels its Snapcraft format and app store to much greater success. ®
Don't believe the FUD. Sure, there is only one official public Snap store, but having a single public outlet does not mean that Snap is proprietary: It isn't. We have already covered a proof-of-concept independent public snap store, although it's gone now. At the Ubuntu Summit, we also spoke to representatives of companies running their own private Snap stores to deploy software and updates to fleets of Ubuntu Core instances. It's perfectly possible to create, sign, publish and distribute your own Snaps, and all the tools to do it are included in the distribution, and they're all open souce.