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.
4. Optional but recommended
- Alerts: send
/startto the nomctl Telegram bot, thensudo nomctl alerts setup. Five minutes, no bot to create. See Alerts. - Backups:
sudo nomctl backup --schedule --cadence 7installs a timer. See Backups. - Later:
sudo nomctl upgradekeeps nomctl current;statustells 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.