# [LINUX] VRS X Setup Guide

### Pre-start checklist

Before waking the Linux beast, make sure your system meets the basic requirements:

1. Kernel 5.0 or newer

   Check it with:

   ```bash
   uname -r
   ```

2. OpenSSL 1.1.1 or OpenSSL 3.x with TLS 1.2/1.3 support

   Check it with:

   ```bash
   openssl version
   ```

---

## No sudo needed to run VRSX. Sudo enters the chat only for systemd.

1. Download the Linux zip package from the link provided in the e-mail, for example:

   ```bash
   linux-arm64.zip
   ```

   Use the `linux-arm64` package for ARM64 machines, for example Raspberry Pi 4/5 or other ARM64 devices.

   Use the `linux-x64` package for Intel/AMD 64-bit machines.

2. Unzip the package:

   ```bash
   unzip linux-arm64.zip
   ```

   Or, on Intel/AMD machines:

   ```bash
   unzip linux-x64.zip
   ```

3. Enter the extracted directory:

   ```bash
   cd linux-arm64
   ```

   Or, on Intel/AMD machines:

   ```bash
   cd linux-x64
   ```

4. Make the binary executable:

   ```bash
   chmod +x VRSX
   ```

5. Start VRSX.

   Desktop mode:

   ```bash
   ./VRSX
   ```

   Headless mode:

   ```bash
   ./VRSX --headless
   ```

6. Open VRSX in your browser:

   ```text
   http://IP.OF.YOUR.MACHINE:8085
   ```

   Example:

   ```text
   http://192.168.100.100:8085
   ```

7. Activate VRSX using the license key available under the “My Account” section in ADS-B.Pro RadarView.

**Your instance is ready to go!**

---

## Set up a systemd service, sudo is necessary here

If you want VRSX to start automatically after boot, you can create a systemd service.

The example below assumes:

* your Linux username is `youruser`
* VRSX is located in `/home/youruser/linux-arm64`
* you are running the ARM64 version

If you are using Intel/AMD, replace `linux-arm64` with `linux-x64`.

If your username is not `youruser`, replace `youruser` with your real Linux username.

To check your username, run:

```bash
whoami
```

---

### Create the service file

Open the service file in nano:

```bash
sudo nano /etc/systemd/system/vrsx.service
```

Paste the configuration below:

```ini
[Unit]
Description=VRSX
After=network.target

[Service]
Type=simple
User=youruser
WorkingDirectory=/home/youruser/linux-arm64
ExecStart=/home/youruser/linux-arm64/VRSX --headless
Restart=on-failure
RestartSec=5

[Install]
WantedBy=multi-user.target
```

Before saving, make sure you changed:

```text
youruser
```

to your real Linux username.

If you are using the x64 version, also change:

```text
linux-arm64
```

to:

```text
linux-x64
```

Save and exit nano:

```text
Ctrl+O
Enter
Ctrl+X
```

**WARNING: Old Linux joke:** If you want to create a strong admin password, try editing this file with `vi`.

---

### Enable and start the service

Reload systemd:

```bash
sudo systemctl daemon-reload
```

Enable VRSX at boot and start it now:

```bash
sudo systemctl enable vrsx --now
```

Check service status:

```bash
sudo systemctl status vrsx
```

If everything looks good, open VRSX in your browser:

```text
http://IP.OF.YOUR.MACHINE:8085
```

Example:

```text
http://192.168.100.100:8085
```

Activate VRSX using the license key available under the “My Account” section in ADS-B.Pro RadarView.

---

## RHEL, Rocky Linux, CentOS and SELinux notes

On some RHEL-based systems, SELinux may complain harder than a Windows admin forced to use a terminal.

If the regular `ExecStart` line does not work, you can try wrapping the command in Bash.

Replace this line:

```ini
ExecStart=/home/youruser/linux-arm64/VRSX --headless
```

with:

```ini
ExecStart=/bin/bash -c '/home/youruser/linux-arm64/VRSX --headless'
```

Then reload and restart the service:

```bash
sudo systemctl daemon-reload
sudo systemctl restart vrsx
```

Check the logs if something still refuses to cooperate:

```bash
journalctl -u vrsx -e
```

Or follow logs live:

```bash
journalctl -u vrsx -f
```

---

## Useful service commands

Start VRSX:

```bash
sudo systemctl start vrsx
```

Stop VRSX:

```bash
sudo systemctl stop vrsx
```

Restart VRSX:

```bash
sudo systemctl restart vrsx
```

Disable VRSX from starting at boot:

```bash
sudo systemctl disable vrsx
```

View logs:

```bash
journalctl -u vrsx -e
```

Follow logs live:

```bash
journalctl -u vrsx -f
```