Skip to main content

Source Map

This map describes the lapee source tree on PermaGit as it matters for launch docs, release engineering, and operator behavior.

Top Level

PathRole
README.mdOperator source of truth: quick start, build, verify, Secure Boot, security model, troubleshooting, repo layout.
AGENTS.mdPublic product guide for assistants learning LapEE from the docs site.
MakefilePublic release surface: image build/write, signing keys, WiFi credentials, operator config injection, QEMU tests, HyperBEAM fetch.
docker/DockerfileHost build image with Buildroot dependencies, EFI tooling, Rust, and cross-build helpers.
.gitignoreKeeps build output, generated images, keys, WiFi credentials, and local HyperBEAM worktrees out of git.

Buildroot External Tree

PathRole
buildroot-external/configs/lapee_defconfigx86_64 Buildroot config: Linux, Erlang, OpenSSL, tpm2-tss, networking, firmware, reproducible-build settings, HyperBEAM package.
buildroot-external/configs/lapee-sb-provisioner.extraExtra config for Secure Boot provisioner images.
buildroot-external/board/lapee/rootfs-overlay/initPID 1. Reads ESP inputs once, enforces memory-encryption gate, starts splash, configures network, detaches boot USB, deauthorizes USB, starts HyperBEAM.
buildroot-external/board/lapee/rootfs-overlay/etc/lapee/lapee.jsonEnforced HyperBEAM config. Registers LapEE devices and the startup boot-attestation hook.
buildroot-external/board/lapee/rootfs-overlay/usr/libexec/lapee-dhcp-hookDHCP hook. First interface with a gateway becomes the primary node URL source.
buildroot-external/board/lapee/files/lapee_splash.erlAnimated console splash and status monitor. Shows the live URL and QR when HyperBEAM is ready.
buildroot-external/board/lapee/files/lapee-sb-provisioner.cEFI variable provisioner used by the Secure Boot enrollment image.
buildroot-external/board/lapee/linux-*.configKernel fragments for production, debug, and Secure Boot provisioner builds.
buildroot-external/package/hyperbeam/hyperbeam.mkBuildroot package for pinned HyperBEAM plus the LapEE overlay, Erlang release, C/Rust NIF cross-compile, and runtime slimming.
buildroot-external/package/hyperbeam/Config.inBuildroot package declaration.
buildroot-external/external.desc, external.mk, Config.inBuildroot external-tree wiring.
buildroot-external/post-build.shStages splash beam, firmware, regulatory data, and rootfs sanity checks.

Scripts

PathRole
scripts/build-buildroot.shDownloads pinned Buildroot and source packages, stages overlays, runs Buildroot inside Docker, and exports kernel/initramfs artifacts.
scripts/build-usb-image.shBuilds the GPT/FAT32 USB image with UKI, marker, README, optional WiFi/config files, and optional Secure Boot enrollment bundle.
scripts/sb-setup.shGenerates Secure Boot PK/KEK/db material, signs UKIs, and prepares enrollment files.
scripts/gather-wifi-creds.shInteractively writes strict two-line wifi.conf without printing the PSK.
scripts/interpret-local-capture.shFetches or reads evidence, runs ~tpm-interpret@1.0, and writes claim, interpretation, text output, input preview, and dashboard.
scripts/fetch-ek-root-cas.shRefreshes the measured TPM EK root/intermediate CA corpus from Keylime plus explicit AMD, Infineon, Nuvoton, and Intel anchors.
scripts/stage-hyperbeam-overlay.shCopies LapEE devices/native code/data into a generated HyperBEAM checkout and inserts the lapee rebar profile.
scripts/boot-usb-image.shBoots a runtime image under QEMU+OVMF+swtpm and fetches live evidence through forwarded port 18734.
scripts/qemu-green-zone-cluster.shMulti-node green-zone acceptance harness.
scripts/qemu-green-zone-requests.pyGenerates request bodies for the green-zone QEMU harness.
scripts/qemu-operator-config-green-zone.shProves config.json reaches ~meta@1.0/info, boot attestation, verifier replay, and green-zone template matching.
scripts/render-splash-previews.shRenders local text/ANSI previews for splash layouts.
scripts/capture-splash-qemu.shCaptures framebuffer screenshots from QEMU splash variants.

HyperBEAM Overlay

PathRole
hyperbeam-overlay/rebar.lapee.fragmentRebar profile fragment staged into HyperBEAM.
hyperbeam-overlay/src/dev_tpm2.erlMain TPM device: PCR read/extend, EK/AK, quote, boot attestation, credential activation, peer verification, and verifier entrypoints.
hyperbeam-overlay/src/dev_tpm_interpret.erlEvidence interpreter: checks, claims, summaries, policy verdicts, peer status, event decoding.
hyperbeam-overlay/src/dev_tpm_tcg.erlTCG event-log parser and replay support.
hyperbeam-overlay/src/dev_system.erlRedacted system evidence device.
hyperbeam-overlay/src/dev_green_zone.erlEvidence-gated shared identity admission device.
hyperbeam-overlay/src/hb_db_tpm.erlTPM interpretation data access.
hyperbeam-overlay/src/lapee_aia.erlHTTPS-only AIA intermediate fetcher for EK chains.
hyperbeam-overlay/src/lapee_peer_http.erlPeer HTTP helper that preserves full HyperBEAM response messages.
hyperbeam-overlay/src/lapee_tpm_nif.erlErlang wrapper for native libtss2 ESYS TPM operations.
hyperbeam-overlay/native/lapee_tpm_nif/*C NIF implementation and helpers for TPM startup, PCR operations, EK/AK creation, quote, NV reads, MakeCredential, and ActivateCredential.
hyperbeam-overlay/priv/tpm-interpret/*Measured interpretation corpus: TPM vendor data, root CAs, PCR profiles, UKI measurements, firmware metadata, IMA policies, and fixtures.

Secondary Verifier

PathRole
secondary-external-verifier/README.mdMinimal external verifier usage and check list.
secondary-external-verifier/verifier_hb.pyPython verifier for captured boot-attestation envelopes. Checks EK chain, quote, AK policy, runtime PCR 15 replay, and node-message commitment.

Paper

PathRole
paper/*LaTeX, bibliography, figures, and generated PDF for the LapEE paper. It is background material, not runtime code.