diff options
Diffstat (limited to 'nixpkgs/pkgs/development/r-modules/wrapper.nix')
-rw-r--r-- | nixpkgs/pkgs/development/r-modules/wrapper.nix | 32 |
1 files changed, 21 insertions, 11 deletions
diff --git a/nixpkgs/pkgs/development/r-modules/wrapper.nix b/nixpkgs/pkgs/development/r-modules/wrapper.nix index 76e819501a57..12704149666c 100644 --- a/nixpkgs/pkgs/development/r-modules/wrapper.nix +++ b/nixpkgs/pkgs/development/r-modules/wrapper.nix @@ -1,21 +1,31 @@ -{ runCommand, R, makeWrapper, recommendedPackages, packages }: - -runCommand (R.name + "-wrapper") { +{ symlinkJoin, R, makeWrapper, recommendedPackages, packages }: +symlinkJoin { + name = R.name + "-wrapper"; preferLocalBuild = true; allowSubstitutes = false; buildInputs = [R] ++ recommendedPackages ++ packages; + paths = [ R ]; nativeBuildInputs = [makeWrapper]; + postBuild = '' + cd ${R}/bin + for exe in *; do + rm "$out/bin/$exe" + + makeWrapper "${R}/bin/$exe" "$out/bin/$exe" \ + --prefix "R_LIBS_SITE" ":" "$R_LIBS_SITE" + done + ''; + # Make the list of recommended R packages accessible to other packages such as rpy2 passthru = { inherit recommendedPackages; }; + + meta = R.meta // { + # To prevent builds on hydra + hydraPlatforms = []; + # prefer wrapper over the package + priority = (R.meta.priority or 0) - 1; + }; } -'' -mkdir -p $out/bin -cd ${R}/bin -for exe in *; do - makeWrapper ${R}/bin/$exe $out/bin/$exe \ - --prefix "R_LIBS_SITE" ":" "$R_LIBS_SITE" -done -'' |