Skip to main content

max / makenotwork

2.0 KB · 58 lines History Blame Raw
1 # Bento build topology: the native build hosts and the apps they ship.
2 # Install at ~/.config/bento/bento.toml (path set by `topology_path` in
3 # bento-daemon.toml). Paths under `repo` are tilde-expanded by the engine; the
4 # daemon-local paths in bento-daemon.toml are NOT — use absolute paths there.
5 #
6 # House rule: no cross-compilation. A target builds only on a host whose row
7 # lists it (topology::host_for); validate() rejects an app target no host
8 # declares, and a host with targets that doesn't grant `build`.
9
10 [[host]]
11 name = "fw13"
12 ssh = "fw13" # tailnet alias; the daemon's own host (local)
13 targets = ["linux/x86_64"]
14
15 [[host]]
16 name = "astra"
17 ssh = "astra"
18 targets = ["linux/aarch64"]
19
20 [[host]]
21 name = "mbp"
22 ssh = "mbp"
23 targets = ["macos/aarch64", "ios/universal"]
24 transport = "agent" # in-session ops-agent — required to codesign
25 agent_url = "http://mbp:8765" # tailnet addr of the Mac's ops-agent
26 actuate = ["build", "sign", "notarize", "staple"]
27 observe = ["build-log", "gatekeeper"]
28
29 [[host]]
30 name = "windows-x86"
31 ssh = "me@windows-x86"
32 targets = ["windows/x86_64"]
33 # transport defaults to "ssh"; actuate defaults to ["build", "package"]
34
35 [app.goingson]
36 repo = "~/Code/Apps/goingson"
37 branch = "main"
38 recipe_dir = "dist/recipes"
39 targets = ["macos/aarch64", "ios/universal", "linux/x86_64", "linux/aarch64", "windows/x86_64"]
40
41 [app.balanced_breakfast]
42 repo = "~/Code/Apps/balanced_breakfast"
43 branch = "main"
44 recipe_dir = "dist/recipes"
45 # macOS/iOS omitted until BB gains Developer ID signing + notarization infra
46 # (it has no release-macos.sh / iOS project today); only linux + windows recipes
47 # exist. BB is a later wave regardless.
48 targets = ["linux/x86_64", "linux/aarch64", "windows/x86_64"]
49
50 [app.audiofiles]
51 repo = "~/Code/Apps/audiofiles"
52 branch = "main"
53 recipe_dir = "dist/recipes"
54 # egui desktop app (no Tauri, no iOS). No tauri.conf.json, so point the version
55 # at the binary crate's Cargo.toml.
56 version_path = "crates/audiofiles-app/Cargo.toml"
57 targets = ["macos/aarch64", "linux/x86_64", "linux/aarch64", "windows/x86_64"]
58