about summary refs log tree commit diff
path: root/pkgs/development/haskell-modules/configuration-nix.nix
diff options
context:
space:
mode:
authorAlyssa Ross <hi@alyssa.is>2023-11-10 15:18:19 +0100
committerAlyssa Ross <hi@alyssa.is>2023-11-10 15:18:19 +0100
commitafabc4a15d5ba6631bd4d865b8be37fc67d52809 (patch)
tree2342d9e8bd8b4cfbfee2b9a98c088df9f1c809ca /pkgs/development/haskell-modules/configuration-nix.nix
parent9a0c85ffc5aedc46b4d81f3b9fc22d7f488e3ff9 (diff)
parent714e527a726c9613fca8e13586a1b19198d68d9b (diff)
downloadnixlib-afabc4a15d5ba6631bd4d865b8be37fc67d52809.tar
nixlib-afabc4a15d5ba6631bd4d865b8be37fc67d52809.tar.gz
nixlib-afabc4a15d5ba6631bd4d865b8be37fc67d52809.tar.bz2
nixlib-afabc4a15d5ba6631bd4d865b8be37fc67d52809.tar.lz
nixlib-afabc4a15d5ba6631bd4d865b8be37fc67d52809.tar.xz
nixlib-afabc4a15d5ba6631bd4d865b8be37fc67d52809.tar.zst
nixlib-afabc4a15d5ba6631bd4d865b8be37fc67d52809.zip
Merge remote-tracking branch 'origin/master' into HEAD
Conflicts:
	pkgs/development/libraries/SDL2/default.nix
Diffstat (limited to 'pkgs/development/haskell-modules/configuration-nix.nix')
-rw-r--r--pkgs/development/haskell-modules/configuration-nix.nix20
1 files changed, 20 insertions, 0 deletions
diff --git a/pkgs/development/haskell-modules/configuration-nix.nix b/pkgs/development/haskell-modules/configuration-nix.nix
index 89a268a09a6e..037019be4de3 100644
--- a/pkgs/development/haskell-modules/configuration-nix.nix
+++ b/pkgs/development/haskell-modules/configuration-nix.nix
@@ -1342,4 +1342,24 @@ self: super: builtins.intersectAttrs super {
       gi-webkit2
       gi-webkit2webextension
       ;
+
+  # Makes the mpi-hs package respect the choice of mpi implementation in Nixpkgs.
+  # Also adds required test dependencies for checks to pass
+  mpi-hs =
+    let validMpi = [ "openmpi" "mpich" "mvapich" ];
+        mpiImpl = pkgs.mpi.pname;
+        disableUnused = with builtins; map disableCabalFlag (filter (n: n != mpiImpl) validMpi);
+     in lib.pipe
+          (super.mpi-hs_0_7_3_0.override { ompi = pkgs.mpi; })
+          ( [ (addTestToolDepends [ pkgs.openssh pkgs.mpiCheckPhaseHook ]) ]
+            ++ disableUnused
+            ++ lib.optional (builtins.elem mpiImpl validMpi) (enableCabalFlag mpiImpl)
+          );
+  inherit (lib.mapAttrs (_: addTestToolDepends
+    [ pkgs.openssh pkgs.mpiCheckPhaseHook ]
+    ) super)
+    mpi-hs-store
+    mpi-hs-cereal
+    mpi-hs-binary
+    ;
 }