it-swarm.dev

Können Sie den unter der Lizenz MIT Lizenz) verteilten Code ändern und unter der GPL-Lizenz erneut verteilen?

Ist es möglich, den Code des Chili-Plugins zu ändern, dessen neueste Version im Juli 2008 veröffentlicht wurde, und der unter der Lizenz MIT Lizenz) lizenziert ist, um ihn dann zu lizenzieren unter GPL?

Soweit ich sehen kann, gibt es keine Einschränkung hinsichtlich der Lizenzierung des neuen Codes unter derselben Lizenz. Ist es wirklich so oder gibt es eine Mindestanzahl von Änderungen?

In meinem Fall würde ich das jQuery-Plugin in normalem Javascript-Code ändern, der in einem CMS ausgeführt wird. Dies bedeutet im Wesentlichen, dass unter anderem:

  • Der Code verwendet nicht den Namespace "ChiliBook".
  • Die Funktion wird nicht als $($element).chili() aufgerufen, sondern als GlobalObject.ChiliHighlighter.process($jquery_element), wobei "GlobalObject" ein vom CMS verwendetes JavaScript-Objekt ist.
  • Mit dem Code können andere Module das Objekt GlobalObject.ChiliHighlighter Ändern, um Funktionen hinzuzufügen, die optional von GlobalObject.ChiliHighlighter.process() aufgerufen werden, wenn sie definiert sind.

Als Alternative kann ich das Plugin als nicht mehr gepflegt betrachten, da das von mir verwendete Repository es mir ermöglicht, Code einzuschließen, der nicht unter GPL 2 oder einer höheren Lizenz lizenziert ist, da der Code nicht mehr gepflegt wird, da seine letzte Version vor drei Jahren veröffentlicht wurde.

60
kiamlaluno

Es ist technisch legal.

Die Lizenz MIT (Expat)) unterliegt einigen Einschränkungen. Dies ist eine Teilmenge der GPL-Lizenz. Wenn Sie den Code unter der GPL erneut lizenzieren, und behalten Sie den Hinweis MIT, dann haben Sie die Bedingungen der MIT Lizenz erfüllt) und können die Lizenz legal weitergeben Code.

Beachten Sie, dass Sie möglicherweise kein Urheberrecht beanspruchen. Sie müssen das ursprüngliche Urheberrecht anerkennen.

[Bearbeiten] Einige Leute scheinen nicht zu verstehen, wie F/OSS in Verbindung mit dem Urheber- und Lizenzrecht funktioniert. Alles beginnt mit dem Urheberrecht, schon allein deshalb, weil dies die Standardeinstellung ist. Nach der Urheberrechtslehre hat der Autor das Recht, Kopien des Quellcodes anzufertigen. Unter der Lizenz MIT Lizenz wird mir dieses Recht gewährt, sowie das Recht, es rekursiv anderen zu gewähren. Beachten Sie, dass die Lizenz MIT explizit beinhaltet das Recht zur Unterlizenzierung. Zitat: "the rights to use, copy, modify, merge, publish,distribute,sublicense,and/or sell"

Wenn ich Code unterlizenziere, kann ich keine Rechte gewähren, die ich ursprünglich nicht hatte. Im Fall der GPL ist es mir explizit verboten, nur einige Rechte unterlizenzieren zu dürfen. Aber weder gesetzlich noch in der MIT -Lizenz bin ich verpflichtet, alle Rechte als Ganzes unterlizenzieren.

Daher gewährt mir die MIT -Lizenz das ausdrückliche Recht zur Unterlizenzierung, und weder das Gesetz noch die MIT -Lizenz verbieten mir, nur Unterlizenzen zu vergeben einige Rechte. Außerdem schränkt keines der beiden die Form ein, in der ich dies tue. Daher habe ich das unbestreitbare Recht, eine GPL-Unterlizenz für diesen Code zu erteilen.

62
MSalters

Ja. Aber der Effekt ist möglicherweise nicht das, was Sie denken.

Die Lizenz MIT enthält alle Rechte der GPL und mehr. Und während Personen, die Ihre Distribution erhalten, nur eine GPL-Lizenz für Elemente erhalten, die Sie hinzugefügt haben, erhalten sie dennoch eine MIT Lizenz (von den ursprünglichen Autoren, nicht von Ihnen) für alle Elemente, die in den von den Autoren angebotenen Werken enthalten sind unter dieser Lizenz.

Sie wissen das vielleicht nicht, und soweit ich weiß, verpflichtet Sie kein Gesetz, es ihnen zu sagen. Wenn sie jedoch die GPL-Lizenz in Bezug auf den schützbaren Ausdruck "verletzen", der in dem Werk enthalten ist, das Sie nicht verfasst haben (oder das nicht von anderen zur Nur-GPL-Veröffentlichung beigetragen wurde), haben sie weder Ihre Lizenz noch Ihr Urheberrecht verletzt. (Eigentlich sollte das ziemlich offensichtlich sein - Sie besitzen nur das Urheberrecht für den von Ihnen verfassten Ausdruck.)

Sie haben also keine urheberrechtlich geschützten Elemente von der Lizenz MIT in die GPL-Lizenz konvertiert. Sie haben einfach neue hinzugefügt, die nur unter der GPL-Lizenz angeboten werden, und die Elemente in einer gemischten/kombinierten Arbeit veröffentlicht.

29
David Schwartz

Zu den Erklärungen in den bereits gegebenen Antworten gibt es nichts hinzuzufügen, aber hier sind Anweisungen zum Formen Ihrer Quelldatei-Header ( Quelle =):

2.2 Hinzufügen von GPL-Änderungen zu Dateien mit zulässigen Lizenzen

Ein komplizierterer Fall tritt auf, wenn ein Entwickler urheberrechtlich geschützte Änderungen an einer zulässigen lizenzierten Datei vornimmt, die der Entwickler in ein GPL-Programm einbindet. Entwickler in dieser Situation wenden normalerweise die GPL auf ihre Änderungen an. (Es ist dem Entwickler jedoch möglich, stattdessen neuen Code unter zulässigen Bedingungen beizutragen, z. B. die zulässige Lizenz, die die nicht geänderte Datei regelt. Wir diskutieren diesen Fall in § 2.3.)

Obwohl die zulässige Lizenz des externen Projekts die rechtliche Erlaubnis zum Einfügen von Code aus diesem Projekt in ein GPL-Projekt gewährt, muss der Entwickler des GPL-Projekts dennoch die in der zulässigen Lizenz vorgeschriebene Aufbewahrungspflicht für Hinweise einhalten. In einem Projekt, das die Datei-für-Datei-Methode verwendet, sollte ein Entwickler, der urheberrechtlich geschützte Änderungen an einer Datei mit zulässiger Lizenz vornimmt, einen neuen Urheberrechts- und Berechtigungshinweis über dem vorhandenen platzieren und klarstellen, dass der Entwickler die Datei geändert hat. Der obere Rand der Datei wird dann wie folgt angezeigt:

/*  
 * Copyright (c) 2007  GPL Project Developer Who Made Changes   
 *  
 *  This file is free software: you may copy, redistribute and/or modify it  
 *  under the terms of the GNU General Public License as published by the  
 *  Free Software Foundation, either version 2 of the License, or (at your  
 *  option) any later version.  
 *  
 *  This file is distributed in the hope that it will be useful, but  
 *  WITHOUT ANY WARRANTY; without even the implied warranty of  
 *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU  
 *  General Public License for more details.  
 *  
 *  You should have received a copy of the GNU General Public License  
 *  along with this program.  If not, see .  
 *  
 * This file incorporates work covered by the following copyright and  
 * permission notice:  
 *  
 *     Copyright (c) YEARS_LIST, Permissive Contributor1   
 *     Copyright (c) YEARS_LIST, Permissive Contributor2   
 *  
 *     Permission to use, copy, modify, and/or distribute this software  
 *     for any purpose with or without fee is hereby granted, provided  
 *     that the above copyright notice and this permission notice appear  
 *     in all copies.  
 *  
 *     THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL  
 *     WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED  
 *     WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE  
 *     AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR  
 *     CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS  
 *     OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,  
 *     NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN  
 *     CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.  
 */

Es ist sehr wichtig, dass der Entwickler den gesamten Urheberrechtshinweis, den Erlaubnishinweis und den Gewährleistungsausschluss, wie er im Originalcode enthalten ist, gemäß den Anforderungen der zulässigen Lizenz aufbewahrt. Manchmal werden GPL-Hinweise mit zulässigen Lizenzhinweisen gemischt - eine verwirrende Praxis, die sowohl die Herkunft des Codes als auch die genauen Berechtigungen verdeckt, die von den verschiedenen in den Hinweisen aufgeführten Copyright-Inhabern erteilt wurden. Wenn verschiedene Urheberrechtsinhaber ihre Beiträge zu unterschiedlichen Bedingungen veröffentlicht haben, sollten die Bedingungen angegeben werden, die jeder für seinen jeweiligen Beitrag festgelegt hat. Wir empfehlen, eine klare Trennung vorzunehmen und Einrückungen zu verwenden, wie im obigen Beispiel.

Diese Art der Organisation der Hinweise in der Datei erleichtert Entwicklern die Auswahl, ob sie unter zulässigen Bedingungen oder unter der GPL einen Beitrag leisten möchten. Wenn sie ihre Beiträge unter zulässigen Bedingungen zur Verfügung stellen möchten, können sie ihre Copyright-Hinweise der unteren Gruppe hinzufügen. Wenn sie unter der GPL einen Beitrag leisten möchten, können sie ihre Copyright-Hinweise oben einfügen. Beachten Sie jedoch, dass es in einer einzelnen Quelldatei in der Regel sehr schwierig und häufig völlig unmöglich ist, zu bestimmen, welche Teile einer solchen Datei unter zulässige Bedingungen fallen. Wenn das Ziel darin besteht, zusätzlichen Code nur unter zulässigen Bedingungen zur Verfügung zu stellen, sollte die in § 2.3 beschriebene Methode verwendet werden.

12
hoijui