Eine Chimera-Linux-Distribution, die einen Linux-Kernel mit einer FreeBSD-Umgebung kombiniert

Daniel Kolesa von Igalia, der an der Entwicklung der Projekte Void Linux, WebKit und Enlightenment beteiligt ist, entwickelt die neue Chimera Linux-Distribution. Das Projekt verwendet den Linux-Kernel, bildet jedoch anstelle des GNU-Toolkits die Benutzerumgebung basierend auf dem Stuffing des FreeBSD-Basissystems und verwendet LLVM für die Assemblierung. Die Distribution ist zunächst plattformübergreifend entwickelt und unterstützt die Architekturen x86_64, ppc64le, aarch64, riscv64 und ppc64.

Ziel des Projekts ist der Wunsch, eine Linux-Distribution mit alternativen Tools auszustatten und die Erfahrungen aus der Entwicklung von Void Linux bei der Erstellung einer neuen Distribution zu berücksichtigen. Laut dem Autor des Projekts sind benutzerdefinierte FreeBSD-Komponenten weniger kompliziert und besser für leichte und kompakte Systeme geeignet. Auch die Bereitstellung unter einer freizügigen BSD-Lizenz hatte Auswirkungen. Auch Eigenentwicklungen von Chimera Linux werden unter der BSD-Lizenz vertrieben.

Zusätzlich zur FreeBSD-Benutzerumgebung verwendet die Distribution auch die Pakete GNU Make, util-linux, udev und pam. Das Init-System basiert auf dem tragbaren Systemmanager dinit, der für Linux- und BSD-Systeme verfügbar ist. Anstelle von glibc wird die Standard-C-Bibliothek musl verwendet.

Zur Installation zusätzlicher Programme werden sowohl Binärpakete als auch ein eigenes Build-System aus dem Quellcode – cports, geschrieben in Python – angeboten. Die Build-Umgebung wird in einem separaten, nicht privilegierten Container ausgeführt, der mit dem Bubblewrap-Toolkit erstellt wurde. Der Paketmanager APK (Alpine Package Keeper, apk-tools) von Alpine Linux wird zur Verwaltung von Binärpaketen verwendet (ursprünglich war geplant, pkg von FreeBSD zu verwenden, bei der Anpassung gab es jedoch große Probleme).

Das Projekt befindet sich noch im Anfangsstadium der Entwicklung – vor einigen Tagen war es möglich, das Laden mit der Möglichkeit zu versehen, sich im Konsolenmodus beim Benutzer anzumelden. Es wird ein Bootstrap-Toolkit bereitgestellt, mit dem Sie eine Distribution aus ihrer eigenen Umgebung oder aus einer Umgebung, die auf einer anderen Linux-Distribution basiert, neu erstellen können. Der Build-Prozess umfasst drei Phasen: Zusammenbau der Komponenten zu einem Container mit einer Build-Umgebung, eigener Neuaufbau unter Verwendung eines vorbereiteten Containers und ein weiterer eigener Neuaufbau auf Basis der in der zweiten Stufe erstellten Umgebung (eine Duplizierung ist erforderlich, um den Einfluss des Originals auszuschließen). Hostsystem im Build-Prozess).

Source: opennet.ru

Kommentar hinzufügen