#!/bin/sh
set -e

# check environment variables are set
if [ -z "$CC03_ROOT" ]; then
    echo "Error: CC03_ROOT not set, nothing done"
    exit 1
fi
${CC03_ROOT}/bin/cc03-check

# standard Knoppix CD options (3.2)
OPTIONS="-pad -l -r -J -v -V 'KNOPPIX' -b KNOPPIX/${CC03_BOOT} -c KNOPPIX/boot.cat -hide-rr-moved $CC03_PART/knx/master"

# standard Knoppix CD options (3.4)
# per http://www.knoppix.net/docs/index.php/KnoppixRemasteringHowto
OPTIONS="-pad -l -r -J -v -V 'KNOPPIX' -no-emul-boot -boot-load-size 4 -boot-info-table -b boot/isolinux/isolinux.bin -c boot/isolinux/boot.cat -hide-rr-moved ${CC03_PART}/knx/master"

# calculate the usage estimate
echo "media size planned"
echo "    ${CC03_MAXIMUM} megabytes (2^20)"
echo ""
echo "estimating iso9660 image size"
BLOCKS=`mkisofs -print-size -quiet ${OPTIONS} 2> /dev/null`
BYTES=`echo ${BLOCKS}*2048|bc`
MB=`echo ${BLOCKS}*2048/1024/1024|bc`
USAGE=`echo ${MB}*100/${CC03_MAXIMUM}|bc`

echo "    ${BLOCKS} blocks (2^11)"
echo "    ${BYTES} bytes"
echo "    ${MB} megabytes (2^20)"
echo "    ${USAGE}% of disc"
echo ""

# check against a threshold and abort if above
if [ ${USAGE} -gt 99 ]; then
    echo "Error: bigger than disc size, stopping"
    exit 2
fi

# create the filesystem
mkisofs ${OPTIONS} > ${CC03_TMP}/cc03.iso
