Was ist neu in GNU Linux-libre 6.18 im Detail?

  • GNU Linux-libre 6.18 entfernt proprietäre Treiber und Devicetree-Blobs und behält gleichzeitig die allgemeinen Verbesserungen von Linux 6.18 bei.
  • Neue Treiber (FourSemi, TI TAS2783, Qualcomm GENI) werden neutralisiert und Treiber wie Nova-Core und Intel Xe werden angepasst.
  • Das Projekt bietet Quellcode und DEB/RPM-Pakete zur Verwendung eines 100% freien Kernels auf verschiedenen Distributionen.
  • Linux-libre ist Teil des GNU-Projekts, wird von der FSF unterstützt und dient als Grundlage für völlig freie Distributionen.

GNU Linux-Libre 6.18

Wenn Sie jemand sind, der jedes Detail seines Systems sorgfältig überwacht und Wert darauf legt, dass die gesamte auf Ihrem Rechner laufende Software wirklich kostenlos ist, die Ankunft de GNU Linux-Libre 6.18 Das wird Sie sehr interessieren. Diese neue Version des bekannten „unlocked“ Kernels basiert auf Linux 6.18, wurde aber gründlich bereinigt, um jegliche Spuren proprietärer Firmware oder Mikrocode zu entfernen.

Im Folgenden werden wir dies aufschlüsseln. Alle neuen Funktionen von GNU Linux-libre 6.18Wir werden die Änderungen gegenüber dem offiziellen Kernel, die betroffenen Treiber, die Verbreitung, die beteiligten Projekte und die Philosophie hinter dieser Entwicklung erläutern. Außerdem gehen wir auf die Rolle des Entwicklers Freedo, die Beziehung zur FSF und die Gründe ein, warum dieser Kernel zum Maßstab für 100% freie Distributionen geworden ist.

Wichtigste Neuerungen von GNU Linux-libre 6.18 im Vergleich zu Linux 6.18

Die neue Version GNU Linux-libre 6.18-gnu Kernel-Teil Linux 6.18Dies ist derselbe Zweig, den Linus Torvalds soeben als stabil erklärt hat und der aller Voraussicht nach der nächste Referenz-LTS-Kernel im Linux-Ökosystem sein wird. Das bedeutet, er übernimmt alle allgemeinen Verbesserungen: optimierte Leistung, neue interne Funktionen, erweiterte Hardwareunterstützung und die üblichen Fehlerbehebungen.

Das GNU/Linux-libre-Team ist jedoch für die Implementierung einer Reihe von Skripte und Bereinigungswerkzeuge („Deblobbing“) die den Quellcode nach problematischen Elementen durchsuchen: Treiber, die binäre Firmware laden, Laufzeitaufrufe von nicht-freiem Mikrocode, Verweise in der Dokumentation auf externe Blobs und sogar Erwähnungen von Binärdateien in Devicetree-Dateien verschiedener Architekturen.

Als Ergebnis dieses Prozesses wurden in GNU Linux-libre 6.18 die folgenden Elemente identifiziert und neutralisiert oder entfernt. neue Controller und Code-Snippets Diese Änderungen betreffen nicht nur neu hinzugefügte Treiber, sondern auch bestehende, deren Firmware-Lademechanismus sich in dieser Version geändert hat.

Gleichzeitig enthält Version 6.18-gnu die Linux 6.18 OptimierungenZu diesen Verbesserungen zählen unter anderem eine höhere Gesamtleistung, die fortlaufende Entwicklung von Apple Silicon (M2 Pro/Max/Ultra), die fortgesetzte Unterstützung der Intel Wildcat Lake-Plattform, die Integration des neuen „Sheaves“-Codes, die standardmäßige Aktivierung von fsck online für XFS sowie eine verbesserte haptische Unterstützung für Touchpads. All dies geschieht selbstverständlich unter Beibehaltung des Kernprinzips des Projekts: keine proprietäre Software.

Das Herzstück des Projekts: ein blobfreier Kernel

Der Grund für die Existenz von GNU Linux-libre ist das Angebot ein Linux-kompatibler, aber völlig freier KernelEntwickelt für die Integration in Systeme, die den Richtlinien für die Verbreitung freier Software (FSDG) der FSF folgen. Dies beinhaltet das Entfernen aller Komponenten, die nicht als veränderbarer Quellcode verbreitet werden oder restriktiven Lizenzen unterliegen.

In der Praxis bedeutet dies das Entfernen oder Deaktivieren von Treiber, Firmware, als Daten verpackte Blobs, Skripte, die externe Binärdateien benötigen und Laufzeitaufrufe an proprietäre Firmware. Kommentare und Dokumentationen, die als „Anlockmittel“ zum Herunterladen nicht-freier Komponenten dienen, werden ebenfalls entfernt, um ein „Köderieren“ mit proprietärer Software zu verhindern.

Der Schwerpunkt des Projekts liegt auf minimale ÄnderungenProblematische Teile werden entfernt oder neutralisiert, jedoch wird nicht versucht, sie neu zu schreiben oder kostenlose Alternativen mit derselben Funktionalität bereitzustellen. Ziel ist es, die Freiheit des Systems zu gewährleisten, selbst wenn dies bedeutet, dass bestimmte Hardware nicht mehr funktioniert, falls keine kostenlosen Alternativen verfügbar sind.

Diese fortlaufende Initiative begann im Rahmen des gNewSense-Vertriebs, wurde von Jeff Moe initiiert und benannt, 2008 von FSF Lateinamerika übernommen und wird seit 2012 fortgeführt. Es ist offiziell Teil des GNU-ProjektsHeute bildet es die Grundlage für zahlreiche 100% freie Betriebssysteme, die von der FSF zertifiziert sind.

Neue Treiber in GNU Linux-libre 6.18 integriert

Einer der sichtbarsten Aspekte der Arbeit an GNU Linux-libre 6.18 ist die Bereinigung von Treiber, die neu in den Linux-Kernel 6.18 integriert wurden Diese versuchen, Firmware-Blobs zu laden. Würden sie unverändert gelassen, würden sie die Systemintegrität beeinträchtigen, da sie unfreie Binärdateien benötigen würden.

In dieser Version ist das Team hat mehrere neue Fahrer identifiziert und deren Anzahl begrenzt. welche im offiziellen Baum auf proprietäre Firmware angewiesen sind, um korrekt zu funktionieren:

  • FourSemi-ControllerDer FourSemi-Digital-Audioverstärkertreiber und die zugehörige Bibliothek (einschließlich der Modelle FS2104/5S) wurden bereinigt, da sie im Standard-Linux versuchen, Blobs zu laden, um bestimmte Modi und Funktionen zu verwalten.
  • Treiber TI TAS2783Der Treiber für den Lautsprecherverstärker Texas Instruments TAS2783, der ebenfalls neu in diesem Zweig ist, enthält eine Firmware-Ladelogik, die deaktiviert wurde, um zu verhindern, dass sie nicht-freie Binärdateien anfordert.
  • Qualcomm GENI Serial EngineQualcomms GENI-Series-Engine, die für die Verwaltung der Kommunikationsschnittstellen auf Plattformen dieser Marke zuständig ist, hätte ohne Eingriff ebenfalls versucht, Blobs zu laden, weshalb sie dem Deblobbing-Prozess unterzogen wurde.

In all diesen Fällen ist das Ergebnis, dass Der Treiber beansprucht keine proprietäre Firmware mehr.Je nachdem, wie stark der Treiber von diesem Mikrocode abhängt, kann die praktische Funktionalität des Geräts unter GNU Linux-libre sehr eingeschränkt oder sogar unbrauchbar sein. Dies entspricht jedoch dem Grundsatz, den Benutzer nicht zu proprietären Komponenten zu drängen.

Anpassungen an bestehenden Treibern: Nova-Core, Intel Xe und mehr

Zusätzlich zu den neu hinzugefügten Treibern ändert GNU Linux-libre 6.18 das Verhalten von Treiber, die bereits in früheren Versionen vorhanden waren Der Firmware-Verwaltungsmechanismus hat sich in Linux 6.18 geändert. Diese Anpassungen sind notwendig, um den Kernel bei der Weiterentwicklung des Hauptzweigs frei von Blobs zu halten.

Zu den bemerkenswerten Fällenfanden wir:

  • Nova-Core, der Rust-Treiber für NVIDIADer neue Open-Source-Treiber Nova-Core, geschrieben in Rust, ist vollständig auf den NVIDIA GPU System Processor (GSP) angewiesen. Ohne die proprietäre GSP-Firmware ist der Treiber nicht funktionsfähig. GNU/Linux-libre passt seine Skripte an, um das Laden dieses Mikrocodes zu blockieren und Nova-Core somit unbrauchbar zu machen. ohne Klumpen funktionsfähigAber es erhält die Freiheit des Systems.
  • Intel Xe der nächsten GenerationDer moderne Intel Xe-Treiber nutzt den GuC-Mikrocontroller und dessen Binärfirmware für Warteschlangenmanagement, Scheduling und andere wichtige Funktionen. Linux-libre 6.18 verschärft den Bereinigungsprozess erneut, um zu verhindern, dass diese Firmware angefordert oder geladen wird. Dadurch ist der Treiber ohne freie Alternativen praktisch unbrauchbar.
  • TI PRU EthernetDer auf einer PRU (Programmable Real-time Unit) basierende Ethernet-Controller von Texas Instruments wurde ebenfalls hinsichtlich seiner Upstream-Blob-Logik geändert. GNU/Linux-libre aktualisiert das Deblobbing, um sicherzustellen, dass Auf diesen SoCs wird keine proprietäre Firmware geladen..
  • Marvell WiFi-ExDie am offiziellen Stammbaum für Marvells WiFi-Ex-Familie vorgenommenen Änderungen haben eine Überprüfung der Bereinigung erzwungen und blockieren erneut jeglichen Verweis auf oder den Versuch, binäre Firmware für diese drahtlosen Adapter hochzuladen.

Diese Anpassungen zeigen, dass der Reinigungsprozess kontinuierlich und reaktivJedes Mal, wenn sich der Code eines Treibers ändert, der zuvor auf Blobs angewiesen war, muss das Linux-libre-Team diesen Code erneut überprüfen, um sicherzustellen, dass kein neuer proprietärer Firmware-Lademechanismus "durchrutscht".

Fahrer und Elemente entfernt oder verlegt

Es geht nicht nur um neue Bereinigungen oder Optimierungen. In GNU/Linux-libre 6.18 gibt es auch Fälle, in denen der Linux-Kernel selbst bestimmte Komponenten entfernt hat, wodurch … den Deblobbing-Prozess vereinfachen.

Ein anschauliches Beispiel ist das von TI WL1273 FM-RadiotreiberDieser Treiber, der in früheren Versionen aufgrund seiner Abhängigkeit von binärer Firmware eine spezielle Bereinigung erforderte, wurde vollständig aus dem offiziellen Linux-6.18-Quellcode entfernt. Folglich kann in GNU Linux-libre 6.18 auch die gesamte zugehörige Deblobbing-Logik entfernt werden, wodurch die Komplexität der Skripte reduziert wird.

Ein weiterer bemerkenswerter Fall ist der von Lantiq GSWIP-Treiber, ein Gigabit-Switch-Treiber für bestimmte Plattformen. In Linux 6.18 wurde sein Speicherort im Quellcodebaum verschoben, was Anpassungen der Pfade und Muster erforderte, die vom Bereinigungssystem des Projekts verwendet werden, um die relevanten Fragmente zu finden und zu verarbeiten.

Diese Standortveränderungen und Entfernungsmaßnahmen spiegeln wider, wie Der Hauptkernel wird ständig reorganisiert.und wie GNU Linux-libre auf dem neuesten Stand bleiben sollte, nicht nur durch das Verfolgen neuer Codeblöcke, sondern auch durch die Anpassung der Werkzeuge an die sich ändernde Struktur des Codebaums.

Bereinigter Devicetree für Qualcomm, Mediatek und TI auf ARM64

Die Bereinigung beschränkt sich nicht auf den C-Code der Treiber. In dieser Version war die Überprüfung eine der heikelsten Aufgaben. die neuen Devicetree (DT)-Dateien für ARM64-Plattformen, die die Hardware von Systemen beschreiben, die auf Qualcomm, Mediatek und Texas Instruments basieren.

In Linux 6.18 umfassen mehrere dieser Device Trees Folgendes: explizite Verweise auf Firmware-BlobsBinärdateipfade oder Eigenschaften, die auf den Bedarf an proprietärem Mikrocode für bestimmte Komponenten hinweisen. Werden diese nicht verändert, könnte die Verwendung dieser Datentypen den Benutzer dazu veranlassen, nach proprietären Komponenten zu suchen und diese zu laden.

GNU Linux-libre 6.18 kümmert sich um die Bereinigung dieser Dateien und entfernt oder ändert Verweise auf Binärdateien von Qualcomm, Mediatek und TI in der ARM64-Architektur. Dadurch wird sichergestellt, dass der freie Kernel nicht als Empfehlungsvektor fungieren von nicht-freier Software, wodurch die FSF-Richtlinien eingehalten werden.

Wie man GNU Linux-libre 6.18 erhält

Das Projekt bietet mehrere offizielle Kanäle für Laden Sie GNU Linux-libre 6.18-gnu herunter und verwenden Sie es., sowohl in Form von Quellcode als auch in Form von Binärpaketen, die zur Installation auf gängigen Distributionen bereit sind.

Einerseits die Quellcode Es kann über Git aus dem vom Projekt verwalteten Repository bezogen werden:

  • Git-Repository der Releases: git://linux-libre.fsfla.org/releases.git mit Tags unter scripts, sources y logs für Version v6.18-gnu.

Darüber hinaus wurden sie kurz nach der Ankündigung der Version zur Verfügung gestellt. vorkomprimierte Tarballs Von der offiziellen FSFLA-Website:

  • https://www.fsfla.org/selibre/linux-libre/download/releases/ (ubicación habitual de los tarballs de cada versión).

Wer den Kernel nicht von Hand kompilieren möchte, kann auf Folgendes zurückgreifen: vorbereitete Binärpakete durch zugehörige Projekte:

  • Freesh: bietet sofort einsatzbereite .deb-Pakete für Debian-basierte und abgeleitete Distributionen an, wobei der GNU Linux-libre-Kernel bereits kompiliert ist.
  • RPM-Freiheit: bietet .rpm-Pakete für Red Hat, Fedora und davon abgeleitete Systeme an, die diesen freien Kernel verwenden möchten.

Auf diese Weise können die Nutzer zwischen folgenden Optionen wählen: Kompilieren Sie Ihren eigenen Kernel entweder direkt aus dem Quellcode oder installieren Sie eines der vorgefertigten Pakete und integrieren Sie es in den Standardkernel Ihrer Distribution oder ersetzen Sie ihn.

Distributionen und Ökosystem rund um Linux-libre

GNU Linux-libre ist die Säule, auf der viele aufgebaut sind völlig kostenlose Distributionen Von der FSF unterstützte Distributionen wie Trisquel und PureOS verwenden diesen Kernel, um sicherzustellen, dass das gesamte System den strengsten Richtlinien für freie Software entspricht.

Viele von ihnen bieten vorgefertigte Bilder mit dem neueste Version von Linux-libre oder zumindest mit einem eng verwandten Zweig. In anderen Fällen ermöglichen sie die Auswahl dieses Kernels aus ihren Repositories oder über zusätzliche Repositories, sodass der Benutzer den generischen Kernel durch einen Blob-freien Kernel ersetzen kann, ohne die Distribution wechseln zu müssen.

Für Administratoren und Enthusiasten kann GNU Linux-libre 6.18 auch installiert werden auf nahezu jede herkömmliche DistributionKompilieren Sie es einfach oder installieren Sie die Freesh/RPM Freedom-Pakete und konfigurieren Sie den Bootmanager so, dass er diesen Kernel beim Systemstart auswählt. Dadurch entsteht eine Umgebung, die den Prinzipien freier Software deutlich besser entspricht, selbst in Distributionen, die standardmäßig unfreie Komponenten enthalten.

Was genau ist GNU Linux-libre (und was ist es nicht)?

Das Projekt selbst betont, dass GNU Linux-libre vor allem eines ist: eine modifizierte Version des Linux-KernelsDieser Kernel ist für die Verwendung auf GNU-Systemen konzipiert, die vollständig frei sein wollen. Ziel ist es, dass jede Distribution, die die FSDG der FSF einhalten möchte, diesen Kernel mit der Gewissheit verwenden kann, dass er keine Blobs oder Verweise enthält, die den Benutzer zur Installation proprietären Codes verleiten würden.

In ihrer Dokumentation wird erklärt, dass nicht-freie Komponenten entfernt werden, unabhängig davon, ob sie frei sind. als Quellcode getarnt (Tatsächlich handelt es sich aber um eingebettete Datenblöcke), als wären sie in separaten Dateien verteilt. Zusätzlich werden Laufzeitanfragen an proprietäre Firmware deaktiviert und Handbücher oder Kommentare, die auf nicht-freie Ressourcen verweisen, entfernt.

Das Projekt jedoch Es ist nicht vorgesehen, diese Komponenten neu zu schreiben. Sie bieten auch keine kostenlosen Alternativtreiber an, um die proprietären zu ersetzen. Der Ansatz ist minimalistisch: Nicht-freie Software wird entfernt, der Rest bleibt weitgehend unverändert, und andere Initiativen werden ermutigt, nach Möglichkeit freie Alternativen zu entwickeln. Tatsächlich sind viele Geräte, die noch auf Blob-Treiber angewiesen sind, auf Seiten wie LibrePlanet dokumentiert, mit dem Ziel, die Bemühungen zu koordinieren, sie eines Tages freizugeben.

Abschließend betonen die Entwickler, dass das Maskottchen zwar ein Pinguin ist, die Rolle des GNU-Projekts und der FSF Der Aufbau des Gesamtsystems ist viel komplexer, und der freie Kernel ist nur ein weiteres Puzzleteil im Ideal eines völlig freien Systems.

Durch die Kombination aller von Linux 6.18 übernommenen technischen Verbesserungen mit der umfassenden Bereinigung von Firmware, Treibern und Device Tree festigt GNU/Linux-libre 6.18 seine Position als leistungsstarke Option für alle, die keine Kompromisse bei der Softwarefreiheit eingehen wollen. Von den neuen, optimierten Treibern für digitales Audio und Qualcomm-Prozessoren über die Anpassungen der GPU-Treiber wie Nova-Core und Intel Xe bis hin zur Bereinigung der ARM64-Plattformen und der Verfügbarkeit von Paketen für verschiedene Distributionen beweist diese Version, dass es möglich ist, technologisch auf dem neuesten Stand zu bleiben, ohne das Prinzip des Verzichts auf unnötige Komponenten aufzugeben. keine proprietäre Binärdatei.