Flatpak and Flathub: A Practical Guide for Linux Users
Flatpak is a way of packaging and running Linux applications so that the same app works across different distributions. Flathub is its main app store. In 2025, Flathub reported roughly 435 to 438 million downloads, up about 21% from 360 million in 2024, with more than 440 new apps added during the year and a catalogue well past 2,800 applications. Flatpak has moved from an alternative packaging experiment to something many people use every day.
What problem Flatpak solves
Traditionally, each distribution packages software itself, so the version you can install depends on your release. If you run a long-term-support system, you might wait months or years for the latest version of an application. Flatpak lets developers publish one build that works everywhere and keeps updating independently of your operating system. That is especially valuable for desktop applications, where users want recent features without upgrading their whole system.
How the sandbox works
Each Flatpak application runs in a sandbox with limited access to your files, devices and the network. It carries its own libraries, using shared runtimes to keep the download sizes reasonable. When an application needs something outside its sandbox, such as opening a file, it asks through a portal, which shows a standard dialog and gives it access only to what you choose. This is a real security improvement over giving every program the run of your home directory.
The sandbox is only as strong as its permissions. Some applications request broad access, such as full home directory access, because they need it to function. Review what an app requests before installing it.
Getting started
Many distributions already include Flatpak and Flathub. COSMIC and Fedora enable Flathub by default. On others, you add the remote once and then install applications from the command line or your software center.
flatpak remote-add --if-not-exists flathub https://dl.flathub.org/repo/flathub.flatpakrepo
flatpak install flathub org.inkscape.Inkscape
flatpak run org.inkscape.Inkscape
flatpak updateManaging permissions
You can inspect and change what an application is allowed to do. The command line tool shows the current permissions, and graphical tools such as Flatseal present them as switches. If a program cannot see a folder it needs, you can grant that specific folder rather than opening everything up.
flatpak info --show-permissions org.inkscape.Inkscape
flatpak override --user --filesystem=~/Projects org.inkscape.InkscapeVerified apps and payments
Flathub has been building a verification system so you can tell when an app is published by its actual developer. Earlier plans also described letting developers charge for their apps, with verification required for direct uploads and payment settings. The details have evolved since those announcements, so check Flathub's own documentation for the current state of verification and paid apps.
Trade-offs
- Disk usage is higher than with distribution packages, since runtimes and apps bring their own libraries.
- Integration with the system, such as themes and fonts, can need extra setup.
- Command-line tools and system utilities are usually better installed through your distribution.
- Some apps run with broad permissions, which reduces the benefit of sandboxing.
Flatpak and immutable distributions
Flatpak is central to immutable distributions such as Fedora Silverblue and Bazzite. Because the base system is read-only, graphical applications are installed as Flatpaks, which keeps your software separate from the operating system. If you are curious about that model, our guide to immutable distros explains how the pieces fit together.
A good default
For desktop applications such as browsers, editors, graphics tools and chat clients, Flathub is a good first place to look, particularly on stable distributions. Use your distribution's packages for system components and command-line tools. Mixing both is perfectly fine and is how most people use Linux today.
Common questions
Do Flatpak apps update automatically? Software centers usually handle updates for you, and you can run the update command manually at any time. Can Flatpak apps access my files? Only the locations their permissions allow, and file chooser dialogs grant access to the specific files you pick. Why are some Flatpaks large? Each app depends on a runtime of shared libraries, and the first install downloads it, but later apps reuse the same runtime, so the cost is paid mostly once. How do you remove unused runtimes? The uninstall command with the unused option cleans up runtimes that no installed app needs, which reclaims disk space after you remove software.