summaryrefslogtreecommitdiffhomepage
path: root/applications
diff options
context:
space:
mode:
authorPaul Donald <newtwen@gmail.com>2024-01-03 12:14:42 +0000
committerPaul Donald <newtwen@gmail.com>2024-01-03 13:14:08 +0000
commit71875838248700f0d35bd0824ecc990f0b8d92ae (patch)
treea2fc97e628ef16945ccc22d7c920126f5a72cc1a /applications
parent5e409cbf3d98a04c9b38f5b7a6e29abf671018a6 (diff)
luci-app-acme: i18n house-keeping
Signed-off-by: Paul Donald <newtwen@gmail.com>
Diffstat (limited to 'applications')
-rw-r--r--applications/luci-app-acme/po/bn/acme.po297
-rw-r--r--applications/luci-app-acme/po/nb/acme.po298
-rw-r--r--applications/luci-app-acme/po/nl/acme.po298
-rw-r--r--applications/luci-app-acme/po/zh/acme.po297
4 files changed, 1190 insertions, 0 deletions
diff --git a/applications/luci-app-acme/po/bn/acme.po b/applications/luci-app-acme/po/bn/acme.po
new file mode 100644
index 0000000000..0b943177bc
--- /dev/null
+++ b/applications/luci-app-acme/po/bn/acme.po
@@ -0,0 +1,297 @@
+msgid ""
+msgstr ""
+"Content-Type: text/plain; charset=UTF-8\n"
+"Project-Id-Version: PACKAGE VERSION\n"
+"Last-Translator: Automatically generated\n"
+"Language-Team: none\n"
+"Language: bn\n"
+"MIME-Version: 1.0\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:25
+#: applications/luci-app-acme/root/usr/share/luci/menu.d/luci-app-acme.json:3
+msgid "ACME certificates"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:36
+msgid "ACME global config"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:514
+msgid "ACME server URL"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:39
+msgid "Account email"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:57
+msgid "Advanced Settings"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:433
+msgid "Base64 content of private key. Use instead of YC_SA_Key_File_Path"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:33
+msgid "Cert files are stored in"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:49
+msgid "Certificate config"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:605
+msgid "Certificates"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:452
+msgid "Challenge Alias"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:509
+msgid "Custom ACME CA"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:515
+msgid "Custom ACME server directory URL."
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:74
+msgid "DNS"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:87
+msgid "DNS API"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:444
+msgid "DNS API credentials"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:56
+msgid "DNS Challenge Validation"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:521
+msgid "Days until renewal"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:81
+msgid "Default"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:459
+msgid "Domain Alias"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:62
+msgid "Domain names"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:63
+msgid ""
+"Domain names to include in the certificate. The first name will be the "
+"subject name, subsequent names will be alt names. Note that all domain names "
+"must point at the router in the global DNS."
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:410
+msgid ""
+"E.g. <code>_acme-challenge.example.com:12345:98765 alias.example.com:11111</"
+"code>"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:482
+msgid "ECC 256 bits"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:483
+msgid "ECC 384 bits"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:40
+msgid "Email address to associate with account key."
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:46
+msgid "Enable debug logging"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:59
+msgid "Enabled"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:54
+msgid "General Settings"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:469
+msgid ""
+"Get certificate from the Letsencrypt staging server (use for testing; the "
+"certificate won't be valid)."
+msgstr ""
+
+#: applications/luci-app-acme/root/usr/share/rpcd/acl.d/luci-app-acme.json:3
+msgid "Grant UCI access for luci-app-acme"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:41
+msgid ""
+"If a certificate wasn't renewed in time then you'll receive a notice at 20 "
+"days before expiry."
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:587
+msgid "Issued on"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:477
+msgid "Key size (and type) for the generated certificate."
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:476
+msgid "Key type"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:584
+msgid "Main Domain"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:369
+msgid "OCID of tenancy that contains the target DNS zone"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:372
+msgid "OCID of user with permission to add/remove records from zones"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:275
+msgid ""
+"Open <a href=\"https://www.duckdns.org/\">DuckDNS</a> and copy a token here"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:378
+msgid "Path to private API signing key file in PEM format"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:585
+msgid "Private Key"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:586
+msgid "Public Certificate"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:479
+msgid "RSA 2048 bits"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:480
+msgid "RSA 3072 bits"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:481
+msgid "RSA 4096 bits"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:236
+msgid "See instructions"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:375
+msgid "Should point to the tenancy home region"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:72
+msgid "Standalone"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:69
+msgid ""
+"Standalone mode will use the built-in webserver of acme.sh to issue a "
+"certificate. Webroot mode will use an existing webserver to issue a "
+"certificate. DNS mode will allow you to use the DNS API of your DNS provider "
+"to issue a certificate."
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:453
+msgid ""
+"The challenge alias to use for ALL domains. See https://github.com/acmesh-"
+"official/acme.sh/wiki/DNS-alias-mode for the details of this process. LUCI "
+"only supports one challenge alias per certificate."
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:445
+msgid ""
+"The credentials for the DNS API mode selected above. See https://github.com/"
+"acmesh-official/acme.sh/wiki/dnsapi for the format of credentials required "
+"by each API. Add multiple entries here in KEY=VAL shell variable format to "
+"supply multiple credential variables."
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:460
+msgid ""
+"The domain alias to use for ALL domains. See https://github.com/acmesh-"
+"official/acme.sh/wiki/DNS-alias-mode for the details of this process. LUCI "
+"only supports one challenge domain per certificate."
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:381
+msgid "The private API signing key in PEM format"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:26
+msgid ""
+"This configures ACME (Letsencrypt) automatic certificate installation. "
+"Simply fill out this to have the router configured with Letsencrypt-issued "
+"certificates for the web interface. Note that the domain names in the "
+"certificate must already be configured to point at the router's public IP "
+"address. Once configured, issuing certificates can take a while. Check the "
+"logs for progress and any errors."
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:297
+msgid "This is usually NOT an email address"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:88
+msgid ""
+"To use DNS mode to issue certificates, set this to the name of a DNS API "
+"supported by acme.sh. See https://github.com/acmesh-official/acme.sh/wiki/"
+"dnsapi for the list of available APIs. In DNS mode, the domain name does not "
+"have to resolve to the router IP. DNS mode is also the only mode that "
+"supports wildcard certificates. Using this mode requires the acme-dnsapi "
+"package to be installed."
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:509
+msgid "Use a custom CA instead of Let's Encrypt."
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:467
+msgid "Use staging server"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:68
+msgid "Validation method"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:73
+msgid "Webroot"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:55
+msgid "Webroot Challenge Validation"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:77
+msgid "Webroot directory"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:78
+msgid ""
+"Webserver root directory. Set this to the webserver document root to run "
+"Acme in webroot mode. The web server must be accessible from the internet on "
+"port 80."
+msgstr ""
diff --git a/applications/luci-app-acme/po/nb/acme.po b/applications/luci-app-acme/po/nb/acme.po
new file mode 100644
index 0000000000..071c6a0281
--- /dev/null
+++ b/applications/luci-app-acme/po/nb/acme.po
@@ -0,0 +1,298 @@
+msgid ""
+msgstr ""
+"Content-Type: text/plain; charset=UTF-8\n"
+"Project-Id-Version: PACKAGE VERSION\n"
+"Last-Translator: Automatically generated\n"
+"Language-Team: none\n"
+"Language: nb\n"
+"MIME-Version: 1.0\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:25
+#: applications/luci-app-acme/root/usr/share/luci/menu.d/luci-app-acme.json:3
+msgid "ACME certificates"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:36
+msgid "ACME global config"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:514
+msgid "ACME server URL"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:39
+msgid "Account email"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:57
+msgid "Advanced Settings"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:433
+msgid "Base64 content of private key. Use instead of YC_SA_Key_File_Path"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:33
+msgid "Cert files are stored in"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:49
+msgid "Certificate config"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:605
+msgid "Certificates"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:452
+msgid "Challenge Alias"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:509
+msgid "Custom ACME CA"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:515
+msgid "Custom ACME server directory URL."
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:74
+msgid "DNS"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:87
+msgid "DNS API"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:444
+msgid "DNS API credentials"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:56
+msgid "DNS Challenge Validation"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:521
+msgid "Days until renewal"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:81
+msgid "Default"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:459
+msgid "Domain Alias"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:62
+msgid "Domain names"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:63
+msgid ""
+"Domain names to include in the certificate. The first name will be the "
+"subject name, subsequent names will be alt names. Note that all domain names "
+"must point at the router in the global DNS."
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:410
+msgid ""
+"E.g. <code>_acme-challenge.example.com:12345:98765 alias.example.com:11111</"
+"code>"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:482
+msgid "ECC 256 bits"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:483
+msgid "ECC 384 bits"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:40
+msgid "Email address to associate with account key."
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:46
+msgid "Enable debug logging"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:59
+msgid "Enabled"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:54
+msgid "General Settings"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:469
+msgid ""
+"Get certificate from the Letsencrypt staging server (use for testing; the "
+"certificate won't be valid)."
+msgstr ""
+
+#: applications/luci-app-acme/root/usr/share/rpcd/acl.d/luci-app-acme.json:3
+msgid "Grant UCI access for luci-app-acme"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:41
+msgid ""
+"If a certificate wasn't renewed in time then you'll receive a notice at 20 "
+"days before expiry."
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:587
+msgid "Issued on"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:477
+msgid "Key size (and type) for the generated certificate."
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:476
+msgid "Key type"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:584
+msgid "Main Domain"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:369
+msgid "OCID of tenancy that contains the target DNS zone"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:372
+msgid "OCID of user with permission to add/remove records from zones"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:275
+msgid ""
+"Open <a href=\"https://www.duckdns.org/\">DuckDNS</a> and copy a token here"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:378
+msgid "Path to private API signing key file in PEM format"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:585
+msgid "Private Key"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:586
+msgid "Public Certificate"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:479
+msgid "RSA 2048 bits"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:480
+msgid "RSA 3072 bits"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:481
+msgid "RSA 4096 bits"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:236
+msgid "See instructions"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:375
+msgid "Should point to the tenancy home region"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:72
+msgid "Standalone"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:69
+msgid ""
+"Standalone mode will use the built-in webserver of acme.sh to issue a "
+"certificate. Webroot mode will use an existing webserver to issue a "
+"certificate. DNS mode will allow you to use the DNS API of your DNS provider "
+"to issue a certificate."
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:453
+msgid ""
+"The challenge alias to use for ALL domains. See https://github.com/acmesh-"
+"official/acme.sh/wiki/DNS-alias-mode for the details of this process. LUCI "
+"only supports one challenge alias per certificate."
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:445
+msgid ""
+"The credentials for the DNS API mode selected above. See https://github.com/"
+"acmesh-official/acme.sh/wiki/dnsapi for the format of credentials required "
+"by each API. Add multiple entries here in KEY=VAL shell variable format to "
+"supply multiple credential variables."
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:460
+msgid ""
+"The domain alias to use for ALL domains. See https://github.com/acmesh-"
+"official/acme.sh/wiki/DNS-alias-mode for the details of this process. LUCI "
+"only supports one challenge domain per certificate."
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:381
+msgid "The private API signing key in PEM format"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:26
+msgid ""
+"This configures ACME (Letsencrypt) automatic certificate installation. "
+"Simply fill out this to have the router configured with Letsencrypt-issued "
+"certificates for the web interface. Note that the domain names in the "
+"certificate must already be configured to point at the router's public IP "
+"address. Once configured, issuing certificates can take a while. Check the "
+"logs for progress and any errors."
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:297
+msgid "This is usually NOT an email address"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:88
+msgid ""
+"To use DNS mode to issue certificates, set this to the name of a DNS API "
+"supported by acme.sh. See https://github.com/acmesh-official/acme.sh/wiki/"
+"dnsapi for the list of available APIs. In DNS mode, the domain name does not "
+"have to resolve to the router IP. DNS mode is also the only mode that "
+"supports wildcard certificates. Using this mode requires the acme-dnsapi "
+"package to be installed."
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:509
+msgid "Use a custom CA instead of Let's Encrypt."
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:467
+msgid "Use staging server"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:68
+msgid "Validation method"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:73
+msgid "Webroot"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:55
+msgid "Webroot Challenge Validation"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:77
+msgid "Webroot directory"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:78
+msgid ""
+"Webserver root directory. Set this to the webserver document root to run "
+"Acme in webroot mode. The web server must be accessible from the internet on "
+"port 80."
+msgstr ""
diff --git a/applications/luci-app-acme/po/nl/acme.po b/applications/luci-app-acme/po/nl/acme.po
new file mode 100644
index 0000000000..ecf270cfd0
--- /dev/null
+++ b/applications/luci-app-acme/po/nl/acme.po
@@ -0,0 +1,298 @@
+msgid ""
+msgstr ""
+"Content-Type: text/plain; charset=UTF-8\n"
+"Project-Id-Version: PACKAGE VERSION\n"
+"Last-Translator: Automatically generated\n"
+"Language-Team: none\n"
+"Language: nl\n"
+"MIME-Version: 1.0\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:25
+#: applications/luci-app-acme/root/usr/share/luci/menu.d/luci-app-acme.json:3
+msgid "ACME certificates"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:36
+msgid "ACME global config"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:514
+msgid "ACME server URL"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:39
+msgid "Account email"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:57
+msgid "Advanced Settings"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:433
+msgid "Base64 content of private key. Use instead of YC_SA_Key_File_Path"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:33
+msgid "Cert files are stored in"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:49
+msgid "Certificate config"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:605
+msgid "Certificates"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:452
+msgid "Challenge Alias"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:509
+msgid "Custom ACME CA"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:515
+msgid "Custom ACME server directory URL."
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:74
+msgid "DNS"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:87
+msgid "DNS API"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:444
+msgid "DNS API credentials"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:56
+msgid "DNS Challenge Validation"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:521
+msgid "Days until renewal"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:81
+msgid "Default"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:459
+msgid "Domain Alias"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:62
+msgid "Domain names"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:63
+msgid ""
+"Domain names to include in the certificate. The first name will be the "
+"subject name, subsequent names will be alt names. Note that all domain names "
+"must point at the router in the global DNS."
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:410
+msgid ""
+"E.g. <code>_acme-challenge.example.com:12345:98765 alias.example.com:11111</"
+"code>"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:482
+msgid "ECC 256 bits"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:483
+msgid "ECC 384 bits"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:40
+msgid "Email address to associate with account key."
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:46
+msgid "Enable debug logging"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:59
+msgid "Enabled"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:54
+msgid "General Settings"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:469
+msgid ""
+"Get certificate from the Letsencrypt staging server (use for testing; the "
+"certificate won't be valid)."
+msgstr ""
+
+#: applications/luci-app-acme/root/usr/share/rpcd/acl.d/luci-app-acme.json:3
+msgid "Grant UCI access for luci-app-acme"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:41
+msgid ""
+"If a certificate wasn't renewed in time then you'll receive a notice at 20 "
+"days before expiry."
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:587
+msgid "Issued on"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:477
+msgid "Key size (and type) for the generated certificate."
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:476
+msgid "Key type"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:584
+msgid "Main Domain"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:369
+msgid "OCID of tenancy that contains the target DNS zone"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:372
+msgid "OCID of user with permission to add/remove records from zones"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:275
+msgid ""
+"Open <a href=\"https://www.duckdns.org/\">DuckDNS</a> and copy a token here"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:378
+msgid "Path to private API signing key file in PEM format"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:585
+msgid "Private Key"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:586
+msgid "Public Certificate"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:479
+msgid "RSA 2048 bits"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:480
+msgid "RSA 3072 bits"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:481
+msgid "RSA 4096 bits"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:236
+msgid "See instructions"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:375
+msgid "Should point to the tenancy home region"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:72
+msgid "Standalone"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:69
+msgid ""
+"Standalone mode will use the built-in webserver of acme.sh to issue a "
+"certificate. Webroot mode will use an existing webserver to issue a "
+"certificate. DNS mode will allow you to use the DNS API of your DNS provider "
+"to issue a certificate."
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:453
+msgid ""
+"The challenge alias to use for ALL domains. See https://github.com/acmesh-"
+"official/acme.sh/wiki/DNS-alias-mode for the details of this process. LUCI "
+"only supports one challenge alias per certificate."
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:445
+msgid ""
+"The credentials for the DNS API mode selected above. See https://github.com/"
+"acmesh-official/acme.sh/wiki/dnsapi for the format of credentials required "
+"by each API. Add multiple entries here in KEY=VAL shell variable format to "
+"supply multiple credential variables."
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:460
+msgid ""
+"The domain alias to use for ALL domains. See https://github.com/acmesh-"
+"official/acme.sh/wiki/DNS-alias-mode for the details of this process. LUCI "
+"only supports one challenge domain per certificate."
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:381
+msgid "The private API signing key in PEM format"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:26
+msgid ""
+"This configures ACME (Letsencrypt) automatic certificate installation. "
+"Simply fill out this to have the router configured with Letsencrypt-issued "
+"certificates for the web interface. Note that the domain names in the "
+"certificate must already be configured to point at the router's public IP "
+"address. Once configured, issuing certificates can take a while. Check the "
+"logs for progress and any errors."
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:297
+msgid "This is usually NOT an email address"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:88
+msgid ""
+"To use DNS mode to issue certificates, set this to the name of a DNS API "
+"supported by acme.sh. See https://github.com/acmesh-official/acme.sh/wiki/"
+"dnsapi for the list of available APIs. In DNS mode, the domain name does not "
+"have to resolve to the router IP. DNS mode is also the only mode that "
+"supports wildcard certificates. Using this mode requires the acme-dnsapi "
+"package to be installed."
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:509
+msgid "Use a custom CA instead of Let's Encrypt."
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:467
+msgid "Use staging server"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:68
+msgid "Validation method"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:73
+msgid "Webroot"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:55
+msgid "Webroot Challenge Validation"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:77
+msgid "Webroot directory"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:78
+msgid ""
+"Webserver root directory. Set this to the webserver document root to run "
+"Acme in webroot mode. The web server must be accessible from the internet on "
+"port 80."
+msgstr ""
diff --git a/applications/luci-app-acme/po/zh/acme.po b/applications/luci-app-acme/po/zh/acme.po
new file mode 100644
index 0000000000..d8086a7ae7
--- /dev/null
+++ b/applications/luci-app-acme/po/zh/acme.po
@@ -0,0 +1,297 @@
+msgid ""
+msgstr ""
+"Content-Type: text/plain; charset=UTF-8\n"
+"Project-Id-Version: PACKAGE VERSION\n"
+"Last-Translator: Automatically generated\n"
+"Language-Team: none\n"
+"Language: zh\n"
+"MIME-Version: 1.0\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:25
+#: applications/luci-app-acme/root/usr/share/luci/menu.d/luci-app-acme.json:3
+msgid "ACME certificates"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:36
+msgid "ACME global config"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:514
+msgid "ACME server URL"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:39
+msgid "Account email"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:57
+msgid "Advanced Settings"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:433
+msgid "Base64 content of private key. Use instead of YC_SA_Key_File_Path"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:33
+msgid "Cert files are stored in"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:49
+msgid "Certificate config"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:605
+msgid "Certificates"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:452
+msgid "Challenge Alias"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:509
+msgid "Custom ACME CA"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:515
+msgid "Custom ACME server directory URL."
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:74
+msgid "DNS"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:87
+msgid "DNS API"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:444
+msgid "DNS API credentials"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:56
+msgid "DNS Challenge Validation"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:521
+msgid "Days until renewal"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:81
+msgid "Default"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:459
+msgid "Domain Alias"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:62
+msgid "Domain names"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:63
+msgid ""
+"Domain names to include in the certificate. The first name will be the "
+"subject name, subsequent names will be alt names. Note that all domain names "
+"must point at the router in the global DNS."
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:410
+msgid ""
+"E.g. <code>_acme-challenge.example.com:12345:98765 alias.example.com:11111</"
+"code>"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:482
+msgid "ECC 256 bits"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:483
+msgid "ECC 384 bits"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:40
+msgid "Email address to associate with account key."
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:46
+msgid "Enable debug logging"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:59
+msgid "Enabled"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:54
+msgid "General Settings"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:469
+msgid ""
+"Get certificate from the Letsencrypt staging server (use for testing; the "
+"certificate won't be valid)."
+msgstr ""
+
+#: applications/luci-app-acme/root/usr/share/rpcd/acl.d/luci-app-acme.json:3
+msgid "Grant UCI access for luci-app-acme"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:41
+msgid ""
+"If a certificate wasn't renewed in time then you'll receive a notice at 20 "
+"days before expiry."
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:587
+msgid "Issued on"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:477
+msgid "Key size (and type) for the generated certificate."
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:476
+msgid "Key type"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:584
+msgid "Main Domain"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:369
+msgid "OCID of tenancy that contains the target DNS zone"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:372
+msgid "OCID of user with permission to add/remove records from zones"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:275
+msgid ""
+"Open <a href=\"https://www.duckdns.org/\">DuckDNS</a> and copy a token here"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:378
+msgid "Path to private API signing key file in PEM format"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:585
+msgid "Private Key"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:586
+msgid "Public Certificate"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:479
+msgid "RSA 2048 bits"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:480
+msgid "RSA 3072 bits"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:481
+msgid "RSA 4096 bits"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:236
+msgid "See instructions"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:375
+msgid "Should point to the tenancy home region"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:72
+msgid "Standalone"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:69
+msgid ""
+"Standalone mode will use the built-in webserver of acme.sh to issue a "
+"certificate. Webroot mode will use an existing webserver to issue a "
+"certificate. DNS mode will allow you to use the DNS API of your DNS provider "
+"to issue a certificate."
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:453
+msgid ""
+"The challenge alias to use for ALL domains. See https://github.com/acmesh-"
+"official/acme.sh/wiki/DNS-alias-mode for the details of this process. LUCI "
+"only supports one challenge alias per certificate."
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:445
+msgid ""
+"The credentials for the DNS API mode selected above. See https://github.com/"
+"acmesh-official/acme.sh/wiki/dnsapi for the format of credentials required "
+"by each API. Add multiple entries here in KEY=VAL shell variable format to "
+"supply multiple credential variables."
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:460
+msgid ""
+"The domain alias to use for ALL domains. See https://github.com/acmesh-"
+"official/acme.sh/wiki/DNS-alias-mode for the details of this process. LUCI "
+"only supports one challenge domain per certificate."
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:381
+msgid "The private API signing key in PEM format"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:26
+msgid ""
+"This configures ACME (Letsencrypt) automatic certificate installation. "
+"Simply fill out this to have the router configured with Letsencrypt-issued "
+"certificates for the web interface. Note that the domain names in the "
+"certificate must already be configured to point at the router's public IP "
+"address. Once configured, issuing certificates can take a while. Check the "
+"logs for progress and any errors."
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:297
+msgid "This is usually NOT an email address"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:88
+msgid ""
+"To use DNS mode to issue certificates, set this to the name of a DNS API "
+"supported by acme.sh. See https://github.com/acmesh-official/acme.sh/wiki/"
+"dnsapi for the list of available APIs. In DNS mode, the domain name does not "
+"have to resolve to the router IP. DNS mode is also the only mode that "
+"supports wildcard certificates. Using this mode requires the acme-dnsapi "
+"package to be installed."
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:509
+msgid "Use a custom CA instead of Let's Encrypt."
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:467
+msgid "Use staging server"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:68
+msgid "Validation method"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:73
+msgid "Webroot"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:55
+msgid "Webroot Challenge Validation"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:77
+msgid "Webroot directory"
+msgstr ""
+
+#: applications/luci-app-acme/htdocs/luci-static/resources/view/acme.js:78
+msgid ""
+"Webserver root directory. Set this to the webserver document root to run "
+"Acme in webroot mode. The web server must be accessible from the internet on "
+"port 80."
+msgstr ""