Probleme mit den Lizenzen

Alles, was nicht direkt mit Python-Problemen zu tun hat. Dies ist auch der perfekte Platz für Jobangebote.
anogayales
User
Beiträge: 456
Registriert: Mittwoch 15. April 2009, 14:11

Hallo Community,

da ich gerade an einem größeren Projekt arbeite und dieses auch veröffentlichen möchte, bin ich gerade dabei mich in dem Lizenz Wahnsinn zurecht zu finden.

Bisher hat mir diese Lizenz am besten gefallen:
http://creativecommons.org/licenses/by-sa/3.0/

Viele Entwickler nehmen die freiere Variant GPL oder MIT. Warum?

Ich will eben nicht, dass Leute mit meiner Software Geld verdienen.

Grüße,
anogayales
Dav1d
User
Beiträge: 1437
Registriert: Donnerstag 30. Juli 2009, 12:03
Kontaktdaten:

anogayales hat geschrieben:Ich will eben nicht, dass Leute mit meiner Software Geld verdienen.
Das stört mich nicht...Wenn es genau dein Programm ist, wäre der User selber schuld, wenn er nicht deins verwendet und falls es ein Modul ist, baut "sein" Programm ja nur zum Teil auf deinem auf, mich würde das eher als Ehre empfinden (falls es sich gut verkauft :P)
the more they change the more they stay the same
BlackJack

@anogayales: Wenn Du nicht möchtest, dass jemand Geld mit Deinem Programm verdient, hast Du die falsche CC-Lizenz gewählt. Dafür müsstest Du wohl eine "non commercial"-Variante nehmen.

Ich kann nicht für andere Entwickler sprechen, aber ich mag mittlerweile die MIT oder die WTFPL am liebsten. Schön kurz und im Grunde so dicht an "public domain" dran, wie das eben rechtlich geht.
Benutzeravatar
cofi
Python-Forum Veteran
Beiträge: 4432
Registriert: Sonntag 30. März 2008, 04:16
Wohnort: RGFybXN0YWR0

Man sollte vielleicht noch erwaehnen, dass die meisten CC-Lizenzen mit anderen Lizenzen nicht vereinbar sind, v.a. die mit `by`. Wegen der Namensnennung ist die BSD-Lizenz (die mit 4 Klauseln, nicht die MIT) nicht mit GPL u.a. zu vereinen.
Aber ich kann dir versichern, dass du dich mit der Lizenz für die meisten offenen Projekte unbenutzbar machst. Wenn du deinen Code unter die GPL stellst, ist er auch kommerziell verwertbar, für die meisten Firmen ist es aber nicht nützlich, weil sie den Kunden dann auch diese Freiheiten einräumen müssten. Möglichkeiten deinen Source zu Open Source zu machen, dabei aber jegliche kommerzielle Verwertung auszuschliessen ist IMHO recht unmöglich. Falls du andere Bibliotheken nutzt, darfst du nicht vergessen zu ueberpruefen, ob die Lizenzen vertraeglich sind.

Ich schliess mich da jedenfalls BlackJack an und bevorzuge MIT.
Benutzeravatar
lutz.horn
User
Beiträge: 205
Registriert: Dienstag 8. November 2005, 12:57
Wohnort: Pforzheim

Wenn Dein Projekt ein Softwareprojekt ist, solltest Du keine Creativecommons-Lizenz verwenden. Die CC-Lizenzen sind für Bilder, Text, Videos, Musik und andere im weitesten Sinne kreative Werke entwickelt worden. Die Eigenheiten von Software erfassen sie nicht besonders gut.

Ich empfehle Dir die GNU GPL (http://www.gnu.org/licenses/gpl.html), falls Deine Software ohne öffentlich und allgemein zugreifbare Schnittstelle läuft. In diesem Fall wäre die GNU Affero GPL (http://www.gnu.org/licenses/agpl.html) geeigneter. Sie wird zum Beispiel von status.net (http://status.net), der Software hinter Identi.ca, verwendet.

Falls Dir Freiheit im FSF-Sinn nicht zusagt, empfehle ich dir eine andere zur GNU GPL kompatible Lizenz (http://www.gnu.org/licenses/license-lis ... leLicenses).
https://www.xing.com/go/invite/18513630.6a91d4
burli
User
Beiträge: 1156
Registriert: Dienstag 9. März 2004, 18:22

Ein Programm als Open Source veröffentlichen und gleichzeitig die kommerzielle Nutzung verhindern wollen ist wohl der falsche Weg. Du kannst jede beliebige Lizenz drüber schreiben, aber das wird niemanden daran hindern, den Sourcecode zu verwenden.

Du hast nämlich zwei große Probleme: 1. musst du feststellen, dass jemand deinen Code ganz oder teilweise kommerziell verwendet und 2. musst du es auch nachweisen.

Bestes Beispiel sind die Klagen der FSF gegen verschiedene Hersteller. Die haben wenigstens die Mittel und Möglichkeiten, die GPL durchzusetzen. Letztens hat deswegen ein Hersteller Insolvenz angemeldet. Die Mittel dürften die allerdings fehlen.

Wenn du den Sourcecode unter die GPL stellst hast du von deiner Seite alles getan, was in deinen Möglichkeiten steht. Wenn jemand deine Software zu Geld machen will kannst du daran wenig ändern, sofern er der Sourcecode weitergibt.
Das schwierigste beim Programmieren ist, sinnvolle Variablen- und Funktionsnamen zu finden :lol:
Benutzeravatar
lutz.horn
User
Beiträge: 205
Registriert: Dienstag 8. November 2005, 12:57
Wohnort: Pforzheim

Interessant ist immer noch "Selling Free Software" (http://www.gnu.org/philosophy/selling.html), auch wenn dieser Aufsatz schon vor einigen Jahren entstanden ist.
https://www.xing.com/go/invite/18513630.6a91d4
Leonidas
Python-Forum Veteran
Beiträge: 16025
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Ich lizensiere meine Folien unter CC (aber nur BY, von NC halte ich nix und ND sogar schädlich), aber meine Software unter "traditionellen" Lizenzen. Üblicherweise unter MIT, aber seitdem ich gesehen habe wie es auf Platformen wie Android mit der propietären Software aussieht wieder vermehrt GPL.
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
sma
User
Beiträge: 3018
Registriert: Montag 19. November 2007, 19:57
Wohnort: Kiel

Ich denke, man kann drei Arten von Lizenzen unterscheiden: 1) Freie Software gemäß der Definition der FSF. 2) Open Source Software gemäß der Definition von OSI. 3) Alles andere.

Zu 1 gehört die GPL, AGPL und LGPL. Diesen Lizenzen liegt die Idee zugrunde, dass wer von Quelltexten unter einer dieser Lizenzen profitiert, Teile seiner Software ebenfalls unter der selben Lizenz veröffentlichen soll, damit sich der Nutzen für diese Gemeinschaft mit jedem neuen Werk immer weiter vergrößert. Dies schließt eine kommerzielle Nutzung der Software nicht aus, macht sie aber (bei GPL und AGPL) unattraktiv, da der Verkäufer meist nicht bereit ist, seinen Teil kostenlos und frei gemäß der Definition der FSF zur Verfügung zu stellen, wie die Lizenz es erfordert.

Zu 2 gehören eigentlich alle bekannten Opensource-Lizenzen wie die von Apache, Eclipse, Mozilla, Microsoft oder auch die MIT- und BSD-Lizenzen. Hauptkriterium ist, dass die Lizenzen nicht diskriminierend sein dürfen, dass heißt es ist explizit nicht möglich, eine kommerzielle Nutzung der die Quelltexte nutzenden Software zu verbieten. Da die Lizenzen eigentlich alle nicht viral wie die unter 1 sind, sind gelten diese als Business-friendly und werden von vielen Leuten genutzt, die eine möglichst vielfältige Nutzung ihrer Quelltexte wünschen.

Zu 3 gehört alles andere, was man sich ausdenken kann. Als Urheber hat man natürlich das Recht, beliebiges zu verfügen, etwa, dass die Quelltexte nur von rotharigen Jungfrauen in andere Software eingebaut werden dürfen. In wie weit man dieses Lizenz vor Gericht durchsetzen könnte, ist eine andere Frage. Hier gilt sowieso, dass es eher ein Ehrenkodex denn ein verbindliches Recht ist, von einigen Fällen, wo die FSF erfolgreich bei GPL-Verletzungen geklagt hat, einmal abgesehen.

Soll ein Quelltext nur nicht-kommerziell genutzt werden können, schreibt man das einfach als Nutzungsbedingungen drüber und schon hat man eine eigene Lizenz erfunden. Open Source gemäß OSI wäre das dann nicht mehr und auch inkompatibel zur GPL, doch wenn man z.B. nur möchte, dass andere von seinem Quelltext lernen können, wäre das völlig in Ordnung.

Eine kommerzielle Nutzung kann man IMHO auch recht effektiv mit einer ungewöhnlichen und veränderten Standardlizenz erreichen. Meist haben Unternehmen von ihrer Rechtsabteilung die üblichen Lizenzen schon vorab prüfen lassen und würden den Aufwand scheuen, extra für ein bisschen Quelltext eine neue Lizenz aufwendig prüfen zu lassen. APL2 wäre z.B. im Java-Umfeld meist problemlos möglich, doch wer die What-The-Fuck-Lizenz benutzt, nun, dann eben nicht.

Nachtrag: Geht es überhaupt um die Veröffentlichung von Quelltext? Das haben zwar alle angenommen, aber anogayales schreibt das gar nicht. Für fertige (kompilierte) Software gilt natürlich noch mal etwas anderes. Hier kann man verfügen, was immer man will und alles, was ich über die anderen Lizenzen gesagt habe, trifft gar nicht zu. Nach deutschem Recht ist es sowieso fraglich, wie welche EULAs gelten, daher ist das meist wieder nur ein Ehrenkodex, der aber glaube ich bei Software allgemein weniger ausgeprägt ist, als in der Opensource-Community.

Stefan
lunar

@sma: Das, was Du über die Lizenzen gesagt hast, trifft auch auf Binärdateien zu tun. Wenn man eine Binärdatei unter den Bedingungen der BSD-Lizenz verteilt, muss ein Lizenznehmer diese natürlich auch beachten. Bei einer Bibliothek müsste er beispielsweise auf deren Verwendung hinweisen.
apollo13
User
Beiträge: 827
Registriert: Samstag 5. Februar 2005, 17:53

sma hat geschrieben: Nachtrag: Geht es überhaupt um die Veröffentlichung von Quelltext? Das haben zwar alle angenommen, aber anogayales schreibt das gar nicht. Für fertige (kompilierte) Software gilt natürlich noch mal etwas anderes. Hier kann man verfügen, was immer man will und alles, was ich über die anderen Lizenzen gesagt habe, trifft gar nicht zu. Nach deutschem Recht ist es sowieso fraglich, wie welche EULAs gelten, daher ist das meist wieder nur ein Ehrenkodex, der aber glaube ich bei Software allgemein weniger ausgeprägt ist, als in der Opensource-Community.
Oh ganz und gar nicht, ein nettes Beispiel dafür ist zum Beispiel Qt als LGPL und ein kommerzielles C++ Programm dazu. Durch das verwenden von Qt in der LGPL Version __musst__ du dynamisch gegen Qt linken. Statisches Linken wäre in diesem Fall nur dann erlaubt, wenn du den Source deines Programmes mitlieferst. Warum? Nunja, der Enduser muss (dank LGPL) in der Lage sein die Qt Version auszutauschen, das geht aber nur wenn du dynamisch linkst (oder eben den Source mitlieferst). Es hängt also sehr stark auf von den verwendeten Libraries ab ob etwas erlaubt ist oder nicht…

@Lunar: Falls ich mal wieder lizenztechnisch Blödsinn quassle bitte korrigier mich ;)
lunar

@apollo13: Wenn man eine LGPL-Bibliothek nicht dynamisch bindet, muss man nur Zugang zum Quelltext der Bibliothek und zum ungebundenen Objektcode des Programms inklusive der zum Binden nötigen Materialien (z.B. das Buildsystem) gewähren, damit der Nutzer das Programm gegen eine veränderte Version der Bibliothek linken kann. Der Quelltext muss man nicht ausliefern (siehe §6a, LGPL 2.1).
sma
User
Beiträge: 3018
Registriert: Montag 19. November 2007, 19:57
Wohnort: Kiel

Mein Wissenstand ist, dass in Deutschland eine Endbenutzer-Lizenzvereinbarung (EULA) nur dann gilt, wenn sie dem Kunden bereits vor dem Erwerb zugänglich gemacht wurde. Erst bei der Installation oder gar nach der Installation im Dateisystem vorfinden ist zu spät und die Lizenz ist wirkungslos.

Bei Privatkunden gelten zudem noch die Regelungen für AGBs wodurch Teile der Lizenzvereinbarungen wirkungslos sein können, weil sie die in Deutschland natürlich geregelten (gemäß BGB) Grundsätze für AGBs verletzen. Beispielsweise darf die Haftung nicht (wie in BSD oder MIT versucht) ausgeschlossen werden. Zwischen Unternehmen sieht das anders aus, weil diese vertraglich eigentlich so ziemlich alles vereinbaren können und der Staat hier nicht die Aufgabe sieht, die Unternehmer voreinander zu schützen.

Stefan
lunar

@sma: Ich weiß, dass EULAs nicht gelten, wenn das Nutzungsrecht bereits durch einen vorherigen Lizenzvertrag erworben wurde, da man Vertrag nicht nachträglich einseitig ändern kann. Der typische Fall für eine solche Situation ist der Ladenkauf. Aber ob EULAs generell nie gelten, wenn sie nicht vorher zugänglich gemacht wurden, weiß ich nicht, ich glaube es allerdings eher nicht, denn dann würde man ja bereits durch den Download einen Vertrag schließen und ein Nutzungsrecht erwerben.

In jedem Fall aber ist das – wie auch die Gültigkeit der AGB-Gesetze – vollkommen unabhängig von der Art der Verteilung. Es ist egal, ob das Programm in Binärform oder als Quelltext vertrieben wird, das Gesetz unterscheidet nicht. Die Haftung darf man weder für Quelltext noch für Binärprogramme ausschließen.
Benutzeravatar
jbs
User
Beiträge: 953
Registriert: Mittwoch 24. Juni 2009, 13:13
Wohnort: Postdam

lunar hat geschrieben:Die Haftung darf man weder für Quelltext noch für Binärprogramme ausschließen.

Das gilt aber nur, wenn ich das verkaufe, oder?
[url=http://wiki.python-forum.de/PEP%208%20%28%C3%9Cbersetzung%29]PEP 8[/url] - Quak!
[url=http://tutorial.pocoo.org/index.html]Tutorial in Deutsch[/url]
Benutzeravatar
cofi
Python-Forum Veteran
Beiträge: 4432
Registriert: Sonntag 30. März 2008, 04:16
Wohnort: RGFybXN0YWR0

Nein, auch bei kostenloser Weitergabe kann man sie nicht ausschliessen. Dann greift aber IIRC ein anderes Gesetz, das einen nur dann haftbar macht, wenn man Fehler "arglistig verschweigt", d.h. bekannte Fehler dem Abnehmer vorsaetzlich/fahrlaessig verschweigt. Mit einem Bugtracker oder einer Datei in der Distribution sollte es getan sein, sofern beides aktuell ist und alle Fehler enthaelt.
lunar

@jbs: Von Gesetzes wegen gelten die AGB-Bestimmungen für jeden Vertrag, an dem ein "Nicht-Unternehmer" beteiligt ist, also auch beispielsweise Dienstverträge. Dein Friseur darf die Haftung für Deinen Haarschnitt auch nicht ausschließen, obwohl er Dir keine Ware verkauft, sondern einen Dienst leistet :)

Freie Software, die frei übers Netz verteilt wird, scheint aber nach gängiger Rechtssprechung als Schenkung interpretiert zu werden, und da gelten meines Wissens andere Haftungsregeln, die nur grobe Fahrlässigkeit und Vorsatz einschließen. Aber ich bin kein Anwalt, und kenne mich im Gesetz auch nicht besonders gut aus.

Es ist aber in jedem Fall so, dass man als Autor freier Software in Deutschland die Haftung nicht vollständig ausschließen kann, sondern allenfalls reduzieren kann. Es gibt keinen Freifahrtschein für groben Unfug auf dem System des Nutzers ;)
Benutzeravatar
DaMutz
User
Beiträge: 202
Registriert: Freitag 31. Oktober 2008, 17:25

jbs hat geschrieben:
lunar hat geschrieben:Die Haftung darf man weder für Quelltext noch für Binärprogramme ausschließen.

Das gilt aber nur, wenn ich das verkaufe, oder?
Schreib doch einmal einen Virus / Wurm und veröffentliche ihn unter der GPL. Ich glaube nicht, dass dies sehr viel bringt von wegen Haftung.
Ausser das die Antivirenhersteller den Schädling besser bekämpfen können.
Benutzeravatar
cofi
Python-Forum Veteran
Beiträge: 4432
Registriert: Sonntag 30. März 2008, 04:16
Wohnort: RGFybXN0YWR0

Allerdings duerfte das in jedem Fall unter Sachbeschaedigung fallen.
lunar

@cofi: Für elektronischen Daten gibt es gesonderte Regelungen, da Daten keine Sachen sind. Diese Regelungen fallen unter die Begriffe Computersabotage und Datenveränderungen, nicht aber Sachbeschädigung. Außerdem geht es dann schon um Straftaten und nicht mehr wie bisher um Zivilrecht, es muss also schon Vorsatz sein.
Antworten