I am currently using Linux Mint (after a long stint of using MX Linux) after learning it handles Nvidia graphics cards flawlessly, which I am grateful for. Whatever grief I have given Ubuntu in the past, I take it back because when they make something work, it is solid.
Anyways, like most distros these days, Flatpaks show up alongside native packages in the package manager / app store. I used to have a bias towards getting the natively packed version, but these days, I am choosing Flatpaks, precisely because I know they will be the latest version.
This includes Blender, Cura, Prusaslicer, and just now QBittorrent. I know this is probably dumb, but I choose the version based on which has the nicer icon.
I’ll say this. Last time I used Snap, it resulted in a seemingly unfixable GStreamer dependency issue which ultimately required a fresh(-ish) start with a LiveUSB to fix. I installed the package through Flatpak the second time around, and everything runs flawlessly.
Even ethical issues aside, I’ll take Flatpak over Snap any day.
My experience with Flatpaks has been so stable and hassle-free that it motivated me to switch to Fedora Silverblue.
Hell yes! Feeling futuristic.
i avoided flatpacks before.
but now that i tried out silverblue and had to rely heavily on them,
i have to admit that flatpacks are not nearly as bad as i thought.the only issues i encountered are with steam (might not start propperly on first launch)
and with ides(terminal starts inside the sandbox)other than that it works great.
deleted by creator
I use Flatpaks for everything I can. I like how Flatpak keeps apps in a container isolated from my system. Also, Flatpaks contains every lib in every version I need for my installed apps, which means It does not rely on my system libs, and I like It, cause my system libs is to make my system works only.
Flatpaks are just the future of packaging
Great explanation and rationale for using Flatpaks! I hope others with questions see this.
I understand how people may be annoyed by the redundancy of every app packaging their own lib, but I swear those are measured in kilobytes, and people tend to be so obsessively minimalist it is a non-issue. Then again, minimalist are probably compiling their software.
I disagree. The other day I wanted to install some audio app that came in flatpak install format (I’ll check and add the name later). The app was less than 30MB in size, but the installation included 300MB of a previous version of org.freedesktop!
I think that is one time download of a library so the app can run. Also, any other app that needs it.
It seems to me that the biggest complaint people have with flatpaks are the space it takes.
I wonder if the blow up in GBs was an early buggy behavior?
No, because I don’t have a very powerful computer
Even if I did, I would still prefer to have native applications because it would be more permissive
I am totally ignorant, do flatpaks use a lot more processing?
They can take longer to start up, which can suck on older hardware. It’s not as bad as it used to be though. Once they’re running there shouldn’t really be any difference. The main drawback is actually that Flatpaks use more storage space.
I am glad that the startup times have improved, that bodes well for future startup times. Using up more storage really is what makes it suck for everyone. I thought that it was more efficient, since I see a lot of .platform, and I assumed those are libraries shared across flatpak apps that use those dependencies.
I am almost sure AppImage has the same problem? I don’t know, people do rated that better though.
Storage space mostly isn’t as bad as it is with AppImages. Each AppImage stores all the libraries it needs, even if they are shared with another one. They can’t even know if they have shared libraries. A single AppImage will probably actually use less storage than a single Flatpak if you only have one, just because the AppImage only uses exactly the libraries it needs, while Flatpaks use shared sets of them. That being said, Flatpaks generally get less bad the more of them you use, because of the shared libraries. They’re still a whole extra set of libraries on top of your system ones though, plus they put out a new set every year. Apps that are still under active development generally get updated to the latest version, but older apps that are basically finished often require older libraries, so that’s more space used. Overall for a one off program when you’re not using universal packaging systems regularly AppImages are mostly better, but if you’re going to be using them regularly Flatpak quickly becomes far better. It still uses more storage space than just using native apps though.
Another difference between Flatpak and AppImage is that it can be kind of a pain to theme Flatpaks to match the rest of your system, and I don’t know of any good way to do it with qt6 apps yet, but it’s just straight up impossible to theme AppImages. They can technically have themes built into them, but unless you’re using Adwaita, or maybe Breeze if you’re lucky, they just don’t, and having to rebuild your own custom AppImage completely defeats the main benefit of using AppImages.
I don’t like flatpak or snap or any of them. System libraries exist for good reason, just because your computer is stupid fast and you have enough disk for the library of Congress a couple times over doesn’t mean you should run a veritable copy of your whole operating system for each program. IMO it’s lazy.
Sandboxing is a different thing though, if that’s the purpose then it’s doing it right.
I have a ton of flatpaks which means packages are shared between them, so no it’s not lazy or a copy of the whole system. It makes a ton of sense for stability.
Updates are diff’s so downloading and updating is fast. Not entire packages.
Making every package work with only a certain version of a dependency and hoping it is stable doesn’t make a lot of sense.
You’ve just moved the packaging problem from distributions to app developers.
The reason you have issues is historically app developers weren’t interested in packaging their application so distributions would figure it out.
If app developers want to package deb, rpm, etc… packages it would also solve the problem.
Sure. Except you gain universal compatibility for all distros that have flatpak and aren’t building all the different package formats. Makes it much more attractive for actual developers to package since it’s only done once.
There’s no right answer here, but there are definite benefits.
I’ve had many little issues since I moved to Linux years ago, most of which would never have been an issue if flatpaks were there at the time. My experience has been better with them.
On my main PC I use for gaming I run Arch and prefer native packages whenever I can use them. I’m quite happy to have this one computer by a hobby project, and native applications just make more sense on something as up to date as Arch when they’re available. I have started to prefer Flatpak over AUR packages though. The AUR is pretty overrated, in my opinion.
On my laptop and anything else I install Linux on I usually just use LMDE, and I’ll often prefer the Flatpak, just because it’s way more up to date. There are some apps that Mint keeps up to date native versions of, and there are some apps that come preinstalled that I just don’t care about having the latest version of, but for everything else I usually just download the Flatpak.