¿Por qué actualizar a GPL Versión 3?
Richard Stallman

La versión 3 de la Licencia Pública General de GNU (GPL) estará pronto terminada, permitiendo la actualización de paquetes de software libre desde la versión 2. Este artículo explica por qué es importante actualizar la licencia.

Primero de todo, es importante decir que la actualización es opcional. La versión 2 de GPL seguirá siendo una licencia válida, y no ocurrirá ningún desastre si algunos programas se mantienen bajo GPLv2 mientras otros pasan a GPLv3. Estas dos licencias son incompatibles, pero ésto no es un problema serio.

Cuando decimos que la GPLv2 y la GPLv3 son incompatibles, significa que no hay manera legal de combinar código bajo GPLv2 con código bajo GPLv3 en un único programa. Ésto es así porque ambas, GPLv2 y GPLv3 son licencias «copyleft»: cada una de ellas dice, "Si incluye código bajo esta licencia en un programa mayor, el programa mayor debe liberarse también bajo esta licencia". No hay manera de hacerlas compatibles. Podemos añadir una cláusula de compatibilidad con GPLv2 a la GPLv3, pero ésto no funcionaría porque la GPLv2 necesitaría una cláusula similar.

Afortunadamente, las incompatibilidades entre licencias solo son aplicables cuando quieres enlazar, unir o combinar código de dos programas diferentes en uno solo. No hay problema en usar conjuntamente programas liberados bajo GPLv2 y GPLv3 en un mismo sistema operativo.. por ejemplo, la licencia de Tex y la de Apache son incompatibles con la GPLv2, lo que no impide usar Tex y Apache en un mismo sistema junto con Linux, Bash y GCC. Ésto es así porque son programas diferentes. Asimismo, si Bash y GCC cambian a GPLv3, mientras Linux se mantiene bajo GPLv2, no habría ningún conflicto.

Mantener un programa bajo GPLv2 no creará problemas. La razón para migrar son los problemas existentes que abordará la GPLv3.

Uno de los mayores peligros que bloqueará la GPLv3 es la tivoización. Tivoización significa computadoras (llamadas "dispositivos") que contienen software cubierto por la GPL que no se puede cambiar, porque el dispositivo se apaga si detecta software modificado. El motivo más común para la tivoización es que el software tenga características que el fabricante piensa que no le gustan a mucha gente. Los fabricantes de estas computadoras disfrutan de las ventajas que proporciona el software libre, pero no te permiten a ti hacer lo mismo.

Hay quien argumenta que la competencia entre dispositivos en un mercado libre debería ser suficiente para mantener las funcionalidades desagradables en un nivel bajo. Quizá la competencia pueda evitar funcionamientos erróneos arbitrarios o sin sentido como "Debe apagarse entre las 13:00 y las 17:00 de cada jueves", pero incluso así, poder elegir al amo no significa libertad. La libertad significa que tú controlas lo que hace tu software, no solamente que puedes suplicar o amenazar a alguien que decide por tí.

En el área crucial de la gestión de restricciones digitales (DRM) -- características desagradables diseñadas para restringir el uso de datos en su computadora -- la competencia no es de ninguna ayuda, porque la competencia relevante está prohibida. Bajo la "Digital Millenuium Copyright Act" y leyes similares, es ilegal, en E.E.U.U. y en otros países distribuir reproductores de DVD a mente que limiten el uso de acuerdo a las reglas oficiales de la conspiración DVD (su página web es http://www.dvdcca.org/, pero parece que sus reglas no están publicadas allí.). El público no puede rechazar DRM comprando reproductores sin DRM, porque no hay ninguno disponible. No importa entre cuántos productos pueda elegir, todos tienen grilletes digitales equivalentes.

La GPLv3 asegura que eres libre de quitarte los grilletes. No prohíbe el DRM, ni ningún otro tipo de característica. No pone límites en las funcionalidades sustantivas que puede añadir o quitar a un programa. En su lugar, se asegura de que usted es tan libre para eliminar características indeseables como lo fué el distribuidor de su copia para incluirlas. La tivoización es la manera en la que ellos te niegan esa libertad; para proteger su libertad, GPLv3 prohíbe la tivoización.

la prohibición de la tivoización se aplica a cualquier producto que vayan a usar los consumidores, incluso ocasionalmente. LA GPLv3 tolera la tivoización únicamente para aquellos productos cuyo uso tenga sentido casi exclusivamente para empresas y organizaciones. (El último borrador de la GPLv3 estipula explícitamente este criterio.)

Otra amenaza que a la que se resiste la GPLv3 son los acuerdos de patentes, como el acuerdo novell-Microsoft. Microsoft usar sus miles de patentes para hacer pagar a los usuarios de GNU/Linux por el privilegio, e hizo este trato para intentar conseguirlo. El acuerdo ofrece a los usuarios de Novell protección limitada ante las patentes de Microsoft.

Microsoft cometió unos pocos errores en el acuerdo Novell-Microsoft, y la GPLv3 está diseñada para volverlos en contra de Microsoft, extendiendo y limitando esa protección limitada ante patentes a toda la comunidad. Para sacar partido de ésto, los programas necesitan usar GPLv3.

Los abogados de Microsoft no son estúpidos, la próxima vez pueden conseguir evitar esos errores. Por eso GPLv3 dice que no existe una «próxima vez». Liberar un programa bajo la versión 3 de la GPL lo protege de futuros intentos de Microsoft de que los redistribuidores recauden «royalties» a los usuarios de los programas.

La GPLv3 también proporciona a los usuarios protección explícita ante patentes de los colaboradores o distribuidores del programa. Con la GPLv2 los usuarios dependen de una licencia de patente implícita para asegurarse de que la empresa que les proporcionó una copia no les demandará a ellos, o a las personas a las que éstos redistribuyan copias, por incumplimiento de patentes.

La licencia de patente explícita en la GPLv3 no llega tan lejos como nos hubiera gustado. Lo ideal sería que hubiéramos hecho que cualquiera que distribuya código cubierto bajo la GPL renuncie a todas las patentes de software, junto con todos aquellos que no redistribuyen código bajo GPL. Las patentes de software son un vicio y un sistema absurdo que pone a todos los desarrolladores de software en peligro de ser demandados por compañías de las que nunca han oido hablar, así como por todas las megacorporaciones del sector. Los grandes programas habitualmente combinan miles de ideas, así que no es sorprendente que implementen ideas cubiertas por cientos de patentes. Las megacorporaciones acumulan miles de patentes, y usan esas patentes para abusar de desarrolladores más pequeños. Las patentes obstaculizan el desarrollo de software libre.

La única manera de hacer el desarrollo de software sobre seguro es abolir las patentes de software, y nuestro objetivo es conseguirlo algún día. Pero no podemos hacerlo por medio de una licencia de software. Cualquier programa, libre o no, puede morir a manos de una patente de software de un tercero, y la licencia del programa no puede evitarlo. Sólo las decisiones judiciales o los cambios en las leyes sobre patentes pueden hacer que el desarrollo de software libre esté a salvo de las patentes. Si hubiéramos tratado de hacer ésto con la GPLv3 habría fallado.

Por tanto, la GPLv3 busca limitar y canalizar el peligro En particular, hemos tratado de salvar el software libre de un destino peor que la muerte: convertirse de modo efectivo en propietario a través de las patentes. La licencia de patente explícita de la GPLv3 asegura a las empresas que usen la GPL para dar a sus usuarios las cuatro libertades no puedan cambiar de rumbo y usar sus patentes para decirle a algunos usuarios «ésto no te incluye a ti.» Ésto también les impide conspirar con otros propietarios de patentes para hacerlo.

Son ventajas adicionales de la GPLv3 la inclusión de mejor internacionalización, un acabado más amigable, soporte para BitTorrent y compatibilidad con la licencia Apache. (Para más información consulte gplv3.fsf.org.) Con todo, hay razones más que suficientes para actualizarse.

No se pretende que no haya más cambios una vez que la GPLv3 se libere. Si se presentan nuevas amenazas para el desarrollo libre de los usuarios, tendremos que desarrollar la versión 4 de la GPL. Es importante asegurarse de que los programas no tengan problemas para actualizarse a GPLv4 cuando llegue el momento.

Una forma de conseguir ésto es liberar un programa bajo "GPL versión 3 o cualquier otra versión posterior". Otro método es elegir a un apoderado de entre todos los colaboradores de un programa, que pueda decidir sobre la actualización del mismo a una versión futura de la GPL. De una u otra forma, los programas deberían proporcionar esta flexibilidad para el futuro.

Copyright 2007 Richard Stallman Verbatim copying and distribution of this entire article are permitted worldwide without royalty in any medium provided this notice is preserved. Copyright 2007 Richard Stallman Se permite la copia literal y la distribución de este artículo completo en todo el mundo sin coste por derechos de autor en cualquier medio manteniendo esta anotación.

Traducción por Carlos Galisteo de Cabo, la traducción se distribuye en los mismos términos que el documento original, incluyendo esta anotación.