summaryrefslogtreecommitdiff
path: root/doc
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2017-07-20 15:18:06 +0200
committerLudovic Courtès <ludo@gnu.org>2017-07-20 15:29:15 +0200
commit457103b90bba42d4eaf508031044548c3ba95723 (patch)
tree5ff7bec3310b1da8b6b9e42f8d64fc17ecdda5f4 /doc
parent8582e03ae59ff51d2aacc24da611f769484dd4cb (diff)
doc: Discuss when to run a GC.
* doc/guix.texi (Invoking guix gc): Add a paragraph on when to run a GC.
Diffstat (limited to 'doc')
-rw-r--r--doc/guix.texi16
1 files changed, 16 insertions, 0 deletions
diff --git a/doc/guix.texi b/doc/guix.texi
index ecf9617725..dbdd9b5ff5 100644
--- a/doc/guix.texi
+++ b/doc/guix.texi
@@ -2315,6 +2315,22 @@ package builds referenced by those generations can be reclaimed. This
is achieved by running @code{guix package --delete-generations}
(@pxref{Invoking guix package}).
+Our recommendation is to run a garbage collection periodically, or when
+you are short on disk space. For instance, to guarantee that at least
+5@tie{}GB are available on your disk, simply run:
+
+@example
+guix gc -F 5G
+@end example
+
+It is perfectly safe to run as a non-interactive periodic job
+(@pxref{Scheduled Job Execution}, for how to set up such a job on
+GuixSD). Running @command{guix gc} with no arguments will collect as
+much garbage as it can, but that is often inconvenient: you may find
+yourself having to rebuild or re-download software that is ``dead'' from
+the GC viewpoint but that is necessary to build other pieces of
+software---e.g., the compiler tool chain.
+
The @command{guix gc} command has three modes of operation: it can be
used to garbage-collect any dead files (the default), to delete specific
files (the @code{--delete} option), to print garbage-collector