Install and Package
This guide covers source builds, local installs, docs installs, and the packaging-oriented make targets shipped in the repository.
Build from source#
Recommended build path:
cd virtnosis
make build
make verify
make build always goes through build.slk, builds both shipped executables,
verifies the declared output surface, and writes build/build-manifest.json.
The resulting install surface is the virtnosis-agent and vnactl command
pair.
Install#
Install binaries, docs, and man pages:
cd virtnosis
make install PREFIX=/usr/local
Install docs and section-7 references only:
cd virtnosis
make install-docs PREFIX=/usr/local
What the install surface includes:
- executables under
$(PREFIX)/bin - markdown docs under
$(PREFIX)/share/doc/virtnosis/ - section 1 and section 7 man pages under
$(PREFIX)/share/man/ - install metadata under
$(PREFIX)/share/virtnosis/metadata/
Systemd example assets#
Install example units and packaging assets:
cd virtnosis
make install-systemd-examples PREFIX=/usr \
SYSTEM_LISTEN_GID=123 \
SYSTEM_SOCKET_GROUP=virtnosis
Remove those staged assets again:
cd virtnosis
make uninstall-systemd-examples PREFIX=/usr
Use Systemd Guide for the operational story behind those assets.
Verification and release lanes#
Common verification targets:
make verify
make runtime-deps
make binary-footprint
make repro-check
make systemd-verify
make control-plane-soak
Packaging and release-oriented targets:
make package-stage-verify
make package-stage-verify-systemd
make release-verify
make dist
These targets matter because the repo treats install metadata, staged install verification, and packaging templates as part of the maintained product surface.
Packaging metadata and provenance#
When you are building packages or auditing release outputs, the important targets are:
make build-preflightmake build-outputsmake build-manifestmake build-manifest-checkmake install-manifest*make install-metadata*make package-metadata*make package-templates*make package-skeletons*make package-artifact-manifest*
See also#
Source repository · Edit this page · View Markdown