Re: RFC: OpenRC as Init System for Debian
* Thomas Goirand <firstname.lastname@example.org> [120511 04:45]:
> On 05/11/2012 04:04 AM, David Weinehall wrote:
> From: http://en.wikipedia.org/wiki/Configuration_file
> "In computing, configuration files, or config files configure the initial
> settings for some computer programs. They are used for user applications,
> server processes and operating system settings."
> The fact that these files are in /lib and shouldn't be touched by the admin
> doesn't make them less configuration files. They still match the above
> definition from Wikipedia.
> > And debian-policy isn't set in stone.
> > Otherwise it wouldn't have last been revised in February 2012 :)
> The debian-policy maybe, but the FHS, and config files in /etc *is* a very
> strong policy that you will not change in Debian, and for very valid
> reasons already described in this thread.
The FHS is very specific that /etc is for *Host-specific* system
configuration, not upstream defaults or distribution-specific
configuration. The clear intent is that this is where files that are
intended to be modified by the local system administrator are placed.
Files containing distribution-specific defaults, whether they match some
definition of "configuration file" or not, do not belong here unless the
they are also intended to be edited by the local sysadmin.
Using a Wikipedia definition must be done with careful consideration, as
they are often either over generalized or too specific. In this case I
believe the Wikipedia definition is not in the least relevant to the
subtleties being disputed here.
Debian policy does not explicitly differentiate between host-specific
configuration and Debian-provided default configuration, but it does
say, "Typically, configuration files are intended to be modified by the
system administrator (if needed or desired) to conform to local policy
or to provide more useful site-specific behavior."
Following the FHS is, however, a "must" in Debian policy except where
policy explicitly provides an exception or conflicts with the FHS.
It is clear to me that etc-overrides-non-etc is perfectly compliant with
Debian policy as long as the sysadmin does not need to modify the
non-etc files to obtain the desired behavior.
I have been using Debian since 1998, and IME the cases where changes to
the Debian-supplied configuration files would have caused breakage if
the Debian defaults had been in /usr/lib/package and only local
modifications were in /etc have been rare. On the other hand, the cases
where this model would have both obviated the need for a manual merge
and resulted in exactly the configuration I intended are extremely
Gergely Nagy has shown elsewhere in this thread that no matter which
configuration model you use, there are cases where you might not get a
notification of incompatible default configuration from dpkg on upgrade.
On the other hand, the etc-overrides-non-etc model significantly
simplifies most of the common default-configuration-change cases.
For clarity, the etc-overrides-non-etc model that I am talking about is
where the file in /etc can override individual values, not where the
file in /etc must replace the entirety of the non-etc configuration.
While I agree that etc-overrides-non-etc may not be the best model for
all software, it is the best for some and at least as good for many