仓库#

Flatpak存储库是发布应用程序的主要机制,因此可以由用户安装。

存储库的某些方面由文档的其他部分解决。 可以在 使用Flatpak 部分中找到用于添加,删除和检查存储库的基本命令。 此外, Flatpak Builder 上的部分介绍了将应用程序添加到存储库的最常用方法。

To use a repository to publish an application, it is possible to either host your own (covered in the next section, 托管一个仓库) or use Flathub, the primary publishing and hosting service for Flatpak applications.

GNOME软件或KDE Discover等软件中心应用程序允许浏览存储库,还可以动态地推广新的或流行的应用程序。 如果使用Flathub,则用户通常已添加存储库,因此向存储库添加应用程序足以使其可用。

.flatpakref 文件#

.flatpakref 文件可以与存储库结合使用,为用户安装应用程序提供额外的简便方法,通常是通过单击文件或下载链接。

在内部, .flatpakref 文件是简单的描述文件,其中包含有关Flatpak应用程序的信息。一个例子:

[Flatpak Ref]
Name=fr.free.Homebank
Branch=stable
Title=fr.free.Homebank from flathub
Url=https://dl.flathub.org/repo/
RuntimeRepo=https://dl.flathub.org/repo/flathub.flatpakrepo
IsRuntime=false
GPGKey=mQINBFlD2sABEADsiUZUO...

如你所见,该文件包括应用程序的ID以及包含它的存储库的位置,以及指向提供应用程序运行时存储库信息的链接。 .flatpakref 文件包含安装应用程序所需的所有信息。

备注

.flatpakref 文件应包含用于对存储库进行签名的GPG密钥的base64编码版本。 这可以使用以下命令获得:

$ base64 --wrap=0 < key.gpg

.flatpakref 文件的一个优点是,即使用户尚未添加其存储库,它们也可用于安装应用程序。 在这种情况下,将自动安装包含应用程序的存储库,或者将提示用户安装它。 如果不存在必要的运行时,也会发生这种情况。

.flatpakref 可用于从命令行以及图形软件安装程序安装应用程序。 这是通过标准的 flatpak install 命令完成的,该命令接受本地和远程 .flatpakref 文件。 例如:

$ flatpak install https://flathub.org/repo/appstream/fr.free.Homebank.flatpakref

或者是下载好的文件:

$ flatpak install fr.free.Homebank.flatpakref

发布更新#

Flatpak存储库类似于Git存储库,因为它们通过记录每个版本之间的差异来存储应用程序的每个版本。 这使得更新有效,因为在执行更新时仅需要下载两个版本之间的差异(或“增量”)。

将新版本的应用程序添加到存储库时,它立即可供用户使用。 软件中心能够自动检查并安装新版本。 那些使用命令行的人必须手动运行flatpak update来检查并安装他们已安装的任何应用程序的新版本。