#!/bin/sh # shell script to build a bootable hybrid PPC CD if ! rpm -q hfsutils ; then echo 'You need hfsutils installed!!' exit 1 fi if [ -e $2 ] ; then echo "Output image $2 exists, please delete" echo "usage: $0 " exit 1 fi if [ ! -d $1 ] ; then echo "CD tree $1 is not a directory!" echo "usage: $0 " exit 1 fi # select the appropriate mkhybrid binary depending on if # we are on x86 or ppc ARCH=`uname -m | sed -e 's/i.86/i386/' -e 's/sparc.*/sparc/'` if [ "$ARCH" == "ppc" ]; then MKHYBRID=mkhybrid-1.12b5.4 else if [ "$ARCH" == "i386" ]; then MKHYBRID=mkhybrid-1.12b5.4-x86 else echo "Sorry, no mkhybrid binary for $ARCH..." exit fi fi #Change these when you build the CD.. ApplicationID="Linux-Mandrake" PublisherID="MandrakeSoft" PreparerID="sbenedict@mandrakesoft.com" SystemID=PPC volid=ppc hfsVolid=Linux-Mandrake curPwd=`pwd` $curPwd/$MKHYBRID -part -hfs -r -l -J \ -A $ApplicationID \ -P $PublisherID \ -p $PreparerID \ -abstract "README" \ -sysid $SystemID \ -V $volid \ -volset "Update" \ -volset-size 2 \ -volset-seqno 1 \ -hfs-volid $hfsVolid \ -map $curPwd/mapping \ -magic $curPwd/magic \ -m "*.orig" \ -hide '*.MacOS' -hide '*.DOS' \ -hide-joliet '*.Unix' -hide-joliet '*.MacOS' \ -hide-hfs '*.Unix' -hide-hfs '*.DOS' \ -pad \ -o $2 \ $1 #Bless boot folder so yaboot can boot hmount $2 hattrib -b boot hcd boot hattrib -t tbxi -c UNIX ofboot.b hattrib -t boot -c UNIX yaboot hattrib -t boot -c UNIX vmlinux hattrib -t boot -c UNIX vmlinux-2.2 hattrib -t conf -c UNIX yaboot.conf hcd hcd BootX hrename Mandrake_Linux_Install.sit 'Mandrake Linux Install.sit' hattrib -t APPL -c STi0 'Mandrake Linux Install.sit' humount