The Joomla! CMS Project recently announced a change in the policy for listing 3rd-party extensions on their popular JED site. The new policy requires that all 3rd-party extensions must use the GPL license in order to be listed on the directory. Furthermore, they will no longer accept extensions that contain encrypted code, which some open source software developers use to discourage individuals and warez sites from redistributing their software.
This came as no big surprise to me, as Joomla's overall policy on extension licensing, which was announced about 18 months ago, is that extensions to Joomla!, which is GPL, are, by definition, GPL since they are considered "derivative works."
While I personally have no problem with this new policy (other than wondering why GPL-compatible licenses are not allowed), I wondered if anyone had really thought about what the long term effect of a GPL-only policy would be on one of Joomla's often stated future goals. That being the desire to have the Joomla! CMS spawn a companion "application framework" upon which a number of diverse applications could be built.
One thought that crossed my mind while burning a minimal amount of brain cells thinking about this was:
What the current state of Linux (aka GNU Linux to the anal-retentive) would be had a decision not been made long ago to use LGPL licensing for the dynamic libraries? These libraries provide critical "application framework" for the vast majority of applications that run in Linux environments. This allows applications to run on Linux, whether their license is proprietary or one of the non-GPL open source variants.
Talking about Joomla's future application platform and Linux dynamic libraries might seem like a stretch to some. However I consider them both application platforms, albeit it at different levels of abstraction. One can visualize the Joomla! core as a higher level equivalent of the Linux kernel. That is, the Joomla! core provides the basic program control and input/output operations.
Having said this, let us talk a bit about the GPl in the context of PHP-based systems such as Joomla, and the barriers to licensing the prospective Joomla! application platform's APIs as LGPL, thus opening it up for use by proprietary and non-GPL open source application developers.
The Joomla! Project may indeed some day offer an application framework in addition to their current CMS software. However I do wonder how successful it will if the application framework's APIs remain under the GPL rather than using the LGPL or similar licensing.
Disclaimer: The above are my opinions. Furthermore if any of the technical points I've talked about are in error or inconsistent, it was done with no malice aforethought...just technical ignorance on my part!