- ...
package
- See Appendix on page
for complete details on the contents of a .rpm
file.
- ... package.
- For more information on RPM's
signature checking capability, refer to section on page
.
- ... file.
- We'll discuss MD5 checksums in
greater detail in section on page .
- ...
RPM!
- Are you interested in what exactly ``the right thing'' means?
Turn to page and read section
for more details.
- ... contents.
- We'll get more into
this aspect of RPM in chapter when we discuss
rpm -V, specifically section on page
- ... goose.
- You'll have to do that yourself!
- ... installed.
- For more
information on erasing packages with rpm -e, see chapter
on page .
- ... force
- No pun intended.
- ... files.
- For more information on rpmrc
files, refer to Appendix on page .
- ... out:
- We discuss RPM's query commands in chapter .
- ... disk.
- It's possible to use RPM's
query command to see if a package has pre- or post-install scripts. See
section on page for more
information.
- ...<path>.
- For more information on
rpmrc file entries, see Appendix .
- ...
entry.
- The use of rpmrc files is described in Appendix
- ... entry.
- The use
of rpmrc files is described in Appendix
- ... entries.
- If you are
porting RPM, you'll find more on arch_compat in section
on page .
- ... entries.
- If you are
porting RPM, you'll find more on os_compat in section
on page .
- ...<path>.
- For more information on
rpmrc file entries, see Appendix .
- ...
erase.
- See chapter on page for more
information on rpm -q.
- ... file.1
- Actually, there's a one in chance
a change will go undetected, but for all practical purposes, it's as close
to perfect as we can get.
- ... modified.2
- Or, as some
sticklers for detail may note, it may have been modified, and subsequently
those modifications were undone.
- ... file.3
- For more information on RPM's
use of URLs, please see section on page
.
- ...
force4
- Pun intended.
- ... answer.1
- On most Linux systems,
the file command can be used to obtain similar information. See
Appendix for details on how to add this capability to
your system's file command.
- ... package.2
- Note to software packagers: Choose your build machine
names wisely! A silly or offensive name might be embarrassing...
- ... value.3
- For more information on
rpmrc file entries, please refer to Appendix on
page .
- ...
verification.4
- For more information on package verification, please
see section on page .
- ...
instructions.5
- RPM uses printf to do
--queryformat formatting. Therefore, you can use any of the
printf format modifiers discussed in the printf(3) man
page.
- ...<path>.6
- For more information on
rpmrc file entries, see Appendix .
- ...
too.7
- Did you see this example and say to yourself, ``Hey, they
could've used the -g option to query for that group directly''? If you
did, you've been paying attention. This is a more general way of searching
the RPM database for information: we just happened to search by group in
this example.
- ... provides.1
- Actually, the price is fairly low.
For a completely RPM-based Linux distribution, it would be unusual to have
a database over 5MB in size.
- ... checksum.2
- From a strictly theoretical standpoint,
this is not entirely true. Using the lingo of cryptologists, it is
believed to be ``computationally infeasible'' to find two messages that
produce the same MD5 checksum.
- ...-v:3
- Failure messages will always be displayed.
- ...<path>.4
- For more information on
rpmrc file entries, see Appendix .
- ...%verify5
- See page for details on
%verify
- ... file.1
- For more information
on rpmrc files, rpmrc file entries, and how to use them,
please see Appendix on page .
- ...
offices.2
- Red Hat Software's public key is also available from
their website, at http://www.redhat.com/redhat/contact.html. The
RPM sources also contain the key, and are available from their FTP site at
ftp://ftp.redhat.com/pub/redhat/code/rpm.
- ... blocks.1
- Note that the size displayed by
cpio is the size of the cpio archive and not the package
file.
- ...cdplayer.1
- In reality, this
software is a mercilessly hacked version of cdp, which was written
by Sariel Har-Peled. The software was hacked to provide a simple example
package, and in no way represents the fine work done by Sariel on
cdp.
- ...tar.2
- For more information on the environment variables
used in the build-time scripts, please refer to section
on page .
- ... testing.3
- Like we said, it's a fairy tale!
- ...
build.1
- As we mentioned in chapter , if the
original sources need to be modified, the modifications should be kept as a
separate set of patches. However, during development, it makes more sense
to not generate patches every time a change to the original source is made.
- ... section2
- Or the %clean
section, it doesn't matter -- the end result is the same.
- ... is:3
- It should be noted that the package was built
substantially later than November of 1995!
- ... export.1
- There is also an
``international'' version that may be used in non-US countries. See
Appendix on page .
- ...
option2
- Described in section on page
.
- ... suffice.3
- Keep in mind that this command in a %clean
script can wreak havoc if used with a build root of, say, /.
Section on page discusses
this in more detail.
- ...
1.4
- Or it will be 1, once the package is completely installed.
Remember, the number is based on the number of packages installed
after the current package's install or erase has completed.
- ... tags:5
- Yes, the source tags should
include a URL pointing to the sources.
- ... installed.6
- This is not entirely the case when a relocatable
package is being built. For more information on relocatable packages, see
chapter on page .
- ... those.7
- RPM will automatically exclude file attributes
from verification if it doesn't make sense for the type of file. In our
example, getting the MD5 checksum of a device file is an example of such a
situation.
- ... installed.1
- As long as the requiring
and the providing packages are installed using the same invocation
of RPM, the dependency checking will succeed. For example, the command
rpm -ivh *.rpm will properly check for dependencies, even if the
requiring package ends up being installed before the providing
package.
- ...
installation.1
- Hey, we said it was hypothetical!
- ... path.2
- For more information on the %docdir
directive, please see section on page
.
- ...
does.3
- Install and erase-time scripts have an environment variable,
RPM_INSTALL_PREFIX, that can be used to write scripts that are
able to act appropriately if the package is relocated. See section
on page for more
information.
- ... install.1
- Keep in
mind that the build root can be overridden at build-time using the
--buildroot option or the buildroot rpmrc file
entry. See chapter on page for
more details.
- ... PGP.1
- The list of possible signature types can be found in
the RPM sources, specifically signature.h in RPM's lib
subdirectory.
- ... file.1
- Hey, we said it was a simple
example!
- ...
be.2
- This is the advantage to making up an example. A more
real-world spec file would undoubtedly have more interesting scripts.
- ...
packages.3
- Five, if you count the source package.
- ...
distribute.4
- Yes, the author found out about this hard way!
- ...
hardware.1
- This is a somewhat simplistic view of the matter, as
it's common for incompatibilities to crop up between two different
implementations of the same operating system on different architectures.
- ...
flawlessly.1
- Well, eventually it did!
- ...
build.2
- Of course, if the process of installing the software
changed some necessary config files, they would have to be redone, but in
this case it didn't happen.
- ...
lead.1
- Please refer to section on page
for a discussion on identifying RPM package
files with the file command.
- ...
header.2
- The header is discussed in section
on page .
- ...
architecture.3
- It should be noted that the architecture used
internally by RPM is actually stored in the header. This value is
strictly for file(1)'s use.
- ... entry.1
- The buildostranslate
rpmrc file entry is discussed on page
.
- ... N/A1
- Since there is no modifier to display the
file states in human-readable form, it will be necessary to manually
interpret the flag values, based on the RPMFILE_STATE_xxx
#defines contained in rpmlib.h. This file is part of
the rpm-devel package and is also present in the RPM source
package.
- ... N/A2
- Since there is no modifier to display the
verification flags in human-readable form, it will be necessary to manually
interpret the flag values, based on the RPMVERIFY_xxx
#defines contained in rpmlib.h. This file is part of
the rpm-devel package and is also present in the RPM source
package.
- ... below:1
- An up-to-date copy of the list of
mirror sites is always available on ftp.redhat.com, in the file
MIRRORS.
- ...
good.2
- If your goal is to install RPM on one of these systems, it
might be a good idea to copy the appropriate binary package. That way,
once you have RPM running, you can reinstall it with the --force
option to ensure that RPM is properly installed and configured.
- ... like1
- When we
say that keys are numbers, we aren't lying even though the example
key doesn't look like a number. It has been processed so that it can be
concisely displayed using only printable characters.
- ... them2
- Or at least
that it didn't make it to you unchanged.
- ... version3
- Note
that there are no commercial restrictions regarding PGP in countries other
than the U.S. and Canada.