@@ -838,13 +838,18 @@ final: prev: {
838838 shellFor' = crossPlatforms :
839839 let
840840 shellArgs = builtins . removeAttrs rawProject . args . shell [ "crossPlatforms" ] ;
841- # Shells for cross compilation
842- crossShells = builtins . map ( project : project . shellFor {
843- # Prevent recursion
844- crossPlatforms = final . lib . mkForce ( _p : [ ] ) ;
841+ # These are the args we will pass to the shells for the corss compiler
842+ argsCross =
843+ # These things should match main shell
844+ final . lib . filterAttrs ( n : _ : builtins . elem n [
845+ "packages" "components" "additional" "exactDeps" "packageSetupDeps"
846+ ] ) shellArgs // {
845847 # The main shell's hoogle will probably be faster to build.
846- withHoogle = final . lib . mkForce false ;
847- } ) ( crossPlatforms projectCross ) ;
848+ withHoogle = false ;
849+ } ;
850+ # Shells for cross compilation
851+ crossShells = builtins . map ( project : project . shellFor' ( _p : [ ] ) argsCross )
852+ ( crossPlatforms projectCross ) ;
848853 in rawProject . hsPkgs . shellFor ( shellArgs // {
849854 # Add inputs from the cross compilation shells
850855 inputsFrom = shellArgs . inputsFrom or [ ] ++ crossShells ;
@@ -1153,7 +1158,7 @@ final: prev: {
11531158 let
11541159 ghc = final . buildPackages . haskell-nix . compiler . ${ compiler-nix-name } . override { hadrianEvalPackages = evalPackages ; } ;
11551160 in
1156- final . recurseIntoAttrs ( {
1161+ final . recurseIntoAttrs ( {
11571162 # Things that require no IFD to build
11581163 source-pin-hackage = hackageSrc ;
11591164 source-pin-stackage = stackageSrc ;
0 commit comments