debian-cd-clone/etchnhalf/tools/boot/sarge/boot-hppa

66 lines
1.8 KiB
Bash
Executable File

#!/bin/bash
#
# boot-hppa
#
# $1 is the CD number
# $2 is the temporary CD build dir
# palo is used to make ISOs bootable on HPPA.
. $BASEDIR/tools/boot/$DI_CODENAME/common.sh
set -e
N=$1
CDROOT=$2
if [ "$DI_WWW_HOME" = "default" ];then
DI_WWW_HOME="http://people.debian.org/~jbailey/d-i/hppa/daily/cdrom/2.6"
if [ -n "$DI_DIR" ];then
DI_DIR="$DI_DIR/~${DI_WWW_HOME#*~}"
DI_WWW_HOME=""
fi
fi
if [ ! "$DI_DIST" ]; then
DI_DIST="$DI_CODENAME"
fi
:> $1.mkisofs_opts
# Only disk 1* bootable
if [ $N != 1 -a $N != 1_NONUS ]; then
exit 0
fi
PALODEB="$($BASEDIR/tools/apt-selection cache show palo | \
sed -n 's/^Filename: \(.*_hppa.deb\)$/\1/p')"
ar p "${MIRROR}/${PALODEB}" data.tar.gz | tar xz ./usr/share/palo/iplboot
mv usr/share/palo/iplboot $CDROOT/install/iplboot
if [ ! "$DI_WWW_HOME" ];then
if [ ! "$DI_DIR" ];then
DI_DIR="$MIRROR/dists/$DI_DIST/main/installer-$ARCH/current/images/cdrom/2.6"
fi
else
DI_DIR="di_stuff"
mkdir "$DI_DIR"
wget -r -nd --no-parent -P "$DI_DIR" "$DI_WWW_HOME"
fi
cp "$DI_DIR"/vmlinux-*-32 "$CDROOT/install"
cp "$DI_DIR"/vmlinux-*-64 "$CDROOT/install"
cp "$DI_DIR"/initrd.gz "$CDROOT/install"
install_languages "$CDROOT"
RSIZE=$(expr $(zcat "$CDROOT/install/initrd.gz" | wc --bytes) / 1024)
echo " -hppa-cmdline '0/vmlinux,root=/dev/ram,initrd=0/ramdisk,ramdisk_size=$RSIZE,init=/linuxrc'" >> $1.mkisofs_opts
K32=$(ls $CDROOT/install/vmlinux-*-32 | sed 's?^.*/install/?install/?g')
echo " -hppa-kernel-32 $K32" >> $1.mkisofs_opts
K64=$(ls $CDROOT/install/vmlinux-*-64 | sed 's?^.*/install/?install/?g')
echo " -hppa-kernel-64 $K64" >> $1.mkisofs_opts
echo " -hppa-bootloader install/iplboot" >> $1.mkisofs_opts
echo " -hppa-ramdisk install/initrd.gz" >> $1.mkisofs_opts
exit 0