Subject: Re: Package paths: consensus?
To: None <firstname.lastname@example.org>
From: Greg A. Woods <email@example.com>
Date: 01/09/1999 21:50:41
> Curt Sampson sez
> * Woah! The package system would *never* overwrite anything in /etc.
> * Period. That's a hand upgrade from the diffs of the old and new
> * example configs in /usr/pkg/share/examples.
Hold on a minute is right!
At the moment the pkg system would never overwrite anything, period,
unless told to, because it doesn't support upgrades, right?
However if it were to support upgrades then it must not blindly ignore
config files. It's entirely possible that the new binaries will either
not work properly, or even be dangerous in some way if used with the old
config files. The pkg system should endeavour to do "safe" upgrades of
config files (and even safe upgrades of spool directories). Things like
the pre and post install scripts should be considered as ways of
implementing such features.
Users who use the pkg system for convenience and as a source of
knowledge and experience are not normally going to be capable of doing
manual upgrades of their own config files. Period. They might be able
to configure a package from scratch by following explicit instructions,
or be capable of pushing the right buttons when using a config tool, but
we cannot assume they'll know how to use diff et al to upgrade their
config files, especially when "config file" sometimes implies "script".
This also implies that when a package is installed it must either
over-write any existing files (config files or not), or flat out refuse
to install. It also implies that there must be an option to delete
*all* files when a package is deleted.
If the pkg system is going to ignore this issue then it must not purport
to do upgrades, it must force complete package removal (perhaps with
renamed config files) and re-install, and it must force the user to
re-configure the package. No assumptions should be made without
explicitly providing a way for the package to behave intelligently on
Greg A. Woods
+1 416 218-0098 VE3TCP <firstname.lastname@example.org> <robohack!woods>
Planix, Inc. <email@example.com>; Secrets of the Weird <firstname.lastname@example.org>