Here is the context of this question: I have code that is to be sold for profit, but I wish to make it available/free to individuals and non-profits, as long as their code remains free.
When a library is released under the GPL v2, can a company use it internally for free? If they develop software based on it, do they have to release it under the GPL, even if they don't distribute it? Can they make money by using (not distributing) internally developed software that links to the GPL'ed library, without any compensation for the author?
I am looking for a software license that only allows non-commercial uses (copy, modify, link to); the resulting derived programs must also be free for non-commercial uses. Is there any software license that does this for non-commercial uses, and prevents any commercial use (including using the software in order to make money)? It looks like the Creative Commons licenses are flexible enough to do something close to that, but I've read against using them for software. What do you think?
Or maybe is it possible to simply write something like the following?
"This work is released under a dual license:
- For non-profit uses: the GPL v2 license.
- For other uses: another license, as long as it is obtained from the original author."
Would this effectively make the program free for non-profit uses (copy, modification, usage,…), while leaving the door open to commercial uses?
Edit: PS: After reading all the answers and looking for information on the web, I decided that the relevant concept for this question is dual licensing. There is a host of information on the internet about it, and in particular about how the GPL can fit (or not) in a dual license.