Look in the sidebar on the right and you'll see a number of entries for the FLOSS software which runs this blog, Chyrp. Some years ago I wrote some extensions to the base platform, known as 'modules', and released them for free use by others under a ee_software_licence|suitable licence version 3 of the GPL.
At the point I first used the base software – and forked it to add my own tweaks and improvements – Chyrp was also available under the GPL.
So far, so good: I retain full copyright on my work and offer a free licence to others to use it without charge so long as they meet certain conditions, once of which is that under the terms of the GPL any changes others may make to my code are also made freely available to everyone (including myself.)
Now move the clock hands forward four years or so, up to this year. In starting my new blog at shehacks.com ] I decided to use the updated version of Chryp – 2.5beta1 instead of 2.1rc1 – and update my add-ons to suit. Which I have, but then as I was about to make them available to all realised I have an 'issue'.
Shortly after I created my branch of Chyrp, its founder changed the licence it was released under, from GPL to MIT, and where the former is a copyleft licence, the latter one is not, indeed it permits use within proprietary software which is something I object to on principle. All of which means that although I can continue to release my own 'modules' under the GPL it isn't so straightforward where I want to make improvements to the main core.
Looking at the various reference documents – including the GNU licence page ] – tells me that it is OK for Chyrp to have moved from GPL to MIT so long as the full agreement of all contributors had been obtained, but not otherwise. And personally I have no idea whether that was obtained or not (I did ask at the time). Now though I have to decide whether – against my personal principles on FLOSS development – to use two different licences on the same project, depending on whether they are 'core' or 'add-on', or to take some other approach.
That would be either creating a permanent GPL-fork, or not releasing any of the changes I make to the core at all. To me, FLOSS means making available to others the fruits of your labour to the greater benefit of all, and it is fine for a GPL-fork to draw in all of the changes which use the MIT licence as they are made, though not vice-versa.