this post was submitted on 05 Aug 2023
45 points (92.5% liked)

Linux

45824 readers
2179 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
 

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
[–] [email protected] 6 points 11 months ago (1 children)

I use Gentoo where builds from source are supported by the package manager. ;)

Overall though, any containerisation option such as Docker / Podman or Singularity is what I would typically do to put things in boxes.

For semi-persistent envs a chroot is fine, and I have a nice Gentoo-specific chroot script that makes my life easier when reproing bugs or testing software.

[–] j4k3 1 points 11 months ago (1 children)

Wait. Does emerge support building packages natively when they are not from Gentoo?

Most of the stuff I'm messing with is mixed repos with entire projects that include binaries for the LLMs, weights, and such. Most of the "build" is just setting up the python environment with the right dependency versions for each tool. The main issues are the tools and libraries like transformers, pytorch, and anything that interacts with CUDA. These get placed all over the file system for each build.

[–] [email protected] 3 points 11 months ago

Ebuilds (Gentoo packages) are trivial to create for almost anything, so while the answer is 'no the package manager doesn't manage non PM packages', typically you'll make an ebuild (or two or three) to handle that because it's (typically) as easy as running make yourself. :)