On Mon, 2006-06-12 at 09:24 +0200, Eric Spakman wrote:
> Hello Cedric,

> >
> > What about a 3-way diff tool during upgrade process ? We would then
> > have a really upgradable system.
> >
> That would be nice, but could be implemented afterwards. The question is
> if it's really needed. If the changes between package versions/revisions
> are compatible, it's just a matter of replacing the package. If the
> changes are incompatible, the question is if a 3-way diff tool works.

Have you seen etc-update in gentoo or mergemaster in freebsd? Can be
nice to have a look so you can get som inspiration ;)

To make it really simple:

foo.conf is the user modified conf file. During upgrade, foo.conf.new is
created with the new config file. Service will run since the package
upgrader have kept the old config.

Now, run a utility that:

diff -u foo.conf foo.conf.new

and ask: would you like to: 
 1) keep the old config.
 2) replace old with new.
 3) do nothing.

conf=foo.conf
case $choice in
        1) rm $conf.new;;
        2) mv $conf.new $conf;;
esac

That would only require diff. (and a diff applet is already in busybox
svn)

--
Natanael Copa




_______________________________________________
leaf-devel mailing list
leaf-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/leaf-devel

Reply via email to