From fef053dbdaf6e07c4da07883895df7439fab36dc Mon Sep 17 00:00:00 2001 From: Grimmauld Date: Fri, 26 Jun 2026 17:40:20 +0200 Subject: [PATCH 01/10] openmpCheckPhaseHook: init (cherry picked from commit 8ff970916b975cfd1b79ff3751061526fe88614b) --- .../op/openmpCheckPhaseHook/omp-check-hook.sh | 11 +++++++++++ pkgs/by-name/op/openmpCheckPhaseHook/package.nix | 12 ++++++++++++ 2 files changed, 23 insertions(+) create mode 100644 pkgs/by-name/op/openmpCheckPhaseHook/omp-check-hook.sh create mode 100644 pkgs/by-name/op/openmpCheckPhaseHook/package.nix diff --git a/pkgs/by-name/op/openmpCheckPhaseHook/omp-check-hook.sh b/pkgs/by-name/op/openmpCheckPhaseHook/omp-check-hook.sh new file mode 100644 index 000000000000..b3279b170360 --- /dev/null +++ b/pkgs/by-name/op/openmpCheckPhaseHook/omp-check-hook.sh @@ -0,0 +1,11 @@ +preCheckHooks+=('setupOmpCheck') +preInstallCheckHooks+=('setupOmpCheck') + + +setupOmpCheck() { + # Limit number of OpenMP threads. Default is "all cores". + # Using all cores causes high load on builders if checks are executed with NIX_BUILD_CORE parallelism. + # This gets even worse if multiple builds are scheduled on the same machine, potentially growing O(n^3) without explicit core limits. + export OMP_NUM_THREADS="${OMP_NUM_THREADS:-1}" +} + diff --git a/pkgs/by-name/op/openmpCheckPhaseHook/package.nix b/pkgs/by-name/op/openmpCheckPhaseHook/package.nix new file mode 100644 index 000000000000..9e30609e8de5 --- /dev/null +++ b/pkgs/by-name/op/openmpCheckPhaseHook/package.nix @@ -0,0 +1,12 @@ +{ + lib, + makeSetupHook, +}: + +makeSetupHook { + name = "omp-checkPhase-hook"; + + __structuredAttrs = true; + + meta.license = lib.licenses.mit; +} ./omp-check-hook.sh From c603d87dad3987d9e833d001fa813789ddca0c63 Mon Sep 17 00:00:00 2001 From: Grimmauld Date: Fri, 26 Jun 2026 17:50:01 +0200 Subject: [PATCH 02/10] doc/openmpCheckPhaseHook: init (cherry picked from commit 71fbdd6512fcf27434aa34bbb9a830c1a8a2068b) --- doc/hooks/index.md | 1 + doc/hooks/openmp-check-hook.section.md | 10 ++++++++++ doc/redirects.json | 3 +++ 3 files changed, 14 insertions(+) create mode 100644 doc/hooks/openmp-check-hook.section.md diff --git a/doc/hooks/index.md b/doc/hooks/index.md index bac8306ff10e..e6c3af542f07 100644 --- a/doc/hooks/index.md +++ b/doc/hooks/index.md @@ -34,6 +34,7 @@ nodejs-install-manuals.section.md npm-build-hook.section.md npm-config-hook.section.md npm-install-hook.section.md +openmp-check-hook.section.md patch-rc-path-hooks.section.md perl.section.md pkg-config.section.md diff --git a/doc/hooks/openmp-check-hook.section.md b/doc/hooks/openmp-check-hook.section.md new file mode 100644 index 000000000000..5a5842eb5e29 --- /dev/null +++ b/doc/hooks/openmp-check-hook.section.md @@ -0,0 +1,10 @@ +# openmpCheckPhaseHook {#setup-hook-omp-check} + + +This hook can be used to setup a check phase that +requires running a OpenMP application. It mostly +serves to limit `OMP_NUM_THREADS` to avoid overloading +build machines. + +This hook will not attempt to override an already existing +definition of `OMP_NUM_THREADS` in the environment. diff --git a/doc/redirects.json b/doc/redirects.json index de13226671e4..8a822e998401 100644 --- a/doc/redirects.json +++ b/doc/redirects.json @@ -2809,6 +2809,9 @@ "setup-hook-mpi-check": [ "index.html#setup-hook-mpi-check" ], + "setup-hook-omp-check": [ + "index.html#setup-hook-omp-check" + ], "ninja": [ "index.html#ninja" ], From dd5eb4395bff0f12925052887361f8724d0055ca Mon Sep 17 00:00:00 2001 From: Grimmauld Date: Fri, 26 Jun 2026 17:51:33 +0200 Subject: [PATCH 03/10] mpiCheckPhaseHook: propagate openmpCheckPhaseHook (cherry picked from commit 240ef095c6bc783e437fb69b74442db6219d0e49) --- pkgs/by-name/mp/mpiCheckPhaseHook/mpi-check-hook.sh | 3 --- pkgs/by-name/mp/mpiCheckPhaseHook/package.nix | 6 +++++- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/pkgs/by-name/mp/mpiCheckPhaseHook/mpi-check-hook.sh b/pkgs/by-name/mp/mpiCheckPhaseHook/mpi-check-hook.sh index be2203951c0f..139dc932366f 100644 --- a/pkgs/by-name/mp/mpiCheckPhaseHook/mpi-check-hook.sh +++ b/pkgs/by-name/mp/mpiCheckPhaseHook/mpi-check-hook.sh @@ -72,8 +72,5 @@ setupMpiCheck() { export HWLOC_XMLFILE="@topology@" ;; esac - - # Limit number of OpenMP threads. Default is "all cores". - export OMP_NUM_THREADS=1 } diff --git a/pkgs/by-name/mp/mpiCheckPhaseHook/package.nix b/pkgs/by-name/mp/mpiCheckPhaseHook/package.nix index c771e87376fa..c380087e77bf 100644 --- a/pkgs/by-name/mp/mpiCheckPhaseHook/package.nix +++ b/pkgs/by-name/mp/mpiCheckPhaseHook/package.nix @@ -1,7 +1,7 @@ { - callPackage, makeSetupHook, stdenv, + openmpCheckPhaseHook, }: makeSetupHook { @@ -11,4 +11,8 @@ makeSetupHook { iface = if stdenv.hostPlatform.isDarwin then "lo0" else "lo"; topology = ./topology.xml; }; + + propagatedNativeBuildInputs = [ + openmpCheckPhaseHook + ]; } ./mpi-check-hook.sh From ae16e5685384e05af406b047968dce2ad3445c95 Mon Sep 17 00:00:00 2001 From: Grimmauld Date: Fri, 26 Jun 2026 17:52:29 +0200 Subject: [PATCH 04/10] llvmPackages.openmp: propagate openmpCheckPhaseHook (cherry picked from commit 559ae88af990e9cc835f791f1fca62283ac574a7) --- pkgs/development/compilers/llvm/common/openmp/default.nix | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/pkgs/development/compilers/llvm/common/openmp/default.nix b/pkgs/development/compilers/llvm/common/openmp/default.nix index a08376522d9e..10f9ce154cb4 100644 --- a/pkgs/development/compilers/llvm/common/openmp/default.nix +++ b/pkgs/development/compilers/llvm/common/openmp/default.nix @@ -19,7 +19,7 @@ ompdSupport ? true, ompdGdbSupport ? ompdSupport, getVersionFile, - fetchpatch, + openmpCheckPhaseHook, }: assert lib.assertMsg (ompdGdbSupport -> ompdSupport) "OMPD GDB support requires OMPD support!"; @@ -60,6 +60,10 @@ stdenv.mkDerivation (finalAttrs: { lit ]; + propagatedNativeBuildInputs = [ + openmpCheckPhaseHook + ]; + buildInputs = [ llvm ] From 04a27bf02fa6f1bb2ab153e7e0af18a9ca79bbb0 Mon Sep 17 00:00:00 2001 From: Grimmauld Date: Fri, 26 Jun 2026 17:53:36 +0200 Subject: [PATCH 05/10] blas: propagate openmpCheckPhaseHook (cherry picked from commit df838c503eaeb72f9a100ccf8e5914fe65a11502) --- pkgs/by-name/bl/blas/package.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkgs/by-name/bl/blas/package.nix b/pkgs/by-name/bl/blas/package.nix index 01ad1839c339..51deec6c5c64 100644 --- a/pkgs/by-name/bl/blas/package.nix +++ b/pkgs/by-name/bl/blas/package.nix @@ -3,6 +3,7 @@ stdenv, lapack-reference, openblas, + openmpCheckPhaseHook, isILP64 ? false, blasProvider ? openblas, }: @@ -186,6 +187,10 @@ stdenv.mkDerivation { "dev" ]; + propagatedNativeBuildInputs = [ + openmpCheckPhaseHook + ]; + meta = (blasProvider'.meta or { }) // { description = "${lib.getName blasProvider} with just the BLAS C and FORTRAN ABI"; }; From ace3e0ed624ded2153086d55b6e84df13dc5e5c9 Mon Sep 17 00:00:00 2001 From: Grimmauld Date: Fri, 26 Jun 2026 18:42:53 +0200 Subject: [PATCH 06/10] python3Packages.numpy: propagate openmpCheckPhaseHook (cherry picked from commit b3944a1e306623cb152573d1aaad9ba569a9d67f) --- pkgs/development/python-modules/numpy/2.nix | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/pkgs/development/python-modules/numpy/2.nix b/pkgs/development/python-modules/numpy/2.nix index 67c60475fd5f..22d2b00dcd9b 100644 --- a/pkgs/development/python-modules/numpy/2.nix +++ b/pkgs/development/python-modules/numpy/2.nix @@ -19,6 +19,8 @@ coreutils, lapack, + openmpCheckPhaseHook, + # Reverse dependency sage, @@ -113,6 +115,10 @@ buildPythonPackage (finalAttrs: { typing-extensions ]; + propagatedNativeBuildInputs = [ + openmpCheckPhaseHook + ]; + preCheck = '' pushd $out # For numpy-config executable to be available during tests From 39200d69a6ce7291380446e78f403fdc88b1e7a0 Mon Sep 17 00:00:00 2001 From: Grimmauld Date: Fri, 26 Jun 2026 18:43:24 +0200 Subject: [PATCH 07/10] python3Packages.*: remove explicit OMP_NUM_THREADS definitions where numpy is used (cherry picked from commit ef8b8d8f58919deb3d462416e582dadafe3fb833) --- pkgs/development/python-modules/astropy/default.nix | 4 ---- pkgs/development/python-modules/geometric/default.nix | 4 ---- pkgs/development/python-modules/imread/default.nix | 1 - pkgs/development/python-modules/numpy/1.nix | 7 ++++++- pkgs/development/python-modules/numpy/2.nix | 4 ---- pkgs/development/python-modules/pyscf/default.nix | 1 - pkgs/development/python-modules/qutip/default.nix | 1 - pkgs/development/python-modules/scikit-learn/default.nix | 1 - pkgs/development/python-modules/scipy/default.nix | 5 ----- 9 files changed, 6 insertions(+), 22 deletions(-) diff --git a/pkgs/development/python-modules/astropy/default.nix b/pkgs/development/python-modules/astropy/default.nix index 639e234acbb0..94376d603d5e 100644 --- a/pkgs/development/python-modules/astropy/default.nix +++ b/pkgs/development/python-modules/astropy/default.nix @@ -143,10 +143,6 @@ buildPythonPackage rec { preCheck = '' export HOME="$(mktemp -d)" - export OMP_NUM_THREADS=$(( $NIX_BUILD_CORES / 4 )) - if [ $OMP_NUM_THREADS -eq 0 ]; then - export OMP_NUM_THREADS=1 - fi # See https://github.com/astropy/astropy/issues/17649 and see # --hypothesis-profile=ci pytest flag below. diff --git a/pkgs/development/python-modules/geometric/default.nix b/pkgs/development/python-modules/geometric/default.nix index ec1553e164ab..08301b669d5c 100644 --- a/pkgs/development/python-modules/geometric/default.nix +++ b/pkgs/development/python-modules/geometric/default.nix @@ -28,10 +28,6 @@ buildPythonPackage rec { six ]; - preCheck = '' - export OMP_NUM_THREADS=2 - ''; - nativeCheckInputs = [ pytestCheckHook ]; meta = { diff --git a/pkgs/development/python-modules/imread/default.nix b/pkgs/development/python-modules/imread/default.nix index a26b89fb2b02..bc0934f5bd7c 100644 --- a/pkgs/development/python-modules/imread/default.nix +++ b/pkgs/development/python-modules/imread/default.nix @@ -49,7 +49,6 @@ buildPythonPackage rec { preCheck = '' cd $TMPDIR export HOME=$TMPDIR - export OMP_NUM_THREADS=1 ''; meta = { diff --git a/pkgs/development/python-modules/numpy/1.nix b/pkgs/development/python-modules/numpy/1.nix index 4fc274257916..7167ff94637e 100644 --- a/pkgs/development/python-modules/numpy/1.nix +++ b/pkgs/development/python-modules/numpy/1.nix @@ -18,6 +18,8 @@ blas, lapack, + openmpCheckPhaseHook, + # Reverse dependency sage, @@ -93,7 +95,6 @@ buildPythonPackage (finalAttrs: { # see https://github.com/OpenMathLib/OpenBLAS/issues/2993 preConfigure = '' sed -i 's/-faltivec//' numpy/distutils/system_info.py - export OMP_NUM_THREADS=$((NIX_BUILD_CORES > 64 ? 64 : NIX_BUILD_CORES)) ''; preBuild = '' @@ -110,6 +111,10 @@ buildPythonPackage (finalAttrs: { typing-extensions ]; + propagatedNativeBuildInputs = [ + openmpCheckPhaseHook + ]; + preCheck = '' cd "$out" ''; diff --git a/pkgs/development/python-modules/numpy/2.nix b/pkgs/development/python-modules/numpy/2.nix index 22d2b00dcd9b..0cef4e21ccc0 100644 --- a/pkgs/development/python-modules/numpy/2.nix +++ b/pkgs/development/python-modules/numpy/2.nix @@ -88,12 +88,8 @@ buildPythonPackage (finalAttrs: { ] ++ lib.optionals (!stdenv.buildPlatform.canExecute stdenv.hostPlatform) [ mesonEmulatorHook ]; - # we default openblas to build with 64 threads - # if a machine has more than 64 threads, it will segfault - # see https://github.com/OpenMathLib/OpenBLAS/issues/2993 preConfigure = '' sed -i 's/-faltivec//' numpy/distutils/system_info.py - export OMP_NUM_THREADS=$((NIX_BUILD_CORES > 64 ? 64 : NIX_BUILD_CORES)) ''; buildInputs = [ diff --git a/pkgs/development/python-modules/pyscf/default.nix b/pkgs/development/python-modules/pyscf/default.nix index 9028317762b5..8444a005e775 100644 --- a/pkgs/development/python-modules/pyscf/default.nix +++ b/pkgs/development/python-modules/pyscf/default.nix @@ -61,7 +61,6 @@ buildPythonPackage { preCheck = '' # Set config used by tests to ensure reproducibility echo 'pbc_tools_pbc_fft_engine = "NUMPY"' > pyscf/pyscf_config.py - export OMP_NUM_THREADS=1 ulimit -s 20000 export PYSCF_CONFIG_FILE=$(pwd)/pyscf/pyscf_config.py ''; diff --git a/pkgs/development/python-modules/qutip/default.nix b/pkgs/development/python-modules/qutip/default.nix index 89e77b995785..aa968f51180d 100644 --- a/pkgs/development/python-modules/qutip/default.nix +++ b/pkgs/development/python-modules/qutip/default.nix @@ -62,7 +62,6 @@ buildPythonPackage (finalAttrs: { # This is due to the Cython-compiled modules not being in the correct location # of the source tree. preCheck = '' - export OMP_NUM_THREADS=$NIX_BUILD_CORES mkdir -p test && cd test ''; diff --git a/pkgs/development/python-modules/scikit-learn/default.nix b/pkgs/development/python-modules/scikit-learn/default.nix index b48f5a5d8f72..bf50ab0b7a63 100644 --- a/pkgs/development/python-modules/scikit-learn/default.nix +++ b/pkgs/development/python-modules/scikit-learn/default.nix @@ -116,7 +116,6 @@ buildPythonPackage rec { preCheck = '' cd $TMPDIR export HOME=$TMPDIR - export OMP_NUM_THREADS=1 ''; pythonImportsCheck = [ "sklearn" ]; diff --git a/pkgs/development/python-modules/scipy/default.nix b/pkgs/development/python-modules/scipy/default.nix index cdecd986e4ef..30999320f1e8 100644 --- a/pkgs/development/python-modules/scipy/default.nix +++ b/pkgs/development/python-modules/scipy/default.nix @@ -190,11 +190,6 @@ buildPythonPackage (finalAttrs: { ''; preCheck = '' - export OMP_NUM_THREADS=$(( $NIX_BUILD_CORES / 4 )) - if [ $OMP_NUM_THREADS -eq 0 ]; then - export OMP_NUM_THREADS=1 - fi - cd $out ''; From 19bbab8a7fa668879b91d65467416b861cd8b63e Mon Sep 17 00:00:00 2001 From: Grimmauld Date: Fri, 26 Jun 2026 18:16:07 +0200 Subject: [PATCH 08/10] treewide: remove explicit OMP_NUM_THREADS where openmpCheckPhaseHook is in effect (cherry picked from commit d5ae461bf7277e6fcbb5239e4b268ed2792e6ef2) --- pkgs/by-name/df/dftd4/package.nix | 4 ---- pkgs/by-name/el/elpa/package.nix | 3 --- pkgs/by-name/er/ergoscf/package.nix | 1 - pkgs/by-name/gr/greenx/package.nix | 4 ---- pkgs/by-name/mc/mctc-lib/package.nix | 4 ---- pkgs/by-name/mo/mopac/package.nix | 4 ---- pkgs/by-name/mp/mpb/package.nix | 2 -- pkgs/by-name/mu/multicharge/package.nix | 4 ---- pkgs/by-name/pi/pixman/package.nix | 5 ----- pkgs/by-name/wa/wannier90/package.nix | 3 --- .../libraries/science/chemistry/simple-dftd3/default.nix | 3 --- .../libraries/science/chemistry/tblite/default.nix | 4 ---- 12 files changed, 41 deletions(-) diff --git a/pkgs/by-name/df/dftd4/package.nix b/pkgs/by-name/df/dftd4/package.nix index 47bdd3495224..3167f58ca71f 100644 --- a/pkgs/by-name/df/dftd4/package.nix +++ b/pkgs/by-name/df/dftd4/package.nix @@ -82,10 +82,6 @@ stdenv.mkDerivation (finalAttrs: { app/tester.py ''; - preCheck = '' - export OMP_NUM_THREADS=2 - ''; - meta = { description = "Generally Applicable Atomic-Charge Dependent London Dispersion Correction"; mainProgram = "dftd4"; diff --git a/pkgs/by-name/el/elpa/package.nix b/pkgs/by-name/el/elpa/package.nix index 170f03f697e8..650d59f93de4 100644 --- a/pkgs/by-name/el/elpa/package.nix +++ b/pkgs/by-name/el/elpa/package.nix @@ -116,9 +116,6 @@ stdenv.mkDerivation (finalAttrs: { preCheck = '' #patchShebangs ./ - # Run dual threaded - export OMP_NUM_THREADS=2 - # Reduce test problem sizes export TEST_FLAGS="1500 50 16" ''; diff --git a/pkgs/by-name/er/ergoscf/package.nix b/pkgs/by-name/er/ergoscf/package.nix index 9514bb89f1e4..59ccb179b2bd 100644 --- a/pkgs/by-name/er/ergoscf/package.nix +++ b/pkgs/by-name/er/ergoscf/package.nix @@ -39,7 +39,6 @@ stdenv.mkDerivation (finalAttrs: { "-lblas" "-llapack" ]; - OMP_NUM_THREADS = 2; # required for check phase }; enableParallelBuilding = true; diff --git a/pkgs/by-name/gr/greenx/package.nix b/pkgs/by-name/gr/greenx/package.nix index c08356a17058..fb360c6728b8 100644 --- a/pkgs/by-name/gr/greenx/package.nix +++ b/pkgs/by-name/gr/greenx/package.nix @@ -34,10 +34,6 @@ stdenv.mkDerivation (finalAttrs: { # Uses a hacky python setup run by cmake, which is hard to get running doCheck = false; - preCheck = '' - export OMP_NUM_THREADS=2 - ''; - meta = { description = "Library for Green’s function based electronic structure theory calculations"; license = [ lib.licenses.asl20 ]; diff --git a/pkgs/by-name/mc/mctc-lib/package.nix b/pkgs/by-name/mc/mctc-lib/package.nix index 3473b3dbaa7e..2a11a84f94db 100644 --- a/pkgs/by-name/mc/mctc-lib/package.nix +++ b/pkgs/by-name/mc/mctc-lib/package.nix @@ -61,10 +61,6 @@ stdenv.mkDerivation (finalAttrs: { doCheck = true; - preCheck = '' - export OMP_NUM_THREADS=2 - ''; - postPatch = '' patchShebangs --build config/install-mod.py ''; diff --git a/pkgs/by-name/mo/mopac/package.nix b/pkgs/by-name/mo/mopac/package.nix index c5e5dacccb9b..c70b46ded59c 100644 --- a/pkgs/by-name/mo/mopac/package.nix +++ b/pkgs/by-name/mo/mopac/package.nix @@ -39,10 +39,6 @@ stdenv.mkDerivation (finalAttrs: { doCheck = true; - preCheck = '' - export OMP_NUM_THREADS=2 - ''; - meta = { description = "Semiempirical quantum chemistry"; homepage = "https://github.com/openmopac/mopac"; diff --git a/pkgs/by-name/mp/mpb/package.nix b/pkgs/by-name/mp/mpb/package.nix index eb001a94446d..f92f7bfeeadf 100644 --- a/pkgs/by-name/mp/mpb/package.nix +++ b/pkgs/by-name/mp/mpb/package.nix @@ -59,8 +59,6 @@ stdenv.mkDerivation (finalAttrs: { doCheck = true; - preCheck = "export OMP_NUM_THREADS=2"; - meta = { description = "MIT Photonic-Bands: computation of photonic band structures in periodic media"; homepage = "https://mpb.readthedocs.io/en/latest/"; diff --git a/pkgs/by-name/mu/multicharge/package.nix b/pkgs/by-name/mu/multicharge/package.nix index b4fcbe0cf512..a6192b7993db 100644 --- a/pkgs/by-name/mu/multicharge/package.nix +++ b/pkgs/by-name/mu/multicharge/package.nix @@ -71,10 +71,6 @@ stdenv.mkDerivation (finalAttrs: { patchShebangs --build config/install-mod.py ''; - preCheck = '' - export OMP_NUM_THREADS=2 - ''; - meta = { description = "Electronegativity equilibration model for atomic partial charges"; mainProgram = "multicharge"; diff --git a/pkgs/by-name/pi/pixman/package.nix b/pkgs/by-name/pi/pixman/package.nix index 367fa018c860..3ef554a9eb07 100644 --- a/pkgs/by-name/pi/pixman/package.nix +++ b/pkgs/by-name/pi/pixman/package.nix @@ -61,11 +61,6 @@ stdenv.mkDerivation (finalAttrs: { "-Dneon=disabled" ]; - preConfigure = '' - # https://gitlab.freedesktop.org/pixman/pixman/-/issues/62 - export OMP_NUM_THREADS=$((NIX_BUILD_CORES > 184 ? 184 : NIX_BUILD_CORES)) - ''; - enableParallelBuilding = true; doCheck = !stdenv.hostPlatform.isDarwin; diff --git a/pkgs/by-name/wa/wannier90/package.nix b/pkgs/by-name/wa/wannier90/package.nix index 2a8996daf779..321c34e4e0e7 100644 --- a/pkgs/by-name/wa/wannier90/package.nix +++ b/pkgs/by-name/wa/wannier90/package.nix @@ -73,9 +73,6 @@ stdenv.mkDerivation (finalAttrs: { doCheck = true; checkInputs = [ python3 ]; checkTarget = [ "test-serial" ]; - preCheck = '' - export OMP_NUM_THREADS=4 - ''; enableParallelBuilding = true; diff --git a/pkgs/development/libraries/science/chemistry/simple-dftd3/default.nix b/pkgs/development/libraries/science/chemistry/simple-dftd3/default.nix index 1310bf160d8b..ce76e5c599d3 100644 --- a/pkgs/development/libraries/science/chemistry/simple-dftd3/default.nix +++ b/pkgs/development/libraries/science/chemistry/simple-dftd3/default.nix @@ -64,9 +64,6 @@ stdenv.mkDerivation rec { ]; doCheck = true; - preCheck = '' - export OMP_NUM_THREADS=2 - ''; meta = { description = "Reimplementation of the DFT-D3 program"; diff --git a/pkgs/development/libraries/science/chemistry/tblite/default.nix b/pkgs/development/libraries/science/chemistry/tblite/default.nix index bd40a12cea03..db3734562e15 100644 --- a/pkgs/development/libraries/science/chemistry/tblite/default.nix +++ b/pkgs/development/libraries/science/chemistry/tblite/default.nix @@ -88,10 +88,6 @@ stdenv.mkDerivation rec { doCheck = buildType == "meson"; - preCheck = '' - export OMP_NUM_THREADS=2 - ''; - meta = { description = "Light-weight tight-binding framework"; mainProgram = "tblite"; From 5646fd9ed14b1118bcb8a4c523419f0278ef2a41 Mon Sep 17 00:00:00 2001 From: Grimmauld Date: Fri, 26 Jun 2026 18:16:24 +0200 Subject: [PATCH 09/10] pixman: use openmpCheckPhaseHook (cherry picked from commit cd137f1c889116425f507d709e709dead46dbcea) --- pkgs/by-name/pi/pixman/package.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pkgs/by-name/pi/pixman/package.nix b/pkgs/by-name/pi/pixman/package.nix index 3ef554a9eb07..23755586fe6c 100644 --- a/pkgs/by-name/pi/pixman/package.nix +++ b/pkgs/by-name/pi/pixman/package.nix @@ -6,6 +6,7 @@ ninja, pkg-config, libpng, + openmpCheckPhaseHook, glib, # just passthru # for passthru.tests @@ -46,6 +47,7 @@ stdenv.mkDerivation (finalAttrs: { meson ninja pkg-config + openmpCheckPhaseHook __flattenIncludeHackHook ]; From ca1b547ed93deac31f563d05170bf7db95f2de81 Mon Sep 17 00:00:00 2001 From: Grimmauld Date: Fri, 26 Jun 2026 18:16:50 +0200 Subject: [PATCH 10/10] mctc-lib: use openmpCheckPhaseHook (cherry picked from commit 576031cf3c432361b33dff42e71ce639518a9219) --- pkgs/by-name/mc/mctc-lib/package.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pkgs/by-name/mc/mctc-lib/package.nix b/pkgs/by-name/mc/mctc-lib/package.nix index 2a11a84f94db..ed313b3bc7ca 100644 --- a/pkgs/by-name/mc/mctc-lib/package.nix +++ b/pkgs/by-name/mc/mctc-lib/package.nix @@ -10,6 +10,7 @@ pkg-config, python3, jonquil, + openmpCheckPhaseHook, }: assert ( @@ -43,6 +44,7 @@ stdenv.mkDerivation (finalAttrs: { gfortran pkg-config python3 + openmpCheckPhaseHook ] ++ lib.optionals (buildType == "meson") [ meson