Merge branch 'master' into device-screen-updating

pull/398/head
NaiJi ✨ 2023-12-03 11:55:25 +02:00
commit 07998f115f
18 changed files with 984 additions and 301 deletions

View File

@ -11,7 +11,7 @@ steps:
- name: Run Tests
commands:
- ./ci.py --ci-run-tests
- sonar-scanner -Dsonar.projectKey=SelfPrivacy-Flutter-App -Dsonar.sources=. -Dsonar.host.url=http://analyzer.lan:9000 -Dsonar.login="$SONARQUBE_TOKEN"
# - sonar-scanner -Dsonar.projectKey=SelfPrivacy-Flutter-App -Dsonar.sources=. -Dsonar.host.url=http://analyzer.lan:9000 -Dsonar.login="$SONARQUBE_TOKEN"
environment:
SONARQUBE_TOKEN:
from_secret: SONARQUBE_TOKEN

View File

@ -1,5 +1,5 @@
buildscript {
ext.kotlin_version = '1.6.10'
ext.kotlin_version = '1.9.21'
ext.getVersionCode = { ->
try {
def stdout = new ByteArrayOutputStream()

View File

@ -237,7 +237,6 @@
"subtitle": "Microsoft-a deyil, sizə məxsus şəxsi Github alternativi."
},
"users": {
"not_ready": "Birinci istifadəçini əlavə etmək üçün Provayderlər bölməsində server, domen və DNS-ni birləşdirin",
"could_not_fetch_description": "İnternet bağlantısını yoxlayın və yenidən cəhd edin",
"username_rule": "Adda yalnız kiçik Latın hərfləri, rəqəmlər, alt xətt ola bilər, rəqəmlərlə başlaya bilməz",
"add_new_user": "İlk istifadəçini əlavə edin",

View File

@ -473,7 +473,6 @@
"add_new_user": "Дадайце першага карыстальніка",
"new_user": "Новы карыстальнік",
"delete_user": "Выдаліць карыстальніка",
"not_ready": "Падлучыце сервер, дамен і DNS у раздзеле Правайдэры каб дадаць першага карыстальніка",
"nobody_here": "Тут будуць адлюстроўвацца карыстальнікі",
"login": "Логін",
"new_user_info_note": "Новы карыстальнік аўтаматычна атрымае доступ да ўсіх сэрвісаў",

View File

@ -226,7 +226,6 @@
"could_not_delete_user": "Nepodařilo se odstranit uživatele",
"email_login": "Přihlášení e-mailem",
"delete_user": "Odstranění uživatele",
"not_ready": "Připojte prosím server, doménu a DNS na kartě Poskytovatelé, abyste mohli přidat prvního uživatele",
"could_not_add_ssh_key": "Nepodařilo se přidat klíč SSH",
"username_rule": "Uživatelské jméno musí obsahovat pouze malá písmena latinky, číslice a podtržítka, nesmí začínat číslicí",
"details_title": "Údaje o uživateli"

View File

@ -23,7 +23,7 @@
"username": "Benutzername",
"loading": "Laden…",
"later": "Überspringen und später einstellen",
"connect_to_existing": "Mit einem existierenden Server verbinden",
"connect_to_existing": "Verbinde mit einem existierenden SelfPrivacy Server",
"reset": "Zurücksetzen",
"details": "Einzelheiten",
"no_data": "Keine Daten",
@ -34,7 +34,9 @@
"alert": "Alarm",
"services_title": "Ihre persönliche, private und unabhängige Dienste.",
"apply": "Anwenden",
"app_name": "SelfPrivacy"
"app_name": "SelfPrivacy",
"copied_to_clipboard": "Zur Zwischenablage kopiert!",
"please_connect": "Bitte stellen sie eine Verbindung zu ihrem Server, Domain und DNS Betreiber her um zu beginnen!"
},
"more_page": {
"configuration_wizard": "Setup-Assistent",
@ -81,7 +83,7 @@
"no_key_name": "Unbennanter Schlüssel",
"root_title": "Das sind superuser Schlüsseln",
"root_subtitle": "Besitzer dieser Schlüssel erhalten vollen Zugriff auf den Server und können alles darauf tun. Fügen Sie dem Server nur Ihre eigenen Schlüssel hinzu.",
"input_label": "Öffentlicher ED25519 oder RSA Schlüssel"
"input_label": "Öffentlicher ED25519, ECDSA oder RSA Schlüssel"
},
"onboarding": {
"page2_server_provider_text": "Ein Serveranbieter unterhält Ihren Server in einem eigenen Rechenzentrum. SelfPrivacy verbindet sich automatisch mit dem Anbieter und richtet alle notwendigen Dinge ein.",
@ -129,7 +131,10 @@
"few": "{} Kerne",
"many": "{} Kerne",
"other": "{} Kerne"
}
},
"server_provider": "Serverprovider",
"dns_provider": "DNS-Provider",
"pricing_error": "Konnte Providerpreise nicht abrufen"
},
"record": {
"root": "Root Domain",
@ -175,7 +180,47 @@
"refetch_backups": "Backupliste neuladen",
"waiting_for_rebuild": "In wenigen Minuten können Sie Ihren ersten Backup erstellen.",
"error_pending": "Server hat einen Fehler zurückgegeben, überprüfen Sie es unten",
"refetching_list": "In wenigen Minuten wird die Liste neugeladen"
"refetching_list": "In wenigen Minuten wird die Liste neugeladen",
"card_subtitle": "Verwalte deine Backups",
"refetch_backups_subtitle": "Cache überprüfen und Daten vom Speicherprovider neu abrufen. Könnte zusätzliche Kosten verursachen.",
"reupload_key_subtitle": "Weist den Server an, Backupseicher zu initialisieren. Benutze diese Option, wenn etwas kaputt ist.",
"select_all": "Alles backupen",
"create_new_select_heading": "Wähle aus, was zum Backup dazugehören soll",
"show_more": "Mehr anzeigen",
"start": "Backup starten",
"service_busy": "Eine andere Backupoperation wird ausgeführt",
"latest_snapshots": "Neuster Snapshot",
"latest_snapshots_subtitle": "Zeige die letzten 15 Snapshots",
"autobackup_period_title": "Automatische Backup-Zeitspanne",
"autobackup_period_subtitle": "Backups werden erstellt, jede {period}",
"autobackup_period_never": "Automatische Backups sind deaktiviert",
"autobackup_period_every": "Jede {period}",
"autobackup_period_disable": "Deaktiviere automatische Backups",
"autobackup_custom": "Eigene",
"autobackup_custom_hint": "Eigenen Zeitraum in Minuten eingeben",
"autobackup_set_period": "Setze Zeitraum",
"autobackup_period_set": "Zeitraum setzen",
"backups_encryption_key": "Verschlüsselungsschlüssel",
"backups_encryption_key_subtitle": "Bewahre es gut auf.",
"backups_encryption_key_copy": "Kopiere den Verschlüselungsschlüssel",
"backups_encryption_key_show": "Zeige den Verschlüsselungschlüssel",
"pending_jobs": "Backup Arbeiten werden ausgeführt",
"backups_encryption_key_description": "Dieser Schlüssel wird verwendet um ihre Backups zu verschlüsseln. Wenn sie ihn verlieren, wird es ihnen unmöglich ihre Backups wieder herzustellen.\nBitte bewahren sie ihn an einem sicheren Ort auf, da sie ihn benötigen sofern sie einmal ihre Backups manuell wiederherstellen müssen.",
"snapshot_modal_service_not_found": "Dies ist ein Snapshot von einem Service den sie nicht mehr auf ihrem Server haben. Normalerweise sollte dies nicht passieren, und wir können keine automatische Wiederherstellung durchführen. Sie können den Snapshot immer noch herunterladen und manuell wiederherstellen. Kontaktieren sie den SelfPrivacy Support, wenn sie Hilfe brauchen.",
"snapshot_modal_download_verify_option_description": "Niedrigeres Risiko, aber es wird mehr freier Speicherplatz benötigt. Lädt den vollständigen Snapshot in den temporären Speicher, verifiziert ihn und ersetzt dann die vorhandenen Daten.",
"snapshots_title": "Snapshot Liste",
"snapshot_service_title": "Service",
"snapshot_creation_time_title": "Zeit der Erstellung",
"snapshot_id_title": "Snapshot ID",
"snapshot_modal_select_strategy": "Wählen sie die Art der Wiederherstellung",
"snapshot_modal_download_verify_option_title": "Herunterladen, verifizieren und dann ersetzen",
"backups_encryption_key_not_found": "Verschlüsselungscode noch nicht gefunden, bitte versuchen sie es später noch einmal.",
"forget_snapshot": "Vergiss diesen Snapshot",
"forget_snapshot_alert": "Sie sind im Begriff dazu diesen Snapshot zu löschen. Sind sie sicher? Diese Aktion kann nicht rückgängig gemacht werden.",
"forget_snapshot_error": "Dieser Snapshot konnte nicht vergessen werden",
"snapshot_modal_heading": "Snapshot Details",
"snapshot_modal_inplace_option_title": "An Ort und Stelle ersetzen",
"snapshot_modal_inplace_option_description": "Weniger freier Speicherplatz benötigt, aber höheres Risiko. Ersetzt die vorhanden Daten, während dem Herunterladen, mit den Daten des Snapshots."
},
"storage": {
"card_title": "Serverspeicher",
@ -197,7 +242,7 @@
"start_migration_button": "Migration starten",
"migration_process": "Migrieren…",
"migration_done": "Beenden",
"extending_volume_price_info": "Der Preis enthält die gesetzliche Mehrwertsteuer und wird anhand der von Hetzner bereitgestellten Preisangaben geschätzt. Der Server wird nach der Größenänderung neu gestartet."
"extending_volume_price_info": "Der Preis enthält die gesetzliche Mehrwertsteuer und wird geschätzt nach den Preisangaben die ihr Serverbetreiber bereitstellt. Der Server wird nach der Größenänderung neu gestartet."
},
"not_ready_card": {
"in_menu": "Server ist noch nicht eingerichtet. Bitte beenden Sie die Einrichtung mit dem Einrichtungsassistenten, um fortzufahren."
@ -366,7 +411,6 @@
"add_new_user": "Fügen Sie den ersten Benutzer hinzu",
"new_user": "Neuer Benutzer",
"delete_user": "Benutzer löschen",
"not_ready": "Bitte verbinden Sie Server, Domain und DNS im Providertab, um den ersten Benutzer hinzufügen zu können",
"nobody_here": "Hier werden Benutzer angezeigt",
"login": "Login",
"new_user_info_note": "Neuen Benutzern wird automatisch Zugang zu allen Diensten gewährt",

View File

@ -25,7 +25,7 @@
"username": "Username",
"loading": "Loading…",
"later": "Skip to setup later",
"connect_to_existing": "Connect to an existing server",
"connect_to_existing": "I already have a SelfPrivacy server!",
"reset": "Reset",
"details": "Details",
"no_data": "No data",
@ -628,4 +628,4 @@
"reset_onboarding_description": "Reset onboarding switch to show onboarding screen again",
"cubit_statuses": "Cubit loading statuses"
}
}
}

View File

@ -31,7 +31,10 @@
"remove": "Eliminar",
"apply": "Solicitar",
"done": "Hecho",
"connect_to_existing": "Conectarse a un servidor existente"
"connect_to_existing": "Conectarse a un servidor de SelfPrivacy existente",
"app_name": "SelfPrivacy",
"please_connect": "¡Conecta tu servidor y dominio para sumergirte!",
"copied_to_clipboard": "¡Copiado al portapapeles!"
},
"test": "es-test",
"locale": "es",
@ -57,9 +60,9 @@
"input_label": "Clave pública ED25519 o RSA"
},
"about_application_page": {
"application_version_text": "Versión de la aplicación v.{}",
"application_version_text": "Versión de la aplicación {}",
"title": "Sobre",
"api_version_text": "Versión API del servidor v.{}",
"api_version_text": "Versión API del servidor {}",
"privacy_policy": "Política de privacidad"
},
"onboarding": {
@ -84,9 +87,10 @@
},
"console_page": {
"title": "Consola",
"waiting": "Esperando la inicialización…"
"waiting": "Esperando la inicialización…",
"copy": "Copiar"
},
"about_us_page": {
"title": "Sobre nosotros"
}
}
}

View File

@ -24,7 +24,7 @@
"username": "Nom d'utilisateur",
"loading": "Chargement…",
"later": "Passer à la configuration plus tard",
"connect_to_existing": "Se connecter à un server existant",
"connect_to_existing": "Se connecter à un serveur SelfPrivacy existant",
"reset": "Réinitialiser",
"details": "Détails",
"no_data": "Pas de données",
@ -34,7 +34,9 @@
"continue": "Continuer",
"apply": "Appliquer",
"done": "Effectué",
"app_name": "SelfPrivacy"
"app_name": "SelfPrivacy",
"please_connect": "Veuillez connecter votre serveur, domaine et fournisseur DNS pour vous lancer dans le bain !",
"copied_to_clipboard": "Copié dans le presse-papier !"
},
"more_page": {
"about_application": "À propos",
@ -47,7 +49,8 @@
},
"console_page": {
"title": "Console",
"waiting": "En attente de l'initialisation…"
"waiting": "En attente de l'initialisation…",
"copy": "Copier"
},
"about_us_page": {
"title": "À propos de nous"
@ -87,14 +90,17 @@
"page2_dns_provider_title": "Fournisseur de DNS",
"page2_backup_provider_title": "Fournisseur de sauvegarde",
"page2_text": "SelfPrivacy fonctionne uniquement avec les fournisseurs que vous choisissez. Si vous n'avez pas de compte sur ceux-ci, nous allons vous aider à en créer.",
"page2_dns_provider_text": "Vous avez besoin d'un domaine pour avoir un espace sur l'Internet. Il est également nécessaire de disposer d'un fournisseur de DNS fiable pour que votre domaine pointe sur votre serveur. Nous allons vous suggérer de choisir des fournisseurs DNS supportés pour automatiquement configurer le réseau."
"page2_dns_provider_text": "Vous avez besoin d'un domaine pour avoir un espace sur l'Internet. Il est également nécessaire de disposer d'un fournisseur de DNS fiable pour que votre domaine pointe sur votre serveur. Nous allons vous suggérer de choisir des fournisseurs DNS supportés pour automatiquement configurer le réseau.",
"page2_backup_provider_text": "Et s'il se passait quelque chose avec votre serveur ? Imaginez une attaque par un hackeur, une suppression accidentelle de vos données ou un dénis de service ? Vos données seront conservées en toute sécurité chez votre fournisseur de sauvegardes. Elles seront chiffrées et accessibles à tout moment pour être restaurées sur vos serveurs."
},
"resource_chart": {
"month": "Mois",
"day": "Jour",
"hour": "Heure",
"cpu_title": "Utilisation du CPU",
"network_title": "Utilisation du réseau"
"network_title": "Utilisation du réseau",
"in": "Entré",
"out": "Sorti"
},
"server": {
"card_title": "Serveur",
@ -119,7 +125,8 @@
"few": "{} cœurs"
},
"server_timezone": "Fuseau horaire du serveur",
"select_timezone": "Sélectionner le fuseau horaire"
"select_timezone": "Sélectionner le fuseau horaire",
"description": "Tous vos services en direct ici"
},
"record": {
"root": "Domaine racine",

631
assets/translations/he.json Normal file
View File

@ -0,0 +1,631 @@
{
"test": "he-test",
"locale": "he",
"more_page": {
"application_settings": "הגדרות יישום",
"configuration_wizard": "אשף הקמה",
"about_project": "עלינו",
"about_application": "על אודות",
"create_ssh_key": "מפתחות SSH למשתמשי על",
"console": "מסוף",
"onboarding": "קבלת פנים"
},
"basis": {
"app_name": "SelfPrivacy",
"providers": "ספקים",
"providers_title": "חוות השרתים שלך",
"select": "בחירה",
"services": "שירותים",
"services_title": "השירותים האישיים, הפרטיים והעצמאיים שלך.",
"users": "משתמשים",
"more": "עוד",
"next": "הבא",
"got_it": "הבנתי",
"settings": "הגדרות",
"password": "סיסמה",
"create": "הוספת חדש",
"confirmation": "אישור",
"cancel": "ביטול",
"delete": "מחיקה",
"close": "סגירה",
"connect": "התחברות",
"domain": "שם תחום",
"saving": "מתבצעת שמירה…",
"username": "שם משתמש",
"loading": "בטעינה…",
"later": "דילוג כדי להגדיר אחר כך",
"connect_to_existing": "התחברות לשרת SelfPrivacy קיים",
"reset": "איפוס",
"details": "פרטים",
"no_data": "אין נתונים",
"wait": "להמתין",
"remove": "הסרה",
"apply": "החלה",
"done": "בוצע",
"continue": "להמשיך",
"alert": "התראה",
"copied_to_clipboard": "הועתק ללוח הגזירים!",
"please_connect": "נא לחבר את השרת, שם התחום וספק ה־DNS שלך לפני שצוללים פנימה!"
},
"about_application_page": {
"privacy_policy": "מדיניות פרטיות",
"title": "על אודות",
"application_version_text": "היישום בגרסה {}",
"api_version_text": "גרסת ה־API של השרת היא {}"
},
"ssh": {
"root_subtitle": "בעלי המפתחות האלו יקבלו גישה מלאה לשרת ויוכלו לעשות איתו כל העולה על רוחם. יש להוסיף רק את המפתחות שלך לשרת.",
"title": "מפתחות SSH",
"create": "יצירת מפתח SSH",
"delete": "מחיקת מפתח SSH",
"delete_confirm_question": "למחוק את מפתח ה־SSH?",
"subtitle_with_keys": "{} מפתחות",
"subtitle_without_keys": "אין מפתחות",
"no_key_name": "מפתח ללא שם",
"root_title": "אלו מפתחות משתמש על",
"input_label": "מפתח ED25519, ECDSA או RSA ציבורי"
},
"domain": {
"ok": "הרשומות תקינות",
"email_subtitle": "רשומות שנחוצות לתכתובת דוא״ל מאובטחת.",
"card_title": "שם תחום",
"screen_title": "שם תחום ו־DNS",
"error": "נמצאו בעיות",
"error_subtitle": "יש לגעת כאן כדי לתקן אותן. הרשומות שהותאמו אישית תוסרנה.",
"refreshing": "המצב מתעדכן…",
"uninitialized": "הנתונים לא נמשכו עדיין",
"services_title": "שירותים",
"services_subtitle": "רשומות מסוג „A” נחוצות לכל אחד מהשירותים.",
"email_title": "דוא״ל",
"update_list": "עדכון הרשימה"
},
"console_page": {
"title": "מסוף",
"waiting": "בהמתנה לאתחול…",
"copy": "העתקה"
},
"about_us_page": {
"title": "עלינו"
},
"application_settings": {
"title": "הגדרות יישום",
"system_dark_theme_title": "ערכת העיצוב כברירת המחדל של המערכת",
"system_dark_theme_description": "להשתמש בערכות עיצוב בהירה או כהה בהתאם להגדרות המערכת שלך",
"dark_theme_title": "ערכת עיצוב כהה",
"dark_theme_description": "החלפת ערכת העיצוב של המערכת שלך",
"dangerous_settings": "הגדרות מסוכנות",
"reset_config_title": "איפוס הגדרות היישומון",
"reset_config_description": "איפוס מפתחות ה־API ומשתמש העל.",
"delete_server_title": "מחיקת שרת",
"delete_server_description": "מסיר את השרת שלך. הוא לא יהיה זמין עוד."
},
"backup": {
"waiting_for_rebuild": "אפשר ליצור את הגיבוי הראשון שלך בעוד כמה דקות.",
"error_pending": "השרת החזיר שגיאה, היא מופיעה להלן",
"create_new_select_heading": "לבחור מה לגבות",
"autobackup_period_subtitle": "גיבויים נוצרים כל {period}",
"autobackup_set_period": "הגדרת הפרש",
"backups_encryption_key_show": "הצגת מפתח ההצפנה",
"card_title": "גיבוי",
"card_subtitle": "ניהול הגיבויים שלך",
"description": "יציל לך את היום במקרים של אירועים חריגים: תקיפות האקרים, מחיקת השרת וכו׳.",
"reuploaded_key": "המפתח הועלה מחדש",
"initialize": "אתחול",
"restore": "שחזור מגיבוי",
"no_backups": "אין גיבויים עדיין",
"create_new": "יצירת גיבוי חדש",
"creating": "גיבוי חדש נוצר: {}%",
"restoring": "גיבוי משוחזר",
"refresh": "רענון מצב",
"refetch_backups": "משיכת רשימת הגיבויים מחדש",
"reupload_key": "אילוץ העלאת מפתח מחדש",
"refetch_backups_subtitle": "ביטול תוקף המטמון ומשיכת הנתונים מחדש מספק האחסון שלך. עשוי לגרור חיובים נוספים.",
"select_all": "לגבות הכול",
"start": "התחלת גיבוי",
"service_busy": "גיבוי נוסף מתבצע כרגע",
"show_more": "להציג עוד",
"autobackup_period_title": "משך גיבויים אוטומטיים",
"autobackup_period_never": "גיבויים אוטומטיים מושבתים",
"autobackup_period_every": "כל {period}",
"autobackup_period_disable": "השבתת גיבויים אוטומטיים",
"autobackup_custom": "התאמה אישית",
"autobackup_custom_hint": "נא למלא הפרשים מותאמים אישית בדקות",
"backups_encryption_key": "מפתח הצפנה",
"autobackup_period_set": "הפרש הוגדר",
"backups_encryption_key_subtitle": "יש לשמור עליו במקום בטוח.",
"backups_encryption_key_copy": "העתקת מפתח ההצפנה",
"reupload_key_subtitle": "ינחה את השרת להתחיל את אחסון הגיבוי שוב. כדאי להשתמש אם משהו לא תקין.",
"refetching_list": "תוך כמה דקות הרשימה תתעדכן",
"latest_snapshots": "תמונות המצב העדכניות ביותר",
"latest_snapshots_subtitle": "15 תמונות המצב העדכניות ביותר מוצגות",
"pending_jobs": "משימות גיבוי שפועלות כרגע",
"snapshot_service_title": "שירות",
"snapshot_creation_time_title": "מועד היצירה",
"snapshot_modal_select_strategy": "נא לבחור את אסטרטגיית השחזור",
"snapshots_title": "רשימת תמונות מצב",
"forget_snapshot": "התעלמות מתמונת המצב",
"forget_snapshot_error": "לא ניתן להתעלם מתמונת מצב",
"snapshot_modal_heading": "פרטי תמונת המצב",
"snapshot_id_title": "מזהה תמונת מצב",
"snapshot_modal_inplace_option_title": "החלפה במקום",
"snapshot_modal_inplace_option_description": "דורש פחות מקום בכונן אך יותר מסוכן. מחליף את הנתונים הנוכחיים בנתוני תמונת המצב במהלך ההורדה.",
"restore_started": "השחזור התחיל, יש לעיין ברשימת המשימות לצפייה במצב הנוכחי",
"snapshot_reason_title": "סיבת היצירה",
"snapshot_reasons": {
"auto": "נוצרה אוטומטית",
"unknown": "לא ידוע",
"explicit": "נוצרה לבקשתך המפורשת",
"pre_restore": "נוצרה מטעמי זהירות יתר בטרם שחזור מסוכן"
},
"quota_subtitles": {
"last": {
"zero": "הכלל מושבת",
"two": "שני הגיבויים האחרונים יישמרו ללא תלות בגילם",
"few": "{} הגיבויים האחרונים יישמרו ללא תלות בגילם",
"many": "{} הגיבויים האחרונים יישמרו ללא תלות בגילם",
"other": "{} הגיבויים האחרונים יישמרו ללא תלות בגילם",
"one": "הגיבוי האחרון יישמר ללא תלות בגילו"
},
"daily": {
"zero": "הכלל מושבת",
"one": "הגיבוי היומי האחרון יישמר",
"few": "{} הגיבויים היומיים האחרונים יישמרו",
"many": "{} הגיבויים היומיים האחרונים יישמרו",
"two": "שני הגיבויים היומיים האחרונים יישמרו",
"other": "{} הגיבויים היומיים האחרונים יישמרו"
},
"daily_infinite": "כל הגיבויים היומיים יישמרו",
"weekly": {
"zero": "הכלל מושבת",
"one": "הגיבוי השבועי האחרון יישמר",
"two": "שני הגיבויים השבועיים האחרונים יישמרו",
"many": "{} הגיבויים השבועיים האחרונים יישמרו",
"other": "{} הגיבויים השבועיים האחרונים יישמרו",
"few": "{} הגיבויים השבועיים האחרונים יישמרו"
},
"yearly": {
"zero": "הכלל מושבת",
"one": "הגיבוי השנתי האחרון יישמר",
"two": "שני הגיבויים השנתיים האחרונים יישמרו",
"many": "{} הגיבויים השנתיים האחרונים יישמרו",
"few": "{} הגיבויים השנתיים האחרונים יישמרו",
"other": "{} הגיבויים השנתיים האחרונים יישמרו"
},
"weekly_infinite": "כל הגיבויים השבועיים יישמרו",
"monthly": {
"zero": "הכלל מושבת",
"one": "הגיבוי החודש האחרון יישמר",
"few": "{} הגיבויים החודשיים האחרונים יישמרו",
"many": "{} הגיבויים החודשיים האחרונים יישמרו",
"two": "שני הגיבויים החודשיים האחרונים יישמרו",
"other": "{} הגיבויים החודשיים האחרונים יישמרו"
},
"monthly_infinite": "כל הגיבויים החודשיים יישמרו",
"yearly_infinite": "כל הגיבויים השנתיים יישמרו",
"last_infinite": "כל הגיבויים יישמרו",
"no_effect": "לכלל הזה אין שום השפעה כיוון שכלל אחר ישמור יותר גיבויים"
},
"quotas_only_applied_to_autobackups": "הגדרות אלו חלות רק על גיבויים אוטמטיים. גיבויים ידניים לא יימחקו.",
"quota_titles": {
"last": "כמה גיבויים אחרונים לשמור",
"daily": "כמה גיבויים יומיים לשמור",
"monthly": "כמה גיבויים חודשיים לשמור",
"yearly": "כמה גיבויים שנתיים לשמור",
"weekly": "כמה גיבוים שבועיים לשמור"
},
"rotation_quotas_title": "הגדרות מחזוריות תמונות מצב",
"set_rotation_quotas": "הגדרת מכסות מחזוריות חדשות",
"quotas_set": "הוגדרו מכסות מחזוריות גיבוי חדשות",
"backups_encryption_key_description": "המפתח הזה משמש להצפנת הגיבויים שלך. אם יאבד, לא יהיה לך איך לשחזר את הגיבויים שלך. רצוי לשמור אותו במקום בטוח כיוון שהוא יועיל לך מאוד במקרה שצריך לשחזר גיבויים ידנית.",
"backups_encryption_key_not_found": "מפתח ההצפנה לא נמצא, נא לנסות שוב מאוחר יותר.",
"snapshot_modal_download_verify_option_title": "להוריד, לאמת ואז להחליף",
"forget_snapshot_alert": "פעולה זו תמחק תמונת מצב. להמשיך? זאת בדרך כלל פעולה בלתי הפיכה.",
"snapshot_modal_download_verify_option_description": "פחות מסוכן אך דורש יותר מקום בכונן. מוריד את כל תמונת המצב לאחסון האזמנה, מאמת אותה ומחליף את הנתונים הנוכחיים.",
"snapshot_modal_service_not_found": "זאת תמונת מצב של שירות שאין לך יותר על השרת. בדרך כלל זה לא אמור לקרות אך אין לנו אפשרות לבצע את השחזור האוטומטי. עדיין ניתן להוריד את תמונת המצב כדי לשחזר אותה ידנית. אפשר ליצור קשר עם SelfPrivacy לקבלת תמיכה במקרה הצורך.",
"restore_alert": "פעולה זו תשחזר מגיבוי שנוצר ב־{}. כל הנתונים הנוכחיים יאבדו. להמשיך?"
},
"onboarding": {
"page1_title": "עצמאות דיגיטלית, לכל אחד מאתנו",
"page2_title": "SelfPrivacy זה לא ענן, זאת חוות השרתים האישית שלך",
"page2_server_provider_title": "ספק שרתים",
"page2_dns_provider_title": "ספק DNS",
"page2_backup_provider_title": "ספק גיבויים",
"page1_text": "דוא״ל, VPN, יישום תכתובות, רשת חברתית ועוד בשרת פרטי מחדש, תחת שליטתך.",
"page2_text": "SelfPrivacy עובד רק עם ספקים לבחירתך. אם אין לך חשבונות נחוצים אצלם, אנו נסייע לך ליצור אותם.",
"page2_server_provider_text": "ספק שרתים מתחזק את השרת שלך בחוות שרתים משלו. SelfPrivacy תתחבר אוטומטית לספק ותגדיר את כל מה שצריך.",
"page2_dns_provider_text": "צריך שם תחום כדי שיהיה לך מקום באינטרנט. וצריך גם ספק DNS אמין שיפנה משם התחום לשרת שלך. אנו מציעים לך לבחור מבין ספקי ה־DNS הנתמכים כדי להגדיר תקשורת אוטומטית.",
"page2_backup_provider_text": "מה אם משהו יקרה לשרת שלך? למשל תקיפת האקרים, מחיקת מידע בשוגג או מניעת שירות? הנתונים שלך יישמרו בצורה בטוחה בגיבויי הספק שלך. הם יוצפנו בצורה מאובטחת ויהיו נגישים בכל עת כדי לשחזר את השרת שלך מהם."
},
"resource_chart": {
"month": "חודש",
"day": "יום",
"hour": "שעה",
"network_title": "ניצולת רשת",
"in": "נכנס",
"out": "יוצא",
"cpu_title": "ניצולת מעבד"
},
"server": {
"card_title": "שרת",
"description": "כל השירותים שלך חיים כאן",
"general_information": "מידע כללי",
"resource_usage": "ניצולת משאבים",
"allow_autoupgrade": "לאפשר שדרוג אוטומטי",
"allow_autoupgrade_hint": "לאפשר שדרוגי חבילות אוטומטיים בשרת",
"reboot_after_upgrade": "להפעיל מחדש לאחר שדרוג",
"reboot_after_upgrade_hint": "להפעיל מחדש ללא בקשה לאחר החלת השינויים בשרת",
"server_timezone": "אזור הזמן של השרת",
"select_timezone": "בחירת אזור זמן",
"timezone_search_bar": "שם אזור הזמן או ערך הזחת השעה",
"server_id": "מזהה שרת",
"status": "מצב",
"cpu": "מעבד",
"ram": "זיכרון",
"disk": "כונן מקומי",
"monthly_cost": "עלות חודשית",
"location": "מקום",
"pricing_error": "לא ניתן למשוך את מחירי הספקים",
"server_provider": "ספק שרתים",
"dns_provider": "ספק DNS",
"core_count": {
"one": "ליבה אחת",
"two": "{} ליבות",
"few": "{} ליבות",
"many": "{} ליבות",
"other": "{} ליבות"
}
},
"record": {
"root": "שם תחום על",
"api": "ה־API של SelfPrivacy",
"cloud": "ענן קבצים",
"git": "שרת Git",
"meet": "ועידת וידאו",
"social": "רשת חברתית",
"password": "מנהל סיסמאות",
"vpn": "VPN",
"mx": "רשומת MX",
"dmarc": "רשומת DMARC",
"spf": "רשומת SPF",
"dkim": "מפתח DKIM"
},
"storage": {
"card_title": "אחסון בשרת",
"status_ok": "ניצולת הכונן תקינה",
"price": "מחיר",
"status_error": "חסר מקום בכונן",
"disk_usage": "{} מנוצלים",
"disk_total": "{} בסך הכול · {}",
"data_migration_title": "הסבת נתונים",
"gb": "{} ג״ב",
"mb": "{} מ״ב",
"kb": "{} ק״ב",
"bytes": "בתים",
"extend_volume_button": "הרחבת כרך",
"extending_volume_title": "הרחבת כרך",
"extending_volume_description": "שינוי גודל כרך מאפשר לך לאחסן יותר נתונים בשרת שלך מבלי להגדיר את השרת עצמו. אפשר רק להרחיב כרכים: אי אפשר לכווץ אותם.",
"extending_volume_price_info": "המחיר כולל מע״מ והוא משוערך על בסיס נתוני החיוב שמסופקים על ידי ספק השרת שלך. השרת יופעל מחדש לאחר שינוי הגודל.",
"extending_volume_error": "לא ניתן לאתחל את הרחבת הכרך.",
"size": "גודל",
"data_migration_notice": "במהלך ההסבה כל השירותים ייכבו.",
"start_migration_button": "התחלת הסבה",
"migration_process": "הסבה מתבצעת…",
"migration_done": "הסתיימה",
"extending_volume_modal_description": "לשדרג ל־{} בתוכנית של {} לחודש."
},
"service_page": {
"enable": "הפעלת שירות",
"move": "העברה לכרך אחר",
"uses": "משתמש ב־{usage} על גבי {volume}",
"status": {
"active": "פעיל",
"inactive": "נעצר",
"failed": "התחלה נכשלה",
"off": "מושבת",
"activating": "מופעל",
"deactivating": "נעצר",
"reloading": "מופעל מחדש"
},
"snapshots": "תמונות מצב של גיבוי",
"nothing_here": "אין כאן כלום",
"open_in_browser": "פתיחה בדפדפן",
"restart": "הפעלת השירות מחדש",
"disable": "השבתת שירות"
},
"not_ready_card": {
"in_menu": "השרת לא מוגדר עדיין. נא לסיים את ההגדרה באמצעות אשף ההקמה כדי להמשיך בהקמה."
},
"mail": {
"login_info": "להשתמש בשם המשתמש והסיסמה מלשונית המשתמשים. פתחת ה־IMAP היא 143 עם STARTTLS, פתחת ה־SMTP היא 587 עם STARTTLS.",
"subtitle": "דוא״ל לחברה ולמשפחה.",
"title": "דוא״ל"
},
"password_manager": {
"title": "מנהל סיסמאות",
"subtitle": "בסיס האטבחה שלך. Bitwarden יסייע לך ליצור, לאחסן ולעביר סיסמאות בין מכשירים ואף למלא אותן כשיש צורך בזה עם השלמה אוטומטית.",
"login_info": "צריך ליצור חשבון באתר."
},
"video": {
"title": "ועידת וידאו",
"subtitle": "Zoom ו־Google Meet הם אחלה שירותים אבל Jitsi Meet הוא חלופה ראויה שגם מבטיחה שלא מאזינים לך.",
"login_info": "לא צריך חשבון."
},
"vpn": {
"subtitle": "שרת VPN פרטי",
"title": "שרת VPN"
},
"git": {
"subtitle": "חלופה פרטית ל־GitHub ששייכת לך, אך לא ל־Microsoft.",
"login_info": "צריך ליצור חשבון באתר. המשתמש הראשון יהיה המנהל.",
"title": "שרת Git"
},
"users": {
"login": "כניסה",
"new_user_info_note": "למשתמש חדש תוענק אוטומטית גישה לכל השירותים",
"delete_confirm_question": "להמשיך?",
"reset_password": "איפוס סיסמה",
"account": "חשבון",
"send_registration_data": "שיתוף פרטי גישה",
"no_ssh_notice": "למשתמש זה נוצרים רק חשבונות דוא״ל ו־SSH. כניסה אחודה לכל השירותים מגיעה בקרוב.",
"details_title": "פרטי משתמש",
"add_new_user": "הוספת המשתמש הראשון",
"new_user": "משתמש חדש",
"delete_user": "מחיקת משתמש",
"nobody_here": "אי כאן אף אחד",
"could_not_fetch_users": "לא ניתן למשוך את רשימת המשתמשים",
"could_not_fetch_description": "נא לבדוק את החיבור שלך לאינטרנט ולנסות שוב",
"refresh_users": "רענון רשימת המשתמשים",
"could_not_create_user": "לא ניתן ליצור משתמש",
"could_not_delete_user": "לא ניתן למחוק משתמש",
"could_not_add_ssh_key": "לא ניתן להוסיף מפתח SSH",
"email_login": "כניסה עם דוא״ל",
"username_rule": "שם המשתמש חייב להכיל אותיות לטיניות קטנות, ספרות וקווים תחתיים ואסור לו להתחיל בספרה"
},
"initializing": {
"dns_provider_description": "שירות שמאפשר ל־IP שלך להצביע על שמות תחום:",
"select_provider_countries_text_hetzner": "גרמניה, פינלנד, ארה״ב",
"select_provider_countries_text_do": "ארה״ב, הולנד, סינגפור, אנגליה, גרמניה, קנדה, הודו, אוסטרליה",
"select_provider": "יש לבחור ספק מהרשימה שלהלן, כולם תומכים ב־SelfPrivacy",
"select_provider_notice": "הכוונה ב‚יחסית קטן’ היא מכונה עם 2 ליבות מעבד ו־2 גיגה בתים של זיכרון.",
"select_provider_countries_title": "מדינות זמינות",
"select_provider_price_text_hetzner": "€8 לחודש לשרת קטן יחסית עם 50 ג״ב של כונן אחסון",
"select_provider_payment_text_hetzner": "כרטיסי אשראי, העברה בנקאית, SEPA, PayPal",
"select_provider_payment_text_cloudflare": "כרטיסי אשראי",
"select_provider_price_text_do": "17$ לחודש לשרת קטן יחסית עם 50 ג״ב של כונן אחסון",
"select_provider_payment_title": "שיטות תשלום",
"select_provider_payment_text_do": "כרטיסי אשראי, Google Pay, PayPal",
"how": "איך לקבל אסימון API",
"provider_bad_key_error": "מפתח ה־API של הספק שגוי",
"could_not_connect": "לא ניתן להתחבר לספק.",
"locations_not_found": "אופס!",
"choose_location_type": "איפה להזמין את השרת שלך?",
"connect_to_server_provider_text": "עם אסימון API יכול SelfPrivacy לשכור מכונה ולהקים את השרת שלך עליה",
"no_server_types_found": "לא נמצאו סוגי שרתים. נא לוודא שהחשבון שלך נגיש ולנסות לשנות את מקום השרת שלך.",
"multiple_domains_found_text": "האסימון שסיפקת מעניק גישה לשמות התחום הבאים. נא לבחור את האחד לשימוש. כדי לשמור על אבטחת שאר שמות התחום שלך, כדאי להגביל את הגישה של האסימון הזה רק לשם התחום שמיועד לשימוש עם SelfPrivacy.",
"use_this_domain_text": "האסימון שסיפקת מעניק גישה לשם התחום הבא",
"multiple_domains_found": "נמצאו מגוון שמות תחום",
"connect_backblaze_storage": "חיבור אחסון של Backblaze",
"no_connected_domains": "אין שמות תחום מחוברים כרגע",
"one_more_restart": "הפעלה נוספת מחדש כדי להחיל את אישורי האבטחה שלך.",
"what": "מה זה אומר?",
"server_rebooted": "השרת הופעל מחדש. בהמתנה לאימות האחרון…",
"server_started": "השרת הופעל. הוא יאומת ויופעל מחדש כעת…",
"server_created": "השרת נוצר. בדיקות ה־DNS וטעינת השרת מתבצעות…",
"until_the_next_check": "עד לבדיקה הבאה: ",
"check": "בדיקה",
"steps": {
"server": "שרת",
"server_type": "סוג שרת",
"dns_provider": "ספק DNS",
"backups_provider": "גיבויים",
"domain": "שם תחום",
"master_account": "חשבון ראשי",
"hosting": "אירוח",
"dns_setup": "הגדרת DNS",
"nixos_installation": "התקנת NixOS",
"final_checks": "בדיקות אחרונות",
"server_reboot": "השרת מופעל מחדש"
},
"select_provider_email_notice": "אירוח דוא״ל לא יהיה זמין ללקוחות חדשים. עם זאת, אפשרות זו תיפתח לאחר השלמת התשלום הראשון שלך.",
"choose_server_type_text": "קיבולות משאבים שונות תומכות בשירותים שונים. אל חשש, אפשר להגדיל את השרת שלך בכל עת",
"found_more_domains": "נמצא יותר משם תחום אחד. מטעמי אבטחה, נבקש ממך למחוק שמות תחום שאינם נחוצים",
"server_provider_description": "מקום בו הנתונים ושירותי ה־SelfPrivacy שלך יאוחסנו:",
"connect_to_server": "הבה נתחיל עם שרת.",
"select_provider_price_title": "מחיר ממוצע",
"select_provider_price_free": "חינם",
"select_provider_site_button": "ביקור באתר",
"connect_to_server_provider": "כעת יש להיכנס דרך ",
"choose_location_type_text": "מקומות שונים מציעים הגדרות, מחירים ומהירויות חיבור שונות לשרת.",
"locations_not_found_text": "אין שרתים זמינים להשכרה",
"back_to_locations": "נא לבחור משהו אחר",
"no_locations_found": "לא נמצאו מקומות זמינים, נא לוודא שהחשבון שלך זמין",
"choose_server_type_payment_storage": "{} לשטח אחסון נוסף",
"choose_server_type_payment_ip": "{} לכתובת ה־IPv4 הציבורית",
"dns_provider_bad_key_error": "מפתח ה־API שגוי",
"connect_to_dns": "חיבור לספק ה־DNS",
"select_dns": "עכשיו נבחר ספק DNS",
"manage_domain_dns": "כדי לנהל את ה־DNS של שם התחום שלך",
"use_this_domain": "להשתמש בשם התחום הזה?",
"loading_domain_list": "רשימת שמות התחום נטענת",
"choose_server_type": "איזה סוג של שרת נחוץ לך?",
"choose_server_type_ram": "{} ג״ב זיכרון",
"choose_server_type_storage": "{} ג״ב אחסון מערכת",
"choose_server_type_payment_per_month": "{} לחודש",
"choose_server_type_payment_server": "{} לשרת",
"backblaze_bad_key_error": "פרטי האחסון שלך ב־Backblaze שגויים",
"choose_server_type_notice": "הדברים החשובים לעקוב אחריהם הם המעבד והזיכרון. הנתונים של השירותים שלך יאוחסנו בכונן מעוגן שאפשר להגדיל בקלות והתשלום עליו נפרד.",
"connect_to_dns_provider_text": "עם מפתח API ינהל SelfPrivacy את כל רשומות ה־DNS שלו",
"save_domain": "שמירת שם התחום",
"final": "צעד אחרון",
"create_server": "יצירת שרת",
"enter_username_and_password": "נא למלא שם משתמש וסיסמה חזקה",
"finish": "הכול מאותחל",
"create_master_account": "יצירת חשבון ראשי",
"checks": "בדיקות הושלמו \n{} מתוך {}"
},
"recovering": {
"method_select_other_device": "יש לי גישה דרך מכשיר אחר",
"method_select_recovery_key": "יש לי מפתח שחזור",
"method_recovery_input_description": "נא לספק את מפתח השחזור שלך",
"fallback_select_description": "מה יש לך בדיוק? נא לבחור את האפשרות הזמינה הראשונה:",
"method_device_description": "יש לפתוח את היישום במכשיר אחר, לאחר מכן לגשת לעמוד המכשירים. שם ללחוץ על „הוספת מכשיר” כדי לקבל את האסימון שלך.",
"method_select_nothing": "אין לי אף אחד מאלה",
"method_device_button": "קיבלתי את האסימון שלי",
"method_device_input_description": "נא לספק את אסימון האימות שלך",
"method_device_input_placeholder": "אסימון",
"authorization_failed": "אי אפשר להיכנס עם המפתח הזה",
"fallback_select_provider_console_hint": "למשל: Hetzner.",
"fallback_select_root_ssh": "גישת על (root) ב־SSH לשרת.",
"fallback_select_provider_console": "גישה למסוף השרת של הספק שלי.",
"modal_confirmation_ip_valid": "ה־IP זהה לזה שברשומת ה־DNS",
"modal_confirmation_ip_invalid": "ה־IP שונה מזה שברשומת ה־DNS",
"generic_error": "הפעולה בוטלה, נא לנסות שוב.",
"recovery_main_header": "התחברות לשרת SelfPrivacy קיים",
"domain_recover_placeholder": "שם התחום שלך",
"domain_recover_error": "לא נמצא שרת עם שם תחום כזה",
"method_select_description": "נא לבחור שיטת שחזור:",
"provider_connected": "התחברות אל {}",
"domain_recovery_description": "נא למלא את שם תחום השרת לאספקת גישה:",
"fallback_select_token_copy": "העתקת אסימון האימות מגרסה אחרת של היישומון.",
"confirm_server": "אישור השרת",
"confirm_server_description": "השרת שלך נמצא! עכשיו צריך לוודא שזה הנכון:",
"confirm_server_accept": "כן! זה הנכון",
"provider_connected_placeholder": "אסימון {}",
"provider_connected_description": "נא לספק את האסימון עם גישה אל {}:",
"confirm_server_decline": "בחירה בשרת אחר",
"choose_server": "בחירה בשרת שלך",
"choose_server_description": "לא הצלחנו לפענח לאיזה מהשרתים ניסית להתחבר.",
"no_servers": "אין שרתים זמינים בחשבון שלך.",
"domain_not_available_on_token": "שם התחום הנבחר לא זמין לאסימון הזה.",
"modal_confirmation_title": "זה באמת השרת שלך?",
"modal_confirmation_description": "אם בחרת להתחבר לשרת הלא נכון הנתונים שלך עלולים להימחק לצמיתות.",
"modal_confirmation_dns_valid": "ה־DNS ההפוך תקף",
"modal_confirmation_dns_invalid": "ה־DNS ההפוך מצביע לשם תחום אחר"
},
"devices": {
"main_screen": {
"tip": "לחיצה על המכשיר תשלול לו את הגישה.",
"header": "מכשירים",
"description": "למכשירים האלה יש גישה מלאה לשרת דרך יישומון SelfPrivacy.",
"this_device": "המכשיר הזה",
"other_devices": "מכשירים אחרים",
"authorize_new_device": "אימות מכשיר חדש",
"access_granted_on": "הוענקה גישה דרך {}"
},
"add_new_device_screen": {
"header": "אימות מכשיר חדש",
"description": "נא לספק את המפתח במכשיר לאישור:",
"please_wait": "נא להמתין",
"tip": "המפתח תקף ל־10 דקות.",
"expired": "תוקף המפתח פג.",
"get_new_key": "הנפקת מפתח חדש"
},
"revoke_device_alert": {
"header": "לשלול גישה?",
"description": "למכשיר {} לא תהיה עוד גישה לשרת.",
"yes": "שלילה",
"no": "ביטול"
}
},
"recovery_key": {
"key_amount_toggle": "הגבלה לפי מספר שימושים",
"key_amount_field_title": "מספר שימושים מרבי",
"key_duedate_toggle": "הגבלה בזמן",
"key_duedate_field_title": "מועד תום התוקף",
"key_receive_button": "קבלת מפתח",
"key_receiving_done": "בוצע!",
"key_connection_error": "לא ניתן להתחבר לשרת.",
"key_synchronizing": "מתבצע סנכרון…",
"key_main_header": "ממפתח שחזור",
"key_valid_until": "תקף עד {}",
"key_main_description": "נחוץ לאימות SelfPrivacy כאשר כל שאר המכשירים שאינם מאומתים אינם זמינים.",
"key_valid": "המפתח שלך תקף",
"key_invalid": "המפתח שלך לא תקף עוד",
"key_valid_for": "תקף לטובת {} שימושים",
"key_creation_date": "נוצר ב־{}",
"key_replace_button": "הנפקת מפתח חדש",
"key_receiving_description": "יש לכתוב לך את המפתח הזה ולאחסן במקום בטוח. הוא משמש לשחזור הגישה המלאה לשרת שלך:",
"generation_error": "לא ניתן לייצר מפתח שחזור. {}",
"key_receiving_info": "המפתח לא יופיע עוד לעולם, אך אפשר להחליף אותו באחר."
},
"modals": {
"purge_all_keys": "למחוק לחלוטין את כל מפתחות האימות?",
"try_again": "לנסות שוב?",
"unexpected_error": "שגיאת פתע במהלך הצבה מצד הספק.",
"are_you_sure": "לנסות שוב?",
"destroy_server": "להשמיד את השרת וליצור אחד חדש?",
"purge_all_keys_confirm": "כן, למחוק לחלוטין את כל האסימונים שלי",
"delete_server_volume": "למחוק את השרת והכרך?",
"reboot": "להפעיל מחדש",
"yes": "כן",
"dns_removal_error": "לא ניתן להסיר רשומת DNS.",
"server_deletion_error": "לא ניתן למחוק שרת פעיל.",
"volume_creation_error": "לא ניתן ליצור כרך.",
"server_validators_error": "לא ניתן למשוך את השרתים הזמינים.",
"already_exists": "כבר קיים שרת כזה.",
"you_cant_use_this_api": "אי אפשר להשתמש ב־API הזה לשמות תחום עם TLD (סיומת על) שכזאת.",
"no": "לא"
},
"jobs": {
"service_turn_off": "גיבוי",
"service_turn_on": "הפעלה",
"job_added": "נוספה משימה",
"run_jobs": "הפעלת משימות",
"generic_error": "לא ניתן להתחבר לשרת!",
"title": "רשימת משימות",
"start": "התחלה",
"empty": "אין משימות",
"create_user": "יצירת משתמש",
"delete_user": "מחיקת משתמש",
"reboot_success": "השרת מופעל מחדש",
"upgrade_success": "החל שדרוג השרת",
"upgrade_failed": "שדרוג השרת נכשל",
"upgrade_server": "שדרוג שרת",
"reboot_server": "הפעלת שרת מחדש",
"create_ssh_key": "יצירת מפתח SSH עבור {}",
"delete_ssh_key": "מחיקת מפתח SSH עבור {}",
"server_jobs": "משימות בשרת",
"reset_user_password": "איפוס סיסמת משתמש",
"reboot_failed": "לא ניתן להפעיל את השרת מחדש. נא לעיין ביומני היישום.",
"config_pull_failed": "משיכת שדרוג ההגדרות נכשלה. שדרוג התוכנה החל בכל זאת."
},
"validations": {
"required": "נחוץ",
"already_exist": "כבר קיים",
"invalid_format": "תבנית שגויה",
"invalid_format_password": "הסיסמה לא יכולה להכיל רווחים",
"invalid_format_ssh": "חייב לעקוב אחר תבנית מפתח ה־SSH",
"root_name": "לא יכול להיות root (משתמש העל)",
"length_not_equal": "האורך הוא [], אמור להיות {}",
"length_longer": "האורך הוא [], אמור להיות קצר או שווה ל־{}"
},
"developer_settings": {
"cubit_statuses": "מצבי טעינת Cubit",
"routing": "ניתוב יישומים",
"reset_onboarding": "איפוס מתג קבלת פנים",
"reset_onboarding_description": "יש לאפס את מתג קבלת הפנים כדי להציג שוב את מסך קבלת הפנים",
"title": "הגדרות מפתחים",
"subtitle": "ההגדרות האלו הן לניפוי שגיאות בלבד. לא לשנות אותן אלא אם כן ברור לך לחלוטין מה כל דבר עושה.",
"server_setup": "הגדרת שרת",
"use_staging_acme_description": "חל על הקמת שרתים חדשים.",
"use_staging_acme": "להשתמש בשרת ACME לבדיקות",
"ignore_tls": "לא לאמת אישורי TLS",
"ignore_tls_description": "היישום לא יאמת אישורי RLS בעת התחברות לשרת."
},
"cloud": {
"title": "אחסון בענן",
"subtitle": "לא לאפשר לשירותי ענן לקרוא את הנתונים שלך באמצעות Nextcloud.",
"login_info": "שם המשתמש הוא admin, הסיסמה זהה לזאת של המשתמש הראשי שלך. אפשר ליצור חשבונות חדשים דרך המנשק של ה־Nextcloud שלך."
},
"social_network": {
"title": "רשת חברתית",
"login_info": "צריך ליצור חשבון באתר.",
"subtitle": "אומנם קשה להאמין אבל אפשר ליצור רשת חברתית משלך, עם כללים וקהל יעד משלך."
},
"timer": {
"sec": "{} שנ׳"
},
"support": {
"title": "תמיכה של SelfPrivacy"
}
}

View File

@ -254,7 +254,6 @@
"add_new_user": "Dodaj pierwszego użytkownika",
"new_user": "Nowy użytkownik",
"delete_user": "Usuń użytkownika",
"not_ready": "Połącz serwer, domenę I DNS w zakładce dostawcy, aby mieć możliwość dodać pierwszego użytkownika",
"nobody_here": "Tu będą pojawią się użytkownicy",
"login": "Login",
"new_user_info_note": "Nowy użytkownik automatycznie otrzyma dostęp do wszystkich serwisów",

View File

@ -24,7 +24,7 @@
"username": "Имя пользователя",
"loading": "Загрузка…",
"later": "Пропустить и настроить потом",
"connect_to_existing": "Подключиться к существующему серверу",
"connect_to_existing": "Подключиться к существующему серверу SelfPrivacy",
"reset": "Сбросить",
"details": "Детальная информация",
"no_data": "Нет данных",
@ -35,7 +35,8 @@
"continue": "Продолжить",
"alert": "Уведомление",
"copied_to_clipboard": "Скопировано в буфер обмена!",
"app_name": "SelfPrivacy"
"app_name": "SelfPrivacy",
"please_connect": "Настройте ваш сервер и подключите домен для полного погружения!"
},
"more_page": {
"configuration_wizard": "Мастер настройки",
@ -82,7 +83,7 @@
"no_key_name": "Безымянный ключ",
"root_title": "Это ключи суперпользователя",
"root_subtitle": "Владельцы указанных здесь ключей получают полный доступ к данным и настройкам сервера. Добавляйте исключительно свои ключи.",
"input_label": "Публичный ED25519 или RSA ключ"
"input_label": "Публичный ED25519, ECDSA или RSA ключ"
},
"onboarding": {
"page1_title": "Цифровая независимость доступна каждому",
@ -222,7 +223,7 @@
"snapshot_modal_inplace_option_description": "Требуется меньше свободного места, но выше риск. При загрузке данных из резервной копии заменяют текущие данные сразу.",
"restore_started": "Восстановление началось, проверьте текущий статус в списке заданий",
"quota_subtitles": {
"no_effect": "Это правило не имеет эффекта, так ак перекрыто другим правилом",
"no_effect": "Это правило не имеет эффекта, так как перекрыто другим правилом",
"last": {
"two": "Последние {} снимка будут сохраняться вне зависимости от даты создания",
"many": "Последние {} снимков будут сохраняться вне зависимости от даты создания",
@ -308,7 +309,9 @@
"data_migration_notice": "На время миграции данных все сервисы будут выключены.",
"start_migration_button": "Начать миграцию",
"migration_process": "Мигрируем…",
"migration_done": "Завершить"
"migration_done": "Завершить",
"price": "Цена",
"extending_volume_modal_description": "Хранилище будет расширено до {}, новая стоимость {} в месяц."
},
"not_ready_card": {
"in_menu": "Сервер ещё не настроен, воспользуйтесь мастером подключения."
@ -329,7 +332,8 @@
"deactivating": "Выключается",
"reloading": "Перезапускается"
},
"snapshots": "Снимки резервных копий"
"snapshots": "Снимки резервных копий",
"nothing_here": "Здесь ничего нет"
},
"mail": {
"title": "Почта",
@ -369,8 +373,7 @@
"add_new_user": "Добавьте первого пользователя",
"new_user": "Новый пользователь",
"delete_user": "Удалить пользователя",
"not_ready": "Подключите сервер, домен и DNS в разделе Провайдеры чтобы добавить первого пользователя",
"nobody_here": "Здесь будут отображаться пользователи",
"nobody_here": "Здесь никого нет",
"login": "Логин",
"new_user_info_note": "Новый пользователь автоматически получит доступ ко всем сервисам",
"delete_confirm_question": "Вы действительно хотите удалить учетную запись?",
@ -472,7 +475,7 @@
},
"recovering": {
"generic_error": "Ошибка проведения операции, попробуйте ещё раз.",
"recovery_main_header": "Подключиться к существующему серверу",
"recovery_main_header": "Подключение к существующему серверу SelfPrivacy",
"domain_recovery_description": "Введите домен, по которому вы хотите получить доступ к серверу:",
"domain_recover_placeholder": "Домен",
"domain_recover_error": "Не удалось найти сервер с таким доменом",

View File

@ -360,7 +360,6 @@
"login_info": "Musíte vytvoriť účet na webovej stránke."
},
"users": {
"not_ready": "Pripojte server, doménu a DNS v sekcii Poskytovatelia a pridajte prvého používateľa",
"could_not_fetch_users": "Nepodarilo sa načítať používateľov",
"could_not_delete_user": "Nepodarilo sa vymazať účet",
"could_not_add_ssh_key": "Nepodarilo sa pridať kľúč SSH",

View File

@ -217,7 +217,6 @@
"users": {
"login": "เข้าสู่ระบบ",
"add_new_user": "เพิ่มผู้ใช้แรก",
"not_ready": "โปรดเชื่อมต่อเซิร์ฟเวอร์ โดเมน และ DNS ในแท็บผู้ให้บริการ เพื่อให้สามารถเพิ่มผู้ใช้รายแรกได้",
"delete_confirm_question": "คุณแน่ใจใช่ไหม?",
"could_not_fetch_users": "ไม่สามารถดึงรายชื่อผู้ใช้",
"refresh_users": "รีเฟรชรายชื่อผู้ใช้",

View File

@ -391,7 +391,6 @@
"could_not_delete_user": "Не зміг видалити користувача",
"could_not_add_ssh_key": "Не зміг додати SSH-ключ",
"email_login": "Увійти через Email",
"not_ready": "Будь ласка, підключіть сервер, домен і DNS на вкладці \"Сервери\", щоб мати можливість додати першого користувача",
"could_not_fetch_description": "Перевірте підключення до Інтернету і спробуйте ще раз",
"username_rule": "Ім'я користувача має містити лише малі латинські літери, цифри і підкреслення, не слід починати з цифри",
"no_ssh_notice": "Для цього користувача створюються тільки поштові та SSH-акаунти. Єдина реєстрація для всіх сервісів незабаром."

3
ci.py
View File

@ -179,7 +179,8 @@ def ci_build_apk():
"&& flutter build apk --flavor nightly")
def ci_run_tests():
podman_online(f"{CONTAINER_HOME}/src", "flutter test",
podman_online(f"{CONTAINER_HOME}/src", "chown -R $(id -u):$(id -g) /tmp/gradle /tmp/flutter_pub_cache",
"&& flutter test",
"&& flutter test --machine --coverage > tests.output")
# Arguments

File diff suppressed because it is too large Load Diff

View File

@ -4,62 +4,62 @@ publish_to: 'none'
version: 0.9.1+19
environment:
sdk: '>=3.0.2 <4.0.0'
flutter: ">=3.10.2"
sdk: '>=3.2.1 <4.0.0'
flutter: ">=3.16.1"
dependencies:
animations: ^2.0.7
auto_route: ^7.3.2
animations: ^2.0.8
auto_route: ^7.8.4
auto_size_text: ^3.0.0
crypt: ^4.3.0
crypt: ^4.3.1
cubit_form: ^2.0.1
device_info_plus: ^9.0.2
dio: ^5.1.2
duration: 3.0.12
dynamic_color: ^1.6.5
easy_localization: ^3.0.2
device_info_plus: ^9.1.1
dio: ^5.4.0
duration: ^3.0.13
dynamic_color: ^1.6.8
easy_localization: ^3.0.3
either_option: ^2.0.1-dev.1
equatable: ^2.0.5
fl_chart: ^0.62.0
fl_chart: ^0.65.0
flutter:
sdk: flutter
flutter_bloc: ^8.1.3
flutter_markdown: ^0.6.14
flutter_secure_storage: ^8.0.0
flutter_svg: ^2.0.6
get_it: ^7.6.0
flutter_markdown: ^0.6.18+2
flutter_secure_storage: ^9.0.0
flutter_svg: ^2.0.9
get_it: ^7.6.4
gql: ^1.0.0
graphql: ^5.1.2
graphql_codegen: ^0.13.0
graphql: ^5.1.3
graphql_codegen: ^0.13.9
graphql_flutter: ^5.1.2
hive: ^2.2.3
hive_flutter: ^1.1.0
http: ^0.13.5
http: ^1.1.2
intl: ^0.18.0
ionicons: ^0.2.2
json_annotation: ^4.8.1
local_auth: ^2.1.6
local_auth: ^2.1.7
material_color_utilities: ^0.5.0
modal_bottom_sheet: ^3.0.0-pre
nanoid: ^1.0.0
package_info: ^2.0.2
pretty_dio_logger: ^1.3.1
provider: ^6.0.5
provider: ^6.1.1
pub_semver: ^2.1.4
timezone: ^0.9.2
url_launcher: ^6.1.11
url_launcher: ^6.2.1
# TODO: Developer is not available, update later.
# wakelock: ^0.6.2
dev_dependencies:
auto_route_generator: ^7.1.1
auto_route_generator: ^7.3.2
flutter_test:
sdk: flutter
build_runner: ^2.4.4
build_runner: ^2.4.7
flutter_launcher_icons: ^0.13.1
hive_generator: ^2.0.0
json_serializable: ^6.7.0
flutter_lints: ^2.0.1
hive_generator: ^2.0.1
json_serializable: ^6.7.1
flutter_lints: ^3.0.1
flutter_icons:
android: "launcher_icon"