Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
20 changes: 19 additions & 1 deletion setup.sh
Original file line number Diff line number Diff line change
Expand Up @@ -191,8 +191,11 @@ add_pkg() {
}

if [[ $OS_NAME == "Linux" ]]; then
# Core build dependencies required for native Python extensions (pybind11, etc.)
for pkg in build-essential python3-dev curl; do
APT_PACKAGES=$(add_pkg "$pkg" "$APT_PACKAGES")
done
if $IS_RASPI; then
APT_PACKAGES=$(add_pkg curl "$APT_PACKAGES")
if $want_vision; then
for pkg in libgl1-mesa-glx libgl1-mesa-dri mesa-utils libcap-dev python3-libcamera python3-kms++; do
APT_PACKAGES=$(add_pkg "$pkg" "$APT_PACKAGES")
Expand All @@ -208,13 +211,22 @@ if [[ $OS_NAME == "Linux" ]]; then
done
fi
fi
# Node.js for web UI
if $want_web_ui; then
for pkg in nodejs npm; do
APT_PACKAGES=$(add_pkg "$pkg" "$APT_PACKAGES")
done
fi
elif [[ $OS_NAME == "Darwin" ]]; then
if $want_vision; then
BREW_PACKAGES=$(add_pkg libomp "$BREW_PACKAGES")
fi
if $want_ui; then
BREW_PACKAGES=$(add_pkg qt "$BREW_PACKAGES")
fi
if $want_web_ui; then
BREW_PACKAGES=$(add_pkg node "$BREW_PACKAGES")
fi
else
warn "No automated system dependency installation for $OS_NAME."
fi
Expand Down Expand Up @@ -281,6 +293,12 @@ fi
# --- Python dependencies ----------------------------------------------------
headline "Installing Python packages"

# Increase timeout for slow network connections (e.g. Raspberry Pi)
export UV_HTTP_TIMEOUT=300

# Install pip in venv so fallback mechanism works
uv pip install pip

# Try isolated build first; if packaging/metadata error occurs, fall back
set +e
uv pip install -e ".[${EXTRA_SPEC}]"
Expand Down
Loading