On Sun, Jun 29, 2003, Bill Campbell wrote:

Re Bill,

> While building and installing postgresql, I see that the rc control file
> specifies the IP address for the host explicitly (i.e. 127.0.0.1).  It
> seems to me that this should be someplace in the %{l_prefix}/etc/postgresql
> directory, not in the startup control file itself,
> 
some applications allow certain paramters to be specified either in a
configuration file or through command line options. The former has to be
placed in the /etc subdirectory for the affected package, the latter has
to be placed in a rc.%{name} file using a variable which can be
overridden by the user in rc.conf. A config file under /etc should be
tagged as such. The rc.%{name} file is not intended to be touched by the
user so OpenPKG will overwrite it on any update. However, the rc.%{name}
file should contain reasonable amount of configuration options through
variables. The user can override the defaults hardcoded in the
rc.%{name} by placing his own definition into the rc.conf file which is
never overwritten by OpenPKG.

We believe in RPMs logic of keeping or moving/replacing config files.
The logic is close to perfection for a packaging system. There are many
situations where the logic could be improved but we feel such
intelligence is up to a configuration management system which OpenPKG is
not.  So we see only few, if any, situations where config(noreplace)
could/should be used.

We understand the issues associated with changed configurations, and we
are currently fighting three battles to improve things:

- daemon bind/listen address 
  https://rt.openpkg.org/SelfService/Display.html?user=guest&pass=guest&id=176
  the goal is to ensure that any daemon will bind/listen to 127.0.0.1 by
  default which greatly reduces the risk of running a daemon on a live
  system which reverted back to default configuration. Currently (or at
  least not long ago) it was possible to upgrade postfix, revert to the
  default config and have such a stupid config running on a live system.
  This must not happen.

- opServiceEnabled
  https://rt.openpkg.org/SelfService/Display.html?user=guest&pass=guest&id=174
  https://rt.openpkg.org/SelfService/Display.html?user=guest&pass=guest&id=175
  https://rt.openpkg.org/SelfService/Display.html?user=guest&pass=guest&id=184
  the goal is to ensure that all rc.%{name} files acutally use the
  opServiceEnabled function (#175), the return code and environmental
  changes of any package does not influence other packages (#174,
  currently the first exit breaks the rc chain) and the function is
  enhanced to disable a service when a .*\.rpm(save|orig|new) file is
  found under the package's /etc subdirectory (#184).

- rpmlint
  is currently under construction and checks RPMs like speclint checks
  spec files. One of the goals is to find config files which are not
  tagged as those.

Regarding your original inquiry about postgresql it will be checked for
those issues.

One point probably remains for voting. If an application supports both,
setting the bind/listen address through config file and rc file aka
command line option, which one is the preferred option? My idea is to
prefer using the config file because i'll expect all configuration to be
in one place - if possible.

> and that this type of
> information should be specified at %config(noreplace) so that updates don't
> break running systems (yeah, I'm sounding like a broken record :-).
> 
As discussed above, there's little need for %config(noreplace) in
OpenPKG.

> It seems to me that package configuration information belongs in the
> %{l_prefix}/etc/%{name} directories, not in the %{l_prefix}/rc.d/rc.%{name}
> startup scripts.  At the very least, the startup scripts should be declared
> as %config files so that installation changes appear as messages during
> updates.
> 
Discussed above, too. The rc.config is never touched, the rc.%{name}
files will replaced without notice. Yes, package configuration should be
placed into %{l_prefix}/etc/%{name} and tagged as such.

--
[EMAIL PROTECTED]
Development Team, Operations Northern Europe, Cable & Wireless
______________________________________________________________________
The OpenPKG Project                                    www.openpkg.org
Developer Communication List                   [EMAIL PROTECTED]

Reply via email to