托管一个仓库

Flatpak Builder 这部分描述了如何生成仓库。生成的仓库可以托管到一个web服务器供用户使用。

重要的细节

flatpak仓库使用archive-z2,意味着将所有文件打包成单个文件。拉取(译者注:pull)操作发起许多HTTP请求。因为新请求会很慢,所以在仓库所在web服务器开启HTTP keep-alive是很重要的。

Flatpak支持所谓的静态增量。这些是单个文件,包含在两个修订(或从无到修订)之间所需的所有数据。创建这样的增量会占用服务器上更多的空间,但下载速度会更快。这可以通过 `` build-update-repo –generate-static-delta `` 选项来完成。

.flatpckrepo 文件

.flatpakrepo 文件是用户添加一个仓库的方便的方法。这些是包含仓库信息的简单描述文件。举个例子:Flathub的repo文件像这样:

[Flatpak Repo]
Title=Flathub
Url=https://dl.flathub.org/repo/
Homepage=https://flathub.org/
Comment=Central repository of Flatpak applications
Description=Central repository of Flatpak applications
Icon=https://dl.flathub.org/repo/logo.svg
GPGKey=mQINBFlD2sABEADsiUZUO...

你可以看到repo文件包含描述性的元数据,例如仓库名字、描述、图标和网站。也包含了需要添加到仓库的信息,一个下载URL和仓库的GPG密钥。

可以通过用命令行用 .flatpakrepo 文件添加仓库。举个例子,使用repo文件添加Flathub的命令是:

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

使用 .flatpakrepo 文件不是添加仓库的唯一方法,添加一个仓库只是点击一个repo文件或者指向一个下载链接的问题。

注解

.flatpakrepo 文件应该包含base64-encoded GPG密钥版本,用于对仓库进行签名。可以通过如下命令获得:

$ base64 --wrap=0 < key.gpg