mirror of
https://git.selfprivacy.org/kherel/selfprivacy.org.app.git
synced 2024-11-16 13:43:17 +00:00
433 lines
20 KiB
JSON
433 lines
20 KiB
JSON
{
|
|
"test": "en-test",
|
|
"locale": "en",
|
|
"basis": {
|
|
"providers": "Providers",
|
|
"providers_title": "Your Data Center",
|
|
"services": "Services",
|
|
"services_title": "Your personal, private and independent services.",
|
|
"users": "Users",
|
|
"more": "More",
|
|
"next": "Next",
|
|
"got_it": "Got it",
|
|
"settings": "Settings",
|
|
"password": "Password",
|
|
"create": "Add new",
|
|
"confirmation": "Confirmation",
|
|
"cancel": "Cancel",
|
|
"delete": "Delete",
|
|
"close": "Close",
|
|
"connect": "Connect",
|
|
"domain": "Domain",
|
|
"saving": "Saving…",
|
|
"username": "Username",
|
|
"loading": "Loading…",
|
|
"later": "Skip to setup later",
|
|
"connect_to_existing": "Connect to an existing server",
|
|
"reset": "Reset",
|
|
"details": "Details",
|
|
"no_data": "No data",
|
|
"wait": "Wait",
|
|
"remove": "Remove",
|
|
"apply": "Apply",
|
|
"done": "Done",
|
|
"continue": "Continue"
|
|
},
|
|
"more_page": {
|
|
"configuration_wizard": "Setup wizard",
|
|
"about_project": "About us",
|
|
"about_application": "About",
|
|
"onboarding": "Onboarding",
|
|
"create_ssh_key": "Superuser SSH keys",
|
|
"console": "Console",
|
|
"application_settings": "Application settings"
|
|
},
|
|
"console_page": {
|
|
"title": "Console",
|
|
"waiting": "Waiting for initialization…"
|
|
},
|
|
"about_us_page": {
|
|
"title": "About us"
|
|
},
|
|
"about_application_page": {
|
|
"title": "About",
|
|
"application_version_text": "Application version v.{}",
|
|
"api_version_text": "Server API version v.{}"
|
|
},
|
|
"application_settings": {
|
|
"title": "Application settings",
|
|
"dark_theme_title": "Dark theme",
|
|
"dark_theme_description": "Switch your application theme",
|
|
"reset_config_title": "Reset application config",
|
|
"reset_config_description": "Reset api keys and root user",
|
|
"delete_server_title": "Delete server",
|
|
"delete_server_description": "This removes your server. It will be no longer accessible."
|
|
},
|
|
"ssh": {
|
|
"title": "SSH keys",
|
|
"create": "Create SSH key",
|
|
"delete": "Delete SSH key",
|
|
"delete_confirm_question": "Are you sure you want to delete SSH key?",
|
|
"subtitle_with_keys": "{} keys",
|
|
"subtitle_without_keys": "No keys",
|
|
"no_key_name": "Unnamed key",
|
|
"root_title": "These are superuser keys",
|
|
"root_subtitle": "Owners of these keys get full access to the server and can do anything on it. Only add your own keys to the server.",
|
|
"input_label": "Public ED25519 or RSA key"
|
|
},
|
|
"onboarding": {
|
|
"page1_title": "Digital independence, available to all of us",
|
|
"page1_text": "Mail, VPN, Messenger, social network and much more on your private server, under your control.",
|
|
"page2_title": "SelfPrivacy — it's not a cloud, but your personal datacenter",
|
|
"page2_text": "SelfPrivacy works only with your provider accounts: Hetzner, Cloudflare, Backblaze. If you do not own those, we'll help you to create them."
|
|
},
|
|
"resource_chart": {
|
|
"month": "Month",
|
|
"day": "Day",
|
|
"hour": "Hour",
|
|
"cpu_title": "CPU Usage",
|
|
"network_title": "Network Usage",
|
|
"in": "In",
|
|
"out": "Out"
|
|
},
|
|
"server": {
|
|
"card_title": "Server",
|
|
"description": "All your services live here",
|
|
"general_information": "General information",
|
|
"resource_usage": "Resource usage",
|
|
"allow_autoupgrade": "Allow auto-upgrade",
|
|
"allow_autoupgrade_hint": "Allow automatic packages upgrades on server",
|
|
"reboot_after_upgrade": "Reboot after upgrade",
|
|
"reboot_after_upgrade_hint": "Reboot without prompt after applying changes on server",
|
|
"server_timezone": "Server timezone",
|
|
"select_timezone": "Select timezone",
|
|
"server_id": "Server ID",
|
|
"status": "Status",
|
|
"cpu": "CPU",
|
|
"ram": "Memory",
|
|
"disk": "Disk local",
|
|
"monthly_cost": "Monthly cost",
|
|
"location": "Location",
|
|
"core_count": {
|
|
"one": "{} core",
|
|
"two": "{} cores",
|
|
"few": "{} cores",
|
|
"many": "{} cores",
|
|
"other": "{} cores"
|
|
}
|
|
},
|
|
"record": {
|
|
"root": "Root domain",
|
|
"api": "SelfPrivacy API",
|
|
"cloud": "File cloud",
|
|
"git": "Git server",
|
|
"meet": "Video conference",
|
|
"social": "Social network",
|
|
"password": "Password manager",
|
|
"vpn": "VPN",
|
|
"mx": "MX record",
|
|
"dmarc": "DMARC record",
|
|
"spf": "SPF record",
|
|
"dkim": "DKIM key"
|
|
},
|
|
"domain": {
|
|
"card_title": "Domain",
|
|
"screen_title": "Domain and DNS",
|
|
"ok": "Records are OK",
|
|
"error": "Problems found",
|
|
"error_subtitle": "Tap here to fix them",
|
|
"refreshing": "Refreshing status…",
|
|
"uninitialized": "Data is not retrieved yet",
|
|
"services_title": "Services",
|
|
"services_subtitle": "Type “A” records required for each service.",
|
|
"email_title": "Email",
|
|
"email_subtitle": "Records necessary for secure email exchange."
|
|
},
|
|
"backup": {
|
|
"card_title": "Backup",
|
|
"description": "Will save your day in case of incident: hackers attack, server deletion, etc.",
|
|
"reupload_key": "Force reupload key",
|
|
"reuploaded_key": "Key reuploaded",
|
|
"initialize": "Initialize",
|
|
"waiting_for_rebuild": "You will be able to create your first backup in a few minutes.",
|
|
"restore": "Restore from backup",
|
|
"no_backups": "There are no backups yet",
|
|
"create_new": "Create a new backup",
|
|
"creating": "Creating a new backup: {}%",
|
|
"restoring": "Restoring from backup",
|
|
"error_pending": "Server returned error, check it below",
|
|
"restore_alert": "You are about to restore from backup created on {}. All current data will be lost. Are you sure?",
|
|
"refresh": "Refresh status",
|
|
"refetch_backups": "Refetch backup list",
|
|
"refetching_list": "In a few minutes list will be updated"
|
|
},
|
|
"storage": {
|
|
"card_title": "Server Storage",
|
|
"status_ok": "Disk usage is OK",
|
|
"status_error": "Low disk space",
|
|
"disk_usage": "{} used",
|
|
"disk_total": "{} total · {}",
|
|
"gb": "{} GB",
|
|
"mb": "{} MB",
|
|
"kb": "{} KB",
|
|
"extend_volume_button": "Extend volume",
|
|
"extending_volume_title": "Extending volume",
|
|
"extending_volume_description": "Resizing volume will allow you to store more data on your server without extending the server itself. Volume can only be extended: shrinking is not possible.",
|
|
"extending_volume_price_info": "Price includes VAT and is estimated from pricing data provided by Hetzner. Server will be rebooted after resizing.",
|
|
"extending_volume_error": "Couldn't initialize volume extending.",
|
|
"size": "Size",
|
|
"euro": "Euro",
|
|
"data_migration_title": "Data migration",
|
|
"data_migration_notice": "During migration all services will be turned off.",
|
|
"start_migration_button": "Start migration",
|
|
"migration_process": "Migrating…",
|
|
"migration_done": "Finish"
|
|
},
|
|
"not_ready_card": {
|
|
"begin": "Please finish application setup using ",
|
|
"insertion": "Setup Wizard",
|
|
"end": " for further work",
|
|
"in_menu": "Server is not set up yet. Please finish setup using setup wizard for further work."
|
|
},
|
|
"service_page": {
|
|
"open_in_browser": "Open in browser",
|
|
"restart": "Restart service",
|
|
"disable": "Disable service",
|
|
"enable": "Enable service",
|
|
"move": "Move to another volume",
|
|
"uses": "Uses {usage} on {volume}",
|
|
"status": {
|
|
"active": "Up and running",
|
|
"inactive": "Stopped",
|
|
"failed": "Failed to start",
|
|
"off": "Disabled",
|
|
"activating": "Activating",
|
|
"deactivating": "Deactivating",
|
|
"reloading": "Restarting"
|
|
}
|
|
},
|
|
"mail": {
|
|
"title": "E-Mail",
|
|
"subtitle": "E-Mail for company and family.",
|
|
"login_info": "Use username and password from users tab. IMAP port is 143 with STARTTLS, SMTP port is 587 with STARTTLS."
|
|
},
|
|
"password_manager": {
|
|
"title": "Password Manager",
|
|
"subtitle": "Base of your security. Bitwarden will help you to create, store and move passwords between devices, as well as input them, when requested using autocompletion.",
|
|
"login_info": "You will have to create an account on the website."
|
|
},
|
|
"video": {
|
|
"title": "Videomeet",
|
|
"subtitle": "Zoom and Google Meet are good, but Jitsi Meet is a worth alternative that also gives you confidence that you're not being listened.",
|
|
"login_info": "No account needed."
|
|
},
|
|
"cloud": {
|
|
"title": "Cloud Storage",
|
|
"subtitle": "Do not allow cloud services to read your data by using NextCloud.",
|
|
"login_info": "Login is admin, password is the same as with your main user. Create new accounts in Nextcloud interface."
|
|
},
|
|
"social_network": {
|
|
"title": "Social Network",
|
|
"subtitle": "It's hard to believe, but it became possible to create your own social network, with your own rules and target audience.",
|
|
"login_info": "You will have to create an account on the website."
|
|
},
|
|
"git": {
|
|
"title": "Git Server",
|
|
"subtitle": "Private alternative to the Github, that belongs to you, but not a Microsoft.",
|
|
"login_info": "You will have to create an account on the website. First user will become an admin."
|
|
},
|
|
"vpn": {
|
|
"title": "VPN Server",
|
|
"subtitle": "Private VPN server"
|
|
},
|
|
"users": {
|
|
"add_new_user": "Add a first user",
|
|
"new_user": "New user",
|
|
"delete_user": "Delete user",
|
|
"not_ready": "Please connect server, domain and DNS in the Providers tab, to be able to add a first user",
|
|
"nobody_here": "Nobody here",
|
|
"login": "Login",
|
|
"new_user_info_note": "New user will automatically be granted an access to all of the services",
|
|
"delete_confirm_question": "Are you sure?",
|
|
"reset_password": "Reset password",
|
|
"account": "Account",
|
|
"send_registration_data": "Share login credentials",
|
|
"could_not_fetch_users": "Couldn't fetch users list",
|
|
"could_not_fetch_description": "Please check your internet connection and try again",
|
|
"refresh_users": "Refresh users list",
|
|
"could_not_create_user": "Couldn't create user",
|
|
"could_not_delete_user": "Couldn't delete user",
|
|
"could_not_add_ssh_key": "Couldn't add SSH key",
|
|
"username_rule": "Username must contain only lowercase latin letters, digits and underscores, should not start with a digit",
|
|
"email_login": "Email login",
|
|
"no_ssh_notice": "Only email and SSH accounts are created for this user. Single Sign On for all services is coming soon."
|
|
},
|
|
"initializing": {
|
|
"connect_to_server": "Connect a server",
|
|
"select_provider": "Select your provider",
|
|
"place_where_data": "A place where your data and SelfPrivacy services will reside:",
|
|
"how": "How to obtain API token",
|
|
"provider_bad_key_error": "Provider API key is invalid",
|
|
"cloudflare_bad_key_error": "Cloudflare API key is invalid",
|
|
"backblaze_bad_key_error": "Backblaze storage information is invalid",
|
|
"connect_cloudflare": "Connect CloudFlare",
|
|
"manage_domain_dns": "To manage your domain's DNS",
|
|
"cloudflare_api_token": "CloudFlare API Token",
|
|
"connect_backblaze_storage": "Connect Backblaze storage",
|
|
"no_connected_domains": "No connected domains at the moment",
|
|
"loading_domain_list": "Loading domain list",
|
|
"found_more_domains": "Found more than one domain. For your own security, please be asked to delete unnecessary domains",
|
|
"save_domain": "Save domain",
|
|
"final": "Final step",
|
|
"create_server": "Create server",
|
|
"what": "What does it mean?",
|
|
"server_rebooted": "Server rebooted. Waiting for the last verification…",
|
|
"server_started": "Server started. It will be validated and rebooted now…",
|
|
"server_created": "Server created. DNS checks and server boot in progress…",
|
|
"until_the_next_check": "Until the next check: ",
|
|
"check": "Check",
|
|
"one_more_restart": "One more restart to apply your security certificates.",
|
|
"create_master_account": "Create master account",
|
|
"enter_username_and_password": "Enter username and strong password",
|
|
"finish": "Everything is initialized",
|
|
"checks": "Checks have been completed \n{} out of {}"
|
|
},
|
|
"recovering": {
|
|
"recovery_main_header": "Connect to an existing server",
|
|
"domain_recovery_description": "Enter a server domain you want to get access for:",
|
|
"domain_recover_placeholder": "Your domain",
|
|
"domain_recover_error": "Server with such domain was not found",
|
|
"method_select_description": "Select a recovery method:",
|
|
"method_select_other_device": "I have access on another device",
|
|
"method_select_recovery_key": "I have a recovery key",
|
|
"method_select_nothing": "I don't have any of that",
|
|
"method_device_description": "Open the application on another device, then go to the devices page. Press \"Add device\" to receive your token.",
|
|
"method_device_button": "I have received my token",
|
|
"method_device_input_description": "Enter your authorization token",
|
|
"method_device_input_placeholder": "Token",
|
|
"method_recovery_input_description": "Enter your recovery key",
|
|
"fallback_select_description": "What exactly do you have? Pick the first available option:",
|
|
"fallback_select_token_copy": "Copy of auth token from other version of the application.",
|
|
"fallback_select_root_ssh": "Root SSH access to the server.",
|
|
"fallback_select_provider_console": "Access to the server console of my prodiver.",
|
|
"authorization_failed": "Couldn't log in with this key",
|
|
"fallback_select_provider_console_hint": "For example: Hetzner.",
|
|
"hetzner_connected": "Connect to Hetzner",
|
|
"hetzner_connected_description": "Communication established. Enter Hetzner token with access to {}:",
|
|
"hetzner_connected_placeholder": "Hetzner token",
|
|
"confirm_server": "Confirm server",
|
|
"confirm_server_description": "Found your server! Confirm it is the right one:",
|
|
"confirm_server_accept": "Yes! That's it",
|
|
"confirm_server_decline": "Choose a different server",
|
|
"choose_server": "Choose your server",
|
|
"choose_server_description": "We couldn't figure out which server your are trying to connect to.",
|
|
"no_servers": "There is no available servers on your account.",
|
|
"domain_not_available_on_token": "Selected domain is not available on this token.",
|
|
"modal_confirmation_title": "Is it really your server?",
|
|
"modal_confirmation_description": "If you connect to a wrong server you may lose all your data.",
|
|
"modal_confirmation_dns_valid": "Reverse DNS is valid",
|
|
"modal_confirmation_dns_invalid": "Reverse DNS points to another domain",
|
|
"modal_confirmation_ip_valid": "IP is the same as in DNS record",
|
|
"modal_confirmation_ip_invalid": "IP is not the same as in DNS record",
|
|
"confirm_cloudflare": "Connect to CloudFlare",
|
|
"confirm_cloudflare_description": "Enter a Cloudflare token with access to {}:",
|
|
"confirm_backblaze": "Connect to Backblaze",
|
|
"confirm_backblaze_description": "Enter a Backblaze token with access to backup storage:"
|
|
},
|
|
"devices": {
|
|
"main_screen": {
|
|
"header": "Devices",
|
|
"description": "These devices have full access to the server via SelfPrivacy app.",
|
|
"this_device": "This device",
|
|
"other_devices": "Other devices",
|
|
"authorize_new_device": "Authorize new device",
|
|
"access_granted_on": "Access granted on {}",
|
|
"tip": "Press on the device to revoke access."
|
|
},
|
|
"add_new_device_screen": {
|
|
"header": "Authorizing new device",
|
|
"description": "Enter the key on the device you want to authorize:",
|
|
"please_wait": "Please wait",
|
|
"tip": "The key is valid for 10 minutes.",
|
|
"expired": "The key has expired.",
|
|
"get_new_key": "Get new key"
|
|
},
|
|
"revoke_device_alert": {
|
|
"header": "Revoke access?",
|
|
"description": "The device {} will no longer have access to the server.",
|
|
"yes": "Revoke",
|
|
"no": "Cancel"
|
|
}
|
|
},
|
|
"recovery_key": {
|
|
"key_connection_error": "Couldn't connect to the server.",
|
|
"key_synchronizing": "Synchronizing…",
|
|
"key_main_header": "Recovery key",
|
|
"key_main_description": "Is needed for SelfPrivacy authorization when all your other authorized devices aren't available.",
|
|
"key_amount_toggle": "Limit by number of uses",
|
|
"key_amount_field_title": "Max number of uses",
|
|
"key_duedate_toggle": "Limit by time",
|
|
"key_duedate_field_title": "Due date of expiration",
|
|
"key_receive_button": "Receive key",
|
|
"key_valid": "Your key is valid",
|
|
"key_invalid": "Your key is no longer valid",
|
|
"key_valid_until": "Valid until {}",
|
|
"key_valid_for": "Valid for {} uses",
|
|
"key_creation_date": "Created on {}",
|
|
"key_replace_button": "Generate new key",
|
|
"key_receiving_description": "Write down this key and put to a safe place. It is used to restore full access to your server:",
|
|
"key_receiving_info": "The key will never ever be shown again, but you will be able to replace it with another one.",
|
|
"key_receiving_done": "Done!",
|
|
"generation_error": "Couldn't generate a recovery key. {}"
|
|
},
|
|
"modals": {
|
|
"already_exists": "Such server already exists.",
|
|
"unexpected_error": "Unexpected error during placement from the provider side.",
|
|
"destroy_server": "Destroy the server and create a new one?",
|
|
"try_again": "Try again?",
|
|
"are_you_sure": "Are you sure?",
|
|
"purge_all_keys": "Purge all authentication keys?",
|
|
"purge_all_keys_confirm": "Yes, purge all my tokens",
|
|
"delete_server_volume": "Delete the server and volume?",
|
|
"reboot": "Reboot",
|
|
"you_cant_use_this_api": "You cannot use this API for domains with such TLD.",
|
|
"yes": "Yes",
|
|
"no": "No"
|
|
},
|
|
"timer": {
|
|
"sec": "{} sec"
|
|
},
|
|
"jobs": {
|
|
"title": "Jobs list",
|
|
"start": "Start",
|
|
"empty": "No jobs",
|
|
"create_user": "Create user",
|
|
"delete_user": "Delete user",
|
|
"service_turn_off": "Turn off",
|
|
"service_turn_on": "Turn on",
|
|
"job_added": "Job added",
|
|
"run_jobs": "Run jobs",
|
|
"reboot_success": "Server is rebooting",
|
|
"reboot_failed": "Couldn't reboot the server. Check the app logs.",
|
|
"config_pull_failed": "Failed to pull configuration upgrade. Started software upgrade anyways.",
|
|
"upgrade_success": "Server upgrade started",
|
|
"upgrade_failed": "Failed to upgrade server",
|
|
"upgrade_server": "Upgrade server",
|
|
"reboot_server": "Reboot server",
|
|
"create_ssh_key": "Create SSH key for {}",
|
|
"delete_ssh_key": "Delete SSH key for {}",
|
|
"server_jobs": "Jobs on the server",
|
|
"reset_user_password": "Reset password of user"
|
|
},
|
|
"validations": {
|
|
"required": "Required",
|
|
"already_exist": "Already exists",
|
|
"invalid_format": "Invalid format",
|
|
"invalid_format_password": "Must not contain empty characters",
|
|
"invalid_format_ssh": "Must follow the SSH key format",
|
|
"root_name": "Cannot be 'root'",
|
|
"length_not_equal": "Length is [], should be {}",
|
|
"length_longer": "Length is [], should be shorter than or equal to {}"
|
|
}
|
|
}
|