#!/bin/bash
# -----------------------------------------------------
# MagicMounter 1.0 - (C) 1999-2000 Erich Roncarolo
# License: GPL2 (see LICENSE)
# -----------------------------------------------------

case $0 in
	*MagicMounter) Command=$1 ;;
	*) Command=$0 ;;
esac

case $Command in 
	*cdrom*)
		LINK=cdrom
		DEV='hd?'
		TYPE=iso9660
		MNT=/mnt/cdrom
		MSG="cdrom"
		;;
	*win*)
		LINK=win
		DEV='hd??'
		TYPE=vfat
		MNT=/mnt/win
		MSG="Windoze partition"
		;;
	*dos*)
		LINK=dos
		DEV='hd??'
		TYPE=msdos
		MNT=/mnt/dos
		MSG="MSDOZ partition"
		;;
	*linux*)
		LINK=local
		DEV='hd??'
		TYPE=ext2
		MNT=/opt/local
		MSG="Linux partition"
		POST="ldconfig -q -X"
		;;
	*)
		if [ -z "$Command" ] ; then
			echo "Usage: $0 <command>"
		else
			echo "MagicMounter: $Command: command unknown"
		fi
		exit 0
esac

if [ -L /dev/$LINK ]; then
	mount $MNT 2> /dev/null || umount $MNT
	if [ "$POST" ] ; then $POST &> /dev/null; fi
	exit 0
fi

cd /dev

echo "Looking for $MSG..."
for dev in $DEV ; do
	mount -t $TYPE $dev $MNT &> /dev/null && break
done

ln -s $dev $LINK

if [ "$POST" ] ; then $POST ; fi

echo "$MSG $dev mounted on $MNT"
