自由软件的定义是什么,自由软件的定义和特点
我们维持这篇文章是为了突出自由软件的定义,并解释什么样的软件适合被称为“自由软件”。
“自由软件”是关于“自由”而不是价格。“免费”的概念不是指“免费啤酒”,而是“言论自由”[因为英文中的free和free是同一个词:free]。
软件是指软件,其使用者有使用、复制、分发、研究、重写和重用软件的自由。更准确地说,自由软件给了用户四种自由:
不管出于什么目的,都有使用软件的自由(自由零)。有研究软件如何工作的自由,能够根据用户自己的需求重写软件(自由之一)。获得软件的源代码是达到这一目的的先决条件。有重新发布软件的自由,所以每个人都可以通过发布自由软件来促进睦邻友好(自由2)。有改进和重用软件的自由,并发布重写的版本供公众使用,让整个社区受益。如前所述,获得软件的源代码是达到这一目的的先决条件(自由3)。如果一个软件的用户拥有上述四种权利,该软件就可以被称为“自由软件”。也就是说,用户必须能够在任何时间、任何地点自由地重新分发软件的原始版本或重写版本,供任何人使用,而不收取任何费用或合理的分发费用。如果用户不必要求任何人或支付任何许可费来从事这些行为,就意味着她/他拥有自由软件授予的自由权利。
用户也应该有自由重写软件的权利,他们可以为了工作或娱乐而重用软件。
这种自由使用软件的权利适用于任何人、任何组织、任何计算机系统、任何工作性质,无需向软件作者或其他任何特殊人员或单位报告。
重新发布软件的自由必须适用于原始和重写软件的二进制代码和源代码。如果无法制作二进制代码的版本,可以跳过此操作,但如果后来的用户找到了其他方法来制作二进制代码,他们必须有重新分发二进制代码的自由。
为了实现重写和发布重写版本的自由,用户必须能够获得软件的源代码,因此获得源代码是自由软件的基础。
为了使这些自由成为现实,只要使用者没有犯下令人发指的罪行,这些自由权利就不能改变。如果用户没有做错什么,但软件的作者有权取消或收回其许可,那么该软件就不是自由软件。
但是,如果附加条款与上述四项主要自由权利不冲突,这些关于自由软件分发的附加条款是可以接受的。比如替代版权copyleft,规定了作者在重新发布软件时,不能无限制地否定他人的主要自由权利。这一规定与上述主要自由并不冲突,而是进一步保护了自由软件用户的权益。
用户可以付费获得GNU软件,也可以免费获得。但是,无论用户如何获得,都必须始终拥有复制或改写,甚至出售的权利。
所以,自由不是“非商业软件”。自由软件必须适合商业用途。软件的免费商业开发模式非常普遍;这样的免费商业软件非常重要。
如果不影响后期用户分发重写的权利,关于如何将一个重写的自由软件制作成套件的附加规定也是可行的。同样,类似“如果您以这种方式分发软件,您必须使该软件在这种情况下可用”的短语也在许可证之下(此类规定也给予用户是否分发软件的选择权)。如果许可证要求“当你发布修订版时,如果之前的开发者要求提供副本,你必须提供”,那也是免费的。
在GNU项目中,我们使用copyleft许可证来保护每个用户使用这些软件的自由,但是非copyleft自由软件也存在。我们相信有一些重要的原因使得copyleft的授权方法比其他自由软件授权方法更好,但是如果您的软件没有得到copyleft的授权,我们也使用它。
有关自由软件、使用copyleft许可的软件和其他种类的软件之间的联系的信息,请参考文章“自由软件的类型”。
有时,政府出口管制和贸易许可证的规定会限制用户在世界范围内分发软件的权利和自由。虽然软件开发者/作者无权排除或消除这些限制,但他们可以也必须拒绝在自由软件的使用规则中包含这些条件。这样,这些官方规定就不会影响用户的软件自由,与自由软件相关的人、事、物也因此不在这些政府部门的管辖范围内。
大多数自由软件的许可证都是基于copyleft的,并且可以强加于它的需求类型是有限的。如果基于版权的许可遵守了上述自由,我们就不太可能遇到其他类型的我们从未预料到的问题(尽管偶尔仍会出现问题)。然而,一些自由软件的许可是基于合同条款的,合同可能受到更大程度的限制。这意味着像这样的许可将在许多可能的方面变得不可接受,从而变得“非自由”。
我们真的无法列出所有不可接受的可能的合同限制。如果基于合同的许可以基于版权的许可所不能的不寻常的方式限制用户,也不能被视为本文所述的合格的[免费条款],我们将尝试审查合同,很可能得出结论:它不是免费的。
在谈论自由软件时,最好避免使用“给予”或“免费”这样的词,因为这些词会误导人们“免费”就是“按价格免费”,而忽略了软件免费使用的真正含义。一些像“盗版”这样的词有相似的意思,我们希望自由软件的用户不希望被这样称呼。关于这些表达方式的用法详情,请参考“请尽量避免混淆词语”一文。我们也有许多语言中“自由软件”一词的翻译。
最后,请注意这些与自由软件定义相关的标准需要仔细解释。我们根据软件所选择的许可方式是否符合上述四点软件自由的精神和关键词来决定一个软件是否符合自由软件的标准。如果一个软件包含违反上述四个自由软件要点精神的不公平限制,即使该软件发布,我们也拒绝使用。有时候,一个许可证会引发一些讨论。在接受它作为自由软件许可之前,我们需要与一些律师和法律专家一起判断和思考。当我们达成共识时,我们将更新自由软件标准,使用户更容易知道什么样的许可方式符合或不符合自由软件的定义。
如果您对某个特定的许可方式是否符合自由软件的许可方式感兴趣,请参见我们的文章“许可方式列表”。如果您感兴趣的许可方式不在我们的列表中,请直接通过电子邮件询问我们。请把你的信寄到licensing@gnu.org。
如果可能的话,如果你真的需要一个新的许可证,那么在我们的帮助下,你可以确定这个许可证是否真的是自由软件许可证,从而避免很多实际问题。
其他团体已经开始使用术语“开源”来指代在某种程度上等同于“自由软件”的东西,但仍然与它不同。我们倾向于使用“自由软件”的原因是,一旦你听说它意味着自由,而不是免费,你可以从它的名字中知道它专注于自由。
高级阅读