【51CTO.com快译】2018年,与发行版无关的软件包安装解决方案大有帮助。这个领域的三颗新星是Snappy、Flatpak和AppImage。

不久前,二进制软件包被认为是救星,不必为Linux系统编译软件包。

2018年,借助与发行版无关的软件包解决方案,我们会阔步前进。本文将介绍这个领域的三颗新星:Snappy、Flatpak和AppImage。

AppImage是一种很管用的软件磁盘映像

我是AppImage的忠实粉丝,因为只要使希望运行的某个程序成为可执行文件,然后双击它即可。AppImages就这么简单。据官网介绍,其想法是你可以直接从相应软件的开发者那里获得软件。使用AppImage格式,安装应用程序可能让人觉得类似如同使用Windows一样。

运行AppImage的优点是不需要sudo、root甚至不需要为系统依赖项所操心。你基本上只需挂载磁盘映像,类似在OS X中挂载磁盘映像。

也许运行AppImages的***优点是,你运行的应用程序只需删除一个文件即可将其删除。这个单一的文件/磁盘映像方法既好又坏,取决于你怎么看待它。而且,AppImages易于分发、运行简单。

AppImages的缺点是,即使你直接从开发者的网站获得软件,仍然不知道应用程序是否已被篡改。用过Transmission这款应用程序的OS X用户对信任软件的这个问题深有体会。这款应用程序让勒索软件可以感染在Mac上运行该应用程序的那些人。

尽管很喜欢AppImages,但我对AppImages绝对值得信赖的黑体印刷声明持有异议。实际上,它们就是磁盘映像,我们需要信任每一个AppImage的分销商。幸好,如果有人选择在沙箱中运行AppImage,万一下载的AppImage在源网站上被人利用,这可以防止形势失控。

Flatpak提供隔离的运行时环境

Flatpak安装的更新和应用程序由每个运行时环境来处理。其想法是,这提供了比运行典型的Linux软件包更新更简化的软件包处理机制。Flatpak的亮点在于,它是针对桌面Linux发行版设计的。因此,使用Flatpaks分发的应用程序是针对桌面Linux用户设计的。这也是AppImages的一个特点,但是Flatpaks的不同之处在于,它允许单个的应用程序更新。

Flatpaks与Ubuntu PPA相似的地方在于,它们使用单个的代码仓库用于应用程序安装和更新。我先得承认,我其实不喜欢Flatpaks的这个特性,因为努力找到单个的代码仓库很费时。然而优点在于,由于与发行版无关,它确实为安装/更新提供了一个更好的系统。

考虑的另一个方面是,安装Flatpaks框架需要安装所需的组件,才能使Flatpak成为可安装的可用软件。如果是Ubuntu之类的发行版,你得为Flatpak框架添加Ubuntu PPA。简而言之,先要安装PPA仓库,才能安装框架,之后才可安装Flatpak仓库。虽然这么做不难,但有点多余。

运行Flatpak安装的应用程序的好处是,你可以在自己选择的任何发行版上运行***的软件。此外,为了减少寻找单个Flatpak仓库带来的麻烦,Flathub的应用程序部分简化了软件查找。

Flathub提供了在一个地方查找软件的功能,即使过去Flatpaks不在一个单独的地方。这实际上是个好主意,这样一来,使用Flatpaks就***吸引力。可能最重要的是,Flathub的软件类别含有可供选择的大量软件。

与AppImages一样,Flatpaks是针对Linux桌面设计的。我们在介绍下文时,这是一个重要的考虑因素。

Snap Packages是压缩文件系统

Snap软件包是Canonical提出的一个打包概念,针对Linux和物联网而设计。你进入到Snapcraft网站后,产生的***印象是,Snaps把开发人员放在最终用户的前面。我倒不是说这是缺点,但是Snaps网站完全证实了我的说法。首页上的两个按钮分别是“构建你的***个snap”和“开始上手Github”。

上面提到的两个按钮链接都假设你是开发人员,这与Flatpak的首页大不相同。Flatpak首页致力于将Flatpak软件安装到最终用户的PC上。如果你查看顶部的导航栏并点击商店,Snaps只提供最终用户解决方案。一旦你点击商店链接,会看到可以安装到目标PC和服务器上的可用Snaps。

Snaps还与AppImage相似的地方在于,你是挂载软件映像而不是安装软件。Snaps的另一个好处是,可以恢复到软件的早期版本。此外,由于Snaps共享一个代码仓库,更新起来很容易。

一些人认为Snaps***的缺点是,它提供了Canonical控制的集中式打包格式。当然,Snaps适用于多个发行版,但是可用Snaps的控制仍集中在一个地方。另外值得一提的是,知名的开源和闭源软件在Snap的仓库中受欢迎。

Snaps***一个重要的特点是,它们不仅限于前面提到的Linux桌面,还旨在为物联网提供打包解决方案。这是Snaps与Flatpak和AppImage的***区别。Snaps主要侧重于物联网,Linux是额外的好处。

哪种打包类型最适合Linux?

在比较了上述每种打包类型的差异和优点后,我们想知道哪一种***。就简单性而言,我认为AppImage在这方面胜出。但是如果你希望能够使用其中一种打包格式来更新软件,那么Flatpak或Snaps更明智。

一种方法可能是每一个都尝试一下,看看哪种打包类型拥有你所寻找的用户体验和软件品种。

原文标题:Linux Solutions: Snappy, Flatpak, and AppImage,作者:Matt Hartley

【51CTO译稿,合作站点转载请注明原文译者和出处为51CTO.com】

【编辑推荐】

【责任编辑:庞桂玉 TEL:(010)68476606】

点赞 0

linux snappy 版本,三款新星Linux解决方案:Snappy、Flatpak和AppImage相关推荐

  1. Linux 下的三款 Flash 独立播放器

    现在互联网上流传有不少以 SWF 形式发布的教学视频.如何在 Linux 下观看这些教学视频文件呢? 实际上,这些 SWF 格式的视频就是编译好的 Flash 字节码文件.与同样是以 Flash 传播 ...

  2. 凝思linux下远程,凝思linux VNC远程桌面,推荐三款凝思linux VNC远程桌面

    凝思linux VNC远程桌面,推荐三款凝思linux VNC远程桌面 发布时间:2020-08-10 06:25:03 来源:ITPUB博客 阅读:112 作者:朴所罗门 栏目:云计算 可能大家对于 ...

  3. Linux杂志排版软件,推荐!三款适合Linux电脑的简单好用流程图软件

    原标题:推荐!三款适合Linux电脑的简单好用流程图软件 在平常工作流程上,文字记录与图像思考,就像双剑合一,有举重若轻,事半功倍之效.因此,这篇文章为你整理几款我觉得好用的图表工具流程图,推荐给需要 ...

  4. 维基解密:攻击 Mac/Linux 的CIA三款工具

    导读 维基解密本周继续揭秘 CIA ,但与以往的 Vault 7 系列不同,本次维基解密披露的是 CIA 的另一个项目 Imperial 中的三款工具,主要针对运行 OS X 系统以及其他 Linux ...

  5. linux扫描软件下载,三款工具助力Linux桌面端扫描

    无论你正在向无纸办公生活方式转型,需要扫描某个文档以便备份起来或用电子邮件发送,想扫描老照片,还是需要将任何内容由物理版本转换成电子版本,扫描仪都派得上用场.实际上,扫描仪可以说必不可少. 不过要注意 ...

  6. linux redhat 版本查看,查看RedHat linux版本的三种方法

    查看linux的版本主要有三种方法: 1) 登录到服务器执行 lsb_release -a ,即可列出所有版本信息,例如: [root@3.5.5Biz-46 ~]# lsb_release -a L ...

  7. linux 恶意软件检测,两款针对Linux系统Rootkit和恶意软件的有用检测工具

    尽管Linux系统可以免受大多数恶意软件的传播感染,但也不是绝对安全的.如果你的数据中心架设有Linux服务器,尤其是网站服务器,则更应该对Rootkit木马和恶意软件严密防范,因为一些数据破坏类Ro ...

  8. 安卓如何安装kali linux系统版本,安卓安装kali linux渗透系统 手机安装kali linux

    安卓安装kali linux渗透系统 手机安装kali linux 现在大家手上几乎都有安卓的设备了.要是渗透扫描不开kali虚拟机,直接ssh到手机上去扫描,那是一件多么美妙的事情. 首先看了下官网 ...

  9. linux 发行版本和 及其与linux内核之间的关系

    1. Red Hat Linux是全世界应用最广泛的Linux,,它分为两个系列, 一个是Red Hat 公司提供收费技术支持和更新的Red Hat Enterprise Linux系列:一个是社区开 ...

最新文章

  1. Media Player网页播放音频,视频,图片总汇
  2. 【 MATLAB 】MATLAB帮助文档中对 MP 算法以及 OMP 算法的讲解(英文版)
  3. 数据挖掘原理与算法:练习题2
  4. python增删改查的框架_python的Web框架,Django的ORM,模型基础,MySQL连接配置及增删改查...
  5. iOS开发之自定义弹出的键盘
  6. H桥电机驱动原理与应用
  7. Elasticsearch——分词器对String的作用
  8. 计量经济学计算机输出结果,计量经济学作业答案A..doc
  9. Net和T-sql中的日期函数操作
  10. 神经网络有趣案例_求解三体问题快了1亿倍,新型神经网络问世
  11. 安卓基础干货(四):安卓网络编程的学习
  12. css权威指南笔记,《CSS权威指南》读书笔记(1)
  13. Windows应急响应练习-勒索病毒篇1
  14. c语言以e为底和以10为底对数,以e为底的运算法则
  15. phonegap3.5了结
  16. 租号服务器未响应,租号玩启动不了wegame
  17. 域名Whois信息查询接口
  18. sql server创建数据库代码模板
  19. 2021 Anomaly Detection (李宏毅
  20. Java动态读取map里面的key值

热门文章

  1. VMware磁盘扩容
  2. 怎么免费将PDF转成Excel
  3. 移植VBA项目到OMS系统
  4. 一致性哈希算法在分布式系统中的应用
  5. java赵云主角兵器谱游戏_完美武将:赵云兵器大盘点
  6. 我走了,青春留给北京
  7. WP7平衡球游戏开发教程--初识XNA Faeseer Magic
  8. 和平精英当前您所在的服务器更新维护,光子再次更新体验服招募时间 3月新版本疑似再度延迟...
  9. TCP协议的粘包问题(数据无边界性)及解决方法
  10. C语言程序设计孙家啸第一版,4月广东省高等教育学考试各专业课程使用教材.doc...