summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--recovery.cpp150
-rw-r--r--tools/recovery_l10n/res/values-af/strings.xml9
-rw-r--r--tools/recovery_l10n/res/values-am/strings.xml9
-rw-r--r--tools/recovery_l10n/res/values-ar/strings.xml9
-rw-r--r--tools/recovery_l10n/res/values-az-rAZ/strings.xml9
-rw-r--r--tools/recovery_l10n/res/values-b+sr+Latn/strings.xml9
-rw-r--r--tools/recovery_l10n/res/values-be-rBY/strings.xml9
-rw-r--r--tools/recovery_l10n/res/values-bg/strings.xml9
-rw-r--r--tools/recovery_l10n/res/values-bn-rBD/strings.xml9
-rw-r--r--tools/recovery_l10n/res/values-bs-rBA/strings.xml9
-rw-r--r--tools/recovery_l10n/res/values-ca/strings.xml9
-rw-r--r--tools/recovery_l10n/res/values-cs/strings.xml9
-rw-r--r--tools/recovery_l10n/res/values-da/strings.xml9
-rw-r--r--tools/recovery_l10n/res/values-de/strings.xml9
-rw-r--r--tools/recovery_l10n/res/values-el/strings.xml9
-rw-r--r--tools/recovery_l10n/res/values-en-rAU/strings.xml9
-rw-r--r--tools/recovery_l10n/res/values-en-rGB/strings.xml9
-rw-r--r--tools/recovery_l10n/res/values-en-rIN/strings.xml9
-rw-r--r--tools/recovery_l10n/res/values-es-rUS/strings.xml9
-rw-r--r--tools/recovery_l10n/res/values-es/strings.xml9
-rw-r--r--tools/recovery_l10n/res/values-et-rEE/strings.xml9
-rw-r--r--tools/recovery_l10n/res/values-eu-rES/strings.xml9
-rw-r--r--tools/recovery_l10n/res/values-fa/strings.xml9
-rw-r--r--tools/recovery_l10n/res/values-fi/strings.xml9
-rw-r--r--tools/recovery_l10n/res/values-fr-rCA/strings.xml9
-rw-r--r--tools/recovery_l10n/res/values-fr/strings.xml9
-rw-r--r--tools/recovery_l10n/res/values-gl-rES/strings.xml9
-rw-r--r--tools/recovery_l10n/res/values-gu-rIN/strings.xml9
-rw-r--r--tools/recovery_l10n/res/values-hi/strings.xml9
-rw-r--r--tools/recovery_l10n/res/values-hr/strings.xml9
-rw-r--r--tools/recovery_l10n/res/values-hu/strings.xml9
-rw-r--r--tools/recovery_l10n/res/values-hy-rAM/strings.xml9
-rw-r--r--tools/recovery_l10n/res/values-in/strings.xml9
-rw-r--r--tools/recovery_l10n/res/values-is-rIS/strings.xml9
-rw-r--r--tools/recovery_l10n/res/values-it/strings.xml9
-rw-r--r--tools/recovery_l10n/res/values-iw/strings.xml9
-rw-r--r--tools/recovery_l10n/res/values-ja/strings.xml9
-rw-r--r--tools/recovery_l10n/res/values-ka-rGE/strings.xml9
-rw-r--r--tools/recovery_l10n/res/values-kk-rKZ/strings.xml9
-rw-r--r--tools/recovery_l10n/res/values-km-rKH/strings.xml9
-rw-r--r--tools/recovery_l10n/res/values-kn-rIN/strings.xml9
-rw-r--r--tools/recovery_l10n/res/values-ko/strings.xml9
-rw-r--r--tools/recovery_l10n/res/values-ky-rKG/strings.xml9
-rw-r--r--tools/recovery_l10n/res/values-lo-rLA/strings.xml9
-rw-r--r--tools/recovery_l10n/res/values-lt/strings.xml9
-rw-r--r--tools/recovery_l10n/res/values-lv/strings.xml9
-rw-r--r--tools/recovery_l10n/res/values-mk-rMK/strings.xml9
-rw-r--r--tools/recovery_l10n/res/values-ml-rIN/strings.xml9
-rw-r--r--tools/recovery_l10n/res/values-mn-rMN/strings.xml9
-rw-r--r--tools/recovery_l10n/res/values-mr-rIN/strings.xml9
-rw-r--r--tools/recovery_l10n/res/values-ms-rMY/strings.xml9
-rw-r--r--tools/recovery_l10n/res/values-my-rMM/strings.xml9
-rw-r--r--tools/recovery_l10n/res/values-nb/strings.xml9
-rw-r--r--tools/recovery_l10n/res/values-ne-rNP/strings.xml9
-rw-r--r--tools/recovery_l10n/res/values-nl/strings.xml9
-rw-r--r--tools/recovery_l10n/res/values-pa-rIN/strings.xml9
-rw-r--r--tools/recovery_l10n/res/values-pl/strings.xml9
-rw-r--r--tools/recovery_l10n/res/values-pt-rBR/strings.xml9
-rw-r--r--tools/recovery_l10n/res/values-pt-rPT/strings.xml9
-rw-r--r--tools/recovery_l10n/res/values-pt/strings.xml9
-rw-r--r--tools/recovery_l10n/res/values-ro/strings.xml9
-rw-r--r--tools/recovery_l10n/res/values-ru/strings.xml9
-rw-r--r--tools/recovery_l10n/res/values-si-rLK/strings.xml9
-rw-r--r--tools/recovery_l10n/res/values-sk/strings.xml9
-rw-r--r--tools/recovery_l10n/res/values-sl/strings.xml9
-rw-r--r--tools/recovery_l10n/res/values-sq-rAL/strings.xml9
-rw-r--r--tools/recovery_l10n/res/values-sr/strings.xml9
-rw-r--r--tools/recovery_l10n/res/values-sv/strings.xml9
-rw-r--r--tools/recovery_l10n/res/values-sw/strings.xml9
-rw-r--r--tools/recovery_l10n/res/values-ta-rIN/strings.xml9
-rw-r--r--tools/recovery_l10n/res/values-te-rIN/strings.xml9
-rw-r--r--tools/recovery_l10n/res/values-th/strings.xml9
-rw-r--r--tools/recovery_l10n/res/values-tl/strings.xml9
-rw-r--r--tools/recovery_l10n/res/values-tr/strings.xml9
-rw-r--r--tools/recovery_l10n/res/values-uk/strings.xml9
-rw-r--r--tools/recovery_l10n/res/values-ur-rPK/strings.xml9
-rw-r--r--tools/recovery_l10n/res/values-uz-rUZ/strings.xml9
-rw-r--r--tools/recovery_l10n/res/values-vi/strings.xml9
-rw-r--r--tools/recovery_l10n/res/values-zh-rCN/strings.xml9
-rw-r--r--tools/recovery_l10n/res/values-zh-rHK/strings.xml9
-rw-r--r--tools/recovery_l10n/res/values-zh-rTW/strings.xml9
-rw-r--r--tools/recovery_l10n/res/values-zu/strings.xml9
82 files changed, 799 insertions, 80 deletions
diff --git a/recovery.cpp b/recovery.cpp
index 02d460eb9..5f1607553 100644
--- a/recovery.cpp
+++ b/recovery.cpp
@@ -186,9 +186,6 @@ struct selabel_handle* sehandle;
* 9. main() calls reboot() to boot main system
*/
-static const int MAX_ARG_LENGTH = 4096;
-static const int MAX_ARGS = 100;
-
// open a given path, mounting partitions as necessary
FILE* fopen_path(const char *path, const char *mode) {
if (ensure_path_mounted(path) != 0) {
@@ -310,79 +307,68 @@ static void redirect_stdio(const char* filename) {
// - the actual command line
// - the bootloader control block (one per line, after "recovery")
// - the contents of COMMAND_FILE (one per line)
-static void
-get_args(int *argc, char ***argv) {
- bootloader_message boot = {};
- std::string err;
- if (!read_bootloader_message(&boot, &err)) {
- LOG(ERROR) << err;
- // If fails, leave a zeroed bootloader_message.
- memset(&boot, 0, sizeof(boot));
- }
- stage = strndup(boot.stage, sizeof(boot.stage));
-
- if (boot.command[0] != 0) {
- std::string boot_command = std::string(boot.command, sizeof(boot.command));
- LOG(INFO) << "Boot command: " << boot_command;
- }
-
- if (boot.status[0] != 0) {
- std::string boot_status = std::string(boot.status, sizeof(boot.status));
- LOG(INFO) << "Boot status: " << boot_status;
- }
-
- // --- if arguments weren't supplied, look in the bootloader control block
- if (*argc <= 1) {
- boot.recovery[sizeof(boot.recovery) - 1] = '\0'; // Ensure termination
- const char *arg = strtok(boot.recovery, "\n");
- if (arg != NULL && !strcmp(arg, "recovery")) {
- *argv = (char **) malloc(sizeof(char *) * MAX_ARGS);
- (*argv)[0] = strdup(arg);
- for (*argc = 1; *argc < MAX_ARGS; ++*argc) {
- if ((arg = strtok(NULL, "\n")) == NULL) break;
- (*argv)[*argc] = strdup(arg);
- }
- LOG(INFO) << "Got arguments from boot message";
- } else if (boot.recovery[0] != 0) {
- std::string boot_recovery = std::string(boot.recovery, 20);
- LOG(ERROR) << "Bad boot message\n" << "\"" <<boot_recovery << "\"";
- }
- }
-
- // --- if that doesn't work, try the command file (if we have /cache).
- if (*argc <= 1 && has_cache) {
- FILE *fp = fopen_path(COMMAND_FILE, "r");
- if (fp != NULL) {
- char *token;
- char *argv0 = (*argv)[0];
- *argv = (char **) malloc(sizeof(char *) * MAX_ARGS);
- (*argv)[0] = argv0; // use the same program name
-
- char buf[MAX_ARG_LENGTH];
- for (*argc = 1; *argc < MAX_ARGS; ++*argc) {
- if (!fgets(buf, sizeof(buf), fp)) break;
- token = strtok(buf, "\r\n");
- if (token != NULL) {
- (*argv)[*argc] = strdup(token); // Strip newline.
- } else {
- --*argc;
- }
- }
-
- check_and_fclose(fp, COMMAND_FILE);
- LOG(INFO) << "Got arguments from " << COMMAND_FILE;
- }
- }
-
- // --> write the arguments we have back into the bootloader control block
- // always boot into recovery after this (until finish_recovery() is called)
- std::vector<std::string> options;
- for (int i = 1; i < *argc; ++i) {
- options.push_back((*argv)[i]);
- }
- if (!write_bootloader_message(options, &err)) {
- LOG(ERROR) << err;
- }
+static std::vector<std::string> get_args(const int argc, char** const argv) {
+ CHECK_GT(argc, 0);
+
+ bootloader_message boot = {};
+ std::string err;
+ if (!read_bootloader_message(&boot, &err)) {
+ LOG(ERROR) << err;
+ // If fails, leave a zeroed bootloader_message.
+ boot = {};
+ }
+ stage = strndup(boot.stage, sizeof(boot.stage));
+
+ if (boot.command[0] != 0) {
+ std::string boot_command = std::string(boot.command, sizeof(boot.command));
+ LOG(INFO) << "Boot command: " << boot_command;
+ }
+
+ if (boot.status[0] != 0) {
+ std::string boot_status = std::string(boot.status, sizeof(boot.status));
+ LOG(INFO) << "Boot status: " << boot_status;
+ }
+
+ std::vector<std::string> args(argv, argv + argc);
+
+ // --- if arguments weren't supplied, look in the bootloader control block
+ if (argc == 1) {
+ boot.recovery[sizeof(boot.recovery) - 1] = '\0'; // Ensure termination
+ std::string boot_recovery(boot.recovery);
+ std::vector<std::string> tokens = android::base::Split(boot_recovery, "\n");
+ if (!tokens.empty() && tokens[0] == "recovery") {
+ for (auto it = tokens.begin() + 1; it != tokens.end(); it++) {
+ // Skip empty and '\0'-filled tokens.
+ if (!it->empty() && (*it)[0] != '\0') args.push_back(std::move(*it));
+ }
+ LOG(INFO) << "Got " << args.size() << " arguments from boot message";
+ } else if (boot.recovery[0] != 0) {
+ LOG(ERROR) << "Bad boot message: \"" << boot_recovery << "\"";
+ }
+ }
+
+ // --- if that doesn't work, try the command file (if we have /cache).
+ if (argc == 1 && has_cache) {
+ std::string content;
+ if (android::base::ReadFileToString(COMMAND_FILE, &content)) {
+ std::vector<std::string> tokens = android::base::Split(content, "\n");
+ for (auto it = tokens.begin() + 1; it != tokens.end(); it++) {
+ // Skip empty and '\0'-filled tokens.
+ if (!it->empty() && (*it)[0] != '\0') args.push_back(std::move(*it));
+ }
+ LOG(INFO) << "Got " << args.size() << " arguments from " << COMMAND_FILE;
+ }
+ }
+
+ // Write the arguments (excluding the filename in args[0]) back into the
+ // bootloader control block. So the device will always boot into recovery to
+ // finish the pending work, until finish_recovery() is called.
+ std::vector<std::string> options(args.cbegin() + 1, args.cend());
+ if (!write_bootloader_message(options, &err)) {
+ LOG(ERROR) << err;
+ }
+
+ return args;
}
static void
@@ -1430,7 +1416,10 @@ int main(int argc, char **argv) {
load_volume_table();
has_cache = volume_for_path(CACHE_ROOT) != nullptr;
- get_args(&argc, &argv);
+ std::vector<std::string> args = get_args(argc, argv);
+ std::vector<char*> args_to_parse(args.size());
+ std::transform(args.cbegin(), args.cend(), args_to_parse.begin(),
+ [](const std::string& arg) { return const_cast<char*>(arg.c_str()); });
const char *update_package = NULL;
bool should_wipe_data = false;
@@ -1447,7 +1436,8 @@ int main(int argc, char **argv) {
int arg;
int option_index;
- while ((arg = getopt_long(argc, argv, "", OPTIONS, &option_index)) != -1) {
+ while ((arg = getopt_long(args_to_parse.size(), args_to_parse.data(), "", OPTIONS,
+ &option_index)) != -1) {
switch (arg) {
case 'n': android::base::ParseInt(optarg, &retry_count, 0); break;
case 'u': update_package = optarg; break;
@@ -1529,8 +1519,8 @@ int main(int argc, char **argv) {
device->StartRecovery();
printf("Command:");
- for (arg = 0; arg < argc; arg++) {
- printf(" \"%s\"", argv[arg]);
+ for (const auto& arg : args) {
+ printf(" \"%s\"", arg.c_str());
}
printf("\n");
diff --git a/tools/recovery_l10n/res/values-af/strings.xml b/tools/recovery_l10n/res/values-af/strings.xml
new file mode 100644
index 000000000..b1974da20
--- /dev/null
+++ b/tools/recovery_l10n/res/values-af/strings.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+ <string name="recovery_installing" msgid="2013591905463558223">"Installeer tans stelselopdatering"</string>
+ <string name="recovery_erasing" msgid="7334826894904037088">"Vee tans uit"</string>
+ <string name="recovery_no_command" msgid="4465476568623024327">"Geen opdrag nie"</string>
+ <string name="recovery_error" msgid="5748178989622716736">"Fout!"</string>
+ <string name="recovery_installing_security" msgid="9184031299717114342">"Installeer tans sekuriteitopdatering"</string>
+</resources>
diff --git a/tools/recovery_l10n/res/values-am/strings.xml b/tools/recovery_l10n/res/values-am/strings.xml
new file mode 100644
index 000000000..75c17fbad
--- /dev/null
+++ b/tools/recovery_l10n/res/values-am/strings.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+ <string name="recovery_installing" msgid="2013591905463558223">"የሥርዓት ዝማኔን በመጫን ላይ…"</string>
+ <string name="recovery_erasing" msgid="7334826894904037088">"በመደምሰስ ላይ"</string>
+ <string name="recovery_no_command" msgid="4465476568623024327">"ምንም ትዕዛዝ የለም"</string>
+ <string name="recovery_error" msgid="5748178989622716736">"ስህተት!"</string>
+ <string name="recovery_installing_security" msgid="9184031299717114342">"የደህንነት ዝማኔ በመጫን ላይ"</string>
+</resources>
diff --git a/tools/recovery_l10n/res/values-ar/strings.xml b/tools/recovery_l10n/res/values-ar/strings.xml
new file mode 100644
index 000000000..601b5832b
--- /dev/null
+++ b/tools/recovery_l10n/res/values-ar/strings.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+ <string name="recovery_installing" msgid="2013591905463558223">"جارٍ تثبيت تحديث النظام"</string>
+ <string name="recovery_erasing" msgid="7334826894904037088">"جارٍ محو البيانات"</string>
+ <string name="recovery_no_command" msgid="4465476568623024327">"ليس هناك أي أمر"</string>
+ <string name="recovery_error" msgid="5748178989622716736">"خطأ!"</string>
+ <string name="recovery_installing_security" msgid="9184031299717114342">"جارٍ تثبيت تحديث الأمان"</string>
+</resources>
diff --git a/tools/recovery_l10n/res/values-az-rAZ/strings.xml b/tools/recovery_l10n/res/values-az-rAZ/strings.xml
new file mode 100644
index 000000000..c6765a9ea
--- /dev/null
+++ b/tools/recovery_l10n/res/values-az-rAZ/strings.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+ <string name="recovery_installing" msgid="2013591905463558223">"Sistem güncəlləməsi quraşdırılır..."</string>
+ <string name="recovery_erasing" msgid="7334826894904037088">"Silinir"</string>
+ <string name="recovery_no_command" msgid="4465476568623024327">"Əmr yoxdur"</string>
+ <string name="recovery_error" msgid="5748178989622716736">"Xəta!"</string>
+ <string name="recovery_installing_security" msgid="9184031299717114342">"Təhlükəsizlik güncəlləməsi yüklənir"</string>
+</resources>
diff --git a/tools/recovery_l10n/res/values-b+sr+Latn/strings.xml b/tools/recovery_l10n/res/values-b+sr+Latn/strings.xml
new file mode 100644
index 000000000..c2d8f2239
--- /dev/null
+++ b/tools/recovery_l10n/res/values-b+sr+Latn/strings.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+ <string name="recovery_installing" msgid="2013591905463558223">"Ažuriranje sistema se instalira"</string>
+ <string name="recovery_erasing" msgid="7334826894904037088">"Briše se"</string>
+ <string name="recovery_no_command" msgid="4465476568623024327">"Nema komande"</string>
+ <string name="recovery_error" msgid="5748178989622716736">"Greška!"</string>
+ <string name="recovery_installing_security" msgid="9184031299717114342">"Instalira se bezbednosno ažuriranje"</string>
+</resources>
diff --git a/tools/recovery_l10n/res/values-be-rBY/strings.xml b/tools/recovery_l10n/res/values-be-rBY/strings.xml
new file mode 100644
index 000000000..7c0954d31
--- /dev/null
+++ b/tools/recovery_l10n/res/values-be-rBY/strings.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+ <string name="recovery_installing" msgid="2013591905463558223">"Усталёўка абнаўлення сістэмы"</string>
+ <string name="recovery_erasing" msgid="7334826894904037088">"Сціранне"</string>
+ <string name="recovery_no_command" msgid="4465476568623024327">"Няма каманды"</string>
+ <string name="recovery_error" msgid="5748178989622716736">"Памылка"</string>
+ <string name="recovery_installing_security" msgid="9184031299717114342">"Усталёўка абнаўлення сістэмы бяспекі"</string>
+</resources>
diff --git a/tools/recovery_l10n/res/values-bg/strings.xml b/tools/recovery_l10n/res/values-bg/strings.xml
new file mode 100644
index 000000000..9e628a2af
--- /dev/null
+++ b/tools/recovery_l10n/res/values-bg/strings.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+ <string name="recovery_installing" msgid="2013591905463558223">"Системната актуализация се инсталира"</string>
+ <string name="recovery_erasing" msgid="7334826894904037088">"Изтрива се"</string>
+ <string name="recovery_no_command" msgid="4465476568623024327">"Без команда"</string>
+ <string name="recovery_error" msgid="5748178989622716736">"Грешка!"</string>
+ <string name="recovery_installing_security" msgid="9184031299717114342">"Актуализацията на сигурносттa се инсталира"</string>
+</resources>
diff --git a/tools/recovery_l10n/res/values-bn-rBD/strings.xml b/tools/recovery_l10n/res/values-bn-rBD/strings.xml
new file mode 100644
index 000000000..0a481faf1
--- /dev/null
+++ b/tools/recovery_l10n/res/values-bn-rBD/strings.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+ <string name="recovery_installing" msgid="2013591905463558223">"সিস্টেম আপডেট ইনস্টল করা হচ্ছে"</string>
+ <string name="recovery_erasing" msgid="7334826894904037088">"মোছা হচ্ছে"</string>
+ <string name="recovery_no_command" msgid="4465476568623024327">"কোনো আদেশ নেই"</string>
+ <string name="recovery_error" msgid="5748178989622716736">"ত্রুটি!"</string>
+ <string name="recovery_installing_security" msgid="9184031299717114342">"নিরাপত্তার আপডেট ইনস্টল করা হচ্ছে"</string>
+</resources>
diff --git a/tools/recovery_l10n/res/values-bs-rBA/strings.xml b/tools/recovery_l10n/res/values-bs-rBA/strings.xml
new file mode 100644
index 000000000..412cf0276
--- /dev/null
+++ b/tools/recovery_l10n/res/values-bs-rBA/strings.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+ <string name="recovery_installing" msgid="2013591905463558223">"Ažuriranje sistema…"</string>
+ <string name="recovery_erasing" msgid="7334826894904037088">"Brisanje u toku"</string>
+ <string name="recovery_no_command" msgid="4465476568623024327">"Nema komande"</string>
+ <string name="recovery_error" msgid="5748178989622716736">"Greška!"</string>
+ <string name="recovery_installing_security" msgid="9184031299717114342">"Instaliranje sigurnosnog ažuriranja…"</string>
+</resources>
diff --git a/tools/recovery_l10n/res/values-ca/strings.xml b/tools/recovery_l10n/res/values-ca/strings.xml
new file mode 100644
index 000000000..3f266d2df
--- /dev/null
+++ b/tools/recovery_l10n/res/values-ca/strings.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+ <string name="recovery_installing" msgid="2013591905463558223">"S\'està instal·lant una actualització del sistema"</string>
+ <string name="recovery_erasing" msgid="7334826894904037088">"S\'està esborrant"</string>
+ <string name="recovery_no_command" msgid="4465476568623024327">"No hi ha cap ordre"</string>
+ <string name="recovery_error" msgid="5748178989622716736">"S\'ha produït un error"</string>
+ <string name="recovery_installing_security" msgid="9184031299717114342">"S\'està instal·lant una actualització de seguretat"</string>
+</resources>
diff --git a/tools/recovery_l10n/res/values-cs/strings.xml b/tools/recovery_l10n/res/values-cs/strings.xml
new file mode 100644
index 000000000..eb436a810
--- /dev/null
+++ b/tools/recovery_l10n/res/values-cs/strings.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+ <string name="recovery_installing" msgid="2013591905463558223">"Instalace aktualizace systému"</string>
+ <string name="recovery_erasing" msgid="7334826894904037088">"Mazání"</string>
+ <string name="recovery_no_command" msgid="4465476568623024327">"Žádný příkaz"</string>
+ <string name="recovery_error" msgid="5748178989622716736">"Chyba!"</string>
+ <string name="recovery_installing_security" msgid="9184031299717114342">"Instalace aktualizace zabezpečení"</string>
+</resources>
diff --git a/tools/recovery_l10n/res/values-da/strings.xml b/tools/recovery_l10n/res/values-da/strings.xml
new file mode 100644
index 000000000..c6e64a245
--- /dev/null
+++ b/tools/recovery_l10n/res/values-da/strings.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+ <string name="recovery_installing" msgid="2013591905463558223">"Installerer systemopdateringen"</string>
+ <string name="recovery_erasing" msgid="7334826894904037088">"Sletter"</string>
+ <string name="recovery_no_command" msgid="4465476568623024327">"Ingen kommando"</string>
+ <string name="recovery_error" msgid="5748178989622716736">"Fejl!"</string>
+ <string name="recovery_installing_security" msgid="9184031299717114342">"Installerer sikkerhedsopdateringen"</string>
+</resources>
diff --git a/tools/recovery_l10n/res/values-de/strings.xml b/tools/recovery_l10n/res/values-de/strings.xml
new file mode 100644
index 000000000..6b6726a23
--- /dev/null
+++ b/tools/recovery_l10n/res/values-de/strings.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+ <string name="recovery_installing" msgid="2013591905463558223">"Systemupdate wird installiert"</string>
+ <string name="recovery_erasing" msgid="7334826894904037088">"Wird gelöscht"</string>
+ <string name="recovery_no_command" msgid="4465476568623024327">"Kein Befehl"</string>
+ <string name="recovery_error" msgid="5748178989622716736">"Fehler"</string>
+ <string name="recovery_installing_security" msgid="9184031299717114342">"Sicherheitsupdate wird installiert"</string>
+</resources>
diff --git a/tools/recovery_l10n/res/values-el/strings.xml b/tools/recovery_l10n/res/values-el/strings.xml
new file mode 100644
index 000000000..4cb2da5f9
--- /dev/null
+++ b/tools/recovery_l10n/res/values-el/strings.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+ <string name="recovery_installing" msgid="2013591905463558223">"Εγκατάσταση ενημέρωσης συστήματος"</string>
+ <string name="recovery_erasing" msgid="7334826894904037088">"Διαγραφή"</string>
+ <string name="recovery_no_command" msgid="4465476568623024327">"Καμία εντολή"</string>
+ <string name="recovery_error" msgid="5748178989622716736">"Σφάλμα!"</string>
+ <string name="recovery_installing_security" msgid="9184031299717114342">"Εγκατάσταση ενημέρωσης ασφαλείας"</string>
+</resources>
diff --git a/tools/recovery_l10n/res/values-en-rAU/strings.xml b/tools/recovery_l10n/res/values-en-rAU/strings.xml
new file mode 100644
index 000000000..dc75c2374
--- /dev/null
+++ b/tools/recovery_l10n/res/values-en-rAU/strings.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+ <string name="recovery_installing" msgid="2013591905463558223">"Installing system update"</string>
+ <string name="recovery_erasing" msgid="7334826894904037088">"Erasing"</string>
+ <string name="recovery_no_command" msgid="4465476568623024327">"No command"</string>
+ <string name="recovery_error" msgid="5748178989622716736">"Error!"</string>
+ <string name="recovery_installing_security" msgid="9184031299717114342">"Installing security update"</string>
+</resources>
diff --git a/tools/recovery_l10n/res/values-en-rGB/strings.xml b/tools/recovery_l10n/res/values-en-rGB/strings.xml
new file mode 100644
index 000000000..dc75c2374
--- /dev/null
+++ b/tools/recovery_l10n/res/values-en-rGB/strings.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+ <string name="recovery_installing" msgid="2013591905463558223">"Installing system update"</string>
+ <string name="recovery_erasing" msgid="7334826894904037088">"Erasing"</string>
+ <string name="recovery_no_command" msgid="4465476568623024327">"No command"</string>
+ <string name="recovery_error" msgid="5748178989622716736">"Error!"</string>
+ <string name="recovery_installing_security" msgid="9184031299717114342">"Installing security update"</string>
+</resources>
diff --git a/tools/recovery_l10n/res/values-en-rIN/strings.xml b/tools/recovery_l10n/res/values-en-rIN/strings.xml
new file mode 100644
index 000000000..dc75c2374
--- /dev/null
+++ b/tools/recovery_l10n/res/values-en-rIN/strings.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+ <string name="recovery_installing" msgid="2013591905463558223">"Installing system update"</string>
+ <string name="recovery_erasing" msgid="7334826894904037088">"Erasing"</string>
+ <string name="recovery_no_command" msgid="4465476568623024327">"No command"</string>
+ <string name="recovery_error" msgid="5748178989622716736">"Error!"</string>
+ <string name="recovery_installing_security" msgid="9184031299717114342">"Installing security update"</string>
+</resources>
diff --git a/tools/recovery_l10n/res/values-es-rUS/strings.xml b/tools/recovery_l10n/res/values-es-rUS/strings.xml
new file mode 100644
index 000000000..06b86069b
--- /dev/null
+++ b/tools/recovery_l10n/res/values-es-rUS/strings.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+ <string name="recovery_installing" msgid="2013591905463558223">"Instalando actualización del sistema"</string>
+ <string name="recovery_erasing" msgid="7334826894904037088">"Borrando"</string>
+ <string name="recovery_no_command" msgid="4465476568623024327">"Ningún comando"</string>
+ <string name="recovery_error" msgid="5748178989622716736">"Error"</string>
+ <string name="recovery_installing_security" msgid="9184031299717114342">"Instalando actualización de seguridad"</string>
+</resources>
diff --git a/tools/recovery_l10n/res/values-es/strings.xml b/tools/recovery_l10n/res/values-es/strings.xml
new file mode 100644
index 000000000..d8618f2f4
--- /dev/null
+++ b/tools/recovery_l10n/res/values-es/strings.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+ <string name="recovery_installing" msgid="2013591905463558223">"Instalando actualización del sistema"</string>
+ <string name="recovery_erasing" msgid="7334826894904037088">"Borrando"</string>
+ <string name="recovery_no_command" msgid="4465476568623024327">"Sin comandos"</string>
+ <string name="recovery_error" msgid="5748178989622716736">"Error"</string>
+ <string name="recovery_installing_security" msgid="9184031299717114342">"Instalando actualización de seguridad"</string>
+</resources>
diff --git a/tools/recovery_l10n/res/values-et-rEE/strings.xml b/tools/recovery_l10n/res/values-et-rEE/strings.xml
new file mode 100644
index 000000000..072a9ef80
--- /dev/null
+++ b/tools/recovery_l10n/res/values-et-rEE/strings.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+ <string name="recovery_installing" msgid="2013591905463558223">"Süsteemivärskenduse installimine"</string>
+ <string name="recovery_erasing" msgid="7334826894904037088">"Kustutamine"</string>
+ <string name="recovery_no_command" msgid="4465476568623024327">"Käsk puudub"</string>
+ <string name="recovery_error" msgid="5748178989622716736">"Viga!"</string>
+ <string name="recovery_installing_security" msgid="9184031299717114342">"Turvavärskenduse installimine"</string>
+</resources>
diff --git a/tools/recovery_l10n/res/values-eu-rES/strings.xml b/tools/recovery_l10n/res/values-eu-rES/strings.xml
new file mode 100644
index 000000000..5540469d0
--- /dev/null
+++ b/tools/recovery_l10n/res/values-eu-rES/strings.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+ <string name="recovery_installing" msgid="2013591905463558223">"Sistemaren eguneratzea instalatzen"</string>
+ <string name="recovery_erasing" msgid="7334826894904037088">"Eduki guztia ezabatzen"</string>
+ <string name="recovery_no_command" msgid="4465476568623024327">"Ez dago agindurik"</string>
+ <string name="recovery_error" msgid="5748178989622716736">"Errorea"</string>
+ <string name="recovery_installing_security" msgid="9184031299717114342">"Segurtasun-eguneratzea instalatzen"</string>
+</resources>
diff --git a/tools/recovery_l10n/res/values-fa/strings.xml b/tools/recovery_l10n/res/values-fa/strings.xml
new file mode 100644
index 000000000..cc390ae84
--- /dev/null
+++ b/tools/recovery_l10n/res/values-fa/strings.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+ <string name="recovery_installing" msgid="2013591905463558223">"در حال نصب به‌روزرسانی سیستم"</string>
+ <string name="recovery_erasing" msgid="7334826894904037088">"در حال پاک کردن"</string>
+ <string name="recovery_no_command" msgid="4465476568623024327">"فرمانی وجود ندارد"</string>
+ <string name="recovery_error" msgid="5748178989622716736">"خطا!"</string>
+ <string name="recovery_installing_security" msgid="9184031299717114342">"در حال نصب به‌روزرسانی امنیتی"</string>
+</resources>
diff --git a/tools/recovery_l10n/res/values-fi/strings.xml b/tools/recovery_l10n/res/values-fi/strings.xml
new file mode 100644
index 000000000..5141642c8
--- /dev/null
+++ b/tools/recovery_l10n/res/values-fi/strings.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+ <string name="recovery_installing" msgid="2013591905463558223">"Asennetaan järjestelmäpäivitystä"</string>
+ <string name="recovery_erasing" msgid="7334826894904037088">"Tyhjennetään"</string>
+ <string name="recovery_no_command" msgid="4465476568623024327">"Ei komentoa"</string>
+ <string name="recovery_error" msgid="5748178989622716736">"Virhe!"</string>
+ <string name="recovery_installing_security" msgid="9184031299717114342">"Asennetaan tietoturvapäivitystä"</string>
+</resources>
diff --git a/tools/recovery_l10n/res/values-fr-rCA/strings.xml b/tools/recovery_l10n/res/values-fr-rCA/strings.xml
new file mode 100644
index 000000000..b2415290b
--- /dev/null
+++ b/tools/recovery_l10n/res/values-fr-rCA/strings.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+ <string name="recovery_installing" msgid="2013591905463558223">"Installation de la mise à jour du système en cours…"</string>
+ <string name="recovery_erasing" msgid="7334826894904037088">"Suppression en cours..."</string>
+ <string name="recovery_no_command" msgid="4465476568623024327">"Aucune commande"</string>
+ <string name="recovery_error" msgid="5748178989622716736">"Erreur!"</string>
+ <string name="recovery_installing_security" msgid="9184031299717114342">"Installation de la mise à jour de sécurité en cours..."</string>
+</resources>
diff --git a/tools/recovery_l10n/res/values-fr/strings.xml b/tools/recovery_l10n/res/values-fr/strings.xml
new file mode 100644
index 000000000..f0472b5ac
--- /dev/null
+++ b/tools/recovery_l10n/res/values-fr/strings.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+ <string name="recovery_installing" msgid="2013591905463558223">"Installation de la mise à jour du système…"</string>
+ <string name="recovery_erasing" msgid="7334826894904037088">"Suppression…"</string>
+ <string name="recovery_no_command" msgid="4465476568623024327">"Aucune commande"</string>
+ <string name="recovery_error" msgid="5748178989622716736">"Erreur !"</string>
+ <string name="recovery_installing_security" msgid="9184031299717114342">"Installation de la mise à jour de sécurité…"</string>
+</resources>
diff --git a/tools/recovery_l10n/res/values-gl-rES/strings.xml b/tools/recovery_l10n/res/values-gl-rES/strings.xml
new file mode 100644
index 000000000..42b2016c2
--- /dev/null
+++ b/tools/recovery_l10n/res/values-gl-rES/strings.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+ <string name="recovery_installing" msgid="2013591905463558223">"Instalando actualización do sistema"</string>
+ <string name="recovery_erasing" msgid="7334826894904037088">"Borrando"</string>
+ <string name="recovery_no_command" msgid="4465476568623024327">"Non hai ningún comando"</string>
+ <string name="recovery_error" msgid="5748178989622716736">"Erro"</string>
+ <string name="recovery_installing_security" msgid="9184031299717114342">"Instalando actualización de seguranza"</string>
+</resources>
diff --git a/tools/recovery_l10n/res/values-gu-rIN/strings.xml b/tools/recovery_l10n/res/values-gu-rIN/strings.xml
new file mode 100644
index 000000000..2355a0f4f
--- /dev/null
+++ b/tools/recovery_l10n/res/values-gu-rIN/strings.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+ <string name="recovery_installing" msgid="2013591905463558223">"સિસ્ટમ અપડેટ ઇન્સ્ટૉલ કરી રહ્યાં છે"</string>
+ <string name="recovery_erasing" msgid="7334826894904037088">"કાઢી નાખી રહ્યું છે"</string>
+ <string name="recovery_no_command" msgid="4465476568623024327">"કોઈ આદેશ નથી"</string>
+ <string name="recovery_error" msgid="5748178989622716736">"ભૂલ!"</string>
+ <string name="recovery_installing_security" msgid="9184031299717114342">"સુરક્ષા અપડેટ ઇન્સ્ટૉલ કરી રહ્યાં છે"</string>
+</resources>
diff --git a/tools/recovery_l10n/res/values-hi/strings.xml b/tools/recovery_l10n/res/values-hi/strings.xml
new file mode 100644
index 000000000..de8757848
--- /dev/null
+++ b/tools/recovery_l10n/res/values-hi/strings.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+ <string name="recovery_installing" msgid="2013591905463558223">"सिस्टम अपडेट इंस्टॉल किया जा रहा है"</string>
+ <string name="recovery_erasing" msgid="7334826894904037088">"मिटाया जा रहा है"</string>
+ <string name="recovery_no_command" msgid="4465476568623024327">"कोई आदेश नहीं"</string>
+ <string name="recovery_error" msgid="5748178989622716736">"त्रुटि!"</string>
+ <string name="recovery_installing_security" msgid="9184031299717114342">"सुरक्षा अपडेट इंस्टॉल किया जा रहा है"</string>
+</resources>
diff --git a/tools/recovery_l10n/res/values-hr/strings.xml b/tools/recovery_l10n/res/values-hr/strings.xml
new file mode 100644
index 000000000..3b75ff115
--- /dev/null
+++ b/tools/recovery_l10n/res/values-hr/strings.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+ <string name="recovery_installing" msgid="2013591905463558223">"Instaliranje ažuriranja sustava"</string>
+ <string name="recovery_erasing" msgid="7334826894904037088">"Brisanje"</string>
+ <string name="recovery_no_command" msgid="4465476568623024327">"Nema naredbe"</string>
+ <string name="recovery_error" msgid="5748178989622716736">"Pogreška!"</string>
+ <string name="recovery_installing_security" msgid="9184031299717114342">"Instaliranje sigurnosnog ažuriranja"</string>
+</resources>
diff --git a/tools/recovery_l10n/res/values-hu/strings.xml b/tools/recovery_l10n/res/values-hu/strings.xml
new file mode 100644
index 000000000..12d4d9fe7
--- /dev/null
+++ b/tools/recovery_l10n/res/values-hu/strings.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+ <string name="recovery_installing" msgid="2013591905463558223">"Rendszerfrissítés telepítése"</string>
+ <string name="recovery_erasing" msgid="7334826894904037088">"Törlés"</string>
+ <string name="recovery_no_command" msgid="4465476568623024327">"Nincs parancs"</string>
+ <string name="recovery_error" msgid="5748178989622716736">"Hiba!"</string>
+ <string name="recovery_installing_security" msgid="9184031299717114342">"Biztonsági frissítés telepítése"</string>
+</resources>
diff --git a/tools/recovery_l10n/res/values-hy-rAM/strings.xml b/tools/recovery_l10n/res/values-hy-rAM/strings.xml
new file mode 100644
index 000000000..9d62bb763
--- /dev/null
+++ b/tools/recovery_l10n/res/values-hy-rAM/strings.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+ <string name="recovery_installing" msgid="2013591905463558223">"Համակարգի թարմացման տեղադրում"</string>
+ <string name="recovery_erasing" msgid="7334826894904037088">"Ջնջում"</string>
+ <string name="recovery_no_command" msgid="4465476568623024327">"Հրամանը տրված չէ"</string>
+ <string name="recovery_error" msgid="5748178989622716736">"Սխալ"</string>
+ <string name="recovery_installing_security" msgid="9184031299717114342">"Անվտանգության թարմացման տեղադրում"</string>
+</resources>
diff --git a/tools/recovery_l10n/res/values-in/strings.xml b/tools/recovery_l10n/res/values-in/strings.xml
new file mode 100644
index 000000000..0e56e0dd9
--- /dev/null
+++ b/tools/recovery_l10n/res/values-in/strings.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+ <string name="recovery_installing" msgid="2013591905463558223">"Memasang pembaruan sistem"</string>
+ <string name="recovery_erasing" msgid="7334826894904037088">"Menghapus"</string>
+ <string name="recovery_no_command" msgid="4465476568623024327">"Tidak ada perintah"</string>
+ <string name="recovery_error" msgid="5748178989622716736">"Error!"</string>
+ <string name="recovery_installing_security" msgid="9184031299717114342">"Memasang pembaruan keamanan"</string>
+</resources>
diff --git a/tools/recovery_l10n/res/values-is-rIS/strings.xml b/tools/recovery_l10n/res/values-is-rIS/strings.xml
new file mode 100644
index 000000000..5065b6522
--- /dev/null
+++ b/tools/recovery_l10n/res/values-is-rIS/strings.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+ <string name="recovery_installing" msgid="2013591905463558223">"Setur upp kerfisuppfærslu"</string>
+ <string name="recovery_erasing" msgid="7334826894904037088">"Eyðir"</string>
+ <string name="recovery_no_command" msgid="4465476568623024327">"Engin skipun"</string>
+ <string name="recovery_error" msgid="5748178989622716736">"Villa!"</string>
+ <string name="recovery_installing_security" msgid="9184031299717114342">"Setur upp öryggisuppfærslu"</string>
+</resources>
diff --git a/tools/recovery_l10n/res/values-it/strings.xml b/tools/recovery_l10n/res/values-it/strings.xml
new file mode 100644
index 000000000..2c0364e60
--- /dev/null
+++ b/tools/recovery_l10n/res/values-it/strings.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+ <string name="recovery_installing" msgid="2013591905463558223">"Installazione aggiornamento di sistema…"</string>
+ <string name="recovery_erasing" msgid="7334826894904037088">"Cancellazione…"</string>
+ <string name="recovery_no_command" msgid="4465476568623024327">"Nessun comando"</string>
+ <string name="recovery_error" msgid="5748178989622716736">"Errore!"</string>
+ <string name="recovery_installing_security" msgid="9184031299717114342">"Installazione aggiornamento sicurezza…"</string>
+</resources>
diff --git a/tools/recovery_l10n/res/values-iw/strings.xml b/tools/recovery_l10n/res/values-iw/strings.xml
new file mode 100644
index 000000000..ea5e6f2c9
--- /dev/null
+++ b/tools/recovery_l10n/res/values-iw/strings.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+ <string name="recovery_installing" msgid="2013591905463558223">"מתקין עדכון מערכת"</string>
+ <string name="recovery_erasing" msgid="7334826894904037088">"מוחק"</string>
+ <string name="recovery_no_command" msgid="4465476568623024327">"אין פקודה"</string>
+ <string name="recovery_error" msgid="5748178989622716736">"שגיאה!"</string>
+ <string name="recovery_installing_security" msgid="9184031299717114342">"מתקין עדכון אבטחה"</string>
+</resources>
diff --git a/tools/recovery_l10n/res/values-ja/strings.xml b/tools/recovery_l10n/res/values-ja/strings.xml
new file mode 100644
index 000000000..36e029b0f
--- /dev/null
+++ b/tools/recovery_l10n/res/values-ja/strings.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+ <string name="recovery_installing" msgid="2013591905463558223">"システム アップデートをインストールしています"</string>
+ <string name="recovery_erasing" msgid="7334826894904037088">"消去しています"</string>
+ <string name="recovery_no_command" msgid="4465476568623024327">"コマンドが指定されていません"</string>
+ <string name="recovery_error" msgid="5748178989622716736">"エラーが発生しました。"</string>
+ <string name="recovery_installing_security" msgid="9184031299717114342">"セキュリティ アップデートをインストールしています"</string>
+</resources>
diff --git a/tools/recovery_l10n/res/values-ka-rGE/strings.xml b/tools/recovery_l10n/res/values-ka-rGE/strings.xml
new file mode 100644
index 000000000..6a46b3677
--- /dev/null
+++ b/tools/recovery_l10n/res/values-ka-rGE/strings.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+ <string name="recovery_installing" msgid="2013591905463558223">"მიმდინარეობს სისტემის განახლების ინსტალაცია"</string>
+ <string name="recovery_erasing" msgid="7334826894904037088">"მიმდინარეობს ამოშლა"</string>
+ <string name="recovery_no_command" msgid="4465476568623024327">"ბრძანება არ არის"</string>
+ <string name="recovery_error" msgid="5748178989622716736">"წარმოიქმნა შეცდომა!"</string>
+ <string name="recovery_installing_security" msgid="9184031299717114342">"მიმდინარეობს უსაფრთხოების განახლების ინსტალაცია"</string>
+</resources>
diff --git a/tools/recovery_l10n/res/values-kk-rKZ/strings.xml b/tools/recovery_l10n/res/values-kk-rKZ/strings.xml
new file mode 100644
index 000000000..a4bd86e66
--- /dev/null
+++ b/tools/recovery_l10n/res/values-kk-rKZ/strings.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+ <string name="recovery_installing" msgid="2013591905463558223">"Жүйе жаңартуы орнатылуда"</string>
+ <string name="recovery_erasing" msgid="7334826894904037088">"Өшірілуде"</string>
+ <string name="recovery_no_command" msgid="4465476568623024327">"Пәрмен жоқ"</string>
+ <string name="recovery_error" msgid="5748178989622716736">"Қате!"</string>
+ <string name="recovery_installing_security" msgid="9184031299717114342">"Қауіпсіздік жаңартуы орнатылуда"</string>
+</resources>
diff --git a/tools/recovery_l10n/res/values-km-rKH/strings.xml b/tools/recovery_l10n/res/values-km-rKH/strings.xml
new file mode 100644
index 000000000..313c0f457
--- /dev/null
+++ b/tools/recovery_l10n/res/values-km-rKH/strings.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+ <string name="recovery_installing" msgid="2013591905463558223">"កំពុងអាប់ដេតប្រព័ន្ធ"</string>
+ <string name="recovery_erasing" msgid="7334826894904037088">"លុប"</string>
+ <string name="recovery_no_command" msgid="4465476568623024327">"គ្មានពាក្យបញ្ជាទេ"</string>
+ <string name="recovery_error" msgid="5748178989622716736">"កំហុស!"</string>
+ <string name="recovery_installing_security" msgid="9184031299717114342">"កំពុងដំឡើងការអាប់ដេតសុវត្ថិភាព"</string>
+</resources>
diff --git a/tools/recovery_l10n/res/values-kn-rIN/strings.xml b/tools/recovery_l10n/res/values-kn-rIN/strings.xml
new file mode 100644
index 000000000..5bf6260ee
--- /dev/null
+++ b/tools/recovery_l10n/res/values-kn-rIN/strings.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+ <string name="recovery_installing" msgid="2013591905463558223">"ಸಿಸ್ಟಂ ಅಪ್‌ಡೇಟ್‌ ಸ್ಥಾಪಿಸಲಾಗುತ್ತಿದೆ"</string>
+ <string name="recovery_erasing" msgid="7334826894904037088">"ಅಳಿಸಲಾಗುತ್ತಿದೆ"</string>
+ <string name="recovery_no_command" msgid="4465476568623024327">"ಯಾವುದೇ ಆದೇಶವಿಲ್ಲ"</string>
+ <string name="recovery_error" msgid="5748178989622716736">"ದೋಷ!"</string>
+ <string name="recovery_installing_security" msgid="9184031299717114342">"ಭದ್ರತೆಯ ಅಪ್‌ಡೇಟ್‌ ಸ್ಥಾಪಿಸಲಾಗುತ್ತಿದೆ"</string>
+</resources>
diff --git a/tools/recovery_l10n/res/values-ko/strings.xml b/tools/recovery_l10n/res/values-ko/strings.xml
new file mode 100644
index 000000000..aca13bbe7
--- /dev/null
+++ b/tools/recovery_l10n/res/values-ko/strings.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+ <string name="recovery_installing" msgid="2013591905463558223">"시스템 업데이트 설치"</string>
+ <string name="recovery_erasing" msgid="7334826894904037088">"지우는 중"</string>
+ <string name="recovery_no_command" msgid="4465476568623024327">"명령어 없음"</string>
+ <string name="recovery_error" msgid="5748178989622716736">"오류!"</string>
+ <string name="recovery_installing_security" msgid="9184031299717114342">"보안 업데이트 설치 중"</string>
+</resources>
diff --git a/tools/recovery_l10n/res/values-ky-rKG/strings.xml b/tools/recovery_l10n/res/values-ky-rKG/strings.xml
new file mode 100644
index 000000000..0a6bd783a
--- /dev/null
+++ b/tools/recovery_l10n/res/values-ky-rKG/strings.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+ <string name="recovery_installing" msgid="2013591905463558223">"Тутум жаңыртуусу орнотулууда"</string>
+ <string name="recovery_erasing" msgid="7334826894904037088">"Тазаланууда"</string>
+ <string name="recovery_no_command" msgid="4465476568623024327">"Буйрук берилген жок"</string>
+ <string name="recovery_error" msgid="5748178989622716736">"Ката!"</string>
+ <string name="recovery_installing_security" msgid="9184031299717114342">"Коопсуздук жаңыртуусу орнотулууда"</string>
+</resources>
diff --git a/tools/recovery_l10n/res/values-lo-rLA/strings.xml b/tools/recovery_l10n/res/values-lo-rLA/strings.xml
new file mode 100644
index 000000000..d3dbb3970
--- /dev/null
+++ b/tools/recovery_l10n/res/values-lo-rLA/strings.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+ <string name="recovery_installing" msgid="2013591905463558223">"ກຳລັງຕິດຕັ້ງການອັບເດດລະບົບ"</string>
+ <string name="recovery_erasing" msgid="7334826894904037088">"ກຳລັງລຶບ"</string>
+ <string name="recovery_no_command" msgid="4465476568623024327">"ບໍ່ມີຄຳສັ່ງ"</string>
+ <string name="recovery_error" msgid="5748178989622716736">"ຜິດພາດ!"</string>
+ <string name="recovery_installing_security" msgid="9184031299717114342">"ກຳລັງຕິດຕັ້ງອັບເດດຄວາມປອດໄພ"</string>
+</resources>
diff --git a/tools/recovery_l10n/res/values-lt/strings.xml b/tools/recovery_l10n/res/values-lt/strings.xml
new file mode 100644
index 000000000..d5d5e88fd
--- /dev/null
+++ b/tools/recovery_l10n/res/values-lt/strings.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+ <string name="recovery_installing" msgid="2013591905463558223">"Diegiamas sistemos naujinys"</string>
+ <string name="recovery_erasing" msgid="7334826894904037088">"Ištrinama"</string>
+ <string name="recovery_no_command" msgid="4465476568623024327">"Nėra jokių komandų"</string>
+ <string name="recovery_error" msgid="5748178989622716736">"Klaida!"</string>
+ <string name="recovery_installing_security" msgid="9184031299717114342">"Diegiamas saugos naujinys"</string>
+</resources>
diff --git a/tools/recovery_l10n/res/values-lv/strings.xml b/tools/recovery_l10n/res/values-lv/strings.xml
new file mode 100644
index 000000000..d877f6a61
--- /dev/null
+++ b/tools/recovery_l10n/res/values-lv/strings.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+ <string name="recovery_installing" msgid="2013591905463558223">"Notiek sistēmas atjauninājuma instalēšana"</string>
+ <string name="recovery_erasing" msgid="7334826894904037088">"Notiek dzēšana"</string>
+ <string name="recovery_no_command" msgid="4465476568623024327">"Nav nevienas komandas"</string>
+ <string name="recovery_error" msgid="5748178989622716736">"Kļūda!"</string>
+ <string name="recovery_installing_security" msgid="9184031299717114342">"Notiek drošības atjauninājuma instalēšana"</string>
+</resources>
diff --git a/tools/recovery_l10n/res/values-mk-rMK/strings.xml b/tools/recovery_l10n/res/values-mk-rMK/strings.xml
new file mode 100644
index 000000000..351459730
--- /dev/null
+++ b/tools/recovery_l10n/res/values-mk-rMK/strings.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+ <string name="recovery_installing" msgid="2013591905463558223">"Се инсталира ажурирање на системот"</string>
+ <string name="recovery_erasing" msgid="7334826894904037088">"Се брише"</string>
+ <string name="recovery_no_command" msgid="4465476568623024327">"Нема наредба"</string>
+ <string name="recovery_error" msgid="5748178989622716736">"Грешка!"</string>
+ <string name="recovery_installing_security" msgid="9184031299717114342">"Се инсталира безбедносно ажурирање"</string>
+</resources>
diff --git a/tools/recovery_l10n/res/values-ml-rIN/strings.xml b/tools/recovery_l10n/res/values-ml-rIN/strings.xml
new file mode 100644
index 000000000..b506e2530
--- /dev/null
+++ b/tools/recovery_l10n/res/values-ml-rIN/strings.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+ <string name="recovery_installing" msgid="2013591905463558223">"സിസ്റ്റം അപ്‌ഡേറ്റ് ഇൻസ്റ്റാൾ ചെയ്യുന്നു"</string>
+ <string name="recovery_erasing" msgid="7334826894904037088">"മായ്‌ക്കുന്നു"</string>
+ <string name="recovery_no_command" msgid="4465476568623024327">"കമാൻഡ് ഒന്നുമില്ല"</string>
+ <string name="recovery_error" msgid="5748178989622716736">"പിശക്!"</string>
+ <string name="recovery_installing_security" msgid="9184031299717114342">"സുരക്ഷാ അപ്ഡേറ്റ് ഇൻസ്റ്റാൾ ചെയ്യുന്നു"</string>
+</resources>
diff --git a/tools/recovery_l10n/res/values-mn-rMN/strings.xml b/tools/recovery_l10n/res/values-mn-rMN/strings.xml
new file mode 100644
index 000000000..e3dd2e90e
--- /dev/null
+++ b/tools/recovery_l10n/res/values-mn-rMN/strings.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+ <string name="recovery_installing" msgid="2013591905463558223">"Системийн шинэчлэлтийг суулгаж байна"</string>
+ <string name="recovery_erasing" msgid="7334826894904037088">"Устгаж байна"</string>
+ <string name="recovery_no_command" msgid="4465476568623024327">"Тушаал байхгүй"</string>
+ <string name="recovery_error" msgid="5748178989622716736">"Алдаа!"</string>
+ <string name="recovery_installing_security" msgid="9184031299717114342">"Аюулгүй байдлын шинэчлэлтийг суулгаж байна"</string>
+</resources>
diff --git a/tools/recovery_l10n/res/values-mr-rIN/strings.xml b/tools/recovery_l10n/res/values-mr-rIN/strings.xml
new file mode 100644
index 000000000..8cf86f773
--- /dev/null
+++ b/tools/recovery_l10n/res/values-mr-rIN/strings.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+ <string name="recovery_installing" msgid="2013591905463558223">"सिस्टम अद्यतन स्थापित करीत आहे"</string>
+ <string name="recovery_erasing" msgid="7334826894904037088">"मिटवत आहे"</string>
+ <string name="recovery_no_command" msgid="4465476568623024327">"कोणताही आदेश नाही"</string>
+ <string name="recovery_error" msgid="5748178989622716736">"त्रुटी!"</string>
+ <string name="recovery_installing_security" msgid="9184031299717114342">"सुरक्षा अद्यतन स्थापित करीत आहे"</string>
+</resources>
diff --git a/tools/recovery_l10n/res/values-ms-rMY/strings.xml b/tools/recovery_l10n/res/values-ms-rMY/strings.xml
new file mode 100644
index 000000000..0e24ac4e1
--- /dev/null
+++ b/tools/recovery_l10n/res/values-ms-rMY/strings.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+ <string name="recovery_installing" msgid="2013591905463558223">"Memasang kemas kini sistem"</string>
+ <string name="recovery_erasing" msgid="7334826894904037088">"Memadam"</string>
+ <string name="recovery_no_command" msgid="4465476568623024327">"Tiada perintah"</string>
+ <string name="recovery_error" msgid="5748178989622716736">"Ralat!"</string>
+ <string name="recovery_installing_security" msgid="9184031299717114342">"Memasang kemas kini keselamatan"</string>
+</resources>
diff --git a/tools/recovery_l10n/res/values-my-rMM/strings.xml b/tools/recovery_l10n/res/values-my-rMM/strings.xml
new file mode 100644
index 000000000..f13752461
--- /dev/null
+++ b/tools/recovery_l10n/res/values-my-rMM/strings.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+ <string name="recovery_installing" msgid="2013591905463558223">"စနစ်အပ်ဒိတ်ကို ထည့်သွင်းနေသည်"</string>
+ <string name="recovery_erasing" msgid="7334826894904037088">"ဖျက်နေသည်"</string>
+ <string name="recovery_no_command" msgid="4465476568623024327">"ညွှန်ကြားချက်မပေးထားပါ"</string>
+ <string name="recovery_error" msgid="5748178989622716736">"မှားနေပါသည်!"</string>
+ <string name="recovery_installing_security" msgid="9184031299717114342">"လုံခြုံရေး အပ်ဒိတ်ကို ထည့်သွင်းနေသည်"</string>
+</resources>
diff --git a/tools/recovery_l10n/res/values-nb/strings.xml b/tools/recovery_l10n/res/values-nb/strings.xml
new file mode 100644
index 000000000..ad6f20e46
--- /dev/null
+++ b/tools/recovery_l10n/res/values-nb/strings.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+ <string name="recovery_installing" msgid="2013591905463558223">"Installerer systemoppdateringen"</string>
+ <string name="recovery_erasing" msgid="7334826894904037088">"Tømmer"</string>
+ <string name="recovery_no_command" msgid="4465476568623024327">"Ingen kommandoer"</string>
+ <string name="recovery_error" msgid="5748178989622716736">"Feil!"</string>
+ <string name="recovery_installing_security" msgid="9184031299717114342">"Installerer sikkerhetsoppdateringen"</string>
+</resources>
diff --git a/tools/recovery_l10n/res/values-ne-rNP/strings.xml b/tools/recovery_l10n/res/values-ne-rNP/strings.xml
new file mode 100644
index 000000000..1880e807b
--- /dev/null
+++ b/tools/recovery_l10n/res/values-ne-rNP/strings.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+ <string name="recovery_installing" msgid="2013591905463558223">"प्रणालीको अद्यावधिकलाई स्थापना गर्दै"</string>
+ <string name="recovery_erasing" msgid="7334826894904037088">"मेटाउँदै"</string>
+ <string name="recovery_no_command" msgid="4465476568623024327">"कुनै आदेश छैन"</string>
+ <string name="recovery_error" msgid="5748178989622716736">"त्रुटि!"</string>
+ <string name="recovery_installing_security" msgid="9184031299717114342">"सुरक्षा सम्बन्धी अद्यावधिकलाई स्थापना गर्दै"</string>
+</resources>
diff --git a/tools/recovery_l10n/res/values-nl/strings.xml b/tools/recovery_l10n/res/values-nl/strings.xml
new file mode 100644
index 000000000..0d6c15abb
--- /dev/null
+++ b/tools/recovery_l10n/res/values-nl/strings.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+ <string name="recovery_installing" msgid="2013591905463558223">"Systeemupdate installeren"</string>
+ <string name="recovery_erasing" msgid="7334826894904037088">"Wissen"</string>
+ <string name="recovery_no_command" msgid="4465476568623024327">"Geen opdracht"</string>
+ <string name="recovery_error" msgid="5748178989622716736">"Fout!"</string>
+ <string name="recovery_installing_security" msgid="9184031299717114342">"Beveiligingsupdate installeren"</string>
+</resources>
diff --git a/tools/recovery_l10n/res/values-pa-rIN/strings.xml b/tools/recovery_l10n/res/values-pa-rIN/strings.xml
new file mode 100644
index 000000000..8564c9c36
--- /dev/null
+++ b/tools/recovery_l10n/res/values-pa-rIN/strings.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+ <string name="recovery_installing" msgid="2013591905463558223">"ਸਿਸਟਮ ਅੱਪਡੇਟ ਸਥਾਪਤ ਕੀਤੀ ਜਾ ਰਹੀ ਹੈ"</string>
+ <string name="recovery_erasing" msgid="7334826894904037088">"ਮਿਟਾਈ ਜਾ ਰਹੀ ਹੈ"</string>
+ <string name="recovery_no_command" msgid="4465476568623024327">"ਕੋਈ ਕਮਾਂਡ ਨਹੀਂ"</string>
+ <string name="recovery_error" msgid="5748178989622716736">"ਅਸ਼ੁੱਧੀ!"</string>
+ <string name="recovery_installing_security" msgid="9184031299717114342">"ਸੁਰੱਖਿਆ ਅੱਪਡੇਟ ਸਥਾਪਤ ਕੀਤੀ ਜਾ ਰਹੀ ਹੈ"</string>
+</resources>
diff --git a/tools/recovery_l10n/res/values-pl/strings.xml b/tools/recovery_l10n/res/values-pl/strings.xml
new file mode 100644
index 000000000..8d6db388d
--- /dev/null
+++ b/tools/recovery_l10n/res/values-pl/strings.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+ <string name="recovery_installing" msgid="2013591905463558223">"Instaluję aktualizację systemu"</string>
+ <string name="recovery_erasing" msgid="7334826894904037088">"Kasuję"</string>
+ <string name="recovery_no_command" msgid="4465476568623024327">"Brak polecenia"</string>
+ <string name="recovery_error" msgid="5748178989622716736">"Błąd"</string>
+ <string name="recovery_installing_security" msgid="9184031299717114342">"Instaluję aktualizację zabezpieczeń"</string>
+</resources>
diff --git a/tools/recovery_l10n/res/values-pt-rBR/strings.xml b/tools/recovery_l10n/res/values-pt-rBR/strings.xml
new file mode 100644
index 000000000..b72704385
--- /dev/null
+++ b/tools/recovery_l10n/res/values-pt-rBR/strings.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+ <string name="recovery_installing" msgid="2013591905463558223">"Instalando atualização do sistema"</string>
+ <string name="recovery_erasing" msgid="7334826894904037088">"Apagando"</string>
+ <string name="recovery_no_command" msgid="4465476568623024327">"Nenhum comando"</string>
+ <string name="recovery_error" msgid="5748178989622716736">"Erro!"</string>
+ <string name="recovery_installing_security" msgid="9184031299717114342">"Instalando atualização de segurança"</string>
+</resources>
diff --git a/tools/recovery_l10n/res/values-pt-rPT/strings.xml b/tools/recovery_l10n/res/values-pt-rPT/strings.xml
new file mode 100644
index 000000000..981463739
--- /dev/null
+++ b/tools/recovery_l10n/res/values-pt-rPT/strings.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+ <string name="recovery_installing" msgid="2013591905463558223">"A instalar atualização do sistema"</string>
+ <string name="recovery_erasing" msgid="7334826894904037088">"A apagar"</string>
+ <string name="recovery_no_command" msgid="4465476568623024327">"Nenhum comando"</string>
+ <string name="recovery_error" msgid="5748178989622716736">"Erro!"</string>
+ <string name="recovery_installing_security" msgid="9184031299717114342">"A instalar atualização de segurança"</string>
+</resources>
diff --git a/tools/recovery_l10n/res/values-pt/strings.xml b/tools/recovery_l10n/res/values-pt/strings.xml
new file mode 100644
index 000000000..b72704385
--- /dev/null
+++ b/tools/recovery_l10n/res/values-pt/strings.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+ <string name="recovery_installing" msgid="2013591905463558223">"Instalando atualização do sistema"</string>
+ <string name="recovery_erasing" msgid="7334826894904037088">"Apagando"</string>
+ <string name="recovery_no_command" msgid="4465476568623024327">"Nenhum comando"</string>
+ <string name="recovery_error" msgid="5748178989622716736">"Erro!"</string>
+ <string name="recovery_installing_security" msgid="9184031299717114342">"Instalando atualização de segurança"</string>
+</resources>
diff --git a/tools/recovery_l10n/res/values-ro/strings.xml b/tools/recovery_l10n/res/values-ro/strings.xml
new file mode 100644
index 000000000..8032865b8
--- /dev/null
+++ b/tools/recovery_l10n/res/values-ro/strings.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+ <string name="recovery_installing" msgid="2013591905463558223">"Se instalează actualizarea de sistem"</string>
+ <string name="recovery_erasing" msgid="7334826894904037088">"Se șterge"</string>
+ <string name="recovery_no_command" msgid="4465476568623024327">"Nicio comandă"</string>
+ <string name="recovery_error" msgid="5748178989622716736">"Eroare!"</string>
+ <string name="recovery_installing_security" msgid="9184031299717114342">"Se instalează actualizarea de securitate"</string>
+</resources>
diff --git a/tools/recovery_l10n/res/values-ru/strings.xml b/tools/recovery_l10n/res/values-ru/strings.xml
new file mode 100644
index 000000000..feebecf31
--- /dev/null
+++ b/tools/recovery_l10n/res/values-ru/strings.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+ <string name="recovery_installing" msgid="2013591905463558223">"Установка обновления системы…"</string>
+ <string name="recovery_erasing" msgid="7334826894904037088">"Удаление…"</string>
+ <string name="recovery_no_command" msgid="4465476568623024327">"Команды нет"</string>
+ <string name="recovery_error" msgid="5748178989622716736">"Ошибка"</string>
+ <string name="recovery_installing_security" msgid="9184031299717114342">"Установка обновления системы безопасности…"</string>
+</resources>
diff --git a/tools/recovery_l10n/res/values-si-rLK/strings.xml b/tools/recovery_l10n/res/values-si-rLK/strings.xml
new file mode 100644
index 000000000..456cdc567
--- /dev/null
+++ b/tools/recovery_l10n/res/values-si-rLK/strings.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+ <string name="recovery_installing" msgid="2013591905463558223">"පද්ධති යාවත්කාලීනය ස්ථාපනය කරමින්"</string>
+ <string name="recovery_erasing" msgid="7334826894904037088">"මකමින්"</string>
+ <string name="recovery_no_command" msgid="4465476568623024327">"විධානයක් නොමැත"</string>
+ <string name="recovery_error" msgid="5748178989622716736">"දෝෂය!"</string>
+ <string name="recovery_installing_security" msgid="9184031299717114342">"ආරක්ෂක යාවත්කාලීනය ස්ථාපනය කරමින්"</string>
+</resources>
diff --git a/tools/recovery_l10n/res/values-sk/strings.xml b/tools/recovery_l10n/res/values-sk/strings.xml
new file mode 100644
index 000000000..b15f3802b
--- /dev/null
+++ b/tools/recovery_l10n/res/values-sk/strings.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+ <string name="recovery_installing" msgid="2013591905463558223">"Inštaluje sa aktualizácia systému"</string>
+ <string name="recovery_erasing" msgid="7334826894904037088">"Prebieha vymazávanie"</string>
+ <string name="recovery_no_command" msgid="4465476568623024327">"Žiadny príkaz"</string>
+ <string name="recovery_error" msgid="5748178989622716736">"Chyba!"</string>
+ <string name="recovery_installing_security" msgid="9184031299717114342">"Inštaluje sa bezpečnostná aktualizácia"</string>
+</resources>
diff --git a/tools/recovery_l10n/res/values-sl/strings.xml b/tools/recovery_l10n/res/values-sl/strings.xml
new file mode 100644
index 000000000..d608b7506
--- /dev/null
+++ b/tools/recovery_l10n/res/values-sl/strings.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+ <string name="recovery_installing" msgid="2013591905463558223">"Nameščanje posodobitve sistema"</string>
+ <string name="recovery_erasing" msgid="7334826894904037088">"Brisanje"</string>
+ <string name="recovery_no_command" msgid="4465476568623024327">"Ni ukaza"</string>
+ <string name="recovery_error" msgid="5748178989622716736">"Napaka"</string>
+ <string name="recovery_installing_security" msgid="9184031299717114342">"Nameščanje varnostne posodobitve"</string>
+</resources>
diff --git a/tools/recovery_l10n/res/values-sq-rAL/strings.xml b/tools/recovery_l10n/res/values-sq-rAL/strings.xml
new file mode 100644
index 000000000..1156931fb
--- /dev/null
+++ b/tools/recovery_l10n/res/values-sq-rAL/strings.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+ <string name="recovery_installing" msgid="2013591905463558223">"Po instalon përditësimin e sistemit"</string>
+ <string name="recovery_erasing" msgid="7334826894904037088">"Po spastron"</string>
+ <string name="recovery_no_command" msgid="4465476568623024327">"Nuk ka komanda"</string>
+ <string name="recovery_error" msgid="5748178989622716736">"Gabim!"</string>
+ <string name="recovery_installing_security" msgid="9184031299717114342">"Po instalon përditësimin e sigurisë"</string>
+</resources>
diff --git a/tools/recovery_l10n/res/values-sr/strings.xml b/tools/recovery_l10n/res/values-sr/strings.xml
new file mode 100644
index 000000000..a593d8faa
--- /dev/null
+++ b/tools/recovery_l10n/res/values-sr/strings.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+ <string name="recovery_installing" msgid="2013591905463558223">"Ажурирање система се инсталира"</string>
+ <string name="recovery_erasing" msgid="7334826894904037088">"Брише се"</string>
+ <string name="recovery_no_command" msgid="4465476568623024327">"Нема команде"</string>
+ <string name="recovery_error" msgid="5748178989622716736">"Грешка!"</string>
+ <string name="recovery_installing_security" msgid="9184031299717114342">"Инсталира се безбедносно ажурирање"</string>
+</resources>
diff --git a/tools/recovery_l10n/res/values-sv/strings.xml b/tools/recovery_l10n/res/values-sv/strings.xml
new file mode 100644
index 000000000..b33ce253f
--- /dev/null
+++ b/tools/recovery_l10n/res/values-sv/strings.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+ <string name="recovery_installing" msgid="2013591905463558223">"Systemuppdatering installeras"</string>
+ <string name="recovery_erasing" msgid="7334826894904037088">"Rensar"</string>
+ <string name="recovery_no_command" msgid="4465476568623024327">"Inget kommando"</string>
+ <string name="recovery_error" msgid="5748178989622716736">"Fel!"</string>
+ <string name="recovery_installing_security" msgid="9184031299717114342">"Säkerhetsuppdatering installeras"</string>
+</resources>
diff --git a/tools/recovery_l10n/res/values-sw/strings.xml b/tools/recovery_l10n/res/values-sw/strings.xml
new file mode 100644
index 000000000..156765881
--- /dev/null
+++ b/tools/recovery_l10n/res/values-sw/strings.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+ <string name="recovery_installing" msgid="2013591905463558223">"Inasakinisha sasisho la mfumo"</string>
+ <string name="recovery_erasing" msgid="7334826894904037088">"Inafuta"</string>
+ <string name="recovery_no_command" msgid="4465476568623024327">"Hakuna amri"</string>
+ <string name="recovery_error" msgid="5748178989622716736">"Hitilafu fulani imetokea!"</string>
+ <string name="recovery_installing_security" msgid="9184031299717114342">"Inasakinisha sasisho la usalama"</string>
+</resources>
diff --git a/tools/recovery_l10n/res/values-ta-rIN/strings.xml b/tools/recovery_l10n/res/values-ta-rIN/strings.xml
new file mode 100644
index 000000000..d49186d8d
--- /dev/null
+++ b/tools/recovery_l10n/res/values-ta-rIN/strings.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+ <string name="recovery_installing" msgid="2013591905463558223">"முறைமைப் புதுப்பிப்பை நிறுவுகிறது"</string>
+ <string name="recovery_erasing" msgid="7334826894904037088">"அழிக்கிறது"</string>
+ <string name="recovery_no_command" msgid="4465476568623024327">"கட்டளை இல்லை"</string>
+ <string name="recovery_error" msgid="5748178989622716736">"பிழை!"</string>
+ <string name="recovery_installing_security" msgid="9184031299717114342">"பாதுகாப்புப் புதுப்பிப்பை நிறுவுகிறது"</string>
+</resources>
diff --git a/tools/recovery_l10n/res/values-te-rIN/strings.xml b/tools/recovery_l10n/res/values-te-rIN/strings.xml
new file mode 100644
index 000000000..cfb02c915
--- /dev/null
+++ b/tools/recovery_l10n/res/values-te-rIN/strings.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+ <string name="recovery_installing" msgid="2013591905463558223">"సిస్టమ్ నవీకరణను ఇన్‍స్టాల్ చేస్తోంది"</string>
+ <string name="recovery_erasing" msgid="7334826894904037088">"డేటాను తొలగిస్తోంది"</string>
+ <string name="recovery_no_command" msgid="4465476568623024327">"ఆదేశం లేదు"</string>
+ <string name="recovery_error" msgid="5748178989622716736">"లోపం సంభవించింది!"</string>
+ <string name="recovery_installing_security" msgid="9184031299717114342">"భద్రతా నవీకరణను ఇన్‌స్టాల్ చేస్తోంది"</string>
+</resources>
diff --git a/tools/recovery_l10n/res/values-th/strings.xml b/tools/recovery_l10n/res/values-th/strings.xml
new file mode 100644
index 000000000..155affea0
--- /dev/null
+++ b/tools/recovery_l10n/res/values-th/strings.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+ <string name="recovery_installing" msgid="2013591905463558223">"กำลังติดตั้งการอัปเดตระบบ"</string>
+ <string name="recovery_erasing" msgid="7334826894904037088">"กำลังลบ"</string>
+ <string name="recovery_no_command" msgid="4465476568623024327">"ไม่มีคำสั่ง"</string>
+ <string name="recovery_error" msgid="5748178989622716736">"ข้อผิดพลาด!"</string>
+ <string name="recovery_installing_security" msgid="9184031299717114342">"กำลังติดตั้งการอัปเดตความปลอดภัย"</string>
+</resources>
diff --git a/tools/recovery_l10n/res/values-tl/strings.xml b/tools/recovery_l10n/res/values-tl/strings.xml
new file mode 100644
index 000000000..555b42b8d
--- /dev/null
+++ b/tools/recovery_l10n/res/values-tl/strings.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+ <string name="recovery_installing" msgid="2013591905463558223">"Nag-i-install ng pag-update ng system"</string>
+ <string name="recovery_erasing" msgid="7334826894904037088">"Binubura"</string>
+ <string name="recovery_no_command" msgid="4465476568623024327">"Walang command"</string>
+ <string name="recovery_error" msgid="5748178989622716736">"Error!"</string>
+ <string name="recovery_installing_security" msgid="9184031299717114342">"Nag-i-install ng update sa seguridad"</string>
+</resources>
diff --git a/tools/recovery_l10n/res/values-tr/strings.xml b/tools/recovery_l10n/res/values-tr/strings.xml
new file mode 100644
index 000000000..5387cb2ae
--- /dev/null
+++ b/tools/recovery_l10n/res/values-tr/strings.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+ <string name="recovery_installing" msgid="2013591905463558223">"Sistem güncellemesi yükleniyor"</string>
+ <string name="recovery_erasing" msgid="7334826894904037088">"Siliniyor"</string>
+ <string name="recovery_no_command" msgid="4465476568623024327">"Komut yok"</string>
+ <string name="recovery_error" msgid="5748178989622716736">"Hata!"</string>
+ <string name="recovery_installing_security" msgid="9184031299717114342">"Güvenlik güncellemesi yükleniyor"</string>
+</resources>
diff --git a/tools/recovery_l10n/res/values-uk/strings.xml b/tools/recovery_l10n/res/values-uk/strings.xml
new file mode 100644
index 000000000..0c2fa164a
--- /dev/null
+++ b/tools/recovery_l10n/res/values-uk/strings.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+ <string name="recovery_installing" msgid="2013591905463558223">"Установлюється оновлення системи"</string>
+ <string name="recovery_erasing" msgid="7334826894904037088">"Стирання"</string>
+ <string name="recovery_no_command" msgid="4465476568623024327">"Немає команди"</string>
+ <string name="recovery_error" msgid="5748178989622716736">"Помилка!"</string>
+ <string name="recovery_installing_security" msgid="9184031299717114342">"Установлюється оновлення системи безпеки"</string>
+</resources>
diff --git a/tools/recovery_l10n/res/values-ur-rPK/strings.xml b/tools/recovery_l10n/res/values-ur-rPK/strings.xml
new file mode 100644
index 000000000..12e32fbc1
--- /dev/null
+++ b/tools/recovery_l10n/res/values-ur-rPK/strings.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+ <string name="recovery_installing" msgid="2013591905463558223">"سسٹم اپ ڈیٹ انسٹال ہو رہی ہے"</string>
+ <string name="recovery_erasing" msgid="7334826894904037088">"صاف ہو رہا ہے"</string>
+ <string name="recovery_no_command" msgid="4465476568623024327">"کوئی کمانڈ نہیں ہے"</string>
+ <string name="recovery_error" msgid="5748178989622716736">"خرابی!"</string>
+ <string name="recovery_installing_security" msgid="9184031299717114342">"سیکیورٹی اپ ڈیٹ انسٹال ہو رہی ہے"</string>
+</resources>
diff --git a/tools/recovery_l10n/res/values-uz-rUZ/strings.xml b/tools/recovery_l10n/res/values-uz-rUZ/strings.xml
new file mode 100644
index 000000000..2c309d646
--- /dev/null
+++ b/tools/recovery_l10n/res/values-uz-rUZ/strings.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+ <string name="recovery_installing" msgid="2013591905463558223">"Tizim yangilanishi o‘rnatilmoqda"</string>
+ <string name="recovery_erasing" msgid="7334826894904037088">"Tozalanmoqda…"</string>
+ <string name="recovery_no_command" msgid="4465476568623024327">"Buyruq yo‘q"</string>
+ <string name="recovery_error" msgid="5748178989622716736">"Xato!"</string>
+ <string name="recovery_installing_security" msgid="9184031299717114342">"Xavfsizlik yangilanishi o‘rnatilmoqda"</string>
+</resources>
diff --git a/tools/recovery_l10n/res/values-vi/strings.xml b/tools/recovery_l10n/res/values-vi/strings.xml
new file mode 100644
index 000000000..c77d0c8c2
--- /dev/null
+++ b/tools/recovery_l10n/res/values-vi/strings.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+ <string name="recovery_installing" msgid="2013591905463558223">"Đang cài đặt bản cập nhật hệ thống"</string>
+ <string name="recovery_erasing" msgid="7334826894904037088">"Đang xóa"</string>
+ <string name="recovery_no_command" msgid="4465476568623024327">"Không có lệnh nào"</string>
+ <string name="recovery_error" msgid="5748178989622716736">"Lỗi!"</string>
+ <string name="recovery_installing_security" msgid="9184031299717114342">"Đang cài đặt bản cập nhật bảo mật"</string>
+</resources>
diff --git a/tools/recovery_l10n/res/values-zh-rCN/strings.xml b/tools/recovery_l10n/res/values-zh-rCN/strings.xml
new file mode 100644
index 000000000..e06149791
--- /dev/null
+++ b/tools/recovery_l10n/res/values-zh-rCN/strings.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+ <string name="recovery_installing" msgid="2013591905463558223">"正在安装系统更新"</string>
+ <string name="recovery_erasing" msgid="7334826894904037088">"正在清空"</string>
+ <string name="recovery_no_command" msgid="4465476568623024327">"无命令"</string>
+ <string name="recovery_error" msgid="5748178989622716736">"出错了!"</string>
+ <string name="recovery_installing_security" msgid="9184031299717114342">"正在安装安全更新"</string>
+</resources>
diff --git a/tools/recovery_l10n/res/values-zh-rHK/strings.xml b/tools/recovery_l10n/res/values-zh-rHK/strings.xml
new file mode 100644
index 000000000..ec3315d32
--- /dev/null
+++ b/tools/recovery_l10n/res/values-zh-rHK/strings.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+ <string name="recovery_installing" msgid="2013591905463558223">"正在安裝系統更新"</string>
+ <string name="recovery_erasing" msgid="7334826894904037088">"正在清除"</string>
+ <string name="recovery_no_command" msgid="4465476568623024327">"沒有指令"</string>
+ <string name="recovery_error" msgid="5748178989622716736">"錯誤!"</string>
+ <string name="recovery_installing_security" msgid="9184031299717114342">"正在安裝安全性更新"</string>
+</resources>
diff --git a/tools/recovery_l10n/res/values-zh-rTW/strings.xml b/tools/recovery_l10n/res/values-zh-rTW/strings.xml
new file mode 100644
index 000000000..78eae2429
--- /dev/null
+++ b/tools/recovery_l10n/res/values-zh-rTW/strings.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+ <string name="recovery_installing" msgid="2013591905463558223">"正在安裝系統更新"</string>
+ <string name="recovery_erasing" msgid="7334826894904037088">"清除中"</string>
+ <string name="recovery_no_command" msgid="4465476568623024327">"沒有指令"</string>
+ <string name="recovery_error" msgid="5748178989622716736">"錯誤!"</string>
+ <string name="recovery_installing_security" msgid="9184031299717114342">"正在安裝安全性更新"</string>
+</resources>
diff --git a/tools/recovery_l10n/res/values-zu/strings.xml b/tools/recovery_l10n/res/values-zu/strings.xml
new file mode 100644
index 000000000..6b815e1ab
--- /dev/null
+++ b/tools/recovery_l10n/res/values-zu/strings.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+ <string name="recovery_installing" msgid="2013591905463558223">"Ifaka isibuyekezo sesistimu"</string>
+ <string name="recovery_erasing" msgid="7334826894904037088">"Iyasula"</string>
+ <string name="recovery_no_command" msgid="4465476568623024327">"Awukho umyalo"</string>
+ <string name="recovery_error" msgid="5748178989622716736">"Iphutha!"</string>
+ <string name="recovery_installing_security" msgid="9184031299717114342">"Ifaka isibuyekezo sokuphepha"</string>
+</resources>