1{ lib
2, runCommand
3, R
4, radian
5, makeWrapper
6, recommendedPackages
7, packages
8, wrapR ? false
9}:
10
11runCommand (radian.name + "-wrapper") {
12 preferLocalBuild = true;
13 allowSubstitutes = false;
14
15 buildInputs = [ R radian ] ++ recommendedPackages ++ packages;
16
17 nativeBuildInputs = [ makeWrapper ];
18
19 passthru = { inherit recommendedPackages; };
20
21 meta = radian.meta // {
22 # To prevent builds on hydra
23 hydraPlatforms = [ ];
24 # prefer wrapper over the package
25 priority = (radian.meta.priority or 0) - 1;
26 };
27} (''
28 makeWrapper "${radian}/bin/radian" "$out/bin/radian" \
29 --prefix "R_LIBS_SITE" ":" "$R_LIBS_SITE" \
30 --set "R_HOME" "${R}/lib/R"
31'' + lib.optionalString wrapR ''
32 cd ${R}/bin
33 for exe in *; do
34 makeWrapper "${R}/bin/$exe" "$out/bin/$exe" \
35 --prefix "R_LIBS_SITE" ":" "$R_LIBS_SITE"
36 done
37'')