GPL 开源协议才是对自由软件世界的独立性之最大威胁

2019-02-21 17:12:33 +08:00
 noli
仔细想想这个问题,我觉得应该会有相当多的人明白 GPL 背后隐藏的巨大陷阱。
IBM,Oracle 等等,愿意投入人力物力到 GPL 的代码之中,真的是一种慷慨吗?

完全 GPL 的 Linux 内核,除了真的是开源的之外,现在真的对我们来说是自由软件吗?
我们实际上真的能够定制 Linux 内核吗?有多少公司或者团队实际上能做得到?
我们实际上可以自由地往内核里面添加想要的功能吗?谁可以做到?

更重要的是,基于 GPL 软件巨头们能够排除其他非 GPL 的竞争对手,同时不会破坏垄断巨头之间的默契。

仔细想想,作为小团队,小个体的我们,除了使用被设定好功能的 GPL 软件,真的能够从 GPL 中获得自由定制功能吗?真的能为更多软件用户作可持续的贡献吗?
4707 次点击
所在节点    奇思妙想
43 条回复
azh7138m
2019-02-21 19:19:46 +08:00
关于 copyleft
Freedom 0 – the freedom to use the work,
Freedom 1 – the freedom to study the work,
Freedom 2 – the freedom to copy and share the work with others,
Freedom 3 – the freedom to modify the work, and the freedom to distribute modified and therefore derivative works.

我觉得是。
+1
能,没有那么麻烦的。
可以,没有那么麻烦的。只是不会被合回主线。
能,能。
agagega
2019-02-21 20:57:54 +08:00
你的逻辑对于 MIT、BSD 这些不是一样?
noli
2019-02-21 23:11:57 +08:00
@agagega GPL 的传染性,强制性,使之与众不同。不能理解这个的话,我们可以不讨论这个问题。

@azh7138m 能力问题上,谁有能力当然谁就可以改。但我指的意思是,GPL 传染开源的方式,使得持续贡献是一件要求很高的事情,不利于创新。
dalabenba
2019-02-22 12:18:22 +08:00
要表达观点的话还是直接把你的证据和思路写清楚,不要用这么多反问句。
因为你的反问句并不能支持你的观点,这种写法很像阴谋论。对一个东西提出问题不等于这个东西就有问题
还有,独立性的最大威胁???这个也是标题党了
frylkrttj
2019-02-22 14:06:15 +08:00
帖主这是要闹事。还是说说你看上了哪个 GPL 项目,不好下手吧。
frylkrttj
2019-02-22 14:09:22 +08:00
我一看帖主就是想抄个 GPL 项目,然后不想搞 GPL 。
no1xsyzy
2019-02-22 14:23:24 +08:00
没明白,请用汉语
jedihy
2019-02-22 23:26:09 +08:00
我能理解 lz。GPL 对于很多公司来说跟闭源没什么区别。想看一下代码又得走公司法务。
RqPS6rhmP3Nyn3Tm
2019-02-23 01:28:57 +08:00
第一次见到把看不懂代码说得这么清新脱俗的
noli
2019-02-23 01:35:51 +08:00
@BXIA 几百万行级别的项目,我想没有个人能有信心全盘掌控,甚至小团队也搞不定。只有大公司才玩得转。

我想你高估了自己的阅历,所以你认为我在说看不懂代码。

对,我说的就是 GPL 协议的经典,Linux 内核代码。
Lax
2019-02-23 11:38:56 +08:00
"几百万行级别的项目,我想没有个人能有信心全盘掌控,甚至小团队也搞不定。只有大公司才玩得转。"
--- 干掉 GPL 协议能解决什么问题呢,同样的功能代码行数会下降,或者同样的小团队现在就能搞得定啦?
noli
2019-02-23 22:46:58 +08:00
@Lax

如果不是 GPL 的话,小团队可以做小修改小贡献不开源,然后利用这些小修改小贡献带来的商业价值,支撑更多的修改。GPL 从一开始就阻止了他们这样做的可能性。
vuuv
2019-02-24 08:18:59 +08:00
开源协议并非 GPL 一种。
而同一份代码可以拥有多种授权,如果计划商用,可以联系持有者获取其他版本的授权(例如 MIT,Apache )。
如果使用了 GPL 版本,却不想继续开源,那么抱歉了。持有者选择 GPL 就是为了治哪些只索取不奉献的。
noli
2019-02-24 12:36:18 +08:00
@vuuv GPL 的价值观中有害的假设之一就是,不开源就不是对人类有所贡献。
kahlkn
2019-02-24 16:26:31 +08:00
@noli 对,不开源就不是对人类有所贡献。

1. 反正我学习编程的时候,不管什么乱七八糟的,都会上 gayhub 去看人家的源码,优质的劣质的,抱着学习的心态,或多或少都能有所收益。就像你说的 几百万行级别的项目 ,为什么 个人 会去想要整个都看懂 全盘掌控呢?我看过太多项目的源码呢,但是都是抱着需求去看别人类似的设计(毕竟模块化,分层,抽象等,随便拿出一块稍微完整的看看,就能有好多收益,对于我这种菜鸟)。

2. “小团队可以做小修改小贡献不开源,然后利用这些小修改小贡献带来的商业价值”。开源和商业价值不冲突。举个例子吧。假如小团队看中了一个项目的源码,他们小修改之后为他们自己带来了商业价值。但是假设那个项目没有开源呢? 1 他们得凭空从头造就轮子。2 假设他们了解到某家公司(组织)有类似的东西,所以他们找这家公司(组织)申请授权(因为商业用途,肯定是需要花钱的),然后进行小修改之后创造价值。 好,然后基于 2 的可能性,那么那个开源项目的证书可能是两个,一个是针对非商业用途所授权的 GPL 证书,一个是针对商业用途所授权的证书。 那么那家小公司可以使用商业授权的证书。 (并且这里开源的好处更多,因为 2 中他们了解到某家公司这块,也许这个是机密,不可能让别人了解到,但是如果是开源,比如你在 gayhub 上搜索,说不定就搜到想用的了,就不用麻烦的花很长时间去找谁做过,也不用从头造轮子)。所以 GPL 等授权远比你想象的要成熟。

3. 再举个例子吧,比如安卓系统的源码。 应该是 GPL 的。我没有深入了解,因为我了解的是做第三方 ROM 的一般都是要依赖于厂商开源的,然后第三方 ROM 才可以去适配的。 那么就比如 miui 吧,在安卓系统上做了太多魔改了,然后比如 miui 的广告造就的收益,不也是入了 小米 的手嘛。而小米要做的仅仅是将系统开源(我不确定开源多少等等的),小米一般也是在新机发布之后 半年,甚至更久才将其开源。 小米一开源,第三方 ROM 就可以开始适配了。比如 魔趣、LineageOS 等,对这个机型进行适配,然后发布相应的刷机包。然后我就会可能去刷机。

恕我认知有限,以上仅是我愚见,如有问题,请举例指出。
kahlkn
2019-02-24 16:44:19 +08:00
我们实际上真的能够定制 Linux 内核吗?有多少公司或者团队实际上能做得到?
我们实际上可以自由地往内核里面添加想要的功能吗?谁可以做到?


定制 Linux 内核 真的很难嘛? 可以自由地往内核里面添加想要的功能,对,可以自由的添加。

1. 如果 定制 Linux 内核 真的很难,那么抱歉,现在的世界不会那么丰富多彩。夸张的讲,正是 linux 撑起了互联网的时代。比如交换机、商用路由器、家用路由器、互联网电视、安卓手机、智能家居(就那些能够联网的智能家居)等很多很多东西,都是基于 linux 内核进行定制的。

2.就比如路由器吧,首先肯定有 cpu,内存,可写入存储、wifi 天线、电源适配器等组成。光光有硬件肯定是不够滴,那么怎么选用系统呢? 用 window arm ? 抱歉拖不起。 用 unix ? unix 是针对于大型机和家用机,对于微型机应该是不行的(这块不是非常了解),而且 unix 需要授权。那么就只能使用 linux 了。系统选定了,但是有可能选用的硬件不是那么现有型号的(就那种魔改硬件,没有采用标准协议的硬件),那么抱歉,Linux 内核可能驱动不起来。那么这个厂商就只能定制 linux 内核,增加功能使其能够驱动起来。 硬件能够驱动了之后,那么比如路由器的管理界面,需要一个 http 服务,当然可能还有一些其他的功能。功能搞定之后,可以再筛减一些没用的功能,然后可以打成一个路由器的系统包。

所以定制 Linux 内核真的很难嘛? 可能只要 1 ~ 2 个熟悉 这块的(我不是很了解,就是 C/C++ 程序员,并且阅读过 linux 内核源码(不需要全部),然后看过 linux 内核解析这样的书的人)就可以了,就可以对内核进行魔改。当然上述的驱动非标准协议的硬件这个,可能需要那种单片机方面的人才吧,我猜的。但是很抱歉,这样的人才应该都可以招到,甚至你愿意也可以自学。

恕我认知有限,以上仅是我愚见,如有问题,请举例指出。
msg7086
2019-02-24 17:42:13 +08:00
> 完全 GPL 的 Linux 内核,除了真的是开源的之外,现在真的对我们来说是自由软件吗?
> 我们实际上真的能够定制 Linux 内核吗?有多少公司或者团队实际上能做得到?
> 我们实际上可以自由地往内核里面添加想要的功能吗?谁可以做到?

我们三流大学本科操作系统课程大作业,为当前的 Linux 内核编写一个驱动程序。
做不到?老师:哦,课程不及格,重修去吧您。

无知不是指责别人的依据,而是督促你进步的动力。
msg7086
2019-02-24 17:54:22 +08:00
为了证明我上述的论点,特引用我校现在的 OS II 课程作业内容如下:

http://web.engr.oregonstate.edu/cgi-bin/cgiwrap/dmcgrath/classes/17F/cs444/index.cgi?hw=3

CS444 Students: Encrypted Block Device

Write a RAM Disk device driver for the Linux Kernel which allocates a chunk of memory and presents it as a block device.

Using the Linux Kernel's Crypto API, add encryption to your block device such that your device driver encrypts and decrypts data when it is written and read. You will need to look at examples in the kernel for how to do this.

调用内核中的 Crypto API,编写一个 Linux 4.15 的内核驱动程序,生成一个 RAM Disk,并实现即时加密与解密。


另外,「 GPL 的价值观中有害的假设之一就是,不开源就不是对人类有所贡献。」

GPL 价值观的假设是,不开源就不是对人类有「足够多」的贡献。
开源的约束是相互的,你要求别人把实现的东西开源给你看,而你不愿意把自己实现的东西开源给别人看,除了双标我还能说什么?

孔子曰,己所不欲勿施于人。我们把整个事情反过来看,楼主你公司、团队,花了几十年的时间做了一个震惊世界的软件,别人拿去以后改改,一边催着你更新,一边把自己修正的补丁藏着掖着拿来卖钱,楼主你会对这样的情况非常开心吗?

你觉得 GPL 不好,那还不简单,就当做 GPL 的软件根本就不存在于世界上就行了。反正呢,按照你的说法,软件不需要强制开源,那么今天 Linux 就是个闭源的产品,你一样拿不到源代码。那你就当它是闭源的就行了。
noli
2019-02-24 18:25:32 +08:00
@kahlkn @msg7086

1. 我在使用 mac OS, 还有 Windows。我想没人能否认 Apple 和 Microsoft 对人类贡献良多。
GPL 只是特别地标榜无偿贡献。

2. 定制 Linux 是不是特别地难,对很多普通程序员来说很难。无论你如何攻击我水平怎么样,也是改变不了这个事实,而且只会变得越来越难。
noli
2019-02-24 18:29:59 +08:00
@kahlkn @msg7086

更重要的是,GPL 的 Linux 当时到底从非 GPL 的 Minix 和非 GPL 的 BSD 里面取得了多少代码,
你们两位似乎又选择性地忽略了,这本来就是非 GPL 对开源最大的贡献之一。

而如今即使你们两位很天才,能够白手起家从头写一个类 Linux 内核,也直接面临的是,与大公司还有众多 GPL 神教信徒的直接竞争。

当然你可以说,我不在乎,我没想过从头开始,没想过和 Linux 竞争,没想过闭源……

但这不能否认 GPL 妨碍了这世界上其他地方其他和你们一样天才,但抱负不一样的人,改变开源世界。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/537336

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX