this post was submitted on 12 Nov 2023
153 points (96.4% liked)

Linux

48394 readers
835 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
you are viewing a single comment's thread
view the rest of the comments
[–] [email protected] 54 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 1 year 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 1 year ago* (last edited 1 year ago)

[This comment has been deleted by an automated system]

[–] [email protected] 10 points 1 year 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 1 year 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 1 year 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)

Snap makes a lot of sense for desktop apps in my opinion. There's a conceptual difference between system level packages that you install using something like APT, and applications. Applications should be managed at the user layer while the base system should provide all the common libraries and APIs.

It's also worth noting that this is a similar approach to what MacOS has been doing for ages with .app bundles where any shared libraries and assets are packaged together in the app folder. The approach addresses a lot of the issues you see with shared libraries such as having two different apps that want different versions of a particular library.

The trade off is that you end up using a bit more disk space and memory, but it's so negligible that the benefits of having apps being self-contained far outweigh these downsides.

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

The problem here is that for that purpose, Flatpak is better in nearly every way and is far more universal

I think Snap makes the most sense for something like Ubuntu Core, where it has the unique benefit of being able to provide lower level system components (as opposed to Flatpak which is more or less just for desktop GUI apps), but it doesn't make sense for much else over other existing solutions

[–] [email protected] -3 points 1 year ago

I don't disagree, but as you point out in the context of Ubuntu Core the decision makes sense and snap does the job.