2026-05-12 04:10:43 +02:00
|
|
|
storage=./keys/secmod.fat
|
2026-04-01 03:30:27 +02:00
|
|
|
service=tap0
|
|
|
|
|
|
2026-04-14 20:16:45 +02:00
|
|
|
setup-switch:
|
|
|
|
|
opam switch create mte ocaml.5.4.1
|
|
|
|
|
opam update
|
|
|
|
|
opam install --yes . --deps-only
|
2026-03-11 14:17:52 +01:00
|
|
|
|
2026-04-14 20:16:45 +02:00
|
|
|
vendors: source.sh
|
2026-03-11 14:17:52 +01:00
|
|
|
@mkdir -p vendors
|
2026-04-14 20:16:45 +02:00
|
|
|
@./source.sh
|
2026-03-11 14:17:52 +01:00
|
|
|
|
|
|
|
|
.PHONY: clean
|
|
|
|
|
clean:
|
|
|
|
|
rm -rf _build/
|
|
|
|
|
rm -rf vendors/
|
|
|
|
|
|
2026-05-12 04:10:43 +02:00
|
|
|
keys:
|
|
|
|
|
@mkdir -p keys
|
|
|
|
|
@dune exec tools/offline.exe -- generate-eddsa-key --output ./keys/master
|
|
|
|
|
@read -sp "Enter postgres password: " POSTGRES_PASSWORD; \
|
|
|
|
|
echo; \
|
|
|
|
|
printf $${POSTGRES_PASSWORD} > ./keys/postgres_password
|
2026-03-21 16:31:11 +01:00
|
|
|
|
2026-04-12 23:07:44 +02:00
|
|
|
secmod.fat:
|
2026-04-01 03:30:27 +02:00
|
|
|
mfat make --sectors=2048 $(storage)
|
|
|
|
|
|
2026-05-12 04:10:43 +02:00
|
|
|
assets:
|
|
|
|
|
@cp -r default/assets ./
|
|
|
|
|
|
|
|
|
|
config:
|
|
|
|
|
@sed "s/%%MASTER_PUBLIC_KEY%%/$$(cat ./keys/master.pub)/" -i assets/mte.conf
|
|
|
|
|
|
2026-04-14 20:16:45 +02:00
|
|
|
src/manifest.json:
|
2026-03-21 16:31:11 +01:00
|
|
|
@dune exec src/mte.exe > src/manifest.json
|
2026-03-11 14:17:52 +01:00
|
|
|
|
2026-04-14 20:16:45 +02:00
|
|
|
build: vendors
|
2026-03-21 16:31:11 +01:00
|
|
|
@dune build @all
|
|
|
|
|
@dune build --workspace dune-workspace.solo5 src/mte.exe
|
2026-03-11 14:17:52 +01:00
|
|
|
|
|
|
|
|
run: build
|
2026-05-12 04:10:43 +02:00
|
|
|
@solo5-hvt --block:storage=$(storage) --net:service=$(service) -- ./_build/solo5/src/mte.exe \
|
|
|
|
|
--postgres-password=$$(cat ./keys/postgres_password)
|