I’m excited to announce the release of Haiku Remote Desktop, a new application that allows you to view and control your Haiku system entirely from a web browser.
What is it? It is a native C++ application that captures the screen, encodes it using VP8/VP9, and streams it efficiently to a web interface. It allows for full interaction thanks to a custom Input Server device driver that maps browser events to local mouse and keyboard input.
Key Features:
Zero-Client: Works in any modern web browser (Chrome, Firefox, Safari, etc.). No VNC or RDP viewer required.
High Performance: Low-latency streaming optimized for responsiveness.
Headless-Friendly: Perfect for managing headless servers or virtual machines.
Native: deeply integrated with the Haiku API and Input Server.
Getting Started: You can download the latest package here: https://github.com/ltouati/HaikuRemoteDesktop/releases/tag/v1.0.0
Usage is simple: just install the package and launch the application. It will start a server (defaulting to port 8443) that you can access from any device on your network.
The app does not build successfully on my R1/beta5 system. If I strictly follow the build prerequisites the build complains that the node executable is missing. If I install nodejs from our package repository the build process complains about missing modules.
Here’s the full output from the make command:
[ 9%] Built target virtual_input_server_addon
[ 13%] Generating style.css from input.css
node:internal/modules/cjs/loader:1148
throw err;
^
Error: Cannot find module ‘/boot/home/Temp/compile/HaikuRemoteDesktop/src/UserlandServer/node_modules/tailwindcss/lib/cli.js’
at Module._resolveFilename (node:internal/modules/cjs/loader:1145:15)
at Module._load (node:internal/modules/cjs/loader:986:27)
at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:174:12)
at node:internal/main/run_main_module:28:49 {
code: ‘MODULE_NOT_FOUND’,
requireStack:
}
I tested the package and it works fine, but the streaming is not yet high-performance—it’s still impressive, though. I ran Haiku on VirtualBox with a bridged network.
Thx a lot !!!, I’ve published a new version and package that fixes some performance issues. First I’ve changed the way screen copying is done and use a BDirectWindow. I’ve also added a x264 encoder that is much faster.