From 30e67a3b83feb3d081c03f4ff7ff1cc62a18130e Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=D0=9D=D0=B8=D0=BA=D0=B8=D1=82=D0=B0=20=D0=90=D0=BB=D0=B5?=
=?UTF-8?q?=D0=BA=D1=81=D0=B0=D0=BD=D0=B4=D1=80=D0=BE=D0=B2=D0=B8=D1=87?=
<49814202+navanin@users.noreply.github.com>
Date: Thu, 22 Aug 2024 22:07:04 +0000
Subject: [PATCH] Add Russian language translation
---
packages/ui/public/locales/ru.json | 371 ++++++++++++++++++++++++++
packages/ui/src/hooks/use-language.ts | 1 +
packages/ui/update-translations.js | 1 +
3 files changed, 373 insertions(+)
create mode 100644 packages/ui/public/locales/ru.json
diff --git a/packages/ui/public/locales/ru.json b/packages/ui/public/locales/ru.json
new file mode 100644
index 000000000..fa49f7f63
--- /dev/null
+++ b/packages/ui/public/locales/ru.json
@@ -0,0 +1,371 @@
+{
+ "2fa": "2FA",
+ "2fa-description": "Дополнительный уровень безопасности для входа в Umbrel и приложения",
+ "2fa.disable.success": "Двухфакторная аутентификация отключена",
+ "2fa.disable.title": "Отключить двухфакторную аутентификацию",
+ "2fa.enable.or-paste": "Или вставьте следующий код в вашу программу-аутентификатор",
+ "2fa.enable.scan-this": "Отсканируйте этот QR-код с помощью приложения-аутентификатора, такого как Google Authenticator или Authy",
+ "2fa.enable.success": "Двухфакторная аутентификация включена",
+ "2fa.enable.title": "Включить двухфакторную аутентификацию",
+ "2fa.enter-code": "Введите код, из вашего приложения-аутентификатора",
+ "account": "Профиль",
+ "account-description": "Ваше имя и пароль",
+ "advanced-settings": "Расширенные настройки",
+ "advanced-settings-description": "Откройте терминал или зарегистрируйтесь в программе бета-тестирования UmbrelOS",
+ "app-not-found": "Приложение не найдено: {{app}}",
+ "app-only-over-tor": "{{app}} может быть использован только через Tor. Пожалуйста, зайдите в ваш Umbrel в браузере Tor по URL-адресу удаленного доступа (Настройки - Удаленный доступ через Tor), чтобы открыть это приложение.",
+ "app-page.section.about": "О приложении",
+ "app-page.section.credentials.title": "Учетные данные",
+ "app-page.section.info.compatibility": "Совместимость",
+ "app-page.section.info.compatibility-compatible": "Совместимо",
+ "app-page.section.info.developer": "Разработчик",
+ "app-page.section.info.source-code": "Исходный код",
+ "app-page.section.info.source-code.public": "Открыт",
+ "app-page.section.info.submitted-by": "Предоставлено",
+ "app-page.section.info.title": "Информация",
+ "app-page.section.info.version": "Версия",
+ "app-page.section.recommendations.title": "Вам также может понравиться",
+ "app-page.section.release-notes.title": "Что нового",
+ "app-page.section.release-notes.version": "Версия {{version}}",
+ "app-page.section.requires": "Требует",
+ "app-page.section.requires.support": "Получить поддержку",
+ "app-picker.search": "Поиск...",
+ "app-picker.select-app": "Выбрать приложение..",
+ "app-store.browse-category-apps": "Просмотр приложений категории {{category}} ",
+ "app-store.category.ai": "ИИ",
+ "app-store.category.all": "Все приложения",
+ "app-store.category.automation": "Умный дом & Автоматизация",
+ "app-store.category.bitcoin": "Криптовалюта",
+ "app-store.category.developer": "Инструменты разработчика",
+ "app-store.category.discover": "Обзор",
+ "app-store.category.files": "Файлы & Продуктивность",
+ "app-store.category.finance": "Финансы",
+ "app-store.category.media": "Медиа",
+ "app-store.category.networking": "Сетевые технологии",
+ "app-store.category.social": "Соцсети",
+ "app-store.description": "Настройки обновления приложения",
+ "app-store.menu.community-app-stores": "Магазины приложений сообщества",
+ "app-store.search-apps": "Искать приложения",
+ "app-store.search.no-results": "Ничего не найдено",
+ "app-store.search.results-for": "Результаты по запросу",
+ "app-store.title": "App Store",
+ "app-updates.less": "меньше",
+ "app-updates.more": "больше",
+ "app-updates.no-updates": "Все приложения обновлены!",
+ "app-updates.update": "Обновить",
+ "app-updates.update-all": "Обновить все",
+ "app-updates.updates-available-count_one": "{{count}} обновлений доступно",
+ "app-updates.updates-available-count_other": "{{count}} обновлений доступно",
+ "app-updates.updating": "Обновление...",
+ "app.install": "Установить",
+ "app.installing": "Установка",
+ "app.offline": "Не запущено",
+ "app.open": "Открыть",
+ "app.optimized-for-umbrel-home": "Оптимизировано для Umbrel Home",
+ "app.restarting": "Перезапуск",
+ "app.starting": "Запуск",
+ "app.stopped": "Остановлено",
+ "app.stopping": "Останавливается",
+ "app.uninstall.confirm.description": "Вся информация связанная с {{app}} будет удалена навсегда. Это действие нельзя отменить.",
+ "app.uninstall.confirm.submit": "Удалить",
+ "app.uninstall.confirm.title": "Удалить {{app}}?",
+ "app.uninstall.deps.used-by.description_one": "Сначала необходимо удалить {{firstAppToUninstall}}, чтобы удалить {{app}}.",
+ "app.uninstall.deps.used-by.description_other": "Сначала необходимо удалить эти приложения, чтобы удалить {{app}}.",
+ "app.uninstall.deps.used-by.title": "{{app}} используется",
+ "app.uninstalling": "Удаление",
+ "app.updating": "Обнновление",
+ "app.view": "Посмотреть",
+ "app_one": "приложение",
+ "app_other": "приложения",
+ "apps.uninstall.failed-to-get-required-apps": "Не удалось получить необходимые приложения",
+ "apps.uninstalled-all.success": "Удалены все приложения",
+ "auth.checking-backend-for-user": "Загрузка...",
+ "auth.failed-checking-if-user-logged-in": "Ошибка: Не удалось выполнить проверку подлинности входа в систему",
+ "auth.failed-to-check-if-user-exists": "Ошибка: Не удалось выполнить проверку наличия аутентификации",
+ "beta-program": "Программа бета-тестирования UmbrelOS",
+ "beta-program-description": "Подпишитесь на получение обновлений бета-версии umbrelOS, получите ранний доступ к новым функциям и помогите нам доработать их, предоставив свои отзывы. Бета-версии могут работать нестабильно, и для устранения неполадок могут потребоваться навыки работы с терминалом.",
+ "cancel": "Отмена",
+ "change": "Изменить",
+ "change-name": "Сменить имя",
+ "change-name.failed.name-required": "Необходимо ввести имя",
+ "change-name.input-placeholder": "Ваше имя",
+ "change-password": "Сменить пароль",
+ "change-password.callout": "Если вы потеряете свой пароль, вы не сможете войти в Umbrel. Убедитесь, что пароль надежно защищен.",
+ "change-password.current-password": "Текущий пароль",
+ "change-password.failed.current-required": "Необходимо ввести текущий пароль",
+ "change-password.failed.min-length": "Пароль должен содержать, как минимум {{characters}} символов",
+ "change-password.failed.must-be-unique": "Новый пароль должен отличаться от текущего",
+ "change-password.failed.new-required": "Необходимо ввести новый пароль",
+ "change-password.failed.no-match": "Пароли не совпадают",
+ "change-password.failed.repeat-required": "Требуется повторный ввод пароля",
+ "change-password.new-password": "Новый пароль",
+ "change-password.repeat-password": "Подтвердите новый пароль",
+ "check-for-latest-version": "Проверьте наличие последних обновлений umbrelOS",
+ "clipboard.copied": "Скопировано",
+ "close": "Закрыть",
+ "cmdk.change-wallpaper": "Сменить обои",
+ "cmdk.frequent-apps": "Часто используемое",
+ "cmdk.input-placeholder": "Ищите приложения, настройки или действия",
+ "cmdk.install-from-app-store": "из App Store",
+ "cmdk.live-usage": "Мониторинг ресурсов",
+ "cmdk.restart-umbrel": "Перезагрузить Umbrel",
+ "cmdk.shutdown-umbrel": "Выключить Umbrel",
+ "cmdk.update-all-apps": "Обновить все приложения",
+ "cmdk.widgets": "Виджеты",
+ "community-app-store": "магазин приложений",
+ "community-app-store.back-to-umbrel-app-store": "Назад к магазину приложений Umbrel",
+ "community-app-store.open-button": "Открыть",
+ "community-app-store.remove-button": "Удалитть",
+ "community-app-stores.add-button": "Добавить",
+ "community-app-stores.description": "Магазины приложений сообщества позволяют устанавливать приложения, которые могут быть недоступны в официальном магазине приложений Umbrel. Они также упрощают тестирование бета-версий приложений Umbrel перед их выпуском в официальном магазине приложений Umbrel.",
+ "community-app-stores.learn-more": "Узнать больше",
+ "community-app-stores.warning": "Магазины приложений сообщества могут быть созданы кем угодно. Приложения, опубликованные в них, не проверяются официальной командой Umbrel и потенциально могут быть небезопасными или вредоносными. Будьте осторожны и добавляйте магазины приложений только от разработчиков, которым вы доверяете.",
+ "confirm": "Подтвердить",
+ "connecting": "Подключение...",
+ "continue": "Продолжить",
+ "continue-to-log-in": "Продолжить вход",
+ "cpu": "CPU",
+ "cpu-core-count": "{{cores}} потока (-ов)",
+ "create-user": "Создать пользователя",
+ "default-credentials.close": "Понятно",
+ "default-credentials.description": "Вот учетные данные, которые вам понадобятся для входа в приложение.",
+ "default-credentials.dont-show-again": "Не показывать снова",
+ "default-credentials.open": "Открыть {{app}}",
+ "default-credentials.password": "Пароль по умолчанию",
+ "default-credentials.title": "Учетные данные для {{app}}",
+ "default-credentials.username": "Логин по умолчанию",
+ "desktop.app.context.go-to-store-page": "Посмотреть в магазине приложения",
+ "desktop.app.context.show-default-credentials": "Посмотреть учетные данные",
+ "desktop.app.context.uninstall": "Удалить",
+ "desktop.context-menu.change-wallpaper": "Сменить обои",
+ "desktop.context-menu.edit-widgets": "Редактировать виджеты",
+ "desktop.context-menu.logout": "Выход",
+ "desktop.greeting.afternoon": "Добрый день, {{name}}",
+ "desktop.greeting.evening": "Добрый вечер, {{name}}",
+ "desktop.greeting.morning": "Доброе утро, {{name}}",
+ "desktop.install-first.for-the-bitcoiner": "Для биткойнера",
+ "desktop.install-first.for-the-self-hoster": "Для селф-хостера",
+ "desktop.install-first.for-the-streamer": "Для стримера",
+ "desktop.install-first.link-to-app-store": "Ищите больше в Магазине Приложений",
+ "desktop.not-enough-room": "Используйте экран большего размера для просмотра ваших приложений.",
+ "device": "Устройство",
+ "device-info": "Информация об устройстве",
+ "device-info-description": "Информация о вашем устройстве",
+ "device-info.device": "Устройство",
+ "device-info.model-number": "Номер модели",
+ "device-info.serial-number": "Серийный номер",
+ "device-info.view-info": "Просмотр информации",
+ "disable": "Отключить",
+ "download-logs": "Скачать логи",
+ "factory-reset": "Сброс к заводским настройкам",
+ "factory-reset.confirm.body": "Подтвердите сброс Umbrel паролем",
+ "factory-reset.confirm.password-label": "Введите пароль",
+ "factory-reset.confirm.submit": "Стереть все и перезагрузить",
+ "factory-reset.confirm.submit-callout": "Это действие нельзя отменить.",
+ "factory-reset.desc": "Удалить все данные и приложения umbrelOS",
+ "factory-reset.failed.message": "Произошла ошибка во время сброса",
+ "factory-reset.failed.retry": "Повторить попытку сброса",
+ "factory-reset.failed.title": "Сброс не удался",
+ "factory-reset.reset": "Сброс",
+ "factory-reset.resetting.connecting": "Подключение",
+ "factory-reset.resetting.dont-turn-off-device": "Не выключайте устройство до завершения сброса настроек",
+ "factory-reset.review.account-info": "Информация об учетной записи и пароль",
+ "factory-reset.review.apps": "Приложения",
+ "factory-reset.review.following-will-be-removed": "С вашего устройства будут удалены следующие данные",
+ "factory-reset.review.installed-apps_one": "{{count}} установленное приложение",
+ "factory-reset.review.installed-apps_other": "{{count}} установленные приложения",
+ "factory-reset.review.submit": "Продолжить",
+ "factory-reset.review.total-data": "Всего",
+ "factory-reset.success.description": "Все ваши приложения, данные о приложениях и учетной записи были удалены с устройства. Теперь вы можете перезагрузить устройство.",
+ "factory-reset.success.restart-device": "Перезагрузить",
+ "factory-reset.success.title": "Сброс прошел успешно",
+ "hello": "Привет",
+ "install-first.description_one": "Установите это приложение, чтобы установить {{app}}.",
+ "install-first.description_other": "Установите эти приложения, чтобы установить {{app}}.",
+ "install-first.title": "{{app}} требует доступ к",
+ "install-your-first-app": "Установите свое первое приложение",
+ "language": "Язык",
+ "language-description": "Предпочитаемый язык umbrelOS",
+ "language.select-description": "Выберите предпочитаемый язык umbrelOS",
+ "linux": "Linux",
+ "live-usage": "Мониторинг ресурсов",
+ "loading": "Загрузка",
+ "local-ip": "Локальный IP-адрес",
+ "login-2fa.subtitle": "Введите код, из вашего приложения-аутентификатора",
+ "login-2fa.title": "Аутентификация",
+ "login-with-umbrel.description": "Введите пароль Umbrel, чтобы открыть {{app}}",
+ "login-with-umbrel.title": "Вход с Umbrel",
+ "login.password-label": "Пароль",
+ "login.password.submit": "Вход",
+ "login.subtitle": "Введите пароль Umbrel чтобы войти",
+ "login.title": "С возвращением",
+ "logout": "Выход",
+ "logout-error-generic": "Ошибка: не удалось выйти",
+ "logout.confirm.submit": "Выход",
+ "logout.confirm.title": "Вы уверены, что хотите выйти?",
+ "memory": "Память",
+ "memory.low": "Мало памяти",
+ "migrate": "Перенос",
+ "migrate.callout": "Не выключайте систему, до конца переноса",
+ "migrate.failed.retry": "Попробовать еще раз",
+ "migrate.failed.title": "Перенос не удался",
+ "migrate.success.description": "Все ваши приложения, данные о приложениях и учетной записи были перенесены на Umbrel Home.",
+ "migrate.success.title": "Перенос прошел успешно",
+ "migration-assistant": "Помощник по переносу",
+ "migration-assistant-description": "Перенесите все ваши приложения и данные с Raspberry Pi на Umbrel Home",
+ "migration-assistant-unsupported-device-description": "В настоящее время Помощник по переносу поддерживает перенос всех данных и приложений с Raspberry Pi с umbrelOS на Umbrel Home. Откройте Помощник по переносу в вашем Umbrel Home, чтобы начать.",
+ "migration-assistant.continue-migration.ready.submit": "Начать перенос",
+ "migration-assistant.failed": "Что-то не так...",
+ "migration-assistant.failed.retrying-message": "Повтор...",
+ "migration-assistant.mobile.start-button": "Начать перенос",
+ "migration-assistant.prep.body": "Подготовка к переносу",
+ "migration-assistant.prep.button-continue": "Продолжить",
+ "migration-assistant.prep.callout": "Информация на Umbrel Home будет навсегда удалена.",
+ "migration-assistant.prep.connect-disk-to-home": "Подключите внешний накопитель к любому USB-порту вашего устройства Umbrel Home.",
+ "migration-assistant.prep.prep-done-continue-message": "После этого нажмите '{{button}}' ниже.",
+ "migration-assistant.prep.shut-down-rpi": "Выключить Raspberry Pi Umbrel.",
+ "migration-assistant.ready.description": "Все данные и приложения готовы к переносу в Umbrel Home",
+ "migration-assistant.ready.hint-header": "Что нужно иметь в виду",
+ "migration-assistant.ready.hint-keep-pi-off.description": "Это помогает предотвратить проблемы с такими приложениями, как Lightning Node",
+ "migration-assistant.ready.hint-keep-pi-off.title": "Не включайте Raspberry Pi после обновления",
+ "migration-assistant.ready.hint-use-same-password.description": "Используйте пароль от Raspberry Pi Umbrel для входа в Umbrel Home",
+ "migration-assistant.ready.hint-use-same-password.title": "Use the same password",
+ "migration-assistant.ready.title": "Все готово к переносу!",
+ "name": "Имя",
+ "no-forgot-password-message": "Если вы потеряете свой пароль, вы не сможете войти в Umbrel. Убедитесь, что пароль надежно защищен.",
+ "no-results-found": "Ничего не найдено",
+ "not-found-404": "Ошибка: 404",
+ "not-found-404.back": "Назад",
+ "not-found-404.home": "Домой",
+ "notifications.cpu.too-hot": "Высокая температура процессора",
+ "notifications.memory.low": "В вашем устройстве недостаточно памяти",
+ "notifications.new-version-available": "{{update}} теперь доступен для установки",
+ "notifications.storage.full": "Память вашего устройства заполнена",
+ "notifications.view": "Просмотр",
+ "ok": "ОК",
+ "onboarding.account-created.by-clicking-button-you-agree": "Нажимая 'Далее', вы соглашаетесь с Условиями предоставления услуг umbrelOS",
+ "onboarding.account-created.next": "Дальше",
+ "onboarding.account-created.subtitle": "Ваш Umbrel готов к использованию.",
+ "onboarding.account-created.youre-all-set-name": "Все готово, {{name}}.",
+ "onboarding.contact-support": "Поддержка",
+ "onboarding.create-account": "Создать учетную запись",
+ "onboarding.create-account.confirm-password.input-label": "Подтвердите пароль",
+ "onboarding.create-account.failed.name-required": "Необходимо ввести имя",
+ "onboarding.create-account.failed.passwords-dont-match": "Пароли не совпадают",
+ "onboarding.create-account.name.input-placeholder": "Ваше имя",
+ "onboarding.create-account.password.input-label": "Пароль",
+ "onboarding.create-account.submit": "Создать",
+ "onboarding.create-account.submitting": "Создание",
+ "onboarding.create-account.subtitle": "Информация о вашей учетной записи хранится только в вашем Umbrel. Обязательно запомните ваш пароль, ведь восстановить его невозможно.",
+ "onboarding.start.continue": "Начать",
+ "onboarding.start.subtitle": "Ваш домашний облачный сервер готов к настройке.",
+ "onboarding.start.title": "Добро пожаловать в umbrelOS",
+ "open": "Открыть",
+ "open-live-usage": "Открыть Мониторинг ресурсов",
+ "password": "Пароль",
+ "preferences": "Предпочтения",
+ "raspberry-pi": "Raspberry Pi",
+ "read-less": "Читать меньше",
+ "read-more": "Читать больше",
+ "redirect.to-home": "Загрузка..",
+ "redirect.to-login": "Загрузка...",
+ "redirect.to-onboarding": "Загрузка...",
+ "remote-tor-access": "Удаленный доступ через Tor",
+ "restart": "Перезапуск",
+ "restart.confirm.submit": "Перезапустить",
+ "restart.confirm.title": "Вы уверены, что хотите перезапустить Umbrel?",
+ "restart.restarting": "Перезапуск",
+ "restart.restarting-message": "Пожалуйста, не обновляйте эту страницу и не выключайте Umbrel во время перезагрузки.",
+ "retry": "Повторить попытку",
+ "search": "Поиск",
+ "settings": "Настройки",
+ "settings.app-store-preferences.title": "Настройки Магазина приложений",
+ "settings.contact-support": "Нужна помощь? Обратитесь в поддержку.",
+ "shut-down": "Выключить",
+ "shut-down.complete": "Выключение успешно",
+ "shut-down.complete-text": "Теперь вы можете отключить устройство от сети.",
+ "shut-down.confirm.submit": "Выключить",
+ "shut-down.confirm.title": "Вы уверены, что хотите выключить Umbrel?",
+ "shut-down.shutting-down": "Выключение",
+ "shut-down.shutting-down-message": "Пожалуйста, не обновляйте эту страницу и не выключайте Umbrel во время выключения.",
+ "software-update.callout": "Пожалуйста, не обновляйте эту страницу и не выключайте Umbrel во время обновления",
+ "software-update.check": "Проверить наличие обновлений",
+ "software-update.checking": "Поиск обновлений...",
+ "software-update.current-running": "Вы используете ",
+ "software-update.failed": "Не удалось обновить",
+ "software-update.failed-to-check": "Не удалось проверить обновления",
+ "software-update.failed.retry": "Повторить попытку",
+ "software-update.install-now": "Установить сейчас",
+ "software-update.new-version": "Новый {{name}} доступен для установки",
+ "software-update.on-latest": "Вы используете последнюю версию umbrelOS",
+ "software-update.title": "Обновление ПО",
+ "software-update.updating-to": "Обновление до {{name}}",
+ "software-update.view": "Просмотр",
+ "something-left": "{{left}} осталось",
+ "something-went-wrong": "⚠ Что-то пошло не так",
+ "start": "Начать",
+ "stop": "Остановить",
+ "storage": "Хранилище",
+ "storage.full": "Хранилище заполнено",
+ "storage.low": "Низкий почти заполнено",
+ "temp.dangerously-hot": "Очень горячо",
+ "temp.nice": "Хорошо",
+ "temp.normal": "Нормально",
+ "temp.warm": "Тепло",
+ "temperature": "Температура",
+ "temperature.too-hot-suggestion": "Попробуйте изменить местоположение и окружающую среду вашего устройства.",
+ "terminal": "Терминал",
+ "terminal-description": "Запуск пользовательских команд в umbrelOS или в приложениях",
+ "terminal.app": "Приложение",
+ "terminal.app-description": "Запуск пользовательских команд в конкретном приложении",
+ "terminal.umbrelos-description": "Запуск пользовательских команд в umbrelOS",
+ "tor-description": "Получите доступ к Umbrel из любого места с помощью браузера Tor",
+ "tor.disable.description": "Это может занять несколько минут",
+ "tor.disable.progress": "Отключение Удаленного доступа через Tor",
+ "tor.disable.success": "Удаленный доступ через Tor отключен",
+ "tor.enable.description": "Это может занять несколько минут",
+ "tor.enable.mobile.switch-label": "Включение Удаленного доступа через Tor",
+ "tor.enable.submit": "Включить",
+ "tor.enable.success": "Удаленный доступ через Tor включен",
+ "tor.enable.title": "Включить Удаленного доступа через Tor",
+ "tor.hidden-service": "URL-адрес скрытого сервиса Tor",
+ "troubleshoot": "Отладка",
+ "troubleshoot-description": "Отладьте umbrelOS или приложения",
+ "troubleshoot-no-logs-yet": "Логов пока нет",
+ "troubleshoot-pick-title": "Отладка",
+ "troubleshoot.app": "Приложение",
+ "troubleshoot.app-description": "Просмотр логов приложения, установленного на Umbrel",
+ "troubleshoot.app-download": "Скачать логи {{app}}",
+ "troubleshoot.share-with-umbrel-support": "Поделиться с поддержкой Umbrel",
+ "troubleshoot.system-download": "Скачать {{label}}",
+ "troubleshoot.umbrelos-description": "Посмотреть логи umbrelOS",
+ "troubleshoot.umbrelos-logs": "логи umbrelOS ",
+ "trpc.backend-unavailable": "Ошибка: Не удалось подключиться к системному API",
+ "trpc.checking-backend": "Загрузка..",
+ "try-again": "Попробуйте еще раз",
+ "umbrel": "Umbrel",
+ "umbrel-home": "Umbrel Home",
+ "umbrelos": "umbrelOS",
+ "unknown": "Неизвестный",
+ "unknown-app": "Неизвестное приложение",
+ "unknown-error": "Неизвестная ошибка",
+ "uptime": "Время работы",
+ "wallpaper": "Обои",
+ "wallpaper-description": "Обои и тема вашего Umbrel",
+ "widget.progress.in-progress": "В процессе",
+ "widgets.edit.select-up-to-3-widgets": "Выберите до 3 виджетов",
+ "widgets.install-an-app-before-using-widgets": "Установите приложение, чтобы начать настраивать свой рабочий стол с помощью виджетов.",
+ "wifi": "Wi-Fi",
+ "wifi-connect-insecure-message": "Открытые сети могут быть небезопасными",
+ "wifi-connection-failed": "Не удается подключиться",
+ "wifi-dangerous-change-confirmation-description": "Изменение сети Wi-Fi может привести к отключению вашего Umbrel от сети. Для повторного подключения убедитесь, что Umbrel и устройство, с которого вы подключаетесь, подключены к одной сети.",
+ "wifi-dangerous-change-confirmation-title": "Вы уверены, что хотите сменить сеть Wi-Fi?",
+ "wifi-dangerous-disable-confirmation-description": "Отключение Wi-Fi может привести к отключению вашего Umbrel от сети. Для повторного подключения подключите к Umbrel кабель Ethernet и убедитесь, что Umbrel и устройство, с которого вы подключаетесь к нему, подключены к одной сети.",
+ "wifi-dangerous-disable-confirmation-title": "Вы уверены, что хотите отключить Wi-Fi?",
+ "wifi-description": "Подключите свое устройство к сети Wi-Fi",
+ "wifi-description-long": "Ваше устройство остается подключенным к выбранному вами Wi-Fi, даже если отсоединен кабель Ethernet, и автоматически подключается к Wi-Fi при запуске.",
+ "wifi-no-networks-message": "Сети Wi-Fi не найдены",
+ "wifi-searching": "Поиск сетей Wi-Fi...",
+ "wifi-unsupported-device-description": "Wi-Fi на этом устройстве не поддерживается. Это может быть связано с отсутствием или несовместимостью беспроводного адаптера.",
+ "wifi-view-networks": "Просмотр сетей"
+}
\ No newline at end of file
diff --git a/packages/ui/src/hooks/use-language.ts b/packages/ui/src/hooks/use-language.ts
index bb758e5f9..446649d22 100644
--- a/packages/ui/src/hooks/use-language.ts
+++ b/packages/ui/src/hooks/use-language.ts
@@ -32,6 +32,7 @@ export const languages = [
{name: 'Українська', code: 'uk'},
{name: 'Türkçe', code: 'tr'},
{name: '日本語', code: 'ja'},
+ {name: 'Русский', code: 'ru'},
] as const
const supportedLanguageCodes = map(languages, (entry) => entry.code)
diff --git a/packages/ui/update-translations.js b/packages/ui/update-translations.js
index 0a3cddddb..5e3315c57 100644
--- a/packages/ui/update-translations.js
+++ b/packages/ui/update-translations.js
@@ -35,6 +35,7 @@ const languageMapping = {
tr: 'Turkish',
uk: 'Ukrainian',
hu: 'Hungarian',
+ ru: 'Russian',
}
// Generates translations