何为 Copyleft?

发表于:2007-07-04来源:作者:点击数: 标签:
Copyleft 是将一个程序成为自由软件的通用方法,同时也使得这个程序的修改和扩展版本成为自由软件。 使一个程序成为自由软件的最简单的方法就是把它放在 公共域软件(public domain) (18k 字符), 没有版权。它使得人们可以分享程序和努力,如果他们是这样认为
Copyleft 是将一个程序成为自由软件的通用方法,同时也使得这个程序的修改和扩展版本成为自由软件。

使一个程序成为自由软件的最简单的方法就是把它放在 公共域软件(public domain) (18k 字符), 没有版权。它使得人们可以分享程序和努力,如果他们是这样认为的话。 但是它也使得那些不合作的人有机会将程序转变为 私有软件 (18k 字符). 他们可以或多或少的对程序进行修改,而后以私有产品的形式发布。那些使用这一修改过的程序的人不能像原作者给与上述修改者自由修改的权力那样进行自由的修改;中间人剥夺了这一权力。

在 GNU 工程, 我们的目标 是给予 所有 用户自由的重新发布和修改GNU软件的权力。 如果有中间人可能剥夺这一自由的话, 我们还有许多自由的使用者, 但是那些中间人将不再有自由使用的权力。 所以我们将软件置于``copyleft''的授权方式下,而不是将其置于公共域的授权方式下。 Copyleft声明任何人如果要重新发布软件,不管是否做了修改,必须使得这一重新发布的软件有被 复制和修改的权力。 Copyleft保证每个用户都有自由的权力。

Copyleft 也 鼓励 其他程序员加入到自由软件的行列。一些重要的自由软件如GNU C++ 编译器就是由于这个原因才存在的。

Copyleft 也帮助那些想对自由软件做贡献的程序员获得其雇主的允许。 这些程序员通常为公司或者大学工作。 程序员可能想把自己的改进无私的贡献给自由软件团体,但是他的雇主却希望把这些改进变成私有的软件产品。

当我们想这些雇主说明,以非自由软件的形式发布自由软件的改进版本是不合法的时候,他们通常会以自由软件的形式发布它,为不是将其扔掉。

将程序变成copyleft授权,我们首先声明它是有版权的;而后我们加入了分发条款, 这些条款是法律指导,使得任何人都拥有对这一程序代码或者任何这一程序的衍生品的使用,修改和重新发布的权力,但前提是这些发布条款不能被改变。 这样在法律上,代码和自由就不可分割了。

私有软件开发者用版权(copyright)剥夺了用户自由的权力;我们用版权保证用户自由的权力。 这就是我们为什么把``版权(copyright)''这个名字反转成了``copyleft''。

Copyleft 是一个广义的概念;有许多形式可以将其细化。 在GNU 工程中, 具体的发布条款包含在 GNU 通用公共许可证, GNU 宽通用公共许可证 和 GNU 自由文档许可证里。

相应的许可证包含在许多手册和每个GNU源代码发布里面。

GNU 通用公共许可证的设计使得你可以很容易地将其用于你自己的程序, 如果你是其版权持有者的话。你不需要修改GNU 通用公共许可证,只要在你的 程序里面恰当的加入对GNU 通用公共许可证的引用说明。请注意,如果你要 使用GNU 通用公共许可证的话,你必须使用其的全部文字。它是一个整体, 不允许部分引用。 (同样适用于 LGPL 和 FDL)

对许多不同的程序使用相同的发布条款,使得在不同的程序之间复制代码变得很容易。 因为他们使用相同的发布条款,根本不需要考虑这写条款是否适用。 GNU 宽通用公共许可证包含一个条款可以让你对普通的GNU 通用公共许可证进行修改,这样你就可以 将代码复制到一个遵守GNU 通用公共许可证的程序里面。

原文转自:http://www.ltesting.net