make upgrade overwrites /etc/mail/mailer.conf

Joerg Sonnenberger joerg at britannica.bec.de
Wed Feb 2 11:02:20 PST 2005


On Wed, Feb 02, 2005 at 10:37:08AM -0800, Matthew Dillon wrote:
> 
> :for legacy reasons (scripts etc) better make it /etc/services=20
> :and /etc/services.local. or just make it plain simple:
> :
> :/etc/default/services
> :/etc/services.local
> :
> :both get merged into /etc/services by /etc/rc.d/services or whatever
> :
> :cheers
> :  simon
> 
>     Yuch.  i'd rather the occassional port break then do that.  The
>     /etc/defaults/ mechanism is an excellent abstraction, I do not want
>     to reinvent the wheel multiple times.

OK, instead of reinventing the wheel for the various config files,
why can't we do a full three way merge?
installworld installs into /var/db/etc/current. If the file doesn't
exist in /etc, it goes there and into /var/db/etc/base. We provide
a shell script which does a three way diff between /var/db/etc/base
vs. /etc and /var/db/etc/base vs. /var/db/etc/current. If the user
accepts / rejects the update, the entry from current is copied to
base.

Yes, this means some work for the initial time to set it up,
but in the medium term makes handling e.g. of users and user stuff
much easier, because there is only one place to add the necessary
magic for updates -- the script.

Joerg

> 
> 					-Matt





More information about the Bugs mailing list