开源协议总结

  • GPL(GUN General Public License)

    终端用户可以运行、学习、共享(修改后再分发)、修改该软件。各项权利详解:无论终端用户是出于是什么目的,他都可以运行该软件;终端用户可以学习该软件是怎么运行的并且可以修改该软件以达到他的计算的目的;终端用户可以分发该软件给任何人;终端用户可以分发经由终端用户修改之后的软件,并且社区共享该改变,也就是终端用户修改之后的软件也满足GPL许可证。

  • BSD(Berkeley Software Distribution)

    为了满足团体或组织的需要,用户可以将许可证内诸如The University of California组织团体名称更为自己所属组织的名称。

    使用BSD协议时,需达到以下要求:对于本软件的再散播必须保留原加州大学董事会的协议内容,包括版权宣告、条件、免责声明。BSD开源协议给予使用者很大的权利。使用者可以自由的使用、修改源代码,在对源代码做出更改之后可以选择将代码开源或者作为专有的软件再次发布。

    以BSD协议做开发的产品需要满足以下三个条件:如果再发布的产品包含源代码,开发者在源代码中必须保留原有代码的BSD协议。若再发布的只是二进制类库、软件,需要开发者在类库或软件的文档和版权声明中包含原来代码的BSD协议。不可以用开源代码的作者/机构名字和原来产品的名字做推广。

  • MIT(The MIT License)

    在我看来,使用该协议的产品需要获得原作者的许可才能对产品做相应的改变。同时被许可人遵循一定的权利和义务。

    被许可人有权利使用修改产品以及出版发行贩卖软件副本,在贩售软件及软件副本时,被许可人将授予购买者同等的权利。在拥有这些权利的同时需要服从以下的义务:在软件和软件的所有副本中都必须包含著作权声明和本许可声明。

    MIT协议与GPL兼容。

  • MPL(Mozilla Public License)

    MPL要求经由MPL许可证发布的源代码的修改之后也要以MPL许可证的方式再许可出来,保证其他人在协议下共享源代码。经由MPL协议的产品有这样的细节,产品发布者可以在源代码库上加一个外用的接口,除接口以MPL协议进行发布,其源程序库不以MPL协议发布,方便这就方便开发者通过接口借鉴别人的源代码做各类开发。使用MPL的源代码允许被授权者将这类代码嵌入到自己的代码中。MPL协议下要求代码提供者不能提供已受到或打算受到专利保护的源代码。在MPL中,要求再次发布者有一个专门的文档将对源程序修改的时间和修改的方式都写入文档之中。

  • Apache

    Apache许可证要求使用该协议的人对于使用到的源代码作各类声明,如若引用了他人的某一段代码需要开发者对该类引用做出说明并保留引用代码的各项协议内容、商标、专利等各项内容。在软件文档中使用者可以加上自己的一些许可,但是这类许可不可以对Apache协议本身构成冲突。

  • LGPL(GUN Lesser General Public License)

    LGPL协议主要是面对使用C语言以及类C语言。它是GUN款通用公共许可证的缩写形式。相较于GPL,它允许转让副本的终端用户向被转让者收取一定的费用,若该副本是被修改的产品,则需要修改者在文档中写入修改时间及一些修改描述,该协议要求允许任何第三方者在该协议条件下都可以免费试用该产品。

猜你喜欢

转载自www.cnblogs.com/BeauBiu/p/12378335.html