Wednesday, June 16, 2010

Another possible change of license

A while ago I was playing around with the idea of switching my specific changes to a public domain license. PD is compatible with the GPL, and I believe that the bulk of the stuff I've rewritten is sufficiently different from ID's original code to be validly reclassified as an original work by this point in time.

I may yet do that, but for the time being I'm giving some serious consideration to moving up to version 3 of the GPL. This is allowed by the terms under which ID released the Quake source; with the following being included in the header of every Quake source file (my emphasis):

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.
The reasoning behind this is a debate on Inside3D over what exactly you are or are not allowed to link to in a GPL application. The specific problem is that the GPL 2 text on this is quite fuzzy, could be read in a permissive manner, or could be read in a quite stringent manner.

Now, my reading of it is that the intention was to prevent people from putting huge chunks of their source code changes into non-Free static libraries and linking to them from a GPL program that just contains a "main" function and anything else they're obliged to abide by the GPL with. Some of the more stringent readings would say that you can't even link to something like the DirectX SDK. There's a line being crossed somewhere here between the spirit of the law and the letter of the law.

GPL 3 explicitly clarifies the whole matter, and makes linking to other non-Free libraries allowable (within certain reasonable bounds; you probably still can't do what I've said above but you can link to non-Free 3rd-party libs). In the same spirit as that which motivated me to switch from OpenGL to Direct3D, it seems as though one way to avoid having to deal with any potential problems is to just take those problems completely out of the picture.

I'll confirm what's happening later on after I've thought about it more.

1 comments:

Spirit said...

When I saw this post's title in my feed reader I pledged to suggest PD. And then I read it. :-)

PD is a great thing if you want everyone to benefit from your work with no strings attached.