GNU通用公共许可证
作者 | 理查德·史塔曼(Richard Stallman) |
---|---|
最新版本 | 3 |
出版商 | 免费软件基金会 |
出版 | 1989年2月25日 |
SPDX标识符 |
|
Debian FSG兼容 | 是的 |
FSF批准 | 是的 |
OSI批准 | 是的 |
copyleft | 是的 |
通过代码与不同的许可证链接 | 仅根据使用的版本而在GPL兼容许可下许可的软件。 |
网站 | www .gnu .org /许可 /gpl .html |
GNU通用公共许可证( GNU GPL或Simply GPL )是一系列广泛使用的免费软件许可证或CopyLeft ,可确保最终用户运行,研究,共享和修改软件的四个自由。该许可证是第一个供一般用途的复印件,最初是由自由软件基金会(FSF)的创始人理查德·斯塔尔曼(Richard Stallman )撰写的,该项目是GNU项目的。许可证授予计算机程序的收件人免费软件定义的权利。这些GPL系列都是CopyLeft许可证,这意味着任何衍生作品必须以相同或同等许可条款分配。它比较小的通用公共许可证更具限制性,甚至与更广泛使用的宽松软件许可证BSD , MIT和APACHE有所不同。
从历史上看,GPL许可证家族一直是免费和开源软件(FOSS)域中最受欢迎的软件许可之一。 GPL下许可的著名免费软件程序包括Linux内核和GNU编译器Collection (GCC)。戴维·A·惠勒(David A. Wheeler)认为,GPL提供的副本对基于Linux的系统的成功至关重要,从而为对内核做出贡献的程序员提供了保证,即他们的工作将使全世界受益并保持自由,而不是由其受到利用。不必回馈社区的软件公司。
2007年,发布了第三版的许可证(GPLV3),以解决第二版(GPLV2)的一些感知问题,这些问题是在后者长期使用过程中发现的。
为了保持许可最新,GPL许可证包括可选的“任何后续版本”子句,允许用户在FSF更新的原始条款或新版本中的条款之间进行选择。具有可选“或更高版本”子句许可的软件项目包括GNU项目,例如,Linux内核仅在GPLV2下获得许可。
“或任何以后的版本”子句有时被称为救生艇子句,因为它允许不同版本的GPL许可软件之间的组合以保持兼容性。
历史
GPL由Richard Stallman于1989年撰写,用于与GNU项目的一部分发布的程序。最初的GPL基于GNU Emacs (1985), GNU调试器和GNU C编译器的早期版本使用的类似许可的统一。这些许可证包含与现代GPL相似的规定,但针对每个计划的特定规定,尽管具有相同的许可,但它们使其不兼容。 Stallman的目标是生产一个可用于任何项目的许可证,从而使许多项目共享代码。
该许可证第二版的第二版,版本2,于1991年发布。在接下来的15年中,自由软件社区的成员对GPLV2许可证中的问题感到关注,该问题可以让某人以违反许可证的方式利用GPL许可的软件意图。这些问题包括Tivoization (拒绝运行其软件修改版本的硬件中的GPL许可软件),与Affero常规公共许可证类似的兼容性问题,以及Microsoft和Microsoft之间的专利交易与免费和开源的发行商之间的专利交易软件,有些人认为该软件试图将专利用作对抗自由软件社区的武器。
版本3的开发是为了解决这些问题,并于2007年6月29日正式发布。
版本1
出版 | 1989年2月25日 |
---|---|
网站 | www .gnu .org /许可 /旧执照 /gpl-1 .0 .html |
GNU GPL的版本1于1989年2月25日发布,阻止了软件分销商限制定义自由软件的自由的两种主要方式。第一个问题是,分销商可以仅发布可执行的二进制文件,但不可读取或不可读取。为了防止这种情况,GPLV1指出,该程序的任何部分的复制和分发副本还必须使人可读的源代码根据相同的许可条款可用。
第二个问题是,分销商可能会添加限制,或者通过将软件与其他具有其他分销限制的软件相结合。两组限制的结合将适用于合并工作,从而增加了不可接受的限制。为了防止这种情况,GPLV1指出,整个修改版本必须按照GPLV1的条款进行分布。因此,根据GPLV1条款分配的软件可以根据更允许的条款与软件相结合,因为这不会更改整个可以分发的条款。但是,根据GPLV1分配的软件不能与根据更限制的许可分配的软件结合使用,因为这将与要求按GPLV1条款分配的要求相抵触。
版本2
出版 | 1991年6月 |
---|---|
网站 | www .gnu .org /许可 /旧执照 /gpl-2 .0 .html |
理查德·斯塔尔曼(Richard Stallman)表示,GPLV2的主要变化是“自由或死亡”条款,正如他所说的。尽管他们可能有其他法律义务。换句话说,由于义务冲突,许可证的义务可能不会被裁定。该规定旨在阻止任何一方使用专利侵权索赔或其他诉讼来损害使用许可下的用户自由。
到1990年,很明显,限制性较小的许可在战略上对于C库以及实际上从事现有专有公司工作的软件库将是有用的。当1991年6月发布GPL(GPLV2)的版本2时,第二次许可证 - GNU图书馆通用公共许可证 - 同时引入并使用版本2进行编号,以表明两者都是互补的。 1999年发行了LGPL版本的2.1版,版本编号在1999年发行,该版本将其重命名为GNU较少的通用公共许可证,以反映其在哲学中的地位。还修改了GPLV2以参考LGPL的新名称,但其版本编号保持不变,从而导致原始GPLV2未经软件包数据交换(SPDX)识别。
许可证包括指定“许可证的版本2,或(在您的选项上)任何以后版本”的说明,以允许使用版本2或3的灵活可选使用,但一些开发人员将其更改为仅指定“版本2”。
版本3
出版 | 2007年6月29日 |
---|---|
网站 | www .gnu .org /许可 /gpl-3 .0 .html |
2005年底,自由软件基金会(FSF)宣布了GPL版本(GPLV3)版本的工作。 2006年1月16日,出版了GPLV3的第一个“讨论草案”,并开始了公众咨询。公众咨询最初是计划进行9到15个月的时间,但最终延长了十八个月,并发表了四次选秀。 FSF于2007年6月29日发布了GPLV3官方。GPLV3由Richard Stallman撰写,由Eben Moglen和Software Freedom Freedom Law Center的Eben Moglen和Richard Fontana撰写。
斯托尔曼认为,最重要的更改是与软件专利,免费软件许可兼容性,“源代码”的定义以及对软件修改(例如Tivoization )的硬件限制有关的关系。其他与国际化,如何处理许可证有关的更改以及版权所有者如何授予额外的许可。明确定义了“软件传播”作为软件复制和重复的术语的概念。
自由软件基金会在软件自由法律中心,欧洲自由基金会和其他自由软件组的协助下协调了公共咨询过程。评论是使用名为Stet的专用编写软件通过gplv3.fsf.org Web门户从公众那里收集的。
在公共咨询过程中,提交了962条评论,以供第一稿。到评论期结束时,总共提交了2,636条评论。
第三份草案于2007年3月28日发布。该草案包括旨在防止与专利相关的协议(例如有争议的Microsoft-Novell专利协议)的语言,并将反学分子条款限制为“用户”和A”的法律定义。消费产品”。它还明确删除了有关“地理限制”部分的部分,该部分可能在公众咨询的启动时宣布了其删除。
第四次讨论草案是2007年5月31日发布的。它引入了Apache许可证版本2.0兼容性(先前版本不兼容),阐明了外部承包商的作用,并提供了例外,以避免Microsoft – Microsoft – Microsoft的问题。 Novell风格协议,在第11节中说:
如果您是与第三方进行分销软件的第三方安排的一方,则您不得传达涵盖的作品,根据您的运送工作的范围,您可以根据其付款给第三方,并且在此方面,第三方赠款,向任何将从您那里获得覆盖作品的当事方,歧视性专利许可证 ...
这旨在使未来的交易无效。该许可证还旨在使Microsoft向Novell客户扩展其使用GPLV3软件的专利许可,以向该GPLV3软件的所有用户使用GPLV3软件;仅当微软在法律上是GPLV3软件的“输送机”时,才有可能。
GPLV3的早期草稿还允许许可器添加一个类似Affero的要求,该要求将插入GPL中的ASP漏洞。由于有人担心要为此附加要求检查代码的管理费用,因此决定将GPL和Affero许可分开。
其他,特别是一些备受瞩目的Linux内核开发人员,例如Linus Torvalds , Greg Kroah-Hartman和Andrew Morton ,对大众媒体发表了评论,并就讨论草案的部分反对1和2发表了公开声明。 GPLV3关于DRM / Tivoization ,专利和“其他限制”条款草案草案,并警告“开源宇宙”的巴尔干化。决定不为Linux内核采用GPLV3的Linus Torvalds重申了几年后的批评。
GPLV3改善了与Apache许可证,2.0版和GNU Affero通用公共许可证等多个免费软件许可证的兼容性,GPLV2无法与之合并。但是,如果使用的GPLV2许可使用可选的“或更高版本”子句,并且该软件已升级到GPLV3,则只能将GPLV3软件与GPLV2软件共享并共享代码。 FSF认为“ GPLV2或任何后期版本”子句是最常见的许可GPLV2软件的形式,而Toybox开发人员Rob Landley将其描述为救生艇条款。具有可选的“或更高版本”子句许可的软件项目包括GNU项目,而没有条款的重要示例是Linux内核。
许可文本的最终版本于2007年6月29日发布。
条款和条件
GPL的条款和条件必须提供给任何已应用GPL的工作副本的人(“被许可人”)。任何遵守条款和条件的被许可人都将允许修改工作,并复制和重新分发工作或任何衍生版本。被许可人被允许为此服务收取费用或免费进行此服务的费用。后一点将GPL与禁止商业再分配的软件许可区分开。 FSF认为,免费软件不应对商业用途施加限制,而GPL明确指出,GPL的工作可能以任何价格出售。
GPL还指出,分销商可能不会“进一步限制GPL授予的权利”。这禁止这样的活动,例如根据不公开协议或合同分发软件。
许可证版本2和版本3的第七部分的第四部分要求将作为预编译的二进制文件分发的程序附有源代码的副本,这是通过与PRE相同的机制分发源代码的书面报价- 划分的二进制文件,或者以获取用户在GPL下收到预编译的二进制文件时获得的源代码的书面报价。版本2的第二部分和版本3的第五部分还需要“所有收件人以及该程序以及该计划的副本”。许可证的版本3允许以其他方式提供源代码以实现第七部分。其中包括从相邻的网络服务器下载源代码或通过点对点传输,前提是该代码可用,并且在哪里可以找到源代码的“明确说明”。
除非作者明确将版权分配给FSF,否则FSF不会持有GPL下发布的工作的版权(除非是GNU项目的一部分,否则很少发生。只有在怀疑违反许可证的情况下,只有个人版权持有人有权提起诉讼。
使用许可软件
GPL下的软件可以用于所有目的,包括商业目的,甚至是用于创建专有软件的工具,例如使用GPL许可的编译器时。分发GPL许可作品(例如软件)的用户或公司可能会收取副本费用或免费提供。这将GPL与共享软件许可证区分开来,这些许可证允许复制个人使用,但禁止在版权法禁止复制的商业发行或专有许可证。 FSF认为,自由尊重的自由软件也不应限制商业使用和分发(包括再分配):
在纯粹的私有(或内部)使用中(没有销售和没有分销),可以修改软件代码并重复使用零件,而无需发布源代码。对于销售或分发,需要向最终用户提供整个源代码,包括任何代码更改和添加 - 在这种情况下,应用CopyLeft以确保最终用户保留上面定义的自由。
但是,在GPL许可的操作系统(例如Linux)下运行的软件不需要在GPL下许可或与源代码可用性一起分发 - 许可仅取决于使用的库和软件组件,而不是在基础平台。例如,如果程序仅由原始源代码组成,或与其他软件组件的源代码结合使用,则自定义软件组件无需在GPL下许可,并且不需要使其源代码可用;即使使用的基础操作系统在GPL下获得许可,在其上运行的应用程序也不被视为衍生作品。只有在程序中使用GPLED零件(并且程序分布),则需要根据相同的许可条款提供该程序的所有其他源代码。创建了GNU较少的通用公共许可证(LGPL)的副本比GPL弱,因为它不需要根据相同的许可条款提供自定义开发的源代码(与LGPL'ED零件不同)。
第3版的第五部分指出,不得将GPL许可的代码视为是WIPO版权条约第11条所定义的有效的“技术保护措施”,而传达工作的人放弃了所有法律权力,以禁止规避临时技术保护措施“在这种规避的范围内通过根据涵盖工作行使权利来实现这种规避的范围”。这意味着,根据《美国数字千年版权法》 (DMCA)等法律,使用GPLV3许可的代码实施的DRM不承担责任。
copyleft
GPL为修改版本授予的分配权并非无条件。当某人分发GPL'ED工作加上自己的修改时,分发整个工作的要求不能大于GPL中的要求。
此要求称为CopyLeft。它通过在软件程序上使用版权而赢得了法律权力。由于GPL工作是版权的,因此被许可人无权重新分配它,甚至没有以修改形式(禁止合理使用),但根据许可条款。只有一个人希望行使通常受版权法(例如重新分配)行使权利,才需要遵守GPL的条款。相反,如果一个人在不遵守GPL的条款的情况下分发了工作的副本(例如,通过保留源代码的秘密),则可以根据版权法所起诉原始作者。
从历史上看,版权法已被用来防止未经创建者授权的各方分配工作。 CopyLeft使用相同的版权法来实现一个非常不同的目标。它授予所有各方的权利,因为它们为后续的权利提供了相同的权利,以及下一个方面的权利,等等。这样,GPL和其他CopyLeft许可证试图强制执行Libre访问工作和所有衍生产品。
GPL'ED程序的许多发行商将源代码与可执行文件捆绑在一起。满足复印件的另一种方法是根据要求提供书面报价,以在物理介质(例如CD)上提供源代码。实际上,许多GPL'ED程序通过Internet分发,并通过FTP或HTTP提供源代码。对于Internet发行,这符合许可证。
仅当一个人试图重新分配程序时,CopyLeft才适用。开发人员可以制作私人修改版本,而没有义务泄露修改的义务,只要他们不向其他任何人分发修改后的软件。 CopyLeft仅适用于软件,而不适用于其输出(除非该输出本身是程序的衍生作品)。例如,不需要运行GPL'ED内容管理系统修改的衍生程序的公共Web门户才能将其更改分配给基础软件,因为修改后的Web门户网站没有被重新分发,而是托管的,而是因为Web Portal也是如此。输出也不是GPL'ED内容管理系统的衍生作品。
关于是否违反GPLV1以混淆形式发布源代码,例如在作者不太愿意使源代码可用的情况下,这是有争议的。共识是,虽然不道德,但并不是违规行为。当使用V2更改许可证时,该问题被澄清,以要求提供源代码的“首选”版本。
许可证与合同
GPL被设计为许可,而不是合同。在某些普通法司法管辖区中,许可证和合同之间的法律区别很重要:合同可以通过合同法执行,而根据版权法执行许可证。但是,在合同和许可之间没有差异(例如民法制度)之间没有差异的许多司法管辖区,这种区别并没有用。
那些不接受GPL的条款和条件的人未经版权法不允许复制或分发由GPL许可的软件或衍生作品。但是,如果他们不重新分配GPL'ED程序,则他们可能仍会在其组织中使用该软件,并且该许可证不需要使用该程序构建的工作(包括程序)。
软件开发人员艾莉森·兰德尔(Allison Randal)认为,GPLV3作为许可证对外行读者而言是不必要的混淆,并且可以在保留相同的条件和法律力量的同时简化。
2017年4月,美国联邦法院裁定,开源许可证是可强制执行的合同。
2021年10月,SFC起诉Vizio违反了合同作为最终用户向Vizio TVS请求源代码的合同,联邦法官在此期间裁定GPL是最终用户的可执行合同,也是版权持有人的许可。
推导
GPL的文本本身是版权的,版权由自由软件基金会持有。
FSF允许人们根据GPL创建新的许可证,只要派生的许可未经允许就不使用GPL序言。但是,由于这种许可可能与GPL不相容,并引起了人们感知的许可扩散,因此这是不鼓励的。
GNU项目创建的其他许可包括GNU较少的通用公共许可证, GNU免费文档许可证和Affero通用公共许可证。
GPL的文本本身并非在GPL下。许可证的版权禁止对许可证的修改。允许复制和分发许可证,因为GPL要求收件人获得“与程序一起获得此许可证的副本”。根据GPL常见问题解答,任何人都可以使用GPL的修改版本进行新许可如果使用许可,则修改了许可证,可以从自由软件基金会(FSF)获得。
链接和衍生作品
库
根据FSF的说法,“ GPL不需要您发布修改后的版本或其任何部分。您可以自由进行修改并私下使用它们,而无需释放它们。”但是,如果人们向公众发布了一个已获得GPL许可的实体,那么链接就存在一个问题:即,使用GPL库的专有程序是否违反了GPL。
该关键争议是非GPL软件在法律上可以静态链接还是动态链接到GPL库。在这个问题上存在不同的意见。 GPL清楚地要求GPL下的所有代码的衍生工程都必须在GPL下。对于使用GPL库并将GPL软件捆绑到较大的软件包(也许通过静态链接混合到二进制)方面,就会产生模棱两可的。最终,这不是GPL本身的问题,而是版权法定义衍生作品的方式。存在以下观点:
观点:动态和静态链接违反GPL
自由软件基金会(拥有几种著名的GPL许可软件产品和许可文本本身的版权)断言,使用动态链接的库的可执行文件确实是一项派生工作。但是,这不适用于相互通信的单独程序。
自由软件基金会还创建了LGPL ,该LGPL几乎与GPL相同,但还具有额外的权限,以允许为“使用库”链接。
理查德·史塔曼(Richard Stallman)和FSF专门鼓励图书馆作家在GPL下许可,以便专有计划不能使用图书馆,以努力通过提供比专有世界更多的工具来保护自由软件世界。
观点:静态链接违反GPL,但不清楚动态链接
有些人认为,静态链接会产生衍生作品,但尚不清楚是否应将动态链接到GPL代码的可执行文件视为衍生作品(请参阅弱复印件)。 Linux作者Linus Torvalds同意,动态链接可以创建派生的作品,但在这种情况下不同意。
一位小说律师写道,动态联系不是衍生的“有意义的”,而是“明确的”,并且可以通过专有Linux内核驱动程序的存在可以看到良好的动态联系的证据。
在Galoob诉Nintendo案中,美国第九巡回上诉法院将衍生作品定义为具有“形式”或永久性的工作,并指出“侵权工作必须以某种形式纳入一部分受版权保护的作品”,但有没有明确的法院决定解决这一特殊冲突。
观点:链接无关紧要
根据《 Linux Journal》中的一篇文章,劳伦斯·罗森(Lawrence Rosen)(一次性开源倡议总法律顾问)认为,链接方法主要与有关软件是否是衍生作品的问题无关。更重要的是该软件是否旨在与客户端软件和/或库进行交互的问题。他指出:“新程序是衍生作品的主要指示是[以副本意义上的意义]使用了原始程序的源代码,以任何方式进行了修改,翻译或以其他方式更改以创建新程序。他在公司的网站上进一步争辩说,这种“基于市场”的因素比链接技术更重要。
还有一个具体问题是,如果可以合理地将其视为自己的工作,则插件或模块(例如NVIDIA或ATI图形卡内核模块)是否也必须是GPL。此观点表明,如果工作是GPLV2,则可以根据任意许可获得合理分开的插件或用于使用插件的软件的插件。特别值得关注的是GPLV2段落:
您可以修改程序的副本或副本或该程序的任何部分,从而根据程序形成一项工作,并根据上述第1节的条款复制和分发此类修改或作品,前提是您还符合所有这些条件: ...
b)您必须造成您分发或发布的任何作品,这些工作全部或部分包含或从其任何部分或其任何部分衍生而来,必须根据本许可条款免费向所有第三方授权。 。 ...这些要求适用于整个修改工作。如果该工作的可识别部分不是从程序中得出的,并且可以合理地将其视为独立和独立的作品,则此许可证及其条款在您将其作为单独的作品分发时不适用于这些部分。但是,当您根据计划的一项工作分发相同的部分作为整体的一部分时,整体的分布必须按照本许可的条款为基础每个部分无论是谁写的。
GPLV3有不同的子句:
您可以根据计划的形式根据计划的形式传达基于程序的修改,以第4节的条款形式传达一项工作,但前提是您还符合所有这些条件: ...
c)您必须将整个工作许可在此许可下许可给拥有副本的任何人。因此,该许可将适用于整个工作及其所有零件的任何适用第7节的其他条款,无论其包装方式如何。该许可证无权以任何其他方式许可该工作,但是如果您已单独收到此许可,则不会使该许可无效。 ...与其他独立和独立的作品一起撰写的覆盖作品的汇编,这些作品的本质扩展不是涵盖的作品的扩展,并且不与它结合在一起如果不使用汇编及其所得的版权来限制汇编用户的访问或合法权利,则称为“汇总”,称为“汇总”。将覆盖作品纳入汇总不会导致此许可适用于总体的其他部分。
作为一个案例研究,一些据称专有的插件以及GPLV2 CMS软件(例如Drupal和WordPress)的主题/皮肤已经受到了抨击,这是参数的两面。
FSF划分了插件的调用方式。如果插件通过动态链接调用,并且它将函数调用到GPL程序,则很可能是派生工作。
与非GPL计划交流和捆绑
与其他程序进行沟通的单纯行为本身并不要求所有软件都是GPL。也没有非GPL软件分发GPL软件。但是,必须遵循较小的条件,以确保不受GPL软件的权利。以下是GNU.org GPL常见问题的报价,该引用允许软件在多大程度上与GPL程序进行通信:
“汇总”和其他类型的“修改版本”有什么区别?
“汇总”由许多单独的程序组成,这些程序在同一CD-ROM或其他媒体上共同分布。 GPL允许您创建和分发汇总,即使其他软件的许可证不含或不兼容GPL。唯一的条件是,您不能根据许可证释放汇总,该许可禁止用户行使每个程序的个人许可证授予他们的权利。
两个单独的程序和一个包含两个部分的程序之间的界线在哪里?这是一个法律问题,最终法官将决定。我们认为,适当的标准既取决于通信的机制(EXEC,管道,RPC,函数在共享地址空间等)和通信的语义(哪些类型的信息互换)。
如果模块包含在同一可执行文件中,则它们肯定会合并到一个程序中。如果将模块设计成在共享地址空间中链接在一起的模块,则几乎意味着将它们组合到一个程序中。
相比之下,管道,插座和命令行参数是两个单独程序之间通常使用的通信机制。因此,当它们用于通信时,模块通常是单独的程序。但是,如果交流的语义足够亲密,可以交换复杂的内部数据结构,那么这也可能是将这两个部分视为合并为较大程序的基础。
因此,FSF通过1)通过1)“复杂性”和“亲密关系”和2)机制(而不是语义)绘制了“库”和“其他程序”之间的界限,但是辞去了问题并不明确,并且在复杂的情况下,判例法会决定。
在线法律状态
对GPL的第一个已知违规是在1989年,当时接下来将GCC编译器扩展到支持Objective-C ,但并未公开发布更改。询问后,他们创建了一个公共补丁。没有针对这种违法行为提起诉讼。
2002年, MySQL AB起诉进步Nusphere,以获取美国地方法院的版权和商标侵权。据称,Nusphere违反了MySQL的GPL'ED代码与Nusphere Gemini Table,违反了MySQL的版权,而无需遵守许可证。在2002年2月27日在帕蒂·萨里斯(Patti Saris)法官进行初步听证会之后,双方参加了和解谈判并最终定居。听证会结束后,FSF评论说:“萨里斯法官明确表示她认为GNU GPL是可执行且具有约束力的执照。”
2003年8月, SCO小组表示,他们认为GPL没有法律有效性,他们打算就据称从SCO UNIX复制到Linux内核的代码部分提起诉讼。这对他们来说是一个有问题的立场,因为他们已经在Caldera Openlinux分发中分发了Linux和其他GPL'ED代码,而且几乎没有证据表明他们有任何合法权利可以执行此操作,除非根据GPL的条款。 2018年2月,在联邦巡回法院的判决,上诉和案件(部分)退还给巡回法院之后,双方重申了其剩余的索赔,并提供了朝着最终判决迈出的计划。其余的索赔围绕蒙特雷项目,并于2021年11月由IBM向TSG(以前的SCO)破产受托人支付1425万美元。
2004年4月, NetFilter / Iptables项目被慕尼黑地方法院授予了对Sitecom德国的初步禁令,因为Sitecom拒绝违反GPL条款,因此拒绝拒绝分发Netfilter的GPL'ED软件。 Netfilter的Harald Welte由Ifross联合创始人Thill Jaeger代表。 2004年7月,德国法院确认该禁令是针对Sitecom的最终裁决。法院的理由是:
- 被告通过提供“ NetFilter/Iptables”的软件下载并通过宣传其发行版,而无需遵守GPL的许可条件,从而侵犯了原告的版权。只有被告获得许可证赠款,该行动才允许。 ...这与原告和被告之间是否有效达成了GPL的许可条件是否有效达成共识,这与问题无关。如果双方未同意GPL,则被告将缺乏复制,分发和使软件“ NetFilter/Iptables”公开的必要权利。
这完全反映了FSF的Eben Moglen先前给出的预测。这项裁决很重要,因为这是法院第一次确认违反GPL条款可能是侵犯版权的行为,并确定了根据德国法律对GPLV2的可执行性的裁决。
2005年5月,丹尼尔·华莱士(Daniel Wallace)对印第安纳州南部地区的自由软件基金会提起诉讼,认为GPL是确定价格(零)的非法尝试。该诉讼于2006年3月被驳回,理由是华莱士未能提出有效的反托拉斯索赔。法院指出,“ GPL鼓励而不是灰心,自由竞争和计算机操作系统的分布,其好处直接传递给了消费者”。华莱士被否认有可能进一步修改他的投诉,并被命令支付FSF的法律费用。
2005年9月8日,首尔中央地方法院裁定,GPL并不是涉及从GPL许可工作中获得的商业秘密的案件。被告辩称,由于不可能在符合GPL并分发工作的同时保持商业秘密,因此他们不违反商业秘密。该论点被认为没有基础。
2006年9月6日, gpl-violations.org项目在法庭诉讼中针对D-Link GmbH的法庭诉讼均涉及D-Link在其分发的存储设备中对Linux内核部分的版权侵权使用。判决指出,GPL有效,具有法律约束力,并在德国法院站立。
2007年底, Busybox开发人员和软件自由法律中心开始了一项计划,以获得嵌入式系统中Busybox分销商的GPL合规性,起诉那些不遵守的人。据称这些是法院执行GPL义务的首次使用。 (请参阅Busybox GPL诉讼。)
2008年12月11日,自由软件基金会起诉Cisco Systems,Inc。的Linksys部门,FSF的GPL许可的Coreutils , Readline ,Readline, parted , wget , GNU编译器收集, Binutils和GNU Depugger软件包,哪些违反了Cisco Systems,Inc。 Linksys在其WRT54G无线路由器的Linux固件中分发,以及许多其他设备,包括DSL和电缆调制解调器,网络附加的存储设备,Voice-Over-Over-IP Gateways,虚拟的专用网络设备以及家庭影院/媒体播放器设备。
在FSF向思科反复投诉后,思科的索赔要求他们纠正或正在纠正其合规性问题(不提供所有源代码及其修改的完整副本),对被发现和报告的重复新违规行为进行了FSF将Linksys(FSF博客上描述为“五年的游戏”游戏中描述为“五年游戏”)的更多产品以及缺乏行动。
思科在六个月后通过同意“任命“ Linksys”的免费软件主管“确保合规性”,以确定依从性,以通知以前的收件人,其中包含FSF计划的Linksys产品,其中包含其权利下的GPL,以自由制定FSF计划的源代码。在其网站上可用,并为FSF做出货币捐款。
在2011年,人们注意到GNU Emacs意外地释放了一些二进制文件,而没有相应的源代码两年来反对GPL的预期精神,从而造成了侵犯版权。理查德·斯塔尔曼(Richard Stallman)将这一事件描述为“非常糟糕的错误”,这很快就解决了。 FSF没有起诉任何下游再分配者,他们也通过分发这些二进制文件在不知不觉中侵犯了GPL。
2017年,Artifex是Ghostscript的制造商,起诉Hancom ,Hancom是一个包括Ghostscript的办公室套房的制造商。 Artifex为Ghostscript提供了两个许可证;一个是Affero GPL许可证,另一个是商业许可证。 Hancom没有从Artifex获得商业许可证,也没有将其Office Suite作为免费软件发布。 Artifex在美国地方法院起诉Hancom,并提出了两项索赔。首先,Hancom对Ghostscript的使用侵犯了版权。其次,Hancom对Ghostscript的使用是违反许可证的行为。法官杰奎琳·斯科特(Jacqueline Scott Corley)法官发现,GPL许可证是可执行的合同,汉考姆(Hancom)违反了合同。
2021年7月20日,开源库克鱼国际象棋发动机的开发商起诉国际象棋软件的创建者Chessbase违反了GPLV3许可证。据称,Chessbase仅对Stockfish代码进行了轻微的修改,并将新引擎(Fat Fritz 2和Houdini 6)出售给其客户。此外,Fat Fritz 2被销售,好像它是创新的引擎。 Chessbase通过不按照GPL将这些产品分配为免费软件,侵犯了许可证。
一年后的2022年11月7日,双方达成协议并结束了争议。在不久的将来,Chessbase将不再出售包含Stockfish代码的产品,同时通过其网页上的适当通知将此事实告知客户。但是,一年后,Chessbase的许可将被恢复。 Stockfish不寻求损害或经济赔偿。
兼容性和多许可
在其他几个许可下获得许可的代码可以与GPL下的计划结合使用,而无需冲突,只要对整个工作的限制的组合并不超出GPL允许的任何其他限制。除了定期的GPL条款外,还可以申请其他限制和权限:
- 如果用户想合并在不同版本的GPL下许可的代码,则仅当带有早期GPL版本的代码包含“或任何较晚版本”语句时才允许使用。例如,具有GPLV3许可的GNU libredwg库不再使用具有GPLV2依赖性的librecad和freecad 。
- 尽管LGPL确实为合并工作增加了其他要求,但允许根据LGPL下许可的代码与任何其他代码链接。因此,通常不会链接仅LGPLV3和仅GPLV2,因为合并的代码工作将在仅GPLV2的仅限许可软件上增加额外的LGPLV3要求。如果将整个组合工作许可获得GPLV2或GPLV3,则可以根据LGPLV2.X许可在没有“任何后续版本”语句的情况下获得许可。
FSF保留了包含许多最常见的免费软件许可证的GPL兼容免费软件许可证列表,例如原始MIT/X许可证, BSD许可证(以其当前的3条规则表格)和Artistic Licensic 2.0。
从GPLV3开始,在Creative Commons属性共享的4.0国际许可下,它可以单方面兼容材料(例如文本和其他媒体),将其混音到GPL许可的材料(明显的软件)中,而不是VICE,而不是诸如NICHE用例之类的副用品,带有游戏脚本(CC BY-SA)的引擎(GPL)。
David A. Wheeler提倡免费/开源软件开发人员仅使用与GPL兼容的许可证,因为这样做会使其他人很难参与并贡献代码。作为许可不兼容的特定示例, Sun Microsystems的ZF不能包含在GPL许可的Linux内核中,因为它已在不包含GPL兼容的公共开发和分销许可下获得许可。此外,ZFS受专利的保护,因此分发独立开发的GPL-ED实施仍然需要Oracle的许可。
许多企业都使用多许可来分发GPL版本,并向希望将包装与专有代码相结合的公司出售专有许可证,无论是否使用动态链接。此类公司的例子包括Mysql AB ,Digia Plc( QT框架,2011年诺基亚), Red Hat ( Cygwin )和Riverbank Computing( PYQT )。其他公司,例如Mozilla Foundation (产品包括Mozilla Application Suite , Mozilla Thunderbird和Mozilla Firefox ),使用多许可在GPL下分发版本以及其他一些开源许可证。
文字和其他媒体
如果清楚的是什么构成源代码,则可以将GPL用于文本文档而不是计算机程序,或者更一般地用于各种媒体(定义为“用于进行更改的工作的首选形式”))) 。但是,对于手册和教科书,FSF推荐了GNU免费文档许可证(GFDL),它是为此目的而创建的。尽管如此,由于GFDL与GPL的不兼容(在GFDL下的文本无法纳入GPL软件), Debian开发人员建议(在2006年通过的决议中)为其项目许可文件提供了文件。此外,专门用于创建免费软件手册的组织Floss手册基金会决定在2007年避开GFDL,以支持GPL的文本。
如果GPL用于计算机字体,则使用此类字体制作的任何文档或图像也必须根据GPL的条款进行分发。在识别字体(字体的外观)为有用的文章的国家中,情况并非如此,因此不符合版权,而是字体文件作为版权的计算机软件(可能会使字体嵌入复杂化,因为可以将文档视为“链接”,因为可以将其视为“链接”。换句话说,将矢量字体嵌入文档可能会迫使它在GPL下释放,但是该字体的栅格化渲染不会受到GPL的约束。 FSF提供了不需要的情况的例外。
采用
从历史上看,GPL许可证家族一直是FOSS域中最受欢迎的软件许可之一。
1997年对当时最大的自由软件档案的Metalab调查显示,GPL约占该软件的一半。同样,2000年对Red Hat Linux 7.1的调查发现,源代码的53%已在GPL下获得许可。截至2003年,所有项目中约有68%和在SourceForge.net上列出的开源行业认证的许可项目中有82.1%来自GPL许可证家族。截至2008年8月,GPL家族占FREECODE上列出的44,927个免费软件项目中的70.9%。
在2007年6月发行GPLV3之后,讨论了该新的GPL版本的采用,一些项目决定不升级。例如Linux内核, MySQL , BusyBox , Advfs , Blender , VLC Media Player和MediaWiki决定不采用GPLV3。另一方面, Google开源计划办公室经理Chris Dibona在2009年发行了两年后,报告说,从GPLV2转移到GPLV3的开源项目许可软件的数量为50%,计算了这些项目在Google代码上托管。
根据Black Duck Software数据,在2011年,即GPLV3发行四年后,所有开源许可项目中有6.5%为GPLV3,而42.5%为GPLV2。在2011年之后, 451个小组分析师马修·阿斯莱特(Matthew Aslett)在博客文章中认为,根据Black Duck Software的统计数据,CopyLeft许可证逐渐下降,并且宽容许可增加。同样,2012年2月,乔恩(Jon Buys)报告说,在Github五个项目的前50个项目中,有符合GPL许可证,包括双重许可和AGPL项目。
沃尔特·范·霍尔斯特(Walter Van Holst)从2009年到2013年的GPL使用统计数据是从沃尔特·范·霍尔斯特(Walter Van Holst)中提取的。
2009 | 2010 | 2011 | 2012 | 2013 | 2014-06-18 |
---|---|---|---|---|---|
72% | 63% | 61% | 59% | 58% | 大约54% |
根据Black Duck软件的说法,2013年8月,该网站的数据显示,GPL许可证家族由54%的开源项目使用,下表中显示的单个许可证分解。但是,2013年后来的一项研究表明,根据GPL许可证家族许可的软件有所增加,即使是Black Duck Software的数据也显示了GPL下许可的软件项目的总增长。该研究使用了从Debian项目的存储库收集的公共信息,该研究批评了Black Duck软件未发布其用于收集统计的方法。加拿大维多利亚大学计算机科学系教授丹尼尔·德兰德(Daniel German)在2013年发表了关于确定哪些最广泛使用的免费软件许可方面的方法论挑战的演讲,并展示了他如何无法复制Black的结果鸭软件。
根据Black Duck的说法,2015年,GPLV2失去了MIT许可证的第一个职位,现在排名第二,GPLV3降至第四名,而Apache许可证保持其第三位。
执照 | 2008-05-08 | 2009-03-11 | 2011-11-22 | 2013-08-12 | 2015-11-19 | 2016-06-06 | 2017-01-02 | 2018-06-04 |
---|---|---|---|---|---|---|---|---|
GPLV2 | 58.69% | 52.2% | 42.5% | 33% | 23% | 21% | 19% | 14% |
GPLV3 | 1.64% | 4.15% | 6.5% | 12% | 9% | 9% | 8% | 6% |
LGPLV2.1 | 11.39% | 9.84% | ? | 6% | 5% | 4% | 4% | 3% |
LGPLV3 | ? (<0.64%) | 0.37% | ? | 3% | 2% | 2% | 2% | 1% |
GPL家庭在一起 | 71.72% (+ <0.64%) | 66.56% | ? | 54% | 39% | 36% | 33% | 24% |
2015年3月对GITHUB存储库的分析显示,对于GPL许可证家族,使用许可项目的使用百分比约为25%。 2016年6月,对Fedora Project的包裹的分析揭示了GNU GPLV2或以后是最受欢迎的许可证,而GNU GPL家族是最受欢迎的许可家族(其次是MIT,BSD和GNU LGPL家族)。
在2018年4月对Whitesourcesoftware.com的分析中,在MIT许可证(26%)和Apache 2.0许可证(21%)之后,第三名的GPLV3(18%)和第四名(11%)的GPLV3在第三名(11%)中获得了GPLV3。
接待
申请商店的合法障碍
GPL与许多应用程序数字分销系统(例如Mac App Store )以及某些其他软件分销平台(在智能手机和PC上)不兼容。问题在于正确的“为您的邻居制作副本”,因为该权利被嵌入平台中的数字权利管理系统侵犯,以防止复制付费软件。即使该应用程序在相关的应用商店中是免费的,也可能导致违反该应用程序商店的条款。
在专有许可下以某种形式的在线软件存储库来出售DRM限制的软件的App Store之间有一个区别,该应用程序的数字发行概念更一般。几乎所有现代的Unix系统和Linux发行版都有应用程序存储库,包括NetBSD , FreeBSD , Ubuntu , Fedora和Debian 。这些特定的应用程序存储库都包含GPL许可的软件应用程序,在某些情况下,即使核心项目不允许基本系统中的GPL许可的代码(例如OpenBSD)。在其他情况下,例如Ubuntu App Store ,专有商业软件应用程序和GPL许可的应用程序都可以通过同一系统获得; Mac App Store(和类似项目)与GPL许可的应用程序不兼容的原因不是App Store的概念固有的,而是特别是由于Apple的使用条款条款要求,该要求在商店中使用了所有应用程序, Apple DRM限制。 Ubuntu的App Store不需要任何此类要求:“这些条款不限制或限制您根据任何适用的开源软件许可证的权利。”
微软
2001年,微软首席执行官史蒂夫·鲍尔默(Steve Ballmer)将Linux称为“以知识产权意义上的癌症,伴随着它所触及的一切”。为了回应微软对GPL的攻击,几位著名的免费软件开发人员和拥护者发布了支持该许可证的联合声明。 Microsoft已发布了Microsoft Windows服务,该服务包含GPL许可的代码。 2009年7月,微软本身在GPL下发布了约20,000行Linux驱动程序代码的机构。 Hyper-V代码是使用GPL下使用的开源代码的一部分,该组件最初与专有二进制零件静态链接,后者在GPL许可的软件中不可接受。
“病毒”性质
当被称为'通用公共病毒'或'GNU公共病毒'(GPV)时,对GPL的描述可以追溯到GPLV1发布后的一年。
2001年,当微软高级副总裁克雷格·蒙迪(Craig Mundie)称该GPL为“病毒”时,该词受到了更广泛的公众关注。 Mundie认为GPL具有“病毒”效应,因为它仅允许整个程序的运输,这意味着链接到GPL库的程序必须自己必须符合GPL兼容的许可,否则它们不能合并和分发。
2006年,理查德·史塔曼(Richard Stallman)在接受采访时回应说,蒙迪(Mundie)对“病毒”的隐喻是错误的,因为GPL下的软件没有“攻击”或“感染”其他软体.因此,斯塔尔曼认为,将GPL与病毒进行比较是不合适的,并且在GPL下对软件的更好隐喻将是蜘蛛植物:如果一个人拿一块并将其放在其他地方,它也会在那里生长。
另一方面,GPL的病毒性质的概念也后来也被其他人所接受。例如,2008年的一篇文章说:“ GPL许可证是'病毒式',这意味着您创建的任何衍生作品甚至包含以前GPL许可软件中最小的部分也必须根据GPL许可证获得许可。”
商业化的障碍
FreeBSD项目已经指出:“ GPL的宣传和意外使用较少,对于想要削弱软件公司的大型公司非常有利。换句话说,GPL非常适合用作营销武器,可能会减少。总体的经济利益并促进垄断行为“,GPL可以“为那些希望从软件中商业化和利润的人提出一个真正的问题”。
理查德·斯塔尔曼(Richard Stallman)写了关于销售许可证例外的做法,以免费的软件许可证,以道德上可接受的商业化实践为例。此处出售例外意味着给定软件的版权持有人(以及相应的源代码)根据免费软件许可将其发布给公众,”然后,客户允许客户在不同条款下使用相同的代码,例如允许它包含在专有应用中”。斯托尔曼(Stallman)考虑出售例外“自1990年代以来可以接受的例外,有时我将其建议给公司。有时,这种方法使重要计划成为自由软件的可能性”。尽管FSF不练习销售例外,但提出了与X11许可(这是非副本免费软件许可证)的比较,以暗示该商业化技术在道德上应被认为是可以接受的。根据非副业免费软件许可释放给定程序将允许将代码嵌入专有软件中。斯塔尔曼(Stallman)评论说:“我们必须得出的结论是,在X11许可下释放任何内容是错误的- 我认为这是不可接受的极端- 或拒绝这一含义。使用非副本许可证是薄弱的,通常是一个劣等的选择,但不是一个选择换句话说。
开源批评
2000年,开发人员兼作者尼古拉·贝兹鲁科夫(Nikolai Bezroukov)发表了对GPL基金会和Stallman的软件开发模型的分析和全面批评,称为“软件自由的迷宫”。
Debian项目负责人Sam Hocevar于2004年创建了WTFPL的版本2(做您想对公共许可证的操作),作为GPL的模仿。
2005年,开源软件倡导者Eric S. Raymond质疑GPL与FOSS生态系统的相关性,并指出:“我们不再需要GPL。它是基于这样的信念:开源软件是薄弱的,需要受到保护如果GPL并没有让很多人对采用它,则开源会更快。”理查德·斯塔尔曼(Richard Stallman)回答:“ GPL旨在...确保程序的每个用户都获得基本自由 - 运行它,研究和更改源代码,重新分配副本并发布修改后的版本 ... [Raymond]根据不同的目标和价值(开源'的of of Deforning Software用户共享和更改软件的自由,都解决了问题。
2007年,参加了GPL选秀委员会的艾莉森·兰德尔(Allison Randal)批评GPLV3与GPLV2不相容,并且缺少表述中的清晰度。同样,沃利(Whurley)在2007年预言了GPL的衰落,因为GPLV3的开发人员缺乏专注力,这将推动他们朝着宽松的许可迈进。
2009年,戴维·奇斯纳尔(David Chisnall)在信息文章“ GPL的失败”中描述了GPL的问题,其中包括许可文本的不兼容和复杂性。
2014年, Dtrace开发人员和Joyent CTO Bryan Cantrill称CopyLeft GPL为“ Corporate Open Creenge Antif Pattern ”,称为“反协商”,并建议使用允许的软件许可证。
GPLV3批评
在2006年9月,在GPLV3的草案草案中,Linus内核的几位备受瞩目的开发商,例如Linus Torvalds, Greg Kroah-Hartman和Andrew Morton ,警告说,福斯社区的发行:“ GPLV3预示着我们所依赖的整个开源宇宙的巴尔干化。”同样,本杰明·马科·希尔(Benjamin Mako Hill)于2006年在GPLV3草案上辩称,指出一个曼联合作的社区比单个许可更为重要。
在2007年GPLV3发布之后,一些记者和玩具盒开发人员Rob Landley批评了GPLV3的引入,开源和自由软件社区之间的分裂比以往任何时候都更加宽敞。由于显著扩展的GPLV3本质上与GPLV2基本不相容,因此两者之间的兼容性仅在GPL的可选“或更高版本”子句中给出,例如Linux内核并未对此进行。布鲁斯·拜菲尔德(Bruce Byfield)指出,在GPLV3发布之前,GPLV2是开源源与自由软件社区之间的统一元素。
对于LGPLV3, GNU TLS维护者Nikos Mavrogiannopoulos类似地论证:“如果我们假设它的[LGPLV3]主要目标是由Free软件使用,那么它将公然失败,然后在他从LGPLV3重新获得LGPLV3重新获得的GNU TLS之后, LGPLV2.1由于许可兼容性问题。
劳伦斯·罗森(Lawrence Rosen) ,律师兼计算机专家在2007年赞扬了2007年使用Apache许可证的社区如何以兼容的方式与GPL社区一起工作,因为GPLV2与Apache许可软件的兼容性问题与GPLV3解决了。他说:“我预测,GPLV3最大的成功案例之一将是意识到,整个免费和开源软件的宇宙因此可以合并为全球客户的全面开源解决方案。”
2013年7月,烧瓶开发商Armin Ronacher对FOSS生态系统的GPL兼容性得出了不太乐观的结论:“当GPL涉及时,许可的复杂性成为谜语的非有趣版本”,也指出Apache许可证之间的冲突2.0和GPLV2仍然对生态系统产生影响。