Subject: Re: groff/-current build problems
To: None <current-users@netbsd.org>
From: Greg A. Woods <woods@weird.com>
List: current-users
Date: 12/08/2002 17:26:25
[ On Sunday, December 8, 2002 at 18:37:50 (+1100), Luke Mewburn wrote: ]
> Subject: Re: groff/-current build problems
>
> So don't extract the etc.tgz set then.
One of the problems that's caused all this over-complication is that the
following files really should have been included in base.tgz all along:
dev/MAKEDEV
etc/defaults/*
etc/daily
etc/mtree/*
etc/monthly
etc/rc.d/*
etc/rc.lkm
etc/rc.shutdown
etc/rc.subr
etc/security
etc/weekly
Arguably even the following should be in base.tgz, though they are each
somewhat more likely to be edited locally than the above set, especially
given that some of them are not necessarily complete and authoritative
in the current source tree:
etc/floppytab
etc/netconfig
etc/protocols
etc/rpc
etc/services
This file could have an /etc/defaults companion so that it could be
initially empty except for a comment (i.e. just for local additions):
etc/changelist
Having the above files installed as part of the base set makes it much
less important to have silly merge scripts. I've been including all of
the above in my base.tgz for a couple of years now (in the two major
releases I've customized) and have been quite happy with the result.
With the above in base.tgz there's almost nothing left that _must_ be
merged except for adding new system accounts and groups, and those can
be added with 'useradd' and 'groupadd' instead of by way of some merging
process, and where the exact UID doesn't matter they can probably even
be added automatically without fear of clashes now that we have the
range option ('-r low..high') for 'useradd' (we need that range option
for 'groupadd' too! and support in pkgsrc/mk/bsd.pkg.install.mk too!).
All those other files that could be merged but don't really need to be,
such as syslog.conf, newsyslog.conf, inetd.conf, hosts.allow, etc.,
(i.e. all the rest of what would be in etc.tgz without the files above)
really should be initially installed in /usr/share/examples/etc or
something like that and copied to /etc during the initial system install
(eg. when /dev/MAKEDEV is run). Then any merging of them could be done
at any time, in any way, entirely without the sets or sources online.
This is probably the way I'll do things for my own 1.6 releases, if I
get around to it! :-)
--
Greg A. Woods
+1 416 218-0098; <g.a.woods@ieee.org>; <woods@robohack.ca>
Planix, Inc. <woods@planix.com>; VE3TCP; Secrets of the Weird <woods@weird.com>