#!/bin/sh

PATH=/sbin:/usr/sbin:$PATH

BOOTSIZE=650
RAMSIZE=2300
MOUNT=/mnt/ram
FINALIMAGE=/mnt/sparc/images/boot.img

CUR=`pwd`

# from src/freeramdisk.c, this util frees up old ramdisks.
./freeramdisk

mke2fs -m 0 -i 16384 /dev/ram $BOOTSIZE

# add some special magic from Jakub
dd if=$CUR/boot of=/dev/ram bs=1k count=1

mount -t ext2 /dev/ram $MOUNT

# setup silo stuff
cd silo
echo
tar cvvf - boot/first.b boot/second.b sbin | tar -x -f - -C $MOUNT
echo
mkdir $MOUNT/etc
cd $CUR
cp silo.conf $MOUNT/etc/silo.conf
cp welcome.msg $MOUNT/etc/welcome.msg

$MOUNT/sbin/silo -f -r $MOUNT

cp vmlinuz-install $MOUNT/vmlinuz

umount $MOUNT

dd if=/dev/ram bs="$BOOTSIZE"k count=1 of=initial.img

# from freeramdisk.c, this util frees up old ramdisks.
./freeramdisk

mke2fs -m 0 -i 16384 /dev/ram $RAMSIZE
mount -t ext2 /dev/ram $MOUNT

cd $CUR/../trees/boot2
echo
tar cvvf - * | tar -x -f - -C $MOUNT
echo
cd $CUR

echo
df
echo

umount $MOUNT

dd if=/dev/ram bs="$RAMSIZE"k count=1 | gzip -9 > root.img

echo
echo "root.img size is:"
ls -l root.img
echo

cat initial.img root.img > $FINALIMAGE

# dd of=complete.img if=initial.img bs="$BOOTSIZE"k count=1
# dd of=complete.img if=root.img bs="$BOOTSIZE"k seek=1

size=`cat $FINALIMAGE | wc -c`
filler=`expr 1474560 - $size`

dd if=/dev/zero bs=$filler count=1 >> $FINALIMAGE
