Snap 真的有专有服务器吗?

Snap 真的有专有服务器吗?

Snap 服务器是否有专有元素?是否可以独立于 Canonical 运行基于 Snap 的发行版?

由于多种原因,我非常不喜欢 Snap(在 Linux 上我最喜欢的功能之一是,我可以使用 安装/卸载东西apt-getsnap甚至没有提供直接的帮助snap upgrade)。

但我听到的最令人担心的是,Snap 拥有专有元素,因此完全受 Canonical 控制。

例如https://www.techrepublic.com/article/why-canonical-views-the-snap-ecosystem-as-a-compelling-distribution-agnostic-solution/

时任 Canonical Snapcraft 工程经理的 Martin Wimpress 说道:

Snap 商店是专有的

https://www.happyassassin.net/posts/2016/06/16/on-snappy-and-flatpak-business-as-usual-in-the-canonical-propaganda-department/

服务器端(等式中的“应用商店”部分)是闭源的,并且 Canonical 一直拒绝告诉任何人如何运行自己的“应用商店”(...)它完全由 Canonical 控制

(并描述了 Canonical 如何就 Snap 撒谎)

但信息框中https://en.wikipedia.org/wiki/Snap_(package_manager)列出开源许可证。

发生了什么事?他们是否已将 Snap 商店作为开源发布?或者维基百科文章是否不完整/被 Canonical 员工损坏?

我非常担心,尤其是考虑到 Ubuntu 开始让 Ubuntu 上基本无法避免使用 Snap。另一方面,我希望有充分的理由切换 Linux 发行版,而不仅仅是基于过时的博客文章。

答案1

Snaps 的实际包管理工具 -snapd家庭- 是开源的。这就是 Snap 包管理系统开源的原因,Canonical 对此并没有撒谎。

确实snapd 是硬编码的使用 Canonical 的服务器获取快照及其相关元数据。据我所知,后端服务器的源代码不可用。其他各部分(例如snapcraft.io 网站Snap 商店应用程序本身等)都是开源的。我的意思是,您可以从 IIS 服务器提供 deb 文件,但这不会使 apt 包管理系统成为闭源的,不是吗?

您能让 snapd 与其他后端兼容吗?从技术上讲,您可以阅读 snapd 源代码,找出协议(这应该不难 - 我认为代码相当易读),实现自己的后端,然后使用补丁构建 snapd 来交换后端 URL。但是,到目前为止似乎没有人这样做过,Canonical 也没有发布参考实现。

答案2

Snap Store 由 Canonical 运营和控制,并非开源。Snap 的其余部分是开源的,即守护进程和核心软件。这有多大威胁取决于你的观点,并且一直是讨论的主题。例如

  • “Snap、Flatpak 和 AppImage——通用打包的利与弊分析”在 youtube.com 上
  • Linux Mint 论坛,例如此主题
  • 注意到 Linux Mint(基于 Ubuntu)禁止安装 snap默认情况下(提示如何启用其安装)。

作为一名 Linux 新手,我刚刚完成了对 Snap 问题的研究,发现 (LM) 程序管理器没有列出任何 Snap 软件包。我发现,采用坚定的路线方法可能会切断对 Snap Store 的依赖,但会取而代之的是另一个问题——在我的情况下,使用 Linux Mint 软件包管理器安装的软件包丢失或收到过期的软件包:

  • (LM) PM 安装了 10.x 版本的节点,而不是当前版本16.3.1 LTS 版本
  • Notepad++ 的有效 snap包nodepad-plus-plus(在 Windows 下原生可用)根本没有列出。可以安装 Linux 版本(notepadqq)——我就是这么做的——但不能替代使用原始版本。

这就是实用主义和预期寿命发挥作用的地方:我个人启用了 snap 来安装notepad-plus-plus,我有几十年的经验,认为它“必不可少”,但在安装 snap 之前我会进行广泛的搜索,因为我可以。FWIW 我不确定是否安装 node来自二进制文件以 root 身份运行档案管理器 GUI 是一个好主意,但它完成了工作。

总结

是的,Snap 商店由 Canonical 控制。这是否足以成为放弃 Ubuntu 的理由取决于个人观点和信念,并且在很大程度上取决于您选择和使用 Snap 软件包的方式和原因。

相关内容