如题 如果我的项目被强制要求使用 gplv3 有什么办法可以规避?
1
matsuz 2018-06-22 23:20:40 +08:00 via iPad 1
只要分发出来没有 gpl 代码就可以,开发环境不影响。举个例子,gcc 是 gpl 软件,你使用 gcc 编译的代码不强制是 gpl
|
2
NicholasWangC 2018-06-22 23:22:33 +08:00 via Android
不要打包分发时附带 node.js 就行了
|
3
leoleoasd OP @matsuz 我仔细看了看,是 electron 的一个依赖的依赖是 gplv3 的( electron-osx-sign 的依赖),但是 electron-osx-sign 本身是 bds 的。。。
意思就是说 我生产环境不依赖 gplv3 就可以把源代码不以 gplv3 开源? |
4
leoleoasd OP @matsuz 意思就是说 我 git 仓库里没有 gplv3 代码 但是 package.json 里有 没关系?下载下来的依赖的代码不在我仓库里?
不把 node_modules 传进仓库就没问题? |
5
fourstring 2018-06-23 09:58:07 +08:00
#.gitignore
node_modules |
6
leoleoasd OP @fourstring 我之前一直都不把依赖放进主仓库里。之前被人建议这样做,一直不知道意义,现在知道了,谢谢!
|
7
msg7086 2018-06-23 13:21:32 +08:00
如果你的程序依赖于一个 GPL 或者 AGPL 的项目,那么不管你是否上传 node_modules,你都违反了许可证。
GPL 关心的是你的程序是否依赖于这个项目,以及是否和这个项目的代码一起运行。 如果你的回答是「是」,那么不遵守 GPL 即是违反版权法了。 反过来说,如果这个 GPL 库整个从世界上消失了,你的程序是否还能正常运行?如果你的回答是「不能」的话。 可以看看我随便搜到的这片博文: https://samgentle.com/posts/2015-03-31-illegal-npm-modules |
8
leoleoasd OP @msg7086 electron-vue 官方使用了 cfonts 在调试时输出 log 到命令行。cfonts 以 gplv2 开源。如果这么理解,所有使用 electr-vue 的库都必须以 gplv2 开源?
|
9
leoleoasd OP @msg7086 gnu 官方的协议原文中提到的一直都是“ copy,modify,convey ”,没有找到任何“ depend ”的有关说明
|
11
msg7086 2018-06-23 15:32:24 +08:00 1
@leoleoasd IANAL.
我的理解是,GPL 的作用范围是单个完整的项目 /作品。 而版权法中对于基于一个作品所做成的另一个作品,称作衍生作品 derivative work。 衍生作品中的一小部分是 GPL 的,而 GPL 作用范围是完整作品,因此整个衍生作品就都受 GPL 所限制。 一个作品是否是衍生作品,这是没有定论的,要作出判断的时候,一般由当庭法官来判断。 如果 electron-vue 在没有 cfonts 的时候也能正常工作,那么一般认为前者并不是由后者衍生出来的作品,也即前者不受后者的许可证所限制,那么就没有版权问题。 Again IANAL. |
12
oaix 2018-06-23 19:31:28 +08:00
如果你只是把你的应用放在服务器上跑提供在线服务,而不分发软件,GPL 是不能约束你的(Web Service Loophole)。
GPL 有个衍生版叫做 AGPL,它修复了这个漏洞。 |