Skip to main content

Getting started

Three commands take a fresh Ubuntu 24.04 server to a syncing node.

1. Install nomctl

curl -fsSL https://raw.githubusercontent.com/0x3639/nomctl/main/install.sh | sudo bash

The installer detects the architecture, downloads the latest GitHub release, verifies its sha256 against checksums.txt and installs the binary to /usr/local/bin. It is a short script; read it before piping it to a root shell, or download it first:

curl -fsSLO https://raw.githubusercontent.com/0x3639/nomctl/main/install.sh
less install.sh
sudo bash install.sh

To pin a version instead of main, fetch the script from the release tag and tell it which release to install:

curl -fsSL https://raw.githubusercontent.com/0x3639/nomctl/v0.5.0/install.sh | sudo NOMCTL_VERSION=v0.5.0 bash

The installer honours NOMCTL_VERSION (a release tag, default latest), NOMCTL_INSTALL_DIR and NOMCTL_REPO. Rerunning it upgrades in place.

To build from source instead, with Go 1.24 or newer:

go install github.com/0x3639/nomctl@latest

2. Deploy the node

sudo nomctl deploy

This installs git, make and gcc if missing, downloads the Go toolchain into /opt/nomctl/go, clones go-zenon, builds znnd, installs it to /usr/local/bin, writes and enables the go-zenon systemd unit and starts it. Details in Deploy.

3. Watch it sync

sudo nomctl status
sudo nomctl top
sudo nomctl logs -f

status prints one screen of service, sync, process and host state; top refreshes it live; logs -f follows the journal. See First look for how to read the numbers.

  • Alerts: send /start to the nomctl Telegram bot, then sudo nomctl alerts setup. Five minutes, no bot to create. See Alerts.
  • Backups: sudo nomctl backup --schedule --cadence 7 installs a timer. See Backups.
  • Later: sudo nomctl upgrade keeps nomctl current; status tells you when there is something to upgrade. See Upgrading.

The menu

Everything above is also in the interactive menu:

sudo nomctl

Every menu action is a subcommand with the same behaviour, so what you learn in the menu carries over to scripts.