Code Monkey home page Code Monkey logo

installr's Introduction

Build Status CRAN_Status_Badge

installr

Introduction

The installr package offers a set of R functions for the installation and updating of software (currently, only on Windows OS), with a special focus on R itself. This package has two main goals:

  1. To make updating R (on windows) as easy as running a function.
  2. To make it as easy as possible to install all of the needed software for R development (such as git, RTools, etc), as well as for reproducible research using R (such as MikTeX, pandoc, etc).

Motivation

While for Linux users, the installation process of new software may be just running a short line of code, for the regular Windows user it often includes browsing online, finding the latest version, downloading it, running the installer, and deleting the installation file. All of these steps are automatically done using functions in this package.

Installation

To install the stable version on CRAN:

install.packages('installr')

To install the latest installr version from GitHub use:

if (!require('devtools')) install.packages('devtools'); # make sure you have Rtools installed first! if not, then run:
#install.packages('installr')
#install.Rtools()
devtools::install_github('talgalili/installr')

Usage

If you are using the Rgui, you will see a new menu added on your top right (just by "help"), giving you the option to update R, or install new software.

For command line use you can update R by running:

if(!require("installr")) install.packages('installr')
library("installr")
updateR() # this will open dialog boxes to take you through the steps.
# OR use:
# updateR(TRUE) # this will use common defaults and will be the safest/fastest option

Or install a new software simply by running:

library("installr")
installr() #  user can easily select (via a GUI interface) a software to install.

Troubleshooting

If you get either of the following errors from some commands:

Error in download.file(URL, destfile = ...) : 
  unsupported URL scheme

Or:

install.RStudio()
Error in file(con, "r") : cannot open the connection
updateR()
Error in file(con, "r") : cannot open the connection

Try running:

setInternet2(TRUE)

Sources:

Contact

You are welcome to:

Available functions are:

You can see the most recent changes to the package in the NEWS.md file:

https://github.com/talgalili/installr/blob/master/NEWS.md

  • R install/update/uninstall related functions: * updateR() - serves as a "check for updates" function of R itself. Running the function will check for a newer version of R than the one currently used. If one exists, the function will download the most updated R version and run its installer. Once done, the function will offer to copy (or move) all of the packages from the old R library to the new R library. It will then offer to update the moved packages, offer to open the new Rgui, and lastely, it will quit the old R. * uninstall.R * require2 - just like "require", only makes sure to download and install the package in case it is not present on the system (useful for examples...) * restart_RGui - a function to restart Rgui from Rgui * check.for.updates.R * install.R * install.Rdevel - usefull for when developing R packages (as this version contains the latest checks.)

  • Installing software from withing R: * install.RStudio() - download and runs the installer for RStudio. * install.Rtools() - download and runs the installer for Rtools (allowing the user to choose which version to download) * install.pandoc() - download and runs the installer for pandoc. * install.MikTeX() - download and runs the installer for MikTeX. * install.git() - download and runs the installer for git-gui. * install.packages.zip() - for installing package from a url of a ZIP file. Currently, it is the only option I know of for downloading+installing a direct ZIP of an R package. * install.URL() - gets a URL of a zipped file, and makes sure to download and run it. * install.LyX() * install.LaTeX2RTF() * install.GitHub() * install.ImageMagick() * install.GraphicsMagick() * install.SWFTools() * install.FFmpeg() * install.7zip() * install.notepadpp() * install.npptor() * install.Cygwin()

  • Operation system managing functions * manage.os() - for shutdown/sleep of a Windows computer (useful for running at the end of a simulation). Controls all the following functions. * os.hibernate() * os.lock() * os.restart() * os.shutdown() * os.sleep() * is.Rgui() * is.RStudio() * is.windows()

  • CRAN and network related functions: * cranometer - Estimates the speed of each CRAN mirror by measuring the time it takes to download the NEWS file. * myip - return your ip address. * freegeoip - Geolocate IP addresses in R (contributed by Heuristic Andrew) * download_RStudio_CRAN_data * read_RStudio_CRAN_data * barplot_package_users_per_day * lineplot_package_downloads * format_RStudio_CRAN_data * most_downloaded_packages

  • Misc functions: * is.empty - function added for checking if an object is empty (e.g: of zero length)

  • There are a few more functions that you could see in the help files...

Code of conduct

Please note that this project is released with a Contributor Code of Conduct. By participating in this project you agree to abide by its terms.

installr's People

Contributors

ajrgodfrey avatar benmarwick avatar brovic avatar brry avatar chingchuan-chen avatar dmenne avatar dpprdan avatar dripdrop12 avatar friendly avatar garborg avatar hiratake55 avatar ianwesleydev avatar jackstat avatar jancaha avatar kornl avatar mrchypark avatar muschellij2 avatar nachti avatar stnava avatar talgalili avatar tjmahr avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.