#!/bin/sh
# $Header: /afs/athena.mit.edu/astaff/project/layerdev/src/conf/hp/RCS/service.add,v 1.7 94/10/29 16:42:49 brlewis Exp $

echo ===================== BEGIN service.add ========================

CONFDIR=$1
SRCDIR=$2

if [ ! -d /etc/athena ]; then
	mv -f /etc/athena /etc/athena.old > /dev/null 2>&1
	ln -s $CONFDIR/etc/athena /etc/athena
fi

if [ ! -d /bin/athena ]; then
	mv -f /bin/athena /bin/athena.old > /dev/null 2>&1
	ln -s $CONFDIR/bin/athena /bin/athena
fi

if [ ! -d /usr/athena ]; then
	mv -f /usr/athena /usr/athena.old > /dev/null 2>&1
	ln -s $CONFDIR/usr/athena /usr/athena
fi

if [ ! -d /usr/vice ]; then
	mv -f /usr/vice /usr/vice.old > /dev/null 2>&1
	ln -s $CONFDIR/usr/vice /usr/vice
fi

if [ ! -d /mit ]; then
	mv -f /mit /mit.old > /dev/null 2>&1
	mkdir /mit
fi

# These directories should be there, but sometimes aren't:

if [ ! -d /var ]; then
	mv -f /var /var.old > /dev/null 2>&1
	mkdir /var
fi

if [ ! -d /usr/ucb ]; then
	mv -f /usr/ucb /usr/ucb.old > /dev/null 2>&1
	mkdir /usr/ucb
fi

test -f /etc/athena/rc.conf || cp -p $SRCDIR/rc.conf /etc/athena/rc.conf

rm -f /etc/athena/rc.athena
cp -p $SRCDIR/rc.athena $CONFDIR
ln -s $CONFDIR/rc.athena /etc/athena/rc.athena

# make rc.athena get run at boot time

if grep -s $CONFDIR/rc.athena /etc/rc; then
	: echo do nothing
else
	localrcline=`grep -n '^localrc' /etc/rc | awk -F: '{ print $1 }'`
	headpart=`expr $localrcline + 1`
	tailpart=`expr $localrcline + 2`
	head -$headpart /etc/rc > /etc/rc.lAthena
        echo '	if [ -f '$CONFDIR'/rc.athena ]; then' >> /etc/rc.lAthena
        echo '		sh '$CONFDIR'/rc.athena' >> /etc/rc.lAthena
        echo '	fi' >> /etc/rc.lAthena
	tail -n +$tailpart /etc/rc >> /etc/rc.lAthena
	if [ ! -f /etc/rc.preAthena ]; then
		rm -f /etc/rc.preAthena
		ln /etc/rc /etc/rc.preAthena
	fi
	chmod 755 /etc/rc.lAthena
	mv /etc/rc.lAthena /etc/rc
fi

# make reactivate get run by cron

rm -f /etc/athena/reactivate
cp -p $SRCDIR/reactivate $CONFDIR
ln -s $CONFDIR/reactivate /etc/athena/reactivate

crontab -l > /tmp/crontab.root || echo Ignore \"can\'t open your crontab file\" message.
if grep reactivate /tmp/crontab.root > /dev/null; then
	: echo no
else
	echo "17 * * * *	sh $CONFDIR/reactivate" >> /tmp/crontab.root
	crontab /tmp/crontab.root
fi

if [ -f $CONFDIR/layer_athena ]; then
	mv $CONFDIR/layer_athena $CONFDIR/layer_athena.old
fi
cp -p $SRCDIR/bin/layer_athena $CONFDIR
rm -f $CONFDIR/layer_athena.old

cp -p $SRCDIR/login_athena $CONFDIR

arch=`awk '{print $3}' < $CONFDIR/.rvdinfo`
ver=`awk '{print $5}' < $CONFDIR/.rvdinfo`
echo "Layered Athena $arch Version $ver `date`" >> /etc/athena/version

echo ===================== END service.add ========================

exit 0
