It was a hot topic this time last year, and since it did not arrive alongside Noble Numbat in April, we were expecting it would appear alongside last month's Oracular Oriole - but no.
While an immutable desktop edition will be new for Canonical, it isn't being built entirely from the ground up. It will be based on the company's existing Ubuntu Core product. Core 24 shipped in June, and we previously took a high-level look at the previous release, Core 22.
Ubuntu Core is the company's existing low-maintenance, immutable distro for IoT devices. It connects to an Ubuntu Pro account and you manage it entirely remotely, to the extent that you can't log in locally on its own console. It's significantly cut down. The downloadable x86-64 VM image is only 448 MB. It has a read-only root file system, and it's built entirely from snap packages right down to the kernel - the traditional package manager is not included. It even downloads and installs its own updates, like the daemon does on normal desktop Ubuntu. It's not something you install. It's distributed as a preinstalled disk image that you write to the target machines' boot media.
The idea is that it's as close to a fit-and-forget sort of product as possible, aspiring to the Zero Touch style of admin that The Register once called "the holy grail of enterprise deployment." This is very different from the ordinary desktop or server editions of Ubuntu, and the challenges of getting a graphical desktop environment running on top of this are substantial.
An example of this was a talk about the "Journey of KDE Plasma on Ubuntu Core" by Dr Kevin Ottens of the KDE project. At the time of writing, the video of the talk is not yet available, but slides are. The previous month, Dr Ottens also gave a similar talk at the KDE Akademy 2024 conference (or possibly Konference). That talk is here on YouTube, and begins at around six hours and 32 minutes.
His talk got quite technical pretty fast. Not only are snaps a packaging format, they're also isolated containers, which can only communicate with each other and the OS via a system of interfaces, plugs, and slots. Breaking an entire modular desktop environment down into isolated components like this is not a simple task, as some of his slides illustrated.
The goal is to bring up something like the KDE project's demo distro, KDE Neon, on top of Ubuntu Core. Neon is a software showcase, with the latest version of KDE installed on top of Ubuntu LTS. Ottens's team is working on bringing this onto Ubuntu Core instead: a smaller and in principle more robust immutable foundation.
Part of the idea of Ubuntu Core is that because of its integral isolation, it should be possible to roll back updates if they don't work, or switch smoothly from a known stable version of something to the latest bleeding-edge build - and back again. This would obviously be ideal for a demo product.
This same concept is behind Ubuntu Core Desktop - but based around GNOME instead. As an "internet of things" product, Core is not very visible to the general public, even though it's been around for a decade. It was first announced back in 2014, so it's mature and stable now.
As such, Canonical is keen that the first release of the graphical desktop version not only works, but works well. The Reg FOSS desk asked Canonical's engineering director, Oliver Smith, where the Core Desktop product was. He told us:
The KDE team's efforts have been not just instructive but helpful, he said.
The next version of Ubuntu, 25.04, will be codenamed Plucky Puffin. It should appear on April 17 next year and, as an interim release, it will go out of support nine months later. We might see a preview release of Core Desktop around that time - although note that Ubuntu Core doesn't have interim releases. Smith did not give us a prediction of when it would appear.
This not conspicuously plucky vulture suspects that Ubuntu Core Desktop could be the product that demonstrates the snap packaging system's strengths in a more resilient form than potential rivals such as Garuda Linux, siduction, or even SteamOS 3. ®