The Red Hat Package Manager (RPM), is an open packaging system available for anyone to use, and works on Red Hat Linux as well as other Linux and UNIX systems. Red Hat Software encourages other vendors to take the time to look at RPM and use it for their own products. RPM is distributable under the terms of the GPL.
For the end user, RPM provides many features that make maintaining a system far easier than it has ever been. Installing, uninstalling, and upgrading RPM packages are all one line commands, and all the messy details have been taken care of for you. RPM maintains a database of installed packages and their files, which allows you to perform powerful queries and verification of your system. During upgrades RPM handles configuration files specially, so that you never lose your customizations -- a feature that is impossible with straight .tar.gz files.
For the developer, RPM allows you to take source code for software and package it into source and binary packages for end users. This process is quite simple and is driven from a single file and optional patches that you create. This clear delineation of ``pristine'' sources and your patches and build instructions eases the maintenance of the package as new versions of the software are released.
Please Note:Although it does not hurt to understand the concepts behind RPM, there is an alternative for installing, uninstalling and upgrading packages. For those of you that prefer a graphical interface to the command line, we suggest you use GnoRPM. Please see Chapter 10 for more information.