Hi,
On 12/19/24 16:17, Frank Guthausen wrote:
A lot of packages do default configuration in /etc/project.conf and
admin related stuff in /etc/project.d/whatsoever.conf to separate the
distribution part from local overrides.
It depends on the package.
Some packages have a "registry-style" configuration, where instances of
the service are configured in separate files -- but files are provided
by the admin. That is what the webservers do, because a single binary is
responsible for hosting multiple largely independent virtual hosts.
Other packages provide an actual registry, like systemd or dbus, so they
need a mechanism to collect configuration files provided by other
packages from a directory.
For many packages, either of these is overkill, and the deviation from
upstream causes more work than it saves.
The conffile mechanism in dpkg acts like other version control systems
here and will ask the user to resolve if two branches (new defaults and
local configuration) of a file both have changes, but will assume that
two different files are semantically independent. If they aren't, then
an automatic merge that succeeds causes additional work down the line.
Simon