I was using Mac’s X11 terminal to run a GUI application remotely, when suddenly it gave the dreaded:
Tk initialization failed: no display name and no $DISPLAY environment variable.
Why? There’s no way my machine couldn’t handle X Window Forwarding.
Turns out to enable X Window Forwarding, you need to include the -X command line argument:
ssh -X you@server
This is like checking the enable X11 forwarding box in Putty.