Choosing Apps on elementary OS: AppCenter, Snap or Flatpak
Installing software on elementary OS is usually straightforward, but the available choices can feel less clear than the desktop itself. AppCenter presents a polished catalogue, while Snap and Flatpak provide access to applications that may not appear in the default storefront. Each system has different strengths around security, updates, storage, compatibility and desktop integration.
The right option depends on what you are installing. A small utility from the elementary ecosystem may be best through AppCenter, a vendor-supported development tool may be distributed as a Snap, and a modern creative application may have its strongest Linux package in Flatpak format. Knowing how these systems work helps avoid duplicate installations and confusing update behaviour.
This matters for Australian users as well. An NBN connection makes large downloads manageable for many households, but people on mobile broadband, regional wireless services or shared connections may care about package size. Someone using a laptop in a Melbourne café, a home office in Brisbane or a rural town may also value reliable offline updates and an app that behaves consistently across machines.
How AppCenter Fits Into Elementary OS
AppCenter is the native software centre for elementary OS. It is designed around the distribution’s visual language, payment model and preference for applications that respect elementary’s human interface guidelines. Open-source apps can be installed at no cost, while some developers offer paid downloads or optional payments to support continued development.
The catalogue is curated rather than being a completely open directory of every Linux package. That curation can make AppCenter easier for new users because app descriptions, screenshots and permissions are generally presented in a consistent way. The trade-off is that a useful application may be absent, arrive later than its upstream release or be offered in a version that does not match the developer’s current package.
On recent elementary OS releases, AppCenter also works with Flatpak applications and repositories. This means the graphical store can act as a friendly front end for sandboxed apps, while the underlying packaging technology remains Flatpak. The exact catalogue and repository behaviour can vary between elementary OS versions, so the app’s source should be checked before assuming that every listing is a traditional Debian package.
AppCenter is a good first stop for everyday software such as note-taking tools, utilities, simple games and applications made specifically for elementary OS. It also gives users a clearer support path: if an app has a listing, its screenshots, payment information and release notes are usually easier to find than they are on a random download page.
What Snap Brings To The Desktop
Snap is Canonical’s universal Linux package format. A Snap bundles much of an application’s required runtime and runs through the snapd service, which manages installation, updates, confinement and revisions. Snaps are commonly distributed through the Snap Store and can be installed from the command line or through a compatible graphical tool.
The main attraction is availability. Large projects such as communication clients, developer tools and server utilities may publish an official Snap even when they do not maintain a Debian package or a Flatpak. Automatic background updates are another benefit for users who prefer not to monitor release pages manually. Previous revisions can also make it possible to roll back after a problematic update.
There are costs. Snap applications can use more disk space because they carry shared components in a form that is easy to deploy across distributions. The first launch may be slower for some applications, particularly on older hardware. Integration with elementary’s desktop can also be uneven: themes, file pickers, removable drives and system portals may not behave exactly like their native equivalents.
Snap’s centralised design can be attractive when a project officially supports it, but it does create reliance on Canonical’s infrastructure. This is worth considering for organisations, schools or users who want to maintain a more distribution-neutral setup. It is also sensible to check whether snapd is installed and whether the application’s permissions are acceptable before adding a Snap to an otherwise lean elementary OS installation.
Why Flatpak Is Often The Better Desktop Format
Flatpak was created with desktop applications in mind. Instead of packaging every dependency separately, it uses runtimes shared by groups of applications. Apps run in a sandbox and communicate with the operating system through portals for tasks such as opening files, accessing the camera, printing and displaying notifications.
For elementary OS users, Flatpak has a particularly natural role because AppCenter supports it. Flathub, the largest and best-known Flatpak repository, adds thousands of applications, including browsers, media players, graphics software, office suites and development environments. A Flatpak can therefore provide a newer release than the distribution repositories without replacing system libraries or changing core operating system components.
The sandbox improves control, though it is not a magic security shield. An app may request access to the home directory, external drives, the network or specific devices. Permission tools such as Flatseal can help inspect and adjust these permissions, but changing them casually can weaken the isolation that made Flatpak appealing in the first place.
Flatpak packages can be large, especially during the first installation because a runtime may need to be downloaded. Once several apps use the same runtime, that cost becomes less significant. On a typical Australian NBN plan this is rarely a major obstacle, but a person using a phone hotspot while travelling between Perth and regional Western Australia may prefer to download large runtimes at home.
Comparing Compatibility, Updates And Control
The simplest way to choose a package is to match the source with the application’s needs. AppCenter is usually the most comfortable route for elementary-focused software and well-integrated utilities. Flatpak is a strong choice for current desktop applications, especially when the app is available through AppCenter or Flathub. Snap is worth considering when the developer clearly prioritises it or when it is the only maintained package.
Updates work differently across the three options. AppCenter may update native packages through the system’s normal Debian and elementary OS mechanisms, while Flatpak applications and runtimes have their own update process. Snap packages generally update automatically through snapd. Having all three systems installed is possible, but it can make it difficult to know which source supplied an application and where its settings, permissions and update controls are managed.
Avoid installing the same application in multiple formats unless there is a specific reason. Two versions can create duplicate launchers, separate configuration folders and confusion over which one opens a downloaded file. If a native package is already working well, replacing it with Flatpak may offer little benefit. Conversely, an old distribution package may be worth replacing if the project’s Flatpak or Snap is substantially newer and maintained by the upstream developer.
Storage and startup behaviour also matter. A modest laptop with a 128 GB drive can fill quickly when several runtimes, browser profiles and Snap revisions accumulate. A workstation with a large SSD will make those differences less noticeable. Users who regularly clean unused applications should remember to remove unused runtimes and old package revisions through the relevant package manager rather than deleting application folders by hand.
A practical Australian example is a household where one computer handles school documents, streaming and occasional photo editing. AppCenter may cover basic utilities, Flatpak may supply a modern image editor, and Snap may be reserved for a specialist tool. For an after-work arvo spent following sport, a browser-based service or sports updates may be all that is needed, avoiding an extra desktop package altogether.
A Sensible Installation Workflow
Start in AppCenter and read the application listing carefully. Check the screenshots, developer name, last update and any notes about payment or permissions. For an application with several similarly named entries, confirm that the publisher is the project’s official developer or a trusted maintainer. This small check prevents many avoidable installations.
If the app is missing or outdated, look at the project’s official website. Prefer an official Flatpak, Snap or Debian package over an unverified archive from a download mirror. When choosing between Flatpak and Snap, consider whether the project documents one format as its primary Linux release. Upstream support usually matters more than general claims about which package type is universally best.
Flatpak is commonly installed and managed with commands such as flatpak install, flatpak update and flatpak uninstall. Snap uses commands such as snap install, snap refresh and snap remove, provided the snapd service is available. AppCenter handles much of the graphical work, but command-line tools are useful for checking package origins and resolving situations where a graphical listing becomes stuck.
Permissions deserve a quick review after installation. A note-taking app should not automatically need broad access to every personal file, and a media editor may need access only to selected folders. Sandboxed formats can make these boundaries clearer, while native packages traditionally have broader system access. Keep the operating system and package infrastructure updated, particularly on computers used for banking, tax work or business documents.
When troubleshooting, identify the package format first. A Flatpak issue may involve a runtime or portal, a Snap issue may involve snapd confinement, and a native AppCenter package may be affected by Debian dependencies. Removing and reinstalling an app at random can erase useful settings without addressing the real problem. Checking the application’s logs, permissions and source usually produces a faster fix.
| Feature | AppCenter and native packages | Flatpak | Snap |
|---|---|---|---|
| Best suited to | Elementary-integrated apps and system utilities | Modern desktop applications | Official vendor releases and specialist tools |
| Main source | Elementary OS repositories and AppCenter listings | AppCenter-compatible repositories and Flathub | Snap Store |
| Updates | System package updates | Separate Flatpak updates and runtimes | Automatic updates through snapd |
| Isolation | Usually limited for native packages | Strong sandbox with portals | Confinement controlled by snapd |
| Desktop integration | Usually the most consistent | Generally good, depending on portals and permissions | Can vary by application |
| Storage needs | Often smaller when dependencies are shared by the system | Runtimes can require substantial initial space | Bundled components and retained revisions can grow |
| Useful first choice | Yes, for ordinary elementary OS software | Yes, when a current desktop app is needed | When the developer officially supports Snap |
The best approach is deliberately boring: use AppCenter first, choose Flatpak for a current and well-supported desktop app, and use Snap where its official availability gives it a clear advantage. Keep one preferred source for each application, review permissions, and occasionally remove unused runtimes or revisions. That routine keeps elementary OS tidy while giving you access to the wider Linux software ecosystem.