¿Cómo gestionar, en la práctica, los archivos de licencia cuando se combina el código con licencia GPL y BSD?


10

Estoy escribiendo un código que usa una biblioteca con licencia GPL (no LGPL) y otra con la licencia BSD de 3 cláusulas . Como me conecto a una biblioteca con licencia GPL, mi código también deberá ser GPL. ¿Cómo debería, en la práctica, tratar con el LICENSE.txt original de la biblioteca BSD?

(A) ¿Puedo distribuir un proyecto para que el código fuente principal tenga licencia GPL y luego algún subdirectorio tenga licencia BSD?

(B) Si no solo tuviera que vincular a las bibliotecas, sino utilizar y combinar el código BSD y GPL de una manera más complicada, ¿qué hacer con LICENSE.txt entonces?

El texto BSD de 3 cláusulas dice: "Las redistribuciones del código fuente deben conservar el aviso de copyright anterior, esta lista de condiciones y el siguiente descargo de responsabilidad". aparentemente, debería conservar el aviso de copyright y esa lista de condiciones, en algún lugar. Pero también tendré que poner el archivo txt de licencia GPL en alguna parte.

Además, aparentemente no necesito retener la "Redistribución y uso en forma de fuente y binario, con o sin modificación, siempre que se cumplan las siguientes condiciones:" parte del texto de la licencia BSD, ya que solo me dice que retener las otras partes.

Entonces, ¿cómo y en qué archivos de texto debo organizar en la práctica el texto de la licencia GPL y las partes de la licencia BSD y los derechos de autor que conservo?

EDITAR: Entonces, en el caso B, tomaría el código con licencia BSD de 3 cláusulas y lo redistribuiría bajo GPL, lo cual está permitido, ya que la licencia BSD de 3 cláusulas es (unidireccional) compatible con GPL . Solo estoy preguntando cómo tratar los textos de licencia y los archivos de texto en la práctica.


Esta es una mala idea. Una simple búsqueda en la web le mostrará por qué. Pero todo el producto se convierte en GPL. Ha habido problemas con esto antes.
Andrew T Finnell

2
@ Andrew Finnell: ¿Por qué es una mala idea? Todo el producto es GPL, ya que un componente lo es, pero ¿qué tiene de malo? La biblioteca con licencia BSD todavía tiene licencia BSD. Las personas no usan licencias BSD a menos que quieran que sus cosas sean utilizables por personas que quieren usar licencias más restrictivas.
David Thornley

Respuestas:


1

Por simplicidad, probablemente sea mejor lanzar todo bajo GPL. La licencia BSD de 3 cláusulas no tiene forma de copia izquierda, por lo que está dentro de sus derechos de cambio de marca, siempre y cuando mantenga su notificación.

Terminarás con dos tipos de archivos:

  • Originalmente archivos BSD: necesita tener ambos encabezados, el orden no es importante que yo sepa, solo que están allí
  • Sus archivos y originalmente archivos GPL: deben tener el encabezado GPL

Y, por supuesto, para cualquier versión binaria, deberá incluir un enlace a la fuente y ambos encabezados de alguna otra forma. Recomendaría la GPL estándar, seguida de "Partes de este programa se lanzaron originalmente bajo la siguiente licencia" o algo así, es probable que pueda encontrar ejemplos de que esto suceda en la naturaleza si lo busca.

Tenga en cuenta que no soy abogado, ni me especializo en licencias de código abierto o licencias en general. Simplemente estoy transmitiendo cómo sería mi interpretación de la licencia otorgada combinada.


1

Ok, leer la sección 7 de GPLv3 , sí permite "permisos adicionales [que] se aplican solo a parte del Programa" [1]. Por lo tanto, mantener algunos de los archivos o directorios bajo la licencia BSD parece estar bien, ya que supongo que "hacer lo que quieras" de la licencia BSD es un "permiso adicional".

Además, la sección 7 permite "complementar los términos de esta Licencia con los términos:" (sigue una lista de 6 puntos del tipo de términos permitidos), y todas las 3 cláusulas (+ el descargo de responsabilidad) de la licencia BSD están cubiertas, por lo que en caso de mezclar código BSD y GPL en un solo archivo, tal vez solo necesite poner un ADDITIONAL_TERMS.txt en algún lugar, que contenga las 3 cláusulas + descargo de responsabilidad de la licencia BSD.

(Para ser más precisos, todo el tiempo que he hablado sobre la licencia BSD, me refería a la licencia de 3 cláusulas AKA "Nueva licencia BSD" AKA "Licencia BSD modificada", a la que me vinculé en mi pregunta).

[1] Siempre y cuando un destinatario del programa pueda eliminar los permisos adicionales si redistribuye más. Y la licencia BSD lo permite.


-1

Esto simplemente no es posible de acuerdo con múltiples interpretaciones de los términos de la licencia.

gnu.org dice para la versión 2:

Porque impone un requisito específico que no está en la GPL; a saber, el requisito en los anuncios del programa. La GPL establece:

No puede imponer ninguna otra restricción al ejercicio de los derechos de los destinatarios otorgados en este documento.

La cláusula publicitaria proporciona una restricción adicional y, por lo tanto, es incompatible con la GPL.

La licencia BSD revisada no tiene la cláusula publicitaria, lo que elimina el problema.

y para GPL v3 :

¿Por qué la licencia BSD original es incompatible con la GPL? (#OrigBSD)

Porque impone un requisito específico que no está en la GPL; a saber, el requisito en los anuncios del programa. La Sección 6 de GPLv2 establece:

No puede imponer ninguna otra restricción al ejercicio de los derechos de los destinatarios otorgados en este documento.

GPLv3 dice algo similar en la sección 10. La cláusula publicitaria proporciona una restricción adicional y, por lo tanto, es incompatible con GPL.

La licencia BSD revisada no tiene la cláusula publicitaria, lo que elimina el problema.

Otros abogados / jueces, por supuesto, pueden tener opiniones diferentes.


1
¿Estás seguro de que no estás hablando de la licencia BSD de 4 cláusulas? "Ni el nombre de la <organización> ni los nombres de sus colaboradores pueden usarse para respaldar o promocionar productos derivados de este software sin un permiso previo por escrito específico". no se refiere a la publicidad de ninguna forma o forma, y ​​en realidad está relacionado con la marca registrada de la organización, no con los derechos de autor del código fuente.
Guvante

1
¡En efecto! ¡Estaba confundido (nuevamente) sobre las diferentes revisiones!
johannes
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.