FOSDEM 24: Alma Linux zeigt seine Paketquellen

Für Klone von Red Hat Enterprise Linux ist es erheblich aufwendiger geworden, eigene Pakete zu bauen. Alma Linux nutzt die FOSDEM zur Darlegung seiner Quellen.

In Pocket speichern vorlesen Druckansicht 8 Kommentare lesen
FOSDEM- mit ALma Linux-Logo

(Bild: FOSDEM / Collage von heise online)

Lesezeit: 5 Min.
Von
  • David Wolski
Inhaltsverzeichnis

Red Hat rückt zu seinen Flaggschiff-Distribution RHEL (Red Hat Enterprise Linux) die Quellcodepakete nicht mehr zur völlig freien Verwendung heraus. Nachdem IBM und dessen Tochterunternehmen Red Hat bekannt gaben, Cent OS Ende 2021 nicht mehr als binär-kompatible Variante von Red Hat Enterprise Linux (RHEL) weiterzupflegen, folgte der nächste Schritt: Die Pakete von RHEL lagen seitdem nicht mehr für alle zugänglich auf https://git.centos.org im Quellcode vor. Dieses Repository enthält stattdessen nur die Quellen von Cent OS Stream, aus dem sich dann auch Red Hat Enterprise Linux ableitet.

Oracle Linux, Rocky Linux und Alma Linux sind drei der prominenteren Red-Hat-Nachbauten, die sich weiter als weitgehend binärkompatible Alternative präsentieren. Entgegen erster Befürchtungen sind Red-Hat-Nachbauten bisher nicht verschwunden und wurden auch nicht mit juristischen Klagen überzogen. Doch woher haben diese Distributionen den Quellcode der Pakete? Nicht alle Klone haben vollständig transparent dargelegt, woher die Quellcodepakete nun stammen.

Für Linux-Systeme, die eine Zielgruppe im Enterprise-Umfeld anvisieren, kämen obskure, veraltete oder unzuverlässige Paketquellen nicht infrage. Das Vertrauen seitens der Anwenderschaft wäre schnell dahin. Die Macher von Alma Linux, das vom Gründerunternehmen CloudLinux Inc vorsichtshalber schon in eine Stiftung ausgelagert ist, zeigten auf der FOSDEM24 ihren Entwicklungsprozess im Detail.

Eine Kritik am Vorgehen Red Hats war dabei nur leise zu vernehmen – schließlich sind die Originalpakete von RHEL weiterhin im Quellcode dessen Abonnenten zugänglich. Laut dem Wortlaut der GNU General Public License muss der Zugang zu Quellen nicht uneingeschränkt öffentlich sein. Es genügt, wenn so wie jetzt nur noch Kunden, Co-Entwickler und Partner den vollständigen RHEL-Quellcode zur eigenen Verwendung abrufen und nutzen können. Nachbauten hat Red Hat aber durch weitere Geschäftsbedingungen des Abo-Modells einen Riegel vorgeschoben.

Das ist eine Einschränkung des Open-Source-Gedankens, den IBM / Red Hat damit erklärt, dass es nicht wirtschaftlich ist, ein Linux-System wie RHEL einfach an alle im Quellcode zu verschenken. Aber ein Recht auf Geschenke gibt es laut der GNU General Public License nicht, unter der ein Großteil der Pakete steht. Nur auf die Quellen und die uneingeschränkte Nutzung der Programme gibt es ein Anrecht laut dieser Lizenz.

Weiterhin frei verfügbar sind die Quellen zu den Red Hat Universal Base Images für Container-Instanzen. Diese enthalten das Grundsystem und Interpreter wie Python, Perl, NodeJS und PHP, mit einem Unterstützungszeitraum von 10 Jahren und nahezu täglichen Updates. Diese Images liefern aber nicht alles, sondern bilden RHEL 8.x zu 40 Prozent ab und RHEL 9.x noch zu 38 Prozent. Der Rest stammt bei Alma Linux aus einem Mix an weiteren Quellen: CentOS Stream liefert upstream zu RHEL alle Pakete und Alma Linux übernimmt diese Quellen, wenn die jeweiligen Versionsnummern mit den Paketen in RHEL übereinstimmen.

Alma Linux besteht heute weitgehend aus den Quellen der Red Hat Universal Base Images (UBI) und manuell ausgewählten Paketen von CentOS Stream, das als Vorstufe von RHEL gilt.

(Bild: FOSDEM)

Aber auch das genügt noch nicht zum Bau einer kompletten Distribution. Deshalb zieht Alma Linux nun doch auch Quellcodepakete anderer RHEL-Klone hinzu. Der Entwickler Andrew Lukoshko von Alma Linux verweist hier konkret auf das Paket des Proxy-Servers Squid, welches aktuell von Oracle Linux stammt und seitens dessen Entwicklern Fixes für Sicherheitslücken erhält.

Damit ein Paket dennoch so nah wie möglich am Original ist, vergleicht Alma Linux die rechtlich einwandfrei gesammelten Quellcode-Pakete über das Tool Pkgdiff mit jenen von Red Hat. Dann ist vereinzelt eine manuelle Ergänzung nötig, die den Gesamtprozess heute deutlich aufwendiger machen. Die Quellcode-Pakete kommen das in das Build-System build.almalinux.org, in welchem auch die Sicherheits-Bulletins für Updates gepflegt werden. Dabei helfen wieder die Errata von Red Hat, die weiterhin unter einer Creative-Commons-Lizenz stehen (CC BY 4.0 Deed). Über die fertig gebauten Pakete läuft schließlich noch ein Vergleich mittels Pkg-ABIdiff zu jeweiligen RHEL-Paketen, um die Binärkompatibilität von API und ABI zu überprüfen. Die Images von Alma Linux erzeugen dann wie bei Red Hat, CentOS und Fedora die Skripte von Pungi, allerdings mit weiteren Patches speziell für Alma Linux, die etwa urheberrechtlich geschützte Grafiken gegen eigene austauschen.

Deutlich macht der Talk, dass einige der dargelegten Entscheidungen ganz pragmatischer Natur sind, um Alma Linux am Leben zu halten. Gerade die Einbindung von Paketen anderer RHEL-Klone ist ein Notnagel. Nachdem nicht auszuschließen ist, dass sich die Klone untereinander an deren Quellen bedienen, ist ein Akkumilieren von Abweichungen zu RHEL nur eine Frage der Zeit. Alma Linux wird sich über die nächsten Jahre beweisen müssen, so wie die anderen Klone auch.

(dmk)