aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEelco Dolstra <eelco.dolstra@logicblox.com>2016-03-21 18:03:36 +0100
committerEelco Dolstra <eelco.dolstra@logicblox.com>2016-03-21 18:03:36 +0100
commitcebc150b7ccf534612d7d8c75200c1717e986566 (patch)
treeb3db195e6f64fbf78e27a4e85777b86c1e00975a
parent1c5f73f529d83543dc776b4de4180309bfd3b4a3 (diff)
nix: Add --store flag
This is a bit user-friendlier than using $NIX_REMOTE.
-rw-r--r--src/nix/command.cc9
-rw-r--r--src/nix/command.hh5
2 files changed, 10 insertions, 4 deletions
diff --git a/src/nix/command.cc b/src/nix/command.cc
index 9c80f4309..0c2103392 100644
--- a/src/nix/command.cc
+++ b/src/nix/command.cc
@@ -57,9 +57,16 @@ bool MultiCommand::processArgs(const Strings & args, bool finish)
return Args::processArgs(args, finish);
}
+StoreCommand::StoreCommand()
+{
+ storeUri = getEnv("NIX_REMOTE");
+
+ mkFlag(0, "store", "store-uri", "URI of the Nix store to use", &storeUri);
+}
+
void StoreCommand::run()
{
- run(openStore());
+ run(openStoreAt(storeUri));
}
}
diff --git a/src/nix/command.hh b/src/nix/command.hh
index 27c3ab7f2..5bf391d93 100644
--- a/src/nix/command.hh
+++ b/src/nix/command.hh
@@ -18,9 +18,8 @@ class Store;
/* A command that require a Nix store. */
struct StoreCommand : virtual Command
{
- bool reserveSpace;
- StoreCommand(bool reserveSpace = true)
- : reserveSpace(reserveSpace) { };
+ std::string storeUri;
+ StoreCommand();
void run() override;
virtual void run(ref<Store>) = 0;
};