From 2010b199f042eca7c2dd652c32f4177eaa9f2c6e Mon Sep 17 00:00:00 2001 From: Lemmy Date: Sun, 9 Aug 2026 21:09:59 -0400 Subject: [PATCH] chore(i18n): gocryptfs + ruh-vpn init --- gocryptfs/translations/en.json | 208 ++++++++++++++++----------------- ruh-vpn/translations/en.json | 156 ++++++++++++------------- 2 files changed, 182 insertions(+), 182 deletions(-) diff --git a/gocryptfs/translations/en.json b/gocryptfs/translations/en.json index 1373d26..d6139cf 100644 --- a/gocryptfs/translations/en.json +++ b/gocryptfs/translations/en.json @@ -1,81 +1,47 @@ { - "title": "Gocryptfs", - "settings": { - "refresh_interval": { - "label": "Refresh interval (seconds)", - "description": "How often the service rechecks mount status." - }, - "notify_on_action": { - "label": "Notify on mount/unmount", - "description": "Show a notification when a volume mounts or unmounts." - }, - "create_mountpoint": { - "label": "Create mount points", - "description": "Create the mount directory if it does not exist before mounting." - }, - "auto_mount": { - "label": "Auto-mount on login", - "description": "When Noctalia starts, mount volumes that have auto-mount enabled and a keyring password or passfile." - }, - "show_count": { - "label": "Show mounted count", - "description": "Display mounted/total on the bar widget." - }, - "glyph_color": { - "label": "Icon color", - "description": "Color of the lock icon when gocryptfs is available." - }, - "mounted_color": { - "label": "Mounted indicator", - "description": "Status-dot color when at least one volume is mounted." - }, - "unmounted_color": { - "label": "Unmounted indicator", - "description": "Status-dot color when nothing is mounted." - } + "actions": { + "add": "Add", + "cancel": "Cancel", + "close": "Close", + "edit": "Edit", + "forget": "Forget", + "init": "Init", + "mount": "Mount", + "open": "Open", + "refresh": "Refresh", + "remember": "Remember", + "remove": "Remove", + "save": "Save", + "unmount": "Unmount" }, "colors": { "default": "Default", + "error": "Error", + "muted": "Muted", "primary": "Primary", "secondary": "Secondary", - "tertiary": "Tertiary", - "error": "Error", - "muted": "Muted" - }, - "widget": { - "tooltip": "{mounted} of {total} mounted", - "tooltip_none": "No volumes configured", - "unavailable": "gocryptfs is not installed", - "refresh_requested": "Refreshing volume status…" + "tertiary": "Tertiary" }, "panel": { - "subtitle": "Encrypted volumes", - "empty": "No volumes yet. Initialize a new volume or add an existing one.", - "loading": "Checking mounts…", - "busy": "Working…", - "select_hint": "Select a volume to manage it.", - "updated": "Updated {time}", - "password_title": "Password for {name}", - "password_label": "Password", - "password_placeholder": "Volume password", - "password_required": "Password is required.", - "keyring_title": "Remember password for {name}", - "keyring_label": "Volume password (desktop keyring + session cache)", - "keyring_help": "Saved in your desktop keyring (survives reboot when unlocked) and cached for this login. No password file under plugin data.", - "keyring_not_set": "No remembered password for this volume.", - "remember_keyring": "Also remember in keyring (desktop + this login)", "add_title": "Add existing volume", + "automount_hint": "Auto-mount", + "busy": "Working…", + "cipher": "Cipher: {path}", "edit_title": "Edit volume", - "init_title": "Initialize new volume", - "init_help": "Runs gocryptfs -init on the cipher directory, then registers it for mounting.", + "empty": "No volumes yet. Initialize a new volume or add an existing one.", "field": { - "name": "Name", - "name_placeholder": "Documents", + "aessiv": "AES-SIV encryption (-aessiv)", + "allow_other": "Allow other users (-allow_other)", + "auto_mount": "Auto-mount on login", + "auto_mount_help": "Requires a remembered keyring password or advanced passfile. Global auto-mount must also be on. Desktop keyring must unlock after login for reboot-safe auto-mount.", "cipher": "Cipher directory", "cipher_placeholder": "~/Encrypted/docs", + "duplicate": "A volume with that cipher directory or mount point already exists.", + "keyring_section": "Password (desktop keyring)", "mount": "Mount point", "mount_placeholder": "~/Private/docs", - "keyring_section": "Password (desktop keyring)", + "name": "Name", + "name_placeholder": "Documents", "passfile": "Passfile path (optional, advanced)", "passfile_placeholder": "Leave empty — prefer desktop keyring", "password": "Password", @@ -83,58 +49,92 @@ "password_confirm_placeholder": "Re-enter password", "password_mismatch": "Passwords do not match.", "plaintextnames": "Plaintext file names (-plaintextnames)", - "aessiv": "AES-SIV encryption (-aessiv)", - "save_passfile": "Remember password in keyring (desktop + this login)", - "auto_mount": "Auto-mount on login", - "auto_mount_help": "Requires a remembered keyring password or advanced passfile. Global auto-mount must also be on. Desktop keyring must unlock after login for reboot-safe auto-mount.", - "allow_other": "Allow other users (-allow_other)", "read_only": "Read-only (-ro)", "required": "Name, cipher directory, and mount point are required.", - "duplicate": "A volume with that cipher directory or mount point already exists." + "save_passfile": "Remember password in keyring (desktop + this login)" }, - "status": { - "mounted": "Mounted", - "unmounted": "Unmounted", - "unknown": "Unknown" - }, - "cipher": "Cipher: {path}", + "init_help": "Runs gocryptfs -init on the cipher directory, then registers it for mounting.", + "init_title": "Initialize new volume", + "keyring_help": "Saved in your desktop keyring (survives reboot when unlocked) and cached for this login. No password file under plugin data.", + "keyring_hint": "Password in keyring", + "keyring_label": "Volume password (desktop keyring + session cache)", + "keyring_not_set": "No remembered password for this volume.", + "keyring_title": "Remember password for {name}", + "loading": "Checking mounts…", "mountpoint": "Mount: {path}", "passfile_hint": "Using passfile", - "keyring_hint": "Password in keyring", - "automount_hint": "Auto-mount" - }, - "actions": { - "mount": "Mount", - "unmount": "Unmount", - "open": "Open", - "refresh": "Refresh", - "add": "Add", - "init": "Init", - "edit": "Edit", - "remove": "Remove", - "remember": "Remember", - "forget": "Forget", - "save": "Save", - "cancel": "Cancel", - "close": "Close" + "password_label": "Password", + "password_placeholder": "Volume password", + "password_required": "Password is required.", + "password_title": "Password for {name}", + "remember_keyring": "Also remember in keyring (desktop + this login)", + "select_hint": "Select a volume to manage it.", + "status": { + "mounted": "Mounted", + "unknown": "Unknown", + "unmounted": "Unmounted" + }, + "subtitle": "Encrypted volumes", + "updated": "Updated {time}" }, "result": { - "success": "Done", - "failed": "Failed: {error}", - "busy": "Another operation is already running.", - "gocryptfs_missing": "gocryptfs is not on PATH. Install gocryptfs and try again.", - "mounted": "Mounted {name}", - "unmounted": "Unmounted {name}", - "initialized": "Initialized and saved {name}", "already_initialized": "Already a gocryptfs volume: {path}", - "not_found": "Volume not found.", - "cipher_missing": "Cipher directory does not exist: {path}", - "mount_create_failed": "Could not create mount point: {path}", "already_mounted": "{name} is already mounted.", + "busy": "Another operation is already running.", + "cipher_missing": "Cipher directory does not exist: {path}", + "failed": "Failed: {error}", + "gocryptfs_missing": "gocryptfs is not on PATH. Install gocryptfs and try again.", + "initialized": "Initialized and saved {name}", + "keyring_forgotten": "Keyring password cleared for {name}", + "keyring_saved": "Password for {name} saved in desktop keyring", + "mount_create_failed": "Could not create mount point: {path}", + "mounted": "Mounted {name}", + "not_found": "Volume not found.", "not_mounted": "{name} is not mounted.", "removed": "Removed {name}", "saved": "Saved {name}", - "keyring_saved": "Password for {name} saved in desktop keyring", - "keyring_forgotten": "Keyring password cleared for {name}" + "success": "Done", + "unmounted": "Unmounted {name}" + }, + "settings": { + "auto_mount": { + "description": "When Noctalia starts, mount volumes that have auto-mount enabled and a keyring password or passfile.", + "label": "Auto-mount on login" + }, + "create_mountpoint": { + "description": "Create the mount directory if it does not exist before mounting.", + "label": "Create mount points" + }, + "glyph_color": { + "description": "Color of the lock icon when gocryptfs is available.", + "label": "Icon color" + }, + "mounted_color": { + "description": "Status-dot color when at least one volume is mounted.", + "label": "Mounted indicator" + }, + "notify_on_action": { + "description": "Show a notification when a volume mounts or unmounts.", + "label": "Notify on mount/unmount" + }, + "refresh_interval": { + "description": "How often the service rechecks mount status.", + "label": "Refresh interval (seconds)" + }, + "show_count": { + "description": "Display mounted/total on the bar widget.", + "label": "Show mounted count" + }, + "unmounted_color": { + "description": "Status-dot color when nothing is mounted.", + "label": "Unmounted indicator" + } + }, + "title": "Gocryptfs", + "widget": { + "refresh_requested": "Refreshing volume status…", + "tooltip": "{mounted} of {total} mounted", + "tooltip_none": "No volumes configured", + "unavailable": "gocryptfs is not installed" } } diff --git a/ruh-vpn/translations/en.json b/ruh-vpn/translations/en.json index 02b0b7f..372d366 100644 --- a/ruh-vpn/translations/en.json +++ b/ruh-vpn/translations/en.json @@ -1,107 +1,107 @@ { - "title": "VPN", "action": { - "start": "Start", - "stop": "Stop", "add": "Add", - "save": "Save", + "confirm": "Confirm", "delete": "Delete", - "run-test": "Run test", "reset": "Reset", - "confirm": "Confirm" - }, - "panel": { - "routing": "Routing", - "via": "Via", - "servers": "Servers", - "no-servers": "No servers configured", - "starting": "Starting backend…", - "connected": "Connected", - "disconnected": "Disconnected", - "fallback-server-name": "Server" + "run-test": "Run test", + "save": "Save", + "start": "Start", + "stop": "Stop" }, "editor": { - "new": "New server", - "edit": "Edit server", - "protocol": "Protocol", - "name": "Name", - "host": "Host", - "port": "Port", - "user": "User", - "password": "Password", - "keyfile": "Key file", "address": "Address", - "uuid": "UUID", - "transport": "Transport", - "security": "Security", - "sni": "SNI", - "flow": "Flow", - "pbk": "Public key (pbk)", - "sid": "Short ID (sid)", - "fp": "Fingerprint", - "path": "Path", - "wshost": "WS/HTTP Host", "alterid": "alterId", - "method": "Method", "country": "Country code (for the flag)", - "keep": "leave empty to keep current" + "edit": "Edit server", + "flow": "Flow", + "fp": "Fingerprint", + "host": "Host", + "keep": "leave empty to keep current", + "keyfile": "Key file", + "method": "Method", + "name": "Name", + "new": "New server", + "password": "Password", + "path": "Path", + "pbk": "Public key (pbk)", + "port": "Port", + "protocol": "Protocol", + "security": "Security", + "sid": "Short ID (sid)", + "sni": "SNI", + "transport": "Transport", + "user": "User", + "uuid": "UUID", + "wshost": "WS/HTTP Host" }, - "rules": { - "title": "Routing & rules", - "killswitch": "Kill switch", - "killswitch-desc": "Block all traffic when the proxy is down", - "presets": "Country presets", - "custom": "Custom rules", - "none": "No custom rules", - "dns-check": "Check DNS", - "dns-hint": "DNS leak not checked yet", - "dns-leak": "DNS leak", - "dns-ok": "No DNS leak", - "reset-servers": "Reset all servers", - "reset-servers-desc": "Remove every server. Rules and settings stay." - }, - "subs": { - "title": "Subscriptions", - "name": "Name (optional)", - "none": "No subscriptions" + "error": { + "clipboard": "Clipboard is empty", + "no-server": "No server selected" }, "logs": { - "title": "Logs", - "empty": "No logs yet" - }, - "shortcut": { - "on": "VPN On", - "off": "VPN Off" + "empty": "No logs yet", + "title": "Logs" }, "notice": { "tun": "TUN mode may prompt for administrator rights" }, - "error": { - "no-server": "No server selected", - "clipboard": "Clipboard is empty" + "panel": { + "connected": "Connected", + "disconnected": "Disconnected", + "fallback-server-name": "Server", + "no-servers": "No servers configured", + "routing": "Routing", + "servers": "Servers", + "starting": "Starting backend…", + "via": "Via" + }, + "rules": { + "custom": "Custom rules", + "dns-check": "Check DNS", + "dns-hint": "DNS leak not checked yet", + "dns-leak": "DNS leak", + "dns-ok": "No DNS leak", + "killswitch": "Kill switch", + "killswitch-desc": "Block all traffic when the proxy is down", + "none": "No custom rules", + "presets": "Country presets", + "reset-servers": "Reset all servers", + "reset-servers-desc": "Remove every server. Rules and settings stay.", + "title": "Routing & rules" }, "settings": { + "auto_start": { + "description": "Connect the active server automatically when the plugin loads", + "label": "Auto-connect on start" + }, "backend_python": { - "label": "Backend Python", - "description": "Python 3 executable with the backend dependencies installed" + "description": "Python 3 executable with the backend dependencies installed", + "label": "Backend Python" }, "control_port": { - "label": "Control port", - "description": "Localhost port for the backend HTTP control API" + "description": "Localhost port for the backend HTTP control API", + "label": "Control port" + }, + "geoip_country": { + "description": "Look up each server's country by IP to show its flag. Sends the server address to api.country.is.", + "label": "Detect server country" }, "show_ping": { "label": "Show ping in bar" }, "show_traffic": { "label": "Show traffic in bar" - }, - "auto_start": { - "label": "Auto-connect on start", - "description": "Connect the active server automatically when the plugin loads" - }, - "geoip_country": { - "label": "Detect server country", - "description": "Look up each server's country by IP to show its flag. Sends the server address to api.country.is." } - } -} \ No newline at end of file + }, + "shortcut": { + "off": "VPN Off", + "on": "VPN On" + }, + "subs": { + "name": "Name (optional)", + "none": "No subscriptions", + "title": "Subscriptions" + }, + "title": "VPN" +}