summaryrefslogtreecommitdiff
path: root/build.sh
blob: 6b811ddb4dd93bafaf3b0a7b79d74d08b5835bbb (plain)
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
#!/bin/sh

# 1. Remove unwanted stuff
rm -rf build
rm -rf env
rm -rf dist
rm -rf server/.venv

# 2. Create a new virtual environment and activate it
python3 -m venv env
. env/bin/activate

# 3. Install the required packages
pip install -r server/requirements.txt
pip install pyinstaller

# 4. Detect M1 architecture or allow manual override
if [ "$1" = "m1" ]; then
    echo "Building for M1 architecture"
    SPEC_FILE="run.m1.spec"
elif [ "$1" = "regular" ]; then
    echo "Building for regular architecture"
    SPEC_FILE="run.spec"
else
    ARCH=$(uname -m)
    if [ "$ARCH" = "arm64" ]; then
        echo "$ARCH architecture detected, using M1 spec file"
        SPEC_FILE="run.m1.spec"
    else
        echo "$ARCH architecture detected, using regular spec file"
        SPEC_FILE="run.spec"
    fi
fi

echo "Using $SPEC_FILE"

# 5. Call PyInstaller from within the virtual environment
env/bin/pyinstaller $SPEC_FILE

# 6. Deactivate the virtual environment
deactivate