Files
flatpak/doc/flatpak-flatpakrepo.xml
Matthew Leeds 348fcc3f97 Add a DeployCollectionID key to replace CollectionID
This commit adds a key called DeployCollectionID to the flatpakref and
flatpakrepo file formats, which is intended to replace the CollectionID
key (which is still supported but deprecated). The reason for the change
is the same as for the metadata key change from xa.collection-id to
ostree.deploy-collection-id, which is that old versions of Flatpak
(roughly 0.9.8 through 1.0.1 depending on compile time options) hit
various bugs when collection IDs are in use. Flathub will soon enable
the metadata key to deploy collection IDs, and this change means Flathub
can also deploy the collection ID in flatpakref and flatpakrepo files
without affecting old clients.

Adding DeployCollectionID to the flatpakref and flatpakrepo files will
mean the flathub remote can be automatically configured with a
collection ID without depending on the metadata key to do that.

Closes: #2329
Approved by: alexlarsson
2018-11-16 09:17:07 +00:00

147 lines
6.6 KiB
XML

<?xml version='1.0'?> <!--*-nxml-*-->
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
<refentry id="flatpak-flatpakrepo">
<refentryinfo>
<title>flatpakrepo</title>
<productname>flatpak</productname>
<authorgroup>
<author>
<contrib>Developer</contrib>
<firstname>Alexander</firstname>
<surname>Larsson</surname>
<email>alexl@redhat.com</email>
</author>
</authorgroup>
</refentryinfo>
<refmeta>
<refentrytitle>flatpakrepo</refentrytitle>
<manvolnum>5</manvolnum>
</refmeta>
<refnamediv>
<refname>flatpak-flatpakrepo</refname>
<refpurpose>Reference to a remote</refpurpose>
</refnamediv>
<refsect1>
<title>Description</title>
<para>
Flatpak uses flatpakrepo files to share information about remotes.
The <filename>flatpakrepo</filename> file contains enough information
to add the remote. Use the <command>flatpak remote-add --from</command>
command to do so.
</para>
<para>
flatpakrepo files may also contain additional information that is useful
when displaying a remote to the user, e.g. in an app store.
</para>
<para>
The filename extension commonly used for flatpakrepo files is <filename>.flatpakrepo</filename>.
</para>
</refsect1>
<refsect1>
<title>File format</title>
<para>
The flatpakrepo file is using the same .ini file format that is used for
systemd unit files or application .desktop files.
</para>
<refsect2>
<title>[Flatpak Repo]</title>
<para>
All the information is contained in the [Flatpak Repo] group.
</para>
<para>
The following keys can be present in this group:
</para>
<variablelist>
<varlistentry>
<term><option>Version</option> (uint64)</term>
<listitem><para>The version of the file format, must be 1 if present.</para></listitem>
</varlistentry>
<varlistentry>
<term><option>Url</option> (string)</term>
<listitem><para>The url for the remote. This key is mandatory.</para></listitem>
</varlistentry>
<varlistentry>
<term><option>GPGKey</option> (string)</term>
<listitem><para>The base64-encoded gpg key for the remote.</para></listitem>
</varlistentry>
<varlistentry>
<term><option>DefaultBranch</option> (string)</term>
<listitem><para>The default branch to use for this remote.</para></listitem>
</varlistentry>
<varlistentry>
<term><option>Title</option> (string)</term>
<listitem><para>The title of the remote. This should be a user-friendly name that can be displayed e.g. in an app store.</para></listitem>
</varlistentry>
<varlistentry>
<term><option>Comment</option> (string)</term>
<listitem><para>A short summary of the remote, for display e.g. in an app store.</para></listitem>
</varlistentry>
<varlistentry>
<term><option>Description</option> (string)</term>
<listitem><para>A longer description of the remote, for display e.g. in an app store..</para></listitem>
</varlistentry>
<varlistentry>
<term><option>Icon</option> (string)</term>
<listitem><para>The url for an icon that can be used to represent the remote.</para></listitem>
</varlistentry>
<varlistentry>
<term><option>Homepage</option> (string)</term>
<listitem><para>The url of a webpage describing the remote.</para></listitem>
</varlistentry>
<varlistentry>
<term><option>DeployCollectionID</option> (string)</term>
<listitem><para>
The collection ID of the remote, if it has one. This uniquely
identifies the collection of apps in the remote, to allow peer to peer
redistribution. It is recommended to use this key over CollectionID because
only newer clients pay attention to it (and older clients don't handle
collection IDs properly).
</para></listitem>
</varlistentry>
<varlistentry>
<term><option>CollectionID</option> (string)</term>
<listitem><para>This is deprecated but still supported for backwards compatibility. Use DeployCollectionID instead.</para></listitem>
</varlistentry>
</variablelist>
</refsect2>
</refsect1>
<refsect1>
<title>Example</title>
<programlisting>
[Flatpak Repo]
Title=GEdit
Url=http://sdk.gnome.org/repo-apps/
GPGKey=mQENBFUUCGcBCAC/K9WeV4xCaKr3NKRqPXeY5mpaXAJyasLqCtrDx92WUgbu0voWrhohNAKpqizod2dvzc/XTxm3rHyIxmNfdhz1gaGhynU75Qw4aJVcly2eghTIl++gfDtOvrOZo/VuAq30f32dMIgHQdRwEpgCwz7WyjpqZYltPAEcCNL4MTChAfiHJeeiQ5ibystNBW8W6Ymf7sO4m4g5+/aOxI54oCOzD9TwBAe+yXcJJWtc2rAhMCjtyPJzxd0ZVXqIzCe1xRvJ6Rq7YCiMbiM2DQFWXKnmYQbj4TGNMnwNdAajCdrcBWEMSbzq7EzuThIJRd8Ky4BkEe1St6tuqwFaMZz+F9eXABEBAAG0KEdub21lIFNESyAzLjE2IDxnbm9tZS1vcy1saXN0QGdub21lLm9yZz6JATgEEwECACIFAlUUCGcCGwMGCwkIBwMCBhUIAgkKCwQWAgMBAh4BAheAAAoJEArkz6VV0VKBa5cH/0vXa31YgEjNk78gGFXqnQxdD1WYA87OYxDi189l4lA802EFTF4wCBuZyDOqdd5BhS3Ab0cR778DmZXRUP2gwe+1zTJypU2JMnDpkwJ4NK1VP6/tE4SAPrznBtmb76BKaWBqUfZ9Wq1zg3ugvqkZB/Exq+usypIOwQVp1KL58TrjBRda0HvRctzkNhr0qYAtkfLFe0GvksBp4vBm8uGwAx7fw/HbhIjQ9pekTwvB+5GwDPO/tSip/1bQfCS+XJB8Ffa04HYPLGedalnWBrwhYY+G/kn5Zh9L/AC8xeLwTJTHM212rBjPa9CWs9C6a57MSaeGIEHLC1hEyiJJ15w8jmY=
DeployCollectionID=org.gnome.Apps
</programlisting>
</refsect1>
<refsect1>
<title>See also</title>
<para>
<citerefentry><refentrytitle>flatpak</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
<citerefentry><refentrytitle>flatpak-remote-add</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
<citerefentry><refentrytitle>flatpak-flatpakref</refentrytitle><manvolnum>5</manvolnum></citerefentry>
</para>
</refsect1>
</refentry>