From 24317029245eddca35f64b81280a831a18bc680c Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 13 May 2026 22:39:12 +0200 Subject: rstudio: rstudio-server: Update to 2026.04.0+526. * patches/rstudio-server-install.patch: Update file. * patches/rstudio-server-multi-version/0001-handleClientInit-Store-R-versions-in-sessionInfo.patch, patches/rstudio-server-multi-version/0002-launchAndTrackSession-Configure-R-version-from-activ.patch, patches/rstudio-server-multi-version/0003-NewProjectWizard-Unhide-version-selector-widget.patch, patches/rstudio-server-multi-version/0004-handleConnection-Switch-R-version-when-switching-pro.patch, patches/rstudio-server-multi-version/0005-Add-version-switcher-widget-to-toolbar.patch, patches/rstudio-server-multi-version/0006-Look-at-.local-share-rstudio-r-versions-for-custom-R.patch, patches/rstudio-server-multi-version/0007-detectRLocationsUsingR-Restore-R_HOME-at-the-end.patch: Update to latest version. * guix-science/packages/rstudio.scm (dtl-for-rstudio, utfcpp-for-rstudio): New variables. (rstudio-server): Update to 2026.04.0+526. [arguments]: Do not use #:OUT-OF-SOURCE?, add extra configure flags; update generated cmake files; rename phase 'unpack-dictionary to 'unpack-extras and unpack GWT sources; update patching in 'patch-paths; update location of script in 'generate-server-options. [native-inputs]: Replace openjdk11:jdk with openjdk:jdk; add googletest and r-here; add origin for gwt sources. [inputs]: Replace boost-1.88 with boost; add dtl-for-rstudio, libgit2, and utfcpp-for-rstudio. --- patches/rstudio-server-install.patch | 140 ++++++++++++++++----- ...lientInit-Store-R-versions-in-sessionInfo.patch | 12 +- ...ackSession-Configure-R-version-from-activ.patch | 27 ++-- ...jectWizard-Unhide-version-selector-widget.patch | 8 +- ...ction-Switch-R-version-when-switching-pro.patch | 14 +-- ...05-Add-version-switcher-widget-to-toolbar.patch | 30 ++--- ...cal-share-rstudio-r-versions-for-custom-R.patch | 8 +- ...LocationsUsingR-Restore-R_HOME-at-the-end.patch | 6 +- 8 files changed, 163 insertions(+), 82 deletions(-) (limited to 'patches') diff --git a/patches/rstudio-server-install.patch b/patches/rstudio-server-install.patch index 89bdee4..9ee3304 100644 --- a/patches/rstudio-server-install.patch +++ b/patches/rstudio-server-install.patch @@ -3,7 +3,7 @@ Avoid building copies of existing libraries. Link with Guix-provided libraries --- a/src/cpp/session/CMakeLists.txt +++ b/src/cpp/session/CMakeLists.txt -@@ -469,18 +469,6 @@ +@@ -493,18 +493,6 @@ configure_file(${CMAKE_CURRENT_SOURCE_DIR}/../../../NOTICE ${CMAKE_CURRENT_SOURCE_DIR}/resources COPYONLY) @@ -22,7 +22,7 @@ Avoid building copies of existing libraries. Link with Guix-provided libraries # set include directories include_directories( include -@@ -682,9 +670,6 @@ +@@ -715,9 +703,6 @@ # notice install(FILES "resources/NOTICE" DESTINATION ${RSTUDIO_INSTALL_SUPPORTING}/resources) @@ -32,18 +32,24 @@ Avoid building copies of existing libraries. Link with Guix-provided libraries # citation configure_file("resources/CITATION.in" -@@ -721,10 +706,6 @@ +@@ -754,16 +739,6 @@ install(DIRECTORY "${RSTUDIO_DEPENDENCIES_DICTIONARIES_DIR}" DESTINATION "${RSTUDIO_INSTALL_SUPPORTING}/resources") - # install mathjax for local html preview - install(DIRECTORY "${RSTUDIO_DEPENDENCIES_MATHJAX_DIR}" - DESTINATION "${RSTUDIO_INSTALL_SUPPORTING}/resources") +- +- # install node +- install( +- DIRECTORY "${RSTUDIO_DEPENDENCIES_DIR}/common/node/${RSTUDIO_INSTALLED_NODE_VERSION}-installed/" +- DESTINATION "${RSTUDIO_INSTALL_BIN}/node" +- USE_SOURCE_PERMISSIONS) - # install quarto (or pandoc if quarto disabled) if(QUARTO_ENABLED) # install some quarto folders into Resources, as needed -@@ -742,9 +723,6 @@ +@@ -781,9 +756,6 @@ EXCLUDE) endif() else() @@ -53,22 +59,26 @@ Avoid building copies of existing libraries. Link with Guix-provided libraries endif() # install Copilot Language Server + --- a/src/cpp/ext/CMakeLists.txt +++ b/src/cpp/ext/CMakeLists.txt -@@ -228,30 +228,3 @@ - websocketpp WEBSOCKETPP - yaml-cpp YAML_CPP - zlib ZLIB) -- --# Create rapidjson target. --add_library(rstudio-rapidjson INTERFACE EXCLUDE_FROM_ALL) --target_compile_definitions(rstudio-rapidjson INTERFACE "-DRAPIDJSON_NO_SIZETYPEDEFINE") --target_include_directories(rstudio-rapidjson INTERFACE "${RAPIDJSON_SOURCE_DIR}/include") -- +@@ -360,7 +360,7 @@ + # a valid library artifact when libgit2's SelectZlib.cmake calls find_package(ZLIB). + # If zlib is not yet present, FindZLIB fails and libgit2 falls back to its bundled + # deps/zlib, resulting in duplicate zlib symbols in the final binary. +-fetch(zlib ZLIB) ++fetch(ZLIB ZLIB) + + # libgit2's src/libgit2/CMakeLists.txt uses FILE(WRITE) to produce git2.h in + # the build tree. Unlike configure_file(), FILE(WRITE) unconditionally updates +@@ -403,45 +403,6 @@ + + restore_global_settings() + - --# Create websocketpp target. --add_library(rstudio-websocketpp INTERFACE EXCLUDE_FROM_ALL) --target_include_directories(rstudio-websocketpp INTERFACE "${WEBSOCKETPP_SOURCE_DIR}") +-# Create dtl target. +-add_library(rstudio-dtl INTERFACE EXCLUDE_FROM_ALL) +-target_include_directories(rstudio-dtl INTERFACE "${DTL_SOURCE_DIR}") - - -# Create hunspell target. @@ -86,30 +96,53 @@ Avoid building copies of existing libraries. Link with Guix-provided libraries -else() - target_compile_options(rstudio-hunspell PRIVATE -Wno-deprecated-declarations -Wno-sign-compare -Wno-unused-but-set-variable) -endif() +- +- +-# Create rapidjson target. +-add_library(rstudio-rapidjson INTERFACE EXCLUDE_FROM_ALL) +-target_compile_definitions(rstudio-rapidjson INTERFACE "-DRAPIDJSON_NO_SIZETYPEDEFINE") +-target_include_directories(rstudio-rapidjson INTERFACE "${RAPIDJSON_SOURCE_DIR}/include") +- +- +-# Create utfcpp target. +-add_library(rstudio-utfcpp INTERFACE EXCLUDE_FROM_ALL) +-target_include_directories(rstudio-utfcpp INTERFACE "${UTFCPP_SOURCE_DIR}/source") +- +- +-# Create websocketpp target. +-add_library(rstudio-websocketpp INTERFACE EXCLUDE_FROM_ALL) +-target_include_directories(rstudio-websocketpp INTERFACE "${WEBSOCKETPP_SOURCE_DIR}") +- +- + # Create zlib target (Windows only). + # Uses a custom target name to avoid colliding with the 'zlib' OBJECT target + # that libgit2 creates from its bundled deps/zlib. --- a/src/cpp/shared_core/CMakeLists.txt +++ b/src/cpp/shared_core/CMakeLists.txt -@@ -46,6 +46,8 @@ +@@ -46,6 +46,9 @@ set (SHARED_INCLUDE_DIRS include ${BOOST_INCLUDEDIR} + ${rapidjson_INCLUDE_DIRS} + ${gsl_lite_INCLUDE_DIRS} ++ ${dtl_INCLUDE_DIRS} ${EXT_SOURCE_DIR}) # UNIX specific -@@ -93,7 +94,7 @@ +@@ -92,8 +94,8 @@ + target_link_libraries(rstudio-shared-core ${Boost_LIBRARIES} ${SHARED_CORE_SYSTEM_LIBS} - gsl::gsl-lite-v1 -+ ${gsl_lite_LIBRARIES} - rstudio-rapidjson) ++ ${gsl_lite_LIBRARIES} + ${rapidjson_LIBRARIES}) # Define executable for running unit tests if (RSTUDIO_UNIT_TESTS_ENABLED) --- a/src/cpp/core/CMakeLists.txt +++ b/src/cpp/core/CMakeLists.txt -@@ -318,6 +318,10 @@ +@@ -324,6 +324,11 @@ ${EXT_SOURCE_DIR} ${CMAKE_CURRENT_BINARY_DIR} ${TESTS_INCLUDE_DIR} @@ -117,40 +150,79 @@ Avoid building copies of existing libraries. Link with Guix-provided libraries + ${tl-expected_INCLUDE_DIRS} + ${gsl_lite_INCLUDE_DIRS} + ${websocketpp_INCLUDE_DIRS} ++ ${dtl_INCLUDE_DIRS} ) # define shared library -@@ -327,8 +329,8 @@ +@@ -333,10 +338,10 @@ # link dependencies target_link_libraries(rstudio-core rstudio-shared-core +- rstudio-dtl - rstudio-hunspell +- rstudio-utfcpp - rstudio-websocketpp ++ ${dtl_LIBRARIES} ++ ${utfcpp_LIBRARIES} + ${hunspell_LIBRARIES} + ${websocketpp_LIBRARIES} ${Boost_LIBRARIES} - ${CRASHPAD_LIBRARIES} ${SOCI_LIBRARIES} -@@ -361,7 +363,7 @@ - rstudio-shared-core - rstudio-core - rstudio-core-synctex -- rstudio-hunspell -+ ${hunspell_LIBRARIES} - ${Boost_LIBRARIES} - ${SOCI_LIBRARIES} - ${CORE_SYSTEM_LIBRARIES} + ${CORE_SYSTEM_LIBRARIES} --- a/src/cpp/CMakeLists.txt +++ b/src/cpp/CMakeLists.txt -@@ -492,5 +492,11 @@ +@@ -381,7 +381,14 @@ find_package(OpenSSL REQUIRED) include_directories(SYSTEM "${OPENSSL_INCLUDE_DIR}") +- + find_package(fmt REQUIRED) + find_package(gsl-lite REQUIRED) + find_package(tl-expected REQUIRED) + find_package(yaml-cpp REQUIRED) + find_package(hunspell REQUIRED) + include_directories(SYSTEM "${hunspell_INCLUDE_DIRS}") - ++ find_package(dtl REQUIRED) ++ include_directories(SYSTEM "${dtl_INCLUDE_DIRS}") endif() + + if(WIN32) +--- a/src/gwt/build.xml ++++ b/src/gwt/build.xml +@@ -87,18 +87,9 @@ + + + +- +- +- +- +- +- +- +- + + +- ++ + + + +@@ -235,7 +226,6 @@ + + + +- + + + +@@ -253,7 +243,7 @@ + + + +- ++ + + + diff --git a/patches/rstudio-server-multi-version/0001-handleClientInit-Store-R-versions-in-sessionInfo.patch b/patches/rstudio-server-multi-version/0001-handleClientInit-Store-R-versions-in-sessionInfo.patch index ea0573a..8f45779 100644 --- a/patches/rstudio-server-multi-version/0001-handleClientInit-Store-R-versions-in-sessionInfo.patch +++ b/patches/rstudio-server-multi-version/0001-handleClientInit-Store-R-versions-in-sessionInfo.patch @@ -1,4 +1,4 @@ -From 72b511ab4ab4bd60cabb54c66fe3e78d669791fb Mon Sep 17 00:00:00 2001 +From d2d45cebfcbbdebd6997f9663b029f834ae6d7c7 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Fri, 18 Dec 2020 10:26:44 +0100 Subject: [PATCH 1/7] handleClientInit: Store R versions in sessionInfo. @@ -15,7 +15,7 @@ r_versions_info->available_r_versions. 1 file changed, 29 insertions(+), 6 deletions(-) diff --git a/src/cpp/session/SessionClientInit.cpp b/src/cpp/session/SessionClientInit.cpp -index 5610f4cffd..649f648e25 100644 +index 06ec9c20ec..f2ed4790e0 100644 --- a/src/cpp/session/SessionClientInit.cpp +++ b/src/cpp/session/SessionClientInit.cpp @@ -2,6 +2,7 @@ @@ -26,16 +26,16 @@ index 5610f4cffd..649f648e25 100644 * * Unless you have received this program directly from Posit Software pursuant * to the terms of a commercial license agreement with Posit Software, then -@@ -63,6 +64,8 @@ - #include +@@ -66,6 +67,8 @@ #include + #include +#include + #include #include #include -@@ -573,12 +576,32 @@ void handleClientInit(const boost::function& initFunction, +@@ -597,12 +600,32 @@ void handleClientInit(const boost::function& initFunction, sessionInfo["multi_session"] = options.multiSession(); @@ -75,5 +75,5 @@ index 5610f4cffd..649f648e25 100644 sessionInfo["show_user_home_page"] = options.showUserHomePage(); sessionInfo["user_home_page_url"] = json::Value(); -- -2.52.0 +2.54.0 diff --git a/patches/rstudio-server-multi-version/0002-launchAndTrackSession-Configure-R-version-from-activ.patch b/patches/rstudio-server-multi-version/0002-launchAndTrackSession-Configure-R-version-from-activ.patch index b39088c..3e75fdb 100644 --- a/patches/rstudio-server-multi-version/0002-launchAndTrackSession-Configure-R-version-from-activ.patch +++ b/patches/rstudio-server-multi-version/0002-launchAndTrackSession-Configure-R-version-from-activ.patch @@ -1,4 +1,4 @@ -From 2005f097b76582e5781a32aafa7cfcf35e369e7b Mon Sep 17 00:00:00 2001 +From faf9b22bc1caa538009356a3be1f0ee3ac8205f0 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Fri, 18 Dec 2020 10:32:01 +0100 Subject: [PATCH 2/7] launchAndTrackSession: Configure R version from active @@ -20,11 +20,11 @@ procedure to configure the R environment using the R version that has been recorded in the active session. (launchAndTrackSession): Register loadRVersion as a config filter. --- - .../server/session/ServerSessionManager.cpp | 47 +++++++++++++++++++ - 1 file changed, 47 insertions(+) + .../server/session/ServerSessionManager.cpp | 49 +++++++++++++++++++ + 1 file changed, 49 insertions(+) diff --git a/src/cpp/server/session/ServerSessionManager.cpp b/src/cpp/server/session/ServerSessionManager.cpp -index ab7aab1842..fa67ed0b56 100644 +index 17bcd10b56..e107b89dff 100644 --- a/src/cpp/server/session/ServerSessionManager.cpp +++ b/src/cpp/server/session/ServerSessionManager.cpp @@ -2,6 +2,7 @@ @@ -35,7 +35,15 @@ index ab7aab1842..fa67ed0b56 100644 * * Unless you have received this program directly from Posit Software pursuant * to the terms of a commercial license agreement with Posit Software, then -@@ -24,10 +25,14 @@ +@@ -14,6 +15,7 @@ + */ + + #include ++#include + + #include + +@@ -22,10 +24,14 @@ #include #include #include @@ -50,7 +58,7 @@ index ab7aab1842..fa67ed0b56 100644 #include #include -@@ -373,6 +378,45 @@ void setProcessConfigFilter(const core::system::ProcessConfigFilter& filter) +@@ -380,6 +386,46 @@ void setProcessConfigFilter(const core::system::ProcessConfigFilter& filter) END_LOCK_MUTEX } @@ -60,7 +68,8 @@ index ab7aab1842..fa67ed0b56 100644 + FilePath storageDir = + system::xdg::userDataDir(user.getUsername(), user.getHomePath()); + std::shared_ptr sessionStorage = -+ std::shared_ptr(new r_util::FileActiveSessionsStorage(storageDir)); ++ std::shared_ptr(new r_util::FileActiveSessionsStorage(storageDir, rstudio::session::filePathToProjectId(storageDir, FilePath(server::options().getOverlayOption(kSessionSharedStoragePath))))); ++ + std::unique_ptr activeSessions = + std::unique_ptr(new r_util::ActiveSessions(sessionStorage, storageDir)); + std::vector > sessions = @@ -96,7 +105,7 @@ index ab7aab1842..fa67ed0b56 100644 // default session launcher -- does the launch then tracks the pid // for later reaping Error SessionManager::launchAndTrackSession( -@@ -383,6 +427,9 @@ Error SessionManager::launchAndTrackSession( +@@ -390,6 +436,9 @@ Error SessionManager::launchAndTrackSession( using namespace rstudio::core::system; std::string runAsUser = realUserIsRoot() ? profile.context.username : ""; @@ -107,5 +116,5 @@ index ab7aab1842..fa67ed0b56 100644 LOCK_MUTEX(s_configFilterMutex) { -- -2.52.0 +2.54.0 diff --git a/patches/rstudio-server-multi-version/0003-NewProjectWizard-Unhide-version-selector-widget.patch b/patches/rstudio-server-multi-version/0003-NewProjectWizard-Unhide-version-selector-widget.patch index 6b1c9d6..69289ef 100644 --- a/patches/rstudio-server-multi-version/0003-NewProjectWizard-Unhide-version-selector-widget.patch +++ b/patches/rstudio-server-multi-version/0003-NewProjectWizard-Unhide-version-selector-widget.patch @@ -1,4 +1,4 @@ -From 007b29e0af1c6132d80f9ee81799d1c3519ece2d Mon Sep 17 00:00:00 2001 +From b8117de5cf4117f4be4886fcef60f05adf3f7c53 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Fri, 18 Dec 2020 10:35:39 +0100 Subject: [PATCH 3/7] NewProjectWizard: Unhide version selector widget. @@ -11,10 +11,10 @@ Do not hide the widget. 1 file changed, 1 deletion(-) diff --git a/src/gwt/src/org/rstudio/studio/client/projects/ui/newproject/NewProjectWizard.java b/src/gwt/src/org/rstudio/studio/client/projects/ui/newproject/NewProjectWizard.java -index 0a5713495e..344c2868b1 100644 +index cb2cbbd74e..ac61ff9695 100644 --- a/src/gwt/src/org/rstudio/studio/client/projects/ui/newproject/NewProjectWizard.java +++ b/src/gwt/src/org/rstudio/studio/client/projects/ui/newproject/NewProjectWizard.java -@@ -71,7 +71,6 @@ public class NewProjectWizard extends Wizard +@@ -73,7 +73,6 @@ public class NewProjectWizard extends Wizard rVersions.getRVersionSpec()); addLeftWidget(rVersionSelector_); rVersionSelector_.getElement().getStyle().setMarginRight(8, Unit.PX); @@ -23,5 +23,5 @@ index 0a5713495e..344c2868b1 100644 openInNewWindow_ = new CheckBox(constants_.openNewSessionLabel()); -- -2.52.0 +2.54.0 diff --git a/patches/rstudio-server-multi-version/0004-handleConnection-Switch-R-version-when-switching-pro.patch b/patches/rstudio-server-multi-version/0004-handleConnection-Switch-R-version-when-switching-pro.patch index c3af0e0..3531ed6 100644 --- a/patches/rstudio-server-multi-version/0004-handleConnection-Switch-R-version-when-switching-pro.patch +++ b/patches/rstudio-server-multi-version/0004-handleConnection-Switch-R-version-when-switching-pro.patch @@ -1,4 +1,4 @@ -From b31dfc6f120c01ff6612b682b56d92449eb82ef8 Mon Sep 17 00:00:00 2001 +From 296b8aa60025f88f34167f35d257cc401352d231 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sat, 19 Dec 2020 00:57:26 +0100 Subject: [PATCH 4/7] handleConnection: Switch R version when switching @@ -13,7 +13,7 @@ project switch back to the default. 2 files changed, 30 insertions(+), 5 deletions(-) diff --git a/src/cpp/session/SessionHttpMethods.cpp b/src/cpp/session/SessionHttpMethods.cpp -index 2b313f2b77..19669a3623 100644 +index 01e3ffb12f..133ae4abad 100644 --- a/src/cpp/session/SessionHttpMethods.cpp +++ b/src/cpp/session/SessionHttpMethods.cpp @@ -2,6 +2,7 @@ @@ -24,7 +24,7 @@ index 2b313f2b77..19669a3623 100644 * * Unless you have received this program directly from Posit Software pursuant * to the terms of a commercial license agreement with Posit Software, then -@@ -711,6 +712,33 @@ void handleConnection(boost::shared_ptr ptrConnection, +@@ -734,6 +735,33 @@ void handleConnection(boost::shared_ptr ptrConnection, activeSession().setWorkingDir(projDir); } @@ -58,7 +58,7 @@ index 2b313f2b77..19669a3623 100644 if (options().switchProjectsWithUrl()) { r_util::SessionScope scope; -@@ -763,10 +791,6 @@ void handleConnection(boost::shared_ptr ptrConnection, +@@ -789,10 +817,6 @@ void handleConnection(boost::shared_ptr ptrConnection, { FilePath projFile = resolveAliasedPath(switchToProject); std::string projDir = createAliasedPath(projFile.getParent()); @@ -70,10 +70,10 @@ index 2b313f2b77..19669a3623 100644 module_context::sharedProjectScratchPath(), version, diff --git a/src/gwt/src/org/rstudio/studio/client/projects/Projects.java b/src/gwt/src/org/rstudio/studio/client/projects/Projects.java -index 0ab01f9945..26c332b58d 100644 +index b369c97c24..066a0c9db0 100644 --- a/src/gwt/src/org/rstudio/studio/client/projects/Projects.java +++ b/src/gwt/src/org/rstudio/studio/client/projects/Projects.java -@@ -1131,7 +1131,8 @@ public class Projects implements OpenProjectFileEvent.Handler, +@@ -1184,7 +1184,8 @@ public class Projects implements OpenProjectFileEvent.Handler, { // perform quit applicationQuit_.performQuit(null, saveChanges, @@ -84,5 +84,5 @@ index 0ab01f9945..26c332b58d 100644 }; -- -2.52.0 +2.54.0 diff --git a/patches/rstudio-server-multi-version/0005-Add-version-switcher-widget-to-toolbar.patch b/patches/rstudio-server-multi-version/0005-Add-version-switcher-widget-to-toolbar.patch index 52d7164..dfb8400 100644 --- a/patches/rstudio-server-multi-version/0005-Add-version-switcher-widget-to-toolbar.patch +++ b/patches/rstudio-server-multi-version/0005-Add-version-switcher-widget-to-toolbar.patch @@ -1,4 +1,4 @@ -From 6c7733f8eca28ad8276c1e3d7236162bb0461d8f Mon Sep 17 00:00:00 2001 +From fdca633e307d4915fc99ba44c9bbc823b64c75a2 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sat, 19 Dec 2020 23:33:16 +0100 Subject: [PATCH 5/7] Add version switcher widget to toolbar. @@ -14,12 +14,12 @@ Subject: [PATCH 5/7] Add version switcher widget to toolbar. create mode 100644 src/gwt/src/org/rstudio/studio/client/application/ui/RVersionPopupMenu.java diff --git a/src/gwt/src/org/rstudio/core/client/ElementIds.java b/src/gwt/src/org/rstudio/core/client/ElementIds.java -index 4af0d49c82..8f3de94a97 100644 +index 531dfb43d8..36297de2a8 100644 --- a/src/gwt/src/org/rstudio/core/client/ElementIds.java +++ b/src/gwt/src/org/rstudio/core/client/ElementIds.java -@@ -384,6 +384,8 @@ public class ElementIds - public final static String PROJECT_MENUBUTTON_TOOLBAR_SUFFIX = "toolbar"; - public final static String PROJECT_MENUBUTTON_MENUBAR_SUFFIX = "menubar"; +@@ -394,6 +394,8 @@ public class ElementIds + public final static String SIDEBAR_TOGGLE_BUTTON = "sidebar_toggle_button"; + public final static String ASSISTANT_TOGGLE_BUTTON = "assistant_toggle_button"; + public final static String VERSION_MENUBUTTON = "version_menubutton"; + @@ -27,10 +27,10 @@ index 4af0d49c82..8f3de94a97 100644 public final static String BUILD_MORE_MENUBUTTON = "build_more_menubutton"; public final static String BUILD_BOOKDOWN_MENUBUTTON = "build_bookdown_menubutton"; diff --git a/src/gwt/src/org/rstudio/studio/client/RStudioGinjector.java b/src/gwt/src/org/rstudio/studio/client/RStudioGinjector.java -index 8d1a11014d..7422e2da56 100644 +index 91a398836b..5a082a0f03 100644 --- a/src/gwt/src/org/rstudio/studio/client/RStudioGinjector.java +++ b/src/gwt/src/org/rstudio/studio/client/RStudioGinjector.java -@@ -37,6 +37,7 @@ import org.rstudio.studio.client.application.AriaLiveService; +@@ -39,6 +39,7 @@ import org.rstudio.studio.client.application.LoggedOutDialog; import org.rstudio.studio.client.application.events.EventBus; import org.rstudio.studio.client.application.ui.AboutDialog; import org.rstudio.studio.client.application.ui.ProjectPopupMenu; @@ -38,7 +38,7 @@ index 8d1a11014d..7422e2da56 100644 import org.rstudio.studio.client.application.ui.addins.AddinsToolbarButton; import org.rstudio.studio.client.application.ui.impl.DesktopApplicationHeader; import org.rstudio.studio.client.application.ui.impl.WebApplicationHeader; -@@ -235,6 +236,7 @@ public interface RStudioGinjector extends Ginjector +@@ -242,6 +243,7 @@ public interface RStudioGinjector extends Ginjector void injectMembers(CodeFilesList codeFilesList); void injectMembers(ToolbarPopupMenu toolbarPopupMenu); void injectMembers(ProjectPopupMenu projectPopupMenu); @@ -47,10 +47,10 @@ index 8d1a11014d..7422e2da56 100644 void injectMembers(TextEditingTargetPresentationHelper presHelper); void injectMembers(TextEditingTargetRMarkdownHelper rmarkdownHelper); diff --git a/src/gwt/src/org/rstudio/studio/client/application/ui/GlobalToolbar.java b/src/gwt/src/org/rstudio/studio/client/application/ui/GlobalToolbar.java -index 65a2842c89..f22a1f0254 100644 +index 82e2de1941..94332f29db 100644 --- a/src/gwt/src/org/rstudio/studio/client/application/ui/GlobalToolbar.java +++ b/src/gwt/src/org/rstudio/studio/client/application/ui/GlobalToolbar.java -@@ -240,6 +240,10 @@ public class GlobalToolbar extends Toolbar +@@ -349,6 +349,10 @@ public class GlobalToolbar extends Toolbar ProjectPopupMenu projectMenu = new ProjectPopupMenu( sessionInfo, commands_, ElementIds.PROJECT_MENUBUTTON_TOOLBAR_SUFFIX); addRightWidget(projectMenu.getToolbarButton()); @@ -230,10 +230,10 @@ index 0000000000..eedc5996ae + private EventBus events_; +} diff --git a/src/gwt/src/org/rstudio/studio/client/workbench/commands/Commands.cmd.xml b/src/gwt/src/org/rstudio/studio/client/workbench/commands/Commands.cmd.xml -index 2a5b6e43af..785adfcb35 100644 +index 20322193cd..361864d129 100644 --- a/src/gwt/src/org/rstudio/studio/client/workbench/commands/Commands.cmd.xml +++ b/src/gwt/src/org/rstudio/studio/client/workbench/commands/Commands.cmd.xml -@@ -1368,6 +1368,17 @@ See `/src/gwt/tools/i18n-helpers/README.md`. +@@ -1387,6 +1387,17 @@ See `/src/gwt/tools/i18n-helpers/README.md`. desc="Edit options for the current project" windowMode="main"/> @@ -252,7 +252,7 @@ index 2a5b6e43af..785adfcb35 100644 menuLabel="" buttonLabel="" diff --git a/src/gwt/src/org/rstudio/studio/client/workbench/commands/Commands.java b/src/gwt/src/org/rstudio/studio/client/workbench/commands/Commands.java -index ff6e358843..536994086f 100644 +index adc2c49d0e..627a0292ab 100644 --- a/src/gwt/src/org/rstudio/studio/client/workbench/commands/Commands.java +++ b/src/gwt/src/org/rstudio/studio/client/workbench/commands/Commands.java @@ -2,6 +2,7 @@ @@ -281,7 +281,7 @@ index ff6e358843..536994086f 100644 + // Console public abstract AppCommand consoleClear(); - public abstract AppCommand interruptR(); + public abstract AppCommand consoleFind(); -- -2.52.0 +2.54.0 diff --git a/patches/rstudio-server-multi-version/0006-Look-at-.local-share-rstudio-r-versions-for-custom-R.patch b/patches/rstudio-server-multi-version/0006-Look-at-.local-share-rstudio-r-versions-for-custom-R.patch index 6fcd3cf..faf2c0b 100644 --- a/patches/rstudio-server-multi-version/0006-Look-at-.local-share-rstudio-r-versions-for-custom-R.patch +++ b/patches/rstudio-server-multi-version/0006-Look-at-.local-share-rstudio-r-versions-for-custom-R.patch @@ -1,4 +1,4 @@ -From ccc0dac68ed530e563662a3a5d72b8f05daadf00 Mon Sep 17 00:00:00 2001 +From 08f9713c698072e7ffc33c2cec52197863834196 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sun, 20 Dec 2020 00:25:42 +0100 Subject: [PATCH 6/7] Look at ~/.local/share/rstudio/r-versions for custom R @@ -68,10 +68,10 @@ index ee06a3d536..1bb653b065 100644 bool detectRVersion(const core::FilePath& rScriptPath, core::r_util::RVersion* pVersion, diff --git a/src/cpp/session/SessionClientInit.cpp b/src/cpp/session/SessionClientInit.cpp -index 649f648e25..a63f0942c7 100644 +index f2ed4790e0..a77bbb2186 100644 --- a/src/cpp/session/SessionClientInit.cpp +++ b/src/cpp/session/SessionClientInit.cpp -@@ -577,8 +577,14 @@ void handleClientInit(const boost::function& initFunction, +@@ -601,8 +601,14 @@ void handleClientInit(const boost::function& initFunction, sessionInfo["multi_session"] = options.multiSession(); // Read versions from /etc/rstudio/r-versions @@ -88,5 +88,5 @@ index 649f648e25..a63f0942c7 100644 { json::Object rVersionJson; -- -2.52.0 +2.54.0 diff --git a/patches/rstudio-server-multi-version/0007-detectRLocationsUsingR-Restore-R_HOME-at-the-end.patch b/patches/rstudio-server-multi-version/0007-detectRLocationsUsingR-Restore-R_HOME-at-the-end.patch index aefa035..b4e8d1b 100644 --- a/patches/rstudio-server-multi-version/0007-detectRLocationsUsingR-Restore-R_HOME-at-the-end.patch +++ b/patches/rstudio-server-multi-version/0007-detectRLocationsUsingR-Restore-R_HOME-at-the-end.patch @@ -1,4 +1,4 @@ -From d24ecdaf549c3f35cc3ee32b5af3ccb70b1a45c4 Mon Sep 17 00:00:00 2001 +From 767399d1d3305cec2aea6b36517e5e74b521e3aa Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sun, 20 Dec 2020 14:49:51 +0100 Subject: [PATCH 7/7] detectRLocationsUsingR: Restore R_HOME at the end. @@ -11,7 +11,7 @@ process is calling it, and its R_HOME may not be unset. 1 file changed, 3 insertions(+) diff --git a/src/cpp/core/r_util/REnvironmentPosix.cpp b/src/cpp/core/r_util/REnvironmentPosix.cpp -index a4e964d49d..3fee33ff49 100644 +index 07ed73ec05..712e72f19e 100644 --- a/src/cpp/core/r_util/REnvironmentPosix.cpp +++ b/src/cpp/core/r_util/REnvironmentPosix.cpp @@ -493,6 +493,7 @@ bool detectRLocationsUsingR(const std::string& rScriptPath, @@ -32,5 +32,5 @@ index a4e964d49d..3fee33ff49 100644 } #endif -- -2.52.0 +2.54.0 -- cgit v1.2.3