Deep-Live-Cam/setup_mac.sh

82 lines
2.4 KiB
Bash

#!/usr/bin/env bash
# Exit immediately if a command exits with a non-zero status.
set -e
echo "Starting macOS setup..."
# 1. Check for Python 3
echo "Checking for Python 3..."
if ! command -v python3 &> /dev/null
then
echo "Python 3 could not be found. Please install Python 3."
echo "You can often install it using Homebrew: brew install python"
exit 1
fi
# 2. Check Python version (>= 3.9)
echo "Checking Python 3 version..."
python3 -c 'import sys; exit(0) if sys.version_info >= (3,9) else exit(1)'
if [ $? -ne 0 ]; then
echo "Python 3.9 or higher is required."
echo "Your version is: $(python3 --version)"
echo "Please upgrade your Python version. Consider using pyenv or Homebrew to manage Python versions."
exit 1
fi
echo "Python 3.9+ found: $(python3 --version)"
# 3. Check for ffmpeg
echo "Checking for ffmpeg..."
if ! command -v ffmpeg &> /dev/null
then
echo "WARNING: ffmpeg could not be found. This program requires ffmpeg for video processing."
echo "You can install it using Homebrew: brew install ffmpeg"
echo "Continuing with setup, but video processing might fail later."
else
echo "ffmpeg found: $(ffmpeg -version | head -n 1)"
fi
# 4. Define virtual environment directory
VENV_DIR=".venv"
# 5. Create virtual environment
if [ -d "$VENV_DIR" ]; then
echo "Virtual environment '$VENV_DIR' already exists. Skipping creation."
else
echo "Creating virtual environment in '$VENV_DIR'..."
python3 -m venv "$VENV_DIR"
fi
# 6. Activate virtual environment (for this script's session)
echo "Activating virtual environment..."
source "$VENV_DIR/bin/activate"
# 7. Upgrade pip
echo "Upgrading pip..."
pip install --upgrade pip
# 8. Install requirements
echo "Installing requirements from requirements.txt..."
if [ -f "requirements.txt" ]; then
pip install -r requirements.txt
else
echo "ERROR: requirements.txt not found. Cannot install dependencies."
# Deactivate on error if desired, or leave active for user to debug
# deactivate
exit 1
fi
echo ""
echo "Setup complete!"
echo ""
echo "To activate the virtual environment in your terminal, run:"
echo " source $VENV_DIR/bin/activate"
echo ""
echo "After activating, you can run the application using:"
echo " python3 run.py [arguments]"
echo "Or use one of the run_mac_*.sh scripts (e.g., ./run_mac_cpu.sh)."
echo ""
# Deactivate at the end of the script's execution (optional, as script session ends)
# deactivate