Estoy buscando una licencia de código abierto para una biblioteca que quiero publicar. Idealmente, uno debería poder usar esta biblioteca en aplicaciones gratuitas o comerciales sin pagarme una tarifa, pero si se crea algún trabajo derivado de la biblioteca (cualquier mejora de la biblioteca, por ejemplo), debería estar disponible para todos bajo esa misma licencia
En otras palabras, quiero poner la siguiente ética: "Usted se beneficia de este trabajo de forma gratuita, y si lo mejora, yo también puedo beneficiarme de su mejora de forma gratuita". Es una licencia tipo copyleft que estoy buscando.
La licencia MIT parece una posible solución, pero no me queda claro si los trabajos derivados del código cubierto por esta licencia DEBEN estar disponibles PÚBLICAMENTE para todos. ¿Alguien puede aclarar / confirmar esto? Si hay otra licencia de código abierto más apropiada que cubra mis necesidades, también estoy interesado. Gracias.
fuente
Respuestas:
La licencia MIT no requiere que los trabajos derivados sean de código abierto. Estás buscando la GPL .
fuente
Respuesta corta
Una combinación de la Licencia pública de Eclipse y la LGPL garantiza exactamente lo que desea: las modificaciones de su código deben estar disponibles, pero el uso del código en un producto más grande no obliga a que el producto más grande se vuelva a licenciar. La combinación es necesaria para permitir que el código se use en proyectos GPL y no GPL.
Esta es una forma en que proyectos como JGraphT lo han hecho. Renuevan su proyecto bajo EPL y LGPL. La motivación y el procedimiento se describen en su wiki .
Respuesta larga
Creo que la Licencia pública de Mozilla ( MPL ) o la Licencia pública de Eclipse ( EPL ) es la licencia que está buscando, porque "si se crea algún trabajo derivado de la biblioteca (cualquier mejora de la biblioteca, por ejemplo), [ES ] puesto a disposición de todos con la misma licencia ".
La licencia MPL y EPL se encuentra entre GPL y MIT.
MIT permite al usuario hacer todo con él, incluida la modificación, venta y no devolver el código modificado a la comunidad.
GPL obliga al usuario a regalar todo el código a la comunidad, incluso si su biblioteca es solo el 1% de todo el producto.
LGPL obliga al usuario a regalar la modificación de la parte LGPL del código.
MPL y EPL son similares a LGPL: también obliga al usuario a hacer que la fuente modificada esté disponible. "Fuente modificada" incluye solo la parte del código cubierto por MPL / EPL. Eso significa que el usuario puede crear un nuevo producto a partir de su biblioteca. Si modifica la parte MPL- / EPL, tiene que publicarla. Las cosas nuevas de él no necesitan ser publicadas.
Siento que el MPL / EPL es más apropiado, ya que LGPL habla explícitamente de "bibliotecas" y MPL solo habla del "Software cubierto" (que es un alcance más amplio).
Sin embargo, elegir EPL causa problemas al combinar el software con el software GPL: el EPL no es compatible con GPL . Este no es el caso si solo usa el MPL .
Si desea asegurarse de que su código pueda usarse tanto en proyectos GPL como no GPL, obtenga una licencia doble del código bajo LGPL y EPL como se describe en la respuesta breve.
Ejemplos
qooxdoo. Están planeando "simplificar y modernizar los términos de licencia de qooxdoo" y, por lo tanto, cambian de licencia dual a MIT.fuente