Earlier quoted context omitted.
we have Debian, which i'm going to use and replace all ubuntu stuff on the server side. on the desktop side, I really just need a browser and a vim editor for 99% of what I do, Debian should be perfectly fine too.
And honestly, for desktops, Debian testing is plenty stable IME and stays quite up to date. It's what I've run on my laptop for years with absolutely no issues.
Ubuntu 23.10’s New Software App Will Demote Debs (Apparently)
41–50 of 112 posts
Re: Ubuntu 23.10’s New Software App Will Demote Debs (Apparently)
#42I have zero horse in this race other than every time I've tried snap firefox it has been unpleasant (slower, weird memory, weird hangs that sometimes OOM), so I install it in some silly manual way in theory I like that snaps have a permission model w/ default confinement, in practice I keep getting asked to install in 'classic' mode
Re: Ubuntu 23.10’s New Software App Will Demote Debs (Apparently)
#43Earlier quoted context omitted.
The linux desktop is in the middle of moving to a zero trust model: https://www.ypsidanger.com/the-distribution-model-is-changin...
You say that like the "Linux desktop" is a monolith. What leads you to believe this is a widespread movement outside of RHEL and Canonical?
Re: Ubuntu 23.10’s New Software App Will Demote Debs (Apparently)
#44In my mind, Ubuntu Desktop, and desktop linux in general, has always been a hobbyist project masquerading as a real production-ready environment. There's no money in building a desktop distro, so nobody really cares what happens there. The real power of Ubuntu has really always been as a server distro. I used to run desktop Ubuntu when I was younger and had more spare time to tinker with this nonsense, but nowadays I…
For server, Debian is the simpler and more stable solution.
Re: Ubuntu 23.10’s New Software App Will Demote Debs (Apparently)
#45Earlier quoted context omitted.
Oh, I have quite a few of them, from increased resource usage, proprietary aspects, through forced updating and more. The forced updating is particularly unacceptable. But, the 10,000 ft view is that they reduce the amount of control I have over my system. They offer restrictions I chafe at while giving me no benefit that I care about. I'm not going to sit here and say they shouldn't exist. That they're not to my tas…
It's a quite powerful idea to run every package in its own container (sandbox). However, it depends on the implementation and Snap just sucks. (Note that the default Unix assumption is that no users can be trusted but all applications can be trusted, which is wrong imho. Containers provide a way out of this, but things get messy very fast.).
Re: Ubuntu 23.10’s New Software App Will Demote Debs (Apparently)
#46Earlier quoted context omitted.
This model destroys any reason for software to be open source. What's the point of having source code if you just run the binary provided by some party? Reminds me of the early days of the tensorflow where everyone used whatever binary package worked an no one could run anyone else's code because people kept getting stale binaries somewhere in the stack.
The packaging format doesn't change source code availability or restrictions.
Re: Ubuntu 23.10’s New Software App Will Demote Debs (Apparently)
#47Earlier quoted context omitted.
Or come to Ubuntu without the nonsense: Linux Mint.
or popOS
Re: Ubuntu 23.10’s New Software App Will Demote Debs (Apparently)
#48So why does Ubuntu push Snaps so hard? They've been doing this for year and I still have no idea, since pretty much everyone I know would rather a deb file (myself included). What's their gain?
The main problem that Snaps solve is this latter case: when third parties are trying to ship directly into someone's distribution installation[1].
Often third party debs appear to work OK, but then break future distribution upgrades. By then users have forgotten about the third party software that has hacked itself into their system, and blame the distribution for their upgrade failure. The problem is that distribution debs are designed to provide metadata about what has changed so that the package manager can accommodate. But it's not possible for distribution debs to be aware of the third party debs to handle those changes. So things break.
The breakages caused by debs aren't just limited to future distribution upgrades. A bad third party deb package can break your entire system. We routinely get reports where it turns out that this is what happened to our users!
There's also the problem of dependencies. If a third party app needs a bunch of dependencies, then they can't realistically bump those dependencies on the system as a whole without regressing all the other apps that need older versions of that dependency. So they have to bundle their dependencies, and this is something else that regular deb tooling doesn't handle well. You can theoretically construct a deb that bundles all its dependencies, but then that's exactly what snaps and snap tooling handles better - that's half the point. Nix only partially solves the problem by better supporting concurrent installation of multiple versions of those dependencies. But those concurrent versions would still each have to be maintained; that's something that distributions try to avoid by picking one version of each dependency and making the entire distribution release work with just that one. Moving that maintenance responsibility to each third party app developer, and having the packages bundle their dependencies, is the other solution. This was already happening with deb packages like for Firefox. Firefox upstream bundles nearly everything, and the debs (eg. in Debian) do the same for most of their dependencies. Snaps just call a spade a spade and are designed around it.
You also wouldn't really expect a third party app to have access to everything on your system. Say for example you download and install some game app to try out. Do you really want it to have access to your online banking browser session? The game developer might not secure their development infrastructure as if someone's trying to steal their users' money, because that's expensive and they're only shipping a game. But if you install their game, then that's what you risk. That game developer's infrastructure is suddenly an attack vector for an adversary that wants to get to your online banking session. On iOS and Android, each app only has system-mediated access to everything outside its sandbox. Debs fundamentally cannot provide this separation, so if you install third party debs then you're giving all those third parties access to everything, which really is unacceptable in modern security practice. Snaps give you that sandboxing.
So that's what snaps are for: 1) bundling dependencies, because that's necessary in world of third party software that ships independently of the distribution; and 2) sandboxing, because that's necessary in a world of third party software if you don't want to give all those third parties and their adversaries root on your system.
If you don't want third party apps, and only want what your distribution ships in a curated manner, then you don't really need snaps. But consider that Firefox is essentially a third party, non-curated app, regardless of your distribution or how it was packaged! See [1] below.
Snaps are also immutable, which really helps with stability and upgrade and revert cases. This is more relevant for snap-only systems like in IoT, not the Ubuntu desktop. In an IoT deployment you can't tell the user to run "apt-get -f install" to fix up the system because power got interrupted during an upgrade - because that's how debs work.
In years gone by, Ubuntu tried really hard to make third party debs work. But it didn't work for various reasons. In the meantime, it became the norm for third parties to ship debs together with all of their problems, since there was nothing better possible at the time. This is what snaps solve.
Disclosure: I work for Canonical. But here I am speaking for myself, not my employer. I'm not involved in the design of snaps, but as a distribution developer, it's clear to me what problems they solve.
[1] Packages like Firefox also use snaps because even as a deb it's really not the case that Firefox is curated by the distribution and mostly unchanged after release any more. So it suffers from mostly all the same problems that third party debs do.
Re: Ubuntu 23.10’s New Software App Will Demote Debs (Apparently)
#49Earlier quoted context omitted.
Damn, that was a depressing read. If that's how things are going, then it really is past time for me to stop using Linux entirely. This is feeling like the final straw in a series of things that have been pushing me away.
What are your concerns?
For open source software, snap is the same software, but slower, more broken and with worse upgrades.
Snap's changed the firefox update process so I now have to run 'sudo snap refresh' and wait for a download, where before I just closed and reopened it. Maybe it'll make my running application's dock icon disappear, hope you always use alt+tab instead of the dock. Snap can install ffmpeg - but I can't feed a screen recording to vaapi for compression because whoever set up the sandboxing forgot to allow that. Good luck sharing anything from, say, ~/.config/ on, say, discord - you get a silent unexplained failure, because hidden folder access is blocked by the sandbox. Installing a browser? With snap you get three copies; you can adjust refresh.retain down to only keep 2 copies - but 1 copy is out of the question.
There's a reason canonical has to force snap down people's throats, and it's because nobody uses it by choice.
Re: Ubuntu 23.10’s New Software App Will Demote Debs (Apparently)
#50Earlier quoted context omitted.
What are your concerns?
Oh, I have quite a few of them, from increased resource usage, proprietary aspects, through forced updating and more. The forced updating is particularly unacceptable. But, the 10,000 ft view is that they reduce the amount of control I have over my system. They offer restrictions I chafe at while giving me no benefit that I care about. I'm not going to sit here and say they shouldn't exist. That they're not to my tas…
Snaps allow you to hold updates indefinitely now: no forced updates any more. Use "snap refresh --hold ". See https://snapcraft.io/docs/keeping-snaps-up-to-date#heading--....