mirror of https://bitbucket.org/ausocean/av.git
50 lines
1.2 KiB
Bash
50 lines
1.2 KiB
Bash
|
#!/bin/sh -e
|
||
|
# This script launches looper on a pi, intended to run at boot time.
|
||
|
|
||
|
LOOPER_PATH=/home/pi/go/src/bitbucket.org/ausocean/av/cmd/looper
|
||
|
|
||
|
echo Set kernel parameters:
|
||
|
# kernel settings to improve performance on Raspberry Pi
|
||
|
# tell Linux to fork optimistically
|
||
|
sudo sysctl -w vm.overcommit_memory=1
|
||
|
# minimize swapping, without disabling it completely
|
||
|
sudo sysctl -w vm.swappiness=1
|
||
|
|
||
|
# the following required directories _should_ already exist
|
||
|
if [ ! -d /var/log/netsender ]; then
|
||
|
sudo mkdir /var/log/netsender
|
||
|
chmod guo+rwx /var/log/netsender
|
||
|
fi
|
||
|
if [ ! -d /var/netsender ]; then
|
||
|
sudo mkdir /var/netsender
|
||
|
chmod guo+rwx /var/netsender
|
||
|
fi
|
||
|
|
||
|
# show IP addresses
|
||
|
echo Our IP addresses:
|
||
|
sudo ip addr show | grep inet
|
||
|
|
||
|
# Start gpio stuff.
|
||
|
sudo systemctl start pigpiod
|
||
|
|
||
|
|
||
|
# capture stdout and stderr to a secondary log file (just in case)
|
||
|
exec 2> /var/log/netsender/stream.log
|
||
|
exec 1>&2
|
||
|
|
||
|
# set env, working dir and run looper as pi user
|
||
|
HOME=/home/pi
|
||
|
GOPATH=$HOME/go
|
||
|
LOOPER_PATH=$GOPATH/src/bitbucket.org/ausocean/av/cmd/looper
|
||
|
PATH=$PATH:/usr/local/go/bin:$LOOPER_PATH
|
||
|
cd $LOOPER_PATH
|
||
|
sudo HOME=$HOME GOPATH=$GOPATH PATH=$PATH ./looper
|
||
|
if [ $? -eq 0 ]
|
||
|
then
|
||
|
echo "Successfully exited looper"
|
||
|
exit 0
|
||
|
else
|
||
|
echo "looper exited with code: $?" >&2
|
||
|
exit 1
|
||
|
fi
|