diff options
| author | Luke Hoersten <[email protected]> | 2026-07-29 10:33:02 -0500 |
|---|---|---|
| committer | Luke Hoersten <[email protected]> | 2026-07-29 10:33:02 -0500 |
| commit | 78772329dc625b76bc1cbca61e0ed4912e93e0c8 (patch) | |
| tree | 70e7cd62c241b2227402dc376f19350dccc5ae6c /README.md | |
| parent | 5c81b970819e8d38413a5dc02d56b7f182715e8a (diff) | |
- timezone optional -> host system zone (jiff, macOS + Linux)
- storagePath optional -> platform data dir (/var/lib on Linux, ~/Library/Application Support on macOS)
- config file optional at the default path; explicit --config must still exist
- default logLevel changed from info to warn
- new output field (text|json) sets the default rendering so -j isn't needed per call
Diffstat (limited to 'README.md')
| -rw-r--r-- | README.md | 15 |
1 files changed, 11 insertions, 4 deletions
@@ -28,7 +28,7 @@ There is no daemon: each invocation builds the Matter stack, connects, syncs, an | Option | Description | | --- | --- | -| `-c, --config <path>` | Config file. Default `/etc/mattertimectl/config.json`. | +| `-c, --config <path>` | Config file. Defaults to `/etc/mattertimectl/config.json` if present; optional there, but a path given explicitly must exist. | | `-n, --node <id>` | Target one device. `sync` and `decommission` default to all commissioned devices. | | `-t, --time <hh:mm>` | `sync` only: set this wall-clock time today (e.g. `16:35`, `4:35pm`) instead of now. The operator becomes the time source and the NTP gate is skipped. | | `-j, --json` | Machine-readable JSON on stdout (64-bit values as decimal strings). Logs stay on stderr, so `--json` is always clean. | @@ -82,12 +82,19 @@ config error. } ``` +Every field is optional. `storagePath` defaults to `/var/lib/mattertimectl` on Linux and +`~/Library/Application Support/mattertimectl` on macOS; `timezone` defaults to the host's system +zone; `logLevel` defaults to `warn`. So a minimal config file is just `{}` — and the file itself is +optional at the default location: with no `/etc/mattertimectl/config.json`, mattertimectl runs +entirely on defaults. A path passed with `--config` must exist. + | Field | Default | Meaning | | ------------- | ------------------ | --------------------------------------------------------------- | -| `storagePath` | (required) | Directory for persistent Matter fabric state. Contains secrets. | -| `timezone` | `America/Chicago` | IANA time-zone name. Never a fixed UTC offset; DST is derived. | -| `logLevel` | `info` | `debug`, `info`, `warn`, or `error`. | +| `storagePath` | platform data dir | Directory for persistent Matter fabric state (mode 0700). Contains secrets. | +| `timezone` | system zone | IANA time-zone name. Never a fixed UTC offset; DST is derived. | +| `logLevel` | `warn` | `debug`, `info`, `warn`, or `error`. | | `fabricLabel` | `Matter Time Controller` | Label other ecosystems show for this controller (max 32 chars). | +| `output` | `text` | Default output format, `text` or `json`. `json` makes every command emit JSON without a per-call `-j` (which still forces JSON). | Unknown fields are rejected loudly. Matter requires fabric labels to be unique per device and Apple Home labels its own entry with the home's name, so use a variant like "Lakeside Time Sync" rather |
