Mira casi cualquier paquete de CTAN y verás LPPL en el campo de licencia: es la licencia de LaTeX en sí y de la gran mayoría de los paquetes. Es software libre, pero con una idea poco común en el centro: proteger la garantía de que un archivo con un nombre dado se comporta igual en todas partes.
Qué es la LPPL
La LPPL (The LaTeX Project Public License) es la licencia bajo la cual se distribuyen el núcleo de LaTeX y los paquetes estándar, redactada por el LaTeX Project. La versión actual es 1.3c (publicada el 2008-05-04; 1.3, 1.3a y 1.3b difieren solo en detalles menores). Es una licencia de software libre: la FSF la reconoce como libre, está aprobada por la OSI, cumple con Debian (DFSG) y su identificador SPDX es LPPL-1.3c. Sin embargo, no es compatible con la GPL: su requisito de que las versiones modificadas se identifiquen como cambiadas (más abajo) es una condición adicional que la GPL no permite. También es la licencia más común en CTAN.
La idea central: proteger la integridad de los archivos
¿Por qué imponer una condición que no tienen las licencias libres habituales? Porque el valor de TeX descansa en la reproducibilidad: una fuente .tex dada debería producir el mismo resultado dondequiera que se componga. Si alguien distribuyera un article.cls modificado con el mismo nombre, esa garantía se rompería y aparecería el “a mí me compila, pero a ti se te rompe”. La LPPL evita exactamente eso.
En las versiones antiguas (1.0-1.2), esto era una estricta “cláusula de nombre de archivo”: un archivo modificado tenía que cambiar de nombre. La versión 1.3 lo relajó: ahora un componente modificado debe identificarse clara e inequívocamente como modificado, tanto en la fuente como al ejecutarse de forma interactiva (en registros o banners), y debes documentar los cambios (por ejemplo, incluir un changelog). En la práctica, renombrar un fork sigue siendo la forma más segura de cumplir.
El modelo de mantenimiento
Otra característica distintiva de la LPPL es un mecanismo para declarar el estado de mantenimiento. Cada obra tiene un Current Maintainer, y el estado puede ser uno de tres: maintained (alguien asume el mantenimiento y acepta informes de errores), author-maintained (solo el autor original puede mantenerla) o unmaintained (sin mantenedor, o inalcanzable durante seis meses sin señales de actividad). CTAN recomienda “maintained” por encima de “author-maintained” para que la obra siga siendo útil a la comunidad.
Este mecanismo permite que la comunidad se haga cargo de un paquete abandonado. Si una obra está unmaintained, la licencia establece un camino claro: (1) hacer esfuerzos razonables para encontrar al mantenedor actual, por ejemplo mediante una búsqueda en internet; (2) si eso falla, anunciar en las comunidades relevantes la intención de mantenerla; y (3) si ni el mantenedor original ni el titular de los derechos se oponen en tres meses, puedes convertirte en el nuevo Current Maintainer. Está diseñado para que el ecosistema siga avanzando aunque desaparezca un autor.
Aplicarla a tu propio paquete
Publicar tu propio .sty/.cls bajo la LPPL es sencillo. Pon una nota como la de abajo al comienzo de cada archivo, licéncialo como “1.3c or any later version”, elige el estado maintained y nombra al Current Maintainer y los archivos que componen la obra. Esa es la forma que CTAN espera (también eliges la licencia al subirla). Ten en cuenta que la LPPL no es dominio público: puedes usarla libremente, pero siguen aplicándose las obligaciones anteriores de identificación y documentación.
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License, either version 1.3
% of this license or (at your option) any later version.
% The latest version of this license is in
% https://www.latex-project.org/lppl.txt
% and version 1.3c or later is part of all distributions of LaTeX
% version 2005/12/01 or later.
%
% This work has the LPPL maintenance status 'maintained'.
% The Current Maintainer of this work is M. Y. Name.
%
% This work consists of the file mypkg.sty.