Licencias de Linux (Licencias de Software Libre)


El sistema operativo GNU/Linux y el Kernel de Linux usan la licencia GPL de la Free Software Foundation(FsF), aquí les hablare mas a detalle sobre la historia de la Licencia GPL y sus distintas versiones.

Historia

La GPL fue creada por Richard Stallman en 1989 para proteger los programas liberados como parte del proyecto GNU. La GPL original se basó en la unificación de licencias similares utilizadas en versiones anteriores de GNU Emacs, GNU Debugger y de GNU C Compiler.​ Estas licencias contenían disposiciones similares a las actuales GPL, pero eran específicas para cada programa, haciéndolos incompatibles, a pesar de ser la misma licencia. El objetivo de Stallman era producir una licencia que pudiera ser aplicada a cualquier proyecto, por lo que es posible utilizarlas en muchos proyectos para compartir código.

La segunda parte de esta licencia, versión 2, fue liberada en 1991. Durante los siguientes 15 años, los miembros de la comunidad FOSS comenzaron a preocuparse con los problemas en la GPLv2 que permitían explotar software GPL con intenciones contrarias a la licencia.​ Estos problemas incluían tivoización, que es la inclusión de software con GPL en hardware que rechazará ejecutar versiones modificadas de su software, problemas de compatibilidad como ocurre con la licencia Affero General Public License; y las disputas por patentes entre Microsoft y distribuidores de código libre y abierto, lo que se consideró como un intento de usar las patentes como arma contra la comunidad FOSS.

Históricamente, la familia de licencias de la GPL ha sido una de las licencias de software más populares en el software libre de dominio.​ La tercera versión de esta licencia (GNU GPLv3) fue desarrollada para tratar de resolver estos problemas y fue lanzada oficialmente el 25 de julio de 2007. Esta es la primera licencia copyleft para uso general, lo que significa que los trabajos derivados solo pueden ser distribuidos bajo los términos de la misma licencia.

Versión 1

La versión 1 de GNU GPL, fue presentada el 25 de febrero de 1989,​ impidió lo que eran las dos principales formas con las que los distribuidores de software restringían las libertades definidas por el software libre. El primer problema fue que los distribuidores publicaban únicamente los archivos binarios, funcionales y ejecutables, pero no entendibles o modificables por humanos. Para prevenir esto, la GPLv1 estableció que cualquier proveedor de software libre además de distribuir el archivo binario debía liberar a su vez código fuente entendible y que pudiera ser modificado por el ser humano, bajo la misma licencia (secciones 3a y 3b de la licencia).

El segundo problema era que los distribuidores podían añadir restricciones adicionales, ya fuera añadiendo restricciones a la licencia o mediante la combinación del software con otro que tuviera otras restricciones en su distribución. Si esto se hacía, entonces la unión de los dos conjuntos de restricciones sería aplicada al trabajo combinado entonces podrían añadirse restricciones inaceptables. Para prevenir esto, GPLv1 obligaba a que las versiones modificadas en su conjunto, tuvieran que ser distribuidas bajo los términos GPLv1 (secciones 2b y 4 de la licencia). Por lo tanto, el software distribuido bajo GPLv1 puede ser combinado con software bajo términos más permisivos y no con software con licencias más restrictivas, lo que entraría en conflicto con el requisito de que todo software tiene que ser distribuido bajo los términos de la GPLv1.

Versión 2

Según Richard Stallman, el mayor cambio en GPLv2 fue la cláusula “Liberty or Death” («libertad o muerte»), como la llama en la sección 7 de ese documento.​ Esta sección dice que si alguien impone restricciones que le prohíben distribuir código GPL de tal forma que influya en las libertades de los usuarios (por ejemplo, si una ley impone que esa persona únicamente pueda distribuir el software en binario), esa persona no puede distribuir software GPL. La esperanza es que esto hará que sea menos tentador para las empresas el recurrir a las amenazas de patentes para exigir una remuneración de los desarrolladores de software libre.

En 1991 se hizo evidente que una licencia menos restrictiva sería estratégicamente útil para la biblioteca C y para las bibliotecas de software que esencialmente hacían el trabajo que llevaban a cabo otras bibliotecas comerciales ya existentes.​ Cuando la versión 2 de GPL fue liberada en junio de 1991, una segunda licencia Library General Public License fue introducida al mismo tiempo y numerada con la versión 2 para denotar que ambas son complementarias. Los números de versiones divergieron en 1999 cuando la versión 2.1 de LGPL fue liberada, esta fue renombrada como GNU Lesser General Public License para reflejar su lugar en esta filosofía.

Versión 3

A finales de 2005, la Free Software Foundation (FSF) anunció estar trabajando en la versión 3 de la GPL (GPLv3). El 16 de enero de 2006, el primer borrador de GPLv3 fue publicado, y se inició la consulta pública. La consulta pública se planeó originalmente para durar de nueve a quince meses, pero finalmente se extendió a dieciocho meses, durante los cuales se publicaron cuatro borradores. La GPLv3 oficial fue liberada por la FSF el 29 de junio de 2007.

Según Stallman los cambios más importantes se produjeron en el campo de las patentes de software, la compatibilidad de licencias de software libre, la definición de código fuente, y restricciones de hardware respecto a las modificaciones de hardware.​ Otros cambios están relacionados con la internacionalización, cómo son manejadas las violaciones de licencias, y cómo los permisos adicionales pueden ser concedidos por el titular de los derechos de autor. También añade disposiciones para quitar al DRM su valor legal, por es posible romper el DRM en el software de GPL sin romper leyes como la DMCA.​

El proceso de consulta pública fue coordinado por la Free Software Foundation con asistencia de Software Freedom Law Center, Free Software Foundation Europe, y otros grupos de software libre. Los comentarios del público fueron recolectados a través del portal gplv3.fsf.org.

Durante el proceso de consulta pública, 962 comentarios fueron presentados para el primer borrador.​ Finalmente, al final del proceso se alcanzó la cifra de 2,636 comentarios.

El tercer borrador fue liberado el 28 de marzo de 2007. Este borrador incluye mecanismos destinados a evitar acuerdos relativos a las patentes, como el controvertido acuerdo entre Microsoft y Novell y restringe las cláusulas anti-tivoización a una definición legal de un "usuario" o "producto de consumo". También elimina la sección de "Limitaciones geográficas", cuyo probable borrado se había anunciado en el lanzamiento de la consulta pública.

El cuarto borrador,​ que fue el último, fue liberado el 31 de mayo de 2007. Introdujo la compatibilidad con las Licencias Apache, clarificó el rol de los contratistas externos, y hace una excepción para evitar los problemas provocados por el acuerdo Microsoft-Novell, estableciendo en el párrafo 6 de la Sección 11 lo siguiente:

Usted no puede distribuir un trabajo amparado si usted forma parte de un acuerdo con un tercero que está en el negocio de la distribución de software, bajo el cual usted hace el pago a la tercera parte sobre la base de la extensión de la actividad de distribución del trabajo, y en virtud del cual la otorgue, a cualquiera de las partes que recibirían el trabajo amparado, una licencia de patente discriminatoria.

El objetivo de esto es hacer este tipo de acuerdos ineficaces. La licencia está orientada a que Microsoft tenga que extender las licencias de patentes para garantizar a los clientes de Novell el uso de GPLv3, lo que es posible únicamente si Microsoft es distribuidor legal del software bajo GPLv3.​

Algunos desarrolladores de alto nivel del núcleo Linux, comentaron e hicieron declaraciones públicas a los medios de comunicación sobre sus objeciones a los borradores 1 y 2.