Date: Fri, 28 Aug 1998 19:31:12 -0700 (PDT) From: Matthew Dillon <dillon@backplane.com> To: "Jordan K. Hubbard" <jkh@time.cdrom.com> Cc: Mike Smith <mike@smith.net.au>, committers@FreeBSD.ORG Subject: Re: make.conf Message-ID: <199808290231.TAA21504@apollo.backplane.com>
next in thread | raw e-mail | index | archive | help
:thing to do. It's long been on the TODO list, just not done. : :For rc.conf and make.conf, which contains only variable declarations, :this is actually pretty easy since you really just have to: : :1. Read in the new file, preserving comments and storing all the : name/value pairs in some sort of table (sysinstall actually does : this now). : :2. Read just the name/value pairs from the old file and override : any existing values in the table with the previous data. : :3. Write back out a composite file with comments and updated variable : values. : :Erm, right? I don't see any reason why that wouldn't work unless the :default value of something has changed and you end up propagating an :old default value back into your new file. I guess that's the one :downside to this approach. : :- Jordan You have to audit the results anyway. It's much easier to do this: * copy the 'factory' rc.conf to /etc/rc.conf straight. Put just your overrides in rc.conf.local. No editing, no merging, no nothing. Any new featurisms that the FreeBSD wizards turn on become automatically supported in your machine configuration. * audit differences between the old system rc.conf and the new one to determine if anything significant has been changed. Since both of these are distribution-supplied files, the diff output is generally trivially auditable. * In general, No auditing of rc.conf.local is necessary. No merging, no editing, no nothing. In rare cases someone may turn on something in rc.conf that we may want to turn off in rc.conf.local, but we haven't come across such a case yet even when drastic changes are being made to rc.conf by the committers. Simple, and straightforward. Of course I have no objection to including a merger/utility program in the dist. I'll never use it myself, though. (This, of course, is very similar to my argument for a make.conf.local, but the make.conf.local argument hinges on the fact that you generally want a copy of the 6K 'factory' make.conf on your system due to all the critical documentation, so from the point of view of someone updating the system it is just as important to separate out the factory-fresh file from the installation specifics). -Matt :> :> -- :> \\ Sometimes you're ahead, \\ Mike Smith :> \\ sometimes you're behind. \\ mike@smith.net.au :> \\ The race is long, and in the \\ msmith@freebsd.org :> \\ end it's only with yourself. \\ msmith@cdrom.com :> :> : : Matthew Dillon Engineering, HiWay Technologies, Inc. & BEST Internet Communications <dillon@backplane.com> (Please include original email in any response)
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199808290231.TAA21504>