当谈到开源软件许可证时,存在两大类别。一些许可证属于copyleft许可证类别,而其他许可证属于宽容开源许可证类别。
在本文中,我将解释什么是开源软件许可证及其类型。
介绍
An Open Source License is a type of license that allows users to freely view, modify, and share the source material of the software. This way, users are able to frequently update the source code and build on the original product.
根据您选择的开源许可证类型,用户可能或可能不允许对code进行某些活动,例如出售或商业使用。另外,开源许可证有很多种类,每种都有不同的条款和条件,取决于您如何使用源代码。
因此,了解开源许可证类型的重要性在于,才能充分利用其优点,所以在做出决定之前,请务必阅读更多相关信息。
开源许可证类型
宽容许可证
宽容许可证(也称为非copyleft许可证)允许用户使用、修改和分享源code,但用户也可以改变一些 Redistribution 的条款和条件,包括衍生作品。在软件开发中,衍生作品是基于现有程序的软件。如果原始程序以宽容许可证发布,创作者可以选择与原始作品许可证所需的条款不同的衍生作品。
copyleft许可证
copyleft许可证在开源软件中为用户提供了修改、使用和重新分发软件的自由。然而,它要求用户将特定的权利传递给下游用户,通过授予他们最初获得的权利。
Copyleft licenses define how redistribution and changes to the code are allowed, prohibiting any attempts at making it proprietary or non-open. This ensures that developers modifying the software have access to the source code to update it or even incorporate their own changes. Of course, any modifications must also be made available so others can benefit from its open source availability. This is a non-issue for academic or research use-cases, but is often a deal breaker when building commercial software.
为什么要包含开源软件许可证?
包含开源软件许可证对于您发布或共享软件时非常重要。许可证具有以下重要作用:
- 促进协作和创新
Open source licenses allow anyone to view, modify, and distribute the source code of your software. This encourages other developers to contribute to your project, fix bugs, and add new features. This can lead to a more robust and innovative software product.
- 让用户拥有更多的控制权和灵活性
开源许可证通常允许用户以任何目的使用、修改和分发软件,包括商业用途。这使用户能够更好地控制软件体验,并减少对专有软件供应商的依赖。
- 建立围绕您的软件的社区
使用开源许可证可以帮助您建立一群热爱您的软件的用户和开发者社区。这个社区可以为您的项目提供支持、反馈和新想法。
- 让您的软件更易于访问和包容。
开源软件通常免费下载和使用,并且通常可在多种语言中获得。这使其更易于全球各地的人们访问,无论他们的收入或背景如何。
此外,开源许可证还可以帮助您:
- 避免版权侵权。
如果您不使用许可证分发软件,则可能面临版权侵权诉讼的风险。开源许可证明确授予用户使用、修改和分发您的软件的权利,这可以保护您免受法律责任。
- 吸引和留住顶级人才。
许多有才华的软件开发者被开源项目吸引。通过将您的软件发布在开源许可证下,您可以使您的公司更具吸引力。
- 增强您的品牌声誉。
开源软件在技术社区中备受尊敬。通过将您的软件发布在开源许可证下,您可以展示您的合作精神和创新精神。
流行的宽容软件许可证
许可证中最受欢迎的类型是宽容许可证。这些许可证允许用户以最少的限制修改和重新分发软件。其中最受欢迎的宽容许可证有三种:
MIT License
MIT License 是最受欢迎的、最宽容的开源软件许可证。它为用户提供了显著的自由,包括允许他们自由分享、修改、使用和商业化该材料,只要他们遵守许可证中规定的所有条件。 Apache License 2.0
Apache License 2.0
是一种流行的宽容许可证,允许用户自由修改和重新分发软件,同时确保最终版的版权声明和通知保持不变。这项开源许可证允许用户进行专有修改和重新分发,并提供了明确的许可条款,使任何人都可以了解在使用该软件时的权利。 BSD (伯克利软件分发)许可证
__CAPGO_KEEP_0__允许您选择两种BSD许可证,分别是
GitHub lets you choose between two BSD licenses, the ,也被称为“FreeBSD”许可证;和BSD 3-Clause “New” or “Revised” License BSD 3-Clause “New” or “Revised” License这两个许可证的主要区别在于 3 条款。该条款限制了软件用户使用作者、作者或贡献者的姓名来推荐产品或服务。
Boost Software License
Boost Software LicenseBoost Software License
来自 C++ Boost 库,2008 年由 OSI 批准。这项许可证与 MIT 和 BSD 许可证类似,但在二进制形式下重新分发时不需要署名。
Copyleft licenses grant software users permission to use, modify, and share the source code, but also protect against relicensing through specific restrictions and terms and conditions. This represents the reciprocal characteristic of this license that requires users’ work to adhere to the original rights outlined in the license.
Copyleft 许可证授予软件用户使用、修改和分享源代码的许可,但也保护了通过特定的限制和条款防止重新授权。这种许可证的互补性质要求用户的工作遵守许可证中原有的权利。 GNU 许可证 当谈到 Copyleft 软件许可证时, GPL(通用公共许可证)
通过将软件以此种许可类型发布,开发者确保了其他人可以访问他们的源代码code,从而使他们能够对其进行改进和适应,以利于社区。另外,这种“共享权”概念确保了任何人在与免费软件合作时都可以共享相同的自由。
Mozilla 公共许可
Mozilla 公共许可 Mozilla 公共许可(MPL)是由Mozilla 基金会 开发的,同样也被认为是一种弱共享权许可。与 Eclipse 公共许可相比,这种许可的不同之处在于它是基于文件的共享权许可,这意味着__CAPGO_KEEP_0__可以与开源或专有__CAPGO_KEEP_1__组合。 and is also considered a weak copyleft license. The difference with this license (in comparison with the Eclipse Public License) is that it is file-based copyleft, which means code can be combined with open-source or proprietary code.
Eclipse 公共许可
是由 Eclipse 基金会开发的,同样也被认为是一种弱共享权许可。弱共享权许可要求软件用户分享他们对__CAPGO_KEEP_0__所做的任何更改。这项许可选择实施一种较弱的共享权,以减少用户遇到的GNU通用公共许可证的更严格要求。 如何选择适合您的项目的许可?, is from the Eclipse Foundation and is considered a weak copyleft license. A weak copyleft license requires software users to share any changes they make to the code. This license chose to implement a weaker copyleft as a way to reduce the stricter requirements users encountered with GNU’s General Public Licenses.
Eclipse
-
如果您正在将项目发布为开源许可证,选择与您使用的项目兼容的许可证。
-
如果您希望允许其他人以商业目的使用您的项目,请选择允许此目的的许可证。
-
如果您希望允许其他人修改和分发您的项目,请选择允许此目的的许可证。
-
如果您希望确保您的项目始终保持免费和开源,请选择共享同等许可证。
-
如果您不确定要选择哪种许可证,Open Source Initiative 有一个比较流行许可证的清单。
为您的开源项目选择正确的许可证是一个重要的决定。通过仔细考虑您的需求和目标,您可以选择一个许可证来实现您的期望结果。
Capgo新许可证
如何实现所有这些?通过更改许可证。
Capgo已更改许可证,从 MIT 许可证更改为 GNU Affero 通用公共许可证 V3(AGPLv3)或更高版本。Capgo版本可以 在这里找到.
Capacitor-updater(插件)已更改许可证,从 LGPLv3 许可证更改为 Mozilla 公共许可证版本 2.0(MPLv2)或更高版本。Capacitor-updater版本可以 在这里找到.
This change makes no difference to any of you who subscribe to Capgo Cloud or who self-host Capgo, but it may upset a few corporations who tried to use my software to directly compete with me without contributing back.
AGPL 是 Google 不喜欢的许可证,因为他们不愿意披露他们的封闭源码 code。 Google 对 AGPL 表示反对, 状态: “Code 根据 GNU Affero 通用公共许可证(AGPL)许可证必须不被 Google 使用”。
AGPL 的目标是最大限度地提高用户自由,并鼓励公司为开源项目贡献。 我是一个面向用户的独立应用程序。 我不是一个库,也不是一个更大的项目的一部分。 我不需要 Google 的捐赠,所以我们很高兴采用 AGPL 许可证。 这是 Capgo 的正确许可证。
结论
选择开源软件许可证时,需要考虑多种因素。 然而,开发者社区中有许多流行的选择。 常见的宽容许可证包括 MIT 许可证、Apache 许可证和 BSD 许可证。 一些常见的共享许可证包括 GNU 通用公共许可证和 Mozilla 公共许可证。