hazelnut/README.md
2024-12-02 03:35:15 -05:00

919 B

Hazelnut

A semi-prototype of CollabVM 3.0 agent functionality (specifically display).

Currently NVIDIA-specific (since we use NvFBC); support for DXGI duplication (for post Win7) should be added at some point.

The agent runs on Windows 7 x64 onwards. Lower (or x86) is currently not supported as a target.

The agent uses IVSHMEM to provide frames to the client in a low-latency fashion. Later on virtio-serial may be considered for low-bandwidth additional functionality, like input. For now, however, the agent is display only.

This repository contains:

  • The agent. Written in C++20.
  • Shared headers and utility code, used between the agent and the client. Written in C++20, mostly so it can be shared between the agent and client.
  • A simple client, written mostly in Rust (with some C++ glue), which displays the framebuffer (in a quick-and-dirty fashion.). Mostly test-only code. Some of it isn't though!