File size: 2,201 Bytes
0354298
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
#!/bin/bash

# Script to automate running OWL locally on a Mac

# Check if Python 3 is installed and check version compatibility
echo "Checking Python version..."
PYTHON_VERSION=$(python3 --version 2>&1)
if [[ "$PYTHON_VERSION" =~ "Python 3" ]]; then
    echo "Python found: $PYTHON_VERSION"
    # Extract version numbers
    VERSION_NUM=$(echo $PYTHON_VERSION | cut -d' ' -f2)
    MAJOR=$(echo $VERSION_NUM | cut -d. -f1)
    MINOR=$(echo $VERSION_NUM | cut -d. -f2)
    
    if [ "$MAJOR" -eq 3 ] && [ "$MINOR" -ge 10 ] && [ "$MINOR" -lt 13 ]; then
        echo "Python version is compatible!"
    else
        echo "Error: OWL requires Python version >=3.10 and <3.13"
        echo "Your version ($VERSION_NUM) is not compatible."
        echo ""
        echo "Please install Python 3.10 using one of these methods:"
        echo "1. Download from python.org/downloads/"
        echo "2. Using Homebrew:"
        echo "   a. Install Homebrew first (if not installed):"
        echo "      /bin/bash -c \"\$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)\""
        echo "   b. Then install Python 3.10:"
        echo "      brew install [email protected]"
        echo ""
        echo "After installing, run this script again using the correct Python version:"
        echo "python3.10 setup.sh"
        exit 1
    fi
else
    echo "Python 3 not found! Please install it from python.org/downloads/ and rerun this script."
    exit 1
fi

# Create and activate virtual environment
echo "Setting up Python virtual environment..."
python3 -m venv venv
source venv/bin/activate || { echo "Failed to activate virtual environment!"; exit 1; }

# Install dependencies
echo "Installing dependencies from requirements.txt..."
if [ -f "requirements.txt" ]; then
    pip3 install -r requirements.txt || { echo "Failed to install dependencies!"; exit 1; }
else
    echo "No requirements.txt found! Cannot continue."
    exit 1
fi

# Run OWL
echo "Attempting to run OWL..."
if [ -f "owl/webapp.py" ]; then
    python3 owl/webapp.py
else
    echo "Could not find owl/webapp.py! Please check the repository structure."
    exit 1
fi

echo "If you see errors, copy them and ask for help!"