#!/usr/bin/env bash

. /usr/share/dosis2/bin/shell-support-functions

enforce_root

/opt/dosis2/bin/setup-repo

declare -a systemtypes
for d in /opt/dosis2/etc/personality/hooks.d/*; do
    base="`basename \"${d}\"`"
    systemtype="`echo ${base} | cut -d. -f 2 | tr '-' ' ' | sed 's/[^ ]\+/\L\u&/g'`"
    systemtypes+=("${systemtype}|${base}")
done


while [ true ]; do
    echo "What is the System Type?"
    count=0
    for t in "${systemtypes[@]}"; do
        printf "[%2d] %s\n" "${count}" "`echo ${t} | cut -d\| -f1`"
        let count=count+1
    done

    index="`/opt/dosis2/etc/personality/common-scripts/ask \
        "System Type: " \
        "^[0-9]+$"`"

    if [ $? = 0 ] && [ ${index} -lt ${count} ]; then
        systemtype="`echo ${systemtypes[${index}]} | cut -d\| -f2`"
        break
    fi

    echo -e "\033[31mSystem Type must be among [0-${count}]\033[0m"
done


while [ true ]; do
    serial="`/opt/dosis2/etc/personality/common-scripts/ask \
        "Dafe Serial: " \
        "^[0-9]+$"`"

    [ $? = 0 ] && break

    echo -e "\033[31mDafe serial must be a number\033[0m"
done

export SYSTEM_TYPE="`echo ${systemtype} | cut -d. -f2`"
export SERIAL="${serial}"
for f in /opt/dosis2/etc/personality/hooks.d/${systemtype}/*; do
    bash ${f}
done
