build-support/rust: make use of abandoned cargoUpdateHook

Previously, cargoUpdateHook was meaningful as it was used
in
[`cargo-fetch-deps`](19d3cf81d3/pkgs/build-support/rust/fetch-cargo-deps (L71)).

However, this entire file was removed in
5f8cf0048e. As far as I can
tell, nothing in the code is using it, but it is still
being passed around:
https://github.com/NixOS/nixpkgs/search?q=cargoUpdateHook&type=Code&utf8=%E2%9C%93

There are, however, legitimate use cases for it. For example,
in some software, some dependencies are not locked in Cargo.toml
and this causes Cargo to try fetching another version of them.
This doesn't work well with vendoring crates.

This hook allows to inject patching or whatever necessary workarounds
in the crate vendoring process. I suppose that's what it was for
in there in the first place.

This patch restores this hook and makes it usable again.
This commit is contained in:
Yurii Rashkovskii 2018-02-23 11:17:03 +07:00
parent 472dd33ea4
commit e1aecec4cd
No known key found for this signature in database
GPG key ID: 1D60D7CFD80845FF

View file

@ -21,6 +21,8 @@ stdenv.mkDerivation {
export CARGO_HOME=$(mktemp -d cargo-home.XXX)
${cargoUpdateHook}
cargo vendor
cp -ar vendor $out