From dc5bdf22d91f39e296bfec2cbe82f23ff33afd53 Mon Sep 17 00:00:00 2001 From: Remy Goldschmidt Date: Sun, 4 Feb 2018 10:44:04 -0600 Subject: [PATCH] gnuradio: fix wrapper gnuradio-with-packages was not running makeWrapper on any of the symlinked executables because `find $out/bin -type f -executable` does not resolve symlinks. I don't understand how the old code ever worked on any system. --- pkgs/applications/misc/gnuradio/wrapper.nix | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) diff --git a/pkgs/applications/misc/gnuradio/wrapper.nix b/pkgs/applications/misc/gnuradio/wrapper.nix index db2b453913f4..ffed3da03187 100644 --- a/pkgs/applications/misc/gnuradio/wrapper.nix +++ b/pkgs/applications/misc/gnuradio/wrapper.nix @@ -1,7 +1,6 @@ -{ stdenv, gnuradio, makeWrapper, python -, extraPackages ? [] }: +{ stdenv, gnuradio, makeWrapper, python, extraPackages ? [] }: -with stdenv.lib; +with { inherit (stdenv.lib) appendToName makeSearchPath; }; stdenv.mkDerivation { name = (appendToName "with-packages" gnuradio).name; @@ -11,13 +10,15 @@ stdenv.mkDerivation { mkdir -p $out/bin ln -s "${gnuradio}"/bin/* $out/bin/ - for file in $(find $out/bin -type f -executable); do - wrapProgram "$file" \ - --prefix PYTHONPATH : ${stdenv.lib.concatStringsSep ":" - (map (path: "$(toPythonPath ${path})") extraPackages)} \ - --prefix GRC_BLOCKS_PATH : ${makeSearchPath "share/gnuradio/grc/blocks" extraPackages} + for file in $(find -L $out/bin -type f); do + if test -x "$(readlink -f "$file")"; then + wrapProgram "$file" \ + --prefix PYTHONPATH : ${stdenv.lib.concatStringsSep ":" + (map (path: "$(toPythonPath ${path})") extraPackages)} \ + --prefix GRC_BLOCKS_PATH : ${makeSearchPath "share/gnuradio/grc/blocks" extraPackages} + fi done - ''; + inherit (gnuradio) meta; }