aboutsummaryrefslogtreecommitdiff
path: root/src/nix/flake.cc
diff options
context:
space:
mode:
authorEelco Dolstra <edolstra@gmail.com>2019-05-22 13:46:07 +0200
committerEelco Dolstra <edolstra@gmail.com>2019-05-22 14:04:18 +0200
commit70136a9bf46bcf5a97b63f356fefd8adabf4c23b (patch)
treed3866589dacd3c816cf16fc4e1fbdbb606e9ad42 /src/nix/flake.cc
parentbc0fb109a946a1c3e125a5148280a0caba2d2c9a (diff)
Move flake-related flags into a separate class
Also, rename --dont-save-lock-file to --no-save-lock-file and change noRegistries to useRegistries.
Diffstat (limited to 'src/nix/flake.cc')
-rw-r--r--src/nix/flake.cc18
1 files changed, 12 insertions, 6 deletions
diff --git a/src/nix/flake.cc b/src/nix/flake.cc
index bc2f1cb5b..b4f0f67be 100644
--- a/src/nix/flake.cc
+++ b/src/nix/flake.cc
@@ -10,7 +10,7 @@
using namespace nix;
-class FlakeCommand : virtual Args, public EvalCommand
+class FlakeCommand : virtual Args, public EvalCommand, public MixFlakeOptions
{
std::string flakeUri = ".";
@@ -32,7 +32,12 @@ public:
Flake getFlake()
{
auto evalState = getEvalState();
- return nix::getFlake(*evalState, getFlakeRef(), true);
+ return nix::getFlake(*evalState, getFlakeRef(), useRegistries);
+ }
+
+ ResolvedFlake resolveFlake()
+ {
+ return nix::resolveFlake(*getEvalState(), getFlakeRef(), getLockFileMode());
}
};
@@ -119,6 +124,7 @@ void printNonFlakeInfo(NonFlake & nonFlake, bool json) {
}
}
+// FIXME: merge info CmdFlakeInfo?
struct CmdFlakeDeps : FlakeCommand, MixJSON
{
std::string name() override
@@ -136,7 +142,7 @@ struct CmdFlakeDeps : FlakeCommand, MixJSON
auto evalState = getEvalState();
evalState->addRegistryOverrides(registryOverrides);
- ResolvedFlake resFlake = resolveFlake(*evalState, getFlakeRef(), UpdateLockFile);
+ auto resFlake = resolveFlake();
std::queue<ResolvedFlake> todo;
todo.push(resFlake);
@@ -334,7 +340,7 @@ struct CmdFlakeInit : virtual Args, Command
struct CmdFlakeClone : FlakeCommand
{
- Path endDirectory = "";
+ Path destDir;
std::string name() override
{
@@ -348,7 +354,7 @@ struct CmdFlakeClone : FlakeCommand
CmdFlakeClone()
{
- expectArg("end-dir", &endDirectory, true);
+ expectArg("dest-dir", &destDir, true);
}
void run(nix::ref<nix::Store> store) override
@@ -356,7 +362,7 @@ struct CmdFlakeClone : FlakeCommand
auto evalState = getEvalState();
Registries registries = evalState->getFlakeRegistries();
- gitCloneFlake(getFlakeRef().to_string(), *evalState, registries, endDirectory);
+ gitCloneFlake(getFlakeRef().to_string(), *evalState, registries, destDir);
}
};