Hin-Tak Leung
2009-Jul-28 21:38 UTC
[Rd] R --vannilla for install/remove/shlib(Re: R 2.8->2.9 change that breaks some upgrade scenarios)
This is the change I suggested earlier - it should just disable more of user/site customization during package installation/removal, and getting more of R 2.8-like behavior back. Attached and inlined below. Against svn r48897 (svn HEAD AFAIK). -------------------------------------------------- diff --git a/src/scripts/INSTALL b/src/scripts/INSTALL index 42470c2...4c7bae9 100755 --- a/src/scripts/INSTALL +++ b/src/scripts/INSTALL @@ -9,4 +9,4 @@ while test -n "${1}"; do done ## NB: Apple's ICU needs LC_COLLATE set when R is started. -echo 'tools:::.install_packages()' | R_DEFAULT_PACKAGES= LC_COLLATE=C "${R_HOME}/bin/R" --no-restore --slave --args ${args} +echo 'tools:::.install_packages()' | R_DEFAULT_PACKAGES= LC_COLLATE=C "${R_HOME}/bin/R" --vanilla --slave --args ${args} diff --git a/src/scripts/REMOVE b/src/scripts/REMOVE index dcbe5bf..0be7462 100644 --- a/src/scripts/REMOVE +++ b/src/scripts/REMOVE @@ -1,4 +1,4 @@ # ${R_HOME}/bin/REMOVE for removing add-on packages -R_DEFAULT_PACKAGES=NULL "${R_HOME}/bin/R" -f "${R_SHARE_DIR}/R/REMOVE.R" --no-restore --slave --args $@ +R_DEFAULT_PACKAGES=NULL "${R_HOME}/bin/R" -f "${R_SHARE_DIR}/R/REMOVE.R" --vanilla --slave --args $@ diff --git a/src/scripts/SHLIB b/src/scripts/SHLIB index d0ab9a0..ab62369 100644 --- a/src/scripts/SHLIB +++ b/src/scripts/SHLIB @@ -1,5 +1,5 @@ # # ${R_HOME}/bin/SHLIB -echo 'tools:::.SHLIB()' | R_DEFAULT_PACKAGES=NULL "${R_HOME}/bin/R" --no-restore --slave --no-site-file --no-init-file --args $@ +echo 'tools:::.SHLIB()' | R_DEFAULT_PACKAGES=NULL "${R_HOME}/bin/R" --vanilla --slave --args $@ -------------------- [Hin-Tak at localhost R]$ -------------- next part -------------- A non-text attachment was scrubbed... Name: R-more-vanilla.diff Type: text/x-patch Size: 1308 bytes Desc: not available URL: <https://stat.ethz.ch/pipermail/r-devel/attachments/20090728/3fbd9c08/attachment.bin>
Martin Maechler
2009-Jul-30 08:32 UTC
[Rd] R --vanilla for install/remove/shlib(Re: R 2.8->2.9 change that breaks some upgrade scenarios)
>>>>> "HL" == Hin-Tak Leung <hintak_leung at yahoo.co.uk> >>>>> on Tue, 28 Jul 2009 21:38:46 +0000 (GMT) writes:HL> This is the change I suggested earlier - it should just disable more of user/site customization during package installation/removal, and getting more of R 2.8-like behavior back. Attached and inlined below. HL> Against svn r48897 (svn HEAD AFAIK). hmm, too bad: that's too old. A couple of days ago I had already changed INSTALL to at least *optionally* allow to use --vanilla (just one "n": note I've changed the subject). But as I understand different R core members have different views on this issue, and so for now (with a newish R-devel), I use ----------------------- export R_INSTALL_VANILLA=true ----------------------- somewhere in my (sh/bash) login setup, and am happy that my old '<pkg>-check-me' shell scripts which set R_LIBS explictly again work (whereas the current R-devel by default uses R_LIBS from our site-wide Rprofile equivalent which is not what I think is optimal ..). The current experimental R_INSTALL_VANILLA behavior is still careful to find the user-/site- specific .libPaths()[1] library location for installing a package in the case that no library location has been specified. I'm not sure this addresses all the problems that your patch tried to fix, but in any case, your patch re-installing the --vanilla behavior unconditionally (without the .libPaths()[1] detection) was not suffificient. Best regards, Martin Maechler, ETH Zurich