staging.inyokaproject.org

Treiber-Copyright

Status: Ungelöst | Ubuntu-Version: Ubuntu
Antworten |

banty

Anmeldungsdatum:
6. September 2006

Beiträge: Zähle...

Hallo Leute,

Oh man, Canon bringt mich echt ins schwitzen.

Die haben einen Bug in ihrem Druckertreiber und außerdem kann deren ppd-Datei für mehr Optionen aufgebohrt werden. Was auch völlig Banane ist: Die haben für jede Druckergeneration einen eigenen Treiber, der vom Prinzip her genauso wie die Treiber der vorhergehenden Generation funktioniert. Dennoch unterstützt der aktuellste Treiber auch nur die aktuellste Generation der Drucker. Ich versuche, einen "generischen" Druckertreiber daraus zu bauen, der einfach alle Canon-Drucker unterstützt - vorausgesetzt die richtigen Libraries sind vorhanden.

Jetzt haben die bei ihrem neuen Treiber für Drucker und Multifunktionsgeräte folgende Passage in ihrer Copyright-Datei:

IMPORTANT


Canon's software program "Canon Bubble Jet Print Filter Ver.2.50 for Linux", "Canon Inkjet Print Filter Ver.2.60 for Linux" and "IJ Printer Driver Ver. 2.70 for Linux (or later)" contain the software modules listed in Appendix 2 and Appendix 3 attached hereto.

Such software modules are free software and you can redistribute them and/or modify them under the terms of GNU General Public License Version 2 published by the Free Software Foundation ("GPL").

Such modules are distributed in the hope that they will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  You can find full text of the GPL later within this notice and see it for more details.  

In addition, as a special exception, Canon gives permission that if you link the modules listed in Appendix 3 attached hereto with other files to produce an executable, this does not by itself cause the resulting executable to be covered by the GPL.  Your use of that executable is in no way restricted on account of linking the modules listed in Appendix 3 attached hereto into it.

This exception does not however invalidate any other reasons why the executable file might be covered by the GPL.  This exception applies only to the modules listed in Appendix 3 attached hereto.

If you copy the modules listed in Appendix 2 attached hereto or code provided under the GPL into a copy of the modules listed in Appendix 3 attached hereto, as the GPL permits, this exception does not apply to the code that you add in this way.  To avoid misleading anyone as to the status of such modified files, you must delete this exception notice from them, and then you must not link such modified files with the modules listed in Appendix 1 attached hereto to produce an executable.

If you write modifications of you own for the modules listed in Appendix 3 attached hereto, it is your choice whether to permit this exception to apply to your modifications.  If you do not wish that, delete this exception notice, and then you must not link such modifications with the modules listed in Appendix 1 attached hereto to produce an executable.

Sorry, dass es so lang ist, aber nur die Hälfte bringt nix. Weiter unten kommen dann die Anhänge 1, 2 und 3:

 Appendices 


Appendix 1 (Die libs liegen alle nur in Binärformat vor)

libcnbpcmcm*.so.?.?.?
libcnbpcnclapi*.so. ?.?.?
libcnbpcnclbjcmd*.so.?.?.?
libcnbpcnclui*.so.?.?.?
libcnbpess*.so.?.?.?
libcnbpo*.so.?.?.?
cif*.conf
cnb_*0.tbl
cnbpname*.tbl
nozl_*.utl
regi_*.utl
cif_*.bscc
*.xpm
printui.res
*_ps
*_raw


Appendix 2 (Dies sind die Anwender-Programme)

cngpij
pstocanonij
cnij_usb
cnij_parallel
cngpijmon*
lgmon*
printuii*.mo
cngpijmon*.mo
printui.glade
*.ppd
locale-table
stsmon*
ijcmd*
stsmon*.mo


Appendix 3 (Hier ist der eigentliche Druck-Filter, der die Daten mit den libs aus App. 1 aufbereitet und die GUI)

printui*
cif*

So, wer kann mir nun erklären, was ich darf und was nicht??? Irgendwie ist mir das nicht klar. Einerseits steht da, dass bei eigenem Code in den in Abschnitt 3 genannten Paketen dieser Zusatz erlischt und man die Binär-Bibliotheken nicht dazulinken darf und im letzten Absatz steht wiederum, dass man sich das überlegen kann und wenn man den Zusatz streichen will, ebenfalls die Bibliotheken nicht nutzen darf.

Häh? Was nun? Darf ich was ändern oder nicht?

Ciao banty

Onli Team-Icon

Ehemalige
Avatar von Onli

Anmeldungsdatum:
1. August 2005

Beiträge: 6941

Soweit ich verstanden hab:

Canon gives permission that if you link the modules listed in Appendix 3 attached hereto with other files to produce an executable, this does not by itself cause the resulting executable to be covered by the GPL.

Wenn du die printui* cif* für eigene Anwendungen nutzt, muss das Ergebnis nicht zwingend unter der GPL stehen.
Das ist die exception. Wenn dann unten steht:

To avoid misleading anyone as to the status of such modified files, you must delete this exception notice from them, and then you must not link such modified files with the modules listed in Appendix 1 attached hereto to produce an executable.

Also, dass man diese exception nicht erwähnen darf und nicht mit den Sachen von Anhang 1 linken darf. Und wann? Wenn

If you copy the modules listed in Appendix 2 attached hereto or code provided under the GPL into a copy of the modules listed in Appendix 3 attached hereto, as the GPL permits, this exception does not apply to the code that you add in this way.

Wenn du die Anwendungsprogramme in die in Anhang 3 erwähnten module reinkopierst.

Also: Ändern darfst du. Du darfst nur nicht die in Anhang 2 erwähnten Programme nehmen, mit 3 mischen und unter eine andere Lizenz stellen. wenn du aber nur 3 nimmst, kannst du dir die Lizenz frei auswählen.
Aber nimm das nicht für bare Münze, bis das ein paar hier bestätigt haben. Mein Englisch ist ja auch nicht 100%ig, und diese Logik hier erschwert das Verständnis ja wirklich. Aber eigentlich gilt für dich:

Such software modules are free software and you can redistribute them and/or modify them under the terms of GNU General Public License Version 2 published by the Free Software Foundation ("GPL").

Gruß

banty

(Themenstarter)

Anmeldungsdatum:
6. September 2006

Beiträge: 133

Hallo,

Vielen Dank für Deine Hinweise, Onli. Der Mist ist, das der Quellcode von Canon aus den Teilen 1, 2 und 3 besteht. Und die sind bei denen alle in einem Paket mit unterschiedlichen Verzeichnissen. Ich würde gerne etwas aus Abschnitt 2 und aus Abschnitt 3 patchen. Wie kann ich das so veröffentlichen, dass die sich nicht anpissen?

Ich habe Deine Übersetzung verstanden, ich bin grundsätzlich auch des englischen mächtig. Aber das ist so "juristisch" ausgedrückt, mich verwirrt das mit dem reinkopieren. Ich erkenne nicht den Unterschied zwischen dem letzten und vorletzten Absatz in der Ausnahme (exception). Für mich hören sich die beiden widersprüchlich an.

Ciao banty

Cheetah

Anmeldungsdatum:
1. Februar 2007

Beiträge: 257

Soweit ich das verstanden haben, kannst du alles verwenden, wenn das Ergebnis unter GPL steht. Soll das Programm unter einer anderen Lizenz laufen, dann müssen die Ausnahmen beachtet werden.

banty

(Themenstarter)

Anmeldungsdatum:
6. September 2006

Beiträge: 133

Danke, Cheetha,

So einfach ist es leider nicht. OK, vielleicht sollte ich mal beschreiben, wie die Quelldateien zusammenhängen, damit klar wird, was da geregelt werden soll.

In den Abschnitten 1 - 3 werden die Teile des Codes benamt, die in dem Gesamtpaket vorhanden sind.

Abschnitt 1 beinhaltet die "Closed Source"-Libraries, die gibts nur in binär. Zusätzlich sind ein paar Quellcode-Dateien genannt, in denen kopiergeschütztes Material enthalten ist.

Abschnitt 2 beinhaltet alle GPL-Dateien. Die werden auch - wenn ich das recht in Erinnerung habe - nicht mit Dateien aus Abschnitt 1 gelinkt. Ausnahmen bestätigen wie immer die Regel: Die mitgelieferten xpm-Dateien für die Anzeige des Patronenfüllstandes unterstehen dem Copyright von Canon.

Abschnitt 3 beinhaltet Dateien im Source-Code, die ebenfalls der GPL unterliegen. Nur diese Dateien müssen, damit sie richtig funktionieren können, zu den Dateien aus Abschnitt 1 gelinkt werden. Diese fertigen Dateien unterliegen eben nicht der GPL, sonst müsste Canon den Code aus Abschnitt 1 auch unter die GPL stellen. Das soll die Ausnahme beschreiben. Wenn Du Dateien aus Abschnitt 3 bedingungslos unter die GPL stellen willst, darfst Du sie nicht mehr mit den Dateien aus Abschnitt 1 verlinken - und damit diesen Teil selber neu schreiben. Und das ist ein Problem, denn so wie ich das sehe, ist in den Libraries aus Abschnitt 1 die Hardware-Steuerung der Drucker enthalten.

Ich möchte Dateien aus Abschnitt 2 ändern und veröffentlichen, weil Canon da seit Beginn an einen Bug drin hat. Außerdem möchte ich die ppd-Datei(en) ergänzen, denn eigentlich ist viel mehr mit dem ppd-Interface möglich. Dann braucht man dieses "tolle" printui nur noch für den Düsentest, die Düsenreinigung etc, aber nicht für den normalen Druckvorgang. Das ließe sich alles per cups-Setup einstellen.

Außerdem hätte ich noch die Wahnvorstellung, dass ein Binary alle Drucker unterstützt...

Ciao banty

Antworten |