La licencia MIT es compatible con GPL. ¿La licencia GPL es compatible con MIT? es decir, puedo incluir código con licencia MIT en un producto con licencia GPL, pero ¿puedo incluir código con licencia GPL en un producto con licencia MIT?
Me parece que la principal diferencia entre la licencia MIT y la GPL es que el MIT no requiere modificaciones de código abierto, mientras que la GPL sí. ¿Es eso correcto? ¿La GPL es más restrictiva que la licencia MIT?
Respuestas:
Es cierto, en general. No tiene que abrir el código fuente de sus cambios si está usando GPL. Puede modificarlo y usarlo para su propio propósito siempre que no lo esté distribuyendo. PERO ... si lo distribuye, entonces todo su proyecto que está utilizando el código GPL también se convierte en GPL automáticamente. Lo que significa que debe ser de código abierto, y el destinatario obtiene los mismos derechos que usted, lo que significa que pueden dar la vuelta y distribuirlo, modificarlo, venderlo, etc. Y eso incluiría su código de propiedad que entonces no ya no sea propietario, se convierte en código abierto.
La diferencia con MIT es que incluso si realmente distribuye su código propietario que utiliza el código con licencia MIT, no tiene que hacer que el código sea de código abierto. Puede distribuirlo como una aplicación cerrada donde el código está encriptado o es binario. La inclusión del código con licencia MIT se puede cifrar, siempre que lleve el aviso de licencia MIT.
Sí mucho así.
fuente
Usted puede. GPL es software libre, así como MIT, ambas licencias no le restringen a reunir el código donde "incluir" siempre es bidireccional.
En los derechos de autor para una obra combinada (es decir, dos o más obras forman juntas una obra), no hace mucha diferencia si una obra es "más grande" que la otra o no.
Por lo tanto, si incluye el código con licencia GPL en un producto con licencia MIT, al mismo tiempo incluirá también un producto con licencia MIT en el código con licencia GPL.
Como segunda opinión, el OSI enumeró los siguientes criterios (con más detalle) para ambas licencias (MIT y GPL):
Ambos permiten la creación de obras combinadas, que es lo que has estado pidiendo.
Si la combinación de las dos obras se considera un derivado, ambas licencias tampoco lo restringen.
Y ambas licencias no restringen la distribución del software.
La GPL no requiere que publique sus modificaciones solo porque las realizó. Eso no es preciso.
Puede mezclar esto con la distribución de software bajo GPL, que no es lo que ha preguntado directamente.
Así es como lo entiendo:
En lo que respecta a la distribución, debe colocar todo el paquete bajo GPL. El código MIT dentro del paquete seguirá estando disponible bajo MIT, mientras que la GPL se aplica al paquete en su conjunto si no está limitado por derechos superiores.
"Restrictivo" o "más restrictivo" / "menos restrictivo" depende mucho del punto de vista. Para un usuario de software, el MIT puede dar como resultado un software más restringido que el disponible bajo GPL, incluso algunos llaman a la GPL más restrictiva hoy en día. Ese usuario en específico llamará al MIT más restrictivo. Es subjetivo decirlo y diferentes personas te darán diferentes respuestas a eso.
Como es subjetivo hablar sobre restricciones de diferentes licencias, debería pensar en lo que le gustaría lograr en su lugar:
Mientras seas el autor, eres tú quien puede decidir.
Entonces, la persona más restrictiva es el autor, independientemente de la licencia por la que alguien esté optando;)
fuente
Tiene razón en que la GPL es más restrictiva que la licencia MIT.
No puede incluir el código GPL en un producto con licencia MIT. Si distribuye un trabajo combinado que combina código GPL y MIT (excepto en algunas situaciones particulares, por ejemplo, 'mera agregación'), esa distribución debe cumplir con la GPL.
Puede incluir el código con licencia MIT en un producto GPL. Todo el trabajo combinado debe distribuirse de manera compatible con la GPL. Si ha realizado cambios en las partes MIT del código, se le solicitará que publique la fuente de esos cambios si distribuye una aplicación que contenga códigos GPL y MIT.
Si usted es el propietario de los derechos de autor del código GPL, por supuesto, puede optar por liberar ese código bajo la licencia MIT; en ese caso, es su código y puede publicarlo con tantas licencias como desee.
fuente
IANAL pero como yo lo veo ...
Si bien puede combinar código GPL y MIT, la GPL está contaminando. Lo que significa que el paquete en su conjunto tiene las limitaciones de la GPL. Como eso es más restrictivo, ya no puede usarlo en software comercial (o más bien de código cerrado). Lo que también significa que si tiene un proyecto MIT / BSD / ASL, no querrá agregar dependencias al código GPL.
Agregar una dependencia GPL no cambia la licencia de su código, pero limitará lo que las personas pueden hacer con el artefacto de su proyecto. Esta es también la razón por la cual la ASF no permite dependencias del código GPL para sus proyectos.
http://www.apache.org/licenses/GPL-compatibility.html
fuente