¿Cuándo es tu código un "Trabajo derivado"? [cerrado]


Estoy tratando de averiguar en cuál de estos casos entran en juego las ramificaciones legales del "trabajo derivado". ¿Cuándo es exactamente mi código un trabajo derivado ?

  • Un framework PHP publicado bajo la GPL.

¿No es esa GPL inválida ya que PHP tiene su propia licencia y usted está usando PHP para construir ese framework?

  • Un tema de Wordpress comercial?

No es que un "Trabajo derivado" y por lo tanto no es válido porque wordpress es GPL?

  • Una clase comercial que se inserta en un framework GPL existente - sin embargo, no incluye referencias a ese framework dentro de esa clase.

¿Es una obra derivada?

Verá, originalmente pensé que todo el código construido sobre (o construido para) algo era código derivado, pero eso no es cierto. Por ejemplo, Apple usa partes de Linux en su sistema operativo, pero su sistema operativo no está publicado bajo la GPL.

La mayoría de nosotros hemos construido bibliotecas para lenguajes o sistemas construido sobre esos lenguajes. Entonces, ¿cuándo nuestro código se convierte en un derivado del código de otra persona?

Author: Xeoncross, 2009-12-11

9 answers

IANAL. Una cosa a recordar: varios proyectos trazan explícitamente una línea alrededor del concepto de "trabajo derivado" para limitar lo que puede implicar.

Por ejemplo, cada programa que se ejecuta en el kernel de Linux termina incluyendo el código del kernel en el programa operativo debido a la forma en que los programas se ejecutan en los sistemas operativos. Para facilitar la escritura de un programa, se suele utilizar un archivo de cabecera al compilar el programa para que sepa cómo incorporar los bits del núcleo. Linus Torvalds ha declarado que este uso no hace del programa un trabajo derivado del núcleo.

En otros casos, como PHP (y C, en menor medida) el lenguaje no puede ser reclamado como un trabajo derivado de sus bibliotecas. Claro, puede llamar a strlen() y, en tiempo de enlace o tiempo de ejecución, su programa está vinculado a una biblioteca que no escribió. Pero el programa en sí no es un trabajo derivado del lenguaje o del tiempo de ejecución. En muchos casos, la biblioteca utilizada simplemente expone una implementación de un estándar, y por lo tanto la programa no es un derivado de esa biblioteca específicamente. Así que su programa de C que llama strlen() puede enlazar contra cualquier biblioteca de C que tenga un strlen() en ella. Su programa no es automáticamente un trabajo derivado de Glibc. Incluso PHP tiene múltiples implementaciones (El servidor web Resin viene con una implementación PHP en Java). Así que incluso si PHP fuera GPL su programa podría no necesitar serlo.

Un framework es realmente un conjunto extendido de bibliotecas y se aplicarían las reglas normales para las bibliotecas. Por ejemplo, si el framework es una implementación de un estándar, entonces tal vez distribuirlo con su aplicación es una violación de la GPL, pero simplemente usarlo no lo sería, ya que su aplicación es un derivado del estándar y no esta instancia específica del framework. Por ejemplo, una aplicación que usa EJBs puede ejecutarse en IBM WebSphere, JBoss de RedHat, Weblogic de Bea, etc., y no tener que cumplir con la licencia de JBoss. Tal vez el envío de JBoss y su aplicación en el mismo CD violaría la licencia para JBoss, pero su aplicación está libre de restricciones (a menos que incluya partes de JBoss en ella).

Si el framework en cuestión no es un estándar y nadie más lo implementa, y/o debe incluir partes del framework en su propio código, entonces su aplicación puede ser un trabajo derivado. Considere un módulo del kernel de linux: es difícil crear un módulo que no viole la GPL porque la mayoría de los módulos deben incluir código del kernel para hacer su trabajo. nVidia evita esto por crear un blob propietario que no tiene código de kernel en él, pero no es un módulo completamente funcional, y agrega algo de código GPL que lo convierte en un módulo. La mayoría de los desarrolladores del kernel consideran una violación de la GPL distribuir tanto el kernel como el controlador juntos (ya que se crea un trabajo derivado del kernel agregando un módulo, pero ese módulo no es GPL), pero distribuir el módulo por sí solo no crea un trabajo derivado hasta que es combinado por el usuario final, que ya no lo distribuye y por lo tanto no está obligado por ningún término de distribución.

Tenga en cuenta: no todos los proyectos tienen las mismas interpretaciones de las licencias que utilizan. Usted puede estar dentro de sus derechos legales para usar el código de una cierta manera de acuerdo con la licencia indicada, pero probablemente no desea ser demandado, por lo que en caso de duda consulte con un abogado los titulares de los derechos de autor originales.

 7
Author: Mr. Shiny and New 安宇,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2009-12-16 18:05:28

Editar para añadir: No soy abogado, no juego en la televisión, ni pretendo ser uno en Internet.

De la Ley de Derechos de Autor:

Un "trabajo derivado" es un trabajo basado sobre una o más obras preexistentes, como una traducción, musical arreglo, dramatización, ficcionalización, película versión, grabación de sonido, arte reproducción, abreviación, condensación, o cualquier otra forma en qué obra puede refundirse, transformado o adaptado. Trabajo consistente en revisiones editoriales, anotaciones, elaboraciones u otros modificaciones que, en su conjunto, representar una obra original de autoría, es una "obra derivada".

En inglés, de Wikipedia:

Un trabajo derivado perteneciente a derecho de autor, es una expresión creación que incluye importantes, elementos protegidos por derecho de autor de una original, creado previamente primero trabajo.

Ninguno de los que has mencionado sería derivado funciona porque su producto terminado no tiene nada allí que esté bajo los derechos de autor de otra persona ni se basó en los derechos de autor de otra persona. -- Las herramientas utilizadas, sin embargo, están bien.

Un ejemplo lateral: En una vida anterior, solía crear libros de audio y venderlos en Ebay. Me enviaron una orden de cese y desistimiento por vender versiones de audio de los libros de CS Lewis. A pesar de que lo que estaba vendiendo era original, estaba basado en texto con derechos de autor, y por lo tanto era un trabajo derivado.

 3
Author: Reverend Gonzo,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2009-12-11 19:02:20

El quid de la respuesta depende de si la distribución del nuevo trabajo incluye código del trabajo al que hace referencia. Parece que la GPL es específicamente lo que estás preguntando, así que nos quedaremos con eso.

Caso 1: Si crea un framework PHP e incluye código licenciado bajo la Licencia PHP en el código fuente que comprende ese framework, entonces su código sería un trabajo derivado. En el caso del código fuente PHP, eso significa que tendría que incluir el PHP información de licencia e identificar porciones de su código fuente que están licenciadas bajo la licencia PHP.

Si escribiste todo el código dentro del código fuente del Framework PHP del que estás hablando, puedes liberarlo bajo cualquier licencia que desees. La mayoría de los frameworks PHP (de mi breve búsqueda) parecen tener licencia BSD, pero nada le impide crear un framework propio con licencia GPL.

Caso 2: Los temas de Wordpress son GPL (al menos el código PHP es) http://wordpress.org/development/2009/07/themes-are-gpl-too /

Caso 3: Depende de lo que preguntes. Si estás preguntando si está bien crear una nueva clase que podría ser utilizada con un framework existente (y no hace referencia a nada en el framework en el que está destinado a ser incluido), pero no estás creando una nueva versión del framework, incluyendo la clase, y distribuyendo esta compilación modificada, entonces no, eso no sería un trabajo derivado.

Incluso si si lo incluyó, aún no tendría problemas de licencia hasta que decidió distribuir esa versión. En ese momento, tendría un trabajo derivado (ya que incluye otro código), y la licencia de ese código existente sería importante para determinar si se le permitiría hacerlo o no.

Podría ayudar un poco saber por qué se hace la pregunta, ya que hay una gran cantidad de qué pasaría si estuviera involucrado. Puede ponerse en contacto con la EFF o SFLC con preguntas específicas sobre situación específica.

 3
Author: drakaan,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2009-12-11 19:22:37

Verá, originalmente pensé que todo el código construido sobre (o construido para) algo era código derivado, pero eso no es cierto. Por ejemplo, Apple usa partes de Linux en su sistema operativo, pero su sistema operativo no está publicado bajo la GPL.

Si te refieres a gcc y al shell bash, estos no son parte de Linux. Estos son programas independientes, y el uso que Apple hace de ellos está sujeto a la GPL. Por ejemplo, si Apple hace modificaciones a gcc, estas modificaciones deben ser bajo licencia GPL.

Si Apple tomara prestadas partes del núcleo linux en su propio núcleo, por ejemplo, entonces tendrían que publicar su propio núcleo bajo GPL.

 1
Author: hasen,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2009-12-14 20:49:03

IANAL, pero mucho de esto es muy simple. Un trabajo derivado es algo basado en otra cosa, fundamentalmente. No significa algo creado por una obra preexistente, o algo separado que funciona con el original. Para repasar algunos de sus ejemplos....

La licencia PHP es para usar el lenguaje, presumiblemente el intérprete. Los programas escritos en PHP no son trabajos derivados, ya que no incorporan PHP ellos mismos, pero están escritos para trabajar con PHP y son interpretado por él. (Aun así, no hay razón para que no pueda haber varias licencias en el software, por lo que solo se puede usar bajo la intersección de las condiciones.)

No se sobre temas de Wordpress, pero suena como algo que crearías con Wordpress y usarías con Wordpress. Si incorporaran algo preexistente, como una plantilla, serían un trabajo derivado de la plantilla.

Un trabajo bajo una licencia privativa puede existir lado a lado con código GPL, pero la compilación crea un trabajo derivado del código fuente (no del compilador), y el enlace crea un trabajo derivado adicional. Por lo tanto, si usted tiene un ejecutable que contiene algún código GPL, es un derivado de ese código (entre otros) y por los términos de la GPL debe estar bajo la GPL.

De hecho, Apple no usa Linux en MacOSX. Su sistema operativo se basa en BSD, que es similar a Linux en función, pero un núcleo de sistema operativo diferente y con licencia diferente. Envían software GPL, como gran parte de su kit de desarrollo de software, pero cualquiera puede hacer eso. Una colección de programas independientes no es un trabajo real, y Apple (como cualquier otra persona) puede enviar software GPL bajo la GPL.

Si usted está enviando un producto que tiene algo que alguien más ha escrito en él, es un trabajo derivado. Si no, generalmente no lo es. No importa si usted utiliza otro programa para crear, o si necesita usar otro programa a utilizar, o si eres de envío el programa de otra persona junto con tus cosas.

 1
Author: David Thornley,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2009-12-14 21:17:50

Lo siento por la falta de respuesta-no puedo comentar la respuesta directamente.

OS X no está basado en Linux. Su núcleo se llama Darwin, que está basado en NeXTSTEP / BSD y es de código abierto: http://developer.apple.com/darwin /

Existe un proyecto llamado PureDarwin que publica una distribución completa basada en él.

 1
Author: Richard John,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2010-02-01 16:11:18

La licencia PHP no pone ninguna restricción en lo que haces con las cosas que construyes con ella. Si desea GPL algo que ha producido con PHP, no hay nada en la licencia PHP que lo detenga.

Tenga en cuenta también que incluso si lo hubiera, podría distribuir la forma fuente de su marco bajo la GPL muy bien - la licencia de una pieza de software en particular no se extiende al texto plano que puede o no puede ser utilizado como entrada al software.

IANAL, sin embargo.

 0
Author: Anon.,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2009-12-11 19:04:33

En teoría, la GPL requiere cualquier cosa que estáticamente enlaza a cualquier código bajo la GPL para ser liberado de nuevo a la comunidad GPL.

Http://63.249.85.132/open_source_license.htm

¿Significa esto que los scripts dinámicos como Ruby y PHP no están bajo esta licencia?

 0
Author: Xeoncross,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2009-12-12 00:24:20

La GPL es una licencia para la distribución de software propiedad del titular de los derechos de autor originales, siempre y cuando no distribuya el código GPL usted mismo, puede ignorarlo.

Si distribuye código GPL junto con código incompatible con la GPL, está violando la licencia y, por lo tanto, no está obteniendo el derecho a copiar, lo que significa que está cometiendo una violación de derechos de autor sobre el código GPL original. Su código sigue estando protegido por derechos de autor y disponible bajo cualquier licencia que elija, a menos que sea un trabajo derivado.

La GPL afirma que todo lo que enlaza con código GPL es un trabajo derivado, pero eso es dudoso por decir lo menos, especialmente si las interfaces a ese código son públicas.

Sin embargo, si su afirmación fuera apoyada en la corte, y por ejemplo bajo la Ley de Derechos de Autor japonesa, los autores originales obtendrían derechos de autor sobre todo su código, excepto el derecho moral a la modificación, lo que significa que serían libres de distribuir copias gratuitas de su código cualquiera que sea la licencia que haya utilizado para ello incluso si nunca distribuiste código GPL.

Tenga en cuenta que incluso si su código no es derivado a pesar de la vinculación, todavía estaría violando los derechos de autor del código GPL en la distribución. Sin embargo, podría distribuirlo a los usuarios del programa GPL para que hagan el enlace.

Aún más borroso es lo que sucede con el código que originalmente se derivó de otro código pero que ya no contiene nada del código original. La mayoría de la gente parece pensar que eliminar el código es suficiente, pero ¿lo es? Nadie lo sabe con seguridad.

 0
Author: jbcreix,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2009-12-17 06:01:17