From 9ccaa6cd7c745d21c0918b0c9723fdcf44cadb94 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Christian=20K=C3=B6gler?= Date: Thu, 21 May 2026 17:21:16 +0200 Subject: [PATCH] sherpa-onnx: fix darwin runtime linking to onnxruntime Set DYLD_FALLBACK_LIBRARY_PATH during checkPhase and add an rpath to the Python extension so it can locate the onnxruntime dylib on Darwin. --- pkgs/by-name/sh/sherpa-onnx/package.nix | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/pkgs/by-name/sh/sherpa-onnx/package.nix b/pkgs/by-name/sh/sherpa-onnx/package.nix index b09d89265c8b..bc584ff8a08f 100644 --- a/pkgs/by-name/sh/sherpa-onnx/package.nix +++ b/pkgs/by-name/sh/sherpa-onnx/package.nix @@ -191,6 +191,10 @@ stdenv.mkDerivation (finalAttrs: { doCheck = true; + preCheck = lib.optionalString stdenv.hostPlatform.isDarwin '' + export DYLD_FALLBACK_LIBRARY_PATH=${lib.getLib onnxruntime}/lib + ''; + # Use ctest directly because the default `make check` target includes clang-tidy. checkPhase = '' runHook preCheck @@ -202,6 +206,10 @@ stdenv.mkDerivation (finalAttrs: { mkdir -p $python cp -r ../sherpa-onnx/python/sherpa_onnx $python/ rm $out/lib/_sherpa_onnx*.so + ${lib.optionalString stdenv.hostPlatform.isDarwin '' + install_name_tool -add_rpath ${lib.getLib onnxruntime}/lib \ + $python/sherpa_onnx/lib/_sherpa_onnx*.so + ''} ''; passthru = {