Hi list,
I put together a Makefile to build an oldworld boot+utility cd, but it's, unfortunately, only for those having a proprietary Mac OS Install CD .. It's tested, but not thoroughly, so please consider it alpha .. cat > Makefile <<EOF # This is a convenience Makefile to add SystemDisk, BootX and # a couple of current linux kernels to a bootable Mac OS CD. # It tries to do the right thing (tm) ;-) # # # $name: Makefile$ # $author: Christian Mueller <cmue81 at gmx dot de>$ # $copyright: Copyright (C) 1999 by Christian Mueller$ # $license: http://www.gnu.org/licenses/gpl.html - licensed under GNU GPL version 2$ # $date: 2007-01-09$ # # # Dependencies: hfsutils, cdr-tools # # Usage: The only thing you should need to adjust is the # BOOTABLE_MAC_CD variable or *URL if the URLs listed # deliver a "404 not found". # # Motivation: Even in the lucky case you get bootloaders for # a Beige G3 working (miboot, quik, etc.) you # would still need a booting Mac OS System to # apply the System Disk patches in case they # get screwed up. So if you're the owner of a # proprietary Mac OS CD let this Makefile convert # it to a useful utility CD in case you get stuck # with stand-alone-linux on your Mac-Box. # # WARNING: The image given with BOOTABLE_MAC_CD will get # modified! It might not work, so do backups !! # # Tested on a Beige G3 with OpenFirmware 2.4, might work on # other models. Hopefully we will not need this anymore # some day, when support for Apple's oldworld machines has # grown up ;-) Ciao .. # BOOTABLE_MAC_CD = /media/hdb1/macos8.iso CDBURNER = ATAPI:0,0,0 SYSDISK = SystemDisk2.3.1.smi.bin STUFFIT = stuffit520.611linux-i386.tar.gz UNSTUFF = bin/unstuff BOOTX = BootX_1.2.2.sit BOOTX_DIR = BootX_1.2.2 BOOTX_DIR_KRNL = $(BOOTX_DIR)/Linux_Kernels GEN_IMG = install-ppc-minimal-2006.1.iso SYSDISKURL = ftp://ftp.apple.com/developer/macosxserver/utilities/$(SYSDISK) STUFFITURL = http://www.allume.com/downloads/files/$(STUFFIT) BOOTXURL = http://penguinppc.org/historical/benh/$(BOOTX) DEBURL = http://people.debian.org/~wouter/d-i/powerpc/daily/powerpc GENURL = ftp://ftp.wh2.tu-dresden.de/pub/mirrors/gentoo/releases/ppc/current/ppc32/installcd/$(GEN_IMG) modimage: mount \ $(SYSDISK).copy \ debianstuff \ gentoostuff \ $(BOOTX_DIR).treecopy \ umount cd: modimage cdrecord -dao $(CDBURNER) $(BOOTABLE_MAC_CD) cdclean: cdrecord $(CDBURNER) blank=fast clean: umount -d genloop || exit 0 rm -rf bin/ genloop/ "$(BOOTX_DIR)" *irdmerge .*irdmerge distclean: clean rm $(SYSDISK) $(STUFFIT) $(BOOTX) $(GEN_IMG) $(SYSDISK): wget $(SYSDISKURL) $(STUFFIT): wget $(STUFFITURL) $(UNSTUFF): $(STUFFIT) tar xzf $(STUFFIT) $(UNSTUFF) touch $(UNSTUFF) $(BOOTX): wget $(BOOTXURL) $(BOOTX_DIR): $(UNSTUFF) $(BOOTX) $(UNSTUFF) -m=on $(BOOTX) mv "$(subst _, ,$@)" "$@" $(BOOTX_DIR_KRNL): $(BOOTX_DIR) mv "$(subst Linux_,Linux ,$@)" "$@" %.irdmerge: test -e "$*" || { \ mkdir -p "$(suffix $*).irdmerge" && \ cd "$(suffix $*).irdmerge" && \ gunzip -c "../$(BOOTX_DIR_KRNL)/$(subst .,,$(suffix $*))$(patsubst %$(suffix $*),%,$*)ird.gz" > "initrd.tmp" && \ cpio -i < "initrd.tmp" 2> /dev/null && \ rm "initrd.tmp" && \ cd .. \ touch "$*" ; } %.irdbuild: test -e "$(patsubst %$(suffix $*),%,$*).gz" || { \ cd $(suffix $*).irdmerge && \ find > ../files$(suffix $*).irdmerge && \ cpio -o < ../files$(suffix $*).irdmerge > "../$(patsubst %$(suffix $*),%,$*)" && \ cd .. ; } %.gz: % test -e "$@" || gzip -9 "$*" $(BOOTX_DIR_KRNL)/deb%ird.gz: wget -O "$@" $(DEBURL)/$*/initrd.gz $(BOOTX_DIR_KRNL)/deballinitrd: $(BOOTX_DIR_KRNL)/debnetbootird.gz $(BOOTX_DIR_KRNL)/debcdromird.gz $(BOOTX_DIR_KRNL)/debhd-mediaird.gz netboot.deb.irdmerge cdrom.deb.irdmerge hd-media.deb.irdmerge $(BOOTX_DIR_KRNL)/deballinitrd.deb.irdbuild $(BOOTX_DIR_KRNL)/debvmlinux: test -e "[EMAIL PROTECTED]" || wget -O "$@" $(DEBURL)/cdrom/vmlinux debianstuff: $(BOOTX_DIR_KRNL) $(BOOTX_DIR_KRNL)/debnetbootird.gz $(BOOTX_DIR_KRNL)/debcdromird.gz $(BOOTX_DIR_KRNL)/debhd-mediaird.gz $(BOOTX_DIR_KRNL)/deballinitrd.gz $(BOOTX_DIR_KRNL)/debvmlinux.gz $(GEN_IMG): wget $(GENURL) $(GEN_IMG).mount: $(GEN_IMG) mkdir -p genloop && \ mount -o loop $(GEN_IMG) genloop $(BOOTX_DIR_KRNL)/genliveird.gz: $(GEN_IMG).mount cp genloop/boot/apple.igz "$@" $(BOOTX_DIR_KRNL)/genallinitrd.gen.preirdbuild: cp "genloop/image.squashfs" ".gen.irdmerge/image.squashfs" $(BOOTX_DIR_KRNL)/genallinitrd: $(GEN_IMG).mount $(BOOTX_DIR_KRNL)/genliveird.gz live.gen.irdmerge $(BOOTX_DIR_KRNL)/genallinitrd.gen.preirdbuild $(BOOTX_DIR_KRNL)/genallinitrd.gen.irdbuild $(BOOTX_DIR_KRNL)/genvmlinux: $(GEN_IMG).mount test -e "[EMAIL PROTECTED]" || cp genloop/boot/apple "$@" gentoostuff: $(BOOTX_DIR_KRNL) $(BOOTX_DIR_KRNL)/genliveird.gz $(BOOTX_DIR_KRNL)/genallinitrd.gz $(BOOTX_DIR_KRNL)/genvmlinux.gz umount -d genloop mount: hmount $(BOOTABLE_MAC_CD) umount: humount TREECOPYSPECIALS = s|hcopy -m\(.*$(BOOTX_DIR_KRNL)\)|hcopy -r\1|; %.treecopy: mount % echo "#!/bin/sh" > "$*.dirs" && chmod +x "$*.dirs" echo "#!/bin/sh" > "$*.files" && chmod +x "$*.files" find "$*" -type d -printf 'hmkdir "/%p"\n' | sed -e 's/\//:/g' >> "$*.dirs" find "$*" -not -type d -printf " '%p'\n" | sed -ne "h;s/^ '/ ':/;s/\//:/g;H;g;s/\n//;s/^/hcopy -m/;$(TREECOPYSPECIALS)p" >> "$*.files" "./$*.dirs" 2>/dev/null || exit 0 "./$*.files" || exit 0 rm -f "./$*.dirs" rm -f "./$*.files" %.copy: mount % hcopy -m "$*" ":" EOF Have fun, cmuelle8 -- Der GMX SmartSurfer hilft bis zu 70% Ihrer Onlinekosten zu sparen! Ideal für Modem und ISDN: http://www.gmx.net/de/go/smartsurfer -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]