Hilfe im Lizenz-Dschungel

thousands

Mitglied
Hi,

ich arbeite gerade an meiner Abschlussarbeit fürs Studium, als Thema erstelle und dokumentiere ich eine Java-Applikation. Dabei benutz ich mehrere Open Source Bibliotheken und andere freie Ressourcen (Icons). Das Problem an der Sache ist, dass ich dabei ein Gemisch verschiedener Lizenzen beachten muss, wobei ich ein wenig den Überblick verliere. Hier gibts doch sicher den ein oder anderen, der mit dem Thema deutlich mehr Erfahrung hat und mir evtl. weiterhelfen kann :rtfm:

Die betreffenden Lizenzen sind im einzelnen GPL (v3) und LGPL (v2.1) für die Bibliotheken und Creative Commons Attribution 3.0 License für die Icons. Soweit ich das verstanden habe, bin ich durch Benutzung von GPL-Bibliotheken grundsätzlich dazu verpflichtet, mein eigenes Programm ebenfalls unter die GPL zu stellen. Dazu hätte ich zwei Fragen:

  • Was muss ich beim Lizenzieren meines eigenen Programmes mittels GPL alles beachten? Reichts wenn ich einfach den Sourcecode meines Programmes beilege und ne Kopie des GPL-Textes als Textfile mit ins Verzeichnis packe oder gibts da noch weitere Vorgaben?
  • GPL und LGPL verpflichten ja grundsätzlich dazu, dass die binaries immer mit zugehörigen sources veröffentlicht werden. Muss ich also, da die von mir verwendeten Bibliotheken meinem Programm ja im libs-Ordner beiliegen, auch die sources der Bibliotheken beilegen? Oder bezieht sich dieser "Veröffentlichungszwang" der sources nur auf den "Originalherausgeber"?

Vielen Dank schonmal!

Gruß, thousands
 
Aaaaalso:

1) Wenn du GPL libs benutzt muss dein Programm auch unter GPL stehen. Sourcen musst du imho drauf hinweisen und bei Bedarf bereit stellen. Ich würde sie bei deiner Abschlussarbeit in jedem Fall beilegen.

2) LGPL ist da eigentlich schon komplizierter. Da du aber eh unter GPL lizensieren musst hat sich der Punkt schon erledigt. Sourcen auch hier dabei packen.

3) Es reicht die Lizenz zu bennen und nen link dazuzulegen. Würde aber auch hier ne Kopie beilegen.

4) Icons sind unkompliziert. Die creatives comnons ist eine Attribution license. Nenn die Uhrheber brav z.B. im About Dialog und fertig is.

Alle Angaben ohne Gewähr.
 
Oder bezieht sich dieser "Veröffentlichungszwang" der sources nur auf den "Originalherausgeber"?
wenn Du etwas geändert hast, dann auf Deine Änderungen ... sonst die originalen Codes ... wobei ich nicht verstehe wieso ich im letzteren Fall die Codes mit reinpacken soll - ist ja Link zu den Codes mit bei
 
[...]wobei ich nicht verstehe wieso ich im letzteren Fall die Codes mit reinpacken soll - ist ja Link zu den Codes mit bei

Weil du dann bis ans Ende deiner Zeit die Sourcen auf dem entsprechenden Webserver bereit stellen musst 😉...

(Auch wenn es wohl nicht ganz so lange ist wird es wohl doch ein längerer Zeitraum sein 😛)
 
Weil du dann bis ans Ende deiner Zeit die Sourcen auf dem entsprechenden Webserver bereit stellen musst 😉...

(Auch wenn es wohl nicht ganz so lange ist wird es wohl doch ein längerer Zeitraum sein 😛)

Deswegen würde ich sie in jedem Fall beilegen. Gerade bei ner Abschlussarbeit gehörts ja mindestens zur Doku dazu!

Außerdem ists ja in der Regel nicht so, dass die Sourcen hunderte MB groß sind.
 
3) Es reicht die Lizenz zu bennen und nen link dazuzulegen. Würde aber auch hier ne Kopie beilegen.
Das reicht nicht ganz. Es gibt zwei Fälle:
1. Du vertreibst dein Programm als reinen Download übers Internet. In diesem Fall musst du die Sourcen der verwendeten (L)GPL Bibliotheken ebenfalls zum Download anbieten. Und zwar auf deinem eigenen Server, ein Link zum Ursprung der Bibliothek genügt üblicherweise nicht.
2. Du vertreibst physikalische Datenträger. In diesem Fall muss der Quellcode der Bibliotheken wahlweise auf dem Datenträger vorhanden sein, oder eine 'Written Offer' beiliegen mit der der Quellcode von dir bezogen werden kann.

Da es eine Arbeit ist, leg einfach alle Quellen und Lizenzen auf die CD und dann ist alles ok.
 
Wenn Du vielleicht schon Maven fürs Build Management benutzt, dann schau Dir mal dies Plugin an: Maven Source plugin - source:jar
Das packt Dir neben die binary-jars noch jars mit Deinem Source Code. Dann musst Du nicht immer selbst dran denken, ein zip File zu packen.

[Edit]
Und hier gibt's ein Plugin, dass Dir Lizenztexte in Deine Sourcen bastelt. (Muss natürlich nicht in jeder Datei sein) : HowTo - maven-license-plugin - How to use maven-license-plugin - Maven plugin to update header licenses of source files - Google Project Hosting
[Edit]
 
Zuletzt bearbeitet von einem Moderator:
Vielen Dank an alle für die ausführlichen Anworten, ich denke damit sind eigtl. alle Fragen die ich hatte vorerst geklärt.

Ich werde mein Programm unter der GPL lizenzieren, also die entsprechenden Kommentare in den Klassen-Headern hinzufügen, eine Kopie der GPL als Textdatei beilegen und in meinem About-Dialog die entsprechende Klausel einfügen (ist mein Programm durch diese 3 Schritte "fertig" GPL-lizenziert oder hab ich was vergessen?).

Außerdem werde ich die sources sowie Kopien der Lizenzen der verwendeten Libs in einem eigenen Ordner beilegen und auf alle verwendeten Ressourcen in meinem About-Dialog (mit entsprechendem Link zum Urheber) verweisen.

In der schriftlichen Dokumentation meiner Abschlussarbeit gibts des Weiteren ein eigenes Kapitel zu den verwendeten Bibliotheken und weiteren Ressourcen, in dem neben einer Beschreibung selbiger natürlich auch auf die jeweiligen Webseiten der Urheber verwiesen wird.

Mit all diesen Schritten sollte ich dann (soweit ich alles richtig verstanden habe) alle "Auflagen" erfüllen und somit auf der sicheren Seite sein. Sollte es da noch Einwände geben, dann bitte, immer her damit! 🙂

Nochmals vielen Dank!
thousands
 
Damit solltest du definitiv alle Bedingungen erfüllt haben. Übrigens, keine Sorge, selbst wenn du zB vergisst die Quellen eine Bibliothek beizulegen, Organisationen die sich darum kümmern das die Rechte von FOSS Software gewahrt bleiben sind nicht gerade Bluthunde die Studenten mit Klagewellen überziehen wenn sie einen Formfehler begehen. Aber von Anfang an richtig machen ist natürlich immer besser.
 
Beim Lesen des Threads ist mir eine Frage gekommen:

Es ist klar, dass wenn ich GPL Sourcen oder libs nutze, dass ich bei Veröffentlichung von meinem Code meine Software unter die GPL stellen muss und die Sourcen / Lizenz beilegen muss , und und und. Wenn ich meine Software nicht veröffentliche, dann muss ich auch nix tun. Gäbe ja eh kein Kläger 😉.

Die Frage ist: Was bedeutet denn "veröffentlichen", wenn ich die Software z.B. einem Freund weitergebe (er könnte ja im schlimmsten Fall die Software im Internet zum Download anbieten ... auch ohne meine Erlaubnis), oder wenn man eine Software entwickelt, die nur innerhalb derselben Firma genutzt wird (also interne Verwendung)?
 

Zurück
Oben