mirror of
git://slackware.nl/current.git
synced 2024-12-28 09:59:53 +01:00
6882ad8999
a/dcron-4.5-x86_64-12.txz: Rebuilt. Rebase the run-parts script on the latest version from Fedora's crontabs package. Thanks to avian. a/elilo-3.16-x86_64-13.txz: Rebuilt. Patched to disable the Confidential Computing blob for SEV-SNP, which fixes booting a 5.19 kernel with the EFI stub enabled. If you use elilo, be sure to either run eliloconfig again or manually copy (and rename) the proper elilo binary to your EFI System Partition. Thanks to PiterPunk. a/sysklogd-2.4.2-x86_64-1.txz: Upgraded. ap/most-5.2.0-x86_64-1.txz: Upgraded. d/cmake-3.24.0-x86_64-1.txz: Upgraded. x/ibus-table-1.16.10-x86_64-1.txz: Upgraded. extra/brltty/brltty-6.5-x86_64-1.txz: Upgraded. extra/php80/php80-8.0.22-x86_64-1.txz: Upgraded.
100 lines
2 KiB
Bash
100 lines
2 KiB
Bash
#!/bin/bash
|
|
# run-parts - concept taken from Debian
|
|
|
|
# keep going when something fails
|
|
set +e
|
|
|
|
if [ $# -lt 1 ]; then
|
|
echo "Usage: run-parts [--list | --test] <dir>"
|
|
exit 1
|
|
fi
|
|
|
|
while [ $# -gt 1 ]; do
|
|
case $1 in
|
|
--list)
|
|
list=1
|
|
shift
|
|
break
|
|
;;
|
|
--test)
|
|
test=1
|
|
shift
|
|
break
|
|
;;
|
|
--)
|
|
# -- end of options
|
|
shift
|
|
break
|
|
;;
|
|
*)
|
|
# directory
|
|
break
|
|
;;
|
|
esac
|
|
done
|
|
|
|
if [ ! -d $1 ]; then
|
|
echo "Not a directory: $1"
|
|
exit 1
|
|
fi
|
|
|
|
if [ -f /etc/default/run-parts ]; then
|
|
. /etc/default/run-parts
|
|
fi
|
|
|
|
# Ignore *~ and *, scripts
|
|
for i in $(LC_ALL=C; echo ${1%/}/*[^~,]) ; do
|
|
[ -d $i ] && continue
|
|
# Don't run *.{bak,new,rpmsave,rpmorig,rpmnew,swp,cfsaved} scripts
|
|
[ "${i%.bak}" != "${i}" ] && continue
|
|
[ "${i%.new}" != "${i}" ] && continue
|
|
[ "${i%.rpmsave}" != "${i}" ] && continue
|
|
[ "${i%.rpmorig}" != "${i}" ] && continue
|
|
[ "${i%.rpmnew}" != "${i}" ] && continue
|
|
[ "${i%.swp}" != "${i}" ] && continue
|
|
[ "${i%.cfsaved}" != "${i}" ] && continue
|
|
[ "${i%,v}" != "${i}" ] && continue
|
|
|
|
# jobs.deny prevents specific files from being executed
|
|
# jobs.allow prohibits all non-named jobs from being run.
|
|
# can be used in conjunction but there's no reason to do so.
|
|
if [ -r $1/jobs.deny ]; then
|
|
grep -q "^$(basename $i)$" $1/jobs.deny && continue
|
|
fi
|
|
if [ -r $1/jobs.allow ]; then
|
|
grep -q "^$(basename $i)$" $1/jobs.allow || continue
|
|
fi
|
|
|
|
if [ -e $i ]; then
|
|
if [ -r $1/whitelist ]; then
|
|
grep -q "^$(basename $i)$" $1/whitelist && continue
|
|
fi
|
|
|
|
if [ ${list:-0} = 1 ]; then
|
|
echo $i;
|
|
elif [ -x $i ]; then
|
|
if [ ${test:-0} = 1 ]; then
|
|
echo $i;
|
|
continue
|
|
fi
|
|
if [ "$RANDOMIZE" != "" ]; then
|
|
let "rtime = $RANDOM"
|
|
if [ "$RANDOMTIME" != "" ]; then
|
|
let "rtime %= $RANDOMTIME"
|
|
else
|
|
let "rtime %= 300"
|
|
fi
|
|
sleep $rtime
|
|
fi
|
|
|
|
# run executable files
|
|
logger -p cron.notice -t "run-parts[$$]" "($1) starting $(basename $i)"
|
|
$i 2>&1 | sed '1i\
|
|
'"$i"':\
|
|
'
|
|
logger -p cron.notice -t "run-parts[$$]" "($1) finished $(basename $i)"
|
|
fi
|
|
fi
|
|
done
|
|
|
|
exit 0
|