aboutsummaryrefslogtreecommitdiff
path: root/doc/manual/src/command-ref/nix-collect-garbage.md
diff options
context:
space:
mode:
Diffstat (limited to 'doc/manual/src/command-ref/nix-collect-garbage.md')
-rw-r--r--doc/manual/src/command-ref/nix-collect-garbage.md46
1 files changed, 46 insertions, 0 deletions
diff --git a/doc/manual/src/command-ref/nix-collect-garbage.md b/doc/manual/src/command-ref/nix-collect-garbage.md
new file mode 100644
index 000000000..7946dc875
--- /dev/null
+++ b/doc/manual/src/command-ref/nix-collect-garbage.md
@@ -0,0 +1,46 @@
+nix-collect-garbage
+
+1
+
+Nix
+
+nix-collect-garbage
+
+delete unreachable store paths
+
+nix-collect-garbage
+
+\--delete-old
+
+\-d
+
+\--delete-older-than
+
+period
+
+\--max-freed
+
+bytes
+
+\--dry-run
+
+# Description
+
+The command `nix-collect-garbage` is mostly an alias of [`nix-store
+--gc`](#rsec-nix-store-gc), that is, it deletes all unreachable paths in
+the Nix store to clean up your system. However, it provides two
+additional options: `-d` (`--delete-old`), which deletes all old
+generations of all profiles in `/nix/var/nix/profiles` by invoking
+`nix-env --delete-generations old` on all profiles (of course, this
+makes rollbacks to previous configurations impossible); and
+`--delete-older-than` period, where period is a value such as `30d`,
+which deletes all generations older than the specified number of days in
+all profiles in `/nix/var/nix/profiles` (except for the generations that
+were active at that point in time).
+
+# Example
+
+To delete from the Nix store everything that is not used by the current
+generations of each profile, do
+
+ $ nix-collect-garbage -d