Sami Aario wrote:
I did some Googling and found this link which I believe is relevant: http://lists.debian.org/debian-kde/2003/debian-kde-200305/msg00357.html. I've been launching applications from the console, where DISPLAY is not set. Under an X bash shell however, 'echo $DISPLAY' gives me ':0.0' as expected, and I don't get the error I mentioned previously when launching wine.
Is this how it's supposed to work, i.e. should I specify DISPLAY explicitly on the console if I want to launch wine applications from there?
When launching X applications the "DISPLAY" variable should be set. Wine is such an application. When you launch Wine from a term launched within the X environment, this variable is already set. If you want to launch an X application from outside that environment, you need to make sure that the app knows which X server to connect to (the DISPLAY variable), as well as have the proper authorization.
In your case, the authorization was probably not an issue, because the same user that was running the app from X is the one who started the server (and thus had authorization to do so). As such, nothing besides setting the DISPLAY var is neccessary. If you are going to complicate your setup further, however, I would recommend you RTFM "xauth", as well as the XAUTHORITY environment variable. A simpler but less safe solution is to use "xhost". I would recommend against, however.
Shachar