* CD install directory created by moving disks-m68k/<boot-floppies-version>
and replacing it with a symlink to the install directory.
This commit is contained in:
parent
cc912c27fb
commit
5c07ab6020
|
@ -1,184 +1,65 @@
|
|||
#!/bin/bash
|
||||
#
|
||||
# boot-m68k v 1.13 (c) Steve McIntyre <stevem@chiark.greenend.org.uk>,
|
||||
# Chris Lawrence <lawrencc@debian.org>, Christian Steigies <cts@debian.org>,
|
||||
# Michael Schmitz <MSchmitz@lbl.gov>
|
||||
# Released under GPL 31 Mar 1999
|
||||
# boot-m68k Nick Holgate <holgate@debian.org>
|
||||
# Released under GPL 14 June 2000
|
||||
# See the file COPYING for license details
|
||||
# Released as part of the slink_cd package, not much use standalone
|
||||
# Released as part of the debian-cd package, not much use standalone
|
||||
#
|
||||
# Do install stuff for m68k, including making bootable CDs
|
||||
# Do install stuff for m68k, including making bootable CDs or BVME4000/6000
|
||||
#
|
||||
# Enjoy! This is all completely free.
|
||||
# - Chris Lawrence <lawrencc@debian.org>
|
||||
#
|
||||
# Rewritten by Steve McIntyre <stevem@chiark.greenend.org.uk> in sh to
|
||||
# interface better with the slink_cd package and cope with the mirror
|
||||
# layout, 28 Feb 1999.
|
||||
# Hopefully this will do the same job as the python map stuff did, it
|
||||
# appears to...
|
||||
#
|
||||
# If you're burning a CD, use the mkhybrid in potato (HFS is broken in the
|
||||
# slink version of mkhybrid; at least it is for me). Please don't use Joliet
|
||||
# extensions; some Mac kernels have apparently been known to choke on them
|
||||
# (and you really shouldn't be supporting a Microsoft Standard anyway :-)
|
||||
#
|
||||
# You may also want the following:
|
||||
# * A copy of the Linux/m68k FAQ
|
||||
# * A copy of my m68k-specific README and m68k-tools directories
|
||||
# * The m68k kernel sources from sunsite.auc.dk:/projects/680x0
|
||||
# (Sunsite-Denmark is rsync-capable at sunsite.auc.dk::ftp)
|
||||
# I recommend getting the 2.0.36 and 2.2.1-pre2 sources at least.
|
||||
# (Actually 2.0.36 is non-essential since it's on the CDs already;
|
||||
# you probably DO want the 2.2.1-pre2 tree however [under v2.1!]).
|
||||
#
|
||||
# MVME/BVME users will love you if you also include the "tools" directory
|
||||
# from the FTP site, since they may want/need rawwrite for MS-DOS.
|
||||
#
|
||||
# The first two items are in a tar file at master.debian.org:~lawrencc, along
|
||||
# with a silly rsync script that will accomplish the last item.
|
||||
|
||||
set -e
|
||||
#set -x
|
||||
|
||||
N=$1
|
||||
CDDIR=$2
|
||||
|
||||
cd $CDDIR/..
|
||||
|
||||
echo -n "--netatalk -J -hfs -probe -map $BASEDIR/data/hfs.map" \
|
||||
> $N.mkisofs_opts
|
||||
|
||||
# Only disk 1 bootable
|
||||
if [ $N != 1 ]; then
|
||||
echo -n "--netatalk -j -hfs -probe -map $BASEDIR/data/hfs.map" \
|
||||
> $N.mkisofs_opts
|
||||
exit 0
|
||||
fi
|
||||
|
||||
echo -n "--netatalk -j -hfs -probe -map $BASEDIR/data/hfs.map" \
|
||||
> $N.mkisofs_opts
|
||||
|
||||
echo -n " -b install/bvme6000/resc1440.bin -c install/bvme6000/boot.catalog" \
|
||||
>> $N.mkisofs_opts
|
||||
# Get real name of current disks directory
|
||||
DISKSDIR=$CDDIR/dists/$CODENAME/main/disks-$ARCH
|
||||
DISKSVER=$(readlink $DISKSDIR/current)
|
||||
|
||||
# Put CD boot image into place
|
||||
mkdir -p boot1/boot
|
||||
cp $DISKSDIR/current/bvme6000/images-2.88/rescue.bin boot1/boot
|
||||
|
||||
DISKSROOT="$MIRROR/dists/$CODENAME/main/disks-$ARCH/current"
|
||||
INSTALLDIR="$CDDIR/install"
|
||||
|
||||
cd $INSTALLDIR
|
||||
|
||||
#vecho Installing Amiga files
|
||||
lha xqf $DISKSROOT/amiga/amigainstall.lha
|
||||
mv debian amiga
|
||||
mv debian.info amiga.info
|
||||
cp $DISKSROOT/amiga/* amiga
|
||||
|
||||
# Needs to be executable
|
||||
chmod a+x amiga/amiboot-5.6
|
||||
|
||||
# Add .info files for amiga
|
||||
tar -C .. -xzf $BASEDIR/data/cts_amiga_info.tar.gz
|
||||
for file in `tar tzf $BASEDIR/data/cts_amiga_info.tar.gz`
|
||||
do
|
||||
chmod a+r ../$file
|
||||
done
|
||||
# And fix a few things up...
|
||||
mkdir common
|
||||
mv basecont.txt.info common
|
||||
mv ../README.info ../README.m68k.info
|
||||
cp ../README.1ST.info ../README.multicd.info
|
||||
|
||||
#vecho Installing Atari files
|
||||
lha xqf $DISKSROOT/atari/install.lzh
|
||||
mv debian atari
|
||||
cp $DISKSROOT/atari/* atari
|
||||
|
||||
#vecho Installing Mac files
|
||||
tar -C .. -zxf $DISKSROOT/source/macinstall.tar.gz
|
||||
cp $DISKSROOT/mac/* mac
|
||||
|
||||
for TYPE in common bvme6000 mvme162 mvme167 source
|
||||
do
|
||||
#vecho Installing $TYPE files
|
||||
if [ ! -d $TYPE ] ; then
|
||||
mkdir $TYPE
|
||||
fi
|
||||
cp $DISKSROOT/$TYPE/* $TYPE
|
||||
done
|
||||
|
||||
vecho hexbin Mac files
|
||||
cd $INSTALLDIR/mac
|
||||
hexbin *.hqx
|
||||
|
||||
vecho Installing m68k FAQ and tools
|
||||
mkdir $CDDIR/tmp
|
||||
cd $CDDIR/tmp
|
||||
tar xzf $BASEDIR/data/m68k-cd-misc.tar.gz
|
||||
mv m68k-faq m68k-tools ..
|
||||
mv update-kernels ../update-kernels.m68k
|
||||
cd ..
|
||||
rm -rf tmp
|
||||
echo -n " -b boot/rescue.bin -c boot/boot.catalog boot1" \
|
||||
>> $N.mkisofs_opts
|
||||
|
||||
cd $CDDIR
|
||||
# make mountpoint and temp HFS filesystem image
|
||||
rm -rf /var/tmp/mnt-macinstall
|
||||
mkdir /var/tmp/mnt-macinstall
|
||||
dd if=/dev/zero of=/var/tmp/macinstall-temp.img bs=1024 count=1440
|
||||
hformat /var/tmp/macinstall-temp.img
|
||||
# mount it (':' is top dir) using hfsutils
|
||||
hmount /var/tmp/macinstall-temp.img
|
||||
# copy booter and preferences files in place (color table missing but
|
||||
# Penguin-17 has colors fixed anyway
|
||||
hcopy -b install/mac/Penguin-17.hqx :
|
||||
hcopy -b install/mac/Penguin_Prefs.hqx :"Penguin Prefs"
|
||||
hcopy -b "install/mac/Penguin_Prefs_(autoboot).hqx" :"Penguin Prefs (autoboot)"
|
||||
# unmount HFS image
|
||||
humount /var/tmp/macinstall-temp.img
|
||||
# mount this HFS floppy image again as netatalk using the loopback mount command
|
||||
if [ ! 'mount -t hfs -o loop,fork=netatalk,afpd /var/tmp/macinstall-temp.img /var/tmp/mnt-macinstall' ] ; then
|
||||
# We managed to mount it loop-back
|
||||
# copy over both Penguin-15 and .AppleDouble/Penguin-15
|
||||
# copy over both Penguin Prefs and .AppleDouble/Penguin Prefs
|
||||
# (.AppleDouble files go into .AppleDouble subdir of target dir)
|
||||
cp /var/tmp/mnt-macinstall/Penguin* install/mac/
|
||||
mkdir install/mac/.AppleDouble
|
||||
cp /var/tmp/mnt-macinstall/.AppleDouble/Penguin* install/mac/.AppleDouble/
|
||||
# unmount, cleanup
|
||||
umount /var/tmp/mnt-macinstall
|
||||
rm /var/tmp/macinstall-temp.img
|
||||
rmdir /var/tmp/mnt-macinstall
|
||||
else
|
||||
# We failed to mount it. Use the fallback tar.gz that we have
|
||||
echo HFS loopback mount failed on /var/tmp/macinstall-temp.img
|
||||
echo This is not fatal, but check that you have permissions to do this
|
||||
echo and that you have HFS support in your kernel...
|
||||
echo Extracting $BASEDIR/data/macinstall-cd.tar.gz instead.
|
||||
tar xzf $BASEDIR/data/macinstall-cd.tar.gz
|
||||
fi
|
||||
|
||||
#
|
||||
# can remove the .hqx stuff now I guess.
|
||||
#
|
||||
# make CD image using the command
|
||||
# mkhybrid -map <mapfile> --netatalk -a -j -hfs -r -V <label> -o <image> <source dir>
|
||||
#
|
||||
# map file contains stuff like
|
||||
# # ext. xlate creator type comment
|
||||
# .hqx Ascii 'BnHx' 'TEXT' "BinHex file"
|
||||
# .mov Raw 'TVOD' 'MooV' "QuickTime Movie"
|
||||
# .deb Raw 'Debn' 'bina' "Debian package"
|
||||
# .bin Raw 'Debn' 'bina' "Floppy or ramdisk image"
|
||||
# * Ascii 'ttxt' 'TEXT' "Text file"
|
||||
#
|
||||
# Note that we can't use MacBinary mapping for .bin files due to
|
||||
# name clashes with the binary image files, so we have to provide
|
||||
# all encoded Mac files in BinHex format.
|
||||
#
|
||||
# Kudos Brad Midgley, <brad@pht.com> for the tricks!
|
||||
#
|
||||
# Possible alternative: convert .hqx in MacBinary files, but we'd need
|
||||
# to use a different extension as .bin is taken by the disk images.
|
||||
# i.e. hexbin -s Penguin-17.hqx > Penguin-17.mac
|
||||
# and use .mac as MacBinary extension. I don't know offhand what the
|
||||
# creator/type for MacBinary is. --netatalk would be replaced by
|
||||
# --macbin, possibly together with --probe.
|
||||
# Clean out stuff created by installtools.sh
|
||||
rm -rf install
|
||||
|
||||
# Put real disks directory in its place
|
||||
mv $DISKSDIR/$DISKSVER install
|
||||
|
||||
|
||||
# Make disks directory a symlink
|
||||
ln -s ../../../../install $DISKSDIR/$DISKSVER
|
||||
|
||||
cd $CDDIR/install
|
||||
|
||||
# Redo work of installtools.sh
|
||||
ln -sf install.en.html doc/index.html
|
||||
|
||||
# Extra tools not yet in boot floppies
|
||||
wget -q sunsite.auc.dk:/pub/os/linux/680x0/tools/dmesg.readme -O dmesg.readme
|
||||
wget -q sunsite.auc.dk:/pub/os/linux/680x0/tools/dmesg -O dmesg
|
||||
chmod a+x dmesg
|
||||
|
||||
# Amiboot needs to be executable
|
||||
chmod a+x amiga/amiboot-5.6
|
||||
|
||||
# Need a .info file for the install directory (AmigaOS)
|
||||
cp amiga.info $CDDIR/install.info
|
||||
|
||||
##-----------------------------< end of file >------------------------------##
|
||||
|
|
Loading…
Reference in New Issue