Files
opendbc-meb/setup.sh
Shane Smiskol eb6752f1d6 tests don't remove extra packages
every time you run an opendbc test it removes any extra packages you might have installed
2026-01-12 17:08:03 -08:00

46 lines
1.4 KiB
Bash
Executable File

#!/bin/bash
set -e
BASEDIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" >/dev/null && pwd)"
# TODO: why doesn't uv do this?
export PYTHONPATH=$BASEDIR
# *** dependencies install ***
if [ "$(uname -s)" = "Linux" ]; then
if ! command -v "mull-runner-17" > /dev/null 2>&1; then
curl -1sLf 'https://dl.cloudsmith.io/public/mull-project/mull-stable/setup.deb.sh' | sudo -E bash
sudo apt-get update && sudo apt-get install -y clang-17 mull-17
fi
elif [ "$(uname -s)" = "Darwin" ]; then
if ! brew list llvm@17 &>/dev/null; then
brew install llvm@17
fi
if [ ! -f "$BASEDIR/.mull/bin/mull-runner-17" ]; then
MULL_VERSION="0.26.1"
MULL_ZIP="Mull-17-${MULL_VERSION}-LLVM-17.0-macOS-arm64-14.7.4.zip"
MULL_DIR="Mull-17-${MULL_VERSION}-LLVM-17.0-macOS-arm64-14.7.4"
curl -LO "https://github.com/mull-project/mull/releases/download/${MULL_VERSION}/${MULL_ZIP}"
unzip -o "$MULL_ZIP"
mv "$MULL_DIR" "$BASEDIR/.mull"
rm "$MULL_ZIP"
fi
export PATH="$BASEDIR/.mull/bin:$PATH"
fi
if ! command -v uv &>/dev/null; then
echo "'uv' is not installed. Installing 'uv'..."
curl -LsSf https://astral.sh/uv/install.sh | sh
# must source this after install on some platforms
if [ -f $HOME/.local/bin/env ]; then
source $HOME/.local/bin/env
fi
fi
export UV_PROJECT_ENVIRONMENT="$BASEDIR/.venv"
uv sync --all-extras --inexact
source "$PYTHONPATH/.venv/bin/activate"
$BASEDIR/opendbc/safety/tests/misra/install.sh