anchor.diff:     https://archive.linux.duke.edu/cran/src/contrib/tidyselect_0.2.4.tar.gz \
      https://archive.linux.duke.edu/cran/src/contrib/dplyr_0.7.6.tar.gz \
      https://archive.linux.duke.edu/cran/src/contrib/assertthat_0.2.0.tar.gz \
  -   https://archive.linux.duke.edu/cran/src/contrib/R6_2.2.2.tar.gz \
      https://archive.linux.duke.edu/cran/src/contrib/magrittr_1.5.tar.gz \
      https://archive.linux.duke.edu/cran/src/contrib/lazyeval_0.2.1.tar.gz \
      https://archive.linux.duke.edu/cran/src/contrib/DBI_1.0.0.tar.gz 
  
positive.code: RUN DEBIAN_FRONTEND=noninteractive R CMD INSTALL \
     openintro_1.7.1.tar.gz \
     assertthat_0.2.0.tar.gz \
     R6_2.2.2.tar.gz \
     magrittr_1.5.tar.gz \
     lazyeval_0.2.1.tar.gz \
     DBI_1.0.0.tar.gz \
  
negative.code: # R packages we need for devtools - and we need devtools to be able to update the rmarkdown package
  RUN DEBIAN_FRONTEND=noninteractive wget \
     https://archive.linux.duke.edu/cran/src/contrib/rstudioapi_0.10.tar.gz \
     https://archive.linux.duke.edu/cran/src/contrib/openssl_1.2.2.tar.gz \
     https://archive.linux.duke.edu/cran/src/contrib/withr_2.1.2.tar.gz \
     https://archive.linux.duke.edu/cran/src/contrib/brew_1.0-6.tar.gz \
     https://archive.linux.duke.edu/cran/src/contrib/magrittr_1.5.tar.gz \
     https://archive.linux.duke.edu/cran/src/contrib/Archive/roxygen2/roxygen2_5.0.1.tar.gz \
     https://archive.linux.duke.edu/cran/src/contrib/rversions_1.0.3.tar.gz \
     https://archive.linux.duke.edu/cran/src/contrib/git2r_0.25.2.tar.gz \
     https://archive.linux.duke.edu/cran/src/contrib/devtools_2.0.1.tar.gz \
     https://archive.linux.duke.edu/cran/src/contrib/R6_2.4.0.tar.gz \
     https://archive.linux.duke.edu/cran/src/contrib/httr_1.4.0.tar.gz \
     https://archive.linux.duke.edu/cran/src/contrib/RCurl_1.95-4.12.tar.gz \
     https://archive.linux.duke.edu/cran/src/contrib/BH_1.69.0-1.tar.gz \
     https://archive.linux.duke.edu/cran/src/contrib/xml2_1.2.0.tar.gz \
     https://archive.linux.duke.edu/cran/src/contrib/curl_3.3.tar.gz \
     https://archive.linux.duke.edu/cran/src/contrib/jsonlite_1.6.tar.gz \
     https://archive.linux.duke.edu/cran/src/contrib/downloader_0.4.tar.gz \
     https://archive.linux.duke.edu/cran/src/contrib/memoise_1.1.0.tar.gz \
     https://archive.linux.duke.edu/cran/src/contrib/plyr_1.8.4.tar.gz \
     https://archive.linux.duke.edu/cran/src/contrib/XML_3.98-1.19.tar.gz \
     https://archive.linux.duke.edu/cran/src/contrib/whisker_0.3-2.tar.gz \
     https://archive.linux.duke.edu/cran/src/contrib/bitops_1.0-6.tar.gz
  
  RUN DEBIAN_FRONTEND=noninteractive R CMD INSTALL \
     jsonlite_1.6.tar.gz \
     memoise_1.1.0.tar.gz \
     whisker_0.3-2.tar.gz \
     bitops_1.0-6.tar.gz \
     RCurl_1.95-4.12.tar.gz \
     plyr_1.8.4.tar.gz \
     R6_2.4.0.tar.gz \
     curl_3.3.tar.gz \
     openssl_1.2.2.tar.gz \
     httr_1.4.0.tar.gz \
     rstudioapi_0.10.tar.gz \
     withr_2.1.2.tar.gz \
     git2r_0.25.2.tar.gz \
     devtools_2.0.1.tar.gz \
     brew_1.0-6.tar.gz \
     magrittr_1.5.tar.gz \
     roxygen2_5.0.1.tar.gz \
     XML_3.98-1.19.tar.gz \
     BH_1.69.0-1.tar.gz \
     xml2_1.2.0.tar.gz \
     rversions_1.0.3.tar.gz \
     downloader_0.4.tar.gz
  
  RUN rm \
     jsonlite_1.6.tar.gz \
     memoise_1.1.0.tar.gz \
     whisker_0.3-2.tar.gz \
     bitops_1.0-6.tar.gz \
     RCurl_1.95-4.12.tar.gz \
     plyr_1.8.4.tar.gz \
     R6_2.4.0.tar.gz \
     httr_1.4.0.tar.gz \
     rstudioapi_0.10.tar.gz \
     openssl_1.2.2.tar.gz \
     withr_2.1.2.tar.gz \
     brew_1.0-6.tar.gz \
     magrittr_1.5.tar.gz \
     roxygen2_5.0.1.tar.gz \
     BH_1.69.0-1.tar.gz \
     XML_3.98-1.19.tar.gz \
     xml2_1.2.0.tar.gz \
     curl_3.3.tar.gz \
     rversions_1.0.3.tar.gz \
     git2r_0.25.2.tar.gz \
     devtools_2.0.1.tar.gz \
     downloader_0.4.tar.gz
  
  # the CRAN install from source fails because a server at MIT will not respond
  