Flatpaks aren't perfect, but I think it's a good solution to the fragmentation problem that is inherent to Linux.
Precisely. Flatpaks solve an important problem. Perfect should not be the enemy of good.
Binary compatibility is a sad story on Linux, and we cannot expect developers — many of whom work for free — to package, test, debug, and maintain releases for multiple distributions. If we want a sustainable ecosystem with diverse distributions, we must answer the compatibility question. This is a working option that solves the problem, and it comes with minor security benefits because it isolates applications not just from the system but from each other.
It’s fair to criticize a solution, but I think it’s not fair to ignore the problem and expect volunteers to just work harder.
Also companies are lazy and if we don't want to be stuck on Ubuntu for proprietary app stability. We should probably embrace something like flatpak. Also when companies neglect their apps, it'll have a better chance of working down the road thanks to support for multiple dependency versions on the same install.
I like Flatpak just because it isn't Snap
The enemy of my enemy, eh?
Fair. Also, flatpak does not try to break everything by default, which is a plus.
Flatpak is nice but I really would like to see a way to run flatpakked application transparently e.g. don't have to
flatpak run org.gnome.Lollypop
and can just run the app via
Lollypop
You could make aliases for each program, but I agree, there should be a way to set it up so they resolve automatically.
You can symlink /var/lib/flatpak/exports/bin/org.gnome.Lollypop
(if you are using a system installation) or ~/.local/share/flatpak/exports/bin/org.gnome.Lollypop
(if you are using a uset installation) to ~/.local/bin/lollypop
and run it as lollypop
.
Well, Flatpak installs aliases, so as long as your distribution - or yourself - add the <installation>/exports/bin
path to $PATH
, then you'll be able to use the application IDs to launch them.
And if you want to have the Flatpak available under a different name than its ID, you can always symlink the exported bin to whatever name you'd personally prefer.
I've got Blender set up that way myself, with the org.blender.Blender
bin symlinked to /usr/local/bin/blender
, so that some older applications that expect to be able to simply interop with it are able to.
If I can choose between flatpack and distro package, distro wins hands down.
If the choice then is flatpack vs compile your own, I think I'll generally compile it, but it depends on the circumstances.
Why?
Because it's easier to use the version that's in the distro, and why do I need an extra set of libraries filling up my disk.
I see flatpack as a last resort, where I trade disk space for convenience, because you end up with a whole OS worth of flatpack dependencies (10+ GB) on your disk after a few upgrade cycles.
Is compiling it yourself with the time and effort that it costs worth more than a few GB of disk space?
Then your disk is very expensive and your labor very cheap.
Flatpak haters hate new apps anyway.
glibc 2.36 is all you'll ever need, okay? Go away with those goddamn backports!
Haters aren't worth listening to. Doesn't matter if it is flatpak, systemd, wayland, or whatever else. These people have no interest in a discussion about merits and drawbacks of a given solution. They just want to be angry about something.
I know, right!? Add gimp to that list as well. I can go on and on about shortcomings of gimp despite being a happy user. The average gimp hater, on the other hand, doesn't have anything to say besides "the UI is dumb and I can't figure out how to draw a circle"
I'm a Debian fan, and even I think it's absolutely preferable that app developers publish a Flatpak over the mildly janky mess of adding a new APT source. (It used to be simple and beautiful, just stick a new file in APT sources. Now Debian insists we add the GPG keys manually. Like cavemen.)
If you're separating your application from the core system package manager and shared libraries, there had better be a good and specific reason for it (e.g. the app needs to be containerized for stability/security/weird dependency). If an app can't be centrally managed I don't want it on my system, with grudging exceptions.
Chocolatey has even made this possible in Windows, and lately for my Windows environments if I can't install an application through chocolatey then I'll try to find an alternative that I can. Package managers are absolutely superior to independent application installs.
Typically Windows applications bundle all their dependencies, so Chocolatey, WinGet and Scoop are all more like installing a Flatpak or AppImage than a package from a distro's system package manager. They're all listed in one place, yes, but so's everything on FlatHub.
I'm not sure where you're getting the idea that Flatpak aren't centrally managed...
I think containerization for security is a damn good reason for virtually all software.
Definitely. I'd rather have a "good and specific reason" why your application needs to use my shared libraries or have acess to my entire filesystem by default.
I think stability is a pretty good reason
If an app can't be centrally managed
Open Discover, Gnome Software etc -> Click update?
If you really hate flatpak just make an arch distrobox and download off the AUR. Or install Nix or something
I do sort of wish Nix was a more popular distro agnostic solution
I'm new to Linux. Every time I've had a major issue with an application it turned out to be due to a flatpak. I'll stick with other options for the time being.
Also at least let me compile it myself if not in a repo 😩
They do? I've always seen that as being up to distro maintainers, and out of control of the devs.
And this, this is why I love the AUR
I think no one said it needs to be ON a distro's repos. That's a straw man.
A package should be available in a native package format in a way that doesn't cause conflict with what's in the official repo. The reasons for a single source of truth on installed status should be obvious; but given the format of some packaging and the signed assurance of provenance, thr advantages to a native format can be leaves ahead of even that.
Wow, is this meme a really naive take that is contradicted by - oh god, everything. Can someone know about enterprise Linux and also be this naive?
laughs in appimage.
Are those flatpak haters that say that in the room with us right now? The main difference with distro repos is that packages in it are packaged by the distro packagers and everyone who has an opinion on flatpak should know that this is how it works.
Just compile from source?
Back in the day, when I installed my very first Linux OS, I had a wireless stick from Netgear. Wireless Drivers back then were abysmal, so I had to compile them from source (literally 15 mins after seeing a TTY for the first time). After I had found out how build-dependencies and such worked somehow and ./configure completed successfully for the first time, the script ended with the epic line:
configure done. Now type 'make' and pray
Ah, I had one of those wireless sticks from Netgear as well, probably a different model but still a royal pain to get it working.
Luckily ndiswrapper has become a thing of the past nowadays.
Because it's always so easy to compile everything you need from source! Just make sure to download, compile and install the dependencies first as well. Oh, and the dependencies' dependencies. And the ones from them. And so on. Unless you're lucky enough that there are already packaged dependencies available for you. Don't know how to compile? No problem, just read the documentation. You can be absolutely 1000000% dead serious sure that everything you need to know is documented and extremely super duper easy to understand if you don't know the source code or barely know how to code at all. And if not, maybe you can find the bits of information on the respective Discord server. It will probably be also very intuitive to know which build options you have to set in which way and which ones even exist. And that without causing conflicts with other packages you need to compile.
Still got got problems with compiling? EZ, just open a bunch of issues on the respective GitHub pages. (If present. Otherwise, try to find another way to contact devs and get support, Discord for example.) Maybe, about six months later you're lucky to get a response. And if not, don't worry. Some will tell you, you should RTFM or are an idiot. Some will just close the issue because your platform isn't supported anyway. Then you know, what you did wrong. Also don't mind if your issue gets ignored.
If you finally managed to compile everything from source, congratulations! Now run the program and test if everything is working. If it's not or if it is crashing, don't worry! In developed and civilised countries you can just buy a shotgun and blast your own head away to end this suffering.
EZ! Just compile from source! /s
Meanwhile almost everything I ever wanted is either in main Gentoo repo or in there is overlay with it.
linuxmemes
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 members of the community for any reason.
- 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.
- These rules are somewhat loosened when the subject is a public figure. Still, do not attack their person or incite harrassment.
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. Even if you watch it on a Linux machine.
4. No recent reposts
- Everybody uses Arch btw, can't quit Vim, and wants to interject for a moment. You can stop now.
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 fork-bomb your computer.