Files
ProxMenux/AppImage/messages
MacRimi c9479c6ac1 set apart host backups of other nodes and of former jobs
- Each host backup carries the node it belongs to, read from its source host or its name (`hostcfg-<node>`, a job of this node or its PBS backup ID); both backup lists also return the node name.
- The backup list offers This node / All nodes when some backup belongs to another node, with This node as the default, a count that follows the choice and a note with the backups not shown.
- Backups whose node cannot be read from their name are listed under All nodes.
- A local backup made on this node by a job that no longer exists is marked as Former job, read from its metadata file; backups without it, manual ones and those of other nodes are not marked.
- New texts in English and Spanish, modelled in the translation steady-state test.
- Tests for the node and the former job read from each backup, and for the cluster node membership notifications.
2026-10-14 18:04:42 +02:00
..

Monitor dashboard translations

The ProxMenux Monitor dashboard uses a small client-side i18n layer.

  • English (en) is the source language and the runtime fallback.
  • Eight locales are shipped and fully populated end-to-end: en, de, es, fr, it, pt, sk, sv. Non-English catalogs started from an automated bootstrap and are being polished as native speakers pass through them.

To improve a translation, edit the values in your locale's common.json — keep placeholders such as {uptime}, {vmid} or {count} unchanged, and don't translate brand or product names (ProxMenux Monitor, Proxmox Backup Server, Secure Gateway, Tailscale, etc.). Missing keys fall back to English at runtime, so a partial refresh is always safe to merge.

Backup message composition regressions

From the repository root, run:

node tests/test_backup_archives_empty.cjs
node tests/test_backup_destination_messages.cjs

Prerequisites: Node.js and the typescript development dependency from AppImage/package.json must be installed/resolvable (normally in AppImage/node_modules). These tests compile actual JSX message branches and pure i18n lookup functions without importing the component or calling a backend. They cover whole English messages, missing-key locale fallback, loading/error branches, nonempty lists, the removal notice at zero/one/multiple archives, local-attach help, and unchanged shared labels. They do not replace browser or real-host acceptance. Keep literal paths in the local-attach help unchanged.

To add a new locale, see §11 → Adding a new locale in the Contributing Guide.