Snap 商店包含专有的 snap 包

Snap 商店包含专有的 snap 包

Ubuntu 16.04 中的软件中心不提供付费软件。

Snap Store 会成为在 Ubuntu 上分发专有付费软件的方式吗?

答案1

Snap 软件包非常适合具有复杂依赖关系或较长开发周期且不易与发行版同步的项目。这通常与专有软件的需求相交织,但并不适合所有软件。目前,我见过的唯一 Snap 软件包适用于非常开源的项目,但我认为一旦团队掌握了窍门,专有软件很快就会出现。在具有大量存储空间的现代系统上,使用非共享库并不是那么糟糕,尤其是它使安装更简单。

这里提到的 16.04 ubuntu 存储库中有两个软件包与 ubuntu snap 无关。

折断-SNAP 是一个通用基因查找程序

活泼-snappy 是一个媒体播放器

如果你想使用 ubuntu snaps 安装

snapcraft-制作快照的工具

snapd-使用 snap 的工具

在撰写本文时,您需要在安装 snapd 之前清除 snap 包,否则会发生冲突,这可能会得到修复,但目前它会阻止 snapd 包的安装。

Snap 确实很容易使用,但目前可用的数量并不多

snap login [email protected]       # login to the snap system
snap list                              # list available snap packages
snap install <package>                 # install a snap package

答案2

是的。Snap 格式的软件包不属于标准存档,而是来自 Ubuntu 设备应用商店(Click 和 Snap 软件包都托管在同一商店中)。此商店不是由社区管理的,任何人都可以将其软件打包成 Snap 格式并通过商店分发。

商店中已经有几个专有软件包。

答案3

我认为创建自定义应用程序是绝对可能的。此外,利用存储在 Ubuntu 服务器之外的自定义存储库和 snap 来创建商店对我来说似乎绝对有可能。

如果我没记错的话,dpkg 只对 .deb 文件进行操作,无法管理存储库、PPA 等。这就是 apt 的用途。如果有人创建了类似 apt 的工具来执行 snap 命令,会怎么样?

开设商店

snap 命令允许您安装任何 .snap 文件 - 不仅仅是从官方商店下载的文件。让我们想象一个开放的应用商店,它以这种方式处理软件包:

  • 程序配置存储了提供 snap 软件包及其元数据的网站列表。我们将它们称为 Snap PPA,因为它们的用途完全相同。

  • 该程序允许使用诸如 add-repository URL 之类的命令添加/删除存储库。

  • 在安装命令时,程序会检查所请求的 snap 是否在任何 PPA 上可用,然后将其下载到缓存并调用“sudo snap install the-package.snap”。

  • 该程序会自动检查更新,下载并更新快照。

到目前为止,唯一可能无法做到的是增量更新(我从未尝试找出官方工具如何处理它们),但如果有需要的话,这个问题可能会在将来得到解决。

商业店

如果一家公司不想将他们的 snap 包交给 Canonical 处理,而是依赖他们的基础设施,那么他们可以用同样的方式创建自己的存储库。我想象 Steam 有一天会采用这种方法 - 只需在 Linux Steam 客户端中内置专有的 snap 包下载器即可。当您购买并在设备上安装游戏时,Steam 客户端会下载 snap 包并调用“sudo snap install”来安装它。

相关内容