Canonical shows how to use Snaps without the Snap Store
theregister.com
theregister.com
Stop reinventing the wheel please. And just play ball.
Personally I don't like using any containers except for very exotic or sensitive software anyway. I prefer having regular installs and having the shared loader be able to do its thing. I use FreeBSD which has its own really great container tech but I only really use it to isolate my browser.
Only on my laptop I used Ubuntu but the way they push snaps for everything really bothers me. So I moved to mint which removes them.
I wish vendors would just let me use my computer how I want.
Then, you can upgrade to new version in 5-10 minutes, and forget it again, except occasional reboots for new kernels.
I've been running a desktop/gaming Debian system with testing as a base, pulling some gaming-related packages from sid and a few (mostly Mesa and related packages) from experimental. I use apt Pinning for that.
This system has been running that way for months without a hitch.
I only reinstalled it once, because 32bit Kernel was unable to manage cache well with 16GB of RAM, and Debian had no way of migrating to 64bit cleanly. Other than that, I just moved the system between disks and systems over the years.
Just be cautious about sid and experimental. They sometimes go bang in spectacular ways.
It also seems like the firehose of upgrades that is Sid/Experimental has slowed down a bit. Even Sid is still on nodejs 18 and not 20 or 21. The same version as both Testing and Stable.
I feel at home at home with Debian Testing, not as bleeding edge as Arch for sure, but I think that is more of a blessing than a curse. The Debian maintainers seem to know what they are doing and the distribution has a sense or maturity that some others lack. I just hope an update won't break GRUB on me :)
Only downsides to running Debian Testing is that it doesn't get security updates with the same speed as Sid or Stable, and third parties don't exactly put together and distribute pre-built packages for Testing specifically. I understand why, but it makes me wonder if things will break due some ABI compatibility issue down the line. Maybe once Debian 13 is released I'll just stick to stable.
Debian 12 release is relatively new. Also we're in fall now. Package upgrade speed will take up in the next 12 months, reaching its top speed in 8 months if they keep up the usual schedule. I already can run two upgrades in a day, and get ~400 package updates in a couple of weeks. So testing is rolling pretty solidly now.
It's a bummer that security service for testing is discontinued now, but it's only natural. The project got too big, and the attacks are evolving faster than ever, so security people have so much time and staff to handle this.
I didn't experience any ABI compatibility problems with closed source or external software with Debian testing. I'm running Pagico, InSync, StarUML, etc. which are Deb packages and all of them are built against Debian stable or Ubuntu. They work without any problems. Well, Pagico needs libjpeg, but that's another thing unrelated to ABI.
Never use testing for servers, though.
* it took ages to start up cold
* my window theming was ignored
* my bookmarks and extensions were just.. gone
* this was marketed as a benefit to me
infuriated, i added the mozilla PPA, and told apt to get firefox from there. that was fine, nothing was deleted, and it all worked again.
imagine my next surprise, when i go to use it the next day, and the snap variant was back! running ‘apt dist-upgrade’ fixed it again, but this happens every day. something is silently re-installing firefox every night, and i have run out of energy to find it and stop it.
when i next have the time, i’m dropping this distro and switching to arch or even perhaps gentoo again.
but hey, at least with linux i have the choice :)
oh, and whilst i’m here, wayland is still - unfortunately - not desktop ready.
Imagine this, you install Firefox Snap, you install the Firefox Keypass extension, then you install the Keypass Snap, then you discover they don't work together because of the Snap containerization isolation. So you uninstall all that and start installing apt packages via the command line. And then screen sharing didn't work thanks to Wayland. Then I turned off Wayland but then I got screen tearing and lost touchpad gestures. Nice.
And Ubuntu is supposed to be THE Linux distro. The flasghip. The crown jewel. How are you supposed to be the Windows killer when basic stuff that works out of the box on Windows is horribly broken?
Yeah Snaps and Wayland sounded like a good idea in theory, but not when they break so much useful apps and functionality that we take for granted and need for work.
Does the Ubuntu dev team not dog-food their own product that they release such a broken mess? Or do they use it in a different way than us non Linux-dev plebs?
Or maybe the Canonical employees have remove-bs.sh script they keep up to date internally?
https://ubuntuhandbook.org/index.php/2022/04/remove-snap-blo...
Seconding this, Linux Mint with Cinnamon is really usable and a pleasant experience if you like DEB distros, I also use their XFCE variety on my netbook.
That said, Ubuntu LTS still seems like an okay choice for servers, much like Debian is (honestly, Debian on the desktop is also okay).
While there were a lot of Ubuntu changes over the years, that I managed to adapt to, this time I realised it was too much work on my side as a user:
- for snaps, since I have data spread across different mounts, I had to apply some bindfs cludge to address the hardcoded paths that snaps get access to.
- for Gnome I got tired of having to install all kinds of 3rd party extensions for basic UI features like right click actions.
Debian or derivative would have been my initial choice too, I went with OpenSuse because it's got a strong developer backing and very responsive update schedule, it's a rolling release which means that it has quite new packages but also if updates break it, you can quickly revert it with snapper. Some downsides to consider are that this is not a Debian derivate so, while most guides on the Internet can be 'ported' to OpenSuse it's a bit more involving. That said they also feature quite some good docs, so many common scenarios are covered.
PS I know you can get the same Gnome on OpenSuse, but the upside is that one has access to more recent alternative DEs, which can replace Gnome on rolling releases.
Sometimes it’s a .deb, sometimes AppImage, sometimes .tar.gz, sometimes native binary, sometimes apt-get, but then sometimes the version available via apt-get is outdated so you have to build the app yourself or add some new repositories. Then of course snaps. It’s a nightmare. I don’t want to deal with all of this, I just want to use software.
But of course every vendor wants their own IP to be the big winner so we end up in this situation: https://xkcd.com/927/
You did note that I included that specific XKCD link in the article itself, right?
If I want to install an app, it might be on the windows store. If it's not then you'll probably have to download it from the internet. If you're lucky it's a link on the developers website, if you're unlucky it's a download from a 3rd party site like softpedia, github or sourceforge, and you have to spend at least a little time making sure you're downloading the official package and not a scam.
If you want to offload this to a 3rd party you can use chocolately. Or scoop. Or winget.
There are lots of developer tools that only distribute via the software packager that they're built in, ie cargo, npm, or pip.
Or I want to download a game, well let's see, that game might be distributed on steam. Or the Epic Games Store. Or Origin.
I'm just trying to highlight that this issue is not specific to Linux or Windows (I've never used a mac so I don't know how that compares), app distribution is just a hard and still unsolved problem. Personally, between my distributions official repo, flatpak and steam, I'm pretty happy that 90% of software I need is only a few clicks away with minimal hassle.
When it comes to uninstalling things, you "drop it in the bin", but that just deletes the executable. You may have to manually clean up stray files and folders yourself.
Overall I find Linux is better in terms of software installation than Mac, but I like to call Mac "Corporately supported Unix". While I love Linux and use it often, I always have a Mac around as a backup in the event my Linux machine succumbs to entropy. A Mac may slow down for running UI systems, but anything in the CLI is rock solid, and will remain stable and usable for years.
I've never had a Windows install last in a usable state for long enough. I find they succumb to system entropy far faster than any other OS.
Which is why I wrote:
"Pity the poor Windows/Mac users."
Step 1: pick a distro (I use Fedora)
Step 2: install stuff using their package manager (I use dnf)
Step 3: be productive (HackerNews wastes way more of my time than Linux ever has)
Anyway, for me, Linux is great.
The snap versions are not outdated, because they don't have to deal with the whole shared dependencies thing like traditional Linux packages, they bundle everything and don't have to stay in sync with everything else.
It's not quite as perfect as Android, but stuff generally just works.
I used to have a collection of AppImages, now all that is in the snap store.
I haven't seen any custom package repos or .tar.gz installers(With the exception of Ardour and their downloadable installer, and Chrome's .deb installer) since switching.
I think one of my next tech project s is probably going to be learning to create Snaps myself
My Android phone is telling me on the notifications bar that I have updates for YouTube and Google Meet.
This morning told me that some app were put into deep sleep. I checked which one and it was F-Droid. I opened it and found two apps to upgrade in there.
Then I know that I have apps from the Samsung Store to upgrade but I somewhat silenced that store. I never installed anything from there nor I logged into it. I wish it goes away and that this Samsung phone is not the smallest and lightest Android still on the market.
Then there is K-9 which I install from an APK because they severely busted the UI after 5.6000.
So maybe Android is perfect but it could be more perfect.
My Debian 10 laptop is a mix of deb, docker images, downloaded installers, package managers for several languages, so more or less the same stuff as my phone except that it doesn't disable apps that it mistakenly detects as not used.
xkcd 927 how standards proliferate
I know because I wrote it.
« This is better than not having one – or, even worse, having more than one, as XKCD 927 beautifully illustrates. »
There are no true competing standards because none of them are built into Ubuntu, which is a major benefit. It you make a snap package you know any Ubuntu user can install it on very few clicks.
The only other things built into Ubuntu are apt and manual install, which have obvious issues and aren't direct competition.
I don't want to run things in classic mode or whatever just so they can access the data they need. Please, make snapd or whatever supervises these things pop a modal and ask for permissions like Mac does.
I'll follow you into the dark, Ubuntu, but not if the stuff is broken.
Same goes to flatpaks and any other "this is better, no seriously it is.. oh except that, yeah that doesn't work" package managers
At the very least if the app fails to start please show the dang error message! I have to manually run the binary on the CLI just to see why things aren't working sometimes. No info or error of any kind lol, they just don't start.
Ask them.
"AppArmor fails if home directories not in /home/" is a legit bug (as someone just claimed over on LWN). You haven't specified what your issue is but if it's something clear like that, it's perfectly reasonable.
Trying to blame a product you don't like from a company you apparently don't like for a problem in a 3rd party tool... that's a dick move, IMHO.
I truly have no problems with snap as an idea, at least I'm not as passionate as many snap dislikers. I just want the apps I open to open or error out tbh
The whole [nothing happens] is the infuriating part haha. Is it slow to load or has it given up.
Anyway aye fair point. Kneejerk reactions often lead to dick moves.
The only reference I can find is this:
https://forum.snapcraft.io/t/snapd-still-requires-out-of-tre...
I will see if I can find out any more.
* Snaps work but have a ton of rough edges. _The_ Snap Store cannot be owned by Canonical; there needs to be a cross-distro store that is the main source. (Distro specific ancillary stores would be fine.)
* Flatpaks work but have a ton of rough edges. Flathub is messy and has volunteer packaged flatpaks of commercial software - that needs to stop.
* In either case, we need to land on proper sandboxing with specific permissions granted. It shouldn't be an "unsandboxed" or "broken" decision; there needs to be fine grained access to whatever the app needs. I'd be 100% fine with burying the fine details in an "advanced" section, so the users who didn't care could "grant access". We need to learn from Vista and OSX and avoid making it annoying.
Mobile failed but they still want a “marketplace” and the only way to get that is with wrappers on wrappers; presentation, management, intake…
Are these the keys to the handcuffs?
Not at all surprised they were touchy about Launchpad, unless I took that wrong.
> Your correspondent personally likes the AppImage format, which needs no additional frameworks
This isn't true at all, once you step outside the Debian/Ubuntu world, you'll see the format break down as they're nearly all compiled against Debian/Ubuntu and ABI comparability with anything else (e.g. Fedora) is a dice roll and requires installing additional or older libraries.
Curl and OpenSSL are common libraries where the ABI is different between distros and is typically libraries where AppImage breaks down, unless the developer chooses to ship OpenSSL and Curl in their application which is a stupid idea, the Heartbleed bug would of been 10x worse if everyone shipped AppImages.
> Second, you can't build an OS from Flatpaks, so you need OStree as well
Why would you want to build an OS from Flatpaks? You don't see Apple build an OS from it's .app format.
> Btrfs is complicated, and fixing it more so. Git can be really complicated, as its name implies. (Yes, "git" is a word, not an acronym or codename, with an existing meaning.) OStree is Git for binaries, which makes it at least twice as complicated as ordinary Git – and Flatpak is a wrapper around OStree
These complications are completely invisible to the user and even OS developers don't need to know how they work to use or create additional stores for them. OSTree uses OCI container files, which everyone who works with Linux servers knows how to use. You don't need to know how Git works in order to use Git.
> You can also block the Snap API via a firewall, with something like:
Right, so Snap is open because I can block it via the firewall? Rather than just natively supporting multiple repos (or none) like every other Linux package manager that came before, including OSTree and Flatpak.
Then it goes on to label everyone who has these concerns as trolls, what a shit article.
The Dutch website Tweakers also had a series of articles on 'how to write your own snaps' recently. Though they normally rarely write about Linux.
I don't suspect commercial motives (Tweakers is way too straight-laced for that) but I do imagine some whispering or press kits are being sent that are being picked up. Canonical is certainly a lot more active with press outreach than redhat or suse, not to mention the non-commercial distros.
Of course the register has a more optionated approach which is exceptionally clear here. I stopped reading them regularly a few years ago but they still pop up here on HN every once in a while.
I suppose there's always Flatpak if snap goes away, but... like... could we please just pick something? Snaps work, and the snap store has almost everything I actually use.
The Snap store is Ubuntu proprietary, yes. But that doesn't matter.
You don't need to use it. You can build and sign your own snaps, distribute them yourself, use Snap without ever going near the store. Snaps can be downloaded from any source, over HTTP, HTTPS, FTP, NFS, CIFS, whatever you want: unlike Flatpaks, they are just ordinary files. No special protocol or mechanism needed.
The snap format is FOSS (and used by almost all Linux distros for install media), the tools to create it are FOSS, the tools to run it are FOSS, and there are no special tools needed or recommended or supplied to distribute snaps.
Which is what the article is about. I know because I wrote it.
For me personally, I don't actually have to deal with any distros except Pi OS an Ubuntu and can pretty much ignore them, so I might be a bit biased.
I can tell you that there was zero outreach of any kind whatsoever from Canonical for this. In fact getting info for publication out of Canonical is as hard as it is from SUSE or from Red Hat.
As an example, I asked for a demo of Landscape after the last Ubuntu Summit, a year ago. I am still waiting.
The reason I go to events like the Summit is to get info. Canonical paid for my flights and my hotel, yes, but Red Hat and the Linux Foundation also do that. But they did not invite me to it: I had to ask, as I had to ask last year as well.
(They did not pay for my travel last year, as I lived in Prague at that time. It was a 25min journey on the tram.)
I am sure from the outside world it looks like Linux companies pumping journos with info, but it really is not like that.
When I approached RH for distro differentiation info, the senior sales manager told me that the company only sold one single Linux.
After a few days of arguing, I pointed him at:
https://www.redhat.com/en/store/linux-platforms
Where there are 5 product price points. (I think last year there were 6 or 8.)
He then stopped replying to emails.
Trying to get info from these guys is like pulling teeth, and that is one reason proprietary vendors do so much better and get more press coverage.