Skip to content
0x3639Public

About

No description, website, or topics provided.

Resources

Stars

1 star

Watchers

1 watching

Forks

Repository files navigation

nomctl

nomctl is a single static binary for deploying and operating Zenon Network (NoM) nodes on Debian/Ubuntu. It is a Go port of the bash toolkit at hypercore-one/deployment: a grouped interactive menu and non-interactive commands for automation, no dependency on gum, jq or any other helper.

Documentation: nomctl.0x3639.com

Quick start

curl -fsSL https://raw.githubusercontent.com/0x3639/nomctl/main/install.sh | sudo bash
sudo nomctl deploy     # installs Go, builds znnd, creates and starts the go-zenon service
sudo nomctl status     # sync state, peers, pillar production, CPU, memory, disk
sudo nomctl upgrade-node           # build, back up and upgrade from source
sudo nomctl upgrade-node --signed  # choose a signed node release
sudo nomctl            # Manage node, Backups & recovery, Install & upgrade, and more

Then, optionally, sudo nomctl alerts setup for Telegram alerts (send /start to the bot first) and sudo nomctl backup schedule --retention-days 7 for daily local backups. The menu also creates protected restore points, and both node-upgrade paths preserve a matching chain-data/binary restore point before upgrading.

Requirements: Debian or Ubuntu with systemd and apt (Ubuntu 24.04 is the tested target), amd64 or arm64, root, 4 cores and 4 GiB RAM.

What is where

Building

make build      # ./bin/nomctl and ./bin/nomctl-relay for the host platform
make cross      # static linux/amd64 and linux/arm64 binaries in ./bin
make test
make lint       # gofmt + go vet + golangci-lint

Releases are produced by goreleaser on tag push: archives for both architectures, checksums.txt (which install.sh verifies) and the ghcr.io/0x3639/nomctl-relay image. The docs site lives in website/ and deploys to GitHub Pages from main.

The module path is declared in go.mod; make rename NEW=github.com/you/nomctl rewrites it and every import. install.sh takes the GitHub repository slug from NOMCTL_REPO (default 0x3639/nomctl). Source for the docs, design specs and plans is under docs/ and website/.

License

GPL-3.0, as a derivative of hypercore-one/deployment. See LICENSE.

About

No description, website, or topics provided.

Resources

Stars

1 star

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages