-
Notifications
You must be signed in to change notification settings - Fork 11
could not get shinylive to work with rig R installation #76
Copy link
Copy link
Open
Description
issue encountered
There is an issue with how shinylive can not render shinylive app inside quarto document when R has been installed with rig.
Here is my mydoc.qmd document to render :
---
title: "test r-shinylive App in a Quarto document!"
format: html
embed-resources: true
engine: knitr
execute:
engine: knitr
rpath: "C:/Program Files/R/R-4.5.1"
filters:
- shinylive
---
```{shinylive-r}
#| standalone: true
#| components: [editor, viewer]
#| viewerHeight: 650
library(shiny)
library(bslib)
ui <- page_sidebar(
title = "Editable Shiny App in Quarto",
sidebar = sidebar(
sliderInput("bins", "Number of bins:", min = 5, max = 30, value = 10)
),
plotOutput("distPlot")
)
server <- function(input, output) {
output$distPlot <- renderPlot({
x <- mtcars$mpg
bins <- seq(min(x), max(x), length.out = input$bins + 1)
hist(x, breaks = bins, col = "skyblue", border = "white",
main = "Histogram of MPG", xlab = "Miles Per Gallon")
})
}
shinyApp(ui = ui, server = server)
```
Here is the output when running quarto render mydoc.qmd :
(E) Error running 'Rscript' command. Perhaps you need to install / update the 'shinylive' R package?
Error:
PandocError {}
Error running filter C:/Users/anlucas/AppData/Local/Programs/Quarto/share/filters/main.lua:
...rix-track\_extensions\quarto-ext\shinylive\shinylive.lua:40: Error running 'Rscript' command. Perhaps you need to install / update the 'shinylive' R package?
stack traceback:
...rix-track\_extensions\quarto-ext\shinylive\shinylive.lua:40: in global 'throw_quarto_error'
...rix-track\_extensions\quarto-ext\shinylive\shinylive.lua:86: in global 'callRShinylive'
...rix-track\_extensions\quarto-ext\shinylive\shinylive.lua:113: in global 'callShinylive'
...rix-track\_extensions\quarto-ext\shinylive\shinylive.lua:286: in global 'ensureBaseSetup'
...rix-track\_extensions\quarto-ext\shinylive\shinylive.lua:315: in global 'ensureLanguageSetup'
...rix-track\_extensions\quarto-ext\shinylive\shinylive.lua:424: in function <...rix-track\_extensions\quarto-ext\shinylive\shinylive.lua:408>
[C]: in ?
[C]: in method 'walk'
...ta\Local\Programs\Quarto\share\pandoc\datadir\_utils.lua:607: in function '_utils.walk'
...cas/AppData/Local/Programs/Quarto/share/filters/main.lua:572: in local 'checked_walk'
...cas/AppData/Local/Programs/Quarto/share/filters/main.lua:627: in function 'run_emulated_filter'
...cas/AppData/Local/Programs/Quarto/share/filters/main.lua:1314: in local 'callback'
[string "if pandoc.system.os == "mingw32" then..."]:778: in field 'withScriptFile'
...cas/AppData/Local/Programs/Quarto/share/filters/main.lua:1330: in upvalue 'run_emulated_filter_chain'
...cas/AppData/Local/Programs/Quarto/share/filters/main.lua:1368: in function <...cas/AppData/Local/Programs/Quarto/share/filters/main.lua:1365>
stack traceback:
...ta\Local\Programs\Quarto\share\pandoc\datadir\_utils.lua:607: in function '_utils.walk'
...cas/AppData/Local/Programs/Quarto/share/filters/main.lua:572: in local 'checked_walk'
...cas/AppData/Local/Programs/Quarto/share/filters/main.lua:627: in function 'run_emulated_filter'
...cas/AppData/Local/Programs/Quarto/share/filters/main.lua:1314: in local 'callback'
[string "if pandoc.system.os == "mingw32" then..."]:778: in field 'withScriptFile'
...cas/AppData/Local/Programs/Quarto/share/filters/main.lua:1330: in upvalue 'run_emulated_filter_chain'
...cas/AppData/Local/Programs/Quarto/share/filters/main.lua:1368: in function <...cas/AppData/Local/Programs/Quarto/share/filters/main.lua:1365>
WARN: Error encountered when rendering filesconfiguration
It seems that my quarto check and shinylive package and extension are ok and up-to-date :
quarto check:
$ quarto check
Quarto 1.8.25
[>] Checking environment information...
Quarto cache location: C:\Users\anlucas\AppData\Local\quarto
[>] Checking versions of quarto binary dependencies...
Pandoc version 3.6.3: OK
Dart Sass version 1.87.0: OK
Deno version 2.3.1: OK
Typst version 0.13.0: OK
[>] Checking versions of quarto dependencies......OK
[>] Checking Quarto installation......OK
Version: 1.8.25
Path: C:\Users\anlucas\AppData\Local\Programs\Quarto\bin
CodePage: 1252
[>] Checking tools....................OK
TinyTeX: v2025.10
Chromium: 869685
[>] Checking LaTeX....................OK
Using: TinyTex
Path: C:\Users\anlucas\AppData\Roaming\TinyTeX\bin\windows\
Version: 2025
[>] Checking Chrome Headless....................OK
Using: Chrome found on system
Path: C:\Program Files\Google\Chrome\Application\chrome.exe
Source: Windows Registry
[>] Checking basic markdown render....OK
[>] Checking Python 3 installation....OK
Version: 3.14.0
Path: C:/Users/anlucas/AppData/Local/Programs/Python/Python314/python.exe
Jupyter: (None)
Jupyter is not available in this Python installation.
Install with python -m pip install jupyter
[>] Checking R installation...........OK
Version: 4.5.1
Path: C:/PROGRA~1/R/R-45~1.1
LibPaths:
- C:/Users/anlucas/OneDrive - Professional/Documents/0_workspace/bp-matrix-track/renv/library/windows/R-4.5/x86_64-w64-mingw32
- C:/Users/anlucas/AppData/Local/R/cache/R/renv/sandbox/windows/R-4.5/x86_64-w64-mingw32/0eea1ca5
knitr: 1.50
rmarkdown: 2.30
[>] Checking Knitr engine render......OK
- shinylive R pkg :
shinylive::assets_version()
[1] "0.9.1"`- different output from rig :
$ rig run Rscript -e "library(shinylive); packageVersion('shinylive')"
[1] '0.3.0'potential diagnostic
It apppears due to the error msg extract :
(E) Error running 'Rscript' command. Perhaps you need to install / update the 'shinylive' R package?
Error:
PandocError {}
Error running filter C:/Users/anlucas/AppData/Local/Programs/Quarto/share/filters/main.lua:
...rix-track\_extensions\quarto-ext\shinylive\shinylive.lua:40: Error running 'Rscript' command. Perhaps you need to install / update the 'shinylive' R package?that the Lua filter is calling Rscript directly instead of rig, might lead to some environment calling issues between rig, quarto and shinylive ?
Still investigating in the shinylive.lua script to find a workaround :
-- R specific method to call {r-shinylive}
-- @param args: list of string arguments to pass to r-shinylive
-- @param input: string to pipe into to r-shinylive
function callRShinylive(args, input)
args = { "-e",
"shinylive:::quarto_ext()",
table.unpack(args) }
-- Try calling `pandoc.pipe('Rscript', ...)` and if it fails, print a message
-- about installing shinylive R package.
local res
local status, err = pcall(
function()
res = pandoc.pipe("Rscript", args, input)
end
)
if not status then
throw_quarto_error(
"Error running 'Rscript' command. Perhaps you need to install / update the 'shinylive' R package?",
"Error running 'Rscript' command. Perhaps you need to install / update the 'shinylive' R package?\n",
"Error:\n",
err
)
end
return res
endReactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels