From bfc411820e0ca28a7706fd8ae50137d9715b8b59 Mon Sep 17 00:00:00 2001 From: lutinglt Date: Sun, 31 May 2026 11:13:31 +0800 Subject: [PATCH 1/9] remote mode --- patches/base-path.diff | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/patches/base-path.diff b/patches/base-path.diff index 693afc8f4d5c..921d419ec206 100644 --- a/patches/base-path.diff +++ b/patches/base-path.diff @@ -146,6 +146,20 @@ Index: code-server/lib/vscode/src/vs/server/node/webClientServer.ts embedderIdentifier: 'server-distro', extensionsGallery: this._webExtensionResourceUrlTemplate && this._productService.extensionsGallery ? { ...this._productService.extensionsGallery, +@@ -386,7 +393,10 @@ export class WebClientServer { + enableWorkspaceTrust: !this._environmentService.args['disable-workspace-trust'], + folderUri: resolveWorkspaceURI(this._environmentService.args['default-folder']), + workspaceUri: resolveWorkspaceURI(this._environmentService.args['default-workspace']), + productConfiguration, +- callbackRoute: callbackRoute ++ callbackRoute: callbackRoute, ++ windowIndicator: process.env.MY_APP_CS_REMOTE_NAME ? { ++ label: `$(remote) ${process.env.MY_APP_CS_REMOTE_NAME}`, ++ tooltip: process.env.MY_APP_CS_REMOTE_NAME ++ } : undefined, + }; + + const cookies = cookie.parse(req.headers.cookie || ''); @@ -407,7 +414,9 @@ export class WebClientServer { WORKBENCH_AUTH_SESSION: authSessionInfo ? asJSON(authSessionInfo) : '', WORKBENCH_WEB_BASE_URL: staticRoute, From b4b85a7226140e409a1b85e37705592b3438334b Mon Sep 17 00:00:00 2001 From: lutinglt Date: Sun, 31 May 2026 11:33:03 +0800 Subject: [PATCH 2/9] remote mode --- patches/base-path.diff | 14 -------------- patches/my-app-change.diff | 22 ++++++++++++++++++++++ patches/series | 1 + 3 files changed, 23 insertions(+), 14 deletions(-) create mode 100644 patches/my-app-change.diff diff --git a/patches/base-path.diff b/patches/base-path.diff index 921d419ec206..693afc8f4d5c 100644 --- a/patches/base-path.diff +++ b/patches/base-path.diff @@ -146,20 +146,6 @@ Index: code-server/lib/vscode/src/vs/server/node/webClientServer.ts embedderIdentifier: 'server-distro', extensionsGallery: this._webExtensionResourceUrlTemplate && this._productService.extensionsGallery ? { ...this._productService.extensionsGallery, -@@ -386,7 +393,10 @@ export class WebClientServer { - enableWorkspaceTrust: !this._environmentService.args['disable-workspace-trust'], - folderUri: resolveWorkspaceURI(this._environmentService.args['default-folder']), - workspaceUri: resolveWorkspaceURI(this._environmentService.args['default-workspace']), - productConfiguration, -- callbackRoute: callbackRoute -+ callbackRoute: callbackRoute, -+ windowIndicator: process.env.MY_APP_CS_REMOTE_NAME ? { -+ label: `$(remote) ${process.env.MY_APP_CS_REMOTE_NAME}`, -+ tooltip: process.env.MY_APP_CS_REMOTE_NAME -+ } : undefined, - }; - - const cookies = cookie.parse(req.headers.cookie || ''); @@ -407,7 +414,9 @@ export class WebClientServer { WORKBENCH_AUTH_SESSION: authSessionInfo ? asJSON(authSessionInfo) : '', WORKBENCH_WEB_BASE_URL: staticRoute, diff --git a/patches/my-app-change.diff b/patches/my-app-change.diff new file mode 100644 index 000000000000..828ac6bf4e80 --- /dev/null +++ b/patches/my-app-change.diff @@ -0,0 +1,22 @@ +Support MY_APP_CS_REMOTE_NAME environment variable for remote indicator + +If MY_APP_CS_REMOTE_NAME is set, the bottom-left status bar will show a +remote indicator with the provided name instead of the default "Web" label. + +Index: code-server/lib/vscode/src/vs/server/node/webClientServer.ts +=================================================================== +--- code-server.orig/lib/vscode/src/vs/server/node/webClientServer.ts ++++ code-server/lib/vscode/src/vs/server/node/webClientServer.ts +@@ -414,7 +414,11 @@ export class WebClientServer { + folderUri: resolveWorkspaceURI(this._environmentService.args['default-folder']), + workspaceUri: resolveWorkspaceURI(this._environmentService.args['default-workspace']), + productConfiguration, +- callbackRoute: callbackRoute ++ callbackRoute: callbackRoute, ++ windowIndicator: process.env.MY_APP_CS_REMOTE_NAME ? { ++ label: `$(remote) ${process.env.MY_APP_CS_REMOTE_NAME}`, ++ tooltip: process.env.MY_APP_CS_REMOTE_NAME ++ } : undefined + }; + + const cookies = cookie.parse(req.headers.cookie || ''); diff --git a/patches/series b/patches/series index 6f438da313bf..1601f8e158b2 100644 --- a/patches/series +++ b/patches/series @@ -24,3 +24,4 @@ trusted-domains.diff signature-verification.diff copilot.diff app-name.diff +my-app-change.diff From 35fecd3d18ec5a392c13a81d969e2e58c13c981b Mon Sep 17 00:00:00 2001 From: lutinglt Date: Sun, 31 May 2026 11:48:26 +0800 Subject: [PATCH 3/9] auto patch --- ci/build/generate-my-patch.sh | 106 ++++++++++++++++++++++++++++++++++ patches/my-app-change.diff | 5 +- 2 files changed, 110 insertions(+), 1 deletion(-) create mode 100755 ci/build/generate-my-patch.sh diff --git a/ci/build/generate-my-patch.sh b/ci/build/generate-my-patch.sh new file mode 100755 index 000000000000..1fd1ea2858d9 --- /dev/null +++ b/ci/build/generate-my-patch.sh @@ -0,0 +1,106 @@ +#!/usr/bin/env bash +# Generate patches/my-app-change.diff +# +# Run this whenever upstream code-server or VS Code version changes. +# It applies all upstream patches, injects the custom remote indicator code, +# then generates a fresh diff with correct line numbers. +# +# Usage: ./ci/build/generate-my-patch.sh + +set -euo pipefail + +cd "$(dirname "${0}")/../.." + +PATCH_NAME="my-app-change" +PATCH_FILE="patches/${PATCH_NAME}.diff" +TARGET="lib/vscode/src/vs/server/node/webClientServer.ts" + +echo "=== Cleaning submodule ===" +cd lib/vscode +git checkout -- . 2>/dev/null || true +git clean -fdx 2>/dev/null || true +cd ../.. + +# Reset quilt state completely +quilt pop -af 2>/dev/null || true + +echo "=== Applying patches up to (but not including) $PATCH_NAME ===" +while IFS= read -r patch; do + [[ -z "$patch" || "$patch" == \#* ]] && continue + if [ "$patch" = "${PATCH_NAME}.diff" ]; then + break + fi + quilt push 2>&1 || { echo "FAILED at $patch"; exit 1; } +done < patches/series + +echo "=== Verifying target file ===" +if ! grep -q 'callbackRoute: callbackRoute$' "$TARGET"; then + echo "ERROR: Cannot find 'callbackRoute: callbackRoute' in $TARGET" + echo "The target pattern may have changed. Please update this script." + exit 1 +fi + +echo "=== Committing upstream patched state ===" +cd lib/vscode +git add -A +git commit -m "upstream-patches" --allow-empty 2>/dev/null || true +cd ../.. + +echo "=== Injecting remote indicator code ===" +python3 -c " +import sys +with open('$TARGET', 'r') as f: + content = f.read() + +old = ' callbackRoute: callbackRoute\n' +new = ''' callbackRoute: callbackRoute, + windowIndicator: process.env.MY_APP_CS_REMOTE_NAME ? { + label: \`\$(remote) \${process.env.MY_APP_CS_REMOTE_NAME}\`, + tooltip: process.env.MY_APP_CS_REMOTE_NAME + } : undefined, +''' + +if old not in content: + print('ERROR: Cannot find callbackRoute pattern') + sys.exit(1) + +content = content.replace(old, new, 1) +with open('$TARGET', 'w') as f: + f.write(content) +print('Injected successfully') +" + +echo "=== Generating diff against upstream state ===" +( cd lib/vscode && git diff HEAD -- src/vs/server/node/webClientServer.ts ) > /tmp/my-app-change-raw.diff + +echo "=== Cleaning up (reverting temp commit) ===" +cd lib/vscode +git reset HEAD~1 2>/dev/null || true +git checkout -- . 2>/dev/null || true +git clean -fdx 2>/dev/null || true +cd ../.. + +echo "=== Unapplying quilt patches ===" +quilt pop -af 2>/dev/null || true + +echo "=== Writing patch file ===" +{ + echo "Support MY_APP_CS_REMOTE_NAME environment variable for remote indicator" + echo "" + echo "If MY_APP_CS_REMOTE_NAME is set, the bottom-left status bar will show a" + echo "remote indicator with the provided name instead of the default \"Web\" label." + echo "" + echo "# Auto-generated by ci/build/generate-my-patch.sh" + echo "# Re-run after any upstream update to regenerate correct line numbers." + echo "" + echo "Index: code-server/lib/vscode/src/vs/server/node/webClientServer.ts" + echo "===================================================================" + echo "--- code-server.orig/lib/vscode/src/vs/server/node/webClientServer.ts" + echo "+++ code-server/lib/vscode/src/vs/server/node/webClientServer.ts" + tail -n +5 /tmp/my-app-change-raw.diff +} > "$PATCH_FILE" + +rm -f /tmp/my-app-change-raw.diff + +echo "" +echo "=== Done: $PATCH_FILE generated ===" diff --git a/patches/my-app-change.diff b/patches/my-app-change.diff index 828ac6bf4e80..ea1b0a3ae3f9 100644 --- a/patches/my-app-change.diff +++ b/patches/my-app-change.diff @@ -3,6 +3,9 @@ Support MY_APP_CS_REMOTE_NAME environment variable for remote indicator If MY_APP_CS_REMOTE_NAME is set, the bottom-left status bar will show a remote indicator with the provided name instead of the default "Web" label. +# Auto-generated by ci/build/generate-my-patch.sh +# Re-run after any upstream update to regenerate correct line numbers. + Index: code-server/lib/vscode/src/vs/server/node/webClientServer.ts =================================================================== --- code-server.orig/lib/vscode/src/vs/server/node/webClientServer.ts @@ -16,7 +19,7 @@ Index: code-server/lib/vscode/src/vs/server/node/webClientServer.ts + windowIndicator: process.env.MY_APP_CS_REMOTE_NAME ? { + label: `$(remote) ${process.env.MY_APP_CS_REMOTE_NAME}`, + tooltip: process.env.MY_APP_CS_REMOTE_NAME -+ } : undefined ++ } : undefined, }; const cookies = cookie.parse(req.headers.cookie || ''); From 67426d0dd72a1e87b2f55ca1834e35dd3a5f9fb5 Mon Sep 17 00:00:00 2001 From: lutinglt Date: Sun, 31 May 2026 13:43:09 +0800 Subject: [PATCH 4/9] rename code-server -> code --- package.json | 2 +- patches/integration.diff | 52 +++++++++++++--------------------------- patches/logout.diff | 18 +++++++------- 3 files changed, 27 insertions(+), 45 deletions(-) diff --git a/package.json b/package.json index b229efb3f5e5..db70c3b9c911 100644 --- a/package.json +++ b/package.json @@ -1,5 +1,5 @@ { - "name": "code-server", + "name": "code", "license": "MIT", "version": "0.0.0", "description": "Run VS Code on a remote server.", diff --git a/patches/integration.diff b/patches/integration.diff index 44327d24e005..dd4240c06b9f 100644 --- a/patches/integration.diff +++ b/patches/integration.diff @@ -23,16 +23,16 @@ Index: code-server/lib/vscode/src/vs/server/node/server.main.ts +import { serverOptions, ServerParsedArgs } from './serverEnvironmentService.js'; import product from '../../platform/product/common/product.js'; import * as perf from '../../base/common/performance.js'; - + @@ -34,38 +34,47 @@ const errorReporter: ErrorReporter = { } }; - + -const args = parseArgs(process.argv.slice(2), serverOptions, errorReporter); +function parse(): ServerParsedArgs { + return parseArgs(process.argv.slice(2), serverOptions, errorReporter); +} - + -const REMOTE_DATA_FOLDER = args['server-data-dir'] || process.env['VSCODE_AGENT_FOLDER'] || join(os.homedir(), product.serverDataFolderName || '.vscode-remote'); -const USER_DATA_PATH = join(REMOTE_DATA_FOLDER, 'data'); -const APP_SETTINGS_HOME = join(USER_DATA_PATH, 'User'); @@ -74,7 +74,7 @@ Index: code-server/lib/vscode/src/vs/server/node/server.main.ts + }); + return REMOTE_DATA_FOLDER; +} - + /** * invoked by server-main.js */ @@ -83,7 +83,7 @@ Index: code-server/lib/vscode/src/vs/server/node/server.main.ts +function spawnCli(args = parse()): Promise { + return runCli(args, createDirs(args), serverOptions); } - + /** * invoked by server-main.js */ @@ -175,20 +175,20 @@ Index: code-server/lib/vscode/src/vs/workbench/browser/web.main.ts @@ -140,6 +141,9 @@ export class BrowserMain extends Disposa // Startup const instantiationService = workbench.startup(); - + + const codeServerClient = this._register(instantiationService.createInstance(CodeServerClient)); + await codeServerClient.startup(); + // Window this._register(instantiationService.createInstance(BrowserWindow)); - + Index: code-server/lib/vscode/src/vs/base/common/product.ts =================================================================== --- code-server.orig/lib/vscode/src/vs/base/common/product.ts +++ code-server/lib/vscode/src/vs/base/common/product.ts @@ -65,6 +65,8 @@ export type ExtensionVirtualWorkspaceSup }; - + export interface IProductConfiguration { + readonly codeServerVersion?: string + @@ -206,12 +206,12 @@ Index: code-server/lib/vscode/src/vs/code/browser/workbench/workbench-dev.html - + + - + @@ -26,8 +27,9 @@ - + - - @@ -219,7 +219,7 @@ Index: code-server/lib/vscode/src/vs/code/browser/workbench/workbench-dev.html + + - + Index: code-server/lib/vscode/src/vs/code/browser/workbench/workbench.html =================================================================== @@ -232,12 +232,12 @@ Index: code-server/lib/vscode/src/vs/code/browser/workbench/workbench.html - + + - + @@ -23,8 +24,9 @@ - + - - @@ -245,7 +245,7 @@ Index: code-server/lib/vscode/src/vs/code/browser/workbench/workbench.html + + - + Index: code-server/lib/vscode/src/vs/server/node/webClientServer.ts =================================================================== @@ -253,7 +253,7 @@ Index: code-server/lib/vscode/src/vs/server/node/webClientServer.ts +++ code-server/lib/vscode/src/vs/server/node/webClientServer.ts @@ -353,6 +353,7 @@ export class WebClientServer { } : undefined; - + const productConfiguration: Partial> = { + codeServerVersion: this._productService.codeServerVersion, embedderIdentifier: 'server-distro', @@ -266,7 +266,7 @@ Index: code-server/lib/vscode/src/server-main.ts @@ -22,6 +22,9 @@ import { IServerAPI } from './vs/server/ perf.mark('code/server/start'); (globalThis as { vscodeServerStartTime?: number }).vscodeServerStartTime = performance.now(); - + +// This is not indented to make the diff less noisy. We need to move this out +// of the top-level so it will not run immediately and we can control the start. +async function start() { @@ -278,7 +278,7 @@ Index: code-server/lib/vscode/src/server-main.ts }); } +} - + function sanitizeStringArg(val: unknown): string | undefined { if (Array.isArray(val)) { // if an argument is passed multiple times, minimist creates an array @@ -283,3 +287,22 @@ function prompt(question: string): Promi @@ -304,21 +304,3 @@ Index: code-server/lib/vscode/src/server-main.ts +if (!process.env.CODE_SERVER_PARENT_PID) { + start(); +} -Index: code-server/lib/vscode/src/vs/workbench/browser/parts/dialogs/dialog.ts -=================================================================== ---- code-server.orig/lib/vscode/src/vs/workbench/browser/parts/dialogs/dialog.ts -+++ code-server/lib/vscode/src/vs/workbench/browser/parts/dialogs/dialog.ts -@@ -47,8 +47,11 @@ export function createWorkbenchDialogOpt - - export function createBrowserAboutDialogDetails(productService: IProductService): { title: string; details: string; detailsToCopy: string } { - const detailString = (useAgo: boolean): string => { -- return localize('aboutDetail', -- "Version: {0}\nCommit: {1}\nDate: {2}\nBrowser: {3}", -+ return localize('aboutCodeServerDetail', -+ "code-server: {0}", -+ productService.codeServerVersion ? `v${productService.codeServerVersion}` : 'Unknown' -+ ) + '\n' + localize('aboutDetail', -+ "Code: {0}\nCommit: {1}\nDate: {2}\nBrowser: {3}", - productService.version || 'Unknown', - productService.commit || 'Unknown', - productService.date ? `${productService.date}${useAgo ? ' (' + fromNow(new Date(productService.date), true) + ')' : ''}` : 'Unknown', diff --git a/patches/logout.diff b/patches/logout.diff index c21be0de9115..8d8c2eed1579 100644 --- a/patches/logout.diff +++ b/patches/logout.diff @@ -13,7 +13,7 @@ Index: code-server/lib/vscode/src/vs/base/common/product.ts readonly rootEndpoint?: string readonly updateEndpoint?: string + readonly logoutEndpoint?: string - + readonly version: string; readonly date?: string; Index: code-server/lib/vscode/src/vs/server/node/serverEnvironmentService.ts @@ -25,17 +25,17 @@ Index: code-server/lib/vscode/src/vs/server/node/serverEnvironmentService.ts /* ----- code-server ----- */ 'disable-update-check': { type: 'boolean' }, + 'auth': { type: 'string' }, - + /* ----- server setup ----- */ - + @@ -112,6 +113,7 @@ export const serverOptions: OptionDescri export interface ServerParsedArgs { /* ----- code-server ----- */ 'disable-update-check'?: boolean; + 'auth'?: string; - + /* ----- server setup ----- */ - + Index: code-server/lib/vscode/src/vs/server/node/webClientServer.ts =================================================================== --- code-server.orig/lib/vscode/src/vs/server/node/webClientServer.ts @@ -61,7 +61,7 @@ Index: code-server/lib/vscode/src/vs/workbench/browser/client.ts import { INotificationService, Severity } from '../../platform/notification/common/notification.js'; import { IProductService } from '../../platform/product/common/productService.js'; import { IStorageService, StorageScope, StorageTarget } from '../../platform/storage/common/storage.js'; - + export class CodeServerClient extends Disposable { + static LOGOUT_COMMAND_ID = 'code-server.logout'; + @@ -77,10 +77,10 @@ Index: code-server/lib/vscode/src/vs/workbench/browser/client.ts + this.addLogoutCommand(this.productService.logoutEndpoint); + } } - + private checkUpdates(updateEndpoint: string) { @@ -132,4 +140,25 @@ export class CodeServerClient extends Di - + updateLoop(); } + @@ -99,7 +99,7 @@ Index: code-server/lib/vscode/src/vs/workbench/browser/client.ts + MenuRegistry.appendMenuItem(menuId, { + command: { + id: CodeServerClient.LOGOUT_COMMAND_ID, -+ title: localize('logout', "Sign out of {0}", 'code-server'), ++ title: localize('logout', "退出", 'code-server'), + }, + }); + } From 5cadcafdf2599e28b2b0bcfdc566ad182bdf16be Mon Sep 17 00:00:00 2001 From: lutinglt Date: Sun, 31 May 2026 14:26:43 +0800 Subject: [PATCH 5/9] [skip ci] restore package name --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index db70c3b9c911..b229efb3f5e5 100644 --- a/package.json +++ b/package.json @@ -1,5 +1,5 @@ { - "name": "code", + "name": "code-server", "license": "MIT", "version": "0.0.0", "description": "Run VS Code on a remote server.", From adbb87647f4b23abf968eb12c5f9949ca6cccf11 Mon Sep 17 00:00:00 2001 From: lutinglt Date: Sun, 31 May 2026 16:23:33 +0800 Subject: [PATCH 6/9] code-server -> Visual Studio Code --- ci/build/build-vscode.sh | 6 +++--- src/node/constants.ts | 2 +- src/node/entry.ts | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/ci/build/build-vscode.sh b/ci/build/build-vscode.sh index 871a801aa30f..217ad4ad7066 100755 --- a/ci/build/build-vscode.sh +++ b/ci/build/build-vscode.sh @@ -72,9 +72,9 @@ main() { "enableTelemetry": true, "quality": "stable", "codeServerVersion": "$VERSION", - "nameShort": "code-server", - "nameLong": "code-server", - "applicationName": "code-server", + "nameShort": "Code", + "nameLong": "Visual Studio Code", + "applicationName": "code", "dataFolderName": ".code-server", "win32MutexName": "codeserver", "licenseUrl": "https://github.com/coder/code-server/blob/main/LICENSE", diff --git a/src/node/constants.ts b/src/node/constants.ts index bb6873dfa113..57c42bbeafcf 100644 --- a/src/node/constants.ts +++ b/src/node/constants.ts @@ -32,7 +32,7 @@ export const httpProxyUri = * for outputting to the console. */ export function getVersionString(): string { - return [version, commit, "with Code", codeVersion].join(" ") + return [codeVersion].join(" ") } /** diff --git a/src/node/entry.ts b/src/node/entry.ts index 749b6e966cbc..634aae235c55 100644 --- a/src/node/entry.ts +++ b/src/node/entry.ts @@ -24,7 +24,7 @@ async function entry(): Promise { const args = await setDefaults(cliArgs, configArgs) if (args.help) { - console.log("code-server", getVersionString()) + console.log("Visual Studio Code", getVersionString()) console.log("") console.log(`Usage: code-server [options] [path]`) console.log(` - Opening a directory: code-server ./path/to/your/project`) From 38c3c2c857fdba3ccf12bf0f8d786042c8325906 Mon Sep 17 00:00:00 2001 From: lutinglt Date: Sun, 31 May 2026 17:38:08 +0800 Subject: [PATCH 7/9] fix build --- ci/build/build-vscode.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ci/build/build-vscode.sh b/ci/build/build-vscode.sh index 217ad4ad7066..68afbe2e5929 100755 --- a/ci/build/build-vscode.sh +++ b/ci/build/build-vscode.sh @@ -136,7 +136,7 @@ EOF fix-bin-script helpers/browser.cmd ;; *) - fix-bin-script remote-cli/code-server + fix-bin-script remote-cli/code fix-bin-script helpers/browser.sh ;; esac From 3dd51b86b0ea90bb21c9fa1a3d61f1362f362171 Mon Sep 17 00:00:00 2001 From: lutinglt Date: Sun, 31 May 2026 19:20:31 +0800 Subject: [PATCH 8/9] code-server -> vscode --- ci/build/code-server-nfpm.sh | 2 +- ci/build/nfpm.yaml | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/ci/build/code-server-nfpm.sh b/ci/build/code-server-nfpm.sh index e12f493ba92c..92a2a9ccdb1d 100755 --- a/ci/build/code-server-nfpm.sh +++ b/ci/build/code-server-nfpm.sh @@ -1,3 +1,3 @@ #!/usr/bin/env sh -exec /usr/lib/code-server/bin/code-server "$@" +exec /usr/lib/vscode/lib/vscode/bin/remote-cli/code "$@" diff --git a/ci/build/nfpm.yaml b/ci/build/nfpm.yaml index 4b0ee371a2eb..6f718524b884 100644 --- a/ci/build/nfpm.yaml +++ b/ci/build/nfpm.yaml @@ -1,4 +1,4 @@ -name: "code-server" +name: "vscode" arch: "${NFPM_ARCH}" platform: "linux" version: "v${VERSION}" @@ -13,7 +13,7 @@ license: "MIT" contents: - src: ./ci/build/code-server-nfpm.sh - dst: /usr/bin/code-server + dst: /usr/bin/code - src: ./ci/build/code-server@.service dst: /usr/lib/systemd/system/code-server@.service @@ -22,4 +22,4 @@ contents: dst: /usr/lib/systemd/user/code-server.service - src: ./release/* - dst: /usr/lib/code-server + dst: /usr/lib/vscode From fb94e747bd7d8b47317e096ee3395bf7ae9f3cff Mon Sep 17 00:00:00 2001 From: lutinglt Date: Sun, 21 Jun 2026 20:36:01 +0800 Subject: [PATCH 9/9] merge --- CHANGELOG.md | 6 ++++++ patches/base-path.diff | 2 +- patches/disable-builtin-ext-update.diff | 2 +- patches/external-file-actions.diff | 4 ++-- patches/integration.diff | 3 +++ patches/logout.diff | 2 +- patches/proxy-uri.diff | 2 +- patches/service-worker.diff | 2 +- patches/sourcemaps.diff | 2 +- patches/telemetry.diff | 2 +- patches/update-check.diff | 6 +++--- 11 files changed, 21 insertions(+), 12 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 2abd8e0a57b6..361124ba75b0 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -22,6 +22,12 @@ Code v99.99.999 ## Unreleased +Code v1.125.0 + +### Changed + +- Update to Code 1.125.0 + ## [4.124.2](https://github.com/coder/code-server/releases/tag/v4.124.2) - 2026-06-16 Code v1.124.2 diff --git a/patches/base-path.diff b/patches/base-path.diff index 234b8403c6c4..1aef085bf3eb 100644 --- a/patches/base-path.diff +++ b/patches/base-path.diff @@ -241,7 +241,7 @@ Index: code-server/lib/vscode/src/vs/base/common/product.ts =================================================================== --- code-server.orig/lib/vscode/src/vs/base/common/product.ts +++ code-server/lib/vscode/src/vs/base/common/product.ts -@@ -66,6 +66,7 @@ export type ExtensionVirtualWorkspaceSup +@@ -85,6 +85,7 @@ export interface IAgentSdkProductConfig export interface IProductConfiguration { readonly codeServerVersion?: string diff --git a/patches/disable-builtin-ext-update.diff b/patches/disable-builtin-ext-update.diff index 0d3690b35765..05f964dd5859 100644 --- a/patches/disable-builtin-ext-update.diff +++ b/patches/disable-builtin-ext-update.diff @@ -7,7 +7,7 @@ Index: code-server/lib/vscode/src/vs/workbench/contrib/extensions/browser/extens =================================================================== --- code-server.orig/lib/vscode/src/vs/workbench/contrib/extensions/browser/extensionsWorkbenchService.ts +++ code-server/lib/vscode/src/vs/workbench/contrib/extensions/browser/extensionsWorkbenchService.ts -@@ -345,6 +345,10 @@ export class Extension implements IExten +@@ -343,6 +343,10 @@ export class Extension implements IExten if (this.type === ExtensionType.System && this.productService.quality === 'stable' && !this.productService.builtInExtensionsEnabledWithAutoUpdates?.some(id => id.toLowerCase() === this.identifier.id.toLowerCase())) { return false; } diff --git a/patches/external-file-actions.diff b/patches/external-file-actions.diff index 582384af6cee..4719d13ccdd9 100644 --- a/patches/external-file-actions.diff +++ b/patches/external-file-actions.diff @@ -230,7 +230,7 @@ Index: code-server/lib/vscode/src/vs/workbench/services/dialogs/browser/simpleFi import { IRemoteAgentService } from '../../remote/common/remoteAgentService.js'; import { IContextKeyService, IContextKey, RawContextKey } from '../../../../platform/contextkey/common/contextkey.js'; import { equalsIgnoreCase, format, startsWithIgnoreCase } from '../../../../base/common/strings.js'; -@@ -161,7 +161,7 @@ export class SimpleFileDialog extends Di +@@ -152,7 +152,7 @@ export class SimpleFileDialog extends Di @IFileDialogService private readonly fileDialogService: IFileDialogService, @IModelService private readonly modelService: IModelService, @ILanguageService private readonly languageService: ILanguageService, @@ -239,7 +239,7 @@ Index: code-server/lib/vscode/src/vs/workbench/services/dialogs/browser/simpleFi @IRemoteAgentService private readonly remoteAgentService: IRemoteAgentService, @IPathService protected readonly pathService: IPathService, @IKeybindingService private readonly keybindingService: IKeybindingService, -@@ -392,21 +392,23 @@ export class SimpleFileDialog extends Di +@@ -362,21 +362,23 @@ export class SimpleFileDialog extends Di this.filePickBox.placeholder = nls.localize('remoteFileDialog.placeholder', "Folder path"); this.filePickBox.ok = true; this.filePickBox.okLabel = typeof this.options.openLabel === 'string' ? this.options.openLabel : this.options.openLabel?.withoutMnemonic; diff --git a/patches/integration.diff b/patches/integration.diff index dd4240c06b9f..c2b23dc03cfc 100644 --- a/patches/integration.diff +++ b/patches/integration.diff @@ -189,6 +189,9 @@ Index: code-server/lib/vscode/src/vs/base/common/product.ts @@ -65,6 +65,8 @@ export type ExtensionVirtualWorkspaceSup }; +@@ -84,6 +84,8 @@ export interface IAgentSdkProductConfig + } + export interface IProductConfiguration { + readonly codeServerVersion?: string + diff --git a/patches/logout.diff b/patches/logout.diff index 8d8c2eed1579..6ed51c16e039 100644 --- a/patches/logout.diff +++ b/patches/logout.diff @@ -8,7 +8,7 @@ Index: code-server/lib/vscode/src/vs/base/common/product.ts =================================================================== --- code-server.orig/lib/vscode/src/vs/base/common/product.ts +++ code-server/lib/vscode/src/vs/base/common/product.ts -@@ -68,6 +68,7 @@ export interface IProductConfiguration { +@@ -87,6 +87,7 @@ export interface IProductConfiguration { readonly codeServerVersion?: string readonly rootEndpoint?: string readonly updateEndpoint?: string diff --git a/patches/proxy-uri.diff b/patches/proxy-uri.diff index 9921cc23022a..ef98ae832064 100644 --- a/patches/proxy-uri.diff +++ b/patches/proxy-uri.diff @@ -30,7 +30,7 @@ Index: code-server/lib/vscode/src/vs/base/common/product.ts =================================================================== --- code-server.orig/lib/vscode/src/vs/base/common/product.ts +++ code-server/lib/vscode/src/vs/base/common/product.ts -@@ -69,6 +69,7 @@ export interface IProductConfiguration { +@@ -88,6 +88,7 @@ export interface IProductConfiguration { readonly rootEndpoint?: string readonly updateEndpoint?: string readonly logoutEndpoint?: string diff --git a/patches/service-worker.diff b/patches/service-worker.diff index 9e048c3c66e6..0204d57dd904 100644 --- a/patches/service-worker.diff +++ b/patches/service-worker.diff @@ -6,7 +6,7 @@ Index: code-server/lib/vscode/src/vs/base/common/product.ts =================================================================== --- code-server.orig/lib/vscode/src/vs/base/common/product.ts +++ code-server/lib/vscode/src/vs/base/common/product.ts -@@ -70,6 +70,10 @@ export interface IProductConfiguration { +@@ -89,6 +89,10 @@ export interface IProductConfiguration { readonly updateEndpoint?: string readonly logoutEndpoint?: string readonly proxyEndpointTemplate?: string diff --git a/patches/sourcemaps.diff b/patches/sourcemaps.diff index 4c51aace765e..f90d489b0204 100644 --- a/patches/sourcemaps.diff +++ b/patches/sourcemaps.diff @@ -6,7 +6,7 @@ Index: code-server/lib/vscode/build/gulpfile.reh.ts =================================================================== --- code-server.orig/lib/vscode/build/gulpfile.reh.ts +++ code-server/lib/vscode/build/gulpfile.reh.ts -@@ -296,10 +296,15 @@ function packageTask(type: string, platf +@@ -297,10 +297,15 @@ function packageTask(type: string, platf const destination = path.join(BUILD_ROOT, destinationFolderName); return () => { diff --git a/patches/telemetry.diff b/patches/telemetry.diff index 462d3ce01c77..cd17a28bbfcb 100644 --- a/patches/telemetry.diff +++ b/patches/telemetry.diff @@ -147,7 +147,7 @@ Index: code-server/lib/vscode/src/vs/base/common/product.ts =================================================================== --- code-server.orig/lib/vscode/src/vs/base/common/product.ts +++ code-server/lib/vscode/src/vs/base/common/product.ts -@@ -74,6 +74,7 @@ export interface IProductConfiguration { +@@ -93,6 +93,7 @@ export interface IProductConfiguration { readonly path: string; readonly scope: string; } diff --git a/patches/update-check.diff b/patches/update-check.diff index d668e4254c9f..6cadd81e3ef7 100644 --- a/patches/update-check.diff +++ b/patches/update-check.diff @@ -93,7 +93,7 @@ Index: code-server/lib/vscode/src/vs/base/common/product.ts =================================================================== --- code-server.orig/lib/vscode/src/vs/base/common/product.ts +++ code-server/lib/vscode/src/vs/base/common/product.ts -@@ -67,6 +67,7 @@ export type ExtensionVirtualWorkspaceSup +@@ -86,6 +86,7 @@ export interface IAgentSdkProductConfig export interface IProductConfiguration { readonly codeServerVersion?: string readonly rootEndpoint?: string @@ -101,14 +101,14 @@ Index: code-server/lib/vscode/src/vs/base/common/product.ts readonly version: string; readonly date?: string; -@@ -119,6 +120,7 @@ export interface IProductConfiguration { +@@ -138,6 +139,7 @@ export interface IProductConfiguration { readonly resourceUrlTemplate: string; readonly nlsBaseUrl: string; readonly accessSKUs?: string[]; + readonly authorizationHeaderToken?: string; }; - readonly mcpGallery?: { + readonly agentSdks?: { readonly [packageId: string]: IAgentSdkProductConfig }; Index: code-server/lib/vscode/src/vs/server/node/webClientServer.ts =================================================================== --- code-server.orig/lib/vscode/src/vs/server/node/webClientServer.ts