Si tu motivación principal al escribir software es ganar dinero en
cada instalación, entonces ten por seguro que estas licencias no están
hechas para ti. Pero si prefieres ayudar a la comunidad, hacer crecer
tu proyecto y recibir ayuda, código, parches y reportes de fallos de
desarrolladores y usuarios en todo el mundo, continúa leyendo.
Las GPL son buenas licencias para tu software Open Source pero desde
el inicio hasta ahora han ido creciendo en número. Este es el motivo
por el cual hay varios tipos de licencias GNU/GPL, las más populares
son: GPL, LGPL, y AGPL. Hay también varias versiones: la inicial
(también conocida como v1), v2 y la última v3.
Vamos a empezar desde el principio:
GPLv1:
La GNU General Public License (GNU GPL or simplemente GPL) versión 1
fue escrita originalmente por Richard Stallman en Febrero de 1989 para
su proyecto GNU y es la licencia para software libre más ampliamente
usada.
El preámbulo es muy explicito explicando las intenciones de la
licencia: garantizar tus libertades de compartir y modificar software
libre, y más tarde explica que free se refiere a libertad y no es
relativo al precio.
Aquí resumimos los términos y condiciones para copiar, distribuir y modificar los cuales son:
0 – A que programas aplica el acuerdo de licencia
1 – Puedes copiar y distribuir copia del código fuente
2 – Puedes modificar tu copia del programa o cualquier porción de esta
3 – Puedes copiar y distribuir el programa en código objeto o ejecutable si lo acompañamos con el código fuente completo
4 – NO puedes copiar, modificar, sublicenciar, distribuir o transferir el programa utilizando cualquier otra licencia no-GPL
5
– Copiando, distribuyendo o modificando el programa (o cualquier
trabajo basado en el programa) indicas tu aceptación de esta licencia
para hacerlo
6 – No puedes imponer cualquier otra restricción cada vez que redistribuyes el programa
7 – La Free Software Foundation puede publicar versiones nuevas y/o revisadas de la General Public License
8
– Si quieres incorporar partes del programa en otros programas libres
cuyas condiciones de distribución son diferentes, escribe al autor para
pedirle permiso
9 – EL PROGRAMA NO TIENE GARANTÍA ALGUNA, HASTA LOS LÍMITES PERMITIDOS POR LAS LEYES APLICABLES.
10
– EN NINGÚN CASO, SALVO REQUERIMIENTO POR LEYES APLICABLES O MEDIANTE
ACUERDO POR ESCRITO, PODRÁ UN POSEEDOR DE COPYRIGHT, O UN TERCERO QUE
MODIFIQUE O DISTRIBUYA EL PROGRAMA SEGÚN LO INDICADO ANTERIORMENTE,
HACERLE A USTED RESPONSABLE DE DAÑO ALGUNO
Aquí tenemos la principal diferencia entre la GPL y la LGPL (Library GNU Public License en su primera versión):
Cuando código licenciado bajo la GPL se combina o enlace con
cualquier otro código, este código también debe estar licenciado bajo
la GPL. A efectos, esta licencia pide que cualquier código combinado
con código CPL cae bajo la GPL.
Código licenciado bajo la LGPL puede
ser enlazado dinámica o estáticamente a cualquier otro código,
independientemente de su licencia, así como también se permite a los
usuarios ejecutar depuradores en el programa combinado. A efectos, esta
licencia reconoce una especie de frontera entre el código LGPL y el
código que está enlazado a él.
GNU Affero GPL, también conocida como AGPL:
La licencia AGPL fue diseñada para cerrar la evasión de los
proveedores de servicios de aplicación a la licencia GPL ordinaria, que
no obliga la distribución del código fuente cuando el software
licenciado con GPL sea usado para dar un servicio, típicamente
aplicaciones web.
Versión 2
GPLv2:
La GPL versión 2 fue publicada en Junio de 1991. Según Richard
Stallman, el mayor cambio en la GPLv2 era la claúsula «Liberty or
Death» en la sección 7.
Esta sección dice que si alguien tiene impuestas restricciones para
prevenir que distribuya software cubierto por la GPL de manera que
respete las libertades de otros usuarios (por ejemplo, si una normal
legal dice que el o ella sólo puede distribuir el software de forma
binaria), el o ella no lo podrán distribuir en absoluto.
LGPLv2:
En 1999 la versión 2.1 de la LGPL fue liberada, se le cambió el
nombre a la GNU Lesser General Public License para reflejar su sitio en
la filosofía. El principal propósito de esta licencia para librerías C
era permitir reemplazar las propietarias. Esta licencia era menos
restrictiva.
AGPLv2: No existe la AGPL versión 2
Version 3
La versión 3 fue liberada el 21 de Mayo del 2007. Esta versión
introduce cambios muy importantes a la versión 2, y los más importantes
podrían ser los relacionados con las patentes de software.
GPLv3:
Según Stallman, los cambios más importantes son en relación a
patentes de software, comatibilidad con licencias de software libre, la
definición de «código fuente», y restricciones hardware en la
modificación de software. Otros cambios están relacionados con la
internacionalización, como se manejan las violaciones de licencias, y
como se pueden garantizar permisos adicionales por el poseedor del
copyright.
Otros cambios notables incluyen el permitir a los autores añadir
ciertas condiciones adicionales o requerimientos a sus contribuciones.
LGPLv3:
LGPLv3 es más flexible y protectora. La principal diferencia, según
Simon Phipps, un desarrollador de OpenOffice: «Actualizar a la LGPLv3
trae nuevos protecciones a la comunidad de OpenOffice.org, las más
notables a través de la nueva patente de software que concierne al
lenguaje»
AGPLv3:
Tanto la GPLv3 como la AGPLv3 incluyen una clausula (13 en cada una
de ellas) que juntas logran la compatibilidad mutua de ambas licencias.
Estas clausulas permiten explícitamente la convivencia de ambas
licencias y el programa que surge como combinación mantiene las
restricciones de uso y distribución sobre redes especificados en la
AGPLv3.