[Top][All Lists]

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

[Bug-tar] Advice/Extensions for use of gnu tar in installer

From: Ken Greenebaum
Subject: [Bug-tar] Advice/Extensions for use of gnu tar in installer
Date: Tue, 8 Feb 2005 22:09:23 -0800

I have been developing a series of books on audio technologies called Audio
Anecdotes (http://www.amazon.com/exec/obidos/tg/detail/-/1568811047) that
include open source example code in a cross platform gnu-autotools based
build environment.  The installation is based on tarballs which are
constructed by a perlscript that is guided by manifest files.  The installer
simply un-tars the tarballs that are appropriate for the given platform
(sources, and media are separated from the executables for different

This approach works nicely but has a number of limitations:

1) It is awkward to add a file to a tar archive such that it will untar to a
different location (currently we have a horrendous hack where we build a
temporary tree placing each file where it eventually need to be installed
then tar this tree)

2) Extracting a tar for installation doesn't allow for too sophisticated of
an uninstaller (uninstall looks like rm -rf).  I would like to instead
generate a log of each file installed such that I can later use this log for

3) tar's options for dealing with replacing existing files are simplistic.
I really want tar to move the existing file out of the way (perhaps via a
re-name) then to log this occurrence such that the uninstaller may reverse

I have downloaded 1.15.1 and wanted to consult the experts before I
commenced hacking.  Please let me know if there might be a better way to
accomplish my goals, if any of my feature requests might be of general
interest and could be added to the mainline gnu tar release, or if similar
functionality might already be available.

Thanks for any help.

Oh, by the way, we could use all the help we can get completing the CD for
the third book if anyone would like to participate!

-Ken Greenebaum

reply via email to

[Prev in Thread] Current Thread [Next in Thread]