Open yurivict opened 1 year ago
Hi!
Touchégg is executed in 2 different processes that communicate using D-Bus over Unix socket.
I have never try to run it on *BSD, but it looks like D-Bus abstract namespace is not supported... You probably have more luck trying a pre-compiled package.
I have no idea about how package management works on FreeBSD, but it looks like this port is quite updated: https://www.freshports.org/sysutils/touchegg/
I'm not sure if you can ask questions on freshports to other BSD users, they will probably know how to fix this error.
You need for fix exception handling. You can try to throw the exception from the line 57 regardless of the DBus error and you will see that it isn't properly caught and reported.
That exception should not be handled, the program can not work without D-Bus connection, so printing the error and aborting is a valid option.
On FreeBSD abstract UNIX pipes aren't supported. You can apply the patched like in the port here to make it compatible with FreeBSD.
That's the proper fix, thanks for the link! I just applied a similar fix, but including OpenBSD and NetBSD here: https://github.com/JoseExposito/touchegg/pull/612
That exception should not be handled, the program can not work without D-Bus connection, so printing the error and aborting is a valid option.
Unhandled exceptions generally don't print the message. Some Linuxes do have a hook that prints the message, but this is rather a hack. On BSDs unhandled exceptions just cause program termination with the error message Abort trap
.
Ah, I see, on Linux those errors are displayed in the journal, i.e., journalctl -u touchegg -b
. I'll try to have a look and at least lot to stderr.
touchegg aborts on exception:
Exception is thrown from here and never caught:
Your environment
touchegg --version
in the terminal to check the version