Skip to content

Commit 75098f8

Browse files
committed
Fix cross compilation shells
1 parent b2ccf2f commit 75098f8

File tree

1 file changed

+7
-12
lines changed

1 file changed

+7
-12
lines changed

overlays/haskell.nix

Lines changed: 7 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -832,18 +832,13 @@ final: prev: {
832832
shellFor' = crossPlatforms:
833833
let
834834
shellArgs = builtins.removeAttrs rawProject.args.shell [ "crossPlatforms" ];
835-
# These are the args we will pass to the shells for the corss compiler
836-
argsCross =
837-
# These things should match main shell
838-
final.lib.filterAttrs (n: _: builtins.elem n [
839-
"packages" "components" "additional" "exactDeps" "packageSetupDeps"
840-
]) shellArgs // {
841-
# The main shell's hoogle will probably be faster to build.
842-
withHoogle = false;
843-
};
844835
# Shells for cross compilation
845-
crossShells = builtins.map (project: project.shellFor' (_p: []) argsCross)
846-
(crossPlatforms projectCross);
836+
crossShells = builtins.map (project: project.shellFor {
837+
# Prevent recursion
838+
crossPlatforms = final.lib.mkForce (_p: []);
839+
# The main shell's hoogle will probably be faster to build.
840+
withHoogle = final.lib.mkForce false;
841+
}) (crossPlatforms projectCross);
847842
in rawProject.hsPkgs.shellFor (shellArgs // {
848843
# Add inputs from the cross compilation shells
849844
inputsFrom = shellArgs.inputsFrom or [] ++ crossShells;
@@ -1152,7 +1147,7 @@ final: prev: {
11521147
let
11531148
ghc = final.buildPackages.haskell-nix.compiler.${compiler-nix-name}.override { hadrianEvalPackages = evalPackages; };
11541149
in
1155-
final.recurseIntoAttrs ({
1150+
final.recurseIntoAttrs ({
11561151
# Things that require no IFD to build
11571152
source-pin-hackage = hackageSrc;
11581153
source-pin-stackage = stackageSrc;

0 commit comments

Comments
 (0)