V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
gdgoldlion
V2EX  ›  互联网

关于开源软件你们是怎么处理这种事情的

  •  
  •   gdgoldlion · 2022-09-26 11:51:23 +08:00 · 2311 次点击
    这是一个创建于 549 天前的主题,其中的信息可能已经有所发展或是发生改变。

    本地化不太好,fork 了一份做了本地化,额外加了一些符合国内情况的功能

    如果上传到 github ,肯定被人再 fork 一份然后拿出来加 key 卖(这软件会出这种事,我 100%肯定)

    已经跟开发组打过招呼了,国内情况 github 不上传,需要代码可以发邮件过去,但这些功能讨论过他们暂时不做

    本地化部分 PR 是肯定被拒的,因为并没有做很好的设计,有些代码写的比较 shit (并没有考虑本地化的全球需求,只做了汉语,当然功能是正常的)

    开源打包拿去卖这种事,对上游开发组和项目参与影响还是很大的

    ==================================================

    不开源的话,我会做一个本地化公开版本

    不上传到 github ,有些代码管理功能自己用着不太爽

    有人建议自架 git ,但没有研究过这种情况,就怕比较麻烦

    但貌似没有其他解决方法了

    第 1 条附言  ·  2022-09-26 13:50:47 +08:00
    这么多人说协议的事,其实本来是想了解一下 git 上的问题 doge

    就先把协议缕一缕:

    》原始项目 A ,然后 A 的开发组弃坑,协议未知(年头太久不知道沉到哪里去了)
    》后面有接手的做成了 B ,B 的开发组给出的协议为 MIT
    》然后又一拨人 fork 了 B ,做成了 C ,C 主要是在 B 基础上专注 Windows 平台,做了大量 Win 上面的适配,C 未查到协议
    》然后我 fork 了 C ,做成了 D ,D 是 C 基础上增加了 Win 简中系统的语言适配,增加了部分国内用户喜欢的功能

    C 开发组明确说过,不允许贩卖
    D 的作者(我),也不允许贩卖
    但完全禁止很难,C 版国外已经卖的到处都是了
    dandycheung
        1
    dandycheung  
       2022-09-26 11:54:10 +08:00 via Android
    把本地化跟其它功能分开,本地化部分不上传,功能再用配置项控制起来,默认不打开。
    arch9999
        2
    arch9999  
       2022-09-26 12:03:04 +08:00   ❤️ 1
    你是否开源 和 源代码被人拿去封装售卖是两件事。
    a33291
        3
    a33291  
       2022-09-26 12:04:49 +08:00
    github 不是有私有仓库?
    superrichman
        4
    superrichman  
       2022-09-26 12:15:36 +08:00 via Android
    没看懂开源的动机。建议不开源
    Jirajine
        5
    Jirajine  
       2022-09-26 12:24:21 +08:00
    你可以发布二进制,并表明 GPL 许可,需要源代码者可以向你发邮件获取。
    有人发邮件要代码的时候你可以把代码里的 constant 值变一变,每人发一份不一样的。如果发现有人违反协议倒卖就可以溯源了。
    majula
        6
    majula  
       2022-09-26 12:35:49 +08:00
    如果在意 被人拿去卖 这种事情,那就不适合开源。所有开源许可都是不限制商用的。

    这个软件本身要是真的能卖钱,那你可以开源的同时自己卖钱。相反,如果你自己卖不出去,但别人套了个壳就能卖钱,那只能说明别人在商业方面比你有本事,人家的钱赚得合情合理。

    要知道,大多数开源软件之所以是开源软件,不是因为开发者有什么“开源精神”“用爱发电的情怀”,而是真的赚不了钱,甚至反过来送钱让人当自己的小白鼠用户都难。
    dlsflh
        7
    dlsflh  
       2022-09-26 13:17:01 +08:00 via Android   ❤️ 1
    @majula “所有开源许可都是不限制商用的”?你不懂能不能不瞎说?
    Cheons
        8
    Cheons  
       2022-09-26 13:24:47 +08:00 via Android
    对 fork 项目付费这么理想。
    那就直接收费,也开源可以自编译
    x199ian
        9
    x199ian  
       2022-09-26 13:31:58 +08:00
    所以上游是什么开源协议呀
    @dlsflh 有限制商用的开源协议吗?我记得开源协议确实不限制商用,可以举例吗?
    stardust21
        10
    stardust21  
       2022-09-26 13:32:06 +08:00
    @dlsflh 不限制吧,GPL 也不限制啊,只要你赚钱的同时也把修改后的源码也放出来。当然商标这些是不属于开源可商用的部分。
    gdgoldlion
        11
    gdgoldlion  
    OP
       2022-09-26 13:34:24 +08:00
    @arch9999 100% 拿去卖,我肯定
    gdgoldlion
        12
    gdgoldlion  
    OP
       2022-09-26 13:35:19 +08:00
    @arch9999 好吧,估计你说的是加 key 不需要源码
    majula
        13
    majula  
       2022-09-26 13:35:58 +08:00   ❤️ 2
    @dlsflh #7

    参考 Open Source Definition:

    > 6. No Discrimination Against Fields of Endeavor
    >
    > The license must not restrict anyone from making use of the program
    > in a specific field of endeavor.
    > For example, it may not restrict the program from being used in a business,
    > or from being used for genetic research.

    一个软件许可证能被成为“开源许可证”的第一个前提就是遵循 OSD 的条款,然后它才可能通过 OSI 认证,正式成为开源许可证。

    而 OSD 中明确规定,不能限制包括商业在内的任何用途。所以我没有瞎说,你在出来指责之前也请做好功课。
    lambdaq
        14
    lambdaq  
       2022-09-26 13:36:29 +08:00
    @Jirajine @stardust21

    是的。GPL 不仅不禁止卖软件,还鼓励你去卖。https://www.gnu.org/philosophy/selling.en.html
    Vindroid
        15
    Vindroid  
       2022-09-26 13:58:33 +08:00
    你新增功能和别人拿去违反协议的售卖是两件事情。你总不能因为在法律上允许的,但会被别人拿去干坏事就不产出吧。产出归产出,别人违法那就追究责任。
    arch9999
        16
    arch9999  
       2022-09-26 14:03:42 +08:00
    @gdgoldlion 你理解能力有点问题,我的意思是你是否开源你的分支和上下游的任何其他环节没有关系。别人违反开源协议是别人的事情,相反,如果你将基于你的分支的二进制分发给其他人而不开源、提供源代码,那么你也违反了开源协议。(特定许可证除外)
    arch9999
        17
    arch9999  
       2022-09-26 14:08:01 +08:00
    看到了追加的内容,我建议你先把 MIT license 的内容先看一遍。
    janus77
        18
    janus77  
       2022-09-26 14:27:37 +08:00
    如果你自己用,那就 fork 一份私有的,不公开
    SchneeHertz
        19
    SchneeHertz  
       2022-09-26 14:31:56 +08:00
    C 不允许售卖,那就是没有使用开源协议,无论你通过什么手段拿到他们的代码,只要他们没同意,你是没有开源的权力的
    SchneeHertz
        20
    SchneeHertz  
       2022-09-26 14:34:09 +08:00
    至于又想开源又想限制他人售卖的权利,你可以公开你的源代码,但没有适合你的开源协议,一般人也不会认为你开源了
    gdgoldlion
        21
    gdgoldlion  
    OP
       2022-09-26 19:30:24 +08:00
    @arch9999 MIT 协议我之前就了解过。如果讨论协议的话,我想知道的是后续 fork 之后变更的问题。
    gdgoldlion
        22
    gdgoldlion  
    OP
       2022-09-26 19:32:05 +08:00
    @arch9999 你真的看过 MIT 吗?你不如看看 MIT 是怎么写的,什么情况下是违反 MIT 协议。不明白你们这么纠结协议是什么意思,我的表述自始至终都很清晰。
    gdgoldlion
        23
    gdgoldlion  
    OP
       2022-09-26 19:35:22 +08:00
    @SchneeHertz 目前看来确实没什么好办法,这也是很多国外开源项目有一部分走向闭源的原因。毕竟开源了,哪怕有许可证也限制不了国内贩卖。
    gdgoldlion
        24
    gdgoldlion  
    OP
       2022-09-26 19:59:13 +08:00
    这个贴已经没有意义了,楼完全歪掉了,我已将主题下沉。纠结其他问题已经偏离帖子本身。
    对部分人来说,如果看不惯可以 block 掉,没必要浪费彼此时间。
    arch9999
        25
    arch9999  
       2022-09-26 22:40:44 +08:00
    @gdgoldlion

    『你开不开源,取决于你,而不是什么狗屁协议、什么狗屁人会不会拿去卖。』

    你要不要看看你自己一直在说的都是什么东西?
    inframe
        26
    inframe  
       2022-09-26 22:46:12 +08:00
    开源软件不等于免费软件,
    公司里有法务专门整这个玩意儿规避风险
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   3147 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 12:37 · PVG 20:37 · LAX 05:37 · JFK 08:37
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.