ysk-server-shared 1.1.0 → 1.1.9
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.
- package/dist/cdn.d.ts +2 -0
- package/dist/cdn.d.ts.map +1 -1
- package/dist/dto.d.ts +1 -1
- package/dist/dto.d.ts.map +1 -1
- package/dist/ftp.d.ts +6 -0
- package/dist/ftp.d.ts.map +1 -1
- package/dist/migrate.d.ts +1 -0
- package/dist/migrate.d.ts.map +1 -1
- package/dist/route-capabilities.d.ts.map +1 -1
- package/dist/route-capabilities.js +10 -0
- package/dist/route-capabilities.js.map +1 -1
- package/dist/validators.d.ts +39 -2
- package/dist/validators.d.ts.map +1 -1
- package/dist/validators.js +12 -0
- package/dist/validators.js.map +1 -1
- package/locales/ar/agents.json +7 -2
- package/locales/ar/apache.json +3 -1
- package/locales/ar/backups.json +17 -1
- package/locales/ar/btTracker.json +4 -1
- package/locales/ar/cdn.json +3 -1
- package/locales/ar/common.json +2 -1
- package/locales/ar/cron.json +4 -1
- package/locales/ar/dashboard.json +4 -2
- package/locales/ar/db.json +18 -1
- package/locales/ar/dns.json +5 -1
- package/locales/ar/docker.json +2 -1
- package/locales/ar/email.json +4 -1
- package/locales/ar/files.json +2 -1
- package/locales/ar/ftp.json +17 -1
- package/locales/ar/hostBrowse.json +3 -1
- package/locales/ar/migrate.json +14 -1
- package/locales/ar/network.json +3 -1
- package/locales/ar/nginx.json +4 -1
- package/locales/ar/notes.json +42 -6
- package/locales/ar/projects.json +2 -1
- package/locales/ar/protection.json +3 -1
- package/locales/ar/publicFiles.json +5 -1
- package/locales/ar/redis.json +6 -1
- package/locales/ar/security.json +3 -1
- package/locales/ar/services.json +9 -1
- package/locales/ar/system.json +7 -2
- package/locales/ar/translation.json +267 -41
- package/locales/ar/updates.json +2 -1
- package/locales/ar/validators.json +64 -5
- package/locales/ar/vnc.json +8 -1
- package/locales/bn/agents.json +7 -2
- package/locales/bn/apache.json +3 -1
- package/locales/bn/backups.json +17 -1
- package/locales/bn/btTracker.json +4 -1
- package/locales/bn/cdn.json +3 -1
- package/locales/bn/common.json +2 -1
- package/locales/bn/cron.json +4 -1
- package/locales/bn/dashboard.json +4 -2
- package/locales/bn/db.json +18 -1
- package/locales/bn/dns.json +5 -1
- package/locales/bn/docker.json +2 -1
- package/locales/bn/email.json +4 -1
- package/locales/bn/files.json +2 -1
- package/locales/bn/ftp.json +17 -1
- package/locales/bn/hostBrowse.json +3 -1
- package/locales/bn/migrate.json +14 -1
- package/locales/bn/network.json +3 -1
- package/locales/bn/nginx.json +4 -1
- package/locales/bn/notes.json +42 -6
- package/locales/bn/projects.json +2 -1
- package/locales/bn/protection.json +3 -1
- package/locales/bn/publicFiles.json +5 -1
- package/locales/bn/redis.json +6 -1
- package/locales/bn/security.json +3 -1
- package/locales/bn/services.json +9 -1
- package/locales/bn/system.json +7 -2
- package/locales/bn/translation.json +267 -41
- package/locales/bn/updates.json +2 -1
- package/locales/bn/validators.json +64 -5
- package/locales/bn/vnc.json +8 -1
- package/locales/en/agents.json +5 -0
- package/locales/en/apache.json +2 -0
- package/locales/en/backups.json +18 -2
- package/locales/en/btTracker.json +5 -2
- package/locales/en/cdn.json +3 -1
- package/locales/en/common.json +1 -0
- package/locales/en/cron.json +3 -0
- package/locales/en/dashboard.json +3 -1
- package/locales/en/db.json +17 -0
- package/locales/en/dns.json +4 -0
- package/locales/en/docker.json +1 -0
- package/locales/en/email.json +3 -0
- package/locales/en/files.json +1 -0
- package/locales/en/ftp.json +16 -0
- package/locales/en/hostBrowse.json +2 -0
- package/locales/en/migrate.json +14 -1
- package/locales/en/network.json +2 -0
- package/locales/en/nginx.json +4 -1
- package/locales/en/notes.json +45 -6
- package/locales/en/projects.json +1 -0
- package/locales/en/protection.json +2 -0
- package/locales/en/publicFiles.json +5 -1
- package/locales/en/redis.json +5 -0
- package/locales/en/security.json +2 -0
- package/locales/en/services.json +8 -0
- package/locales/en/system.json +7 -2
- package/locales/en/translation.json +252 -26
- package/locales/en/updates.json +1 -0
- package/locales/en/validators.json +65 -6
- package/locales/en/vnc.json +7 -0
- package/locales/es/agents.json +7 -2
- package/locales/es/apache.json +3 -1
- package/locales/es/backups.json +17 -1
- package/locales/es/btTracker.json +4 -1
- package/locales/es/cdn.json +3 -1
- package/locales/es/common.json +2 -1
- package/locales/es/cron.json +4 -1
- package/locales/es/dashboard.json +4 -2
- package/locales/es/db.json +18 -1
- package/locales/es/dns.json +5 -1
- package/locales/es/docker.json +2 -1
- package/locales/es/email.json +4 -1
- package/locales/es/files.json +2 -1
- package/locales/es/ftp.json +17 -1
- package/locales/es/hostBrowse.json +3 -1
- package/locales/es/migrate.json +14 -1
- package/locales/es/network.json +3 -1
- package/locales/es/nginx.json +4 -1
- package/locales/es/notes.json +42 -6
- package/locales/es/projects.json +2 -1
- package/locales/es/protection.json +3 -1
- package/locales/es/publicFiles.json +5 -1
- package/locales/es/redis.json +6 -1
- package/locales/es/security.json +3 -1
- package/locales/es/services.json +9 -1
- package/locales/es/system.json +7 -2
- package/locales/es/translation.json +267 -41
- package/locales/es/updates.json +2 -1
- package/locales/es/validators.json +64 -5
- package/locales/es/vnc.json +8 -1
- package/locales/fr/agents.json +7 -2
- package/locales/fr/apache.json +3 -1
- package/locales/fr/backups.json +17 -1
- package/locales/fr/btTracker.json +4 -1
- package/locales/fr/cdn.json +3 -1
- package/locales/fr/common.json +2 -1
- package/locales/fr/cron.json +4 -1
- package/locales/fr/dashboard.json +4 -2
- package/locales/fr/db.json +18 -1
- package/locales/fr/dns.json +5 -1
- package/locales/fr/docker.json +2 -1
- package/locales/fr/email.json +4 -1
- package/locales/fr/files.json +2 -1
- package/locales/fr/ftp.json +17 -1
- package/locales/fr/hostBrowse.json +3 -1
- package/locales/fr/migrate.json +14 -1
- package/locales/fr/network.json +3 -1
- package/locales/fr/nginx.json +4 -1
- package/locales/fr/notes.json +42 -6
- package/locales/fr/projects.json +2 -1
- package/locales/fr/protection.json +3 -1
- package/locales/fr/publicFiles.json +5 -1
- package/locales/fr/redis.json +6 -1
- package/locales/fr/security.json +3 -1
- package/locales/fr/services.json +9 -1
- package/locales/fr/system.json +7 -2
- package/locales/fr/translation.json +267 -41
- package/locales/fr/updates.json +2 -1
- package/locales/fr/validators.json +64 -5
- package/locales/fr/vnc.json +8 -1
- package/locales/hi/agents.json +7 -2
- package/locales/hi/apache.json +3 -1
- package/locales/hi/backups.json +17 -1
- package/locales/hi/btTracker.json +4 -1
- package/locales/hi/cdn.json +3 -1
- package/locales/hi/common.json +2 -1
- package/locales/hi/cron.json +4 -1
- package/locales/hi/dashboard.json +4 -2
- package/locales/hi/db.json +18 -1
- package/locales/hi/dns.json +5 -1
- package/locales/hi/docker.json +2 -1
- package/locales/hi/email.json +4 -1
- package/locales/hi/files.json +2 -1
- package/locales/hi/ftp.json +17 -1
- package/locales/hi/hostBrowse.json +3 -1
- package/locales/hi/migrate.json +14 -1
- package/locales/hi/network.json +3 -1
- package/locales/hi/nginx.json +4 -1
- package/locales/hi/notes.json +42 -6
- package/locales/hi/projects.json +2 -1
- package/locales/hi/protection.json +3 -1
- package/locales/hi/publicFiles.json +5 -1
- package/locales/hi/redis.json +6 -1
- package/locales/hi/security.json +3 -1
- package/locales/hi/services.json +9 -1
- package/locales/hi/system.json +7 -2
- package/locales/hi/translation.json +267 -41
- package/locales/hi/updates.json +2 -1
- package/locales/hi/validators.json +64 -5
- package/locales/hi/vnc.json +8 -1
- package/locales/id/agents.json +7 -2
- package/locales/id/apache.json +3 -1
- package/locales/id/backups.json +17 -1
- package/locales/id/btTracker.json +4 -1
- package/locales/id/cdn.json +3 -1
- package/locales/id/common.json +2 -1
- package/locales/id/cron.json +4 -1
- package/locales/id/dashboard.json +4 -2
- package/locales/id/db.json +18 -1
- package/locales/id/dns.json +5 -1
- package/locales/id/docker.json +2 -1
- package/locales/id/email.json +4 -1
- package/locales/id/files.json +2 -1
- package/locales/id/ftp.json +17 -1
- package/locales/id/hostBrowse.json +3 -1
- package/locales/id/migrate.json +14 -1
- package/locales/id/network.json +3 -1
- package/locales/id/nginx.json +4 -1
- package/locales/id/notes.json +42 -6
- package/locales/id/projects.json +2 -1
- package/locales/id/protection.json +3 -1
- package/locales/id/publicFiles.json +5 -1
- package/locales/id/redis.json +6 -1
- package/locales/id/security.json +3 -1
- package/locales/id/services.json +9 -1
- package/locales/id/system.json +7 -2
- package/locales/id/translation.json +267 -41
- package/locales/id/updates.json +2 -1
- package/locales/id/validators.json +64 -5
- package/locales/id/vnc.json +8 -1
- package/locales/ja/agents.json +7 -2
- package/locales/ja/apache.json +3 -1
- package/locales/ja/backups.json +17 -1
- package/locales/ja/btTracker.json +4 -1
- package/locales/ja/cdn.json +3 -1
- package/locales/ja/common.json +2 -1
- package/locales/ja/cron.json +4 -1
- package/locales/ja/dashboard.json +4 -2
- package/locales/ja/db.json +18 -1
- package/locales/ja/dns.json +5 -1
- package/locales/ja/docker.json +2 -1
- package/locales/ja/email.json +4 -1
- package/locales/ja/files.json +2 -1
- package/locales/ja/ftp.json +17 -1
- package/locales/ja/hostBrowse.json +3 -1
- package/locales/ja/migrate.json +14 -1
- package/locales/ja/network.json +3 -1
- package/locales/ja/nginx.json +4 -1
- package/locales/ja/notes.json +42 -6
- package/locales/ja/projects.json +2 -1
- package/locales/ja/protection.json +3 -1
- package/locales/ja/publicFiles.json +5 -1
- package/locales/ja/redis.json +6 -1
- package/locales/ja/security.json +3 -1
- package/locales/ja/services.json +9 -1
- package/locales/ja/system.json +7 -2
- package/locales/ja/translation.json +267 -41
- package/locales/ja/updates.json +2 -1
- package/locales/ja/validators.json +64 -5
- package/locales/ja/vnc.json +8 -1
- package/locales/ko/agents.json +7 -2
- package/locales/ko/apache.json +3 -1
- package/locales/ko/backups.json +17 -1
- package/locales/ko/btTracker.json +4 -1
- package/locales/ko/cdn.json +3 -1
- package/locales/ko/common.json +2 -1
- package/locales/ko/cron.json +4 -1
- package/locales/ko/dashboard.json +4 -2
- package/locales/ko/db.json +18 -1
- package/locales/ko/dns.json +5 -1
- package/locales/ko/docker.json +2 -1
- package/locales/ko/email.json +4 -1
- package/locales/ko/files.json +2 -1
- package/locales/ko/ftp.json +17 -1
- package/locales/ko/hostBrowse.json +3 -1
- package/locales/ko/migrate.json +14 -1
- package/locales/ko/network.json +3 -1
- package/locales/ko/nginx.json +4 -1
- package/locales/ko/notes.json +42 -6
- package/locales/ko/projects.json +2 -1
- package/locales/ko/protection.json +3 -1
- package/locales/ko/publicFiles.json +5 -1
- package/locales/ko/redis.json +6 -1
- package/locales/ko/security.json +3 -1
- package/locales/ko/services.json +9 -1
- package/locales/ko/system.json +7 -2
- package/locales/ko/translation.json +267 -41
- package/locales/ko/updates.json +2 -1
- package/locales/ko/validators.json +64 -5
- package/locales/ko/vnc.json +8 -1
- package/locales/pt/agents.json +7 -2
- package/locales/pt/apache.json +3 -1
- package/locales/pt/backups.json +17 -1
- package/locales/pt/btTracker.json +4 -1
- package/locales/pt/cdn.json +3 -1
- package/locales/pt/common.json +2 -1
- package/locales/pt/cron.json +4 -1
- package/locales/pt/dashboard.json +4 -2
- package/locales/pt/db.json +18 -1
- package/locales/pt/dns.json +5 -1
- package/locales/pt/docker.json +2 -1
- package/locales/pt/email.json +4 -1
- package/locales/pt/files.json +2 -1
- package/locales/pt/ftp.json +17 -1
- package/locales/pt/hostBrowse.json +3 -1
- package/locales/pt/migrate.json +14 -1
- package/locales/pt/network.json +3 -1
- package/locales/pt/nginx.json +4 -1
- package/locales/pt/notes.json +42 -6
- package/locales/pt/projects.json +2 -1
- package/locales/pt/protection.json +3 -1
- package/locales/pt/publicFiles.json +5 -1
- package/locales/pt/redis.json +6 -1
- package/locales/pt/security.json +3 -1
- package/locales/pt/services.json +9 -1
- package/locales/pt/system.json +7 -2
- package/locales/pt/translation.json +267 -41
- package/locales/pt/updates.json +2 -1
- package/locales/pt/validators.json +64 -5
- package/locales/pt/vnc.json +8 -1
- package/locales/ur/agents.json +7 -2
- package/locales/ur/apache.json +3 -1
- package/locales/ur/backups.json +17 -1
- package/locales/ur/btTracker.json +4 -1
- package/locales/ur/cdn.json +3 -1
- package/locales/ur/common.json +2 -1
- package/locales/ur/cron.json +4 -1
- package/locales/ur/dashboard.json +4 -2
- package/locales/ur/db.json +18 -1
- package/locales/ur/dns.json +5 -1
- package/locales/ur/docker.json +2 -1
- package/locales/ur/email.json +4 -1
- package/locales/ur/files.json +2 -1
- package/locales/ur/ftp.json +17 -1
- package/locales/ur/hostBrowse.json +3 -1
- package/locales/ur/migrate.json +14 -1
- package/locales/ur/network.json +3 -1
- package/locales/ur/nginx.json +4 -1
- package/locales/ur/notes.json +42 -6
- package/locales/ur/projects.json +2 -1
- package/locales/ur/protection.json +3 -1
- package/locales/ur/publicFiles.json +5 -1
- package/locales/ur/redis.json +6 -1
- package/locales/ur/security.json +3 -1
- package/locales/ur/services.json +9 -1
- package/locales/ur/system.json +7 -2
- package/locales/ur/translation.json +267 -41
- package/locales/ur/updates.json +2 -1
- package/locales/ur/validators.json +64 -5
- package/locales/ur/vnc.json +8 -1
- package/locales/zh-CN/agents.json +7 -2
- package/locales/zh-CN/apache.json +3 -1
- package/locales/zh-CN/backups.json +17 -1
- package/locales/zh-CN/btTracker.json +4 -1
- package/locales/zh-CN/cdn.json +3 -1
- package/locales/zh-CN/common.json +2 -1
- package/locales/zh-CN/cron.json +4 -1
- package/locales/zh-CN/dashboard.json +4 -2
- package/locales/zh-CN/db.json +18 -1
- package/locales/zh-CN/dns.json +5 -1
- package/locales/zh-CN/docker.json +2 -1
- package/locales/zh-CN/email.json +4 -1
- package/locales/zh-CN/files.json +2 -1
- package/locales/zh-CN/ftp.json +17 -1
- package/locales/zh-CN/hostBrowse.json +3 -1
- package/locales/zh-CN/migrate.json +14 -1
- package/locales/zh-CN/network.json +3 -1
- package/locales/zh-CN/nginx.json +4 -1
- package/locales/zh-CN/notes.json +42 -6
- package/locales/zh-CN/projects.json +2 -1
- package/locales/zh-CN/protection.json +3 -1
- package/locales/zh-CN/publicFiles.json +5 -1
- package/locales/zh-CN/redis.json +6 -1
- package/locales/zh-CN/security.json +3 -1
- package/locales/zh-CN/services.json +9 -1
- package/locales/zh-CN/system.json +7 -2
- package/locales/zh-CN/translation.json +267 -41
- package/locales/zh-CN/updates.json +2 -1
- package/locales/zh-CN/validators.json +64 -5
- package/locales/zh-CN/vnc.json +8 -1
- package/locales/zh-HK/agents.json +5 -0
- package/locales/zh-HK/apache.json +2 -0
- package/locales/zh-HK/backups.json +18 -2
- package/locales/zh-HK/btTracker.json +5 -2
- package/locales/zh-HK/cdn.json +3 -1
- package/locales/zh-HK/common.json +1 -0
- package/locales/zh-HK/cron.json +3 -0
- package/locales/zh-HK/dashboard.json +3 -1
- package/locales/zh-HK/db.json +17 -0
- package/locales/zh-HK/dns.json +4 -0
- package/locales/zh-HK/docker.json +1 -0
- package/locales/zh-HK/email.json +3 -0
- package/locales/zh-HK/files.json +1 -0
- package/locales/zh-HK/ftp.json +16 -0
- package/locales/zh-HK/hostBrowse.json +2 -0
- package/locales/zh-HK/migrate.json +14 -1
- package/locales/zh-HK/network.json +2 -0
- package/locales/zh-HK/nginx.json +4 -1
- package/locales/zh-HK/notes.json +45 -9
- package/locales/zh-HK/projects.json +1 -0
- package/locales/zh-HK/protection.json +2 -0
- package/locales/zh-HK/publicFiles.json +5 -1
- package/locales/zh-HK/redis.json +5 -0
- package/locales/zh-HK/security.json +2 -0
- package/locales/zh-HK/services.json +8 -0
- package/locales/zh-HK/system.json +7 -2
- package/locales/zh-HK/translation.json +252 -26
- package/locales/zh-HK/updates.json +1 -0
- package/locales/zh-HK/validators.json +65 -6
- package/locales/zh-HK/vnc.json +7 -0
- package/package.json +8 -9
|
@@ -7,6 +7,8 @@
|
|
|
7
7
|
"body": "OpenClaw / Hermes / IonClaw install and supervision; all tool calls go through Allowlist and approval.",
|
|
8
8
|
"status": {
|
|
9
9
|
"running": "Running",
|
|
10
|
+
"activating": "Starting",
|
|
11
|
+
"stuck": "Start stuck",
|
|
10
12
|
"connected": "Online",
|
|
11
13
|
"registered": "Registered only",
|
|
12
14
|
"stale": "Stale",
|
|
@@ -17,6 +19,9 @@
|
|
|
17
19
|
"unknown": "Not probed",
|
|
18
20
|
"fallback": "Unknown"
|
|
19
21
|
},
|
|
22
|
+
"activatingStuckHint": "Activating longer than 5 minutes — treated as failed. Check journal.",
|
|
23
|
+
"noOnlineAgents": "No agents online",
|
|
24
|
+
"journal": "journal",
|
|
20
25
|
"liveN": "{{count}} online",
|
|
21
26
|
"registeredOnly": "Registered only",
|
|
22
27
|
"awaitProbe": "Awaiting probe",
|
|
@@ -206,6 +211,7 @@
|
|
|
206
211
|
"apache": {
|
|
207
212
|
"pageDesc": "Apache sites (PHP projects + standalone)",
|
|
208
213
|
"pillSites": "{{count}} sites",
|
|
214
|
+
"pillSitesSplit": "{{n}} sites · {{leftover}} leftover",
|
|
209
215
|
"listTitle": "Sites ({{count}})",
|
|
210
216
|
"emptyTitle": "No sites",
|
|
211
217
|
"createSite": "+ Create site",
|
|
@@ -213,6 +219,7 @@
|
|
|
213
219
|
"editTitle": "Edit site",
|
|
214
220
|
"deleteTitle": "Delete site?",
|
|
215
221
|
"deleteDesc": "Remove this Apache site?",
|
|
222
|
+
"stopSites": "{{n}} site(s) will stop answering HTTP.",
|
|
216
223
|
"colServerName": "Server name",
|
|
217
224
|
"colSource": "Source",
|
|
218
225
|
"colKind": "Type",
|
|
@@ -421,8 +428,24 @@
|
|
|
421
428
|
"cancel": "Cancel",
|
|
422
429
|
"deleteFailed": "Delete failed",
|
|
423
430
|
"deleted": "Deleted",
|
|
424
|
-
"deleteTitle": "
|
|
425
|
-
"deleteDesc": "
|
|
431
|
+
"deleteTitle": "Move backup to recycle bin?",
|
|
432
|
+
"deleteDesc": "Move {{name}} to the recycle bin. Permanent delete after 7 days.",
|
|
433
|
+
"tabTrash": "Recycle bin",
|
|
434
|
+
"trashTitle": "Recycle bin ({{count}})",
|
|
435
|
+
"trashSub": "Deleted archives stay here for 7 days, then they are removed permanently.",
|
|
436
|
+
"trashEmpty": "Recycle bin is empty",
|
|
437
|
+
"trashEmptyDesc": "Deleted backup files appear here for 7 days.",
|
|
438
|
+
"trashRestore": "Restore",
|
|
439
|
+
"trashPurge": "Delete forever",
|
|
440
|
+
"trashEmptyAll": "Empty recycle bin",
|
|
441
|
+
"trashExpires": "Expires {{at}}",
|
|
442
|
+
"trashPurgeTitle": "Permanently delete this backup?",
|
|
443
|
+
"trashPurgeDesc": "Permanently delete {{name}}. This cannot be undone.",
|
|
444
|
+
"trashEmptyTitle": "Empty recycle bin?",
|
|
445
|
+
"trashEmptyDescConfirm": "Permanently delete {{count}} archive(s). Type the count to confirm.",
|
|
446
|
+
"trashRestored": "Restored from recycle bin",
|
|
447
|
+
"trashPurged": "Permanently deleted",
|
|
448
|
+
"trashedOk": "Moved to recycle bin",
|
|
426
449
|
"resticSafeTitle": "restic restore to safe directory?",
|
|
427
450
|
"resticSafeDesc": "Restore {{snapshot}} to project {{project}} .restic-restore-* directory",
|
|
428
451
|
"resticRestoreDone": "restic restore complete",
|
|
@@ -509,8 +532,11 @@
|
|
|
509
532
|
"statsTorrents": "Torrents",
|
|
510
533
|
"statsLibrary": "Library",
|
|
511
534
|
"statsLibraryHint": "Torrents in the panel library / file shares",
|
|
512
|
-
"statsTrackerLeftover": "
|
|
513
|
-
"statsTrackerLeftoverHint": "
|
|
535
|
+
"statsTrackerLeftover": "Tracker hashes not in library",
|
|
536
|
+
"statsTrackerLeftoverHint": "Info-hashes the local tracker has announced that are not torrent-library rows. Listed on the Tracker tab.",
|
|
537
|
+
"leftoverHashesTitle": "Tracker leftover hashes",
|
|
538
|
+
"publicHostMissingLive": "Tracker is listening but public announce host is not set. Off-host peers cannot find this seed.",
|
|
539
|
+
"leftoverHashesHint": "Read-only. These announces are not library or share rows.",
|
|
514
540
|
"statsPeers": "Peers",
|
|
515
541
|
"statsAnnounces": "Announces",
|
|
516
542
|
"statsAnnouncesHint": "Announce requests seen by the tracker process",
|
|
@@ -721,7 +747,8 @@
|
|
|
721
747
|
"statNodes": "Nodes",
|
|
722
748
|
"hitNoStats": "No edge stats yet",
|
|
723
749
|
"loopbackOriginBlocked": "Will not apply loopback origin {{url}} to a remote edge. Set a reachable origin first.",
|
|
724
|
-
"applyFailedHint": "Apply failed
|
|
750
|
+
"applyFailedHint": "Apply failed",
|
|
751
|
+
"applyFailedNoNote": "No stored reason. Re-apply to capture the error.",
|
|
725
752
|
"applyStatus": {
|
|
726
753
|
"draft": "Draft",
|
|
727
754
|
"planned": "Planned",
|
|
@@ -731,6 +758,7 @@
|
|
|
731
758
|
"partial": "Partial"
|
|
732
759
|
},
|
|
733
760
|
"statSites": "Sites",
|
|
761
|
+
"statApplyFailed": "Apply failed",
|
|
734
762
|
"pillNodesSites": "{{n}} nodes · {{s}} sites",
|
|
735
763
|
"statOnline": "Online",
|
|
736
764
|
"statHit": "Hit rate",
|
|
@@ -2106,6 +2134,7 @@
|
|
|
2106
2134
|
"unavailable": "Not available right now",
|
|
2107
2135
|
"retry": "Retry",
|
|
2108
2136
|
"success": "Success",
|
|
2137
|
+
"ok": "OK",
|
|
2109
2138
|
"failed": "Failed",
|
|
2110
2139
|
"blocked": "Cannot run",
|
|
2111
2140
|
"status": "Status",
|
|
@@ -2284,6 +2313,7 @@
|
|
|
2284
2313
|
"hostNoYsk": "not installed or no YSK entries",
|
|
2285
2314
|
"pressInstall": "Registered jobs are not on the system crontab yet — click Install to system.",
|
|
2286
2315
|
"jobsTab": "Jobs ({{count}})",
|
|
2316
|
+
"jobsTabPending": "Jobs ({{count}}) · pending {{pending}}",
|
|
2287
2317
|
"registeredJobs": "Registered jobs ({{count}})",
|
|
2288
2318
|
"jobsSub": "Management entries · Install to system after changes",
|
|
2289
2319
|
"addJob": "+ Add job",
|
|
@@ -2344,6 +2374,8 @@
|
|
|
2344
2374
|
"noHostJobs": "No crontab jobs in this scope",
|
|
2345
2375
|
"hostPartial": "Could not read every user crontab (root required)",
|
|
2346
2376
|
"pendingInstall": "Pending install ({{count}})",
|
|
2377
|
+
"pendingStale": "Not written to system crontab for {{days}} day(s) — it will not run.",
|
|
2378
|
+
"willNotRun": "Not written to system crontab — will not run.",
|
|
2347
2379
|
"hourRange": "Hour must be 0–23.",
|
|
2348
2380
|
"minuteRange": "Minute must be 0–59.",
|
|
2349
2381
|
"hoursCommon": "Common hours",
|
|
@@ -2420,10 +2452,12 @@
|
|
|
2420
2452
|
"readinessCheck": "Readiness:",
|
|
2421
2453
|
"prodOk": "Production ready",
|
|
2422
2454
|
"notFullyReady": "Not fully ready",
|
|
2455
|
+
"readinessBlocked": "{{n}} blocker(s)",
|
|
2423
2456
|
"modeScore": "Mode {{mode}} · score {{ready}}/{{total}}",
|
|
2424
2457
|
"mode": {
|
|
2425
2458
|
"degraded": "degraded",
|
|
2426
|
-
"production_capable": "
|
|
2459
|
+
"production_capable": "EXECUTE + root",
|
|
2460
|
+
"blocked": "blocked",
|
|
2427
2461
|
"normal": "normal"
|
|
2428
2462
|
},
|
|
2429
2463
|
"details": "Details",
|
|
@@ -2656,6 +2690,23 @@
|
|
|
2656
2690
|
"title": "Cluster",
|
|
2657
2691
|
"description": "Plan → write management files → apply → probe → distribute to peers / fleet. Default is dry-run (no host restart).",
|
|
2658
2692
|
"redirectedFromCluster": "You were redirected here from /cluster. This is the database cluster tab.",
|
|
2693
|
+
"notApplied": "Not applied",
|
|
2694
|
+
"plannedAt": "Created {{when}}",
|
|
2695
|
+
"clearStalePlans": "Clear stale plans",
|
|
2696
|
+
"clearStalePlansTitle": "Delete stale planned clusters?",
|
|
2697
|
+
"clearStalePlansDesc": "Deletes {{n}} planned/draft registration(s) older than 7 days. Does not apply or push. System conf is not touched.",
|
|
2698
|
+
"landingTitle": "Database cluster",
|
|
2699
|
+
"landingDesc": "All planned and applied database clusters on this host. Open an engine to create or apply.",
|
|
2700
|
+
"landingNoneInstalled": "MySQL, MariaDB, PostgreSQL, and Redis are not installed. Install an engine first.",
|
|
2701
|
+
"openEngine": "Open {{engine}}",
|
|
2702
|
+
"overviewPill": "Clusters {{n}}",
|
|
2703
|
+
"enginesInstalled": "Engines",
|
|
2704
|
+
"plannedCount": "Planned",
|
|
2705
|
+
"overviewList": "Clusters ({{count}})",
|
|
2706
|
+
"overviewEmpty": "No cluster registrations yet.",
|
|
2707
|
+
"engine": "Engine",
|
|
2708
|
+
"kind": "Kind",
|
|
2709
|
+
"members": "Members",
|
|
2659
2710
|
"kindGalera": "Simple Galera",
|
|
2660
2711
|
"kindMysqlReplica": "MySQL primary/replica",
|
|
2661
2712
|
"kindPgReplica": "PostgreSQL streaming replica",
|
|
@@ -3069,10 +3120,14 @@
|
|
|
3069
3120
|
"healthHealPdns": "Heal PowerDNS bind",
|
|
3070
3121
|
"healNeedInstall": "PowerDNS is not installed — install it on the Software tab first",
|
|
3071
3122
|
"applyNeedService": "DNS service is not running — start or install it before apply",
|
|
3123
|
+
"goStartService": "Start DNS service",
|
|
3124
|
+
"startBindHint": "If start returns to stopped, port 53 is often held by systemd-resolved. Use Heal bind below, then start again.",
|
|
3072
3125
|
"deleteZoneNeedName": "Delete this zone — you will type the zone name to confirm",
|
|
3073
3126
|
"healthHealPdnsHint": "Set local-address to public IP to avoid clashing with systemd-resolved on 0",
|
|
3074
3127
|
"healthHealPdnsOk": "PowerDNS bound to {{ip}} and start attempted",
|
|
3075
3128
|
"healthHealPdnsFailed": "PowerDNS heal failed",
|
|
3129
|
+
"startProbeFailed": "Could not re-check DNS health after start",
|
|
3130
|
+
"startNotListening": "PowerDNS start returned, but the unit is not answering on port 53",
|
|
3076
3131
|
"aboutTitle": "DNS essentials",
|
|
3077
3132
|
"aboutSub": "Zones first; records, cluster, and DNSSEC need a selected domain.",
|
|
3078
3133
|
"aboutZonesTitle": "Zones and scope",
|
|
@@ -3153,6 +3208,7 @@
|
|
|
3153
3208
|
"down": "Stopped",
|
|
3154
3209
|
"running": "Running",
|
|
3155
3210
|
"exited": "Exited",
|
|
3211
|
+
"exitedCode": "Exited ({{n}})",
|
|
3156
3212
|
"restarting": "Restarting",
|
|
3157
3213
|
"restartingCount": "Restarting · {{n}} times",
|
|
3158
3214
|
"paused": "Paused",
|
|
@@ -3452,6 +3508,8 @@
|
|
|
3452
3508
|
"healthScore": "Health score",
|
|
3453
3509
|
"healthUnchecked": "Not checked yet",
|
|
3454
3510
|
"healthUncheckedHint": "Live DNS / PTR / port 25 have not been probed yet.",
|
|
3511
|
+
"healthPartialScore": "Partial {{n}}/100 (DNS only)",
|
|
3512
|
+
"healthPartialHint": "DNS checklist only — live and blacklist not probed.",
|
|
3455
3513
|
"deliverabilityScore": "Deliverability pack",
|
|
3456
3514
|
"opendkimNoReload": "OpenDKIM has no reload — use restart after key or table changes.",
|
|
3457
3515
|
"opendkimNoReloadTitle": "systemctl reload opendkim is not supported on this stack",
|
|
@@ -3793,6 +3851,7 @@
|
|
|
3793
3851
|
"deleteMailboxC3": "System Dovecot/Postfix may still need cleanup",
|
|
3794
3852
|
"deleteAliasTitle": "Delete alias/forward?",
|
|
3795
3853
|
"deleteAliasDesc": "Deletes {{source}}.",
|
|
3854
|
+
"deleteImpact": "{{mailboxes}} mailboxes · {{records}} DNS records · {{aliases}} aliases",
|
|
3796
3855
|
"deleteDomainC1": "All mailboxes and aliases",
|
|
3797
3856
|
"deleteDomainC2": "Control-plane DKIM, DNS suggestions, and flags",
|
|
3798
3857
|
"deleteDomainC3": "Local dataDir/email directory if present",
|
|
@@ -4125,6 +4184,7 @@
|
|
|
4125
4184
|
"webdavAfterEnable": "Available after you enable WebDAV and issue a token.",
|
|
4126
4185
|
"webdavOn": "Enabled",
|
|
4127
4186
|
"webdavOff": "Disabled",
|
|
4187
|
+
"webdavOffNoToken": "Disabled (no active token)",
|
|
4128
4188
|
"webdavTokenId": "Token #{{id}}",
|
|
4129
4189
|
"webdavTokenInactive": "Disabled — token #{{id}} is not active",
|
|
4130
4190
|
"webdavUpdated": "Updated {{at}}",
|
|
@@ -4549,6 +4609,22 @@
|
|
|
4549
4609
|
"accountCount": "Accounts",
|
|
4550
4610
|
"loginBanner": "Login banner",
|
|
4551
4611
|
"sslDomain": "SSL domain",
|
|
4612
|
+
"plaintextInsecure": "Cleartext FTP (no TLS) — insecure. Enable FTPS before exposing port 21.",
|
|
4613
|
+
"plaintextPublicLive": "vsftpd is listening on a public address without FTPS. Credentials travel in the clear. Enable FTPS, bind to this host only, or confirm PLAINTEXT to keep this posture.",
|
|
4614
|
+
"bindAddress": "Listen scope",
|
|
4615
|
+
"bindAddressHint": "New installs bind to this host only. Public listen without FTPS needs a typed confirmation.",
|
|
4616
|
+
"bindLocal": "This host only",
|
|
4617
|
+
"bindLocalHint": "127.0.0.1 — fine without TLS for local tests",
|
|
4618
|
+
"bindPublic": "Public",
|
|
4619
|
+
"bindPublicHint": "All interfaces — enable FTPS or confirm PLAINTEXT",
|
|
4620
|
+
"enableFtpsAndStart": "Enable FTPS and start",
|
|
4621
|
+
"publicPlainNeedConfirm": "Public cleartext FTP needs a PLAINTEXT confirmation",
|
|
4622
|
+
"plainConfirmTitle": "Start public FTP without FTPS?",
|
|
4623
|
+
"plainConfirmDesc": "Port 21 will accept logins and data in the clear on the public address.",
|
|
4624
|
+
"plainConfirmC1": "Usernames and passwords are visible on the network.",
|
|
4625
|
+
"plainConfirmC2": "PASV will advertise the configured public IP.",
|
|
4626
|
+
"plainConfirmC3": "Host firewall and cloud security group are not opened for you.",
|
|
4627
|
+
"plainConfirmAction": "Start cleartext FTP",
|
|
4552
4628
|
"pasvRange": "PASV range",
|
|
4553
4629
|
"forceTls": "Force TLS",
|
|
4554
4630
|
"allowWrite": "Allow write",
|
|
@@ -4894,6 +4970,8 @@
|
|
|
4894
4970
|
"isolationNote": "Real browser creates an ephemeral Linux user for Chrome; leaving the page or idle timeout destroys that user.",
|
|
4895
4971
|
"resumeHint": "Resume previous session ({{count}} tabs)",
|
|
4896
4972
|
"resumeHintDetail": "Resume previous session ({{count}} tabs) · {{url}} · {{when}}",
|
|
4973
|
+
"resumeHintOwned": "Resume last browse for {{user}} ({{count}} tabs) · {{url}} · {{when}}",
|
|
4974
|
+
"clearSessionData": "Clear session data",
|
|
4897
4975
|
"resume": "Resume",
|
|
4898
4976
|
"resumeDismiss": "Dismiss",
|
|
4899
4977
|
"resumeDone": "Session resumed",
|
|
@@ -5322,6 +5400,8 @@
|
|
|
5322
5400
|
"inventorying": "Inventorying",
|
|
5323
5401
|
"inventoried": "Inventoried",
|
|
5324
5402
|
"inventoriedWarn": "Inventoried · {{n}} warnings",
|
|
5403
|
+
"inventoriedOrphans": "Inventoried · {{n}} leftover homes",
|
|
5404
|
+
"inventoriedWarnAndOrphans": "Inventoried · {{w}} warnings · {{n}} leftover",
|
|
5325
5405
|
"inventoryFailed": "Inventory failed",
|
|
5326
5406
|
"pendingInventory": "Pending inventory",
|
|
5327
5407
|
"projects": "Projects",
|
|
@@ -5381,7 +5461,18 @@
|
|
|
5381
5461
|
"afterRestart": ") then Refresh.",
|
|
5382
5462
|
"inventoryWarnings": "Inventory warnings ({{count}})",
|
|
5383
5463
|
"orphanHomesHint": "Leftover project homes (not in the store). Remove only after you confirm they are unused.",
|
|
5384
|
-
"
|
|
5464
|
+
"orphanHomesTitle": "Leftover project homes ({{count}})",
|
|
5465
|
+
"orphanHomesSummary": "{{count}} path(s) on disk are not in the store. Back up first if unsure, then remove unused paths.",
|
|
5466
|
+
"orphanColHome": "Home",
|
|
5467
|
+
"orphanColModified": "Modified",
|
|
5468
|
+
"orphanColEntries": "Entries",
|
|
5469
|
+
"orphanEntries": "{{n}} top-level entries in the directory",
|
|
5470
|
+
"orphanKpi": "Leftover",
|
|
5471
|
+
"sourceOs": "OS",
|
|
5472
|
+
"sourceDataDir": "dataDir",
|
|
5473
|
+
"sourceDbRedis": "Databases / Redis",
|
|
5474
|
+
"sourceDbRedisValue": "{{db}} databases · {{redis}} Redis",
|
|
5475
|
+
"orphanRemove": "Remove",
|
|
5385
5476
|
"orphanRemoveTitle": "Delete leftover project home?",
|
|
5386
5477
|
"orphanRemoveDesc": "Permanently delete {{path}} from disk. This is not a store project. Needs superuser and system-change permission.",
|
|
5387
5478
|
"orphanRemovePhrase": "Type DELETE to confirm.",
|
|
@@ -5518,6 +5609,8 @@
|
|
|
5518
5609
|
"up": "Up",
|
|
5519
5610
|
"down": "Down",
|
|
5520
5611
|
"unknown": "Unknown",
|
|
5612
|
+
"loopback": "Always on",
|
|
5613
|
+
"loopbackHint": "Loopback is always available and cannot be changed.",
|
|
5521
5614
|
"other": "Other"
|
|
5522
5615
|
},
|
|
5523
5616
|
"statGateway": "Gateway",
|
|
@@ -5680,6 +5773,8 @@
|
|
|
5680
5773
|
"purgeOk": "Purged",
|
|
5681
5774
|
"projectSitesHint": "Project sites (managed conf) and standalone sites are listed separately. Edit project Nginx under Projects → Network.",
|
|
5682
5775
|
"purgeCache": "Purge cache + reload",
|
|
5776
|
+
"purgeCacheTitle": "Purge Nginx cache and reload?",
|
|
5777
|
+
"purgeCacheDesc": "Clears the on-disk cache and reloads Nginx. Live sites stay up.",
|
|
5683
5778
|
"notInstalled": "Nginx is not installed",
|
|
5684
5779
|
"listTitle": "Sites ({{count}})",
|
|
5685
5780
|
"listDesc": "After create, click Apply to sync to the system",
|
|
@@ -5755,7 +5850,8 @@
|
|
|
5755
5850
|
"setHsts": "HSTS",
|
|
5756
5851
|
"setCfRealIp": "Cloudflare Real IP",
|
|
5757
5852
|
"setIndexes": "Directory listing",
|
|
5758
|
-
"bodyInherit": "Global"
|
|
5853
|
+
"bodyInherit": "Global",
|
|
5854
|
+
"stopSites": "{{n}} site(s) will stop answering HTTP."
|
|
5759
5855
|
},
|
|
5760
5856
|
"notFound": {
|
|
5761
5857
|
"title": "Page not found",
|
|
@@ -5764,6 +5860,9 @@
|
|
|
5764
5860
|
"home": "Dashboard"
|
|
5765
5861
|
},
|
|
5766
5862
|
"notes": {
|
|
5863
|
+
"agents": {
|
|
5864
|
+
"sessionNotFound": "Session not found: {{sessionId}}"
|
|
5865
|
+
},
|
|
5767
5866
|
"notFound": "Not found",
|
|
5768
5867
|
"needPath": "Specify a path",
|
|
5769
5868
|
"needName": "Enter a name",
|
|
@@ -5830,10 +5929,18 @@
|
|
|
5830
5929
|
"targetOutside": "Restore target must be inside the project home or the public files root.",
|
|
5831
5930
|
"controlPlaneDryRun": "Preview only — nothing written. In the panel, use Restore and confirm the phrase to write.",
|
|
5832
5931
|
"controlPlaneNeedConfirm": "Full control-plane restore needs the confirm phrase RESTORE-CONTROL-PLANE.",
|
|
5833
|
-
"controlPlaneRestartAfter": "Restart the API after a successful restore."
|
|
5932
|
+
"controlPlaneRestartAfter": "Restart the API after a successful restore.",
|
|
5933
|
+
"movedToTrash": "Moved {{name}} to the recycle bin. Permanent delete after {{days}} days.",
|
|
5934
|
+
"restoreNameExists": "Cannot restore {{name}} — a live archive with that name already exists.",
|
|
5935
|
+
"restoredFromTrash": "Restored {{name}} from the recycle bin.",
|
|
5936
|
+
"trashEmptied": "Permanently deleted {{n}} archive(s) from the recycle bin."
|
|
5834
5937
|
},
|
|
5835
5938
|
"redis": {
|
|
5836
|
-
"cliMissing": "redis-cli is not installed"
|
|
5939
|
+
"cliMissing": "redis-cli is not installed",
|
|
5940
|
+
"requirepassAlreadySet": "Redis already has requirepass — not overwritten.",
|
|
5941
|
+
"requirepassApplied": "requirepass applied at runtime",
|
|
5942
|
+
"requirepassApplyFailed": "Could not CONFIG SET requirepass (will rely on restart + conf)",
|
|
5943
|
+
"generatedRequirepass": "Generated Redis password (shown once): {{password}}"
|
|
5837
5944
|
},
|
|
5838
5945
|
"nginx": {
|
|
5839
5946
|
"reloaded": "nginx reloaded",
|
|
@@ -5856,7 +5963,8 @@
|
|
|
5856
5963
|
"vsftpdStarted": "vsftpd started",
|
|
5857
5964
|
"openPortsStep": "Firewall ports (manual)",
|
|
5858
5965
|
"openPortsReminder": "Open TCP ports on host firewall and cloud security group: {{ports}}. FTPS apply does not open ports for you.",
|
|
5859
|
-
"openPortsPasvHint": "If login works but directory LIST times out, the PASV data range is blocked — open the ful"
|
|
5966
|
+
"openPortsPasvHint": "If login works but directory LIST times out, the PASV data range is blocked — open the ful",
|
|
5967
|
+
"publicPlaintextBlocked": "Refusing to start public FTP without FTPS. Bind to this host only, enable FTPS with a certificate, or confirm PLAINTEXT to expose cleartext on the public address."
|
|
5860
5968
|
},
|
|
5861
5969
|
"deploy": {
|
|
5862
5970
|
"nodeMissingIsolated": "Node binary missing for isolated deploy: {{path}} — install Node {{version}} toolchain then redeploy. Refusing to write a unit that would 203/EXEC.",
|
|
@@ -5911,7 +6019,17 @@
|
|
|
5911
6019
|
"applyDigOk": "PowerDNS BIND: list-zones + dig OK",
|
|
5912
6020
|
"applyDigFail": "Zone registered in conf but dig still empty/REFUSED — not marking applied",
|
|
5913
6021
|
"applySyncIncomplete": "PowerDNS bind sync incomplete — zone file on disk only (not applied). Fix EXECUTE/root or pdns logs.",
|
|
5914
|
-
"writeOnlyHint": "Zone file written only — PowerDNS will not answer until load/apply registers named"
|
|
6022
|
+
"writeOnlyHint": "Zone file written only — PowerDNS will not answer until load/apply registers named",
|
|
6023
|
+
"noActiveUnit": "No active named/bind9/pdns unit",
|
|
6024
|
+
"pdnsUnitRestarts": "pdns unit state/restarts: {{detail}}",
|
|
6025
|
+
"port53LoopbackOnly": "Port 53 is only on loopback (systemd-resolved 127.0.0.53) — not a product authoritative nameserver",
|
|
6026
|
+
"port53Closed": "Port 53 is not listening (UDP/TCP)",
|
|
6027
|
+
"udp53NotPublic": "UDP/53 is not listening on a public address",
|
|
6028
|
+
"tcp53NotPublic": "TCP/53 is not listening on a public address",
|
|
6029
|
+
"noManagedZones": "No managed zone files under dataDir/dns/zones",
|
|
6030
|
+
"pdnsListZones": "PowerDNS list-zones: {{n}}",
|
|
6031
|
+
"lookupIgnoredAt": "dig is unavailable — @{{server}} was ignored. Not using the system resolver as that server’s answer.",
|
|
6032
|
+
"localAOk": "local A {{name}} → {{ip}}"
|
|
5915
6033
|
},
|
|
5916
6034
|
"db": {
|
|
5917
6035
|
"needExecuteCreate": "Host execute is off; cannot create database from the panel",
|
|
@@ -5960,9 +6078,6 @@
|
|
|
5960
6078
|
"postqueueMailDown": "Postfix is not running (showq unavailable). Panel tried to start it when YSK_EXECUTE is on — check the Software tab / systemctl status postfix.",
|
|
5961
6079
|
"postqueueSpoolMissing": "Postfix queue directories are missing (e.g. hold/). Panel tried to create the spool tree and start Postfix when YSK_EXECUTE is on."
|
|
5962
6080
|
},
|
|
5963
|
-
"agents": {
|
|
5964
|
-
"sessionNotFound": "Session not found: {{sessionId}}"
|
|
5965
|
-
},
|
|
5966
6081
|
"software": {
|
|
5967
6082
|
"startUnit": "Start {{u}}",
|
|
5968
6083
|
"installedSpec": "Installed {{title}}",
|
|
@@ -8301,7 +8416,7 @@
|
|
|
8301
8416
|
"t0626": "transfer: home rsync Failed {{v0}}",
|
|
8302
8417
|
"t0627": "skipped: {{v0}}",
|
|
8303
8418
|
"t0628": "transfer done → {{v0}}:{{v1}}",
|
|
8304
|
-
"t0629": "
|
|
8419
|
+
"t0629": "Project {{v0}} has no system user yet (home missing: {{v1}}). Finish isolation on the project page.",
|
|
8305
8420
|
"t0630": "project {{v0}} bind_ip={{v1}} — can ( IP )",
|
|
8306
8421
|
"t0631": "project {{v0}} home not path: {{v1}}",
|
|
8307
8422
|
"t0632": "Orphan home on disk (no matching store project): {{v0}}",
|
|
@@ -8718,6 +8833,15 @@
|
|
|
8718
8833
|
"needInstall": "Install {{stack}}",
|
|
8719
8834
|
"needExecute": "YSK_EXECUTE is disabled — cannot install packages or provision Linux users.",
|
|
8720
8835
|
"needRoot": "Not running as root — system useradd and vncserver apply are blocked.",
|
|
8836
|
+
"hostnameResolves": "Hostname {{hostname}} resolves.",
|
|
8837
|
+
"hostnameUnresolvable": "This host cannot resolve its own hostname ({{hostname}}). VNC session start will fail until /etc/hosts is fixed.",
|
|
8838
|
+
"hostnameAlreadyResolves": "Hostname {{hostname}} already resolves — /etc/hosts unchanged.",
|
|
8839
|
+
"hostnameWouldAppend": "Would append to /etc/hosts: {{line}}",
|
|
8840
|
+
"hostnameAppended": "Appended to /etc/hosts: {{line}}",
|
|
8841
|
+
"hostnameAppendFailed": "Could not write /etc/hosts: {{detail}}",
|
|
8842
|
+
"hostnameAliasPresent": "Hostname {{hostname}} is already an exact /etc/hosts alias — not appended again.",
|
|
8843
|
+
"hostnameStillUnresolvable": "Wrote /etc/hosts but {{hostname}} still does not resolve. Confirm nsswitch hosts includes files.",
|
|
8844
|
+
"skipStartHostname": "Did not start the display — fix hostname resolution first.",
|
|
8721
8845
|
"novncAssetsOnly": "noVNC web assets found; websockify binary still missing.",
|
|
8722
8846
|
"viewerNeedExecute": "Starting a local VNC desktop for browser view needs root + YSK_EXECUTE",
|
|
8723
8847
|
"browserSessionReady": "Browser VNC session ready: {{name}}",
|
|
@@ -8904,12 +9028,20 @@
|
|
|
8904
9028
|
"dovecotTitle": "Dovecot TLS points at missing cert",
|
|
8905
9029
|
"dovecot": "Dovecot ssl_cert points at missing {{path}}. Overlay does not rewrite ssl=no. Apply mail TLS after issuing the cert, or apply email stack.",
|
|
8906
9030
|
"overlayDoesNotHeal": "Product overlay does not rewrite nginx, Apache, vsftpd, or Dovecot. Use the listed apply commands (root + YSK_EXECUTE=1).",
|
|
9031
|
+
"executeStaleCli": "Pass --execute (root + YSK_EXECUTE=1) to remove stale CLI bins.",
|
|
9032
|
+
"executeMissingTls": "Pass --execute (root + YSK_EXECUTE=1) to disable missing-cert TLS so vsftpd/Dovecot can start.",
|
|
9033
|
+
"executeGeneric": "Pass --execute (root + YSK_EXECUTE=1) to apply leftover cleanup for the findings above.",
|
|
8907
9034
|
"staleCliRemoved": "Removed leftover CLI {{path}}.",
|
|
8908
9035
|
"staleCliRemoveFailed": "Could not remove leftover CLI {{path}}: {{detail}}",
|
|
8909
9036
|
"vsftpdSslOff": "Set vsftpd ssl_enable=NO because the FTPS certificate file is missing, then restarted vsftpd.",
|
|
8910
9037
|
"dovecotSslOff": "Set Dovecot ssl=no because {{path}} is missing, then restarted Dovecot.",
|
|
8911
9038
|
"readinessTitle": "Host leftovers after overlay",
|
|
8912
|
-
"readinessClean": "No leftover Apache default, missing nginx catch-all, failed vsftpd, or stale CLI detected."
|
|
9039
|
+
"readinessClean": "No leftover Apache default, missing nginx catch-all, failed vsftpd, or stale CLI detected.",
|
|
9040
|
+
"nginxRemoved": "Removed leftover nginx conf {{path}}.",
|
|
9041
|
+
"nginxNotLeftover": "Not a leftover public-files conf — refuse delete.",
|
|
9042
|
+
"nginxUnusedKeep": "000-default is unused, not leftover — not deleted.",
|
|
9043
|
+
"nginxSystemCopy": "System copy still present: {{path}}. Needs YSK_EXECUTE + root to remove.",
|
|
9044
|
+
"nginxReloadFailed": "nginx -t or reload failed after removing {{path}}."
|
|
8913
9045
|
},
|
|
8914
9046
|
"defense": {
|
|
8915
9047
|
"panelReqLabel": "Panel requests / min",
|
|
@@ -9108,6 +9240,7 @@
|
|
|
9108
9240
|
},
|
|
9109
9241
|
"next": {
|
|
9110
9242
|
"pendingOsTitle": "System user not provisioned",
|
|
9243
|
+
"provisionOsAction": "Create system user",
|
|
9111
9244
|
"pendingOsBody": "This project has no isolated system user yet.",
|
|
9112
9245
|
"pendingOsActions": "You can still deploy; full isolation needs admin privileges on the host.",
|
|
9113
9246
|
"deployTitle": "Next: Deploy",
|
|
@@ -9979,6 +10112,8 @@
|
|
|
9979
10112
|
"unban": "Unban",
|
|
9980
10113
|
"ban": "Ban",
|
|
9981
10114
|
"banConfirmTitle": "Ban {{ip}}?",
|
|
10115
|
+
"banConfirmMethod": "Method: {{method}}",
|
|
10116
|
+
"banConfirmUntilUnban": "Stays banned until you unban it (or fail2ban expiry).",
|
|
9982
10117
|
"banConfirmDesc": "This IP will be blocked on the host. Confirm it is not a current panel or session address.",
|
|
9983
10118
|
"wlRemovedUndo": "Removed {{ip}} from the allow list. Undo within 5 seconds.",
|
|
9984
10119
|
"undo": "Undo",
|
|
@@ -10180,7 +10315,11 @@
|
|
|
10180
10315
|
"publicRootNote": "Public root: {{path}}",
|
|
10181
10316
|
"applyConfirmTitle": "Apply public-files site?",
|
|
10182
10317
|
"applyConfirmDesc": "Write Nginx server_name {{name}} and reload Nginx.",
|
|
10183
|
-
"serverNameMismatch": "Live conf uses {{live}}; the form has {{draft}}. Apply to replace."
|
|
10318
|
+
"serverNameMismatch": "Live conf uses {{live}}; the form has {{draft}}. Apply to replace.",
|
|
10319
|
+
"liveName": "Live name",
|
|
10320
|
+
"draftName": "Draft name",
|
|
10321
|
+
"draftUnapplied": "This draft is not applied. Nginx still serves the live name.",
|
|
10322
|
+
"discardDraft": "Discard draft"
|
|
10184
10323
|
},
|
|
10185
10324
|
"rbac": {
|
|
10186
10325
|
"permissions": "Permissions",
|
|
@@ -10512,6 +10651,11 @@
|
|
|
10512
10651
|
"noRequirepass": "Protected mode is on, but requirepass is empty or unread — no password.",
|
|
10513
10652
|
"insecureShort": "No password",
|
|
10514
10653
|
"setRequirepass": "Set password",
|
|
10654
|
+
"generateRequirepass": "Generate and apply password",
|
|
10655
|
+
"generateRequirepassTitle": "Generate a Redis password?",
|
|
10656
|
+
"generateRequirepassDesc": "Writes requirepass and restarts Redis. The password is shown once. Host change needs EXECUTE.",
|
|
10657
|
+
"generateRequirepassDone": "Redis password applied",
|
|
10658
|
+
"generatedOnce": "Generated password (shown once): {{password}}",
|
|
10515
10659
|
"rdbOnlyLossHint": "AOF is off and RDB is on. A restart or crash can lose recent writes.",
|
|
10516
10660
|
"dirDataContainer": "/data (container)",
|
|
10517
10661
|
"dirHostDefault": "/var/lib/redis",
|
|
@@ -11183,6 +11327,8 @@
|
|
|
11183
11327
|
"reauthPassword": "Re-enter password",
|
|
11184
11328
|
"reauthPasswordHint": "Start/reset 2FA requires password again (stolen session protection)",
|
|
11185
11329
|
"reauthPasswordRequired": "Enter your login password first",
|
|
11330
|
+
"needCurrentPassword": "Enter the current password first",
|
|
11331
|
+
"passwordMin8": "New password must be at least 8 characters",
|
|
11186
11332
|
"totpSecretGenerated": "Secret ready — scan the QR or copy the key, then enter the app’s 6-digit code",
|
|
11187
11333
|
"reset2fa": "Reset 2FA",
|
|
11188
11334
|
"start2fa": "Set up 2FA",
|
|
@@ -11656,8 +11802,10 @@
|
|
|
11656
11802
|
"needRunning": "{{label}} is not running",
|
|
11657
11803
|
"restartedOk": "{{label}} restarted",
|
|
11658
11804
|
"reloadedOk": "{{label}} reloaded",
|
|
11805
|
+
"reloadTitle": "Reload {{label}} configuration without a full restart",
|
|
11659
11806
|
"stopNeedConfirm": "Needs confirmation",
|
|
11660
11807
|
"stopNeedConfirmPhrase": "Needs confirmation phrase",
|
|
11808
|
+
"stopNeedConfirmImpact": "Stop {{label}}? Active connections to this service will drop.",
|
|
11661
11809
|
"stopConfirmTitle": "Stop {{label}}?",
|
|
11662
11810
|
"stopConfirmDesc": "{{label}} will stop listening. Start it again from this page when needed.",
|
|
11663
11811
|
"stopConfirmEdgeDesc": "Stopping {{label}} takes sites and reverse-proxy traffic offline until it is started again.",
|
|
@@ -11668,8 +11816,14 @@
|
|
|
11668
11816
|
"stopConfirmSshdConsequence": "New SSH sessions will fail until sshd is started from the host console.",
|
|
11669
11817
|
"stopConfirmPanelTitle": "Stop YSK Server?",
|
|
11670
11818
|
"stopConfirmPanelDesc": "The panel and API will go offline until the unit is started on the host.",
|
|
11819
|
+
"stopConfirmPanelSshdOffDesc": "The panel and API will go offline. sshd is not enabled on boot, so SSH may not be a rescue path after reboot.",
|
|
11820
|
+
"stopConfirmPanelSshdOffConsequence": "sshd is not enabled on boot. After reboot you may have no SSH rescue path.",
|
|
11821
|
+
"ufwNoLifecycle": "UFW is not started or stopped from this matrix.",
|
|
11671
11822
|
"restartConfirmPanelTitle": "Restart YSK Server?",
|
|
11672
11823
|
"restartConfirmPanelDesc": "The panel and API will drop briefly while the unit restarts.",
|
|
11824
|
+
"restartConfirmTitle": "Restart {{label}}?",
|
|
11825
|
+
"restartConfirmDesc": "Restart {{label}} now. Active connections may drop.",
|
|
11826
|
+
"startVerifyFailed": "{{label}} start did not stay healthy.",
|
|
11673
11827
|
"stopConfirmPanelToken": "stop ysk-server",
|
|
11674
11828
|
"stopConfirmPanelConsequence": "This browser session will disconnect. Start the unit from SSH or the host console.",
|
|
11675
11829
|
"stopConfirmFail2banTitle": "Stop fail2ban?",
|
|
@@ -12248,7 +12402,7 @@
|
|
|
12248
12402
|
"optional": "Optional",
|
|
12249
12403
|
"prettyPh": "Friendly display name",
|
|
12250
12404
|
"timezone": "Timezone",
|
|
12251
|
-
"timezoneHint": "
|
|
12405
|
+
"timezoneHint": "IANA zone from timedatectl (e.g. Asia/Hong_Kong). This is the host clock — cron and vsftpd local time follow it. Stored timestamps stay UTC.",
|
|
12252
12406
|
"timezoneNow": "Host time now: {{time}} ({{tz}})",
|
|
12253
12407
|
"timezoneBrowserDiff": "This host uses {{host}}; your browser uses {{browser}}. Changing timezone here changes the host clock, not the browser.",
|
|
12254
12408
|
"timezoneSelect": "Select timezone",
|
|
@@ -12279,6 +12433,7 @@
|
|
|
12279
12433
|
"disable": "Disable panel HTTPS",
|
|
12280
12434
|
"disableNeedConfirm": "Needs confirmation — type DISABLE-HTTPS",
|
|
12281
12435
|
"needDomain": "Enter hostname / domain first",
|
|
12436
|
+
"needFqdn": "Need a FQDN (example.com), not a bare hostname",
|
|
12282
12437
|
"urlHint": "After restart open {{url}}",
|
|
12283
12438
|
"certMissing": "TLS enabled but cert/key files missing",
|
|
12284
12439
|
"restartToApply": "Restart ysk-server to apply HTTPS",
|
|
@@ -12427,7 +12582,11 @@
|
|
|
12427
12582
|
"nginxLeftover": "Leftover",
|
|
12428
12583
|
"nginxUnused": "Unused",
|
|
12429
12584
|
"nginxLeftoverHint": "Stale public-files or leftover conf. Still included in sync until you remove or replace it.",
|
|
12430
|
-
"nginxUnusedHint": "Stock / catch-all conf (000-default). Still included in sync until you act."
|
|
12585
|
+
"nginxUnusedHint": "Stock / catch-all conf (000-default). Still included in sync until you act.",
|
|
12586
|
+
"nginxRemoveLeftover": "Remove leftover",
|
|
12587
|
+
"nginxRemoveLeftoverTitle": "Remove leftover nginx conf?",
|
|
12588
|
+
"nginxRemoveLeftoverDesc": "Deletes {{name}} from the panel inventory. The live /etc/nginx copy is removed only with YSK_EXECUTE + root. 000-default is not leftover and cannot be deleted here.",
|
|
12589
|
+
"needExecuteRoot": "Needs YSK_EXECUTE + root"
|
|
12431
12590
|
},
|
|
12432
12591
|
"systemd": {
|
|
12433
12592
|
"enabled": "Enabled",
|
|
@@ -12800,6 +12959,7 @@
|
|
|
12800
12959
|
"hourAgo": "{{n}}h ago",
|
|
12801
12960
|
"highRiskN": "{{count}} high-risk",
|
|
12802
12961
|
"panelUpdate": "Panel update available",
|
|
12962
|
+
"footerNewVersion": "New version {{version}}",
|
|
12803
12963
|
"riskOk": "Risk manageable",
|
|
12804
12964
|
"riskUnevaluated": "Not evaluated — run Scan + OSV",
|
|
12805
12965
|
"pendingScan": "Awaiting scan",
|
|
@@ -13171,6 +13331,7 @@
|
|
|
13171
13331
|
"tab": {
|
|
13172
13332
|
"nodes": "Nodes",
|
|
13173
13333
|
"disk": "Disk",
|
|
13334
|
+
"stack": "Software",
|
|
13174
13335
|
"about": "About"
|
|
13175
13336
|
},
|
|
13176
13337
|
"empty": {
|
|
@@ -13178,18 +13339,46 @@
|
|
|
13178
13339
|
"desc": "Create a testnet node in a few clicks."
|
|
13179
13340
|
},
|
|
13180
13341
|
"refresh": "Refresh",
|
|
13342
|
+
"software": {
|
|
13343
|
+
"engine": "Docker Engine",
|
|
13344
|
+
"engineDesc": "Validator nodes run as Compose projects. Install Docker here if it is missing. Image prune stays on the Docker page.",
|
|
13345
|
+
"client": "Client",
|
|
13346
|
+
"image": "Image",
|
|
13347
|
+
"present": "Local",
|
|
13348
|
+
"local": "Pulled",
|
|
13349
|
+
"missing": "Not pulled",
|
|
13350
|
+
"size": "Size",
|
|
13351
|
+
"usedBy": "Used by",
|
|
13352
|
+
"unused": "No instance",
|
|
13353
|
+
"pull": "Pull",
|
|
13354
|
+
"pulling": "Pull {{ref}}",
|
|
13355
|
+
"empty": "No pinned client images",
|
|
13356
|
+
"emptyDesc": "The catalog is empty. This should not happen.",
|
|
13357
|
+
"daemonDown": "Docker Engine is not running"
|
|
13358
|
+
},
|
|
13181
13359
|
"disk": {
|
|
13182
13360
|
"title": "Validator disk",
|
|
13183
13361
|
"root": "Data directory",
|
|
13184
13362
|
"free": "Free",
|
|
13185
|
-
"used": "
|
|
13363
|
+
"used": "Validator data",
|
|
13364
|
+
"fsUsed": "Filesystem used",
|
|
13365
|
+
"leftoverTitle": "Leftover data ({{count}})",
|
|
13366
|
+
"leftoverEmpty": "No leftover instance directories",
|
|
13367
|
+
"leftoverDesc": "Directories under the validators root that are not a store instance. Remove only after you confirm they are unused.",
|
|
13368
|
+
"leftoverRemove": "Remove",
|
|
13369
|
+
"leftoverRemoveTitle": "Delete leftover validator data?",
|
|
13370
|
+
"leftoverRemoveDesc": "Permanently delete {{path}} from disk. This is not a listed node.",
|
|
13371
|
+
"browseRoot": "Open in file browser",
|
|
13186
13372
|
"none": "No instance data yet",
|
|
13187
13373
|
"warn": "Disk usage is high (70%+)",
|
|
13188
13374
|
"danger": "Disk usage is critical (85%+)",
|
|
13189
13375
|
"autoClear": "Auto-clear the largest stopped instance when disk is critical (off by default)",
|
|
13190
13376
|
"autoClearRisk": "Destructive: the largest stopped instance is deleted without a further prompt. Default is off. Check audit / logs after it fires.",
|
|
13191
13377
|
"autoClearConfirmTitle": "Enable auto-clear?",
|
|
13192
|
-
"autoClearC1": "When disk is critical, the largest stopped instance is deleted without asking again."
|
|
13378
|
+
"autoClearC1": "When disk is critical, the largest stopped instance is deleted without asking again.",
|
|
13379
|
+
"autoClearThreshold": "Trigger: filesystem use at or above 85%.",
|
|
13380
|
+
"autoClearCandidate": "Current candidate: {{id}}",
|
|
13381
|
+
"autoClearNone": "No stopped instance is a candidate right now."
|
|
13193
13382
|
},
|
|
13194
13383
|
"chain": {
|
|
13195
13384
|
"eth": "Ethereum",
|
|
@@ -13224,6 +13413,14 @@
|
|
|
13224
13413
|
"validator-ready": "Validator-ready",
|
|
13225
13414
|
"rpc": "RPC"
|
|
13226
13415
|
},
|
|
13416
|
+
"profileHelp": {
|
|
13417
|
+
"title": "Profiles",
|
|
13418
|
+
"desc": "The four choices on wizard step 3 are mainly disk budget and role. Each chain shows its recommended size in the wizard. The panel never holds staking keys.",
|
|
13419
|
+
"minimal": "Smallest disk. Use for testnets or a first install. Not a full history, and not for a live staking validator.",
|
|
13420
|
+
"pruned": "Keeps recent chain state and drops older blocks (Pruned). More disk than Minimal, less than a full node. Use to follow the tip long-term.",
|
|
13421
|
+
"validatorReady": "Reserves more disk so you can later attest or propose as a validator. Generate keys offline yourself. Being offline or misconfigured can lose stake.",
|
|
13422
|
+
"rpc": "For this host or other services to query the chain. RPC listens on 127.0.0.1 by default and is not published to the internet."
|
|
13423
|
+
},
|
|
13227
13424
|
"col": {
|
|
13228
13425
|
"id": "ID",
|
|
13229
13426
|
"chain": "Chain",
|
|
@@ -13233,7 +13430,7 @@
|
|
|
13233
13430
|
"disk": "Disk"
|
|
13234
13431
|
},
|
|
13235
13432
|
"cli": {
|
|
13236
|
-
"usage": "Usage: ysk-server validators list|chains|disk|get|status|logs|create|start|stop|restart|clear|upgrade|policy|mithril|prune|switch-network|snapshot|compose|settings [--chain C] [--network N] [--profile P] [--el EL] [--cl CL] [--data-path P] [--rpc-port N] [--id ID] [--upgrade POLICY] [--confirm TOKEN] [--execute] [--json]"
|
|
13433
|
+
"usage": "Usage: ysk-server validators list|chains|disk|get|status|logs|create|start|stop|restart|clear|upgrade|policy|mithril|prune|switch-network|snapshot|compose|settings [--chain C] [--network N] [--profile P] [--el EL] [--cl CL] [--data-path P] [--rpc-port N] [--id ID] [--upgrade POLICY] [--confirm TOKEN] [--accept-low-disk] [--execute] [--json]"
|
|
13237
13434
|
},
|
|
13238
13435
|
"clients": {
|
|
13239
13436
|
"el": "Execution client",
|
|
@@ -13299,7 +13496,8 @@
|
|
|
13299
13496
|
"snapshotNear": "Wiped NEAR data; compose will re-init official genesis and epoch sync",
|
|
13300
13497
|
"nativePrune": "Ran the client-native prune command",
|
|
13301
13498
|
"dryDelete": "Delete is dry-run. Pass --execute and YSK_EXECUTE=1.",
|
|
13302
|
-
"deleted": "Node deleted"
|
|
13499
|
+
"deleted": "Node deleted",
|
|
13500
|
+
"leftoverRemoved": "Removed leftover {{path}}"
|
|
13303
13501
|
},
|
|
13304
13502
|
"create": "Create node",
|
|
13305
13503
|
"wizard": {
|
|
@@ -13311,12 +13509,25 @@
|
|
|
13311
13509
|
"stepSummary": "Summary",
|
|
13312
13510
|
"needDocker": "Docker Engine is not installed. Install it first — this button stays disabled.",
|
|
13313
13511
|
"diskNeed": "This profile needs about {{need}} · free {{free}}",
|
|
13512
|
+
"diskNeedNetwork": "Default (Minimal) for this network needs about {{need}} · free {{free}}",
|
|
13513
|
+
"profileHint": {
|
|
13514
|
+
"minimal": "Smallest sync — light disk, not for staking.",
|
|
13515
|
+
"pruned": "Keeps recent history only (Pruned). Smaller than archive, still usable for RPC.",
|
|
13516
|
+
"validator-ready": "Sized for a staking validator. Needs more disk than Minimal.",
|
|
13517
|
+
"rpc": "Public RPC node — not a staking validator."
|
|
13518
|
+
},
|
|
13314
13519
|
"diskShort": "Not enough free disk for this chain / network / profile",
|
|
13520
|
+
"diskShortDetail": "Need {{need}} · free {{free}} · short {{short}}",
|
|
13521
|
+
"needCustomPath": "Enter an absolute data path",
|
|
13522
|
+
"previewId": "Node id",
|
|
13523
|
+
"previewCompose": "Compose project",
|
|
13524
|
+
"profileSeeAbout": "What each profile means is on the About tab.",
|
|
13315
13525
|
"back": "Back",
|
|
13316
13526
|
"next": "Next",
|
|
13317
13527
|
"install": "Install",
|
|
13318
13528
|
"mainnetWarn": "Mainnet needs a lot of free disk (ETH often 800 GiB+). Testnet is recommended.",
|
|
13319
|
-
"mainnetAck": "I understand
|
|
13529
|
+
"mainnetAck": "Create the mainnet node. I understand it needs a lot of disk, and a staking validator can lose stake if it is offline or misconfigured.",
|
|
13530
|
+
"lowDiskAcked": "Free disk is below the recommended size. You confirmed create anyway; sync may stop if the disk fills.",
|
|
13320
13531
|
"heavyWarn": "This chain is heavy (large disk and high IOPS). Mainnet Solana typically needs 2 TiB+.",
|
|
13321
13532
|
"memory": "Memory limit",
|
|
13322
13533
|
"cpus": "CPU limit",
|
|
@@ -13328,7 +13539,14 @@
|
|
|
13328
13539
|
"installConfirmTitle": "Install this node?",
|
|
13329
13540
|
"installConfirmDesc": "{{chain}} · {{network}} · {{profile}}. About {{disk}} of disk. The image pull can take a long time.",
|
|
13330
13541
|
"installC1": "Several gigabytes of images may be downloaded.",
|
|
13331
|
-
"installC2": "You can cancel the panel task; already-pulled images are not deleted automatically."
|
|
13542
|
+
"installC2": "You can cancel the panel task; already-pulled images are not deleted automatically.",
|
|
13543
|
+
"dockerAbout": "Docker Engine is required to install and start nodes.",
|
|
13544
|
+
"dockerAboutOk": "Docker Engine is installed.",
|
|
13545
|
+
"dockerAboutMissing": "Docker Engine is not installed. Open Docker to install it.",
|
|
13546
|
+
"rewriteCompose": "Rewrite compose",
|
|
13547
|
+
"rewriteComposeTitle": "Rewrite compose.yml from the current adapter?",
|
|
13548
|
+
"rewriteComposeDesc": "Overwrites the generated compose for {{id}} using the shipped flags for this chain.",
|
|
13549
|
+
"chainMeta": "{{disk}} min · {{clients}} clients"
|
|
13332
13550
|
},
|
|
13333
13551
|
"actions": {
|
|
13334
13552
|
"detail": "Details",
|
|
@@ -13425,6 +13643,7 @@
|
|
|
13425
13643
|
"state": {
|
|
13426
13644
|
"unknown": "Unknown",
|
|
13427
13645
|
"stopped": "Stopped",
|
|
13646
|
+
"starting": "Starting",
|
|
13428
13647
|
"running": "Running",
|
|
13429
13648
|
"syncing": "Syncing",
|
|
13430
13649
|
"error": "Error"
|
|
@@ -13605,6 +13824,13 @@
|
|
|
13605
13824
|
"start": "Start",
|
|
13606
13825
|
"stop": "Stop",
|
|
13607
13826
|
"startAfterCreate": "Start after create",
|
|
13827
|
+
"hostnameBroken": "This host cannot resolve its own hostname ({{hostname}}). Session start will fail.",
|
|
13828
|
+
"hostnameBrokenIdle": "No VNC sessions yet. Hostname {{hostname}} does not resolve — you can write /etc/hosts later if you create a session.",
|
|
13829
|
+
"hostnameFix": "Write hostname to /etc/hosts",
|
|
13830
|
+
"hostnameFixTitle": "Append this line to /etc/hosts?",
|
|
13831
|
+
"hostnameFixDesc": "{{line}}",
|
|
13832
|
+
"hostnameFixDone": "Hostname /etc/hosts updated",
|
|
13833
|
+
"startAfterCreateBlocked": "Disabled until the hostname resolves",
|
|
13608
13834
|
"colName": "Name",
|
|
13609
13835
|
"colLinuxUser": "Linux user",
|
|
13610
13836
|
"colDisplay": "Display / port",
|