44
submitted 1 year ago by j4k3@lemmy.world to c/linux@lemmy.ml

I'm doing a bunch of AI stuff that needs compiling to try various unrelated apps. I'm making a mess of config files and extras. I've been using distrobox and conda. How could I do this better? Chroot? Different user logins for extra home directories? Groups? Most of the packages need access to CUDA and localhost. I would like to keep them out of my main home directory.

you are viewing a single comment's thread
view the rest of the comments

No worries, UEFI is definitely a "milage may vary" kinda standard.

I've personally only used NixOS and not Nix on a different distro by itself so I'm less familiar with that setup. No system is perfect for all use cases, but that's sorta the point in Unix-land. I personally have been gripped by NixOS and having to go back to Fedora for some of my old servers has been a pain. They use it like a buzzword all the time, but declarative administration is so awesome. It does have a heck of a learning curve though.

[-] j4k3@lemmy.world 1 points 1 year ago

Is the Nix learning curve like Arch's f.u. user-go cry to rsync/CS Masters expectations, or like Gentoo's tl;dr approach of "our packagers know how to create sane defaults and include key info you need for sound decisions" approach. I never want to deal with another distro that randomly dumps me into an enormous subject to read because they made a change in a dependency that requires me to manually intervene in a system update, or any OS that makes basic FOSS tools like gimp and FreeCAD tedious.

In my experience its mostly sane defaults and a mixed bag in terms of documentation. For anyone else reading this, https://search.nixos.org/options using this to search for all the built in options is usually a good enough starting point for installing something.

Nix does dependencies very differently, since every program and everything it needs are put into their own checksummed directory, then linked into your PATH as requested in your config. So far I've never needed to do anything other than nixos-rebuild --upgrade switch and only needed to reboot for kernel updates.

I mostly work in container spaces, so building things from source, or out-of-repo pkgs, while rare, are done in containers with podman. For example, running Automatic1111's stable diffusion works perfectly for me in a container with an AMD GPU no less. Eventually I'd like to get into flakes, but their still marked experimental so I haven't looked too much into it.

Overall the learning experience is figuring out the overall structure of the system, then taking advantage of all the super powerful tooling and consistency those tools offer.

this post was submitted on 05 Aug 2023
44 points (92.3% liked)

Linux

48214 readers
720 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