From b824a1daeefd1611c8d84432dc0b2b38f24bbbfd Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Tue, 20 Feb 2007 23:17:20 +0000 Subject: * Start of `nix-store --export' operation for serialising a store path. This is like `nix-store --dump', only it also dumps the meta-information of the store path (references, deriver). Will add a `--sign' flag later to add a cryptographic signature, which we will use for exchanging store paths between build farm machines in a secure manner. --- src/nix-store/nix-store.cc | 11 +++++++++++ 1 file changed, 11 insertions(+) (limited to 'src/nix-store') diff --git a/src/nix-store/nix-store.cc b/src/nix-store/nix-store.cc index f0b3f5b615f3..821124324f47 100644 --- a/src/nix-store/nix-store.cc +++ b/src/nix-store/nix-store.cc @@ -638,6 +638,15 @@ static void opRestore(Strings opFlags, Strings opArgs) } +static void opExport(Strings opFlags, Strings opArgs) +{ + if (!opFlags.empty()) throw UsageError("unknown flag"); + + FdSink sink(STDOUT_FILENO); + store->exportPath(*opArgs.begin(), false, sink); +} + + /* Initialise the Nix databases. */ static void opInit(Strings opFlags, Strings opArgs) { @@ -707,6 +716,8 @@ void run(Strings args) op = opDump; else if (arg == "--restore") op = opRestore; + else if (arg == "--export") + op = opExport; else if (arg == "--init") op = opInit; else if (arg == "--verify") -- cgit 1.4.1