diff options
author | Ludovic Courtès <ludo@gnu.org> | 2019-03-23 15:04:44 +0100 |
---|---|---|
committer | Ludovic Courtès <ludo@gnu.org> | 2019-03-23 18:15:36 +0100 |
commit | 2b81eac01e5828c6fce61b3cafc0f78e7a0ab891 (patch) | |
tree | 0a25351bdc4ea5cde0ae75eaca065056927bf70a /doc/guix.texi | |
parent | e190d12eae25fff8ab818a94c8fd5302bdc797dd (diff) | |
download | patches-2b81eac01e5828c6fce61b3cafc0f78e7a0ab891.tar patches-2b81eac01e5828c6fce61b3cafc0f78e7a0ab891.tar.gz |
graph: Add the 'reverse-bag' graph.
Suggested by Julien Lepiller.
* guix/scripts/graph.scm (%reverse-bag-node-type): New variable.
(%node-types): Add it.
* tests/graph.scm ("reverse bag DAG"): New test.
* doc/guix.texi (Invoking guix graph): Document it.
Diffstat (limited to 'doc/guix.texi')
-rw-r--r-- | doc/guix.texi | 18 |
1 files changed, 17 insertions, 1 deletions
diff --git a/doc/guix.texi b/doc/guix.texi index 94d7a29bdf..8fa714ee54 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -9290,7 +9290,9 @@ This shows the @emph{reverse} DAG of packages. For example: guix graph --type=reverse-package ocaml @end example -...@: yields the graph of packages that depend on OCaml. +...@: yields the graph of packages that @emph{explicitly} depend on OCaml (if +you are also interested in cases where OCaml is an implicit dependency, see +@code{reverse-bag} below.) Note that for core packages this can yield huge graphs. If all you want is to know the number of packages that depend on a given package, use @@ -9324,6 +9326,20 @@ dependencies. @item bag-with-origins Similar to @code{bag}, but also showing origins and their dependencies. +@item reverse-bag +This shows the @emph{reverse} DAG of packages. Unlike @code{reverse-package}, +it also takes implicit dependencies into account. For example: + +@example +guix graph -t reverse-bag dune +@end example + +@noindent +...@: yields the graph of all packages that depend on Dune, directly or +indirectly. Since Dune is an @emph{implicit} dependency of many packages +@i{via} @code{dune-build-system}, this shows a large number of packages, +whereas @code{reverse-package} would show very few if any. + @item derivation This is the most detailed representation: It shows the DAG of derivations (@pxref{Derivations}) and plain store items. Compared to |