rocker icon indicating copy to clipboard operation
rocker copied to clipboard

Does r2u fit into Rocker?

Open eddelbuettel opened this issue 3 years ago • 6 comments

The r2u project is still fairly new, but appears (from glancing at my web server logs) to be useful to a few people. It contains two Dockerfiles for test / use / demo which we could bring over here. But I don't mean to impose...

Maybe we can discuss here. No rush or hurry.

eddelbuettel avatar Jun 21 '22 13:06 eddelbuettel

I was wondering if we could switch rocker/r-bspm installation to r2u.

eitsupi avatar Jun 21 '22 14:06 eitsupi

Me too :)

On the other hand the existing launchpad setup does not really hurt. Additional PPAs "theoretically" delay operations but if one looks for at example at the (dozen plus) repositories set up by GitHub Action for Ubuntu one realizes that it just gives free options. So I am a little hesitant to rush this as r-bspm has also become a building block. Maybe for now r2u on top of r-bspm is better. I really don't know at this point.

eddelbuettel avatar Jun 21 '22 14:06 eddelbuettel

Adding my support for this, since I think Rocker is the natural place ppl will look for R-based images. (Though, I would probably still maintain bspm as a separate image.)

On a related note, @eitsupi do you perchance have an r2u devcontainer / codespaces repo? My own quick attempts keep build failing for some reason or another, and I'd love to share a codespaces version with some colleagues. (I promised @eddelbuettel I'd promote it some time ago... 😬)

grantmcdermott avatar Nov 18 '22 19:11 grantmcdermott

It will happen, esp as @eitsupi is moving towards it / using it for devcontainers.

But I need clean up and clarify the layer of r-ubuntu (nothing but R), r-apt (adds c2d4u, may be redundant), r-bspm (ditto). I think we can a simpler setup, maybe with BSPM but also on env var to turn it (cf fiasco in arrow CI that I caused by accidentally pushing r-bspm to tag r-ubuntu).

This term is a teaching term for me so a few things got pushed to the side. You can use r2u just fine today, even with an Internet2 mirror. I think we will bring it under the Rocker umbrella (but I also do not want to force the hands of my Rocker Project colleagues so it has to be consensual).

eddelbuettel avatar Nov 18 '22 19:11 eddelbuettel

@grantmcdermott Please see our recently updated website. https://rocker-project.org/images/devcontainer/features.html

The following devcontainer.json is sufficient to configure r2u on an Ubuntu-based image.

{
    "image": "mcr.microsoft.com/devcontainers/base:ubuntu",
    "features": {
        "ghcr.io/rocker-org/devcontainer-features/r-apt:latest": {}
    }
}

The problem is there is no easy way to add apt packages after configuring r2u (we can use postCreateCommand but it will be like sudo apt update && sudo apt install ..., very long). Related to https://github.com/devcontainers/features/issues/67#issuecomment-1320719320

And, there is currently no option to configure bspm. (rocker-org/devcontainer-features#69)

eitsupi avatar Nov 19 '22 01:11 eitsupi

Thanks both. I'm still running in an error with that simple devcontainer.json file, but will file a separate issue. Again, very grateful for all the work you folks put in for maintaining the Rocker project.

grantmcdermott avatar Nov 19 '22 22:11 grantmcdermott

FYI, since there appeared to be no plans to create it in other repositories, I created the apt-packages Dev Container Feature. https://github.com/rocker-org/devcontainer-features/tree/main/src/apt-packages

I believe this can be combined with r2u to install any R package on Dev Containers without writing Dockerfiles.

eitsupi avatar Dec 12 '22 14:12 eitsupi

I guess that this can be closed now in light of https://github.com/rocker-org/r2u?

Following on from our conversation above, one additional request from this grateful user would be to add a dedicated r2u devcontainer image to the existing list.

grantmcdermott avatar May 16 '23 16:05 grantmcdermott

Good catch, will close.

As there is a finite number of things I should do or take on, and especially as as I don't use vscode or devcontainers I am not likely do this but this sounds like another possible addition as maybe a wiki entry or write-up or contributed Dockerfile (possibly as a 'documentation / demo' one off or in another repo -- just spitballing here). Similar in spirit to the recent suggestion to add the rstudio server package (cf https://github.com/rocker-org/r2u/issues/1).

eddelbuettel avatar May 16 '23 17:05 eddelbuettel

add a dedicated r2u devcontainer image to the existing list.

This should require a little work on https://github.com/rocker-org/devcontainer-images. Contributions are welcome!

eitsupi avatar May 16 '23 22:05 eitsupi