Package: chrony
Version: 4.0-8
Severity: normal
X-Debbugs-Cc: s.egb...@sbcglobal.net

Dear Maintainer,

I have a use case for running both ntp and chrony packages.
The Debian APT is using 'Conflicts: time-daemon' in chrony and ntp packages.
We cannot EVER install both packages due to this 'Conflicts' metatag.

My use case here:
* ntp is the upstream interface and is using its own encryption.
* chrony is the downstream broadcasting NTP protocol and is using its own
  encryption.
* systemd-timesyncd does not support encryption (v247), so it got ignored.

Nothing we can do would allow the installation of both packages.

ALTERNATIVE APPROACH
--------------------
One thing that MAY work for all is to split out the packages into

* ntp-client-only (which has the APT 'Conflict: chrony, systemd-timesyncd'
* ntp-server-client (has the APT 'Conflict: ntp-client-only'
* chrony-client-only (which has the APT 'Conflict: ntp, systemd-timesyncd'
* chrony-server-client (which has the APT 'Conflict: chrony-client-only'


Suggessted *-client-only settings
---------------------------------
Only the *-client-only package would have the default 
settings for desktop, dynamic IP interface, et. al.

These *-client-only packages would have THE apt metatag setting 
of covering old naming-convention packages 
with 'Conflicts: [chrony|ntp|systemd-timesyncd]'


Suggested *-server-client settings
----------------------------------
The *-server-client would have its config files be configured 
as 'client-only' but allows for drop-in config settings into 
their respective drop-in include directory.  

Might even have a dpkg-[p]reconfigure script for additional 
info for being in server mode (such as interface/subnet).


Interaction between *-client-only/*-server-client packages
----------------------------------------------------------
Of course, this *-server-client package class would NOT be 
deleting any config files that it did NOT install, thus 
enabling customization to be left behind and untouch.  

We could even make the *-client-only be dominate and 'blow-away'
settings (ok, not that drastic, just simply rename away 
with *.dpkg filetype) on these drop-in config files.

And APT 'Conflicts:' shall not be used by any *-server-client package.


Interaction between *-server-client and systemd-timesyncd
---------------------------------------------------------
Well, systemd-timesyncd is only good for client-side.
We ought to be able to support this new 'Conflicts: *-client-only' still.

No need to remove systemd-timesyncd if one of the *-server-client
got installed.  Admin would just need to be smart about how to
set both package classes together.


Summary
-------
Yeah, it's a bit heady.  Not sure why we went down this 
'Conflicts:' route for time-daemon packages. 

I can see the need to meet ease of use for the desktop 
community, but certinaly not at a heavy cost toward the 
server community.


-- System Information:
Debian Release: 11.0
  APT prefers stable-updates
  APT policy: (500, 'stable-updates'), (500, 'stable-security'), (500, 'stable')
Architecture: amd64 (x86_64)

Kernel: Linux 5.10.46 (SMP w/4 CPU threads)
Kernel taint flags: TAINT_UNSIGNED_MODULE
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8), LANGUAGE not set
Shell: /bin/sh linked to /usr/bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled

Versions of packages chrony depends on:
ii  adduser              3.118
ii  init-system-helpers  1.60
ii  iproute2             5.10.0-4
ii  libc6                2.31-13
ii  libcap2              1:2.44-1
ii  libedit2             3.1-20191231-2+b1
ii  libgnutls30          3.7.1-5
ii  libnettle8           3.7.3-1
ii  libseccomp2          2.5.1-1
ii  tzdata               2021a-1
ii  ucf                  3.0043

chrony recommends no packages.

Versions of packages chrony suggests:
ii  bind9-dnsutils [dnsutils]  1:9.16.15-1
pn  networkd-dispatcher        <none>

-- Configuration Files:
/etc/default/chrony changed:
DAEMON_OPTS="-F 1 -L 0"


-- no debconf information

Reply via email to