Chimera Linux distribution, combining the Linux kernel with the FreeBSD environment

Daniel Kolesa from Igalia, who is involved in developing Void Linux, WebKit, and Enlightenment projects, is advancing a new distribution called Chimera Linux. The project uses the Linux kernel but builds its user environment based on the core of FreeBSD rather than GNU tools, and utilizes LLVM for assembly. This distribution is initially being developed as cross-platform and supports x86_64, ppc64le, aarch64, riscv64, and ppc64 architectures.

The project's goal is to provide a Linux distribution with an alternative toolset and to take into account the development experience of Void Linux in creating the new distribution. According to the project's author, the user components of FreeBSD are less complicated and better suited for lightweight and compact systems. The influence of the BSD permissive license has also played a role. The own developments of Chimera Linux are also distributed under the BSD license.

In addition to the FreeBSD user environment, the distribution also utilizes packages such as GNU Make, util-linux, udev, and pam. The initialization system is built on the portable system manager dinit, which is available for Linux and BSD systems. Instead of glibc, the standard C library musl is used.

For installing additional programs, both binary packages and a custom build system from source code — cports, written in Python — are offered. The build environment runs in a separate unprivileged container created using bubblewrap. The package manager APK (Alpine Package Keeper, apk-tools) from Alpine Linux is used for managing binary packages (initially, pkg from FreeBSD was planned to be used, but significant issues arose during its adaptation).

The project is still in the early stages of development — just a few days ago, we achieved user login capability in console mode. A bootstrap toolkit is provided to allow the reconstruction of the distribution from a custom environment or from any other Linux distribution. The build process consists of three stages: assembling components to create a container with a build environment, the actual rebuild using the prepared container, and another rebuild based on the environment created in the second stage (this duplication is necessary to eliminate the influence of the original host system on the build process).

Source: opennet.ru

Buy reliable website hosting with DDoS protection, VPS VDS servers 🔥 Buy reliable website hosting with DDoS protection, VPS VDS servers | ProHoster