summaryrefslogtreecommitdiffstats
path: root/pkgs/rust/default.nix
diff options
context:
space:
mode:
authortv <tv@krebsco.de>2026-11-11 15:22:28 +0100
committertv <tv@krebsco.de>2026-11-11 15:22:28 +0100
commit0febb98b3f86a3dbbdc2903d8aab957249dff341 (patch)
tree3a7979185b84cc91a66e4d1f02984df51566a4d3 /pkgs/rust/default.nix
parent3269a3bb4b9cf73dd220bdd0d73df839ff2a0a6b (diff)
crate2nixPackage: check JSON vs lock
Diffstat (limited to 'pkgs/rust/default.nix')
-rw-r--r--pkgs/rust/default.nix10
1 files changed, 8 insertions, 2 deletions
diff --git a/pkgs/rust/default.nix b/pkgs/rust/default.nix
index d273db6..f6c7eb7 100644
--- a/pkgs/rust/default.nix
+++ b/pkgs/rust/default.nix
@@ -30,6 +30,12 @@ let
lib.optionalAttrs (builtins.pathExists (path + "/Cargo.json")) {
resolvedJson = path + "/Cargo.json";
};
+
+ # The checkout's Cargo.lock, to check the JSON plan against.
+ localLock = path:
+ lib.optionalAttrs (builtins.pathExists (path + "/Cargo.lock")) {
+ cargoLock = path + "/Cargo.lock";
+ };
in
{
@@ -72,10 +78,10 @@ in
in
if explicitPackages ? ${pname} then
assert mylib.debug "pkgs/rust: overriding ${pname}.src with ${mylib.pretty dir}";
- hrmPlan explicitPackages.${pname} // callArgs explicitPackages.${pname} // { inherit src; }
+ hrmPlan explicitPackages.${pname} // callArgs explicitPackages.${pname} // { inherit src; } // localLock dir
else
assert mylib.debug "pkgs/rust: automatic package ${pname} from ${mylib.pretty dir}";
- { name = pname; inherit src; }
+ { name = pname; inherit src; } // localLock dir
)
automaticPackages;