Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

Suppose someone writes some code, and publishes it as open source under the GPL. Later they decide to close source their application and put it for sale. Is that in violation of the GPL? All code in the closed source app was written by the said author. Since he "owns" the code, I would think he can choose to re-license it however he wishes. Is that right?

share|improve this question

migrated from stackoverflow.com Aug 5 '11 at 2:11

This question came from our site for professional and enthusiast programmers.

Did you check the FAQ? –  Sicarius Noctis Aug 4 '11 at 23:24
Closest FAQ I found was this, which seems to support the answers: gnu.org/licenses/gpl-faq.html#ReleaseUnderGPLAndNF –  mikew Aug 5 '11 at 1:17
Lol at the "To release a non-free program is always ethically tainted, but legally there is no obstacle to your doing this. If you are the copyright holder for the code, you can release it under various different non-exclusive licenses at various times." :) –  Sicarius Noctis Aug 5 '11 at 2:07
Example application available under both GPL and proprietary licenses: Ghostscript. Skip to History. –  Rick Sladkey Aug 5 '11 at 3:50
You've got a bunch of good answers already, but the one thing I'll add is that of course, if the author decides to go closed source, the old code is still out there under the GPL, but if he continues to progress the closed source version, the old GPL version will soon start to look quite outdated and lame compared to the "for sale" version. –  Carson63000 Aug 5 '11 at 4:15

4 Answers 4

Yes, if they wrote it, they own the copyright (unless they have assigned that copyright to someone else, of course, like their employer). The GPL confers extra rights to non-copyright-holders over and above what copyright law gives them.

The copyright owner is never technically in violation of the GPL since they have all the rights they need under copyright law.

What they can't do is to pull back the code already released under GPL, that would be covered by estoppel (basically: if someone does something based on a promise you made, you can't later withdraw that promise - it's an equitable thing).

But they can re-licence their code as much as they want, selling it commercially or even not releasing later versions at all.

Keep in mind I am not a lawyer (though I deal with them quite a bit), I am certainly not your lawyer, and this advice is worth every cent you paid for it (which is zero).

share|improve this answer
Estoppel: en.wikipedia.org/wiki/Estoppel –  Nicholas Carey Aug 4 '11 at 23:33

Yes. The author can change their licensing terms at any time for any reason.

What happens to previous revisions of the code that were already distributed to others under the GPL is more of a gray area, however. The author can indicate that they no longer want their previous versions distributed, but they cannot legally require others to comply with this request. And in practical terms, once something is out there on the Internet, there's no reigning it back in regardless.

share|improve this answer

You could try reading the GPL. Version 3 is at http://www.gnu.org/copyleft/gpl.html

The short answer is "NO". The grant of license is in perpetuity. The GPLv3 makes this explicit; earlier versions did not. Legal issues aside, once you've published your source code on the InterTubes with a license saying "go to town", there's the practical issue: how are you going take it back?

2. Basic Permissions.

All rights granted under this License are granted for the term of copyright on the Program, and are irrevocable provided the stated conditions are met. This License explicitly affirms your unlimited permission to run the unmodified Program. The output from running a covered work is covered by this License only if the output, given its content, constitutes a covered work. This License acknowledges your rights of fair use or other equivalent, as provided by copyright law.

Note: I'm no lawyer. I don't even play one on TV. This advice is worth every penny you paid for it. You need to consult an attorney who knows something about copyright law if the answer to this question is actually important.

share|improve this answer
He can't UN-GPL the released code BUT the author does still own the copyright and can additionally use and license the code however he wants. –  Martin Beckett Aug 5 '11 at 3:51
"The GPL" is both a contract and an offer for such a contract. The "irrevocable" applies to the contract, not the offer. There are probably laws in your jurisdiction that deal with the withdrawal of offers. –  MSalters Aug 5 '11 at 7:45
-1? really...for quoting the GPL's own terms? –  Nicholas Carey Aug 5 '11 at 17:21
No, he can't withdraw the offer either. If he could withdraw the offer, that would prevent any further distribution of the code by new recipients which would defeat the entire purpose of the GPL. GPL section 6 makes this explicit. "Each time you redistribute the Program (or any work based on the Program), the recipient automatically receives a license from the original licensor to copy, distribute or modify the Program subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein." –  David Schwartz Aug 21 '11 at 7:01

If you own the code and you have GPL'd it, you can't take it back. The best you can do is grant yourself (or someone else) the right to develop the code further under a closed model.

There was a semi-famous case of a few years back, with some software I actually use called pchdtvr. The guy who wrote it was a pretty good guy, but he tried to revoke the GPL from his code and basically got flamed right off the net. (Angry people basically forced him to shut down his domain, and he disappeared.) You could search for the package or search for his email, inkling@nop.org.

So, closing your code and putting it up for sale is no problem. Trying to stop people from giving away your GPL'd code? Big problem.

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.