GPL 协议开源项目在被社区完善后发布收费闭源的商业版或转闭源需要为贡献者支付报酬吗?

2022-07-09 20:51:30 +08:00
 dfgxcvbcv
2280 次点击
所在节点    程序员
10 条回复
westoy
2022-07-09 20:57:43 +08:00
以我的认知,GPL 的并不能转 GPL 以外的协议, 除非你能获得贡献者的授权或者移除他们所有的代码, 而且你也不能阻止之前开源的代码以 GPL 的协议继续衍生

双协议的项目一开始就是双协议的, 并不是中途转成 GPL 的
akira
2022-07-09 21:58:14 +08:00
协议 是防君子的
icyalala
2022-07-09 22:19:46 +08:00
看 License ,最上面应该写了 Copyright ,那个人有权来修改他拥有项目的协议。
你如果依赖了 GPL 的库,那可以按 Copyright 找到拥有者来为你特别授权,
你自己的项目,再移除了所有 GPL 依赖后,也可以改成其他协议。

但是已经发布出去的代码是改不了协议的,对方在获取到那一版代码时,协议就生效了。
PMR
2022-07-09 22:50:45 +08:00
据我了解 改 license 需要所有 contributors 同意 除非移除相关代码片


Copyright 属于贡献者 不是项目
icyalala
2022-07-09 23:41:11 +08:00
@PMR Copyright 一般是写在 License 最开头的,可能是一个 /多个人或组织。
从法律上说,修改 License 的权利在 Copyright holder ,并不是所有 Contributor 都有这个权利的。
如果你贡献多,你可以试着把自己加到 Copyright 列表里。

GPL FAQ 也提到了这些:
https://www.gnu.org/licenses/gpl-faq.en.html#HeardOtherLicense
https://www.gnu.org/licenses/gpl-faq.en.html#LinkingOverControlledInterface
jim9606
2022-07-10 00:15:46 +08:00
改协议需要所有贡献者同意。
所以搞开源商业的公司在项目接收外部贡献时会要求签署 Contributor License Agreement (CLA),授权公司修改授权模式或者转让版权,这样可以避免上面的麻烦。
对于采用类 GPL+商业授权双许可证的项目,这是必须的步骤。
agagega
2022-07-10 00:57:50 +08:00
他如果要这样做,得要求你签一个贡献者协议之类的东西,否则默认你贡献的代码只遵守 GPL 许可证,他没法拿来私用。
ca1123
2022-07-10 09:38:03 +08:00
标准做法不是做隔离么?
geelaw
2022-07-10 09:51:26 +08:00
>需要为贡献者支付报酬吗?

这完全偏离了 GPL 的重点。GPL 的重点在于软件是否自由,而不是是否免费。

GPL 是版权持有者给其他人的授权,版权持有者并不丧失本来的任意权利,包括停止开源等。通常情况下,版权持有者是作者,每次修改都是创作衍生作品,因此没有特殊安排时,所有曾经贡献代码的人是共同的版权持有者(即使某个人贡献的代码已经被全部修改或删除过,也是),最初的作者并单独享有版权,而是对他创作的部分享有版权,对于其他部分,最初的作者只不过是得到了其他版权持有者的授权而已。Linux 内核就是这种模式。

在这种情况下,最新的版本(无论是否继续衍生)闭源发布,显然是违反 GPL 的行为,任何其他版权持有者皆可追求他们的权利。

一种常见的做法是要求所有作者都把他们的版权转移给项目负责人或机构(例如 FSF 就是这样操作的,但他们的主要目的是允许 FSF 集中采取行动保护 GPL 所赋予的自由),这样项目负责人或机构永远是惟一的版权持有者,自然可以对它做任何事情,包括闭源。
hjc4869
2022-07-10 13:56:45 +08:00
一般商业运作的开源软件(并非仅限于 GPL)在接受贡献时会要求贡献者签 CLA ,同意将贡献内容无偿授权给项目所有人,使其可以任意更改协议等等。

如果没有 CLA 就不行。就像 Linux kernel 现在的状况,由于没有 CLA 并且早期将其定死在 GPLv2 ,现在连 Linus 本人都不能将其整体升级为 GPLv3 或者修改为其它协议。

如果你不想签 CLA 又想给开源生态作贡献,可以自己维护一个 GPL fork 。

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

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

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

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

© 2021 V2EX