@bysir/herdr-web 0.5.4 → 0.6.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/README.md +15 -3
  2. package/package.json +5 -5
package/README.md CHANGED
@@ -416,13 +416,25 @@ herdr-web service restart # needed after replacing the binary
416
416
  herdr-web service uninstall # stop and remove (data and logs untouched)
417
417
  ```
418
418
 
419
- **Configuration is copied out of the current shell at install time.** So the order is "get the environment right, then install"; changing configuration means installing again (it is idempotent — overwrite and restart). To read it from a file:
419
+ **Configuration is copied out of the current shell at install time**, so the order is "get the environment right, then install". **Changing it later takes the same route** — there is no "edit one setting" subcommand; changing configuration means installing again from a different environment (idempotent — it overwrites and restarts):
420
420
 
421
421
  ```bash
422
- herdr-web service install --env-file .env
422
+ HERDR_WEB_PUBLIC_PORT=9000 herdr-web service install # change one, the rest comes from this shell
423
+ herdr-web service install --env-file .env # or let one file be the single source
423
424
  ```
424
425
 
425
- What gets copied is every `HERDR_WEB_*`, plus `PATH` / `SHELL` / `HOME` / `USER` / `LOGNAME` / `LANG` / `LC_ALL` / `TERM` / `HERDR_SOCKET_PATH`. `install` prints the whole list — from then on, "which configuration is this machine's service actually using" can only be answered by the plist / unit, so it is cheapest to read it at install time.
426
+ What gets copied is every `HERDR_WEB_*`, plus `PATH` / `SHELL` / `HOME` / `USER` / `LOGNAME` / `LANG` / `LC_ALL` / `TERM` / `HERDR_SOCKET_PATH`. `install` prints the whole list — from then on, "which configuration is this machine's service actually using" can only be answered by the plist / unit, so it is cheapest to read it at install time. To check later, read that file directly (`service status` only answers installed / running, never configuration):
427
+
428
+ ```bash
429
+ plutil -p ~/Library/LaunchAgents/io.github.zbysir.herdr-web.plist # macOS
430
+ systemctl --user cat herdr-web.service # Linux
431
+ ```
432
+
433
+ It is **plaintext**, credentials included — do not paste that output into a pane with an agent in it.
434
+
435
+ **`install` redoes the whole snapshot; it does not edit one key.** What lands in the file is whatever that shell has at that moment, so **anything installed last time but absent from this shell disappears silently**: open a fresh terminal, run `install` with a single inline prefix, and the port does change — along with the DNS credentials (next paragraph) going missing, which only blows up at the next certificate renewal. So keep configuration either in your shell rc (every new shell carries it) or in an `--env-file` that is the single source; the list `install` prints is the only chance to notice **on the spot** that something dropped out.
436
+
437
+ **`service restart` does not re-read configuration.** It only kills and restarts the process (that is what you want after replacing the binary); the snapshot inside the plist / unit is untouched. Changing configuration means running `install` again.
426
438
 
427
439
  **DNS provider credentials carry the `HERDR_WEB_` prefix too** (`HERDR_WEB_CLOUDFLARE_DNS_API_TOKEN`, `HERDR_WEB_ALICLOUD_ACCESS_KEY` and friends), so the rule above already copies them — exporting them in your shell is enough, no `--env-file` required. The prefix is not cosmetic: a bare `CLOUDFLARE_DNS_API_TOKEN` matches neither the prefix nor the allowlist, so it is not copied, and that failure only surfaces at the first issuance (or three months later, at the first renewal). lego still reads the bare names, but those can only reach the service through `--env-file`; when both are set, the prefixed one wins. Per-provider variable names are in [DNS.md](DNS.md).
428
440
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bysir/herdr-web",
3
- "version": "0.5.4",
3
+ "version": "0.6.1",
4
4
  "description": "浏览器里的 herdr 终端 + 语音投稿。一个 Go 二进制,前端嵌在里面。",
5
5
  "license": "MIT",
6
6
  "homepage": "https://github.com/zbysir/herdr-web#readme",
@@ -29,9 +29,9 @@
29
29
  "node": ">=18"
30
30
  },
31
31
  "optionalDependencies": {
32
- "@bysir/herdr-web-darwin-arm64": "0.5.4",
33
- "@bysir/herdr-web-darwin-x64": "0.5.4",
34
- "@bysir/herdr-web-linux-arm64": "0.5.4",
35
- "@bysir/herdr-web-linux-x64": "0.5.4"
32
+ "@bysir/herdr-web-darwin-arm64": "0.6.1",
33
+ "@bysir/herdr-web-darwin-x64": "0.6.1",
34
+ "@bysir/herdr-web-linux-arm64": "0.6.1",
35
+ "@bysir/herdr-web-linux-x64": "0.6.1"
36
36
  }
37
37
  }