this post was submitted on 02 Jun 2025
149 points (96.9% liked)

Linux

7659 readers
315 users here now

A community for everything relating to the GNU/Linux operating system

Also check out:

Original icon base courtesy of lewing@isc.tamu.edu and The GIMP

founded 2 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
[–] dgdft@lemmy.world 15 points 4 days ago* (last edited 4 days ago) (2 children)

Flatpak is quite fucking far from perfect, and will always remain so due to its flawed design and UX approach.

Pretty sure the culprit here is Fedora’s packaging which adds an opaque systemd timer to run auto-updates, but the thread immediately next to this one on my homepage just happened to be a nice case-study in Flatpak fuckery: https://lemmy.world/post/30654407

Of course, the proposed changes in the article do nothing to fix this sorta problem, which happens to be the variety that end users actually care about. Flatpak is an epic noob trap since it pretends to be a plug-n-play beginner friendly tool, but causes all sorts of subtle headaches that newcomers inevitably don’t have diagnostic experience to address.

[–] bitcrafter@programming.dev 14 points 4 days ago (3 children)

The problem of there being a separate runtime for each video driver version was explicitly discussed in the article:

If you are part of the huge part of the population who happens to own a Nvidia GPU, it's a whole other can of worms. There are Flatpak runtimes that target specific Nvidia driver versions, but they must be matched with a compatible version installed on the host system, and it is not always a process as smooth and painless as one would hope.

An improvement idea that is floating around is to, basically, just take a step back and load the host drivers directly into the runtime, rather than shipping a specific version of the userspace drivers along with the application. Technically, it is possible: Valve's Linux runtime is pretty similar to Flatpak architecturally, and they solved this problem from its inception by using a library called libcapsule to load the natively installed host drivers into the Steam Runtime. This is the reason why it's significantly rarer that an old Steam game fails to launch on a new GPU, compared to the same scenario on Flatpak!

[–] dgdft@lemmy.world 5 points 4 days ago

Ah - I totally missed the Nvidia-related bit! Thanks for flagging that.

That being said, based on the maintainers’ past stances, I’m pretty pessimistic on them actually implementing a fix like that. They’re very much against the general practice of poking holes in their sandbox security perimeter.

[–] onlinepersona@programming.dev 1 points 4 days ago (1 children)

I really think if flatpaks were built upon nix, it would resolve these problems. It would however bring a new problem: people would have to learn forsaken nix 💀

[–] bitcrafter@programming.dev 2 points 3 days ago

It's not clear that it would, because the root problem is locking a package to a particular version of the nvidia drivers, which nix would not solve. Unless I am missing something?

[–] Sylvartas@lemmy.dbzer0.com 1 points 4 days ago

That solution sounds like a no brainer. I assume it's easier said than done (and maintained) ?

[–] possiblylinux127@lemmy.zip 1 points 3 days ago (1 children)

Flatpak doesn't have a UI? It is a packaging format.

[–] dgdft@lemmy.world 3 points 3 days ago* (last edited 3 days ago) (1 children)

Flatpak: a system for building, distributing, and running sandboxed desktop applications on Linux.

Flatpak application: an application installed via the flatpak command or through a graphical interface, such as GNOME Software or KDE Discover.

Runtime: also called platform, an integrated environment providing basic utilities needed for a Flatpak application to work.

Flatpak bundle: a single-file export format containing a Flatpak application or runtime.

From https://docs.flatpak.org/en/latest/introduction.html#terminology

You might be thinking of AppImages, which are more of a pure file format.

[–] possiblylinux127@lemmy.zip 1 points 3 days ago* (last edited 3 days ago) (1 children)

Are you talking about theming?

[–] dgdft@lemmy.world 4 points 3 days ago

I’m talking about the executable binary flatpak, which is the interface used to execute and manage applications distributed in the Flatpak bundle format.

https://docs.flatpak.org/en/latest/flatpak-command-reference.html#flatpak