From 4250b641d8e8edc4cb7def9bc463c7e4ff82e144 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Fri, 11 Aug 2006 20:26:49 +0000 Subject: * `nix-store --gc --print-dead': print the total size of the store objects that would be freed. --- src/nix-store/main.cc | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) (limited to 'src/nix-store/main.cc') diff --git a/src/nix-store/main.cc b/src/nix-store/main.cc index 132516cd9396..fc458a246c4a 100644 --- a/src/nix-store/main.cc +++ b/src/nix-store/main.cc @@ -492,13 +492,17 @@ static void opCheckValidity(Strings opFlags, Strings opArgs) struct PrintFreed { - bool show; + bool show, dryRun; unsigned long long bytesFreed; - PrintFreed(bool _show) : bytesFreed(0), show(_show) { } + PrintFreed(bool show, bool dryRun) + : bytesFreed(0), show(show), dryRun(dryRun) { } ~PrintFreed() { if (show) - cout << format("%d bytes freed (%.2f MiB)\n") + cout << format( + (dryRun + ? "%d bytes would be freed (%.2f MiB)\n" + : "%d bytes freed (%.2f MiB)\n")) % bytesFreed % (bytesFreed / (1024.0 * 1024.0)); } }; @@ -518,7 +522,8 @@ static void opGC(Strings opFlags, Strings opArgs) else throw UsageError(format("bad sub-operation `%1%' in GC") % *i); PathSet result; - PrintFreed freed(action == gcDeleteDead); + PrintFreed freed(action == gcDeleteDead || action == gcReturnDead, + action == gcReturnDead); collectGarbage(action, PathSet(), false, result, freed.bytesFreed); if (action != gcDeleteDead) { @@ -546,7 +551,7 @@ static void opDelete(Strings opFlags, Strings opArgs) pathsToDelete.insert(fixPath(*i)); PathSet dummy; - PrintFreed freed(true); + PrintFreed freed(true, false); collectGarbage(gcDeleteSpecific, pathsToDelete, ignoreLiveness, dummy, freed.bytesFreed); } -- cgit 1.4.1