aboutsummaryrefslogtreecommitdiff
path: root/src/nix/prefetch.cc
diff options
context:
space:
mode:
authorRebecca Turner <rbt@sent.as>2024-09-10 13:13:19 -0700
committerRebecca Turner <rbt@sent.as>2024-10-01 16:08:58 -0700
commitb63d4a0c622fa556695e7666b9b3bde920904920 (patch)
tree48f4df7f13c1908f943f45be0c6f5c9c56252d6a /src/nix/prefetch.cc
parent775292766025380d04004e42fefbdb8ca40b3fa3 (diff)
Remove static initializers for `RegisterLegacyCommand`
This moves the "legacy"/"nix2" commands under a new `src/legacy/` directory, instead of being scattered around in a bunch of different directories. A new `liblegacy` build target is defined, and the `nix` binary is linked against it. Then, `RegisterLegacyCommand` is replaced with `LegacyCommand::add` calls in functions like `registerNixCollectGarbage()`. These registration functions are called explicitly in `src/nix/main.cc`. See: https://git.lix.systems/lix-project/lix/issues/359 Change-Id: Id450ffc3f793374907599cfcc121863b792aac1a
Diffstat (limited to 'src/nix/prefetch.cc')
-rw-r--r--src/nix/prefetch.cc9
1 files changed, 7 insertions, 2 deletions
diff --git a/src/nix/prefetch.cc b/src/nix/prefetch.cc
index b99cd5dd0..0183b0008 100644
--- a/src/nix/prefetch.cc
+++ b/src/nix/prefetch.cc
@@ -9,10 +9,11 @@
#include "eval-inline.hh" // IWYU pragma: keep
#include "legacy.hh"
#include "terminal.hh"
+#include "prefetch-command.hh"
#include <nlohmann/json.hpp>
-using namespace nix;
+namespace nix {
/* If ‘url’ starts with ‘mirror://’, then resolve it using the list of
mirrors defined in Nixpkgs. */
@@ -248,7 +249,9 @@ static int main_nix_prefetch_url(int argc, char * * argv)
}
}
-static RegisterLegacyCommand r_nix_prefetch_url("nix-prefetch-url", main_nix_prefetch_url);
+void registerNixPrefetchUrl() {
+ LegacyCommands::add("nix-prefetch-url", main_nix_prefetch_url);
+}
struct CmdStorePrefetchFile : StoreCommand, MixJSON
{
@@ -328,3 +331,5 @@ struct CmdStorePrefetchFile : StoreCommand, MixJSON
};
static auto rCmdStorePrefetchFile = registerCommand2<CmdStorePrefetchFile>({"store", "prefetch-file"});
+
+}