mirror of
https://github.com/MacRimi/ProxMenux.git
synced 2026-09-14 18:56:52 +00:00
New version 1.2.5
Stable release consolidating the v1.2.4 beta cycle (1.2.4.1-beta and 1.2.4.2-beta) into 1.2.5. Highlights: - Apps dashboard: single launcher for every LXC-registered app and user-defined Custom Web Link, with category badges, search, sort and one-click deep-links back to the guest modal. - LXC Apps & Updates end-to-end: App tab inside every guest modal, upstream version tracking, and Easy Updates that cover OS packages, registered apps, Docker Engine and per-image updates on the same 24-hour cycle. - Application detection catalog with 380+ tracked workloads generated live from community-scripts across seven detector methods. - Monitor now speaks 8 languages: English, Spanish, German, French, Italian, Portuguese, Slovak and Swedish (i18n scaffolding by @vaso73). - NVIDIA multi-GPU passthrough by exact BDF so one card can be assigned to a VM while another stays operational on the host or LXC. - Navigation reorder, Memory & Swap real memory-pressure signal, native Pushover channel, Actions API, plus wide-reaching improvements across health, hardware, network, backup and post-install. Full release notes: see CHANGELOG.md and https://github.com/MacRimi/ProxMenux/releases
This commit is contained in:
@@ -31,6 +31,7 @@
|
||||
},
|
||||
"navigation": {
|
||||
"overview": "Panoramica",
|
||||
"apps": "Apps",
|
||||
"storage": "Magazzinaggio",
|
||||
"network": "Rete",
|
||||
"virtualMachines": "VM e LXC",
|
||||
@@ -1211,6 +1212,7 @@
|
||||
"familyLabel": "Famiglia:",
|
||||
"applyOsUpdate": "Applica l'aggiornamento del sistema operativo",
|
||||
"osUpToDate": "Sistema operativo aggiornato",
|
||||
"osStatusUnavailable": "Impossibile determinare lo stato degli aggiornamenti del sistema operativo.",
|
||||
"installedByHelperPrefix": "Installato da",
|
||||
"helperScriptsName": "Proxmox VE Helper-Scripts",
|
||||
"helperUpdatesRun": "Installato da Proxmox Helper-Scripts.",
|
||||
@@ -1369,7 +1371,7 @@
|
||||
"methodApk": "pacchetto apk (Alpine)",
|
||||
"methodBinary": "Binario (percorso assoluto o nome semplice)",
|
||||
"methodFile": "file + espressione regolare",
|
||||
"methodDockerLabel": "ispezione finestra mobile (etichetta OCI)",
|
||||
"methodDockerLabel": "docker inspect (etichetta OCI)",
|
||||
"methodDockerExec": "docker exec (binario nel contenitore)",
|
||||
"methodPython": "distribuzione Python (importlib.metadata)",
|
||||
"methodCommand": "comando (avanzato — argv)",
|
||||
@@ -1435,6 +1437,11 @@
|
||||
"portHttps": "https",
|
||||
"portLogoLabel": "URL del logo per questo collegamento (facoltativo)",
|
||||
"portLogoPlaceholder": "ad esempio, https://example.com/logo.webp",
|
||||
"portCategoryPlaceholder": "Category for the Apps dashboard (optional)",
|
||||
"portCategoryNone": "No category",
|
||||
"portCategoryAddNew": "+ Add new category…",
|
||||
"portCategoryCustomPlaceholder": "Type a category and press Enter (Esc to cancel)",
|
||||
"portCustomUrlPlaceholder": "Custom URL (e.g. https://vault.example.com) — overrides IP:port",
|
||||
"removePortTooltip": "Rimuovere la porta",
|
||||
"detectMethodDpkg": "dpkg ·",
|
||||
"detectMethodApk": "apk ·",
|
||||
@@ -1484,7 +1491,7 @@
|
||||
"managedApp": "Applicazione gestita",
|
||||
"managedStatus": "gestito",
|
||||
"checkedAt": "Controllato {date}",
|
||||
"latestUpstream": "Ultima versione disponibile",
|
||||
"latestUpstream": "Ultima",
|
||||
"loadingApplications": "Caricamento applicazioni…",
|
||||
"nameSearchPlaceholder": "Digita per cercare oltre 700 app oppure digita la tua",
|
||||
"matchCount": "{count} corrisponde",
|
||||
@@ -2045,7 +2052,18 @@
|
||||
"title": "Capacità del pool ZFS",
|
||||
"description": "Pool ZFS a livello di host, indipendenti dalla registrazione PVE, quindi vengono monitorati anche rpool e pool di backup dedicati."
|
||||
}
|
||||
}
|
||||
},
|
||||
"swapPressure": "Pressione memoria",
|
||||
"swapPressureHint": "Segnala un evento critico solo quando ENTRAMBE le condizioni sono vere contemporaneamente — utilizzo del file di swap sopra la prima soglia E RAM disponibile sotto la seconda. Allertare solo sullo swap era rumoroso sugli host Proxmox dove Linux scambia pagine inattive mentre la RAM resta abbondantemente disponibile.",
|
||||
"swapHighLabel": "Utilizzo del file di swap",
|
||||
"availableMinLabel": "RAM disponibile minima"
|
||||
},
|
||||
"navOrder": {
|
||||
"title": "Ordine di navigazione",
|
||||
"description": "Personalizza l'ordine delle schede principali. Le schede raggruppate (Node, Admin) si spostano come un'unica unità; i loro elementi interni mantengono l'ordine predefinito.",
|
||||
"reset": "Ripristina predefinito",
|
||||
"hint": "Trascina per riordinare · Su touch, pressione prolungata prima",
|
||||
"customActive": "Ordine di navigazione personalizzato attivo."
|
||||
}
|
||||
},
|
||||
"login": {
|
||||
@@ -2069,7 +2087,7 @@
|
||||
"backupCodeHint": "Puoi anche utilizzare un codice di backup (formato: XXXX-XXXX)",
|
||||
"backToLogin": "Torna al login",
|
||||
"verifyCode": "Verifica codice",
|
||||
"version": "ProxMenux Monitor v1.2.4.1-beta"
|
||||
"version": "ProxMenux Monitor v1.2.5"
|
||||
},
|
||||
"account": {
|
||||
"signedIn": "Effettuato l'accesso",
|
||||
@@ -3120,8 +3138,12 @@
|
||||
"currentFeatures": {
|
||||
"appDetection": "Smarter app detection in the App tab: Docker is correctly promoted as the parent workload during cold start (Portainer/SearXNG no longer briefly show up as native apps), unregistered suggestions live in the startup cache, and 'Find applications' runs a fresh catalog-backed scan on demand.",
|
||||
"dockerUpdates": "The Updates tab now covers Docker end-to-end: Docker Engine and per-image update tracking follow the same 24-hour rolling cycle as OS packages, with a 'Check now' action for on-demand digest comparison — no more waiting for the daily collector.",
|
||||
"appCatalog": "New application detection catalog with over 380 tracked workloads, built from the live community-scripts source with independent script evidence. Primary and fallback detectors (file, binary, dpkg, apk, Python, Docker exec, Docker label) cover both new and historical LXC layouts.",
|
||||
"pushover": "Pushover joins Telegram, Gotify, Discord, Email and Apprise as a native notification channel — user/API key, device and sound selectors, priority 0 for regular messages, optional priority 1 for CRITICAL events. Suggested by @benginx (#308)."
|
||||
"appCatalog": "New application detection catalog with over 380 tracked workloads, generated live from community-scripts across seven detector methods (file, binary, dpkg, apk, Python, Docker exec, Docker label). Primary and fallback detectors cover both new and historical LXC layouts.",
|
||||
"pushover": "Pushover joins Telegram, Gotify, Discord, Email and Apprise as a native notification channel — user/API key, device and sound selectors, priority 0 for regular messages, optional priority 1 for CRITICAL events. Suggested by @benginx (#308).",
|
||||
"appsDashboard": "New top-level Apps dashboard — a single launcher for every Web Link across the node. LXC-registered apps and user-defined Custom Web Links share the same grid with category badges, search, and one-click deep-links back to the guest modal.",
|
||||
"lxcAppsUpdates": "App tab inside every LXC modal registers installed apps, captures weblinks and tracks upstream versions. Reworked Updates tab applies OS packages and app updates from a single button; Docker Engine and per-image tracking follow the same 24-hour cycle, with a 'Check now' action on demand.",
|
||||
"multilingual": "The Monitor now speaks 8 languages: English, Spanish, German, French, Italian, Portuguese, Swedish and Slovak. Huge thanks to @vaso73 for building the i18n scaffolding that made this possible.",
|
||||
"nvidiaMultiGpu": "NVIDIA driver lifecycle moves to per-BDF ownership so a multi-GPU host can pass one card to a VM and keep the other operational on the host or in LXCs, plus a kernel + branch + GPU-aware version picker (#298)."
|
||||
}
|
||||
},
|
||||
"network": {
|
||||
@@ -3525,7 +3547,7 @@
|
||||
"wifi": "Wifi",
|
||||
"storage": "Magazzinaggio",
|
||||
"storageController": "Controllore di archiviazione",
|
||||
"hid": "NASCOSTO",
|
||||
"hid": "HID",
|
||||
"vendorSpecific": "Specifico del fornitore",
|
||||
"communications": "Comunicazioni",
|
||||
"integrated": "Integrato",
|
||||
@@ -4733,5 +4755,43 @@
|
||||
"yourInput": "Il tuo contributo:",
|
||||
"submit": "Invia",
|
||||
"ok": "OK"
|
||||
},
|
||||
"apps": {
|
||||
"searchPlaceholder": "Search app or CT…",
|
||||
"searchAriaLabel": "Search",
|
||||
"filterAll": "All categories",
|
||||
"filterAriaLabel": "Filter by category",
|
||||
"sortAriaLabel": "Sort by",
|
||||
"sortName": "Name",
|
||||
"sortId": "ID",
|
||||
"sortCategory": "Category",
|
||||
"countOne": "1 app",
|
||||
"countMany": "{n} apps",
|
||||
"uncategorized": "Uncategorized",
|
||||
"openAriaLabel": "Open {name} in a new tab",
|
||||
"openGuestAriaLabel": "Apri {name} ({type} {id})",
|
||||
"emptyTitle": "No apps with a web link yet.",
|
||||
"emptyHint": "Register a Web Link for any app (App tab of a CT) to see it here.",
|
||||
"customLinkAdd": "Add link",
|
||||
"editModeToggle": "Edit",
|
||||
"editModeDone": "Done",
|
||||
"customLinkNewTitle": "New web link",
|
||||
"customLinkEditTitle": "Edit web link",
|
||||
"customLinkEditAria": "Modifica il collegamento personalizzato {name}",
|
||||
"customLinkName": "Name",
|
||||
"customLinkNamePlaceholder": "e.g. My app",
|
||||
"customLinkUrl": "URL",
|
||||
"customLinkLogo": "Logo URL (optional)",
|
||||
"customLinkLogoPlaceholder": "e.g., https://example.com/logo.webp",
|
||||
"customLinkCategory": "Category (optional)",
|
||||
"customLinkBinding": "Bound to",
|
||||
"customLinkBindingNone": "Not bound to any guest",
|
||||
"customLinkBindingHelp": "Bind this link to a VM or CT to add its ID + name to the card and jump to the guest with one click.",
|
||||
"customLinkSave": "Save",
|
||||
"customLinkCreate": "Create",
|
||||
"customLinkCancel": "Cancel",
|
||||
"customLinkDelete": "Delete",
|
||||
"customLinkSaveError": "Save failed",
|
||||
"customLinkDeleteError": "Delete failed"
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user