e780ecabf04d7e6053267ba1821cf83debbec548
Using systemd's `Delegate=` option, it is possible to get it to let you manage your own cgroup subtree, therefore allowing you to set options and other fun stuff. This commit adds support for doing so and configuring the resource limits in config.toml. For later: The cgroup created has to be a threaded one. Iin theory, we can actually wait for the QEMU process to handshake qmp, grab the vCPU threads, and only limit those. For now, just limiting the entire QEMU process works, though and is the least complicated. NOTE: Windows support should still work, even if you have resource limits configured. If you do, it should only warn and complain, but still function.
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:
- Node.js (obviously)
- QEMU (Unless you just want to use a VNC Connection as your VM)
- A Rust toolchain (e.g: rustup)
- NASM assembler
Installing dependencies on Arch
- Install dependencies:
sudo pacman --needed --noconfirm -Sy nodejs nasm rust - Enable corepack:
sudo corepack enable
Installing dependencies on Debian
TODO
Running
TODO: These instructions are not finished for the refactor branch.
- Copy config.example.toml to config.toml, and fill out fields
- Install dependencies:
yarn - Build it:
yarn build - Run it:
yarn serve
Description
Languages
TypeScript
90.2%
Rust
9.5%
JavaScript
0.3%