| #!/bin/bash |
|
|
| set -e |
|
|
| SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" &>/dev/null && pwd)" |
|
|
| cd "$SCRIPT_DIR" || exit 1 |
|
|
| cd .. || exit 1 |
|
|
| if [ -d "$HOME/miniconda3" ]; then |
| exit 0 |
| fi |
|
|
| WORKFLOW=${WORKFLOW:-"false"} |
| TARGETPLATFORM=${TARGETPLATFORM:-"linux/amd64"} |
|
|
| if [ "$WORKFLOW" = "true" ]; then |
| WGET_CMD=(wget -nv --tries=25 --wait=5 --read-timeout=40 --retry-on-http-error=404) |
| else |
| WGET_CMD=(wget --tries=25 --wait=5 --read-timeout=40 --retry-on-http-error=404) |
| fi |
|
|
| if [ "$TARGETPLATFORM" = "linux/amd64" ]; then |
| "${WGET_CMD[@]}" -O miniconda.sh https://repo.anaconda.com/miniconda/Miniconda3-py311_25.3.1-1-Linux-x86_64.sh |
| elif [ "$TARGETPLATFORM" = "linux/arm64" ]; then |
| "${WGET_CMD[@]}" -O miniconda.sh https://repo.anaconda.com/miniconda/Miniconda3-py311_25.3.1-1-Linux-aarch64.sh |
| else |
| exit 1 |
| fi |
|
|
| LOG_PATH="/tmp/miniconda-install.log" |
|
|
| bash miniconda.sh -b -p "$HOME/miniconda3" >"$LOG_PATH" 2>&1 |
|
|
| if [ $? -eq 0 ]; then |
| echo "== Miniconda Installed ==" |
| else |
| echo "Failed to Install miniconda" |
| tail -n 50 "$LOG_PATH" |
| exit 1 |
| fi |
|
|
| rm miniconda.sh |
|
|
| source "$HOME/miniconda3/etc/profile.d/conda.sh" |
|
|
| "$HOME/miniconda3/bin/conda" config --add channels conda-forge |
|
|
| "$HOME/miniconda3/bin/conda" update -q --all -y 1>/dev/null |
|
|
| "$HOME/miniconda3/bin/conda" install python=3.11 -q -y |
|
|
| "$HOME/miniconda3/bin/conda" install gcc=14 gxx ffmpeg cmake make unzip -q -y |
|
|
| if [ "$CUDA_VERSION" = "12.8" ]; then |
| "$HOME/miniconda3/bin/pip" install torch torchaudio --no-cache-dir --index-url https://download.pytorch.org/whl/cu128 |
| elif [ "$CUDA_VERSION" = "12.6" ]; then |
| "$HOME/miniconda3/bin/pip" install torch==2.6 torchaudio --no-cache-dir --index-url https://download.pytorch.org/whl/cu126 |
| fi |
|
|
| "$HOME/miniconda3/bin/pip" cache purge |
|
|
| rm $LOG_PATH |
|
|
| rm -rf "$HOME/miniconda3/pkgs" |
|
|
| mkdir -p "$HOME/miniconda3/pkgs" |
|
|
| rm -rf "$HOME/.conda" "$HOME/.cache" |
|
|