Skip to content

Command-line options

Nexus is normally run as a service and you never type these. They are here for diagnosis, for scripted installs, and for running it in a console to watch it start.

raylux-nexus [options]

General

OptionEffect
--config <path>Use a specific project file instead of raylux_project.json in the data directory.
--data-dir <path>Where Nexus keeps its data. See Where files live.
--web-dist <path>The built operator runtime to serve.
--log-level <level>debug, info, warn or error.
--validate-configParse the project file and exit. Exit code 0 means valid, 2 means invalid.
--allow-missing-configStart even when the project file is absent.
-v, --versionPrint the version and exit.
-h, --helpPrint usage and exit.

Check a configuration before restarting a running Nexus

bash
raylux-nexus --validate-config --config /path/to/raylux_project.json

This tells you whether Nexus will accept the file without taking the running one down to find out.

Windows service

Run these from an elevated prompt.

OptionEffect
--install-serviceRegister Nexus with the Service Control Manager and exit.
--uninstall-serviceStop and remove the service, then exit. Running it twice is not an error.
--service-account <account>The account to register the service under. Defaults to LocalSystem.
--serviceRun under the Service Control Manager. Set by the installer — do not use it by hand.

--install-service bakes --data-dir, --config, --web-dist and --log-level into the registered command line if you supply them.

You normally do not need these

The installer registers the service itself. Use --install-service only for a build-from-source install. If you register a service by hand, supply --data-dir and --web-dist explicitly:

A service starts with its working directory set to C:\Windows\System32, and both of those default to paths resolved against the working directory. Without them Nexus writes its project file, history and TLS private key into System32, and serves no web interface.

powershell
.\raylux-nexus.exe --install-service `
    --data-dir "C:\ProgramData\Raylux" `
    --web-dist "C:\Program Files\Raylux\nexus\web"

It prints exactly what it registered. Confirm with:

powershell
sc qc RayluxNexus

The registered path is always quoted. An unquoted service path containing a space is a well-known privilege-escalation vector, so this is not left to chance.

Exit codes

CodeMeaning
0Clean exit.
2Invalid configuration (from --validate-config).