开发者

Which licence should I use? [closed]

Closed. This question is opinion-based. It is not currently accepting answers.

Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.

Closed 7 years ago.

Improve this question

Say that I have made some software (which has both library form and can be used by end-user too).

Now before releasing I was thinking under which license can I release it.

I have the following concerns that I can think of (any more concerns can be added):

  1. Open source
  2. I should retain the complete credit as an auth开发者_C百科or,

    though extenders may extend and add their names in their contributions

  3. I should be still be able to make money.
  4. I can trade point 3 with popularity of the software.
  5. International license.

Thanks.


There are many licenses that do this. Start by filtering:

Condition (1) simply means choose any license approved by the Open Source Initiative http://www.opensource.org/

Condition (2) is a given - every license I know of forbids the removal of your copyright.

Condition (3) is also a given - all open source licenses allow commercial use, they just might not allow use in a closed source program. Additionally, you own the copyright, so you can relicense it under any other terms you prefer - for instance, you could release it under the GNU GPL, and then when you want to use it in a proprietary program, relicense it to yourself under another license. Another way of making money with open source is in fact to do this trick, but for a fee - if someone is willing to release their code under the GPL, they can use your code for free, otherwise they have to pay for a commercial-use license. What license is most appropriate depends on how you want to make money with your software, and if it is a stand-alone application or a library. One downside of the GPL relicensing trick is it is more difficult to take contributions - since normally you cannot relicense code someone else wrote under the GPL for your commercial licensing scheme; this only works if you soley own the copyright, either because you wrote everything yourself or got people to donate their copyright to you.

Condition (4), being popular, is not a factor of the license, but of the software. :)

Condition (5) should be met by any commonly used open source license. Most are not explicitly international, but I have never heard of any major troubles with common licenses.

So I'd say the real crux is (3). If you want to be able to sell proprietary versions of your software, but don't care if anyone else can too, use the BSD, MIT, or X licenses. This is straightforward and simple, and you can accept contributions under the standard license without trouble. If you want to keep others from using it commercially, use GPL and relicense it for a fee.

Another way of making money on open source software is consulting, but this depends less on the specific license you're chosen and much more on your software being popular and widely used.


Point 2: All open source licenses I know of meet this.

Points 3 and 4: This is the crux of the matter. Which matters most to you: having your software widely distributed, or being able to make money off of it? There's also a third possible requirement, which doesn't seem important to you since you haven't mentionned it : preserving the freedom of your users.

If wide distribution is important, you might want to consider a BSD-style license.

If money is important, you should consider dual-licensing.

If users' freedom is important, the GPL or one of its variants would be a good choice.

Also, from your description you have both an app and a library. Do they need to both have the same license?

Here is an article here from a developer that has similar requirements to yours.


How about using the GNU Lesser General Public Licence?


Almost all open source licenses will fulfill (2), because they require that the author still be credited in all things.

Issue (3) is a little more interesting, because if you are using a truly open-source license then you will not be able to prevent other people from selling the software as well - licenses which prevent people from using it in a certain way (not commercially) are not true open-source licenses and are better described as "source-available" or "shared-source" licenses.

You may want to look into a Creative-commons license like CC-BY-NC or CC-BY-NC-SA, which satisfies your non-commercial constraint but as the author of the work yourself, you will still be able to use it commercially of course. However, the Creative Commons licenses are not designed for code but more for other creative works.

(4) and (5) don't really mean anything when you are thinking of licensing.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜