计算机应用程序由许多小文件组成,这些文件链接在一起以执行一组任务。因为它们以“应用”的形式呈现,菜单或桌面上的彩色图标,我们大多数人将应用程序视为一个单一的、几乎有形的东西。在某种程度上,这样想会让人感到安慰,因为它们感觉更容易管理。如果一个应用程序实际上是数百个小的库和资产文件在你计算机中散布的集合体,那么应用程序在哪里?抛开存在主义危机不谈,当一个应用程序需要一个版本的库,而另一个应用程序需要不同版本时,会发生什么?
在云计算领域,容器 正变得越来越流行,因为它们为应用程序提供了隔离和整合。您可以将应用程序所需的所有文件安装在“容器”中。这样,它的库就不会妨碍其他应用程序,并且它占用的内存不会将数据泄漏到另一个应用程序的内存空间中。一切最终感觉非常像一个单一的、几乎有形的 东西。在 Linux 桌面端,Flatpak 是一种跨发行版、无守护进程、去中心化的应用程序交付系统,它提供了类似的技术。
在 Linux 上安装 Flatpak
您的 Linux 系统可能已经安装了 Flatpak。如果没有,您可以从您的软件包管理器安装它
在 Fedora、Mageia 和类似的发行版上
$ sudo dnf install flatpak
在 Elementary、Mint 和其他基于 Debian 的发行版上
$ sudo apt install flatpak
在 Slackware 上,Flatpak 可以从 SlackBuilds.org 获取。
选择一个 Flatpak 仓库
您可以通过将 Flatpak 仓库添加到您的发行版的软件中心(例如 GNOME 上的 软件)来安装应用程序作为 Flatpak。Flatpak 是一个去中心化的系统,这意味着任何开发软件的人都可以托管自己的仓库。不过,在实践中,Flathub 是 Flatpak 格式应用程序的最大和最流行的聚合地。要将 Flathub 添加到 GNOME 软件 或 KDE Discover,请导航到 flatpak.org/setup 并找到您的发行版的说明,并从步骤 #2 开始,或者只需下载 Flatpakrepo 文件。根据您的网络情况,您的软件中心可能需要几分钟才能与 Flathub 或另一个 Flatpak 仓库同步。Flathub 有很多软件,但是您可以系统上拥有多少 Flatpak 仓库没有限制,所以如果您找到一个有您想要尝试的软件的仓库,不要害怕添加新的仓库。

(Seth Kenlon,CC BY-SA 4.0)
如果您更喜欢在终端中工作,您可以使用 flatpak
命令直接添加仓库
$ flatpak remote-add --if-not-exists flathub \
https://flathub.org/repo/flathub.flatpakrepo
安装应用程序
只要您已将 Flatpak 仓库添加到您的软件中心,您就可以像往常一样浏览应用程序。

(Seth Kenlon,CC BY-SA 4.0)
单击一个看起来有吸引力的应用程序,阅读有关它的信息,并在您准备好时单击 安装 按钮。
在终端中安装 flatpak
如果您更喜欢在终端中工作,您可以将 Flatpak 视为专用的软件包管理器。您可以使用 flatpak search
命令搜索应用程序
$ flatpak search paint
Name Description Application ID
CorePaint A simple painting tool org.cubocore.CorePaint
Pinta Edit images and paint digitally com.github.PintaProject.Pinta
Glimpse Create images and edit photographs org.glimpse_editor.Glimpse
Tux Paint A drawing program for children org.tuxpaint.Tuxpaint
Krita Digital Painting, Creative Freedom org.kde.krita
使用 flatpak install
安装
$ flatpak install krita
安装完成后,应用程序会与系统上的所有其他应用程序一起出现在您的应用程序菜单或活动屏幕中。
应用变得简单
Flatpak 通过消除版本冲突,使安装应用程序对用户来说变得容易。它们通过在自托管平台或像 Flathub 这样的公共平台上仅针对一种软件包格式,使开发人员可以轻松地分发软件。我在 Fedora Silverblue、CentOS 和 Slackware 上使用 Flatpak,现在我简直无法想象没有它的生活。为您的下一个应用安装尝试 Flatpak 吧!
评论已关闭。