Skip to content

Allow changing machine-specific settings.json location #6537

Description

The machine specific settings.json is saved at ~/.vscode-server/data/Machine/settings.json. I would like to be able to configure that path. Specifically, I would like to be able to store that file outside the ~/.vscode-server folder.

The reason is that I want to track that file (with Git) along with my other dotfiles, but since my home directory is too small to keep the VSCode server there (especially with several extensions), ~/.vscode-server is actually a symlink to another filesystem location where I have more space than I do in my home. So I can't track ~/.vscode-server/data/Machine/settings.json along with the other dotfiles in my home, because Git can't track files located on separate filesystems in the same repository. (Note that I just learned of the remote.SSH.serverInstallPath setting, so I could use that instead of a symlink, but I would still not be able to track the machine-specific settings.json anyway.)

An alternative to being able to configure the path to the machine-specific settings.json would be to keep that file someplace else, e.g. in ~/.config/vscode-server/settings.json, and add a symlink to it in ~/.vscode-server/data/Machine/, but that setup would be broken if I have to reinstall the server for some reason, as then the whole ~/.vscode-server folder is deleted and recreated, so my symlink would have to be manually recreated (a step which is bound to be forgotten!).

So it would be nice to be able to configure the path to the settings file.

Another option would be to follow the platform-specific canonical location for configuration files, i.e.

  • ~/.config on Linux
  • ~/.config or ~/Library on macOS
  • %LOCALAPPDATA% or %APPDATA% on Windows

Metadata

Metadata

Assignees

No one assigned

    Labels

    feature-requestRequest for new features or functionalitysshIssue in vscode-remote SSH

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions