anchor.diff:  
   # install sparklyr so we can do Spark via Livy
   RUN DEBIAN_FRONTEND=noninteractive wget \
  -   https://mirrors.nics.utk.edu/cran/src/contrib/config_0.3.tar.gz \
  -   https://mirrors.nics.utk.edu/cran/src/contrib/dbplyr_1.2.2.tar.gz \
  -   https://mirrors.nics.utk.edu/cran/src/contrib/rappdirs_0.3.1.tar.gz \
  -   https://mirrors.nics.utk.edu/cran/src/contrib/sparklyr_0.8.4.tar.gz
  +   https://archive.linux.duke.edu/cran/src/contrib/config_0.3.tar.gz \
  +   https://archive.linux.duke.edu/cran/src/contrib/dbplyr_1.2.2.tar.gz \
  +   https://archive.linux.duke.edu/cran/src/contrib/rappdirs_0.3.1.tar.gz \
  +   https://archive.linux.duke.edu/cran/src/contrib/sparklyr_0.8.4.tar.gz
      
   RUN DEBIAN_FRONTEND=noninteractive R CMD INSTALL \
      config_0.3.tar.gz \
  
positive.code:   
  # more libraries Mine Cetinakya-Rundel asked for
  RUN DEBIAN_FRONTEND=noninteractive wget \
     https://mirrors.nics.utk.edu/cran/src/contrib/openintro_1.7.1.tar.gz \
     https://mirrors.nics.utk.edu/cran/src/contrib/tibble_1.4.2.tar.gz \
     https://mirrors.nics.utk.edu/cran/src/contrib/bindr_0.1.1.tar.gz \
     https://mirrors.nics.utk.edu/cran/src/contrib/bindrcpp_0.2.2.tar.gz \
     https://mirrors.nics.utk.edu/cran/src/contrib/pkgconfig_2.0.2.tar.gz \
     https://mirrors.nics.utk.edu/cran/src/contrib/plogr_0.2.0.tar.gz \
     https://mirrors.nics.utk.edu/cran/src/contrib/purrr_0.2.5.tar.gz \
     https://mirrors.nics.utk.edu/cran/src/contrib/tidyselect_0.2.4.tar.gz \
     https://mirrors.nics.utk.edu/cran/src/contrib/dplyr_0.7.6.tar.gz \
     https://mirrors.nics.utk.edu/cran/src/contrib/assertthat_0.2.0.tar.gz \
     https://mirrors.nics.utk.edu/cran/src/contrib/R6_2.2.2.tar.gz \
     https://mirrors.nics.utk.edu/cran/src/contrib/magrittr_1.5.tar.gz \
     https://mirrors.nics.utk.edu/cran/src/contrib/lazyeval_0.2.1.tar.gz \
     https://mirrors.nics.utk.edu/cran/src/contrib/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.0.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.23.0.tar.gz \
     https://archive.linux.duke.edu/cran/src/contrib/devtools_1.13.6.tar.gz \
     https://archive.linux.duke.edu/cran/src/contrib/R6_2.2.2.tar.gz \
     https://archive.linux.duke.edu/cran/src/contrib/httr_1.3.1.tar.gz \
     https://archive.linux.duke.edu/cran/src/contrib/RCurl_1.95-4.11.tar.gz \
     https://archive.linux.duke.edu/cran/src/contrib/BH_1.66.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.2.tar.gz \
     https://archive.linux.duke.edu/cran/src/contrib/jsonlite_1.5.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.16.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.5.tar.gz \
  