From 65b556ed83864c19590f36a0acb9de4e7ab0806e Mon Sep 17 00:00:00 2001 From: David McFarland Date: Sun, 8 Sep 2024 15:00:51 -0300 Subject: [PATCH] dotnetCorePackages.patchNupkgs: explicitly reference patchelf --- pkgs/development/compilers/dotnet/patch-nupkgs.nix | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/pkgs/development/compilers/dotnet/patch-nupkgs.nix b/pkgs/development/compilers/dotnet/patch-nupkgs.nix index c34791b84ce0..c351ea7b32ef 100644 --- a/pkgs/development/compilers/dotnet/patch-nupkgs.nix +++ b/pkgs/development/compilers/dotnet/patch-nupkgs.nix @@ -7,6 +7,7 @@ , libuuid , openssl , lttng-ust_2_12 +, patchelf , writeShellScriptBin }: @@ -43,23 +44,23 @@ in writeShellScriptBin "patch-nupkgs" ('' find "$x" -type f -print0 | while IFS= read -rd "" p; do if [[ "$p" != *.nix-patched ]] \ && isELF "$p" \ - && patchelf --print-interpreter "$p" &>/dev/null; then + && ${patchelf}/bin/patchelf --print-interpreter "$p" &>/dev/null; then tmp="$p".$$.nix-patched # if this fails to copy then another process must have patched it cp --reflink=auto "$p" "$tmp" || continue echo "Patchelfing $p as $tmp" - patchelf \ + ${patchelf}/bin/patchelf \ --set-interpreter "${stdenv.cc.bintools.dynamicLinker}" \ "$tmp" ||: # This makes sure that if the binary requires some specific runtime dependencies, it can find it. # This fixes dotnet-built binaries like crossgen2 - patchelf \ + ${patchelf}/bin/patchelf \ --add-needed libicui18n.so \ --add-needed libicuuc.so \ --add-needed libz.so \ --add-needed libssl.so \ "$tmp" - patchelf \ + ${patchelf}/bin/patchelf \ --add-rpath "${binaryRPath}" \ "$tmp" ||: mv "$tmp" "$p"