}
# Modifica una linea dada de un archivo dado
+# Uso: nombre_archivo nro_linea nueva_linea
function changeLine() {
- cat "$1" | sed "${2}s%.*%$3%" > "$1"
+ # Si no se puede crear archivos, muero
+ [ -w . ] || die "No se puede escribir en el directorio actual" 100
+ tmp="$0.$$.tmp"
+ sed "${2}s%.*%$3%" > "$tmp" < "$1"
+ mv "$tmp" "$1"
}
# Mensaje generico de abort
echo
echo "Se instalará [$selected]"
- preguntar "¿Desea agregar otro componente para instalar?" "SsNn" key
+ preguntar "¿Desea agregar otro componente para instalar (S)?" SsNn key S
if [ "$key" = "s" ]; then
key="S"
fi
read key
}
+# Ofrece arrancar el afimonio si es posible
+function askDaemon {
+ if [ "$havemonio" -eq 1 ] && [ "$havefraude" -eq 1 ]; then
+ echo "Desea efectuar la activacion del demonio antifraude?"
+ echo "Si desea arrancar el proceso oprima solamente ENTER, de lo contrario oprima cualquier otra tecla y luego ENTER."
+ read choice
+ monbin=`grep -n "Comando" "$CONFFILE" | grep '^30' | sed s%.*Comando.%%`
+ mondir=`grep -n "BINDIR" "$CONFFILE" | grep '^31' | sed 's%.*= %%'`
+ if [ -z "$choice" ]; then
+ $mondir/afimonio_daemon.sh start
+ else
+ echo "Para realizar la activacion del demonio, tipee en linea de comando: '$mondir/afimonio_daemon.sh start'"
+ fi
+ echo
+ fi
+}
+
################### MAIN SCRIPT CODE ###################
clear
SISOPTP=$(uname)
# [STEP4] Seleecion de los componentes a instalar
# TODO: tener en cuenta los que ya estan y no permitir elegirlos
if [ -z "$choices" ]; then
+ askDaemon
showInstalled
abortMessage
exit 0
leer ">> Ingrese la ruta de instalación" "$CURRDIR" userpath
if [ -n "$userpath" ]; then
ROOTPATH=$userpath
- if [ -w "${userpath%/*}" ]; then is_writeable=1
+ if [ -w "${userpath%/*}/" ]; then is_writeable=1
else echo ">> ERROR: No es posible crear dicho directorio"
fi
else
mkdir -p "$DATADIR"
mkdir -p "$DATADIR"/{aprocesar,enproceso,rechazadas,procesadas}
mkdir -p "$DATADIR/alarmas"
+ # Aprovecho para copiar las llamadas en este bloque
+ tar -xzf "$INSTDIR/testcalls.tar.gz" -C "$DATADIR/aprocesar"
fi
echo ">> Moviendo Archivos....."
cp "$INSTDIR/$comando" "$BINDIR"
chmod u+x "$BINDIR/$comando"
+ if [ "$comando" = "afimonio" ]; then
+ cp "$INSTDIR/afimonio_daemon.sh" "$BINDIR"
+ chmod u+x "$BINDIR/afimonio_daemon.sh"
+ fi
# Copio umbrales, oridesti y utilities una sola vez
if [ ! -f "$OWNCONFDIR/oridesti.txt" ]; then
- cp "$INSTDIR/oridesti.txt" "$OWNCONFDIR"
+ cp "$CONFDIR/oridesti.txt" "$OWNCONFDIR"
fi
if [ ! -f "$OWNCONFDIR/umbrales.param" ]; then
- cp "$INSTDIR/umbrales.param" "$OWNCONFDIR"
+ cp "$CONFDIR/umbrales.param" "$OWNCONFDIR"
fi
if [ ! -f "$OWNCONFDIR/umbrales.id" ]; then
- echo 0 >> "$OWNCONFDIR/umbrales.id"
+ cp "$CONFDIR/umbrales.id" "$OWNCONFDIR"
fi
if [ ! -f "$OWNCONFDIR/util.sh" ]; then
cp "$INSTDIR/util.sh" "$OWNCONFDIR"
changeLine "$CONFFILE" "$numline" "LOGFILE = $LOGFILE"
echo "${prefix}_LOGFILE=\"$LOGFILE\"" >> $ownconffile
numline=$(($numline+1))
- changeLine "$CONFFILE" "$numline" "LOGSIZE = $LOGSIZE"
- echo "${prefix}_LOGSIZE=$LOGSIZE" >> $ownconffile
+ changeLine "$CONFFILE" "$numline" "LOGSIZE = "$(($LOGSIZE*1024*1024))
+ echo "${prefix}_LOGSIZE=$(($LOGSIZE*1024*1024))" >> $ownconffile
numline=$(($numline+1))
if [ "$comando" = "antifraude.pl" ]; then
changeLine "$CONFFILE" "$numline" "DATADIR = $DATADIR"
done
# [STEP6] Ofrecer arrancar el Afimonio si estan los tres paquetes instalados
+askDaemon
# [STEP7] Mostrar en un recuadro que se encuentra instalado en el sistema
showInstalled