debtree — package dependency graphs on steroids

Introduction

Example: debconf

  1. Graph from apt-cache (for comparison)
  2. Basic graph (only hard dependencies and conflicts)
  3. Basic graph with Recommends
  4. Basic graph with Recommends and Suggests
  5. Basic graph with Recommends and showing alternatives
  6. Default graph (showing Recommends, alternatives and versions)
  7. Default graph with Suggests
  8. Default graph with Suggests and versioned Conflicts
  9. Default graph (rotated)

Here a dependency that can be satisfied by multiple packages is shown:
debconf Depends: debconf-i18n | debconf-english
In earlier graphs only the first alternative was displayed.

Only a single arrow is used to show the relationship to the alternative packages, but arrows showing dependencies from an alternative package to other packages originate from the individual packages in the set. However, in some cases this may not be 100% visible as dot can originate an arrow end on the line separating two alternatives.

Note the mutual Conflicts between the alternatives.

$ debtree --no-versions debconf


Dependency graph for debconf
Generated .dot file: DOT
Full-sized images: PS | PNG | SVG

Equivalent graph for aptitude