52 lines
1.4 KiB
Plaintext
52 lines
1.4 KiB
Plaintext
#$Id$
|
|
|
|
|
|
|
|
[ -z "$FDISK" ] && FDISK="fdisk"
|
|
[ -z "$INSTALLBOOT" ] && INSTALLBOOT="installboot"
|
|
[ -z "$KERNEL" ] && KERNEL="/netbsd"
|
|
[ -z "$MBRLABEL" ] && MBRLABEL="mbrlabel"
|
|
[ -z "$MKFS" ] && MKFS="newfs"
|
|
[ -z "$MOUNT" ] && MOUNT="mount"
|
|
[ -z "$UMOUNT" ] && UMOUNT="umount"
|
|
[ -z "$VNCONFIG" ] && VNCONFIG="vnconfig"
|
|
[ -z "$VND" ] && VND="vnd0"
|
|
|
|
|
|
#functions
|
|
#private
|
|
#image_image
|
|
_image_image()
|
|
{
|
|
USAGE="Options for $IMAGE_TYPE on $TARGET:\n\
|
|
IMAGE_FILE Where to write the filesystem image\n\
|
|
IMAGE_KERNEL Path to the kernel\n\
|
|
IMAGE_SIZE Size of the filesystem image in kilobytes\n\
|
|
MKFS Command used to format the filesystem"
|
|
|
|
#sanity check
|
|
check "$USAGE" DD DESTDIR DEVZERO FDISK IMAGE_FILE IMAGE_KERNEL \
|
|
IMAGE_SIZE INSTALLBOOT MBRLABEL MKDIR MKFS MOUNT UMOUNT \
|
|
VNCONFIG VND
|
|
|
|
$MKDIR "$DESTDIR" || exit 2
|
|
$UMOUNT "$DESTDIR"
|
|
$DD if="$DEVZERO" of="$IMAGE_FILE" count="$IMAGE_SIZE" &&
|
|
$FDISK -Ffi "$IMAGE_FILE" || exit 2
|
|
SIZE=$((IMAGE_SIZE - 63))
|
|
$FDISK -Ffu0s "169/63/$SIZE" "$IMAGE_FILE" || exit 2
|
|
$FDISK -Ffa0 "$IMAGE_FILE" || exit 2
|
|
$VNCONFIG -c "$VND" "$IMAGE_FILE" || exit 2
|
|
$MBRLABEL -frw "$VND" &&
|
|
$MKFS "${VND}e" &&
|
|
$MOUNT "/dev/${VND}e" "$DESTDIR" &&
|
|
target "install" &&
|
|
$INSTALL -m 644 "/usr/mdec/boot" "$DESTDIR/boot" &&
|
|
$INSTALL -m 755 "$IMAGE_KERNEL" "$DESTDIR/netbsd" &&
|
|
$INSTALLBOOT -m "$MACHINE" "/dev/r${VND}e" /usr/mdec/bootxx_ffsv1
|
|
RET=$?
|
|
$UMOUNT "$DESTDIR"
|
|
$VNCONFIG -u "$VND"
|
|
exit $RET
|
|
}
|