Files
sunnypilot/tools/ubuntu_setup.sh
Michael Honan df26e99856 Setup script improvements to MacOS / Ubuntu (#2012)
* Setup script improvements to MacOS / Ubuntu

scons isn't actually required from brew install

pyenv init on all envs

added installation to .zshrc on macos with better dir logic

Using git to detect project root for ubuntu bashrc install

Check shell and determine correct RC file

Update tools/mac_setup.sh

Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>

Sourcing RC file only if it's found

Removed unnecessary source of rc file

Submodules should never have been bumped...

Output the $RC_FILE when successfully installed

pyenv init every time, and skip RC install on CI

Confused bash conditionals, opposite of what I meant

* Was missing libusb on a fresh MacOS 10.15.6 install

Co-authored-by: Michael Honan <michaelhonan@Michaels-MacBook-Pro.local>
old-commit-hash: 4a9228fcc7
2020-08-14 18:03:55 -07:00

95 lines
2.2 KiB
Bash
Executable File

#!/bin/bash -e
sudo apt-get update && sudo apt-get install -y \
autoconf \
build-essential \
bzip2 \
capnproto \
libcapnp-dev \
clang \
cmake \
curl \
ffmpeg \
git \
libavformat-dev libavcodec-dev libavdevice-dev libavutil-dev libswscale-dev libavresample-dev libavfilter-dev \
libarchive-dev \
libbz2-dev \
libcurl4-openssl-dev \
libeigen3-dev \
libffi-dev \
libglew-dev \
libgles2-mesa-dev \
libglfw3-dev \
libglib2.0-0 \
liblzma-dev \
libmysqlclient-dev \
libomp-dev \
libopencv-dev \
libpng16-16 \
libssl-dev \
libstdc++-arm-none-eabi-newlib \
libsqlite3-dev \
libtool \
libusb-1.0-0-dev \
libzmq3-dev \
libczmq-dev \
libsdl-image1.2-dev libsdl-mixer1.2-dev libsdl-ttf2.0-dev libsmpeg-dev \
libsdl1.2-dev libportmidi-dev libswscale-dev libavformat-dev libavcodec-dev libfreetype6-dev \
locales \
ocl-icd-libopencl1 \
ocl-icd-opencl-dev \
opencl-headers \
python-dev \
python-pip \
screen \
sudo \
vim \
wget \
gcc-arm-none-eabi
# install git lfs
if ! command -v "git-lfs" > /dev/null 2>&1; then
curl -s https://packagecloud.io/install/repositories/github/git-lfs/script.deb.sh | sudo bash
sudo apt-get install git-lfs
fi
# install pyenv
if ! command -v "pyenv" > /dev/null 2>&1; then
curl -L https://github.com/pyenv/pyenv-installer/raw/master/bin/pyenv-installer | bash
fi
# install bashrc
source ~/.bashrc
if [ -z "$OPENPILOT_ENV" ]; then
OP_DIR=$(git rev-parse --show-toplevel)
echo "source $OP_DIR/tools/openpilot_env.sh" >> ~/.bashrc
source ~/.bashrc
echo "added openpilot_env to bashrc"
fi
# in the openpilot repo
cd $HOME/openpilot
# do the rest of the git checkout
git lfs pull
git submodule init
git submodule update
# install python 3.8.2 globally (you should move to python3 anyway)
pyenv install -s 3.8.2
pyenv global 3.8.2
pyenv rehash
# **** in python env ****
# install pipenv
pip install pipenv==2018.11.26
# pipenv setup (in openpilot dir)
pipenv install --dev --system --deploy
# for loggerd to work on ubuntu
# TODO: PC should log somewhere else
#sudo mkdir -p /data/media/0/realdata
#sudo chown $USER /data/media/0/realdata