Nomenclature and concepts

Deb

Deb files have a "control" file with a set of fields that contain the dependency data:

Each field list a set of packages separated with comma (","). Where a dependency is either one of more packages, each option is separated with a bar ("|").

Depends: libc6 (>= 2.2.1), exim | mail-transport-agent

Virtual packages

In addition Deb support a "virtual package" concept where more than one package can "implement" a package name. This give the user an option to choose an implementation when a package installed.

For example, both "openjdk", "sun-jdk" and "gcj" may packages may Provide "java".

Replacement

Deb also has a "Replaces" flag with two purposes:

References

Rpm

Reference: http://rpm5.org/docs/rpm-guide.html#ch-dependencies

Possible mappings

UMP

Dependency

Recommends

Suggests

Pre-Depends

Provides

Conflict With

Deb

Depends

Recommends

Suggests

Pre-Depends

Provides

Rpm

Requires

 

 

 

%provides

%conflicts

provides defines a virtual package which is provided by the package being built
requires identifies a package that is required to be installed for the package being built to operate correctly
conflicts