我更改了我的许可证
摘要
作者回顾了自己将默认软件许可证从宽松的 MIT 更换为具有强 Copyleft 性质的 EUPL-1.2,并认为宽松型开源许可主要让大型企业获利,却损害了开发者和用户的利益。
暂无内容
查看缓存全文
缓存时间: 2026/09/06 12:21
# 我更换了我的许可证
来源:https://bergie.iki.fi/blog/eupl/
在过去28年发布软件的历程中,我经历了三个截然不同的软件许可时代。我最近的所有作品都在欧洲联盟公共许可证1.2(European Union Public License 1.2)下发布,我想解释一下原因。
Midgard(http://midgard-project.org/)全部采用LGPLv2。那是一个更简单的时代,自由软件许可证还没有那么多。由于Midgard是一个Web框架,使用弱著佐权(weak copyleft)许可证感觉是正确的选择。随Midgard附带的示例网站则采用X11许可证。
当我在2011年左右开始更认真地使用JavaScript(https://bergie.iki.fi/blog/the_universal_runtime/)时,我转向了MIT许可证。这是一种"你想怎么用都行,只要别告我"的简单约定,深受NPM包生态系统的青睐。互操作性强,没有任何附加条件。
在我们关闭了Flowhub(https://bergie.iki.fi/blog/flowhub-ug/)之后,有几年我几乎没有发布任何软件。这既是因为当时的工作状况不允许,也是因为我忙于船只相关的事情。
## 转向EUPL
今年,我决定将我的"默认许可证"切换为EUPL-1.2(https://interoperable-europe.ec.europa.eu/collection/eupl)。这是一个由欧洲联盟(European Union)创建和发布的OSI认证自由软件许可证。这与我过去使用的许可证有很大的不同。EUPL是一个强著佐权(strong copyleft)许可证,它通过要求无论软件以何种方式分发都必须采用互惠许可,从而堵上了"SaaS漏洞"。
这些年来,有一点已经很明显:我们这些"开源"阵营的人(相对于"自由软件"阵营而言)一直都是错的。我们赢得了辩论,但用户和开发者几乎没有从中获益。我们的努力只是让大公司更容易以更低的成本构建产品,让亿万富翁变得更富有。
因此,是时候停止在宽松许可证上浪费时间了。如果企业不想在我们的条款下使用我们的软件,他们完全可以自掏腰包或花费精力去构建自己的。
此外,EUPL拥有23种语言的具有法律效力的官方翻译(https://interoperable-europe.ec.europa.eu/collection/eupl/eupl-text-eupl-12),在一个大多数软件都是在硅谷之外更广阔的世界里构建和使用的时代,这无疑也是一个加分项。
以下是我已经在EUPL下发布的一些项目:
- reticulum-js(https://reticulum.js.org/):Reticulum网状网络协议的JavaScript实现
- dacar(https://github.com/bergie/dacar):基于Reticulum构建的去中心化授权系统
- signalk-energy-predictor(https://github.com/meri-imperiumi/signalk-energy-predictor):为使用可再生能源的船只提供的预测系统
- offshore-blogging-system(https://www.npmjs.com/package/@meri-imperiumi/signalk-offshore-blogging):通过InReach卫星短信发布博客文章和下载天气数据的工具
此外,新版NoFlo开发环境(NoFlo Development Environment)(https://github.com/noflo/noflo-ui/tree/next)的重写也采用EUPL。NoFlo(https://noflojs.org/)本身将继续保持MIT许可,因为它是一个已有大量第三方贡献的既有项目。
相似文章
零成本谬误:智能体时代的开源软件
本文审视了智能体时代开源许可的悖论,认为宽松许可证使得企业能够剥削志愿维护者,并呼吁重新评估许可模式以确保可持续性。
PHP 许可证变更即将生效
PHP 项目正在投票,计划以 BSD 三条款许可证取代现有的双许可证结构,以简化其法律框架。
许可可以令人愉悦(且法律上存疑)(2024)
本文探讨了软件许可如何反映价值观并注入快乐,讨论了诸如JSON许可中的'Good, not Evil'条款以及有趣的Gay Agenda License等例子。
Microsoft取消Claude Code许可证,将开发者转向GitHub Copilot CLI——此举可能出于财务动机(2分钟阅读)
据报道,Microsoft正在取消内部Claude Code许可证,转而让员工使用GitHub Copilot CLI,这一做法出于财务动机和产品一致性考虑。
我不再需要你的 PR
一位开源维护者解释为何现在更偏爱由 LLM 生成的代码,而非社区 PR:AI 辅助能降低风险与摩擦,将贡献价值转向反馈、缺陷报告与设计讨论。