fix(image): keep the Tor onion reachable on RTC-less boards
An RTC-less Pi boots at 1970; Tor then rejects the consensus and the unlock onion never publishes. Bake a clock floor (build epoch) into the initramfs and jump the clock forward to it before Tor starts, and pass a numeric tor_ntp= in the cmdline so busybox ntpd syncs without DNS. Proven on hardware: the onion unlock succeeded on a Pi 3 after this. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -34,8 +34,12 @@ if [ ! -s /etc/resolv.conf ]; then
|
||||
done
|
||||
fi
|
||||
|
||||
# RTC-less boards boot at 1970; Tor rejects the consensus otherwise. Bounded so
|
||||
# a failed sync never blocks boot.
|
||||
floor=$(cat /etc/tor-clock-floor 2>/dev/null || echo 0)
|
||||
if [ "$(date +%s)" -lt "$floor" ]; then
|
||||
/usr/local/bin/busybox date -s "@$floor" >/dev/null 2>&1 \
|
||||
|| date -s "@$floor" >/dev/null 2>&1 || true
|
||||
fi
|
||||
|
||||
if [ -x /usr/local/bin/busybox ]; then
|
||||
/usr/local/bin/busybox timeout 30 \
|
||||
/usr/local/bin/busybox ntpd -n -q -p "${tor_ntp:-pool.ntp.org}" \
|
||||
|
||||
Reference in New Issue
Block a user