this post was submitted on 11 Jul 2023
209 points (91.6% liked)

Linux

48352 readers
880 users here now

From Wikipedia, the free encyclopedia

Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).

Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.

Rules

Related Communities

Community icon by Alpár-Etele Méder, licensed under CC BY 3.0

founded 5 years ago
MODERATORS
 

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.

top 50 comments
sorted by: hot top controversial new old
[–] [email protected] 63 points 1 year ago (9 children)

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.

[–] [email protected] 40 points 1 year ago* (last edited 1 year ago) (7 children)

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.

[–] [email protected] 17 points 1 year ago (1 children)

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.

[–] [email protected] 34 points 1 year ago (1 children)

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.

[–] [email protected] 6 points 1 year ago (1 children)

Makes it much more attractive for actual developers to package since it’s only done once.

I maintain a few apps that are included into some distributions with no participation from my side apart from tagging what I consider releases in my git repo. How is doing something only once is more attractive as not doing it at all?

load more comments (1 replies)
load more comments (6 replies)
[–] zephyr 16 points 1 year ago (1 children)

Yeah, that's why Arch is almost the only distro that keeps everything installed natively. All other distros either have a troublesome workaround or only support flatpaks.

Rolling release just keeps everyone on the same pace. Yes, they break sometimes, but on the long run it just works.

[–] [email protected] 7 points 1 year ago

As a long time Arch user, it's not perfect, but it is perfect for me.

load more comments (7 replies)
[–] [email protected] 39 points 1 year ago (2 children)

For a long time now, if a flatpack is available and maintained, I use it.

[–] [email protected] 14 points 1 year ago (1 children)

Same. Better stability, frequent updates, no building from aur, and permission management with flat seal are great.

If you use mostly flatpaks they share packages which means they don’t take nearly as much space overall as single packages do.

Updates with only downloading diff’s is fast and works well.

[–] [email protected] 9 points 1 year ago

I also like them just for the sake of tidiness. Some apps like Steam tend to make a big mess of dependencies all over the place, so it's nice to have that all contained in one place. It does take up more space but I have a reasonably big hard drive so it's kind of negligible for me.

[–] [email protected] 10 points 1 year ago (6 children)

I briefly considered getting into Fedora Silverblue, and I still may for this very purpose.

load more comments (6 replies)
[–] [email protected] 23 points 1 year ago (1 children)

Quite the opposite, after fiddling with it for six months I fully uninstalled flatpak and deleted the directory to get away from the fact it kept downloading copies of nvidia drivers when I had moved to an AMD a year ago, and the drivers were locked from being manually removed even after I uninstalled all flatpak packages.

I'm an Arch user, trust me when I say I read the documentation.

After wasting hours on it I nuked it.

[–] [email protected] 7 points 1 year ago (1 children)

Damn, alright. I am starting to get the hate for it. I think I am blinded by the sheer convenience of it. Also, I am probably sleeping on more up to date repositories that gets me what I want without using flatpaks.

Linux Mint has been babying me though. I love the comfort, and cinnamon is everything I need in a DE. I will need to see what I can do.

[–] [email protected] 5 points 1 year ago (1 children)

Mint is an excellent starting point, and there's good reasons to use flatpaks. If it works for you use it until it doesn't.

load more comments (1 replies)
[–] deong 19 points 1 year ago (9 children)

I accept that I'm in the minority on these things, but I value simplicity really highly, and I mean "simple" as a very specific concept that's different from "easy". It can be harder to resolve library dependencies on a system where everything is installed using the native package manager and common file systems, but nothing is as "simple" as ELF binaries linking to .so files. Nested directories branching off of / is "simpler" than containers.

Do I have any practical reason for preferring things this way? Not really. There are some ancillary benefits that come from the fact that I'm old and I already know how to do more or less anything I need to do on a Unix system, and if you tell me I need to use flatseal or whatever, I'd rather just use users and groups and tools that have been fine for me for 25 years. But that's not really why I like things this way. I have no issue with embracing change when it otherwise appeals to me --I happily try new languages and tools and technology stacks all the time. What it really is is that it appeals to the part of my brain that just wants to have a nice orderly universe that fits into a smaller set of conceptual boxes. I have a conceptual box for how my OS runs software, and filling that box with lots of other smaller little different boxes for flatpack and pyenv and whatever feels worse to me.

If they solved practical problems that I needed help solving, that would be fine. I have no problem adopting something new that improves my life and then complaining about all the ways I wish they'd done it better. But this just isn't really a problem I have ever really needed much help with. I've used many Unix systems and Linux distributions as my full-time daily use systems since about 1998, and I've never really had to spend much effort on dependency resolution. I've never been hacked because I gave some software permissions it wouldn't have had in a sandbox. I don't think those problems aren't real, and if solving them for other people is a positive, then go nuts. I'm just saying that for me, they're not upsides I really want to pay anything for, and the complexity costs are higher than whatever that threshold is for me.

[–] [email protected] 6 points 1 year ago

Your knowledge of Unix systems is incredibly powerful, and I highly respect that. You are in control of your system, which is the ultimate goal of personal computing. It is even more powerful that your mental models are reflected in your system. That is super cool, I hope to get their some day.

I am also very happy you enjoy trying out new technologies, and don't have the grumpy jadedness of just using what you always use.

For me I thoroughly enjoy learning new skills that unlocks the power of all my many computers, and put them to use. Computing should be fun and empowering, and too often people deprive themselves of fun.

load more comments (8 replies)
[–] imnotneo 17 points 1 year ago (1 children)

ag to be honest I'm so frustrated by having to remember what package manager was used for installing which binary. I don't have time for this horse shit

load more comments (1 replies)
[–] [email protected] 16 points 1 year ago (1 children)

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

[–] [email protected] 6 points 1 year ago (2 children)

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.

load more comments (2 replies)
[–] [email protected] 15 points 1 year ago (1 children)

I want a stable OS, but I want the latest versions of applications (programs) without messing up anything. For me flatpak and snap meet that need, but I prefer flatpak.

load more comments (1 replies)
[–] [email protected] 14 points 1 year ago (2 children)

I'm glad to see you've gotten a ton of feedback here, and I just wanted to add another comment in support of flatpaks and image-based computing. I've been using Linux extensively for about 15 years now, mostly Arch and Debian Sid. I've been a distro packager, and I've compiled plenty of my own apps over the years.

This past year I took Fedora Silverblue for a spin after following the project for quite some time, and I am convinced that the image-based system approach, coupled with containerized and sandboxed userspace applications, is the future of Linux for most users. It makes so much sense from nearly all perspectives; whether security, reliability, or flexibility.

Integral parts of the system are mounted read-only by default. Simple commands can rollback unwanted changes, upgrade to a new distro release, or even sideload an entirely different OS. System updates are automated, as are flatpak updates, and there is little-to-no risk to stability due to the very nature of the essentials-only system images. And if something catastrophic did happen, you're just a reboot away from rolling it back.

Consider for a moment the collective energy and time that distro package maintainers must undertake on a weekly basis. Much of it simply repeated by each distro, building the same applications over and over again. Flatpaks are built once and deployed everywhere. Think of the collective potential that could be directed elsewhere.

Couple this with containers and the choice of distro matters even less. Arch, Debian, Ubuntu and Fedora are just a keystroke away. Yes, you can run containers on any distro of course, but you don't gain any of the other ostree benefits mentioned above.

I have since moved all of my workstations to Silverblue and I don't see myself ever going back to a traditional system again. If anything, I may start automating my own image deployments, similar to Universal Blue.

Yes, flatpak as a platform still needs some work, and so does ostree, but both are evolving quickly and will only get better with time.

To others who complain about needing Flatseal...in my opinion, this is a feature to be embraced, not loathed. Sane defaults are rarely sane for everyone, and Flatseal exists to give you complete control over what an app can or cannot see and do.

load more comments (2 replies)
[–] gobbling871 14 points 1 year ago (1 children)

9/10 desktop applications I use are flatpaks. Am on Arch and even when there's an AUR for a package I'd prefer to use Flatpak. Just so I can use Flatseal to control permissions access on my applications.

load more comments (1 replies)
[–] [email protected] 13 points 1 year ago (1 children)

Probably never. They're my third option after native packages and built-from-source packages/installs either manually or using the AUR. They're convenient and the only option I tolerate of those newer package styles (Flatpak/Snap/AppImage), but seemingly having to download a new 800+MB runtime for small 32MB applications is ridiculously wasteful and I wouldn't touch them if I didn't have at least a TB of storage.

load more comments (1 replies)
[–] agelord 13 points 1 year ago (7 children)

Yes, but only for apps that which I want to be on the very latest versions. One might ask why I don't use a rolling release distro, that's because I prefer a solid LTS base.

load more comments (7 replies)
[–] sudo22 11 points 1 year ago (1 children)

This is exactly what flatpaks were meant to do. Simplify the program deployment across all distros

[–] [email protected] 6 points 1 year ago (1 children)

It certainly has simplified things for me! To get anything so up to date, I would need to use something like Arch or the AUR, which is fine but I find unappealing (using Arch).

[–] [email protected] 8 points 1 year ago (1 children)

AUR is also insecure. I'd rather use a Flatpak from a trustworthy source.

load more comments (1 replies)
[–] [email protected] 10 points 1 year ago (3 children)

I'm running Ubuntu now and I'm in Snap hell.

It works well enough for some very basic apps, but for me personally, Snap has created far more problems than it has solved. With Firefox, for example, it makes it a lot harder to use some extensions, and FileBot is entirely useless without file system access (I mean, that's the entire point of the program).

I've heard Flatpak is better but my experience is somewhat limited. It could hardly be worse, though...

[–] [email protected] 7 points 1 year ago* (last edited 1 year ago)

Each snap is mounted as its own filesystem, which is messy for several reasons (try making sense of the output of lsblk on your system). Flatpaks don't do that, though they sandbox in other ways. There really isn't a "Flatpak hell", the worst that can happen is packages that depend on different versions of the same library taking up a lot of storage space, which is a problem with snaps too.

I still prefer to rely on official repos but I do use a few Flatpaks here and there. But one of the main reasons why I don't run Ubuntu is because of Canonical's aggressive pushing of snaps.

load more comments (2 replies)
[–] [email protected] 10 points 1 year ago (4 children)

100%. I just wrote a long post surmising this somewhere, but I'm switching my 5 year old Arch install to something like Debian Stable/Testing because I use almost entirely Flatpaks for my user applications (I would do 100% of them if every app I used had a Flatpak), and it's really just a much better idea to run bleeding edge on only the stuff you care about instead of an entire system.

load more comments (4 replies)
[–] zikk_transport2 10 points 1 year ago (3 children)

It depends. Kind of prefer Flatpaks as they are always working as expected on any distro, but some of them are giving me just too much struggle.

For example, dealing with sandboxing, or especially VSS code app. Yes, there are instructions, but then I install Golang SDK via Flatpaks the hard way (using CLI) for Go development, then having a nightmare trying to setup everything in vss code. Then how tf should I access go binary within my host terminal?

On Arch Linux I just tend to install from official repos, while the rest of apps - from Flatpaks.

Personally I don't like the way they are sandboxed, bit as long as it works I am fine.

load more comments (3 replies)
[–] [email protected] 9 points 1 year ago (1 children)

I personally still prefer native, but flatpak is my goto for whenever something isn't working or when the official repos are outdated.

The other day I tried to use Malt for blender but it wouldn't work on the native version because it was using the wrong version of python. The flatpak version works perfectly with Malt, but for some reason I don't feel like troubleshooting, the OptiX denoiser doesn't work.

Still though, flatpak is a welcome option and is way better than snap.

load more comments (1 replies)
[–] [email protected] 8 points 1 year ago

For convenience, it's great. The sandboxing is good as well. Flatseal is a must have for me, though.

[–] [email protected] 8 points 1 year ago (5 children)

Nope, don't like them. Nor snaps. I find the sandbox nature annoying and many developers don't actually seem to understand it correctly anyway meaning you have to use flatseal etc. Then having to deal with some apps writing config within the sandbox and some writing it outside the sandbox...

My order of preference is generally I pick the "official" supported version as opposed to any community maintained ones. Then within that:

  • Install via the language's package manager (cargo, npm, pipx, cabal etc.)
  • Appimage
  • Native package (.deb, .rpm etc.)
  • Plain binary
  • Build from source
  • Snap
  • Flatpak
[–] [email protected] 6 points 1 year ago (1 children)

Out of interest why do you favour snap over flatpak?

load more comments (1 replies)
load more comments (4 replies)
[–] [email protected] 7 points 1 year ago (4 children)

I had fedora installed the last few years, and was digging flatpak.... until I wasn't. One day I ran out of disk space - 230 Gb of flatpak dependencies. I run a pretty slim system, so what the actual heck? Did some research, learned how to flush cached and redundant packages, shrunk my flatpak deps to.... 150 Gb

I've since been trying Endeavor

[–] [email protected] 6 points 1 year ago

I think fedora fixed this recently

load more comments (3 replies)
[–] [email protected] 7 points 1 year ago (1 children)

Containerised everything is the future of computing and I think we'll look back on how we do things currently with horror!

But yes, I am slowly starting to use more contained desktop applications. Server-wise, everything I deploy is now in containers.

load more comments (1 replies)
[–] AntY 7 points 1 year ago (3 children)

Nope. I’ve been running Debian for the past six years after I got tired of messing with arch. I’m over my shiny new thing syndrome and am happy with old but stable software. I’ve tried some flatpaks but the only two that I use are Spotify and signal. They take a lot of space and updating is slow.

load more comments (3 replies)
[–] OldFartPhil 7 points 1 year ago (1 children)

I still favor native packages, but I don't have a problem with Flatpaks. I'll use them when a program isn't available in the repo or there's a compelling reason to have a never version of an application. I'm on Debian Stable, so I'm obviously not obsessed with having the newest, shiniest version of everything.

load more comments (1 replies)
[–] [email protected] 6 points 1 year ago (22 children)

When using Fedora Silverblue, there is no other option, which I do!

load more comments (22 replies)
[–] [email protected] 5 points 1 year ago* (last edited 1 year ago) (1 children)

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.

load more comments (1 replies)
[–] [email protected] 5 points 1 year ago (3 children)

I use flatpaks mostly. Flatpak dependencies (runtimes) are stored separately from the host system so and don't bloat my system with unwanted libraries and binaries. App data and configs are stored separately and better organized. Everything runs in sanboxes. I use overrides extensively. All these are very convenient for me.

load more comments (3 replies)
load more comments
view more: next ›