Skip to content

[Bug]: Not apparently possible to install multiple extensions from config file #6149

Closed
@tomqwpl

Description

@tomqwpl

Is there an existing issue for this?

  • I have searched the existing issues

OS/Web Information

  • Web Browser:
  • Local OS: Windows
  • Remote OS: Linux
  • Remote Architecture: amd64
  • code-server --version: 4.10.1

Steps to Reproduce

Attempting to run code-server with a config file such as:

install-extension:
  - extension.number1
  - extension.number2

This fails with (e.g):

Installing extensions...
Extension 'ms-python.python,ms-vscode.makefile-tools' not found.
Make sure you use the full extension ID, including the publisher, e.g.: ms-dotnettools.csharp
Failed Installing Extensions: ms-python.python,ms-vscode.makefile-tools

The problem seems to be in the conversion of the config file into command line arguments:

  const configFileArgv = Object.entries(config).map(([optName, opt]) => {
    if (opt === true) {
      return `--${optName}`
    }
    return `--${optName}=${opt}`
  })

My guess is that there "opt" is a []string, so it ends up constructing "--install-extension=extension.number1,extension.number2"

Expected

Both extensions should be installed in the same way as if multiple install-extension command line arguments were passed

Actual

code-server errors on startup.

Logs

No response

Screenshot/Video

No response

Does this issue happen in VS Code or GitHub Codespaces?

  • I cannot reproduce this in VS Code.
  • I cannot reproduce this in GitHub Codespaces.

Are you accessing code-server over HTTPS?

  • I am using HTTPS.

Notes

No response

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions