From 29969a5ec7df53ca82585d5b7c2e472030c04f54 Mon Sep 17 00:00:00 2001 From: Chris Hodapp Date: Mon, 1 May 2017 08:59:43 -0400 Subject: rstudio: Fix recompilation issue with custom package set This attempts to fix the issue described at https://github.com/NixOS/nixpkgs/pull/22219#issuecomment-291801133. Any change to the custom packages passed to RStudio causes this to completely rebuild RStudio, which is completely unnecessary and also a bit of a hindrance as it's a fairly slow build. This rolls back most of that old PR, and instead implements something more like rWrapper. Existing configurations with the old useRPackages will break. --- pkgs/applications/editors/rstudio/default.nix | 20 +++----------------- 1 file changed, 3 insertions(+), 17 deletions(-) (limited to 'pkgs/applications/editors/rstudio') diff --git a/pkgs/applications/editors/rstudio/default.nix b/pkgs/applications/editors/rstudio/default.nix index f7ede1a8ea56..eab1228da1ac 100644 --- a/pkgs/applications/editors/rstudio/default.nix +++ b/pkgs/applications/editors/rstudio/default.nix @@ -1,13 +1,5 @@ { stdenv, fetchurl, makeDesktopItem, cmake, boost163, zlib, openssl, -R, qt5, libuuid, hunspellDicts, unzip, ant, jdk, gnumake, makeWrapper, pandoc, -# If you have set up an R wrapper with other packages by following -# something like https://nixos.org/nixpkgs/manual/#r-packages, RStudio -# by default not be able to access any of those R packages. In order -# to do this, override the argument "R" here with your respective R -# wrapper, and set "useRPackages" to true. This will add the -# environment variable R_PROFILE_USER to the RStudio wrapper, pointing -# to an R script which will allow R to use these packages. -useRPackages ? false +R, qt5, libuuid, hunspellDicts, unzip, ant, jdk, gnumake, makeWrapper, pandoc }: let @@ -111,14 +103,8 @@ stdenv.mkDerivation rec { mimeType = "text/x-r-source;text/x-r;text/x-R;text/x-r-doc;text/x-r-sweave;text/x-r-markdown;text/x-r-html;text/x-r-presentation;application/x-r-data;application/x-r-project;text/x-r-history;text/x-r-profile;text/x-tex;text/x-markdown;text/html;text/css;text/javascript;text/x-chdr;text/x-csrc;text/x-c++hdr;text/x-c++src;"; }; - postInstall = let rProfile = - # RStudio seems to bypass the environment variables that the R - # wrapper already applies, and so this sets R_PROFILE_USER to - # again make those R packages accessible: - if useRPackages - then "--set R_PROFILE_USER ${R}/${R.passthru.fixLibsR}" else ""; - in '' - wrapProgram $out/bin/rstudio --suffix PATH : ${gnumake}/bin ${rProfile} + postInstall = '' + wrapProgram $out/bin/rstudio --suffix PATH : ${gnumake}/bin mkdir $out/share cp -r ${desktopItem}/share/applications $out/share mkdir $out/share/icons -- cgit 1.4.1