diff mbox series

ui/ncurses: Add a missing gettext call & update translations

Message ID 20181129003532.27855-1-sam@mendozajonas.com
State Accepted
Headers show
Series ui/ncurses: Add a missing gettext call & update translations | expand

Commit Message

Sam Mendoza-Jonas Nov. 29, 2018, 12:35 a.m. UTC
Fix up a spot where we forgot to translate the "Plugins" label on update
and make the check for that label more resilient.

Signed-off-by: Samuel Mendoza-Jonas <sam@mendozajonas.com>
---
 po/de.po            | 42 ++++++++++++++++---
 po/en.po            | 40 +++++++++++++++---
 po/es.po            | 42 ++++++++++++++++---
 po/fr.po            | 42 ++++++++++++++++---
 po/it.po            | 42 ++++++++++++++++---
 po/ja.po            | 42 ++++++++++++++++---
 po/ko.po            | 42 ++++++++++++++++---
 po/pt_BR.po         | 42 ++++++++++++++++---
 po/ru.po            | 42 ++++++++++++++++---
 po/zh_CN.po         | 42 ++++++++++++++++---
 po/zh_TW.po         | 42 ++++++++++++++++---
 ui/ncurses/nc-cui.c | 98 ++++++++++++++++++++++-----------------------
 12 files changed, 444 insertions(+), 114 deletions(-)

Comments

Sam Mendoza-Jonas Dec. 3, 2018, 5:24 a.m. UTC | #1
On Thu, 2018-11-29 at 11:35 +1100, Samuel Mendoza-Jonas wrote:
> Fix up a spot where we forgot to translate the "Plugins" label on update
> and make the check for that label more resilient.
> 
> Signed-off-by: Samuel Mendoza-Jonas <sam@mendozajonas.com>

Merged as a73d5c25
diff mbox series

Patch

diff --git a/po/de.po b/po/de.po
index da6c1f37..5d3ee469 100644
--- a/po/de.po
+++ b/po/de.po
@@ -6,7 +6,7 @@  msgid ""
 msgstr ""
 "Project-Id-Version: petitboot 20140623-g89bd2ed2-dirty\n"
 "Report-Msgid-Bugs-To: https://lists.ozlabs.org/listinfo/petitboot\n"
-"POT-Creation-Date: 2018-05-29 16:53+1000\n"
+"POT-Creation-Date: 2018-11-29 10:59+1100\n"
 "PO-Revision-Date: 2014-06-24 13:56+0800\n"
 "Last-Translator: Jeremy Kerr <jk@ozlabs.org>\n"
 "Language-Team: German\n"
@@ -91,8 +91,8 @@  msgid "%u downloads in progress..."
 msgstr "%u Downloads in Bearbeitung..."
 
 #, c-format
-msgid "%u %s downloading: %.0f%% - %lu%cB"
-msgstr "Herunterladen von %u %s: %.0f%% - %lu%cB"
+msgid "%u %s downloading: %.0f%% - %<PRIu64>%cB"
+msgstr "Herunterladen von %u %s: %.0f%% - %<PRIu64>%cB"
 
 msgid "item"
 msgid_plural "items"
@@ -103,6 +103,19 @@  msgstr[1] "Elemente"
 msgid "Booting in %d sec: [%s] %s"
 msgstr "Booten erfolgt in %d Sekunden: [%s] %s"
 
+msgid "device type"
+msgstr ""
+
+msgid "device UUID"
+msgstr ""
+
+msgid "unknown specifier"
+msgstr ""
+
+#, c-format
+msgid "Applying temporary autoboot override: %s"
+msgstr ""
+
 #. TRANSLATORS: this string will be passed the type of the
 #. device (eg "disk" or "network"), which will be translated
 #. accordingly.
@@ -428,10 +441,17 @@  msgstr "Fehlgeschlagen: Booten von %s"
 msgid "User item %u"
 msgstr "Benutzerelement %u"
 
+#, c-format
+msgid "Plugins (%u)"
+msgstr "Plug-ins (%u)"
+
 #, c-format
 msgid "  %s [installed]"
 msgstr ""
 
+msgid "Plugins (0)"
+msgstr "Plug-ins (0)"
+
 #, c-format
 msgid "SAFE MODE: select '%s' to continue"
 msgstr "ABGESICHERTER MODUS: Wählen Sie '%s' aus, um fortzufahren"
@@ -459,9 +479,6 @@  msgstr "Systemstatusprotokoll"
 msgid "Retrieve config from URL"
 msgstr "Konfiguration über URL abrufen"
 
-msgid "Plugins (0)"
-msgstr "Plug-ins (0)"
-
 msgid "Reboot"
 msgstr "Warmstart"
 
@@ -582,6 +599,10 @@  msgstr " IP-Adresse: %s"
 msgid "none"
 msgstr "Keine"
 
+#, c-format
+msgid " IPv6 Address: %s"
+msgstr " IPv6-Adresse: %s"
+
 #. TRANSLATORS: these "up" / "down" strings refer to the
 #. * link status for a network connection.
 #, c-format
@@ -632,6 +653,15 @@  msgid ""
 "To retreive new boot options from a remote configuration file, select the "
 "'Retrieve config from URL' option.\n"
 "\n"
+"To restrict petitboot to only autobooting from a specific device type, the "
+"following keys are available:\n"
+"\n"
+"  F10: Only autoboot from disk\n"
+"  F11: Only autoboot from USB devices\n"
+"  F12: Only autoboot from network\n"
+"\n"
+"Unlike other keys, these do not cancel automatic boot.\n"
+"\n"
 "To close the Petitboot interface, type X (exit).\n"
 msgstr ""
 "Wählen Sie im Bildschirm des Hauptmenüs eine Bootoption aus. Die angezeigten "
diff --git a/po/en.po b/po/en.po
index 9075dc9b..6f8a5fe3 100644
--- a/po/en.po
+++ b/po/en.po
@@ -6,7 +6,7 @@  msgid ""
 msgstr ""
 "Project-Id-Version: petitboot 20140623-g89bd2ed2-dirty\n"
 "Report-Msgid-Bugs-To: https://lists.ozlabs.org/listinfo/petitboot\n"
-"POT-Creation-Date: 2018-05-29 16:53+1000\n"
+"POT-Creation-Date: 2018-11-29 10:59+1100\n"
 "PO-Revision-Date: 2014-06-24 13:56+0800\n"
 "Last-Translator: Jeremy Kerr <jk@ozlabs.org>\n"
 "Language-Team: English\n"
@@ -91,7 +91,7 @@  msgid "%u downloads in progress..."
 msgstr ""
 
 #, c-format
-msgid "%u %s downloading: %.0f%% - %lu%cB"
+msgid "%u %s downloading: %.0f%% - %<PRIu64>%cB"
 msgstr ""
 
 msgid "item"
@@ -103,6 +103,19 @@  msgstr[1] ""
 msgid "Booting in %d sec: [%s] %s"
 msgstr "Booting in %d sec: [%s] %s"
 
+msgid "device type"
+msgstr ""
+
+msgid "device UUID"
+msgstr ""
+
+msgid "unknown specifier"
+msgstr ""
+
+#, c-format
+msgid "Applying temporary autoboot override: %s"
+msgstr ""
+
 #. TRANSLATORS: this string will be passed the type of the
 #. device (eg "disk" or "network"), which will be translated
 #. accordingly.
@@ -424,10 +437,17 @@  msgstr "Failed: boot %s"
 msgid "User item %u"
 msgstr "User item %u"
 
+#, c-format
+msgid "Plugins (%u)"
+msgstr "Plugins (%u)"
+
 #, c-format
 msgid "  %s [installed]"
 msgstr ""
 
+msgid "Plugins (0)"
+msgstr ""
+
 #, c-format
 msgid "SAFE MODE: select '%s' to continue"
 msgstr "SAFE MODE: select '%s' to continue"
@@ -453,9 +473,6 @@  msgstr ""
 msgid "Retrieve config from URL"
 msgstr "Retrieve config from URL"
 
-msgid "Plugins (0)"
-msgstr ""
-
 msgid "Reboot"
 msgstr ""
 
@@ -576,6 +593,10 @@  msgstr ""
 msgid "none"
 msgstr ""
 
+#, c-format
+msgid " IPv6 Address: %s"
+msgstr ""
+
 #. TRANSLATORS: these "up" / "down" strings refer to the
 #. * link status for a network connection.
 #, c-format
@@ -626,6 +647,15 @@  msgid ""
 "To retreive new boot options from a remote configuration file, select the "
 "'Retrieve config from URL' option.\n"
 "\n"
+"To restrict petitboot to only autobooting from a specific device type, the "
+"following keys are available:\n"
+"\n"
+"  F10: Only autoboot from disk\n"
+"  F11: Only autoboot from USB devices\n"
+"  F12: Only autoboot from network\n"
+"\n"
+"Unlike other keys, these do not cancel automatic boot.\n"
+"\n"
 "To close the Petitboot interface, type X (exit).\n"
 msgstr ""
 "From the main menu screen, select a boot option. The options displayed are "
diff --git a/po/es.po b/po/es.po
index 9935bda2..ca9bfc64 100644
--- a/po/es.po
+++ b/po/es.po
@@ -6,7 +6,7 @@  msgid ""
 msgstr ""
 "Project-Id-Version: petitboot 20140623-g89bd2ed2-dirty\n"
 "Report-Msgid-Bugs-To: https://lists.ozlabs.org/listinfo/petitboot\n"
-"POT-Creation-Date: 2018-05-29 16:53+1000\n"
+"POT-Creation-Date: 2018-11-29 10:59+1100\n"
 "PO-Revision-Date: 2014-06-24 13:56+0800\n"
 "Last-Translator: Jeremy Kerr <jk@ozlabs.org>\n"
 "Language-Team: Spanish\n"
@@ -93,8 +93,8 @@  msgid "%u downloads in progress..."
 msgstr "%u descargas en curso..."
 
 #, c-format
-msgid "%u %s downloading: %.0f%% - %lu%cB"
-msgstr "%u %s descargando: %.0f%% - %lu%cB"
+msgid "%u %s downloading: %.0f%% - %<PRIu64>%cB"
+msgstr "%u %s descargando: %.0f%% - %<PRIu64>%cB"
 
 msgid "item"
 msgid_plural "items"
@@ -105,6 +105,19 @@  msgstr[1] "elementos"
 msgid "Booting in %d sec: [%s] %s"
 msgstr "Arrancando en %d s: [%s] %s"
 
+msgid "device type"
+msgstr ""
+
+msgid "device UUID"
+msgstr ""
+
+msgid "unknown specifier"
+msgstr ""
+
+#, c-format
+msgid "Applying temporary autoboot override: %s"
+msgstr ""
+
 #. TRANSLATORS: this string will be passed the type of the
 #. device (eg "disk" or "network"), which will be translated
 #. accordingly.
@@ -428,10 +441,17 @@  msgstr "Fallido: arrancar %s"
 msgid "User item %u"
 msgstr "Elemento de usuario %u"
 
+#, c-format
+msgid "Plugins (%u)"
+msgstr "Plugins (%u)"
+
 #, c-format
 msgid "  %s [installed]"
 msgstr ""
 
+msgid "Plugins (0)"
+msgstr "Plugins (0)"
+
 #, c-format
 msgid "SAFE MODE: select '%s' to continue"
 msgstr "MODALIDAD SEGURA: seleccione '%s' para continuar"
@@ -458,9 +478,6 @@  msgstr "Registro de estado del sistema"
 msgid "Retrieve config from URL"
 msgstr "Recuperar configuración de URL"
 
-msgid "Plugins (0)"
-msgstr "Plugins (0)"
-
 msgid "Reboot"
 msgstr "Rearrancar"
 
@@ -581,6 +598,10 @@  msgstr " Dirección IP: %s"
 msgid "none"
 msgstr "ninguno"
 
+#, c-format
+msgid " IPv6 Address: %s"
+msgstr " Dirección IPv6: %s"
+
 #. TRANSLATORS: these "up" / "down" strings refer to the
 #. * link status for a network connection.
 #, c-format
@@ -631,6 +652,15 @@  msgid ""
 "To retreive new boot options from a remote configuration file, select the "
 "'Retrieve config from URL' option.\n"
 "\n"
+"To restrict petitboot to only autobooting from a specific device type, the "
+"following keys are available:\n"
+"\n"
+"  F10: Only autoboot from disk\n"
+"  F11: Only autoboot from USB devices\n"
+"  F12: Only autoboot from network\n"
+"\n"
+"Unlike other keys, these do not cancel automatic boot.\n"
+"\n"
 "To close the Petitboot interface, type X (exit).\n"
 msgstr ""
 "En la pantalla de menú principal, seleccione una opción de arranque. Las "
diff --git a/po/fr.po b/po/fr.po
index aacc1932..d63eedbb 100644
--- a/po/fr.po
+++ b/po/fr.po
@@ -6,7 +6,7 @@  msgid ""
 msgstr ""
 "Project-Id-Version: petitboot 20140623-g89bd2ed2-dirty\n"
 "Report-Msgid-Bugs-To: https://lists.ozlabs.org/listinfo/petitboot\n"
-"POT-Creation-Date: 2018-05-29 16:53+1000\n"
+"POT-Creation-Date: 2018-11-29 10:59+1100\n"
 "PO-Revision-Date: 2014-06-24 13:56+0800\n"
 "Last-Translator: Jeremy Kerr <jk@ozlabs.org>\n"
 "Language-Team: French\n"
@@ -93,8 +93,8 @@  msgid "%u downloads in progress..."
 msgstr "%u téléchargement(s) en cours..."
 
 #, c-format
-msgid "%u %s downloading: %.0f%% - %lu%cB"
-msgstr "%u %s en cours de téléchargement : %.0f%% - %lu%cB"
+msgid "%u %s downloading: %.0f%% - %<PRIu64>%cB"
+msgstr "%u %s en cours de téléchargement : %.0f%% - %<PRIu64>%cB"
 
 msgid "item"
 msgid_plural "items"
@@ -105,6 +105,19 @@  msgstr[1] "éléments"
 msgid "Booting in %d sec: [%s] %s"
 msgstr "Amorçage dans %d seconde(s) : [%s] %s"
 
+msgid "device type"
+msgstr ""
+
+msgid "device UUID"
+msgstr ""
+
+msgid "unknown specifier"
+msgstr ""
+
+#, c-format
+msgid "Applying temporary autoboot override: %s"
+msgstr ""
+
 #. TRANSLATORS: this string will be passed the type of the
 #. device (eg "disk" or "network"), which will be translated
 #. accordingly.
@@ -428,10 +441,17 @@  msgstr "Echec : amorçage de %s"
 msgid "User item %u"
 msgstr "Elément utilisateur %u"
 
+#, c-format
+msgid "Plugins (%u)"
+msgstr "Plug-in (%u)"
+
 #, c-format
 msgid "  %s [installed]"
 msgstr ""
 
+msgid "Plugins (0)"
+msgstr "Plug-in (0)"
+
 #, c-format
 msgid "SAFE MODE: select '%s' to continue"
 msgstr "MODE SANS ECHEC : sélectionnez '%s' pour continuer"
@@ -458,9 +478,6 @@  msgstr "Journal d'état du système"
 msgid "Retrieve config from URL"
 msgstr "Récupérer la config depuis une URL"
 
-msgid "Plugins (0)"
-msgstr "Plug-in (0)"
-
 msgid "Reboot"
 msgstr "Réamorcer"
 
@@ -582,6 +599,10 @@  msgstr " Adresse IP : %s"
 msgid "none"
 msgstr "néant"
 
+#, c-format
+msgid " IPv6 Address: %s"
+msgstr " Adresse IPv6 : %s"
+
 #. TRANSLATORS: these "up" / "down" strings refer to the
 #. * link status for a network connection.
 #, c-format
@@ -632,6 +653,15 @@  msgid ""
 "To retreive new boot options from a remote configuration file, select the "
 "'Retrieve config from URL' option.\n"
 "\n"
+"To restrict petitboot to only autobooting from a specific device type, the "
+"following keys are available:\n"
+"\n"
+"  F10: Only autoboot from disk\n"
+"  F11: Only autoboot from USB devices\n"
+"  F12: Only autoboot from network\n"
+"\n"
+"Unlike other keys, these do not cancel automatic boot.\n"
+"\n"
 "To close the Petitboot interface, type X (exit).\n"
 msgstr ""
 "Dans l'écran du menu principal, sélectionnez une option d'amorçage. Les "
diff --git a/po/it.po b/po/it.po
index 537f8e2a..8019bbe4 100644
--- a/po/it.po
+++ b/po/it.po
@@ -6,7 +6,7 @@  msgid ""
 msgstr ""
 "Project-Id-Version: petitboot 20140623-g89bd2ed2-dirty\n"
 "Report-Msgid-Bugs-To: https://lists.ozlabs.org/listinfo/petitboot\n"
-"POT-Creation-Date: 2018-05-29 16:53+1000\n"
+"POT-Creation-Date: 2018-11-29 10:59+1100\n"
 "PO-Revision-Date: 2014-06-24 13:56+0800\n"
 "Last-Translator: Jeremy Kerr <jk@ozlabs.org>\n"
 "Language-Team: Italian\n"
@@ -92,8 +92,8 @@  msgid "%u downloads in progress..."
 msgstr "%u download in corso..."
 
 #, c-format
-msgid "%u %s downloading: %.0f%% - %lu%cB"
-msgstr "Download di %u %s: %.0f%% - %lu%cB"
+msgid "%u %s downloading: %.0f%% - %<PRIu64>%cB"
+msgstr "Download di %u %s: %.0f%% - %<PRIu64>%cB"
 
 msgid "item"
 msgid_plural "items"
@@ -104,6 +104,19 @@  msgstr[1] "elementi"
 msgid "Booting in %d sec: [%s] %s"
 msgstr "Avvio entro %d sec: [%s] %s"
 
+msgid "device type"
+msgstr ""
+
+msgid "device UUID"
+msgstr ""
+
+msgid "unknown specifier"
+msgstr ""
+
+#, c-format
+msgid "Applying temporary autoboot override: %s"
+msgstr ""
+
 #. TRANSLATORS: this string will be passed the type of the
 #. device (eg "disk" or "network"), which will be translated
 #. accordingly.
@@ -428,10 +441,17 @@  msgstr "Non riuscito: avvio %s"
 msgid "User item %u"
 msgstr "Elemento utente %u"
 
+#, c-format
+msgid "Plugins (%u)"
+msgstr "Plugin (%u)"
+
 #, c-format
 msgid "  %s [installed]"
 msgstr ""
 
+msgid "Plugins (0)"
+msgstr "Plugin (0)"
+
 #, c-format
 msgid "SAFE MODE: select '%s' to continue"
 msgstr "MODALITÀ PROVVISORIA: selezionare '%s' per continuare"
@@ -458,9 +478,6 @@  msgstr "Log stato di sistema"
 msgid "Retrieve config from URL"
 msgstr "Richiama configurazione da URL"
 
-msgid "Plugins (0)"
-msgstr "Plugin (0)"
-
 msgid "Reboot"
 msgstr "Riavvia"
 
@@ -581,6 +598,10 @@  msgstr " Indirizzo IP: %s"
 msgid "none"
 msgstr "nessuno"
 
+#, c-format
+msgid " IPv6 Address: %s"
+msgstr " Indirizzo IPv6: %s"
+
 #. TRANSLATORS: these "up" / "down" strings refer to the
 #. * link status for a network connection.
 #, c-format
@@ -631,6 +652,15 @@  msgid ""
 "To retreive new boot options from a remote configuration file, select the "
 "'Retrieve config from URL' option.\n"
 "\n"
+"To restrict petitboot to only autobooting from a specific device type, the "
+"following keys are available:\n"
+"\n"
+"  F10: Only autoboot from disk\n"
+"  F11: Only autoboot from USB devices\n"
+"  F12: Only autoboot from network\n"
+"\n"
+"Unlike other keys, these do not cancel automatic boot.\n"
+"\n"
 "To close the Petitboot interface, type X (exit).\n"
 msgstr ""
 "Dallo schermo del menu principale, selezionare un'opzione di avvio. Le "
diff --git a/po/ja.po b/po/ja.po
index 74b9d17f..9505cd69 100644
--- a/po/ja.po
+++ b/po/ja.po
@@ -6,7 +6,7 @@  msgid ""
 msgstr ""
 "Project-Id-Version: petitboot 20140623-g89bd2ed2-dirty\n"
 "Report-Msgid-Bugs-To: https://lists.ozlabs.org/listinfo/petitboot\n"
-"POT-Creation-Date: 2018-05-29 16:53+1000\n"
+"POT-Creation-Date: 2018-11-29 10:59+1100\n"
 "PO-Revision-Date: 2014-06-24 13:56+0800\n"
 "Last-Translator: Jeremy Kerr <jk@ozlabs.org>\n"
 "Language-Team: Japanese\n"
@@ -93,8 +93,8 @@  msgid "%u downloads in progress..."
 msgstr "%u ダウンロードが進行中..."
 
 #, c-format
-msgid "%u %s downloading: %.0f%% - %lu%cB"
-msgstr "%u %s ダウンロード中: %.0f%% - %lu%cB"
+msgid "%u %s downloading: %.0f%% - %<PRIu64>%cB"
+msgstr "%u %s ダウンロード中: %.0f%% - %<PRIu64>%cB"
 
 msgid "item"
 msgid_plural "items"
@@ -104,6 +104,19 @@  msgstr[0] "項目"
 msgid "Booting in %d sec: [%s] %s"
 msgstr "%d 秒でブートします: [%s] %s"
 
+msgid "device type"
+msgstr ""
+
+msgid "device UUID"
+msgstr ""
+
+msgid "unknown specifier"
+msgstr ""
+
+#, c-format
+msgid "Applying temporary autoboot override: %s"
+msgstr ""
+
 #. TRANSLATORS: this string will be passed the type of the
 #. device (eg "disk" or "network"), which will be translated
 #. accordingly.
@@ -427,10 +440,17 @@  msgstr "失敗: %s のブート"
 msgid "User item %u"
 msgstr "ユーザー項目 %u"
 
+#, c-format
+msgid "Plugins (%u)"
+msgstr "プラグイン (%u)"
+
 #, c-format
 msgid "  %s [installed]"
 msgstr ""
 
+msgid "Plugins (0)"
+msgstr "プラグイン (0)"
+
 #, c-format
 msgid "SAFE MODE: select '%s' to continue"
 msgstr "セーフ・モード: 続行するには「%s」を選択してください"
@@ -456,9 +476,6 @@  msgstr "システム状況ログ"
 msgid "Retrieve config from URL"
 msgstr "URL から構成を取得"
 
-msgid "Plugins (0)"
-msgstr "プラグイン (0)"
-
 msgid "Reboot"
 msgstr "リブート"
 
@@ -580,6 +597,10 @@  msgstr " IP アドレス: %s"
 msgid "none"
 msgstr "なし"
 
+#, c-format
+msgid " IPv6 Address: %s"
+msgstr " IPv6 アドレス: %s"
+
 #. TRANSLATORS: these "up" / "down" strings refer to the
 #. * link status for a network connection.
 #, c-format
@@ -630,6 +651,15 @@  msgid ""
 "To retreive new boot options from a remote configuration file, select the "
 "'Retrieve config from URL' option.\n"
 "\n"
+"To restrict petitboot to only autobooting from a specific device type, the "
+"following keys are available:\n"
+"\n"
+"  F10: Only autoboot from disk\n"
+"  F11: Only autoboot from USB devices\n"
+"  F12: Only autoboot from network\n"
+"\n"
+"Unlike other keys, these do not cancel automatic boot.\n"
+"\n"
 "To close the Petitboot interface, type X (exit).\n"
 msgstr ""
 "メインメニュー画面からブート・オプションを選択して\n"
diff --git a/po/ko.po b/po/ko.po
index a6ae0c83..d7be5a8b 100644
--- a/po/ko.po
+++ b/po/ko.po
@@ -6,7 +6,7 @@  msgid ""
 msgstr ""
 "Project-Id-Version: petitboot 20140623-g89bd2ed2-dirty\n"
 "Report-Msgid-Bugs-To: https://lists.ozlabs.org/listinfo/petitboot\n"
-"POT-Creation-Date: 2018-05-29 16:53+1000\n"
+"POT-Creation-Date: 2018-11-29 10:59+1100\n"
 "PO-Revision-Date: 2014-06-24 13:56+0800\n"
 "Last-Translator: Jeremy Kerr <jk@ozlabs.org>\n"
 "Language-Team: Korean\n"
@@ -91,8 +91,8 @@  msgid "%u downloads in progress..."
 msgstr "%u 다운로드 진행 중..."
 
 #, c-format
-msgid "%u %s downloading: %.0f%% - %lu%cB"
-msgstr "%u %s 다운로드 중: %.0f%% - %lu%cB"
+msgid "%u %s downloading: %.0f%% - %<PRIu64>%cB"
+msgstr "%u %s 다운로드 중: %.0f%% - %<PRIu64>%cB"
 
 msgid "item"
 msgid_plural "items"
@@ -102,6 +102,19 @@  msgstr[0] "항목"
 msgid "Booting in %d sec: [%s] %s"
 msgstr "%d초 후 부팅 중: [%s] %s"
 
+msgid "device type"
+msgstr ""
+
+msgid "device UUID"
+msgstr ""
+
+msgid "unknown specifier"
+msgstr ""
+
+#, c-format
+msgid "Applying temporary autoboot override: %s"
+msgstr ""
+
 #. TRANSLATORS: this string will be passed the type of the
 #. device (eg "disk" or "network"), which will be translated
 #. accordingly.
@@ -423,10 +436,17 @@  msgstr "실패: %s 부트"
 msgid "User item %u"
 msgstr "User item %u"
 
+#, c-format
+msgid "Plugins (%u)"
+msgstr "플러그인(%u)"
+
 #, c-format
 msgid "  %s [installed]"
 msgstr ""
 
+msgid "Plugins (0)"
+msgstr "플러그인(0)"
+
 #, c-format
 msgid "SAFE MODE: select '%s' to continue"
 msgstr "안전 모드: 계속하려면 '%s' 선택"
@@ -452,9 +472,6 @@  msgstr "시스템 상태 로그"
 msgid "Retrieve config from URL"
 msgstr "URL에서 구성 검색"
 
-msgid "Plugins (0)"
-msgstr "플러그인(0)"
-
 msgid "Reboot"
 msgstr "다시 부팅"
 
@@ -575,6 +592,10 @@  msgstr " IP 주소: %s"
 msgid "none"
 msgstr "없음"
 
+#, c-format
+msgid " IPv6 Address: %s"
+msgstr " IPv6 주소: %s"
+
 #. TRANSLATORS: these "up" / "down" strings refer to the
 #. * link status for a network connection.
 #, c-format
@@ -625,6 +646,15 @@  msgid ""
 "To retreive new boot options from a remote configuration file, select the "
 "'Retrieve config from URL' option.\n"
 "\n"
+"To restrict petitboot to only autobooting from a specific device type, the "
+"following keys are available:\n"
+"\n"
+"  F10: Only autoboot from disk\n"
+"  F11: Only autoboot from USB devices\n"
+"  F12: Only autoboot from network\n"
+"\n"
+"Unlike other keys, these do not cancel automatic boot.\n"
+"\n"
 "To close the Petitboot interface, type X (exit).\n"
 msgstr ""
 "기본 메뉴 화면에서 부트 옵션을 선택하십시오. 표시된 옵션은 시스템 및 네트워크"
diff --git a/po/pt_BR.po b/po/pt_BR.po
index 1dcc8b6d..287819ce 100644
--- a/po/pt_BR.po
+++ b/po/pt_BR.po
@@ -6,7 +6,7 @@  msgid ""
 msgstr ""
 "Project-Id-Version: petitboot 20140623-g89bd2ed2-dirty\n"
 "Report-Msgid-Bugs-To: https://lists.ozlabs.org/listinfo/petitboot\n"
-"POT-Creation-Date: 2018-05-29 16:53+1000\n"
+"POT-Creation-Date: 2018-11-29 10:59+1100\n"
 "PO-Revision-Date: 2014-06-24 13:56+0800\n"
 "Last-Translator: Jeremy Kerr <jk@ozlabs.org>\n"
 "Language-Team: Portugese (Brazil)\n"
@@ -93,8 +93,8 @@  msgid "%u downloads in progress..."
 msgstr "%u downloads em andamento..."
 
 #, c-format
-msgid "%u %s downloading: %.0f%% - %lu%cB"
-msgstr "%u %s fazendo download: %.0f%% - %lu%cB"
+msgid "%u %s downloading: %.0f%% - %<PRIu64>%cB"
+msgstr "%u %s fazendo download: %.0f%% - %<PRIu64>%cB"
 
 msgid "item"
 msgid_plural "items"
@@ -105,6 +105,19 @@  msgstr[1] "itens de golfe"
 msgid "Booting in %d sec: [%s] %s"
 msgstr "Inicializando em %d seg: [%s] %s"
 
+msgid "device type"
+msgstr ""
+
+msgid "device UUID"
+msgstr ""
+
+msgid "unknown specifier"
+msgstr ""
+
+#, c-format
+msgid "Applying temporary autoboot override: %s"
+msgstr ""
+
 #. TRANSLATORS: this string will be passed the type of the
 #. device (eg "disk" or "network"), which will be translated
 #. accordingly.
@@ -430,10 +443,17 @@  msgstr "Falha: inicializar %s"
 msgid "User item %u"
 msgstr "Item do usuário %u"
 
+#, c-format
+msgid "Plugins (%u)"
+msgstr "Plug-ins (%u)"
+
 #, c-format
 msgid "  %s [installed]"
 msgstr ""
 
+msgid "Plugins (0)"
+msgstr "Plug-ins (0)"
+
 #, c-format
 msgid "SAFE MODE: select '%s' to continue"
 msgstr "MODO DE SEGURANÇA: selecione '%s' para continuar"
@@ -459,9 +479,6 @@  msgstr "Log de status do sistema"
 msgid "Retrieve config from URL"
 msgstr "Recuperar configuração a partir da URL"
 
-msgid "Plugins (0)"
-msgstr "Plug-ins (0)"
-
 msgid "Reboot"
 msgstr "Reinicializar"
 
@@ -582,6 +599,10 @@  msgstr " Endereço IP: %s"
 msgid "none"
 msgstr "nenhum"
 
+#, c-format
+msgid " IPv6 Address: %s"
+msgstr " Endereço IPv6: %s"
+
 #. TRANSLATORS: these "up" / "down" strings refer to the
 #. * link status for a network connection.
 #, c-format
@@ -632,6 +653,15 @@  msgid ""
 "To retreive new boot options from a remote configuration file, select the "
 "'Retrieve config from URL' option.\n"
 "\n"
+"To restrict petitboot to only autobooting from a specific device type, the "
+"following keys are available:\n"
+"\n"
+"  F10: Only autoboot from disk\n"
+"  F11: Only autoboot from USB devices\n"
+"  F12: Only autoboot from network\n"
+"\n"
+"Unlike other keys, these do not cancel automatic boot.\n"
+"\n"
 "To close the Petitboot interface, type X (exit).\n"
 msgstr ""
 "Na tela do menu principal, selecione uma opção de inicialização. As opções "
diff --git a/po/ru.po b/po/ru.po
index 56a1b2a3..893c1f03 100644
--- a/po/ru.po
+++ b/po/ru.po
@@ -6,7 +6,7 @@  msgid ""
 msgstr ""
 "Project-Id-Version: petitboot 20140623-g89bd2ed2-dirty\n"
 "Report-Msgid-Bugs-To: https://lists.ozlabs.org/listinfo/petitboot\n"
-"POT-Creation-Date: 2018-05-29 16:53+1000\n"
+"POT-Creation-Date: 2018-11-29 10:59+1100\n"
 "PO-Revision-Date: 2014-06-24 13:56+0800\n"
 "Last-Translator: Jeremy Kerr <jk@ozlabs.org>\n"
 "Language-Team: Russian\n"
@@ -92,8 +92,8 @@  msgid "%u downloads in progress..."
 msgstr "Выполняются %u загрузок..."
 
 #, c-format
-msgid "%u %s downloading: %.0f%% - %lu%cB"
-msgstr "%u - загрузка %s: %.0f%% - %lu%cB"
+msgid "%u %s downloading: %.0f%% - %<PRIu64>%cB"
+msgstr "%u - загрузка %s: %.0f%% - %<PRIu64>%cB"
 
 msgid "item"
 msgid_plural "items"
@@ -105,6 +105,19 @@  msgstr[2] "элементов"
 msgid "Booting in %d sec: [%s] %s"
 msgstr "Загрузка через %d сек: [%s] %s"
 
+msgid "device type"
+msgstr ""
+
+msgid "device UUID"
+msgstr ""
+
+msgid "unknown specifier"
+msgstr ""
+
+#, c-format
+msgid "Applying temporary autoboot override: %s"
+msgstr ""
+
 #. TRANSLATORS: this string will be passed the type of the
 #. device (eg "disk" or "network"), which will be translated
 #. accordingly.
@@ -428,10 +441,17 @@  msgstr "Не удалось: загрузиться %s"
 msgid "User item %u"
 msgstr "Пользовательский элемент %u"
 
+#, c-format
+msgid "Plugins (%u)"
+msgstr "Модули (%u)"
+
 #, c-format
 msgid "  %s [installed]"
 msgstr ""
 
+msgid "Plugins (0)"
+msgstr "Модули (0)"
+
 #, c-format
 msgid "SAFE MODE: select '%s' to continue"
 msgstr "БЕЗОПАСНЫЙ РЕЖИМ: чтобы продолжить, выберите '%s'"
@@ -459,9 +479,6 @@  msgstr "Протокол состояния системы"
 msgid "Retrieve config from URL"
 msgstr "Получение конфигурации по URL"
 
-msgid "Plugins (0)"
-msgstr "Модули (0)"
-
 msgid "Reboot"
 msgstr "Перезагрузить"
 
@@ -582,6 +599,10 @@  msgstr " IP-адрес: %s"
 msgid "none"
 msgstr "нет"
 
+#, c-format
+msgid " IPv6 Address: %s"
+msgstr " IPv6-адрес: %s"
+
 #. TRANSLATORS: these "up" / "down" strings refer to the
 #. * link status for a network connection.
 #, c-format
@@ -632,6 +653,15 @@  msgid ""
 "To retreive new boot options from a remote configuration file, select the "
 "'Retrieve config from URL' option.\n"
 "\n"
+"To restrict petitboot to only autobooting from a specific device type, the "
+"following keys are available:\n"
+"\n"
+"  F10: Only autoboot from disk\n"
+"  F11: Only autoboot from USB devices\n"
+"  F12: Only autoboot from network\n"
+"\n"
+"Unlike other keys, these do not cancel automatic boot.\n"
+"\n"
 "To close the Petitboot interface, type X (exit).\n"
 msgstr ""
 "Выберите вариант загрузки на экране главного меню. Представленные варианты "
diff --git a/po/zh_CN.po b/po/zh_CN.po
index 93437b44..05515871 100644
--- a/po/zh_CN.po
+++ b/po/zh_CN.po
@@ -6,7 +6,7 @@  msgid ""
 msgstr ""
 "Project-Id-Version: petitboot 20140623-g89bd2ed2-dirty\n"
 "Report-Msgid-Bugs-To: https://lists.ozlabs.org/listinfo/petitboot\n"
-"POT-Creation-Date: 2018-05-29 16:53+1000\n"
+"POT-Creation-Date: 2018-11-29 10:59+1100\n"
 "PO-Revision-Date: 2014-06-24 13:56+0800\n"
 "Last-Translator: Jeremy Kerr <jk@ozlabs.org>\n"
 "Language-Team: Simplified Chinese\n"
@@ -91,8 +91,8 @@  msgid "%u downloads in progress..."
 msgstr "%u 正在下载..."
 
 #, c-format
-msgid "%u %s downloading: %.0f%% - %lu%cB"
-msgstr "%u %s 正在下载:%.0f%% - %lu%cB"
+msgid "%u %s downloading: %.0f%% - %<PRIu64>%cB"
+msgstr "%u %s 正在下载:%.0f%% - %<PRIu64>%cB"
 
 msgid "item"
 msgid_plural "items"
@@ -102,6 +102,19 @@  msgstr[0] "项"
 msgid "Booting in %d sec: [%s] %s"
 msgstr "将在 %d 秒内引导:[%s] %s"
 
+msgid "device type"
+msgstr ""
+
+msgid "device UUID"
+msgstr ""
+
+msgid "unknown specifier"
+msgstr ""
+
+#, c-format
+msgid "Applying temporary autoboot override: %s"
+msgstr ""
+
 #. TRANSLATORS: this string will be passed the type of the
 #. device (eg "disk" or "network"), which will be translated
 #. accordingly.
@@ -423,10 +436,17 @@  msgstr "失败:引导 %s"
 msgid "User item %u"
 msgstr "用户项 %u"
 
+#, c-format
+msgid "Plugins (%u)"
+msgstr "插件 (%u)"
+
 #, c-format
 msgid "  %s [installed]"
 msgstr ""
 
+msgid "Plugins (0)"
+msgstr "插件 (0)"
+
 #, c-format
 msgid "SAFE MODE: select '%s' to continue"
 msgstr "安全模式:选择“%s”以继续"
@@ -452,9 +472,6 @@  msgstr "系统状态日志"
 msgid "Retrieve config from URL"
 msgstr "从 URL 中检索配置"
 
-msgid "Plugins (0)"
-msgstr "插件 (0)"
-
 msgid "Reboot"
 msgstr "重新引导"
 
@@ -575,6 +592,10 @@  msgstr " IP 地址:%s"
 msgid "none"
 msgstr "无"
 
+#, c-format
+msgid " IPv6 Address: %s"
+msgstr " IPv6 地址:%s"
+
 #. TRANSLATORS: these "up" / "down" strings refer to the
 #. * link status for a network connection.
 #, c-format
@@ -625,6 +646,15 @@  msgid ""
 "To retreive new boot options from a remote configuration file, select the "
 "'Retrieve config from URL' option.\n"
 "\n"
+"To restrict petitboot to only autobooting from a specific device type, the "
+"following keys are available:\n"
+"\n"
+"  F10: Only autoboot from disk\n"
+"  F11: Only autoboot from USB devices\n"
+"  F12: Only autoboot from network\n"
+"\n"
+"Unlike other keys, these do not cancel automatic boot.\n"
+"\n"
 "To close the Petitboot interface, type X (exit).\n"
 msgstr ""
 "从主菜单屏幕中,选择引导选项。显示的选项在系统和网络上可用。\n"
diff --git a/po/zh_TW.po b/po/zh_TW.po
index 9ffb2842..0599763d 100644
--- a/po/zh_TW.po
+++ b/po/zh_TW.po
@@ -6,7 +6,7 @@  msgid ""
 msgstr ""
 "Project-Id-Version: petitboot 20140623-g89bd2ed2-dirty\n"
 "Report-Msgid-Bugs-To: https://lists.ozlabs.org/listinfo/petitboot\n"
-"POT-Creation-Date: 2018-05-29 16:53+1000\n"
+"POT-Creation-Date: 2018-11-29 10:59+1100\n"
 "PO-Revision-Date: 2014-06-24 13:56+0800\n"
 "Last-Translator: Jeremy Kerr <jk@ozlabs.org>\n"
 "Language-Team: Traditional Chinese\n"
@@ -91,8 +91,8 @@  msgid "%u downloads in progress..."
 msgstr "%u 下載進行中..."
 
 #, c-format
-msgid "%u %s downloading: %.0f%% - %lu%cB"
-msgstr "%u %s 正在下載:已下載%.0f%% - %lu%cB"
+msgid "%u %s downloading: %.0f%% - %<PRIu64>%cB"
+msgstr "%u %s 正在下載:已下載%.0f%% - %<PRIu64>%cB"
 
 msgid "item"
 msgid_plural "items"
@@ -102,6 +102,19 @@  msgstr[0] "項目"
 msgid "Booting in %d sec: [%s] %s"
 msgstr "%d 秒後啟動:[%s] %s"
 
+msgid "device type"
+msgstr ""
+
+msgid "device UUID"
+msgstr ""
+
+msgid "unknown specifier"
+msgstr ""
+
+#, c-format
+msgid "Applying temporary autoboot override: %s"
+msgstr ""
+
 #. TRANSLATORS: this string will be passed the type of the
 #. device (eg "disk" or "network"), which will be translated
 #. accordingly.
@@ -423,10 +436,17 @@  msgstr "失敗:啟動 %s"
 msgid "User item %u"
 msgstr "使用者項目 %u"
 
+#, c-format
+msgid "Plugins (%u)"
+msgstr "外掛程式 (%u)"
+
 #, c-format
 msgid "  %s [installed]"
 msgstr ""
 
+msgid "Plugins (0)"
+msgstr "外掛程式 (0)"
+
 #, c-format
 msgid "SAFE MODE: select '%s' to continue"
 msgstr "安全模式:選取 '%s' 以繼續"
@@ -452,9 +472,6 @@  msgstr "系統狀態日誌"
 msgid "Retrieve config from URL"
 msgstr "從 URL 擷取配置"
 
-msgid "Plugins (0)"
-msgstr "外掛程式 (0)"
-
 msgid "Reboot"
 msgstr "重新啟動"
 
@@ -575,6 +592,10 @@  msgstr " IP 位址:%s"
 msgid "none"
 msgstr "無"
 
+#, c-format
+msgid " IPv6 Address: %s"
+msgstr " IPv6 位址:%s"
+
 #. TRANSLATORS: these "up" / "down" strings refer to the
 #. * link status for a network connection.
 #, c-format
@@ -625,6 +646,15 @@  msgid ""
 "To retreive new boot options from a remote configuration file, select the "
 "'Retrieve config from URL' option.\n"
 "\n"
+"To restrict petitboot to only autobooting from a specific device type, the "
+"following keys are available:\n"
+"\n"
+"  F10: Only autoboot from disk\n"
+"  F11: Only autoboot from USB devices\n"
+"  F12: Only autoboot from network\n"
+"\n"
+"Unlike other keys, these do not cancel automatic boot.\n"
+"\n"
 "To close the Petitboot interface, type X (exit).\n"
 msgstr ""
 "從主功能表畫面中,選取啟動選項。所顯示的選項在系統及網路上均可用。\n"
diff --git a/ui/ncurses/nc-cui.c b/ui/ncurses/nc-cui.c
index 8ad89553..0522bdfe 100644
--- a/ui/ncurses/nc-cui.c
+++ b/ui/ncurses/nc-cui.c
@@ -323,6 +323,51 @@  static int cui_boot(struct pmenu_item *item)
 	return 0;
 }
 
+static int menu_sysinfo_execute(struct pmenu_item *item)
+{
+	cui_show_sysinfo(cui_from_item(item));
+	return 0;
+}
+
+static int menu_config_execute(struct pmenu_item *item)
+{
+	cui_show_config(cui_from_item(item));
+	return 0;
+}
+
+static int menu_lang_execute(struct pmenu_item *item)
+{
+	cui_show_lang(cui_from_item(item));
+	return 0;
+}
+
+static int menu_statuslog_execute(struct pmenu_item *item)
+{
+	cui_show_statuslog(cui_from_item(item));
+	return 0;
+}
+
+static int menu_reinit_execute(struct pmenu_item *item)
+{
+	if (cui_from_item(item)->client)
+		cui_send_reinit(cui_from_item(item));
+	return 0;
+}
+
+static int menu_add_url_execute(struct pmenu_item *item)
+{
+	if (cui_from_item(item)->client)
+		cui_show_add_url(cui_from_item(item));
+	return 0;
+}
+
+static int menu_plugin_execute(struct pmenu_item *item)
+{
+	if (cui_from_item(item)->client)
+		cui_show_plugin_menu(cui_from_item(item));
+	return 0;
+}
+
 static void cui_boot_editor_on_exit(struct cui *cui,
 		struct pmenu_item *item,
 		struct pb_boot_data *bd)
@@ -846,10 +891,10 @@  static int cui_boot_option_add(struct device *dev, struct boot_option *opt,
 		result = set_menu_items(cui->main->ncm, NULL);
 		for (j = 0 ; j < cui->main->item_count; j++) {
 			item = item_userptr(cui->main->items[j]);
-			if (strncmp(item->nci->name.str, "Plugins", strlen("Plugins")))
+			if (item->on_execute != menu_plugin_execute)
 				continue;
 			cui->n_plugins++;
-			char *label = talloc_asprintf(item, "Plugins (%u)",
+			char *label = talloc_asprintf(item, _("Plugins (%u)"),
 					cui->n_plugins);
 			pmenu_item_update(item, label);
 			talloc_free(label);
@@ -1147,10 +1192,10 @@  static int cui_plugins_remove(void *arg)
 	set_menu_items(cui->main->ncm, NULL);
 	for (i = 0; i < cui->main->item_count; i++) {
 		item = item_userptr(cui->main->items[i]);
-		if (strncmp(item->nci->name.str, "Plugins", strlen("Plugins")))
+		if (item->on_execute != menu_plugin_execute)
 			continue;
 		cui->n_plugins = 0;
-		pmenu_item_update(item, "Plugins (0)");
+		pmenu_item_update(item, _("Plugins (0)"));
 		break;
 	}
 
@@ -1287,51 +1332,6 @@  void cui_send_reinit(struct cui *cui)
 	discover_client_send_reinit(cui->client);
 }
 
-static int menu_sysinfo_execute(struct pmenu_item *item)
-{
-	cui_show_sysinfo(cui_from_item(item));
-	return 0;
-}
-
-static int menu_config_execute(struct pmenu_item *item)
-{
-	cui_show_config(cui_from_item(item));
-	return 0;
-}
-
-static int menu_lang_execute(struct pmenu_item *item)
-{
-	cui_show_lang(cui_from_item(item));
-	return 0;
-}
-
-static int menu_statuslog_execute(struct pmenu_item *item)
-{
-	cui_show_statuslog(cui_from_item(item));
-	return 0;
-}
-
-static int menu_reinit_execute(struct pmenu_item *item)
-{
-	if (cui_from_item(item)->client)
-		cui_send_reinit(cui_from_item(item));
-	return 0;
-}
-
-static int menu_add_url_execute(struct pmenu_item *item)
-{
-	if (cui_from_item(item)->client)
-		cui_show_add_url(cui_from_item(item));
-	return 0;
-}
-
-static int menu_plugin_execute(struct pmenu_item *item)
-{
-	if (cui_from_item(item)->client)
-		cui_show_plugin_menu(cui_from_item(item));
-	return 0;
-}
-
 /**
  * pb_mm_init - Setup the main menu instance.
  */