modeco80 1c062697b9 WIP: protocol abstraction
Work on abstracting the CollabVMServer so it now calls into a interface for sending/recieving protocol messages. This will allow cleaner bringup of a fully binary protocol, and generally is just cleaner code.

Mostly everything is parsd/running through this new layer, although there are some TODO items:

- NetworkClient/... should just spit out a Buffer or something that eventually turns into or has one
- TCP protocol will need to be revamped so we can support an actual binary protocol on top of it. The current thing is line based
- More admin op stuff needs to be handled
- The handlers are a bit jumbled around atm
- There is still a good amount of code which assumes guacamole which needs to be rewritten

dont use this branch fuckers
2024-08-23 10:13:15 -04:00
2023-09-02 17:54:44 -04:00
2024-08-23 10:13:15 -04:00
2024-06-23 02:24:03 -04:00
2024-08-04 18:28:33 -04:00
2024-04-11 12:04:40 -04:00
2024-07-30 22:49:59 +03:00

CollabVM1.ts

This is a drop-in replacement for the dying CollabVM 1.2.11. Currently in beta

Compatibility

The CollabVM server will run on any Operating System that can run Node.JS and Rust. This means modern Linux distributions and Windows versions.

We do not recommend or support running CollabVM Server on Windows due to very poor support for QEMU on that platform.

Dependencies

The CollabVM server requires the following to be installed on your server:

  1. Node.js (obviously)
  2. QEMU (Unless you just want to use a VNC Connection as your VM)
  3. A Rust toolchain (e.g: rustup)
  4. NASM assembler

Installing dependencies on Arch

  1. Install dependencies: sudo pacman --needed --noconfirm -Sy nodejs nasm rust
  2. Enable corepack: sudo corepack enable

Installing dependencies on Debian

TODO

Running

TODO: These instructions are not finished for the refactor branch.

  1. Copy config.example.toml to config.toml, and fill out fields
  2. Install dependencies: yarn
  3. Build it: yarn build
  4. Run it: yarn serve
Description
No description provided
Readme 686 KiB
Languages
TypeScript 90.2%
Rust 9.5%
JavaScript 0.3%