Payload Delivery Vehicle - README
---------------------------------

Contents
--------
Supporting Documentation
Overview
Downloading
Installing/Building
xmpdvmkpkg
Example Usage
Mailing List
Licensing


Supporting Documentation
------------------------
See the man page (pdv.1) for the most detailed information, if you
have not installed it yet you can probably view it by typing:

	nroff -man pdv.1 | more

The following documents should be of interest:

README      this is the one you are reading now, a good overview of PDV
INSTALL     instructions on building and installing PDV
pdv.1       the man page has the most detailed information about PDV
NEWS        a history of newsworthy PDV related events
ChangeLog   a summary of changes made to the package
pdv.lsm     Linux Software Map entry for PDV
index.html  the home page for PDV
COPYING     the open-source license under which PDV is distributed
todo        a list of some of the things on my plate for the future


Overview
--------
Payload Delivery Vehicle (PDV) is a program that builds an executable
that contains a complete package (e.g. and RPM, System V package or
tar file) and the commands required to install it.  When the
executable is run it will extract the payload (the package) and then
execute another command (such as rpm -i, pkgadd -d etc.).  The big
advantage to this is that a developer can hand a user a single file to
be executed - the end user does not need to know how to extract the
package or get it installed.

Note that the file that is created is a binary executable that is only
useful for matching platforms. This is not generally a limitation since
the binaries distributed as a package usually target a particular
platform.

The pdv homepage is at:

	http://pdv.sourceforge.net

SourceForge is an awesome project hosting effort sponsored by VA Linux,
I strongly suggest you check it out if you have projects that need a
home on the Internet.  These guys provide Web, shell, FTP, mailing lists
bug tracking, CVS...everything - and they do it well.  You even get your
own virtual web/ftp server for FREE!  Take a look at what they have at:

	http://sourceforge.net


Downloading
-----------
PDV is available from Source Forge and the metalab archive (formerly 
Sunsite) via FTP.

http://download.sourceforge.net/pdv/pdv-1.4.tar.gz
ftp://metalab.unc.edu/pub/Linux/utils/compress/pdv-1.4.tar.gz
ftp://pdv.sourceforge.net/pub/pdv

Some binaries have been built and can also be downloaded from:

ftp://pdv.sourceforge.net/pub/pdv

If you need a binary please let me know and I will be happy to
build you one (see the list of supported platforms).


Installing/Building
-------------------
For instructions on building/installing please refer to the
file named INSTALL (PDV uses GNU configure).

There are some binaries available on sourceforge 
(see Downloading), otherwise the sources will build easily.

Thanks to the powerful GNU configuration and build utilities
you should be able to use PDV on just about any UNIXish
platform.  If you have platform specific problems please write
me (gwiley@ieee.org) and I will do what I can to address them.
If you successfully overcome porting problems I would like to
know what you did so that I can incorporate the changes in
the distribution.

The following systems have sucessfully built/executed pdv:

	Solaris 8 (sparc)
		gcc 2.95
		gnu make

	Solaris 2.6 (sparc)
		gcc 2.95
		gnu make

	Linux (Red Hat 6.0)
		egcs 2.91


xmpdvmkpkg
----------
For instructions on building/installing please refer to the
file named INSTALL.  Note that the X11/Motif interface is
tailored to Solaris and may not be as cooperative on Linux
or other Unixes.  The command line version can do anything
that the X11 interface can - its just a little more tricky.

You may need to add the path to the X11/Motif libraries to
your LD_LIBRARY_PATH environment variable, depending on
your system you may do something like this:

LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/dt/lib:/usr/openwin/lib
export LD_LIBRARY_PATH


Example Usage
-------------

A common tarball
----------------
Suppose you have put together some software in a tarball, lets call
it Mypkg and assume everything is contained in mypkg.tar.Z.  
Part of the archive is a script named "Install" that will actually
perform the installation of your software. All of the files in your
tarball are rooted in "mypkg/". 

Create the self-extracting, installing file named "mypkg.bin":

	# pdvmkpkg -C -T -e mypkg/Install -c mypkg.bin mypkg.tar.Z 

Once a user gets the file he will issue the following command:

	# ./mypkg.bin

This will result in the tarball being uncompressed, untarred
and your install script will be executed.

Solaris Package
---------------
Create the Solaris package (as a single file) named "myprog_local.pkg":

	# pdvmkpkg -e "pkgadd -d ./myprog_local.pkg" -c mypkg.bin myprog_local.pkg

Once a user gets the file he will issue the following command:

	# ./mypkg.bin

This will result in the  package being extracted and added to the system,
any prompts delivered by the package utilities will be visible to the user.


Mailing List
------------
There is a pdv mailing list that covers everything related to this
project, to subscribe visit:

	http://lists.sourceforge.net/mailman/listinfo/pdv-users

or send email to:

	pdv-users-request@lists.sourceforge.net

with the word subscribe as the subject or the body.


Licensing
---------
For licensing information please refer to COPYING (the MIT license,
NO RESTRICTIONS on use, modifications, etc.).

If you have a bug report, feature request etc. I can be reached at :

	gwiley@ieee.org

---
$Id: README,v 1.13 2001/09/09 19:59:04 gwiley Exp $
