From 5b5c5e1ebccc1dc60cbff78a11185c5742916253 Mon Sep 17 00:00:00 2001 From: Andrew Poelstra Date: Wed, 22 Feb 2023 03:39:26 +0000 Subject: [PATCH] Add ability to override lockfile from tools.nix --- tools.nix | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/tools.nix b/tools.nix index 5fc8d0d6..c3ad2511 100644 --- a/tools.nix +++ b/tools.nix @@ -30,10 +30,14 @@ rec { , src , cargoToml ? "Cargo.toml" , additionalCargoNixArgs ? [ ] + , overrideLockFile ? null }: let crateDir = dirOf (src + "/${cargoToml}"); - vendor = internal.vendorSupport { inherit crateDir; }; + vendor = internal.vendorSupport { + inherit crateDir; + additionalLockFiles = if overrideLockFile == null then [ ] else [ overrideLockFile ]; + }; in stdenv.mkDerivation { name = "${name}-crate2nix"; @@ -52,6 +56,11 @@ rec { export CARGO_HOME="$out/cargo" export HOME="$out" + ${if overrideLockFile == null then + "" + else + "cp ${overrideLockFile} ./Cargo.lock"} + cp ${vendor.cargoConfig} $out/cargo/config crate_hashes="$out/crate-hashes.json"