#!/bin/sh


WORKING=installing.working
FILE=sysupgrade.bin

if [ -f $WORKING ]; then
	echo "Script is already running."
	exit
fi

touch $WORKING


LED=installing.led
echo "#!/bin/sh" >> $LED
echo "" >> $LED
echo "WORKING=installing.working" >> $LED
echo "" >> $LED
echo "echo "19" > /sys/class/gpio/export" >> $LED
echo "echo "out" > /sys/class/gpio/gpio19/direction" >> $LED
echo "" >> $LED
echo "while true; do" >> $LED
echo "        echo "1" > /sys/class/gpio/gpio19/value" >> $LED
echo "        if [ -f \$WORKING ]; then" >> $LED
echo "                sleep 0.1" >> $LED
echo "        else" >> $LED
echo "                sleep 1" >> $LED
echo "        fi" >> $LED
echo "        echo "0" > /sys/class/gpio/gpio19/value" >> $LED
echo "        if [ -f \$WORKING ]; then" >> $LED
echo "                sleep 0.1" >> $LED
echo "        else" >> $LED
echo "                sleep 1" >> $LED
echo "        fi" >> $LED
echo "done" >> $LED
echo "" >> $LED

chmod +x $LED
./$LED &


cd /tmp


echo "Downloading upgrade..."
rm $FILE
wget http://download.nilacore.net/NilaController/os/v3/$FILE


echo "Downloading validation file..."
rm $FILE.md5
wget http://download.nilacore.net/NilaController/os/v3/$FILE.md5


echo "Download done, validating..."

hashFile=$(head -n 1 < $FILE.md5)
hashRead=$(md5sum  $FILE | cut -c 1-32)

echo "File: >$hashFile<"
echo " Read: >$hashRead<"

killall $LED
rm $LED

if [ "$hashRead" = "$hashFile" ]; then
	echo "Validation OK, upgrading..."

	echo "21" > /sys/class/gpio/export
	echo "out" > /sys/class/gpio/gpio21/direction
	echo "1" > /sys/class/gpio/gpio21/value

	sleep 1

	sysupgrade -n $FILE

	//exit
else

	echo "20" > /sys/class/gpio/export
	echo "out" > /sys/class/gpio/gpio20/direction
	echo "1" > /sys/class/gpio/gpio20/value

	echo "Validation filed!"
	rm $FILE
fi

rm $WORKING

exit

