Linux 中的 Flatpak 是什么?如何安装?Linux 中的 Flatpak 是什么?如何安装?Linux 中的 Flatpak 是什么?如何安装?Linux 中的 Flatpak 是什么?如何安装?
  • 业务
  • 目标
  • 支持
  • 登录
找到的结果: {phrase} (显示: {results_count} 共: {results_count_total})
显示: {results_count} 共: {results_count_total}

加载更多搜索结果...

搜索范围
模糊匹配
搜索标题
搜索内容

Linux 中的 Flatpak 是什么?如何安装?

发表 admin at 2025年2月28日
类别
  • 未分类
标签

Flatpak 无需组装。

要点

Flatpaks 是一种与发行版无关的便捷安装 Linux 应用程序的方法。通过应用程序沙箱和捆绑依赖项,它们还可以避免依赖地狱。大多数发行版都提供 Flatpak 支持,但在 Ubuntu 上,您需要先安装 Flatpak 框架。

Flatpaks 是一种与发行版无关的将应用程序安装到 Linux 计算机上的方法。但是,如果您的发行版已经具有安装应用程序的本机方式,那么您为什么还要费心使用 Flatpaks 呢?

什么是 Flatpak?

Flatpak 是一种包格式的名称,用于在任何 Linux 发行版上轻松可靠地安装应用程序。就像 AppImages 和 Snaps 一样,Flatpaks 容器附带所有必需的依赖项,并且作为 Flatpaks 安装的应用程序也可以自我更新。你可以找到他们

包管理圣杯

所有 Linux 发行版都需要一种安装应用程序的方法。这就是 Debian 的 apt、Fedora 的 dnf 和 Arch 的 pacman 等工具存在的原因。出于必要,他们都以略有不同的方式做同样的事情。

他们让用户通过从存储库拉回特殊包装的软件包来安装软件包。包上的包装包含有关如何将组成包的文件(可执行文件、数据文件、手册页等)复制到 Linux 文件系统中的不同位置以及应具有哪些权限的信息。应用于他们。

从开发人员的角度来看,以每种不同的包管理器格式包装和发布应用程序的版本是一项艰巨的任务。即使他们决定只支持前三到四种格式,仍然会给他们带来开发消耗和相当大的支持开销。

开发人员更愿意编写自己的代码,而不是与一组错综复杂的包格式作斗争。如果有一个通用的安装格式该多好啊。开发人员可以将他们的应用程序打包一次,任何发行版的用户都可以使用它。

相关:如何在 Linux 上使用 Git 安装软件

我们最接近圣杯的是源代码,这与包装的应用程序完全相反。这意味着您下载应用程序的源代码和其他组件,并在您自己的计算机上构建它。作为一种方法,它确实有效,但既不快速也不是特别方便,而且您需要知道自己在做什么。这对于大多数 Linux 世界的新手来说是遥不可及的。

Flatpaks 是创建通用包格式的尝试。 AppImages 和 Snap 是具有相同目标的竞争项目。 Flatpaks 的作用不仅仅是减轻开发人员支持多种包格式的压力。它们包含应用程序及其所有依赖项,因此应用程序不会因为缺少或不匹配的库而无法运行。作为 Flatpaks 安装的应用程序也会自动更新。

最重要的是,Flatpak 应用程序在一种迷你容器中运行,与其他应用程序(包括同一应用程序的其他版本)隔离在沙箱中。您可以安装单个应用程序的多个版本,而一个版本的依赖关系不会相互干扰。这让开发者的生活变得更轻松,让用户的生活变得更顺畅。

在 Ubuntu 上安装 Flatpak 支持

Canonical(Ubuntu 背后的公司)热衷于推动其用户使用 Snaps,这是它自己的通用安装程序版本。以至于它在 Ubuntu 23.04 Lunar Lobster 中删除了对 Flatpak 的开箱即用支持,并同意其他 Ubuntu 风格(例如 Kubuntu、Lubuntu 和 Ubuntu Studio)也将删除 Flatpak 支持。

Linux 就是这样,当然,您可以将 Flatpak 支持重新安装到 Ubuntu 中。 Manjaro 和 Fedora 开箱即用地支持 Flatpaks,因此如果您使用的是这些发行版之一,则可以跳到下一部分。

要在 Ubuntu 上安装 Flatpak,请输入:

sudo apt install flatpak

有一个 GNOME 插件可以让 Ubuntu 软件应用程序安装 Flatpaks。但有一个问题。从 Ubuntu 20.04 开始,软件应用程序本身就是一个 Snap,因此它不能与 Flatpak 插件很好地配合。您仍然可以安装该插件,但它会引入不同的基于 DEB 的软件应用程序版本。因此,您最终会得到两个版本的软件应用程序。

如果您要在命令行上使用 Flatpak,则不需要该插件,并且 Flatpak 命令行非常简单。不过,如果您确实需要该插件,则需要的命令是:

sudo apt install gnome-software-plugin-flatpak

我们需要告诉 Flatpak 系统去哪里寻找 Flatpak 包。我们可以使用以下命令添加 Flathub 存储库:

flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo

重新启动计算机后,您可以通过检查其版本号来检查 Flatpak 是否已正确安装并响应。

flatpak --version

相关:如何在 Linux 上使用 Snap 包

安装 Flatpak 应用程序

一旦您知道所需软件包的 Flatpak 名称,安装应用程序就很简单了。有两种方法可以发现这一点。

在 Flathub 网站上搜索该软件包是一种方法。我们将使用 Discord 作为示例。

找到它后,滚动到页面底部。您将看到安装应用程序所需的命令。

这对应用程序使用由三部分组成的 Flatpak 名称。请注意,我们不需要在命令中包含“flathub”(因为我们已经将 Flathub 存储库添加到我们的系统中),但您确实需要使用包名称的所有三个部分。

我们也可以通过命令行进行搜索。要搜索与 Discord 相关的软件包,请使用以下命令:

flatpak search discord

您将看到包含您的搜索词的所有包的列表。最好将终端窗口拉伸到比正常大小更宽,以便表条目不会被截断。

现在我们知道了包名称,我们可以发出命令来安装它。

flatpak install com.discordapp.Discord

任何依赖项或其他要求都与 Flatpak 一起安装。进度条显示安装距离完成的程度。

安装完成后,您将返回到命令行提示符。我们现在可以运行我们的新应用程序。

运行 Flatpak 应用程序

运行应用程序的命令就像安装命令一样,只是将“安装”一词替换为“运行”。

flatpak run com.discordapp.Discord

应用程序启动,Discord 会进行通常的升级检查。

不久之后,您就会看到 Discord 应用程序在桌面上打开。

在 GNOME 中,现在我们已经启动了应用程序,它的图标将出现在仪表板中。右键单击该图标会显示一个菜单。选择“固定到 Dash”以在仪表板中创建启动器。

将来您将能够从此处启动该应用程序。

列出已安装的 Flatpak 应用程序

要查看使用 Flatpak 安装的应用程序,请使用 list 选项。我们还使用了 --app 选项,以便仅列出我们已安装的应用程序。

flatpak list --app

如果没有 --app 选项,所有 Flatpak 框架模块和依赖项也会列出。

相关:如何列出 Linux 上已安装的软件包

卸载 Flatpak 应用程序

卸载应用程序与运行应用程序一样简单。只需将“卸载”一词与 flatpak 命令一起使用即可。

flatpak uninstall com.discordapp.Discord

该应用程序将从您的系统中删除,并显示一条确认消息。

你应该使用 Flatpak 吗?

应用程序沙箱和应用程序运行的实际保证是 Flatpak 的吸引人的特性。但是,由于 Flatpak 包含应用程序所需的所有依赖项,因此它们的占用空间更大。应用程序的启动时间也略有增加。

无论您使用 Flatpaks 还是 Linux 附带的本机包管理器,都可能取决于您要查找的应用程序是否在您的发行版存储库中。

我从未见过专门使用 Flatpaks 的人,也没有遇到过专门使用 AppImages 或 Snaps 的人。您可能会选择适合您的组合:默认包管理器、Flatpaks、Snaps 或 Appimages。

如果特定的应用程序不在您的发行版存储库中,并且您不想从源代码构建,那么 Flatpak 可能是您最好的选择。我发现它们比 AppImages 或 Snaps 快得多。

相关:如何在 Linux 上使用 AppImages

©2015-2025 Norria support@norria.com