The release of the blendOS 4 distribution has been announced, utilizing container isolation to ensure cohabitation of packages from various Linux distributions within a single system. In addition to packages from the Arch Linux distribution, which is used in the base environment, and universal packages in the Flatpak format, there is the option to install packages from Fedora 39, Debian 13 (testing branch), CentOS Stream, and Ubuntu 22.04 (packages are installed in containers based on these distributions). Moreover, blendOS offers an environment for installing and running Android applications from the Google Play and F-Droid catalogs. There are desktop environments available, including GNOME, KDE, Xfce, MATE, Budgie, Cinnamon, and LXQt. The size of the installation image is 2.2 GB.

The base system environment remains unchanged during operation (immutable) and is updated in an atomic manner using interchangeable root partitions. The source for updates is newer ISO images, the contents of which are synchronized with the base environment using zsync (the average data download size during updates ranges from 10 to 100 MB). When a new ISO image is released, a second root filesystem is created based on it in the system, which becomes the working root filesystem upon the next reboot, while the old one remains for installing the next update.
The distribution installation uses a custom installer backend with an interface based on Jade-GUI from Crystal Linux. It supports the creation of scripts for replicating identical installations on different computers—the desktop settings, list of deployed containers, and the list of installed packages can be saved in a YAML file, which can then be imported on another system.
The new release is notable for the transition to declarative description of the contents, placed in a single file "\/system.yaml." Users can specify in this file the packages required for installation on top of the base system, desktop environments, Linux kernel versions, and drivers available in the Arch Linux repository. This maintains the atomic nature of the base system while all additional packages expand it.
Packages from Fedora, Debian, CentOS Stream, and Ubuntu repositories can be installed in separate containers activated through the system configurator or command line tools. Attempting to open packages in DEB, RPM, and APK formats also leads to the automatic creation of a container with the necessary distribution for that package. When installing the same applications in different containers, the decision about which version of the application will run is made based on the assigned priority.
Applications from containers are integrated with the main system using a tool similar to Distrobox (the first release of blendOS was a wrapper around Distrobox, but it was later replaced with its own version of the tool, which also uses the Podman platform for managing containers). The tool mounts the user's home directory into the containers and configures access to server X11 and Wayland for executing graphical applications from the container, organizes sound output, and integrates at the D-Bus and udev level.
Android support is implemented through the WayDroid package, allowing an isolated environment to be created in a standard Linux distribution for loading a complete system image of the Android platform. Running Android applications is only supported in graphical environments based on Wayland (GNOME and KDE Plasma).
Source: opennet.ru
