NetBSD/etc/weekly
kre d0784034e5 Convert to POSIX specified usage of test (even though it would probably
have never been an issue here, it is trivial..., and one of the two
uses that needed changing was (and still is) commented out anyway).
2018-09-23 23:12:21 +00:00

100 lines
2.3 KiB
Bash

#!/bin/sh -
#
# $NetBSD: weekly,v 1.32 2018/09/23 23:12:21 kre Exp $
# from: @(#)weekly 8.2 (Berkeley) 1/2/94
#
export PATH=/bin:/usr/bin:/sbin:/usr/sbin:/usr/libexec
umask 077
if [ -s /etc/weekly.conf ]; then
. /etc/weekly.conf
fi
host="$(hostname)"
date="$(date)"
rcvar_manpage='weekly.conf(5)'
echo "To: ${MAILTO:-root}"
echo "Subject: $host weekly output for $date"
echo ""
if [ -f /etc/rc.subr ]; then
. /etc/rc.subr
else
echo "Can't read /etc/rc.subr; aborting."
exit 1;
fi
WEEKLYDIR=$(mktemp -d -t _weekly) || exit 1
trap "/bin/rm -rf $WEEKLYDIR ; exit 0" EXIT INT QUIT PIPE
if ! cd "$WEEKLYDIR"; then
echo "Can't cd to $WEEKLYDIR; aborting."
exit 1
fi
TMP=weekly.$$
#echo ""
#echo "Removing old .o files:"
#find /usr/src -name '*.o' -atime +21 -print -a -exec rm -f {} \;
# see if /usr/src exists and is local
# before looking there for checked-out files
#if [ -d /usr/src ] &&
# [ -n "$(find -f /usr/src ! -fstype local -prune -or -type d -print -prune)" ];
#then
# echo ""
# echo "Looking for checked out files:"
#
# TDIR=$(mktemp -d -t _checkout) || exit 1
# trap "/bin/rm -rf $TDIR ; exit 0" EXIT INT QUIT
# for file in $(find -f /usr/src ! -fstype local -prune -or \
# -name 'p.*' -print | egrep 'SCCS/p\.'); do
# owner=$(awk '{ print $3 }' $file)
# echo "$owner $file"
# echo $file >> "$TDIR/$owner"
# done | sed -e 's,SCCS/p.,,'
# if test -n "$(ls $TDIR)"; then
# for file in $TDIR/*; do
# sed -e 's,SCCS/p.,,' $file | \
# Mail -s 'checked out files' ${file##*/}
# done
# fi
#fi
if checkyesno rebuild_locatedb; then
echo ""
if [ -f /var/db/locate.database ]; then
echo "Rebuilding locate database:"
chmod 644 /var/db/locate.database
chown nobody:nobody /var/db/locate.database
(cd / && nice -5 su -m nobody -c /usr/libexec/locate.updatedb 2>/dev/null)
chown root:wheel /var/db/locate.database
else
echo "Not rebuilding locate database; no /var/db/locate.database"
fi
fi
if checkyesno rebuild_mandb; then
echo ""
if [ -f /etc/man.conf ] && [ -x /usr/sbin/makemandb ]; then
echo "Rebuilding man page index:"
(umask 022; nice -n 5 /usr/sbin/makemandb -f -Q)
else
echo "Not rebuilding man page index"
fi
fi
if [ -f /etc/weekly.local ]; then
. /etc/weekly.local > $TMP 2>&1
if [ -s $TMP ] ; then
printf "\nRunning /etc/weekly.local:\n"
cat $TMP
fi
rm -f $TMP
fi