He encontrado una biblioteca GPL (sin licencia dual), que hace exactamente lo que necesito. Desafortunadamente, la licencia GPL en la biblioteca es incompatible con la licencia de una biblioteca diferente que uso. Por lo tanto, he decidido reescribir la biblioteca GPL, por lo que la licencia se puede cambiar.
Mi pregunta es: ¿Qué tan extensos deben ser los cambios en la biblioteca para poder cambiar la licencia? En otras palabras, ¿cuál es la forma más barata de hacer esto?
Respuestas:
No soy abogado, pero AFAIK si ha visto el código de la biblioteca GPL, cualquier biblioteca de emulación que escriba estará contaminada y un juez puede declararla obra derivada si es demasiado similar en su agradecimiento.
Entonces, el proceso sería escribir una especificación funcional y hacer que alguien que no haya visto el código GPL escriba la biblioteca.
Editar: Tenga en cuenta que con la forma en que formula su pregunta "¿Qué tan extensos deben ser los cambios en la biblioteca para poder cambiar la licencia?" la respuesta es AFAIK clara: haga lo que haga, si solo modifica la biblioteca, debe respetar el término de la licencia, lo que le permite modificarla en primer lugar.
fuente
La solución habitual a este problema es ponerse en contacto primero con el propietario de la biblioteca y preguntar si se lo entregarán bajo una licencia diferente.
Si está trabajando en un proyecto de código abierto donde la GPL no es compatible, entonces hay una buena posibilidad de que lo hagan, algunos proyectos terminan con una licencia de GPL solo porque parecía la mejor opción.
Por supuesto, esto se aplica a ambas bibliotecas. Obtener la licencia permisiva licencias dobles bajo una menos permisiva no debería ser un problema.
Si está trabajando con un producto comercial, muchos autores de bibliotecas le darán una versión bajo una licencia diferente, si los compensa adecuadamente.
fuente
Entiendo que si comienza con un trabajo y lo modifica, no importa cuán extensas sean las modificaciones, el resultado final es un trabajo derivado del original. Deberá escribir la biblioteca desde cero. Si escribe la biblioteca desde cero, pero ha visto el código, entonces si es demasiado similar, nuevamente puede ser demandado por infracción de derechos de autor.
Estas reglas no son específicas del software, se aplican a todo tipo de derechos de autor.
No soy abogado, y este no es un consejo legal. Posiblemente tampoco estoy en su jurisdicción, y siempre debe dudar de los consejos legales que se ofrecen en Internet. Si desea tener asesoramiento legal confiable, deberá pagar a un abogado.
fuente
IANAL, pero sé que en los EE. UU., Ningún grado de modificación creará un trabajo no derivado. Si tiene algún código copiado de la biblioteca anterior o tiene una similitud interna suficiente que lo metería en problemas por plagio en una clase de la Universidad, entonces no está cerca de un nuevo trabajo. Cambiar algunos nombres de funciones o variables no hará nada, tampoco moverá trozos de código en la fuente. Tendría que volver a crearlo independientemente para tener una oportunidad. IOWs, tendrías que mirar solo las interfaces que proporciona y decidir cómo proporcionar esa funcionalidad y volver a crearla de esa manera para tener una oportunidad. Incluso entonces, es posible que no estés fuera de peligro si alguien realmente se preocupa y se enoja.
Al final, su mejor opción es contactar al autor de la biblioteca y esperar que pueda encontrar un acuerdo para obtener una licencia más permisiva de la biblioteca.
fuente
Si todo lo demás sugerido aquí (solicitar doble licencia, reescritura) no es aceptable, recuerde que todavía no es un caso claro si la vinculación dinámica con el programa / biblioteca patentada se considera trabajo derivado. La FSF dice que sí, pero muchos abogados (incluido Lawrence Rosen) lo han cuestionado.
Para que pueda vincular su software con la biblioteca GPLed, luego asegúrese de que el código fuente para él se distribuya con cada copia de su software. Si alguien lo demanda, tiene que demostrar que su comprensión de este aspecto complicado y turbio de la GPL es correcta. Como parece (por ejemplo, Galoob vs Nintendo) no puedes estar absolutamente seguro de qué hace que la derivada funcione y qué no.
fuente
La única forma en que no se derivaría el trabajo sería si reescribiera el código completo usted mismo sin usar ninguno del código original. Lo cual es probablemente inviable.
Hay formas mucho más fáciles de evitar la GPL:
También tenga en cuenta que GPL es una licencia de distribución , por lo que solo necesita licenciar su trabajo si distribuye binarios a terceros. Y solo está obligado a divulgar la fuente a ellos, sin obligación de divulgarlo al público en general, a menos que libere binarios al público en general. Si usa su código, por ejemplo, solo en sus servidores, no tiene la obligación de liberar ningún código. Así es como, por ejemplo, Google lo hace con sus kernels Linux ajustados.
fuente
IANAL y, en cualquier caso, esto puede no significar nada legalmente, pero creo que en el libro "Hackers" de Steven Levy, él describe cómo, en un momento, RMS escribió el código * nix por dinero durante el día y por la noche escribió lo mismo cosas en casa para que pueda ser parte de ... ¿GNU? ... esto fue antes de Linux ... algún sistema de tipo Unix gratuito. Creo que tuvo que hacer que el código de inicio fuera diferente al código de día, pero básicamente estaba haciendo exactamente lo que usted sugiere.
Esto probablemente tampoco importa legalmente, pero ... No estoy seguro de si Apple y / o Microsoft obtuvieron permiso / licencia o algo así, pero no los laboratorios Bell inventaron la interfaz de escritorio / icono / mouse, que se utilizó para Mac (¿o Lisa?) que luego fue utilizada por Microsoft.
fuente
No hay respuesta a esto, excepto para un juicio ante un juez en su jurisdicción particular. ¿Pero quieres arriesgarte? O haga el esfuerzo de reescribir la biblioteca GPL, las pruebas, etc., etc. ¿Está seguro de que la otra biblioteca es incompatible con la GPL? En realidad, esto es bastante inusual, a menos que desee distribuir ambas bibliotecas bajo los términos de las bibliotecas no GPL.
fuente
En la mayoría de las partes del mundo, debe comenzar desde cero y no cortar y pasar nada. Necesita nuevos nombres para funciones / clases / variables, etc., y la estructura debe ser diferente. Entonces estás a salvo.
Por otro lado, si una herramienta de diferencias no puede encontrar ninguna similitud, entonces ...
fuente