2017-11-03 23:22:38 +00:00
|
|
|
#!/usr/bin/env bash
|
|
|
|
|
2017-11-09 03:37:29 +00:00
|
|
|
found_exe() {
|
|
|
|
hash "$1" 2>/dev/null
|
|
|
|
}
|
|
|
|
|
2017-11-07 02:59:30 +00:00
|
|
|
apt_is_locked() {
|
|
|
|
fuser /var/lib/dpkg/lock >/dev/null 2>&1
|
|
|
|
}
|
|
|
|
|
|
|
|
wait_for_apt() {
|
|
|
|
if apt_is_locked; then
|
|
|
|
echo "Waiting to obtain dpkg lock file..."
|
|
|
|
while apt_is_locked; do echo .; sleep 0.5; done
|
|
|
|
fi
|
|
|
|
}
|
|
|
|
|
2017-11-03 23:22:38 +00:00
|
|
|
set -e
|
|
|
|
|
2017-11-09 03:37:29 +00:00
|
|
|
if found_exe apt-get; then
|
|
|
|
wait_for_apt
|
2018-02-15 21:15:15 +00:00
|
|
|
sudo apt-get install -y python3-pip libopenblas-dev python3-scipy cython libhdf5-dev python3-h5py portaudio19-dev
|
2017-11-09 03:37:29 +00:00
|
|
|
fi
|
2017-11-03 23:22:38 +00:00
|
|
|
|
2018-02-09 00:43:03 +00:00
|
|
|
python=.venv/bin/python
|
|
|
|
pip=.venv/bin/pip
|
|
|
|
|
|
|
|
if [ ! -f "$pip" ]; then
|
2018-02-15 09:13:59 +00:00
|
|
|
python3 -m venv .venv/ --without-pip
|
2018-02-09 00:43:03 +00:00
|
|
|
curl https://bootstrap.pypa.io/get-pip.py | .venv/bin/python
|
|
|
|
fi
|
|
|
|
|
2017-11-03 23:22:38 +00:00
|
|
|
arch="$(python3 -c 'import platform; print(platform.machine())')"
|
|
|
|
|
2018-02-09 00:43:03 +00:00
|
|
|
if ! $python -c 'import tensorflow' 2>/dev/null && [ "$arch" = "armv7l" ]; then
|
2017-11-07 03:03:10 +00:00
|
|
|
wget https://github.com/samjabrahams/tensorflow-on-raspberry-pi/releases/download/v1.1.0/tensorflow-1.1.0-cp34-cp34m-linux_armv7l.whl
|
2018-02-09 00:43:03 +00:00
|
|
|
$pip install tensorflow-1.1.0-cp34-cp34m-linux_armv7l.whl
|
|
|
|
$pip uninstall mock || true
|
|
|
|
$pip install mock
|
|
|
|
rm tensorflow-1.1.0-cp34-cp34m-linux_armv7l.whl
|
2017-11-03 23:22:38 +00:00
|
|
|
fi
|
|
|
|
|
2018-02-09 00:43:03 +00:00
|
|
|
$pip install -e .
|
2017-11-03 23:22:38 +00:00
|
|
|
|