Ubuntu 正在把又一个核心系统包从 deb 转为 snap。这次是 hwctl——一个用来检查 Ubuntu 硬件认证状态的命令行工具。
Canonical 工程师 Alan Griffiths 在邮件列表中说得很直白:「hwctl 是一个 Ubuntu 专有的包,它和它的依赖项都是 Ubuntu 专有的,不会用在其他发行版上。」所以 deb 版本的受众实际上为零。既然只有 Ubuntu 用户在用,那用 snap 打包就没什么可纠结的。

从 deb 到 snap 的迁移路径
hwctl 是 rust-hwlib 硬件 API 库的一部分,命令行工具负责查询 Ubuntu 的硬件认证数据库。这个包的背后牵扯着 Ubuntu Pro、Ubuntu Insights 遥测服务,以及 GNOME 设置里的「Ubuntu 认证」面板。
迁移计划分两步走。Ubuntu 26.04 LTS 阶段,deb 包会变成一个空壳——一个「过渡包」——它自己没有任何文件,唯一的任务就是自动安装对应的 snap。到了 26.10 及之后的版本,干脆连空壳都不留了,snap 直接打进 ISO 镜像里。
Griffiths 解释了为什么现在动手:gnome-control-center 的架构变更导致 deb 打包已经跑不通了。而 snap 的沙箱机制正好能解决这个问题——hwctl 的权限被限制在它真正需要的范围内,不再需要以完全的系统权限运行。
技术细节
Neowin 的报道提到,这个变更在技术层面是通过「元包依赖移除」实现的。hwctl 的 deb 包目前作为 ubuntu-desktop 元包的依赖项被安装到所有 Ubuntu 桌面系统上。迁移到 snap 后,这个依赖关系会被切断,ubuntu-desktop 不再直接依赖 hwctl deb,而是由 snap 的自动安装机制接管。
Neowin 还指出,这个变更遵循了「稳定版更新」(SRU)流程,意味着 26.04 LTS 现有的用户也会通过系统更新获得这个过渡包。对于不想用 snap 的用户,技术上仍然可以从 Snap Store 手动移除 hwctl snap,但因为它是 ubuntu-desktop 的间接依赖,系统更新可能会再次安装它。
社区反应
老规矩,Reddit 上对 snap 的反感情绪一如既往。高赞评论集中在几个老问题上:snap 启动慢、Snap Store 被 Canonical 独家控制、snap 自动更新不可关闭。也有人指出,hwctl 这种系统级工具用 snap 打包确实比 deb 更合理——它不需要频繁更新,也不需要跟其他包共享库文件,snap 的隔离性反而降低了维护成本。
但更多人担心的是趋势。从 CUPS 打印系统到 CUPS 的 snap 版本,从 Firefox 到 Thunderbird,现在又轮到 hwctl——Canonical 正在系统性地把越来越多的核心组件塞进 snap 生态。对于偏好传统包管理的用户来说,选择空间正在收窄。
参考来源: