FLATPAKREF(5)

πŸ’– FLATPAKREF πŸ’–

okay bestie, we're talking about flatpakref files today β€” that's the flatpakref(5) manual, section 5, and honestly? iconic. let's get into it πŸŽ€


✨ NAME ✨

flatpakref β€” a reference to a remote for an application or runtime. like a lil business card for a repo, but make it ✨technical✨


🌸 DESCRIPTION 🌸

so here's the vibe: Flatpak uses flatpakref files to share info about a remote for a single application. one app, one remote, no chaos. the flatpakref file holds enough information to add the remote and install the application. and the way you do that? you run the flatpak install --from command. that's the move, periodt. πŸ’…

ngl, flatpakref files can also carry extra info that's useful when you're showing the application to a user β€” like, say, in an app store. cute, right? πŸ›οΈ

the filename extension everyone uses for these is .flatpakref. remember it, bestie.

oh and also β€” a flatpakref file can refer to a remote for a runtime too. not just apps. versatile queen. πŸ‘‘


πŸ¦‹ FILE FORMAT πŸ¦‹

the flatpakref file uses the same .ini file format that systemd unit files use, or application .desktop files. you know the one. familiar, comfy, slay. ✨

πŸ’œ [Flatpak Ref] πŸ’œ

all the information lives inside the [Flatpak Ref] group. everything. all of it. that's the whole container. πŸ«™

the following keys can be present in this group:

  • Version (uint64) β€” the version of the file format. if it's there, it must be 1. no other numbers, don't try it. 😀
  • Name (string) β€” the fully qualified name of the runtime or application. this key is mandatory. you literally cannot skip it.
  • Url (string) β€” the url for the remote. also mandatory. both of these are non-negotiable, bestie.
  • Branch (string) β€” the name of the branch you're installing the application or runtime from. if you don't specify this key, the "master" branch is used. default behavior, iykyk. 🌿
  • Title (string) β€” the title of the application or runtime. this should be a user-friendly name, the kind you'd display e.g. in an app store. make it pretty. πŸŽ€
  • Comment (string) β€” a short summary of the application or runtime, for display e.g. in an app store. lil one-liner energy. πŸ’¬
  • Description (string) β€” a longer description of the application or runtime, for display e.g. in an app store. this is where you yap (affectionately). πŸ“
  • Icon (string) β€” the url for an icon that can represent the application or runtime. the face card. πŸ–ΌοΈ
  • Homepage (string) β€” the url of a webpage describing the application or runtime. link them up. πŸ”—
  • DeploySideloadCollectionID (string) β€” the collection ID of the remote, if it has one. this uniquely identifies the collection of apps in the remote, which allows peer to peer redistribution (see flatpak(1)). it is recommended to use this key over DeployCollectionID or CollectionID, because only newer clients (Flatpak 1.12.8 or later) pay attention to it β€” and older clients don't handle collection IDs properly. so like, do the right thing. πŸ™
  • DeployCollectionID (string) β€” this is deprecated but still supported for backwards compatibility. use DeploySideloadCollectionID instead. respectfully, move on. πŸ’€
  • CollectionID (string) β€” also deprecated, also still supported for backwards compatibility. use DeploySideloadCollectionID instead. same note, different key. 🫢
  • IsRuntime (boolean) β€” whether this file refers to a runtime. if this key is not specified, the file is assumed to refer to an application. so app is the default assumption, no cap. 🧚
  • GPGKey (string) β€” the base64-encoded gpg key for the remote. long string incoming, do not be alarmed. πŸ”
  • SignatureLookaside (string) β€” URL to use to look up signatures (OCI remotes only). very specific, very niche, we love her. ⭐
  • RuntimeRepo (string) β€” the url for a .flatpakrepo file for the remote where the runtime can be found. note that if the runtime is available in the remote providing the app, that remote may be used instead β€” but the one specified by this option will still be added. so yeah, both can happen. 🌈
  • SuggestRemoteName (string) β€” a suggested name for the remote. a lil name suggestion, just a hint, no pressure. πŸ’‘

🌟 EXAMPLE 🌟

here's what a real one looks like, bestie β€” copy the shape, don't retype the key by hand:

[Flatpak Ref]
Title=gedit
Name=org.gnome.gedit
Branch=stable
Url=http://sdk.gnome.org/repo-apps/
IsRuntime=false
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

πŸ‘€ SEE ALSO πŸ‘€


and that's the whole page, bestie!! this came to you from the flatpak source, page flatpakref(5) β€” go forth and install things responsibly πŸ’–βœ¨πŸŽ€

πŸ“¦ where this page comes from