Recently genieos did gain clipboard reading support under linux. I wanted to test it on a remote linux machine I have but when I try to run it I get:
$ ./genieos
could not load: libX11.so
$ locate libX11
/usr/lib/x86_64-linux-gnu/libX11.so.6
/usr/lib/x86_64-linux-gnu/libX11.so.6.3.0
I suspect the libraries are there and available, but something else in either the libraries or X requires an X environment to be running and this fails loading, preventing the program from running. Is there any way to handle this gracefully? Otherwise the module will never work on non X environments. While the proc for reading the cliboard has to be there always, when the dynamic library can't be loaded it could always return nil.Failing to load a DLL used to raise an exception but it was hard/impossible to really handle it and caused problems when the DLL happens to contain the memory manager as raising an exception causes an allocation (and it's hard to avoid that)... So now instead the code calls quit. We should distinguish between optional and mandatory dynlib bindings but then that is application specific, not something the library wrapper can decide. I guess we need a new variant of --dynlibOverride.
I think for now you have to use the dynlib module and handle the loading yourself.