Vanilla OS has released its first version. Vanilla OS is an immutable desktop Linux distribution that brings some interesting new technologies to the table, such as the Apx package manager.
By default, Apx provides a container based on your Linux distribution (Ubuntu 22.10 for Vanilla OS 22.10) and wraps all commands from the distribution’s package manager (apt for Ubuntu).
Nevertheless, you can install packages from other package distributions. For example, using the
--aurflag, a new container based on Arch Linux will be created. Here, apx will manage the packages from the AUR (Pacman and yay), tightly integrating them with the host system. Using the
--dnfflag with apx will create a new container based on Fedora Linux. Here, apx will manage packages from Fedora’s DNF repository, tightly integrating them with the host system.
Another tentpole technology is ABRoot, which brings atomicity to this distribution.
Atomicity is the ability to perform a specific operation in a way where if it fails, nothing will be changed and if it succeeds, the changes will be applied in their entirety.
ABRoot achieves this by transacting between 2 root file systems: A and B. Let’s make an example. Let’s say you want to install a new package. ABRoot will check which partition is the present root partition (i.e A), then it will mount an overlay on top of it and perform the transaction. If the transaction succeeds, the overlay will be merged with the future root partition (i.e B). On your next boot, the system will automatically switch to the new root partition (B). In case of failure, the overlay will be discarded and the system will boot normally, without any changes to either partition.
Vanilla OS looks incredibly interesting, and I’m definitely keeping an eye on it.
Just two questions :
1- how many different package managers on Linux ?
2- What is the “best” and most “universal” of them ?