使用Apache协议的是自由软件吗?( 二 )


FSF对自由软件的定义放在这里:https://www.gnu.org/philosophy/free-sw.html,FSF提出4项自由,如果一个软件提供了下面这4项自由,它就是自由软件 。
自由度0:用户可以按照自己的意愿,自由地运行该软件,而不论出自何种目的 。
自由度1:用户可以自由地学习该软件,可以按照自己的意愿修改该软件 。
自由度2:用户可以自由地分发该软件的拷贝,这样就可以帮助他人 。
自由度3:用户可以自由地分发该软件修改后的拷贝,这样,他人可以从中受益 。
当然,因为涉及修改,自由度1和自由度3都暗含了对开放源代码的要求 。
定义中所谓“自由”,意味着这些行为(运行、学习、修改、分发)不必事先征得任何人的许可,也不必为此额外支付任何费用 。
FSF还强调,自由软件允许商业用户、商业开发和商业发布 。商业和自由并不矛盾,钱可以收,但用户的自由不可剥夺 。由于源码是开放的,许可证又给予了他人种种自由,所以并不存在那种因商业秘密或专利保护所带来的暴利
自由软件的商业收费主要是复制软件的成本费、对软件提供维护的维保费、培训费等服务性费用,挣不了什么大钱 。

但某些开源软件的企业版就不一样了,企业版通常并不开源,它们不是开源软件也不是自由软件,它们用的是商业许可证,即便给你源码,也会有很多限制 。
从上面的定义可以看出,开源软件和自由软件其实差不多的 。连FSF都在官网上承认了这点4:
“开源软件和自由软件或多或少是同一类软件,虽然并不是完全相同:开源所接受的一些许可证我们看来限制过多,还有一些我们认可的自由软件他们不认可 。但不管怎样,差异是很小的:几乎所有的自由软件都是开源软件,几乎所有的开源软件都是自由软件 。”
在OSI的官网上5,维护着OSI认为符合开源软件定义的许可证列表,上面那9个都是符合开源软件定义的许可证 。
在FSF的官网上6,维护着FSF认为符合自由软件定义的许可证列表,上面那9个都是符合自由软件定义的许可证 。
你还可以在SPDX这个网站获取分类信息7,它维护了一个有接近400个许可证的列表,里面列出了哪些是FSF认可的,哪些是OSI认可的 。
 
此外,还可以维基百科的“Comparison of free and open-source software licences”词条中查看 。8
什么是copyleft现在我们知道,使用Apache许可证的软件是自由软件,那它是copyleft软件吗?
答案:不是 。
copyleft不好翻译,目前有“版权开放”、“版权属左”、“左版”、“著佐权”、“版权左派”,“版责”等多种翻译,但并没有被普遍接受和采纳的 。
先说一下什么是copyrigh 。
copyright即版权,亦称著作权,是指作者对其作品的权利 。从字面上看,copyright尤其关注copy的权利(right),一个软件卖给某用户后,除非作者同意,用户是不能随意复制(比如说让你在这个机器上用,你就不能在另外一台机器上再装一套)的,除此之外,除非作者许可,也不能修改、不能对外发布等等 。
所以,传统上,一般我们都能看到这样的表述:Copyright © 2004 XXXX. All rights reserved. 此即“版权所有”,就是说版权拥有者对其作品的权利都是保留的,仅仅开放他所许可的内容 。
下面是一个版权声明的样例 。
使用Apache协议的是自由软件吗?

文章插图
 
copyleft要大方的多,基本上所有权利都让渡给用户了,Richard Stallman曾说明过Copyleft一词的由来:
“1984或1985年,DonHopkins(一个很有想像力的家伙) 给我写了一封信 。在信封上他写了一些逗趣的话, 其中包括:copyleft —all rights reversed(copyleft-反转所有权利) 。于是,我就用copyleft一词以命名当时我正考虑的软件发行概念 。” 9
和自由软件一样,copyleft也没有很严格的定义,都属于很宽泛的概念 。FSF对copyleft的定义: “copyleft是一种通用的方法,通过它,使某个程序成为自由软件,并要求其衍生程序(对该程序进行修改和扩展后产生的程序)也是自由软件 。”10
Copyleft is a general method for making a program free software and requiring all modified and extended versions of the program to be free software as well.
从该定义看,copyleft软件天然是一个自由软件,但比自由软件多了一项对用户的要求,就是copyleft许可证要求修改后的copyleft软件,也必须以copyleft软件发布 。这就是人们常说的“传染”,你用了一个开源软件,你也必须把自己的修改和补充都开源出来 。


推荐阅读