views:

273

answers:

7

I'm looking for a license that has the following requirements:

  1. is viral.

  2. your code must be open source.

  3. you must let the author know and credit the author.

  4. if you distribute and you use this source code you must use this license.

  5. even if you re-implement but you use the same ideas and concepts then you must also use this license.

  6. even if only provide as a service then you must also use this license.

Would such a license already exist?

+2  A: 

For no. 2 you might want to look into AGPL. For #1, I sincerely hope that such a thing does not exist.

+2  A: 

There is no license with satisfy the first requirement, to monopolize the idea and concept you need a patent. The second requirement can be satisfied with the Afero GPL (not GPL combitable).

tomjen
+1  A: 

Regarding point 1, there is no such license, and indeed one cannot exist as far as I know. I believe you are looking for a software patent, which is a very different thing.

Noldorin
A: 

For requirement number 1, I'm not looking for a patent because I would like the license to be viral. That is you can re-implement the concept and ideas only if your work is also under this same license.

AGPL seems very interesting. Thank you very much.

Alex K
+8  A: 

1,2,3,4 and 6 are available under the Affero public license.

5 is a patent.

Crashworks
A: 

The AGPL (GNU Affero public license linked by Crashworks) gives you what you are looking for, except for #5. The concept of a license relies on copyright, and your rights as the author to distribute your works under the terms that you specify (for the length of the copyright - currently 70 years in the US, I believe). It also doesn't give you half of #3 (inform the author) as far as I know.

However, depending on the case, #5 is not covered by copyright. Its a little grey given the tersness of your statement but if it doesn't qualify as a derivitive work in the legal defintion, the license won't matter, copyright doesn't cover "ideas and concepts" in the abstract.

You can register a patent (if the idea is patentable and you want to spend the money). The AGPL includes patent rights, so if you registered the patent and include an implementation of the patent in the source code, then essentially you are getting what you want out of #5 as well.

But any patent won't include all "ideas and concepts." Likely only one or two big ones, if any.

Yishai
A: 

You cannot force someone to accept your license. A person would normally only consider doing so if the license permits them to do something that they cannot otherwise legally do, such as use or distribute your software. If a person can legally implement the same ideas and concepts, which fortunately they generally can do if they are not patented, then the existence of a license that they did not agree to and have no need to agree to has no bearing on them.

Most existing free software would probably not exist if software licenses had some magical ability to prevent implementation of the same ideas and concepts, and license the implementation under some other license.

mark4o