Was sind die Unterschiede zwischen Debian Linux Kernel und Linux-libre?

10

Was sind die Unterschiede zwischen Debian Linux Kernel und Linux-libre in Bezug auf Freiheitsfragen?

Ich weiß, dass der Debian Linux Kernel nicht freie Module laden kann, während sie in Linux-libre auf die schwarze Liste gesetzt wurden.

Salman
quelle

Antworten:

10

Sie haben so ziemlich den einzigen Unterschied festgestellt: Der Debian-Kernel kann Firmware laden, der Linux-libre-Kernel nicht. Beide Kernel sind freie Software, auch für die Free Software Foundation. Die FSF betrachtet die Debian GNU / Linux-Distribution als freie Software , solange keine Repositorys über das Haupt-Repository hinaus verwendet werden. Das Problem mit Debian ist, dass Debian nicht freie Repositorys auf derselben Infrastruktur hostet.

Philosophisch gesehen könnte man den Unterschied wie folgt betrachten:

  • Der Debian-Kernel enthält keine nicht freie Firmware (abgesehen von Fehlern), ermöglicht es Benutzern jedoch, nicht freie Firmware zu laden, wenn sie dies wünschen.
  • Der Linux-libre-Kernel enthält keine unfreie Firmware oder etwas, das wie Firmware aussieht, und verhindert, dass Benutzer unfreie Firmware laden, selbst wenn sie dies wünschen.

Linux-libre wird durch Ausführen eines deblobSkripts im Kernel-Quellcode erstellt. Dies geht durch den Kernel-Quellcode und nimmt verschiedene Firmware-bezogene Änderungen vor:

  • Jede Firmware, für die Quellcode verfügbar ist, bleibt erhalten, das Skript stellt jedoch sicher, dass der Quellcode verfügbar ist.
  • Jedes Modul, das Firmware benötigt, kann die Firmware nicht mehr laden.
  • Jeder Quellcode, der wie Firmware aussieht (Zahlenfolgen), wird entfernt.
  • Jede Datei, die nur Firmware enthält ( z. B. den Inhalt von firmware/radeon), wird entfernt.

In Linux-libre wird zusätzliche Arbeit geleistet, um in bestimmten Fällen die Funktionalität wiederherzustellen. Beispielsweise wird das radeonModul so geändert, dass einige r600unterstützte Karten auch ohne Firmware verwendet werden können. (Suchen Sie im deblobSkript nach "So etwas könnte auch bei anderen Radeon-Karten funktionieren." )

Die Debian-Distribution enthält ein Firmware-Paket firmware-linux-free. Diese enthält nur Firmware, für die Quellcode verfügbar ist. Die nicht freien Repositorys enthalten auch eine Reihe von Firmware-Paketen, aus firmware-nonfreedenen diese erstellt wurden, die jedoch nicht Teil der Hauptdistribution sind.

Stephen Kitt
quelle
Der Begriff "De-Blobbing" bezieht sich hier auf einen anderen De-Blobbed-Kernel, der dem libre-freien Kernel ähnlich ist. Wenn Sie es so erwähnen, dass Sie nach diesem Schlüsselwort suchen, erhalten Sie die obige Beschreibung.
Scott R
4

Das ist so ziemlich der Haupt-, Haupt- und einzige Unterschied: linux-libreWird der Linux-Kernel mit den "Firmware-Binär-Blobs" entfernt?

Was die FSF als Firmware-Blobs bezeichnet, sind die Teile des Linux-Kernels, die mit der Philosophie der freien Software nicht kompatibel sind. Oft befinden sich diese Firmware-Teile in binären Blobs, die nicht einmal mit Quellcode geliefert werden (ich meine, nicht einmal Makro-Assemblierung). Das Linux Libre-Projekt wird von der FSF auf gnu.org gehostet, ist jedoch keine Linux-Distribution. Das Projekt ist nur ein Versuch, den Quellcode des Kernels zu bereinigen, und wird als Quellcode verteilt

Das linux-libre kernelwird dann von 100% kostenlosen Software-Linux-Distributionen kompiliert und ausgeliefert: BLAG, Dragora, Trisquel, um nur einige zu nennen. Diese Distributionen verpflichten sich philosophisch, nur freie Software im Sinne der FSF zu vertreiben.


Debian hingegen ist nicht verpflichtet, nur freie Software im Sinne der FSF zu vertreiben. Debians Verpflichtung gilt dem Debian-Gesellschaftsvertrag , der ironischerweise bei seiner ersten Verpflichtung Folgendes hat:

  1. Debian bleibt 100% freie Software

Ich scherze mit der Ironie dort. Debians philosophisches Engagement ist das gleiche wie das der FSF. Der Unterschied besteht darin, wie Debian freie Software definiert und wie die FSF freie Software definiert . Der Unterschied zwischen den beiden Gruppen wuchs im Laufe der Zeit. Welche Definition besser ist, ist ein zu schweres Argument. FSF verpflichtet sich zu eigenen Richtlinien, während sich Debian zu den Richtlinien verpflichtet, die in demselben oben verlinkten Dokument aufgeführt sind .

Gemäß den Debian-Richtlinien wird weniger Linux-Kernel-Code als nicht freie Software betrachtet. Firmware-Blobs sind keine freie Software und werden entfernt, sondern als separate Anstrengung. Der vom Debian-Projekt verteilte Kernel ist etwas dicker (mangels eines besseren Wortes).

Beachten Sie, dass Debian hat linux-firmware-freeund linux-firmware-nonfreees Benutzern ermöglicht, mehrere Firmware-Teile (einige davon Blobs) mit einzuschließen apt-get. Distros, linux-libredie verwenden, haben solche Einrichtungen nicht.


Natürlich gibt es den Hauptunterschied, dass die debian projectDistribution eine komplette Distribution verteilt, während der linux-libre projectDistributionscode von Distributionen verwendet wird.

gro♀
quelle
@ StephenKitt - Danke, ich habe die Antwort aktualisiert. Ich versuche so neutral wie möglich zu sein, und ich versuche auch, keine Debatte zu beginnen. Eine weitere Sache, ich habe Links zu packages.debain.org hinzugefügt, tracker.debian.org findet die linux-firmware-...Pakete aus irgendeinem Grund nicht (zumindest für mich).
Gro♀
Es ist jetzt weniger verbreitet, aber bis vor ein paar Jahren konnten Sie Dell-Server ohne die nicht freien Blobs nicht sofort ausführen, da sie Broadcomm-Netzwerkkarten verwendeten, für die der tg3Treiber erforderlich ist, der ein wenig nicht freie Firmware verwendet. "Es kann Linux laufen, aber wir müssen eine separate Netzwerkkarte kaufen" ist kein Argument, das Sie Ihrem Chef
vorbringen