Future Tech

Compared to other distros, Vanilla OS 2 'Orchid' is rewriting how Linux works

Tan KW
Publish date: Wed, 31 Jul 2024, 07:18 PM
Tan KW
0 460,966
Future Tech

Vanilla OS is an experimental distro testing out new implementations of immutability, cross-distro packaging, A/B failover, and more.

Vanilla OS 2 Orchid appeared earlier this week. It's a very different OS from version 1, which came out 18 months ago and that we tried out in January 2023, but the same overall goals remain.

Vanilla OS is a general-purpose desktop Linux that shares some of the design features of ChromeOS. Like ChromeOS, it's immutable. The root file system is read-only, which should make it much more resistant to corruption or malware. Also like ChromeOS, it has two separate root partitions, which update one another, so if an update goes wrong and renders that instance unbootable, you can still boot the other and undo the changes. However, unlike ChromeOS, you can install and run your own applications - from multiple different distros.

Version 2, codenamed Orchid, is based on different foundations than version 1, which was codenamed "Kinetic." As the name suggests, Vanilla OS 1 was based on Ubuntu, specifically version 22.10 "Kinetic Kudu." For the Orchid release, the team has moved away from the Ubuntu base in favor of Debian Sid, the rolling, test release that's upstream of the slow-moving Debian stable. It's an interesting choice. Sid is unstable by name and unstable by nature, and there's always the possibility that an update could break things.

That's why the Debian meta-distro siduction exists. You get the latest components from Sid, but you also get openSUSE-derived snapshot support, so if something breaks you can "roll back" to a working version. Vanilla OS has something comparable, but simpler. Rather than lots of snapshots to manage, it has "A" and "B" root partitions, so should be robust against bad updates.

Leaving its Ubuntu base behind also means that Orchid drops Snap support, though. In theory, there's a wide choice of software. As well as Flatpaks, Vanilla OS also has built-in support for Alpine, Debian, Fedora, Arch, and openSUSE packages via its own package-management wrapper called Apx… and it also claims support for the AppImage format, and an Android runtime based on Waydroid.

All of these different environments run via built-in OCI containers, managed by Podman. However, we couldn't get anything except Debian packages working in our testing. For instance, AppImage needs the libfuse libraries, but they weren't installed - and as it's an immutable distro you can't readily do that.

Orchid offers the GNOME Software store to add programs, but this is aimed at Flatpaks, which means GUI apps, not command-line tools and system components. For instance, when searching for "fuse" you get a free ZX Spectrum emulator and a file-compare utility.

The apx-gui command for configuring repositories showed configured entries for alpine, arch, fedora, opensuse, ubuntu, vanilla-dev, and vanilla, but the column that should open a terminal in each container was empty. Due to the complex partitioning layout, which uses thin-provisioned LVM volumes, we couldn't work out how to invoke the Apx GUI from a shell, so we couldn't run it as root.

The project has a help and documentation site, but it's still rather patchy, and some sections seem not to have been updated from Vanilla OS 1 yet. For instance, we found it refused the command syntax in the handbook for installing packages. We tried to start the Android runtime, but the OS complained that this didn't work if Secure Boot was enabled - which it wasn't in our QEMU-based UTM virtual machine.

We used UTM because Vanilla OS only supports UEFI (still an experimental feature in Virtualbox), and it has quite high system requirements, like at least 50 GB of disk space. We also tried to install it on a testbed ThinkPad X220, but the installation failed to complete, complaining about being unable to format the var partition. It comes with the latest GNOME 46.1 and kernel 6.9.8, which means it's too new for any of The Reg FOSS desk's Nvidia-GPU test kit.

Vanilla OS looks great, thanks to GNOME's impeccable graphic design, and things like having disk encryption on by default, GPU switching, and support for packages from all the leading distros sound appealing. However, this is a very bleeding-edge experimental distro, and in practice, we found it felt unfinished and not fully working.

Vanilla OS is trying out quite major technical innovations, and even so, it's already functional, which is impressive. Rather than the minor UI tweaks that are most distros are doing, it is changing the way Linux boots, updates itself, handles applications, and more besides. In these areas, it's more radical than Fedora's "Atomic" immutable variants or even than the other consumer-targeted immutable distro we're watching, Endless OS.

It uses Btrfs for the OS volumes, which is safer in an immutable OS. Due to this and the complexity of its volume management, it's hard to estimate its disk usage, but it's in the region of 18 GB, and it used 1.1 GB of RAM. Although elaborate, its partitioning is simpler than that of ChromeOS Flex, and in principle it can dual-boot. The dual-partition failover concept is already working in the field in tens of millions of Chromebooks, of course.

Despite its version number, though, Vanilla OS 2 feels to us more like a prototype or alpha-test release. If you can dedicate a modern, well-specified machine to it and would like to explore some new technology, it has great promise, but it's not ready for prime time yet. ®

 

https://www.theregister.com//2024/07/31/vanilla_os_friendly_radical/

Discussions
Be the first to like this. Showing 0 of 0 comments

Post a Comment