Runs where the machines are.
The same program ships for six targets. Pick the build for the host that sits on the machine network. The default-feature x86_64 Linux build is 58.0 MB with the editor and an OPC-UA server embedded, and the build fails above 60 MB. Every download carries an X-Checksum-Sha256 header to verify against.
| Host | Build | Fanuc FOCAS | Download |
|---|---|---|---|
| Raspberry Pi, Linux ARM64 | static musl, .tar.gz | Built-in client (beta). Fanuc ships no aarch64 library. | Download |
| Linux x86_64 | static musl, .tar.gz | Built-in client (beta). Static builds cannot load the Fanuc library. | Download |
| Linux x86_64, glibc 2.17+ | dynamic, .tar.gz | Your libfwlib32, or the built-in client (beta). | Download |
| Windows x86_64 | .zip with opex-flow.exe | Your fwlib30*.dll, or the built-in client (beta). | Download |
| macOS Apple Silicon | .tar.gz | Built-in client (beta). Fanuc ships no macOS library. | Download |
| macOS Intel | .tar.gz | Built-in client (beta). Fanuc ships no macOS library. | Download |
Straight to a shell
The archive holds the binary, config.example.yaml and a hardened systemd unit. The editor listens on loopback; the first start writes the API token to the data directory.
curl -L "https://flow.opexcg.com/latest?platform=linux-aarch64" -o opex-flow.tar.gz
tar xzf opex-flow.tar.gz # binary, config.example.yaml, opex-flow.service
cp config.example.yaml config.yaml
./opex-flow config.yaml # editor at http://127.0.0.1:3000As a service or a container
systemd. The shipped unit runs as its own user with ProtectSystem=strict, a state directory, secrets in a 0600 environment file, the dialout group for Modbus RTU and a 45 s stop timeout for the SIGTERM flush.
Docker. The repository's Dockerfile and compose file run it as a non-root container with state in a volume and the port published on host loopback only. The image is built from source.
Windows. Unzip, copy config.example.yaml to config.yaml and run opex-flow.exe config.yaml. See deployment for the details of each path.
Questions before you install.
Something missing? Write to marketing@opexcg.com.
Do I need Node.js, Docker or a database server to run it?
No. The release is one static executable with the editor embedded. State lives in SQLite files in its data directory: history, the push queue and pipeline traces. Docker is optional.