Escogiendo una licencia y Aplicándola

Esta sección está concebida para ser una guía rápida y amplia sobre como escoger una licencia. Leed el Capítulo 9, Licencias, Copyrights y Patentes para entender en detalle las implicaciones legales de diferentes licencias y como la licencia escogida puede afectar la capacidad de otras personas de mezclar el programa con otro software.

Técnicamente, el primer término se refiere a las licencias confirmadas por la Free Software Foundation como las que ofrecen las "cuatro libertades" necesarias para el software libre (vea gnu.org/philosophy/free-sw.html), mientras que el segundo término se refiere a las licencias aprobadas por el Open Source Initiative como las que cumplen la Definición de Open Source (opensource.org/osd). Sin embargo, si usted lee la definición de la FSF de software libre, y la definición de la OSI del software de código abierto, se hace evidente que las dos definiciones delinean las mismas libertades — no es sorprendente, como lo explica “"Libre" vs "Abierto"” en el Capítulo 1, Introducción. El resultado inevitable, y en cierto sentido deliberado, es que las dos organizaciones han aprobado el mismo conjunto de licencias.[19]

Existen muchas licencias libres de donde escoger. Muchas de ellas no necesitamos tenerlas en consideración aquí, ya que han sido escritas para satisfacer las necesidades legales específicas de alguna corporación o persona, así que no serian apropiadas para nuestro proyecto. Por ello nos vamos a restringir a las más usadas. En la mayoría de los casos, querrás escoger una de ellas.

Las licencias "Haz lo que quieras"

29 August 2013: If you're reading this note, then you've encountered this subsection while it's undergoing substantial revision; see producingoss.com/v2.html for details. TODO: is MIT or BSD still really the best default, given the modern patent landscape? Would Apache-2.0 be better — but then what about the FSF's claim of GPL-incompatibility? Need to get some advice here.

Si se está conforme con que el código del proyecto sea potencialmente usado en programas propietarios, entonces se puede utilizar una licencia estilo MIT/X. Es la más sencilla de muchas licencias mínimas que no hacen más que declarar un copyright nominal (sin restringir la copia) y especificar que el código viene sin ninguna garantía. Id a “La MIT / X Window System License” para más detalles.

La GPL

Si no desea que el código sea utilizado en aplicaciones propietarias utilice la Licencia Pública General o GPL, versión 3 (gnu.org/licenses/gpl.html). La GPL es probablemente la licencia para software libre más reconocida a nivel mundial hoy en día. Esto es en si mismo una gran ventaja, ya que muchos usuarios potenciales y voluntarios ya estarán familiarizados con ella, por lo cual, no tendrán que invertir tiempo extra en leer y entender la licencia utilizada. Más detalles en “La GNU General Public License” en el Capítulo 9, Licencias, Copyrights y Patentes.

Cómo aplicar una licencia a nuestro software

Una vez que hayas elegido una licencia, tendrás que aplicarla al software.

Lo primero que debes hacer es presentar la licencia claramente en la primera página del proyecto. No es necesario incluir el texto real de la licencia allí; sólo dar su nombre y hacer que enlace con el texto de la licencia completa en otra página. Eso le dice al público bajo cuál licencia pretende distribuirse el software—pero esto no es suficiente para los efectos legales. El otro paso es que el propio software debe incluir la licencia.

La manera estándar de hacer esto es poner el texto de la licencia completa en un archivo llamado COPYING (o LICENSE) incluido con el código fuente, y luego poner un pequeño anuncio en un comentario en la parte superior de cada archivo fuente, mencionando la fecha de copyright, titular, y la licencia, y diciendo dónde encontrar el texto completo de la licencia.

Hay muchas variaciones de éste patrón, así que miraremos a un sólo ejemplo. La GPL de GNU indica que se debe colocar un aviso como éste al principio de cada fichero con código fuente:

Copyright (C) <year>  <name of author>

This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with this program.  If not, see <http://www.gnu.org/licenses/>

No dice específicamente que la copia de la licencia que recibió junto con el programa se encuentra en el archivo COPYING, o LICENSE, pero ahí es donde se suele poner. (Puede cambiar el aviso anterior para indicarlo directamente, pero no hay necesidad real de hacerlo)

En general, el aviso que se coloca en cada archivo fuente no tiene que ser exactamente como la de arriba, siempre que se inice con el mismo aviso de titular del copyright y fecha[20], indicar el nombre de la licencia, y dejar claro donde ver los términos completos de la licencia. Siempre es mejor consultar a un abogado, por supuesto, si es posible costear uno.



[19] En realidad, hay algunas diferencias menores entre los grupos de las licencias aprobadas, pero no son significativos para nuestros propósitos — o de hecho, a efectos prácticos. En algunos casos, una u otra organización simplemente no ha llegado a considerar una licencia determinada, por lo general una licencia que que no se utiliza ampliamente de todos modos. Y al parecer (eso me han dicho) hubo históricamente una licencia que, al menos, una de las organizaciones, y posiblemente ambas, acordó que encajaba una definición pero no la otra. Siempre que trato de obtener los detalles sobre esto, sin embargo, me parece que obtengo una respuesta diferente en cuanto a cuál era esa licencia, salvo que la licencia mencionada es siempre una que no tenía mucha gente utilizandola de todos modos. Así que hoy, para cualquier licencia que probablemente sea utilizada, los términos "aprobada por OSI" y "aprobada por la FSF" pueden ser tratados como que una implica la otra.

[20] La fecha debe mostrar la fecha en que el archivo se modificó, para los propósitos de derechos de autor. En otras palabras, para un archivo modificado en 2008, 2009 y 2013, podrías escribir "2008, 2009, 2013" —  no "2008-2013", ya que el archivo no ha sido modificado en la mayoría de los años en ese rango.