在Linux中,有许多安装软件包的途径。您可以使用包管理器,如APT用于基于Debian的发行版,以及YUM用于基于RHEL的发行版。如果官方软件仓库中没有相应的软件包,您可以使用可用的PPA(对于Debian发行版),或者安装DEB或RPM包。如果您不喜欢使用终端,软件中心可以为您提供更简便的安装应用程序的方式。如果所有方法都失败了,您仍然可以选择从源代码构建。
尽管如此,也存在一些挑战。软件中心可能并不总是有您要寻找的应用程序,而从PPA安装可能会产生错误或兼容性问题。此外,从源代码构建需要更高水平的专业知识,对于Linux新手来说并不是一种友好的方式。
鉴于这样的挑战,强烈建议采用通用的安装软件包方式,以节省时间并避免由兼容性问题引起的错误。Canonical 是第一个实现这种想法的,以 snap 软件包的形式。 Snaps 是跨发行版、容器化且无依赖的软件包,简化了软件应用的安装。
除了 snaps,还有 flatpak,这是另一种通用的打包系统。
Flatpaks
写成 C,一个 flatpak 是一个包管理实用程序,允许用户在沙盒化或隔离的环境中安装和运行应用程序。与 snaps 一样,flatpak 旨在简化跨各种发行版的软件包管理。一个 flatpak 可以在支持 Flatpaks 的任何 Linux 发行版上安装,而不需要进行任何修改。
如何在 Linux 发行版中安装 Flatpak
在本指南中,我们将重点介绍如何在各种 Linux 发行版中安装 Flatpak 并使用它。安装 Flatpak 是一个两步操作。首先,您需要使用您发行版的软件包管理器安装 Flatpak,然后添加 Flatpak 存储库( Flathub ),从中安装应用程序。
在 Ubuntu 和 Mint 上安装 Flatpak
默认情况下,Flatpak 在 Ubuntu 18.04 和 Mint 19.3 及以后版本上受支持。您可以通过运行以下命令来确认:
$ sudo apt install flatpak

在 Debian 及基于 Debian 的发行版上安装 Flatpak
对于其他基于 Debian 的发行版,如 Zorin、Elementary 等,添加所示的 PPA 并执行以下命令:
$ sudo add-apt-repository ppa:alexlarsson/flatpak $ sudo apt update $ sudo apt install flatpak
在 RedHat 和 Fedora 上安装 Flatpak
对于 Fedora 和 RHEL/CentOS 8,运行以下命令。
$ sudo dnf install flatpak
对于早期版本,RHEL/CentOS 7 使用 yum 包管理器 来安装 flatpak。
$ sudo yum install flatpak
在 OpenSUSE 上安装 Flatpak
要在 OpenSUSE 上启用 Flatpak,请调用以下命令:
$ sudo zypper install flatpak
在 ArchLinux / Manjaro 上安装 Flatpak
最后,要在 Arch Linux 及其衍生版本上启用 Flatpak,请调用以下命令:
$ sudo pacman -S flatpak
安装了 Flatpak 后,下一步将是从中启用 Flatpak 存储库,以便下载应用程序。
如何在 Linux 中添加 Flathub 存储库
下一步将是添加 Flatpak 存储库,从中我们将下载和安装应用程序。在这里,我们添加 Flathub,因为它是最受欢迎和广泛使用的存储库。
将Flathub添加到您的系统中,请运行以下命令。
$ flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo

如何在Linux中使用Flatpak
在从存储库安装应用程序之前,您可以使用以下语法在Flathub上搜索其可用性:
$ flatpak search application name
例如,要在Flathub上搜索Spotify,请运行以下命令:
$ flatpak search spotify
结果将为您提供应用程序ID、版本、分支、远程和软件应用程序的简要描述。

要从存储库安装应用程序,请使用以下语法:
$ flatpak install [remotes] [Application ID]
在这种情况下,要安装Spotify,请运行以下命令:
$ flatpak install flathub com.spotify.Client

要运行flatpak应用程序,请执行以下命令:
$ flatpak run [Application ID]
例如,
$ flatpak run com.spotify.Client
在我的情况下,这导致启动了Spotify应用程序。

要列出驻留在您系统中的flatpak包,请运行以下命令:
$ flatpak list

要卸载应用程序,请使用以下语法:
$ flatpak uninstall [Application ID]
例如,要移除Spotify,请运行:
$ flatpak uninstall com.spotify.Client
要更新所有flatpak包,请运行:
$ flatpak update
在我的情况下,所有flatpaks都是最新的,因此没有进行任何更改。

最后,要检查您所使用的flatpak版本,请执行:
$ flatpak --version

结论
Flatpak为您的系统提供了访问其他软件的长途旅行。这得益于包含大量flatpak应用程序的Flathub存储库。