lix/doc/manual/rl-next/fix-gc-dry-run.md
Quantum Jump 6e0ca02425 Fix dry-run flag for nix-collect-garbage
`nix-collect-garbage --dry-run` previously elided the entire garbage
collection check, meaning that it would just exit the script without
printing anything.

This change makes the dry run flag instead set the GC action to
`gcReturnDead` rather than `gcDeleteDead`, and then continue with the
script. So if you set `--dry-run`, it will print the paths it *would*
have garbage collected, but not actually delete them.

I filed a bug for this: #432 but then realised I could give fixing it a go myself.

Change-Id: I062dbf1a80bbab192b5fd0b3a453a0b555ad16f2
2024-07-09 13:55:05 +00:00

621 B

synopsis issues cls category credits
Fix nix-collect-garbage --dry-run
fj#432
1566
Fixes
quantumjump

nix-collect-garbage --dry-run did not previously give any output - it simply exited without even checking to see what paths would be deleted.

$ nix-collect-garbage --dry-run
$

We updated the behaviour of the flag such that instead it prints out how many paths it would delete, but doesn't actually delete them.

$ nix-collect-garbage --dry-run
finding garbage collector roots...
determining live/dead paths...
...
<nix store paths>
...
2670 store paths deleted, 0.00MiB freed
$