Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Server overview

vsync-server is the shared object store and metadata service used by the desktop and command-line clients. One server can host multiple games, platforms, streams, and users.

The supported production deployment is:

  • A Linux x86-64 server.
  • Local NVMe storage.
  • vsync-server managed by systemd.
  • Caddy or another reverse proxy providing HTTPS.
  • One access token per person, or Perforce-based login.

The server stores:

  • Content-addressed chunks in objects/.
  • Immutable build manifests in manifests/.
  • Builds, streams, users, and activity metadata in meta.sqlite.

The server itself speaks plain HTTP. Do not expose its listening port directly to the internet; put an HTTPS reverse proxy in front of it.

Sizing

For a small team, start with 2–4 CPU cores, 8 GB RAM, and fast local NVMe. Storage and outbound bandwidth matter more than CPU. Size the disk for one full copy of the initial builds plus the changed chunks retained from later builds.

Avoid storage backed by a slow network filesystem. Chunk transfer, manifest assembly, and garbage collection benefit from predictable local filesystem latency.

Supported server platforms

Linux is the supported production platform. An experimental Windows x86-64 binary is available for evaluation and small internal setups, but it does not yet include native Windows Service integration. macOS is not a server target.