{ "apps": { "title": "My Apps" }, "main": { "offline": "Cloudron is offline. Reconnecting…", "logout": "Logout", "dialog": { "cancel": "Cancel", "save": "Save", "close": "Close", "no": "No", "yes": "Yes" }, "username": "Username", "displayName": "Display name", "actions": "Actions", "table": { "actions": "Actions", "date": "Date" }, "pagination": { "prev": "prev", "next": "next", "perPageSelector": "Show {{ n }} per page" }, "action": { "reboot": "Reboot", "logs": "Logs" } }, "appstore": { "title": "App Store" }, "users": { "title": "Users" }, "profile": { "title": "Profile", "changeAvatar": { "title": "Change Your Avatar", "useGravatar": "Use Gravatar", "useCustomPicture": "Use Custom Picture" }, "primaryEmail": "Primary email", "passwordRecoveryEmail": "Password recovery email", "language": "Language", "changePassword": { "title": "Change your password", "currentPassword": "Current password", "newPassword": "New password", "newPasswordRepeat": "Repeat new password", "errorPasswordRequired": "A password is required", "errorPasswordsDontMatch": "Passwords don't match", "errorPasswordInvalid": "Password must be at least 8 and at most 265 characters" }, "disable2FA": { "title": "Disable Two-Factor Authentication", "password": "Password", "disable": "Disable" }, "enable2FA": { "title": "Enable Two-Factor Authentication", "description": "Your Cloudron Administrator has required all members to enable two-factor authentication. You will be unable to access the dashboard until you enable 2FA.", "authenticatorAppDescription": "Use Google Authenticator (Android, iOS), FreeOTP authenticator (Android, iOS) or a similar TOTP app to scan the secret.", "token": "Token", "enable": "Enable", "setup2FA": "Setup Two-Factor" }, "appPasswords": { "title": "App Passwords", "app": "App", "name": "Name", "noPasswordsPlaceholder": "No App Passwords created", "description": "App passwords are a security measure to protect your Cloudron user account. If you need to access a Cloudron app from an untrusted mobile app or client, you can log in with your username and the alternate password generated here.", "newPassword": "New Password", "deletePasswordTooltip": "Delete Password" }, "apiTokens": { "title": "API Tokens", "newApiToken": "New API Token", "name": "Name", "expiresAt": "Expires At", "description": "Use these personal access tokens to authenticate to the Cloudron API", "noTokensPlaceholder": "No API Tokens created", "revokeTokenTooltip": "Revoke Token" }, "loginTokens": { "title": "Login Tokens", "description": "You have {{ webadminTokens.length }} active web token(s) and {{ cliTokens.length }} CLI token(s).", "logoutAll": "Logout From All" }, "changeEmail": { "title": "Change primary email address", "errorEmailInvalid": "The Email address is not valid", "errorEmailRequired": "A valid email address is required" }, "changeFallbackEmail": { "title": "Change password recovery email address", "errorEmailRequired": "A valid email address is required", "errorEmailInvalid": "The Email address is not valid" }, "changeDisplayName": { "title": "Change your display name", "label": "Display name", "errorNameInvalid": "This display name is not valid", "errorDisplayNameRequired": "A valid display name is required" }, "createAppPassword": { "title": "Create App Password", "name": "Password Name", "errorNameRequired": "A name is required", "app": "App", "description": "Use the following password to authenticate against the app:", "copyNow": "Please copy the password now. It won't be shown again for security purposes.", "generatePassword": "Generate Password" }, "createApiToken": { "title": "Create API Token", "name": "API Token Name", "errorNameRequired": "A name is required", "description": "New API token:", "copyNow": "Please copy the API token now. It won't be shown again for security purposes.", "generateToken": "Generate API Token" } }, "backups": { "title": "Backups", "location": { "title": "Location", "description": "Cloudron makes a complete backup of your system at the configured location.", "disabledList": "The following apps have automatic backups disabled:", "provider": "Provider", "location": "Location", "endpoint": "Endpoint", "format": "Storage Format", "configure": "Configure" }, "schedule": { "title": "Schedule and Retention", "description": "Cloudron makes a complete backup of your system based on this scheduled interval and keeps backups with the specified retention policy.", "schedule": "Schedule", "retentionPolicy": "Retention Policy", "configure": "Configure" }, "listing": { "title": "Listing", "noBackups": "No backups have been made yet", "contents": "Contents", "version": "Version", "noApps": "No apps", "appCount": "{{ contents.length }} apps", "tooltipDownloadBackupConfig": "Download Backup Configuration", "cleanupBackups": "Cleanup Backups", "backupNow": "Backup now", "stopTask": "Stop {{ taskType === 'backup' ? 'Backup' : 'Cleanup' }}" }, "logs": { "title": "Logs", "description": "Please be careful when uploading these logs to a public server since they may contain sensitive information.", "showLogs": "Show Logs" }, "backupDetails": { "title": "Backup Details", "id": "Id", "date": "Date", "version": "Version", "format": "Format", "list": "References backups of {{ backup.contents.length }} apps" }, "backupFailed": { "title": "Unable to create backup" }, "cleanupBackups": { "title": "Cleanup Backups", "description": "Backups are automatically cleaned up daily based on the retention policy. This action will trigger an immediate removal of backups.", "cleanupNow": "Cleanup now" }, "configureBackupSchedule": { "title": "Configure Backup Schedule and Retention", "schedule": "Schedule", "scheduleDescription": "Select the days and hours during which Cloudron will backup. Please take care to not overlap this schedule with the update schedule.", "days": "Days", "hours": "Hours", "retentionPolicy": "Retention Policy" }, "configureBackupStorage": { "title": "Configure Backup Storage", "provider": "Storage provider", "noopNote": "This option breaks the backup and restore functionality of Cloudron and should only be used for testing. Please make sure the server is completely backed up using alternate means.", "mountPoint": "Mount point", "mountPointDescription": "The mount point has to be setup manually. See docs.", "localDirectory": "Local backup directory", "ext4Label": "Backup directory is an external EXT4 Disk", "hardlinksLabel": "Use hardlinks", "s3Endpoint": "Endpoint", "acceptSelfSignedCerts": "Accept Self-signed certificate", "bucketName": "Bucket name", "prefix": "Prefix", "region": "Region", "s3AccessKeyId": "Access key id", "s3SecretAccessKey": "Secret access key", "gcsServiceKey": "Service Account Key", "format": "Storage Format", "formatChangeNote": "Previous backups using the old storage format have to be removed manually.", "s3LikeNote": "Please remove any object expiration lifecycle rules since it will corrupt rsync backups.", "encryptionPassword": "Encryption Password (optional)", "encryptionDescription": "Save this passphrase in a safe place. Cloudron does not store this password. Backups cannot be decrypted without the passphrase", "advancedSettings": "Advanced settings...", "memoryLimit": "Memory Limit", "memoryLimitDescription": "Memory limit for the backup task. Adjust this if you increase the concurrency values from their defaults.", "uploadPartSize": "Upload Part Size", "uploadPartSizeDescription": "Multi-part upload part size. Up to 3 parts are uploaded in parallel and requires as much memory.", "downloadConcurrency": "Download Concurrency", "downloadConcurrencyDescription": "Number of files to download in parallel when restoring", "uploadConcurrency": "Upload Concurrency", "uploadConcurrencyDescription": "Number of files to upload in parallel when backing up", "copyConcurrency": "Copy Concurrency", "copyConcurrencyDescription": "Number of remote file copies in parallel when backing up.", "copyConcurrencyDigitalOceanNote": "DigitalOcean Spaces rate limits at 20." } }, "branding": { "title": "Branding", "cloudronName": "Cloudron Name", "logo": "Logo", "footer": { "title": "Footer", "description": "Use markdown to style the footer.", "subscriptionRequired": "Customizing the footer is only available in the paid plans.", "setupSubscriptionNow": "Setup Subscription Now" }, "changeLogo": { "title": "Choose Cloudron Avatar" } }, "emails": { "title": "Email" }, "network": { "title": "Network", "ip": { "title": "IP Address", "description": "Cloudron uses this IP address when setting up DNS records.", "provider": "Provider", "address": "IP Address", "interface": "Network Interface Name", "configure": "Configure", "interfaceDescription": "List available devices on the server with:" }, "firewall": { "title": "Firewall", "blockedIpRanges": "Blocked IPs & Ranges", "blocklist": "{{ currentBlocklistLength }} IP(s) blocked", "configure": { "title": "Firewall Configuration", "description": "Matched addresses will be unable to connect to the server including the mail server, the dashboard and all apps. Be careful not to lock yourself out.", "blocklistPlaceholder": "Line separated IP address or Subnet" } }, "dyndns": { "title": "Dynamic DNS", "description": "Enable this option to keep all your DNS records in sync with a changing IP address. This is useful when Cloudron runs in a network with a frequently changing public IP address like a home connection.", "useLabel": "Use Dynamic DNS", "saved": "Saved" }, "configureIp": { "title": "Configure IP Provider", "providerGenericDescription": "The Public IP address of the server will be automatically detected." } }, "services": { "title": "Services", "description": "Cloudron services implement functionality such as databases, email and authentication.", "service": "Service", "memoryUsage": "Memory Usage", "memoryLimit": "Memory Limit", "configureActionTooltip": "Configure", "restartActionTooltip": "Restart", "configure": { "title": "Configure {{ displayName }}", "memoryLimitDescription": "Cloudron allocates 50% of this value as RAM and 50% as swap.", "accessControl": "Access Control", "accessControlDescription": "Allowing non-admins to access SFTP will let them read application config files and secret keys. For some apps like WordPress, they can also log the password.", "requireAdminRoleLabel": "Require admin role to access SFTP", "resetToDefaults": "Reset to defaults" } }, "settings": { "title": "Settings" }, "support": { "title": "Support", "ticket": { "title": "Ticket", "subscriptionRequired": "Support tickets are only available in the paid plans.", "subscriptionRequiredDescription": "You may find answers in our documentation or ask on the Forum.", "type": "Type", "typeApp": "App Error", "typeBug": "Bug Report", "typeEmail": "Email Error", "selectApp": "Select App", "topic": "Topic", "report": "Report", "email": "Email", "emailInfo": "(Subscription email is {{ email }})", "sshCheckbox": "Allow support engineers to connect to this server via SSH", "submitAction": "Submit", "reportPlaceholder": "Describe your issue", "emailPlaceholder": "If needed, provide an email address different from above to reach you" }, "remoteSupport": { "title": "Remote Support", "subscriptionRequired": "Remote support is only available in the paid plans.", "description": "Enable this option to allow support engineers to connect to this server via SSH.", "warning": "Do not enable this option unless requested by the Cloudron support team.", "disableAction": "Disable SSH support access", "enableAction": "Enable SSH support access" } }, "system": { "title": "System Info", "diskUsage": { "title": "Disk Usage", "mountedAt": "{{ filesystem }} mounted at {{ mountpoint }}", "usageInfo": "{{ available | prettyDiskSize }} of {{ size | prettyDiskSize }} available", "diskContent": "This {{ type }} disk contains" }, "systemMemory": { "title": "System Memory", "graphSubtext": "App values are not stacked up" }, "cpuUsage": { "title": "CPU Usage", "graphTitle": "Percentage" }, "selectPeriodLabel": "Select Period" }, "eventlog": { "title": "Event Log", "time": "Time", "source": "Source", "details": "Details", "searchPlaceholder": "Search", "filterAllEvents": "All Events" }, "domains": { "title": "Domains & Certs", "addDomain": "Add Domain", "domain": "Domain", "provider": "Provider", "tooltipEdit": "Edit Domain", "tooltipRemove": "Remove Domain", "renewCerts": { "title": "Renew certificates", "description": "Cloudron renews Let's Encrypt certificates automatically. Use this option to trigger a renewal immediately.", "renewAllAction": "Renew All Certs", "showLogsAction": "Show Logs" }, "changeDashboardDomain": { "title": "Change Dashboard Domain", "description": "This will move the dashboard and the email server to the mysubdomain of the selected domain.", "changeAction": "Change Domain", "cancelAction": "Cancel", "showLogsAction": "Show Logs" }, "subscriptionRequired": { "title": "Subscription required", "description": "To add more domains, please setup a paid plan.", "setupAction": "Setup Subscription" }, "domainDialog": { "addTitle": "Add Domain", "editTitle": "Configure {{ domain }}", "addDescription": "Adding a domain lets you install apps on subdomains of this domain. Email settings for the domain can be configured in the Email view.", "domain": "Domain", "provider": "DNS Provider", "route53AccessKeyId": "Access Key Id", "route53SecretAccessKey": "Secret Access Key", "gcdnsServiceAccountKey": "Service Account Key", "digitalOceanToken": "DigitalOcean Token", "gandiApiKey": "Gandi API Key", "goDaddyApiKey": "API Key", "goDaddyApiSecret": "API Secret", "cloudflareTokenType": "Token Type", "cloudflareTokenTypeGlobalApiKey": "Global API Key", "cloudflareTokenTypeApiToken": "API Token", "cloudflareEmail": "Cloudflare Email", "linodeToken": "Linode Token", "nameComUsername": "Name.com Username", "nameComApiToken": "API Token", "namecheapUsername": "Namecheap Username", "namecheapApiKey": "API Key", "namecheapInfo": "The server IP needs to be whitelisted for this API Key.", "linodeInfo": "Linode DNS average propagation time is 30 minutes. Installing apps & and getting a Let's Encrypt certificate will take a while.", "manualInfo": "All DNS records have to be setup manually before each app installation.", "wildcardInfo": "Setup A records for *.{{ newDomain || domain.domain }} and {{ newDomain || domain.domain }} to this server's IP.", "letsEncryptInfo": "Let's Encrypt requires your server to be reachable on port 80", "advancedAction": "Advanced settings...", "zoneName": "Zone Name (Optional)", "certProvider": "Certificate Provider", "fallbackCert": "Fallback Certificate (optional)", "fallbackCertInfo": "Certificates are automatically obtained and renewed from Let’s Encrypt. See the current rate limit here.\nThis wildcard certificate will be used should getting a Let’s Encrypt certificate fail. If not provided, an automatically generated self-signed certificate will be used as fallback.", "fallbackCertCustomCert": "Custom Certificate", "fallbackCertCustomCertInfo": "This wildcard certificate will be used for all apps on this domain. If not provided, a self-signed certificate will be automatically generated.", "fallbackCertKeyPlaceholder": "Key", "fallbackCertCertificatePlaceholder": "Certificate" }, "removeDialog": { "title": "Really remove {{ domain }}?", "description": "This will delete the domain {{ domain }}.", "removeAction": "Remove" } }, "notifications": { "title": "Notifications", "nonePending": "All Caught Up!", "dismissTooltip": "Dismiss", "clearAll": "Clear All" }, "logs": { "title": "Logs", "clear": "Clear View", "download": "Download Full Logs" }, "terminal": { "title": "Terminal", "download": { "title": "Download from {{ name }}", "filePath": "Path to file or directory", "download": "Download" }, "upload": { "title": "Uploading file to {{ name }}" }, "scheduler": "Scheduler/Cron", "restart": "Restart", "uploadToTmp": "Upload to /tmp", "uploading": "Uploading...", "downloadAction": "Download", "busy": { "restarting": "Restarting app...", "restartingInPausedMode": "Restarting app in paused mode...", "resuming": "App is being resumed...", "installing": "App is being installed..." }, "contextmenu": { "copy": "Copy", "clear": "Clear", "pasteInfo": "For Paste use Ctrl+v" } }, "filemanager": { "title": "File Manager", "removeDialog": { "reallyDelete": "Really delete {{ fileName }}?" }, "newDirectoryDialog": { "title": "New Folder", "create": "Create" }, "newFileDialog": { "title": "New File", "create": "Create" }, "renameDialog": { "title": "Rename {{ fileName }}", "newName": "New Name", "rename": "Rename" }, "chownDialog": { "title": "Change ownership for {{ fileName }}", "newOwner": "New Owner", "change": "Change Owner", "recursiveCheckbox": "Change ownership recursively" }, "uploadingDialog": { "title": "Uploading files ({{ countDone }}/{{ count }})", "errorAlreadyExists": "One or more files already exist.", "errorFailed": "Failed to upload one or more files. Please try again.", "closeWarning": "Do not refresh the page until upload has finished.", "retry": "Retry", "overwrite": "Overwrite" }, "extractDialog": { "title": "Extracting {{ fileName }}", "closeWarning": "Do not refresh the page until extract has finished." }, "textEditorCloseDialog": { "title": "File has unsaved changes", "details": "Your changes will be lost if you don't save them", "dontSave": "Don't Save" }, "notFound": "Not found", "toolbar": { "new": "New", "upload": "Upload", "newFile": "New File", "newFolder": "New Folder", "uploadFolder": "Upload Folder", "uploadFile": "Upload File" }, "list": { "name": "Name", "size": "Size", "owner": "Owner", "empty": "No files", "symlink": "symlink to {{ target }}", "menu": { "rename": "Rename", "chown": "Change Ownership", "extract": "Extract Here", "download": "Download", "delete": "Delete" } }, "extract": { "error": "Failed to extract: {{ message }}" }, "newDirectory": { "errorAlreadyExists": "Already exists" }, "newFile": { "errorAlreadyExists": "Already exists" } } }