1
1
Fork 0
mirror of https://github.com/NixOS/nix.git synced 2025-11-08 19:46:02 +01:00

Merge pull request #14348 from NixOS/fetchClosure-access

Allow access to the result of fetchClosure
This commit is contained in:
John Ericson 2025-10-24 15:44:31 +00:00 committed by GitHub
commit 9a695f9067
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
3 changed files with 16 additions and 0 deletions

View file

@ -64,6 +64,8 @@ static void runFetchClosureWithRewrite(
.pos = state.positions[pos]});
}
state.allowClosure(toPath);
state.mkStorePathString(toPath, v);
}
@ -91,6 +93,8 @@ static void runFetchClosureWithContentAddressedPath(
.pos = state.positions[pos]});
}
state.allowClosure(fromPath);
state.mkStorePathString(fromPath, v);
}
@ -115,6 +119,8 @@ static void runFetchClosureWithInputAddressedPath(
.pos = state.positions[pos]});
}
state.allowClosure(fromPath);
state.mkStorePathString(fromPath, v);
}

View file

@ -17,4 +17,6 @@ ln -s "$out" "$out"/self
echo program > "$out"/program
chmod +x "$out"/program
echo '1 + 2' > "$out"/foo.nix
echo FOO

View file

@ -99,6 +99,14 @@ clearStore
[ -e "$caPath" ]
# Test import-from-derivation on the result of fetchClosure.
[[ $(nix eval -v --expr "
import \"\${builtins.fetchClosure {
fromStore = \"file://$cacheDir\";
fromPath = $caPath;
}}/foo.nix\"
") = 3 ]]
# Check that URL query parameters aren't allowed.
clearStore
narCache=$TEST_ROOT/nar-cache