Should I remove snapd/flatpak?

I've removed snapd support from my manjaro installations.
(need to have a look how to remove flatpak support). I don't need either of these. Aur and standard repos is just fine.

2 Likes

I have privacy concerns with snapd, as it has telemetry that cannot be disabled (it monitors installation and usage of all snaps and reports it to Canonical). I always remove it, probably the first thing after installing Manjaro.

With flatpaks, there is no such problem, but I haven't had the need to use them, so I removed that, too. If I ever need it, I can reinstall flatpak, but I doubt it. Generally, statically linked packages are very inefficient and I just don't like the concept. I sometimes use an appimage when I need an old version of some application, but most of the software I need is either in the repos, or in the AUR and if it isn't (which is exceptionally rare) I can always build it myself from git. I tend to avoid proprietary software as much as possible.

With AUR, I can see exactly where the package is coming from and decide whether to trust it on a package per package basis. With snaps, I trust nobody, and especially not Canonical.

4 Likes

Personally I keep flatpak just in case, but I never really found a reason to use snap... That and the telemetry and the closed source issues.

1 Like

They are now part of Manjaro by default.

They are means of software distribution that are completely separate from the package system that Manjaro uses mainly. They ship software that should work the same way no matter on which distribution you run the software.

On Manjaro, currently, you are not forced to use Snap or Flatpak you get any kind of applications installed on your system; on Manjaro, currently, these are only extra sources of software that are totally optional. They are pre-installed by default so users can have access to these extra software sources easily (in Pamac (GTK), it is just a matter of a couple of clicks to enable Snap and/or Flatpak support, similarly to the AUR support that Pamac offers too).

Uninstalling Snap or Flatpak should not be a problem. Notably, they are not part of the minimal ISO images variant of Manjaro.

3 Likes

If you dont use them its wasted resources and they can be safely removed.
(not just space .. for example enabled/running services services and boot up time etc)

1 Like

I highly suspect that Snaps and Flatpaks go against what makes Linux great, which is having lots of small applications and subsystems that can easily interact with each other.

Snaps and Flatpaks pursue the opposite, isolation. I think that isolation is great in some scenarios, but as standard just horrible.

1 Like

That's true, but unfortunately developers are tired of having to create and update packages for every distro that has its own package manager. Snap and Flatpak were created to standardize that, but instead they created two more types of packages you need to worry about.

1 Like

That's not entirely correct, or at least, it is misleading. The idea behind flatpaks is not a desire to create a universal package format (because developers typically do not package applications, it's distro maintainers who do that), but an attempt to circumvent the fact that various distros have different versions of various libraries on which applications depend, and the fact that newer versions of libraries are often not backwards compatible. So, rather than having to provide a version of the application for each combination of dependencies (what is often referred to as "dependency hell"), the idea was to include all the libraries and other dependencies into the application itself. In other words, flatpaks and snaps statically link their dependencies.

In that regard, flatpaks go directly against UNIX philosophy of small individual utilities working together to create complex results.

Not only that, but they go directly against free software principles. When you have free and open source software, dependency hell is not a big problem, but rather a minor inconvenience, because every user can compile the application against versions of libraries he has on his system (or, more often, it is the distro maintainers that will do that for him, creating a package that the user can simply install). However, for proprietary software, it is the developers of the application who have to compile the source code (because they do not want to share it with anyone else), so they have to worry about different users having different versions of dependencies. In other words, dependency hell is only a problem for proprietary software. Thus, flatpaks and snaps are, in a sense, a corporate attempt to replace free software with proprietary packages.

In addition to being philosophically objectionable, statically linking dependencies has two obvious practical downsides:

  1. statically linked packages take up significantly more disk space, multiple applications do not share dependencies, but each has a copy of it. Dependencies are often larger than the application itself, so this is a huge waste of user's resources.
  2. an update to a dependency has no effect on a statically linked package, so they do not benefit from performance improvements and security fixes that updates to libraries bring.

The advantages are: the developer does not have to worry about versions of dependencies. An update to the library has no effect on a statically linked package, so an update won't break it. Another "advantage" for Canonical is that they are getting free telemetry and statistics (which they could potentially sell to ad providers).

There is very little advantage for the user, except sometimes having an easier time downloading and installing programs.

4 Likes

There had been long discussions here in the forum about snaps etc..
I was heated up too.
At least they are just plugins, you can delete them, leave them on the system deactivated (thats default) or make use of them.
It's up to you, but they don't harm.

1 Like

While I agree with the vast majority of what you said, this is taking it a little far from my perspective.

The reason for them to exist is, as you stated elsewhere, to make it easier for application developers. It is also to increase application compatibility across Linux distros. The need for them is really driven by the need for applications to support both the ancient library versions on old LTS distros and rolling releases with cutting edge library versions at the same time.

IMO, the only package system that handles this really well is nix. It creates a best of both worlds scenario where things are kept small and can be shared but also provides a way for things to link to different versions of the same library. Of course, it creates new problems of it's own in the process. :grin:

1 Like

These things were just fine even before snap and flatpak. There's no need to sacrifice free software principles for developers convenience and that false beliefs of wider app compatibility. Many great distros came to this point today without them and they can move further without them also.

1 Like

Umm...not really, they are a huge pain for developers. That being said, I am not really defending snap or flatpak. I don't really use either.

3 Likes

Everyone else is being so politically correct, the correct answer to this thread is:

Yes.

5 Likes

Exactly. Historically all started with Canonical and their software center including proprietary software, don't get deluded!

Canonical is trying to copy Apple's model of doing business, by creating a walled garden now around their Snap store.

That is not the good of Apple, but the bad of Apple. That's the reason why Apple cannot scale as a company compared with Windows, because on Windows each company can create their own compatible solutions that add value the ecosystem overall. Even if they lose money in something specific, they regain it as result of the overall market value of their platform.

On Apple everything is Apple, so they are limited by their own resources and imagination. Not even USBs you can connect to their tablets.

And Canonical is no Apple. They are clueless about what makes free software good, and how to do business around it. And more importantly, they never learn! They just continue doing exactly the same that lead to everyone quitting, which is tricking the client with faulty software that someone else comes short afterwards and does it better.

And RedHat it's also copying some of the Apple vices. Captive user interfaces (GNOME), highly monolithic architectures (Systemd), and isolated systems (Snaps). Even Google is falling into the trap...

Bottom line: everyone is wrong. The fact that it's done by a company doesn't mean it's a smart design.

1 Like

To make one thing clear. Snaps and flatpaks are only enabled by default on the full installation media's. Minimal ISOs come without them.

4 Likes

Thank you all for your input, though I sniff a few trolls... not that that's bad (I'm naturally one, and trolls ought to make you stop and think of what you actually believe :slight_smile:
I appreciate all the input though, and will be removing both snapd and flatpak. I hadn't realised this would become such a hot topic!

Snap and Flatpak are controversial. Especially Snap, I remember it being a big scandal when it first got integrated in Manjaro. :slightly_smiling_face:

5 Likes

Another consideration: it takes literally a minute to reinstall snap/flatpak if you discover you need an app.

6 Likes

A post was merged into an existing topic: Snaps Flatpaks and appImages

Forum kindly sponsored by