Question

Let's say I wanted to close my "GPL v 2.0 (or similar)" licensed project, to which I'm the only contributor, and make it closed source.

  • Do I still need to make the existing "GPL v 2.0 (or similar)" licensed code available after closing the project or can I refuse giving out the source code for old revisions that was previously "GPL v 2.0 (or similar)" licensed?

  • Can I theoretically keep the the code "GPL v 2.0 (or similar)" licensed even after removing the public source code or do I have to distribute the source code if I'm using a "GPL v 2.0 (or similar)" license?

Était-ce utile?

La solution

There are two cases in which it is possible to effectively change the copyright license on existing code.

  1. The existing copyright license gives you the right to change the license or to sub-license the code. The GPL licenses do not fall in this category of licenses.

  2. You are one of the copyright holders on the code and all copyright holders explicitly agree to the license change. If you ever accepted contributions from others without an explicit re-assignment of the copyright, then you the copyright on those contributions belongs to the person that wrote the contribution and you are bound by the license terms that were in effect when the contribution was made.
    If you want to change the license, you must get permission from all contributers. If any one of them refuses permission, then you must either remove their contributions entirely or forget about the license change.

In both cases, the license change only applies to future versions.

If you don't fall in any of the two categories above, then you can not change the license.


There is one additional possibility to keep your code secret:
Copyright licenses govern what others can do with code you own. They are only relevant when you distribute the code (either in binary or source code form). If you don't distribute your own code, you don't need to bother to think about copyright licenses and if you use code owned by others but you don't redistribute it, then you only need to pay attention to the right to modify or make derived works. In all open-source licenses, any requirements on providing the source code is tied to distribution of your changes and don't apply if you don't distribute.

The key here thus is distribution of the program/library. Different licenses have different notions of what constitutes distribution, ranging from giving out copies to allowing remote access to the program.

But in all cases, if an organization makes tools for internal use, then allowing employees to use those tools is not considered distribution under copyright law. This means that you don't need to release the code for internal tools, even if those tools make use of GPL-licensed code.

Autres conseils

There is a good, long, accepted answer already. This is a short answer.

Yes, as the sole copyright owner you can change the licence for all future distributions. You cannot change history.

Yes, if you have ever distributed binaries without source code under GPL then the obligation to provide source code of that version to those who relied on it is permanent. It never goes away.

What happens in the future depends absolutely on what licence you choose for any future distributions and (for you alone) is not affected by what you did in the past.

This is really a legal question and I am not a lawyer. But from what I understand about contracts and software licenses in general:

(1) If you release software under an open-source license, then unless that license says that you have the right to revoke it -- in which case I don't think it would qualify as "open source" by definition -- then you cannot revoke the old license. You could certainly decide to stop providing new versions under open source. So you could take the open source product, use it as the basis for a new project, and then continue development of the new project as copyrighted software. But the portions that were released under open source would still be open source.

As I say, I'm not a lawyer, but I say this based on common understanding of contracts. If I sell you my used car for $2000, I can't come back a year later and say that I've changed my mind and I want another $1000 for it. We made a deal, a contract, and once it's agreed to I can't unilaterally change the terms. But just because I sold you a used car for $2000 doesn't mean that I am obligated to charge exactly $2000 for every future used car I might want to sell.

(2) Just because you released an open source project does not mean that you are obligated to continue to make the source available forever. There are lots of projects that have been started but then discontinued because the project became obsolete, the developer lost interest, the web site where it was being distributed went out of business, etc. Anyone who already has a copy could re-distribute it himself. Just like, if I give $20 to the Salvation Army today, I am under no obligation to give to them again next year. But I can't take back the money I gave them last year.

Only the copyright holder or copyright holder can ever sue you for license violations. So if all the copyright holders agree, they can do whatever they want with their license, and nobody can do anything about it. If someone else is the copyright holder, you have to agree with their license.

Now if I received a copy of your software with for example GPL license, any license changes that you make don't retroactively change my license. I still have the right to use my copy of the software according to the license. I may have problems: If I don't have the source code, and you refuse to give it to me, then I cannot distribute the software, because I'm incapable of fulfilling the terms of the GPL license.

If someone received a copy of your software with GPL license and source code, and they are willing to share, then you can in practice not turn this into closed source, other than by convincing everyone in possession of the source code to delete their code.

Licencié sous: CC-BY-SA avec attribution
scroll top