GNU 对自由软件的定义:与免费无关
近年来,很多开源项目在商业化的过程中遇到了困难,抗议开源商业化的声音也一直存在。在很多对自由与开源软件不太了解的人眼中,开源软件 = 免费软件 —— 这其实是一个错误的观念。
自由软件运动之父 Richard Stallman (RMS)曾在 GNU 章程中明确表示,自由软件是可以被售卖的。
也就是说,自由与开源软件的商业化其实是一件非常合理的事情。
下文来自 GNU 官网,文中的“我们”指代以自由软件运动之父 Richard Stallman 为代表的自由软件基金会(FSF)。
销售自由软件
很多人以为 GNU 工程的精神是不收取任何发行软件的费用,或是尽量少收取费用(只收成本价)。这其实是一个误解。
事实上,自由软件基金会鼓励自由软件的发行者按自己的意愿收取费用,能收多高就收多高。如果某个许可证不允许用户复制拷贝并销售,那么它就是一个非自由的许可证。如果你觉得很惊讶,请继续读下去。
“free”这个字基本上有两个意思:一是(言论)自由,二是(价格)免费。当我们在讨论 “free software” 时,我们讨论的是自由,而不是价格。(请考虑一下“言论自由”,而不是“免费啤酒”。)更确切地说,这意味着自由软件用户有自由运行、学习、修改以及再发行原版或是修订版软件的权利。
自由软件有时候是免费发行的,有时候却得支付可观的费用。同样的一款自由软件在不同地区可能会有以上两种不同的发行方式。但是,无论价格如何,它都是自由的,赋予用户自由使用的权利。
非自由软件通常以高价出售,虽然有的厂商同样会送你免费拷贝,但这并不代表该软件就是自由软件。不论有价或无价,因为其用户被剥夺了软件自由,所以这些软件不是自由软件。
既然自由软件无关价格,比较低的价格不会使软件成为自由软件,甚至也不能使之变得更接近自由。所以,当你再发行自由软件拷贝的时候,当然可以收取可观的费用并赚到钱。二次发行自由软件是一件好事也是合法的行为,借此赚钱也无可厚非。
自由软件是一个社区工程,每个受益者都应该尽力贡献让这个社区发展壮大。自由软件的发行者可以贡献一部份利润给自由软件项目或自由软件基金会。这样将可以让自由软件的世界更加进步。
发行自由软件正是为未来发展筹资募款的良机,千万不要浪费这个机会!
为了支持自由软件的开发维护,你必须有一些盈余。如果你收取的费用太低,你将不会有任何盈余可以支持开发。
较高的发行价格会不会伤害到某些用户呢?
人们有时候会担心收取较高的发行费用会让没钱的人无法用到自由软件。对专有软件来说,其高昂的价格正是这个作用 —— 但是自由软件不同。
不同的地方在于:自由软件基本上会自然地散布出去,而且有很多不同的方法可以得到它。
软件封闭者会想尽办法来阻止那些没有支付标准价格的用户运行其专有软件。如果价格太高,当然一些用户就不太会去用这些专有软件。
对自由软件来说,用户不必支付发行费就可以使用。用户也可以从朋友处复制自由软件,或是透过朋友的帮助从网络上下载自由软件,或是几个用户可以合买一个 CD-ROM,再各自安装该软件。如果是自由软件的话,较高的 CD-ROM 价格并不会是主要障碍。
较高的发行价格会不会阻碍自由软件的推广 ?
另一个常见的担心是关于自由软件的普及度。人们通常以为,高发行价格会减少用户的人数,或是较低的发行价格会让用户人数增加。
专有软件确实如此 —— 但是自由软件不同。由于有许多种方法可以得到自由软件的拷贝,所以事实上发行价对自由软件的普及度影响非常小。
长期而言,自由软件的用户数量主要取决于自由软件能够做多少事以及自由软件有多好用。许多用户并不把自由放在首位;如果自由软件不能提供给人们所需的全部功能,他们会继续用专有软件。因此,长期而言,如果我们想增加用户数量,我们的当务之急是开发更多更好的自由软件。
达成此目的最直接的方法是亲自编写人们需要的自由软件或者是撰写手册。但如果你并不是自由软件编写者而是发行这些软件的人,那么最好的方法是为编写自由软件的人募集资金。
“销售软件”一词也可能令人困惑
严格地说,“销售”一词的涵义是以物换钱。贩售自由软件的拷贝是合法的,我们也鼓励这项销售行为。
但是,当提到“销售软件”时,人们通常会想到的是大多数公司销售软件的方式:使之成为专有软件,而不是自由软件。
所以,除非你像这篇文章这样,很小心地划清界线,我们建议你最好避免使用“销售软件”这个词汇,而选用其他词汇来表达。例如,你可以说,“收费发行自由软件” —— 这样就不会模棱两可。
收费高低和 GNU GPL 协议
除了一个特例,GNU 通用公共许可证(GNU GPL)并未限制你可以从发行自由软件这项行为中收取多少费用。你可以不收费,你也可以只收一块钱、十块钱、甚至一百万。随便你!但是,这是市场经济,如果没有人愿意付一百万买你的版本,不要来怪我们。
这个唯一的特例是,发行二进制码,却没有提供完整的源代码。GNU 通用公众许可证就会规定发行者在被要求时提供源代码。如果此时没有源代码的价格限制,某些发行者就会索取非常高的费用—— 比如一百万美元 —— 这样的销售手段是假装发行源代码,实际则是为不提供源码的找借口。在这种情况之下,我们不得不限制源码价格以保障用户的自由。然而,一般而言并没有这种情形让我们限制发行费用,所以我们也不限制发行价格。
有时候,一些不遵守 GNU GPL 的厂商会请求 FSF 给予例外,说他们“不会对 GNU 软件收费”之类的话。他们和我们不是一路人。自由软件关乎自由,GPL 就是为保护自由而生。当我们保障这些自由的时候,我们不会因为价格问题而分散注意力。自由是问题所在,自由是整个问题,更是唯一的问题。
本文遵循 Creative Commons Attribution-NoDerivatives 4.0 International 协议

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
Fedora IoT 确认将在 Fedora 33 中升级为
上周举办的 FESCo 会议结束之后,Fedora 工程和指导委员会进行了线上投票,通过了在 Fedora 33 中将 Fedora IoT 升级为"Official Edition"的提案,使其获得与 Fedora Workstation 和 Fedora Server 等相同的认可。 此前相关的报道提到过 Fedora IoT 已经发展得十分成熟,当时红帽公司的Peter Robinson希望通过"new Edition Promotion Process"流程推动其升级为"Official Edition"。因为成为"Official Edition"有助于 Fedora IoT 的普及并被更多地采用,以及提升 Fedora 在物联网生态中的影响力。 Fedora IoT 依赖于RPM-OSTree 提供原子更新、专注基于容器的工作负载领域,以及拥有其他不同于多数 Fedora 版本的变化,使其与它们有所区别,同时还满足从工业网关到智能城市设备的物联网用例。 当然,成为"Official Edition"亦即意味有了更多要求,例如要求负责该版本的团队举行定期的公开会议、获得 Fe...
- 下一篇
AngularJS LTS 将延长 6 个月
Angular 团队宣布,鉴于 COVID-19 疫情的影响,其计划将 AngularJS LTS 延长 6 个月,直至 2021 年 12 月 31 日。 在 2018 年 7 月 1 日,我们进入了 AngularJS 1.8 的长期支持阶段(LTS)。我们最初宣布的是,将在 2021 年 7 月 31 日终止支持。 在过去的几个月中,我们听说全球 COVID-19的大流行给许多公司造成了空前的伤害。作为应对,我们计划将 AngularJS LTS 再延长 6 个月,直至 2021年 12 月 31 日。 事实上在7月底,Angular方面曾在官方 Twitter 帐户简短的宣布过了这一消息。此次发文则是针对这一计划进行了进一步的说明。 该团队在博客中表示,即使在 AngularJS LTS 结束之后,所有现在能用的 AngularJS 应用,将来也能继续使用。AngularJS 软件包仍将在 npm、bower 和 CDN 上可用。“随着 Angular 10 版本的发布,我们将继续推动平台的功能发展,以帮助开发人员提高生产力。” 此前,Angular还发布首个正式的路线图,面向...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- SpringBoot2整合MyBatis,连接MySql数据库做增删改查操作
- CentOS8,CentOS7,CentOS6编译安装Redis5.0.7
- SpringBoot2全家桶,快速入门学习开发网站教程
- CentOS8安装Docker,最新的服务器搭配容器使用
- CentOS6,7,8上安装Nginx,支持https2.0的开启
- CentOS关闭SELinux安全模块
- CentOS7设置SWAP分区,小内存服务器的救世主
- Docker安装Oracle12C,快速搭建Oracle学习环境
- Docker快速安装Oracle11G,搭建oracle11g学习环境
- CentOS7编译安装Gcc9.2.0,解决mysql等软件编译问题