Licencia de licencia BSD de código de 2/3 a GPL

11

Supongamos que publico algún código fuente bajo la nueva licencia BSD. ¿Está permitido que otra persona tome este código, realice modificaciones y lo distribuya bajo los términos de la GPL? De Wikipedia :

Muchas de las licencias de software libre más comunes, como la licencia MIT / X original, las licencias BSD (en el formulario actual de 2 cláusulas) y la LGPL, son "compatibles con GPL". Es decir, su código se puede combinar con un programa bajo la GPL sin conflicto (la nueva combinación tendría la GPL aplicada al conjunto). Sin embargo, algunas licencias de software gratuitas / de código abierto no son compatibles con GPL.

¿Supongo que esto implica que se puede volver a licenciar el código con licencia BSD nuevo a GPL?

Brecht Machiels
fuente
Hice una pregunta similar sobre el intercambio de pila de código abierto: opensource.stackexchange.com/questions/4837/… Siento que aún no hemos encontrado una respuesta concluyente; todo lo que tenemos es una docena de conjeturas. Sería genial saber de un abogado real, o tal vez incluso de la propia FSF.
Tanner Swett

Respuestas:

8

Esa es una pregunta interesante. Descargo de responsabilidad: IANAL.

El fragmento citado significa que el código con licencia BSD puede usarse en un proyecto con licencia GPL.

Por otro lado, sigues siendo el titular de los derechos de autor de tu código. La licencia del código original no se puede cambiar sin su permiso. También la licencia BSD requiere explícitamente:

  • Las redistribuciones del código fuente deben conservar el aviso de copyright anterior, esta lista de condiciones y el siguiente descargo de responsabilidad.
  • Las redistribuciones en forma binaria deben reproducir el aviso de copyright anterior, esta lista de condiciones y el siguiente descargo de responsabilidad en la documentación y / u otros materiales proporcionados con la distribución.

Por lo tanto, la licencia BSD no se puede quitar de su código.

Para poder liberar el código combinado bajo GPL, otro autor tendría que hacer una "contribución significativa" al código. Es vago lo que significa exactamente, pero generalmente debería significar al menos agregar una nueva característica significativa, no solo un parche menor.

Situación similar: SFLC completa la revisión del controlador inalámbrico Atheros para Linux, Guía de versiones para desarrolladores .

Pregunta relacionada sobre SO: /programming/821608/relicensing-a-bsd-library

vartec
fuente
Por lo tanto, las condiciones BSD tienen que ser retenidas. Eso está claro. Pero, ¿se pueden agregar condiciones adicionales a la lista, por ejemplo, una cláusula similar a GPL para hacer que sus cambios estén disponibles para otros?
Brecht Machiels
1
@ Brecht: si y solo si es algo nuevo que cae como trabajo separado bajo trabajo de copyright. Si se trata de un cambio o adaptación menor, no es un trabajo separado, por lo que no es posible volver a licenciarlo.
vartec
6

En mi experiencia, no, usted no "vuelve a licenciar" algo porque no posee los derechos de autor. Solo tiene una licencia de los autores originales.

Lo que puede hacer es usar el trabajo con derechos de autor en un trabajo derivado, pero debe seguir los términos de la licencia, que en el caso de BSD / MIT, dice que debe conservar el aviso de copyright y la licencia en el código que usa .

En la práctica, si alguien usara su biblioteca BSD en una aplicación GPL, lo que vería en su aplicación es:

  • Una copia de la licencia GPL en un archivo de texto
  • Un archivo separado que afirma que todo el programa está licenciado bajo la GPL (y apuntándolos al archivo de licencia GPL para los detalles), pero luego tiene secciones separadas debajo del encabezado que dice "la biblioteca XYZ está licenciada bajo la licencia BSD" y luego muestra el licencia de XYZ allí también. Aquí hay un ejemplo de este tipo de archivo, de una aplicación GPL que escribí .

Si alguien tomó un fragmento de código, o un archivo de su trabajo, y lo incluyó en su aplicación GPL, y luego lo modificó, probablemente verá que incluye tanto el encabezado GPL como el BSD en el archivo. El archivo esencialmente tendría dos autores: usted y ellos. Tendrían que mostrarse ambos avisos de derechos de autor.

Recuerde, GPL es viral, por lo que se aplica a todo el trabajo, pero BSD / MIT solo se aplica al código exacto que alguien escribió.

Scott Whitlock
fuente
1
presumiblemente puede volver a licenciar un trabajo cuya licencia lo permite, incluso si no es el titular original de los derechos de autor. El BSD parece permitir esto.
Armand
2

Descargo de responsabilidad: IANAL.

No hay prohibición en las licencias MIT o BSD contra la renovación de la licencia. Dado que ni las licencias MIT ni BSD agregan restricciones más allá de lo que ya está en la GPL (los bits de derechos de autor y garantía ya están en la cláusula 1 de los Términos y condiciones de GPLv2) No veo ningún problema con bifurcar y volver a licenciar un proyecto con licencia MIT.

La antigua licencia BSD tenía una cláusula publicitaria que no funcionaba bien con GPL.

Frank Shearar
fuente
2
Tampoco soy abogado, pero creo que esto puede ser información errónea. Solo los titulares de los derechos de autor pueden volver a licenciar una obra protegida por derechos de autor. La razón por la cual BSD es compatible con GPL es que el código con licencia BSD se puede usar en un trabajo de GPL, pero el código BSD original todavía tiene licencia bajo BSD. Como parte del trabajo derivado, también tiene licencia bajo la GPL, pero debe mantener intacta la licencia original.
Scott Whitlock
3
@Scott BSD dice que debe conservar las cláusulas del BSD. Sin embargo, no restringe agregarlos, por lo que tal vez esta sea una interpretación razonable
Armand
2
opensource.org/licenses/mit-license.php declara explícitamente que cualquiera que obtenga una copia del código puede sublicenciar el software.
Frank Shearar
2

Lo siento, pero la mayoría de ustedes están equivocados.

La licencia y la propiedad son dos cosas diferentes. No puede volver a licenciar algo que no le pertenece. No es tu decisión tomar.

El propietario es el titular de los derechos de autor, no usted. Por lo tanto, no puede volver a licenciar su trabajo. Como no es dueño de su trabajo, solo lo está otorgando. Es decir, el propietario te permite usarlo. Él / Ella no te está dando la propiedad.

Será ridículo pensar, por ejemplo, que el autor original (o CUALQUIERA que haya obtenido el código BSD) tiene que seguir la GPL para usar el código original solo porque decidió usar SU CÓDIGO en un proyecto GPL.

Sin embargo, puede obtener una licencia en el código GPL YOUR NWN Y luego, ESA PARTE, no la original, está bajo la GPL. Como el autor original no colocó el trabajo en GPL y como SOLO está otorgando licencias y NO PROPIETANDO el trabajo original.

Puede usar el código con licencia BSD en su código GPL (ya que BSD lo permite, siempre que cumpla con los términos BSD, y uno NO ES ELIMINAR la licencia de las copias), pero no puede simplemente volver a licenciar todo el asunto, ya que No te pertenece. Nuevamente, no es tu decisión tomar. Sin embargo, si desea utilizar un código GPL de terceros con código BSD. Entonces el problema será cumplir con la parte GPL.

Ricardo Santos
fuente
1
Creo que la declaración anterior "No puede volver a licenciar algo que no posee" es incorrecta, muchas licencias otorgan el derecho de sublicenciar obras protegidas por derechos de autor. A veces, las sublicencias otorgan restricciones adicionales sobre los derechos que se pueden otorgar bajo la sublicencia, pero no siempre. Los detalles dependen de la situación y de si se le han otorgado los derechos para hacerlo.
Cameron
Además, si incluye la licencia BSD en sus copias, significa que el código sigue siendo BSD y no puede estar bajo GPL al mismo tiempo.
warvariuc