flatpak - Build, install and run applications and runtimes
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 are used on, and they are isolated from the host system
('sandboxed') to some degree, at runtime.
flatpak can operate in system-wide or per-user mode. The system-wide data
(runtimes, applications and configuration) is located in
$prefix/var/lib/flatpak/, and the per-user data is in
$HOME/.local/share/flatpak/. Below these locations, there is a local
repository in the repo/ subdirectory and installed runtimes and applications
are in the corresponding runtime/ and app/ subdirectories.
System-wide remotes can be statically preconfigured by dropping config fragments
In addition to 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.
flatpak uses OSTree to distribute and deploy data. The repositories it uses are
OSTree repositories and can be manipulated with the ostree
Installed runtimes and applications are OSTree checkouts.
The following options are understood:
Show help options and exit.
Print debug information during command
Print OSTree debug information during command
Print version information and exit.
Print the default arch and exit.
Print the supported arches in priority order
Print the list of active gl drivers and
Commands for managing installed applications and runtimes:
Install an application or a runtime from a
remote or bundle.
Update an installed application or
Uninstall an installed application or
List installed applications and/or
Show information for an installed application
Manage flatpak configuration.
Commands for running applications:
Run an application.
Override permissions for an application.
Specify the default version to run.
Enter the namespace of a running
Commands for managing file access:
Grant an application access to a specific
Revoke access to a specific file.
Show information about a specific file.
List exported files.
Commands for managing remote repositories:
List all configured remote repositories.
Add a new remote repository.
Modify properties of a configured remote
Delete a configured remote repository.
List contents of a configured remote
Commands for building applications:
Initialize a build directory.
Run a build command in a build
Finalizes a build directory for export.
Export a build directory to a
Create a bundle file from a build
Import a file bundle into a local
Sign an application or runtime after its been
Update the summary file in a repository.
Create a new commit based on an existing
Besides standard environment variables such as XDG_DATA_DIRS
, flatpak is consulting some of its own.
The location of the per-user installation. If
this is not set, $XDG_DATA_HOME/flatpak is used.
The location of the default system-wide
installation. If this is not set, /var/lib/flatpak is used (unless overridden
at build time by --localstatedir or --with-system-install-dir).
The location of flatpak site configuration. If
this is not set, /etc/flatpak is used (unless overridden at build time by