You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
32 lines
834 B
32 lines
834 B
2 days ago
|
#!/usr/bin/env bash
|
||
|
set -e
|
||
|
|
||
|
DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" >/dev/null && pwd)"
|
||
|
cd $DIR
|
||
|
|
||
|
PLATFORM=$(uname -s)
|
||
|
|
||
|
echo "installing dependencies"
|
||
|
if [[ $PLATFORM == "Darwin" ]]; then
|
||
|
brew install --cask gcc-arm-embedded
|
||
|
brew install python3 gcc@13
|
||
|
elif [[ $PLATFORM == "Linux" ]]; then
|
||
|
sudo apt-get install -y --no-install-recommends \
|
||
|
curl \
|
||
|
make g++ git libnewlib-arm-none-eabi \
|
||
|
libusb-1.0-0 \
|
||
|
gcc-arm-none-eabi python3-pip python3-venv python3-dev
|
||
|
else
|
||
|
echo "WARNING: unsupported platform. skipping apt/brew install."
|
||
|
fi
|
||
|
|
||
|
if ! command -v uv &>/dev/null; then
|
||
|
echo "'uv' is not installed. Installing 'uv'..."
|
||
|
curl -LsSf https://astral.sh/uv/install.sh | sh
|
||
|
source $HOME/.local/bin/env || true
|
||
|
fi
|
||
|
|
||
|
export UV_PROJECT_ENVIRONMENT="$DIR/.venv"
|
||
|
uv sync --all-extras
|
||
|
source "$DIR/.venv/bin/activate"
|