This is an unofficial translation of the GNU Affero General Public License into Chinese (Simplified). It was not published by the Free Software Foundation, and does not legally state the distribution terms for software that uses the GNU AGPL—only the original English text of the GNU AGPL does that. However, we hope that this translation will help Chinese speakers understand the GNU AGPL better.
本文件是 GNU Affero 通用公共许可证(GNU AGPL)的非官方简体中文翻译。它并非由自由软件基金会(Free Software Foundation)发布,也不能作为使用 GNU AGPL 的软件分发条款的法律依据——只有 GNU AGPL 的英文原文才具有法律效力。尽管如此,我们希望这份翻译能帮助中文使用者更好地理解 GNU AGPL。
GNU Affero 通用公共许可证
第 3 版,2007 年 11 月 19 日
允许任何人复制和分发本许可证文件的逐字副本,但不允许改动它。
序言
GNU Affero 通用公共许可证(GNU AGPL)是一份面向软件及其他作品的、自由的「著佐权」(copyleft)许可证。它专门针对运行在网络服务器上的软件而设计,目的是确保社区协作得以实现。
市面上大多数软件和实用作品的许可证,都是冲着「剥夺你分享和修改作品的自由」去的。与之相反,我们的通用公共许可证,是为了保障你「分享和修改程序所有版本」的自由——让软件对所有用户来说始终是自由软件。
我们所说的「自由软件」,指的是「自由」,而不是「价格」。我们的通用公共许可证旨在确保你拥有以下自由:分发自由软件的副本(如果你愿意,也可以收费);获得源代码,或在需要时能够取得源代码;修改软件,或把其中的片段用在新写的自由程序里;并且你清楚自己拥有这些权利。
采用我们通用公共许可证的开发者,通过两个步骤来保护你的权利:(1) 对软件主张版权;(2) 提供本许可证,赋予你复制、分发和/或修改该软件的法律许可。
保护所有用户自由的另一个好处是:如果程序的某个替代版本得到了改进并被广泛使用,这些改进就能被其他开发者吸收利用。许多自由软件开发者都为由此产生的合作感到振奋和鼓舞。然而,对于运行在网络服务器上的软件来说,这种结果可能并不会出现。GNU 通用公共许可证允许人们制作修改版,并让公众在服务器上使用它,却从不向公众公开其源代码。
GNU Affero 通用公共许可证正是为了确保在上述情况下,修改后的源代码也必须向社区开放而设计的。它要求网络服务器的运营者,把运行在服务器上的修改版的源代码提供给该服务器的用户。因此,在可公开访问的服务器上公开使用修改版,就意味着公众能够获得该修改版的源代码。
早期有一份由 Affero 发布的、名为 Affero 通用公共许可证(Affero GPL)的许可证,其目标与此类似。本许可证是另一份独立的许可证,并非 Affero GPL 的一个版本;不过 Affero 已经发布了新版的 Affero GPL,允许改按本许可证再授权。
关于复制、分发和修改的确切条款与条件如下。
条款与条件
- 定义
「本许可证」指 GNU Affero 通用公共许可证第 3 版。
「版权」也包括适用于其他类型作品(如半导体掩模)的类版权法律。
「本程序」指依据本许可证授权的任何受版权保护的作品。每位被许可人都被称作「你」。「被许可人」和「接收者」可以是个人,也可以是组织。
对某作品进行「修改」,是指以需要版权许可的方式复制或改编该作品的全部或一部分(制作完全相同的副本除外)。由此产生的作品被称为原作品的「修改版」,或「基于」原作品的作品。
「受保护作品」指未经修改的本程序,或基于本程序的作品。
「传播」某个作品,是指除了在计算机上运行它或修改一份私人副本之外,任何在未经许可的情况下会让你依据适用版权法直接或间接承担侵权责任的行为。传播包括复制、分发(无论是否经过修改)、向公众提供,以及在某些国家还包括其他行为。
「分发」某个作品,是指任何能让他人制作或获得副本的传播行为。仅仅通过网络与用户交互、而没有传递副本,不算分发。
交互式用户界面在满足下列条件时,即「显示了适当的法律声明」:它包含一个方便且醒目可见的功能,该功能 (1) 显示了适当的版权声明,并且 (2) 告知用户:本作品不提供任何担保(除非另有担保)、被许可人可以依据本许可证分发本作品,以及如何查看本许可证的副本。如果该界面提供了用户命令或选项的列表(比如菜单),那么列表中的一个醒目条目即满足此标准。
- 源代码
作品的「源代码」,是指为修改该作品而偏好的形式。「目标代码」指作品的任何非源代码形式。
「标准接口」指符合下列任一条件的接口:由公认的标准机构定义的官方标准;或者,对于为特定编程语言规定的接口,是指在该语言的开发者中被广泛使用的接口。
可执行作品的「系统库」,包括除作品整体之外的任何内容,只要它 (a) 以打包「主要组件」的常规形式被包含,但不是该主要组件的组成部分,且 (b) 仅用于使作品能够与该主要组件一起使用,或用于实现某个已有公开源代码实现的标准接口。此处的「主要组件」,是指可执行作品运行所依赖的特定操作系统(如果有的话)的主要基本组件(内核、窗口系统等),或用于生成该作品的编译器,或用于运行它的目标代码解释器。
目标代码形式的作品的「对应源代码」,指生成、安装以及(对可执行作品而言)运行该目标代码、以及修改该作品所需的全部源代码,包括用于控制这些活动的脚本。但它不包括该作品的系统库,也不包括在执行这些活动时原样使用、但不属于作品一部分的通用工具或普遍可得的自由程序。例如,「对应源代码」包括与作品源文件关联的接口定义文件,以及作品特意设计所依赖的共享库和动态链接子程序的源代码(例如通过这些子程序与作品其他部分之间的紧密数据通信或控制流而依赖)。
「对应源代码」不需要包含用户可以从对应源代码的其他部分自动重新生成的任何内容。
源代码形式的作品的「对应源代码」,就是该作品本身。
- 基本许可
本许可证授予的所有权利,其有效期与程序版权期限相同,并且在满足所述条件的前提下是不可撤销的。本许可证明确确认你拥有无限的权利去运行未经修改的程序。运行受保护作品所产生的输出,只有当该输出就其内容而言构成受保护作品时,才受本许可证约束。本许可证承认你依据版权法享有的合理使用或其他等同权利。
只要你的许可证仍然有效,你就可以制作、运行和传播(但不分发)受保护作品,无需附加任何条件。你可以仅为让他人专门为你进行修改、或为你提供运行这些作品的设施而向他人分发受保护作品,前提是:在分发所有你不掌控其版权的材料时,你遵守本许可证的条款。那些因此为你制作或运行受保护作品的人,必须专门代表你、在你的指示和控制下进行,且条款须禁止他们在与你的关系之外复制你的受版权保护的材料。
在其他任何情况下的分发,仅允许依据下文所述条件进行。本许可证不允许分许可;第 10 条使分许可变得没有必要。
- 保护用户的法律权利,免受反规避法侵害
任何受保护作品,均不得被视为依据任何适用法律(履行 1996 年 12 月 20 日通过的《世界知识产权组织版权条约》第 11 条义务,或禁止/限制规避此类技术措施的类似法律)而构成「有效技术措施」的一部分。
当你分发受保护作品时,你就放弃了任何禁止规避技术措施的法律权力——只要这种规避是通过行使本许可证就该受保护作品所授予的权利而实现的;并且你声明无意通过限制作品的运行或修改,来对作品用户强制执行你或第三方禁止规避技术措施的法律权利。
- 分发逐字副本
你可以通过任何媒介分发你所收到的本程序源代码的逐字副本,前提是:你在每一份副本上醒目且适当地公布适当的版权声明;完整保留所有说明本许可证以及依据第 7 条添加的任何非许可性条款适用于该代码的声明;完整保留所有关于不提供担保的声明;并将本许可证的一份副本随同本程序一起提供给所有接收者。
你可以对你分发的每一份副本收取任意价格或不收费,也可以收费提供技术支持或担保保护。
- 分发修改后的源代码版本
你可以依据第 4 条的条款,以源代码形式分发基于本程序的作品、或为从本程序生成它所做的修改,前提是你还要满足以下所有条件:
a) 该作品必须带有醒目的声明,说明你修改了它,并给出一个相关日期。
b) 该作品必须带有醒目的声明,说明它是依据本许可证以及第 7 条所添加的任何条件发布的。这一要求将第 4 条中「完整保留所有声明」的要求修改为此处所述。
c) 你必须将整个作品作为一个整体,依据本许可证授权给任何获得副本的人。因此,本许可证连同任何适用的第 7 条附加条款,将适用于整个作品及其所有部分,无论它们如何被打包。本许可证不授予以任何其他方式许可该作品的权限,但如果你已另行获得这种权限,本许可证也不会使其失效。
d) 如果作品有交互式用户界面,每个界面都必须显示适当的法律声明;但如果本程序的交互式界面没有显示适当的法律声明,你的作品也不必让它们显示。
将受保护作品与其他独立作品(这些作品本质上不是受保护作品的扩展,也没有与它结合构成一个更大的程序)汇编在同一存储或分发介质卷上,若该汇编及其所产生的版权没有被用来限制汇编用户的访问权限或法律权利、且未超出各独立作品本身所允许的范围,则该汇编称为「聚合体」。将受保护作品纳入聚合体,并不会使本许可证适用于聚合体的其他部分。
- 分发非源代码形式
你可以依据第 4 条和第 5 条的条款,以目标代码形式分发受保护作品,前提是你还必须依据本许可证的条款、以以下方式之一分发机器可读的「对应源代码」:
a) 将目标代码置于或包含于实体产品(包括实体分发介质)中,并附带固定在惯常用于软件交换的耐用实体介质上的「对应源代码」。
b) 将目标代码置于或包含于实体产品(包括实体分发介质)中,并附上一份书面要约,该要约至少三年内有效,且在你为该产品型号提供备件或客户支持期间持续有效;要约内容为:向任何持有目标代码的人提供下列二者之一——(1) 该产品中所有受本许可证约束的软件的「对应源代码」副本,存放于惯常用于软件交换的耐用实体介质上,价格不超过你实际执行这种源代码分发所付出的合理成本;或 (2) 免费从网络服务器上复制该「对应源代码」的访问权限。
c) 分发目标代码的个别副本时,附上一份提供「对应源代码」的书面要约的副本。这一替代方式仅允许偶尔且非商业性地使用,而且仅当你依据第 6b 小节收到带这种要约的目标代码时方可使用。
d) 通过提供从指定地点(免费或收费)访问的方式分发目标代码,并以相同方式、通过同一地点、不再额外收费地提供「对应源代码」的同等访问权限。你不必要求接收者将「对应源代码」与目标代码一起复制。如果复制目标代码的地点是一个网络服务器,「对应源代码」可以位于另一个服务器上(由你或第三方运营),只要该服务器支持同等的复制设施,并且你在目标代码旁边保持清晰的说明、指明在哪里可以找到「对应源代码」。无论「对应源代码」托管在哪个服务器上,你都有义务确保它在满足这些要求所需的时间内一直可用。
e) 使用点对点传输分发目标代码,前提是你告知其他对等方,该作品的目标代码和「对应源代码」依据第 6d 小节在哪里免费向公众提供。
目标代码中可分离的部分,如果其源代码作为系统库被排除在「对应源代码」之外,则无需在分发目标代码时将其一并包含。
「用户产品」是指下列任一:(1) 「消费类产品」,即通常用于个人、家庭或家居用途的任何有形动产;或 (2) 为装入住宅而设计或销售的任何东西。在判断某产品是否属于消费类产品时,有疑问的情形应按「属于」处理。对于特定用户收到的特定产品,「通常使用」是指该类产品的典型或常见用途,而不考虑特定用户的身份、或该特定用户实际使用、期望使用或被认为期望使用该产品的方式。某产品是否属于消费类产品,与其是否具有大量商业、工业或非消费用途无关,除非这些用途代表了该产品的唯一重要使用方式。
用户产品的「安装信息」,是指在该用户产品中、从修改后的「对应源代码」安装并运行受保护作品的修改版所需的任何方法、程序、授权密钥或其他信息。这些信息必须足以确保:修改后的目标代码的持续运行,绝不会仅仅因为做过修改而被阻止或干扰。
如果你依据本条、以目标代码形式分发作品,且该分发是「在用户产品中、随同用户产品、或专门用于用户产品」进行的,并且该分发属于将用户产品的占有权和使用权永久或定期转移给接收者的交易的一部分(无论该交易如何定性),那么依据本条分发的「对应源代码」必须附带「安装信息」。但是,如果你或任何第三方都无权在该用户产品上安装修改后的目标代码(例如作品被安装在 ROM 中),则此要求不适用。
提供「安装信息」的要求,并不包括继续为接收者已修改或已安装的作品、或为其中已修改或已安装的用户产品提供技术支持、担保或更新的义务。当修改本身对网络的运行造成实质性的不利影响、或违反网络通信的规则和协议时,可以拒绝提供网络访问。
依据本条分发的「对应源代码」和提供的「安装信息」,必须采用公开文档化的格式(并且有公开的源代码实现可用),且解包、读取或复制时不得要求任何特殊密码或密钥。
- 附加条款
「附加许可」是指通过对本许可证的一项或多项条件作出例外,从而补充本许可证条款的条款。适用于整个程序的附加许可,在适用法律允许的范围内,应被视为已包含在本许可证中。如果附加许可仅适用于程序的某一部分,该部分可以在这些许可下单独使用,但整个程序仍由本许可证管辖、不受这些附加许可影响。
当你分发受保护作品的副本时,你可以自行选择从该副本或其任何部分中移除任何附加许可。(附加许可可能被写明为:在你修改作品时,某些情况下要求其自身被移除。)你可以为受保护作品中由你添加的、且你拥有或能够给予适当版权许可的材料添加附加许可。
尽管本许可证有任何其他规定,对于你添加到受保护作品中的材料,你可以(若获得该材料版权持有人的授权)用以下条款补充本许可证的条款:
a) 以不同于第 15 条和第 16 条的方式作出免责声明或限制责任;或
b) 要求在该材料中、或在包含该材料的作品所显示的适当法律声明中,保留特定的合理法律声明或作者署名;或
c) 禁止对该材料的来源作虚假陈述,或要求以合理方式将此类材料的修改版标记为与原版不同;或
d) 限制将材料许可人或作者的姓名用于宣传目的;或
e) 拒绝依据商标法授予使用某些商号、商标或服务标记的权利;或
f) 要求分发该材料(或其修改版)的人,在向接收者承担合同责任的情况下,对材料的许可人和作者作出赔偿——赔偿这些合同责任直接强加于这些许可人和作者的任何责任。
所有其他非许可性的附加条款,均被视为第 10 条所指的「进一步限制」。如果你收到的程序或其任何部分包含一份声明,说明它由本许可证连同某项构成进一步限制的条款管辖,你可以移除该条款。如果某份许可证文件包含进一步限制、但允许依据本许可证再授权或分发,你可以把受该许可证文件条款管辖的材料添加到受保护作品中,前提是该进一步限制不会在再授权或分发后继续存在。
如果你依据本条向受保护作品添加条款,你必须在相关源文件中放置一份说明、陈述适用于这些文件的附加条款,或放置一份指明在哪里可以找到适用条款的通知。
附加条款,无论是许可性的还是非许可性的,都可以以单独书面许可证的形式陈述,或以例外的方式陈述;上述要求对两种方式都适用。
- 终止
除本许可证明确规定外,你不得传播或修改受保护作品。任何以其他方式传播或修改它的尝试都是无效的,并将自动终止你依据本许可证享有的权利(包括第 11 条第三段授予的任何专利许可)。
但是,如果你停止了一切对本许可证的违反,那么你从特定版权持有人那里获得的许可会恢复:(a) 暂时恢复,除非且直到该版权持有人明确且最终地终止你的许可;以及 (b) 永久恢复,如果该版权持有人在停止后 60 天内未能以某种合理方式通知你该违反行为。
此外,如果版权持有人以某种合理方式通知了你该违反行为,且这是你第一次从该版权持有人那里收到关于违反本许可证(针对任何作品)的通知,并且你在收到通知后 30 天内纠正了该违反行为,那么你从该特定版权持有人那里获得的许可将永久恢复。
你依据本条被终止权利,不会终止那些已经从你这里依据本许可证获得副本或权利的各方的许可。如果你的权利已被终止且未获永久恢复,你就没有资格依据第 10 条就同一材料获得新的许可。
- 获得副本无需接受许可证
为了获得或运行本程序的副本,你不必接受本许可证。仅仅因使用点对点传输接收副本而附带发生的受保护作品传播,同样无需接受。但是,除本许可证外,没有任何东西授予你传播或修改任何受保护作品的许可。如果你不接受本许可证,这些行为即构成侵权。因此,修改或传播受保护作品,即表明你接受本许可证并据此行事。
- 下游接收者的自动授权
每当你分发受保护作品,接收者便自动从原始许可人那里获得一份许可,得以依据本许可证运行、修改和传播该作品。你没有责任强制第三方遵守本许可证。
「实体交易」是指转让某组织的控制权、或其实质上全部资产、或拆分某组织、或合并组织的交易。如果受保护作品的传播源于实体交易,那么该交易中收到作品副本的每一方,也同时获得其权益前手依据前段所拥有或能够给予的对该作品的一切许可,外加从该权益前手处取得作品「对应源代码」的占有权(如果该前手拥有它、或通过合理努力能够获得它)。
你不得对依据本许可证授予或确认的权利的行使施加任何进一步限制。例如,你不得对行使本许可证授予的权利收取许可费、特许权使用费或其他费用,也不得提起诉讼(包括诉讼中的交叉请求或反诉)声称:制造、使用、销售、许诺销售或进口本程序或其任何部分侵犯了任何专利权利要求。
- 专利
「贡献者」是指依据本许可证授权使用本程序、或本程序所基于的作品的版权持有人。由此授权的作品被称为该贡献者的「贡献者版本」。
贡献者的「必要专利权利要求」,是指该贡献者拥有或控制的全部专利权利要求——无论是已经取得的还是以后取得的——它们会被本许可证允许的某种制造、使用或销售其贡献者版本的方式所侵犯,但不包括仅因对贡献者版本作进一步修改才会被侵犯的权利要求。就本定义而言,「控制」包括以符合本许可证要求的方式授予专利分许可的权利。
每位贡献者依据其必要专利权利要求,授予你一份非排他、全球范围、免特许权使用费的专利许可,以制造、使用、销售、许诺销售、进口,以及以其他方式运行、修改和传播其贡献者版本的内容。
在以下三段中,「专利许可」是指任何明确的不执行专利的协议或承诺,无论其称谓如何(例如明确许可实施某专利,或承诺不就专利侵权起诉)。向某方「授予」这种专利许可,是指作出不对该方执行专利的这种协议或承诺。
如果你在明知依赖某专利许可的情况下分发受保护作品,而该作品的「对应源代码」又无法让任何人依据本许可证条款、免费地通过可公开访问的网络服务器或其他容易获取的方式复制,那么你必须:(1) 使「对应源代码」如此可得;或 (2) 安排使自己放弃该特定作品的专利许可利益;或 (3) 以符合本许可证要求的方式,将专利许可扩展到下游接收者。「明知依赖」是指你实际知道:若不是因为该专利许可,你在某国分发该受保护作品、或你的接收者在某国使用该受保护作品,就会侵犯该国一项或多项你有理由相信有效的、可识别的专利。
如果依据或关联某单一交易或安排,你分发(或通过促成他人分发而传播)受保护作品,并向部分接收该受保护作品的当事方授予专利许可、授权他们使用、传播、修改或分发该受保护作品的特定副本,那么你所授予的专利许可会自动扩展到该受保护作品及基于它的作品的所有接收者。
如果某项专利许可在其覆盖范围内不包括、禁止行使、或以不行使本许可证明确授予的一项或多项权利为条件,则该专利许可就是「歧视性」的。如果满足以下条件,你就不得分发受保护作品:你是与从事软件分发业务的第三方达成的某项安排的当事方,在该安排下你依据分发该作品的活动规模向第三方付款,且该第三方向任何将从你这里接收受保护作品的当事方授予歧视性专利许可——(a) 与你分发的受保护作品副本(或由这些副本复制出的副本)相关;或 (b) 主要为了包含受保护作品的特定产品或汇编、并与之相关——除非你在 2007 年 3 月 28 日之前已达成该安排、或该专利许可是在那之前授予的。
本许可证中的任何内容,均不得被解释为排除或限制依据适用专利法本可获得的任何默示许可或其他侵权抗辩。
- 不放弃他人的自由
如果(无论是通过法院命令、协议还是其他方式)强加给你的条件与本许可证的条件相抵触,它们也不能免除你遵守本许可证的条件。如果你无法在同时满足本许可证义务和任何其他相关义务的情况下分发受保护作品,那么你就根本不能分发它。例如,如果你同意某些条款,要求你向你所分发程序的对象收取进一步分发的特许权使用费,那么同时满足这些条款和本许可证的唯一方式,就是完全停止分发该程序。
- 远程网络交互;与 GNU 通用公共许可证一起使用
尽管本许可证有任何其他规定,如果你修改了本程序,你的修改版必须醒目地向所有通过网络远程与之交互的用户(如果你的版本支持这种交互)提供机会,让他们能够通过某种标准或惯用的、便于复制软件的方式,从网络服务器免费获得你版本的「对应源代码」。这份「对应源代码」应包括依据下一段而并入的任何受 GNU 通用公共许可证第 3 版约束的作品的「对应源代码」。
尽管本许可证有任何其他规定,你被允许将任何受保护作品与依据 GNU 通用公共许可证第 3 版授权的作品链接或组合成单一组合作品,并分发所得作品。本许可证的条款将继续适用于其中属于受保护作品的部分,而与之组合的作品仍由 GNU 通用公共许可证第 3 版管辖。
- 本许可证的修订版
自由软件基金会可能不时发布 GNU Affero 通用公共许可证的修订版和/或新版本。这些新版本在精神上与本版本相似,但在细节上可能有所不同,以应对新的问题或关切。
每个版本都有不同的版本号。如果本程序指定某个特定编号版本的 GNU Affero 通用公共许可证「或任何更高版本」适用于它,你可以选择遵循该编号版本或自由软件基金会发布的任何更高版本的条款与条件。如果本程序没有指定 GNU Affero 通用公共许可证的版本号,你可以选择自由软件基金会曾发布的任何版本。
如果本程序指定某代理可以决定使用 GNU Affero 通用公共许可证的哪些未来版本,那么该代理公开声明接受某版本,即永久授权你为该程序选择该版本。
更高版本的许可证可能授予你额外的或不同的许可。但是,不会因为你选择遵循更高版本,而对任何作者或版权持有人施加额外义务。
- 免责声明
在适用法律允许的范围内,本程序不提供任何担保。除非另有书面说明,版权持有人和/或其他方「按原样」提供本程序,不提供任何明示或暗示的担保,包括但不限于对适销性和特定用途适用性的暗示担保。有关程序质量和性能的全部风险由你承担。如果程序被证明有缺陷,你承担所有必要的维护、修理或纠正的费用。
- 责任限制
除非适用法律要求或另有书面约定,任何版权持有人、或任何依据上述规定修改和/或分发本程序的其他方,均不对你的损失负责,包括因使用或无法使用本程序而产生的任何一般性、特殊性、附带性或后果性损失(包括但不限于数据丢失、或数据变得不准确、或你或第三方遭受的损失、或本程序无法与任何其他程序协同运行),即使该持有人或其他方已被告知发生此类损失的可能性。
- 第 15 条和第 16 条的解释
如果上述免责声明和责任限制无法依据其条款在当地产生法律效力,审查法院应适用最接近于「完全免除与本程序相关的一切民事责任」的当地法律,除非本程序副本附带收费的担保或责任承担。
(条款与条件完)