[R] Rprofile.site and automatic installation of missing packages

Duncan Murdoch murdoch@dunc@n @end|ng |rom gm@||@com
Tue Mar 21 13:55:13 CET 2023


?Startup says:  "Note that when the site and user profile files are 
sourced only the base package is loaded, so objects in other packages 
need to be referred to by e.g. utils::dump.frames or after explicitly 
loading the package concerned."

So you need utils::installed.packages and utils::install.packages .

Duncan Murdoch

On 21/03/2023 8:04 a.m., PIKAL Petr wrote:
> Dear all.
> 
>   
> 
> I am trying to install missing (not installed) packages during startup of R
> through code in Rprofile.site but I miserably failed and I am not sure what
> I am doing wrong.
> 
>   
> 
> R is installed to C:Program files but it is not writable for the users,
> therefore I cannot change Rprofile.site located in root etc directory. I
> however can put Rprofile.site in users home directory (Documents) and use it
> for R startup setting (partly).
> 
> However I want for less experienced users to put a code here to check
> installed packages, check if some specified set of packages is installed and
> install them, but it is not working.
> 
>   
> 
> The code in Rprofile.site is:
> 
>   
> 
> #**********
> 
> test <- scan("pack.txt", character(), quote = "")
> 
> inst <- installed.packages()
> 
> install.packages(test[!test %in% inst], repos="https://cloud.r-project.org")
> 
> #**********
> 
>   
> 
> An example of pack.txt is e.g.
> 
> ggplot2
> 
> zoo
> 
>   
> 
> but the code is not executed and packages are not installed. If I use this
> code after R starts, everything is OK and packages are installed to
> 
>   
> 
>> Sys.getenv("R_LIBS_USER")
> 
> [1] "C:\\Users\\PikalP\\AppData\\Local/R/win-library/4.2"
> 
>>
> 
> The same applies if I put e.g. library(MASS) in the Rprofile.site, the
> package is not loaded but after R is live, library(MASS) loads a package.
> 
>   
> 
> So my question is What is the best way to check after fresh R installation
> if some predefined set of packages is installed and if not, perform an
> installation without user intervention in Windows environment?
> 
>   
> 
> S pozdravem | Best Regards
> 
> Petr
> 
> 
> ______________________________________________
> R-help using r-project.org mailing list -- To UNSUBSCRIBE and more, see
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
> and provide commented, minimal, self-contained, reproducible code.



More information about the R-help mailing list