this post was submitted on 23 Apr 2025
70 points (78.2% liked)
linuxmemes
24633 readers
972 users here now
Hint: :q!
Sister communities:
Community rules (click to expand)
1. Follow the site-wide rules
- Instance-wide TOS: https://legal.lemmy.world/tos/
- Lemmy code of conduct: https://join-lemmy.org/docs/code_of_conduct.html
2. Be civil
- Understand the difference between a joke and an insult.
- Do not harrass or attack users for any reason. This includes using blanket terms, like "every user of thing".
- Don't get baited into back-and-forth insults. We are not animals.
- Leave remarks of "peasantry" to the PCMR community. If you dislike an OS/service/application, attack the thing you dislike, not the individuals who use it. Some people may not have a choice.
- Bigotry will not be tolerated.
3. Post Linux-related content
- Including Unix and BSD.
- Non-Linux content is acceptable as long as it makes a reference to Linux. For example, the poorly made mockery of
sudo
in Windows. - No porn, no politics, no trolling or ragebaiting.
4. No recent reposts
- Everybody uses Arch btw, can't quit Vim, <loves/tolerates/hates> systemd, and wants to interject for a moment. You can stop now.
5. 🇬🇧 Language/язык/Sprache
- This is primarily an English-speaking community. 🇬🇧🇦🇺🇺🇸
- Comments written in other languages are allowed.
- The substance of a post should be comprehensible for people who only speak English.
- Titles and post bodies written in other languages will be allowed, but only as long as the above rule is observed.
6. (NEW!) Regarding public figures
We all have our opinions, and certain public figures can be divisive. Keep in mind that this is a community for memes and light-hearted fun, not for airing grievances or leveling accusations. - Keep discussions polite and free of disparagement.
- We are never in possession of all of the facts. Defamatory comments will not be tolerated.
- Discussions that get too heated will be locked and offending comments removed.
Please report posts and comments that break these rules!
Important: never execute code or follow advice that you don't understand or can't verify, especially here. The word of the day is credibility. This is a meme community -- even the most helpful comments might just be shitposts that can damage your system. Be aware, be smart, don't remove France.
founded 2 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
The more I learn about flatpaks, the more I wonder what the fuck happened to APT GET that it was necessary to have everything in one package. Apt would grab dependencies, too, if they were necessary the last time I was heavily using Linux. Is that no longer the case?
Flatpak is not just an alternative packaging format. One of the key advantages is that it provides a predictable runtime environment that is independent from the rest of the system. Sometimes an application needs a particular version of a dependency (called dependency pinning, very common practice in development) and can't rely on the system having the correct files. It also isolates the application from issues stemming from environment variables and the "global" filesystem.
It also gives developers greater control over packaging. Because of this isolation, they don't have to rely on downstream packagers to manually adapt the software to the distro's available packages (potentially introducing bugs).
One infamous example is Bottles. The project is officially distributed as flatpak, but OpenSUSE wanted to distribute it as native binaries. They had to use an outdated, broken version and caused a flood of user reports for issues that were not Bottles' fault. More in this thread and open letter: https://github.com/bottlesdevs/Bottles/pull/3583
This. Once you know how to use it it's way, way more preferable than dealing with all the problems that come from how scattered the Linux ecosystem is and how little control you as a dev had about app distribution. Development and debugging gets more predictable, people can get (app-related) fixes faster, it's hypothetically more secure (if Flatpak gets their shit together) and with the payment backend for Flatpak repos they (Gnome Foundation & KDE e.V.) work on it finally becomes properly viable to distribute paid apps. All the different hacky ways that are currently circulating (which are often outdated, only work on certain distros etc.) to offer paid applications are honestly obnoxious and expensive to maintain. Not to mention Flatpaks work great on immutable distros.
Just hope they gonna moderate things properly. Flathub & perhaps a few others have to place themselves as the de-facto standard marketplace to define and uphold all the important values the Linux community is organized around once it gets commercial. Not to do so would be a phenomenal mistake and end up in enshittification once the tech bros start targeting Linux.
So yeah, Flatpaks, Snaps and (maybe) AppImages are probably the future for most common end-user distros. Sorry for the small tangent.
So one of the biggest problems Flatpaks solve is that you can have different versions of dependencies installed at the same time (in this particular case, it’s a problem, because the Nvidia drivers are huge). Imagine you have two packages, P1 and P2. Both depend on library L1, but P1 depends on the newest version, L1 2.0, while P2 depends on the last version, L1 1.0. If the package P2 is open source, you can just rename L1 1.0 to L1-1 and patch it, but if it’s not open source, you can’t patch it, and P1 and P2 can’t be installed at the same time.
It also saves developer time, because the OS devs don’t have to maintain a package for every single app that comes out for Linux. Instead, the app developers make one package with all the dependencies they need and the right version of each and push it up to Flathub, where it can be installed on every OS.
Two big reasons I know of are dependency conflicts (not a thing with flatpak...i.e. package A requires one version of lib, package B requires a different), and sandboxing (flatpak has no access to the (file)system unless specified).