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

Linux

47946 readers
1920 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.

you are viewing a single comment's thread
view the rest of the comments
[–] [email protected] 14 points 1 month 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] 15 points 1 month 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 1 month 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.

[–] [email protected] 3 points 1 month 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 1 month 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.