|
GNU 通用公共许可协议(英语:GNU General Public License,简称GNU GPL或GPL),是一个广泛被使用的自由软件许可协议,最初由理查德·斯托曼为GNU计划而撰写。GPL许可证发展到现在已经有了三个版本,分别是GPL1.0、GPL2.0、GPL3.0,以及由GPL所衍生出来的适用于数据库的LGPL许可证。GPL许可证因为其极强的“传染性”,从而被视为最能体现开源精神的“自由”和“共享”理念的许可证。本文接下来将对GPL1.0进行简要分析。
GPL1.0开源许可证作为首个发布的开源许可证,其内容相对于后续发布的其他许可证是十分详细的。一开篇,GPL1.0就重新阐述了开源许可证诞生的理念——“自由”和“共享”,但不是意味着“免费”,同时也明确了需要对软件的版权进行保护,也就是说,虽然开源但不等于开发者的代码进入了公共领域、成为公共物品。开篇的宣言不仅介绍了GPL开源许可证的目的,也使得许可证的接收者对如何使用适用该许可证的代码有了基础认识。
前言过后,紧接着是最为重要的部分——明确复制、分发和修改的条款和条件,主要内容有:
(1)GPL1.0适用于版权所有者在代码中放置了该许可证的所有软件代码或承认适用GPL1.0的所有代码。
(2)接收者可以复制和分发未改动的源代码,条件是:
1)放置自己的版权声明和免责声明;
2)保留他人的版权声明和免责声明;
3)保留以及所有涉及GPL1.0的声明和不提供任何保证的声明;
4)随项目给后续接收者GPL1.0的副本。
5)接收者可以对其复制和分发等行为进行收费。
(3)接收者可以修改源代码,并可以复制和分发修改后的源代码,条件是:
1)遵守第1条的要求;
2)在修改的文件中附上一个显著的说明,说明接受者修改了文档以及修改的日期;
3)使得所分发的作品(无论整体还是部分地包含本项目代码,也无论是否修改本项目代码),适用GPL1.0开源许可证并免费分发给任何第三方。
4)如果修改后的程序在运行时,通常以交互方式读取命令,那么在前述交互式适用开始时,接收者必须使它以一个最简单和最常用的方式,打印或显示一个公告——包括适当的版权声明和无保证的声明(或接收者提供了担保的声明),以及用户可以在前述条件下重新分发该程序,并告诉用户如何查看GPL1.0许可证的副本。
5)可以为前述行为付费或者提供保证。
6)传染性例外条款:仅将本程序(或其衍生产品)与另一项独立作品聚合到一定数量的存储或分发介质上,并不会将独立作品置于GPL许可证的管辖范围中,即在这种情况下,独立作品不会被GPL1.0许可证传染。
(4)接收者可以以目标代码或者可执行代码形式复制、分发(包括本程序、本程序的一部分或项目的衍生代码),条件是做到以下之一:
1)在遵守前述分发、复制、修改等要求的前提下,附上完整的、机器可读的源代码;
2)附上一份有效期至少为三年的书面报价,免费给予任何第三方一份完整的、机器可读的源代码的副本(该副本需要在符合前述分发、复制、修改等要求下被分发),该行为可象征性收取费用;
3)附上可以在哪里获得源代码的信息。(此选项仅在接收者进行非商业分发且接收者只接收了本程序的目标代码或可执行形式时方可选用)
作品的源代码是指对作品进行修改的首选形式。对于可执行文件,完整的源代码意味着它包含的所有模块的所有源代码;但是,作为一个特殊的例外,它不需要包含以下标准模块的源代码:a.可执行文件运行时依靠的操作系统所附带的标准库;b)该操作系统所附带的标准头文件或定义文件。
(5)通过复制、分发或修改程序(或任何基于在程序上)您表明您接受此许可证,及其所有条款和条件。
(6)无附加义务:每次您再分发这个程序(或者基于这个程序的作品)时,在遵守本许可证的条款和条件的前提下,接收者自动从原始许可证处获得复制、分发或修改本程序的权利。您不得对这些权利附加额外的限制。
(7)自由软件基金会可能会不时发布修改的或者新的版本的GPL许可证。新的版本的GPL许可证的精神与目前版本的许可证是相似的,但是可能在处理新问题或新疑虑方面存在细节方面的不同。
每一个版本的GPL许可证都会有不同的版本号。如果一个程序指定适用某一个版本的许可证和“任何之后的版本”,则您可以选择遵循该特定版本的GPL许可证的要求和条件或者遵循任何自由软件基金会之后发布的任何版本许可证的要求和条件。如果程序没有制定适用某一个版本的GPL许可证,则您可以选择遵循自由软件基金会发布的任何版本的GPL许可证的条款和要求。
(8)如果您希望将程序的某一部分并入其他适用不同分发要求的自由程序中,请您写信给作者获得允许。对于版权属于自由软件基金会的程序,请写信给自由软件基金会,我们有时会做出例外决定。我们的决定取决于两个目标:保护我们的所有自由软件的全部衍生品的自由状态以及促进团建的普遍分享和再利用。
(9)无保证。由于该程序是免费许可的,因此在适用法律允许的范围内,该程序没有任何保证。除非另有书面说明,版权持有人和/或其他方提供的程序按“原样”提供,无任何明示或暗示的保证,包括但不限于适销性和特定用途适用性的暗示保证。您应承担程序质量和性能的全部风险。如果程序被证明有缺陷,您将承担所有必要的维修、修理或纠正费用。
(10)在任何情况下,除非适用法律要求或书面同意,否则任何版权持有者或任何其他可能根据上述许可修改和/或重新分发程序的一方均不对您承担任何损害赔偿责任,包括任何一般、特殊、,因使用或无法使用程序而产生的附带或后果性损害(包括但不限于数据丢失或数据不准确或您或第三方遭受的损失,或程序未能与任何其他程序一起运行),即使该版权持有者或其他方已被告知此类损害的可能性。
(11)条款和条件结束。
附录:如何将这些条款应用于您的新程序
如果你开发了一个新的程序,并且你希望它对人类有最大的用处,那么实现这一点的最好方法就是让它成为自由软件,每个人都可以根据这些条款重新分发和更改。
为此,请在程序中附加以下通知。最安全的做法是将它们附加到每个源文件的开头,以最有效地传达排除保证;并且每个文件至少应有“版权”行和完整通知所在位置的提示。
<one line to give the program&#39;s name and a brief idea of what it does.>
Copyright (C) 19yy <name of author>
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 1, or (at your option)
any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA.
同时添加有关如何通过电子邮件和纸质邮件与您联系的信息。
如果程序是交互式的,当它以交互模式启动时,让它输出一个简短的通知,如下所示:
Gnomovision version 69, Copyright (C) 19xx name of author
Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w&#39;.
This is free software, and you are welcome to redistribute it under certain conditions; type `show c&#39; for details.
The hypothetical commands `show w&#39; and `show c&#39; should show the
appropriate parts of the General Public License. Of course, the
commands you use may be called something other than `show w&#39; and `show
c&#39;; they could even be mouse-clicks or menu items--whatever suits your
program.
You should also get your employer (if you work as a programmer) or your
school, if any, to sign a &#34;copyright disclaimer&#34; for the program, if
necessary. Here a sample; alter the names:
Yoyodyne, Inc., hereby disclaims all copyright interest in the
program `Gnomovision&#39; (a program to direct compilers to make passes
at assemblers) written by James Hacker.
<signature of Ty Coon>, 1 April 1989
Ty Coon, President of Vice
这就是GPL1.0的全部!
以上就是GPL1.0开源许可证的主要内容!因为网上的翻译参差不齐,所以结合网上的翻译以及DEEPL等机翻,加上楼主自己的理解形成了自己版本,希望和大家共同进步! |
|