上周在望京的咖啡馆碰着阿凯,脸白得像刚从服务器机房爬出来——他做的那款帮小商家自动发朋友圈的SaaS工具,上线刚满三个月,收到了一份来自某开源社区的律师函。
“我就抄了几行代码,也算违约?”
他当时跟我吐槽,就是为了赶618的版本,权限模块卡了快一周,实在赶不及,直接从GitHub拉了个标着“GPLv3”的开源项目,把里面的核心权限校验代码抠了三十多行,嵌到自己的产品里,连原作者留的注释都删得干干净净。在他的认知里,“开源就是大家都能用,我又没拿去卖钱?不对,我这是免费工具加增值服务,不算商用吧?”
说实话,我见太多这种开发者了——总觉得开源代码就是公共厕所,进去掏完纸擦完屁股,连门都不带关的。
但他不知道,GPLv3协议的“传染性”条款是所有开源协议里最严的:你只要在自己的闭源产品里用了哪怕一行受这个协议约束的代码,整个产品的源码都必须公开给所有用户,不然就是实打实的违约。他一个靠增值服务收年费的SaaS,本来就是闭源的,这一下踩了两个坑:一是没给原作者署名,二是违反了GPL要求的开源义务。

“不是没人管,是你还没够到被追的门槛”
很多人对开源协议违约的认知,还停留在“大公司才会被起诉”的阶段——前几年华为、小米因为没公示开源代码被社区追责的新闻大家都看过,但总觉得那是人家体量够大,值得花时间去告。自己这点小生意,谁会闲得来找事?
不过话说回来,现在真的不一样了。早年的开源项目大多是学生或者技术爱好者靠爱发电做的,别说维权,连作者自己可能都忘了自己写过这段代码。但现在的开源生态早就变了:很多核心项目的维护者是全职做开源的独立开发者,或者背后有商业化运营的基金会,人家靠开源吃饭,当然要盯着有人白嫖。
去年深圳有个做小型零售ERP的三人团队,就因为用了一段MIT协议的权限校验代码没署名,被原作者——一个在杭州工作的独立开发者——追着要了12万的赔偿。别觉得MIT协议看似宽松就可以随便造,它也有硬要求:必须在你的产品里保留原作者的版权声明,你要是把那段代码的注释全删了,等于直接撕了签好的合同,照样吃官司。

“现在的追责,已经不盯着大公司薅了”
之前开源维权的成本确实高,要跨地域举证,要核算获利额,很多小作者耗不起那个时间精力。但现在有了新的玩法:不少专门做开源合规的第三方公司,会爬遍全网的闭源产品,用代码相似度自动检测工具扫,只要你用了他们托管的开源代码没合规,直接批量发律师函,成本低到离谱。
阿凯的情况就是这么来的。他的产品上线之后,被合规工具扫到和那个GPL项目的代码相似度超过80%,人家直接把律师函寄到了他的个体工商户注册地址。给的选择也很直接:要么一周之内把整个SaaS的源码全部公开,给所有用户免费授权;要么赔20万,不然就去知识产权法院起诉。
他当时差点把咖啡泼键盘上。
没人想故意违约。都是侥幸。
他本来想靠这个工具赚点奶粉钱,三个月卖了8万多,本来想着再攒点钱就能租个小办公室,现在倒好,赚的不够赔的。最后跟对方谈了半个月,赔了3万块,把那段抠来的代码全部换成了自己写的,现在每次用开源代码之前,先把协议从头到尾读一遍,就怕再踩坑。
别把开源代码当公共财产。人家熬了几十个通宵写出来的东西,签了什么协议,你用之前就得认。法律从来不会等着大公司出事才来,你那点小生意,只要踩了规则的线,照样会被找上门。