this post was submitted on 01 Oct 2024
55 points (100.0% liked)

Linux

48757 readers
1293 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
 

So I've been really interested in immutable OS's since Silverblue, kept jumping off and on again as I hit what I thought were brick walls. I was just not approaching them properly.

I've been using Bluefin for work for the last 6 months and started making distrobox containers for projects. One thing I always ended up with was a load of mess with pip or NPM, so the idea I can just jump into a container for that specific project was really appealing.

But it never occurred to me, I can do this for everything, I know this is something that has been done before, but I've just stumbled on it. I made a distrobox container using boxbuddy that used the arch-bazzite-gnome image, called it arch-gaming. This has given me a containerised gaming setup that runs like arch native. I can just chuck all my gaming stuff through that and box buddy auto exports the icons into the app menu, so the GUI side of things is sorted. As it's bazzite the nvidia drivers and steam are all ready to go I installed lutris that was it.

The added bonus of bluefin is that I don't need rpm-ostree for anything, languages are handled by brew, apps with flatpak, and now the aur for anything niche or apps I want to use in a more traditional setting.

I now have a portable, reproducible system that should be pretty robust.

top 10 comments
sorted by: hot top controversial new old
[–] [email protected] 14 points 2 months ago (3 children)

I love the idea of distrobox/toolbx!

but ive never understood why they by default share the home directory. They still overwrite each others config filesand leave a huge mess in the home dir. And last time i tried it wasn't possible to really isolate things. Has thisimprovesd?

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

The entire purpose is to conveniently access your files, so if that's a problem use containers normally or pass a -h during distrobox create if you want to isolate home directories.

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

I genuinely didn't know about this. I've been avoiding immutable OSes as I've had issues with distros like Bazzite in the past where packages completely disappeared from my system after a freeze when overclocking my GPU,which ruined the whole experience for me.

However, I'm interested in blend os,which unfortunately comes with gnome by default,but I will give it another try with layering plasma on it next time I try it,cause the idea of a distrobox centric distro is really appealing.

End rant.

Thanks for sharing this.

[–] j4k3 3 points 2 months ago

You've got to do some manual config. I know about it but don't use it. You can redirect home folders with the container in the distrobox create flags. I think the better option is to use the user/groups/SELinux context in addition to the container as this will show up in ownership and is more easy to trace. One of my main problems is how packages have Python installation requirements that by default try to break pip out of any containerized context and create their own venv setup. It totally screws up the whole distrobox container setup and separation from the base system.

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

Yeah - this is very strange to me since it seems like that's the bigger issue. Everything outside of $HOME is managed by a package manager of sorts. But all the stuff in $HOME is where the mess happens. distrobox does let you set an alternative home dir which is good. It seems like they should at least specify a separate XDG_CONFIG_HOME by default - then I could use my login scripts but application configs (for well-behaved applications at least) would be separated.

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

This is the way.

I love and use Bazzite 🎮 myself ✅

I tried to shill Steam Deck / Bazzite on a gaming PlayStation 5 post about Disc Drive being DLC, and it didn't go well :(

I even informed them PS5 is just Open BSD with training wheels/handicaps.

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

If you're having trouble with pip and npm can I suggest ASDF?

https://asdf-vm.com/

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

Hey thanks, that looks really interesting.

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

If you like the idea of asdf, I would recommend looking at mise. It does all the same things (and more) and is much more performant in my experience.

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

This might solve some of my gripes with ASDF. Thanks for sharing!