Gentoo 中的 Chromium ebuild Linux 由于维护工作量过大,官方宣布即将从软件仓库中移除该软件包。声明指出,随着 Chrome 发布周期的缩短,该软件包的维护者已无法继续提供所需的维护服务。如果未来几天内找不到志愿者接手 Gentoo 上的 Chromium 维护工作,那么 www-client/chromium 软件包将于 10 月 24 日起停止提供安装。
最近,Chromium 的新补丁版本几乎每周都会发布,修复了数百个漏洞。除了发布频率增加之外,上游项目工具的变更以及在满足用户所需质量、尽可能避免软件包依赖和及时发布漏洞修复更新之间的冲突,也使得维护工作变得更加复杂。在笔记本电脑上编译 Chromium 需要 15-16 个小时,在高性能 PC 上则需要大约 6 个小时,而且所有使用不同 USE 标志的构建版本都必须在发布前进行测试。
Chromium 使用了大量的内置依赖项(例如 ffmpeg、harfbuzz 和 zstd),但 Rust 和 Go 作为依赖项的加入,使得维护工作变得尤为复杂。Rust 的问题在于使用了实验性功能,这些功能可能会破坏与新版本的兼容性;而 Go 的工具链需要网络访问,这违反了 Gentoo 构建环境的规则。此外,Google 的持续集成系统也存在一些问题,有时会导致发布不完整的代码库。
据软件包维护者称,高质量的维护至少需要一个由三人组成的团队,成员需精通 C、C++、Go、JavaScript 和 Rust,并熟悉 Google 的特定工具链。一位维护者每周要花费超过六个小时维护 Chromium,几乎相当于占用他们一整天的空闲时间,这还不包括他们需要诊断和修复错误,以及将构建状态更新到 Gentoo 要求的情况。
导致软件包维护者停止维护的最后一根稻草,是他在一次关于Gentoo Chromium更新速度缓慢的讨论中,其工作价值被贬低(Gentoo目前自带的版本是151,而最新版本是155)。讨论中有人建议使用第三方Bentoo仓库中现成的ebuild脚本,该仓库的维护是自动化的。维护者解释说,简单地复制粘贴是不可接受的,必须审核所有更改,并使用不同的USE标志对所有构建变体进行全面测试;否则,无法保证软件包对所有用户的功能都有效。对方回应说,这一切都太荒谬了。
如果移除 www-client/chromium 软件包,用户可以切换到使用 www-client/google-chrome 软件包,其中包含 Google 提供的 Chrome 二进制版本,或者使用 Flatpak 格式的第三方 Chromium 版本。
来源: opennet.ru
