Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

gentoo support #602

Open
yarikoptic opened this issue Mar 28, 2024 · 2 comments
Open

gentoo support #602

yarikoptic opened this issue Mar 28, 2024 · 2 comments
Assignees

Comments

@yarikoptic
Copy link
Member

@TheChymera is gentoo wizard. They have binary builds of AFNI , FSL and other stuff available through emerge.

Also within the scope of "reproducible container builds", for which we developed nd_freeze, Gentoo "natively" supports a way to fix (specify) the state of package listing to a specific commit. We have used that in the https://github.com/con/opfvta-reexecution/blob/master/code/images/Containerfile#L11 to ensure similar consistency.

Moreover, gentoo could be installed on another Linux base system within a gentoo-prefix, so could be added to augment some other environment similarly to conda if another base has to be used for some reason.

@TheChymera
Copy link
Contributor

TheChymera commented Mar 29, 2024

They have binary builds of AFNI, FSL, etc

We don't really have “binary builds”, if that means binaries which we distribute for packages built by Gentoo.
Gentoo is source-based by default and additional binary builds are only provided for packages which are known to take ages to build (e.g. firefox, chromium, etc.)
What we do have are source-based build recipes which you can run locally, and which are being run locally and work.

You can see everything we have in the science overlay with:

git clone git@github.com:gentoo/sci.git
cd sci
find -name "*package-you-want*"

(we have a ton of neuroscience stuff, also datalad, dandi, NWB-land, spike-sorting, etc.)

Alternatively, there's also this search engine which will query not only the science overlay (as above), but also the base overlay (the collection of packages everybody has access to, by default), and also all other overlays including personal user ones → https://gpo.zugaina.org/

Gentoo prefix

More on that here.
In practice, the installation is very simple, it's just:

wget https://gitweb.gentoo.org/repo/proj/prefix.git/plain/scripts/bootstrap-prefix.sh
chmod +x bootstrap-prefix.sh 
./bootstrap-prefix.sh 

The problems with that are:

  1. It takes a long time, since it builds most of the system from scratch
  2. The applications can only really reliably be used inside the prefix environment.... So using it in a container is a sort of virtualization-in-virtualization type of thing...

I wonder if it wouldn't be easier to just offer native Gentoo installs, based on the docker images which Gentoo publishes here: https://hub.docker.com/r/gentoo/stage3

@yarikoptic
Copy link
Member Author

yes, you can start with just native installs. prefix installation was just a possibly interesting idea to mix and match.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants