How to Install Flatpak on Ubuntu 26.04, 24.04 and 22.04

Install and set up Flatpak on Ubuntu 26.04, 24.04, and 22.04 with Ubuntu's package, add Flathub for desktop apps, review when the Flatpak Team stable PPA is useful, and remove apps, sources, or data cleanly.

Last updatedAuthorJoshua JamesRead time11 minGuide typeUbuntu

Flatpak gives Ubuntu users a separate desktop app channel for Flathub without replacing APT or relying only on Snap. On Ubuntu 26.04, 24.04, and 22.04, Ubuntu’s package manager installs the Flatpak tool while Flathub supplies sandboxed app builds and runtimes.

Install Flatpak on Ubuntu, add the Flathub repository, decide when the Flatpak Team stable PPA makes sense on older LTS releases, and manage app installs, updates, permissions, downloaded .flatpakref files, and removal.

Install Flatpak on Ubuntu with APT

Open Terminal from the application menu. Refresh APT metadata before installing so Ubuntu sees the current package index:

sudo apt update

These commands use sudo for tasks that need root privileges. If your user is not in the sudoers file yet, run the commands as root or follow the guide on how to add a new user to sudoers on Ubuntu.

The apt update command refreshes repository metadata only. If APT cannot locate flatpak, enable Ubuntu’s universe component first, then rerun the update command.

Ubuntu ships Flatpak in the universe repository but does not install it by default. Installing from Ubuntu’s repository keeps the package source simple, and it is the correct path on Ubuntu 26.04 because the Flatpak Team PPA currently directs 26.04 users to Ubuntu’s included package.

Install Flatpak using APT:

sudo apt install flatpak

After installation completes, verify the installed version:

flatpak --version

The version number depends on your Ubuntu release and enabled updates pocket. Current Ubuntu archive packages return Flatpak 1.16.x on Ubuntu 26.04, 1.14.x on Ubuntu 24.04, and 1.12.x on Ubuntu 22.04.

Add the Flathub Repository

Next, add the Flathub repository. The official Flathub setup page lists the same remote URL; adding it system-wide makes Flathub apps available to all users on the machine:

sudo flatpak remote-add --if-not-exists flathub https://dl.flathub.org/repo/flathub.flatpakrepo

Verify the remote was added correctly:

flatpak remotes
flathub	system

The output confirms Flathub is configured at the system level, meaning apps and runtimes install under the system Flatpak installation.

Flatpak commands default to system-wide scope. The examples in this article use sudo so apps and runtimes are available to all users on the machine. If you do not have sudo access, use user scope consistently instead.

For a user-only Flathub setup, add the remote with --user and keep later install, update, and remove commands at user scope:

flatpak remote-add --user --if-not-exists flathub https://dl.flathub.org/repo/flathub.flatpakrepo

Verify that the remote appears as a user remote:

flatpak remotes
flathub	user

Reboot for Full Integration

After initial setup, restart your desktop session so application launchers and portal services load cleanly. A full reboot is the simplest option:

sudo reboot

Logging out and back in is usually enough, but rebooting avoids half-started portal or menu-cache state on a fresh setup.

Optional: Add Flatpak Apps to GNOME Software

Ubuntu’s App Center does not install Flatpak apps. If you prefer a graphical Flatpak browser, install GNOME Software’s Flatpak plugin after setting up Flathub; Ubuntu may show it as a separate Software app alongside the default store.

sudo apt install gnome-software-plugin-flatpak

Restart your session after installing the plugin so GNOME Software reloads its app sources.

Choose Between Ubuntu APT and the Flatpak PPA

Start with Ubuntu’s repository unless you have a specific reason to replace the distro package. The Flatpak Team stable PPA currently targets Ubuntu 24.04 and 22.04, while Ubuntu 26.04 should use the Flatpak package already included in Ubuntu.

MethodChannelFlatpak PackagePackage UpdatesBest For
Ubuntu APT RepositoryUbuntu universe26.04: 1.16.x, 24.04: 1.14.x, 22.04: 1.12.xThrough normal APT updatesMost systems and all Ubuntu 26.04 installs
Flatpak Team Stable PPALaunchpad PPA1.16.x on Ubuntu 24.04 and 22.04Through normal APT updates from the PPA24.04 or 22.04 systems that need a newer Flatpak tool and accept an extra package source

For most users, the Ubuntu APT repository is recommended because it follows Ubuntu’s update cycle and avoids adding another package source. Use the stable PPA only on Ubuntu 24.04 or 22.04 when you need a newer Flatpak package than Ubuntu provides. On those releases, the PPA can also affect supporting packages such as bubblewrap, so review APT’s transaction summary before confirming.

Supported releases here are Ubuntu 26.04, 24.04, and 22.04. The default repository method works across all three releases. The Flatpak Team stable PPA currently targets Ubuntu 24.04 and 22.04; Ubuntu 26.04 users should stay with Ubuntu’s package.

Flatpak is useful when you want upstream desktop app releases from Flathub or the same app channel across several Ubuntu installations. Apps such as GIMP, Blender, and LibreOffice can come from Flathub while core system packages continue to come from APT.

Snap remains a normal choice for Canonical-maintained packages and Snap-only tools such as LXD or MicroK8s. Use Flatpak when the app you want is better maintained on Flathub, you want per-app permission controls, or you are replacing a specific Snap app. If you are switching away from Firefox’s Snap package, the guide on removing Firefox Snap from Ubuntu covers that separate workflow.

The rest of this article keeps the package-manager choice separate from app installation: APT installs Flatpak itself, then Flatpak installs desktop apps from configured remotes such as Flathub.

Optional: Install Flatpak via Stable PPA on Ubuntu 24.04 or 22.04

The Flatpak Team stable PPA provides Flatpak 1.16.x for Ubuntu 24.04 and 22.04. Use this method only when you need the newer Flatpak package itself, not merely newer applications from Flathub. On Ubuntu 26.04, use the default APT method because the PPA currently tells 26.04 users to use Ubuntu’s included Flatpak package.

The Launchpad page describes the stable PPA as a convenience for Ubuntu users and notes that support is not guaranteed. Treat it as an opt-in source outside Ubuntu’s archive, then remove it later if you no longer need that package channel.

Most Ubuntu desktop systems already include add-apt-repository. On minimal or customized systems that do not recognize the command, install its helper package first:

sudo apt install software-properties-common

Add the stable PPA:

sudo add-apt-repository -y ppa:flatpak/stable

Refresh the package index so APT can see the PPA package metadata:

sudo apt update

Confirm that the PPA is now the candidate source before installing or upgrading Flatpak:

apt-cache policy flatpak

On Ubuntu 24.04, relevant output should show the Launchpad PPA candidate above Ubuntu’s default package:

flatpak:
  Installed: (none)
  Candidate: 1.16.6-1~flatpak1~24.04.1
  Version table:
     1.16.6-1~flatpak1~24.04.1 500
        500 https://ppa.launchpadcontent.net/flatpak/stable/ubuntu noble/main amd64 Packages
     1.14.6-1ubuntu0.1 500
        500 http://archive.ubuntu.com/ubuntu noble-updates/universe amd64 Packages

On Ubuntu 22.04, the PPA candidate appears as 1.16.6-1~flatpak1~22.04.1 from the Jammy PPA, while Ubuntu’s archive package remains on the 1.12.x branch.

Install Flatpak from the selected candidate:

sudo apt install flatpak

Add Flathub system-wide if it is not already configured:

sudo flatpak remote-add --if-not-exists flathub https://dl.flathub.org/repo/flathub.flatpakrepo

Verify the installed Flatpak version:

flatpak --version
Flatpak 1.16.x

The Flatpak development PPA is intentionally not used here because it is for prerelease or testing builds, not routine Ubuntu desktop installs.

If you later need to switch between PPA versions or remove the PPA entirely, refer to the guide on removing a PPA from Ubuntu for proper cleanup procedures.

Remember to reboot after initial installation to enable full desktop integration, as described in the reboot section above.

Managing Applications with Flatpak Commands

After installing Flatpak and adding Flathub, you can manage applications through commands for installation, updates, permissions, and system configuration. These commands stay at system scope because the main setup added Flathub with sudo. If you used the user-scope remote instead, add --user to install, update, and remove commands and omit sudo.

Search for Applications

Before installing, find the exact application identifier. For example, search Flathub for GIMP after AppStream metadata is available:

flatpak search gimp

For a known Flathub app ID, you can confirm that the remote exposes it directly:

flatpak remote-ls flathub --app --columns=application | grep -Fx 'org.gimp.GIMP'
org.gimp.GIMP

The application ID, such as org.gimp.GIMP, is what you use for installation, updates, launches, and permission commands.

Install Applications

Once you identify an application, install it from Flathub. System-wide installations require sudo:

sudo flatpak install flathub org.gimp.GIMP

Flatpak shows the app, runtime, and permission summary before installation. For unattended scripts, Flatpak also supports -y or --assumeyes, but interactive review is safer for desktop installs.

List Installed Applications

View all applications installed through Flatpak:

flatpak list

For detailed information including versions and installation scope:

flatpak list --columns=application,name,version,branch,origin

Update Applications

Keep all installed Flatpak applications current with a single command:

sudo flatpak update

To update a specific application only:

sudo flatpak update org.gimp.GIMP

The flatpak update command refreshes installed Flatpak apps and runtimes from configured remotes. It does not upgrade the Ubuntu flatpak package itself; use normal APT upgrades for that package.

Run Applications

While most Flatpak applications appear in your desktop menu after installation, you can also launch them directly from the terminal. For example, launch GIMP:

flatpak run org.gimp.GIMP

Terminal launching is useful for debugging application issues or passing command-line arguments.

Uninstall Applications

Remove applications you no longer need. For example, remove GIMP:

sudo flatpak uninstall org.gimp.GIMP

To also remove unused runtimes that are no longer needed by any application:

sudo flatpak uninstall --unused

Add --delete-data only when you intentionally want to remove an application’s saved data along with the app.

View Application Details

Get detailed information about an installed application, including its version, runtime, and installation path. For example, inspect GIMP:

flatpak info org.gimp.GIMP

Manage Remote Repositories

Flatpak uses remote repositories to distribute applications. List all configured remotes:

flatpak remotes

If Flathub is missing, add the same system remote used during setup:

sudo flatpak remote-add --if-not-exists flathub https://dl.flathub.org/repo/flathub.flatpakrepo

Remove Flathub only when you no longer want apps or runtimes from that remote:

sudo flatpak remote-delete flathub

The --if-not-exists flag prevents errors when re-running setup scripts on systems that already have the remote configured.

Check and Modify Application Permissions

Flatpak’s sandboxing restricts application access by default. Check what permissions an application has:

flatpak info --show-permissions org.gimp.GIMP

When applications need access to specific directories or system resources, modify their permissions using a user-scoped override. This is intentional even when the app itself was installed system-wide, because Flatpak stores per-user overrides separately. For example, grant GIMP access to your Pictures directory:

flatpak override --user --filesystem="$HOME/Pictures" org.gimp.GIMP

Reset all permission overrides to defaults:

flatpak override --user --reset org.gimp.GIMP

View and Manage Runtimes

Flatpak applications depend on shared runtimes that provide common libraries. List all installed runtimes:

flatpak list --runtime

Browse available runtimes on Flathub:

flatpak remote-ls flathub --runtime

Runtimes are installed automatically when needed and can be cleaned up with flatpak uninstall --unused.

Update Repository Metadata

AppStream provides application metadata including descriptions, screenshots, and categories that software centers use to display available applications. Update AppStream data when search results seem outdated or newly published applications do not appear:

sudo flatpak update --appstream

To refresh metadata for a specific remote only:

sudo flatpak update --appstream flathub

Run Applications with Enhanced Isolation

For testing or security purposes, enforce stricter sandboxing when running applications. For example, run GIMP in a more restricted session:

flatpak run --sandbox org.gimp.GIMP

The --sandbox flag starts the app in a more restricted session than its normal saved permissions. Use it for testing only; apps that need network access, document portals, or devices may fail until launched normally again.

Install Flatpak Bundles and Refs

Occasionally you may download a Flatpak descriptor or bundle directly from a vendor’s website rather than searching Flathub from the terminal. Use direct files only from sources you trust because they can point Flatpak at third-party remotes or bundled application content.

.flatpakref files are small descriptor files that tell Flatpak where to download the application:

flatpak_ref="$HOME/Downloads/application.flatpakref"
sudo flatpak install --from "$flatpak_ref"

.flatpak bundles are self-contained packages that include the entire application and can be installed offline:

flatpak_bundle="$HOME/Downloads/application.flatpak"
sudo flatpak install --bundle "$flatpak_bundle"

Use bundles when you need to install applications on systems without internet access or when distributing internally built applications.

Troubleshooting Common Issues

Use these checks for common Flatpak setup and desktop integration issues on Ubuntu.

Flatpak Command Not Found

If the terminal returns flatpak: command not found, the Flatpak package is not installed in the current Ubuntu environment. Install it from Ubuntu’s repository:

sudo apt install flatpak

If APT reports that the package cannot be located, enable the universe component first, then rerun the install command above.

Then check the version again:

flatpak --version

On Ubuntu 26.04, expected output resembles:

Flatpak 1.16.6

Remote Flathub Not Found

Errors such as remote flathub not found or No remote refs found for 'flathub' usually mean Flathub has not been added at the scope you are using. Check your remotes first:

flatpak remotes --show-disabled --columns=name,options

If flathub is missing, add it system-wide again:

sudo flatpak remote-add --if-not-exists flathub https://dl.flathub.org/repo/flathub.flatpakrepo

System Operation Not Allowed for User

If Flatpak reports that a system operation is not allowed for the current user, you are probably mixing a system-scoped remote with a user-scoped command. Use sudo with the system Flathub remote:

sudo flatpak install flathub org.gimp.GIMP

If you intentionally added Flathub with --user, keep the install at user scope instead:

flatpak install --user flathub org.gimp.GIMP

Applications Not Appearing in Menu

If installed Flatpak applications do not show up in your application menu, log out and back in or reboot so the desktop session reloads exported launchers. If the problem persists, check whether Flatpak exported desktop files exist:

ls /var/lib/flatpak/exports/share/applications 2>/dev/null || true
ls "$HOME/.local/share/flatpak/exports/share/applications" 2>/dev/null || true

If the launcher files exist but the menu remains stale, launch the app once from the terminal with flatpak run <application-id> and restart the desktop session.

File Dialogs Not Working Correctly

Standard Ubuntu desktop installs usually include the GTK portal backend. On minimal or customized systems, install the portal backend for your desktop environment if file pickers, screenshots, or document access do not work correctly inside Flatpak apps:

sudo apt install xdg-desktop-portal-gtk

For KDE Plasma desktops, install the KDE-specific portal instead:

sudo apt install xdg-desktop-portal-kde

Restart your session after installing portals.

Theme Integration Issues

Flatpak applications may not match your system theme because the sandbox isolates them from some host configuration. Search Flathub for a matching GTK theme package before installing one:

flatpak search gtk3theme

If a matching theme exists, copy the exact Flatpak application ID from the search output and install that ID with flatpak install.

Permission Denied Errors

If an application cannot access files you expect it to reach, first inspect its current permissions. Many apps already expose common locations, and adding a broad override when it is not needed weakens the sandbox:

flatpak info --show-permissions org.gimp.GIMP

If the app really needs broader home-directory access, apply a user-scoped override:

flatpak override --user --filesystem=home org.gimp.GIMP

Common filesystem paths you might need to grant:

  • home: Full home directory access
  • host: Full filesystem access (use sparingly)
  • /path/to/directory: Specific directory access

Remove Flatpak from Ubuntu

If you no longer need Flatpak, you can remove it along with all installed applications and repositories.

Uninstall All Flatpak Applications

First, remove all installed system-scope Flatpak applications and runtimes:

sudo flatpak uninstall --all

If you used user scope instead, remove user-scope apps separately:

flatpak uninstall --user --all

Remove the Flathub Repository

Remove the Flathub remote:

sudo flatpak remote-delete flathub

For a user-scope Flathub remote, use:

flatpak remote-delete --user flathub

Uninstall the Flatpak Package

Remove the Flatpak package itself:

sudo apt remove flatpak

If APT reports orphaned dependencies afterward, review the dry run before removing them. On reused systems, autoremove can include packages unrelated to Flatpak.

apt-get -s autoremove

Only run the real cleanup if the preview lists packages you are comfortable removing:

sudo apt autoremove

Remove Flatpak PPA (If Used)

If you installed Flatpak from the Flatpak Team stable PPA, remove the repository source and refresh APT:

sudo add-apt-repository --remove -y ppa:flatpak/stable
sudo apt update

If you previously added the older development PPA, remove that source too:

sudo add-apt-repository --remove -y ppa:flatpak/development
sudo apt update

On Ubuntu 22.04, add-apt-repository --remove can leave the Flatpak PPA key files behind after removing the source list. If these exact files remain, remove them and refresh APT:

sudo rm -f /etc/apt/trusted.gpg.d/flatpak-ubuntu-stable.gpg /etc/apt/trusted.gpg.d/flatpak-ubuntu-stable.gpg~
sudo apt update

Clean Up Remaining Data

The following commands permanently delete Flatpak application data. If you have documents or settings stored within Flatpak applications that you want to keep, back them up first.

Review the directories before deleting them:

sudo du -sh /var/lib/flatpak /var/cache/flatpak 2>/dev/null || true
du -sh "$HOME/.local/share/flatpak" "$HOME/.var/app" 2>/dev/null || true

Remove system-wide Flatpak data:

sudo rm -rf -- /var/lib/flatpak /var/cache/flatpak

Remove user-level Flatpak data:

rm -rf -- "$HOME/.local/share/flatpak" "$HOME/.var/app"

Conclusion

Flatpak on Ubuntu works best when the package source and app source stay clear: APT installs Flatpak, and Flathub supplies the desktop apps. Ubuntu’s archive package is the right default, especially on Ubuntu 26.04, while the stable PPA remains a narrow option for 24.04 and 22.04 systems that need the newer Flatpak tool. For deeper command details, permission behavior, and sandbox concepts, consult the official Flatpak documentation.

Share this guide

Help another Linux user troubleshoot faster

Share this guide with someone troubleshooting Linux systems or saving it for later.

Follow LinuxCapable

Want more LinuxCapable guides in Google?

Add LinuxCapable as a preferred source so Google can show our tutorials more often in Top Stories and mark them as preferred in AI Mode and AI Overviews when relevant.

Add LinuxCapable as a preferred source on Google
Search LinuxCapable

Need another guide?

Search LinuxCapable for package installs, commands, troubleshooting, and follow-up guides related to what you just read.

Found this guide useful?

Support LinuxCapable to keep tutorials free and up to date.

Buy me a coffeeBuy me a coffee
Before commenting, please review our Comments Policy.
Formatting tips for your comment

You can use basic HTML to format your comment. Useful tags currently allowed in published comments:

You type Result
<code>command</code> command
<strong>bold</strong> bold
<em>italic</em> italic
<a href="https://example.com">link</a> link
<blockquote>quote</blockquote> quote block

Add to the discussion

Questions, fixes, command output, and version notes help keep this guide current.

Verify before posting: