Skip to main content

max / makenotwork

2.2 KB · 48 lines History Blame Raw
1 # How Bento releases magicmirror. Lives here rather than in the daemon's config
2 # so it is versioned with the code it describes.
3 #
4 # A service, not an app or a library: magicmirror is run rather than distributed.
5 # There is no bundle for a user to download and no crate to publish.
6 #
7 # WHY THIS FILE EXISTS. astra's copy was a binary somebody had placed at
8 # ~/.local/bin/magicmirror by hand, with no release history, no rollback and no
9 # way to ask it what it was -- the only handle was the file's mtime. It was the
10 # least stale of the three services on that host in that state, which is not the
11 # same as being watched. Infra `e6acf532`.
12 kind = "service"
13
14 # aarch64 only. This runs on exactly one machine: it is drawn onto astra's tty1
15 # as an always-on wall panel, and there is no second instance anywhere.
16 targets = ["linux/aarch64"]
17
18 version_path = "Cargo.toml"
19
20 # MNW is one .git over several separately-versioned products, so the default
21 # `v{version}` names no product in particular here.
22 tag_format = "magicmirror-v{version}"
23
24 # One target, so inert either way. Stated rather than omitted so the answer does
25 # not have to be reasoned out if a second is ever added.
26 require_all_targets = true
27
28 # CEREMONY, and this is the cheapest rung on purpose. A bad deploy here costs a
29 # monitoring panel on a console going blank. Nobody's money, nobody's morning,
30 # and no data. So it installs itself through Bento the way wam does rather than
31 # paying for Sando's tiers, and the rollback is the installer's `<dst>.prev`.
32 # See wiki `deploy-ceremony-tiers`.
33 #
34 # install_path is /usr/local/bin/magicmirror, which is a MOVE: the running
35 # binary was at ~/.local/bin/magicmirror. install-service.sh refuses any dst
36 # outside /usr/local/bin, and that guard is the only thing bounding a NOPASSWD
37 # sudo grant, so the binary moves rather than the guard widening -- the same
38 # call wam made on 2026-08-15. The unit's ExecStart moves with it.
39 #
40 # No `health_url`: this is a TUI drawn on a console, not a server, so there is
41 # no port to probe and no status code to read. The recipe asserts the unit is
42 # active, which is the whole of what "up" means for this one.
43 [[deploy]]
44 target = "linux/aarch64"
45 host = "astra"
46 install_path = "/usr/local/bin/magicmirror"
47 service = "magicmirror-panel.service"
48