2023-04-27 19:35:18 +08:00
# kmsvnc
## Introduction
A VNC server for DRM/KMS capable GNU/Linux devices.
2023-04-30 16:32:31 +08:00
The goal is to simply have a universally working vncserver on X, wayland and even something like your linux VT.
Currently in very early development stage.
2023-04-27 19:35:18 +08:00
2023-04-29 12:15:40 +08:00
## Notes
Intel made a great thing called CCS (Color Control Surface), however that won't work with kmsvnc. Please set `INTEL_DEBUG=noccs` globally, ideally in /etc/systemd/system.conf.d. Manpage is at `man 5 systemd-system.conf` . For example:
```
# /etc/systemd/system.conf.d/intel-no-ccs.conf
[Manager]
DefaultEnvironment=INTEL_DEBUG=noccs
```
NixOS:
```
systemd.extraConfig = ''
DefaultEnvironment=INTEL_DEBUG=noccs
''
```
2023-04-30 16:32:31 +08:00
If you plan to use the default vaapi driver for Intel and AMD GPUs, please make sure your vaapi configuration is working.
Nvidia support is highly experimental (nvidia-legacy with drm enabled or nvidia-open). Only one X-TILED modifier is supported as of now.
2023-04-29 12:15:40 +08:00
2023-04-27 19:35:18 +08:00
## Dependencies
* cmake
* libvncserver
* libxkbcommon
* libdrm
2023-04-29 02:05:13 +08:00
* libva
2023-04-27 19:35:18 +08:00
## Building
```
mkdir build
cd build
cmake ..
make
```
## Running
Helps are available via `kmsvnc --help` .
For example, `kmsvnc -p 5901 -b 0.0.0.0 -4 -d /dev/dri/card2`
Note that no security is currently supported.