Subject: Re: /etc/rc.conf and upgrading
To: Robert Elz <kre@munnari.OZ.AU>
From: Simon Burge <simonb@NetBSD.ORG>
List: tech-userlevel
Date: 10/13/1999 11:06:31
Robert Elz wrote:

>     Date:        Wed, 13 Oct 1999 10:11:06 +1000
>     From:        Simon Burge <simonb@NetBSD.ORG>
>     Message-ID:  <>
>   | This thread started when I suggested having an /etc/rc.defaults (someone
>   | suggested /etc/rc.conf.defaults), and then /etc/rc.conf would be just
>   | what the user wanted to override.  This avoids the "the file changed its
>   | purpose in life" problem.
> That can be achieved without two files (which then create confusion as
> to what overrides what) by making "checkyesno" smarter, so it gets given
> the variable name (instead of its value), and what NetBSD wants to be the
> default value for it, and if the variable isn't set, returns the default.
> That way rc.conf only ever needs to contain overrides (and the default
> settings are kept where the value is used, so it is all together).
> I'm not saying that's the best way forward, just that it woudl be one way.

Sounds like a good way forward.

> [[ ... ]]
> Clearly prediction isn't the way to go - coping with any changes that
> the user may have made is.   That means that as long as the NetBSD
> defaults remain unchanged, any user update of that default ought to be
> fairly painlessly carried forward.   Similarly, if NetBSD decides to
> change the default, and the user has just been using the default, then
> the update should be incorporated (one hopes that NetBSD doesn't go
> arbitrarily changing the default settings without good reason).  If
> both the user and NetNSD have changed in the same way, then everyone
> is happy...

One idea that floated across my mind was to have the default for
_everything_ to be "no", even "essential" services like syslog, update,
etc, and have the user (or the install tool) explicity enable everything
they wanted.  This probably violates the principal of least surprise

The more I think about keeping the defaults in /etc/rc with a smart
"checkyesno" the more I like the idea...

>   | Maybe we need /etc/rc.d :-)  (ducks)

I know I should have put more than one smiley on that throwaway line :)