Subject: Re: `rc.local.conf': bad name
To: NetBSD Userlevel Technical Discussion List <tech-userlevel@NetBSD.ORG>
From: Greg A. Woods <woods@weird.com>
List: tech-userlevel
Date: 07/31/2000 14:42:59
[ On Monday, July 31, 2000 at 18:31:19 (+0100), David Brownlee wrote: ]
> Subject: Re: `rc.local.conf': bad name
>
> 	At the very least it would be a big help to ship a second copy
> 	of rc.conf - maybe /etc/rc.conf.default or somewhere in
> 	/usr/share/examples... so that if people want to write tools
> 	they can depend on an original version being around.

If you're going to go in that direction then it's relatively trivial to
arrange for the upgrade script, and of course sysinst as well, to make
copies of all files in /etc/changelist into /var/backups, perhaps with
the release-ID in the filename (eg. "$file-$(uname -r)").

Then instead of using just a relatively braindead script like etcupd
(originally from FreeBSD) that relies only on the RCS version identifier
within the file to determine if a merge is necessary, a real three-way
merge can be done of all config files.  /etc/daily might also have to do
this so that additions to /etc/changelist after installation get at
least some similar treatment too.

Which reminds me, /etc/changelist support needs to be improved so that
it doesn't get confused by the same basename appearing in multiple
directories.

Hmmm.... then there are those of us who use RCS (or sometimes even
SCCS!) to keep track of system changes.

Perhaps the whole /var/backups thing should just be done away with and a
system install would instead just create RCS files for everything in
/etc/changelist (in an RCS subdirectory in each listed directory),
perhaps even on a branch so that upgrades could be checked in too and
then RCS could do most of the merging just like CVS vendor branches!

In fact since I've been keeping /etc/changelist up-to-date for my own
systems I'm going to write a little helper that'll RCS everything in
there and try this on my next install....

(BTW, No, CVS isn't appropriate at this level for system administration
-- I've been there and done that and learned the hard way that you
really really really do NOT want concurrent editing with system config
files, not to mention the other "build" issues inherent with CVS!)

-- 
							Greg A. Woods

+1 416 218-0098      VE3TCP      <gwoods@acm.org>      <robohack!woods>
Planix, Inc. <woods@planix.com>; Secrets of the Weird <woods@weird.com>