I know I should not expect a lawyer's notice here, but programmers advices would suit me well enough.

I want to publish a program which is derivated from a GPL-licensed program. I understand from the GPL legal notice that the whole work is to be licensed under GPL as well.

Now, I'd rather publish my work under a more permissive license — namely, I don't care about attribution. It seems to me that CC0 or WTFPL licenses, for instance, don't need the work to be considered as a whole, right ? So as they are compatible with the GPL, in principle I could just say something like (in addition to the GPL notice) the following :

This work is GPL as a derivative work of foobar. In addition, modifications with regards to the original foobar are WTFPL/CC0.

Would this be valid licensing ?

1 Answer 1


The usual IANAL applies.

Yes, according to http://www.gnu.org/licenses/license-list.html both of these licenses are compatible with the GPL, so based on that it is possible to incorporate code using them in a GPL project.

See http://www.gnu.org/licenses/gpl-faq.html#WhatDoesCompatMean for the explicit declaration of that possibility:

It means that the other license and the GNU GPL are compatible; you can combine code released under the other license with code released under the GNU GPL in one larger program.

The practicalities of this are interesting. The next bit is just opinion, but I personally wouldn't feel comfortable making something in the order of a one-line or two-line change to an otherwise GPL function, and declaring that one-line or two-line change to be under another license. On the other hand, if I could split all of my code changes/additions off to a separate module, then I'd feel more comfortable with being able to license that separate module differently.

There are real-world examples of this kind of release. E.g. in id Software's Quake III Arena source code release, the entire release is - of course - a GPL release, but certain modules are released under other licenses.

Here's tr_animation.c (GPL): https://github.com/id-Software/Quake-III-Arena/blob/master/code/renderer/tr_animation.c

And here's md4.c (RSA): https://github.com/id-Software/Quake-III-Arena/blob/master/code/qcommon/md4.c

It's worth reading the readme to see how the overall licensing of these items was handled: https://github.com/id-Software/Quake-III-Arena/blob/master/README.txt

And as always, consulting with a lawyer knowledgable about software licenses is utterly essential to ensure that you don't overstep the bounds of what you are permitted to do.

  • First thanks for the link to the license list according to the GNU, there are interesting comments in there. Jul 21, 2013 at 13:22
  • Well, if it was only for a one-line or two-line change I would have rather asked the original author to include them. In this particular case the whole purpose of the program has been changed. I'll see if I can split the code, this is a very interesting suggestion. But actually I thought the whole program should be made GPL because the binary using GPL code should be GPL itself ? Jul 21, 2013 at 13:26
  • Oh, and I think both projects are modest enough for not worrying too much about legal issues, it's just that I'd like to make things properly. ;) Jul 21, 2013 at 13:28

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.