Feature 57 (config and provisioning): modules declare config and provisions, their files rendered from templates; synced with main (issues of feature 57, 874)

This commit is contained in:
2026-10-16 07:37:43 +00:00
parent 1a2c917abf
commit 9652b2d5ce
771 changed files with 52063 additions and 1774 deletions
+29 -1
View File
@@ -11,6 +11,7 @@
"open",
"history",
"notify",
"tell",
"asks"
],
"accepts": [
@@ -62,6 +63,7 @@
"open",
"history",
"notify",
"tell",
"asks"
]
}
@@ -110,6 +112,26 @@
"messenger_identities",
"messenger_unlink"
],
"config": {
"time-zone": {
"type": "string",
"description": "The time zone every time a message says is said in, an IANA name such as Europe/Brussels; empty is this machine's own zone.",
"trusted": true,
"default": ""
},
"desktop-machines": {
"type": "list",
"description": "The machines whose desktop showed the operator's messages, by node name. Nothing in this module reads it since the desk channel took the desktop over; it is taken so the file stays as a layer that still sets it makes it, until that layer drops it.",
"trusted": true,
"default": []
},
"only-what-needs-me": {
"type": "list",
"description": "The kinds of channel set to say only what needs the operator: a walk that delivered with nothing held and nothing open is not told there (ADR 0308 §4); empty is none.",
"trusted": true,
"default": []
}
},
"resources": [
{
"id": "account",
@@ -130,8 +152,9 @@
"type": "file",
"path": "${dir:state}/settings.json",
"mode": "0600",
"takes-config": ["time-zone", "desktop-machines", "only-what-needs-me"],
"merge": "json",
"content": "{\n \"time-zone\": \"\",\n \"only-what-needs-me\": []\n}\n",
"template": "files/settings.json",
"owner": "messenger"
}
],
@@ -151,6 +174,11 @@
"MESH_MESSENGER_SETTINGS": "${dir:state}/settings.json",
"MESH_MESSENGER_STATE": "${dir:state}"
}
},
{
"name": "files",
"kind": "archive",
"from": "files"
}
]
}