Tbh, the meme isn’t wrong. If you strongly dislike snaps, get a different distro.
That’s the cool thing about Linux based systems: There are enough for everyone and you can customize them any way you want. Just get something that fits your taste.
I’m going to create a distro where EVERYTHING including your web browser is launched through systemd and it’s built from nothing but snaps, just for you guys. I’ll call it “Oops! All snaps.”
Just got to hope that Canonical will host all of the software for it on their Snap repository (singular) I don’t think they’d object to it but that is a big issue with snap, you can’t add other repositories and the server code isn’t open source.
Sounds great. SnapOS.
ThanOS
What the hell? Half of the bytes on my drive are missing!
SnapOS sounds better than the current hybrid that is Ubuntu.
It seems like that is where Canonical wants to end up anyways, its going to be very weird to see a non Debian Ubuntu.
It should have a custom desktop environment called Crackle (or Krackle if KDE based).
System sounds are snaps, cracks and pops.
Just have to patch in the Linux sound drivers from the 90s!
The systemd devs should create a desktop environment so they can make an entire distro with nothing but systemd from bootloader to screensaver.
desktopd here we goooooooooo
I’m personally waiting for kerneld
What’s with all the systemd hate? It seems to work well for me…
Be careful you’re going to start a war. But to answer your question (simply and superficially) there is nothing wrong with systemd, the hate comes mainly from a philosophical issue. It was created to replace old systems related to the basic functioning of the OS (process management, hardware, etc.), and people complain that it has a feature creep problem because it has subsystems to replace different areas of the OS and purists don’t like it, and is true that it can replace several areas but you can choose which areas are replaced, it’s not like you have to.
Another problem is that there is (or was, I don’t follow these things) friction between the Kernel and systemd, as systemd developers did not respect certain development philosophies.
There are several technicalities and nuances to this story but I don’t feel like writing a book, so I hope this at least partially answers your question.
Don’t forget the development issues. Last I read up on this was several years ago, so things may have changed, but:
It’s open source, but it’s entirely controlled by a handful of people who work for RedHat, and they don’t publish any of their communications about development nor any supporting material like code documentation. It’s a massive complicated codebase and they’ve made no effort to make it accessible, nor do they allow contributions from anyone outside the RedHat team, so it remains a closed black box controlled by a private, for profit corporation.
It’s open source in the worst way possible.
Another problem is that there is (or was, I don’t follow these things) friction between the Kernel and systemd, as systemd developers did not respect certain development philosophies.
More information on this here:
When systemd sees “debug” as part of the kernel command-line, it will spit out so much informaiton about the system that it fails to boot… The init system just collapses the system with too much information being sent to the dmesg when seeing the debug option as part of the kernel command-line parameter. Within the systemd bug report it was suggested for systemd not to look for a simple “debug” string to go into its debug mode but perhaps something like “systemd.debug” or other namespaced alternatives. The debug kernel command-line parameter has been used by upstream Linux kernel developers for many years. However, upstream systemd developers don’t agree about changing their debug code detection. Kay Sievers of Red Hat wrote, “Generic terms are generic, not the first user owns them.”
tl;dr: systemd parsed kernel command line information; when “debug” was present, systemd enabled logging that was so verbose that it would cause the system to become unbootable. systemd developers were notified of the issue and started acting passive aggressive instead of fixing the issue.
Or to put it more simply: if you make changes that cause Linus Torvalds’ system to stop booting properly, you’re probably gonna have a bad time.
oh my dear god TAKE COVER, TUCK EVERYTHING IN AND COVER THE WINDOWS, THE FIRST SHOTS HAVE BEEN FIRED EVERYONE DUCK UNDER THE TABLE I REPEAT THE FINAL WAR HAS BEGUN
Oh SNAP!
That’s the actual plan. They are working on moving system components like cups to a snap
Chaotic evil
I want an OS where every application is a web app, each packaged with their own browser running in docker in a snap.
You could call it… Ubuntu 24.10 the way things are going lol
Aw, Snap!
I got a good laugh from this. Thanks OP
How does the fediverse feel about flatpak?
Solid choice
We hate it, you must build your own binaries! Sacrifice all convenience for maximum compatibility and security! Don’t know enough to ensure stability or security? Too bad, go use Windows pleb. /s
I really like flatpak! But it has its limitations. Thats okay!
There is just a space for containerized images of desktop apps that are distro independent. Linus talks about this at a QA, but having a maintrainer for every app and every distro under the sun is just a waste (he used his diving app as an example). Flat park is a good solution for packaging up apps, and it makes sense for stand alone apps that have a lot of moving parts and don’t need to integrate with the rest your intro. Their are basically 5 apps that I use everyday that install through flatpak. Stuff like discord and Joplin.
At the same time, if something is supported through the distro package manager directly, I would rather install through that. Especially for core system components, but also for apps that aren’t really daily drivers for me. I definitely feel like I have to actively maintain flatpak installations, so if I can install without a flatpak, I would rather not. For small apps, especially simple command line apps, their probably isn’t that much maintenance work to get them on the distro anyway.
I don’t really consider myself a power user, so I’ll use flatpak if it’s easy to use and doesn’t block certain features. Otherwise I’ll just look for an appimage or debian package because I already know how to use those.
The biggest issue I see is big labels like “potentially unsafe” and “proprietary” on flathub that scare people away from popular, well trusted non-FOSS software like Discord. At the same time, FOSS-friendlyness is one of the selling points for many people. How can it appease both camps?
Plus, casual users aren’t going to flathub to download programs, they’re downloading from the software site. Since most of the most popular flattpak images are not officially verified by the software owners, nothing is linking to them to increase their popularity.
Yeah, I agree, I don’t like that aspect of flatpak development either. The idea that the containerization is supposed to provide some kind of resistant form of a sandbox that prevents malicious programs from breaking into your system; I don’t buy it.
Look, you need to trust your application sources, there is no way around that. The idea that this is supposed to be a “safer” way to install software than any other package manager is silly.
I still like that flatpak apps are separated from your system and locked to their own dependencies because it makes these apps more portable to different distros. But not for security reasons.
I like Flatpak. It does what it needs to and I rarely, if ever, have issues with Flatpak apps. It’s night and day compared to Snap.
I see why it exists but avoid it (and all other universal package formats) like the plague. Never had a good experience with it.
It’s as close to a “universal packaging system” as can get now.
There was a lot of talk back in time, when Ubuntu decided to forcefully shove snaps onto users. The thing is, Ubuntu could have embraced flatpaks like many other distros but it chose snaps which is not ideal for people who like an OS whose primary goals revolve around freedom and privacy. You see, it is the proprietary nature of snaps that gets them this hate.
Appimage and other packaging methods don’t get this hate because they are open source and users have a “choice”. What we are seeing against snaps is the result of forcing people to a choice, ofcourse the people in question are linux users - people who are famous about taking freedom of choice seriously. Yes, you can get ride of snaps on Ubuntu but you can get rid of lot of ads and stuff on windows with a lot of tinkering too - I think you see the point.
Many people tend to have a preference for flatpaks because they do basically what snaps do but better and ofcourse flatpaks fit into the “freedom and privacy” spirit of linux.
As far as I’m concerned Flatpak has won the “universal Linux package manager” war.
Snap is a non-starter because of its proprietary back end, appimage has no distribution or automation built in. Flatpak has its faults (why does it put things in /var of all places?) but it’s the best I’ve seen.
I’d like to add: I think it’s won not by being the best, but being the least worst. I would like to invite whoever came up with that com.flatpak.FlatPak bullshit to consider a career more suited to their skill set than computer programming, such as vagrancy.
Holy shit the end (skull emoji)
I thought the com.flatpak.Appname came from Android, so I guess google is to blame?
/var is really annoying, especially when partitioning, previously I could just have a /var partition, but now I need to do /var/log specifically
I mean doesn’t that come from Java naming conventions? Which then makes sense that it continued on Android… but Why did it end up on FlatPack!?
I will speculate to say that maybe someone looked at the java/android way and thought let’s just copy that.
It’s the most plausible answer I can think of, without doing any research whatsoever
It’s a nice way to get around naming collisions.
Well yeah that’s true
Fixes every issue with Snap and has a big company behind it to keep it developing.
I’ve been using Ubuntu 20.04/22.04 daily for years now without any Snap issues. I haven’t once had any problems and I have 20 snaps installed.
You know last week there was malware found in the snap repos
Yep, but that’s a problem with all package managers where users can publish their own code without auditing. Every app store has these problems. Both npm and pip have these issues too.
People shouldn’t install unvetted binaries from random people. I wouldn’t install random binaries that I’ve downloaded through a web browser—why would installing through snap be any different?
Maybe because you used apt to install the package and instead Ubuntu installed a snap.
That was what made me switch anyway.
Oh shit I didn’t know it could do that… Fuck can I uninstall snap from pop_os or mint lol
Pop doesn’t use snap. It’s great. You should give it a shot. I have nothing but good things to say about it.
Great you are the 1%
I liked snaps until I tried them
Gentoo doesn’t snap, it runs smoothly
Picking up some popcorn 🍿
Work laptop comes with Ubuntu. Don’t ask me why.
Why?
Something something “worse is better” or something.
Bruh, more like I was already using Ubuntu, and then they uninstalled my firefox and replaced it with a snap.
Thissss
I’ve been on Ubuntu 14.04 until mid this year and now I have a new build with 22.04.
I was cool to have an updated Chromium via snap on 14.04, but it’s bullshit that the latest LTS release relies on snaps for FF.
I made sure to remove that shitty ass version and I installed FF the classic way.
Just install debian or mint
Mint, maybe. Debian, I’ve tried it twice before and it’s just not user-friendly enough for me.
What do you mean? What part of it wasn’t as friendly as Ubuntu?
Well true. I had to install flatpak and setup steam working, but since then I don’t see why it shouldn’t be like Ubuntu or Mint.
Well I am already very deep into Linux and it’s quirks. So maybe I am having a biased view
Well I am already very deep into Linux and it’s quirks. So maybe I am having a biased view
You think? :p
(Sorry, couldn’t resist.)
The possibility exists ;)
From the context of this thread, I have no idea what a snap is
and I’m conflicted on whether I should inquire
Look up snap and flatpak, they’re both based on a distro agnostic image/packaging model that allows developers to package for multiple distros rather than building native packaging for every single one. Both systems also solve the problem of two softwares requiring separate versions of the same dependency which is a fiddly problem at best for native packages.
Personally I’m a fan of flatpak, snap is similar but wholly driven by Canonical and their business interests.
Both have features that provide a solidly good reason to use them, there isn’t a clear “better” system yet. I prefer Flatpak personally but snap still handles some cases (daemon software run by the system or as root) better than flatpak.
Snap is a universal packaging format (like flatpak) developed by Canonical (the company behind Ubuntu).
Say you have a web browser, and to play videos it needs some codecs and a player, and to display pages it needs fonts, and to … on and on.
Before Snaps, when you installed the browser it would install the programs it needed at the same time, because the developer designed it to do so.
With Snaps, the program, and everything it needs, and everything they need, and they need, on down the chain all gets zipped together.
The good is that dependency management is easy, everything is in one place. The bad is that they’re slow to launch because of how everything is stored, and you now end up with many copies of the dependencies, and their dependencies, on your hard drive instead of 1.
The above is just representative, but those who prefer optimized systems do not like snaps. Those who like things tidy with easy dependencies are wrong. I mean, they like snaps.
What’s the problem with static linking if all this is considered worth the pain?
It’s also a mechanism to sandbox applications, which static linking can’t do.
Nothing in particular other than needing to update your builds when any single dependency has an important fix and still needing to build and maintain packaging for every single distro you support. For small applications shipping a static binary should be fine, but when you’re talking about something like Chrome or Firefox that’s a whole lot of overhead.
deleted by creator
Please correct me if I’m off base (I don’t use snaps), but this is only true for in-memory mounted snaps, not for first-run or expired. Meaning you sacrifice RAM for speedy repeat starts.
I don’t know how does Snap handles its loops (which I believe mounting is or was the slow part), but Linux always caches as much as possible in the unused memory.
Ubuntu didn’t have snaps when I installed this system …
I will never understand this controversial stupidity, why people can not use what they want and this without having “prejudice”?
deleted by creator
deleted by creator
The comic is depicting someone who doesn’t want to use snaps then being upset when they run into snaps after choosing a disto that is known for snaps. The comic is not making fun of people who like or dislike snaps, it’s making fun of people who dislike snaps but then choose to use a disto with snaps.
The thing about Ubuntu and snaps is that they are pushing it and “forcing” its users to use it.
You can uninstall it using
sudo apt remove snapd
but if you then try to install eg. firefox usingsudo apt install firefox
— voilà! — snapd is back.Not sure how they are forcing their users to use snaps any more than debian is forcing their users to use apt. It’s a package manager the distro is consciously supporting. If you don’t like snaps then you should probably just stop using Ubuntu.
Yes, I agreeing that symlinking sunsetted apt packages to install the snap version without prior notification is a bit underhanded: I can see they want to make the switch easy for casual users, but the transparency isn’t there for advanced users. I still think it’s a fine distro for newer and casual users.
When people use apt they get apt. That’s not the case with snap
People installed Ubuntu ages ago without snap. They were perfectly happy with that decision until Canonical decided to shove snap down their throats leaving them with three choices:
- accept snaps
- remove snaps painstakingly from your system entirely (Windows and Telemetry equivalent)
- switch distro
There is a very clear divide between work needed to achieve these options so saying that snaps are forced on users is fair to say imo. For an example how it should be done: Fedora ships with Flatpak support but I can chose if I want to install Firefox as a Flatpak or a RPM package.
Every distro decides what features to introduce and when. Distros and DEs are making the choice when to implement new standards like Wayland and Pipewire, GNOME shifts its features over time and in the latest release is redesigning how its window management workflow is going to work. When you choose a distro and DE, you’re choosing to trust them with these decisions. That doesn’t mean users are “forced.” Users can and will vote with their feet.
Ubuntu introduced snaps in 16.04, and has been gradually increasing their presence since then. Users have had 7 years to decide they don’t like them and change distros.
deleted by creator
deleted by creator
I, too, enjoy being locked into a single Canonical run repo.
I would love to love snaps, it seems so easy, but for some reason it always is super buggy once stuff is installed. I installed and removed docker via snap like 5 times in a one month period before just using apt and haven’t had an issue in months.
It was weird because I set a static ip for my server on my local network via my ASUS router (e.g. used the admin console to set the locks up to 10.0.0.5 instead of the 10.0.0.49 it was). After a couple days docker would freak out and refused to work because it kept looking for stuff on 10.0.0.49. I would have to reset some config files then it would work again. Finally gave up and used apt and haven’t had an issue since
Sometimes apps installed through snaps have borked UI.
Or strange, non-standard settings / configuration. It’s weird. Sometimes it’s fine, other times it’s like they have some preconfigured package that works with snap.
wtf?! docker is installed from snap now? does that mean your docker container is actually running inside a snap container?