开源许可证比较
开源许可证授予任何人以任何目的使用,修改和共享许可软件的许可,但要遵守保护软件出处和开放性的条件。开源许可证主要有两种类型:copyleft和permissive。在本文中,我们将比较这两种许可证,并查看每种许可证的示例。Copyleft和permissive许可证:有什么区别?Copyleft和permissive许可证都允许开发人员自由地复制,修改和重新分发代码(派生或其他方式)。但是,两..
开源许可证授予任何人以任何目的使用,修改和共享许可软件的许可,但要遵守保护软件出处和开放性的条件。开源许可证主要有两种类型:copyleft
和permissive
。在本文中,我们将比较这两种许可证,并查看每种许可证的示例。
Copyleft
和permissive
许可证:有什么区别?
Copyleft
和permissive
许可证都允许开发人员自由地复制,修改和重新分发代码(派生或其他方式)。但是,两者之间最重要的区别在于它们各自如何获得版权。
尽管permissive
许可证允许开发人员包括自己的版权声明,但Copyleft
许可证不提供此类特权。相反,Copyleft许可规则要求所有衍生作品必须服从原始许可。这意味着开发人员无法对原始软件提出专利或版权主张。
根据White Source
的研究,最受欢迎的permissive
许可证是MIT
和Apache 2.0
,而BSD
排在第三位。GNU GPLv3
是目前最流行的copyleft
许可证,但比起permissive
许可证,它正在逐渐失去市场份额。
MIT
许可证
MIT
许可证本质上是permissive
,也是最简单的一个。基本上,它使开发人员可以根据自己的喜好修改或重新校准源代码。
MIT
许可证始终包含版权声明和免责声明,这说明该软件按“原样”提供,并且版权所有者对任何索赔或责任不承担任何责任。
MIT
许可证的持有者可以不受限制地从原始软件中产生任何衍生作品,甚至可以从二手产品的销售中获得商业利益。
MIT
许可证与GPL
兼容,但与传统的限制性GPL
不同,它不是病毒式的。这意味着开发人员可以修改原始代码,而不会用原始许可证“感染”生成的派生代码
permissive
- 该作品适合商业用途。
- 被许可人可以修改作品。
- 被许可人必须为作品提供适当的归属。
- 被许可人可以按照不同的条款重新分发衍生作品
- 被许可方不必随其衍生作品一起分发源代码。
Apache 2.0
许可证 (ASL 2.0
)
该许可证于2004年发布,取代了原始的Apache 1.1
。像修改后的BSD
和MIT
许可证一样,Apache 2.0
本质上是permissive
。
Apache 2.0
版本清楚地定义什么是法律实体,衍生作品和贡献。它还明确指定了与专利权授予相关的条款,BSD
,Apache v1.1
和MIT
许可证中没有这些条款。值得注意的是,如果针对任何实体提起专利侵权诉讼,那么从Apache 2.0
授予开发人员的所有专利许可将在诉讼提交之日起中止。
Apache 2.0
许可证还具有与重新分配权限有关的严格规则。它特别要求向任何衍生作品的接收者提供Apache 2.0
许可证的副本。最值得注意的是,开发人员必须提供明确的声明,以验证文件已被修改。任何衍生作品的源代码形式还必须保留原始软件源代码形式的所有版权,专利和所有权声明。
最后,如果原始作品包括归属声明(在NOTICE文本文件中),则开发人员必须确保衍生作品也包括NOTICE文件。开发人员在上述文件中包含自己的所有权声明和版权声明。
permissive
- 该作品适合商业用途。
- 被许可人可以修改作品。
- 被许可人必须为作品提供适当的归属。
- 被许可人可以按照不同的条款重新分发衍生作品。
- 被许可方不必随其衍生作品一起分发源代码。
BSD
许可证或3条款BSD
许可证
这些开放源代码许可与MIT
许可类似,但有一个小但重要的区别:尽管它们包含相同的版权和免责声明,但它们还提供了额外的非归因条款,以保护软件的原始创建者。该条款被非正式地称为“非认可条款”。它要求开发人员在使用创建者的原始名称推广衍生产品之前,必须获得明确的许可。
3条款BSD
还要求以二进制形式重新分发,以包括原始版权声明,免责声明和所需条件列表。
本质上,3条款BSD
许可证是对原始4条款BSD
许可证的新修改。在3条款BSD中,省略了“广告条款”,该条款要求所有广告均提及该软件的使用,以承认UCLA Berkeley
及其贡献者的身份。
这一“广告条款”使归因合规过程变得很麻烦,并最终导致4条款BSD
许可证与GNU GPL
不兼容。1999年7月22日,该条款被废止。迄今为止,两条款 BSD
许可和三条款 BSD
许可省略了“广告条款”,使其与GPL
兼容。
简化的2条款BSD
许可省略了“广告条款”(来自原始4条款BSD
)和“非认可条款”(来自3条款BSD
许可)。值得注意的是,Net BSD
项目(涉及Berkeley
设计的类Unix
操作系统)利用了2条款BSD
许可证。
permissive
- 该作品适合商业用途。
- 被许可人可以修改作品。
- 被许可人必须为作品提供适当的归属。
- 被许可人可以按照不同的条款重新分发衍生作品。
- 被许可方不必随其衍生作品一起分发源代码。
- 被许可人不能使用原始作者姓名或商标来认可衍生作品(3和4条款BSD)
- 被许可人必须在提及功能或作品使用的所有广告材料中承认原始作者(4条款BSD)
GPLv3
开源许可证
GPL
(通用公共许可证)是最流行的copyleft
许可证。FSF
(自由软件基金会)致力于确保GPL
保护所有用户自由地修改和分发他们认为合适的代码。
GPL
基于四个自由:自由使用源代码用于任何目的,自由进行修改,与任何人共享源代码的自由以及共享更改的自由。
与公众意见相反,GPL
并不禁止用户出售基于原始源代码的衍生作品;它只要求源代码可以免费供任何需要的人使用。这就是“互惠义务”。
迄今为止,GPLv3
取代了GPLv2
。最值得注意的是,GPLv3
现在与其他许可证兼容,例如Apache 2.0
。FSF
还发布了Affero GPL
和LGPL
(更宽松的GPLv3
形式),Affero GPL
有助于在服务器上运行的程序。
copyleft
- 该作品适合商业用途。
- 被许可人可以修改作品。
- 被许可方必须与衍生作品一起发布源代码。
- 衍生作品必须以相同的条款发布。
开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!
更多推荐
所有评论(0)