microsoft / vscode-remote-release

Visual Studio Code Remote Development: Open any folder in WSL, in a Docker container, or on a remote machine using SSH and take advantage of VS Code's full feature set.
https://aka.ms/vscode-remote
Other
3.61k stars 276 forks source link

Unsupported architecture: riscv64 #4802

Open sg- opened 3 years ago

sg- commented 3 years ago

Steps to Reproduce:

  1. initiate a connection to remote host riscv64 machine
  2. try to decode why the remote host architecture is not supported - the traceback is not very clear as to what's missing. Is there a way to make this print out the dependency that is not present or is this failing due to a missing entry in a whitelist that is checking the output of uname -m
[11:31:22.739] Log Level: 2
[11:31:22.740] remote-ssh@0.65.1
[11:31:22.740] darwin x64
[11:31:22.741] SSH Resolver called for "ssh-remote+***.***.**.**", attempt 1
[11:31:22.741] "remote.SSH.useLocalServer": true
[11:31:22.741] "remote.SSH.sshPath": undefined
[11:31:22.741] "remote.SSH.sshConfigurationFile": undefined
[11:31:22.741] "remote.SSH.useFlock": true
[11:31:22.742] "remote.SSH.lockfilesInTmp": false
[11:31:22.742] "remote.SSH.localServerDownload": auto
[11:31:22.742] "remote.SSH.remoteServerListenOnSocket": false
[11:31:22.742] "remote.SSH.showLoginTerminal": false
[11:31:22.742] "remote.SSH.defaultExtensions": []
[11:31:22.742] SSH Resolver called for host: ***.***.**.**
[11:31:22.742] Setting up SSH remote "***.***.**.**"
[11:31:22.745] Acquiring local install lock: /var/folders/4j/snvd5rq10ms16jn9qz_lyng00000gp/T/vscode-remote-ssh-***.***.**.**-install.lock
[11:31:22.747] Looking for existing server data file at /Users/samg/Library/Application Support/Code/User/globalStorage/ms-vscode-remote.remote-ssh/vscode-ssh-host-***.***.**.**-2b9aebd5354a3629c3aba0a5f5df49f43d6689f8-0.65.1/data.json
[11:31:22.749] Using commit id "2b9aebd5354a3629c3aba0a5f5df49f43d6689f8" and quality "stable" for server
[11:31:22.752] Install and start server if needed
[11:31:22.755] Checking ssh with "ssh -V"
[11:31:22.762] > OpenSSH_8.1p1, LibreSSL 2.7.3

[11:31:22.765] askpass server listening on /var/folders/4j/snvd5rq10ms16jn9qz_lyng00000gp/T/vscode-ssh-askpass-00a9811f9da9d2d01ee2e1787c3566818915b421.sock
[11:31:22.765] Spawning local server with {"ipcHandlePath":"/var/folders/4j/snvd5rq10ms16jn9qz_lyng00000gp/T/vscode-ssh-askpass-fb0bd3b1e5dc8467d20eab31f5eec17e1ce74484.sock","sshCommand":"ssh","sshArgs":["-v","-T","-D","63444","-o","ConnectTimeout=15","***.***.**.**"],"dataFilePath":"/Users/samg/Library/Application Support/Code/User/globalStorage/ms-vscode-remote.remote-ssh/vscode-ssh-host-***.***.**.**-2b9aebd5354a3629c3aba0a5f5df49f43d6689f8-0.65.1/data.json"}
[11:31:22.765] Local server env: {"DISPLAY":"1","ELECTRON_RUN_AS_NODE":"1","SSH_ASKPASS":"/Users/samg/.vscode/extensions/ms-vscode-remote.remote-ssh-0.65.1/out/local-server/askpass.sh","VSCODE_SSH_ASKPASS_NODE":"/Applications/Visual Studio Code.app/Contents/Frameworks/Code Helper (Renderer).app/Contents/MacOS/Code Helper (Renderer)","VSCODE_SSH_ASKPASS_MAIN":"/Users/samg/.vscode/extensions/ms-vscode-remote.remote-ssh-0.65.1/out/askpass-main.js","VSCODE_SSH_ASKPASS_HANDLE":"/var/folders/4j/snvd5rq10ms16jn9qz_lyng00000gp/T/vscode-ssh-askpass-00a9811f9da9d2d01ee2e1787c3566818915b421.sock"}
[11:31:22.766] Spawned 78784
[11:31:22.861] > local-server> Spawned ssh: 78789
[11:31:22.864] stderr> OpenSSH_8.1p1, LibreSSL 2.7.3
[11:31:23.085] stderr> debug1: Server host key: ecdsa-sha2-nistp256 SHA256:fYH3j7skiWwmCgMRuSoIm7RtY+hryPXQWDSuY1b8Y54
[11:31:23.548] Got askpass request: {"request":"ubuntu@***.***.**.**'s password:"}
[11:31:23.549] Showing password prompt
[11:31:23.550] Listening for interwindow password on /var/folders/4j/snvd5rq10ms16jn9qz_lyng00000gp/T/vscode-ssh-askpass-07f31f411f8c13225a7dad9199258218cbef1c92.sock
[11:31:23.550] Writing password prompt to globalState
[11:32:06.550] Got password response
[11:32:06.551] Interactor gave response: *********
[11:32:06.552] Cleaning up other-window auth server
[11:32:06.675] stderr> Authenticated to ***.***.**.** ([***.***.**.**]:22).
[11:32:11.430] > Welcome to Ubuntu 20.04.2 LTS (GNU/Linux 5.8.0-14-generic riscv64)
> 
>  * Documentation:  https://help.ubuntu.com
>  * Management:     https://landscape.canonical.com
>  * Support:        https://ubuntu.com/advantage
> 
>   System information as of Thu Apr  1 16:32:06 UTC 2021
> 
>   System load:  0.09              Processes:             122
>   Usage of /:   61.4% of 7.00GB   Users logged in:       1
>   Memory usage: 5%                IPv4 address for eth0: ***.***.**.**
>   Swap usage:   0%
> 
>  * Introducing self-healing high availability clusters in MicroK8s.
>    Simple, hardened, Kubernetes for production, from RaspberryPi to DC.
> 
>      https://microk8s.io/high-availability
> 
> 0 updates can be installed immediately.
> 0 of these updates are security updates.
> 
> 
> *** System restart required ***
[11:32:11.470] > ready: c7a9837beb99
[11:32:11.477] > Linux 5.8.0-14-generic #16~20.04.3-Ubuntu SMP Mon Feb 1 16:33:19 UTC 2021
[11:32:11.477] Platform: linux
[11:32:11.539] > c7a9837beb99: running
[11:32:11.579] > Unsupported architecture: riscv64
> c7a9837beb99: start
> exitCode==27==
[11:32:11.580] > listeningOn====
> osReleaseId==ubuntu==
> arch==riscv64==
> tmpDir==/run/user/1000==
> platform==linux==
> unpackResult====
> didLocalDownload==0==
> downloadTime====
> installTime====
> extInstallTime====
> serverStartTime====
> c7a9837beb99: end
[11:32:11.580] Received install output: 
exitCode==27==listeningOn====
osReleaseId==ubuntu==
arch==riscv64==
tmpDir==/run/user/1000==
platform==linux==
unpackResult====
didLocalDownload==0==
downloadTime====
installTime====
extInstallTime====
serverStartTime====

[11:32:11.582] Unsupported architecture
[11:32:11.582] Terminating local server
[11:32:11.587] Resolver error: Error: The remote host's architecture is not supported
    at Function.ServerInstallError (/Users/samg/.vscode/extensions/ms-vscode-remote.remote-ssh-0.65.1/out/extension.js:1:64262)
    at c (/Users/samg/.vscode/extensions/ms-vscode-remote.remote-ssh-0.65.1/out/extension.js:1:58179)
    at Object.t.handleInstallOutput (/Users/samg/.vscode/extensions/ms-vscode-remote.remote-ssh-0.65.1/out/extension.js:1:63055)
    at Object.t.tryInstallWithLocalServer (/Users/samg/.vscode/extensions/ms-vscode-remote.remote-ssh-0.65.1/out/extension.js:1:388682)
    at processTicksAndRejections (internal/process/task_queues.js:97:5)
    at async /Users/samg/.vscode/extensions/ms-vscode-remote.remote-ssh-0.65.1/out/extension.js:1:293749
    at async Object.t.withShowDetailsEvent (/Users/samg/.vscode/extensions/ms-vscode-remote.remote-ssh-0.65.1/out/extension.js:1:407055)
    at async /Users/samg/.vscode/extensions/ms-vscode-remote.remote-ssh-0.65.1/out/extension.js:1:387177
    at async N (/Users/samg/.vscode/extensions/ms-vscode-remote.remote-ssh-0.65.1/out/extension.js:1:383945)
    at async Object.t.resolveWithLocalServer (/Users/samg/.vscode/extensions/ms-vscode-remote.remote-ssh-0.65.1/out/extension.js:1:386804)
    at async Object.t.resolve (/Users/samg/.vscode/extensions/ms-vscode-remote.remote-ssh-0.65.1/out/extension.js:1:297790)
    at async /Users/samg/.vscode/extensions/ms-vscode-remote.remote-ssh-0.65.1/out/extension.js:127:110485
[11:32:11.589] Local server exit: 15
[11:32:11.591] ------
roblourens commented 3 years ago

The remote server includes several pieces of native code which would need us to produce and distribute builds for this architecture.

yuzibo commented 2 years ago

Hi, Is there any progress in the feature request? I am happy to help this if I can anything

AdamMajer commented 2 years ago

Well, no one upvoted it so it was closed. The same problem applies for other architectures like s390x. I haven't checked ppc64.

yuzibo commented 2 years ago

Aha, and I noticed it is have been moved into Backlog milestone. Does it mean that is to develop this feature in the furture? If I am wrong please correct me.

wallace-hu commented 1 year ago

Hello I am RISCV fan, Tell me where can i upvote the request. I will vote for it.

wallace-hu commented 1 year ago

Here I share a WA solution before the request completely work. Mounting the RISCV filesystem to X86 ubuntu nfs server, And then using vscode remote-ssh connecting to the x86 ubuntu. It is same like working on riscv platform with vscode.

playXE commented 1 year ago

Is there any updates on this one?

B20221019 commented 8 months ago

This appears to be the case of a misleading error message. The ssh command I see that's used in the logging: Running script with connection command: "c:\windows\system32\openssh\ssh.exe" -T -D 30668 "192.168.1.45"

If I attempt to issue that command from my console, I type in my password and never get a response. If I drop the -T and -D parameters though, I successfully connect. It sounds like if the plugin doesn't get a response from the server after the password is entered, it gets interpreted as a not supported target. How an I tell the extension to not submit these two arguments?

karthick-govindaraj commented 7 months ago

any updates to connect risc-v arch

miltonjonat commented 7 months ago

This feature would be much appreciated

MartinStuwe commented 7 months ago

"Could not establish connection to "riscv": The remote hosts' architecture is not supported."

Common Microsoft, provide RISC-V support!

Kreijstal commented 7 months ago

"Could not establish connection to "riscv": The remote hosts' architecture is not supported."

Common Microsoft, drop RISC-V support!

I dont think you are using the word drop correctly.


also seems vscode is not so open source now that riscv64 comes into picture :DD, time to jump to vscodium

MartinStuwe commented 7 months ago

"Could not establish connection to "riscv": The remote hosts' architecture is not supported." Common Microsoft, drop RISC-V support!

I dont think you are using the word drop correctly.

also seems vscode is not so open source now that riscv64 comes into picture :DD, time to jump to vscodium

Oh, yeah. Release the RISC-V SSH functionality! I thought about the usage of drop like in "Dropped Release Date" :D

Maybe I will switch back to Emacs, I just moved back to VSCode because Lex Fridman also moved from Emacs to VSCode. But that it's not possible to use the SSH functionality with RISC-V machines, is frustrating.

alitariq4589 commented 6 months ago

I want to bump this issue. I am from RISC-V Lab Partners (an official subgroup of RISC-V international working on providing RISC-V instances). If you guys are low on bandwidth to spend on this project, we can port this extension to RISC-V using Cloud-V for you. Could you point me to the source code for adding the RISC-V support or the least you can do is inform us about the status of the RISC-V port of this extension?

You can also enroll yourself for Cloud-V to develop this using the RISC-V continuous integration service

Thanks Cloud-V Applying for access to Cloud-V

alitariq4589 commented 6 months ago

I can provide free RISC-V servers & CI to test this on. Is anyone from Microsoft interested in porting this to RISC-V?

kxxt commented 5 months ago

I have added riscv64 support to vscodium REH builds(you can expect the next release will include riscv64 support) and open-remote-ssh(not merged yet). Guess what? When proprietary fails to deliver, the solution is FLOSS!

Kreijstal commented 5 months ago

I have added riscv64 support to vscodium REH builds(you can expect the next release will include riscv64 support) and open-remote-ssh(not merged yet). Guess what? When proprietary fails to deliver, the solution is FLOSS!

god bless open source