Next time, Gort will install Debian and save himself the trouble
I wish I could have it as easy as Gort. I miss my debian but I want that ZFS built into my kernel.
There is so many distros that are just ubuntu without snaps, is just a matter of picking one of them
Over time, Canonical will replace close to everything with Snaps. Ubuntu Remixes are not the solution. They just count towards Ubuntu’s installed base and validate Canonical.
Honestly i agree, that’s why i love that more and more debian based distros are emerging, lot of times from distros that used to be based on ubuntu
that’s why i love that more and more debian based distros are emerging
How many votes in Debian councils does Canonical own these days? The systemd vs Upstart discussion and vote at Debian was so protracted because Canonical bought votes in Debian’s Technological Council.
I didn’t knew that, the canonical influence on debian can really become a problem down the line. I will also checkout more about what canonical did along the years
systemd vs Upstart began almost exactly 10 years ago: https://www.phoronix.com/news/MTQ5NzQ
When I tried looking up current affiliations, I was either super clumsy in googling or potential conflicts of interests are simply not documented. https://www.debian.org/intro/organization.en.html lists the members but not who sponsors their work and googling each name individually is a bit too much for what’s only superficial curiosity on my part, so I’m honestly out of the loop who is being paid by Canonical these days.
What do you have to change to make it not count towards their numbers?
Not access their repositories would be one thing because the only somewhat close approximation of installed base is through repository accesses.
This is what I fear as well. I’m still running Kubuntu, as I have been for years. Next time I build a system it may just be time for Debian Testing or sid. I’ve been messing with both on some Intel NUCs I have laying around.
Do you know if they use ubuntu’s kernel? That is my sticking point.
Most of them use, unless you pick something like pop os that has it’s own kernel packages it will use the default ubuntu kernel
can you name a few?
Pop os, linux mint, linux lite, etc.
The first 2 may do a lot pf changes to the base but that’s what make them better them ubuntu in my opinion
Check out the kernel packages from Proxmox, they build ZFS into a debian kernel.
Yo! Best advice I’ve gotten, thank you!
I’d consider Arch too if you’re running ZFS on a client machine, there are like 5 kernel packages in the
archzfs
repo with ZFS baked in. I got tired of constantly rolling my own updated Debian packages for software a few years ago and made the jump to Arch and I’m really happy with it, the packaging and build system are a joy to work with compared to debs.No disrespect intended to Debian here I just got tired of building so many packages to have updated software. EndeavourOS is a good place to start in the Arch ecosystem if you ever feel like checking it out. I run Proxmox on my server boxes as well.
I used to run arch back before the big /usr/lib migration.
I forgot what got me to change to debian but a buddy was talking up the rock hard stability and something dumb happened so I made the switch to debian.
I usually run it as a rolling release (need to point to the version type rather than the codename) in testing. More stable than arch but more recent than stable.
My big reason for wanting it built into a kernel from my source repo is then I don’t have to worry about some bullshit upgrade not actually updating the kernel module like it should have. Dealt with that a few too many times when using ZFS on debian.
I usually run it as a rolling release (need to point to the version type rather than the codename) in testing. More stable than arch but more recent than stable.
Yeah, this was me before I got tired of constantly building my own packages to have current versions of some software. I’ve been pretty content with Arch since I switched to it a few years ago, I still spend some time mucking with packages but nowhere near as much as before. My breaking point with Debian was a new Ryzen laptop a few years ago, I could either package my own kernel for it along with all of the platform software I needed or I could hop over to Arch and just build a patched kernel so I went for it.
My big reason for wanting it built into a kernel from my source repo is then I don’t have to worry about some bullshit upgrade not actually updating the kernel module like it should have. Dealt with that a few too many times when using ZFS on debian.
There is nothing more annoying than dkms failing to build your primary storage (or NIC) module after a kernel update because ✨reasons✨ - that’s a huge part of why I settled on Proxmox for my server boxes, no more unexpected ZFS breakage.
Check out the Proxmox kernel when you get a chance, you might be able to just pull packages from their repo and roll with Sid otherwise.
Dude if that’s the case I’m so stoked. I don’t hate Ubuntu but I think forced snaps are dumb and wrongbad. It’ll be a bit before I can commit to the project sadly. I’ve got a work trip, a proposal and some pinball repairs on the docket first.
Should probably get a new battery for that laptop too.
You’re looking for Gentoo.
Unless I’m missing something, Gentoo uses out of tree kernel modules. https://wiki.gentoo.org/wiki/ZFS#Installation
Ubuntu actually bakes it into the kernel for you. I prefer having it in the kernel after having to deal with failed kernel upgrades several times in a row.
Considering that installing ZFS is optional even in Ubuntu, that just cannot be true. Out of tree means that upstream kernel.org does not bundle ZFS.
Btw, Ubuntu 21.10 corrupted ZFS partitions. Their QA is shit.
Keep in mind, Ubuntu rolls it’s own kernel based on kernel.org release.
Pretty sure optional means optional to use as your FS but not optional on your kernel.
Good to know! I’ll double check my version, then again, I skipped the installer and did things the advanced mode for my install so I might get to skip that issue.
Out of tree still means not part of kernel.org upstream. You’re imagining a tighter ZFS integration than is actually there in Ubuntu simply because of misunderstanding used terminology.
Well, you won’t have that much longer.
Oh? What’s going on?
The ZFS installer was removed from later non-LTS releases. AFAIK, even in the version with the ZFS installer, it wasn’t in the kernel, it was just including the pre-compiled non-DKMS driver module that matched the kernel version.
That’s inaccurate. I’m was running that kernel when it came out, just the kernel no extra modules or anything get added except the libraries and commanda for ZFS and zpool. I’m on a more recent one these days and it’s still the same set up.
I can’t say I care about it being an option in the installer, I’d rather run an advanced install because the installer’s ZFS set up was garbage, everything in one zpool, no branching no data encryption etc etc.
deleted by creator
The current most popular distribution is MX Linux (based on Debian Stable), which I use. You certainly don’t have to, but I would say least start with a distro that respects you and adheres to FOSS standards…
Edit: context
Honestly, instead of trying to remove Snap from Ubuntu, I’d just install another distro (PopOS for example is mostly like Ubuntu but with Flatpak instead of Snap)
Oh, is there a point using PopOS even if I replace the WM?
Pop is great, even without the wm. The app store is top notch, if you’re into that sort of thing. Basically it’s Ubuntu minus snaps, so slightly more modern Debian, with good flatpak integration making up for all apt’s drawbacks. Perfect for the computer you want to be able to use without dealing with out of date packages or rolling release tinkering.
Even so, the wm is worth taking the time to get familiar with, because it’s intuitive enough for a non power user, and you’re not going to approach its efficiency in terms of workflow unless you can consistently use several dozen keyboard shortcuts on a more bare bones tiling wm. Anyway, that’s my opinion, having used a wide variety of window managers since the 90s.
What’s “wm”?
Window manager
The same upside down and right side up.
Been using pop for months now. The one thing I have a complaint about my part has to do with Steam. I was drawn to Pop because it had good Nvidia support out the box. Steam flatpak is fine but it can’t do some things that the normal deb version can, such as accessing other drives you may have steam games installed on, or that you want to install them on. You have to make some sacrifices with your library setup and your freedom with it when using flatpak.
It took me a while.to figure this out. I like to share it when I can. The deb version of steam is much nicer to use.
Flatpak steam can do all that. You just have to learn to control the flatpak sandbox. There are CLI commands of course or you can install Flatseal which is a real nice gui that lets you control the sandbox for each individual flatpak app. https://flathub.org/apps/com.github.tchx84.Flatseal
Just add whatever drive/directory/mount point in the filesystem path for Steam in flatseal and Steam can see it.
I couldn’t get it going on anything but my steam deck to read SD cards. Flatseal doesn’t seem to help. The only thing that worked after a ton of attempts following a ton of guides on my desktop was to get the deb version.
Yea, I see. I use xmonad tailored to my needs tho, so that is why I want to use mu owb WM.
You’re absolutely not the target audience for the wm. But… you still might want to be familiar with it, because it could totally be your foot in the door to set someone down that path. The cost of adopting pop’s workflow is substantially smaller than creating your own from scratch, but it’s intuitive enough to get someone to at least understand why it might evolve to something like your setup.
These days I just don’t have enough time, and i’ve seen enough trends come and go that i’m happy with most of the pop defaults, and it’s mostly just dressing for terminal windows anyway. There are totally better options out there, I just don’t have the time to invest in one.
And anyway, most Debian and Ubuntu documentation is spot on for pop, which is a big advantage for anyone who is familiar with them or doesn’t have the time or desire to solve their own problems.
Yeah! Has good power management utilities and bonus features. but personally I’d stick to GNOME/Cosmic if you had Pop installed. You miss out on that integration otherwise.
Yeah, switching to Pop! Next time I do any major fucking around.
How about Devuan?
but with Flatpak instead of Snap
Same shit. Install Gentoo.
Installs Ubuntu.
It is Ubuntu.
Gets angry.Gort is not angry. Gort is calm.
Help me understand. Why would you install a distribution, just to gut what’s making it what it is, instead of just getting anything else? Just from Debian derivative perspective, if you hate snaps, why not install something like LMDE Mint, if you need a complete out of the box distro?
I think mainly because a ton of open source software will be tested with Ubuntu, and I don’t want another thing that could possibly be the problem when it fails to build on my machine.
Problem is that by “unsnapping”, you deviate from “Ubuntu”. You start having to add all sorts of third party packages, and the more that is needed, the more the value of aligning with a well tested baseline diminishes. Notably, Ubuntu declares an intent to make everything snaps, including the kernel and bootloader.
So it would seem more productive for someone railing against snap to avoid using Ubuntu and avoid bolstering the reputation of something they fundamentally disagree with.
This is why I often choose an Ubuntu derivative like Pop_OS. Most of the same underlying structure with none of the snaps.
Just use Debian or Linux Mint Debian Edition and call it a day.
Or just use one of the many Ubuntu derivatives that don’t force Snap?
I would rather run literally everything in docker than use snaps
“Hang on boss, I have to restart the ‘ls’ container! Just a jiff!”
I recently tried Ubuntu after many years, needed Docker and it told me to install it as a Snap, I thought, OK, whatever. I’m anything but a newbie, but for the life of me I couldn’t figure out where the volumes were actually kept. That was the primary reason to abandon this experiment.
Sounds crazy. Lol docker is definitely an insane way to run desktop apps, but it’s the insane way that I’m comfortable with 😹
To containerize desktop apps I prefer Apptainer/Singularity, that’s pretty portable, usersapce, and requires less tinkering to integrate with the system than Docker. I use it for Zoom and other closed source crap. AppImage is probably the more standard solution for that that’s very similar technologically, but I’m already familiar with Apptainer from work.
I’ve never used those! Gonna have to check them out
Idea: snap installer called crackle that just unpacks everything (relatively) normally. Should be primarily for pop os. Snap, crackle, and pop.
How many time does Canonical have to do sketchy shit before people catch on? Seriously.
I just started tinkering with Ubuntu a week ago. What’s wrong with snap?
Removed by mod
Canonical is doing the same thing Microsoft is doing with Edge - using its dominant position to push its other products and force out competition, and to lock users (and potentially developers) into its own ecosystem.
Removed by mod
Saying that Edge is Chromium is like saying that Manjaro is Arch or diamond is just coal. They’re related, but there’s significant material difference.
When it was introduced in Windows 10, Edge had an immediate and massive surge in its adoption rate. That wasn’t natural growth based on the application’s merits – it was simply a result of Edge being present in new installs.
and avoid needing to install all of their dependencies locally
Wait, but doesn’t it result in more copies of the dependencies being installed locally because they’re duplicated for each application?
Removed by mod
It’s actually less about the library being obscure, and more about version conflicts, which is actually more a problem with common libraries.
For example, let’s say you want to install applications A, B, and C, and they each depend on library L. If A depends on Lv1, and B depends on Lv2, and C depends on Lv3, with traditional package management, you’re in a predicament. You can only have one copy of L, and the versions of L may not be compatible.
Solutions like snap, flatpak, appimage, and even things like Docker and other containerization techniques, get around this issue by having applications ship the specific version of the library they need. You end up with more copies of the library, but every application has exactly the version it needs/the developer tested with.
Removed by mod
The age and obscurity of the library is irrelevant - you could always include libraries bundled with the app, if they didn’t exist in system repos. For example, in deb packages, you could include it in the data.tar portion of the package (see https://en.m.wikipedia.org/wiki/Deb_(file_format)).
Libraries with version names baked in are one solution to the dependency hell problem, but that requires support from the language/framework/tooling to build the application, and/or the OS (or things get hacky and messy quickly).
If you read that dependency hell page, you’ll see another solution is portable apps, which specifically mentions Appimage, Flatpak, and Snap.
Additionally, if you read the Debian docs on How to Cope with Conflicting Requirements, the first solution they give is to “Install such programs using corresponding sandboxed upstream binary packages,” such as “Flatpak, Snap, or AppImage packages.”
Bin the consumer environment? It is nice and good practice but it is nowhere near as important as it used to be.
This is incorrect. The target audience for Flatpak is desktop users: https://docs.flatpak.org/en/latest/introduction.html#target-audience. Flatpaks are explicitly for consumer, graphical applications.
I’ll give flatpak and snap one thing: they did make some concession to avoiding duplication, unlike docker which utterly duplicates everything.
With flatpak and snap, applications can depend on/pull in a maintained external layer. So you might want ‘gnome environment, version 43’ and other applications that want that can all share. That layer can be updated independently of dependencies. You might have two instances of the gnome layers (say 43 and 44) due to different applications declaring different versions, but it’s not too bad.
Now there is some duplication, some libraries that an app says “oh, no particular layer for this one, fine I’ll just bundle it”. But at least there’s a mechanism to not necessarily do that for everything.
I’ll add that the ‘pseudo-sandbox’ is of some dubious value, as far as I can tell the app declares how much or little sandboxing it wants and the user doesn’t really get the opportunity to consent or even know that a snap has full access versus limited access.
I’ll also say that some functionality is broken in snaps (and flatpak). For example I used KeepPassXC browser integration, and then when snap was used instead of native, it broke. A number of extensions broke and the development attitude was everyone pointing fingers everywhere else and ultimately saying “just find a ppa with a browser ok?”
I’ll second the “screw it, I give up on packaging, my app is now a monolithic flatpak, snap, appimage, or docker container” mindset of a lot of developers.
It’s a bad, slow and inefficient solution for a problem that is already solved. And because nobody would use their proprietary shit over flatpack, they force the users to use it. Even for things that exist natively in the repositories and would need neither snap nor flatpack.
Best explanation of snaps and their problems i’ve ever read.
It’s slow, forced by Canonical, and starts a pointless format war with Flatpack.
Flatpack isn’t without its own quirks and flaws. There is no One True Way. Being open-source, there shouldn’t be one.
It is definitely slow though, mostly on first run.
Being open-source
Yeah, that. That’s exactly the problem. To quote @Puzzle_Sluts_4Ever above, who put it much better than I could:
. . . the main issues boil down to concerns over some parts of the Snap ecosystem being closed source, Canonical’s ongoing efforts to try to get some of the Red Hat “premium linux” money, and arguments that other solutions (e.g. flatpaks and appimages) are “just as good, if not better”. And it doesn’t help that Canonical/Ubuntu is increasingly pushing snap as “the only solution” for some applications.
When you speak of no single One True Way and things being completely open source, Canonical/Ubuntu have already left the chat.
There should be one way for sandboxed shit, since the alternative of package managers already exists
We don’t need snap, app image, flatpak all to compete. We need shit that just works
There’s a bunch of different package managers too. It all just kinda works.
Removed by mod
Okay, we tried appimage and it didn’t work, so the second iteration as flatpak is mostly functional
you don’t need ENDLESS competition of formats
Gotta be honest, as a dev I tried to make a Flatpack of my app and gave up. Making a snap was much easier. Of course, I also offer it as a .deb, .rpm, Pacman package, etc. too
I still don’t even know what problem snap and flatpak were intended to solve. Just apt or dnf installing from the command line, or even using the distro provided store app, has always been sufficient for me.
Modern Linux distros tend to have configuration and dependency issues where certain packages if installed the “Linux Way” doesn’t completely work as desired at times depending on the distro or even a desktop spin (which might have different default libraries installed than the “main” one). Flatpak is a single configuration meant to work one single way across all distributions and has become more of a standard, usable way for Linux applications to just work.
Use Flatpak. Easy to install and easy to tweak from flatseal or similar GUI Flatpak permission tweakers if you want more flexibility at the possible cost of security.
The idea is that the application may want libraries asynchronously of the distribution cadence. Worse, multiple applications may have different cadence and you want to use both (some app breaks with gnome 45 and so it needs gnome 44, and another app requires gnome 46).
Or some pick forks of projects that neglected to change the shared object name or version, so you have two multimedia applications depending on the same exact library name and version, but expecting totally different symbols, or different ‘configure’ options to have been specified when they built the shared library.
So we have this nifty mount namespace to make believe the ‘filesystem’ is whatever a specific application needs, and for that to be scoped to just one.
There’s also an argument about security isolation, but I find that one to be unfulfilled as the applications basically are on the honor system with regards to how much access it requests of the system compared to a ‘normal’ application. So an application can opt into some protection so it can’t accidentally be abused, but if the application wants to deliberately misbehave it’s perfectly allowed to do so.
This computer idiot would also like to know why snap bad.
The main reason is that it is completely controlled by Canonical, with no way to add alternative repos.
It’s worth noting you can bypass the repo, and install snaps that you downloaded from some other source - see https://askubuntu.com/questions/1266894/how-can-i-install-a-snap-package-from-a-local-file.
That doesn’t give you a separate “repo,” but it does allow you to install snaps from anywhere.
You can, but that completely negates the reasons why you’d want to have a repo system in the first place. You gotta do the legwork to get updates, for example.
And to be explicit about it, zypper, dnf, apt, flatpak all have a specific mechanism to declare repositories and one ‘update’ check will walk them all.
snap does not, and manually doing a one off is useless. AppImage also has no ‘update’ concept, but it’s a more limited use case in general, it’s a worse habit than any repository based approach.
This isn’t necessarily true - a developer choosing to not include their app in a repo can always opt for a self-updating mechanism.
Don’t get me wrong - repos and tooling to manage all of your apps at once are preferred. But if a developer or user wants to avoid the Canonical controlled repo, I’m just pointing out there are technically ways to do that.
If you’d question why someone would use snap at all at that point… that would be a good question. The point is just that they can, if they want to.
For computer idiots it’s not bad at all. It mostly just works if you don’t mess with it and Canonical relies on it to ship software for Ubuntu. It’s one of those you should know what you’re doing situations if you’re using standard Ubuntu and messing with it. If you remove it, you will have to figure out what’s shipped via snap and how to supplant it if you want it working, among other potential headaches.
No, it does not just work. It removes the option to install updates manually through GUI. If Firefox was running, the only GUI solution is to close it and wait 6 hours or whatever.
My wife was perfectly fine installing updates from the tray with Synaptic. The PC is always connected to the TV with Jellyfin left open in Firefox where she was watching.
So I switched to Manjaro to have a pretty OS that isn’t getting rid of their package manager controlling the most used program.
Ever since the fix for the “Pending update” notification, updating Firefox has been as complicated as closing it and reopening it when you see the notification. The pending update is installed immediately after closing it. It just works for my wife. ☺️
Also I wouldn’t leave her dead without automatic updates.
I’m glad yours enjoying Manjaro. 👌
I didn’t know they fixed it now, good to know.
Yup. Actually I should have said implemented instead of fixed. The implementation was sizeable. I saw some of the PRs. From a user point of view it was a defect fix but in reality it was a non-trivial implementation. I guess that’s why it wasn’t there from the get go.
Those are all valid points, but there’s one more. As a person who is just coming back to Linux after 25-30 years and relearning it all from scratch, I just don’t want the hassle.
Sure, there’s overlap between distros, Linux is Linux, and any knowledge I might glean from Ubuntu would also largely apply to any other distro – but why should I bother with investing time into a product that is already heading toward future politics and regressive policies when I can just install [NotUbuntu] and swerve the entire mess?
There are hundreds of distros from which to choose these days, literally. Why start with one that’s already obviously moving toward the dark side? For all that I could just stay on Windows. I’m trying to get away from triple-E and paywalls and gatekeeping, not just find different ones.
Right now I’m testing out over a dozen distros on an old laptop in my spare time, and I think the only Ubuntu related one in my list is Pop!_OS, and it’s there only because Pop!_OS doesn’t rely on snap.
It’s one of those you should know what you’re doing situations
And I absolutely DO NOT, so that’s that, lol. These days every brain cell counts, so damned if I’ll waste any time wading into that mess.
I hate it for the refresh nag messages alone.
The default Firefox in Ubuntu is a snap and I only knew that because due to nagging and having to restart constantly while I was using it and had to learn about snaps and how to install Firefox without them on Ubuntu.
If something exists in native form, use that. If it doesn’t or you want some sandboxing (and there is at least some argument for a containerized version that brings all its needed dependencies, for developers not having to test for every linux for example) there’s flatpack or appimage. Snap is just Canonical’s proprietary alternative to flatpack. And also worse in basically any aspect. So they shove it down their users throat instead. Even for stuff that would be available natively and should just be installed via the normal package manager. And to make really sure, nobody is avoiding their crap, they also redirect commands, so for example using apt to install your browser automatically redirects your command to snap install…
If snap had another store, eg Fdroid to play store, all would be fine. So that’s that!
cuz flatpak better
I’m just sitting here having no problem with the few snaps I use
Am I wrong for ignoring snaps and just using apt-get still?
Some packages are snaps underneath though. Like firefox.
Not if you install Firefox from Flatpak. ᕕ( ᐛ )ᕗ
Just use Linux mint
that only works until you need Lua 5.4 which has conflicting dependencies aaand now im on NixOS
Couldn’t you just install it in a container? Distrobox makes it easy to get something like Fedora which has newer packages.
if i wanted containerized environments, i would pick alpine, but it all makes most trivial things so much more complicated — i just want global install dang nabbit, just keep all your sandboxing on process level controlled by the kernel, give me my userspace freedom
To each there own I guess.
Snaps aren’t bad, Canonical might be but then why use Ubuntu?
$ df -h one billion lines of snaps
This annoys me more than it should!
When I still used Ubuntu, I had an alias on all my systems/servers
alias dfh=‘df -h | grep -v snap’
This shouldn’t be necessary.
Could someone ELI5 whats wrong with snaps? I see hate for them all over the place but as an end user with little technical knowledge of linux packaging they seem fine? I can install them and use them, they don’t appear to have any anti-FOSS gotchas, so whats the big deal?
I think it’s another fine example of Canonical pushing its own products rather than supporting and enhancing existing standards (flatpak and appimage), which people are getting tired of. Also, as I understand it, the snap store itself is proprietary and is therefore controlled by Canonical.
The server isn’t open source, so Canonical has the sole ability to control snap distribution. It’s also yet another example of Canonical’s “Not Invented Here” syndrome, where they constantly reinvent things so they can control it instead of working with the rest of the open source community. They also trick you into using snaps; for example if you explicitly tell it to use apt to install Firefox, it’ll install it as a snap anyways.
Historically they performed really poorly as well, but my understanding is that they’ve largely fixed that issue.
there was a time when they were slow, but that’s mostly been resolved.
but it’s really just a cult thing now. people hate snaps because they think they’re supposed to hate snaps.
I hate snaps mainly because the server is proprietary. Everything else wrong is negotiable or solvanle, but that’s a nonstarter.