summaryrefslogtreecommitdiff
path: root/AGENTS.md
diff options
context:
space:
mode:
authorYevhen Bondarenko <evgeniy.bondarenko@sentrium.io>2026-05-08 20:27:23 +0200
committerGitHub <noreply@github.com>2026-05-08 20:27:23 +0200
commit2b400a1576e477df0da60fc3c2469672d37468b3 (patch)
treed8092047bbf34cc466abf6f1334d3ea2c44deb5a /AGENTS.md
parent071cca6081989681da965f44c5a31a052d1cb02b (diff)
parentbd3a4e9005c2d02f88307f3961332021f866db9a (diff)
downloadhvinfo-2b400a1576e477df0da60fc3c2469672d37468b3.tar.gz
hvinfo-2b400a1576e477df0da60fc3c2469672d37468b3.zip
Merge pull request #10 from vyos/T8595-add-agents-md
general: T8595: add AGENTS.md
Diffstat (limited to 'AGENTS.md')
-rw-r--r--AGENTS.md50
1 files changed, 50 insertions, 0 deletions
diff --git a/AGENTS.md b/AGENTS.md
new file mode 100644
index 0000000..4cdc2a3
--- /dev/null
+++ b/AGENTS.md
@@ -0,0 +1,50 @@
+# AGENTS.md
+
+## Project purpose
+
+Hypervisor detection CLI tool for UNIX-like systems. Reports which hypervisor (KVM, Xen, VMware, Hyper-V, …) the host is running on without requiring root privileges.
+
+## Tech stack
+
+- Ada 2005 (designed for that — README: "Single high level language. Even if certain things require more code.").
+- Build: GNAT 4.x+ via `gprbuild` (`hvinfo.gpr` project file). GNU `make` is the user-facing entry point (`Makefile` calls `gprbuild`/`gprclean`; installs via standard Unix `install`).
+- Configuration generated by `mkconfig.sh` and `mkdefs.sh` (shell) using `gnatprep`.
+- Debian packaging under `debian/` (`changelog`, `control`, `rules`, `copyright`).
+
+## Build / test / run
+
+```
+gmake # builds via gprbuild into build/
+gmake install PREFIX=<some dir>
+# Debian package
+dpkg-buildpackage -uc -us -tc -b
+```
+
+No automated test suite; the binary itself is the test (run on each target hypervisor).
+
+## Repository layout
+
+- `src/` — Ada sources.
+- `hvinfo.gpr` — GNAT project file.
+- `hvinfo.def` — gnatprep preprocessor directives file (committed).
+- `config.def` — generated by `mkdefs.sh`; listed in `.gitignore`.
+- `mkconfig.sh`, `mkdefs.sh` — generators called from `Makefile`.
+- `Makefile` — user-facing build wrapper.
+- `debian/` — Debian packaging.
+- `VERSION`, `README.md`, `LICENSE` (GPL-2).
+
+## Cross-repo context
+
+One of the canonical 14 VyOS-image build packages, listed in an internal repository. Built into VyOS images by `vyos-build` and consumed at runtime by `vyos-1x` to detect virtualisation context. Native-package category — no application-level test runner beyond `dpkg-buildpackage`.
+
+## Conventions
+
+- Commit / PR title format: `component: T12345: description` (Phorge task ID at https://vyos.dev mandatory). Enforced by `vyos/.github` reusable workflows where consumed.
+- Author: Daniil Baturin; one of the very few Ada packages in the VyOS ecosystem.
+- License: GPL-2-or-later.
+
+## Notes for future contributors
+
+- Build needs Ada 2005 toolchain (`gnat`, `gprbuild`, `gnatprep`).
+- Adding a new hypervisor signature: extend the relevant Ada module under `src/` and bump `VERSION`.
+- License: GPL-2.