Staex logostaexDocs
Docs/Installation

Installation

Platform-specific installation instructions for Staex MCC across Linux, OpenWRT, and macOS.

Supported Platforms#

Staex MCC is available for the following platforms:

  • Ubuntu / Debian (amd64, arm64)
  • CentOS / Rocky / Fedora (amd64, arm64)
  • OpenWRT (various architectures)
  • macOS (Apple Silicon and Intel)

Your First Node#

Setting up your first node follows a consistent sequence regardless of platform:

  1. Sign in at cas.staex.io and create a network certificate
  2. Install MCC using your platform's package manager
  3. Initialize with your network certificate:
bash
sudo mcc init <NETWORK-CERTIFICATE-BASE64>
  1. Start the MCC service using your platform's service manager

Linux (systemd)#

On systemd-based Linux distributions, manage the MCC service with standard commands:

bash
sudo systemctl enable --now mcc
sudo systemctl status mcc
sudo systemctl restart mcc
sudo journalctl -u mcc

OpenWRT#

On OpenWRT, manage the service using procd:

bash
service mcc enable
service mcc start
service mcc status

You also need to configure dnsmasq so that MCC domain names resolve correctly:

bash
uci set dhcp.@dnsmasq[-1].domainneeded=0
uci set dhcp.@dnsmasq[-1].rebind_protection=0
uci set dhcp.@dnsmasq[-1].confdir=/etc/dnsmasq.d
uci commit dhcp
service dnsmasq restart
service firewall reload

macOS#

On macOS, use launchctl to manage the MCC service:

bash
sudo launchctl kickstart system/io.staex.mcc
sudo launchctl print system/io.staex.mcc
sudo launchctl kill SIGTERM system/io.staex.mcc

View logs:

bash
sudo log show --predicate 'subsystem == "io.staex.mcc"' --last 1h

To launch MCC automatically at boot, modify the io.staex.mcc plist file and set the RunAtLoad key to true.

Adding More Nodes#

To add additional nodes to your network, run the init command with --parents pointing to either the public network or your first node's address:

bash
sudo mcc init --parents public.staex.io <NETWORK-CERTIFICATE-BASE64>

If your nodes communicate through firewalls, ensure port 9376 UDP is open for MCC traffic. After initialization, verify connectivity:

bash
mcc nodes

The output should list all reachable nodes in the network.