Venta de excepciones a la licencia GPL de GNU
por Richard StallmanLa venta de excepciones significa que el titular del copyright del código lo hace público bajo una licencia de software libre válida y ofrece aparte a los usuarios la opción de pagar para obtener el permiso de utilizar ese mismo código bajo condiciones diferentes; por ejemplo, condiciones que le permiten incluirlo en aplicaciones privativas.
Debemos hacer una distinción entre la práctica de vender excepciones y otra cosa que es fundamentalmente diferente: las extensiones o versiones puramente privativas de un programa libre. Estas dos actividades, incluso si son practicadas de forma simultánea por una empresa, son cuestiones diferentes. En la venta de excepciones, el mismo código al que se aplica la excepción está a disposición del público en general como software libre. Una extensión o una versión modificada que solo está disponible bajo una licencia privativa es software privativo, pura y simplemente, y es tan mala como cualquier otro software privativo. Este artículo se refiere a casos que involucran estricta y solamente la venta de excepciones.
También hemos de distinguir la venta de excepciones de la doble licencia, que significa publicar un programa bajo dos licencias a elegir. Con la doble licencia, el usuario puede elegir utilizar el programa bajo una u otra, o ambas en paralelo para actividades que tienen encaje en las dos. (Así, los redistribuidores normalmente transmiten las dos licencias.) Por ejemplo, Perl se ha distribuido durante muchos años bajo una licencia doble: las alternativas eran la GPL de GNU y la Artistic License. Esto ya no es necesario debido a que la versión 2 de la Artistic License es compatible con la GPL de GNU.
En la venta de excepciones, los términos de la excepción no constituyen una segunda licencia bajo la que se publica el programa. Esos términos solo están a disposición de aquellos usuarios que compran la excepción. La única licencia que lleva la versión publicada es la GPL de GNU, de modo que no hay doble licencia.
También debemos distinguir la venta de excepciones de la «excepción a la GPL» en el sentido habitual, la cual simplemente da a todos los usuarios permiso para ir más allá de las condiciones de la GPL de una manera específica. Estas excepciones se rigen por la sección 7 de la GPL de GNU. La venta de excepciones es jurídicamente independiente de la GPL de GNU. Para evitar confusiones, es mejor no referirse a las excepciones en venta como «excepciones a la GPL».
A partir de la década de los 90 he considerado que vender excepciones es aceptable, y en ocasiones lo he sugerido a las empresas. A veces, este enfoque ha hecho posible que programas importantes se hayan convertido en software libre.
El escritorio KDE se desarrolló en los años 90 basado en la biblioteca Qt. Qt era software propietario, y TrollTech cobraba por otorgar el permiso para integrarlo en aplicaciones privativas. TrollTech permitía el uso gratuito de Qt en aplicaciones libres, pero esto no hacía que el software fuera libre. Por lo tanto, los sistemas operativos completamente libres no podían incluir Qt, por lo que tampoco podían usar KDE.
En 1998 la administración de TrollTech reconoció que podían hacer que Qt fuera software libre y seguir cobrando por el permiso para integrarlo en software privativo. No recuerdo si la sugerencia vino de mí, pero ciertamente me alegró ver el cambio, el cual hizo posible el uso de Qt y en consecuencia de KDE en el mundo del software libre.
En un principio utilizaron su propia licencia, la Q Public License (QPL), bastante restrictiva para ser una licencia de software libre, e incompatible con la GPL de GNU. Más tarde cambiaron a la GPL de GNU; creo que les había explicado que iba a funcionar para ese propósito.
La venta de excepciones depende fundamentalmente del uso de una licencia copyleft para la publicación de software libre, como la GPL de GNU. Una licencia con copyleft permite la integración en un programa más amplio sólo si el software se publica bajo esa licencia; de esa manera se asegura que las versiones extendidas también serán libres. Así, los usuarios que desean hacer privativo el programa combinado necesitan un permiso especial. Sólo el titular del copyright puede concederlo, y la venta de excepciones es una forma de hacerlo. Otra persona, que haya recibido el código bajo la GPL de GNU u otra licencia copyleft, no puede conceder la excepción.
Cuando oí hablar por primera vez acerca de la práctica de la venta de excepciones, me pregunté si era ética. Si alguien compra una excepción para integrar un programa a otro programa privativo más amplio, está haciendo algo que no es bueno (es decir, convertir el software en privativo). ¿Se deduce que el desarrollador que vendió la excepción también está haciendo algo mal?
Si esa implicación fuera correcta, se aplicaría también a la publicación del mismo programa bajo una licencia de software libre sin copyleft como la licencia X11, que también permite tales integraciones. De modo que, o tenemos que concluir que está mal publicar cualquier cosa bajo la licencia X11 —una conclusión que me parece inaceptablemente extrema— o rechazar la implicación. La utilización de una licencia sin copyleft comporta debilidad y por lo general no es una elección óptima, pero no es contraria a la ética.
En otras palabras, la venta de excepciones permite la integración limitada de código en programas privativos, pero la licencia X11 va aún más lejos: permite el uso ilimitado del código (y versiones modificadas del mismo) en el software privativo. Si esto no hace que la licencia X11 sea inaceptable, tampoco hace que la venta de excepciones sea inaceptable.
Existen tres razones por las cuales la FSF no practica la venta de excepciones. Una es que no conduce al objetivo de la FSF, que es asegurar la libertad para cada usuario de nuestro software. Para eso se escribió la licencia GPL de GNU, y la manera de lograrlo completamente es publicando bajo la GPL versión 3 o posterior, y no permitiendo la inserción en software privativo. No lo lograríamos con la venta de excepciones, así como tampoco con la publicación del software bajo la licencia X11. Así que normalmente no hacemos ninguna de esas cosas: publicamos solo bajo la licencia GPL.
Otra razón por la que sólo publicamos software bajo la GPL es para no permitir extensiones privativas que podrían ofrecer ventajas prácticas respecto a nuestros programas libres. Los usuarios que no consideran que la libertad sea un valor, podrían elegir las versiones que no son libres en lugar de los programas libres en las que se basan, y así perder su libertad. No queremos alentar eso.
Hay casos esporádicos en que, por razones específicas de estrategia, decidimos que el uso de una licencia más permisiva en un determinado programa es mejor para la causa de la libertad. En esos casos, publicamos el programa para todo el mundo bajo esa licencia permisiva.
Esto se debe a otro de los principios éticos de la FSF: tratar a todos los usuarios por igual. Una campaña altruista por la libertad no debe discriminar, por lo que la FSF se compromete a otorgar la misma licencia a todos los usuarios. La FSF no vende excepciones; cualquiera que sea la licencia o las licencias que usemos para publicar un programa, están disponibles para todo el mundo.
Pero no es necesario que insistamos en que las empresas sigan este principio. Considero la venta de excepciones como algo aceptable para una empresa, y la sugeriré cuando sea apropiada como una manera de lograr que los programas sean libres.