Skip to content

Editions & Licensing

import { Aside } from ‘@astrojs/starlight/components’;

Monibuca v6 enforces Editions (connection/room/cluster limits) and Licenses (commercial activation files) separately. Without a license file there is no trial time limit — the server runs indefinitely as the Free edition.

Pre-built downloads are compiled as Free (edition-free). Build-time features can also target Professional or Enterprise; most users rely on the official binaries.

FeatureFreeProfessionalEnterprise
Max concurrent connections501,000Unlimited
Max rooms310Unlimited
Cluster deployment
Protocols & pluginsAll (excl. Cluster)All (excl. Cluster)All (incl. Cluster)

When limits are exceeded, new connections or rooms are rejected and a log message references the active edition. The Admin System view shows the effective edition and quotas.

At startup the process looks for activate_<username>.key in the working directory. If the file is missing, invalid, or fails local verification:

  • The server runs as the Free edition with no runtime expiry
  • There is no 30-day trial from build date
  • The process does not exit solely because no key was found

Example log line:

WARN No activation key found. Running as free edition (max connections: 50, max rooms: 3, no runtime time limit). Place a valid activate_<user>.key file to unlock licensed features.
ScenarioTime limitLimits
No license (default)NoFree
--edition pro / --edition enterprise on a Free binaryYes — shuts down after 30 minutesTemporary Pro/Enterprise quotas
Valid license fileNo (subject to license expiry dates)As licensed

Demo mode applies only when --edition requests a tier higher than the binary was built with. See Downloads for examples.

Place the activation file in the process working directory (same directory as config.yaml):

activate_<username>.key

Example: user acmeactivate_acme.key. The username inside the license must match the filename.

After a successful activation, local checks run; some license types also use online verification (ACTIVATE_URL, default http://localhost:8088/verify):

  • Validity window (start / expire, YYYYMMDD)
  • Version pattern (version regex)
  • Machine binding (selected license types)
  • Max concurrent streams (selected license types)

If the license expires or periodic local verification fails at runtime:

  • Limits fall back to Free edition; the server keeps running
  • The process does not exit only because the license expired (unlike older trial behavior)
  • Periodic license checks stop until you deploy a valid .key and restart

Failed online activation checks also degrade to Free instead of exiting the process.

VariableDescription
ACTIVATE_URLOnline activation endpoint (default http://localhost:8088/verify)

Licensed plugin lists may set *_ENABLE variables (e.g. CLUSTER_ENABLE) early at startup.

Default cargo build enables the license feature. With no .key file, behavior matches the sections above (Free, no runtime cap).

To omit the license module entirely:

Terminal window
cargo build --no-default-features --features "static-plugins,edition-free,all-plugins,api-v6"

(Adjust features as needed; do not include license.)

Pin edition at compile time with mutually exclusive features:

Terminal window
cargo build --features edition-free # default
cargo build --features edition-pro
cargo build --features edition-enterprise