this post was submitted on 12 Nov 2023
150 points (96.3% liked)

Linux

48017 readers
874 users here now

From Wikipedia, the free encyclopedia

Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).

Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.

Rules

Related Communities

Community icon by Alpár-Etele Méder, licensed under CC BY 3.0

founded 5 years ago
MODERATORS
top 50 comments
sorted by: hot top controversial new old
[–] [email protected] 53 points 1 year ago (5 children)

I know this thread is likely to quickly descend into 50 variants of "ew, snap", but it's a good write up of what is really a pretty interesting novel approach to the immutable desktop world.

As the article says, it could well be the thing that actually justifies Canonical's dogged perseverance with snaps in the first place.

[–] [email protected] 20 points 11 months ago (2 children)

I appreciate that they try, and as much as I dislike some of snap's design choices I think it has a place. Flatpak appears to be the winner in this race however, and I feel like this is Unity all over. Just as the project gets good they abandon it for the prevailing winds. I've been told the snap server isn't open source, which is a big concern?

[–] [email protected] 11 points 11 months ago* (last edited 11 months ago)

[This comment has been deleted by an automated system]

[–] [email protected] 10 points 11 months ago (1 children)

Unlike desktop environments where there were equivalent alternatives to Unity, Flatpak isn't an alternative to Snap that can deliver an equivalent solution. You can't build an OS on top of Flatpak. This is why I think that if Snap makes the lives of Canonical developers easier, they'll keep maintaining it. We'll know if Ubuntu Core Desktop becomes a mainstream flavor or the default one. I think there is a commercial value of it in the enterprise world where tight control of the OS and upgrade robustness are needed. In this kind of a future Snap will have a long and productive life. If it ends up being used only for desktop apps which Flatpak covers, it may fall by the wayside as you suggested.

[–] [email protected] 4 points 11 months ago

Absolutely, and I think that's why snap has a future at all. Immutability is the future, as well as self-contained apps. We saw the explosive growth of Docker as indication that this was the way. If they can make their tooling as easy as a Dockerfile they will win just by reducing the work needed to support it.

[–] [email protected] 7 points 1 year ago

I'm pretty excited about it. It's a much cleaner solution to the problem immutable OSes are trying to solve. Dare I say it's better even than the Android model because it covers the whole stack with a single system.

[–] [email protected] 4 points 11 months ago

I don't like Canonical pushing snaps as universal apps for all distros, because of issues like sandboxing not working on mainline kernels.

But it's pretty interesting to see how a fully snap based desktop OS could look like. It might have less limitations than rpm-ostree. Easy access to recent mesa and similar would be awesome.

[–] [email protected] 2 points 1 year ago (1 children)

I actually don't understand the issue people have with Snaps. The main gripe seems to be "It's controlled by Canonical".
But why is it an issue that Canonical controls a source of software for their own OS? Isn't that the same with every distro's repository?

[–] [email protected] 67 points 1 year ago (2 children)

But why is it an issue that Canonical controls a source of software for their own OS? Isn’t that the same with every distro’s repository?

No. You can add any other repository to apt, rpm, Flatpak, etc. You cannot do the same with Snap and that's by design. Canonical wants to be the sole gatekeeper of Linux software, hoping that all developers have no alternative but to publish software on the Snap store (ideally only there) which works best on Ubuntu.

Therefore: Fuck Snap.

[–] [email protected] 23 points 1 year ago (1 children)

Exactly. I feel they want to sell it to a big player, but no big player will touch it unless they can fully control it. Hence snap as part of that plan. Ubuntu is a hell no for me.

[–] [email protected] 12 points 1 year ago (2 children)

Forget selling it.
I think they're going to get everyone trapped in the ecosystem, and then they'll start charging for access to the source.

[–] [email protected] 4 points 1 year ago

@caseyweederman @makingStuffForFun the prediction imperative will come in before that. surveillance capitalism is how they will make their fortune

[–] [email protected] 2 points 11 months ago (1 children)

How would they trap everyone in the ecosystem?
This isn't Apple, there's a gajillon other ways of getting software you can use on every single linux distro.

[–] [email protected] 9 points 11 months ago (1 children)

That's exactly what they're trying to change.

[–] [email protected] 3 points 11 months ago (2 children)

Then I guess it's a good thing they don't control all other Linux distros.

[–] [email protected] 4 points 11 months ago

Yes, thank god for that.

[–] [email protected] 1 points 11 months ago (1 children)

Then I guess it’s a good thing they don’t control all other Linux distros.

But they would to a degree if the Snap Store would actually succeed becoming the Linux app store (like Steam is for games but that's more because all other vendors don't care to make a Linux client).

[–] [email protected] 1 points 11 months ago (1 children)

Open source software would still be available packaged by the distros and as Flatpak, even if the software's author offered it exclusively as Snap.

[–] [email protected] -3 points 11 months ago* (last edited 11 months ago) (2 children)

You cannot do the same with Snap and that’s by design. Canonical wants to be the sole gatekeeper of Linux software

Then why did they publish source code and documentation for all parts of it, so you can create your own snap store?

[–] [email protected] 9 points 11 months ago (1 children)

Smoke and mirrors. You cannot add a secondary Snap repository.

[–] [email protected] 4 points 11 months ago* (last edited 11 months ago) (1 children)

You can; the issue is that you can't add two snap repositories at once.

This is functionally pretty much the same thing, as nobody is likely to want to use snap while locking themselves out of the main snap repository, but it's still important to make the distinction.

In theory I guess there's nothing stopping you setting up a mirror of the main snap repo with automatic package scraping, but nobody's really bothered exploring it seeing as no distro other than Ubuntu has taken any interest in running snap.

[–] [email protected] 1 points 11 months ago (1 children)

I know that it's possible to change the one entry but adding additional ones is not possible and that's by design.

[–] [email protected] 1 points 11 months ago (1 children)

Is that an artificial limitation that could be resolved by third-party clients?

[–] [email protected] 1 points 11 months ago (2 children)

It's all open source so there's no reason you couldn't fork it and add that functionality. Although it'd probably be a fairly involved piece of work; it wouldn't be a simple one-line change.

[–] [email protected] 1 points 11 months ago

Who knows? Maybe it's just "#define STORES_LIMIT 1"?

[–] [email protected] 0 points 11 months ago (1 children)

It's not all open source. Canonical merely made available a super simple reference implementation of the Snap server but the actual Snap Store is proprietary.

[–] [email protected] 1 points 11 months ago* (last edited 11 months ago)

I was referring to snapd, which is the thing that actually has the hard limit on a single repository. That's fully open source (and there's one major fork of it out in the wild, in the form of Ubuntu Touch's click). The tooling for creating snap packages is also all open source.

The APIs which snapd uses to interact with its repo are also open source. While there's no turnkey Snap Store code for cloning the existing website, it's pretty trivial to slap those APIs on a bog standard file server if you just want to host a repo.

Not open-sourcing the website code is a dick move, but there's nothing about the current set up that would act as an obstacle for anyone wanting to fork snap if that's what they wanted to do. It's just with flatpak existing, there's not a lot of point in doing so right now.

[–] [email protected] 5 points 11 months ago (1 children)

From reading this that's not the whole story. Someone working at canonical successfully made a version of snap that could use alternative stores, but the default version does not allow it

And honestly at the point of installing that modified version you may as well just install a different package manager anyway

[–] [email protected] 5 points 11 months ago (1 children)

Or better yet, a different OS.

[–] [email protected] 1 points 11 months ago

Might I suggest NixOS best package manager out there imo

load more comments (1 replies)
[–] [email protected] 28 points 1 year ago

This new entrant in the immutable space is not a replacement for ordinary Ubuntu

Not yet the replacement. It will be and I bet Canonical is targeting 26.04 LTS to do that. This is just the next step of trying to force all their users into Snap, just like when Flatpak was banned from being in by default of community-supported but official Ubuntu variants such as Xubuntu.

[–] [email protected] 23 points 11 months ago (1 children)

I'm very excited about how the Linux community generally seems to be moving towards various approaches to immutable systems - all of them having in common that system updates are going to be a lot less likely to break. The future is looking good!

[–] [email protected] 11 points 11 months ago (2 children)

As long as we don't end up with Linux systems designed like Android.

[–] [email protected] 4 points 11 months ago

If anyone would lock their OS down like that, it would be Canonical.

[–] [email protected] 2 points 11 months ago (4 children)

“like android/ios” is the ultimate goal of these systems lol

[–] [email protected] 3 points 11 months ago

"like Android/ios"

is pretty vague. Do you mean locked down, with features like SafetyNet which locks people in to Google Services? Or do you mean locked down in the sense that installing packages doesn't just directly change the files in / ?

Systems like rpm-ostree still allow modifications to the OS, it just requires other steps. OpenSUSE MicroOS even allows for arbitrary modifications to the root fs through transactional-update (it even allows for dropping in to a transactional-update shell, so it's not necessary to prefix each command with transactional-update).

Especially OpenSUSE MicroOS feels more like OpenSUSE Tumbleweed, compared to Fedora rpm-ostree's limitations compared to Fedora dnf.

[–] [email protected] 3 points 11 months ago

Using Fedora Silverblue has gone a long way to dispel that concern for me. It goes out of its way to be much more user-centric than that. I can't speak for the others yet.

[–] [email protected] 2 points 11 months ago

Yes except it’s all open source and if you’re unhappy you can fork. Good luck forking iOS.

[–] [email protected] 2 points 11 months ago

Having distro maintainers decide a rigid partition structure for you would be a really bad approach, so I really hope not.

[–] [email protected] 18 points 1 year ago (3 children)

As much as I have issues with the snap implementation, I really want to live in a world where my base os is solid and everything else is easily updatable. LTS, with the latest apps.

Snap and flatpak achieve this, and I want more of that. Just less... frustrating. And less not-invented-here like.

[–] [email protected] 31 points 1 year ago (1 children)

And less not-invented-here like.

The only party playing that game is Canonical. Everybody else already agreed on Flatpak.

[–] [email protected] 11 points 1 year ago* (last edited 1 year ago) (1 children)

Flatpak cannot do what's discussed in the article. Snap can and it was started prior to Flatpak. If Flatpak was able to do what Snap can, you'd have half a point.

[–] [email protected] 3 points 11 months ago

Flatpak cannot do what’s discussed in the article.

Nobody claimed 100% feature overlap. For regular GUI applications both work relatively similar, to the point that Snap now happily uses technologies developed for Flatpak, such as Portals.

it was started prior to Flatpak.

That's irrelevant. One could just as well argue that Flatpak evolved from developments (OSTree, etc.) that are even older but that beside the point. Fact is that OSTree and Flatpak are vendor neutral and Snap isn't. Attempts at vendor lock-in caused Valve leave Ubuntu and later choose Flatpak on SteamOS.

[–] [email protected] 13 points 1 year ago* (last edited 1 year ago) (1 children)

Snap has the ability to do the base system in a much more modular way and could be really cool for an immutable system. Forcing them on desktop users with their transitional deb packages and making it heavily integrated with only one repository really screwed it up.

[–] [email protected] 2 points 11 months ago (1 children)

Also I'm not sure about slow startup times. Are those still an issue? If so, then I would be sure to considet Ubuntu dead and not only not recommend it but actively recommend switching away from it.

[–] [email protected] 1 points 11 months ago (1 children)

Yes, they are still an issue. It is irritating enough that I have currently zero snaps and would rather build from source if snap is the only binary option.

[–] [email protected] 1 points 11 months ago

That's basically THE dealbreaker for snaps. Loop devices on lsblk? Most people don't care and wouldn't see it. Proprietary backend? Again, most regular people (Ubuntu's target audience) do not care. So the slow startup time is THE dealbreaker.

[–] [email protected] 3 points 11 months ago

Fedora Silverblue sounds like it fits what you're looking for.

[–] [email protected] 8 points 1 year ago

This is the best summary I could come up with:


Ordinary desktop and server Ubuntu aren't going anywhere, and the next release, numbered 24.04 and codenamed Noble Numbat as we mentioned last month, will be the default and come with all the usual editions and flavors.

Nor is this a whole new product: it is a graphical desktop edition of the existing Ubuntu Core distro, as we examined on its release in June last year, a couple of months after 22.04.

Ubuntu Core is Canonical's Internet of Things (IoT) distro, intended to be embedded on edge devices, such as digital signs and smart displays.

Most of the major Linux vendors have immutable offerings, and The Reg has looked at several over the years, including MicroOS, the basis of SUSE's next-gen enterprise OS ALP.

Former Canonical staffer Alan Pope demonstrated a Steam Deck running Ubuntu Core at the event, and his lengthy blog post about the experience contains some interesting details about how well the developer preview already works.

Compression of Flatpak apps is a key reason that Fedora now uses Btrfs, although it's worth noting that, as of yet, Snap doesn't include any form of deduplication between separate packages.


The original article contains 1,052 words, the summary contains 189 words. Saved 82%. I'm a bot and I'm open source!

load more comments
view more: next ›