aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJohn Ericson <John.Ericson@Obsidian.Systems>2023-02-21 10:15:24 -0500
committerJohn Ericson <John.Ericson@Obsidian.Systems>2023-02-21 10:21:51 -0500
commit16111aa32e02fd4067483d251455193480fad580 (patch)
tree9f2e794b937275e762a971e5350d318d3fb6cc0c
parent8418d22ac164973b84971ad3d098b0ba6f98ec47 (diff)
Fix `isStatic` arguments to `commonDeps`
Some dependencies supposed to be skipped in the cross build, along with not using the gold linker. But in https://github.com/NixOS/nix/pull/6538 this was accidentally not preserved. Also since https://github.com/NixOS/nix/pull/6538 we saw some new aarch64-linux static build failures. This is a first attempt to try to fix those failures. If this is not sufficient, there are other things we can try next.
-rw-r--r--flake.nix14
1 files changed, 12 insertions, 2 deletions
diff --git a/flake.nix b/flake.nix
index c399a5304..9baa63bd6 100644
--- a/flake.nix
+++ b/flake.nix
@@ -57,7 +57,11 @@
cross = forAllCrossSystems (crossSystem: make-pkgs crossSystem "stdenv");
});
- commonDeps = { pkgs, isStatic ? false }: with pkgs; rec {
+ commonDeps =
+ { pkgs
+ , isStatic ? pkgs.stdenv.hostPlatform.isStatic
+ }:
+ with pkgs; rec {
# Use "busybox-sandbox-shell" if present,
# if not (legacy) fallback and hope it's sufficient.
sh = pkgs.busybox-sandbox-shell or (busybox.override {
@@ -293,7 +297,13 @@
# Forward from the previous stage as we don’t want it to pick the lowdown override
nixUnstable = prev.nixUnstable;
- nix = with final; with commonDeps { inherit pkgs; }; let
+ nix =
+ with final;
+ with commonDeps {
+ inherit pkgs;
+ inherit (currentStdenv.hostPlatform) isStatic;
+ };
+ let
canRunInstalled = currentStdenv.buildPlatform.canExecute currentStdenv.hostPlatform;
in currentStdenv.mkDerivation {
name = "nix-${version}";