#!/bin/csh -f
#
# Network Installation Kit
#
# install.netmail: make a network operations mail server
#
# Tom Coppeto
# MIT Network Group
# 17 September 1994
#
# Last Modified 24 January 1996 by jyp
#

source $util/aliases

top:
clear
vecho "INSTALL"
vecho ""
vecho "                           Mailhub (NET)"
vecho $bar
vecho ""
vecho ""
vecho "New files: "
vecho "               /usr/local/bin/ambig_response"
vecho "               /usr/local/bin/anonymiser"
vecho "               /usr/local/bin/ckdate"
vecho "               /usr/local/bin/do_backup"
vecho "               /usr/local/bin/mailq"
vecho "               /usr/local/bin/mail_dir_entry"
vecho "Modified files: "
vecho "               /usr/lib/sendmail"
vecho "               /etc/athena/rc{.conf}"
vecho "Disk consumed:"
vecho "               /usr       about 10MB"
vecho ""
df /usr | vcat
vecho ""
if ($interactive == true) then
	get_response "continue? (yes/no) " "yes" "no"
	if($status == 2) exit -1
endif

log "**  running install.netmail:"
vecho ""
vecho "     installing..."

#
# create directories
#

vecho "     creating directories..."
if(! -d /bin/athena) mkdir /bin/athena
if(! -d /etc/athena) mkdir /etc/athena
if(! -d /usr/noc) mkdir /usr/noc
if(! -d /usr/local/bin) mkdir /usr/local/bin

#
# install binaries
#

vecho "     installing binaries..."
install -c -m 4555 $netbin/sendmail /usr/lib
if (-f $netbin/sendmail.fast) then
	install -c -m 4555 $netbin/sendmail.fast /usr/lib
endif
install -c -m 555 $netbin/ninit /etc/ninit
install -c -m 555 $netbin/named /etc/named
install -c -m 555 $netbin/ambig_response /usr/local/bin
install -c -m 555 $netbin/anonymiser /usr/local/bin
install -c -m 555 $netbin/anonymiser.awk /usr/local/bin
install -c -m 555 $netbin/ckdate /usr/local/bin
install -c -m 555 $netbin/do_backup /usr/local/bin
install -c -m 555 $netbin/mail_dir_entry /usr/local/bin
install -c -m 555 $netbin/query_dir /usr/local/bin
install -c -m 555 $netbin/do_backup /usr/local/bin
install -c -m 555 $netbin/ambig_response /usr/local/bin
install -c -m 755 $netbin/ckdate /usr/local/bin
install -c -m 555 $netbin/format_mail_stats /usr/noc
install -c -m 555 $netbin/mail_report_daily /usr/noc
install -c -m 555 $netbin/mail_report_weekly /usr/noc
rm -f /usr/local/bin/mailq
ln -s /usr/lib/sendmail /usr/local/bin/mailq

rm -rf /usr/etc/in.named

log "     netmail: installed binaries"

#
# configs
#

vecho "     installing configs..."
if(-f /etc/sendmail.cf) rm -f /etc/sendmail.cf
if(-f /etc/sendmail.fc) rm -f /etc/sendmail.fc
install -c -m 444 $netconf/mailhub/sendmail.cf /usr/lib
install -c -m 444 $netconf/mailhub/sendmail.ac.example /usr/lib
install -c -m 444 $netconf/mailhub/sendmail.ac /usr/lib
install -c -m 444 $netconf/mailhub/sendmail.hf /usr/lib
install -c -m 444 $netconf/mailhub/aliases/aliases.local /usr/lib
install -c -m 444 $netconf/mailhub/aliases/aliases /usr/lib

log "     netmail: installed sendmail config and aliases"
vecho "     freezing sendmail config..."
/usr/lib/sendmail -bz
vecho "     building aliases..."
if (-f /usr/lib/sendmail.fast) then
	/usr/lib/sendmail.fast -bi
else
	/usr/lib/sendmail -bi
endif
log "     netmail: build sendmail config and aliases"

fgrep "Mail stats" /usr/spool/cron/crontabs/root > /dev/null
if($status) then
	vecho "     editing crontab..."
	sed "s/root//" $netconf/mailhub/stats.crontab >> /usr/spool/cron/crontabs/root
	log "     netmail: edited crontab"
endif

fgrep ckdate /etc/inetd.conf > /dev/null
if($status) then
	vecho "     adding ckdate to inetd..."
	echo "ckdate	stream	tcp nowait	root	/usr/local/bin/ckdate ckdate /usr/lib/aliases /usr/lib/aliases.dir /usr/lib/aliases.pag" >> /etc/inetd.conf
	log "     netmail: added ckdate to inetd.conf"
endif

setenv arch `arch -k`
diff /vmunix $netbin/vmunix.mh.$arch > /dev/null
if ($status) then
	vecho "     installing mailhub kernel..."
        cp $netbin/vmunix.mh.$arch /vmunix
	log "     netmail: installed mailhub kernel"
endif

#
# configure rc.conf
#

vecho "     updating rc and version..."
install.rc
config.rc MAILSERVER true
config.rc MRUPDATE true
version add NetServerMailhub $netmailversion
log "     netmail: updated rc and version"

vecho "done."
log "netmail: done"

if ($interactive == true) then
	get_response "Press <return> to continue..." "<return>"
else 
	sleep 5
endif

exit 0
