From 4526ebeee0afb1f48aa9c5824de547e961ed3274 Mon Sep 17 00:00:00 2001 From: Ben Wolsieffer Date: Wed, 7 Dec 2022 00:59:02 -0500 Subject: [PATCH] Fix applying overrides to defaultCrateOverrides when cross-compiling When cross-compiling, there are different versions of defaultCrateOverrides for each platform. This causes buildRustCrateWithFeatures to think the user has passed a custom value of crateOverrides when cross-compiling, which prevents defaultCrateOverrides from being applied. To fix this, use a null default for crateOverrides to detect whether the user has actually specified a value. --- crate2nix/templates/nix/crate2nix/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/crate2nix/templates/nix/crate2nix/default.nix b/crate2nix/templates/nix/crate2nix/default.nix index 4eefda8c..477cc617 100644 --- a/crate2nix/templates/nix/crate2nix/default.nix +++ b/crate2nix/templates/nix/crate2nix/default.nix @@ -174,7 +174,7 @@ rec { buildRustCrateWithFeatures = { packageId , features ? rootFeatures - , crateOverrides ? defaultCrateOverrides + , crateOverrides ? null , buildRustCrateForPkgsFunc ? null , runTests ? false , testCrateFlags ? [ ] @@ -200,7 +200,7 @@ rec { then buildRustCrateForPkgsFunc else ( - if crateOverrides == pkgs.defaultCrateOverrides + if crateOverrides == null then buildRustCrateForPkgs else pkgs: (buildRustCrateForPkgs pkgs).override {