In Ubuntu, I am installing all the R packages in the directory, /usr/lib/R/site-library
by specifying lib
option in install.packages()
.
But when I try to install the development version of the R packages using, install_github()
, it always installs in a local repository of the system user.
.libPaths()
has 4 directories including the local repository. So, I have 2 questions,
Will it install in any of the other 3 repositories if i remove the local repository from .libPaths()
?
Is there any way to specify installation library path in install_github()
?
I am using Ubuntu 12.04 64bit
and R 3.0.1
----------------------UPDATE--------------------------------
Unable to remove the local repository from .libPaths()
If I try to install using install_github()
in RStudio, it installs in the local repository
since lib
is not specified.
If I try to install using install_github()
as non-root user, it installs in the local repository
since lib
is not specified.
If I try to install using install_github()
as root user, it installs in the /usr/local/lib/R/site-library
since lib
is not specified.
Is there any to specify installation lib
?
To add specified library paths in devtools
, we need to use with_libpaths()
Arguments for with_libpaths()
are, with_libpaths(new, code)
Following is an example for using with_libpaths()
,
library(devtools)
with_libpaths(new = "/usr/lib/R/site-library/", install_github('rCharts', 'ramnathv'))
Courtesy: Hadley, here :)
And other than with_libpaths()
, there are more options for in devtools::with_something()
in_dir: working directory
with_collate: collation order
with_envvar: environmental variables
with_libpaths: library paths, replacing current libpaths
with_lib: library paths, prepending to current libpaths
with_locale: any locale setting
with_options: options
with_path: PATH environment variable
with_par: graphics parameters
More explanations here
install_github
takes a ...
argument that passes to devtools::install
. devtools::install
has an args
argument.
args
An optional character vector of additional command line arguments to be passed to R CMD install. This defaults to the value of the option "devtools.install.args".
R CMD install
takes a library argument
Options:
-h, --help print short help message and exit
-v, --version print INSTALL version info and exit
-c, --clean remove files created during installation
--preclean remove files created during a previous run
-d, --debug turn on debugging messages
and build a debug DLL
-l, --library=LIB install packages to library tree LIB
So the following should work:
devtools::install_github("repo", args = c('--library="./mypath/gdfgdg/"'))
however it doesnt appear to be replacing the call to R CMD install
"C:/PROGRA~1/R/R-31~1.0/bin/x64/R" --vanilla CMD INSTALL \
"C:\Users\john\AppData\Local\Temp\RtmpucrXMD/RSelenium_1.3.2.tar.gz" \
--library="C:/Users/john/Documents/R/win-library/3.1" --install-tests \
--library="C:/Users/john/Desktop/"
This is more of a workaround, but I found a way using the command-line version of R.
Starting from Ubuntu:
sudo -i R
the trick (I found) is to use -i
option
Then from R:
.libPaths()
my local R directory does not appear; the default directory is the one that I want.
Then, I install.packages()
or install_github()
with impunity.
Hope this helps,
Ian