Skip to content

Instantly share code, notes, and snippets.

@jph00
Last active February 3, 2024 04:55
Show Gist options
  • Star 30 You must be signed in to star a gist
  • Fork 7 You must be signed in to fork a gist
  • Save jph00/3707260aeba1a9c03e469f5ecf524b34 to your computer and use it in GitHub Desktop.
Save jph00/3707260aeba1a9c03e469f5ecf524b34 to your computer and use it in GitHub Desktop.
#!/usr/bin/env bash
###
# NB: You probably don't want this gist any more.
# Instead, use this version from `fastsetup`:
# https://github.com/fastai/fastsetup/blob/master/setup-conda.sh
###
set -e
cd
case "$OSTYPE" in
darwin*) DOWNLOAD=https://repo.anaconda.com/miniconda/Miniconda3-latest-MacOSX-x86_64.sh; RC_FILE=.bash_profile ;;
linux*) DOWNLOAD=https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh; RC_FILE=.bashrc ;;
*) echo "unknown: $OSTYPE" ;;
esac
case "$SHELL" in
/bin/zsh*) SHELL_NAME=zsh; RC_FILE=.zshrc ;;
/bin/bash*) SHELL_NAME=bash ;;
/usr/local/bin/fish*) SHELL_NAME=fish ;;
*) echo "unknown: $SHELL" ;;
esac
cat << EOF > .condarc
channels:
- fastai
- pytorch
- defaults
channel_priority: strict
EOF
wget $DOWNLOAD
bash Miniconda3-latest*.sh -b
~/miniconda3/bin/conda init $SHELL_NAME
rm Miniconda3-latest*.sh
perl -n -e 'print if />>> conda/../<<< conda/' $RCFILE > .condainit
perl -ni -e 'print unless />>> conda/../<<< conda/' $RCFILE
echo source ~/.condainit >> $RCFILE
source ~/.condainit
@johnp-4dvanalytics
Copy link

Thanks for sharing Jeremy! I had an error "setup_conda.sh: line 34: source: .condainit: file not found." My OS is Centos 7. I was able to fix the issue by switching the command to "source ~/.condainit"

@EtienneT
Copy link

EtienneT commented Sep 1, 2020

Just a quick note for anyone using Ubuntu in WSL2, don't delete your ~/anaconda3 folder if you want to start fresh. Everything is broken now :(.

@jtbr
Copy link

jtbr commented Jan 24, 2021

It seems like a great idea for managing environments. But the script seems not to be working anymore. After the miniconda install (seemingly after running the condainit script it creates), it stops, saying:
==> For changes to take effect, close and re-open your current shell. <==
Also, if I then try to run conda install -y mamba it appears not to find it in the provided channels (the current documentation recommends conda-forge?)

@CalvHobbes
Copy link

Leaving this here just in case: I finally added the channel manually: conda config --append channels conda-forge, after which I was able to run
conda install -y mamba

@jph00
Copy link
Author

jph00 commented Feb 3, 2024

mamba is no longer needed -- I've now updated the gist to reflect that. I've also added a link to a somewhat more official version that's in fastsetup.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment