In buster, the following command could be used to list the configuration of systemd-timesyncd:
$ systemctl cat systemd-timesyncd
Note the reference at the end of the cat listing to a [Unit], with location /lib/systemd/system/systemd-timesyncd.service.d/disable-with-time-daemon.conf, and its (apparent) instructions not to run systemd-timesyncd if another ntp-like daemon is installed:
# /lib/systemd/system/systemd-timesyncd.service.d/disable-with-time-daemon.conf
[Unit]
# don't run timesyncd if we have another NTP daemon installed
ConditionFileIsExecutable=!/usr/sbin/ntpd
ConditionFileIsExecutable=!/usr/sbin/openntpd
ConditionFileIsExecutable=!/usr/sbin/chronyd
ConditionFileIsExecutable=!/usr/sbin/VBoxService
At some point after the release of buster (concurrent w/ release of bullseye??), the above scheme was altered; in my current bullseye systems the file /lib/systemd/system/systemd-timesyncd.service.d/disable-with-time-daemon.conf no longer exists. Further, the command systemctl cat systemd-timesyncd no longer contains any references to restricting or inhibiting startup of systemd-timesyncd. I seem to recall reading somewhere that systemd-timesyncd retained a mechanism for inhibiting its startup if it found other timekeeping daemons installed, but I've been unable to confirm that.
Does anyone recall the history of this change? More importantly, does systemd-timesyncd still inhibit its startup if it finds another timekeeping daemon installed? Where/how is this done?