GNU 通用公共授权 (简体中文翻译版)

声明!  

这是一份 GNU 通用公共授权的非官方中文简体翻译。它并非由自由软件基金会发布,也不是使用 GNU 通用公共授权的软件的法定发布条款 —— 只有 GNU 通用公共授权的英文原版 具有这样的效力。然而,我们希望这份翻译能够帮助中文读者更好的理解 GNU 通用公共授权。

 

GNU 通用公共授权

第三版 2007 年6 月29

版权所有(C )2007 Free Software Foundation, Inc. (http://fsf.org)

允许所有人复制和发布本授权文件的完整版本

但不允许对它进行任何修改

导言

GNU 通用公共授权是一份针对软件和其他种类作品的自由的、公共的授权文件。

大多数软件授权申明被设计为剥夺您共享和修改软件的自由。相反地,GNU 通用公共授权力图保护您分享和修改自由软件地自由——以确保软件对所有使用者都是自由的。我们,自由软件基金会,对我们的大多数软件使用GNU

当我们谈论自由软件时,我们指的是行为的自由,而非价格免费。GNU 通用公共授权被设计为确保您拥有发布自由软件副本( 以及为此收费,如果您希望的话) 的自由,

为了保护您的权利,我们需要做出要求,禁止任何人否认您的这些权利或者要求您放弃这些权利。因此,如果您发布此软件的副本或者修改它,您就需要肩负起尊重他人自由的责任。

例如,如果您发布自由软件的副本,无论以免费还是以收费的模式,您都必须把您获得的自由同样的给予副本的接收者。您必须确保他们也能收到或者得到源代码。而且您必须向他们展示这些条款,以使他们知道自己享有这样的权利。

使用GNU 通用公共授权的开发者通过两项措施来保护您的权利:(1 )声明软件的版权;(2 )向您提供本授权文件以给您复制、发布并且/

为了保护软件开发者和作者,通用公共授权明确阐释自由软件没有任何担保责任。如用户和软件作者所希望的,通用公共授权要求软件被修改过的版本必须明确标示,从而避免它们的问题被错误地归咎于先前的版本。

某 些设备被设计成拒绝用户安装或运行其内部软件的修改版本,尽管制造商可以安装和运行它们。这从根本上违背了通用公共授权保护用户能修改软件的自由的宗旨。 此类滥用本授权的系统模式出现在了最让人无法接受的个人用户产品领域。因此,我们设计了这个版本的通用公共授权来禁止那些产品的侵权行为。如果此类问题在 其他领域大量出现,我们准备好了在将来的通用公共授权版本里扩展这项规定,以保护用户的自由。

最 后,每个程序都经常受到软件专利的威胁。政府不应该允许专利权限制通用计算机软件的发展和使用,但是在政府确实允许这种事情的地区,我们希望避免应用于自 由软件的专利权使该软件有效私有化的危险。为了阻止这样的事情的发生,通用公共授权确保没有人能够使用专利权使得自由软件非自由化。

以下是复制,发布和修改软件的详细条款和条件。

条款和条件

0. 定义

“本授权”指GNU

“版权”一词同样指适用于其他产品如半导体掩膜等的保护版权的法律。

“本程序”指任何在本授权下发布的受版权保护的作品。被授权人称为“您”。“被授权人”和“版权接受者”可以是个人或组织。

“修改”作品是指从软件中拷贝或者做出全部或一丁点儿的修改,这不同于逐字逐句的复制,是需要版权许可的。修改成果被称为先前作品的“修改版本”或者“基于”先前作品的软件。

“覆盖程序”指未被修改过的本程序或者基于本程序的程序。

“传播”程序指使用该程序做任何如果没有许可就会在适用的版权法下直接或间接侵权的事情,不包括在电脑上执行程序或者是做出您不与人共享的修改。传播包括复制,分发(无论修改与否),向公众共享,以及在某些国家的其他行为。

“发布”作品指任何让其他组织制作或者接受副本的传播行为。仅仅通过电脑网络和一个用户交流,且没有发送程序拷贝的行为不是发布。

一个显示“适当的法律通告”的交互的用户接口应包括这样一个方便而显著的可视部件,它具有以下功能:(1 )显示一个合适的版权通告;(2

1 .源代码

“源代码”指修改程序常用的形式。“目标代码”指程序的任何非源代码形式。

“标准接口”有两种含义,

可 执行程序的“系统库”不是指整个程序,而是指任何包含于主要部件但不属于该部件的部分,并且只是为了使能该部件而开发,或者为了实现某些已有公开源代码的 标准接口。“主要部件”在这里指的是执行程序的特定操作系统(如果有的话)的主要的关键部件(内核,窗口系统等),或者生成该可执行程序时使用的编译器, 或者运行该程序的目标代码解释器。

目 标代码中的程序“对应的源代码”指所有生成,安装,(对可执行程序而言)运行该目标代码和修改该程序所需要的源代码,包括控制这些行为的脚本。但是,它不 包括程序需要的系统库,通用目的的工具,以及程序在完成某些功能时不经修改地使用的那些不包括在程序中的普遍可用的自由软件。例如,对应的源代码包括与程 序的源文件相关的接口定义文件,以及共享库中的源代码和该程序设计需要的通过如频繁的数据交互或者这些子程序和该程序其他部分之间的控制流等方式获得的动 态链接子程序。

对应的源代码不需要包含任何拥护可以从这些资源的其他部分自动再生的资源。

源代码形式的程序对应的源代码定义同上。

2 .基本的许可

所 有在本授权协议下授予的权利都是对本程序的版权而言,并且只要所述的条件都满足了,这些授权是不能收回的。本授权明确的确认您可以不受任何限制地运行本程 序的未修改版本。运行一个本授权覆盖的程序获得的结果只有在该结果的内容构成一个覆盖程序的时候才由本授权覆盖。本授权承认您正当使用或版权法规定的其它 类似行为的权利。

只 要您的授权仍然有效,您可以无条件地制作,运行和传播那些您不发布的覆盖程序。只要您遵守本授权中关于发布您不具有版权的资料的条款,您可以向别人发布覆 盖程序,以要求他们为您做出专门的修改或者向您提供运行这些程序的简易设备。那些为您制作或运行覆盖程序的人作为您专门的代表也必须在您的指示和控制下做 到这些,请禁止他们在他们和您的关系之外制作任何您拥有版权的程序的副本。

当下述条件满足的时候,在任何其他情况下的发布都是允许的。

转授许可证授权是不允许的,第10

3 .保护用户的合法权利不受反破解法侵犯

在任何实现1996 年通过的世界知识产权组织版权条约第11

当您发布一个覆盖程序时,您将放弃任何禁止技术手段破解的法律力量,甚至在本授权关于覆盖程序的条款下执行权利也能完成破解。同时,您放弃任何限制用户操作或修改该覆盖程序以执行您禁止技术手段破解的合法权利的企图。

4 .发布完整副本

你可以通过任何媒介发布本程序源代码的未被修改过的完整副本,只要您显著而适当地在每个副本上发布一个合适的版权通告;保持完整所有叙述本授权和任何按照第7

您可以为您的副本收取任何价格的费用或者免费,你也可以提供技术支持或者责任担保来收取费用。

5 .发布修改过的源码版本

您可以在第4

* a )制作的软件必须包含明确的通告说明您修改了它,并给出相应的修改日期。

* b )制作的软件必须包含明确的通告,陈述它在本授权下发布并指出任何按照第7 节加入的条件。这条要求修改了第4

* c )您必须把整个软件作为一个整体向任何获取副本的人按照本授权协议授权。本授权因此会和任何按照第7

* d )如果您制作的软件包含交互的用户接口,每个用户接口都必须显示适当的法律通告;但是,如果本程序包含没有显示适当的法律通告的交互接口,您的软件没有必要修改他们让他们显示。

如 果一个覆盖程序和其他本身不是该程序的扩展的程序的联合体,这样的联合的目的不是为了在某个存储或发布媒体上生成更大的程序,且联合体程序和相应产生的版 权没有用来限制程序的使用或限制单个程序赋予的联合程序的用户的合法权利的时候,这样的联合体就被称为“聚集体”。在聚集体中包含覆盖程序并不会使本授权 应用于该聚集体的其他部分。

6 .发布非源码形式的副本

您可以在第4,5

* a )在物理产品(包括一个物理的发布媒介)中或作为其一部分发布目标代码,并在通常用于软件交换的耐用的物理媒介中发布对应的源代码。

* b )在物理产品(包括一个物理的发布媒介)中或作为其一部分发布目标代码,并附上有效期至少3 年且与您为该产品模型提供配件或客户服务的时间等长的书面承诺,给予每个拥有该目标代码的人(1 )要么在通常用于软件交换的耐用物理媒介中,以不高于您执行这种源码的发布行为所花费的合理费用的价格,一份该产品中所有由本授权覆盖的软件的对应的源代码的拷贝;(2

* c )单独地发布目标代码的副本,并附上一份提供对应源代码的书面承诺。这种行为只允许偶尔发生并不能盈利,且在您收到的目标代码附有第6 节b

* d ) 在指定的地点(免费或收费地)提供发布的目标代码的访问并在同样的地点以不增加价格的方式提供对应源代码的同样的访问权。您不需要要求接收者在复制目标代 码的时候一道复制对应的源代码。如果复制目标代码的地点是网络服务器,对应的源代码可以在另外一个支持相同复制功能的服务器上(由您或者第三方运作),只 要您在目标代码旁边明确指出在哪里可以找到对应的源代码。无论什么样的服务器提供这些对应的源代码,您都有义务保证它在任何有需求的时候都可用,从而满足 本条规定。

* e )用点对点传输发布目标代码,您需要告知其他的节点目标代码和对应的源代码在哪里按照第6 节d

目标代码中可分离的部分,其源代码作为系统库不包含在对应的源代码中,不需要包含在发布目标代码的行为中。

“用户产品”指(1 )“消费品”,即通常用于个人的、家庭的或日常目的的有形个人财产;或者(2

用户产品的“安装信息”指从对应源码的修改版本安装和运行该用户产品中包含的覆盖程序的修改版本所需要的任何方法、过程、授权密钥或其他信息。这些信息必须足以保证修改后的目标代码不会仅仅因为被修改过而不能继续运行。

如 果您在本节条款下在用户产品中,或随同,或专门为了其中的使用,发布目标代码程序,而在发布过程中用户产品的所有权和使用权都永久地或在一定时期内(无论 此项发布的特点如何)传递给了接收者,在本节所述的条款下发布的对应的源代码必须包含安装信息。但是如果您或者任何第三方组织都没有保留在用户产品上安装 修改过的目标代码的能力(比如程序被安装在了ROM

提供安装信息的要求并没有要求为接收者修改或安装过的程序,或者修改或安装该程序的用户产品,继续提供支持服务、担保或升级。当修改本身实际上相反地影响了网络的运行,或者违反了网络通信的规则和协议时,网络访问可以被拒绝。

根据本节发布的对应源代码和提供的安装信息必须以公共的文件格式发布(并附加一个该类型文档的实现方法以源码形式向公众共享),解压缩、阅读或复制这些信息不能要求任何密码。

7 .附加条款

“附 加许可”是通过允许一些本授权的特例来补充本授权的条款。只要它们在使用法律下合法,对整个程序都生效的附加许可就应当被认为是本授权的内容。如果附加许 可只是对本程序的一部分生效,那么该部分可以在那些许可下独立使用,但整个程序是在本授权管理下,无论附加许可如何。

当您发布覆盖程序的副本时,您可以选择删除该副本或其部分的任何附加许可。(当您修改程序时,附加许可可能要求在某些情况下将自身删除)。您可以把附加许可放在材料上,加入到您拥有或能授予版权许可的覆盖程序中。

尽管本授权在别处有提供,对于您加入到程序中的材料,您可以(如果您由该材料的版权所有者授权的话)用以下条款补充本授权:

a. 拒绝担保责任或以与本授权第15 和16

b. 要求保留特定的合理法律通告,或者该材料中或包含于适当法律通告中的该程序的作者贡献;或者

c. 禁止误传该材料的来源,或者要求该材料的修改版本以合理的方式标志为与原版本不同的版本;或者

d. 限制以宣传为目的的使用该材料作者或授权人的姓名;或者

e. 降低授权级别以在商标法下使用一些商品名称,商标或服务标记;或者

f. 要求任何发布该材料(或其修改版本)的人用对接收者的责任假设合同对授权人和材料作者进行保护,避免任何这样的假设合同直接造成授权人和作者的责任。

所有其他不许可的附加条款都被认为是第10

如果您依据本小节向覆盖程序添加条款,

附加的条款,无论是许可的还是非许可的条款,都可以写在一个单独的书面授权中,或者申明为例外情况;这两种方法都可以实现上述要求。

8 .终止授权

您只有在本授权的明确授权下才能传播或修改覆盖程序。任何其它的传播或修改覆盖程序的尝试都是非法的,并将自动终止您在本授权下获取的权利(包括依据第11

然而,如果您停止违反本授权,那么您从某个特定版权所有者处获取的授权许可能够以以下方式恢复(a )您可以暂时地拥有授权,直到版权所有者明确地终止您的授权;(b )如果在您停止违反本授权后的60

进一步地,如果某个版权所有者以某种合理的方式告知您违反本授权的行为,而这是您第一次收到来自该版权所有者的违反本授权的通知(对任何软件),并且在收到通知后30

当您的授权在本节条款下被终止时,那些从您那获取授权的组织只要保持不违反本授权协议,其授权就不会被终止。您只有在授权被版权所有者恢复了之后才有资格依据第10

9. 获取副本不需要接受本授权

您 不需要为了接收或运行本程序的副本而接受本授权协议。仅仅是因为点对点传输获取副本引起传播行为,也不要求您接受本授权协议。然而,除了本授权外,任何授 权协议都不能授予您传播或修改覆盖程序的许可。因此,如果您修改或者传播了本程序的副本,那么您就默认地接受了本授权。

10. 下游接收者的自动授权

每次您发布覆盖程序,接收者都自动获得一份来自原授权人的依照本授权协议运行、修改和传播该程序的授权。依据本授权,您不为执行任何第三方组织的要求负责。

“实 体事务”指转移一个组织的控制权或全部资产,或者拆分组织,或者合并组织的事务。如果覆盖程序的传播是实体事务造成的,该事务中每一个接收本程序副本的组 织都将获取一份其前身拥有的或者能够依据前面的条款提供的任何授权,以及从其前身获取程序对应的源代码的权利,如果前身拥有或以合理的努力能够获取这些源 代码的话。

您不可以对从本授权协议获取或确认的权利的执行强加任何约束。比如,您不可以要求授权费用,版税要求或对从本授权获取的权利的执行收取任何费用。您不可以发起诉讼(包括联合诉讼和反诉)声称由于制作、使用、销售、批发或者引进本程序或其任何一部分而侵犯了任何专利权。

11 .专利权

“贡献者”是在本授权下授予本程序或者本程序所基于的程序的使用权的版权所有者。这样的程序被成为贡献者的“贡献者版本”。

一 个贡献者的“实质的专利申明”是该贡献者所占有和控制的全部专利,无论已经获得的还是在将来获得的,那些可能受到某种方式侵犯的专利权。本授权允许制作、 使用和销售其贡献者版本,但不包括那些只会由于对贡献者版本进一步的修改而受到侵犯的专利的申明。为此,“控制”一词包括以同本授权要求一致的方式给予从 属授权的权利。

每个贡献者在该贡献者的实质的专利申明下授予您非独家的,全世界的,不需要版税的专利授权,允许您制作、使用、销售、批发、进口以及运行、修改和传播其贡献者版本内容。

在以下三个自然段中,“专利授权”指任何形式表达的不执行专利权的协议或承诺(例如使用专利权的口头许可,或者不为侵犯专利而起诉的契约)。向一个组织授予专利授权指做出这样的不向该组织提出强制执行专利权的承诺。

如果您在自己明确知道的情况下发布基于某个专利授权的覆盖程序,而这个程序的对应的源代码并不能在本授权条款下通过网络服务器或其他有效途径免费地向公众提供访问,您必须做到:(1 )使对应的源代码按照上述方法可访问;或者(2 )放弃从该程序的专利授权获取任何利益;或者(3

在依照或者涉及某一次事务或安排时,如果您通过获取发布或传播覆盖程序的传输版本,并给予接收该覆盖程序的某些组织专利授权,允许他们使用,传播,修改或者发布该覆盖程序的特殊版本,那么您赋予这些组织的专利授权将自动延伸到所有该覆盖程序及基于该程序的作品的接收者。

一 份专利授权是“有偏见的”,如果它没有在自身所覆盖的范围内包含,禁止行使,或者要求不执行一个或多个本授权下明确认可的权利。以下情况,您不可以发布一 个覆盖程序:如果您与软件发布行业的第三方组织有协议,而该协议要求您根据该程序的发布情况向该组织付费,同时该组织在你们的协议中赋予任何从您那里获得 覆盖软件的组织一份有偏见的专利授权,要么(a )连同您所发布的副本(或者从这些副本制作的副本);要么(b )主要为了并连同某个的产品或者包含该覆盖程序的联合体。如果您签署该协议或获得该专利授权的日期早于2007 年3 月28

本授权的任何部分不会被解释为拒绝或者限制任何暗含的授权或其他在适用专利权法下保护您的专利不受侵犯的措施。

12 .不要放弃别人的自由

如 果您遇到了与本授权向矛盾的情况(无论是法庭判决,合同或者其他情况),它们不能使您免去本授权的要求。如果您不能同时按照本授权中的义务和其他相关义务 来发布覆盖程序,那么您将不能发布它们。比如,如果您接受了要求您向从您这里或许本程序的人收取版税的条款,您唯一能够同时满足本授权和那些条款的方法是 完全不要发布本程序。

13 .和GNU Affero

尽管本协议有其他防备条款,您有权把任何覆盖程序和基于第三版GNU Affero 通用公共授权的程序链接起来,并且发布该联合程序。本授权的条款仍然对您的覆盖程序有效,但是GNU Affero 通用公共授权第13

14 .本授权的修订版

自由软件基金会有时候可能会发布GNU 通用软件授权的修订版本和/

每个版本都有一个单独的版本号。如果本程序指出了应用于本程序的一个特定的GNU 通用公共授权版本号“以及后续版本”,您将拥有选择该版本或任何由自由软件基金会发布的后续版本中的条款和条件的权利。如果本程序没有指定特定的GNU

如果本程序指出某个代理可以决定将来的GNU

后续的授权版本可能会赋予您额外的或者不同的许可。但是,您对后续版本的选择不会对任何作者和版权所有者强加任何义务。

15 .免责申明

在适用法律许可下,本授权不对本程序承担任何担保责任。除非是书面申明,否则版权所有者和/

16 .责任范围

除非受适用法律要求或者书面同意,任何版权所有者,或任何依前述方式修改和/

17 .第15 和16

如果上述免责申明和责任范围不能按照地方法律条款获得法律效力,复审法庭应该采用最接近于完全放弃关于本程序的民事责任的法律,除非随同本程序的责任担保或责任假设合同是收费的。

- 条款和条件结束-

如何在您的新程序中应用这些条款?

如果您开发了一个新程序,并且希望能够让它尽可能地被大众使用,达成此目的的最好方式就是让它成为自由软件。任何人都能够依据这些条款对该软件再次发布和修改。

为了做到这一点,请将以下声明附加到程序上。最安全的作法,是将声明放在每份源码文件的起始处,以有效传达无担保责任的讯息;且每份文件至少应有「版权」列以及本份声明全文位置的提示。


< 用一行描述程序的名称与其用途简述>

版权所有(C) < 年份>< 作者姓名>

本程序为自由软件;您可依据自由软件基金会所发表的GNU 通用公共授权条款,对本程序再次发布和/

本程序是基于使用目的而加以发布,然而不负任何担保责任;亦无对适售性或特定目的适用性所为的默示性担保。详情请参照GNU

您应已收到附随于本程序的GNU 通用公共授权的副本;如果没有,请参照<http://www.gnu.org/licenses/>.

同时附上如何以电子及书面信件与您联系的资料。

如果程序进行终端交互方式运作,请在交互式模式开始时,输出以下提示:

< 程序> 版权所有(C) < 年份> < 作者姓名>

本程序不负任何担保责任,欲知详情请键入'show w'

这是一个自由软件,欢迎您在特定条件下再发布本程序;欲知详情请键入'show c'

所假设的指令'show w' 与'show c' 应显示通用公共授权的相对应条款。当然,您可以使用'show w' 与'show c'

如有需要,您还应该取得您的雇主(若您的工作为程序设计师)或学校就本程序所签署的“版权放弃承诺书”。欲知这方面的详情,以及如何应用和遵守GNU 通用公共授权,请参考<http://www.gnu.org/licenses/>

GNU 通用公共授权并不允许您将本程序合并到私有的程序中。若您的程序是一个子程序库,您可能认为允许私有的应用程序链接该库会更有用。如果这是您所想做的,请使用GNU 松弛通用公共授权代替本授权。但这样做之前,请阅读<http://www.gnu.org/philosophy/why-not-lgpl.html>


本篇翻译作者: bergwolf