mirror of
https://github.com/luxfi/pulsar.git
synced 2026-09-24 00:25:52 +00:00
Initial commit. Holds the technical specification (LaTeX), the design docs, the build/test/bench scripts, the package layout, and the empty ref/go/pkg/pulsarm skeleton. The spec at spec/pulsar-m.tex (11,300 words of LaTeX) is the canonical description of the protocol. docs/nist-mptc-category.md states the Class N1 + N4 claim. CONTRIBUTING.md and SECURITY.md pin the IP and disclosure posture. Subsequent commits land the reference implementation in stages. Signed-off-by: Lux Industries <[email protected]>
28 lines
842 B
Bash
Executable File
28 lines
842 B
Bash
Executable File
#!/usr/bin/env bash
|
|
# Pulsar-M reproducible build.
|
|
#
|
|
# Builds the Go reference implementation and the LaTeX spec PDF. Exits
|
|
# non-zero on any failure. Designed to be the CI gate.
|
|
|
|
set -euo pipefail
|
|
|
|
REPO_ROOT="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)"
|
|
cd "$REPO_ROOT"
|
|
|
|
# Build the reference impl in module-only mode. A surrounding workspace
|
|
# (e.g. ~/work/lux/go.work) does not own this repo's deps and must be
|
|
# bypassed deliberately so reviewers get the same view CI gets.
|
|
export GOWORK=off
|
|
|
|
echo "==> Go reference build"
|
|
go build ./ref/go/...
|
|
|
|
echo "==> Spec PDF build (skipped if latexmk not installed)"
|
|
if command -v latexmk >/dev/null 2>&1; then
|
|
( cd spec && latexmk -pdf -interaction=nonstopmode pulsar-m.tex )
|
|
else
|
|
echo " [warn] latexmk not found — skipping. Install TeX Live for full build."
|
|
fi
|
|
|
|
echo "==> done"
|