chore(i18n): gocryptfs + ruh-vpn init

This commit is contained in:
Lemmy
2026-08-09 21:09:59 -04:00
parent f59badc8d5
commit 2010b199f0
2 changed files with 182 additions and 182 deletions
+103 -103
View File
@@ -1,81 +1,47 @@
{ {
"title": "Gocryptfs", "actions": {
"settings": { "add": "Add",
"refresh_interval": { "cancel": "Cancel",
"label": "Refresh interval (seconds)", "close": "Close",
"description": "How often the service rechecks mount status." "edit": "Edit",
}, "forget": "Forget",
"notify_on_action": { "init": "Init",
"label": "Notify on mount/unmount", "mount": "Mount",
"description": "Show a notification when a volume mounts or unmounts." "open": "Open",
}, "refresh": "Refresh",
"create_mountpoint": { "remember": "Remember",
"label": "Create mount points", "remove": "Remove",
"description": "Create the mount directory if it does not exist before mounting." "save": "Save",
}, "unmount": "Unmount"
"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."
}
}, },
"colors": { "colors": {
"default": "Default", "default": "Default",
"error": "Error",
"muted": "Muted",
"primary": "Primary", "primary": "Primary",
"secondary": "Secondary", "secondary": "Secondary",
"tertiary": "Tertiary", "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…"
}, },
"panel": { "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", "add_title": "Add existing volume",
"automount_hint": "Auto-mount",
"busy": "Working…",
"cipher": "Cipher: {path}",
"edit_title": "Edit volume", "edit_title": "Edit volume",
"init_title": "Initialize new volume", "empty": "No volumes yet. Initialize a new volume or add an existing one.",
"init_help": "Runs gocryptfs -init on the cipher directory, then registers it for mounting.",
"field": { "field": {
"name": "Name", "aessiv": "AES-SIV encryption (-aessiv)",
"name_placeholder": "Documents", "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": "Cipher directory",
"cipher_placeholder": "~/Encrypted/docs", "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": "Mount point",
"mount_placeholder": "~/Private/docs", "mount_placeholder": "~/Private/docs",
"keyring_section": "Password (desktop keyring)", "name": "Name",
"name_placeholder": "Documents",
"passfile": "Passfile path (optional, advanced)", "passfile": "Passfile path (optional, advanced)",
"passfile_placeholder": "Leave empty — prefer desktop keyring", "passfile_placeholder": "Leave empty — prefer desktop keyring",
"password": "Password", "password": "Password",
@@ -83,58 +49,92 @@
"password_confirm_placeholder": "Re-enter password", "password_confirm_placeholder": "Re-enter password",
"password_mismatch": "Passwords do not match.", "password_mismatch": "Passwords do not match.",
"plaintextnames": "Plaintext file names (-plaintextnames)", "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)", "read_only": "Read-only (-ro)",
"required": "Name, cipher directory, and mount point are required.", "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": { "init_help": "Runs gocryptfs -init on the cipher directory, then registers it for mounting.",
"mounted": "Mounted", "init_title": "Initialize new volume",
"unmounted": "Unmounted", "keyring_help": "Saved in your desktop keyring (survives reboot when unlocked) and cached for this login. No password file under plugin data.",
"unknown": "Unknown" "keyring_hint": "Password in keyring",
}, "keyring_label": "Volume password (desktop keyring + session cache)",
"cipher": "Cipher: {path}", "keyring_not_set": "No remembered password for this volume.",
"keyring_title": "Remember password for {name}",
"loading": "Checking mounts…",
"mountpoint": "Mount: {path}", "mountpoint": "Mount: {path}",
"passfile_hint": "Using passfile", "passfile_hint": "Using passfile",
"keyring_hint": "Password in keyring", "password_label": "Password",
"automount_hint": "Auto-mount" "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"
}, },
"actions": { "subtitle": "Encrypted volumes",
"mount": "Mount", "updated": "Updated {time}"
"unmount": "Unmount",
"open": "Open",
"refresh": "Refresh",
"add": "Add",
"init": "Init",
"edit": "Edit",
"remove": "Remove",
"remember": "Remember",
"forget": "Forget",
"save": "Save",
"cancel": "Cancel",
"close": "Close"
}, },
"result": { "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}", "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.", "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.", "not_mounted": "{name} is not mounted.",
"removed": "Removed {name}", "removed": "Removed {name}",
"saved": "Saved {name}", "saved": "Saved {name}",
"keyring_saved": "Password for {name} saved in desktop keyring", "success": "Done",
"keyring_forgotten": "Keyring password cleared for {name}" "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"
} }
} }
+76 -76
View File
@@ -1,107 +1,107 @@
{ {
"title": "VPN",
"action": { "action": {
"start": "Start",
"stop": "Stop",
"add": "Add", "add": "Add",
"save": "Save", "confirm": "Confirm",
"delete": "Delete", "delete": "Delete",
"run-test": "Run test",
"reset": "Reset", "reset": "Reset",
"confirm": "Confirm" "run-test": "Run test",
}, "save": "Save",
"panel": { "start": "Start",
"routing": "Routing", "stop": "Stop"
"via": "Via",
"servers": "Servers",
"no-servers": "No servers configured",
"starting": "Starting backend…",
"connected": "Connected",
"disconnected": "Disconnected",
"fallback-server-name": "Server"
}, },
"editor": { "editor": {
"new": "New server",
"edit": "Edit server",
"protocol": "Protocol",
"name": "Name",
"host": "Host",
"port": "Port",
"user": "User",
"password": "Password",
"keyfile": "Key file",
"address": "Address", "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", "alterid": "alterId",
"method": "Method",
"country": "Country code (for the flag)", "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": { "error": {
"title": "Routing & rules", "clipboard": "Clipboard is empty",
"killswitch": "Kill switch", "no-server": "No server selected"
"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"
}, },
"logs": { "logs": {
"title": "Logs", "empty": "No logs yet",
"empty": "No logs yet" "title": "Logs"
},
"shortcut": {
"on": "VPN On",
"off": "VPN Off"
}, },
"notice": { "notice": {
"tun": "TUN mode may prompt for administrator rights" "tun": "TUN mode may prompt for administrator rights"
}, },
"error": { "panel": {
"no-server": "No server selected", "connected": "Connected",
"clipboard": "Clipboard is empty" "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": { "settings": {
"auto_start": {
"description": "Connect the active server automatically when the plugin loads",
"label": "Auto-connect on start"
},
"backend_python": { "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": { "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": { "show_ping": {
"label": "Show ping in bar" "label": "Show ping in bar"
}, },
"show_traffic": { "show_traffic": {
"label": "Show traffic in bar" "label": "Show traffic in bar"
}
}, },
"auto_start": { "shortcut": {
"label": "Auto-connect on start", "off": "VPN Off",
"description": "Connect the active server automatically when the plugin loads" "on": "VPN On"
}, },
"geoip_country": { "subs": {
"label": "Detect server country", "name": "Name (optional)",
"description": "Look up each server's country by IP to show its flag. Sends the server address to api.country.is." "none": "No subscriptions",
} "title": "Subscriptions"
} },
"title": "VPN"
} }