#!/bin/sh

NAME=Flash-rescue
DESCR="Mandriva Flash rescue"
FLASH_VERSIONS="2.10 2.15 2.20"
DEFAULT_VERSION=220
UPGRADE=$1

rm -rf .tmp
mkdir -p .tmp/isolinux
cp -f /usr/lib/syslinux/isolinux.bin Flash/isolinux/alt0/* .tmp/isolinux

# Flash/upgrade should contain the whole content of the target Flash partition
# (but system.loop has to be removed)
[ -n "$UPGRADE" ] && cp -alL Flash/upgrade .tmp/

DISTRIB_DESCR=$DESCR RESCUE_FLASH=1 ./make_rescue_img || exit 1
mkdir -p .tmp/i586/install/stage2
cp -f rescue.sqfs .tmp/i586/install/stage2

flash_param="fastboot splash=silent vga=788"
rescue_param="splash=verbose quiet automatic=method:cdrom rescue"

[ -n "$UPGRADE" ] && DEFAULT="upgrade" || DEFAULT=Flash$DEFAULT_VERSION

cat <<EOF > .tmp/isolinux/isolinux.cfg
default $DEFAULT
prompt 1
timeout 150
display help.msg

label rescue
  kernel vmlinuz
  append initrd=all.rdz $rescue_param flash=rescue

EOF

if [ -n "$UPGRADE" ]; then
    cat <<EOF >> .tmp/isolinux/isolinux.cfg
label upgrade
  kernel vmlinuz
  append initrd=all.rdz $rescue_param flash=upgrade keepmounted

EOF
fi

for VERSION in $FLASH_VERSIONS; do
    SVERSION=`echo $VERSION | sed -e 's/\.//'`
    cat <<EOF >> .tmp/isolinux/isolinux.cfg
label Flash$SVERSION
  kernel vmlinuz$SVERSION
  append initrd=initrd$SVERSION.gz $flash_param

EOF
done

cat <<EOF > .tmp/isolinux/help.msg
 

                    0aWelcome to 09Mandriva Flash0a Upgrade/Rescue System07


EOF
if [ -n "$UPGRADE" ]; then
    cat <<EOF >> .tmp/isolinux/help.msg
  o  To upgrade a Mandriva Flash to 2010, type:
     0fupgrade070e<Enter>07

EOF
fi
cat <<EOF >> .tmp/isolinux/help.msg
  o  To repair a Mandriva Flash USB key type:
     0frescue070e<Enter>07

  o  To boot a Mandriva Flash USB key type:

     * 8GB Mandriva Linux 2010 Version (v2.20 - keys sold after December 2009)

       0fFlash220070e<Enter>07

     * 8GB Mandriva Linux 2009 Spring Version (v2.15 - keys sold after June 2009)
       0fFlash215070e<Enter>07

     * 8GB Mandriva Linux 2009 Version (v2.10 - keys sold after November 2008)
       0fFlash210070e<Enter>07
EOF

ISO_NAME=$NAME-$DEFAULT_VERSION
[ -n "$UPGRADE" ] && ISO_NAME=$ISO_NAME-upgrade

genisoimage -f -o $ISO_NAME.iso -r -J -l -input-charset iso8859-1 -iso-level 4 -hide-rr-moved -nobak -cache-inodes -publisher Mandriva -V "$DESCR" -b isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table .tmp    
mkcd --addmd5 $ISO_NAME.iso

chmod -R u+rwx .tmp
rm -rf .tmp
