Ohne Kernel startet gar nichts, ohne AVM fehlen die Treiber für vieles - untrennbar.
Das macht es ja noch unausgegorener ... wen interessiert es denn (bei der Betrachtung der Lizenzfragen), ob da ohne AVM-Software irgendwelche Treiber fehlen?
Wenn die Firmware erfolgreich entpackt wurde und damit nicht mehr als Ganzes von AVM bereitgestellt/vertrieben wird, dann greift die "as a whole"-Klausel der GPL nicht mehr. Punkt.
Packt man das hinterher wieder zusammen, muß man sich - und zwar schon dabei - überlegen, was man mit dem resultierenden neuen Image machen will. Will man es selbst nutzen, erlaubt einem der bereits erwähnte §69d UrhG auch weiterhin die "bestimmungsgemäße Benutzung" der AVM-Komponenten - das wurde vom LG Berlin auch so beurteilt:
AVM-These (Ziffer 1f):
Das Laden der Dateien „ar7cfgctl" und „allcfgconv" in den Arbeitsspeicher der Fritzbox durch Surfsitter stelle eine unzulässige Vervielfältigung im Sinne von § 69c Nr. 1 UrhG dar. Diese sei nicht notwendig im Sinne von § 69d Abs. 1 UrhG, da die Programme in der Regel nicht in den Arbeitsspeicher gelangten, sondern nur, wenn ein Start der Fritzbox oder ein Start von WLAN aus, erfolge.
Erwiderung von Cybits:
Die Vervielfältigung der Programme „ar7cfgcti" und „allcfgoncv" durch das Laden vom Speichermedium in den Arbeitsspeicher sei notwendig, um die beiden Programme zu benutzen und daher sei als bestimmungsgemäße Benutzung zulässig. Gemäß § 69d i.V.m. § 69c UrhG bedürfe es für den bestimmungsgemäßen Gebrauch der Software keiner Zustimmung der Klägerin.
Ausführungen im Urteil:
Schließlich hat die Klägerin keinen Anspruch gemäß §§ 97 Abs. 1, 69c Nr. 1 UrhG, es zu unterlassen, Kunden der Beklagten mittels der Software „Surf-Sitter DSL" dazu zu veranlassen, bei Installation der Software „Surf-Sitter DSL" Dateien der Firmware, insbesondere die Dateien „ar7cfgctl" und/oder „allcfgconv" von dem Speichermedium in den Arbeitsspeicher der FRITZIBox zu laden und dadurch zu vervielfältigen (Antrag zu 1f)).
(Die Fehler stammen aus dem Scan und der OCR-Software, ich habe nur Text aus der PDF-Datei, die man bei
ifross.org finden kann, kopiert - da gibt's auch noch jede Menge anderer Urteile zur GPL bzw. zu FOSS-Themen.)
Die genauen Ausführungen zur Software als Sammelwerk und den Bestimmungen der GPL dazu, kann sich jeder selbst im Urteil ansehen ... entscheidend ist hier das Fazit:
Danach stehen der Klägerin an der Firmware als Ganzes - und so sind ihre Anträge zu verstehen - keine urheberrechtlichen Unterlassungsansprüche zu.
Das Urteil lautete also nicht, daß AVM jetzt jedes eigene Programm, was sich in der von AVM vertriebenen Firmware befindet, automatisch auch in vollem Umfang unter GPL stellen muß - das sagt auch die GPL nicht aus. Löst man aber Teile, für die AVM die Urheberrechte hält, aus diesem "Ganzen" heraus und packt es sich danach zu einer veränderten Form zusammen (nichts anders machen Freetz und "modfs"), handelt es sich eben nicht mehr um das von AVM vertriebene Paket (sondern um eine Umarbeitung) und daher darf man dort auch nur Programm aufnehmen, für deren Verbreitung (nicht Nutzung!) man selbst die entsprechenden Rechte hat - entweder durch eigene Urheberschaft oder durch von anderen Urhebern eingeräumte Rechte.
Hier greift nämlich jetzt tatsächlich das, was von vielen gerne (falsch verstanden) als Argument verwendet wird ... selbstverständlich wird eine illegale Kopie einer Software auf einer von mir zusammengestellten CD mit weiteren Programmen nicht dadurch plötzlich "hoffähig", daß ich dieser Zusammenstellung noch eine oder zwei Dateien hinzufüge, für die ich selbst die Urheberrechte habe. Hier mangelt es bereits am Recht, die fremde Software (ohne passende Lizenz) dieser Sammlung hinzuzufügen - das kann man nicht dadurch "heilen", daß da noch weitere Software unter anderen Lizenzen enthalten ist.
AVM hat aber das Recht, die eigene Software mit GPL-Software zu verbandeln und das Ergebnis dann auch zu veröffentlichen ... und zwar zu AVM-eigenen Bedingungen. Nur werden diese - sofern sie die Vervielfältigung und die Weitergabe untersagen - von den GPL-Bedingungen "geschlagen" und deren Anerkennung ist auch für AVM die Voraussetzung, damit man dort die GPL-Software überhaupt verwenden darf (u.a. Punkt 4 der GPLv2).
Die GPL hält aber sogar extra noch fest: "In addition, mere aggregation of another work not based on the Program with the Program (or with a work based on the Program) on a volume of a storage or distribution medium does not bring the other work under the scope of this License." - das Zusammenpacken der Firmware durch AVM und der Vertrieb als eine Einheit (die vom durchschnittlichen Benutzer auch gar nicht zerlegt werden kann) spricht also auch nicht dagegen, daß für die AVM-Programme in der Firmware weiterhin die Lizenzbestimmungen von AVM entscheidend sind und die untersagen nun mal die Ausübung aller nicht explizit eingeräumten Rechte (
https://ftp.avm.de/fritzbox/license.txt) - mit der Ausnahme: "Falls und soweit Open Source Software überlassen wird, gelten zusätzlich und vorrangig vor den vorliegenden Bestimmungen die Nutzungsbedingungen, denen die Open Source Software unterliegt.". Das steht also nicht "anstelle der AVM-Lizenzbedingungen", sondern "
zusätzlich" und "
vorrangig" ... wo die AVM-Bedingungen nicht von GPL-Bedingungen überstimmt werden, gelten also weiterhin die AVM-Bedingungen.
Die werden dann - für die eigene Benutzung - eben nur wieder von §69d UrhG eingehegt - hat der Hersteller mir eine Lizenz zur Benutzung seiner Software eingeräumt (d.h., ich muß ein
legaler Lizenznehmer sein), brauchen weitere Handlungen, die für die bestimmungsgemäße Nutzung erforderlich sind, keine gesonderte Zustimmung mehr. Und für die Ausführung der AVM-Programme ist es tatsächlich erforderlich, daß ich sie auf die FRITZ!Box bringe - dafür muß/kann ich sie auch wieder mit meinen eigenen Änderungen zusammenführen und das resultierende Image dann auf
meiner FRITZ!Box auch verwenden. Das (nicht ausschließliche) Nutzungsrecht ist aber auch schon alles, was AVM einem da einräumt für die eigene Software - der ganze Kram mit der Sicherungskopie ist ohnehin im UrhG gesondert geregelt (ebenfalls in §69d - da steht zumindest, daß dieses Recht nicht ausgeschlossen werden darf) und daß es sogar gesetzlich geregelte Fälle gibt, in denen auch eine genauere Untersuchung zulässig ist (§69e UrhG), hat auch Eingang in die AVM-Lizenz gefunden.
Alles das beinhaltet aber eben nicht das Recht zur
Vervielfältigung und Verbreitung von AVM-Software (§69c UrhG), solange das für die (eigene) bestimmungsgemäße Benutzung nicht erforderlich ist - und das Zusammenstellen einer eigenen "Software-Sammlung" (denn die Firmware stellt eine solche dar, siehe wieder das Urteil des LG Berlin) für die Weitergabe an Dritte, ist ganz gewiß nichts mehr, was man mit einer "bestimmungsgemäßen Benutzung des Computerprogramms" bemänteln könnte ... und ebensowenig mit der (in dem Satz im UrhG ja auch noch enthaltenen) "Fehlerberichtigung".
Ganz streng genommen dürfte man auch die AVM-Dateien in Skript-Form (weder Lua noch Shell) nicht verändern und dann selbst benutzen, solange das nicht zum Zwecke der "Fehlerberichtigung" oder zum Einbinden eigener Komponenten erfolgt ... bei eigenem Interesse bzw. bei direkter Beauftragung durch einen zur Nutzung Berechtigten könnte man vielleicht eben diese Fehlerberichtigung noch unterstellen, weil man es als Fehler der Firmware ansieht, daß eine Funktion anders arbeitet, als man es erwartet oder wünscht.
Ein Beispiel wäre hier das (für mich jedenfalls), was mein "
swapoff"-Patch beim Entladen von USB-Devices macht - er fügt das von AVM (fälschlicherweise) nicht berücksichtigte Entladen von Swap-Partitionen/-Files hinzu, dessen Fehlen ansonsten im weiteren Verlauf im FRITZ!OS zu Problemen führt, wenn das OS Teile auf die Swap-Partition (die wird als Partition auch von AVM-Firmware eingebunden wird - das ist also nichts, was man erst selbst hinzufügen müßte) ausgelagert hatte und diese dann nicht mehr verfügbar sind nach dem Entfernen des Geräts.
Aber dieses "Umarbeiten" der Firmware durch andere Programme, damit sie besser auf die Bedürfnisse des Benutzers paßt, ist ja auch wieder Gegenstand der AVM-Klage gewesen und das LG Berlin hat - sogar bei einem geschäftlichen Anbieter einer Software für dieses "Umarbeiten" - explizit geurteilt, daß eine solche Umarbeitung an sich nicht zu untersagen wäre und damit auch das Anbieten einer entsprechenden Software dafür (das ist aber eben keine bereits umgearbeitete Firmware) nicht zu beanstanden wäre:
Weiterhin'hat die Klägerin gegen die Beklagte keinen Anspruch gemäß §§ 97 Abs. 1, 69c Nr. 2 UrhG, es zu unterlassen, ihre Firmware für DSL-Router dergestalt umzuarbeiten, dass Dateien der Firmware, insbesondere die Dateien „usermand", „dsld", „userman" und/oder „kdsldmod" aus dem ausführbaren Speicher entfernt werden (Antrag zu 1b)) bzw. dass Komponenten und/oder Dateien, insbesondere für ein DSL-Interface, für einen Internetzugang, für eine Kindersicherung, für eine Firewall und/oder für eine Surf-Sitter Benutzeroberfläche, hinzugefügt werden (Antrag zu 1c)).
Die Aufzählung der hinzugefügten Komponenten bezieht sich hier zwar direkt auf das, was da durch "Surf-Sitter" eingebaut wurde, aber das ist nun mal dem konkreten Fall geschuldet und es gibt keinen offensichtlichen Grund, warum das - bei anderen Modifikationen als denen von Cybits - jetzt anders sein sollte, solange diese Änderungen das AVM-Werk nicht "entstellen" und damit eine (im Einzelfall zu beurteilende) Grenze überschreiten.
In Freetz(-NG) wird zwar üblicherweise ein eigenes GUI eingesetzt (die Änderung, damit man auch vom AVM-Menü dorthin verlinkt, ist aber auch eine an den AVM-Dateien), was in "modfs" ja absichtlich (bei den bisher der Öffentlichkeit zugänglichen "modscripts") nicht der Fall ist - da ist das erklärte Ziel ja, die AVM-Firmware durch (eher kleine - quasi minimal invasive) Änderungen zu korrigieren bzw. für den Benutzer zu verbessern. Wer einen Patch nicht will, läßt ihn einfach weg - es gibt nicht eine Änderung (außer das Hinzufügen des "marker file"), die nicht vom Benutzer explizit in Auftrag gegeben wurde. Aber auch in Freetz gibt es eben Änderungen an anderen AVM-Dateien (i.d.R. Shell-Skripte, bei "remove patches" auch gerne mal an Lua-Files), wobei manche dieser Änderungen auch "generell" erfolgen und gar nicht gezielt vom Benutzer ausgewählt oder autorisiert werden müssen.
==========================================================================
Wie man es auch dreht und wendet ... wer eine modifizierte Version eines FRITZ!OS an andere weitergibt (das meint in erster Linie das in einem "Image" enthaltene SquashFS-Dateisystem, in dem die Programme des Root-FS zu finden sind und die bestehen aus GPL-Komponenten
und aus AVM-Komponenten, die auch erst der "Modifizierer" zu diesem SquashFS-Image zusammengepackt hat), der nimmt eine per Gesetz zustimmungspflichtige Handlung vor (§69c Nr. 3 UrhG) und braucht damit entweder die Genehmigung des Rechteinhabers (das sind viele bei den GPL-Teilen, da hat man aber auch automatisch die Lizenz und bei den AVM-Programmen ist es nur die AVM GmbH, die man dann ggf. um dieses Recht ersuchen müßte, denn die "normale Lizenz" räumt das eben nicht ein) oder einen der Ausnahmetatbestände in §69d-e UrhG. Da interessiert es nicht einmal, ob er selbst diese Modifikation ausgeführt hat oder ob es ein Dritter war, der auch schon keine Zustimmung von AVM hatte - da gibt es auch keine spätere "Heilung".
Ob da tatsächlich eine "schweigende Zustimmung" von AVM zur Vervielfältigung unterstellt werden kann (wie in #26), wage ich zu bezweifeln ... jedenfalls dann, wenn es um solche Boards wie die erwähnten geht, wo der Betreiber gar nicht zu fassen ist (und ja, mir ist durchaus bewußt, daß das für das IPPF auch gilt) und der Aufwand einer Verfolgung den tatsächlichen Nutzen wohl in keinem Falle rechtfertigen würde. Hier aus dem Verhalten von AVM die Schlußfolgerung zu ziehen, daß das damit auch automatisch erlaubt sei, ist ziemlich fahrlässig.
==========================================================================
Ich bin tatsächlich noch am Überlegen, ob ich ein paar Patches für die SquashFS-Tools, die es ermöglichen, ein solches (SquashFS-)Image mit zusätzlichen Dateien zu versehen, auch ohne die anderen zuvor entpacken zu müssen, überhaupt veröffentlichen sollte - die würden dann nämlich genau dieses Argument, daß man zuvor entpacken muß, bevor man es mit eigenen Änderungen neu packen läßt, kaputt machen.
Grundzüge des "append mode" gibt es ja schon in den originalen Quellen für die "squashfs-tools" (
https://github.com/plougher/squashfs-tools) - nur ist ein "merge" (also das Ersetzen einzelner Dateien dabei) bisher nicht vorgesehen und es gibt nur ein paar Tools, die das (durch "repacking", wie es "modfs" letztlich auch macht) simulieren (z.B. das hier:
https://github.com/fhunleth/merge-squashfs/blob/master/merge-squashfs). Der originale "append mode" fügt lediglich ein weiteres Verzeichnis (oder mehrere) dem vorhandenen Image hinzu (
https://github.com/plougher/squashfs-tools/blob/master/USAGE) - damit dieses neue Verzeichnis jetzt auch die "alten" Dateien enthält, müssen diese auch in dem Quell-Verzeichnis vorliegen - und das können sie (in dem Kontext hier) wieder nur, wenn man sie zuvor entpackt hat.
Mischt man hier (eben durch zusätzlichen Code im "mksquashfs") die Verzeichnisse aus dem alten Image mit den - als Argument angegebenen - neuen (die Verwaltungsstrukturen muß man dann halt alle neu schreiben, aber die Daten machen ja den deutlich größeren Teil so eines Images aus), fügt man dem "Sammelwerk" des FRITZ!OS nur noch eigene Dateien hinzu (oder ersetzt vorhandene), auch ohne zuvor dieses "as a whole" erst auflösen zu müssen (zumindest für das SquashFS-Image, das TAR-File muß man immer noch zerlegen) ... das ist eigentlich nichts, was ich wirklich will.
Mein Ziel wäre es nur, solche Ersetzungen bzw. Hinzufügungen vornehmen zu können, ohne den Rest der Firmware (die auch immer größer wird - womit das Verarbeiten mit Entpacken, Ändern, Packen ebenfalls immer mehr Platz braucht) dabei erneut packen zu müssen - üblicherweise sind es nur 1-2 Prozent des FRITZ!OS, die da verändert werden (zumindest vom "modfs" und den dort enthaltenen Patches).