#!/bin/sh
#
# RC script for murasaki
#   Copyright (c) by Shuu Yamaguchi <shuu@dotaster.com>
#
#   $Id: rc.murasaki,v 2.10 2003/04/19 19:00:47 shuu Exp shuu $
#
#   Can be freely distributed and used under the terms of the GNU GPL.
#
# chkconfig: 12345 06 99
# description: murasaki - another hotplug for kernel >= 2.4.1
#

DESTDIR=/
CONF_DIR=/etc/murasaki
SCRIPT_DIR=${CONF_DIR}/bin
PATH=$PATH:/sbin:/usr/sbin;export PATH
MURASAKI_HOTPLUG=/sbin/hotplug.murasaki
MURASAKI_PRELOAD=${CONF_DIR}/murasaki.preload
AUTOSETUP=${SCRIPT_DIR}/auto_setup
DEFAULT_HOTPLUG=/sbin/hotplug
PROC_PATH=/proc/sys/kernel/hotplug
MODPROBE=modprobe
MODPROBE_OPT=-as
LOCK_FILE=/var/lock/subsys/murasaki
# OVERWRITE:true/false:if you want to setup automatically on every boot,
# 			you choose 'true'
OVERWRITE=true
#
# MURASAKI_BEEP:on/off:if you like to beep when your PC boots, you set 'on'
MURASAKI_BEEP=off
#
# INIT:on/off:if you want to initialize usb and pci device on booting,
#                        you set 'on'
INIT=on

export MURASAKI_BEEP

initialize(){
	for f in /sbin/murasaki_init.*
	do
		$f
	done
}

case "$1" in
start)
	if [ ! -f ${MURASAKI_PRELOAD} -o ${OVERWRITE} = 'true' ];then
		${AUTOSETUP} > ${MURASAKI_PRELOAD}
	fi
	if [ -s ${MURASAKI_PRELOAD} ];then
		${MODPROBE} ${MODPROBE_OPT} `cat ${MURASAKI_PRELOAD}`
	fi
	touch ${LOCK_FILE}
	echo ${MURASAKI_HOTPLUG} > ${PROC_PATH}
	if [ $INIT = 'on' ];then
		initialize
	fi
	;;
stop)
	rm -f ${LOCK_FILE}
	echo ${DEFAULT_HOTPLUG} > ${PROC_PATH}
	;;
restart|reload)
	$0 stop
	$0 start
	;;
*)
	echo "Usage: $0 {start|stop|restart}"
	;;
esac
