#!/bin/bash

DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )"
PREFIX="[homebridge-434mhz-flamingo]"

echo "$PREFIX ==== Running setup-pigpio.sh in $DIR ===="
echo "$PREFIX ==== pigpio is library used for controlling the GPIOs of Raspberry Pi."
echo "$PREFIX ==== pigpio and its daemon 'pigpiod' are needed to send 433,92 MHz signals to your RF outlets."
echo "$PREFIX ==== pigpio and its daemon 'pigpiod' will be installed if not already present."
echo "$PREFIX ==== A systemctl service will be created in order for 'pigpiod' to run at boot."
echo "$PREFIX ==== THE 433,92 MHz TRANSMITTER 'DATA' PIN MUST BE CONNECTED TO GPIO NUMBER 17!"

if ! command -v pigpiod &> /dev/null
then
    echo "$PREFIX Installing in $HOME"
    cd $HOME
    
    echo "$PREFIX 'pigpiod' not installed, installing..."
    echo "$PREFIX Installing 'python-setuptools' and 'python3-setuptools' using 'apt'..."
    sudo apt install python-setuptools python3-setuptools

    echo "$PREFIX Downloading https://github.com/joan2937/pigpio/archive/master.zip..."
    wget https://github.com/joan2937/pigpio/archive/master.zip
    
    echo "$PREFIX Unzipping master.zip..."
    unzip master.zip

    cd pigpio-master
    
    echo "$PREFIX Running 'make'..."
    make
    echo "$PREFIX Running 'sudo make install'..."
    sudo make install
    
    cd ..
    
    echo "$PREFIX Deleting pigpio-master..."
    rm -r pigpio-master

    echo "$PREFIX Killing 'pigpiod'..."
    sudo killall pigpiod
    
    cd $DIR
fi

echo "$PREFIX Creating /lib/systemd/system/pigpiod.service..."
sudo bash -c "echo '$(cat $DIR/pigpiod.service)' > /lib/systemd/system/pigpiod.service"

echo "$PREFIX 'sudo systemctl enable pigpiod'..."
sudo systemctl enable pigpiod

echo "$PREFIX 'sudo systemctl start pigpiod'..."
sudo systemctl start pigpiod
