|
1 | 1 | import * as crypto from 'crypto'; |
| 2 | +import { isAbsolute } from 'path'; |
2 | 3 | import Log from './common/logger'; |
3 | 4 | import { getVSCodeServerConfig } from './serverConfig'; |
4 | 5 | import SSHConnection from './ssh/sshConnection'; |
@@ -213,7 +214,7 @@ DISTRO_VSCODIUM_RELEASE="${release ?? ''}" |
213 | 214 | SERVER_APP_NAME="${serverApplicationName}" |
214 | 215 | SERVER_INITIAL_EXTENSIONS="${extensions}" |
215 | 216 | SERVER_LISTEN_FLAG="${useSocketPath ? `--socket-path="$TMP_DIR/vscode-server-sock-${crypto.randomUUID()}"` : '--port=0'}" |
216 | | -SERVER_DATA_DIR="$HOME/${serverDataFolderName}" |
| 217 | +SERVER_DATA_DIR="${(isAbsolute(serverDataFolderName) ? '' : '$HOME/') + serverDataFolderName}" |
217 | 218 | SERVER_DIR="$SERVER_DATA_DIR/bin/$DISTRO_COMMIT" |
218 | 219 | SERVER_SCRIPT="$SERVER_DIR/bin/$SERVER_APP_NAME" |
219 | 220 | SERVER_LOGFILE="$SERVER_DATA_DIR/.$DISTRO_COMMIT.log" |
@@ -386,7 +387,7 @@ if [[ -z $SERVER_RUNNING_PROCESS ]]; then |
386 | 387 | SERVER_CONNECTION_TOKEN="${crypto.randomUUID()}" |
387 | 388 | echo $SERVER_CONNECTION_TOKEN > $SERVER_TOKENFILE |
388 | 389 |
|
389 | | - $SERVER_SCRIPT --start-server --host=127.0.0.1 $SERVER_LISTEN_FLAG $SERVER_INITIAL_EXTENSIONS --connection-token-file $SERVER_TOKENFILE --telemetry-level off --enable-remote-auto-shutdown --accept-server-license-terms &> $SERVER_LOGFILE & |
| 390 | + $SERVER_SCRIPT --start-server --host=127.0.0.1 $SERVER_LISTEN_FLAG $SERVER_INITIAL_EXTENSIONS --connection-token-file $SERVER_TOKENFILE --telemetry-level off --enable-remote-auto-shutdown --accept-server-license-terms --server-data-dir $SERVER_DATA_DIR &> $SERVER_LOGFILE & |
390 | 391 | echo $! > $SERVER_PIDFILE |
391 | 392 | else |
392 | 393 | echo "Server script is already running $SERVER_SCRIPT" |
@@ -446,7 +447,7 @@ $DISTRO_VSCODIUM_RELEASE="${release ?? ''}" |
446 | 447 | $SERVER_APP_NAME="${serverApplicationName}" |
447 | 448 | $SERVER_INITIAL_EXTENSIONS="${extensions}" |
448 | 449 | $SERVER_LISTEN_FLAG="${useSocketPath ? `--socket-path="$TMP_DIR/vscode-server-sock-${crypto.randomUUID()}"` : '--port=0'}" |
449 | | -$SERVER_DATA_DIR="$(Resolve-Path ~)\\${serverDataFolderName}" |
| 450 | +$SERVER_DATA_DIR="${(isAbsolute(serverDataFolderName) ? '' : '$(Resolve-Path ~)\\') + serverDataFolderName}" |
450 | 451 | $SERVER_DIR="$SERVER_DATA_DIR\\bin\\$DISTRO_COMMIT" |
451 | 452 | $SERVER_SCRIPT="$SERVER_DIR\\bin\\$SERVER_APP_NAME.cmd" |
452 | 453 | $SERVER_LOGFILE="$SERVER_DATA_DIR\\.$DISTRO_COMMIT.log" |
@@ -552,7 +553,7 @@ else { |
552 | 553 | $SERVER_CONNECTION_TOKEN="${crypto.randomUUID()}" |
553 | 554 | [System.IO.File]::WriteAllLines($SERVER_TOKENFILE, $SERVER_CONNECTION_TOKEN) |
554 | 555 |
|
555 | | - $SCRIPT_ARGUMENTS="--start-server --host=127.0.0.1 $SERVER_LISTEN_FLAG $SERVER_INITIAL_EXTENSIONS --connection-token-file $SERVER_TOKENFILE --telemetry-level off --enable-remote-auto-shutdown --accept-server-license-terms *> '$SERVER_LOGFILE'" |
| 556 | + $SCRIPT_ARGUMENTS="--start-server --host=127.0.0.1 $SERVER_LISTEN_FLAG $SERVER_INITIAL_EXTENSIONS --connection-token-file $SERVER_TOKENFILE --telemetry-level off --enable-remote-auto-shutdown --accept-server-license-terms --server-data-dir $SERVER_DATA_DIR *> '$SERVER_LOGFILE'" |
556 | 557 |
|
557 | 558 | $START_ARGUMENTS = @{ |
558 | 559 | FilePath = "powershell.exe" |
|
0 commit comments