This is a re-post by the author from:
https://www.bsetmet.com/index.php/2019/05/26/gist-rstudio-vsersions-ubuntu/
I got fed up with the manual process, so I started to automate the entire process Ubuntu in a bash script. This script should work for most Debian based distros.
TLDR -> Get to the Code on Github!
(Through out this process stackoverflow was my friend.)
Generally the process for 3.4.4 (for example) is to:
1. Download R from CRAN
https://cran.r-project.org/src/base/R-3/R-3.4.4.tar.gz
2. Un-archive files
tar -xzvf R-3.4.4.tar.gz
3. Make from source
(from inside the un-archived directory)
sudo ./configure --prefix=/opt/R/$r_ver --enable-R-shlib && \ sudo make && \ sudo make install
4. Update environment variable for R-Studio
export RSTUDIO_WHICH_R="/opt/R/3.4.4/bin/R"
5. Launch R-Studio (in the context of this environment variable)
rstudio
I started down the road of manually downloading all the .tar.gz files of the versions that I might want to install, so then I grabbed a method for un-archiving all these files at one time.
find . -name '*.tar.gz' -execdir tar -xzvf '{}' \;
Here is where I started to Build and install R from source in an automating script at once I use this
#!/bin/bash # run with sudo function config_make_install_r(){ folder_path=$1 r_version=$2 cd $folder_path sudo ./configure --prefix=/opt/R/$r_version --enable-R-shlib && \ sudo make && \ sudo make install } config_make_install_r ~/Downloads/R-3.4.4 3.4.4
From here i added a menu system i found on stack overflow. This script prompts to install whatever version of R you are attempting to launch if not yet installed.
https://gist.github.com/seakintruth/95d49b6ea316c2b8a6e283e1ee1a3f3a
This file can be downloaded, inspected and run from the github RAW link, of course to run a .sh file it needs to be updated to be executable with
sudo chmod +x RSTUDIO_Version_Launcher.sh
I have found that by just directing the gist’s contents directly into bash i can skip that step!
bash <(curl -s https://gist.githubusercontent.com/seakintruth/95d49b6ea316c2b8a6e283e1ee1a3f3a/raw)
Executing this script also places a copy of it’s self in the current users local profile, and a link to a new .desktop for the local Unity Launcher on first run. This allows me to run this custom launcher from the application launcher. I then pin it as a favorite to the Dock manually.
The completed can be found on Github HERE or view RAW script from Github
Jeremy D. Gerdes [email protected] April 2019 (CC BY-SA 3.0) https://creativecommons.org/licenses/by-sa/3.0/