Description
- Web Browser: Chromium 85.0.4183.102 snap (AKA snap chromium version 1298)
- Local OS: Ubuntu 20.04
- Remote OS: Ubuntu 20.04
- Remote Architecture: AMD64
code-server --version
:3.5.0 de41646fc402b968ca6d555fdf2da7de9554d28a
Step to reproduce:
- Make sure any trace of cpptools extension in
~/.local/share/code-server/{CachedExtensionVSIXs,extensions}
is removed. - Start code-server and open a window. Install C/C++ from the extension tab and reload when requested.
- 2 errors appeared:
The language server crashed 5 times in the last 3 minutes. It will not be restarted.
The C/C++ extension failed to install successfully. You will need to repair or reinstall the extension for C/C++ language features to function properly.
- Clicking
Attempt to Repair
will reload the window, and the extension seems to download binaries forx86_64
, but after that the first error still appears.
Both after step 3. and step 4, the binary from both the extracted directory and the VSIX itself shows that the binary is AArch64 instead of AMD64 (I don't know where the extension downloads binaries to):
~/.local/share/code-server/extensions/ms-vscode.cpptools-1.0.0$ file bin/cpptools
bin/cpptools: ELF 64-bit LSB executable, ARM aarch64, version 1 (GNU/Linux), dynamically linked, interpreter /lib/ld-linux-aarch64.so.1, for GNU/Linux 3.7.0, BuildID[sha1]=a6622307e0c01de448bbd8e6567e33b18d0c26c0, not stripped
The remoteagent.log is obtained at step 2, before reloading (the log level is set to trace
). I manually download the extension using URL in the log (starts with https://storage.googleapis.com/vscode-extension-assets
), and it contains arm64 binaries. Interestingly, I don't see any architecture parameter in the query.
Workaround: manually download the extension from extension's GitHub release page seems to work correctly. Notice that they're
the "offline" .vsix (that doesn't download OS-based dependencies on extension activation)
I suspect that the store is supposed to distribute "online" .vsix that works on all architecture?