SlimeVR / SlimeVR-OpenVR-Driver

SlimeVR driver for OpenVR
Apache License 2.0
204 stars 46 forks source link

Linux support for message passing #27

Closed funnbot closed 1 year ago

funnbot commented 1 year ago

Response to #2 Re implements bridge message passing with unix sockets, a bit more complicated than it should be due to being non-blocking, and it may have been a better idea to use boost.asio, as that would allow the switch to websockets to be seamless.. I tested the best I could with compiler explorer, surprisingly local sockets work there... https://godbolt.org/z/G9sY5K4da I set the socket path is /tmp/SlimeVRDriver as it doesn't require root to write to.

This pr also fixes cmake builds for linux, adds ubuntu-latest to the github action matrix, and uploads the artifact. Once someone begins work on the Java side, they can download it and hopefully be able to test them together.

I'm funnbot#8284 on the slimevr discord if you have questions.

kitlith commented 1 year ago

Is there anything available to test against this build of the driver, such as a corresponding PR to slimevr-server?

funnbot commented 1 year ago

I wasn't planning on writing any java.

kitlith commented 1 year ago

yeah, i missed the "Once someone begins work on the Java side", my bad.

Eirenliel commented 1 year ago

Please rebase to main and fix confclits. Also we need testing with https://github.com/SlimeVR/SlimeVR-Server/pull/273

ImUrX commented 1 year ago

now there are more errors, it wont compile for linux because of the #ELIF in the openvr.cpp

will wait for fix and try after :3