UserVM Handbook: Difference between revisions

From Computernewb Wiki
Jump to navigation Jump to search
(typescript)
No edit summary
Line 34: Line 34:
npm run build
npm run build
}}
}}
== Set up your VM ==
Now is a good time to get your VM set up. Currently, the only supported hypervisor is QEMU. We have many guides on this wiki for setting up different OSes in QEMU, [[QEMU/Guests|check them out here.]]
Here are some ideas to make your VM interesting:
*A funny wallpaper
*Development software (Visual Studio, etc.)
*Some games
*Some harmless malware (for the love of god no GDI rapists)
== Configuration ==
Now we need to fill out the config file for your VM. Copy config.example.toml to config.toml, and open it in an editor.
<!-- Wikitext table syntax is SO ass I'll stick to HTML thanks -->
<table class="wikitable">
<tr><th>Config value</th><th>Explanation</th></tr>
<tr><td>host</td><td>Host IP for the server to bind to. 99% of the time this will be 127.0.0.1 on proxied instances and 0.0.0.0 on non-proxied (see below)</td></tr>
<tr><td>port</td><td>Port for your server to bind to. This must be different for each VM you host, and cannot be the same as any other server running on your system (see output of <code>ss -tuln</code> to see what ports are used)</td></tr>
</table>

Revision as of 23:50, 13 February 2023

Welcome to the official guide on setting up a UserVM.

Prerequisites

You'll need:

  • A machine with decent specs (8GB of RAM and a modern CPU, probably)
  • A Linux distribution; You can pick any mainstream distro, for the purposes of this guide I recommend either Debian/Devuan or Arch/Artix. I recommend the OpenRC versions (Devuan/Artix) but that's just preference, pick what you're comfortable with. Yes, Ubuntu will work, it's terrible though
  • Basic knowledge of how computers and Linux systems work. We aren't going to hold your hand, you need to be comfortable with a command line
  • A few hours

Compiling the server

Install Git

First up make sure you have git installed:

sudo pacman -S --needed git # Arch
sudo apt install git # Debian

Prepare the server

Now let's clone the source. This is assuming you're in your home directory but you can clone it wherever

git clone https://github.com/computernewb/collabvm-1.2.ts.git
cd collabvm-1.2.ts

Next, we need to install Node.js, as well as the server dependencies. First, node:

sudo apt install npm nodejs # Debian
sudo pacman --needed -S npm nodejs # Arch

Then install dependencies

npm i

Finally, build the server

npm run build

Set up your VM

Now is a good time to get your VM set up. Currently, the only supported hypervisor is QEMU. We have many guides on this wiki for setting up different OSes in QEMU, check them out here. Here are some ideas to make your VM interesting:

  • A funny wallpaper
  • Development software (Visual Studio, etc.)
  • Some games
  • Some harmless malware (for the love of god no GDI rapists)

Configuration

Now we need to fill out the config file for your VM. Copy config.example.toml to config.toml, and open it in an editor.

Config valueExplanation
hostHost IP for the server to bind to. 99% of the time this will be 127.0.0.1 on proxied instances and 0.0.0.0 on non-proxied (see below)
portPort for your server to bind to. This must be different for each VM you host, and cannot be the same as any other server running on your system (see output of ss -tuln to see what ports are used)