FLATPAK(1)
๐ FLATPAK(1) ๐
okay bestie, welcome to the flatpak manual, it's giving the tool for building, installing and running applications and runtimes and we're gonna get into all of it ๐
โจ NAME โจ
flatpak โ Build, install and run applications and runtimes ๐ซถ
๐ธ SYNOPSIS ๐ธ
flatpak [OPTION...] {COMMAND}
๐ฆ DESCRIPTION ๐ฆ
So like, Flatpak is a tool for managing applications and the runtimes they use. In the Flatpak model, applications can be built and distributed independently from the host system they're used on, and at runtime they're isolated from the host system ('sandboxed') to some degree. Iconic behaviour honestly โจ
Flatpak can operate in system-wide or per-user mode. The system-wide data (runtimes, applications and configuration) lives in $prefix/var/lib/flatpak/, and the per-user data lives in $HOME/.local/share/flatpak/. Below these locations, there's a local repository in the repo/ subdirectory, and installed runtimes and applications are in the corresponding runtime/ and app/ subdirectories. Organized. We love a filesystem with a system ๐
System-wide remotes can be statically preconfigured by dropping flatpakrepo(5) files into /usr/share/flatpak/remotes.d/ and /etc/flatpak/remotes.d/. If a file with the same name exists in both, the file under /etc takes precedence. /etc said main character energy, no cap ๐
On top of the system-wide installation in $prefix/var/lib/flatpak/ โ which is always considered the default one unless overridden โ more system-wide installations can be defined via configuration files in /etc/flatpak/installations.d/, which must define at least the id of the installation and the absolute path to it. Other optional parameters like DisplayName, Priority or StorageType are also supported. Flexible fr fr ๐
Flatpak uses OSTree to distribute and deploy data. The repositories it uses are OSTree repositories and can be manipulated with the ostree utility. Installed runtimes and applications are OSTree checkouts. Cute little checkouts, obsessed ๐
Basic commands for building flatpaks such as build-init, build and build-finish are included in the flatpak utility. For higher-level build support, see the separate flatpak-builder(1) tool. That's a whole other girlie โจ
Flatpak supports installing from sideload repos. These are partial copies of a repository (generated by flatpak create-usb) that are used as an installation source when offline (and online as a performance improvement). Such repositories are configured by creating symlinks to the sideload sources in the sideload-repos subdirectory of the installation directory (i.e. typically /var/lib/flatpak/sideload-repos or ~/.local/share/flatpak/sideload-repos). Additionally, symlinks can be created in /run/flatpak/sideload-repos, which is a better location for non-persistent sources (as it is cleared on reboot ๐). These symlinks can point to either the directory given to flatpak create-usb โ which by default writes to the subpath .ostree/repo โ or directly to an ostree repo. Links on links, it's giving web ๐ธ๏ธ
๐ OPTIONS ๐
The following global options are understood. Individual commands have their own options, so don't come for me when flatpak run has extra flags, okay? ๐
-h,--helpโ Show help options and exit. The classic "help meeee" button ๐ซถ-v,--verboseโ Show debug information during command processing. Use-vvfor more detail. Yes bestie, double it up for the extra tea ๐ต--ostree-verboseโ Show OSTree debug information during command processing. Deep lore mode activated ๐ฅ--versionโ Print version information and exit. Vibe check: what flatpak are we even running ๐--default-archโ Print the default arch and exit.--supported-archesโ Print the supported arches in priority order and exit. Priority order, periodt ๐--gl-driversโ Print the list of active gl drivers and exit.--installationsโ Print paths of system installations and exit. Show me the real estate ๐--print-system-onlyโ When theflatpak --print-updated-envcommand is run, only print the environment for system flatpak installations, not including the user's home installation. System girlies only, no home energy ๐--print-updated-envโ Print the set of environment variables needed to use flatpaks, amending the current set of environment variables. This is intended to be used in a systemd environment generator, and should not need to be run manually.
โ ๏ธ That last one is literally built for systemd to call on your behalf, bestie. It should not need to be run manually โ so unless you know exactly why you're here, step away from the terminal ๐
๐ COMMANDS ๐
๐ Commands for managing installed applications and runtimes
flatpak-install(1)โ Install an application or a runtime from a remote or bundle. New app drop, slay โจflatpak-update(1)โ Update an installed application or runtime. Glow up time ๐ธflatpak-uninstall(1)โ Uninstall an installed application or runtime. We're letting her go ๐ญflatpak-mask(1)โ Mask out updates and automatic installation. Not today, updates ๐ซflatpak-pin(1)โ Pin runtimes to prevent automatic removal. Pinned like a bestie's message ๐flatpak-list(1)โ List installed applications and/or runtimes.flatpak-info(1)โ Show information for an installed application or runtime. Tell me everything ๐flatpak-history(1)โ Show history. The lore of your installs ๐flatpak-config(1)โ Manage flatpak configuration.flatpak-repair(1)โ Repair flatpak installation. She's in her healing era ๐ฉนflatpak-create-usb(1)โ Copy apps and/or runtimes onto removable media. USB said let me carry the whole app ๐พ
๐ Commands for finding applications and runtimes
flatpak-search(1)โ Search for applications and runtimes. Detective mode ๐
๐ฆ Commands for managing running applications
flatpak-run(1)โ Run an application. The whole point honestly ๐flatpak-kill(1)โ Stop a running application. She's done ๐flatpak-override(1)โ Override permissions for an application. Setting boundaries, we love to see it ๐flatpak-make-current(1)โ Specify the default version to run.flatpak-enter(1)โ Enter the namespace of a running application. Sneaking into the sandbox like it's a party ๐
๐ Commands for managing file access
flatpak-document-export(1)โ Grant an application access to a specific file.flatpak-document-unexport(1)โ Revoke access to a specific file. Access denied bestie ๐flatpak-document-info(1)โ Show information about a specific file.flatpak-documents(1)โ List exported files.
๐ Commands for managing the dynamic permission store
flatpak-permission-remove(1)โ Remove item from permission store.flatpak-permissions(1)โ List permissions.flatpak-permission-show(1)โ Show app permissions. Spill the permissions tea ๐ตflatpak-permission-reset(1)โ Reset app permissions.flatpak-permission-set(1)โ Set app permissions.
โญ Commands for managing remote repositories
flatpak-remotes(1)โ List all configured remote repositories.flatpak-remote-add(1)โ Add a new remote repository.flatpak-remote-modify(1)โ Modify properties of a configured remote repository.flatpak-remote-delete(1)โ Delete a configured remote repository.flatpak-remote-ls(1)โ List contents of a configured remote repository.flatpak-remote-info(1)โ Show information about a ref in a configured remote repository.
๐ฅ Commands for building applications
flatpak-build-init(1)โ Initialize a build directory.flatpak-build(1)โ Run a build command in a build directory.flatpak-build-finish(1)โ Finalizes a build directory for export.flatpak-build-export(1)โ Export a build directory to a repository.flatpak-build-bundle(1)โ Create a bundle file from a ref in a local repository.flatpak-build-import-bundle(1)โ Import a file bundle into a local repository.flatpak-build-sign(1)โ Sign an application or runtime after its been exported.flatpak-build-update-repo(1)โ Update the summary file in a repository.flatpak-build-commit-from(1)โ Create a new commit based on an existing ref.flatpak-repo(1)โ Print information about a repo.
๐ Commands available inside the sandbox
flatpak-spawn(1)โ Run a command in another sandbox. Jumping between sandboxes like it's nothing ๐ง
๐ธ FILE FORMATS ๐ธ
File formats that are used by Flatpak commands:
flatpakref(5)โ Reference to a remote for an application or runtimeflatpakrepo(5)โ Reference to a remoteflatpak-remote(5)โ Configuration for a remoteflatpak-installation(5)โ Configuration for an installation locationflatpak-metadata(5)โ Information about an application or runtime
๐ธ ENVIRONMENT ๐ธ
okay so besides the standard environment variables such as XDG_DATA_DIRS and XDG_DATA_HOME, flatpak also consults some of its own. yes bestie, it has opinions. ๐
FLATPAK_BINARYโ path to theflatpakexecutable that will be written into exported.desktopfiles and scripts when an app is installed. the default is/usr/bin/flatpak, unless it was overridden at build time by--bindir. โจFLATPAK_BWRAPโ path to thebwrap(1)executable that will be used to create the sandbox. depending on how Flatpak was configured at build-time, the default is either to search thePATH, or to use a vendored copy which is normally installed as/usr/libexec/flatpak-bwrap. ๐ซถFLATPAK_CONFIG_DIRโ the location of flatpak site configuration. if this is not set,/etc/flatpakis used (unless overridden at build time by--sysconfdir). ๐FLATPAK_DATA_DIRโ the location of Flatpak's OS-level defaults and integration hooks. if this is not set,/usr/share/flatpakis used, unless overridden at build time by--datadir. ๐ธFLATPAK_DBUSPROXYโ path to thexdg-dbus-proxy(1)executable that will be used to filter D-Bus traffic between the sandbox and the host system. depending on how Flatpak was configured at build-time, the default is either to search thePATH, or to use a vendored copy which is normally installed as/usr/libexec/flatpak-dbus-proxy. ๐ฆFLATPAK_DOWNLOAD_TMPDIRโ path to a directory that will be used temporarily when downloading OCI layers, and potentially for other downloads in future. the standardTMPDIRis not used for this, because Flatpak apps are frequently too large to fit on a tmpfs. ๐ญFLATPAK_FANCY_OUTPUTโ may be set to0to avoid fancy formatting when outputting to a terminal. this feature is also disabled automatically when standard output is not a terminal, or whenG_MESSAGES_DEBUGis set. ๐FLATPAK_FORCE_TEXT_AUTHโ may be set to1to force use of a simple built-inpolkit(8)agent when authentication is required to modify the system-wide installation. by default, the desktop environment's polkit agent is used, if one is available, usually resulting in a graphical prompt. ๐FLATPAK_GL_DRIVERSโ a colon-separated list of graphics driver extensions to try to use for OpenGL, Vulkan and similar APIs, most-preferred first. the default is to select a graphics driver automatically. values in this list match the last dot-separated component of the names of extensions with theactive-gl-drivercondition. typical values aredefault,mesa-gitornvidia-550-120(replacing the version number by the major and minor version of the nvidia kernel module). ๐FLATPAK_RUN_DIRโ the location of flatpak runtime global files. if this is not set,/run/flatpakis used. โญFLATPAK_SYSTEM_CACHE_DIRโ the location where temporary child repositories will be created during pulls into the system-wide installation. if this is not set, a directory in/var/tmp/is used. this is useful because it is more likely to be on the same filesystem as the system repository (thus increasing the chances for e.g. reflink copying), and we can avoid filling the user's home directory with temporary data. ๐FLATPAK_SYSTEM_DIRโ the location of the default system-wide installation. if this is not set,/var/lib/flatpakis used (unless overridden at build time by--localstatediror-Dsystem_install_dir). ๐FLATPAK_TTY_PROGRESSโ may be set to0to disable reporting machine-readable progress to the terminal. this feature can be disabled because it uses the OSC9;4sequence, which some terminal emulators interpret as a popup notification. ๐FLATPAK_USER_DIRโ the location of the per-user installation. if this is not set,$XDG_DATA_HOME/flatpakis used. ๐
๐ SEE ALSO ๐
go read these next, bestie, they're iconic:
mwah ๐ โ this was flatpak ๐ FLATPAK(1) ๐ , and the date is whatever your local manpage footer says. go forth and sandbox slay. ๐
๐ฆ where this page comes from
- fedora 44: flatpak 1.18.4-1.fc44 ยท LGPL-2.1-or-later
- fedora 44: flatpak 1.18.4-1.fc44 ยท LGPL-2.1-or-later
- nixpkgs unstable: flatpak 1.18.4
- ubuntu stonking: flatpak 1.18.4-1
- ๐ girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms