Make sure that Go is installed. For example to install it from packages:
pkg install go
apt install golang
$ [fetch|wget] http://www.nncpgo.org/download/nncp-8.10.0.tar.xz
$ [fetch|wget] http://www.nncpgo.org/download/nncp-8.10.0.tar.xz.{asc,sig}
[verify signature]
$ xz -d < nncp-8.10.0.tar.xz | tar xf -
$ cd nncp-8.10.0
[optionally edit config]
$ bin/build
After that you should get various bin/nncp-* binaries and
bin/hjson-cli command (only for your convenience, not
necessary installation). For example, documentation for
nncp-bundle command can be get with
info doc/nncp.info -n nncp-bundle.
config file contains some environment variables that are
respected during installation:
$PREFIX,
$DESTDIR,
$GO,
$MAKEINFO,
$PLANTUML,
$PREFIX,
$SENDMAIL,
$CFGPATH,
$SPOOLPATH,
$LOGPATH,
$BINDIR,
$INFODIR,
$DOCDIR.
There is install script for binaries and info-documentation
installation:
# PREFIX=/usr/local ./install
NNCP depends on github.com/fsnotify/fsnotify library, that solely
relies on OS-specific mechanisms. There is possibility that you have
either broken or unsupported ones. You can still build NNCP with
-tags nofsnotify build option, to skip fsnotify library
usage at all:
$ GO_CFLAGS="-tags nofsnotify" bin/build
You can also disable Yggdrasil support with -tags noyggdrasil.