Circlean/circlean_fs/root_partition/opt/groomer/init.sh

50 lines
1.1 KiB
Bash
Executable File

#!/bin/bash
clean(){
if [ "${DEBUG}" = true ]; then
sleep 20
fi
echo "GROOMER: cleaning up after init.sh."
"${SYNC}"
# Stop the music from playing
kill -9 "$(cat /tmp/music.pid)"
rm -f /tmp/music.pid
}
check_is_root() {
if [ "${ID}" -ne 0 ]; then # -ne is an integer comparison instead of a string comparison
echo "GROOMER: This script has to be run as root."
exit
fi
}
start_music() {
./music.sh &
echo $! > /tmp/music.pid
}
run_groomer() {
if [ "${DEBUG}" = true ]; then
lsblk |& tee -a "${DEBUG_LOG}" # list block storage devices for debugging
su "${USERNAME}" -c ./mount_dest.sh |& tee -a "${DEBUG_LOG}"
else
su "${USERNAME}" -c ./mount_dest.sh
fi
}
main() {
set -eu # exit when a line returns non-0 status, treat unset variables as errors
trap clean EXIT TERM INT # run clean when the script ends or is interrupted
source ./config.sh # get config values
if [ "${DEBUG}" = true ]; then
set -x
fi
check_is_root
if [ "${MUSIC}" = true ]; then
start_music
fi
run_groomer
}
main