什么是 Flatpak?您需要了解的有关此通用包装系统的所有重要信息
在阅读应用程序的安装说明时,您经常会遇到“ Flatpak”、“ Snap ”和“ AppImage ”等术语。
您可能已经在 Linux 上使用过其中的一些——但可能并不真正知道它们是什么。Flatpak、Snap 和AppImage它们是“通用包装系统”。
在 Linux 行话终结者的早期文章中,您了解了Linux 中的包管理器。所以我不会再用包装来打扰你了。我将重点介绍什么是 Flatpak 以及它如何尝试作为通用包装系统解决问题。
什么是 Flatpak?
Flatpak是一个包管理实用程序,可让您分发、安装和管理软件,而无需担心依赖项、运行时或 Linux 分发。由于无论在 Linux 发行版(无论是基于 Debian 的发行版还是基于 Arch 的发行版)上,您都可以毫无问题地安装软件,因此 Flatpak 被称为通用软件包。
如果您好奇,Alexander Larsson是创建 Flatpak 的人,Flatpak 的历史可以追溯到 2007 年夏天。您可以在他的博客文章中阅读更多关于他的工作和 Flatpak 历史的信息。
知道它是什么以及它是如何存在的令人印象深刻,但它为什么被创建以及它是如何工作的?
Flatpak 解决了什么问题?
有这么多 Linux 发行版,管理和安装软件是管理 Linux 系统最重要的方面之一。
如果您是一位经验丰富的 Linux 用户,那么您肯定可以找到最好的方法。但是,对于初学者或不想通过学习曲线来管理软件包的用户,使用传统软件包格式(deb/rpm)时会出现以下问题:
换句话说,对于传统的包管理系统,您可能会遇到一些潜在的问题,以使该软件适用于您的系统。而且,并不是每个人都有时间进行故障排除!
这就是像 Flatpak 这样的东西发挥作用的时候。
Flatpak 就是这样一种开源实用程序,它可以帮助您分发、管理/安装软件包,而无需考虑您正在使用的 Linux 发行版或程序运行所需的依赖项/库。
现在您已经了解了它的全部内容,让我们更深入地了解 Flatpak 是什么,它是如何工作的,以及它的一些背景知识。
Flatpak 是如何工作的?
图片来源:Flatpak 文档Flatpak 应用程序在隔离环境(通常称为沙箱)中运行。此沙箱包含运行该特定程序所需的一切。
基本上,沙箱包括运行时和捆绑的库,以满足程序运行的要求。您可以在其官方文档中了解有关技术细节的更多信息。
此外,仅仅因为 Flatpak 应用程序是隔离的,未经主机(您)的明确许可,它不能对您的系统进行任何更改。因此,Flatpak 通过保持应用程序隔离为您的系统提供增强的安全性。
你从哪里获得 Flatpak 应用程序?
平面图请记住,为了使用 Flatpak 软件包,您的 Linux 发行版必须支持 Flatpak。Fedora、Solus 等一些发行版默认支持 Flatpak,而您需要在 Ubuntu 等发行版中手动安装 Flatpak 支持。
尽管 Flatpak 技术允许您不依赖集中式资源来获取软件,但您会发现使用Flathub(由 Flatpak 团队构建)来分发和管理软件。
可能还有其他现有的 Flatpak 存储库,但我不知道我的个人用例。
Flatpak:优点和缺点
难怪 Flatpak 令人印象深刻——它具有相当多的优点和缺点。在这里,我将列出其中的一些:
使用 Flatpak 的优势
- Flatpak 应用程序可以在任何 Linux 发行版上运行
- 它们提供向前兼容性,这意味着——如果您将 Linux 发行版升级到应用程序未正式支持的前沿版本,您无需担心应用程序无法运行。
- 您不需要依赖依赖项。
- 在某些情况下,您会找到最新最好的 Flatpak 程序版本。
- Flatpak 应用程序分发不依赖于集中式服务器,这意味着您不会被锁定在一个供应商上。
- 使用沙盒应用程序增强系统的安全性
- 提供与 Linux 发行版上现有软件中心的轻松集成
使用 Flatpak 的缺点
- 它还没有服务器支持。截至目前,它仅适用于桌面 Linux。
- Flatpak 应用程序消耗的磁盘空间比使用 deb/rpm 文件时通常要多。而且,您最终需要找到释放磁盘空间的方法。
- 仅仅因为它在孤立的环境中运行,您可能会错过某些程序的一些功能。例如,Flatpak 应用程序可能不支持您的自定义GTK 主题。
包起来
我希望现在您对 Flatpak 的全部内容有了一个很好的了解。如果您想了解有关安装和使用 Flatpak 的更多信息,我建议您阅读我们的Flatpak 指南以开始使用。
如果您喜欢阅读本文,请花点时间在社交媒体平台上分享!