rocker-org / rocker-versioned2

Run current & prior versions of R using docker. rocker/r-ver, rocker/rstudio, rocker/shiny, rocker/tidyverse, and so on.
https://rocker-project.org
GNU General Public License v2.0
388 stars 163 forks source link

rocker/rstudio:devel is a quite old R-devel daily snapshot #822

Open slager opened 1 month ago

slager commented 1 month ago

Container image name

rocker/rstudio:devel

Container image digest

026eb393f3c076fff941ff1256480a3fd1607bdfe2b876a4593e3c79d19af24b

What operating system are you seeing the problem on?

Windows

System information

No response

Bug description

The image for rocker/rstudio:devel is old, even though the corresponding r-ver:devel image is from today. If I'm reading the documentation correctly, I think rstudio:devel is supposed to stay up-to-date with R-devel daily snapshots like r-ver:devel?

How to reproduce this bug?

https://hub.docker.com/r/rocker/rstudio/tags
eitsupi commented 1 month ago

This is related to the new release of Ubuntu. rocker/r-ver:devel has moved to Ubuntu 24.04 but RStudio Server is not able to install on this version of Ubuntu. We can see here how daily builds are failing. https://github.com/rocker-org/rocker-versioned2/actions/runs/9278089823/job/25528516000

My understanding is that this error occurs because Python2, which was a dependency in the past, cannot be installed on Ubuntu 24.04, and the script needs to be radically rewritten. Also, I don't know if RStudio Server would work properly even if it could be installed. (I don't use RStudio IDE on a regular basis).

I tried to fix that in #805, but I couldn't. If you know how to fix it, contributions are welcome.

slager commented 1 month ago

I presume there were other, more compelling reasons to have already switched to Ubuntu 24.04 when 22.04 is still supported for another 3+ years?

nathanweeks commented 1 month ago

Is python2 required, or could python3-setuptools be substituted? I tried the following patch against the "master" branch (just hard-coding UBUNTU_CODENAME for testing purposes):

--- a/scripts/install_rstudio.sh
+++ b/scripts/install_rstudio.sh
@@ -37,7 +37,7 @@ apt_install \
     libpq5 \
     psmisc \
     procps \
-    python-setuptools \
+    python3-setuptools \
     pwgen \
     sudo \
     wget
@@ -57,7 +57,7 @@ fi
 if [ "$UBUNTU_CODENAME" = "focal" ]; then
     UBUNTU_CODENAME="bionic"
 fi
-
+UBUNTU_CODENAME=jammy
 if [ "$RSTUDIO_VERSION" = "stable" ] || [ "$RSTUDIO_VERSION" = "preview" ] || [ "$RSTUDIO_VERSION" = "daily" ]; then
     if [ "$UBUNTU_CODENAME" = "bionic" ]; then
         UBUNTU_CODENAME="focal"

And the rstudio_devel.Dockerfile seemed to build & rstudio started successfully (though I haven't done any testing for breakage):

docker build -t localhost/rstudio-devel . -f dockerfiles/rstudio_devel.Dockerfile
...
docker run -it --rm -p 8787:8787 localhost/rstudio-devel
eitsupi commented 1 month ago

I presume there were other, more compelling reasons to have already switched to Ubuntu 24.04 when 22.04 is still supported for another 3+ years?

rocker/r-ver:devel is based on docker.io/library/ubuntu:latest. The version was changed upstream and I have done nothing with it.

Is python2 required, or could python3-setuptools be substituted? I tried the following patch against the "master" branch (just hard-coding UBUNTU_CODENAME for testing purposes):

Thanks for testing! In fact, I am unaware of any need for python3-setuptools since the currently recommended installation procedure uses gdebi-core.