diff options
author | Eelco Dolstra <edolstra@gmail.com> | 2020-05-28 12:13:13 +0200 |
---|---|---|
committer | Eelco Dolstra <edolstra@gmail.com> | 2020-05-28 12:13:13 +0200 |
commit | 6286272371434dc597da793417787ecd3cb14cc9 (patch) | |
tree | b3a8414fd6ad4ae7a082214bbae735150767fae1 /src/nix/installables.cc | |
parent | 04fb4e8a0fb5bae0d70838b08e70c3cdbb233bb2 (diff) |
nixpkgsFlakeRef(): Use locked nixpkgs
Diffstat (limited to 'src/nix/installables.cc')
-rw-r--r-- | src/nix/installables.cc | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/src/nix/installables.cc b/src/nix/installables.cc index 21fd54f64..fde1ca7aa 100644 --- a/src/nix/installables.cc +++ b/src/nix/installables.cc @@ -503,9 +503,12 @@ FlakeRef InstallableFlake::nixpkgsFlakeRef() const { auto lockedFlake = getLockedFlake(); - auto nixpkgsInput = lockedFlake->flake.inputs.find("nixpkgs"); - if (nixpkgsInput != lockedFlake->flake.inputs.end()) { - return std::move(nixpkgsInput->second.ref); + auto nixpkgsInput = lockedFlake->lockFile.root->inputs.find("nixpkgs"); + if (nixpkgsInput != lockedFlake->lockFile.root->inputs.end()) { + if (auto lockedNode = std::dynamic_pointer_cast<const flake::LockedNode>(nixpkgsInput->second)) { + debug("using nixpkgs flake '%s'", lockedNode->lockedRef); + return std::move(lockedNode->lockedRef); + } } return Installable::nixpkgsFlakeRef(); |