What is laplace ?
" Laplace is an open-source project to enable screen sharing directly via browser. Made possible using WebRTC for low latency peer-to-peer connections, and WebSocket implemented in golang for WebRTC signaling. "
Link to my branch which has Barrier intergrated with Barrier KVM: https://github.com/Akilan1999/laplace/tree/keyboard_mouse
Link to the pull request: https://github.com/adamyordan/laplace/pull/8
Installation required to share keyboard and mouse
To do this we ensure that the client either has has a IPV6 address or a public IPV4 address. We use the use the popular open repository known as Barrier KVM.
What is Barrier kvm?
“Barrier is software that mimics the functionality of a KVM switch, which historically would allow you to use a single keyboard and mouse to control multiple computers by physically turning a dial on the box to switch the machine you’re controlling at any given moment. Barrier does this in software, allowing you to tell it which machine to control by moving your mouse to the edge of the screen, or by using a keypress to switch focus to a different system.” Barrier KVM
Barrier KVM build status and links to install
Build from source
$ git clone https://github.com/adamyordan/laplace.git $ cd laplace && go build -o laplace main.go $ export LAPLACE = $PATH $ ./laplace --help $ ./laplace -setconfig $ ./laplace -tls -addrs <ip address>:<port no>
Note: ensure you are running none using Sudo
The machine that wants to control the screen needs to either be:
- Same network as the server
- Needs to have an IPV6 address
- Needs to have an public IPV4 address