-
Notifications
You must be signed in to change notification settings - Fork 310
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Remote-SSH fails on non-glibc Linux instances. #423
Comments
Related to #103 also |
And #54 |
Can you test this on an Adélie Linux machine with the latest |
|
"No such file or directory" -> try |
That looks like libuv/libuv@afc05a3. Is there any way to convince VSCode to use a system-provided Node.js? That would probably make things significantly easier, assuming it works with the LTS version. |
Same problem on
Given |
Hmm... This was enough to get it working:
|
works with I had to get it from Alpine Edge... 3.12 does not seem to contain the right package versions to get this working VsCode Insiders (commit: ac165d7f974d70212be80cb15eaecfc1fd20b21a) |
Alpine Interestingly VsCode Server Insiders worked with the below commit (no hacks) VsCode Server Insiders (ac165d7f974d70212be80cb15eaecfc1fd20b21a) -- ~ 12-6-2020
However subsequent builds are failing VsCode Server Insiders (bc13785d3dd99b4b0e9da9aed17bb79809a50804) -- ~ 12-10-2020
Comparing the NodeJS source code of v12.14.1 int uv_set_process_title(const char* title) {
uv_once(&process_title_mutex_once, init_process_title_mutex_once);
uv_mutex_lock(&process_title_mutex);
if (process_title.len != 0) {
/* No need to terminate, byte after is always '\0'. */
strncpy(process_title.str, title, process_title.len);
uv__set_process_title(title);
}
uv_mutex_unlock(&process_title_mutex);
return 0;
} v12.18.3 int uv_set_process_title(const char* title) {
struct uv__process_title* pt;
size_t len;
pt = &process_title;
len = strlen(title);
uv_once(&process_title_mutex_once, init_process_title_mutex_once);
uv_mutex_lock(&process_title_mutex);
if (len >= pt->cap) {
len = 0;
if (pt->cap > 0)
len = pt->cap - 1;
}
memcpy(pt->str, title, len);
memset(pt->str + len, '\0', pt->cap - len);
pt->len = len;
uv_mutex_unlock(&process_title_mutex);
return 0;
} |
I tried to get this working, no luck so far (even after > tar --version:
[10:18:27.561] stderr> main: line 313: millis: command not found
[10:18:27.563] > tar (GNU tar) 1.34
> Copyright (C) 2021 Free Software Foundation, Inc.
> License GPLv3+: GNU GPL version 3 or later <https://gnu.org/licenses/gpl.html>.
> This is free software: you are free to change and redistribute it.
> There is NO WARRANTY, to the extent permitted by law.
>
> Written by John Gilmore and Jay Fenlason.
[10:18:27.563] stderr> tar: This does not look like a tar archive
[10:18:27.563] stderr> gzip: invalid magic
[10:18:27.563] stderr> tar: Child returned status 1
[10:18:27.563] stderr> tar: Error is not recoverable: exiting now
[10:18:27.563] stderr> main: line 319: elapsed: command not found
[10:18:27.565] > ERROR: tar exited with non-0 exit code: 0 Edit: seems like it tries to download the wrong package: $ cat vscode-server.tar.gz
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Error</title>
</head>
<body>
<pre>Cannot GET /commit:/server-darwin/stable</pre>
</body>
</html> Edit: setting |
You can use |
Step 1. Using Remote-SSH, attempt to connect to a Linux server using musl instead of glibc (e.g. Alpine, select Gentoo instances, etc.).
(Would affect any prebuilt binary, not just node; however this was the first binary found in the .vscode-remote folder)
Does this issue occur when all extensions are disabled?: No -- this issue is specifically in regards to the Remote-SSH extension.
Best resolution while still using prebuilt binaries would be to check for
/lib64/ld-linux-x86-64.so
or/lib/ld-musl-x86_64.so.1
and download an alternate binary based on results. Would require compiling on more than one platform but would allow for support on a wider range of Linux products.The text was updated successfully, but these errors were encountered: