From 21d83e5b1164d1ddac5989168b1501354420b560 Mon Sep 17 00:00:00 2001 From: Joachim Fasting Date: Wed, 5 Dec 2018 19:04:04 +0100 Subject: rstudioWrapper: use runCommand, local build only This seems more appropriate for a wrapper generator. --- pkgs/development/r-modules/wrapper-rstudio.nix | 38 ++++++++++++-------------- 1 file changed, 17 insertions(+), 21 deletions(-) (limited to 'pkgs/development/r-modules/wrapper-rstudio.nix') diff --git a/pkgs/development/r-modules/wrapper-rstudio.nix b/pkgs/development/r-modules/wrapper-rstudio.nix index 8ad3a103c93a..5cbedf403d21 100644 --- a/pkgs/development/r-modules/wrapper-rstudio.nix +++ b/pkgs/development/r-modules/wrapper-rstudio.nix @@ -1,15 +1,15 @@ -{ stdenv, R, rstudio, makeWrapper, recommendedPackages, packages, qtbase }: +{ lib, runCommand, R, rstudio, makeWrapper, recommendedPackages, packages, qtbase }: let - qtVersion = with stdenv.lib.versions; "${major qtbase.version}.${minor qtbase.version}"; + qtVersion = with lib.versions; "${major qtbase.version}.${minor qtbase.version}"; in -stdenv.mkDerivation rec { +runCommand (rstudio.name + "-wrapper") { + preferLocalBuild = true; + allowSubstitutes = false; - name = rstudio.name + "-wrapper"; + nativeBuildInputs = [makeWrapper]; - buildInputs = [makeWrapper R rstudio] ++ recommendedPackages ++ packages; - - unpackPhase = ":"; + buildInputs = [R rstudio] ++ recommendedPackages ++ packages; # rWrapper points R to a specific set of packages by using a wrapper # (as in https://nixos.org/nixpkgs/manual/#r-packages) which sets @@ -20,18 +20,14 @@ stdenv.mkDerivation rec { # into an R file (fixLibsR) which achieves the same effect, then # uses R_PROFILE_USER to load this code at startup in RStudio. fixLibsR = "fix_libs.R"; - installPhase = '' - mkdir $out - echo "# Autogenerated by wrapper-rstudio.nix from R_LIBS_SITE" > $out/${fixLibsR} - echo -n ".libPaths(c(.libPaths(), \"" >> $out/${fixLibsR} - echo -n $R_LIBS_SITE | sed -e 's/:/", "/g' >> $out/${fixLibsR} - echo -n "\"))" >> $out/${fixLibsR} - echo >> $out/${fixLibsR} - makeWrapper ${rstudio}/bin/rstudio $out/bin/rstudio --set R_PROFILE_USER $out/${fixLibsR} \ - --prefix QT_PLUGIN_PATH : ${qtbase}/lib/qt-${qtVersion}/plugins - ''; - - meta = { - platforms = stdenv.lib.platforms.unix; - }; } +'' +mkdir $out +echo "# Autogenerated by wrapper-rstudio.nix from R_LIBS_SITE" > $out/$fixLibsR +echo -n ".libPaths(c(.libPaths(), \"" >> $out/$fixLibsR +echo -n $R_LIBS_SITE | sed -e 's/:/", "/g' >> $out/$fixLibsR +echo -n "\"))" >> $out/$fixLibsR +echo >> $out/$fixLibsR +makeWrapper ${rstudio}/bin/rstudio $out/bin/rstudio --set R_PROFILE_USER $out/$fixLibsR \ + --prefix QT_PLUGIN_PATH : ${qtbase}/lib/qt-${qtVersion}/plugins +'' -- cgit v1.2.3