Shiny app which depends on package on GitHub?

I want to deploy a shiny app which depends on a package on GitHub - how can I do this? All tries failed, as the package can not be installed as it is not on CRAN?

I get the following messages, even though I have the following lines on top of the ui.R and sever.R:

  library(remotes)
  remotes::install_github("Exp-Micro-Ecol-Hub/dmdScheme", ref = "separateDefinition")
  library(dmdScheme)
2019-12-03T10:55:15.521175+00:00 shinyapps[1554216]: LANG: en_US.UTF-8
2019-12-03T10:55:15.521176+00:00 shinyapps[1554216]: R version: 3.6.1
2019-12-03T10:55:15.521178+00:00 shinyapps[1554216]: shiny version: 1.3.2
2019-12-03T10:55:15.521179+00:00 shinyapps[1554216]: httpuv version: 1.5.1
2019-12-03T10:55:15.521137+00:00 shinyapps[1554216]: Server version: 1.7.8-7
2019-12-03T10:55:15.521432+00:00 shinyapps[1554216]: Using pandoc at /opt/connect/ext/pandoc2
2019-12-03T10:55:15.666108+00:00 shinyapps[1554216]: Using jsonlite for JSON processing
2019-12-03T10:55:15.673376+00:00 shinyapps[1554216]: 
2019-12-03T10:55:15.673378+00:00 shinyapps[1554216]: Starting R with process ID: '24'
2019-12-03T10:55:15.698397+00:00 shinyapps[1554216]: 
2019-12-03T10:55:15.698399+00:00 shinyapps[1554216]: Listening on http://127.0.0.1:38756
2019-12-03T10:55:15.521193+00:00 shinyapps[1554216]: rmarkdown version: 1.18
2019-12-03T10:55:15.521200+00:00 shinyapps[1554216]: knitr version: 1.26
2019-12-03T10:55:15.521231+00:00 shinyapps[1554216]: RJSONIO version: (none)
2019-12-03T10:55:15.521204+00:00 shinyapps[1554216]: jsonlite version: 1.6
2019-12-03T10:55:15.521244+00:00 shinyapps[1554216]: htmltools version: 0.4.0
2019-12-03T10:55:19.049516+00:00 shinyapps[1554216]: Warning: Error in scheme_list_in_repo: could not find function "scheme_list_in_repo"
2019-12-03T10:55:19.097838+00:00 shinyapps[1554216]:   76: normalizeChoicesArgs
2019-12-03T10:55:19.097840+00:00 shinyapps[1554216]:   75: radioButtons
2019-12-03T10:57:39.843014+00:00 shinyapps[1554216]: Server version: 1.7.8-7
2019-12-03T10:57:39.843047+00:00 shinyapps[1554216]: LANG: en_US.UTF-8
2019-12-03T10:57:39.843049+00:00 shinyapps[1554216]: R version: 3.6.1
2019-12-03T10:57:39.843049+00:00 shinyapps[1554216]: shiny version: 1.3.2
2019-12-03T10:57:39.843061+00:00 shinyapps[1554216]: httpuv version: 1.5.1
2019-12-03T10:57:39.843061+00:00 shinyapps[1554216]: rmarkdown version: 1.18
2019-12-03T10:57:39.843079+00:00 shinyapps[1554216]: knitr version: 1.26
2019-12-03T10:57:39.843080+00:00 shinyapps[1554216]: jsonlite version: 1.6
2019-12-03T10:57:39.843095+00:00 shinyapps[1554216]: RJSONIO version: (none)
2019-12-03T10:57:39.843267+00:00 shinyapps[1554216]: Using pandoc at /opt/connect/ext/pandoc2
2019-12-03T10:57:39.981946+00:00 shinyapps[1554216]: Using jsonlite for JSON processing
2019-12-03T10:57:39.988000+00:00 shinyapps[1554216]: 
2019-12-03T10:57:39.988001+00:00 shinyapps[1554216]: Starting R with process ID: '25'
2019-12-03T10:57:40.010675+00:00 shinyapps[1554216]: 
2019-12-03T10:57:40.010676+00:00 shinyapps[1554216]: Listening on http://127.0.0.1:34764
2019-12-03T10:57:39.843096+00:00 shinyapps[1554216]: htmltools version: 0.4.0
2019-12-03T10:57:45.860628+00:00 shinyapps[1554216]: Downloading GitHub repo Exp-Micro-Ecol-Hub/dmdScheme@separateDefinition
2019-12-03T10:57:48.396182+00:00 shinyapps[1554216]: openxlsx (4.1.1 -> 4.1.3) [CRAN]
2019-12-03T10:57:48.398407+00:00 shinyapps[1554216]: Installing 1 packages: openxlsx
2019-12-03T10:57:48.421448+00:00 shinyapps[1554216]:   68: <Anonymous>
2019-12-03T10:57:48.411247+00:00 shinyapps[1554216]: Warning: Error in : Failed to install 'dmdScheme' from GitHub:
2019-12-03T10:57:48.411249+00:00 shinyapps[1554216]:   (converted from warning) 'lib = "/opt/R/3.6.1/lib/R/library"' is not writable

You should not install packages inside your shiny app, just install it locally and rsconnect will figure out how to install it based on your local library, you just have to load the library inside your app.

2 Likes

Some additional documentation on the subject.

1 Like

This topic was automatically closed 7 days after the last reply. New replies are no longer allowed.