| # This gets the directory the script is run from so pathing can work relative to the script where needed. | |
| SCRIPT_DIR="$(cd -- "$(dirname -- "$0")" && pwd)" | |
| # Install tk and python3.10-venv | |
| echo "Installing tk and python3.10-venv..." | |
| apt update -y && apt install -y python3-tk python3.10-venv | |
| # Install required libcudnn release 8.7.0.84-1 | |
| echo "Installing required libcudnn release 8.7.0.84-1..." | |
| apt install -y libcudnn8=8.7.0.84-1+cuda11.8 libcudnn8-dev=8.7.0.84-1+cuda11.8 --allow-change-held-packages | |
| # Check if the venv folder doesn't exist | |
| if [ ! -d "$SCRIPT_DIR/venv" ]; then | |
| echo "Creating venv..." | |
| python3 -m venv "$SCRIPT_DIR/venv" | |
| fi | |
| # Activate the virtual environment | |
| echo "Activating venv..." | |
| source "$SCRIPT_DIR/venv/bin/activate" || exit 1 | |
| # Run setup_linux.py script with platform requirements | |
| echo "Running setup_linux.py..." | |
| python "$SCRIPT_DIR/setup/setup_linux.py" --platform-requirements-file=requirements_runpod.txt --show_stdout --no_run_accelerate | |
| pip3 cache purge | |
| # Configure accelerate | |
| echo "Configuring accelerate..." | |
| mkdir -p "/root/.cache/huggingface/accelerate" | |
| cp "$SCRIPT_DIR/config_files/accelerate/runpod.yaml" "/root/.cache/huggingface/accelerate/default_config.yaml" | |
| echo "Installation completed... You can start the gui with ./gui.sh --share --headless" | |
| # Deactivate the virtual environment | |
| echo "Deactivating venv..." | |
| deactivate |