How to use s6-sntpclock (literally s6-timesyncd)
In the little known package s6-networking an extremely minimal NTP client implementation is included. It's missing many features (it doesn't even implement the full NTP protocol, just a subset called SNTP), but it's compatible with most (if not all) NTP servers, and the feature set is exactly what desktop users usually want from NTP daemons: connecting to an NTP server and adjusting the clock. Or are you actually using the NTP server feature of most of these daemons to tell the time to other devices on your LAN?
Despite the name and the package as a whole pulling the s6 package, it can work with any PID1 without any changes (like the entirety of s6).
To use it, take this script:
#!/bin/sh
read -r IP <<EOF
$(ping -c1 pool.ntp.org)
EOF
IP=${IP%%')'*}
IP=${IP##*'('}
s6-sntpclock "$IP" | s6-clock
And run it as root (or at least, with CAP_SYS_TIME capability) every once in a while. Could be every boot as a oneshot service, as a cronjob or as a snooze service.
s6-sntpclock actually connects to the NTP server and outputs the data in a binary format, which can then be fed to s6-clock (which then changes the system clock) or s6-clockview (dry-run, which only shows what would change).
If you have the IP address of an NTP server handy, you can even run s6-sntpclock "$IP" | sudo s6-clock or s6-sntpclock "$IP" | s6-clockview straight from the terminal.
And that's it. It could be packaged and made configurable, but it's good enough for me as it is.