#!/bin/bash
#set -x

if [ $UID -ne 0 ]; then
	echo "Ejecute 'sudo $0'"
	exit	
fi

basedir=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )

configuracion=$basedir/nodemecu.conf.ejemplo
envs=$basedir/envs

source $configuracion
source $envs

if [ -d $directorio_instalacion ] ; then
	echo "nodemecu ya se encuentra instalado"
	exit

fi

ficheros="bin envs arduinos.py generador_json funciones registrador desinstalar"

# Dependencias

echo "1. Instalando dependencias
"
apt update && apt install -y python3-pip jsonlint jq uuid 
pip3 install pyserial

echo ""

# Directorio de instalación

echo "2. Creando directorios y copiando archivos" 
echo "
Creación de directorios
"
mkdir -vp $registros_corruptos
mkdir -v $historicos
mkdir -v $registros
mkdir -v $key_dir
echo "
Copiado de archivos
"
cp -vr $ficheros $directorio_instalacion 
cp -v $configuracion /etc/nodemecu.conf
echo "
Enlaces a binarios
"
chmod 755 $directorio_instalacion/bin/nodemecu
ln -vs $directorio_instalacion/bin/nodemecu /usr/bin/nodemecu 
echo "
Fichero de logs
"
touch $log 
ls $log


echo "3. Configurando systemd
"

cp -v nodemecu.service /lib/systemd/system/
systemctl daemon-reload

echo "
4. Obteniendo numero de serie
"

sn=$(cat /proc/cpuinfo | grep Serial | cut -d ' ' -f 2)

sed -i 's/numero_serie=/numero_serie='$sn'/' $directorio_instalacion/envs

echo "Número de serie: $sn"



echo "
5. Configurar
"

echo "- Ejecute 'sudo nodemecu configurar' para comenzar.
"
echo "- Ejecute 'sudo nodemecu modo sensores' para obtener datos desde sensores.
"
echo "- Ejecute 'sudo nodemecu captura iniciar' para comenzar a tomar datos de sensores o datos de prueba.
"
echo "- Ejecute 'sudo systemctl start nodemecu.service' para iniciar el envío de datos.
"
