写点什么

没见过这么荒谬的开源要求!20 多年老牌软件仅开源一个月就删除了全部代码

  • 2024-10-18
    北京
  • 本文字数:3536 字

    阅读完需:约 12 分钟

大小:1.52M时长:08:52
没见过这么荒谬的开源要求!20多年老牌软件仅开源一个月就删除了全部代码

在将源代码上传至 GitHub 仅一个月后,WinAmp 的所有方突然删除了整个 repo。其中相当一部分源代码恐怕并非由其贡献,但同样“惨遭毒手”。

 

此前,Winamp 播放器兑现了今年 5 月的承诺,于 2024 年 9 月 24 日正式在 GitHub 上发布了 Windows 版本的源代码。该源代码主要用 C++ 编写,并附带有关于库依赖项和构建工具的信息。一经开源便在 GitHub 上引发了强烈的社区反响,在短时间内获得了数千次 fork。

 

但如今,整个仓库已彻底消失。

 

时代变了,老牌软件想借“开源”的力量寻求新生

 

Winamp,这款诞生于 1997 年的媒体播放器,在 MP3 风靡的年代迅速走红,对于 40 岁左右的程序员来说,它一定不陌生。

 


Winamp 以简单易用、功能强大著称,可定制的界面、丰富的音频格式支持、炫酷的视觉效果和皮肤系统深受用户喜爱。此外,Winamp 还支持在线收听广播和播客,为用户提供了更多选择。

 

然而,随着 Nullsoft 被 AOL 收购,Winamp 的开发逐渐停滞,并于 2013 年正式停产。这一消息让众多忠实用户感到惋惜。

 

在 Winamp 即将关闭之际,澳大利亚墨尔本的开发者 Peter Zawacki 发起了一场声势浩大的请愿活动。他呼吁 AOL 能够继续开发 Winamp,或者将它的源代码开源,让广大开发者接力维护。Zawacki 在请愿书中写道:“Winamp 是有史以来最好的媒体播放器,没有任何一款软件能完全取代它。”

 

为了挽救 Winamp,许多程序员自发加入了这场请愿活动。他们希望能够让 Winamp 继续存在,并将其交到热爱它的用户手中。然而,AOL 对此一直保持沉默,没有给出任何回应。这不禁让人感到失望。

 

2014 年,Radionomy 接手了 Winamp 项目,试图重振这款经典播放器,但无奈市场风向已变,音乐流媒体服务逐渐占据了主流。已经过时的不光是以点对点的形式下载 MP3,还包括 WinAmp 的 Web 版播放器和配套的移动版应用。而且 Winamp 的开发一直断断续续,重大更新也很少。 

 

2023 年,WinAmp 的所有方 Llama Group 重新推出了这款曾备受推崇的 Windows 媒体播放器。

 


Winamp 5.9 Final

 

此时,他们终于想起来还有“开源”这一回事儿了: 2024 年 5 月,他们宣布 Llama 将在当年晚些时候发布项目源代码。之后依照承诺于 9 月完成了源代码发布,同时开源的还有旗下多款其他产品。

 

GitHub 页面写道:“它的开发速度减慢了,但现在,它的源代码对社区开放,允许开发人员改进和现代化播放器以满足当前用户的需求。”

 

在此之前,Llama Group 还曾发布了另一项声明,其中详细介绍了对 Winamp 的“重新构想”,将其重新定位为创作者的音乐流媒体平台,但这一举措似乎没有取得很好的效果,考虑到在同一领域有 Spotify 和 Apple Music 等巨头竞争对手,这并不奇怪。

 

开放代码,但不开源

 

不过在此番将代码仓库删除之前,整个源代码发布过程并不顺利。初始版本附有自定义的许可证,即 WinAmp 协作许可证(WCL)的 1.0 版本,其中包含以下条件:

 

  • 不得分发修改版本:您不得以源代码或二进制形式分发修改版本的软件。

  • 不得分叉:您不得创建、维护或分发软件的分叉版本。

  • 官方分发:只有官方仓库的维护者才被允许分发软件及其修改版本。

 

而且,其他项目也不能使用 Winamp 名称。任何发布 Winamp 修改版本的人都可能面临 Llama Group 的法律行动。Winamp 的首席执行官 Alexandre Saboundjian 明确表示:“Winamp 将保持对软件的所有权,并将决定官方版本的创新内容。”

 

以 Mozilla Firefox 为例,它对商标的保护与 Winamp 类似,但对代码的开放程度更高。Firefox 的代码基于较为宽松的 Mozilla 公共许可证,开发者可以自由地创建修改版本。不过,为了保护品牌形象,他们不能将修改后的版本称为“Firefox”。正因如此,Debian Linux 上的 Firefox 曾被改名为“Iceweasel”。

 

对比 Mozilla,Llama Group 不仅不允许人们在其他项目中使用 Winamp 名称或 Winamp 代码,并且它保留对贡献给核心项目的任何工作的完全所有权。部分 GitHub 用户很快指出(包含在代码仓库的评论当中,如今也被一并删除),上述要求有违 GitHub 服务条款。Hackaday 网站也提到,这样的协议要求表明其并不是真正的开源,Llama Group 的目的仅仅是为了免费获取开发资源,以维护自己的 Winamp 应用程序。

 

最初参与项目的联合开发者 Justin Frankel 同样对此表达了质疑态度:“哪怕我对项目还有点想法,也会被许可条款给扼杀掉。这么荒谬的开源要求我还是第一次见。”

 

开放源代码不等于开源,尽管他们似乎在努力用“开放源代码(opening up its source code)”等短语来暗示这一点。技术分析师 Steven J. Vaughan-Nichols 指出,这可能是一种开放清洗(Open washing)的“伪开源”行为。之所以这样做,是因为如今“开源”对开发者和买家来说都很有吸引力。此外,在欧盟,被认为是开源的软件可以利用最近通过的《网络韧性法案》(CRA),该法案保护开源开发免受繁重的法规约束。

 

很难讲这份“禁令”到底能不能执行到位。另外,上传的源代码中还掺杂一些 GPL 2 的源代码,也让 WCL 做出的开放性限制变得毫无意义。

源代码发布也是一团糟

 

以 WinAmp 协作许可证(WCL)“开源”的 1.0 版本仅适用于 Windows 版本。Mac、Android 和 iOS 版本将继续保持完全的专有性质。虽然源代码附带编译信息,但需要特定版本的 Visual Studio 2019 才能构建。

 

代码仓库里还有其他好东西,有些甚至有着共同的传承。例如,WinAmp 的原作者 Nullsoft 还开发过其他工具,比如早期音频流媒体服务 Shoutcast,其最终成为 AOL 中的一部分。

 

GitHub 上公布的 WinAmp 源代码还包括 Shoutcast 分布式网站音频服务器(DNAS)的服务器代码副本。

 

在我们看来,该公司应该不是故意要分享这些代码的,毕竟 Llama Group 并不具备发布权。作为 Radionomy 的一部分,该公司已经在 2022 年连带业务将其出售给了 Azerion。尽管之前也曾尝试删除,但最终发现不太可行,因此只能作罢(信源来自项目评论,但现在也已被删除)。

 

仓库中还有一些英特尔和微软的源代码,且在删除之前就已经注明。总而言之,WinAmp 开源项目其实相当杂乱,堪称是软件领域的潘多拉魔盒。而且跟魔盒一样,一旦开启就无法被再次关闭。

 


该公司在动手删除前对此作出了回应,在 1.0.1 版本中对 WCL 加以修改,调整为允许分叉但阻止分发修改之后的版本。由于 WinAmp 许可证已被修改为允许分叉,因此该代码在短时间内就被分叉了好几千次。

 

秉持着“黑粉也是粉”的原则,WinAmp 此番开源虽然搞得不太漂亮,但至少还是为这款老旧的 Windows 应用程序吸引到了大量新关注。

 

不过从实用主义的角度来看,许可证中的诸多限制导致项目开源缺乏现实意义。作为一个典型案例,这也说明了为什么开源运动声势浩大,但仍有不少企业拒绝加入。毕竟面向大众市场的传统专有软件项目往往会包含来自其他厂商的大量代码成果,而且多数是为了实现互操作性。清理代码仓库以实现开源发布是一项相当艰巨的任务,而且要把代码交给别人之后,项目本身对公司很可能不再有任何商业价值。既然如此,又何必花大价钱耗费员工精力来清理原有代码呢?

 

而如果老员工们不再参与,那情况只会更糟。之前提到的联合开发者 Frankel 还创建了文件共享应用程序 Gnutella,并早在 20 多年前就离开了公司。他随后成立了 Cockos,并打造出 Reaper 数字音频工作站。

 

总而言之,这是个没有简单答案的问题。也许一部分捐者可以为程序员们提供法律赔偿,也许会有程序员愿意自愿提供清理服务,包括甄别并处理那些可能引发法律纠纷的代码内容。

 

总之 WinAmp 的开源之旅值得大家关注和学习,可能这些代码所有者对“开源”的真正含义缺乏一些理解,从他们并不完全开放的许可协议以及种种代码泄露事件就可以看出来。他们最终放弃了“不允许分叉”的规定,但显然没有预料到会引发如此强烈的反应。这不禁让人怀疑,这是否是出于商业目的的一次炒作?或者,他们只是对开源的理解存在偏差?无论如何,这个事件为我们提供了一个观察开源生态的有趣案例。

 

参考链接:

https://www.howtogeek.com/winamp-source-code-release/

https://www.theregister.com/2024/10/16/opensourcing_of_winamp_goes_badly/

https://www.theregister.com/2013/11/26/petition_to_save_winamp/

https://hackaday.com/2024/09/24/winamp-releases-source-code-but-is-it-really-open/

https://www.xda-developers.com/winamp-source-code-available-open-source/

https://www.zdnet.com/home-and-office/home-entertainment/winamp-is-not-going-open-source-heres-what-it-is-doing-and-why/

https://hackaday.com/2024/09/24/winamp-releases-source-code-but-is-it-really-open/

https://www.bleepingcomputer.com/news/software/winamp-releases-source-code-asks-for-help-modernizing-the-player/

https://opensourcewatch.beehiiv.com/p/winamp-opens-its-code-but-it-doesn-t-open-source-its-code

 

2024-10-18 10:0010197

评论

发布
暂无评论
发现更多内容

一文全面掌握大数据关联与汇聚

云智慧AIOps社区

redis Clickhouse flink sql 大数据开发

2022年数据库审计厂家就选行云管家!功能强大!

行云管家

数据库 网络安全 数据库审计

Tuxera2022mac读写硬盘U盘工具

茶色酒

Tuxera2022

Camtasia Studio2022激活码序列号

茶色酒

Camtasia Studio2022

DM 中 relay log 性能优化实践丨TiDB 工具分享

PingCAP

混合云管平台排名您知道吗?看这里!

行云管家

混合云 云管

从Nacos到完全自研|得物的注册中心演进之路

得物技术

架构 raft 注册中心 实例 兼容性测试

企业培训赛道大火,谁能真正解企业人才培训之急?

ToB行业头条

web前端培训:Vue3 调度系统的深度剖析

@零度

Vue 前端开发

2022年的SaaS行业,钱往哪里去?

ToB行业头条

刚刚,我们收到了北京冬奥组委的感谢信

阿里巴巴云原生

阿里云 云原生 冬奥会 合作

如何搭建FAQ文档?只需四步

小炮

企业管理工具

上手体验!如何借助龙蜥实验室快速部署 Web 应用?

OpenAnolis小助手

开源 国产操作系统 web服务器

【C语言】一篇速通操作符

謓泽

C语言 操作符 3月月更

使用 Recast.AI 创建具有人工智能的聊天机器人

汪子熙

人工智能 机器学习 聊天机器人 CRM 3月月更

Linux之route命令

入门小站

Linux

恒源云(GPUSHARE)_超越预训练 NLP 的模型来喽

恒源云

自然语言处理 深度学习 算法

在线HTML转JSX工具

入门小站

工具

会声会影2022脸部索引功能详解

懒得勤快

始于信任 忠于专业|DataPipeline收到一封来自山东城商行联盟的感谢信

DataPipeline数见科技

微服务身份认证需求下的私钥托管痛点与破局

全象云低代码

微服务 低代码 身份认证 鉴权 密钥

《重构 JavaScript》读后感和部分摘录

道道里

前端 测试 重构

2022年1月娱乐直播行业用户洞察:行业格局稳定,内容运营精细化

易观分析

如何获取 Docker 容器的 IP 地址

AlwaysBeta

Docker 容器

小程序已成为超级APP必选项,逐鹿私域“留量”

Speedoooo

小程序 APP开发 软件开发、 轻量应用 小程序管理平台

EMQ 正式成为 OASIS 最高级别成员,主导推进物联网协议标准化应用

EMQ映云科技

开源 物联网 ibm mqtt OASIS

《隐私计算》重磅发布,全面、系统论述数据要素安全流通价值

博文视点Broadview

高性能图计算系统 Plato 在 Nebula Graph 中的实践

NebulaGraph

图数据库 图计算 分布式图数据库

Web 键盘输入法应用开发指南 (3) —— 输入法事件

天择

JavaScript 键盘 输入法 3月月更

脱颖而出!OceanBase 入选 2021“科创中国”开源创新榜单

OceanBase 数据库

数据库 分布式 OceanBase 开源 科创中国

大数据培训:Spark高频面试题汇总

@零度

大数据 spark

没见过这么荒谬的开源要求!20多年老牌软件仅开源一个月就删除了全部代码_开源_Tina_InfoQ精选文章