GeekDas
6 min read
GeekdasGeekdas

Flatpak vs APT: Which Should You Use on Linux?

Flatpak vs APT: Which Should You Use on Linux?

Introduction

If you run Ubuntu, Debian, Linux Mint, or Pop!_OS, you've probably installed software two different ways without thinking much about it. Sometimes it's sudo apt install something. Sometimes it's clicking "Install" in a software center that quietly pulled down a Flatpak instead. Both get an app onto your system, but they do it in almost opposite ways.

APT is the traditional Debian package manager. It's fast, deeply integrated with the OS, and depends on shared system libraries already installed on your machine. Flatpak is a newer, "sandboxed" packaging format - sandboxed means the app runs in an isolated environment with limited access to the rest of your system, similar to how a phone app can't freely read another app's files. It ships with most of its own dependencies bundled in, rather than relying on your system's. Neither is universally "better." They solve different problems, and knowing which one to reach for saves you disk space, update headaches, and the occasional broken dependency chain.

This guide breaks down exactly how Flatpak and APT differ, when to use each, and the mistakes people commonly make mixing the two on the same machine.

Quick answer: Use APT for system tools, CLI utilities, and anything that should be tightly integrated with your OS. Use Flatpak for desktop apps where you want the latest version, or you want it isolated ("sandboxed") from the rest of your system. Most users end up with both, side by side.

Setup

Installing and using APT

APT ships by default on every Debian-based distribution, so there's nothing to set up:

sudo apt update
sudo apt install <package-name>
sudo apt remove <package-name>

apt update refreshes the local package index from your configured repositories (here's exactly what that does under the hood); apt install then pulls the package and any missing shared dependencies from those same repositories.

Installing and using Flatpak

Flatpak isn't always preinstalled. On Ubuntu:

sudo apt install flatpak
sudo apt install gnome-software-plugin-flatpak   # optional, GUI integration

Then add the Flathub repository, which hosts the vast majority of available Flatpaks:

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

Installing and running an app:

flatpak install flathub org.gimp.GIMP
flatpak run org.gimp.GIMP

Practical Examples

Installing GIMP via APT:

sudo apt install gimp

This pulls GIMP plus whatever version of its shared libraries (GTK, image codecs, etc.) your distro currently ships. Its version and behavior are tied to your OS release - an older distro release means an older GIMP.

Installing GIMP via Flatpak:

flatpak install flathub org.gimp.GIMP

This pulls GIMP bundled with its own runtime and dependencies, sandboxed from the rest of the system. It's usually a newer version than your distro's own repositories carry, regardless of how old your OS release is.

Checking disk usage of runtimes:

flatpak list --runtime
du -sh /var/lib/flatpak

The first Flatpak app you install on a fresh system tends to feel "heavy" because it also downloads a shared runtime - a common set of libraries an app needs, like the GNOME or Freedesktop platform. Every subsequent app that uses the same runtime reuses it instead of downloading it again, so the true per-app cost drops fast after the first install.

Updating everything:

sudo apt upgrade          # system + APT-installed packages
flatpak update            # Flatpak apps and runtimes

Note these are two separate update commands - this is one of the most common points of confusion covered below.

Common Mistakes

  • Assuming apt upgrade also updates Flatpak apps. It doesn't. The two package systems are entirely independent, so a Flatpak app can silently go months without updates if you only ever run apt upgrade.

  • Installing the same app through both APT and Flatpak. This leads to two separate binaries, two separate configs, and confusion over which one actually launches from your app menu.

  • Expecting Flatpak apps to integrate perfectly with the system theme or file manager. Because of sandboxing, a Flatpak app may not automatically see your GTK/Qt theme or have file access outside your home directory. You can fix this by granting permissions via flatpak override or a permissions tool like Flatseal.

  • Blaming Flatpak for "large downloads" without accounting for shared runtimes. The first install of a runtime looks big. Later app installs that share that same runtime are much smaller.

  • Assuming APT always has the latest version. Debian-based distros prioritize stability over freshness. That means APT versions can lag upstream releases by months or years, especially on LTS (Long-Term Support) releases.

Benefits

APT benefits:

  • Deep OS integration - themes, file access, and system services work without extra configuration

  • No duplicated dependencies; smaller total install footprint on a single-app basis

  • Fast installs on typical broadband, since only the app itself (and any genuinely missing libraries) is downloaded

  • Mature dependency resolution built over decades of Debian development

Flatpak benefits:

  • Sandboxed by default - a compromised or misbehaving app has limited access to the rest of your system

  • Same package version across every distro, so behavior doesn't vary between Ubuntu, Fedora, or Mint

  • Newer app versions available immediately, without waiting for your distro's next release cycle

  • Multiple versions of the same app can coexist without conflict

Comparison at a Glance

Aspect

APT

Flatpak

Sandboxing

None - full system access

Yes, by default

Dependency handling

Shared system libraries

Bundled runtime, some duplication

App freshness

Tied to distro release cycle

Usually latest upstream version

Disk usage (single app)

Lower

Higher initially, lower per additional app

Cross-distro consistency

Varies by distro/version

Identical everywhere

Update command

apt upgrade

flatpak update

Typical use case

System tools, servers, CLI utilities

Desktop GUI apps, sandboxed/untrusted software

If you're also weighing Snap against Flatpak, or Snap against .deb directly, the same trade-off applies: sandboxing and cross-distro consistency versus lean, native integration. For every format side by side, see the full five-way packaging comparison.

Conclusion

APT and Flatpak aren't competitors so much as tools for different jobs. Reach for APT when you want a lightweight, deeply integrated package that's part of your system, such as CLI tools, server software, or anything where you want direct system access. Reach for Flatpak when you want the latest version of a desktop app, want it sandboxed away from the rest of your system, or need the exact same app behavior across different distros.

Most practical Linux setups end up using both side by side: APT for the base system and command-line tools, Flatpak for desktop apps like GIMP, Blender, or Spotify. Knowing which one you're using, and remembering to update both, is the actual skill here.

Frequently Asked Questions

Is Flatpak slower than APT?
Launch times can be marginally slower on the first run because the sandbox has to initialize, but day-to-day performance is generally indistinguishable from a native APT install once the app is running.
Can I remove APT and use only Flatpak?
No - APT (or a similar low-level package manager) manages your core system packages, including the kernel and essential libraries. Flatpak is an addition for applications, not a replacement for your system's package manager.
Does Flatpak work on Ubuntu, Debian, and Linux Mint?
Yes. Flatpak is distro-agnostic and works on any Linux distribution once installed and configured with a repository like Flathub, including all Debian-based distros.
Why is my first Flatpak install so large?
The first install downloads a shared runtime (e.g., the GNOME or KDE platform), which subsequent Flatpak apps reuse. Later installs using the same runtime are much smaller.
Do Flatpak apps get security updates automatically?
Only if you run flatpak update yourself or have automatic updates configured - unlike APT, there's no unified system-level auto-update by default on most desktop configurations.
Which is better for a beginner: APT or Flatpak?
Beginners installing a familiar desktop app (browser, media player, editor) often have a smoother experience with Flatpak, since it avoids missing-dependency errors. For system tools and anything terminal-based, APT remains the standard.
Can APT and Flatpak versions of the same app conflict?
They install to separate locations and generally won't conflict directly, but you can end up with two icons, two configs, and confusion about which one is actually running - best to pick one per app.
Is Flatpak available on Ubuntu by default?
No, starting with Ubuntu 22.04+ Flatpak isn't preinstalled (Ubuntu favors its own Snap format) - you need to install it manually as shown above.

Related Articles