[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

RE: potato-update and symbolic links in /etc



   Dear Mr. Bouwman:

   You wrote:

> During my slink-life I have developed the habit
> to make symbolic links of all those configuration files in /etc
> and its subdirectories  that I have changed myself.
> The real files are in /local/etc .
> This system has advantages and drawbacks.
> The big question now is what happens to this structure when
> during the update to potato some of these symlinked configuration
> files have to be updated as well ?

   I presume your symlinks get moved to foo.rc.dpkg-old, and the
new file is installed as foo.rc (unless the package does something
fancy in the way of parsing and propagating mods).  Not too
dreadful, but, IMHO, suboptimal.

   I've found RCS to be the answer.  It allows me to keep all my
back versions easily accessible, yet completely out of dpkg's
way---no changes it makes touch my backup info, but the files are
exactly how and where it expects.

   Anytime I want to know what I've done, I ask for the
differences between the last release version (that I used) and
the current.  To know what dpkg is proposing, toss foo.rc.dpkg-new
into the RCS archive, and compare *that* against the last-used
release version, and decide whether it's easier to re-do the mods,
or blow off the new version.  It even keeps track of when and (if
I write log entries) why I made the changes.  (To top it off, if
you use the One True Editor <*cough*>emacs</*cough*> it's
effectively painless. :-)

   To adopt this mechanism, just:

	# mkdir RCS
	# ci -l foo.rc
	<edit foo.rc>
	# ci -l foo.rc
	<add log entry>
	#

For the full effect, read up on the commands ci, co, rcsdiff, and
rlog.  You could even put the RCS storage into effect with your
current files, replacing the symlinks, and _then_ upgrade.


			Best wishes,

					Max Hyre



Reply to: