docs/bootstrap/packages/flatpak.md
Flatpak applications and runtimes installed system-wide or for the current user via the
flatpak CLI.
[bootstrap.packages]
"flatpak:org.mozilla.firefox" = "latest"
"flatpak-user:org.gnome.Builder" = "latest"
Use the flatpak manager for the default system-wide installation and
flatpak-user for the current user's installation. The scopes are separate,
so a config can manage packages in either or both, including the same ID in
both scopes. The package name is an application or runtime ID accepted by
flatpak install and flatpak update.
mise does not install Flatpak or configure remotes implicitly. Install the
flatpak CLI and add the required remote (commonly Flathub) before applying
the config:
# Choose the scope you intend to manage:
flatpak remote-add --system --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
flatpak remote-add --user --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
mise bootstrap packages use flatpak:org.mozilla.firefox
mise bootstrap packages use flatpak-user:org.gnome.Builder
Check remote configuration in the same scope before installing:
flatpak remotes --system
flatpak remotes --user
Adding Flathub in user scope does not make it available to flatpak: system
entries. When multiple remotes provide an ID, resolve the ambiguity in Flatpak's
configuration; a mise declaration does not choose a remote by name.
mise bootstrap packages status
mise bootstrap packages apply --manager flatpak --dry-run
mise bootstrap packages apply --manager flatpak
mise bootstrap packages apply --manager flatpak-user
mise bootstrap packages upgrade --manager flatpak
mise bootstrap packages upgrade --manager flatpak-user
mise always passes an explicit scope to Flatpak so status, apply, and
upgrade operate on the same installation. flatpak passes --system, while
flatpak-user passes --user. Flatpak resolves the configured ID from the
remotes configured for that scope.
Flatpak does not expose installation of arbitrary historical versions through
these commands, so version pins are not supported. Use "latest" in config.
The manager is Linux-only and requires flatpak on PATH. On other platforms,
or when the command is missing, shared configs list Flatpak entries as skipped.
Installing an app does not create a mise shim; launch it through the desktop or
flatpak run org.mozilla.firefox in the scope where it is installed.