lix/src/nix/optimise-store.cc
Eelco Dolstra 23b8b7e096
nix optimise-store: Add
This replaces "nix-store --optimise". Main difference is that it has a
progress indicator.
2017-08-16 20:56:03 +02:00

42 lines
723 B
C++

#include "command.hh"
#include "shared.hh"
#include "store-api.hh"
#include <atomic>
using namespace nix;
struct CmdOptimiseStore : StoreCommand
{
CmdOptimiseStore()
{
}
std::string name() override
{
return "optimise-store";
}
std::string description() override
{
return "replace identical files in the store by hard links";
}
Examples examples() override
{
return {
Example{
"To optimise the Nix store:",
"nix optimise-store"
},
};
}
void run(ref<Store> store) override
{
store->optimiseStore();
}
};
static RegisterCommand r1(make_ref<CmdOptimiseStore>());