Snap 将成为支持所有 GNU/Linux 发行版的通用二进制软件包格式

Marius Nestor 的头像

·

·

·

14,613 次阅读

Canonical 说他们与各个主要的 GNU/Linux 发行版的开发者们正在一起努力将 Snap 软件包格式变成通用二进制软件包格式。

如你所知, Snap 是一种安全的、易于安装的、沙盒化的软件包格式,它可以让开发者将他们的软件的更新包随时发布给用户,而不必等待发行版的更新周期。

Snap 来自 Canonical 为其物联网操作系统 Snappy Ubuntu Core 所开发 Snappy 技术。从 Ubuntu 16.04 LTS (Xenial Xerus)开始,Canonical 也将这种软件包格式推向了其桌面和服务器产品。

“来自多个 Linux 发行版及公司的开发者们宣布将协作开发 ‘snap’ 通用 Linux 软件包格式——一个将可以用在任何 Linux 桌面、服务器、云或设备上的二进制软件包。”Canonical 说,“snapcraft.io 社区正在开发一种可以在任何 Linux 环境中用于任何 Linux 软件的单一发布机制。”

Snap 已经可以原生工作在 Arch Linux、Debian、Fedora 和 Ubuntu 上

此刻,我们注意到 Snap 软件包格式已经可以原生地工作在一些流行的 GNU/Linux 操作系统上,比如 Arch Linux、Fedora、Debian GNU/Linux、OpenWrt,和 Ubuntu 及其官方分支,包括 Kubuntu、Xubuntu、Ubuntu MATE、Ubuntu GNOME、Ubuntu 麒麟和 Lubuntu 等。

之后,其它的主流 GNU/Linux 发行版也将很快会将 Snap 软件包作为一种通用二进制格式发布给使用者,这包括 openSUSE、Linux Mint、Red Hat Enterprise Linux、CentOS 和 elementary OS 等。当然,即便是没有列在这里的 GNU/Linux 发行版支持 Snap 格式也是很容易的。

Canonical 已经介绍过开发者们如何将其软件打包成 Snap 格式,通过 Snap 在任何基于 Linux 内核的主流操作系统上发布软件都很容易,发布第三方 Linux 软件要比之前更加容易了。

当然, Snap 将不会替代各个发行版的默认软件包格式,它将是一种对现有的软件包格式的补充,可以用于在所有的 GNU/Linux 操作系统上发布任何开源或闭源的应用。

像 Mozilla Firefox、LibreOffice 和 Krita 这样的流行软件已经在进行 Snap 打包工作。Mozilla 的 Firefox 产品副总裁 Nick Nguyen 说:“随着引入 Snap 格式,持续优化 Firefox 成为了一种可能,这可以让 Linux 用户第一时间得到最新的功能。”

数字绘画工具 Krita 3.0 本月初也发布了其 Snap 软件包,Ubuntu 用户可以在自己的系统上安装这个软件包了。“在一个私有仓库中维护一个 .deb 软件包是复杂而耗时的,而 Snap 更容易维护、打包和分发”,Krita 基金会的项目负责人 Boudewijn Rempt 说。

如果你想将你的软件以 Snap 格式发布到任何支持的 GNU/Linux 操作系统上,欢迎去看看 snapcraft.io 网站。

16 条回复

  1. lkGongJake [Chrome 51.0|GNU/Linux] 的头像
    lkGongJake [Chrome 51.0|GNU/Linux]

    Gentoo可以用snap包,感觉能解决软件安装慢的问题啊

    来自北京
  2. 来自四川成都的 Chrome 51.0|GNU/Linux 用户 的头像
    来自四川成都的 Chrome 51.0|GNU/Linux 用户

    我知道 Fedora 上有 ArchLinux 上的包管理软件 pacman, 但是一直没有用过, 因为担心可能会和 yum/dnf 有冲突。

    来自成都
  3. 来自香港的 Chrome 51.0|Windows 7 用户 的头像
    来自香港的 Chrome 51.0|Windows 7 用户

    这是一个好的开始

  4. 来自四川成都的 Chrome 51.0|GNU/Linux 用户 的头像
    来自四川成都的 Chrome 51.0|GNU/Linux 用户

    首先 Fedora 下 pacman 的包名

    rpm –query –file $(which pacman)
    pacman-5.0.1-1.fc23.x86_64

    来自成都
  5. 来自四川成都的 Chrome 51.0|GNU/Linux 用户 的头像
    来自四川成都的 Chrome 51.0|GNU/Linux 用户

    然后执行

    sudo pacman –sync –download xz

    就会提示还要下载依赖包

    resolving dependencies…

    Packages (10) bash-4.3.042-4  filesystem-2015.09-1  gcc-libs-5.3.0-3  glibc-2.22-3  iana-etc-20151016-1
                  linux-api-headers-4.1.4-1  ncurses-6.0-4  readline-6.3.008-3  tzdata-2015g-1  xz-5.2.2-1

    Total Download Size:  24.71 MiB

    :: Proceed with download? [Y/n] n

    明明有些包已经有了,给人的感觉是重建系统, 而且 ArchLinux 仓库的更新速度要比 Fedora 快, 如果安装的包两个系统的仓库都有, 再加上文件

    来自成都
  6. 来自浙江杭州的 Chrome 45.0|Windows XP 用户 的头像
    来自浙江杭州的 Chrome 45.0|Windows XP 用户

    Nice job。 这才是趋势

    来自杭州
  7. POCMON [QQ Browser 9.4|Windows 10] 的头像
    POCMON [QQ Browser 9.4|Windows 10]

    一统江湖!!!

    来自深圳
  8. 来自湖南湘潭的 Chrome Mobile 45.0|Android 5.1 用户 的头像
    来自湖南湘潭的 Chrome Mobile 45.0|Android 5.1 用户

    真是这样就好了

    来自湘潭
  9. 绿色圣光 [Firefox 45.0|GNU/Linux] 的头像
    绿色圣光 [Firefox 45.0|GNU/Linux]

    虽然我个人不喜欢,但这终究是件好事。

    来自青岛
  10. 来自广东中山的 Chrome 51.0|GNU/Linux 用户 的头像
    来自广东中山的 Chrome 51.0|GNU/Linux 用户

    可用不代表提供二进制包。gentoo本身就可以安装二进制包,但官方源并不提供二进制包。所有,这都是给第三方软件提供的一个安装包发行方式吧。

    来自中山
  11. linux [Chrome 50.0|Mac 10.11] 的头像
    linux [Chrome 50.0|Mac 10.11]

    其实我个人对此抱有别的忧虑——所有系统支持、避免依赖、自成沙盒固然是好事,但是问题也就在这里了。
    由于将所有的依赖都打包到软件包内——从某种意义上和容器差不多,但是这样系统中就存在很多冗余的组件了。
    假如说系统上一个基础组件存在问题,比如说 zlibc 需要更新,而数以千计的软件包都分别打包了不同版本的 zlibc ,那么更新的时候,难道这几千个都要更新一遍吗?虽然说原来的情况下,由于依赖的原因,也大多需要更新,但是至少不用重复更新一样的组件。
    采用 .so 这样的动态链接库是有其道理的。

    来自北京
  12. 来自广东深圳的 Firefox 41.0|GNU/Linux 用户 的头像
    来自广东深圳的 Firefox 41.0|GNU/Linux 用户

    感觉特别占空间!

    来自深圳
  13. 绿色圣光 [Firefox 45.0|GNU/Linux] 的头像
    绿色圣光 [Firefox 45.0|GNU/Linux]

    对。所以我说我不喜欢。但是对于一些闭源软件,以及一些没能进入官方软件源的软件,官方可以提供这种软件包方便用户安装。

    来自青岛
  14. 浩浩君 [QQ Browser 9.4|Windows XP] 的头像
    浩浩君 [QQ Browser 9.4|Windows XP]

    我感觉用啥包都无所谓!

    来自九江
  15. 来自上海的 Firefox 46.0|Windows 7 用户 的头像
    来自上海的 Firefox 46.0|Windows 7 用户

    看更新的新聞,Canonical又在耍流氓

    来自上海
  16. vio [Chrome 51.0|Windows 10] 的头像
    vio [Chrome 51.0|Windows 10]

    https://linux.cn/article-7484-1.html
    Canonical的坑,很深

    来自广州

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注