diff options
| author | Christophe Besson <cbesson@gmail.com> | 2026-08-22 18:26:22 +0200 |
|---|---|---|
| committer | Christophe Besson <cbesson@gmail.com> | 2026-08-22 18:26:22 +0200 |
| commit | 8dc11dc05a35a5d64ba4d2c892ccc01c7bfae3da (patch) | |
| tree | e172bb4d596bde53c48ce2ca3ef2d59c98968147 /packages/meshbay-hub/src/meshbay_hub/static/locales/en.js | |
| parent | b4baa4770d517ea7d1d25bb0ac50fc7c989531d6 (diff) | |
| download | meshbay-8dc11dc05a35a5d64ba4d2c892ccc01c7bfae3da.tar.gz | |
feat(node): systemd service panel on the Node page, and a clean CLI restart
Add a status panel at the top of the Node page — always visible, even
before an MNP connection exists — showing the meshbay-node systemd
unit's own state (via `systemctl --user show`, main process only) with
Start/Stop/Restart controls. This is the piece the rest of the page
cannot provide: it has to work while the daemon is stopped or crash-
looping, which the MNP-based sections require the daemon to already
answer.
While touching node lifecycle: `reload` and `restart-daemon` in the
CLI shelled out to pgrep + SIGTERM/SIGHUP and respawned the process by
hand, logging to a hardcoded /tmp path. That pattern already SIGHUPed
a developer's own running node by accident once (see the old
test_cli_dispatch.py comment). Both now delegate to
`systemctl --user reload|restart meshbay-node`, which the unit already
supports correctly (ExecReload=, Restart=on-failure).
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016SF6RKNBKg9qejmoMJ9ybA
Diffstat (limited to 'packages/meshbay-hub/src/meshbay_hub/static/locales/en.js')
| -rw-r--r-- | packages/meshbay-hub/src/meshbay_hub/static/locales/en.js | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/packages/meshbay-hub/src/meshbay_hub/static/locales/en.js b/packages/meshbay-hub/src/meshbay_hub/static/locales/en.js index 3ddd7f1..dfd400b 100644 --- a/packages/meshbay-hub/src/meshbay_hub/static/locales/en.js +++ b/packages/meshbay-hub/src/meshbay_hub/static/locales/en.js @@ -501,6 +501,20 @@ export default { // Node management (D5) 'sidebar.node': 'Node', 'node.title': 'Node', + 'node.service_checking': 'Checking node service…', + 'node.service_not_installed': 'Not installed as a service', + 'node.service_state_active': 'Running', + 'node.service_state_inactive': 'Stopped', + 'node.service_state_failed': 'Failed', + 'node.service_state_activating': 'Starting…', + 'node.service_state_deactivating': 'Stopping…', + 'node.service_state_unknown': 'Unknown', + 'node.service_start': 'Start', + 'node.service_starting': 'Starting…', + 'node.service_stop': 'Stop', + 'node.service_stopping': 'Stopping…', + 'node.service_restart': 'Restart', + 'node.service_restarting': 'Restarting…', 'node.offline': 'Node is offline', 'node.no_groups': 'No groups configured on this node.', 'node.retry': 'Retry', |