weekly revision 1.14
11.1Scgd#!/bin/sh -
21.1Scgd#
31.14Sad#	$NetBSD: weekly,v 1.14 2000/01/10 17:03:49 ad Exp $
41.7Smikel#	from: @(#)weekly	8.2 (Berkeley) 1/2/94
51.1Scgd#
61.1Scgd
71.11Smycroftexport PATH=/bin:/usr/bin:/sbin:/usr/sbin:/usr/libexec
81.12Slukemumask 077
91.12Slukem
101.12Slukemif [ -s /etc/weekly.conf ]; then
111.12Slukem	. /etc/weekly.conf
121.12Slukemfi
131.12Slukem
141.10Slukemhost=`hostname`
151.12Slukemdate=`date`
161.1Scgd
171.12Slukemecho "To: ${MAILTO:-root}"
181.12Slukemecho "Subject: $host weekly output for $date"
191.12Slukemecho ""
201.6Smrg
211.10Slukemif [ -f /etc/rc.subr ]; then
221.10Slukem	. /etc/rc.subr
231.10Slukemelse
241.10Slukem	echo "Can't read /etc/rc.subr; aborting."
251.10Slukem	exit 1;
261.6Smrgfi
271.6Smrg
281.1Scgd#echo ""
291.1Scgd#echo "Removing old .o files:"
301.1Scgd#find /usr/src -name '*.o' -atime +21 -print -a -exec rm -f {} \;
311.1Scgd
321.1Scgd# see if /usr/src exists and is local
331.1Scgd# before looking there for checked-out files
341.1Scgd
351.2Scgd#if [ -d /usr/src -a \
361.8Smycroft#  -n "`find -f /usr/src ! -fstype local -prune -or -type d -print -prune`" ];
371.2Scgd#then
381.2Scgd#	echo "looking for checked out files:"
391.2Scgd#	TDIR=/tmp/_checkout$$
401.2Scgd#
411.2Scgd#	mkdir $TDIR
421.2Scgd#	for file in `find -f /usr/src ! -fstype local -prune -or \
431.2Scgd#	    -name 'p.*' -print | egrep 'SCCS/p\.'`; do
441.2Scgd#		owner=`awk '{ print $3 }' $file`
451.2Scgd#		echo "$owner	$file"
461.2Scgd#		echo $file >> $TDIR/$owner
471.2Scgd#	done | sed -e 's,SCCS/p.,,'
481.7Smikel#	if test -n "`ls $TDIR`"; then
491.7Smikel#		for file in $TDIR/*; do
501.7Smikel#			sed -e 's,SCCS/p.,,' $file | \
511.7Smikel#			    Mail -s 'checked out files' `basename $file`
521.7Smikel#		done
531.7Smikel#	fi
541.2Scgd#	rm -rf $TDIR
551.2Scgd#fi
561.1Scgd
571.10Slukemif checkyesno clean_uucp && [ -f /usr/libexec/uucp/clean.weekly ]; then
581.1Scgd	echo ""
591.1Scgd	echo "Cleaning up UUCP:"
601.9Slukem	su daemon -c /usr/libexec/uucp/clean.weekly
611.1Scgdfi
621.1Scgdecho ""
631.1Scgd
641.1Scgdecho ""
651.10Slukemif checkyesno rebuild_locatedb && [ -f /var/db/locate.database ]; then
661.4Scgd	echo "Rebuilding locate database:"
671.4Scgd	chmod 644 /var/db/locate.database
681.13Skleink	chown nobody:nobody /var/db/locate.database
691.9Slukem	nice -5 su -m nobody -c /usr/libexec/locate.updatedb 2>/dev/null
701.13Skleink	chown root:wheel /var/db/locate.database
711.4Scgdelse
721.4Scgd	echo "Not rebuilding locate database; no /var/db/locate.database"
731.14Sadfi
741.14Sad
751.14Sadif [ -f /etc/weekly.local ]; then
761.14Sad	echo ""
771.14Sad	echo "Running /etc/weekly.local:"
781.14Sad	. /etc/weekly.local
791.4Scgdfi
80