~ruther/guix-local

8e59fdd53bbc3eba75328e1e1a329291fcedc0bc — Ludovic Courtès 12 years ago 3f1e693
guix gc: Add `--requisites'.

* guix/scripts/gc.scm (show-help, %options): Add `--requisites'.
  (guix-gc): Handle it.
* doc/guix.texi (Invoking guix gc): Document `--requisites'.
* NEWS: Update.
3 files changed, 19 insertions(+), 0 deletions(-)

M NEWS
M doc/guix.texi
M guix/scripts/gc.scm
M NEWS => NEWS +4 -0
@@ 32,6 32,10 @@ See the manual for details.
This option instructs to fall back to local builds when the substituter fails
to download a substitute.

*** New ‘--requisites’ option for “guix gc”

See the manual for details.

** Bugs fixed
*** “guix --help” now works when using Guile 2.0.5
*** Binary substituter multi-threading and pipe issues fixed

M doc/guix.texi => doc/guix.texi +7 -0
@@ 722,6 722,13 @@ In addition, the references among existing store files can be queried:
List the references (respectively, the referrers) of store files given
as arguments.

@item --requisites
@itemx -R
List the requisites of the store files passed as arguments.  Requisites
include the store files themselves, their references, and the references
of these, recursively.  In other words, the returned list is the
@dfn{transitive closure} of the store files.

@end table



M guix/scripts/gc.scm => guix/scripts/gc.scm +8 -0
@@ 51,6 51,8 @@ Invoke the garbage collector.\n"))
  (display (_ "
      --references       list the references of PATHS"))
  (display (_ "
  -R, --requisites       list the requisites of PATHS"))
  (display (_ "
      --referrers        list the referrers of PATHS"))
  (newline)
  (display (_ "


@@ 128,6 130,10 @@ interpreted."
                (lambda (opt name arg result)
                  (alist-cons 'action 'list-references
                              (alist-delete 'action result))))
        (option '(#\R "requisites") #f #f
                (lambda (opt name arg result)
                  (alist-cons 'action 'list-requisites
                              (alist-delete 'action result))))
        (option '("referrers") #f #f
                (lambda (opt name arg result)
                  (alist-cons 'action 'list-referrers


@@ 189,6 195,8 @@ interpreted."
         (delete-paths store paths))
        ((list-references)
         (list-relatives references))
        ((list-requisites)
         (list-relatives requisites))
        ((list-referrers)
         (list-relatives referrers))
        ((list-dead)