Documentation on "classic" commands with many sub-commands are notoriously hard to discover due to lack of overview and anchor links. Additionally the information on common options and environment variables is not accessible offline in man pages, and therefore often overlooked by readers. With this change, each sub-command of nix-store and nix-env gets its own page in the manual (listed in the table of contents), and each own man page. Also, man pages for each subcommand now (again) list common options and environment variables. While this makes each page quite long and some common parameters don't apply, this should still make it easier to navigate as that additional information was not accessible on the command line at all. It is now possible to run 'nix-store --<subcommand> --help` to display help pages for the given subcommand. Co-authored-by: Valentin Gagarin <valentin.gagarin@tweag.io>
1.1 KiB
Name
nix-collect-garbage
- delete unreachable store paths
Synopsis
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
, 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).
{{#include ./opt-common.md}}
{{#include ./env-common.md}}
Example
To delete from the Nix store everything that is not used by the current generations of each profile, do
$ nix-collect-garbage -d