Repository navigation
TimeSync 0.1.2 — friendly chrony errors + interactive installer
Two real bugs that surfaced after v0.1.0/v0.1.1 went out:
chronyc exit 1: 506 Cannot talk to daemonwhen clicking Step Clock — useless to anyone who doesn't already know what 506 means. It happens when chrony is installed butchronydisn't actually running (the most likely state for someone who downloaded the .app but never ranserver/install.sh).server/install.shwas hardcoded to my LAN, my GPS device's FTDI serial number, and 4800 baud. Anyone else had to edit shell scripts before installing — exactly the friction the script was supposed to remove.
What's fixed
Friendlier chrony errors
- The privileged helper now searches both Homebrew prefixes for
chronyc(/opt/homebrew/bin/for Apple Silicon,/usr/local/bin/for Intel) - When chronyc returns "Cannot talk to daemon" or
506, the helper translates that into a message pointing the user atserver/install.sh, instead of forwarding the raw chronyc output
Setup banner in the menu bar
When chrony is unreachable (not installed, or installed but daemon down), the popover now shows a prominent orange banner at the top with a one-click button to open the setup instructions. The Step Clock button is also disabled while chrony is unreachable — it can't do anything useful in that state anyway.
Interactive server/install.sh
The installer now:
- Detects your Homebrew prefix automatically (Apple Silicon vs Intel)
- Scans
/dev/cu.usb*, lists candidate GPS devices, asks which one - Asks for the baud rate (default 4800)
- Sniffs the device for 3 s and confirms NMEA is actually present at that combination — catches wrong-device or wrong-baud before installing
- Detects your LAN subnet from
en0and asks which CIDR to allow - Renders customized copies of
chrony.conf,gpsd-wrapper.sh, and both LaunchDaemon plists, then installs them
No more editing shell scripts before installing.
Verifying
shasum -a 256 TimeSync-0.1.2.zip
# expect: 51dfac214b837f87ac2ff30b23f92dc2f1a075948b462abf8135c29af9b91b69
unzip TimeSync-0.1.2.zip
spctl -a -vvv TimeSync.app
# expect: source=Notarized Developer ID, accepted
Upgrading
Quit the running TimeSync, drop the new TimeSync.app over the old one in /Applications/, launch.
The helper protocol gained one new method (no breaking changes), but the helper binary changed — to pick up the friendlier error path, force a reload:
sudo launchctl kickstart -k system/com.vu2cpl.TimeSync.Helper
Or just toggle Settings → Helper → Uninstall, then Install again.
73 de Manoj VU2CPL