Geany: Geany refuses to start because of domain socket

Created on 26 Feb 2017  路  5Comments  路  Source: geany/geany

The error I'm getting is

Geany tried to access the Unix Domain socket of another instance running as another user.
This is a fatal error and Geany will now quit.

I'm aware of #294, but I'm not running geany as root. This error occurs whenever I start an instance of geany, then either start another instance or open a file with geany (through right click -> open with geany).

While an instance of geany is running, ls -l .config/geany/ | grep socket shows

lrwxrwxrwx. 1 root root 60 Feb 26 14:11 geany_socket_Starlight__0 -> /tmp/geany_socket.fcdcdb1b

If I understand correctly, the owner of this file should be me, not root.

I suspect that this problem is related to the way I've set up my home directory - it's on an NTFS partition. (More accurately, .config/geany is symlinked to a directory on an NTFS partition.)

bug workaround available

Most helpful comment

The same thing happened to me after using geany with root. As user i couldn't start geany again, even after reboot :

"Geany tried to access the Unix Domain socket of another instance running as another user. This is a fatal error and Geany will now quit."

I'm not sure why but I fixed this error with a clean sudo geany, closing the wrindow and reopening geany as normal user. Maybe I didn't close the root window properly, not sure.

All 5 comments

I am not an expert on it, but I understand that NTFS does not store Linux ownerships, so when you mount the NTFS partition you need to specify the user that the mounted NTFS partition will appear to be owned by, or it uses the user who mounted it, in your case I'm guessing root.

I'll try that, but that workaround wouldn't help if I wasn't the only user on this PC. Wouldn't writing the user ID into the file (instead of checking its owner) solve the problem?

yeah, the problem seems to be that Geany is checking the ownership of the link, not the socket. Since the link is there to allow for just your setup, having the configuration directory on a foreign filesystem that may not support sockets, the validity of its permissions and users should not be relied on either.

Should only need to change the line linked above to g_stat().

The same thing happened to me after using geany with root. As user i couldn't start geany again, even after reboot :

"Geany tried to access the Unix Domain socket of another instance running as another user. This is a fatal error and Geany will now quit."

I'm not sure why but I fixed this error with a clean sudo geany, closing the wrindow and reopening geany as normal user. Maybe I didn't close the root window properly, not sure.

@justUmen yes, you almost certainly didn't cleanly close Geany, so the socket owned by root was left there.

Was this page helpful?
0 / 5 - 0 ratings

Related issues

AdamDanischewski picture AdamDanischewski  路  13Comments

makitso picture makitso  路  16Comments

webdev23 picture webdev23  路  8Comments

surveyor3 picture surveyor3  路  5Comments

esotericpig picture esotericpig  路  4Comments