aboutsummaryrefslogtreecommitdiff
path: root/updater-ng-auto/files/updater.defaults
blob: 951558a2e1e5ad4bb7ac7a28aa49b99bcff1b2da (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
#!/bin/sh

# We want to generate some "random" time when the updater is run, every 12 hours.
# The time when the router is first booted or the updater is installed for
# the first time is as good source of the time as any.
#
# With date +%l we get time in interval 1-12. Substracting 1 gives us 0-11, and
# the next run is 12-23 by adding 12. We may take the minutes as they are.
#
# We need to take care not to have leading zeroes, since tools tend to take that
# as octal. We don't want to study which tools are OK with it, so we simply
# don't have them.

HOUR=$(($(date +%I | sed -e 's/^0*\(..*\)/\1/') - 1)) # We want 12-hour interval. And no leading zeroes (except for a lone 0)
HOUR_NEXT=$(($HOUR + 12))
MINUTE=$(date +%M | sed -e 's/^0*\(..*\)/\1/')

# Generate the cron script
(
	echo 'MAILTO=""'
	echo "$MINUTE	$HOUR,$HOUR_NEXT	*	*	*	root	/usr/bin/updater.sh >/dev/null 2>&1 &"
	echo "0	0	*	*	*	root	/usr/bin/updater-unstuck.sh >/dev/null 2>&1"
) >/etc/cron.d/updater
chmod 0600 /etc/cron.d/updater