Subject: Re: /etc/rc.conf and upgrading
To: matthew green <mrg@eterna.com.au>
From: Erik Bertelsen <erik@mediator.uni-c.dk>
List: tech-userlevel
Date: 10/05/1999 10:59:25
On Tue, Oct 05, 1999 at 16:59:22 +1000, matthew green wrote:
> 
>    > One of the little pains of an upgrade is rebuilding /etc/rc.conf.
>    > What if we moved the clean /etc/rc.conf to /etc/rc.defaults and
>    > started with an empty /etc/rc.conf that users could override
>    > /etc/rc.defaults settings?
>    
>    I make one change to rc.conf, that being to add ". /etc/rc.conf.local"
>    to the end of it.  All my configuration then goes in rc.conf.local.
>    
>    I'm not especially attached to the names.  But something like this is a
>    very good idea, it seems to me.

My preference is to

 cvs diff -c rc
Index: rc
===================================================================
RCS file: /sw/cvs-base/src/etc/rc,v
retrieving revision 1.1.1.61
diff -c -r1.1.1.61 rc
*** rc  1999/09/29 14:56:40     1.1.1.61
--- rc  1999/10/05 08:50:26
***************
*** 85,90 ****
--- 85,94 ----
        . /etc/rc.conf
  fi
  
+ if [ -f /etc/rc.conf.local ]; then
+       . /etc/rc.conf.local
+ fi
+ 
  if [ "$rc_configured" != YES ]; then
        echo "/etc/rc.conf is not configured. Multiuser boot aborted."
        exit 1

(and similar for netstart and rc.shutdown). The inclusion of rc.conf.local
could be done in rc.conf itself, but as it really only contain assignment
statements, I don't like putting "executable" statements into it.

rc.conf.local should -not- be in the distribution, but examples could be
in /usr/share/examples/rc (or whatever).

We can also consider adding text along the lines of

cvs diff -c rc
Index: rc
===================================================================
RCS file: /sw/cvs-base/src/etc/rc,v
retrieving revision 1.1.1.61
diff -c -r1.1.1.61 rc
*** rc  1999/09/29 14:56:40     1.1.1.61
--- rc  1999/10/05 08:56:18
***************
*** 87,92 ****
--- 87,96 ----
  
  if [ "$rc_configured" != YES ]; then
        echo "/etc/rc.conf is not configured. Multiuser boot aborted."
+       echo "Please add your local rc.conf entries to /etc/rc.conf.local,"
+       echo "including setting rc_configured=YES."
+       echo "Create the file if not already existent."
+       echo "See http://www.netbsd.org/whatever and/or the installation documentation for further details."
        exit 1
  fi
  


(Please improve the linguistic and explanative quality of the English).

regards
Erik Bertelsen

ps: I also have a PR about using checkyesno instead of comparing with YES, but that
is another story...