
Woohooo!!! Success! This is crossposted to the two lists where I received different, but related answers. For others who might encounter the same problem, I reproduce the two solutions below, because they are worded differently and they approach the problem from different directions. It is always very helpful for understanding, to see two viewpoints. Sincere thanks to both Wolfgang Fritz and Anders Johansson, respectively. Also, I had forgotten about "sux", which I had used before, but which is not mentioned in general-audience mailing lists, because not all distros have the command available. To summarize, I was attempting to install OpenOffice 1.0.1, but the install script kept reporting "cannot connect to X server". Here are the solutions -- On Monday 19 August 2002 20:11, Wolfgang Fritz wrote:
Initializing installation program.......... Xlib: connection to ":0.0" refused by server
It's what the message means: The X connection (the install program tried to open) was refused by the X server. In SuSE 8.0 only the user logged in via KDM is able to open connections to the X server by default.
Solution: Open a terminal from the task bar and enter the command xhost + Then open a root window and enter the command export DISPLAY=:0 Then start the install script in this window.
AND, FROM Anders Johansson On Monday 19 August 2002 20:39, Anders Johansson wrote:
Here's the deal: X doesn't know about root, it know only about the user that started it. That user has all the permissions to run programs that use the running X. As that user you need to grant permissions to other users to run programs. There are several ways to do this:
As the user that started X, run "ssh -X root@localhost"
As root after "su", run "export XAUTHORITY=/home/user/.Xauthority" where "user" is the user that started X.
As the user that started X, run "sux" instead of "su" to go to root. This will essentially do the XAUTHORITY thing I mentioned, but you won't have to know about it :)
As the user who started X, run "xhost +inet:localhost". This will allow *all* users logged in to the local machine to run X programs.
I'm sure there are other ways, but these should be enough to be getting on with
-- "DIRty DEEDS, and they're DONE dirt cheap." [Sing it with me, now...]