1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112
|
# bootcd-ia64.lib
# vim: set filetype=sh :
elilo_ia64()
{
ignore "records in"
ignore "records out"
ignore "bytes transferred in"
run dd bs=1024k count=18 if=/dev/zero of=$CHANGES/cdboot.img
run "mkdosfs -n bootstrap $CHANGES/cdboot.img >/dev/null"
run mount -o loop $CHANGES/cdboot.img $VAR/mnt -t vfat
run mkdir -p $VAR/mnt/EFI/debian/boot
[ "$DISPLAY" ] && run cp $DISPLAY $VAR/mnt/EFI/debian/display.txt
run cp $KERNEL $VAR/mnt/EFI/debian/boot
run cp /usr/lib/elilo/elilo.efi $VAR/mnt/EFI/debian/elilo.efi
(
echo "prompt"
echo "timeout=50"
echo "default=Linux" # don't change. "Linux" is default in Efi Boot Manager
if [ "$DISPLAY" ]; then
echo "message=/EFI/debian/display.txt"
fi
echo "image=/EFI/debian/boot/$(basename $KERNEL)"
echo " label=Linux"
echo " append=\"root=$CDDEV1 ramdisk_size=$RAMDISK_SIZE $APPEND\""
for i in $CDDEVR; do
echo "image=/EFI/debian/boot/$(basename $KERNEL)"
echo " label=$(basename $i)"
echo " append=\"root=$i ramdisk_size=$RAMDISK_SIZE $APPEND\""
done
) >> $VAR/mnt/EFI/debian/elilo.conf
# Only for convenience in EFI Shell (<CD-Filesystem>:<RETURN> elilo<RETURN>)
run cp $VAR/mnt/EFI/debian/elilo.conf $VAR/mnt/
run cp $VAR/mnt/EFI/debian/elilo.efi $VAR/mnt/
# Match default PATH in EFI Bootmanger CD Entry
run mkdir -p $VAR/mnt/EFI/boot
run cp $VAR/mnt/EFI/debian/elilo.conf $VAR/mnt/EFI/boot
run cp $VAR/mnt/EFI/debian/elilo.efi $VAR/mnt/EFI/boot
#for i in / EFI/boot; do
# run mkdir -p $VAR/mnt/$i
# cp $VAR/mnt/EFI/debian/elilo.conf $VAR/mnt/$i
# cp $VAR/mnt/EFI/debian/elilo.efi $VAR/mnt/$i
#done
run umount $VAR/mnt
losetup -d /dev/loop0 2>/dev/null
}
jolietlong()
{
PROBLEM="Your Version of mkisofs does not support the option -joliet-long.
Because you probably will have pathes that are longer as 64 Characters
it would be the best to upgrade to a newer version of mkisofs.
If you (i)gnore this message, I will try to hide some directories from
the joliet filesystem, that are usually to long. Probably this works."
if [ "$(mkisofs -help 2>&1 | grep joliet-long)" ]; then
JOLIETLONG="-joliet-long"
else
warn "$PROBLEM"
JOLIETLONG="-hide-joliet apt -hide-joliet lib -hide-joliet usr"
fi
}
cdimage_ia64()
{
jolietlong
mkisofs_ignore
MKISOFS_OPTS="-no-emul-boot $GRAFTPOINTS $MKISO_NOT \
-R -J -b cdboot.img -c cdboot.catalog -o $VAR/cdimage \
-x $SRCDI/proc -x $VAR -x $ERRLOG \
-x $SRCDI/etc -x $SRCDI/var -x $SRCDI/tmp \
-x $SRCDI/dev -x $SRCDI/home -x $SRCDI/root $EXCLUDE \
$JOLIETLONG \
/=$SRCDI/ /=$CHANGES \
/home.ro/=$SRCDI/home /root.ro/=$SRCDI/root /var.ro/=$SRCDI/var \
/etc.ro/=$SRCDI/etc $MKISODEVFS"
run mkisofs $(chng_opts "$MKISOFS_OPTS" "$MKISOFS_CHNG")
}
cdimage_compressed_ia64()
{
jolietlong
compress_dir
uncompress_files cdboot.img $*
mkisofs_ignore
MKISOFS_OPTS="-no-emul-boot -z \
-R -J -b cdboot.img -c cdboot.catalog -o $VAR/cdimage \
$JOLIETLONG $VAR/compressed_dir"
run mkisofs $(chng_opts "$MKISOFS_OPTS" "$MKISOFS_CHNG")
run rm -r $VAR/compressed_dir
}
# -hide-joliet-trans-tbl -joliet-long \
# -R -J -T -b cdboot.img -c cdboot.catalog -o $VAR/cdimage \
#
check_ia64()
{
:
}
# Tested with rx2600
|