Remote debug X11 forwarding problem
Hello,
I'm running Wing IDE Pro on Windows machine and trying to debug remotely on the Linux machine (Ubuntu 21.04).
I've set up a remote debugging environment using ssh with X11 forwarding. Debugging works well but I cannot see any plots (matplotlib, seaborn, etc.), which I suspect X11 forwarding is not working. However, there's no error message so I'm stuck on how I should proceed. I'm running Xming server on the Windows machine.
For example, if run this minimal code in Debug Console (in debug mode):
from matplotlib import pyplot as plt
plt.plot([1,2])
plt.show()
it returns the following:
[<matplotlib.lines.Line2D object at 0x7f9f4fdacb80>]
but no plot windows are visible to me.
To compare, I installed a Wing IDE package on the Linux machine and when I remote execute Wing IDE using ssh (Bitvise), I can see the plots correctly. This means my X server is running correctly and my ssh agent is capable of forwarding X11 packets.
So it seems when I do the remote debugging from within my local machine's Wing IDE, X11 packets are not forwarded. FYI, here's my ssh client config file:
Host testserver
HostName 10.0.0.1
User tester
IdentityFile C:\Users\tester\.ssh\tester-key
ForwardX11 yes
ForwardX11Trusted yes
What am I missing here?
Comments
Can you run an X11 app that connects back to your Windows system outside of Wing? The ssh program is what sets up X11 forwarding (Wing just specifies a command line option to enable it) and it's possible that some configuration is required on Windows.
You were right. The ssh setting on my client side was the problem. I was using Bitvise to execute an app remotely which worked because it was a separate setting from the default OpenSSH in Windows and I believed the setting was correct. I fixed it by adding an environment variable as DISPLAY=localhost:0 on the Windows client side.