Skip to content

Conversation

@blinkagent
Copy link
Contributor

@blinkagent blinkagent bot commented Jan 19, 2026

Summary

This changes the settings file location from:

  • ~/.vscode-server/data/Machine/settings.json

to:

  • ~/.vscode-server/data/User/settings.json

Problem

The module was writing custom settings to the Machine settings path, which has lower precedence than User Remote settings. This meant that if a user had any User settings on the remote, they would override the module-provided settings.

Solution

Write settings to the User Remote path instead. This ensures module-provided settings properly override the user's local machine settings while still allowing Workspace settings to take precedence if needed.

VS Code Settings Precedence (lowest to highest)

Priority Level Path
1 (lowest) Default Built-in VS Code defaults
2 User Local ~/.config/Code/User/settings.json (local machine)
3 User Remote ~/.vscode-server/data/User/settings.json
4 Workspace {project}/.vscode/settings.json
5 (highest) Workspace Folder {folder}/.vscode/settings.json

Source: VS Code merges settings in configurationModels.ts#L1021-L1026, with User Remote overriding User Local in configurationModels.ts#L962-L972.

Testing

Added tests that:

  1. Verify the generated script contains the User path and not the Machine path
  2. Verify settings are correctly written to the User settings file in a container
✓ vscode-web > writes settings to User settings path not Machine [292.00ms]
✓ vscode-web > writes provided settings to ~/.vscode-server/data/User/settings.json [3466.99ms]

blink-so bot added 2 commits January 19, 2026 04:46
This changes the settings file location from:
  ~/.vscode-server/data/Machine/settings.json
to:
  ~/.vscode-server/data/User/settings.json

User Remote settings have higher precedence than User Local settings,
ensuring module-provided settings properly override the users local
machine settings. Previously, Machine settings could be overridden by
User Remote settings, preventing the module from applying its
configuration.

VS Code settings precedence (lowest to highest):
1. Default
2. User Local
3. User Remote
4. Workspace
5. Workspace Folder
@matifali
Copy link
Member

@DevelopmentCats can you help test this for #447. Thanks.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant