Ubuntu Snap软件包简介

时间:2020-03-21 11:45:52  来源:igfitidea点击:

什么是Snap软件包?

我们可能已经知道,Ubuntu 16.04 LTS引入了Snap软件包。
Snap软件包与Deb软件包完全不同。
通常,deb软件包是文件的存档。
当我们安装deb软件包时,文件将被放置在各个系统目录中。
另外,一些依赖项将与deb软件包一起安装以正常运行。
但是,快照不同。
与Deb软件包不同,Snap软件包将安装到其自己的目录中,并且它们与系统的其余部分完全隔离。
因此,它们不会与其他操作系统文件混为一谈。
每个Snap软件包都捆绑有自己的一组库和依赖项,因此它不依赖于任何其他软件包,依赖项或者库。
这些软件包的扩展名为.snap,可以与debs一起安装。
同样,它也不会与其他deb软件包混淆。

根据Canonical的说法,好消息是其他Linux发行版的开发人员和应用程序开始为Snap打包格式做出了贡献。

因此,Snaps不仅适用于Ubuntu操作系统,而且现在还可以在Arch,Debian,Fedora,Kubuntu,Lubuntu,Ubuntu GNOME,Ubuntu Kylin,Ubuntu MATE,Ubuntu Unity和Xubuntu上本地运行。
它们目前正在CentOS,Elementary,Gentoo,Mint,OpenSUSE,OpenWrt和RHEL上进行测试,并且易于在其他Linux发行版上启用。
简而言之,Snap是一个二进制程序包,可以轻松,安全地安装在任何Linux台式机,服务器,IoT设备和云上。

为什么Snap套件更好?

使用Snap软件包的最大优势之一是开发人员可以立即将更新的应用程序提供给所有Linux发行版。
例如,Arch Linux和其他滚动发行发行版用户可能会在开发人员正式发行后获得最新的VLC软件包,而稳定发行发行版的用户则必须等待一段时间才能获得相同的软件版本。
开发人员将其推送到PPA或者发行版的存储库后,稳定发行版用户只能使用相同版本的VLC。
但是在这种情况下,使用Snap软件包,我们无需依赖软件PPA,发行版的存储库。
不管使用哪种发行版,都可以在发布更新的软件包后立即获得它们。

Mozilla Firefox产品副总裁Nick Nguyen谈到Snaps,

“我们努力为用户提供出色的体验,并使Firefox可在许多平台,设备和操作系统上使用。
随着快照的推出,可以不断优化Firefox,从而为Linux用户提供最新功能.”

也有一些缺点

到目前为止,Snap软件包还不错,但是也存在一些问题。
主要问题是尺寸。
例如,LibreOffice Deb软件包的典型大小约为200-300MB,而LibreOffcie Snap软件包的大小约为1GB,这是普通DEB的四倍。
原因很明显,不是吗?
因为每个Snap软件包都捆绑了所有必需的库和依赖项。
这就是为什么这些包装太大的原因。
我们希望Snap应用程序开发人员可能会在未来的日子中找到减少Snap程序包大小的方法。
因此,Snaps软件包将比传统的Deb软件包消耗更多的磁盘空间。

我其中可以获得Snap软件包?

在撰写本教程时,有250多个Snap应用程序可用。
当前提供的一些流行的Snap软件包是:

  • Jenkins
  • OwnCloud
  • Cassandra
  • htop
  • VLC
  • Krita
  • Minecraft server
  • WebDM
  • Freecad

检查以下链接以找到可用的Snap应用程序列表。

  • uApp资源管理器

请注意,快照仍处于早期阶段。
某些应用程序可能无法运行。
使用它们需要我们自担风险。

如何创建自己的Snap软件包?

创建Snap软件包很容易。
规范开发人员已经开发了一个称为Snapcraft的工具,该工具可用于创建自己的Snap软件包。
我们可以从源包或者现有包中创建快照。
使用Snapcraft不仅可以创建Snaps,还可以将其发布到Ubuntu Snappy存储,以便其他用户可以使用Snaps并从中受益。