Users need to be able to install custom persistent packages #146
Labels
default-env
enhancement
New feature or request
good first issue
Good for newcomers
jupyterhub
medium priority
I don't think there is an open issue about this and I know we have these instructions https://github.com/LibreTexts/default-env#creating-your-own-custom-conda-environment, but I have not been able to get custom installations to work very well and definitely haven't gotten them to be persistent. So I'm not sure we have a workable solution. Here are some things that need to work:
conda install package
should work for the root environment for non-persistent installs.pip install package
should generally work in the root environment too, it should use the root installed conda packages as a dependency base and drop this into the site-packages directory of the root conda install.pip install --user package
should work. This should let users install packages into their home directories that also use the root conda installed packages as a dependency base.conda create -n my-env package
should work and we should be able to open a notebook or console into that environment. A launcher icon should appear for this environment and if I click "new notebook" or "new console" the dropdown of optional kernels should show my custom environments.Ideally these environments should be hardlinking to any already installed packages in the root environment so that this doesn't eat up too much diskspace in the user's home directory.These will be softlinked, since the user's home directory will be on a different filesystem. It should still save disk space, though. -- rkevinIt would be nice if the user could install packages via apt, but I can see how that just may not be allowed because they could break the system in the docker file.Apt will definitely require root access, which we cannot give users. Most apt packages should be available from conda, and the user will have to build other packages from source themselves. --rkevinThe text was updated successfully, but these errors were encountered: