this post was submitted on 17 Feb 2024
101 points (93.2% liked)

Linux

48365 readers
1102 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
 

What are the pros and cons for desktops ? EDIT : Thanks all. I'll try Silverblue, bazzite and more.

you are viewing a single comment's thread
view the rest of the comments
[–] [email protected] 9 points 9 months ago* (last edited 9 months ago) (1 children)

You should be installing software with stuff like flatpak, toolbox or distrobox. If you treat the immutable image as a mutable one there really isn't an improvement except for less of a chance of instability of updating/changing software that's running in memory already.

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

Git? Vim? Fdupes? A dozen other cli applications I install?

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

Are you saying you can't use toolbox or distrobox for that?

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

So the solution to my problem is to create a container for a non-immutable distro?

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

Yes, though keep in mind containers aren't like VMs so the hardware isn't virtualized or anything. The root system and everything in it is still immutable as well. In usage, it doesn't matter for the container but it isn't changing the root since what is writable to the container is outside of the root.

Using containers this way is the way Silverblue was intended to be used for by the user and pretty much any other immutable distro of note.

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

Yeah - I'm quite familiar with containers. I just don't see the value they're adding here. Maybe for experimental things or "project-specific" stuff. but otherwise don't you just end up maintaining a container same as you would your "host OS" in a non-immutable distro?

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

Your immutable OS stays stable. For example, running a sudo pacman -Syu with a bunch of stuff from AUR in your Arch container for example will not bring down your OS or otherwise make it unstable. The immutable image you first install has been tested and it is the same image as the testers -- same with the upgrades and updates, so long as you don't overlap the image with rpm-ostree in this case.

Immutability keeps your OS stable and if something does happen to go wrong, you just roll it back.

If that isn't something you need/want then that's not something you need/want.

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

It's definitely not - I've just been trying to understand the problem it solves for others though and see if it is something I would be interested in.

From what I can tell I can get all of the advantages in a "mutable" distro (flatpak, distrobox, etc.) without the overly-complex "immutable host" stuff.

I honestly don't get the fear of "some random update ruins your OS". Perhaps because I'm not an Arch user.

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

I am an Arch user and I still don't get it either. When Arch borks something it's rarely catastrophic. At worst it's throw in the live USB, mount your drive and fiddle. And if you are going in as an Arch user, fiddling is something you sign up for.

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

Yeah those don't go on your host they go in containers.

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

So I use non-immutable distros in containers to make up for the failings of the immutable host OS?

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

You use containers for your tooling, you purposely don't touch the host operating system, that's the entire point.

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

I can do that in Ubuntu... I'll admit I simply don't see the point. Immutable distro users seem paranoid about "some random update messing up their base OS" for some reason and I guess this suits their purpose. I just don't see that as a problem.

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

Most people aren't system administrators and they end up with broken computers for the most basic tasks. It's one of the major reasons why people hate using Linux desktops.

And even if you're an experienced sysadmin you can't account for the entropy that accumulates on traditional OSes. 18.04 -> 20.04 -> 22.04 doesn't end up being the same as a 22.04 clean install. This is a huge problem, especially for people who don't know how to manage linux systems. And the people who do manage systems at scale don't want that behavior either.

I go over this in this video: https://www.youtube.com/watch?v=hn5xNLH-5eA

But day to day I'm in an ubuntu container and using "normal" package management, I just don't do it on the host.

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

But day to day I'm in an ubuntu container and using "normal" package management, I just don't do it on the host.

If you kept a basic minimal Ubuntu host it would be trivial to maintain. And you can still do your "toolbox" stuff on top of it. No weird immutable stuff needed.

I just don't see the point. You want new users to understand containers. And to keep track of all the containers they maintain - possibly with different distros and using different things. And remember the difference between them and what is installed in each. Or just maintain one big container which is exactly what they would do normally anyway.

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

If you kept a basic minimal Ubuntu host it would be trivial to maintain.

That's not true for most people.

I just don’t see the point. You want new users to understand containers.

You don't need to understand containers unless you're using the system for development -- which in Linux land means containers.

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

That’s not true for most people.

If you want it to be then it can. The risk of a failed update is vastly overblown.

You don’t need to understand containers unless you’re using the system for development – which in Linux land means containers.

Oh but you do. 1 hour into using Silverblue I was chastised by other users for "using it like any other Linux distro" when I started installing things into the "base" system with rpm-ostree. "Don't you know you should be doing that in a container?" I was asked.

I was just installing command-line utilities. Which I'm apparently supposed to do in a toolbox or other container which allows me to have... a mutable distro where I can do all the things I do in a "normal" OS. And which will require updating separately from the host OS. And which don't quite work right for everything because they're containers? Like you can't install httpd in one.