1diff --git a/src/cpp/conf/rsession-dev.conf b/src/cpp/conf/rsession-dev.conf
2index d18362b..98cdd4c 100644
3--- a/src/cpp/conf/rsession-dev.conf
4+++ b/src/cpp/conf/rsession-dev.conf
5@@ -39,7 +39,7 @@ external-mathjax-path=${RSTUDIO_DEPENDENCIES_MATHJAX_DIR}
6 external-pandoc-path=${RSTUDIO_DEPENDENCIES_PANDOC_DIR}
7 external-quarto-path=${RSTUDIO_DEPENDENCIES_QUARTO_DIR}
8 external-libclang-path=${RSTUDIO_DEPENDENCIES_DIR}/common/libclang
9-external-node-path=${RSTUDIO_DEPENDENCIES_DIR}/common/node/16.14.0/bin/node
10+external-node-path=@node@/bin/node
11
12 # enable copilot
13 copilot-enabled=1
14diff --git a/src/cpp/server/CMakeLists.txt b/src/cpp/server/CMakeLists.txt
15index 30dd638..cb4a645 100644
16--- a/src/cpp/server/CMakeLists.txt
17+++ b/src/cpp/server/CMakeLists.txt
18@@ -250,10 +250,6 @@ if (UNIX AND NOT APPLE)
19 DESTINATION ${RSERVER_SYSTEMD_DIR})
20
21 # install node
22- install(
23- DIRECTORY "${RSTUDIO_DEPENDENCIES_DIR}/common/node/${RSTUDIO_NODE_VERSION}/"
24- DESTINATION "${RSTUDIO_INSTALL_BIN}/node"
25- USE_SOURCE_PERMISSIONS)
26
27 elseif(APPLE)
28
29diff --git a/src/gwt/build.xml b/src/gwt/build.xml
30index 033d605..f1ee63d 100644
31--- a/src/gwt/build.xml
32+++ b/src/gwt/build.xml
33@@ -87,29 +87,7 @@
34 <!-- ensure version matches RSTUDIO_NODE_VERSION -->
35 <property name="node.version" value="16.14.0"/>
36 <property name="node.dir" value="../../dependencies/common/node/${node.version}"/>
37- <!-- use yarn from system but will prefer yarn from dependencies if available -->
38- <condition property="yarn.bin" value="yarn">
39- <not>
40- <os family="windows" />
41- </not>
42- </condition>
43- <available
44- property="yarn.bin"
45- value="${node.dir}/bin/yarn"
46- file="${node.dir}/bin/yarn"/>
47- <condition property="yarn.bin" value="${node.dir}/node_modules/yarn/bin/yarn.cmd">
48- <os family="windows" />
49- </condition>
50- <!-- use yarn from /opt/rstudio-tools if installed (typical for Docker) -->
51- <available
52- property="yarn.bin"
53- value="/opt/rstudio-tools/dependencies/common/node/${node.version}/bin/yarn"
54- file="/opt/rstudio-tools/dependencies/common/node/${node.version}/bin/yarn"/>
55- <!-- use yarn from c:/rstudio-tools if installed (typical for Docker on Windows) -->
56- <available
57- property="yarn.bin"
58- value="c:\rstudio-tools\dependencies\common\node\${node.version}\node_modules\yarn\bin\yarn.cmd"
59- file="c:\rstudio-tools\dependencies\common\node\${node.version}\node_modules\yarn\bin\yarn.cmd"/>
60+ <property name="node.bin" value="@node@/bin/node"/>
61
62 <property name="panmirror.dir" value="./lib/quarto/apps/panmirror"/>
63 <property name="panmirror.build.dir" value="./www/js/panmirror"/>
64@@ -126,21 +104,11 @@
65 file="c:\rstudio-tools\src\gwt\lib\quarto\apps\panmirror"/>
66
67 <target name="panmirror" description="Compile panmirror library">
68- <echo message="yarn location: ${yarn.bin}"/>
69- <echo message="panmirror location: ${panmirror.dir}"/>
70 <mkdir dir="${panmirror.build.dir}"/>
71- <exec executable="${yarn.bin}" dir="${panmirror.dir}" resolveexecutable="true" failonerror="true">
72- <arg value="install"/>
73- <arg value="--network-timeout"/>
74- <arg value="240000"/>
75- </exec>
76- <exec executable="${yarn.bin}" dir="${panmirror.dir}" resolveexecutable="true" failonerror="true">
77- <arg value="build"/>
78- <env key="PANMIRROR_OUTDIR" value="dist-rstudio"/>
79+ <exec executable="${node.bin}" dir="${panmirror.dir}" spawn="${panmirror.spawn}">
80+ <arg value="fuse"/>
81+ <arg value="${panmirror.target}"/>
82 </exec>
83- <copy todir="${panmirror.build.dir}">
84- <fileset dir="${panmirror.dir}/dist-rstudio"/>
85- </copy>
86 </target>
87
88 <target name="javac" description="Compile java source">