This message was deleted.
# lima
a
This message was deleted.
b
Does qemu-system-x86_64.exe and ssh.exe support Unix sockets on (recent version of) Windows?
Especially
ssh -L
f
You mean between Linux distros running in different namespaces, or between Linux and Windows? The latter has been broken in WSL2 afaiu, and you have to tunnel data over vsock instead. https://github.com/microsoft/WSL/issues/5961
b
Just for between Linux and Windows (for porting Lima to Windows host)
(I mean non-WSL2 native Windows host)
f
Yeah, that is the part that only works for WSL1 but not WSL2 afaiu
But you are talking about qemu and windows, not wsl2 and windows, right? So this would be something that would have to be provided/supported by qemu, right?
b
yes, not WSL2
Just
limactl.exe
with
qemu-system-x86_64.exe
and
ssh.exe
on plain Windows
f
Yeah, then I don't know. It is broken in WSL2 because of the switch to hyper-v
b
I know Windows added support for AF_UNIX a few years ago, but I’m not sure whether QEMU and SSH are updated to support AF_UNIX on Windows
b
I think it needs to use fifo instead, but haven’t gotten so far just yet. Current ha sock returned an error code
b
Thanks, but it would be nice if we can patch QEMU to use AF_UNIX on WIndows
b
User needed more work, e.g. uid and home - similar to fallback user name
Can do an update later, not sure if the “last 20%” is worth the effort
I was only looking at the internal needs, like was required by the hostagent and qmp. Not so much docker legacy tunnels
👍 1
But only got as far as the path, somehow I always forgot how silly the DOS paths are until I wander into Windows by mistake
I don’t think I will bother with all paths. Can use a mix. https://www.msys2.org/docs/filesystem-paths/
I’m not sure whether QEMU and SSH are updated to support AF_UNIX on Windows
Nothing seems to support unix sockets, not qemu (serial, qmp) not ssh (ControlMaster, tunneling) So most likely it would have to used named pipes (fifo) for qemu and tcp sockets for the agents
There is a tool "cygpath" to translate the paths, and it is needed because e.g. go embed hardcodes "/"