guix gc: Add '--list-roots'.

* guix/scripts/gc.scm (show-help, %options): Add '--list-roots'.
(guix-gc)[list-roots]: New procedure.
Handle '--list-roots'.
* tests/guix-gc.sh: Test it.
* doc/guix.texi (Invoking guix gc): Document it.
This commit is contained in:
Ludovic Courtès 2019-04-06 22:29:18 +02:00
parent 72eda0624b
commit bacf980c76
No known key found for this signature in database
GPG key ID: 090B11993D9AEBB5
3 changed files with 29 additions and 4 deletions

View file

@ -1,5 +1,5 @@
# GNU Guix --- Functional package management for GNU
# Copyright © 2013, 2015, 2017, 2018 Ludovic Courtès <ludo@gnu.org>
# Copyright © 2013, 2015, 2017, 2018, 2019 Ludovic Courtès <ludo@gnu.org>
#
# This file is part of GNU Guix.
#
@ -34,7 +34,7 @@ unset drv
unset out
# For some operations, passing extra arguments is an error.
for option in "" "-C 500M" "--verify" "--optimize"
for option in "" "-C 500M" "--verify" "--optimize" "--list-roots"
do
if guix gc $option whatever; then false; else true; fi
done
@ -69,6 +69,8 @@ guix gc --delete "$drv"
drv="`guix build --root=guix-gc-root lsh -d`"
test -f "$drv" && test -L guix-gc-root
guix gc --list-roots | grep "$PWD/guix-gc-root"
guix gc --list-live | grep "$drv"
if guix gc --delete "$drv";
then false; else true; fi