[R-SIG-Mac] some errors

Kasper Daniel Hansen k.hansen at biostat.ku.dk
Thu Jun 9 07:08:32 CEST 2005


Thanks for all the help.

First a summary: amongst the very many help suggestion, the best 
approach seems to be to use ~/.Renviron: in that file it is possible to 
set "environment" variables which are used even if there is no 
environment, such as when start the R GUI. This means that the values 
will be used in every invocation fo R - under shell, in Carbon Emacs, in 
the GUI.

Now, I actually tried that out without success before my post. I have 
done some further research and I think I have found some kind of bug 
(or else something very strange).

First off: I have tried everything on a Linux system running R-2.0.1 
where it works as expected.

My .Renviron is as follows 
 R_LIBS=/Users/kdh/Library/R/library
 R_PAPERSIZE=letter
 R_EDITOR=/usr/bin/nano
It is being parsed begause the settings affect the papersize and the 
editor used by R. The problem is the R_LIBS, and it is quite strange. 
Now, I have removed everything from my .profile as seen by

grue:~ kdh$ echo $R_LIBS

grue:~ kdh$ R

R : Copyright 2005, The R Foundation for Statistical Computing
<SNIP: R elcome message>
> .libPaths()
[1] "/Library/Frameworks/R.framework/Resources/library"
> Sys.getenv("R_LIBS")
                        R_LIBS 
"/Users/kdh/Library/R/library" 
> .libPaths(Sys.getenv("R_LIBS"))
> .libPaths()
[1] "/Users/kdh/Library/R/library"                     
[2] "/Library/Frameworks/R.framework/Resources/library"

What is appearent from the transcript is
1) R_LIBS is actually set as seen by Sys.getenv.
2) This does not affect .libPaths()
3) However, passing R_LIBS to .libPaths() sets up everything correctly.

This baffles me quite a lot... I think it most be a mac bug since it 
works under Linux (ok, on an older version, but still...)

Just for completeness sake: I am running Tiger, with the R-2.1.0 patched 
version. I do not have administration privileges, but it seems to me 
that the permissions on ~/Library/ and subdirectories are as they ought 
to be. R is owned by root.

And finally, I realized that the typo in preferences probably should be 
corrected to $HOME/Library/R/library (although I must add that this 
setting is also not reflected in .libPaths())

Kasper

On Wed, Jun 08, 2005 at 08:56:00PM -0700, Byron Ellis wrote:
> Or you can just
> 
> (setenv "R_LIBS" (format "%s/Library/R/library" (getenv "HOME")))
> 
> in your .emacs. You can also set your DISPLAY variable there as well.  
> I'm sure if you were VERY enterprising you could write some elisp  
> that would snarf your .profile, parse it and then run the elisp  
> equivalents.
> 
> On Jun 8, 2005, at 8:48 PM, Seth Falcon wrote:
> 
> >Hi Kasper,
> >
> >On  8 Jun 2005, k.hansen at biostat.ku.dk wrote:
> >
> >>On the terminal as well as using ESS (Emacs) I can not get
> >>.libPaths() to include /Users/kdh/Library/R despite the fact that I
> >>have exported it from ~/.profile and the variable is set (output
> >>below).  I have also tried using ~/.Renviron
> >>
> >
> >I suspect the issue here is that Emacs isn't picking up your
> >environment.  GUI apps started from the Finder don't get the same
> >environment (.profile, .bash_profile, etc.) that apps started from the
> >Terminal do.
> >
> >My solution: I start my Emacs from Terminal and then it inherits the
> >proper PATH and other env vars such as R_LIBS.
> >
> >There is another possible solution that involves editing
> >~/.MacOSX/environment.plist, but I never managed to get that working
> >as I wanted.
> >
> >Best,
> >
> >+ seth
> >
> >_______________________________________________
> >R-SIG-Mac mailing list
> >R-SIG-Mac at stat.math.ethz.ch
> >https://stat.ethz.ch/mailman/listinfo/r-sig-mac
> >
> 
> ---
> Byron Ellis (ellis at stat.harvard.edu)
> "Oook" -- The Librarian
> 
> _______________________________________________
> R-SIG-Mac mailing list
> R-SIG-Mac at stat.math.ethz.ch
> https://stat.ethz.ch/mailman/listinfo/r-sig-mac

-- 
Kasper Daniel Hansen, Research Assistant
Department of Biostatistics, University of Copenhagen



More information about the R-SIG-Mac mailing list