Stolen from linuxmemes at deltachat
I think this is funny, but it’s hard for me to hate too much on flatpaks. Disk space is practically free now, and having spent a good chunk of my career fighting DLL hell, I have a lot of sympathy for the problem it’s trying to solve.
Yeah I mean it’s taking 500G of my terrabyte ssd. What else was I going to use that for? Installing games off steam? Two node modules folders?
Two node modules folders?
LOL
Its good and bad. Bad because the base system cant use it and its not the main packaging choice.
Lots of good apps like OBS use outdated runtimes, which simply should not be used anymore. I am not sure if this is a security issue but probably it is, and it creates this unnecessary Runtime bloat.
Honestly this. It’s so nice to not have to hunt for a specific library that depends on 20 other libraries. I’d rather pay in disk space than deal with that.
You also pay in security holes.
I hate this philosophy so much! I hate developers for it! It’s like they gave up on even trying to do anything about retrocompatibility and managing libraries and dependancies.
Anyway it will collapse soon. I just wish it was sooner.
You’re free to hate it, but flatpaks ARE an answer to “retrocompatibility and managing libraries and dependancies.”
An answer that posit that disk space is infinite and free and embrace the black box philosophy. Soon we will have machine priests doing rituals to maintain them I guess.
How do Flatpaks follow “black box philosophy”?
That sound cool tho happy admech noises
Honestly I get both sides of it. Your view makes sense as an end-user and from a philosophical perspective. But some people have legacy software that needs conflicting dependency versions, for instance. It’s just a trade-off.
Yeah, package maintainers should have their dependencies figured out. “Managing dependencies is too hard” is a distro packager’s problem to figure out, and isn’t a user problem. When they solve it and give you a package, you don’t need to figure it out anymore.
Plus, frequent breaking changes in library APIs is a big no-no, so this is avoided whenever possible by responsible authors. Additionally, authors relying on libs with shitty practices is also a no-no. But again, you don’t need to worry about dependences because your packager figured this out, included the correct files with working links, and gave them to you as a solved problem.
it’s trying to solve.
It does not solve it. It just slaps more DLLs on top. Package managers do.
Pacman’s output “error: failed to prepare transaction (conflicting dependencies)” seems to disagree with you.
More info
Fine.
https://wiki.archlinux.org/title/Pacman#%22Failed_to_commit_transaction_(conflicting_files)%22_error
Here’s the pacman documentation explicitly stating that BY DESIGN it will not resolve a file conflict for you by overwriting files.
You either don’t understand what’s being discussed here, or you’re trolling. Google it yourself if you want to know more.
This is conflicting files, it indeed means that different packages try to install same files(usually happens when same package have multiple names).
But this is different error from what you mentioned before. So I’m asking what dependencies conflict in your case? Libboost?
You either don’t understand what’s being discussed here, or you’re trolling. Google it yourself if you want to know more.
I ask what dependencies cause conflict. And why did you provide link to another error? Your comment has conflicting dependencies too.
Some people have limited bandwidth for downloads, and a simple program can run to more space than a basic distro.
I can’t use flatpak because each update for a few apps is hundreds of megs and my internet is only 2 Mbps.
That too :-/
Cry-laughing in
/nix/store
Me opening /nix/store before bed so I can see it in the morning
I heard they tried to fit node_packages, but the scale caused the sun to become too small to see.
node_modules is so heavy it is the supermassive black hole at the center of the galaxy.
Pro tip: Use /var/lib/flatpak instead of /dev/null for a neater result, you avoid having to clean up spilled bits.
Recently switched to using Flatpaks instead of random .debs for a number of apps on my system. /var/lib/flatpak takes up 7GiB, which honestly isn’t that much (even though it’s like quarter of the OS size), given that’s the software I use most of the time.
Was skeptical at first about Flatpaks, but SteamOS showed me that is great at just giving OS developers access to a fully populated app store with minimal work.
Honestly, nowadays I’d say “ability to install flatpaks” should be the criteria on which we decide whether an OS is really “linux” or not (that is, SteamOS is, but Android isn’t).
Edit: Okay. I said something stupid here, my bad. What I was trying to get at is the distinction between Android, etc. and “Desktop” Linuxes like traditional distros, Chromebooks and the Steam Deck. Even though it technically runs Linux, it’s hard to argue that developers for Android are really writing apps that work on “Linux”. Wheras if someone releases a Flatpak version of their app because they think the Steam deck is cool, it works on other distros “for free”.
Honestly, nowadays I’d say “ability to install flatpaks” should be the criteria on which we decide whether an OS is really “linux” or not
I think you should check out what Linux means
Yup, Flatpaks are indeed great. Isolation, modern versions, no weird dependencies.
I have to manage a Debian PC fleet and I am too stupid for Ansible, so they all just got cleaned up extremely, all that bloat gone, apps replaced with flatpaks and now the system has like ⅓ the packages. Automatic updates then, VirtualBox is the only stupid thing with their kmod and all, but Virtmanager is also already on there.
Not all apps can be flatpaks, for example virt-manager, gnome-boxes can but its really restricted then.
But keeping the system slim just makes so much sense, its like removing this distro randomness which I am sure is needed for Linux to get their shit together and stop doing the same work at 10 different places.
Gentoo isn’t linux? Anyway, back to compiling.
You can install flatpaks on Gentoo.
Never needed them though.
That isn’t the same thing, though
With that definition, headless servers (I.e. no GUI) wouldn’t be categorized as ‘linux’
There are some (few) apps where flatpak may be the right solution. Many apps should NOT be flatpak
Imagine excluding almost all servers that don’t have a gui and docker images from the Linux definition.
Still better than snap
Having compared snaps in ubuntu 23.10 to flatpaks on opensuse tumbleweed, I can safely say that snaps tend to be faster for me with less weirdness happening during usage. Some programs were the same (obsidian for example) other comparisons were done from the same category (Firefox snap vs chromium flatpak). I genuinely prefer snap and don’t see the issues people often quote. Also, that the backend isn’t open isn’t a big deal to me, as snaps themselves generally still are.
Flatpak: “I would switch from Windows to Linux, but Linux is too bloated”
~$ du -sh /var/lib/flatpak/ 6.3G /var/lib/flatpak/
oh my god
Install Gentoo
“Eight Megabytes And Constantly Swapping”
*Terabytes
deleted by creator
Uhm I do, daily since a year or so.
Most apps are slim, but needing 8 runtimes or so is nothing rare at all.
deleted by creator
Yes I have do the same, layer small packages, use Flatpaks and complex stuff like (R + rstudio + COPR + Modules) or (QGis + grass + python + plugins) or IDEs in a distrobox.
At least in Distrobox you can also create rootful containers which could run an entire DE, or run libvirtd in there and use virt-manager in a rootless box, connected over ssh. Totally works but its a bit complicated. But for software with systemd or USB access this is needed.
Flatpaks share libraries, but they are sometimes not packaged well, contrary to distro packages, which on the other hand may pull in loots of dependencies.
Would be interesting to run all packages in a rootful distrobox and have Fedora RPMs on the other hand.
There are some hardening problems though, that I dont really understand, with user namespaces being blocked in the hardened kernel. On Arch there is
bubblewrap-suid
which fixes that in a way I also dont understand yet, but Podman, Distrobox, Toolbox, Docker etc dont work yet, and may not work too.