aboutsummaryrefslogtreecommitdiff
path: root/src/nix/upgrade-nix.cc
diff options
context:
space:
mode:
Diffstat (limited to 'src/nix/upgrade-nix.cc')
-rw-r--r--src/nix/upgrade-nix.cc9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/nix/upgrade-nix.cc b/src/nix/upgrade-nix.cc
index 72b298283..666ac68b0 100644
--- a/src/nix/upgrade-nix.cc
+++ b/src/nix/upgrade-nix.cc
@@ -10,6 +10,7 @@ using namespace nix;
struct CmdUpgradeNix : MixDryRun, StoreCommand
{
Path profileDir;
+ std::string storePathsUrl = "https://github.com/NixOS/nixpkgs/raw/master/nixos/modules/installer/tools/nix-fallback-paths.nix";
CmdUpgradeNix()
{
@@ -19,6 +20,12 @@ struct CmdUpgradeNix : MixDryRun, StoreCommand
.labels({"profile-dir"})
.description("the Nix profile to upgrade")
.dest(&profileDir);
+
+ mkFlag()
+ .longName("nix-store-paths-url")
+ .labels({"url"})
+ .description("URL of the file that contains the store paths of the latest Nix release")
+ .dest(&storePathsUrl);
}
std::string name() override
@@ -127,7 +134,7 @@ struct CmdUpgradeNix : MixDryRun, StoreCommand
Path getLatestNix(ref<Store> store)
{
// FIXME: use nixos.org?
- auto req = DownloadRequest("https://github.com/NixOS/nixpkgs/raw/master/nixos/modules/installer/tools/nix-fallback-paths.nix");
+ auto req = DownloadRequest(storePathsUrl);
auto res = getDownloader()->download(req);
auto state = std::make_unique<EvalState>(Strings(), store);