III. Appendixes

Table of Contents
A. Format of the RPM File
A.1. RPM File Naming Convention
A.2. RPM File Format
A.2.1. Parts of an RPM File
A.2.2. The Lead
A.2.3. Wanted: A New RPM Data Structure
A.2.4. The Signature
A.2.5. The Header
A.2.6. The Archive
A.3. Tools For Studying RPM Files
A.4. Identifying RPM files with the file(1) command
B. The rpmrc File
B.1. Using the --showrc Option
B.2. Different Places an rpmrc File Resides
B.2.1. /usr/lib/rpmrc
B.2.2. /etc/rpmrc
B.2.3. .rpmrc in the user's login directory
B.2.4. File indicated by the --rcfile option
B.3. rpmrc File Syntax
B.4. rpmrc File Entries
B.4.1. arch_canon
B.4.2. os_canon
B.4.3. buildarchtranslate
B.4.4. buildostranslate
B.4.5. arch_compat
B.4.6. os_compat
B.4.7. builddir
B.4.8. buildroot
B.4.9. cpiobin
B.4.10. dbpath
B.4.11. defaultdocdir
B.4.12. distribution
B.4.13. excludedocs
B.4.14. ftpport
B.4.15. ftpproxy
B.4.16. messagelevel
B.4.17. netsharedpath
B.4.18. optflags
B.4.19. packager
B.4.20. pgp_name
B.4.21. pgp_path
B.4.22. require_distribution
B.4.23. require_icon
B.4.24. require_vendor
B.4.25. rpmdir
B.4.26. signature
B.4.27. sourcedir
B.4.28. specdir
B.4.29. srcrpmdir
B.4.30. timecheck
B.4.31. tmppath
B.4.32. topdir
B.4.33. vendor
C. Concise RPM Command Reference
C.1. Global Options
C.2. Informational Options
C.3. Query Mode
C.3.1. Package Specification Options To Query Mode
C.3.2. Information Selection Options To Query Mode
C.4. Verify Mode
C.4.1. Options To Verify Mode
C.5. Install Mode
C.5.1. Options To Install Mode
C.6. Upgrade Mode
C.6.1. Options To Upgrade Mode
C.7. Erase Mode
C.7.1. Options To Erase Mode
C.8. Build Mode
C.8.1. Build Mode Stages
C.8.2. Options To Build Mode
C.9. Rebuild Mode
C.9.1. Options To Rebuild Mode
C.10. Recompile Mode
C.10.1. Options To Recompile Mode
C.11. Resign Mode
C.11.1. Options To Resign Mode
C.12. Add Signature Mode
C.12.1. Options To Add Signature Mode
C.13. Check Signature Mode
C.13.1. Options To Check Signature Mode
C.14. Initalize Database Mode
C.14.1. Options to Initalize database Mode
C.15. Rebuild Database Mode
C.15.1. Options to Rebuild Database Mode
D. Available Tags For --queryformat
D.1. List of --queryformat Tags
D.1.1. The NAME Tag
D.1.2. The VERSION Tag
D.1.3. The RELEASE Tag
D.1.4. The SERIAL Tag
D.1.5. The SUMMARY Tag
D.1.6. The DESCRIPTION Tag
D.1.7. The BUILDTIME Tag
D.1.8. The BUILDHOST Tag
D.1.9. The INSTALLTIME Tag
D.1.10. The SIZE Tag
D.1.11. The DISTRIBUTION Tag
D.1.12. The VENDOR Tag
D.1.13. The GIF Tag
D.1.14. The XPM Tag
D.1.15. The COPYRIGHT Tag
D.1.16. The PACKAGER Tag
D.1.17. The GROUP Tag
D.1.18. The CHANGELOG Tag
D.1.19. The SOURCE Tag
D.1.20. The PATCH Tag
D.1.21. The URL Tag
D.1.22. The OS Tag
D.1.23. The ARCH Tag
D.1.24. The PREIN Tag
D.1.25. The POSTIN Tag
D.1.26. The PREUN Tag
D.1.27. The POSTUN Tag
D.1.28. The FILENAMES Tag
D.1.29. The FILESIZES Tag
D.1.30. The FILESTATES Tag
D.1.31. The FILEMODES Tag
D.1.32. The FILEUIDS Tag
D.1.33. The FILEGIDS Tag
D.1.34. The FILERDEVS Tag
D.1.35. The FILEMTIMES Tag
D.1.36. The FILEMD5S Tag
D.1.37. The FILELINKTOS Tag
D.1.38. The FILEFLAGS Tag
D.1.39. The ROOT Tag
D.1.40. The FILEUSERNAME Tag
D.1.41. The FILEGROUPNAME Tag
D.1.42. The EXCLUDE Tag
D.1.43. The EXCLUSIVE Tag
D.1.44. The ICON Tag
D.1.45. The SOURCERPM Tag
D.1.46. The FILEVERIFYFLAGS Tag
D.1.47. The ARCHIVESIZE Tag
D.1.48. The PROVIDES Tag
D.1.49. The REQUIREFLAGS Tag
D.1.50. The REQUIRENAME Tag
D.1.51. The REQUIREVERSION Tag
D.1.52. The NOSOURCE Tag
D.1.53. The NOPATCH Tag
D.1.54. The CONFLICTFLAGS Tag
D.1.55. The CONFLICTNAME Tag
D.1.56. The CONFLICTVERSION Tag
D.1.57. The DEFAULTPREFIX Tag
D.1.58. The BUILDROOT Tag
D.1.59. The INSTALLPREFIX Tag
D.1.60. The EXCLUDEARCH Tag
D.1.61. The EXCLUDEOS Tag
D.1.62. The EXCLUSIVEARCH Tag
D.1.63. The EXCLUSIVEOS Tag
D.1.64. The AUTOREQPROV Tag
D.1.65. The RPMVERSION Tag
D.1.66. The TRIGGERSCRIPTS Tag
D.1.67. The TRIGGERNAME Tag
D.1.68. The TRIGGERVERSION Tag
D.1.69. The TRIGGERFLAGS Tag
D.1.70. The TRIGGERINDEX Tag
D.1.71. The VERIFYSCRIPT Tag
I. Red Hat Linux
rpm -- RPM Package Manager
E. Concise Spec File Reference
E.1. Comments
E.2. The Preamble
E.2.1. Package Naming Tags
E.2.2. Descriptive Tags
E.2.3. Dependency Tags
E.2.4. Architecture- and Operating System-Specific Tags
E.2.5. Directory-related Tags
E.2.6. Source and Patch Tags
E.3. Scriptlets
E.3.1. Build Scriptlets
E.3.2. Install/Erase Scriptlets
E.3.3. %verifyscript Directive
E.4. Macros
E.4.1. The %setup Macro
E.4.2. The %patch Macro
E.5. The %files List
E.6. Directives For the %files list
E.6.1. File-related Directives
E.6.2. Directory-related Directives
E.7. %package Directive
E.7.1. The %package -n Option
E.8. Conditionals
E.8.1. The %ifarch Conditional
E.8.2. The %ifnarch Conditional
E.8.3. The %ifos Conditional
E.8.4. The %ifnos Conditional
E.8.5. The %else Conditional
E.8.6. The %endif Conditional
F. RPM-related Resources
F.1. Where to Get RPM
F.1.1. FTP Sites
F.1.2. What Do I Need?
F.2. Where to Talk About RPM
F.2.1. The rpm-list Mailing List
F.2.2. The redhat-list Mailing List
F.2.3. The redhat-digest Mailing List
F.3. RPM On the World Wide Web
F.4. RPM's License
F.5. GNU GENERAL PUBLIC LICENSE
F.5.1. Preamble
F.5.2. GNU GENERAL PUBLIC LICENSE
F.5.3. How to Apply These Terms to Your New Programs
G. An Introduction to PGP
G.1. PGP — Privacy for Regular People
G.1.1. Keys your Locksmith Wouldn't Understand
G.1.2. Are RPM Packages Encrypted?
G.1.3. Do All RPM Packages Have Digital Signatures?
G.1.4. So Much to Cover, So Little Time
G.2. Installing PGP for RPM's Use
G.2.1. Obtaining PGP
G.2.2. Building PGP
G.2.3. Ready to Go!