I’ve been involved with Linux for a long time, and Flatpak almost seems too good to be true:
Just install any app on any distro, isolated from the base system and with granular rights management. I’ve just set up my first flatpak-centric system and didn’t notice any issues with it at all, apart from a 1-second waiting time before an app is launched.
What’s your long-term experience?
Notice any annoying bugs or instabilities? Do apps crash a lot? Disappear from Flathub or are unmaintained? Do you often have issues with apps that don’t integrate well with your native system? Are important apps missing?
Perfection. Debian + GNOME Software + Flatpak = Rock solid and clean OS with the latest software.
There are a few things that still need to be ironed out tho. For eg. communication between desktop apps and browser extensions such as this.
Another thing I would like to see is a decent and supported way to mirror flathub and/or have offline installations.
That’s what I’m running since yesterday. Bare-bones Debian (base system + Gnome shell) with all GUI apps installed from Flatpak.
Don’t like them, they are annoying to deal with - CLI naming is odd, files are stored unintuitively and if your whole system is not on flatpak, chances are the sizes are going to be absurd. One of the main reasons I wen’t with Arch is Pacman + AUR, never have to install a flatpak, because the package management is so good.
Never used them, maybe I’m old, but I only use app from the mx/debian repo. Everything is here and up-to-date. I prefer raw native.
I’m using official flatpak Firefox because I didn’t want to wait any longer for Fedora releasing their rpm version of it. This way I get new releases right away and they are official as intended by Mozilla.
Not really a flatpak advantage, but a Firefox advantage.
I prefer them. There’s trade-offs (like disk usage and occasional theme issues) but it’s worth it to me for the sandboxing and ability to easily run a newer version of an application than your distro has packaged up in their repos. It’s better for developers since they don’t have to support deb, rpm, etc. etc. And long term, it’ll allow immutable systems to become the default and that’ll be good for security and stability.
Between Snap, Flatpak, and AppImage, I default to Flatpak. It seems like the best supported even if they all have their strengths and weaknesses. AppImage is great for old versions of software you don’t want updated/integrated into menus. Snaps are basically the same and I happily use them if there’s no Flatpak but it’s so tied to Ubuntu/Canonical that some people have opinions about using it. I don’t know of any developer stubbornly refusing to support Flatpak on ideological grounds.
Flatpaks have been amazing for me.
My home directory is a lot cleaner, dependency issues are a thing of the past, it’s easier on the developers, I’m getting updates faster (not having to rely on distro maintainers), my installs are more portable than before.
I wish we had Android-like permission setting, where it pops up asking if each program can use X permission as it requests it.
And I wish Gnome settings would implement some of the more basic flatseal options (flatseal can still exist for power users), although that one isn’t a shortcoming of flatpaks itself, it’s more to do with development manpower on the Gnome side.
Overall I’m really glad that one of the biggest annoyances in Linux is getting resolved. We’ve finally pretty much agreed on an app distribution and packaging standard
It’s pretty nice on my steamdeck no issues to report. I prefer a nice Deb package but on the deck flatpaks get preserved over upgrades.
My experience with flatpak has been stellar from a technical perspective has been stellar.
Where it currently falls short for me personally is trust. With my distro I am putting my trust into the maintainers, but with flatpak its… random people for most apps?
It is tough when it is not a primary channel of distribution for most devs, but I am optimistic that will change in the future.
It’s sandboxed though. Running an app from a developer already implies trust on your part. So if it’s sandboxed away from your other stuff, what’s the issue?
Sandboxed just means an app can’t reach out to the rest of the OS. What about the information I am entrusting to it to process?
If my browser is a flatpak, it likely has access to most of the information I care about. If I am using a chat app that is a flatpak, it can read my most personal communications. Why do I care if it can read what is in /etc?
Relevant: https://xkcd.com/1200/
Running an app from a developer already implies trust on your part.
You totally missed my point. My point was that a lot of flatpaks are packaged by unknown third parties. I would love it if the devs would package things as flatpaks directly, but that is mostly not the case.
Looking at flathub right now. 1567 applications are from unverified publishers vs 789 verified. Unverified apps include chrome, edge, chromium, brave, BITWARDEN and signal. All of those applications process highly sensitive information.
I am not terribly impressed. The ability to build and run apps in a well defined and portable sandbox environment is nice. But everything else is kind of terrible. Seemingly simple things like having a package that contains multiple binaries aren’t properly supported. There are no LTS runtimes, so you’ll have to update your packages every couple of months anyway or users will get scary errors due to obsolete runtimes. No way to run a flatpak without installing. Terrible DNS based naming scheme. Dependency resolving requires too much manual intervention. Too much magic behind the scene that makes it hard to tell what is going on (e.g. ostree). No support for dependency other than the three available runtimes and thus terrible granularity (e.g. can’t have a Qt app without pulling in all KDE stuff).
Basically it feels like one step forward (portable packages) and three steps back (losing everything else you learned to love about package managers). It feels like it was build to solve the problems of packaging proprietary apps while contributing little to the Free Software world.
I am sticking with Nix, which feels way closer to what I expect from a Free Software package manager (e.g. it can do
nix run github:user/project?ref=v0.1.0
).My experience with flatpaks has been mostly good. I tend to opt more towards .deb based apps, with flatpak being a fallback option. With that being said, the Pycharm Pro and Spyder flatpaks don’t run well at all on my system, with Pycharm being too heavy, and Spyder crashing due to Kvantum incompatibility.
It’s great if the pak meets your needs. For Steam the pak didn’t meet my needs because it doesn’t allow you to add additional library locations. As long as it’s set up in a way that works for you then it’s a big time saver.
I haven’t tried it but doesn’t flatseal let you setup steam’s permissions to allow external/additional directories or mounts?
What’s stopping steam’s access to other directories?Ah, I haven’t heard of flatseal before.
It works when set up with flatseal.
The trick is knowing how to do it. I still haven’t fixed my Zoom install to successfully download emojis (which I suspect requires a filesystem permission it doesn’t have by default)…
I don’t like it. Updating dependencies in case of security problems is impossible, I have to wait for the developer to release an update. Also, it wastes a lot of space. Pollutes
df
output. App startup is slooow.Just use the native packaging system! There is no reason software can’t be released using that.
idk what type of drive you’re using, but flatpak startup times are indistinguishable to me, when compared to native packages. And I’ve used flatpaks on A LOT of computers…
I see that fragmentation of runtimes is a problem. If all apps would simply use the same runtime, and a modern one, and there was a package manager that installs the missing dependencies, that would be nice.
The diskspace is a true problem too, just because of the fragmented runtimes.
But Distros are fragmented too. If simply everyone could unify, at least a bit, instead of at least 5 different big Distros competing, every app could just work. But thats not the case, so Flatpaks often work best, and maany packages are either only .deb, .rpm or even only on Arch
Great. Works on anything without any issues. I use it for pretty much everything (except web browser and only because I don’t wanna bother with permissions on that)… As for the size argument, I have also never had isssues with space, my laptop has 128GB of storage total and the /home partition on my desktop is ~100GB, both use fllatpaks for pretty much everything, I have no issues with space on either… And yes I use flatpaks on gentoo, cry about it.
Flatpaks saved my bacon when I borked my Linux work computer and didn’t have time to fix it. Spent 2 months with half my apps on Flatpak because the native ones weren’t working.
It’s also great as a developer. While I do provide x86 and arm binaries, I don’t bother distributing them in 20 different formats. The website links to Flathub, and the number of distro/Mesa specific issues has dropped to 0.
Edit: Also see- Pros of Using Flatpak
I used it once, as a last resort when I wanted to try some program that had a ridiculous set of build dependencies that was just too much. It was okay, I guess.