WordPress es software libre, sin embargo ¿es libre el ecosistema de themes y plugins que se ha generado a su alrededor?

Empecé a usar WordPress entre otras razones porque es software libre. Además está liberado bajo licencia GPL versión 2 o posterior, la misma licencia con la que libero el software que yo mismo programo. La licencia GPL incluye la condición de que cualquier obra derivada debe liberarse a su vez bajo la misma licencia GPL. De esta manera se asegura que el procomún digital que es el software libre siga nutriéndose.

Sin embargo muchos de los themes y plugins de WordPress no son software libre. Si los themes y plugins se consideran obras derivadas de WordPress deberían liberarse bajo la misma licencia GPL que WordPress, y por tanto ser software libre.

En este post explico cómo es esto posible y qué consecuencias tiene para usuarios y desarrolladores.

Licencias: GPL y split license

En 2010 Chris Pearson, creador del theme Thesis, uno de los más conocidos themes de pago del momento, y Matt Mullenweg, creador de WordPress, sostuvieron una discusión que definió la manera de licenciar themes y plugins en adelante. Chris Pearson sostenía que los themes que desarrollaba eran suyos y podía licenciarlos como quisiera. Matt Mullenweg argumentaba que, al ser obras derivadas de WordPress, debían licenciarse bajo GPL.

Una consulta al Software Freedom Law Center aclaró la situación: ambos estaban en lo cierto, en parte. Tanto los themes como los plugins están compuestos de archivos PHP, CSS, javascript, imágenes. Los archivos PHP interaccionan directamente con WordPress, llamando a funciones que están definidas en el código de WordPress, por lo tanto son claramente obras derivadas. Sin embargo el CSS, el javascript, las imágenes y otros tipos de archivos, al no ser dependientes de las funciones del paquete base de WordPress, no podían ser consideradas como obras derivadas, sino creaciones diferentes.

El Software Freedom Law Center opinaba que los desarrolladores de themes y plugins no estaban obligados a licenciar sus themes integramente como GPL: únicamente el PHP debía licenciarse como GPL, mientras que al resto de archivos se les podía aplicar otra licencia.

Esto dio lugar a una licencia partida o split license, que es la que se usa desde entonces para la mayoría de los themes comerciales. La split license consiste en licenciar una parte del código bajo GPL y otra bajo una licencia diferente, a elección del desarrollador. Por tanto, el software bajo split license no es libre. Y en respuesta y diferenciación a la split license se acuño la expresión 100% GPL.

¿Qué consecuencias tiene usar un theme o un plugin que no sea GPL?

La split license tiene varios problemas. Decir que un theme está licenciado bajo split license no es suficiente ni correcto, ya que en realidad la split license no es una licencia: lo único que quiere decir es que hay una parte que es GPL y otra que no lo es. Pero no define qué parte es GPL ni tampoco especifica la licencia de la parte que no es GPL, de manera que no permite conocer las condiciones de uso de esa parte.

Un desarrollador que quiera usar el modelo split license, deberá especificar la licencia para los archivos CSS, javascript, imágenes… Y al usar un theme que no sea 100% GPL, hay que leer detenidamente las condiciones de uso de la parte no GPL para saber qué se puede hacer y qué no con esa parte.

Personalmente creo que usar themes 100% GPL preserva el ecosistema de software libre de WordPress y además no está reñido con un modelo de negocio basado en el desarrollo de themes. Pero esto ya para otro post.