¿Puedo incluir código con licencia GPL en un producto con licencia MIT?
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):
- Redistribución Gratis
- Código fuente
- Obras derivadas
- Integridad del código fuente del autor
- No discriminación contra personas o grupos
- No discriminación contra los campos de esfuerzo
- Distribución de licencia
- La licencia no debe ser específica de un producto
- La licencia no debe restringir otro software
- La licencia debe ser neutral en tecnología
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.
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í.
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.
¿Es correcto? ¿La GPL es más restrictiva que la licencia MIT?
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:
- Si desea restringir el uso de sus modificaciones, MIT puede ser más restrictivo que la GPL para la distribución y eso podría ser lo que está buscando.
- En caso de que desee asegurarse de que la libertad de su software no se vea restringida por los usuarios a los que lo distribuye, entonces es posible que desee liberarlo bajo GPL en lugar de MIT.
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;)