diff --git a/rstudio.yaml b/rstudio.yaml new file mode 100644 index 00000000000..6d8be3a284c --- /dev/null +++ b/rstudio.yaml @@ -0,0 +1,107 @@ +package: + name: rstudio + version: 2023.12.0_p369 + epoch: 0 + description: RStudio is an integrated development environment (IDE) for R + copyright: + - license: GPL-3.0 + dependencies: + runtime: + - R + - bash + - esbuild + - nodejs + +var-transforms: + - from: ${{package.version}} + match: _p + replace: + + to: mangled-package-version + +environment: + contents: + packages: + - R + - R-dev + - R-doc + - R-mathlib + - ant + - autoconf + - automake + - bash + - build-base + - busybox + - ca-certificates-bundle + - cmake + - libuuid + - linux-pam-dev + - nodejs + - openjdk-8-default-jdk + - openssl-dev + - posix-libc-utils + - sqlite-dev + - util-linux-dev + - wget + - yaml-cpp + - yaml-cpp-dev + - yarn + - zlib-dev + environment: + LANG: en_US.UTF-8 + JAVA_HOME: /usr/lib/jvm/java-1.8-openjdk + +pipeline: + - uses: git-checkout + with: + repository: https://github.com/rstudio/rstudio + expected-commit: 960e8fa44552e2c0e917260463dfec48c83f215c + tag: v${{vars.mangled-package-version}} + + - uses: patch + with: + # rstudio attempts to vendor it's own node, let's use ours instead. + patches: node.patch + + - runs: | + cd dependencies/common + ./install-dictionaries + ./install-mathjax + ./install-quarto + ./install-boost + ./install-soci + ./install-panmirror + + - uses: cmake/configure + with: + opts: | + -DRSTUDIO_TARGET=Server \ + -DCMAKE_BUILD_TYPE=Release \ + -DRSTUDIO_USE_SYSTEM_YAML_CPP=true + + - uses: cmake/build + + - uses: cmake/install + + - runs: | + # quarto includes its own esbuild. drop that to use ours + rm ${{targets.destdir}}/usr/bin/quarto/bin/tools/esbuild + ln -sf /usr/bin/esbuild ${{targets.destdir}}/usr/bin/quarto/bin/tools/esbuild + + - uses: strip + +update: + # Doesn't work with the tagging scheme. + enabled: false + github: + identifier: rstudio/rstudio + use-tag: true + strip-prefix: v + +test: + environment: + contents: + packages: + - wolfi-base + pipeline: + - runs: | + rstudio-server version diff --git a/rstudio/node.patch b/rstudio/node.patch new file mode 100644 index 00000000000..dd8ad877e1e --- /dev/null +++ b/rstudio/node.patch @@ -0,0 +1,18 @@ +diff --git a/src/cpp/server/CMakeLists.txt b/src/cpp/server/CMakeLists.txt +index dda1851..ec2d16a 100644 +--- a/src/cpp/server/CMakeLists.txt ++++ b/src/cpp/server/CMakeLists.txt +@@ -251,10 +251,10 @@ if (UNIX AND NOT APPLE) + DESTINATION ${RSERVER_SYSTEMD_DIR}) + + # install node +- install( +- DIRECTORY "${RSTUDIO_DEPENDENCIES_DIR}/common/node/${RSTUDIO_NODE_VERSION}/" +- DESTINATION "${RSTUDIO_INSTALL_BIN}/node" +- USE_SOURCE_PERMISSIONS) ++ #install( ++ # DIRECTORY "${RSTUDIO_DEPENDENCIES_DIR}/common/node/${RSTUDIO_NODE_VERSION}/" ++ # DESTINATION "${RSTUDIO_INSTALL_BIN}/node" ++ #USE_SOURCE_PERMISSIONS) + + elseif(APPLE)