From 88e036497b12854bbd8add3f6dd48d5d520c05e2 Mon Sep 17 00:00:00 2001 From: James Valleroy Date: Sun, 24 Sep 2017 11:31:58 -0400 Subject: [PATCH] Update translation strings --- plinth/locale/cs/LC_MESSAGES/django.po | 884 ++++++++++++------ plinth/locale/da/LC_MESSAGES/django.po | 867 +++++++++++------ plinth/locale/de/LC_MESSAGES/django.po | 962 +++++++++++++------ plinth/locale/django.pot | 695 +++++++++----- plinth/locale/es/LC_MESSAGES/django.po | 952 +++++++++++++------ plinth/locale/fa/LC_MESSAGES/django.po | 750 ++++++++++----- plinth/locale/fake/LC_MESSAGES/django.po | 848 +++++++++++------ plinth/locale/fr/LC_MESSAGES/django.po | 960 +++++++++++++------ plinth/locale/gu/LC_MESSAGES/django.po | 695 +++++++++----- plinth/locale/hi/LC_MESSAGES/django.po | 707 +++++++++----- plinth/locale/id/LC_MESSAGES/django.po | 738 ++++++++++----- plinth/locale/it/LC_MESSAGES/django.po | 695 +++++++++----- plinth/locale/ja/LC_MESSAGES/django.po | 695 +++++++++----- plinth/locale/nb/LC_MESSAGES/django.po | 899 ++++++++++++------ plinth/locale/nl/LC_MESSAGES/django.po | 967 +++++++++++++------ plinth/locale/pl/LC_MESSAGES/django.po | 726 ++++++++++----- plinth/locale/pt/LC_MESSAGES/django.po | 724 ++++++++++----- plinth/locale/ru/LC_MESSAGES/django.po | 978 ++++++++++++++------ plinth/locale/sv/LC_MESSAGES/django.po | 777 ++++++++++------ plinth/locale/ta/LC_MESSAGES/django.po | 695 +++++++++----- plinth/locale/te/LC_MESSAGES/django.po | 851 +++++++++++------ plinth/locale/tr/LC_MESSAGES/django.po | 960 +++++++++++++------ plinth/locale/zh_Hans/LC_MESSAGES/django.po | 916 ++++++++++++------ 23 files changed, 12679 insertions(+), 6262 deletions(-) diff --git a/plinth/locale/cs/LC_MESSAGES/django.po b/plinth/locale/cs/LC_MESSAGES/django.po index 95c63f8f7..20b423e0d 100644 --- a/plinth/locale/cs/LC_MESSAGES/django.po +++ b/plinth/locale/cs/LC_MESSAGES/django.po @@ -7,11 +7,11 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2017-07-10 22:56-0400\n" +"POT-Creation-Date: 2017-09-24 11:24-0400\n" "PO-Revision-Date: 2017-08-30 13:44+0000\n" "Last-Translator: Pavel Borecki \n" -"Language-Team: Czech " -"\n" +"Language-Team: Czech \n" "Language: cs\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -19,37 +19,37 @@ msgstr "" "Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n" "X-Generator: Weblate 2.17-dev\n" -#: plinth/action_utils.py:254 +#: plinth/action_utils.py:259 #, python-brace-format msgid "Listening on {kind} port {listen_address}:{port}" msgstr "Očekávající spojení na {kind} portu {listen_address}:{port}" -#: plinth/action_utils.py:257 +#: plinth/action_utils.py:262 #, python-brace-format msgid "Listening on {kind} port {port}" msgstr "Očekávající spojení na {kind} portu {port}" -#: plinth/action_utils.py:352 +#: plinth/action_utils.py:357 #, python-brace-format msgid "Access URL {url} on tcp{kind}" msgstr "Přístupová URL adresa {url} na tcp{kind}" -#: plinth/action_utils.py:356 +#: plinth/action_utils.py:361 #, python-brace-format msgid "Access URL {url}" msgstr "Přístupová URL adresa {url}" -#: plinth/action_utils.py:386 +#: plinth/action_utils.py:391 #, python-brace-format msgid "Connect to {host}:{port}" msgstr "Připojit k {host}:{port}" -#: plinth/action_utils.py:389 +#: plinth/action_utils.py:394 #, python-brace-format msgid "Cannot connect to {host}:{port}" msgstr "Připojit k {host}:{port}" -#: plinth/context_processors.py:38 plinth/views.py:49 +#: plinth/context_processors.py:38 plinth/views.py:52 msgid "FreedomBox" msgstr "FreedomBox" @@ -58,9 +58,17 @@ msgid "Enable application" msgstr "Zapnout aplikaci" #: plinth/forms.py:45 -msgid "Select the domain name to be used for this application" +#, fuzzy +#| msgid "Select the domain name to be used for this application" +msgid "Select a domain name to be used with this application" msgstr "Vyberte doménový název který použít pro tuto aplikaci" +#: plinth/forms.py:47 +msgid "" +"Warning! The application may not work properly if domain name is changed " +"later." +msgstr "" + #: plinth/middleware.py:71 msgid "Application installed." msgstr "Aplikace nainstalována." @@ -96,14 +104,20 @@ msgstr "" "zabezpečení hlavně v případě připojení do nepříliš přátelské místní sítě." #: plinth/modules/bind/__init__.py:34 -msgid "" -"Domain Name Server \n" -" (BIND)" +msgid "BIND" +msgstr "" + +#: plinth/modules/bind/__init__.py:36 +#, fuzzy +#| msgid "" +#| "Domain Name Server \n" +#| " (BIND)" +msgid "Domain Name Server" msgstr "" "Doménový jmenný server\n" " (BIND)" -#: plinth/modules/bind/__init__.py:43 +#: plinth/modules/bind/__init__.py:45 msgid "" "BIND is open source software that enables you to publish your Domain Name " "System (DNS) information on the Internet, and to resolve DNS queries for " @@ -113,7 +127,7 @@ msgstr "" "doménového jmenného systému (DNS) na Internet a překládat DNS dotazy pro " "vaše uživatele." -#: plinth/modules/bind/__init__.py:47 +#: plinth/modules/bind/__init__.py:49 msgid "" "BIND is by far the most widely used DNS software on the Internet, providing " "a robust and stable platform on top of which organizations can build " @@ -162,7 +176,7 @@ msgid "Enable forwarding to set forwarding DNS servers" msgstr "Přeposílat na sadu přeposílajících DNS serverů" #: plinth/modules/config/config.py:88 plinth/modules/config/config.py:125 -#: plinth/modules/dynamicdns/dynamicdns.py:140 +#: plinth/modules/dynamicdns/dynamicdns.py:148 msgid "Invalid domain name" msgstr "Neplatný název domény" @@ -189,7 +203,7 @@ msgstr "Neplatný název stroje" #: plinth/modules/config/config.py:112 plinth/modules/config/config.py:169 #: plinth/modules/config/config.py:285 -#: plinth/modules/dynamicdns/dynamicdns.py:135 +#: plinth/modules/dynamicdns/dynamicdns.py:143 msgid "Domain Name" msgstr "Název domény" @@ -216,7 +230,7 @@ msgid "Language for this web administration interface" msgstr "Jazyk pro toto webové správní rozhraní" #: plinth/modules/config/config.py:151 -#: plinth/modules/dynamicdns/dynamicdns.py:37 +#: plinth/modules/dynamicdns/dynamicdns.py:45 #: plinth/modules/ikiwiki/views.py:37 #: plinth/modules/tahoe/templates/tahoe-pre-setup.html:39 msgid "Configure" @@ -300,19 +314,25 @@ msgid "Time zone set" msgstr "Nastavení časové zóny" #: plinth/modules/deluge/__init__.py:39 -msgid "" -"BitTorrent Web Client \n" -" (Deluge)" +msgid "Deluge" +msgstr "" + +#: plinth/modules/deluge/__init__.py:41 +#, fuzzy +#| msgid "" +#| "BitTorrent Web Client \n" +#| " (Deluge)" +msgid "BitTorrent Web Client" msgstr "" "Webový klient sítě BitTorrent \n" " (Deluge)" -#: plinth/modules/deluge/__init__.py:42 +#: plinth/modules/deluge/__init__.py:44 msgid "Deluge is a BitTorrent client that features a Web UI." msgstr "" "Deluge je BitTorrent klient který poskytuje webové uživatelské rozhraní." -#: plinth/modules/deluge/__init__.py:44 +#: plinth/modules/deluge/__init__.py:46 msgid "" "When enabled, the Deluge web client will be available from /deluge path on the web server. The default password is 'deluge', but " @@ -378,7 +398,15 @@ msgstr "Vyzkoušet" msgid "Result" msgstr "Výsledek" -#: plinth/modules/diaspora/__init__.py:61 +#: plinth/modules/diaspora/__init__.py:51 +msgid "diaspora*" +msgstr "" + +#: plinth/modules/diaspora/__init__.py:53 +msgid "Federated Social Network" +msgstr "" + +#: plinth/modules/diaspora/__init__.py:62 msgid "" "diaspora* is a decentralized social network where you can store and control " "your own data." @@ -386,14 +414,9 @@ msgstr "" "diaspora* je decentralizovaná společenská síť na které ukládáte a ovládáte " "svá vlastní data." -#: plinth/modules/diaspora/forms.py:30 -msgid "Select the domain name to be used for diaspora*" -msgstr "Vyberte doménový název který použít pro diaspora*" - -#: plinth/modules/diaspora/forms.py:32 -msgid "" -"Warning! Do not change the FreedomBox domain name after setting up diaspora*" -msgstr "Varování! Neměňte doménový název FreedomBox po nastavení diaspora*" +#: plinth/modules/diaspora/forms.py:31 +msgid "Enable new user registrations" +msgstr "" #: plinth/modules/diaspora/templates/diaspora-post-setup.html:32 #, python-format @@ -425,7 +448,25 @@ msgstr "" msgid "Update setup" msgstr "Aktualizovat nastavení" -#: plinth/modules/disks/__init__.py:33 plinth/modules/disks/views.py:39 +#: plinth/modules/diaspora/views.py:96 plinth/modules/ejabberd/views.py:60 +#: plinth/modules/openvpn/views.py:145 plinth/modules/tor/views.py:134 +#: plinth/views.py:112 +msgid "Setting unchanged" +msgstr "Nastavení se nezměnila" + +#: plinth/modules/diaspora/views.py:100 +#, fuzzy +#| msgid "Application enabled" +msgid "User registrations enabled" +msgstr "Aplikace zapnuta" + +#: plinth/modules/diaspora/views.py:104 +#, fuzzy +#| msgid "Application disabled" +msgid "User registrations disabled" +msgstr "Aplikace vypnuta" + +#: plinth/modules/disks/__init__.py:33 plinth/modules/disks/views.py:45 msgid "Disks" msgstr "Disky" @@ -470,7 +511,7 @@ msgstr "" #: plinth/modules/disks/templates/disks.html:90 #: plinth/modules/disks/templates/disks.html:102 #: plinth/modules/disks/templates/disks_expand.html:45 -#: plinth/modules/disks/views.py:56 +#: plinth/modules/disks/views.py:62 msgid "Expand Root Partition" msgstr "Zvětšit kořenový oddíl" @@ -491,45 +532,52 @@ msgstr "" "%(expandable_root_size)s dalšího prostoru bude k dispozici na kořenovém " "oddílu." -#: plinth/modules/disks/views.py:65 +#: plinth/modules/disks/views.py:71 #, python-brace-format msgid "Error expanding partition: {exception}" msgstr "Chyba při zvětšování oddílu: {exception}" -#: plinth/modules/disks/views.py:68 +#: plinth/modules/disks/views.py:74 msgid "Partition expanded successfully." msgstr "Oddíl úspěšně zvětšen." -#: plinth/modules/disks/views.py:77 +#: plinth/modules/disks/views.py:93 +#, python-format, python-brace-format +msgid "" +"Warning: Low space on system partition ({percent_used}% used, {free_space} " +"free)." +msgstr "" + +#: plinth/modules/disks/views.py:130 #, python-brace-format msgid "{disk_size:.1f} bytes" msgstr "{disk_size:.1f} bajtů" -#: plinth/modules/disks/views.py:81 +#: plinth/modules/disks/views.py:134 #, python-brace-format msgid "{disk_size:.1f} KiB" msgstr "{disk_size:.1f} KiB" -#: plinth/modules/disks/views.py:85 +#: plinth/modules/disks/views.py:138 #, python-brace-format msgid "{disk_size:.1f} MiB" msgstr "{disk_size:.1f} MiB" -#: plinth/modules/disks/views.py:89 +#: plinth/modules/disks/views.py:142 #, python-brace-format msgid "{disk_size:.1f} GiB" msgstr "{disk_size:.1f} GiB" -#: plinth/modules/disks/views.py:92 +#: plinth/modules/disks/views.py:145 #, python-brace-format msgid "{disk_size:.1f} TiB" msgstr "{disk_size:.1f} TiB" -#: plinth/modules/dynamicdns/__init__.py:33 +#: plinth/modules/dynamicdns/__init__.py:35 msgid "Dynamic DNS Client" msgstr "Klient dynamické DNS" -#: plinth/modules/dynamicdns/__init__.py:37 +#: plinth/modules/dynamicdns/__init__.py:39 #, python-brace-format msgid "" "If your Internet provider changes your IP address periodically (i.e. every " @@ -541,7 +589,7 @@ msgstr "" "Internetu. Toto ostatním zabrání nalézt služby, které jsou poskytovány tímto " "{box_name}." -#: plinth/modules/dynamicdns/__init__.py:43 +#: plinth/modules/dynamicdns/__init__.py:45 msgid "" "The solution is to assign a DNS name to your IP address and update the DNS " "name every time your IP is changed by your Internet provider. Dynamic DNS " @@ -559,11 +607,18 @@ msgstr "" "pokudse někdo z Internetu zeptá na váš DNS název, dostane odpověď s vaší " "současnou IP adresou." -#: plinth/modules/dynamicdns/dynamicdns.py:35 plinth/modules/help/help.py:40 +#: plinth/modules/dynamicdns/__init__.py:67 +#: plinth/modules/dynamicdns/dynamicdns.py:377 +#, fuzzy +#| msgid "Dynamic DNS Client" +msgid "Dynamic DNS Service" +msgstr "Klient dynamické DNS" + +#: plinth/modules/dynamicdns/dynamicdns.py:43 plinth/modules/help/help.py:40 msgid "About" msgstr "O systému" -#: plinth/modules/dynamicdns/dynamicdns.py:39 +#: plinth/modules/dynamicdns/dynamicdns.py:47 #: plinth/modules/firewall/templates/firewall.html:47 #: plinth/modules/networks/templates/connection_show.html:261 #: plinth/modules/openvpn/templates/openvpn.html:67 @@ -572,7 +627,7 @@ msgstr "O systému" msgid "Status" msgstr "Stav" -#: plinth/modules/dynamicdns/dynamicdns.py:63 +#: plinth/modules/dynamicdns/dynamicdns.py:71 msgid "" "The Variables <User>, <Pass>, <Ip>, <Domain> may be " "used within the URL. For details see the update URL templates of the example " @@ -582,7 +637,7 @@ msgstr "" "<Ip>, <Domain>. Další podrobnosti naleznete v šablonách " "aktualizace URL ukázkových poskytovatelů." -#: plinth/modules/dynamicdns/dynamicdns.py:67 +#: plinth/modules/dynamicdns/dynamicdns.py:75 msgid "" "Please choose an update protocol according to your provider. If your " "provider does not support the GnuDIP protocol or your provider is not listed " @@ -592,7 +647,7 @@ msgstr "" "POkud nepodporuje GnuDIP nebo není na seznamu, můžete použít URL adresu, " "poskytnutou vaším poskytovatelem." -#: plinth/modules/dynamicdns/dynamicdns.py:72 +#: plinth/modules/dynamicdns/dynamicdns.py:80 msgid "" "Please do not enter a URL here (like \"https://example.com/\") but only the " "hostname of the GnuDIP server (like \"example.com\")." @@ -600,20 +655,20 @@ msgstr "" "Nezadávejte zde URL adresu (jako třeba „https://example.com/“) ale pouze " "doménu, mířící na GnuDIP server (jako například „example.com“)." -#: plinth/modules/dynamicdns/dynamicdns.py:76 +#: plinth/modules/dynamicdns/dynamicdns.py:84 #, python-brace-format msgid "The public domain name you want to use to reach your {box_name}." msgstr "" "Veřejný doménový název který chcete používat pro dosažitelnost svého " "{box_name}." -#: plinth/modules/dynamicdns/dynamicdns.py:79 +#: plinth/modules/dynamicdns/dynamicdns.py:87 msgid "Use this option if your provider uses self signed certificates." msgstr "" "Tuto předvolbu použijte pokud váš poskytovatel připojení používá samy sebou " "podepsané certifikáty." -#: plinth/modules/dynamicdns/dynamicdns.py:82 +#: plinth/modules/dynamicdns/dynamicdns.py:90 msgid "" "If this option is selected, your username and password will be used for HTTP " "basic authentication." @@ -621,11 +676,11 @@ msgstr "" "Pokud je vybrána tato předvolba, uživatelské jméno a heslo budou použito pro " "základní HTTP ověření." -#: plinth/modules/dynamicdns/dynamicdns.py:85 +#: plinth/modules/dynamicdns/dynamicdns.py:93 msgid "Leave this field empty if you want to keep your current password." msgstr "Pokud chcete zachovat stávající heslo, tuto kolonku nevyplňujte." -#: plinth/modules/dynamicdns/dynamicdns.py:88 +#: plinth/modules/dynamicdns/dynamicdns.py:96 #, python-brace-format msgid "" "Optional Value. If your {box_name} is not connected directly to the Internet " @@ -638,82 +693,82 @@ msgstr "" "skutečné IP address. Adresa by měla vrátit pouze IP ze které klient přichází " "(příklad: http://myip.datasystems24.de)." -#: plinth/modules/dynamicdns/dynamicdns.py:96 +#: plinth/modules/dynamicdns/dynamicdns.py:104 msgid "The username that was used when the account was created." msgstr "Uživatelské jméno které bylo použito pro vytvoření účtu." -#: plinth/modules/dynamicdns/dynamicdns.py:107 +#: plinth/modules/dynamicdns/dynamicdns.py:115 msgid "Enable Dynamic DNS" msgstr "Zapnout dynamické DNS" -#: plinth/modules/dynamicdns/dynamicdns.py:110 +#: plinth/modules/dynamicdns/dynamicdns.py:118 msgid "Service Type" msgstr "Typ služby" -#: plinth/modules/dynamicdns/dynamicdns.py:115 +#: plinth/modules/dynamicdns/dynamicdns.py:123 msgid "GnuDIP Server Address" msgstr "Adresa GnuDIP serveru" -#: plinth/modules/dynamicdns/dynamicdns.py:120 +#: plinth/modules/dynamicdns/dynamicdns.py:128 msgid "Invalid server name" msgstr "Neplatný název serveru" -#: plinth/modules/dynamicdns/dynamicdns.py:123 +#: plinth/modules/dynamicdns/dynamicdns.py:131 msgid "Update URL" msgstr "Aktualizovat URL adresu" -#: plinth/modules/dynamicdns/dynamicdns.py:127 +#: plinth/modules/dynamicdns/dynamicdns.py:135 msgid "Accept all SSL certificates" msgstr "Přijímat veškeré SSL certifikáty" -#: plinth/modules/dynamicdns/dynamicdns.py:131 +#: plinth/modules/dynamicdns/dynamicdns.py:139 msgid "Use HTTP basic authentication" msgstr "Použít základní HTTP ověřování" -#: plinth/modules/dynamicdns/dynamicdns.py:143 +#: plinth/modules/dynamicdns/dynamicdns.py:151 #: plinth/modules/networks/forms.py:228 plinth/modules/transmission/forms.py:37 msgid "Username" msgstr "Uživatelské jméno" -#: plinth/modules/dynamicdns/dynamicdns.py:146 +#: plinth/modules/dynamicdns/dynamicdns.py:154 #: plinth/modules/networks/forms.py:229 plinth/modules/transmission/forms.py:41 msgid "Password" msgstr "Heslo" -#: plinth/modules/dynamicdns/dynamicdns.py:149 +#: plinth/modules/dynamicdns/dynamicdns.py:157 #: plinth/modules/networks/forms.py:231 msgid "Show password" msgstr "Zobrazit heslo" -#: plinth/modules/dynamicdns/dynamicdns.py:153 +#: plinth/modules/dynamicdns/dynamicdns.py:161 msgid "URL to look up public IP" msgstr "URL adresa na které hledat veřejnou IP adresu" -#: plinth/modules/dynamicdns/dynamicdns.py:179 +#: plinth/modules/dynamicdns/dynamicdns.py:187 msgid "Please provide an update URL or a GnuDIP server address" msgstr "Zadejte URL adresu aktualizace nebo GNUDIP serveru" -#: plinth/modules/dynamicdns/dynamicdns.py:184 +#: plinth/modules/dynamicdns/dynamicdns.py:192 msgid "Please provide a GnuDIP username" msgstr "Zadejte GnuDIP uživatelské jméno" -#: plinth/modules/dynamicdns/dynamicdns.py:188 +#: plinth/modules/dynamicdns/dynamicdns.py:196 msgid "Please provide a GnuDIP domain name" msgstr "Zadejte název domény GnuDIP" -#: plinth/modules/dynamicdns/dynamicdns.py:193 +#: plinth/modules/dynamicdns/dynamicdns.py:201 msgid "Please provide a password" msgstr "Zadejte heslo" -#: plinth/modules/dynamicdns/dynamicdns.py:211 +#: plinth/modules/dynamicdns/dynamicdns.py:219 msgid "Configure Dynamic DNS" msgstr "Nastavit dynamickou DNS" -#: plinth/modules/dynamicdns/dynamicdns.py:232 +#: plinth/modules/dynamicdns/dynamicdns.py:240 msgid "Dynamic DNS Status" msgstr "Stav dynamické DNS" -#: plinth/modules/dynamicdns/dynamicdns.py:364 +#: plinth/modules/dynamicdns/dynamicdns.py:381 #: plinth/modules/openvpn/views.py:143 plinth/modules/transmission/views.py:72 msgid "Configuration updated" msgstr "Nastavení aktualizováno" @@ -785,15 +840,18 @@ msgstr "" msgid "Last update" msgstr "Minulá aktualizace" -#: plinth/modules/ejabberd/__init__.py:42 -msgid "" -"Chat Server \n" -" (ejabberd)" -msgstr "" -"Chatovací server \n" -" (ejabberd)" - #: plinth/modules/ejabberd/__init__.py:45 +msgid "ejabberd" +msgstr "" + +#: plinth/modules/ejabberd/__init__.py:47 +#: plinth/modules/matrixsynapse/__init__.py:43 +#, fuzzy +#| msgid "Web Server" +msgid "Chat Server" +msgstr "Webový server" + +#: plinth/modules/ejabberd/__init__.py:50 msgid "" "XMPP is an open and standardized communication protocol. Here you can run " "and configure your XMPP server, called ejabberd." @@ -801,11 +859,17 @@ msgstr "" "XMPP je otevřený a standardizovaný komunikační protokol. Zde je možné " "nastavit a spustit vlastní XMPP server, zvaný ejabberd." -#: plinth/modules/ejabberd/__init__.py:48 +#: plinth/modules/ejabberd/__init__.py:54 +#, fuzzy, python-brace-format +#| msgid "" +#| "To actually communicate, you can use the web client or any other XMPP " +#| "client." msgid "" -"To actually communicate, you can use the web client or any other XMPP client." +"To actually communicate, you can use the web " +"client or any other XMPP client. When enabled, ejabberd can be accessed by " +"any user with a {box_name} login." msgstr "" "Pro vlastní komunikaci, můžete použít webového klienta nebo jakéhokoli XMPP klientanetwork setup and " "modify it if necessary." msgstr "" -"Možná bude třeba zkontrolovat nastavení sítě" -" a případně pravit." +"Možná bude třeba zkontrolovat nastavení sítě a případně pravit." #: plinth/modules/first_boot/templates/firstboot_navbar.html:23 #: plinth/modules/help/templates/help_index.html:25 @@ -1168,16 +1227,33 @@ msgstr "" "Před odesláním hlášení chyby odeberte ze záznamů událostí veškerá hesla a " "ostatní osobní údaje." -#: plinth/modules/ikiwiki/__init__.py:39 -msgid "Wiki and Blog (ikiwiki)" -msgstr "Wiki a blog (ikiwiki)" +#: plinth/modules/ikiwiki/__init__.py:41 +#, fuzzy +#| msgid "wiki" +msgid "ikiwiki" +msgstr "wiki" -#: plinth/modules/ikiwiki/__init__.py:42 +#: plinth/modules/ikiwiki/__init__.py:43 +#, fuzzy +#| msgid "Manage Wikis and Blogs" +msgid "Wiki and Blog" +msgstr "Spravovat wiki a blogy" + +#: plinth/modules/ikiwiki/__init__.py:46 msgid "" "ikiwiki is a simple wiki and blog application. It supports several " "lightweight markup languages, including Markdown, and common blogging " "functionality such as comments and RSS feeds. When enabled, the blogs and " -"wikis will be available from /ikiwiki." +"wikis will be available at /ikiwiki (once created)." +msgstr "" + +#: plinth/modules/ikiwiki/__init__.py:53 +#, python-brace-format +msgid "" +"Only {box_name} users in the admin group can create and " +"manage blogs and wikis, but any user in the wiki group can " +"edit existing ones. In the User " +"Configuration you can change these permissions or add new users." msgstr "" #: plinth/modules/ikiwiki/forms.py:34 @@ -1291,18 +1367,20 @@ msgid "Delete Wiki or Blog" msgstr "Smazat wiki nebo blog" #: plinth/modules/infinoted/__init__.py:43 -msgid "" -"Gobby Server \n" -" (infinoted)" +msgid "infinoted" msgstr "" -"Gobby server \n" -" (infinoted)" -#: plinth/modules/infinoted/__init__.py:46 +#: plinth/modules/infinoted/__init__.py:45 +#, fuzzy +#| msgid "Web Server" +msgid "Gobby Server" +msgstr "Webový server" + +#: plinth/modules/infinoted/__init__.py:48 msgid "infinoted is a server for Gobby, a collaborative text editor." msgstr "infinoted je server pro Gobby – textový editor pro skupiny." -#: plinth/modules/infinoted/__init__.py:49 +#: plinth/modules/infinoted/__init__.py:51 #, python-brace-format msgid "" "To use it, download Gobby, desktop " @@ -1314,14 +1392,20 @@ msgstr "" "„Připojit k serveru“ a zadejte doménový název vašeho {box_name}." #: plinth/modules/jsxc/__init__.py:36 -msgid "" -"Chat Client \n" -" (JSXC)" +msgid "JSXC" +msgstr "" + +#: plinth/modules/jsxc/__init__.py:38 +#, fuzzy +#| msgid "" +#| "Chat Client \n" +#| " (JSXC)" +msgid "Chat Client" msgstr "" "Chatovací klient\n" "(JSXC)" -#: plinth/modules/jsxc/__init__.py:40 +#: plinth/modules/jsxc/__init__.py:42 msgid "" "JSXC is a web client for XMPP. Typically it is used with an XMPP server " "running locally." @@ -1329,7 +1413,7 @@ msgstr "" "JSXC je webový klient pro XMPP. Typicky je používaný s lokálně provozovaným " "XMPP serverem." -#: plinth/modules/jsxc/__init__.py:78 +#: plinth/modules/jsxc/__init__.py:80 msgid "" "Chat Client \n" " (jsxc)" @@ -1337,12 +1421,19 @@ msgstr "" "Chatovací klient\n" "(jsxc)" -#: plinth/modules/letsencrypt/__init__.py:39 -#: plinth/modules/letsencrypt/__init__.py:64 -msgid "Certificates (Let's Encrypt)" +#: plinth/modules/letsencrypt/__init__.py:40 +#, fuzzy +#| msgid "Certificates (Let's Encrypt)" +msgid "Let's Encrypt" msgstr "Certifikáty (Let's Encrypt)" -#: plinth/modules/letsencrypt/__init__.py:43 +#: plinth/modules/letsencrypt/__init__.py:42 +#, fuzzy +#| msgid "Certificate Status" +msgid "Certificates" +msgstr "Stav certifikátu" + +#: plinth/modules/letsencrypt/__init__.py:46 #, python-brace-format msgid "" "A digital certificate allows users of a web service to verify the identity " @@ -1352,7 +1443,7 @@ msgid "" "Encrypt, a certificate authority (CA)." msgstr "" -#: plinth/modules/letsencrypt/__init__.py:50 +#: plinth/modules/letsencrypt/__init__.py:53 msgid "" "Let's Encrypt is a free, automated, and open certificate authority, run for " "the public's benefit by the Internet Security Research Group (ISRG). Please " @@ -1380,52 +1471,102 @@ msgstr "Zabezpečení webové stránky" msgid "Actions" msgstr "Akce" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:56 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:62 #, python-format msgid "Valid, expires on %(expiry_date)s" msgstr "Platné, končí %(expiry_date)s" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:63 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:69 msgid "Revoked" msgstr "Platnost odvolána" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:67 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:73 #, python-format msgid "Expired on %(expiry_date)s" msgstr "Platnost končila %(expiry_date)s" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:71 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:77 msgid "Invalid test certificate" msgstr "Neplatný testovací certifikát" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:75 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:81 #, python-format msgid "Invalid (%(reason)s)" msgstr "Neplatné (%(reason)s)" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:82 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:88 msgid "No certificate" msgstr "Žádný certifikát" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:99 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:105 msgid "Re-obtain" msgstr "Získat znovu" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:105 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:111 #: plinth/modules/networks/templates/connection_show.html:63 #: plinth/modules/snapshot/templates/snapshot.html:34 msgid "Delete" msgstr "Smazat" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:112 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:118 msgid "Revoke" msgstr "Odvolat platnost" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:120 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:126 msgid "Obtain" msgstr "Získat" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:133 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:149 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:156 +#, fuzzy +#| msgid "Update" +msgid "Update config" +msgstr "Aktualizovat" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:161 +#, python-format +msgid "" +"\n" +" Let Plinth manage certificate renewal of\n" +" %(current_domain)s (recommended)\n" +" " +msgstr "" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:166 +msgid "" +"\n" +" Let Plinth manage certificate renewal of the current domain " +"(recommended)\n" +" " +msgstr "" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:175 +#, python-format +msgid "" +"If %(box_name)s manages the certificate renewal for the current domain, it " +"will ensure that all apps that use the certificate can use it, as soon as it " +"gets renewed." +msgstr "" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:181 +msgid "" +"No certificate available for the current domain. First obtain a " +"certificate to enable management of its renewal." +msgstr "" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:186 +#, fuzzy +#| msgid "" +#| "No domains have been configured. Configure domains to be able to obtain " +#| "certificates for them." +msgid "" +"No current domain is configured. First configure a domain to enable " +"management of its certificates." +msgstr "" +"Nejsou nastavené žádné domény. Nastavte je, aby bylo možné pro ně získat " +"certifikát." + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:195 msgid "" "No domains have been configured. Configure domains to be able to obtain " "certificates for them." @@ -1433,7 +1574,7 @@ msgstr "" "Nejsou nastavené žádné domény. Nastavte je, aby bylo možné pro ně získat " "certifikát." -#: plinth/modules/letsencrypt/views.py:55 +#: plinth/modules/letsencrypt/views.py:57 #, python-brace-format msgid "" "Certificate successfully revoked for domain {domain}.This may take a few " @@ -1442,40 +1583,73 @@ msgstr "" "Platnost certifikátu pro doménu {domain} úspěšně odvolána. Může to chvíli " "trvat, než se změna projeví." -#: plinth/modules/letsencrypt/views.py:61 +#: plinth/modules/letsencrypt/views.py:63 #, python-brace-format msgid "Failed to revoke certificate for domain {domain}: {error}" msgstr "Nepodařilo se odvolat platnost certifikátu prodoménu {domain}: {error}" -#: plinth/modules/letsencrypt/views.py:73 +#: plinth/modules/letsencrypt/views.py:75 #, python-brace-format msgid "Certificate successfully obtained for domain {domain}" msgstr "Úspěšně odbržen certifikát z domény {domain}" -#: plinth/modules/letsencrypt/views.py:78 +#: plinth/modules/letsencrypt/views.py:81 #, python-brace-format msgid "Failed to obtain certificate for domain {domain}: {error}" msgstr "Nepodařilo se získat certifikát pro doménu {domain}: {error}" #: plinth/modules/letsencrypt/views.py:90 +#: plinth/modules/letsencrypt/views.py:109 +#, fuzzy, python-brace-format +#| msgid "Certificate successfully deleted for domain {domain}" +msgid "Certificate renewal management enabled for {domain}." +msgstr "Certifikát pro doménu {domain} úspěšně smazán" + +#: plinth/modules/letsencrypt/views.py:95 +#, fuzzy, python-brace-format +#| msgid "Failed to delete certificate for domain {domain}: {error}" +msgid "Failed to enable certificate renewal management for {domain}: {error}" +msgstr "Nepodařilo se smazat certifikát pro doménu {domain}: {error}" + +#: plinth/modules/letsencrypt/views.py:112 +#, fuzzy, python-brace-format +#| msgid "Certificate successfully deleted for domain {domain}" +msgid "Certificate renewal management disabled for {domain}." +msgstr "Certifikát pro doménu {domain} úspěšně smazán" + +#: plinth/modules/letsencrypt/views.py:118 +#, fuzzy, python-brace-format +#| msgid "Failed to obtain certificate for domain {domain}: {error}" +msgid "Failed to switch certificate renewal management for {domain}: {error}" +msgstr "Nepodařilo se získat certifikát pro doménu {domain}: {error}" + +#: plinth/modules/letsencrypt/views.py:134 +#, fuzzy, python-brace-format +#| msgid "Failed to delete certificate for domain {domain}: {error}" +msgid "Failed to disable certificate renewal management for {domain}: {error}" +msgstr "Nepodařilo se smazat certifikát pro doménu {domain}: {error}" + +#: plinth/modules/letsencrypt/views.py:141 #, python-brace-format msgid "Certificate successfully deleted for domain {domain}" msgstr "Certifikát pro doménu {domain} úspěšně smazán" -#: plinth/modules/letsencrypt/views.py:95 +#: plinth/modules/letsencrypt/views.py:146 #, python-brace-format msgid "Failed to delete certificate for domain {domain}: {error}" msgstr "Nepodařilo se smazat certifikát pro doménu {domain}: {error}" #: plinth/modules/matrixsynapse/__init__.py:41 -msgid "" -"Chat Server \n" -" (Matrix Synapse)" +#, fuzzy +#| msgid "" +#| "Chat Server \n" +#| " (Matrix Synapse)" +msgid "Matrix Synapse" msgstr "" "Chat server \n" " (Matrix Synapse)" -#: plinth/modules/matrixsynapse/__init__.py:44 +#: plinth/modules/matrixsynapse/__init__.py:46 msgid "" "Matrix is an new " "ecosystem for open, federated instant messaging and VoIP. Synapse is a " @@ -1492,7 +1666,7 @@ msgstr "" "čísla. Díky federování mohou uživatelé na daném Matrix serveru mohou " "komunikovat s uživateli všech ostatních Matrix serverů." -#: plinth/modules/matrixsynapse/__init__.py:52 +#: plinth/modules/matrixsynapse/__init__.py:54 msgid "" "To communicate, you can use the available clients for mobile, desktop and the web. klienti pro mobilní zařízení, osobní počítače a web. Doporučujeme " "klientaRiot." -#: plinth/modules/matrixsynapse/forms.py:31 -msgid "Select the domain name" -msgstr "Vyberte název domény" - #: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:34 msgid "" "Matrix service needs to be configured for a domain. Users on other Matrix " @@ -1548,14 +1718,20 @@ msgid "" msgstr "" #: plinth/modules/minetest/__init__.py:48 -msgid "" -"Block Sandbox \n" -" (Minetest)" +msgid "Minetest" +msgstr "" + +#: plinth/modules/minetest/__init__.py:50 +#, fuzzy +#| msgid "" +#| "Block Sandbox \n" +#| " (Minetest)" +msgid "Block Sandbox" msgstr "" "Pískoviště s kostkami \n" " (Minetest)" -#: plinth/modules/minetest/__init__.py:52 +#: plinth/modules/minetest/__init__.py:54 #, python-brace-format msgid "" "Minetest is a multiplayer infinite-world block sandbox. This module enables " @@ -1679,7 +1855,7 @@ msgstr "Zabezpečený shell" #: plinth/modules/monkeysphere/templates/monkeysphere.html:87 #: plinth/modules/monkeysphere/templates/monkeysphere_details.html:60 -#: plinth/service.py:117 +#: plinth/service.py:116 msgid "Web Server" msgstr "Webový server" @@ -1779,14 +1955,20 @@ msgid "Error occurred while publishing key." msgstr "Při zveřejňování klíče došlo k chybě." #: plinth/modules/mumble/__init__.py:35 -msgid "" -"Voice Chat \n" -" (Mumble)" +msgid "Mumble" +msgstr "" + +#: plinth/modules/mumble/__init__.py:37 +#, fuzzy +#| msgid "" +#| "Voice Chat \n" +#| " (Mumble)" +msgid "Voice Chat" msgstr "" "Hlasový chat \n" " (Mumble)" -#: plinth/modules/mumble/__init__.py:44 +#: plinth/modules/mumble/__init__.py:46 msgid "" "Mumble is an open source, low-latency, encrypted, high quality voice chat " "software." @@ -1794,7 +1976,7 @@ msgstr "" "Mumble je open source, s nízkou prodlevou, šifrovaný, vysoce kvalitní " "hlasový komunikační software." -#: plinth/modules/mumble/__init__.py:47 +#: plinth/modules/mumble/__init__.py:49 msgid "" "You can connect to your Mumble server on the regular Mumble port 64738. Clients to connect to Mumble from your " @@ -2307,7 +2489,7 @@ msgid "This connection is not active." msgstr "Toto připojení není aktivní." #: plinth/modules/networks/templates/connection_show.html:266 -#: plinth/modules/security/__init__.py:32 plinth/modules/security/views.py:46 +#: plinth/modules/security/__init__.py:32 plinth/modules/security/views.py:48 msgid "Security" msgstr "Zabezpečení" @@ -2403,14 +2585,22 @@ msgid "Inactive" msgstr "Neaktivní" #: plinth/modules/openvpn/__init__.py:42 -msgid "" -"Virtual Private Network \n" -" (OpenVPN)" +#, fuzzy +#| msgid "Open" +msgid "OpenVPN" +msgstr "Otevřené" + +#: plinth/modules/openvpn/__init__.py:44 +#, fuzzy +#| msgid "" +#| "Virtual Private Network \n" +#| " (OpenVPN)" +msgid "Virtual Private Network" msgstr "" "Virtuální soukromá síť \n" " (OpenVPN)" -#: plinth/modules/openvpn/__init__.py:46 +#: plinth/modules/openvpn/__init__.py:48 #, python-brace-format msgid "" "Virtual Private Network (VPN) is a technique for securely connecting two " @@ -2421,7 +2611,7 @@ msgid "" "security and anonymity." msgstr "" -#: plinth/modules/openvpn/__init__.py:84 +#: plinth/modules/openvpn/__init__.py:86 #, python-brace-format msgid "" "Download Profile" @@ -2505,10 +2695,18 @@ msgid "Setup failed." msgstr "Nastavování se nezdařilo." #: plinth/modules/pagekite/__init__.py:44 -msgid "Public Visibility (PageKite)" +#, fuzzy +#| msgid "Pagekite" +msgid "PageKite" +msgstr "Pagekite" + +#: plinth/modules/pagekite/__init__.py:46 +#, fuzzy +#| msgid "Public Visibility (PageKite)" +msgid "Public Visibility" msgstr "Veřejná viditelnost (PageKite)" -#: plinth/modules/pagekite/__init__.py:48 +#: plinth/modules/pagekite/__init__.py:50 #, python-brace-format msgid "" "PageKite is a system for exposing {box_name} services when you don't have a " @@ -2520,19 +2718,19 @@ msgstr "" "nejste připojení přímo. Potřebujete ho pouze když jsou služby služby vašeho " "{box_name} nedostupné z Internetu. To zahrnuje následující situace:" -#: plinth/modules/pagekite/__init__.py:55 +#: plinth/modules/pagekite/__init__.py:57 #, python-brace-format msgid "{box_name} is behind a restricted firewall." msgstr "{box_name} se nachází za omezující bránou firewall." -#: plinth/modules/pagekite/__init__.py:59 +#: plinth/modules/pagekite/__init__.py:61 #, python-brace-format msgid "{box_name} is connected to a (wireless) router which you don't control." msgstr "" "{box_name} je připojený k (bezdrátovému) směrovači, který není ve vaší " "správě." -#: plinth/modules/pagekite/__init__.py:62 +#: plinth/modules/pagekite/__init__.py:64 msgid "" "Your ISP does not provide you an external IP address and instead provides " "Internet connection through NAT." @@ -2540,7 +2738,7 @@ msgstr "" "Váš poskytovatel připojení vám neposkytuje vnější IP adresu a namísto toho " "poskytuje připojení prostřednictvím NAT překladu." -#: plinth/modules/pagekite/__init__.py:65 +#: plinth/modules/pagekite/__init__.py:67 msgid "" "Your ISP does not provide you a static IP address and your IP address " "changes evertime you connect to Internet." @@ -2548,11 +2746,11 @@ msgstr "" "Váš poskytovatel připojení vám neposkytuje pevnou IP adresu a ta se proto " "mění pokaždé, když se připojíte k Internetu." -#: plinth/modules/pagekite/__init__.py:68 +#: plinth/modules/pagekite/__init__.py:70 msgid "Your ISP limits incoming connections." msgstr "Váš poskytovatel připojení k Internetu omezuje příchozí spojení." -#: plinth/modules/pagekite/__init__.py:71 +#: plinth/modules/pagekite/__init__.py:73 #, python-brace-format msgid "" "PageKite works around NAT, firewalls and IP-address limitations by using a " @@ -2844,8 +3042,8 @@ msgstr "Vlastní služby" msgid "Pagekite setup finished. The HTTP and HTTPS services are activated now." msgstr "Nastavení Pagekite dokončeno. Služby HTTP a HTTPS jsou nyní zapnuty." -#: plinth/modules/power/__init__.py:28 plinth/modules/power/views.py:50 -#: plinth/modules/power/views.py:65 +#: plinth/modules/power/__init__.py:28 plinth/modules/power/views.py:51 +#: plinth/modules/power/views.py:67 msgid "Power" msgstr "Napájení" @@ -2854,10 +3052,22 @@ msgid "Restart or shut down the system." msgstr "Restartovat nebo vypnout systém." #: plinth/modules/power/templates/power.html:28 +#, fuzzy +#| msgid "" +#| "Another installation or upgrade is already running. Please wait for a few " +#| "moments before trying again." +msgid "" +"Currently an installation or upgrade is running. Consider waiting until it's " +"finished before shutting down or restarting." +msgstr "" +"Už je spuštěná jiná instalace nebo přechod na novější verzi. Počkejte chvíli " +"a zkuste to znovu." + +#: plinth/modules/power/templates/power.html:37 msgid "Restart »" msgstr "Restartovat »" -#: plinth/modules/power/templates/power.html:31 +#: plinth/modules/power/templates/power.html:40 msgid "Shut Down »" msgstr "Vypnout »" @@ -2869,7 +3079,20 @@ msgstr "" "Opravdu chcete restartovat? Mějte na paměti, že po dobu restartu webové " "rozhraní nebude několik minut dostupné." -#: plinth/modules/power/templates/power_restart.html:42 +#: plinth/modules/power/templates/power_restart.html:38 +#, fuzzy +#| msgid "" +#| "Another installation or upgrade is already running. Please wait for a few " +#| "moments before trying again." +msgid "" +"Currently an installation or upgrade is running. Consider waiting until it's " +"finished before restarting." +msgstr "" +"Už je spuštěná jiná instalace nebo přechod na novější verzi. Počkejte chvíli " +"a zkuste to znovu." + +#: plinth/modules/power/templates/power_restart.html:52 +#: plinth/modules/power/templates/power_restart.html:55 msgid "Restart Now" msgstr "Restartovat nyní" @@ -2879,19 +3102,38 @@ msgid "" "interface after shut down." msgstr "Opravdu vypnout? Po vypnutí toto webové rozhraní nebude dostupné." -#: plinth/modules/power/templates/power_shutdown.html:41 +#: plinth/modules/power/templates/power_shutdown.html:37 +#, fuzzy +#| msgid "" +#| "Another installation or upgrade is already running. Please wait for a few " +#| "moments before trying again." +msgid "" +"Currently an installation or upgrade is running. Consider waiting until it's " +"finished before shutting down." +msgstr "" +"Už je spuštěná jiná instalace nebo přechod na novější verzi. Počkejte chvíli " +"a zkuste to znovu." + +#: plinth/modules/power/templates/power_shutdown.html:51 +#: plinth/modules/power/templates/power_shutdown.html:54 msgid "Shut Down Now" msgstr "Vypnout nyní" #: plinth/modules/privoxy/__init__.py:43 -msgid "" -"Web Proxy \n" -" (Privoxy)" +msgid "Privoxy" +msgstr "" + +#: plinth/modules/privoxy/__init__.py:45 +#, fuzzy +#| msgid "" +#| "Web Proxy \n" +#| " (Privoxy)" +msgid "Web Proxy" msgstr "" "Webová proxy \n" " (Privoxy)" -#: plinth/modules/privoxy/__init__.py:46 +#: plinth/modules/privoxy/__init__.py:48 msgid "" "Privoxy is a non-caching web proxy with advanced filtering capabilities for " "enhancing privacy, modifying web page data and HTTP headers, controlling " @@ -2902,7 +3144,7 @@ msgstr "" "hlaviček, řídící přístup a odebírající reklamy a ostatní otravné Internetové " "smetí. " -#: plinth/modules/privoxy/__init__.py:52 +#: plinth/modules/privoxy/__init__.py:54 #, python-brace-format msgid "" "You can use Privoxy by modifying your browser proxy settings to your " @@ -2912,20 +3154,26 @@ msgid "" "\">http://p.p." msgstr "" -#: plinth/modules/privoxy/__init__.py:144 +#: plinth/modules/privoxy/__init__.py:147 #, python-brace-format msgid "Access {url} with proxy {proxy} on tcp{kind}" msgstr "Přistupte {url} s proxy {proxy} na tcp{kind}" #: plinth/modules/quassel/__init__.py:42 -msgid "" -"IRC Client \n" -" (Quassel)" +msgid "Quassel" +msgstr "" + +#: plinth/modules/quassel/__init__.py:44 +#, fuzzy +#| msgid "" +#| "IRC Client \n" +#| " (Quassel)" +msgid "IRC Client" msgstr "" "IRC klient \n" " (Quassel)" -#: plinth/modules/quassel/__init__.py:46 +#: plinth/modules/quassel/__init__.py:48 #, python-brace-format msgid "" "Quassel is an IRC application that is split into two parts, a \"core\" and a " @@ -2936,7 +3184,7 @@ msgid "" "connect and disconnect from it." msgstr "" -#: plinth/modules/quassel/__init__.py:54 +#: plinth/modules/quassel/__init__.py:56 msgid "" "You can connect to your Quassel core on the default Quassel port 4242. " "Clients to connect to Quassel from your supported " -"client application is needed. Radicale can be accessed by any user with " -"a {box_name} login." +"radicale.org/clients/\">supported client application is needed. Radicale " +"can be accessed by any user with a {box_name} login." msgstr "" #: plinth/modules/radicale/forms.py:28 @@ -2987,14 +3240,16 @@ msgid "Access rights configuration updated" msgstr "Nastavení přístupových práv aktualizováno" #: plinth/modules/repro/__init__.py:38 -msgid "" -"SIP Server \n" -" (repro)" +msgid "repro" msgstr "" -"SIP server \n" -" (repro)" -#: plinth/modules/repro/__init__.py:41 +#: plinth/modules/repro/__init__.py:40 +#, fuzzy +#| msgid "DNS Server" +msgid "SIP Server" +msgstr "DNS server" + +#: plinth/modules/repro/__init__.py:43 msgid "" "repro provides various SIP services that a SIP softphone can utilize to " "provide audio and video calls as well as presence and instant messaging. " @@ -3003,7 +3258,7 @@ msgid "" "communications to other servers on the Internet similar to email." msgstr "" -#: plinth/modules/repro/__init__.py:48 +#: plinth/modules/repro/__init__.py:50 msgid "" "To make SIP calls, a client application is needed. Available clients include " "Jitsi (for computers) and (for Android phones)." msgstr "" -#: plinth/modules/repro/__init__.py:53 +#: plinth/modules/repro/__init__.py:55 msgid "" "Note: Before using repro, domains and users will need to " "be configured using the web-based " @@ -3021,14 +3276,20 @@ msgid "" msgstr "" #: plinth/modules/restore/__init__.py:36 -msgid "" -"Unhosted Storage \n" -" (reStore)" +msgid "reStore" +msgstr "" + +#: plinth/modules/restore/__init__.py:38 +#, fuzzy +#| msgid "" +#| "Unhosted Storage \n" +#| " (reStore)" +msgid "Unhosted Storage" msgstr "" "Unhosted úložiště \n" " (reStore)" -#: plinth/modules/restore/__init__.py:40 +#: plinth/modules/restore/__init__.py:42 #, python-brace-format msgid "" "reStore is a server for unhosted web " @@ -3043,21 +3304,27 @@ msgstr "" "úložném serveru, který si uživatel vybere. Pomocí reStore, se váš {box_name} " "stane unhosted úložný server." -#: plinth/modules/restore/__init__.py:47 +#: plinth/modules/restore/__init__.py:49 msgid "" "You can create and edit accounts in the reStore web-" "interface." msgstr "" #: plinth/modules/roundcube/__init__.py:35 -msgid "" -"Email Client \n" -" (Roundcube)" +msgid "Roundcube" +msgstr "" + +#: plinth/modules/roundcube/__init__.py:37 +#, fuzzy +#| msgid "" +#| "Email Client \n" +#| " (Roundcube)" +msgid "Email Client" msgstr "" "E-mailový klient \n" " (Roundcube)" -#: plinth/modules/roundcube/__init__.py:38 +#: plinth/modules/roundcube/__init__.py:40 msgid "" "Roundcube webmail is a browser-based multilingual IMAP client with an " "application-like user interface. It provides full functionality you expect " @@ -3070,7 +3337,7 @@ msgstr "" "klienta, včetně podpory MIME, adresáře kontaktů, manipulace se složkami, " "vyhledávání ve zprávách a kontrolou pravopisu." -#: plinth/modules/roundcube/__init__.py:44 +#: plinth/modules/roundcube/__init__.py:46 msgid "" "You can access Roundcube from /roundcube. Provide " "the username and password of the email account you wish to access followed " @@ -3079,7 +3346,7 @@ msgid "" "server field like imaps://imap.example.com." msgstr "" -#: plinth/modules/roundcube/__init__.py:51 +#: plinth/modules/roundcube/__init__.py:53 msgid "" "For Gmail, username will be your Gmail address, password will be your Google " "account password and server will be imaps://imap.gmail.com. " @@ -3100,28 +3367,45 @@ msgid "" "services without further authorization." msgstr "" -#: plinth/modules/security/views.py:63 +#: plinth/modules/security/forms.py:35 +msgid "Fail2ban (recommended)" +msgstr "" + +#: plinth/modules/security/forms.py:36 +msgid "" +"When this option is enabled, fail2ban will limit brute force break-in " +"attempts to the SSH server and other password protected internet-services " +"which are enabled." +msgstr "" + +#: plinth/modules/security/views.py:66 #, python-brace-format msgid "Error setting restricted access: {exception}" msgstr "Chyba při nastavování omezeného přístupu: {exception}" -#: plinth/modules/security/views.py:66 +#: plinth/modules/security/views.py:69 msgid "Updated security configuration" msgstr "Nastavení zabezpečení aktualizováno" #: plinth/modules/shaarli/__init__.py:35 -msgid "" -"Bookmarks \n" -" (Shaarli)" +msgid "Shaarli" +msgstr "" + +#: plinth/modules/shaarli/__init__.py:37 +#, fuzzy +#| msgid "" +#| "Bookmarks \n" +#| " (Shaarli)" +msgid "Bookmarks" msgstr "" "Záložky \n" " (Shaarli)" -#: plinth/modules/shaarli/__init__.py:38 +#: plinth/modules/shaarli/__init__.py:40 msgid "Shaarli allows you to save and share bookmarks." msgstr "Shaarli umožňuje ukládat a sdílet záložky." -#: plinth/modules/shaarli/__init__.py:40 +#: plinth/modules/shaarli/__init__.py:42 msgid "" "When enabled, Shaarli will be available from /shaarli path on the web server. Note that Shaarli only supports a single user " @@ -3234,6 +3518,18 @@ msgstr "Pro dokončení obnovy ze zálohy je třeba systém restartovat." msgid "Rollback to Snapshot" msgstr "Vrátit do podoby zachyceného stavu" +#: plinth/modules/ssh/__init__.py:37 +msgid "Secure Shell (SSH) Server" +msgstr "Server zabezpečeného shellu (SSH)" + +#: plinth/modules/ssh/__init__.py:40 +msgid "" +"A Secure Shell server uses the secure shell protocol to accept connections " +"from remote computers. An authorized remote computer can perform " +"administration tasks, copy files or run other services using such " +"connections." +msgstr "" + #: plinth/modules/sso/__init__.py:30 msgid "Single Sign On" msgstr "Sdružené přihlášení (SSO)" @@ -3243,14 +3539,20 @@ msgid "Login" msgstr "Přihlášení" #: plinth/modules/syncthing/__init__.py:39 -msgid "" -"File Synchronization \n" -" (Syncthing)" +msgid "Syncthing" +msgstr "" + +#: plinth/modules/syncthing/__init__.py:41 +#, fuzzy +#| msgid "" +#| "File Synchronization \n" +#| " (Syncthing)" +msgid "File Synchronization" msgstr "" "Synchronizace souborů \n" " (Syncthing)" -#: plinth/modules/syncthing/__init__.py:42 +#: plinth/modules/syncthing/__init__.py:44 msgid "" "Syncthing is an application to synchronize files across multiple devices, e." "g. your desktop computer and mobile phone. Creation, modification, or " @@ -3262,7 +3564,7 @@ msgstr "" "smazání souborů na jednom zařízení bude automaticky replikováno na veškerá " "zařízení, na kterých také provozujete Syncthing." -#: plinth/modules/syncthing/__init__.py:47 +#: plinth/modules/syncthing/__init__.py:49 #, python-brace-format msgid "" "Running Syncthing on {box_name} provides an extra synchronization point for " @@ -3273,7 +3575,7 @@ msgid "" "{box_name} is only available for users belonging to the \"admin\" group." msgstr "" -#: plinth/modules/syncthing/__init__.py:54 +#: plinth/modules/syncthing/__init__.py:56 msgid "" "When enabled, Syncthing's web interface will be available from /syncthing. Desktop and mobile clients are also Tor Project website. For " @@ -3348,36 +3666,36 @@ msgid "" "\">Tor Browser." msgstr "" -#: plinth/modules/tor/__init__.py:70 plinth/modules/tor/__init__.py:112 +#: plinth/modules/tor/__init__.py:72 plinth/modules/tor/__init__.py:114 msgid "Tor Anonymity Network" msgstr "Anonymní síť Tor" -#: plinth/modules/tor/__init__.py:76 plinth/modules/tor/__init__.py:120 +#: plinth/modules/tor/__init__.py:78 plinth/modules/tor/__init__.py:122 msgid "Tor Bridge Relay" msgstr "Předávání Tor mostu" -#: plinth/modules/tor/__init__.py:98 plinth/modules/tor/__init__.py:141 +#: plinth/modules/tor/__init__.py:100 plinth/modules/tor/__init__.py:143 msgid "Tor Hidden Service" msgstr "Tor skrytá služba" -#: plinth/modules/tor/__init__.py:160 +#: plinth/modules/tor/__init__.py:162 msgid "Tor relay port available" msgstr "Předávací port pro Tor je k dispozici" -#: plinth/modules/tor/__init__.py:168 +#: plinth/modules/tor/__init__.py:170 msgid "Obfs3 transport registered" msgstr "Obfs3 transport zaregistrován" -#: plinth/modules/tor/__init__.py:174 +#: plinth/modules/tor/__init__.py:176 msgid "Obfs4 transport registered" msgstr "Obfs4 transport zaregistrován" -#: plinth/modules/tor/__init__.py:211 +#: plinth/modules/tor/__init__.py:213 #, python-brace-format msgid "Access URL {url} on tcp{kind} via Tor" msgstr "Přistoupit k URL adrese {url} na tcp{kind} prostřednictvím Tor" -#: plinth/modules/tor/__init__.py:222 +#: plinth/modules/tor/__init__.py:224 #, python-brace-format msgid "Confirm Tor usage at {url} on tcp{kind}" msgstr "Potvrdit použití Tor na {url} na tcp{kind}" @@ -3531,14 +3849,20 @@ msgid "An error occurred during configuration." msgstr "Při nastavování se vyskytla chyba." #: plinth/modules/transmission/__init__.py:38 -msgid "" -"BitTorrent \n" -" (Transmission)" +#, fuzzy +#| msgid "" +#| "BitTorrent \n" +#| " (Transmission)" +msgid "Transmission" msgstr "" "BitTorrent \n" " (Transmission)" -#: plinth/modules/transmission/__init__.py:41 +#: plinth/modules/transmission/__init__.py:40 +msgid "BitTorrent" +msgstr "" + +#: plinth/modules/transmission/__init__.py:43 msgid "" "BitTorrent is a peer-to-peer file sharing protocol. Transmission daemon " "handles Bitorrent file sharing. Note that BitTorrent is not anonymous." @@ -3547,7 +3871,7 @@ msgstr "" "Transmision obsluhuje sdílení souborů Bitorrent. Poznamenejme, že BitTorrent " "není anonymní." -#: plinth/modules/transmission/__init__.py:44 +#: plinth/modules/transmission/__init__.py:46 msgid "" "Access the web interface at /transmission." msgstr "" @@ -3578,25 +3902,36 @@ msgstr "" "Heslo pro přihlášení do webového rozhraní. Stávající heslo je zobrazeno v " "podobě otisku. Pro nastavení nového hesla zadejte heslo v čitelném textu." -#: plinth/modules/ttrss/__init__.py:37 -msgid "" -"News Feed Reader \n" -" (Tiny Tiny RSS)" +#: plinth/modules/ttrss/__init__.py:39 +msgid "Tiny Tiny RSS" +msgstr "" + +#: plinth/modules/ttrss/__init__.py:41 +#, fuzzy +#| msgid "" +#| "News Feed Reader \n" +#| " (Tiny Tiny RSS)" +msgid "News Feed Reader" msgstr "" "Čtečka novinek \n" " (Tiny Tiny RSS)" -#: plinth/modules/ttrss/__init__.py:40 +#: plinth/modules/ttrss/__init__.py:44 msgid "" "Tiny Tiny RSS is a news feed (RSS/Atom) reader and aggregator, designed to " "allow reading news from any location, while feeling as close to a real " "desktop application as possible." msgstr "" -#: plinth/modules/ttrss/__init__.py:44 +#: plinth/modules/ttrss/__init__.py:49 +#, fuzzy, python-brace-format +#| msgid "" +#| "When enabled, Tiny Tiny RSS will be available from /" +#| "tt-rss path on the web server." msgid "" "When enabled, Tiny Tiny RSS will be available from /tt-" -"rss path on the web server." +"rss path on the web server. It can be accessed by any user with a {box_name} login." msgstr "" "Když je zapnutá, Tiny Tiny RSS čtečka bude dostupná v /" "tt-rss umístění na webovém serveru." @@ -3913,15 +4248,11 @@ msgstr "změna média" msgid "configuration file: {file}" msgstr "soubor s nastaveními: {file}" -#: plinth/service.py:119 +#: plinth/service.py:118 msgid "Web Server over Secure Socket Layer" msgstr "Webový server přes vrstvu zabezpečeného soketu" -#: plinth/service.py:121 -msgid "Secure Shell (SSH) Server" -msgstr "Server zabezpečeného shellu (SSH)" - -#: plinth/service.py:123 +#: plinth/service.py:120 #, python-brace-format msgid "{box_name} Web Interface (Plinth)" msgstr "Webové rozhraní {box_name} (Plinth)" @@ -3971,11 +4302,11 @@ msgstr "" "\">systému hlášení chyb abychom to mohli opravit. K hlášení také " "přiložte záznam stavu." -#: plinth/templates/apps.html:25 +#: plinth/templates/apps.html:33 msgid "Services and Applications" msgstr "Služby a aplikace" -#: plinth/templates/apps.html:28 +#: plinth/templates/apps.html:36 #, python-format msgid "" "You can install and run various services and applications on your " @@ -3986,7 +4317,7 @@ msgstr "" "aplikace. Klikněte na odkaz libovolné aplikace na levé straně a přečtěte si " "popis aplikace a případně ji nainstalujte." -#: plinth/templates/apps.html:36 +#: plinth/templates/apps.html:44 msgid "" "This box can be your photo sharing site, your instant messaging site, your " "social networking site, your news site. Remember web portals? We can be " @@ -4161,16 +4492,16 @@ msgstr "Instalace %(package_names)s: %(status)s" msgid "%(percentage)s%% complete" msgstr "%(percentage)s%% dokončeno" -#: plinth/templates/system.html:25 +#: plinth/templates/system.html:33 msgid "System Configuration" msgstr "Nastavení systému" -#: plinth/templates/system.html:28 +#: plinth/templates/system.html:36 #, python-format msgid "Here you can administrate the underlying system of your %(box_name)s." msgstr "Zde je možné spravovat systém, pohánějící váš %(box_name)s." -#: plinth/templates/system.html:34 +#: plinth/templates/system.html:42 #, python-format msgid "" "The options affect the %(box_name)s at its most general level, so be careful!" @@ -4178,6 +4509,41 @@ msgstr "" "Tyto předvolby ovlivňují %(box_name)s na jeho nejobecnější úrovni, proto " "buďte opatrní!" +#~ msgid "Select the domain name to be used for diaspora*" +#~ msgstr "Vyberte doménový název který použít pro diaspora*" + +#~ msgid "" +#~ "Warning! Do not change the FreedomBox domain name after setting up " +#~ "diaspora*" +#~ msgstr "Varování! Neměňte doménový název FreedomBox po nastavení diaspora*" + +#~ msgid "" +#~ "Chat Server \n" +#~ " (ejabberd)" +#~ msgstr "" +#~ "Chatovací server \n" +#~ " (ejabberd)" + +#~ msgid "Wiki and Blog (ikiwiki)" +#~ msgstr "Wiki a blog (ikiwiki)" + +#~ msgid "" +#~ "Gobby Server \n" +#~ " (infinoted)" +#~ msgstr "" +#~ "Gobby server \n" +#~ " (infinoted)" + +#~ msgid "Select the domain name" +#~ msgstr "Vyberte název domény" + +#~ msgid "" +#~ "SIP Server \n" +#~ " (repro)" +#~ msgstr "" +#~ "SIP server \n" +#~ " (repro)" + #~ msgid "" #~ "%(box_name)s setup is now complete. To make your %(box_name)s " #~ "functional, you need some applications. They will be installed the first " diff --git a/plinth/locale/da/LC_MESSAGES/django.po b/plinth/locale/da/LC_MESSAGES/django.po index 007ff392e..972c09c5a 100644 --- a/plinth/locale/da/LC_MESSAGES/django.po +++ b/plinth/locale/da/LC_MESSAGES/django.po @@ -9,7 +9,7 @@ msgid "" msgstr "" "Project-Id-Version: FreedomBox UI\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2017-07-10 22:56-0400\n" +"POT-Creation-Date: 2017-09-24 11:24-0400\n" "PO-Revision-Date: 2016-07-03 21:44+0000\n" "Last-Translator: Mikkel Kirkgaard Nielsen \n" "Language-Team: Danish /deluge path on the web server. The default password is 'deluge', but " @@ -393,21 +407,22 @@ msgstr "Test" msgid "Result" msgstr "Resultat" -#: plinth/modules/diaspora/__init__.py:61 +#: plinth/modules/diaspora/__init__.py:51 +msgid "diaspora*" +msgstr "" + +#: plinth/modules/diaspora/__init__.py:53 +msgid "Federated Social Network" +msgstr "" + +#: plinth/modules/diaspora/__init__.py:62 msgid "" "diaspora* is a decentralized social network where you can store and control " "your own data." msgstr "" -#: plinth/modules/diaspora/forms.py:30 -#, fuzzy -#| msgid "Invalid domain name" -msgid "Select the domain name to be used for diaspora*" -msgstr "Ugyldigt domænenavn" - -#: plinth/modules/diaspora/forms.py:32 -msgid "" -"Warning! Do not change the FreedomBox domain name after setting up diaspora*" +#: plinth/modules/diaspora/forms.py:31 +msgid "Enable new user registrations" msgstr "" #: plinth/modules/diaspora/templates/diaspora-post-setup.html:32 @@ -434,7 +449,25 @@ msgstr "" msgid "Update setup" msgstr "Opdater indstillinger" -#: plinth/modules/disks/__init__.py:33 plinth/modules/disks/views.py:39 +#: plinth/modules/diaspora/views.py:96 plinth/modules/ejabberd/views.py:60 +#: plinth/modules/openvpn/views.py:145 plinth/modules/tor/views.py:134 +#: plinth/views.py:112 +msgid "Setting unchanged" +msgstr "Indstilling uændret" + +#: plinth/modules/diaspora/views.py:100 +#, fuzzy +#| msgid "Application enabled" +msgid "User registrations enabled" +msgstr "Applikation aktiveret" + +#: plinth/modules/diaspora/views.py:104 +#, fuzzy +#| msgid "Application disabled" +msgid "User registrations disabled" +msgstr "Applikation deaktiveret" + +#: plinth/modules/disks/__init__.py:33 plinth/modules/disks/views.py:45 msgid "Disks" msgstr "Diske" @@ -479,7 +512,7 @@ msgstr "" #: plinth/modules/disks/templates/disks.html:90 #: plinth/modules/disks/templates/disks.html:102 #: plinth/modules/disks/templates/disks_expand.html:45 -#: plinth/modules/disks/views.py:56 +#: plinth/modules/disks/views.py:62 msgid "Expand Root Partition" msgstr "Udvid Rod-partition" @@ -500,50 +533,57 @@ msgstr "" "Efter denne operation, vil der være yderligere %(expandable_root_size)s fri " "diskplads på din rod-partition." -#: plinth/modules/disks/views.py:65 +#: plinth/modules/disks/views.py:71 #, python-brace-format msgid "Error expanding partition: {exception}" msgstr "Kunne ikke udvidde partition: {exception}" -#: plinth/modules/disks/views.py:68 +#: plinth/modules/disks/views.py:74 msgid "Partition expanded successfully." msgstr "Partition blev udviddet." -#: plinth/modules/disks/views.py:77 +#: plinth/modules/disks/views.py:93 +#, python-format, python-brace-format +msgid "" +"Warning: Low space on system partition ({percent_used}% used, {free_space} " +"free)." +msgstr "" + +#: plinth/modules/disks/views.py:130 #, fuzzy, python-brace-format #| msgid "{disk_size} bytes" msgid "{disk_size:.1f} bytes" msgstr "{disk_size} bytes" -#: plinth/modules/disks/views.py:81 +#: plinth/modules/disks/views.py:134 #, fuzzy, python-brace-format #| msgid "{disk_size} KiB" msgid "{disk_size:.1f} KiB" msgstr "{disk_size} KiB" -#: plinth/modules/disks/views.py:85 +#: plinth/modules/disks/views.py:138 #, fuzzy, python-brace-format #| msgid "{disk_size} MiB" msgid "{disk_size:.1f} MiB" msgstr "{disk_size} MiB" -#: plinth/modules/disks/views.py:89 +#: plinth/modules/disks/views.py:142 #, fuzzy, python-brace-format #| msgid "{disk_size} GiB" msgid "{disk_size:.1f} GiB" msgstr "{disk_size} GiB" -#: plinth/modules/disks/views.py:92 +#: plinth/modules/disks/views.py:145 #, fuzzy, python-brace-format #| msgid "{disk_size} TiB" msgid "{disk_size:.1f} TiB" msgstr "{disk_size} TiB" -#: plinth/modules/dynamicdns/__init__.py:33 +#: plinth/modules/dynamicdns/__init__.py:35 msgid "Dynamic DNS Client" msgstr "Dynamisk DNS Klient" -#: plinth/modules/dynamicdns/__init__.py:37 +#: plinth/modules/dynamicdns/__init__.py:39 #, python-brace-format msgid "" "If your Internet provider changes your IP address periodically (i.e. every " @@ -554,7 +594,7 @@ msgstr "" "døgnet), kan det være svært for andre at finde dig på internettet. Dette vil " "forhindre andre i at finde de tjenester denne {box_name} udbyder." -#: plinth/modules/dynamicdns/__init__.py:43 +#: plinth/modules/dynamicdns/__init__.py:45 msgid "" "The solution is to assign a DNS name to your IP address and update the DNS " "name every time your IP is changed by your Internet provider. Dynamic DNS " @@ -571,11 +611,18 @@ msgstr "" "opdatere dit DNS-navn med den nye IP-adresse, således at hvis nogen på " "internettet spørger til adressen vil de få din aktuelle IP-adresse." -#: plinth/modules/dynamicdns/dynamicdns.py:35 plinth/modules/help/help.py:40 +#: plinth/modules/dynamicdns/__init__.py:67 +#: plinth/modules/dynamicdns/dynamicdns.py:377 +#, fuzzy +#| msgid "Dynamic DNS Client" +msgid "Dynamic DNS Service" +msgstr "Dynamisk DNS Klient" + +#: plinth/modules/dynamicdns/dynamicdns.py:43 plinth/modules/help/help.py:40 msgid "About" msgstr "Om" -#: plinth/modules/dynamicdns/dynamicdns.py:39 +#: plinth/modules/dynamicdns/dynamicdns.py:47 #: plinth/modules/firewall/templates/firewall.html:47 #: plinth/modules/networks/templates/connection_show.html:261 #: plinth/modules/openvpn/templates/openvpn.html:67 @@ -584,7 +631,7 @@ msgstr "Om" msgid "Status" msgstr "Status" -#: plinth/modules/dynamicdns/dynamicdns.py:63 +#: plinth/modules/dynamicdns/dynamicdns.py:71 msgid "" "The Variables <User>, <Pass>, <Ip>, <Domain> may be " "used within the URL. For details see the update URL templates of the example " @@ -594,7 +641,7 @@ msgstr "" "bruges i URL'en. For flere detaljer se skabelonerne for opdaterings-URL'er i " "eksemplernes tjenester." -#: plinth/modules/dynamicdns/dynamicdns.py:67 +#: plinth/modules/dynamicdns/dynamicdns.py:75 msgid "" "Please choose an update protocol according to your provider. If your " "provider does not support the GnuDIP protocol or your provider is not listed " @@ -604,7 +651,7 @@ msgstr "" "udbyderen ikke understøtter GnuDIP-protokollen eller ikke er prædefineret, " "kan en opdaterings-URL fra din udbyder angives direkte." -#: plinth/modules/dynamicdns/dynamicdns.py:72 +#: plinth/modules/dynamicdns/dynamicdns.py:80 msgid "" "Please do not enter a URL here (like \"https://example.com/\") but only the " "hostname of the GnuDIP server (like \"example.com\")." @@ -612,16 +659,16 @@ msgstr "" "Her skal ikke angives en URL (såsom \"https://example.com/\"), men blot " "værtsnavnet for GnuDIP-serveren (såsom \"example.com\")." -#: plinth/modules/dynamicdns/dynamicdns.py:76 +#: plinth/modules/dynamicdns/dynamicdns.py:84 #, python-brace-format msgid "The public domain name you want to use to reach your {box_name}." msgstr "Det offentlige domænenavn du vil bruge til at nå din {box_name}." -#: plinth/modules/dynamicdns/dynamicdns.py:79 +#: plinth/modules/dynamicdns/dynamicdns.py:87 msgid "Use this option if your provider uses self signed certificates." msgstr "Aktiver dette hvis din udbyder bruger selvunderskrevne certifikater." -#: plinth/modules/dynamicdns/dynamicdns.py:82 +#: plinth/modules/dynamicdns/dynamicdns.py:90 msgid "" "If this option is selected, your username and password will be used for HTTP " "basic authentication." @@ -629,11 +676,11 @@ msgstr "" "Hvis denne option er aktiveret vil dit brugernavn og kodeord blive anvendt " "til basal (\"basic\") HTTP-autentifikation." -#: plinth/modules/dynamicdns/dynamicdns.py:85 +#: plinth/modules/dynamicdns/dynamicdns.py:93 msgid "Leave this field empty if you want to keep your current password." msgstr "Lad dette felt stå tomt hvis du vil beholde dit nuværende kodeord." -#: plinth/modules/dynamicdns/dynamicdns.py:88 +#: plinth/modules/dynamicdns/dynamicdns.py:96 #, python-brace-format msgid "" "Optional Value. If your {box_name} is not connected directly to the Internet " @@ -647,82 +694,82 @@ msgstr "" "hvorfra klientens forespørgsel kommer (eksempelvis: http://myip." "datasystems24.de)." -#: plinth/modules/dynamicdns/dynamicdns.py:96 +#: plinth/modules/dynamicdns/dynamicdns.py:104 msgid "The username that was used when the account was created." msgstr "Brugernavnet der blev brugt ved kontooprettelse." -#: plinth/modules/dynamicdns/dynamicdns.py:107 +#: plinth/modules/dynamicdns/dynamicdns.py:115 msgid "Enable Dynamic DNS" msgstr "Aktiver Dynamisk DNS" -#: plinth/modules/dynamicdns/dynamicdns.py:110 +#: plinth/modules/dynamicdns/dynamicdns.py:118 msgid "Service Type" msgstr "Servicetype" -#: plinth/modules/dynamicdns/dynamicdns.py:115 +#: plinth/modules/dynamicdns/dynamicdns.py:123 msgid "GnuDIP Server Address" msgstr "GnuDIP Serveradresse" -#: plinth/modules/dynamicdns/dynamicdns.py:120 +#: plinth/modules/dynamicdns/dynamicdns.py:128 msgid "Invalid server name" msgstr "Ugyldigt servernavn" -#: plinth/modules/dynamicdns/dynamicdns.py:123 +#: plinth/modules/dynamicdns/dynamicdns.py:131 msgid "Update URL" msgstr "Opdaterings-URL" -#: plinth/modules/dynamicdns/dynamicdns.py:127 +#: plinth/modules/dynamicdns/dynamicdns.py:135 msgid "Accept all SSL certificates" msgstr "Accepter alle SSL-certifikater" -#: plinth/modules/dynamicdns/dynamicdns.py:131 +#: plinth/modules/dynamicdns/dynamicdns.py:139 msgid "Use HTTP basic authentication" msgstr "Brug basal (\"basic\") HTTP-autentifikation" -#: plinth/modules/dynamicdns/dynamicdns.py:143 +#: plinth/modules/dynamicdns/dynamicdns.py:151 #: plinth/modules/networks/forms.py:228 plinth/modules/transmission/forms.py:37 msgid "Username" msgstr "Brugernavn" -#: plinth/modules/dynamicdns/dynamicdns.py:146 +#: plinth/modules/dynamicdns/dynamicdns.py:154 #: plinth/modules/networks/forms.py:229 plinth/modules/transmission/forms.py:41 msgid "Password" msgstr "Kodeord" -#: plinth/modules/dynamicdns/dynamicdns.py:149 +#: plinth/modules/dynamicdns/dynamicdns.py:157 #: plinth/modules/networks/forms.py:231 msgid "Show password" msgstr "Vis kodeord" -#: plinth/modules/dynamicdns/dynamicdns.py:153 +#: plinth/modules/dynamicdns/dynamicdns.py:161 msgid "URL to look up public IP" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:179 +#: plinth/modules/dynamicdns/dynamicdns.py:187 msgid "Please provide an update URL or a GnuDIP server address" msgstr "Angiv venligst opdaterings-URL eller GnuDIP serveradresse" -#: plinth/modules/dynamicdns/dynamicdns.py:184 +#: plinth/modules/dynamicdns/dynamicdns.py:192 msgid "Please provide a GnuDIP username" msgstr "Angiv venligst et brugernavn til GnuDIP" -#: plinth/modules/dynamicdns/dynamicdns.py:188 +#: plinth/modules/dynamicdns/dynamicdns.py:196 msgid "Please provide a GnuDIP domain name" msgstr "Angiv venligst et domæne til GnuDIP-server" -#: plinth/modules/dynamicdns/dynamicdns.py:193 +#: plinth/modules/dynamicdns/dynamicdns.py:201 msgid "Please provide a password" msgstr "Angiv venligst et kodeord" -#: plinth/modules/dynamicdns/dynamicdns.py:211 +#: plinth/modules/dynamicdns/dynamicdns.py:219 msgid "Configure Dynamic DNS" msgstr "Konfigurer Dynamisk DNS" -#: plinth/modules/dynamicdns/dynamicdns.py:232 +#: plinth/modules/dynamicdns/dynamicdns.py:240 msgid "Dynamic DNS Status" msgstr "Dynamisk DNS Status" -#: plinth/modules/dynamicdns/dynamicdns.py:364 +#: plinth/modules/dynamicdns/dynamicdns.py:381 #: plinth/modules/openvpn/views.py:143 plinth/modules/transmission/views.py:72 msgid "Configuration updated" msgstr "Konfiguration opdateret" @@ -798,15 +845,18 @@ msgstr "" msgid "Last update" msgstr "Seneste opdatering" -#: plinth/modules/ejabberd/__init__.py:42 -#, fuzzy -#| msgid "Chat Server (XMPP)" -msgid "" -"Chat Server \n" -" (ejabberd)" -msgstr "Chat-server (XMPP)" - #: plinth/modules/ejabberd/__init__.py:45 +msgid "ejabberd" +msgstr "" + +#: plinth/modules/ejabberd/__init__.py:47 +#: plinth/modules/matrixsynapse/__init__.py:43 +#, fuzzy +#| msgid "Web Server" +msgid "Chat Server" +msgstr "Webserver" + +#: plinth/modules/ejabberd/__init__.py:50 msgid "" "XMPP is an open and standardized communication protocol. Here you can run " "and configure your XMPP server, called ejabberd." @@ -814,16 +864,17 @@ msgstr "" "XMPP er en åben og standardiseret kommunikationsprotokol. Her kan du " "aktivere og konfigurere din XMPP-server, kaldet ejabberd." -#: plinth/modules/ejabberd/__init__.py:48 -#, fuzzy +#: plinth/modules/ejabberd/__init__.py:54 +#, fuzzy, python-brace-format #| msgid "" #| "To actually communicate, you can use the web client " #| "or any other XMPP client." msgid "" -"To actually communicate, you can use the web client or any other XMPP client." +"To actually communicate, you can use the web " +"client or any other XMPP client. When enabled, ejabberd can be accessed by " +"any user with a {box_name} login." msgstr "" "For rent faktisk at kommunikere, kan du bruge web-" "klienten eller enhver anden %(current_domain)s (recommended)\n" +" " +msgstr "" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:166 +msgid "" +"\n" +" Let Plinth manage certificate renewal of the current domain " +"(recommended)\n" +" " +msgstr "" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:175 +#, python-format +msgid "" +"If %(box_name)s manages the certificate renewal for the current domain, it " +"will ensure that all apps that use the certificate can use it, as soon as it " +"gets renewed." +msgstr "" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:181 +msgid "" +"No certificate available for the current domain. First obtain a " +"certificate to enable management of its renewal." +msgstr "" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:186 +msgid "" +"No current domain is configured. First configure a domain to enable " +"management of its certificates." +msgstr "" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:195 msgid "" "No domains have been configured. Configure domains to be able to obtain " "certificates for them." msgstr "" -#: plinth/modules/letsencrypt/views.py:55 +#: plinth/modules/letsencrypt/views.py:57 #, fuzzy, python-brace-format #| msgid "Certificate successfully revoked for domain {domain}" msgid "" @@ -1491,29 +1617,61 @@ msgid "" "moments to take effect." msgstr "Certifikatet for domænet {domain} blev trukket tilbage" -#: plinth/modules/letsencrypt/views.py:61 +#: plinth/modules/letsencrypt/views.py:63 #, python-brace-format msgid "Failed to revoke certificate for domain {domain}: {error}" msgstr "Fejl ved tilbagetrækning af certifikatet for domænet {domain}: {error}" -#: plinth/modules/letsencrypt/views.py:73 +#: plinth/modules/letsencrypt/views.py:75 #, python-brace-format msgid "Certificate successfully obtained for domain {domain}" msgstr "Certifikatet for domænet {domain} blev erhvervet" -#: plinth/modules/letsencrypt/views.py:78 +#: plinth/modules/letsencrypt/views.py:81 #, python-brace-format msgid "Failed to obtain certificate for domain {domain}: {error}" msgstr "" "Fejl ved forsøg på at erhverve certifikatet for domænet {domain}: {error}" #: plinth/modules/letsencrypt/views.py:90 +#: plinth/modules/letsencrypt/views.py:109 +#, fuzzy, python-brace-format +#| msgid "Certificate successfully revoked for domain {domain}" +msgid "Certificate renewal management enabled for {domain}." +msgstr "Certifikatet for domænet {domain} blev trukket tilbage" + +#: plinth/modules/letsencrypt/views.py:95 +#, fuzzy, python-brace-format +#| msgid "Failed to revoke certificate for domain {domain}: {error}" +msgid "Failed to enable certificate renewal management for {domain}: {error}" +msgstr "Fejl ved tilbagetrækning af certifikatet for domænet {domain}: {error}" + +#: plinth/modules/letsencrypt/views.py:112 +#, fuzzy, python-brace-format +#| msgid "Certificate successfully revoked for domain {domain}" +msgid "Certificate renewal management disabled for {domain}." +msgstr "Certifikatet for domænet {domain} blev trukket tilbage" + +#: plinth/modules/letsencrypt/views.py:118 +#, fuzzy, python-brace-format +#| msgid "Failed to obtain certificate for domain {domain}: {error}" +msgid "Failed to switch certificate renewal management for {domain}: {error}" +msgstr "" +"Fejl ved forsøg på at erhverve certifikatet for domænet {domain}: {error}" + +#: plinth/modules/letsencrypt/views.py:134 +#, fuzzy, python-brace-format +#| msgid "Failed to revoke certificate for domain {domain}: {error}" +msgid "Failed to disable certificate renewal management for {domain}: {error}" +msgstr "Fejl ved tilbagetrækning af certifikatet for domænet {domain}: {error}" + +#: plinth/modules/letsencrypt/views.py:141 #, fuzzy, python-brace-format #| msgid "Certificate successfully revoked for domain {domain}" msgid "Certificate successfully deleted for domain {domain}" msgstr "Certifikatet for domænet {domain} blev trukket tilbage" -#: plinth/modules/letsencrypt/views.py:95 +#: plinth/modules/letsencrypt/views.py:146 #, fuzzy, python-brace-format #| msgid "Failed to revoke certificate for domain {domain}: {error}" msgid "Failed to delete certificate for domain {domain}: {error}" @@ -1522,12 +1680,10 @@ msgstr "Fejl ved tilbagetrækning af certifikatet for domænet {domain}: {error} #: plinth/modules/matrixsynapse/__init__.py:41 #, fuzzy #| msgid "Chat Server (XMPP)" -msgid "" -"Chat Server \n" -" (Matrix Synapse)" +msgid "Matrix Synapse" msgstr "Chat-server (XMPP)" -#: plinth/modules/matrixsynapse/__init__.py:44 +#: plinth/modules/matrixsynapse/__init__.py:46 msgid "" "Matrix is an new " "ecosystem for open, federated instant messaging and VoIP. Synapse is a " @@ -1537,19 +1693,13 @@ msgid "" "converse with users on all other Matrix servers via federation." msgstr "" -#: plinth/modules/matrixsynapse/__init__.py:52 +#: plinth/modules/matrixsynapse/__init__.py:54 msgid "" "To communicate, you can use the available clients for mobile, desktop and the web. Riot client is recommended." msgstr "" -#: plinth/modules/matrixsynapse/forms.py:31 -#, fuzzy -#| msgid "Invalid domain name" -msgid "Select the domain name" -msgstr "Ugyldigt domænenavn" - #: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:34 msgid "" "Matrix service needs to be configured for a domain. Users on other Matrix " @@ -1588,14 +1738,16 @@ msgstr "" "domæne på Konfigurer siden." #: plinth/modules/minetest/__init__.py:48 +msgid "Minetest" +msgstr "" + +#: plinth/modules/minetest/__init__.py:50 #, fuzzy #| msgid "Block Sandbox (Minetest)" -msgid "" -"Block Sandbox \n" -" (Minetest)" +msgid "Block Sandbox" msgstr "Block Testområde (Minetest)" -#: plinth/modules/minetest/__init__.py:52 +#: plinth/modules/minetest/__init__.py:54 #, python-brace-format msgid "" "Minetest is a multiplayer infinite-world block sandbox. This module enables " @@ -1746,7 +1898,7 @@ msgstr "Secure Shell" #: plinth/modules/monkeysphere/templates/monkeysphere.html:87 #: plinth/modules/monkeysphere/templates/monkeysphere_details.html:60 -#: plinth/service.py:117 +#: plinth/service.py:116 msgid "Web Server" msgstr "Webserver" @@ -1845,14 +1997,16 @@ msgid "Error occurred while publishing key." msgstr "Fejl under distribuering af nøgle." #: plinth/modules/mumble/__init__.py:35 +msgid "Mumble" +msgstr "" + +#: plinth/modules/mumble/__init__.py:37 #, fuzzy #| msgid "Voice Chat (Mumble)" -msgid "" -"Voice Chat \n" -" (Mumble)" +msgid "Voice Chat" msgstr "Tale-tjeneste (Mumble)" -#: plinth/modules/mumble/__init__.py:44 +#: plinth/modules/mumble/__init__.py:46 msgid "" "Mumble is an open source, low-latency, encrypted, high quality voice chat " "software." @@ -1860,7 +2014,7 @@ msgstr "" "Mumble er open source software der tilbyder en højkvalitets tale-tjeneste " "med lav forsinkelse og kryptering." -#: plinth/modules/mumble/__init__.py:47 +#: plinth/modules/mumble/__init__.py:49 msgid "" "You can connect to your Mumble server on the regular Mumble port 64738. Clients to connect to Mumble from your " @@ -2403,7 +2557,7 @@ msgid "This connection is not active." msgstr "Denne forbindelse er ikke aktiv." #: plinth/modules/networks/templates/connection_show.html:266 -#: plinth/modules/security/__init__.py:32 plinth/modules/security/views.py:46 +#: plinth/modules/security/__init__.py:32 plinth/modules/security/views.py:48 msgid "Security" msgstr "Sikkerhed" @@ -2511,13 +2665,17 @@ msgstr "Inaktiv" #: plinth/modules/openvpn/__init__.py:42 #, fuzzy +#| msgid "OpenVPN" +msgid "OpenVPN" +msgstr "OpenVPN" + +#: plinth/modules/openvpn/__init__.py:44 +#, fuzzy #| msgid "Virtual Private Network (OpenVPN)" -msgid "" -"Virtual Private Network \n" -" (OpenVPN)" +msgid "Virtual Private Network" msgstr "Virtuelt Privat Netværk (OpenVPN)" -#: plinth/modules/openvpn/__init__.py:46 +#: plinth/modules/openvpn/__init__.py:48 #, python-brace-format msgid "" "Virtual Private Network (VPN) is a technique for securely connecting two " @@ -2534,7 +2692,7 @@ msgstr "" "af {box_name}. Du kan også tilgå resten af internettet igennem {box_name} " "for øget sikkerhed og anonymitet." -#: plinth/modules/openvpn/__init__.py:84 +#: plinth/modules/openvpn/__init__.py:86 #, python-brace-format msgid "" "Download Profile" @@ -2623,10 +2781,18 @@ msgid "Setup failed." msgstr "Opsætning fejlede." #: plinth/modules/pagekite/__init__.py:44 -msgid "Public Visibility (PageKite)" +#, fuzzy +#| msgid "Pagekite" +msgid "PageKite" +msgstr "PageKite" + +#: plinth/modules/pagekite/__init__.py:46 +#, fuzzy +#| msgid "Public Visibility (PageKite)" +msgid "Public Visibility" msgstr "Offentlig Tilgængelighed (PageKite)" -#: plinth/modules/pagekite/__init__.py:48 +#: plinth/modules/pagekite/__init__.py:50 #, python-brace-format msgid "" "PageKite is a system for exposing {box_name} services when you don't have a " @@ -2639,19 +2805,19 @@ msgstr "" "hvis {box_name} tjenester ikke kan nås fra resten af internettet. Dette " "inkluderer de følgende situationer:" -#: plinth/modules/pagekite/__init__.py:55 +#: plinth/modules/pagekite/__init__.py:57 #, python-brace-format msgid "{box_name} is behind a restricted firewall." msgstr "{box_name} er bag en restriktiv firewall." -#: plinth/modules/pagekite/__init__.py:59 +#: plinth/modules/pagekite/__init__.py:61 #, python-brace-format msgid "{box_name} is connected to a (wireless) router which you don't control." msgstr "" "{box_name} er forbundet til en (trådløs) router som du ikke selv " "kontrollerer." -#: plinth/modules/pagekite/__init__.py:62 +#: plinth/modules/pagekite/__init__.py:64 msgid "" "Your ISP does not provide you an external IP address and instead provides " "Internet connection through NAT." @@ -2659,7 +2825,7 @@ msgstr "" "Din internetudbyder tildeler dig ikke en ekstern IP-adresse, men giver dig " "forbindelse gennem NAT." -#: plinth/modules/pagekite/__init__.py:65 +#: plinth/modules/pagekite/__init__.py:67 msgid "" "Your ISP does not provide you a static IP address and your IP address " "changes evertime you connect to Internet." @@ -2667,11 +2833,11 @@ msgstr "" "Din internetudbyder tildeler dig ikke en fast IP-adresse, og din IP-adresse " "ændres hver gang du fobinder til nettet." -#: plinth/modules/pagekite/__init__.py:68 +#: plinth/modules/pagekite/__init__.py:70 msgid "Your ISP limits incoming connections." msgstr "Din internetudbyder begrænser indgående forbindelser." -#: plinth/modules/pagekite/__init__.py:71 +#: plinth/modules/pagekite/__init__.py:73 #, python-brace-format msgid "" "PageKite works around NAT, firewalls and IP-address limitations by using a " @@ -2973,8 +3139,8 @@ msgstr "" "Konfiguration af PageKite er færdig. Servicerne for HTTP og HTTPS er blevet " "aktiveret." -#: plinth/modules/power/__init__.py:28 plinth/modules/power/views.py:50 -#: plinth/modules/power/views.py:65 +#: plinth/modules/power/__init__.py:28 plinth/modules/power/views.py:51 +#: plinth/modules/power/views.py:67 msgid "Power" msgstr "Strøm" @@ -2983,10 +3149,16 @@ msgid "Restart or shut down the system." msgstr "Genstart eller luk systemet." #: plinth/modules/power/templates/power.html:28 +msgid "" +"Currently an installation or upgrade is running. Consider waiting until it's " +"finished before shutting down or restarting." +msgstr "" + +#: plinth/modules/power/templates/power.html:37 msgid "Restart »" msgstr "Genstart »" -#: plinth/modules/power/templates/power.html:31 +#: plinth/modules/power/templates/power.html:40 msgid "Shut Down »" msgstr "Sluk »" @@ -2998,7 +3170,14 @@ msgstr "" "Er du sikker på at du vil genstarte? Du vil ikke kunne tilgå dette " "webinterface i et par minutter indtil systemet er genstartet." -#: plinth/modules/power/templates/power_restart.html:42 +#: plinth/modules/power/templates/power_restart.html:38 +msgid "" +"Currently an installation or upgrade is running. Consider waiting until it's " +"finished before restarting." +msgstr "" + +#: plinth/modules/power/templates/power_restart.html:52 +#: plinth/modules/power/templates/power_restart.html:55 msgid "Restart Now" msgstr "Genstart Nu" @@ -3010,19 +3189,30 @@ msgstr "" "Er du sikker på at du vil slukke? Du vil ikke kunne tilgå dette webinterface " "efter slukning." -#: plinth/modules/power/templates/power_shutdown.html:41 +#: plinth/modules/power/templates/power_shutdown.html:37 +msgid "" +"Currently an installation or upgrade is running. Consider waiting until it's " +"finished before shutting down." +msgstr "" + +#: plinth/modules/power/templates/power_shutdown.html:51 +#: plinth/modules/power/templates/power_shutdown.html:54 msgid "Shut Down Now" msgstr "Sluk Nu" #: plinth/modules/privoxy/__init__.py:43 #, fuzzy -#| msgid "Web Proxy (Privoxy)" -msgid "" -"Web Proxy \n" -" (Privoxy)" -msgstr "Webproxy (Privoxy)" +#| msgid "Enable Privoxy" +msgid "Privoxy" +msgstr "Aktiver Privoxy" -#: plinth/modules/privoxy/__init__.py:46 +#: plinth/modules/privoxy/__init__.py:45 +#, fuzzy +#| msgid "Privoxy Web Proxy" +msgid "Web Proxy" +msgstr "Privoxy Webproxy" + +#: plinth/modules/privoxy/__init__.py:48 msgid "" "Privoxy is a non-caching web proxy with advanced filtering capabilities for " "enhancing privacy, modifying web page data and HTTP headers, controlling " @@ -3033,7 +3223,7 @@ msgstr "" "HTTP-headers, styre adgang og fjerne reklamer og andet vedderstyggeligt " "internetskrald. " -#: plinth/modules/privoxy/__init__.py:52 +#: plinth/modules/privoxy/__init__.py:54 #, python-brace-format msgid "" "You can use Privoxy by modifying your browser proxy settings to your " @@ -3048,20 +3238,22 @@ msgstr "" "på http://config.privoxy.org/ " "eller http://p.p." -#: plinth/modules/privoxy/__init__.py:144 +#: plinth/modules/privoxy/__init__.py:147 #, python-brace-format msgid "Access {url} with proxy {proxy} on tcp{kind}" msgstr "Tilgå {url} med proxy {proxy} ved brug af tcp{kind}" #: plinth/modules/quassel/__init__.py:42 -#, fuzzy -#| msgid "IRC Client (Quassel)" -msgid "" -"IRC Client \n" -" (Quassel)" -msgstr "IRC-klient (Quassel)" +msgid "Quassel" +msgstr "" -#: plinth/modules/quassel/__init__.py:46 +#: plinth/modules/quassel/__init__.py:44 +#, fuzzy +#| msgid "Quassel IRC Client" +msgid "IRC Client" +msgstr "Quassel IRC-klient" + +#: plinth/modules/quassel/__init__.py:48 #, python-brace-format msgid "" "Quassel is an IRC application that is split into two parts, a \"core\" and a " @@ -3078,7 +3270,7 @@ msgstr "" "kontinuerligt online, og du vil kunne bruge en eller flere Quassel-klienter " "fra en computer eller en mobil til at forbinde til den." -#: plinth/modules/quassel/__init__.py:54 +#: plinth/modules/quassel/__init__.py:56 msgid "" "You can connect to your Quassel core on the default Quassel port 4242. " "Clients to connect to Quassel from your enhed er tilgængelige." #: plinth/modules/radicale/__init__.py:43 +msgid "Radicale" +msgstr "" + +#: plinth/modules/radicale/__init__.py:45 #, fuzzy #| msgid "Calendar and Addressbook (Radicale)" -msgid "" -"Calendar and Addressbook \n" -" (Radicale)" +msgid "Calendar and Addressbook" msgstr "Kalender og Adressebog (Radicale)" -#: plinth/modules/radicale/__init__.py:47 -#, python-brace-format +#: plinth/modules/radicale/__init__.py:49 +#, fuzzy, python-brace-format +#| msgid "" +#| "Radicale is a CalDAV and CardDAV server. It allows synchronization and " +#| "sharing of scheduling and contact data. To use Radicale, a " +#| "supported client application is needed. Radicale can be accessed by " +#| "any user with a {box_name} login." msgid "" "Radicale is a CalDAV and CardDAV server. It allows synchronization and " "sharing of scheduling and contact data. To use Radicale, a supported " -"client application is needed. Radicale can be accessed by any user with " -"a {box_name} login." +"radicale.org/clients/\">supported client application is needed. Radicale " +"can be accessed by any user with a {box_name} login." msgstr "" "Radicale er en CalDAV og CardDAV-server. Den gør det muligt at synkronisere " "og dele planlægnings og kontakt-data. For at kunne anvende Radicale har man " @@ -3134,14 +3333,16 @@ msgid "Access rights configuration updated" msgstr "Konfiguration opdateret" #: plinth/modules/repro/__init__.py:38 -#, fuzzy -#| msgid "SIP Server (repro)" -msgid "" -"SIP Server \n" -" (repro)" -msgstr "SIP-server (repro)" +msgid "repro" +msgstr "" -#: plinth/modules/repro/__init__.py:41 +#: plinth/modules/repro/__init__.py:40 +#, fuzzy +#| msgid "DNS Server" +msgid "SIP Server" +msgstr "DNS-server" + +#: plinth/modules/repro/__init__.py:43 msgid "" "repro provides various SIP services that a SIP softphone can utilize to " "provide audio and video calls as well as presence and instant messaging. " @@ -3156,7 +3357,7 @@ msgstr "" "bindeled for at fordele SIP-kommunikation til andre servere på internettet, " "på samme måde som email." -#: plinth/modules/repro/__init__.py:48 +#: plinth/modules/repro/__init__.py:50 msgid "" "To make SIP calls, a client application is needed. Available clients include " "Jitsi (for computers) and CSipSimple (til Android-enheder)." -#: plinth/modules/repro/__init__.py:53 +#: plinth/modules/repro/__init__.py:55 msgid "" "Note: Before using repro, domains and users will need to " "be configured using the web-based " @@ -3184,14 +3385,16 @@ msgstr "" "den for at gøre dette." #: plinth/modules/restore/__init__.py:36 +msgid "reStore" +msgstr "reStore" + +#: plinth/modules/restore/__init__.py:38 #, fuzzy #| msgid "Unhosted Storage (reStore)" -msgid "" -"Unhosted Storage \n" -" (reStore)" +msgid "Unhosted Storage" msgstr "Ikke-hostet Lagerplads (reStore)" -#: plinth/modules/restore/__init__.py:40 +#: plinth/modules/restore/__init__.py:42 #, python-brace-format msgid "" "reStore is a server for unhosted web " @@ -3207,7 +3410,7 @@ msgstr "" "efter brugerens valg. Med reStore bliver din {box_name} dit unhosted " "datalager." -#: plinth/modules/restore/__init__.py:47 +#: plinth/modules/restore/__init__.py:49 msgid "" "You can create and edit accounts in the reStore web-" "interface." @@ -3217,13 +3420,17 @@ msgstr "" #: plinth/modules/roundcube/__init__.py:35 #, fuzzy +#| msgid "Enable Roundcube" +msgid "Roundcube" +msgstr "Aktiver Roundcube" + +#: plinth/modules/roundcube/__init__.py:37 +#, fuzzy #| msgid "Email Client (Roundcube)" -msgid "" -"Email Client \n" -" (Roundcube)" +msgid "Email Client" msgstr "Emailklient (Roundcube)" -#: plinth/modules/roundcube/__init__.py:38 +#: plinth/modules/roundcube/__init__.py:40 msgid "" "Roundcube webmail is a browser-based multilingual IMAP client with an " "application-like user interface. It provides full functionality you expect " @@ -3235,7 +3442,7 @@ msgstr "" "du forventer af en emailklient, inklusiv MIME-understøttelse, lagring af " "kontaktpersoner, mappe-administration, beskedsøgning og stavekontrol." -#: plinth/modules/roundcube/__init__.py:44 +#: plinth/modules/roundcube/__init__.py:46 msgid "" "You can access Roundcube from /roundcube. Provide " "the username and password of the email account you wish to access followed " @@ -3249,7 +3456,7 @@ msgstr "" "example.com. Vil du bruge IMAP over SSL (hvilket anbefales) skal du " "også angive protokollen således imaps://imap.example.com." -#: plinth/modules/roundcube/__init__.py:51 +#: plinth/modules/roundcube/__init__.py:53 msgid "" "For Gmail, username will be your Gmail address, password will be your Google " "account password and server will be imaps://imap.gmail.com. " @@ -3277,31 +3484,44 @@ msgid "" "services without further authorization." msgstr "" -#: plinth/modules/security/views.py:63 +#: plinth/modules/security/forms.py:35 +msgid "Fail2ban (recommended)" +msgstr "" + +#: plinth/modules/security/forms.py:36 +msgid "" +"When this option is enabled, fail2ban will limit brute force break-in " +"attempts to the SSH server and other password protected internet-services " +"which are enabled." +msgstr "" + +#: plinth/modules/security/views.py:66 #, fuzzy, python-brace-format #| msgid "Error setting time zone: {exception}" msgid "Error setting restricted access: {exception}" msgstr "Kunne ikke sætte tidszone: {exception}" -#: plinth/modules/security/views.py:66 +#: plinth/modules/security/views.py:69 #, fuzzy #| msgid "General Configuration" msgid "Updated security configuration" msgstr "Generel Konfiguration" #: plinth/modules/shaarli/__init__.py:35 +msgid "Shaarli" +msgstr "Shaarli" + +#: plinth/modules/shaarli/__init__.py:37 #, fuzzy #| msgid "Bookmarks (Shaarli)" -msgid "" -"Bookmarks \n" -" (Shaarli)" +msgid "Bookmarks" msgstr "Bogmærker (Shaarli)" -#: plinth/modules/shaarli/__init__.py:38 +#: plinth/modules/shaarli/__init__.py:40 msgid "Shaarli allows you to save and share bookmarks." msgstr "Shaarli tillader dig at gemme og dele bogmærker." -#: plinth/modules/shaarli/__init__.py:40 +#: plinth/modules/shaarli/__init__.py:42 msgid "" "When enabled, Shaarli will be available from /shaarli path on the web server. Note that Shaarli only supports a single user " @@ -3427,6 +3647,18 @@ msgstr "" msgid "Rollback to Snapshot" msgstr "" +#: plinth/modules/ssh/__init__.py:37 +msgid "Secure Shell (SSH) Server" +msgstr "Secure Shell (SSH) Server" + +#: plinth/modules/ssh/__init__.py:40 +msgid "" +"A Secure Shell server uses the secure shell protocol to accept connections " +"from remote computers. An authorized remote computer can perform " +"administration tasks, copy files or run other services using such " +"connections." +msgstr "" + #: plinth/modules/sso/__init__.py:30 msgid "Single Sign On" msgstr "" @@ -3436,12 +3668,14 @@ msgid "Login" msgstr "Log ind" #: plinth/modules/syncthing/__init__.py:39 -msgid "" -"File Synchronization \n" -" (Syncthing)" +msgid "Syncthing" msgstr "" -#: plinth/modules/syncthing/__init__.py:42 +#: plinth/modules/syncthing/__init__.py:41 +msgid "File Synchronization" +msgstr "" + +#: plinth/modules/syncthing/__init__.py:44 msgid "" "Syncthing is an application to synchronize files across multiple devices, e." "g. your desktop computer and mobile phone. Creation, modification, or " @@ -3449,7 +3683,7 @@ msgid "" "other devices that also run Syncthing." msgstr "" -#: plinth/modules/syncthing/__init__.py:47 +#: plinth/modules/syncthing/__init__.py:49 #, python-brace-format msgid "" "Running Syncthing on {box_name} provides an extra synchronization point for " @@ -3460,7 +3694,7 @@ msgid "" "{box_name} is only available for users belonging to the \"admin\" group." msgstr "" -#: plinth/modules/syncthing/__init__.py:54 +#: plinth/modules/syncthing/__init__.py:56 msgid "" "When enabled, Syncthing's web interface will be available from /syncthing. Desktop and mobile clients are also Tor Project website. For " @@ -3540,37 +3788,37 @@ msgstr "" "du bruger Tor-browseren." -#: plinth/modules/tor/__init__.py:70 plinth/modules/tor/__init__.py:112 +#: plinth/modules/tor/__init__.py:72 plinth/modules/tor/__init__.py:114 msgid "Tor Anonymity Network" msgstr "Tor Anonymiseringstjeneste" -#: plinth/modules/tor/__init__.py:76 plinth/modules/tor/__init__.py:120 +#: plinth/modules/tor/__init__.py:78 plinth/modules/tor/__init__.py:122 #, fuzzy msgid "Tor Bridge Relay" msgstr "Tor Bridge Relay" -#: plinth/modules/tor/__init__.py:98 plinth/modules/tor/__init__.py:141 +#: plinth/modules/tor/__init__.py:100 plinth/modules/tor/__init__.py:143 msgid "Tor Hidden Service" msgstr "Tor Skjult Tjeneste" -#: plinth/modules/tor/__init__.py:160 +#: plinth/modules/tor/__init__.py:162 msgid "Tor relay port available" msgstr "Tor videresendelsesport tilgængelig" -#: plinth/modules/tor/__init__.py:168 +#: plinth/modules/tor/__init__.py:170 msgid "Obfs3 transport registered" msgstr "Obfs3 transport registreret" -#: plinth/modules/tor/__init__.py:174 +#: plinth/modules/tor/__init__.py:176 msgid "Obfs4 transport registered" msgstr "Obfs4 transport registreret" -#: plinth/modules/tor/__init__.py:211 +#: plinth/modules/tor/__init__.py:213 #, python-brace-format msgid "Access URL {url} on tcp{kind} via Tor" msgstr "Tilgå URL {url} ved brug af tcp{kind} via Tor" -#: plinth/modules/tor/__init__.py:222 +#: plinth/modules/tor/__init__.py:224 #, python-brace-format msgid "Confirm Tor usage at {url} on tcp{kind}" msgstr "Bekræft brug af Tor på {url} ved brug af tcp{kind}" @@ -3735,13 +3983,17 @@ msgstr "Der opstod en fejl under konfigurationen." #: plinth/modules/transmission/__init__.py:38 #, fuzzy -#| msgid "BitTorrent (Transmission)" -msgid "" -"BitTorrent \n" -" (Transmission)" -msgstr "BitTorrent (Transmission)" +#| msgid "Transmission BitTorrent" +msgid "Transmission" +msgstr "Transmission BitTorrent" -#: plinth/modules/transmission/__init__.py:41 +#: plinth/modules/transmission/__init__.py:40 +#, fuzzy +#| msgid "Deluge BitTorrent" +msgid "BitTorrent" +msgstr "Deluge BitTorrent" + +#: plinth/modules/transmission/__init__.py:43 msgid "" "BitTorrent is a peer-to-peer file sharing protocol. Transmission daemon " "handles Bitorrent file sharing. Note that BitTorrent is not anonymous." @@ -3750,7 +4002,7 @@ msgstr "" "Transmission håndterer BitTorrent fildeling. Bemærk at BitTorrent ikke " "anonymiserer trafik." -#: plinth/modules/transmission/__init__.py:44 +#: plinth/modules/transmission/__init__.py:46 msgid "" "Access the web interface at /transmission." msgstr "Tilgå webbrugerfladen på /transmission." @@ -3782,15 +4034,17 @@ msgstr "" "forvansket hash-format. Indtast et password i ren tekst for at ændre " "kodeordet." -#: plinth/modules/ttrss/__init__.py:37 +#: plinth/modules/ttrss/__init__.py:39 +msgid "Tiny Tiny RSS" +msgstr "" + +#: plinth/modules/ttrss/__init__.py:41 #, fuzzy #| msgid "News Feed Reader (Tiny Tiny RSS)" -msgid "" -"News Feed Reader \n" -" (Tiny Tiny RSS)" +msgid "News Feed Reader" msgstr "Nyhedsstrømlæser (Tiny Tiny RSS)" -#: plinth/modules/ttrss/__init__.py:40 +#: plinth/modules/ttrss/__init__.py:44 msgid "" "Tiny Tiny RSS is a news feed (RSS/Atom) reader and aggregator, designed to " "allow reading news from any location, while feeling as close to a real " @@ -3800,10 +4054,15 @@ msgstr "" "er designet til at læse nyheder på farten, men samtidig føles så meget som " "en rigtig desktop-applikation som muligt." -#: plinth/modules/ttrss/__init__.py:44 +#: plinth/modules/ttrss/__init__.py:49 +#, fuzzy, python-brace-format +#| msgid "" +#| "When enabled, Tiny Tiny RSS will be available from /" +#| "tt-rss path on the web server." msgid "" "When enabled, Tiny Tiny RSS will be available from /tt-" -"rss path on the web server." +"rss path on the web server. It can be accessed by any user with a {box_name} login." msgstr "" "Når aktiveret, vil Tiny Tiny RSS være tilgængelige på stien /tt-rss på webserveren." @@ -4125,15 +4384,11 @@ msgstr "medie-ændring" msgid "configuration file: {file}" msgstr "konfigurationsfil: {file}" -#: plinth/service.py:119 +#: plinth/service.py:118 msgid "Web Server over Secure Socket Layer" msgstr "Sikker Webserver (via SSL)" -#: plinth/service.py:121 -msgid "Secure Shell (SSH) Server" -msgstr "Secure Shell (SSH) Server" - -#: plinth/service.py:123 +#: plinth/service.py:120 #, python-brace-format msgid "{box_name} Web Interface (Plinth)" msgstr "{box_name} Web-brugerflade (Plinth)" @@ -4186,11 +4441,11 @@ msgstr "" "Rapporter venligst fejlen i fejlhåndteringsvørktøjet så vi kan rette den." -#: plinth/templates/apps.html:25 +#: plinth/templates/apps.html:33 msgid "Services and Applications" msgstr "Tjenester og Applikationer" -#: plinth/templates/apps.html:28 +#: plinth/templates/apps.html:36 #, python-format msgid "" "You can install and run various services and applications on your " @@ -4201,7 +4456,7 @@ msgstr "" "%(box_name)s. Klik på et af App-linkene til venstre, for at læse mere om den " "enkelte applikation eller installere den." -#: plinth/templates/apps.html:36 +#: plinth/templates/apps.html:44 msgid "" "This box can be your photo sharing site, your instant messaging site, your " "social networking site, your news site. Remember web portals? We can be " @@ -4375,17 +4630,17 @@ msgstr "Installerer %(package_names)s: %(status)s" msgid "%(percentage)s%% complete" msgstr "%(percentage)s%% færdig" -#: plinth/templates/system.html:25 +#: plinth/templates/system.html:33 msgid "System Configuration" msgstr "Systemkonfiguration" -#: plinth/templates/system.html:28 +#: plinth/templates/system.html:36 #, fuzzy, python-format #| msgid "Here you can administrate the underlying system of your {box_name}." msgid "Here you can administrate the underlying system of your %(box_name)s." msgstr "Her administrerer du det underliggende system på din {box_name}." -#: plinth/templates/system.html:34 +#: plinth/templates/system.html:42 #, fuzzy, python-format #| msgid "" #| "The options affect the {box_name} at its most general level, so be " @@ -4396,6 +4651,54 @@ msgstr "" "Disse muligheder påvirker {box_name} på det meste grundlæggende niveau, så " "vær forsigtig!" +#, fuzzy +#~| msgid "Invalid domain name" +#~ msgid "Select the domain name to be used for diaspora*" +#~ msgstr "Ugyldigt domænenavn" + +#, fuzzy +#~| msgid "Chat Server (XMPP)" +#~ msgid "" +#~ "Chat Server \n" +#~ " (ejabberd)" +#~ msgstr "Chat-server (XMPP)" + +#~ msgid "Wiki and Blog (ikiwiki)" +#~ msgstr "Wiki og Blog (ikiwiki)" + +#, fuzzy +#~| msgid "Invalid domain name" +#~ msgid "Select the domain name" +#~ msgstr "Ugyldigt domænenavn" + +#, fuzzy +#~| msgid "Web Proxy (Privoxy)" +#~ msgid "" +#~ "Web Proxy \n" +#~ " (Privoxy)" +#~ msgstr "Webproxy (Privoxy)" + +#, fuzzy +#~| msgid "IRC Client (Quassel)" +#~ msgid "" +#~ "IRC Client \n" +#~ " (Quassel)" +#~ msgstr "IRC-klient (Quassel)" + +#, fuzzy +#~| msgid "SIP Server (repro)" +#~ msgid "" +#~ "SIP Server \n" +#~ " (repro)" +#~ msgstr "SIP-server (repro)" + +#, fuzzy +#~| msgid "BitTorrent (Transmission)" +#~ msgid "" +#~ "BitTorrent \n" +#~ " (Transmission)" +#~ msgstr "BitTorrent (Transmission)" + #~ msgid "Applications" #~ msgstr "Applikationer" @@ -4602,12 +4905,6 @@ msgstr "" #~ msgid "BitTorrent (Deluge)" #~ msgstr "BitTorrent (Deluge)" -#~ msgid "Deluge BitTorrent" -#~ msgstr "Deluge BitTorrent" - -#~ msgid "Enable Deluge" -#~ msgstr "Aktiver Deluge" - #~ msgid "System Diagnostics" #~ msgstr "Systemdiagnosticering" @@ -4630,11 +4927,6 @@ msgstr "" #~ msgid "Enable ikiwiki" #~ msgstr "Aktiver Ikiwiki" -#, fuzzy -#~| msgid "Wiki & Blog" -#~ msgid "Wiki and Blog" -#~ msgstr "Wiki & Blog" - #~ msgid "Mumble Voice Chat Server" #~ msgstr "Mumble Tale-tjenesteserver" @@ -4658,15 +4950,6 @@ msgstr "" #~ "Aktivering af SSH med stadardkodeordet for brugeren 'fbx' er en MEGET " #~ "DÅRLIG ide." -#~ msgid "Privoxy Web Proxy" -#~ msgstr "Privoxy Webproxy" - -#~ msgid "Enable Privoxy" -#~ msgstr "Aktiver Privoxy" - -#~ msgid "Quassel IRC Client" -#~ msgstr "Quassel IRC-klient" - #~ msgid "Enable Quassel core service" #~ msgstr "Aktiver Quassel grund-tjeneste" @@ -4680,15 +4963,6 @@ msgstr "" #~ msgid "Enable repro service" #~ msgstr "Aktiver Quassel grund-tjeneste" -#~ msgid "reStore" -#~ msgstr "reStore" - -#~ msgid "Enable Roundcube" -#~ msgstr "Aktiver Roundcube" - -#~ msgid "Shaarli" -#~ msgstr "Shaarli" - #~ msgid "Enable Shaarli" #~ msgstr "Aktiver Shaarli" @@ -4698,9 +4972,6 @@ msgstr "" #~ msgid "Tor Control Panel" #~ msgstr "Tor Kontrolpanel" -#~ msgid "Transmission BitTorrent" -#~ msgstr "Transmission BitTorrent" - #~ msgid "Enable Transmission daemon" #~ msgstr "Aktiver Transmission" diff --git a/plinth/locale/de/LC_MESSAGES/django.po b/plinth/locale/de/LC_MESSAGES/django.po index 41a0b9282..93a8b2ff8 100644 --- a/plinth/locale/de/LC_MESSAGES/django.po +++ b/plinth/locale/de/LC_MESSAGES/django.po @@ -9,11 +9,11 @@ msgid "" msgstr "" "Project-Id-Version: FreedomBox UI\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2017-07-10 22:56-0400\n" +"POT-Creation-Date: 2017-09-24 11:24-0400\n" "PO-Revision-Date: 2017-07-17 08:41+0000\n" "Last-Translator: Johannes Keyser \n" -"Language-Team: German " -"\n" +"Language-Team: German \n" "Language: de\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -21,37 +21,37 @@ msgstr "" "Plural-Forms: nplurals=2; plural=n != 1;\n" "X-Generator: Weblate 2.16-dev\n" -#: plinth/action_utils.py:254 +#: plinth/action_utils.py:259 #, python-brace-format msgid "Listening on {kind} port {listen_address}:{port}" msgstr "Gebunden auf {kind} Port {listen_address}:{port}" -#: plinth/action_utils.py:257 +#: plinth/action_utils.py:262 #, python-brace-format msgid "Listening on {kind} port {port}" msgstr "Gebunden an {kind} Port {port}" -#: plinth/action_utils.py:352 +#: plinth/action_utils.py:357 #, python-brace-format msgid "Access URL {url} on tcp{kind}" msgstr "Zugangs URL {url} via TCP{kind}" -#: plinth/action_utils.py:356 +#: plinth/action_utils.py:361 #, python-brace-format msgid "Access URL {url}" msgstr "Zugangs-URL {url}" -#: plinth/action_utils.py:386 +#: plinth/action_utils.py:391 #, python-brace-format msgid "Connect to {host}:{port}" msgstr "Verbinden mit {host}:{port}" -#: plinth/action_utils.py:389 +#: plinth/action_utils.py:394 #, python-brace-format msgid "Cannot connect to {host}:{port}" msgstr "Verbindung mit {host}:{port} fehlgeschlagen" -#: plinth/context_processors.py:38 plinth/views.py:49 +#: plinth/context_processors.py:38 plinth/views.py:52 msgid "FreedomBox" msgstr "FreedomBox" @@ -60,9 +60,17 @@ msgid "Enable application" msgstr "Anwendung aktivieren" #: plinth/forms.py:45 -msgid "Select the domain name to be used for this application" +#, fuzzy +#| msgid "Select the domain name to be used for this application" +msgid "Select a domain name to be used with this application" msgstr "Wähle den Domain-Namen für die Benutzing mit dieser Anwendung" +#: plinth/forms.py:47 +msgid "" +"Warning! The application may not work properly if domain name is changed " +"later." +msgstr "" + #: plinth/middleware.py:71 msgid "Application installed." msgstr "Anwendung installiert." @@ -98,14 +106,20 @@ msgstr "" "werden um die Sicherheit zu erhöhen, vor allem in einem unsicheren Netz." #: plinth/modules/bind/__init__.py:34 -msgid "" -"Domain Name Server \n" -" (BIND)" +msgid "BIND" +msgstr "" + +#: plinth/modules/bind/__init__.py:36 +#, fuzzy +#| msgid "" +#| "Domain Name Server \n" +#| " (BIND)" +msgid "Domain Name Server" msgstr "" "Domain Name Server \n" "(BIND)" -#: plinth/modules/bind/__init__.py:43 +#: plinth/modules/bind/__init__.py:45 msgid "" "BIND is open source software that enables you to publish your Domain Name " "System (DNS) information on the Internet, and to resolve DNS queries for " @@ -115,7 +129,7 @@ msgstr "" "Informationen im Internet für DNS-Abfragen Ihrer Nutzer veröffentlichen " "können." -#: plinth/modules/bind/__init__.py:47 +#: plinth/modules/bind/__init__.py:49 msgid "" "BIND is by far the most widely used DNS software on the Internet, providing " "a robust and stable platform on top of which organizations can build " @@ -166,7 +180,7 @@ msgstr "" "Server" #: plinth/modules/config/config.py:88 plinth/modules/config/config.py:125 -#: plinth/modules/dynamicdns/dynamicdns.py:140 +#: plinth/modules/dynamicdns/dynamicdns.py:148 msgid "Invalid domain name" msgstr "Ungültiger Domain Name" @@ -193,7 +207,7 @@ msgstr "Ungültiger Hostname" #: plinth/modules/config/config.py:112 plinth/modules/config/config.py:169 #: plinth/modules/config/config.py:285 -#: plinth/modules/dynamicdns/dynamicdns.py:135 +#: plinth/modules/dynamicdns/dynamicdns.py:143 msgid "Domain Name" msgstr "Domain-Name" @@ -222,7 +236,7 @@ msgid "Language for this web administration interface" msgstr "Die Sprache der Web-Administrations-Oberfläche" #: plinth/modules/config/config.py:151 -#: plinth/modules/dynamicdns/dynamicdns.py:37 +#: plinth/modules/dynamicdns/dynamicdns.py:45 #: plinth/modules/ikiwiki/views.py:37 #: plinth/modules/tahoe/templates/tahoe-pre-setup.html:39 msgid "Configure" @@ -306,18 +320,26 @@ msgid "Time zone set" msgstr "Zeitzone gesetzt" #: plinth/modules/deluge/__init__.py:39 -msgid "" -"BitTorrent Web Client \n" -" (Deluge)" +#, fuzzy +#| msgid "Enable Deluge" +msgid "Deluge" +msgstr "Deluge einschalten" + +#: plinth/modules/deluge/__init__.py:41 +#, fuzzy +#| msgid "" +#| "BitTorrent Web Client \n" +#| " (Deluge)" +msgid "BitTorrent Web Client" msgstr "" "BitTorrent Web Client\n" "(Deluge)" -#: plinth/modules/deluge/__init__.py:42 +#: plinth/modules/deluge/__init__.py:44 msgid "Deluge is a BitTorrent client that features a Web UI." msgstr "Deluge ist ein BitTorrent Client mit einer Web-Oberfläche." -#: plinth/modules/deluge/__init__.py:44 +#: plinth/modules/deluge/__init__.py:46 msgid "" "When enabled, the Deluge web client will be available from /deluge path on the web server. The default password is 'deluge', but " @@ -384,7 +406,15 @@ msgstr "Test" msgid "Result" msgstr "Ergebnis" -#: plinth/modules/diaspora/__init__.py:61 +#: plinth/modules/diaspora/__init__.py:51 +msgid "diaspora*" +msgstr "" + +#: plinth/modules/diaspora/__init__.py:53 +msgid "Federated Social Network" +msgstr "" + +#: plinth/modules/diaspora/__init__.py:62 msgid "" "diaspora* is a decentralized social network where you can store and control " "your own data." @@ -392,16 +422,9 @@ msgstr "" "diaspora* ist ein dezentrales soziales Netzwerk in dem Sie ihre Daten selbst " "speichern und kontrollieren." -#: plinth/modules/diaspora/forms.py:30 -msgid "Select the domain name to be used for diaspora*" -msgstr "Wähle den Domain-Namen für die Nutzung mit diaspora*" - -#: plinth/modules/diaspora/forms.py:32 -msgid "" -"Warning! Do not change the FreedomBox domain name after setting up diaspora*" +#: plinth/modules/diaspora/forms.py:31 +msgid "Enable new user registrations" msgstr "" -"Achtung! Ändern Sie ihre FreedomBox Domain nicht, nachdem sie diaspora* " -"konfiguriert haben" #: plinth/modules/diaspora/templates/diaspora-post-setup.html:32 #, python-format @@ -433,7 +456,25 @@ msgstr "" msgid "Update setup" msgstr "Installation aktualisieren" -#: plinth/modules/disks/__init__.py:33 plinth/modules/disks/views.py:39 +#: plinth/modules/diaspora/views.py:96 plinth/modules/ejabberd/views.py:60 +#: plinth/modules/openvpn/views.py:145 plinth/modules/tor/views.py:134 +#: plinth/views.py:112 +msgid "Setting unchanged" +msgstr "Einstellung unverändert" + +#: plinth/modules/diaspora/views.py:100 +#, fuzzy +#| msgid "Application enabled" +msgid "User registrations enabled" +msgstr "Anwendung aktiviert" + +#: plinth/modules/diaspora/views.py:104 +#, fuzzy +#| msgid "Application disabled" +msgid "User registrations disabled" +msgstr "Anwendung deaktiviert" + +#: plinth/modules/disks/__init__.py:33 plinth/modules/disks/views.py:45 msgid "Disks" msgstr "Speichermedium" @@ -479,7 +520,7 @@ msgstr "" #: plinth/modules/disks/templates/disks.html:90 #: plinth/modules/disks/templates/disks.html:102 #: plinth/modules/disks/templates/disks_expand.html:45 -#: plinth/modules/disks/views.py:56 +#: plinth/modules/disks/views.py:62 msgid "Expand Root Partition" msgstr "Erweitern der Root Partition" @@ -502,45 +543,52 @@ msgstr "" "Nach dieser Aktion werden %(expandable_root_size)s zusätzlicher " "Speicherplatz auf der Root-Partition verfügbar." -#: plinth/modules/disks/views.py:65 +#: plinth/modules/disks/views.py:71 #, python-brace-format msgid "Error expanding partition: {exception}" msgstr "Fehler beim Erweitern des Dateisystems: {exception}" -#: plinth/modules/disks/views.py:68 +#: plinth/modules/disks/views.py:74 msgid "Partition expanded successfully." msgstr "Partition erfolgreich vergrößert." -#: plinth/modules/disks/views.py:77 +#: plinth/modules/disks/views.py:93 +#, python-format, python-brace-format +msgid "" +"Warning: Low space on system partition ({percent_used}% used, {free_space} " +"free)." +msgstr "" + +#: plinth/modules/disks/views.py:130 #, python-brace-format msgid "{disk_size:.1f} bytes" msgstr "{disk_size:.1f} Bytes" -#: plinth/modules/disks/views.py:81 +#: plinth/modules/disks/views.py:134 #, python-brace-format msgid "{disk_size:.1f} KiB" msgstr "{disk_size:.1f} KiB" -#: plinth/modules/disks/views.py:85 +#: plinth/modules/disks/views.py:138 #, python-brace-format msgid "{disk_size:.1f} MiB" msgstr "{disk_size:.1f} MiB" -#: plinth/modules/disks/views.py:89 +#: plinth/modules/disks/views.py:142 #, python-brace-format msgid "{disk_size:.1f} GiB" msgstr "{disk_size:.1f} GiB" -#: plinth/modules/disks/views.py:92 +#: plinth/modules/disks/views.py:145 #, python-brace-format msgid "{disk_size:.1f} TiB" msgstr "{disk_size:.1f} TiB" -#: plinth/modules/dynamicdns/__init__.py:33 +#: plinth/modules/dynamicdns/__init__.py:35 msgid "Dynamic DNS Client" msgstr "Dynamischer DNS Client" -#: plinth/modules/dynamicdns/__init__.py:37 +#: plinth/modules/dynamicdns/__init__.py:39 #, python-brace-format msgid "" "If your Internet provider changes your IP address periodically (i.e. every " @@ -551,7 +599,7 @@ msgstr "" "B. alle 24 Stunden) kann es schwer sein im Netz gefunden zu werden. Andere " "können die laufenden Dienste von {box_name} dann nicht finden." -#: plinth/modules/dynamicdns/__init__.py:43 +#: plinth/modules/dynamicdns/__init__.py:45 msgid "" "The solution is to assign a DNS name to your IP address and update the DNS " "name every time your IP is changed by your Internet provider. Dynamic DNS " @@ -569,11 +617,18 @@ msgstr "" "verknüpfen und wenn jemand aus dem Internet nach Ihrem DNS Namen sucht " "erhält er die aktuelle IP-Adresse." -#: plinth/modules/dynamicdns/dynamicdns.py:35 plinth/modules/help/help.py:40 +#: plinth/modules/dynamicdns/__init__.py:67 +#: plinth/modules/dynamicdns/dynamicdns.py:377 +#, fuzzy +#| msgid "Dynamic DNS Client" +msgid "Dynamic DNS Service" +msgstr "Dynamischer DNS Client" + +#: plinth/modules/dynamicdns/dynamicdns.py:43 plinth/modules/help/help.py:40 msgid "About" msgstr "Über" -#: plinth/modules/dynamicdns/dynamicdns.py:39 +#: plinth/modules/dynamicdns/dynamicdns.py:47 #: plinth/modules/firewall/templates/firewall.html:47 #: plinth/modules/networks/templates/connection_show.html:261 #: plinth/modules/openvpn/templates/openvpn.html:67 @@ -582,7 +637,7 @@ msgstr "Über" msgid "Status" msgstr "Status" -#: plinth/modules/dynamicdns/dynamicdns.py:63 +#: plinth/modules/dynamicdns/dynamicdns.py:71 msgid "" "The Variables <User>, <Pass>, <Ip>, <Domain> may be " "used within the URL. For details see the update URL templates of the example " @@ -592,7 +647,7 @@ msgstr "" "in der URL verwendet werden. Beispiele sind in den update URLs der " "vorkonfigurierten Anbieter zu finden." -#: plinth/modules/dynamicdns/dynamicdns.py:67 +#: plinth/modules/dynamicdns/dynamicdns.py:75 msgid "" "Please choose an update protocol according to your provider. If your " "provider does not support the GnuDIP protocol or your provider is not listed " @@ -602,7 +657,7 @@ msgstr "" "Anbieter GnuDIP nicht unterstützt oder der Anbieter nicht aufgeführt ist, " "kann die Aktualisierungs-URL Ihres Anbieters verwendet werden." -#: plinth/modules/dynamicdns/dynamicdns.py:72 +#: plinth/modules/dynamicdns/dynamicdns.py:80 msgid "" "Please do not enter a URL here (like \"https://example.com/\") but only the " "hostname of the GnuDIP server (like \"example.com\")." @@ -610,20 +665,20 @@ msgstr "" "Bitte hier keine URL (wie \"https://example.com/\") eingeben, sondern nur " "den Hostnamen des GnuDIP Servers (wie \"example.com\")." -#: plinth/modules/dynamicdns/dynamicdns.py:76 +#: plinth/modules/dynamicdns/dynamicdns.py:84 #, python-brace-format msgid "The public domain name you want to use to reach your {box_name}." msgstr "" "Der öffentliche Domain-Name den Sie verwenden möchten um Ihre {box_name} zu " "erreichen." -#: plinth/modules/dynamicdns/dynamicdns.py:79 +#: plinth/modules/dynamicdns/dynamicdns.py:87 msgid "Use this option if your provider uses self signed certificates." msgstr "" "Verwenden Sie diese Option wenn Ihr Anbieter selbst-signierte Zertifikate " "verwendet." -#: plinth/modules/dynamicdns/dynamicdns.py:82 +#: plinth/modules/dynamicdns/dynamicdns.py:90 msgid "" "If this option is selected, your username and password will be used for HTTP " "basic authentication." @@ -632,12 +687,12 @@ msgstr "" "DNS Kontos auch zur HTTP Authentifizierung für die update URL verwendet " "werden." -#: plinth/modules/dynamicdns/dynamicdns.py:85 +#: plinth/modules/dynamicdns/dynamicdns.py:93 msgid "Leave this field empty if you want to keep your current password." msgstr "" "Lassen Sie dieses Feld leer wenn Sie das Passwort unverändert lassen möchten." -#: plinth/modules/dynamicdns/dynamicdns.py:88 +#: plinth/modules/dynamicdns/dynamicdns.py:96 #, python-brace-format msgid "" "Optional Value. If your {box_name} is not connected directly to the Internet " @@ -650,82 +705,82 @@ msgstr "" "wahre IP Adresse zu bestimmen. Die URL sollte nur die IP-Adresse des Clients " "liefern (zum Beispiel: http://myip.datasystems24.de)." -#: plinth/modules/dynamicdns/dynamicdns.py:96 +#: plinth/modules/dynamicdns/dynamicdns.py:104 msgid "The username that was used when the account was created." msgstr "Benutzername der beim Erstellen des Kontos gewählt wurde." -#: plinth/modules/dynamicdns/dynamicdns.py:107 +#: plinth/modules/dynamicdns/dynamicdns.py:115 msgid "Enable Dynamic DNS" msgstr "Dynamisches DNS einschalten" -#: plinth/modules/dynamicdns/dynamicdns.py:110 +#: plinth/modules/dynamicdns/dynamicdns.py:118 msgid "Service Type" msgstr "Typ des Dienstes" -#: plinth/modules/dynamicdns/dynamicdns.py:115 +#: plinth/modules/dynamicdns/dynamicdns.py:123 msgid "GnuDIP Server Address" msgstr "GnuDIP Server Adresse" -#: plinth/modules/dynamicdns/dynamicdns.py:120 +#: plinth/modules/dynamicdns/dynamicdns.py:128 msgid "Invalid server name" msgstr "Ungültiger Server Name" -#: plinth/modules/dynamicdns/dynamicdns.py:123 +#: plinth/modules/dynamicdns/dynamicdns.py:131 msgid "Update URL" msgstr "URL aktualisieren" -#: plinth/modules/dynamicdns/dynamicdns.py:127 +#: plinth/modules/dynamicdns/dynamicdns.py:135 msgid "Accept all SSL certificates" msgstr "Alle Zertifikate akzeptieren" -#: plinth/modules/dynamicdns/dynamicdns.py:131 +#: plinth/modules/dynamicdns/dynamicdns.py:139 msgid "Use HTTP basic authentication" msgstr "HTTP-Basisauthentifizierung verwenden" -#: plinth/modules/dynamicdns/dynamicdns.py:143 +#: plinth/modules/dynamicdns/dynamicdns.py:151 #: plinth/modules/networks/forms.py:228 plinth/modules/transmission/forms.py:37 msgid "Username" msgstr "Benutzername" -#: plinth/modules/dynamicdns/dynamicdns.py:146 +#: plinth/modules/dynamicdns/dynamicdns.py:154 #: plinth/modules/networks/forms.py:229 plinth/modules/transmission/forms.py:41 msgid "Password" msgstr "Passwort" -#: plinth/modules/dynamicdns/dynamicdns.py:149 +#: plinth/modules/dynamicdns/dynamicdns.py:157 #: plinth/modules/networks/forms.py:231 msgid "Show password" msgstr "Zeige Passwort" -#: plinth/modules/dynamicdns/dynamicdns.py:153 +#: plinth/modules/dynamicdns/dynamicdns.py:161 msgid "URL to look up public IP" msgstr "URL zum Holen der öffentlichen IP-Adresse" -#: plinth/modules/dynamicdns/dynamicdns.py:179 +#: plinth/modules/dynamicdns/dynamicdns.py:187 msgid "Please provide an update URL or a GnuDIP server address" msgstr "Bitte eine update URL oder einen GnuDIP Server angeben" -#: plinth/modules/dynamicdns/dynamicdns.py:184 +#: plinth/modules/dynamicdns/dynamicdns.py:192 msgid "Please provide a GnuDIP username" msgstr "Bitte einen GnuDIP Nutzernamen angeben" -#: plinth/modules/dynamicdns/dynamicdns.py:188 +#: plinth/modules/dynamicdns/dynamicdns.py:196 msgid "Please provide a GnuDIP domain name" msgstr "Bitte einen GnuDIP Domain-Namen angeben" -#: plinth/modules/dynamicdns/dynamicdns.py:193 +#: plinth/modules/dynamicdns/dynamicdns.py:201 msgid "Please provide a password" msgstr "Bitte ein Passwort angeben" -#: plinth/modules/dynamicdns/dynamicdns.py:211 +#: plinth/modules/dynamicdns/dynamicdns.py:219 msgid "Configure Dynamic DNS" msgstr "Dynamisches DNS konfigurieren" -#: plinth/modules/dynamicdns/dynamicdns.py:232 +#: plinth/modules/dynamicdns/dynamicdns.py:240 msgid "Dynamic DNS Status" msgstr "Status der Dynamischen DNS" -#: plinth/modules/dynamicdns/dynamicdns.py:364 +#: plinth/modules/dynamicdns/dynamicdns.py:381 #: plinth/modules/openvpn/views.py:143 plinth/modules/transmission/views.py:72 msgid "Configuration updated" msgstr "Konfiguration aktualisiert" @@ -798,15 +853,18 @@ msgstr "" msgid "Last update" msgstr "Letztes Update" -#: plinth/modules/ejabberd/__init__.py:42 -msgid "" -"Chat Server \n" -" (ejabberd)" -msgstr "" -"Chat Server\n" -"(ejabberd)" - #: plinth/modules/ejabberd/__init__.py:45 +msgid "ejabberd" +msgstr "" + +#: plinth/modules/ejabberd/__init__.py:47 +#: plinth/modules/matrixsynapse/__init__.py:43 +#, fuzzy +#| msgid "Web Server" +msgid "Chat Server" +msgstr "Web Server" + +#: plinth/modules/ejabberd/__init__.py:50 msgid "" "XMPP is an open and standardized communication protocol. Here you can run " "and configure your XMPP server, called ejabberd." @@ -814,11 +872,17 @@ msgstr "" "XMPP ist ein offenes und standardisiertes Kommunikationsprotokoll. Hier " "können Sie Ihren XMPP-Server, genannt ejabberd, starten und konfigurieren." -#: plinth/modules/ejabberd/__init__.py:48 +#: plinth/modules/ejabberd/__init__.py:54 +#, fuzzy, python-brace-format +#| msgid "" +#| "To actually communicate, you can use the web client or any other XMPP " +#| "client." msgid "" -"To actually communicate, you can use the web client or any other XMPP client." +"To actually communicate, you can use the web " +"client or any other XMPP client. When enabled, ejabberd can be accessed by " +"any user with a {box_name} login." msgstr "" "Zur Kommunikation können Sie den Web Client oder jeden anderen XMPP Client/ikiwiki." msgid "" "ikiwiki is a simple wiki and blog application. It supports several " "lightweight markup languages, including Markdown, and common blogging " "functionality such as comments and RSS feeds. When enabled, the blogs and " -"wikis will be available from /ikiwiki." +"wikis will be available at /ikiwiki (once created)." msgstr "" "ikiwiki ist eine einfache Wiki und Blog Anwendung. Es unterstützt mehrere " "leichtgewichtige markup Sprachen einschließlich Markdown und übliche " "Blogging Funktionen wie Kommentare und RSS Feeds. Wenn aktiviert, stehen die " "Blogs und Wikis unter /ikiwiki bereit." +#: plinth/modules/ikiwiki/__init__.py:53 +#, python-brace-format +msgid "" +"Only {box_name} users in the admin group can create and " +"manage blogs and wikis, but any user in the wiki group can " +"edit existing ones. In the User " +"Configuration you can change these permissions or add new users." +msgstr "" + #: plinth/modules/ikiwiki/forms.py:34 #: plinth/modules/networks/templates/connection_show.html:78 msgid "Name" @@ -1320,18 +1400,20 @@ msgid "Delete Wiki or Blog" msgstr "Lösche Wiki oder Blog" #: plinth/modules/infinoted/__init__.py:43 -msgid "" -"Gobby Server \n" -" (infinoted)" +msgid "infinoted" msgstr "" -"Gobby Server\n" -"(infinoted)" -#: plinth/modules/infinoted/__init__.py:46 +#: plinth/modules/infinoted/__init__.py:45 +#, fuzzy +#| msgid "Web Server" +msgid "Gobby Server" +msgstr "Web Server" + +#: plinth/modules/infinoted/__init__.py:48 msgid "infinoted is a server for Gobby, a collaborative text editor." msgstr "infinoted ist ein Server für Gobby, den collaborativen Text-Editor." -#: plinth/modules/infinoted/__init__.py:49 +#: plinth/modules/infinoted/__init__.py:51 #, python-brace-format msgid "" "To use it, download Gobby, desktop " @@ -1343,14 +1425,20 @@ msgstr "" "\"Verbinde mit Server\" und gib die Domain von {box_name} an." #: plinth/modules/jsxc/__init__.py:36 -msgid "" -"Chat Client \n" -" (JSXC)" +msgid "JSXC" +msgstr "" + +#: plinth/modules/jsxc/__init__.py:38 +#, fuzzy +#| msgid "" +#| "Chat Client \n" +#| " (JSXC)" +msgid "Chat Client" msgstr "" "Chat Client\n" "(JSXC)" -#: plinth/modules/jsxc/__init__.py:40 +#: plinth/modules/jsxc/__init__.py:42 msgid "" "JSXC is a web client for XMPP. Typically it is used with an XMPP server " "running locally." @@ -1358,7 +1446,7 @@ msgstr "" "JSXC ist ein XMPP Web-Client. Er wird meist mit einem lokalen XMPP-Server " "genutzt." -#: plinth/modules/jsxc/__init__.py:78 +#: plinth/modules/jsxc/__init__.py:80 msgid "" "Chat Client \n" " (jsxc)" @@ -1366,12 +1454,19 @@ msgstr "" "Chat Client\n" "(jsxc)" -#: plinth/modules/letsencrypt/__init__.py:39 -#: plinth/modules/letsencrypt/__init__.py:64 -msgid "Certificates (Let's Encrypt)" +#: plinth/modules/letsencrypt/__init__.py:40 +#, fuzzy +#| msgid "Certificates (Let's Encrypt)" +msgid "Let's Encrypt" msgstr "Zertifikate (Let's Encrypt)" -#: plinth/modules/letsencrypt/__init__.py:43 +#: plinth/modules/letsencrypt/__init__.py:42 +#, fuzzy +#| msgid "Certificate Status" +msgid "Certificates" +msgstr "Zertifikat-Status" + +#: plinth/modules/letsencrypt/__init__.py:46 #, python-brace-format msgid "" "A digital certificate allows users of a web service to verify the identity " @@ -1387,7 +1482,7 @@ msgstr "" "Zertifizierungsstelle Let's Encrypt nachweist der Inhaber einer Domain zu " "sein." -#: plinth/modules/letsencrypt/__init__.py:50 +#: plinth/modules/letsencrypt/__init__.py:53 msgid "" "Let's Encrypt is a free, automated, and open certificate authority, run for " "the public's benefit by the Internet Security Research Group (ISRG). Please " @@ -1417,52 +1512,102 @@ msgstr "Webseiten-Sicherheit" msgid "Actions" msgstr "Aktionen" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:56 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:62 #, python-format msgid "Valid, expires on %(expiry_date)s" msgstr "Gültig, verfällt am %(expiry_date)s" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:63 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:69 msgid "Revoked" msgstr "Widerrufen" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:67 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:73 #, python-format msgid "Expired on %(expiry_date)s" msgstr "Verfallen am %(expiry_date)s" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:71 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:77 msgid "Invalid test certificate" msgstr "Ungültiges Testzertifikat" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:75 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:81 #, python-format msgid "Invalid (%(reason)s)" msgstr "Ungültig (%(reason)s)" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:82 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:88 msgid "No certificate" msgstr "Kein Zertifikat" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:99 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:105 msgid "Re-obtain" msgstr "Wieder beziehen" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:105 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:111 #: plinth/modules/networks/templates/connection_show.html:63 #: plinth/modules/snapshot/templates/snapshot.html:34 msgid "Delete" msgstr "Löschen" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:112 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:118 msgid "Revoke" msgstr "Widerrufen" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:120 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:126 msgid "Obtain" msgstr "Beziehen" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:133 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:149 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:156 +#, fuzzy +#| msgid "Update" +msgid "Update config" +msgstr "Aktualisieren" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:161 +#, python-format +msgid "" +"\n" +" Let Plinth manage certificate renewal of\n" +" %(current_domain)s (recommended)\n" +" " +msgstr "" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:166 +msgid "" +"\n" +" Let Plinth manage certificate renewal of the current domain " +"(recommended)\n" +" " +msgstr "" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:175 +#, python-format +msgid "" +"If %(box_name)s manages the certificate renewal for the current domain, it " +"will ensure that all apps that use the certificate can use it, as soon as it " +"gets renewed." +msgstr "" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:181 +msgid "" +"No certificate available for the current domain. First obtain a " +"certificate to enable management of its renewal." +msgstr "" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:186 +#, fuzzy +#| msgid "" +#| "No domains have been configured. Configure domains to be able to obtain " +#| "certificates for them." +msgid "" +"No current domain is configured. First configure a domain to enable " +"management of its certificates." +msgstr "" +"Es wurden keine Domains konfiguriert. Um Zertifikate zu erstellen, müssen " +"Domains konfiguriert werden." + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:195 msgid "" "No domains have been configured. Configure domains to be able to obtain " "certificates for them." @@ -1470,7 +1615,7 @@ msgstr "" "Es wurden keine Domains konfiguriert. Um Zertifikate zu erstellen, müssen " "Domains konfiguriert werden." -#: plinth/modules/letsencrypt/views.py:55 +#: plinth/modules/letsencrypt/views.py:57 #, python-brace-format msgid "" "Certificate successfully revoked for domain {domain}.This may take a few " @@ -1479,40 +1624,73 @@ msgstr "" "Zertifikat erfolgreich widerrufen für Domain {domain}. Es kann einige " "Momente dauern bis dies in Kraft tritt." -#: plinth/modules/letsencrypt/views.py:61 +#: plinth/modules/letsencrypt/views.py:63 #, python-brace-format msgid "Failed to revoke certificate for domain {domain}: {error}" msgstr "Fehler beim Widerrufen des Zertifikats für Domain {domain}: {error}" -#: plinth/modules/letsencrypt/views.py:73 +#: plinth/modules/letsencrypt/views.py:75 #, python-brace-format msgid "Certificate successfully obtained for domain {domain}" msgstr "Zertifikat erfolgreich bezogen für Domain {domain}" -#: plinth/modules/letsencrypt/views.py:78 +#: plinth/modules/letsencrypt/views.py:81 #, python-brace-format msgid "Failed to obtain certificate for domain {domain}: {error}" msgstr "Fehler beim Beziehen des Zertifikats für Domain {domain}: {error}" #: plinth/modules/letsencrypt/views.py:90 +#: plinth/modules/letsencrypt/views.py:109 +#, fuzzy, python-brace-format +#| msgid "Certificate successfully deleted for domain {domain}" +msgid "Certificate renewal management enabled for {domain}." +msgstr "Zertifikat erfolgreich widerrufen für Domain {domain}" + +#: plinth/modules/letsencrypt/views.py:95 +#, fuzzy, python-brace-format +#| msgid "Failed to delete certificate for domain {domain}: {error}" +msgid "Failed to enable certificate renewal management for {domain}: {error}" +msgstr "Fehler beim Widerrufen des Zertifikats für Domain {domain}: {error}" + +#: plinth/modules/letsencrypt/views.py:112 +#, fuzzy, python-brace-format +#| msgid "Certificate successfully deleted for domain {domain}" +msgid "Certificate renewal management disabled for {domain}." +msgstr "Zertifikat erfolgreich widerrufen für Domain {domain}" + +#: plinth/modules/letsencrypt/views.py:118 +#, fuzzy, python-brace-format +#| msgid "Failed to obtain certificate for domain {domain}: {error}" +msgid "Failed to switch certificate renewal management for {domain}: {error}" +msgstr "Fehler beim Beziehen des Zertifikats für Domain {domain}: {error}" + +#: plinth/modules/letsencrypt/views.py:134 +#, fuzzy, python-brace-format +#| msgid "Failed to delete certificate for domain {domain}: {error}" +msgid "Failed to disable certificate renewal management for {domain}: {error}" +msgstr "Fehler beim Widerrufen des Zertifikats für Domain {domain}: {error}" + +#: plinth/modules/letsencrypt/views.py:141 #, python-brace-format msgid "Certificate successfully deleted for domain {domain}" msgstr "Zertifikat erfolgreich widerrufen für Domain {domain}" -#: plinth/modules/letsencrypt/views.py:95 +#: plinth/modules/letsencrypt/views.py:146 #, python-brace-format msgid "Failed to delete certificate for domain {domain}: {error}" msgstr "Fehler beim Widerrufen des Zertifikats für Domain {domain}: {error}" #: plinth/modules/matrixsynapse/__init__.py:41 -msgid "" -"Chat Server \n" -" (Matrix Synapse)" +#, fuzzy +#| msgid "" +#| "Chat Server \n" +#| " (Matrix Synapse)" +msgid "Matrix Synapse" msgstr "" "Chat Server\n" "(Matrix Synapse)" -#: plinth/modules/matrixsynapse/__init__.py:44 +#: plinth/modules/matrixsynapse/__init__.py:46 msgid "" "Matrix is an new " "ecosystem for open, federated instant messaging and VoIP. Synapse is a " @@ -1530,7 +1708,7 @@ msgstr "" "zwischen den Servern mit Nutzerkontos auf einem beliebigen anderen Server " "kommunizieren." -#: plinth/modules/matrixsynapse/__init__.py:52 +#: plinth/modules/matrixsynapse/__init__.py:54 msgid "" "To communicate, you can use the available clients for mobile, desktop and the web. Riot wird " "empfohlen." -#: plinth/modules/matrixsynapse/forms.py:31 -msgid "Select the domain name" -msgstr "Wähle den Domain Namen" - #: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:34 msgid "" "Matrix service needs to be configured for a domain. Users on other Matrix " @@ -1553,8 +1727,8 @@ msgid "" msgstr "" "Der Matrix-Dienst benötigt eine Domain für die Konfiguration. Benutzer von " "anderen Matrix-Servern können die Nutzer dieses Servers über diese Domain " -"erreichen. Matrix Nutzer-IDs werden aussehen wie " -"@Nutzername:Domainname." +"erreichen. Matrix Nutzer-IDs werden aussehen wie @Nutzername:Domainname." #: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:42 msgid "" @@ -1590,14 +1764,20 @@ msgstr "" "Domain nach der ersten Konfiguation werden derzeit nicht unterstützt." #: plinth/modules/minetest/__init__.py:48 -msgid "" -"Block Sandbox \n" -" (Minetest)" +msgid "Minetest" +msgstr "" + +#: plinth/modules/minetest/__init__.py:50 +#, fuzzy +#| msgid "" +#| "Block Sandbox \n" +#| " (Minetest)" +msgid "Block Sandbox" msgstr "" "Block-Sandkasten\n" "(Minetest)" -#: plinth/modules/minetest/__init__.py:52 +#: plinth/modules/minetest/__init__.py:54 #, python-brace-format msgid "" "Minetest is a multiplayer infinite-world block sandbox. This module enables " @@ -1742,7 +1922,7 @@ msgstr "Secure Shell" #: plinth/modules/monkeysphere/templates/monkeysphere.html:87 #: plinth/modules/monkeysphere/templates/monkeysphere_details.html:60 -#: plinth/service.py:117 +#: plinth/service.py:116 msgid "Web Server" msgstr "Web Server" @@ -1842,14 +2022,20 @@ msgid "Error occurred while publishing key." msgstr "Fehler beim Veröffentlichen des Schlüssels." #: plinth/modules/mumble/__init__.py:35 -msgid "" -"Voice Chat \n" -" (Mumble)" +msgid "Mumble" +msgstr "" + +#: plinth/modules/mumble/__init__.py:37 +#, fuzzy +#| msgid "" +#| "Voice Chat \n" +#| " (Mumble)" +msgid "Voice Chat" msgstr "" "Voice Chat\n" "(Mumble)" -#: plinth/modules/mumble/__init__.py:44 +#: plinth/modules/mumble/__init__.py:46 msgid "" "Mumble is an open source, low-latency, encrypted, high quality voice chat " "software." @@ -1857,7 +2043,7 @@ msgstr "" "Mumble ist eine hochwertige Open-Source Software für Telefonie und Chat, mit " "Verschlüsselung und geringer Latenz." -#: plinth/modules/mumble/__init__.py:47 +#: plinth/modules/mumble/__init__.py:49 msgid "" "You can connect to your Mumble server on the regular Mumble port 64738. Clients to connect to Mumble from your " @@ -2379,7 +2565,7 @@ msgid "This connection is not active." msgstr "Diese Verbindung ist nicht aktiv." #: plinth/modules/networks/templates/connection_show.html:266 -#: plinth/modules/security/__init__.py:32 plinth/modules/security/views.py:46 +#: plinth/modules/security/__init__.py:32 plinth/modules/security/views.py:48 msgid "Security" msgstr "Sicherheit" @@ -2487,14 +2673,22 @@ msgid "Inactive" msgstr "Inaktiv" #: plinth/modules/openvpn/__init__.py:42 -msgid "" -"Virtual Private Network \n" -" (OpenVPN)" +#, fuzzy +#| msgid "Open" +msgid "OpenVPN" +msgstr "Offen" + +#: plinth/modules/openvpn/__init__.py:44 +#, fuzzy +#| msgid "" +#| "Virtual Private Network \n" +#| " (OpenVPN)" +msgid "Virtual Private Network" msgstr "" "Virtuelles Privates Netzwerk \n" " (OpenVPN)" -#: plinth/modules/openvpn/__init__.py:46 +#: plinth/modules/openvpn/__init__.py:48 #, python-brace-format msgid "" "Virtual Private Network (VPN) is a technique for securely connecting two " @@ -2511,7 +2705,7 @@ msgstr "" "{box_name} erlangen. Sie können auch auf das Internet via {box_name} für " "zusätzliche Sicherheit und Anonymität zugreifen." -#: plinth/modules/openvpn/__init__.py:84 +#: plinth/modules/openvpn/__init__.py:86 #, python-brace-format msgid "" "Download Profile" @@ -2602,10 +2796,18 @@ msgid "Setup failed." msgstr "Einrichtung fehlgeschlagen." #: plinth/modules/pagekite/__init__.py:44 -msgid "Public Visibility (PageKite)" +#, fuzzy +#| msgid "Pagekite" +msgid "PageKite" +msgstr "Pagekite" + +#: plinth/modules/pagekite/__init__.py:46 +#, fuzzy +#| msgid "Public Visibility (PageKite)" +msgid "Public Visibility" msgstr "Öffentliche Sichtbarkeit (PageKite)" -#: plinth/modules/pagekite/__init__.py:48 +#: plinth/modules/pagekite/__init__.py:50 #, python-brace-format msgid "" "PageKite is a system for exposing {box_name} services when you don't have a " @@ -2618,19 +2820,19 @@ msgstr "" "die Dienste Ihrer {box_name} vom Internet nicht erreichbar sind. Dies " "umfasst die folgenden Situationen:" -#: plinth/modules/pagekite/__init__.py:55 +#: plinth/modules/pagekite/__init__.py:57 #, python-brace-format msgid "{box_name} is behind a restricted firewall." msgstr "{box_name} ist hinter einer eingeschränkten Firewall." -#: plinth/modules/pagekite/__init__.py:59 +#: plinth/modules/pagekite/__init__.py:61 #, python-brace-format msgid "{box_name} is connected to a (wireless) router which you don't control." msgstr "" "{box_name} ist mit einem (wireless) Router verbunden, den Sie nicht " "kontrollieren." -#: plinth/modules/pagekite/__init__.py:62 +#: plinth/modules/pagekite/__init__.py:64 msgid "" "Your ISP does not provide you an external IP address and instead provides " "Internet connection through NAT." @@ -2638,7 +2840,7 @@ msgstr "" "Ihr ISP bietet Ihnen keine externe IP-Adresse sondern statt dessen eine " "Internet-Verbindung über einen NAT." -#: plinth/modules/pagekite/__init__.py:65 +#: plinth/modules/pagekite/__init__.py:67 msgid "" "Your ISP does not provide you a static IP address and your IP address " "changes evertime you connect to Internet." @@ -2646,11 +2848,11 @@ msgstr "" "Ihr ISP bietet keine statische IP-Adresse und Ihre IP-Adresse ändert sich " "immer wenn Sie sich mit dem Internet verbinden." -#: plinth/modules/pagekite/__init__.py:68 +#: plinth/modules/pagekite/__init__.py:70 msgid "Your ISP limits incoming connections." msgstr "Ihr ISP limitiert eingehende Verbindungen." -#: plinth/modules/pagekite/__init__.py:71 +#: plinth/modules/pagekite/__init__.py:73 #, python-brace-format msgid "" "PageKite works around NAT, firewalls and IP-address limitations by using a " @@ -2953,8 +3155,8 @@ msgstr "Spezielle Dienste" msgid "Pagekite setup finished. The HTTP and HTTPS services are activated now." msgstr "Pagekite setup beendet. Die HTTP und HTTPS Dienste sind jetzt aktiv." -#: plinth/modules/power/__init__.py:28 plinth/modules/power/views.py:50 -#: plinth/modules/power/views.py:65 +#: plinth/modules/power/__init__.py:28 plinth/modules/power/views.py:51 +#: plinth/modules/power/views.py:67 msgid "Power" msgstr "Power" @@ -2963,10 +3165,22 @@ msgid "Restart or shut down the system." msgstr "Neu starten oder das System herunterfahren." #: plinth/modules/power/templates/power.html:28 +#, fuzzy +#| msgid "" +#| "Another installation or upgrade is already running. Please wait for a few " +#| "moments before trying again." +msgid "" +"Currently an installation or upgrade is running. Consider waiting until it's " +"finished before shutting down or restarting." +msgstr "" +"Derzeit läuft eine andere Installation oder Update. Bitte warten Sie einen " +"Moment bevor Sie es erneut versuchen." + +#: plinth/modules/power/templates/power.html:37 msgid "Restart »" msgstr "Neu starten »" -#: plinth/modules/power/templates/power.html:31 +#: plinth/modules/power/templates/power.html:40 msgid "Shut Down »" msgstr "Herunterfahren »" @@ -2979,7 +3193,20 @@ msgstr "" "Administrations-Oberfläche für einige Minuten nicht zugreifen können, bis " "das System wieder hochgefahren ist." -#: plinth/modules/power/templates/power_restart.html:42 +#: plinth/modules/power/templates/power_restart.html:38 +#, fuzzy +#| msgid "" +#| "Another installation or upgrade is already running. Please wait for a few " +#| "moments before trying again." +msgid "" +"Currently an installation or upgrade is running. Consider waiting until it's " +"finished before restarting." +msgstr "" +"Derzeit läuft eine andere Installation oder Update. Bitte warten Sie einen " +"Moment bevor Sie es erneut versuchen." + +#: plinth/modules/power/templates/power_restart.html:52 +#: plinth/modules/power/templates/power_restart.html:55 msgid "Restart Now" msgstr "Jetzt neu starten" @@ -2991,19 +3218,36 @@ msgstr "" "Sind Sie sicher, dass Sie herunterfahren möchten? Sie werden auf die Web-" "Administrations-Oberfläche anschließend keinen Zugriff mehr haben." -#: plinth/modules/power/templates/power_shutdown.html:41 +#: plinth/modules/power/templates/power_shutdown.html:37 +#, fuzzy +#| msgid "" +#| "Another installation or upgrade is already running. Please wait for a few " +#| "moments before trying again." +msgid "" +"Currently an installation or upgrade is running. Consider waiting until it's " +"finished before shutting down." +msgstr "" +"Derzeit läuft eine andere Installation oder Update. Bitte warten Sie einen " +"Moment bevor Sie es erneut versuchen." + +#: plinth/modules/power/templates/power_shutdown.html:51 +#: plinth/modules/power/templates/power_shutdown.html:54 msgid "Shut Down Now" msgstr "Jetzt herunterfahren" #: plinth/modules/privoxy/__init__.py:43 -msgid "" -"Web Proxy \n" -" (Privoxy)" -msgstr "" -"Web Proxy\n" -"(Privoxy)" +#, fuzzy +#| msgid "Enable Privoxy" +msgid "Privoxy" +msgstr "Privoxy einschalten" -#: plinth/modules/privoxy/__init__.py:46 +#: plinth/modules/privoxy/__init__.py:45 +#, fuzzy +#| msgid "Privoxy Web Proxy" +msgid "Web Proxy" +msgstr "Privoxy Web Proxy" + +#: plinth/modules/privoxy/__init__.py:48 msgid "" "Privoxy is a non-caching web proxy with advanced filtering capabilities for " "enhancing privacy, modifying web page data and HTTP headers, controlling " @@ -3014,7 +3258,7 @@ msgstr "" "kontrolliert den Zugang und entfernt Anzeigen und anderen abscheulichen " "Internet-Müll. " -#: plinth/modules/privoxy/__init__.py:52 +#: plinth/modules/privoxy/__init__.py:54 #, python-brace-format msgid "" "You can use Privoxy by modifying your browser proxy settings to your " @@ -3029,20 +3273,22 @@ msgstr "" "unter http://config.privoxy.org/ " "oder http://p.p einsehen." -#: plinth/modules/privoxy/__init__.py:144 +#: plinth/modules/privoxy/__init__.py:147 #, python-brace-format msgid "Access {url} with proxy {proxy} on tcp{kind}" msgstr "Zugang auf {url} über Proxy {proxy} auf TCP{kind}" #: plinth/modules/quassel/__init__.py:42 -msgid "" -"IRC Client \n" -" (Quassel)" +msgid "Quassel" msgstr "" -"IRC Client\n" -"(Quassel)" -#: plinth/modules/quassel/__init__.py:46 +#: plinth/modules/quassel/__init__.py:44 +#, fuzzy +#| msgid "Quassel IRC Client" +msgid "IRC Client" +msgstr "IRC Client Quassel" + +#: plinth/modules/quassel/__init__.py:48 #, python-brace-format msgid "" "Quassel is an IRC application that is split into two parts, a \"core\" and a " @@ -3060,7 +3306,7 @@ msgstr "" "einer mobilen App können verwendet werden, um sich mit ihm zu verbinden und " "oder zu trennen." -#: plinth/modules/quassel/__init__.py:54 +#: plinth/modules/quassel/__init__.py:56 msgid "" "You can connect to your Quassel core on the default Quassel port 4242. " "Clients to connect to Quassel from your mobile Telefone zur Verfügung." #: plinth/modules/radicale/__init__.py:43 -msgid "" -"Calendar and Addressbook \n" -" (Radicale)" +msgid "Radicale" +msgstr "" + +#: plinth/modules/radicale/__init__.py:45 +#, fuzzy +#| msgid "" +#| "Calendar and Addressbook \n" +#| " (Radicale)" +msgid "Calendar and Addressbook" msgstr "" "Kalender und Adressbuch\n" "(Radicale)" -#: plinth/modules/radicale/__init__.py:47 -#, python-brace-format +#: plinth/modules/radicale/__init__.py:49 +#, fuzzy, python-brace-format +#| msgid "" +#| "Radicale is a CalDAV and CardDAV server. It allows synchronization and " +#| "sharing of scheduling and contact data. To use Radicale, a " +#| "supported client application is needed. Radicale can be accessed by " +#| "any user with a {box_name} login." msgid "" "Radicale is a CalDAV and CardDAV server. It allows synchronization and " "sharing of scheduling and contact data. To use Radicale, a supported " -"client application is needed. Radicale can be accessed by any user with " -"a {box_name} login." +"radicale.org/clients/\">supported client application is needed. Radicale " +"can be accessed by any user with a {box_name} login." msgstr "" "Radicale ist ein CalDav und CarDAV server. Er ermöglicht das Synchronisieren " "und Teilen von Zeitplänen und Kontakt-Daten. Um Radicale zu nutzen ist eine " @@ -3120,14 +3377,16 @@ msgid "Access rights configuration updated" msgstr "Konfiguration der Zugangsrechte aktualisiert" #: plinth/modules/repro/__init__.py:38 -msgid "" -"SIP Server \n" -" (repro)" +msgid "repro" msgstr "" -"SIP Server\n" -"(repro)" -#: plinth/modules/repro/__init__.py:41 +#: plinth/modules/repro/__init__.py:40 +#, fuzzy +#| msgid "DNS Server" +msgid "SIP Server" +msgstr "DNS Server" + +#: plinth/modules/repro/__init__.py:43 msgid "" "repro provides various SIP services that a SIP softphone can utilize to " "provide audio and video calls as well as presence and instant messaging. " @@ -3142,7 +3401,7 @@ msgstr "" "als Proxy zu verbündeten SIP-Kommunikationen mit anderen Servern über das " "Internet ähnlich wie E-Mail." -#: plinth/modules/repro/__init__.py:48 +#: plinth/modules/repro/__init__.py:50 msgid "" "To make SIP calls, a client application is needed. Available clients include " "Jitsi (for computers) and CSipSimple (für Android-Telefone)." -#: plinth/modules/repro/__init__.py:53 +#: plinth/modules/repro/__init__.py:55 msgid "" "Note: Before using repro, domains and users will need to " "be configured using the web-based " @@ -3170,14 +3429,20 @@ msgstr "" "und aktivieren ihn wieder." #: plinth/modules/restore/__init__.py:36 -msgid "" -"Unhosted Storage \n" -" (reStore)" +msgid "reStore" +msgstr "reStore" + +#: plinth/modules/restore/__init__.py:38 +#, fuzzy +#| msgid "" +#| "Unhosted Storage \n" +#| " (reStore)" +msgid "Unhosted Storage" msgstr "" "Unhosted Speicher\n" "(reStore)" -#: plinth/modules/restore/__init__.py:40 +#: plinth/modules/restore/__init__.py:42 #, python-brace-format msgid "" "reStore is a server for unhosted web " @@ -3193,7 +3458,7 @@ msgstr "" "gespeichert werden. Mit reStore, wird Ihre {box_name} Ihr unhosted Speicher " "Dienst." -#: plinth/modules/restore/__init__.py:47 +#: plinth/modules/restore/__init__.py:49 msgid "" "You can create and edit accounts in the reStore web-" "interface." @@ -3202,14 +3467,22 @@ msgstr "" "a> anlegen und bearbeiten." #: plinth/modules/roundcube/__init__.py:35 -msgid "" -"Email Client \n" -" (Roundcube)" +#, fuzzy +#| msgid "Enable Roundcube" +msgid "Roundcube" +msgstr "Roundcube einschalten" + +#: plinth/modules/roundcube/__init__.py:37 +#, fuzzy +#| msgid "" +#| "Email Client \n" +#| " (Roundcube)" +msgid "Email Client" msgstr "" "Email Client\n" "(Roundcube)" -#: plinth/modules/roundcube/__init__.py:38 +#: plinth/modules/roundcube/__init__.py:40 msgid "" "Roundcube webmail is a browser-based multilingual IMAP client with an " "application-like user interface. It provides full functionality you expect " @@ -3222,7 +3495,7 @@ msgstr "" "wie zum Beispiel MIME Unterstützung, Adressbuch, Ordnerverwaltung, Suche in " "den Nachrichten und Rechtschreibprüfung." -#: plinth/modules/roundcube/__init__.py:44 +#: plinth/modules/roundcube/__init__.py:46 msgid "" "You can access Roundcube from /roundcube. Provide " "the username and password of the email account you wish to access followed " @@ -3236,7 +3509,7 @@ msgstr "" "imap.example.com. Für IMAP über SSL (empfohlen) verwenden Sie " "etwas wie imaps://imap.example.com." -#: plinth/modules/roundcube/__init__.py:51 +#: plinth/modules/roundcube/__init__.py:53 msgid "" "For Gmail, username will be your Gmail address, password will be your Google " "account password and server will be imaps://imap.gmail.com. " @@ -3267,28 +3540,45 @@ msgstr "" "in die Konsole oder per SSH anmelden. Anwender könnten möglicherweise über " "die Konsole auf manche Dienste ohne weitere Autorisierung zugreifen." -#: plinth/modules/security/views.py:63 +#: plinth/modules/security/forms.py:35 +msgid "Fail2ban (recommended)" +msgstr "" + +#: plinth/modules/security/forms.py:36 +msgid "" +"When this option is enabled, fail2ban will limit brute force break-in " +"attempts to the SSH server and other password protected internet-services " +"which are enabled." +msgstr "" + +#: plinth/modules/security/views.py:66 #, python-brace-format msgid "Error setting restricted access: {exception}" msgstr "Fehler beim Setzen des eingeschränkten Zugriffs: {exception}" -#: plinth/modules/security/views.py:66 +#: plinth/modules/security/views.py:69 msgid "Updated security configuration" msgstr "Sicherheits-Konfiguration aktualisiert" #: plinth/modules/shaarli/__init__.py:35 -msgid "" -"Bookmarks \n" -" (Shaarli)" +msgid "Shaarli" +msgstr "Shaarli" + +#: plinth/modules/shaarli/__init__.py:37 +#, fuzzy +#| msgid "" +#| "Bookmarks \n" +#| " (Shaarli)" +msgid "Bookmarks" msgstr "" "Lesezeichen\n" "(Shaarli)" -#: plinth/modules/shaarli/__init__.py:38 +#: plinth/modules/shaarli/__init__.py:40 msgid "Shaarli allows you to save and share bookmarks." msgstr "Shaarli ermöglicht das Speichern und Teilen von Lesezeichen." -#: plinth/modules/shaarli/__init__.py:40 +#: plinth/modules/shaarli/__init__.py:42 msgid "" "When enabled, Shaarli will be available from /shaarli path on the web server. Note that Shaarli only supports a single user " @@ -3420,6 +3710,18 @@ msgstr "" msgid "Rollback to Snapshot" msgstr "Zurücksetzen auf Speicherauszug" +#: plinth/modules/ssh/__init__.py:37 +msgid "Secure Shell (SSH) Server" +msgstr "Secure Shell (SSH) Server" + +#: plinth/modules/ssh/__init__.py:40 +msgid "" +"A Secure Shell server uses the secure shell protocol to accept connections " +"from remote computers. An authorized remote computer can perform " +"administration tasks, copy files or run other services using such " +"connections." +msgstr "" + #: plinth/modules/sso/__init__.py:30 msgid "Single Sign On" msgstr "Einmal-Anmeldung" @@ -3429,14 +3731,20 @@ msgid "Login" msgstr "Anmelden" #: plinth/modules/syncthing/__init__.py:39 -msgid "" -"File Synchronization \n" -" (Syncthing)" +msgid "Syncthing" +msgstr "" + +#: plinth/modules/syncthing/__init__.py:41 +#, fuzzy +#| msgid "" +#| "File Synchronization \n" +#| " (Syncthing)" +msgid "File Synchronization" msgstr "" "Datei Synchronisation \n" " (Syncthing)" -#: plinth/modules/syncthing/__init__.py:42 +#: plinth/modules/syncthing/__init__.py:44 msgid "" "Syncthing is an application to synchronize files across multiple devices, e." "g. your desktop computer and mobile phone. Creation, modification, or " @@ -3448,7 +3756,7 @@ msgstr "" "Löschen von Dateien auf einem Gerät wird automatisch auf allen anderen " "Geräten reproduziert, auf denen Syncthing läuft." -#: plinth/modules/syncthing/__init__.py:47 +#: plinth/modules/syncthing/__init__.py:49 #, python-brace-format msgid "" "Running Syncthing on {box_name} provides an extra synchronization point for " @@ -3466,7 +3774,7 @@ msgstr "" "mit unterschiedlichen Ordnern synchronisiert werden. Die Webschnittstelle " "auf {box_name} ist nur für Benutzer der \"admin\" Gruppe zugänglich." -#: plinth/modules/syncthing/__init__.py:54 +#: plinth/modules/syncthing/__init__.py:56 msgid "" "When enabled, Syncthing's web interface will be available from /syncthing. Desktop and mobile clients are also erhältlich." #: plinth/modules/tahoe/__init__.py:42 -msgid "Distributed File Storage (Tahoe-LAFS)" +msgid "Tahoe-LAFS" +msgstr "" + +#: plinth/modules/tahoe/__init__.py:44 +#, fuzzy +#| msgid "Distributed File Storage (Tahoe-LAFS)" +msgid "Distributed File Storage" msgstr "Verteilte Datei-Speicherung (Tahoe-LAFS)" -#: plinth/modules/tahoe/__init__.py:73 +#: plinth/modules/tahoe/__init__.py:75 msgid "" "Tahoe-LAFS is a decentralized secure file storage system. It uses provider " "independent security to store files over a distributed network of storage " @@ -3493,7 +3807,7 @@ msgstr "" "Knoten ausfallen, können Ihre Dateien von den restlichen Knoten " "wiederhergestellt werden." -#: plinth/modules/tahoe/__init__.py:78 +#: plinth/modules/tahoe/__init__.py:80 #, fuzzy, python-brace-format msgid "" "This {box_name} hosts a storage node and an introducer by default. " @@ -3546,7 +3860,17 @@ msgstr "Verbundene Vermittler" msgid "Remove" msgstr "Entfernen" -#: plinth/modules/tor/__init__.py:45 +#: plinth/modules/tor/__init__.py:42 +msgid "Tor" +msgstr "" + +#: plinth/modules/tor/__init__.py:44 +#, fuzzy +#| msgid "Tor Anonymity Network" +msgid "Anonymity Network" +msgstr "Tor Anonymisierungs-Netzwerk" + +#: plinth/modules/tor/__init__.py:47 msgid "" "Tor is an anonymous communication system. You can learn more about it from " "the Tor Project website. For " @@ -3560,36 +3884,36 @@ msgstr "" "Sie den Tor Browser verwenden." -#: plinth/modules/tor/__init__.py:70 plinth/modules/tor/__init__.py:112 +#: plinth/modules/tor/__init__.py:72 plinth/modules/tor/__init__.py:114 msgid "Tor Anonymity Network" msgstr "Tor Anonymisierungs-Netzwerk" -#: plinth/modules/tor/__init__.py:76 plinth/modules/tor/__init__.py:120 +#: plinth/modules/tor/__init__.py:78 plinth/modules/tor/__init__.py:122 msgid "Tor Bridge Relay" msgstr "Tor Bridge Relay" -#: plinth/modules/tor/__init__.py:98 plinth/modules/tor/__init__.py:141 +#: plinth/modules/tor/__init__.py:100 plinth/modules/tor/__init__.py:143 msgid "Tor Hidden Service" msgstr "Tor versteckte Dienste" -#: plinth/modules/tor/__init__.py:160 +#: plinth/modules/tor/__init__.py:162 msgid "Tor relay port available" msgstr "Tor relay Port ist verfügbar" -#: plinth/modules/tor/__init__.py:168 +#: plinth/modules/tor/__init__.py:170 msgid "Obfs3 transport registered" msgstr "Obfs3 Transport registriert" -#: plinth/modules/tor/__init__.py:174 +#: plinth/modules/tor/__init__.py:176 msgid "Obfs4 transport registered" msgstr "Obfs4 Transport registriert" -#: plinth/modules/tor/__init__.py:211 +#: plinth/modules/tor/__init__.py:213 #, python-brace-format msgid "Access URL {url} on tcp{kind} via Tor" msgstr "Zugangs-URL {url} auf TCP{kind} über Tor" -#: plinth/modules/tor/__init__.py:222 +#: plinth/modules/tor/__init__.py:224 #, python-brace-format msgid "Confirm Tor usage at {url} on tcp{kind}" msgstr "Bestätige Tor-Nutzung auf {url} über TCP{kind}" @@ -3762,14 +4086,18 @@ msgid "An error occurred during configuration." msgstr "Ein Fehler ist bei der Konfiguration aufgetreten." #: plinth/modules/transmission/__init__.py:38 -msgid "" -"BitTorrent \n" -" (Transmission)" -msgstr "" -"BitTorrent\n" -"(Transmission)" +#, fuzzy +#| msgid "Transmission BitTorrent" +msgid "Transmission" +msgstr "Transmission BitTorrent" -#: plinth/modules/transmission/__init__.py:41 +#: plinth/modules/transmission/__init__.py:40 +#, fuzzy +#| msgid "Deluge BitTorrent" +msgid "BitTorrent" +msgstr "Deluge BitTorrent" + +#: plinth/modules/transmission/__init__.py:43 msgid "" "BitTorrent is a peer-to-peer file sharing protocol. Transmission daemon " "handles Bitorrent file sharing. Note that BitTorrent is not anonymous." @@ -3778,7 +4106,7 @@ msgstr "" "Transmission-Daemon verarbeitet BitTorrent Dateien. Es gilt zu beachten! " "BitTorrent ist nicht anonym!" -#: plinth/modules/transmission/__init__.py:44 +#: plinth/modules/transmission/__init__.py:46 msgid "" "Access the web interface at /transmission." msgstr "" @@ -3812,15 +4140,21 @@ msgstr "" "in hashform dargestellt. Um das neue Passwort zu setzen muss dieses im " "Klartext eingegeben werden." -#: plinth/modules/ttrss/__init__.py:37 -msgid "" -"News Feed Reader \n" -" (Tiny Tiny RSS)" +#: plinth/modules/ttrss/__init__.py:39 +msgid "Tiny Tiny RSS" +msgstr "" + +#: plinth/modules/ttrss/__init__.py:41 +#, fuzzy +#| msgid "" +#| "News Feed Reader \n" +#| " (Tiny Tiny RSS)" +msgid "News Feed Reader" msgstr "" "Feedreader \n" "(Tiny Tiny RSS)" -#: plinth/modules/ttrss/__init__.py:40 +#: plinth/modules/ttrss/__init__.py:44 msgid "" "Tiny Tiny RSS is a news feed (RSS/Atom) reader and aggregator, designed to " "allow reading news from any location, while feeling as close to a real " @@ -3829,10 +4163,15 @@ msgstr "" "Tiny Tiny RSS ist ein Feedreader (RSS/ATOM) der von jedem Browser aus " "genutzt werden kann, sich aber sehr wie eine native Applikation verhält." -#: plinth/modules/ttrss/__init__.py:44 +#: plinth/modules/ttrss/__init__.py:49 +#, fuzzy, python-brace-format +#| msgid "" +#| "When enabled, Tiny Tiny RSS will be available from /" +#| "tt-rss path on the web server." msgid "" "When enabled, Tiny Tiny RSS will be available from /tt-" -"rss path on the web server." +"rss path on the web server. It can be accessed by any user with a {box_name} login." msgstr "" "Nach Aktivierung, steht Tiny Tiny RSS über die URL /tt-" "rss des Webservers zur Verfügung." @@ -4154,15 +4493,11 @@ msgstr "Medienwechsel" msgid "configuration file: {file}" msgstr "Konfigurationsdatei: {file}" -#: plinth/service.py:119 +#: plinth/service.py:118 msgid "Web Server over Secure Socket Layer" msgstr "Web-Server mit Verschlüsselung" -#: plinth/service.py:121 -msgid "Secure Shell (SSH) Server" -msgstr "Secure Shell (SSH) Server" - -#: plinth/service.py:123 +#: plinth/service.py:120 #, python-brace-format msgid "{box_name} Web Interface (Plinth)" msgstr "{box_name} Web-Oberfläche (Plinth)" @@ -4215,11 +4550,11 @@ msgstr "" "können. Fügen sie auch das Statusprotokoll dem Fehlerbericht bei." -#: plinth/templates/apps.html:25 +#: plinth/templates/apps.html:33 msgid "Services and Applications" msgstr "Dienste und Anwendungen" -#: plinth/templates/apps.html:28 +#: plinth/templates/apps.html:36 #, python-format msgid "" "You can install and run various services and applications on your " @@ -4230,7 +4565,7 @@ msgstr "" "installieren. Klicken Sie auf der linken Seite eine Anwendung an, um eine " "Beschreibung zu lesen und sie zur Installation aus zu wählen." -#: plinth/templates/apps.html:36 +#: plinth/templates/apps.html:44 msgid "" "This box can be your photo sharing site, your instant messaging site, your " "social networking site, your news site. Remember web portals? We can be " @@ -4407,16 +4742,16 @@ msgstr "Installiere %(package_names)s: %(status)s" msgid "%(percentage)s%% complete" msgstr "%(percentage)s%% abgeschlossen" -#: plinth/templates/system.html:25 +#: plinth/templates/system.html:33 msgid "System Configuration" msgstr "System-Konfiguration" -#: plinth/templates/system.html:28 +#: plinth/templates/system.html:36 #, python-format msgid "Here you can administrate the underlying system of your %(box_name)s." msgstr "Hier können Sie das Basissystem Ihrer %(box_name)s verwalten." -#: plinth/templates/system.html:34 +#: plinth/templates/system.html:42 #, python-format msgid "" "The options affect the %(box_name)s at its most general level, so be careful!" @@ -4424,6 +4759,64 @@ msgstr "" "Diese Optionen beeinflussen die Funktionen der %(box_name)s auf grundlegende " "Art und Weise, seien Sie sorgsam!" +#~ msgid "Select the domain name to be used for diaspora*" +#~ msgstr "Wähle den Domain-Namen für die Nutzung mit diaspora*" + +#~ msgid "" +#~ "Warning! Do not change the FreedomBox domain name after setting up " +#~ "diaspora*" +#~ msgstr "" +#~ "Achtung! Ändern Sie ihre FreedomBox Domain nicht, nachdem sie diaspora* " +#~ "konfiguriert haben" + +#~ msgid "" +#~ "Chat Server \n" +#~ " (ejabberd)" +#~ msgstr "" +#~ "Chat Server\n" +#~ "(ejabberd)" + +#~ msgid "Wiki and Blog (ikiwiki)" +#~ msgstr "Wiki und Blog (ikiwiki)" + +#~ msgid "" +#~ "Gobby Server \n" +#~ " (infinoted)" +#~ msgstr "" +#~ "Gobby Server\n" +#~ "(infinoted)" + +#~ msgid "Select the domain name" +#~ msgstr "Wähle den Domain Namen" + +#~ msgid "" +#~ "Web Proxy \n" +#~ " (Privoxy)" +#~ msgstr "" +#~ "Web Proxy\n" +#~ "(Privoxy)" + +#~ msgid "" +#~ "IRC Client \n" +#~ " (Quassel)" +#~ msgstr "" +#~ "IRC Client\n" +#~ "(Quassel)" + +#~ msgid "" +#~ "SIP Server \n" +#~ " (repro)" +#~ msgstr "" +#~ "SIP Server\n" +#~ "(repro)" + +#~ msgid "" +#~ "BitTorrent \n" +#~ " (Transmission)" +#~ msgstr "" +#~ "BitTorrent\n" +#~ "(Transmission)" + #~ msgid "Applications" #~ msgstr "Anwendungen" @@ -4633,12 +5026,6 @@ msgstr "" #~ msgid "BitTorrent (Deluge)" #~ msgstr "BitTorrent (Deluge)" -#~ msgid "Deluge BitTorrent" -#~ msgstr "Deluge BitTorrent" - -#~ msgid "Enable Deluge" -#~ msgstr "Deluge einschalten" - #~ msgid "System Diagnostics" #~ msgstr "System-Diagnose" @@ -4660,10 +5047,6 @@ msgstr "" #~ msgid "Enable ikiwiki" #~ msgstr "ikiwiki einschalten" -#~| msgid "Wiki & Blog" -#~ msgid "Wiki and Blog" -#~ msgstr "Wiki und Blog" - #~ msgid "Generate PGP Key" #~ msgstr "Generiere PGP Schlüssel" @@ -4693,15 +5076,6 @@ msgstr "" #~ "SSH mit dem Standardpasswort für 'fbx' exponieren ist eine SEHR SCHLECHTE " #~ "Idee." -#~ msgid "Privoxy Web Proxy" -#~ msgstr "Privoxy Web Proxy" - -#~ msgid "Enable Privoxy" -#~ msgstr "Privoxy einschalten" - -#~ msgid "Quassel IRC Client" -#~ msgstr "IRC Client Quassel" - #~ msgid "Enable Quassel core service" #~ msgstr "Quassel-Kern einschalten" @@ -4713,15 +5087,6 @@ msgstr "" #~ msgid "Enable repro service" #~ msgstr "repro Dienst einschalten" -#~ msgid "reStore" -#~ msgstr "reStore" - -#~ msgid "Enable Roundcube" -#~ msgstr "Roundcube einschalten" - -#~ msgid "Shaarli" -#~ msgstr "Shaarli" - #~ msgid "Enable Shaarli" #~ msgstr "Shaarli einschalten" @@ -4731,9 +5096,6 @@ msgstr "" #~ msgid "Tor Control Panel" #~ msgstr "Tor Kontrollpult" -#~ msgid "Transmission BitTorrent" -#~ msgstr "Transmission BitTorrent" - #~ msgid "Enable Transmission daemon" #~ msgstr "Transmission daemon einschalten" diff --git a/plinth/locale/django.pot b/plinth/locale/django.pot index 69bb006f2..f6765a1c4 100644 --- a/plinth/locale/django.pot +++ b/plinth/locale/django.pot @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2017-07-10 22:56-0400\n" +"POT-Creation-Date: 2017-09-24 11:24-0400\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -17,37 +17,37 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -#: plinth/action_utils.py:254 +#: plinth/action_utils.py:259 #, python-brace-format msgid "Listening on {kind} port {listen_address}:{port}" msgstr "" -#: plinth/action_utils.py:257 +#: plinth/action_utils.py:262 #, python-brace-format msgid "Listening on {kind} port {port}" msgstr "" -#: plinth/action_utils.py:352 +#: plinth/action_utils.py:357 #, python-brace-format msgid "Access URL {url} on tcp{kind}" msgstr "" -#: plinth/action_utils.py:356 +#: plinth/action_utils.py:361 #, python-brace-format msgid "Access URL {url}" msgstr "" -#: plinth/action_utils.py:386 +#: plinth/action_utils.py:391 #, python-brace-format msgid "Connect to {host}:{port}" msgstr "" -#: plinth/action_utils.py:389 +#: plinth/action_utils.py:394 #, python-brace-format msgid "Cannot connect to {host}:{port}" msgstr "" -#: plinth/context_processors.py:38 plinth/views.py:49 +#: plinth/context_processors.py:38 plinth/views.py:52 msgid "FreedomBox" msgstr "" @@ -56,7 +56,13 @@ msgid "Enable application" msgstr "" #: plinth/forms.py:45 -msgid "Select the domain name to be used for this application" +msgid "Select a domain name to be used with this application" +msgstr "" + +#: plinth/forms.py:47 +msgid "" +"Warning! The application may not work properly if domain name is changed " +"later." msgstr "" #: plinth/middleware.py:71 @@ -89,19 +95,21 @@ msgid "" msgstr "" #: plinth/modules/bind/__init__.py:34 -msgid "" -"Domain Name Server \n" -" (BIND)" +msgid "BIND" msgstr "" -#: plinth/modules/bind/__init__.py:43 +#: plinth/modules/bind/__init__.py:36 +msgid "Domain Name Server" +msgstr "" + +#: plinth/modules/bind/__init__.py:45 msgid "" "BIND is open source software that enables you to publish your Domain Name " "System (DNS) information on the Internet, and to resolve DNS queries for " "your users." msgstr "" -#: plinth/modules/bind/__init__.py:47 +#: plinth/modules/bind/__init__.py:49 msgid "" "BIND is by far the most widely used DNS software on the Internet, providing " "a robust and stable platform on top of which organizations can build " @@ -146,7 +154,7 @@ msgid "Enable forwarding to set forwarding DNS servers" msgstr "" #: plinth/modules/config/config.py:88 plinth/modules/config/config.py:125 -#: plinth/modules/dynamicdns/dynamicdns.py:140 +#: plinth/modules/dynamicdns/dynamicdns.py:148 msgid "Invalid domain name" msgstr "" @@ -169,7 +177,7 @@ msgstr "" #: plinth/modules/config/config.py:112 plinth/modules/config/config.py:169 #: plinth/modules/config/config.py:285 -#: plinth/modules/dynamicdns/dynamicdns.py:135 +#: plinth/modules/dynamicdns/dynamicdns.py:143 msgid "Domain Name" msgstr "" @@ -193,7 +201,7 @@ msgid "Language for this web administration interface" msgstr "" #: plinth/modules/config/config.py:151 -#: plinth/modules/dynamicdns/dynamicdns.py:37 +#: plinth/modules/dynamicdns/dynamicdns.py:45 #: plinth/modules/ikiwiki/views.py:37 #: plinth/modules/tahoe/templates/tahoe-pre-setup.html:39 msgid "Configure" @@ -273,16 +281,18 @@ msgid "Time zone set" msgstr "" #: plinth/modules/deluge/__init__.py:39 -msgid "" -"BitTorrent Web Client \n" -" (Deluge)" +msgid "Deluge" msgstr "" -#: plinth/modules/deluge/__init__.py:42 -msgid "Deluge is a BitTorrent client that features a Web UI." +#: plinth/modules/deluge/__init__.py:41 +msgid "BitTorrent Web Client" msgstr "" #: plinth/modules/deluge/__init__.py:44 +msgid "Deluge is a BitTorrent client that features a Web UI." +msgstr "" + +#: plinth/modules/deluge/__init__.py:46 msgid "" "When enabled, the Deluge web client will be available from /deluge path on the web server. The default password is 'deluge', but " @@ -343,19 +353,22 @@ msgstr "" msgid "Result" msgstr "" -#: plinth/modules/diaspora/__init__.py:61 +#: plinth/modules/diaspora/__init__.py:51 +msgid "diaspora*" +msgstr "" + +#: plinth/modules/diaspora/__init__.py:53 +msgid "Federated Social Network" +msgstr "" + +#: plinth/modules/diaspora/__init__.py:62 msgid "" "diaspora* is a decentralized social network where you can store and control " "your own data." msgstr "" -#: plinth/modules/diaspora/forms.py:30 -msgid "Select the domain name to be used for diaspora*" -msgstr "" - -#: plinth/modules/diaspora/forms.py:32 -msgid "" -"Warning! Do not change the FreedomBox domain name after setting up diaspora*" +#: plinth/modules/diaspora/forms.py:31 +msgid "Enable new user registrations" msgstr "" #: plinth/modules/diaspora/templates/diaspora-post-setup.html:32 @@ -382,7 +395,21 @@ msgstr "" msgid "Update setup" msgstr "" -#: plinth/modules/disks/__init__.py:33 plinth/modules/disks/views.py:39 +#: plinth/modules/diaspora/views.py:96 plinth/modules/ejabberd/views.py:60 +#: plinth/modules/openvpn/views.py:145 plinth/modules/tor/views.py:134 +#: plinth/views.py:112 +msgid "Setting unchanged" +msgstr "" + +#: plinth/modules/diaspora/views.py:100 +msgid "User registrations enabled" +msgstr "" + +#: plinth/modules/diaspora/views.py:104 +msgid "User registrations disabled" +msgstr "" + +#: plinth/modules/disks/__init__.py:33 plinth/modules/disks/views.py:45 msgid "Disks" msgstr "" @@ -424,7 +451,7 @@ msgstr "" #: plinth/modules/disks/templates/disks.html:90 #: plinth/modules/disks/templates/disks.html:102 #: plinth/modules/disks/templates/disks_expand.html:45 -#: plinth/modules/disks/views.py:56 +#: plinth/modules/disks/views.py:62 msgid "Expand Root Partition" msgstr "" @@ -442,45 +469,52 @@ msgid "" "root partition." msgstr "" -#: plinth/modules/disks/views.py:65 +#: plinth/modules/disks/views.py:71 #, python-brace-format msgid "Error expanding partition: {exception}" msgstr "" -#: plinth/modules/disks/views.py:68 +#: plinth/modules/disks/views.py:74 msgid "Partition expanded successfully." msgstr "" -#: plinth/modules/disks/views.py:77 +#: plinth/modules/disks/views.py:93 +#, python-format, python-brace-format +msgid "" +"Warning: Low space on system partition ({percent_used}% used, {free_space} " +"free)." +msgstr "" + +#: plinth/modules/disks/views.py:130 #, python-brace-format msgid "{disk_size:.1f} bytes" msgstr "" -#: plinth/modules/disks/views.py:81 +#: plinth/modules/disks/views.py:134 #, python-brace-format msgid "{disk_size:.1f} KiB" msgstr "" -#: plinth/modules/disks/views.py:85 +#: plinth/modules/disks/views.py:138 #, python-brace-format msgid "{disk_size:.1f} MiB" msgstr "" -#: plinth/modules/disks/views.py:89 +#: plinth/modules/disks/views.py:142 #, python-brace-format msgid "{disk_size:.1f} GiB" msgstr "" -#: plinth/modules/disks/views.py:92 +#: plinth/modules/disks/views.py:145 #, python-brace-format msgid "{disk_size:.1f} TiB" msgstr "" -#: plinth/modules/dynamicdns/__init__.py:33 +#: plinth/modules/dynamicdns/__init__.py:35 msgid "Dynamic DNS Client" msgstr "" -#: plinth/modules/dynamicdns/__init__.py:37 +#: plinth/modules/dynamicdns/__init__.py:39 #, python-brace-format msgid "" "If your Internet provider changes your IP address periodically (i.e. every " @@ -488,7 +522,7 @@ msgid "" "prevent others from finding services which are provided by this {box_name}." msgstr "" -#: plinth/modules/dynamicdns/__init__.py:43 +#: plinth/modules/dynamicdns/__init__.py:45 msgid "" "The solution is to assign a DNS name to your IP address and update the DNS " "name every time your IP is changed by your Internet provider. Dynamic DNS " @@ -499,11 +533,16 @@ msgid "" "IP address." msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:35 plinth/modules/help/help.py:40 +#: plinth/modules/dynamicdns/__init__.py:67 +#: plinth/modules/dynamicdns/dynamicdns.py:377 +msgid "Dynamic DNS Service" +msgstr "" + +#: plinth/modules/dynamicdns/dynamicdns.py:43 plinth/modules/help/help.py:40 msgid "About" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:39 +#: plinth/modules/dynamicdns/dynamicdns.py:47 #: plinth/modules/firewall/templates/firewall.html:47 #: plinth/modules/networks/templates/connection_show.html:261 #: plinth/modules/openvpn/templates/openvpn.html:67 @@ -512,46 +551,46 @@ msgstr "" msgid "Status" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:63 +#: plinth/modules/dynamicdns/dynamicdns.py:71 msgid "" "The Variables <User>, <Pass>, <Ip>, <Domain> may be " "used within the URL. For details see the update URL templates of the example " "providers." msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:67 +#: plinth/modules/dynamicdns/dynamicdns.py:75 msgid "" "Please choose an update protocol according to your provider. If your " "provider does not support the GnuDIP protocol or your provider is not listed " "you may use the update URL of your provider." msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:72 +#: plinth/modules/dynamicdns/dynamicdns.py:80 msgid "" "Please do not enter a URL here (like \"https://example.com/\") but only the " "hostname of the GnuDIP server (like \"example.com\")." msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:76 +#: plinth/modules/dynamicdns/dynamicdns.py:84 #, python-brace-format msgid "The public domain name you want to use to reach your {box_name}." msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:79 +#: plinth/modules/dynamicdns/dynamicdns.py:87 msgid "Use this option if your provider uses self signed certificates." msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:82 +#: plinth/modules/dynamicdns/dynamicdns.py:90 msgid "" "If this option is selected, your username and password will be used for HTTP " "basic authentication." msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:85 +#: plinth/modules/dynamicdns/dynamicdns.py:93 msgid "Leave this field empty if you want to keep your current password." msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:88 +#: plinth/modules/dynamicdns/dynamicdns.py:96 #, python-brace-format msgid "" "Optional Value. If your {box_name} is not connected directly to the Internet " @@ -560,82 +599,82 @@ msgid "" "(example: http://myip.datasystems24.de)." msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:96 +#: plinth/modules/dynamicdns/dynamicdns.py:104 msgid "The username that was used when the account was created." msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:107 +#: plinth/modules/dynamicdns/dynamicdns.py:115 msgid "Enable Dynamic DNS" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:110 +#: plinth/modules/dynamicdns/dynamicdns.py:118 msgid "Service Type" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:115 +#: plinth/modules/dynamicdns/dynamicdns.py:123 msgid "GnuDIP Server Address" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:120 +#: plinth/modules/dynamicdns/dynamicdns.py:128 msgid "Invalid server name" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:123 +#: plinth/modules/dynamicdns/dynamicdns.py:131 msgid "Update URL" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:127 +#: plinth/modules/dynamicdns/dynamicdns.py:135 msgid "Accept all SSL certificates" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:131 +#: plinth/modules/dynamicdns/dynamicdns.py:139 msgid "Use HTTP basic authentication" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:143 +#: plinth/modules/dynamicdns/dynamicdns.py:151 #: plinth/modules/networks/forms.py:228 plinth/modules/transmission/forms.py:37 msgid "Username" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:146 +#: plinth/modules/dynamicdns/dynamicdns.py:154 #: plinth/modules/networks/forms.py:229 plinth/modules/transmission/forms.py:41 msgid "Password" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:149 +#: plinth/modules/dynamicdns/dynamicdns.py:157 #: plinth/modules/networks/forms.py:231 msgid "Show password" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:153 +#: plinth/modules/dynamicdns/dynamicdns.py:161 msgid "URL to look up public IP" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:179 +#: plinth/modules/dynamicdns/dynamicdns.py:187 msgid "Please provide an update URL or a GnuDIP server address" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:184 +#: plinth/modules/dynamicdns/dynamicdns.py:192 msgid "Please provide a GnuDIP username" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:188 +#: plinth/modules/dynamicdns/dynamicdns.py:196 msgid "Please provide a GnuDIP domain name" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:193 +#: plinth/modules/dynamicdns/dynamicdns.py:201 msgid "Please provide a password" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:211 +#: plinth/modules/dynamicdns/dynamicdns.py:219 msgid "Configure Dynamic DNS" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:232 +#: plinth/modules/dynamicdns/dynamicdns.py:240 msgid "Dynamic DNS Status" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:364 +#: plinth/modules/dynamicdns/dynamicdns.py:381 #: plinth/modules/openvpn/views.py:143 plinth/modules/transmission/views.py:72 msgid "Configuration updated" msgstr "" @@ -690,23 +729,28 @@ msgstr "" msgid "Last update" msgstr "" -#: plinth/modules/ejabberd/__init__.py:42 -msgid "" -"Chat Server \n" -" (ejabberd)" +#: plinth/modules/ejabberd/__init__.py:45 +msgid "ejabberd" msgstr "" -#: plinth/modules/ejabberd/__init__.py:45 +#: plinth/modules/ejabberd/__init__.py:47 +#: plinth/modules/matrixsynapse/__init__.py:43 +msgid "Chat Server" +msgstr "" + +#: plinth/modules/ejabberd/__init__.py:50 msgid "" "XMPP is an open and standardized communication protocol. Here you can run " "and configure your XMPP server, called ejabberd." msgstr "" -#: plinth/modules/ejabberd/__init__.py:48 +#: plinth/modules/ejabberd/__init__.py:54 +#, python-brace-format msgid "" -"To actually communicate, you can use the web client or any other XMPP client." +"To actually communicate, you can use the web " +"client or any other XMPP client. When enabled, ejabberd can be accessed by " +"any user with a {box_name} login." msgstr "" #: plinth/modules/ejabberd/forms.py:33 @@ -744,16 +788,11 @@ msgstr "" msgid "Configuration" msgstr "" -#: plinth/modules/ejabberd/views.py:60 plinth/modules/openvpn/views.py:145 -#: plinth/modules/tor/views.py:134 plinth/views.py:103 -msgid "Setting unchanged" -msgstr "" - -#: plinth/modules/ejabberd/views.py:64 plinth/views.py:107 +#: plinth/modules/ejabberd/views.py:64 plinth/views.py:116 msgid "Application enabled" msgstr "" -#: plinth/modules/ejabberd/views.py:67 plinth/views.py:110 +#: plinth/modules/ejabberd/views.py:67 plinth/views.py:119 msgid "Application disabled" msgstr "" @@ -799,13 +838,13 @@ msgid "Service/Port" msgstr "" #: plinth/modules/firewall/templates/firewall.html:65 -#: plinth/modules/letsencrypt/templates/letsencrypt.html:88 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:94 #: plinth/modules/names/templates/names.html:49 msgid "Enabled" msgstr "" #: plinth/modules/firewall/templates/firewall.html:68 -#: plinth/modules/letsencrypt/templates/letsencrypt.html:90 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:96 #: plinth/modules/names/templates/names.html:51 #: plinth/modules/networks/forms.py:63 msgid "Disabled" @@ -1016,16 +1055,29 @@ msgid "" "before submitting the bug report." msgstr "" -#: plinth/modules/ikiwiki/__init__.py:39 -msgid "Wiki and Blog (ikiwiki)" +#: plinth/modules/ikiwiki/__init__.py:41 +msgid "ikiwiki" msgstr "" -#: plinth/modules/ikiwiki/__init__.py:42 +#: plinth/modules/ikiwiki/__init__.py:43 +msgid "Wiki and Blog" +msgstr "" + +#: plinth/modules/ikiwiki/__init__.py:46 msgid "" "ikiwiki is a simple wiki and blog application. It supports several " "lightweight markup languages, including Markdown, and common blogging " "functionality such as comments and RSS feeds. When enabled, the blogs and " -"wikis will be available from /ikiwiki." +"wikis will be available at /ikiwiki (once created)." +msgstr "" + +#: plinth/modules/ikiwiki/__init__.py:53 +#, python-brace-format +msgid "" +"Only {box_name} users in the admin group can create and " +"manage blogs and wikis, but any user in the wiki group can " +"edit existing ones. In the User " +"Configuration you can change these permissions or add new users." msgstr "" #: plinth/modules/ikiwiki/forms.py:34 @@ -1137,16 +1189,18 @@ msgid "Delete Wiki or Blog" msgstr "" #: plinth/modules/infinoted/__init__.py:43 -msgid "" -"Gobby Server \n" -" (infinoted)" +msgid "infinoted" msgstr "" -#: plinth/modules/infinoted/__init__.py:46 +#: plinth/modules/infinoted/__init__.py:45 +msgid "Gobby Server" +msgstr "" + +#: plinth/modules/infinoted/__init__.py:48 msgid "infinoted is a server for Gobby, a collaborative text editor." msgstr "" -#: plinth/modules/infinoted/__init__.py:49 +#: plinth/modules/infinoted/__init__.py:51 #, python-brace-format msgid "" "To use it, download Gobby, desktop " @@ -1155,29 +1209,34 @@ msgid "" msgstr "" #: plinth/modules/jsxc/__init__.py:36 -msgid "" -"Chat Client \n" -" (JSXC)" +msgid "JSXC" msgstr "" -#: plinth/modules/jsxc/__init__.py:40 +#: plinth/modules/jsxc/__init__.py:38 +msgid "Chat Client" +msgstr "" + +#: plinth/modules/jsxc/__init__.py:42 msgid "" "JSXC is a web client for XMPP. Typically it is used with an XMPP server " "running locally." msgstr "" -#: plinth/modules/jsxc/__init__.py:78 +#: plinth/modules/jsxc/__init__.py:80 msgid "" "Chat Client \n" " (jsxc)" msgstr "" -#: plinth/modules/letsencrypt/__init__.py:39 -#: plinth/modules/letsencrypt/__init__.py:64 -msgid "Certificates (Let's Encrypt)" +#: plinth/modules/letsencrypt/__init__.py:40 +msgid "Let's Encrypt" msgstr "" -#: plinth/modules/letsencrypt/__init__.py:43 +#: plinth/modules/letsencrypt/__init__.py:42 +msgid "Certificates" +msgstr "" + +#: plinth/modules/letsencrypt/__init__.py:46 #, python-brace-format msgid "" "A digital certificate allows users of a web service to verify the identity " @@ -1187,7 +1246,7 @@ msgid "" "Encrypt, a certificate authority (CA)." msgstr "" -#: plinth/modules/letsencrypt/__init__.py:50 +#: plinth/modules/letsencrypt/__init__.py:53 msgid "" "Let's Encrypt is a free, automated, and open certificate authority, run for " "the public's benefit by the Internet Security Research Group (ISRG). Please " @@ -1211,96 +1270,162 @@ msgstr "" msgid "Actions" msgstr "" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:56 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:62 #, python-format msgid "Valid, expires on %(expiry_date)s" msgstr "" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:63 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:69 msgid "Revoked" msgstr "" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:67 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:73 #, python-format msgid "Expired on %(expiry_date)s" msgstr "" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:71 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:77 msgid "Invalid test certificate" msgstr "" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:75 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:81 #, python-format msgid "Invalid (%(reason)s)" msgstr "" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:82 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:88 msgid "No certificate" msgstr "" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:99 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:105 msgid "Re-obtain" msgstr "" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:105 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:111 #: plinth/modules/networks/templates/connection_show.html:63 #: plinth/modules/snapshot/templates/snapshot.html:34 msgid "Delete" msgstr "" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:112 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:118 msgid "Revoke" msgstr "" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:120 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:126 msgid "Obtain" msgstr "" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:133 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:149 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:156 +msgid "Update config" +msgstr "" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:161 +#, python-format +msgid "" +"\n" +" Let Plinth manage certificate renewal of\n" +" %(current_domain)s (recommended)\n" +" " +msgstr "" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:166 +msgid "" +"\n" +" Let Plinth manage certificate renewal of the current domain " +"(recommended)\n" +" " +msgstr "" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:175 +#, python-format +msgid "" +"If %(box_name)s manages the certificate renewal for the current domain, it " +"will ensure that all apps that use the certificate can use it, as soon as it " +"gets renewed." +msgstr "" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:181 +msgid "" +"No certificate available for the current domain. First obtain a " +"certificate to enable management of its renewal." +msgstr "" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:186 +msgid "" +"No current domain is configured. First configure a domain to enable " +"management of its certificates." +msgstr "" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:195 msgid "" "No domains have been configured. Configure domains to be able to obtain " "certificates for them." msgstr "" -#: plinth/modules/letsencrypt/views.py:55 +#: plinth/modules/letsencrypt/views.py:57 #, python-brace-format msgid "" "Certificate successfully revoked for domain {domain}.This may take a few " "moments to take effect." msgstr "" -#: plinth/modules/letsencrypt/views.py:61 +#: plinth/modules/letsencrypt/views.py:63 #, python-brace-format msgid "Failed to revoke certificate for domain {domain}: {error}" msgstr "" -#: plinth/modules/letsencrypt/views.py:73 +#: plinth/modules/letsencrypt/views.py:75 #, python-brace-format msgid "Certificate successfully obtained for domain {domain}" msgstr "" -#: plinth/modules/letsencrypt/views.py:78 +#: plinth/modules/letsencrypt/views.py:81 #, python-brace-format msgid "Failed to obtain certificate for domain {domain}: {error}" msgstr "" #: plinth/modules/letsencrypt/views.py:90 +#: plinth/modules/letsencrypt/views.py:109 +#, python-brace-format +msgid "Certificate renewal management enabled for {domain}." +msgstr "" + +#: plinth/modules/letsencrypt/views.py:95 +#, python-brace-format +msgid "Failed to enable certificate renewal management for {domain}: {error}" +msgstr "" + +#: plinth/modules/letsencrypt/views.py:112 +#, python-brace-format +msgid "Certificate renewal management disabled for {domain}." +msgstr "" + +#: plinth/modules/letsencrypt/views.py:118 +#, python-brace-format +msgid "Failed to switch certificate renewal management for {domain}: {error}" +msgstr "" + +#: plinth/modules/letsencrypt/views.py:134 +#, python-brace-format +msgid "Failed to disable certificate renewal management for {domain}: {error}" +msgstr "" + +#: plinth/modules/letsencrypt/views.py:141 #, python-brace-format msgid "Certificate successfully deleted for domain {domain}" msgstr "" -#: plinth/modules/letsencrypt/views.py:95 +#: plinth/modules/letsencrypt/views.py:146 #, python-brace-format msgid "Failed to delete certificate for domain {domain}: {error}" msgstr "" #: plinth/modules/matrixsynapse/__init__.py:41 -msgid "" -"Chat Server \n" -" (Matrix Synapse)" +msgid "Matrix Synapse" msgstr "" -#: plinth/modules/matrixsynapse/__init__.py:44 +#: plinth/modules/matrixsynapse/__init__.py:46 msgid "" "Matrix is an new " "ecosystem for open, federated instant messaging and VoIP. Synapse is a " @@ -1310,17 +1435,13 @@ msgid "" "converse with users on all other Matrix servers via federation." msgstr "" -#: plinth/modules/matrixsynapse/__init__.py:52 +#: plinth/modules/matrixsynapse/__init__.py:54 msgid "" "To communicate, you can use the available clients for mobile, desktop and the web. Riot client is recommended." msgstr "" -#: plinth/modules/matrixsynapse/forms.py:31 -msgid "Select the domain name" -msgstr "" - #: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:34 msgid "" "Matrix service needs to be configured for a domain. Users on other Matrix " @@ -1352,12 +1473,14 @@ msgid "" msgstr "" #: plinth/modules/minetest/__init__.py:48 -msgid "" -"Block Sandbox \n" -" (Minetest)" +msgid "Minetest" msgstr "" -#: plinth/modules/minetest/__init__.py:52 +#: plinth/modules/minetest/__init__.py:50 +msgid "Block Sandbox" +msgstr "" + +#: plinth/modules/minetest/__init__.py:54 #, python-brace-format msgid "" "Minetest is a multiplayer infinite-world block sandbox. This module enables " @@ -1473,7 +1596,7 @@ msgstr "" #: plinth/modules/monkeysphere/templates/monkeysphere.html:87 #: plinth/modules/monkeysphere/templates/monkeysphere_details.html:60 -#: plinth/service.py:117 +#: plinth/service.py:116 msgid "Web Server" msgstr "" @@ -1570,18 +1693,20 @@ msgid "Error occurred while publishing key." msgstr "" #: plinth/modules/mumble/__init__.py:35 -msgid "" -"Voice Chat \n" -" (Mumble)" +msgid "Mumble" msgstr "" -#: plinth/modules/mumble/__init__.py:44 +#: plinth/modules/mumble/__init__.py:37 +msgid "Voice Chat" +msgstr "" + +#: plinth/modules/mumble/__init__.py:46 msgid "" "Mumble is an open source, low-latency, encrypted, high quality voice chat " "software." msgstr "" -#: plinth/modules/mumble/__init__.py:47 +#: plinth/modules/mumble/__init__.py:49 msgid "" "You can connect to your Mumble server on the regular Mumble port 64738. Clients to connect to Mumble from your " @@ -2069,7 +2194,7 @@ msgid "This connection is not active." msgstr "" #: plinth/modules/networks/templates/connection_show.html:266 -#: plinth/modules/security/__init__.py:32 plinth/modules/security/views.py:46 +#: plinth/modules/security/__init__.py:32 plinth/modules/security/views.py:48 msgid "Security" msgstr "" @@ -2165,12 +2290,14 @@ msgid "Inactive" msgstr "" #: plinth/modules/openvpn/__init__.py:42 -msgid "" -"Virtual Private Network \n" -" (OpenVPN)" +msgid "OpenVPN" msgstr "" -#: plinth/modules/openvpn/__init__.py:46 +#: plinth/modules/openvpn/__init__.py:44 +msgid "Virtual Private Network" +msgstr "" + +#: plinth/modules/openvpn/__init__.py:48 #, python-brace-format msgid "" "Virtual Private Network (VPN) is a technique for securely connecting two " @@ -2181,7 +2308,7 @@ msgid "" "security and anonymity." msgstr "" -#: plinth/modules/openvpn/__init__.py:84 +#: plinth/modules/openvpn/__init__.py:86 #, python-brace-format msgid "" "Download Profile" @@ -2256,10 +2383,14 @@ msgid "Setup failed." msgstr "" #: plinth/modules/pagekite/__init__.py:44 -msgid "Public Visibility (PageKite)" +msgid "PageKite" msgstr "" -#: plinth/modules/pagekite/__init__.py:48 +#: plinth/modules/pagekite/__init__.py:46 +msgid "Public Visibility" +msgstr "" + +#: plinth/modules/pagekite/__init__.py:50 #, python-brace-format msgid "" "PageKite is a system for exposing {box_name} services when you don't have a " @@ -2268,33 +2399,33 @@ msgid "" "following situations:" msgstr "" -#: plinth/modules/pagekite/__init__.py:55 +#: plinth/modules/pagekite/__init__.py:57 #, python-brace-format msgid "{box_name} is behind a restricted firewall." msgstr "" -#: plinth/modules/pagekite/__init__.py:59 +#: plinth/modules/pagekite/__init__.py:61 #, python-brace-format msgid "{box_name} is connected to a (wireless) router which you don't control." msgstr "" -#: plinth/modules/pagekite/__init__.py:62 +#: plinth/modules/pagekite/__init__.py:64 msgid "" "Your ISP does not provide you an external IP address and instead provides " "Internet connection through NAT." msgstr "" -#: plinth/modules/pagekite/__init__.py:65 +#: plinth/modules/pagekite/__init__.py:67 msgid "" "Your ISP does not provide you a static IP address and your IP address " "changes evertime you connect to Internet." msgstr "" -#: plinth/modules/pagekite/__init__.py:68 +#: plinth/modules/pagekite/__init__.py:70 msgid "Your ISP limits incoming connections." msgstr "" -#: plinth/modules/pagekite/__init__.py:71 +#: plinth/modules/pagekite/__init__.py:73 #, python-brace-format msgid "" "PageKite works around NAT, firewalls and IP-address limitations by using a " @@ -2570,8 +2701,8 @@ msgstr "" msgid "Pagekite setup finished. The HTTP and HTTPS services are activated now." msgstr "" -#: plinth/modules/power/__init__.py:28 plinth/modules/power/views.py:50 -#: plinth/modules/power/views.py:65 +#: plinth/modules/power/__init__.py:28 plinth/modules/power/views.py:51 +#: plinth/modules/power/views.py:67 msgid "Power" msgstr "" @@ -2580,10 +2711,16 @@ msgid "Restart or shut down the system." msgstr "" #: plinth/modules/power/templates/power.html:28 +msgid "" +"Currently an installation or upgrade is running. Consider waiting until it's " +"finished before shutting down or restarting." +msgstr "" + +#: plinth/modules/power/templates/power.html:37 msgid "Restart »" msgstr "" -#: plinth/modules/power/templates/power.html:31 +#: plinth/modules/power/templates/power.html:40 msgid "Shut Down »" msgstr "" @@ -2593,7 +2730,14 @@ msgid "" "interface for a few minutes until the system is restarted." msgstr "" -#: plinth/modules/power/templates/power_restart.html:42 +#: plinth/modules/power/templates/power_restart.html:38 +msgid "" +"Currently an installation or upgrade is running. Consider waiting until it's " +"finished before restarting." +msgstr "" + +#: plinth/modules/power/templates/power_restart.html:52 +#: plinth/modules/power/templates/power_restart.html:55 msgid "Restart Now" msgstr "" @@ -2603,24 +2747,33 @@ msgid "" "interface after shut down." msgstr "" -#: plinth/modules/power/templates/power_shutdown.html:41 +#: plinth/modules/power/templates/power_shutdown.html:37 +msgid "" +"Currently an installation or upgrade is running. Consider waiting until it's " +"finished before shutting down." +msgstr "" + +#: plinth/modules/power/templates/power_shutdown.html:51 +#: plinth/modules/power/templates/power_shutdown.html:54 msgid "Shut Down Now" msgstr "" #: plinth/modules/privoxy/__init__.py:43 -msgid "" -"Web Proxy \n" -" (Privoxy)" +msgid "Privoxy" msgstr "" -#: plinth/modules/privoxy/__init__.py:46 +#: plinth/modules/privoxy/__init__.py:45 +msgid "Web Proxy" +msgstr "" + +#: plinth/modules/privoxy/__init__.py:48 msgid "" "Privoxy is a non-caching web proxy with advanced filtering capabilities for " "enhancing privacy, modifying web page data and HTTP headers, controlling " "access, and removing ads and other obnoxious Internet junk. " msgstr "" -#: plinth/modules/privoxy/__init__.py:52 +#: plinth/modules/privoxy/__init__.py:54 #, python-brace-format msgid "" "You can use Privoxy by modifying your browser proxy settings to your " @@ -2630,18 +2783,20 @@ msgid "" "\">http://p.p." msgstr "" -#: plinth/modules/privoxy/__init__.py:144 +#: plinth/modules/privoxy/__init__.py:147 #, python-brace-format msgid "Access {url} with proxy {proxy} on tcp{kind}" msgstr "" #: plinth/modules/quassel/__init__.py:42 -msgid "" -"IRC Client \n" -" (Quassel)" +msgid "Quassel" msgstr "" -#: plinth/modules/quassel/__init__.py:46 +#: plinth/modules/quassel/__init__.py:44 +msgid "IRC Client" +msgstr "" + +#: plinth/modules/quassel/__init__.py:48 #, python-brace-format msgid "" "Quassel is an IRC application that is split into two parts, a \"core\" and a " @@ -2652,7 +2807,7 @@ msgid "" "connect and disconnect from it." msgstr "" -#: plinth/modules/quassel/__init__.py:54 +#: plinth/modules/quassel/__init__.py:56 msgid "" "You can connect to your Quassel core on the default Quassel port 4242. " "Clients to connect to Quassel from your supported " -"client application is needed. Radicale can be accessed by any user with " -"a {box_name} login." +"radicale.org/clients/\">supported client application is needed. Radicale " +"can be accessed by any user with a {box_name} login." msgstr "" #: plinth/modules/radicale/forms.py:28 @@ -2695,12 +2851,14 @@ msgid "Access rights configuration updated" msgstr "" #: plinth/modules/repro/__init__.py:38 -msgid "" -"SIP Server \n" -" (repro)" +msgid "repro" msgstr "" -#: plinth/modules/repro/__init__.py:41 +#: plinth/modules/repro/__init__.py:40 +msgid "SIP Server" +msgstr "" + +#: plinth/modules/repro/__init__.py:43 msgid "" "repro provides various SIP services that a SIP softphone can utilize to " "provide audio and video calls as well as presence and instant messaging. " @@ -2709,7 +2867,7 @@ msgid "" "communications to other servers on the Internet similar to email." msgstr "" -#: plinth/modules/repro/__init__.py:48 +#: plinth/modules/repro/__init__.py:50 msgid "" "To make SIP calls, a client application is needed. Available clients include " "Jitsi (for computers) and (for Android phones)." msgstr "" -#: plinth/modules/repro/__init__.py:53 +#: plinth/modules/repro/__init__.py:55 msgid "" "Note: Before using repro, domains and users will need to " "be configured using the web-based " @@ -2727,12 +2885,14 @@ msgid "" msgstr "" #: plinth/modules/restore/__init__.py:36 -msgid "" -"Unhosted Storage \n" -" (reStore)" +msgid "reStore" msgstr "" -#: plinth/modules/restore/__init__.py:40 +#: plinth/modules/restore/__init__.py:38 +msgid "Unhosted Storage" +msgstr "" + +#: plinth/modules/restore/__init__.py:42 #, python-brace-format msgid "" "reStore is a server for unhosted web " @@ -2742,19 +2902,21 @@ msgid "" "becomes your unhosted storage server." msgstr "" -#: plinth/modules/restore/__init__.py:47 +#: plinth/modules/restore/__init__.py:49 msgid "" "You can create and edit accounts in the reStore web-" "interface." msgstr "" #: plinth/modules/roundcube/__init__.py:35 -msgid "" -"Email Client \n" -" (Roundcube)" +msgid "Roundcube" msgstr "" -#: plinth/modules/roundcube/__init__.py:38 +#: plinth/modules/roundcube/__init__.py:37 +msgid "Email Client" +msgstr "" + +#: plinth/modules/roundcube/__init__.py:40 msgid "" "Roundcube webmail is a browser-based multilingual IMAP client with an " "application-like user interface. It provides full functionality you expect " @@ -2762,7 +2924,7 @@ msgid "" "manipulation, message searching and spell checking." msgstr "" -#: plinth/modules/roundcube/__init__.py:44 +#: plinth/modules/roundcube/__init__.py:46 msgid "" "You can access Roundcube from /roundcube. Provide " "the username and password of the email account you wish to access followed " @@ -2771,7 +2933,7 @@ msgid "" "server field like imaps://imap.example.com." msgstr "" -#: plinth/modules/roundcube/__init__.py:51 +#: plinth/modules/roundcube/__init__.py:53 msgid "" "For Gmail, username will be your Gmail address, password will be your Google " "account password and server will be imaps://imap.gmail.com. " @@ -2792,26 +2954,39 @@ msgid "" "services without further authorization." msgstr "" -#: plinth/modules/security/views.py:63 +#: plinth/modules/security/forms.py:35 +msgid "Fail2ban (recommended)" +msgstr "" + +#: plinth/modules/security/forms.py:36 +msgid "" +"When this option is enabled, fail2ban will limit brute force break-in " +"attempts to the SSH server and other password protected internet-services " +"which are enabled." +msgstr "" + +#: plinth/modules/security/views.py:66 #, python-brace-format msgid "Error setting restricted access: {exception}" msgstr "" -#: plinth/modules/security/views.py:66 +#: plinth/modules/security/views.py:69 msgid "Updated security configuration" msgstr "" #: plinth/modules/shaarli/__init__.py:35 -msgid "" -"Bookmarks \n" -" (Shaarli)" +msgid "Shaarli" msgstr "" -#: plinth/modules/shaarli/__init__.py:38 -msgid "Shaarli allows you to save and share bookmarks." +#: plinth/modules/shaarli/__init__.py:37 +msgid "Bookmarks" msgstr "" #: plinth/modules/shaarli/__init__.py:40 +msgid "Shaarli allows you to save and share bookmarks." +msgstr "" + +#: plinth/modules/shaarli/__init__.py:42 msgid "" "When enabled, Shaarli will be available from /shaarli path on the web server. Note that Shaarli only supports a single user " @@ -2924,6 +3099,18 @@ msgstr "" msgid "Rollback to Snapshot" msgstr "" +#: plinth/modules/ssh/__init__.py:37 +msgid "Secure Shell (SSH) Server" +msgstr "" + +#: plinth/modules/ssh/__init__.py:40 +msgid "" +"A Secure Shell server uses the secure shell protocol to accept connections " +"from remote computers. An authorized remote computer can perform " +"administration tasks, copy files or run other services using such " +"connections." +msgstr "" + #: plinth/modules/sso/__init__.py:30 msgid "Single Sign On" msgstr "" @@ -2933,12 +3120,14 @@ msgid "Login" msgstr "" #: plinth/modules/syncthing/__init__.py:39 -msgid "" -"File Synchronization \n" -" (Syncthing)" +msgid "Syncthing" msgstr "" -#: plinth/modules/syncthing/__init__.py:42 +#: plinth/modules/syncthing/__init__.py:41 +msgid "File Synchronization" +msgstr "" + +#: plinth/modules/syncthing/__init__.py:44 msgid "" "Syncthing is an application to synchronize files across multiple devices, e." "g. your desktop computer and mobile phone. Creation, modification, or " @@ -2946,7 +3135,7 @@ msgid "" "other devices that also run Syncthing." msgstr "" -#: plinth/modules/syncthing/__init__.py:47 +#: plinth/modules/syncthing/__init__.py:49 #, python-brace-format msgid "" "Running Syncthing on {box_name} provides an extra synchronization point for " @@ -2957,7 +3146,7 @@ msgid "" "{box_name} is only available for users belonging to the \"admin\" group." msgstr "" -#: plinth/modules/syncthing/__init__.py:54 +#: plinth/modules/syncthing/__init__.py:56 msgid "" "When enabled, Syncthing's web interface will be available from /syncthing. Desktop and mobile clients are also Tor Project website. For " @@ -3028,36 +3229,36 @@ msgid "" "\">Tor Browser." msgstr "" -#: plinth/modules/tor/__init__.py:70 plinth/modules/tor/__init__.py:112 +#: plinth/modules/tor/__init__.py:72 plinth/modules/tor/__init__.py:114 msgid "Tor Anonymity Network" msgstr "" -#: plinth/modules/tor/__init__.py:76 plinth/modules/tor/__init__.py:120 +#: plinth/modules/tor/__init__.py:78 plinth/modules/tor/__init__.py:122 msgid "Tor Bridge Relay" msgstr "" -#: plinth/modules/tor/__init__.py:98 plinth/modules/tor/__init__.py:141 +#: plinth/modules/tor/__init__.py:100 plinth/modules/tor/__init__.py:143 msgid "Tor Hidden Service" msgstr "" -#: plinth/modules/tor/__init__.py:160 +#: plinth/modules/tor/__init__.py:162 msgid "Tor relay port available" msgstr "" -#: plinth/modules/tor/__init__.py:168 +#: plinth/modules/tor/__init__.py:170 msgid "Obfs3 transport registered" msgstr "" -#: plinth/modules/tor/__init__.py:174 +#: plinth/modules/tor/__init__.py:176 msgid "Obfs4 transport registered" msgstr "" -#: plinth/modules/tor/__init__.py:211 +#: plinth/modules/tor/__init__.py:213 #, python-brace-format msgid "Access URL {url} on tcp{kind} via Tor" msgstr "" -#: plinth/modules/tor/__init__.py:222 +#: plinth/modules/tor/__init__.py:224 #, python-brace-format msgid "Confirm Tor usage at {url} on tcp{kind}" msgstr "" @@ -3201,18 +3402,20 @@ msgid "An error occurred during configuration." msgstr "" #: plinth/modules/transmission/__init__.py:38 -msgid "" -"BitTorrent \n" -" (Transmission)" +msgid "Transmission" msgstr "" -#: plinth/modules/transmission/__init__.py:41 +#: plinth/modules/transmission/__init__.py:40 +msgid "BitTorrent" +msgstr "" + +#: plinth/modules/transmission/__init__.py:43 msgid "" "BitTorrent is a peer-to-peer file sharing protocol. Transmission daemon " "handles Bitorrent file sharing. Note that BitTorrent is not anonymous." msgstr "" -#: plinth/modules/transmission/__init__.py:44 +#: plinth/modules/transmission/__init__.py:46 msgid "" "Access the web interface at /transmission." msgstr "" @@ -3238,23 +3441,27 @@ msgid "" "hashed format. To set a new password, enter the password in plain text." msgstr "" -#: plinth/modules/ttrss/__init__.py:37 -msgid "" -"News Feed Reader \n" -" (Tiny Tiny RSS)" +#: plinth/modules/ttrss/__init__.py:39 +msgid "Tiny Tiny RSS" msgstr "" -#: plinth/modules/ttrss/__init__.py:40 +#: plinth/modules/ttrss/__init__.py:41 +msgid "News Feed Reader" +msgstr "" + +#: plinth/modules/ttrss/__init__.py:44 msgid "" "Tiny Tiny RSS is a news feed (RSS/Atom) reader and aggregator, designed to " "allow reading news from any location, while feeling as close to a real " "desktop application as possible." msgstr "" -#: plinth/modules/ttrss/__init__.py:44 +#: plinth/modules/ttrss/__init__.py:49 +#, python-brace-format msgid "" "When enabled, Tiny Tiny RSS will be available from /tt-" -"rss path on the web server." +"rss path on the web server. It can be accessed by any user with a {box_name} login." msgstr "" #: plinth/modules/upgrades/__init__.py:35 @@ -3546,15 +3753,11 @@ msgstr "" msgid "configuration file: {file}" msgstr "" -#: plinth/service.py:119 +#: plinth/service.py:118 msgid "Web Server over Secure Socket Layer" msgstr "" -#: plinth/service.py:121 -msgid "Secure Shell (SSH) Server" -msgstr "" - -#: plinth/service.py:123 +#: plinth/service.py:120 #, python-brace-format msgid "{box_name} Web Interface (Plinth)" msgstr "" @@ -3597,11 +3800,11 @@ msgid "" "\"%(status_log_url)s\">status log to the bug report." msgstr "" -#: plinth/templates/apps.html:25 +#: plinth/templates/apps.html:33 msgid "Services and Applications" msgstr "" -#: plinth/templates/apps.html:28 +#: plinth/templates/apps.html:36 #, python-format msgid "" "You can install and run various services and applications on your " @@ -3609,7 +3812,7 @@ msgid "" "of the application and choose to install it." msgstr "" -#: plinth/templates/apps.html:36 +#: plinth/templates/apps.html:44 msgid "" "This box can be your photo sharing site, your instant messaging site, your " "social networking site, your news site. Remember web portals? We can be " @@ -3769,16 +3972,16 @@ msgstr "" msgid "%(percentage)s%% complete" msgstr "" -#: plinth/templates/system.html:25 +#: plinth/templates/system.html:33 msgid "System Configuration" msgstr "" -#: plinth/templates/system.html:28 +#: plinth/templates/system.html:36 #, python-format msgid "Here you can administrate the underlying system of your %(box_name)s." msgstr "" -#: plinth/templates/system.html:34 +#: plinth/templates/system.html:42 #, python-format msgid "" "The options affect the %(box_name)s at its most general level, so be careful!" diff --git a/plinth/locale/es/LC_MESSAGES/django.po b/plinth/locale/es/LC_MESSAGES/django.po index c9a026f7e..10e561a60 100644 --- a/plinth/locale/es/LC_MESSAGES/django.po +++ b/plinth/locale/es/LC_MESSAGES/django.po @@ -7,11 +7,11 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2017-07-10 22:56-0400\n" +"POT-Creation-Date: 2017-09-24 11:24-0400\n" "PO-Revision-Date: 2017-07-22 14:37+0000\n" "Last-Translator: Luis A. Arizmendi \n" -"Language-Team: Spanish " -"\n" +"Language-Team: Spanish \n" "Language: es\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -19,37 +19,37 @@ msgstr "" "Plural-Forms: nplurals=2; plural=n != 1;\n" "X-Generator: Weblate 2.16-dev\n" -#: plinth/action_utils.py:254 +#: plinth/action_utils.py:259 #, python-brace-format msgid "Listening on {kind} port {listen_address}:{port}" msgstr "Escuchando en el puerto {kind} {listen_address}:{port}" -#: plinth/action_utils.py:257 +#: plinth/action_utils.py:262 #, python-brace-format msgid "Listening on {kind} port {port}" msgstr "Escuchando en el puerto {port} {kind}" -#: plinth/action_utils.py:352 +#: plinth/action_utils.py:357 #, python-brace-format msgid "Access URL {url} on tcp{kind}" msgstr "Acceso a {url} en tcp{kind}" -#: plinth/action_utils.py:356 +#: plinth/action_utils.py:361 #, python-brace-format msgid "Access URL {url}" msgstr "Acceso a {url}" -#: plinth/action_utils.py:386 +#: plinth/action_utils.py:391 #, python-brace-format msgid "Connect to {host}:{port}" msgstr "Conectar a {host}:{port}" -#: plinth/action_utils.py:389 +#: plinth/action_utils.py:394 #, python-brace-format msgid "Cannot connect to {host}:{port}" msgstr "No se pudo conectar a {host}:{port}" -#: plinth/context_processors.py:38 plinth/views.py:49 +#: plinth/context_processors.py:38 plinth/views.py:52 msgid "FreedomBox" msgstr "FreedomBox" @@ -58,9 +58,17 @@ msgid "Enable application" msgstr "Activar aplicación" #: plinth/forms.py:45 -msgid "Select the domain name to be used for this application" +#, fuzzy +#| msgid "Select the domain name to be used for this application" +msgid "Select a domain name to be used with this application" msgstr "Seleccione el nombre de dominio que usará esta aplicación" +#: plinth/forms.py:47 +msgid "" +"Warning! The application may not work properly if domain name is changed " +"later." +msgstr "" + #: plinth/middleware.py:71 msgid "Application installed." msgstr "Aplicación instalada." @@ -97,14 +105,20 @@ msgstr "" "redes locales inseguras o de poca confianza." #: plinth/modules/bind/__init__.py:34 -msgid "" -"Domain Name Server \n" -" (BIND)" +msgid "BIND" +msgstr "" + +#: plinth/modules/bind/__init__.py:36 +#, fuzzy +#| msgid "" +#| "Domain Name Server \n" +#| " (BIND)" +msgid "Domain Name Server" msgstr "" "Servidor de Nombres de Dominio\n" "(BIND)" -#: plinth/modules/bind/__init__.py:43 +#: plinth/modules/bind/__init__.py:45 msgid "" "BIND is open source software that enables you to publish your Domain Name " "System (DNS) information on the Internet, and to resolve DNS queries for " @@ -114,7 +128,7 @@ msgstr "" "de su Sistema de Nombres de Dominio (DNS), y también resolver las búsquedas " "DNS de sus usuarios." -#: plinth/modules/bind/__init__.py:47 +#: plinth/modules/bind/__init__.py:49 msgid "" "BIND is by far the most widely used DNS software on the Internet, providing " "a robust and stable platform on top of which organizations can build " @@ -164,7 +178,7 @@ msgid "Enable forwarding to set forwarding DNS servers" msgstr "Activar reenvío para definir los servidores DNS de reenvío" #: plinth/modules/config/config.py:88 plinth/modules/config/config.py:125 -#: plinth/modules/dynamicdns/dynamicdns.py:140 +#: plinth/modules/dynamicdns/dynamicdns.py:148 msgid "Invalid domain name" msgstr "Nombre de dominio no válido" @@ -191,7 +205,7 @@ msgstr "Nombre de anfitrión no válido" #: plinth/modules/config/config.py:112 plinth/modules/config/config.py:169 #: plinth/modules/config/config.py:285 -#: plinth/modules/dynamicdns/dynamicdns.py:135 +#: plinth/modules/dynamicdns/dynamicdns.py:143 msgid "Domain Name" msgstr "Nombre de dominio" @@ -221,7 +235,7 @@ msgid "Language for this web administration interface" msgstr "Idioma para la interfaz de administración web" #: plinth/modules/config/config.py:151 -#: plinth/modules/dynamicdns/dynamicdns.py:37 +#: plinth/modules/dynamicdns/dynamicdns.py:45 #: plinth/modules/ikiwiki/views.py:37 #: plinth/modules/tahoe/templates/tahoe-pre-setup.html:39 msgid "Configure" @@ -305,18 +319,26 @@ msgid "Time zone set" msgstr "Zona horaria asignada" #: plinth/modules/deluge/__init__.py:39 -msgid "" -"BitTorrent Web Client \n" -" (Deluge)" +#, fuzzy +#| msgid "Enable Deluge" +msgid "Deluge" +msgstr "Activar Deluge" + +#: plinth/modules/deluge/__init__.py:41 +#, fuzzy +#| msgid "" +#| "BitTorrent Web Client \n" +#| " (Deluge)" +msgid "BitTorrent Web Client" msgstr "" "Cliente web de BitTorrent\n" " (Deluge)" -#: plinth/modules/deluge/__init__.py:42 +#: plinth/modules/deluge/__init__.py:44 msgid "Deluge is a BitTorrent client that features a Web UI." msgstr "Deluge es un cliente BitTorrent con interfaz web." -#: plinth/modules/deluge/__init__.py:44 +#: plinth/modules/deluge/__init__.py:46 msgid "" "When enabled, the Deluge web client will be available from /deluge path on the web server. The default password is 'deluge', but " @@ -383,7 +405,15 @@ msgstr "Test" msgid "Result" msgstr "Resultado" -#: plinth/modules/diaspora/__init__.py:61 +#: plinth/modules/diaspora/__init__.py:51 +msgid "diaspora*" +msgstr "" + +#: plinth/modules/diaspora/__init__.py:53 +msgid "Federated Social Network" +msgstr "" + +#: plinth/modules/diaspora/__init__.py:62 msgid "" "diaspora* is a decentralized social network where you can store and control " "your own data." @@ -391,16 +421,9 @@ msgstr "" "diaspora* es una red social descentralizada en la que puede controlar sus " "propios datos." -#: plinth/modules/diaspora/forms.py:30 -msgid "Select the domain name to be used for diaspora*" -msgstr "Seleccione el nombre de dominio que usará diaspora*" - -#: plinth/modules/diaspora/forms.py:32 -msgid "" -"Warning! Do not change the FreedomBox domain name after setting up diaspora*" +#: plinth/modules/diaspora/forms.py:31 +msgid "Enable new user registrations" msgstr "" -"Atención! No cambie el nombre de dominio de FreedomBox después de configurar " -"diaspora*" #: plinth/modules/diaspora/templates/diaspora-post-setup.html:32 #, python-format @@ -412,11 +435,11 @@ msgid "" "href=\"https://diaspora.%(domain_name)s\"> diaspora.%(domain_name)s " msgstr "" "El dominio de diaspora* se ha configurado como %(domain_name)s. El ID " -"de usuario será similar a nombreusuario@diaspora.%(domain_name)s.
" -" Si se modifica el nombre de dominio de FreedomBox los datos de los usuarios " -"registrados con el dominio anterior no serán accesibles.
Puede acceder " -"a diaspora* en diaspora.%(domain_name)s" +"de usuario será similar a nombreusuario@diaspora.%(domain_name)s.
Si se modifica el nombre de dominio de FreedomBox los datos de los " +"usuarios registrados con el dominio anterior no serán accesibles.
Puede " +"acceder a diaspora* en diaspora." +"%(domain_name)s" #: plinth/modules/diaspora/templates/diaspora-pre-setup.html:58 #: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:40 @@ -432,7 +455,25 @@ msgstr "" msgid "Update setup" msgstr "Actualizar configuración" -#: plinth/modules/disks/__init__.py:33 plinth/modules/disks/views.py:39 +#: plinth/modules/diaspora/views.py:96 plinth/modules/ejabberd/views.py:60 +#: plinth/modules/openvpn/views.py:145 plinth/modules/tor/views.py:134 +#: plinth/views.py:112 +msgid "Setting unchanged" +msgstr "Configuración sin cambio" + +#: plinth/modules/diaspora/views.py:100 +#, fuzzy +#| msgid "Application enabled" +msgid "User registrations enabled" +msgstr "Aplicación activada" + +#: plinth/modules/diaspora/views.py:104 +#, fuzzy +#| msgid "Application disabled" +msgid "User registrations disabled" +msgstr "Aplicación desactivada" + +#: plinth/modules/disks/__init__.py:33 plinth/modules/disks/views.py:45 msgid "Disks" msgstr "Discos" @@ -477,7 +518,7 @@ msgstr "" #: plinth/modules/disks/templates/disks.html:90 #: plinth/modules/disks/templates/disks.html:102 #: plinth/modules/disks/templates/disks_expand.html:45 -#: plinth/modules/disks/views.py:56 +#: plinth/modules/disks/views.py:62 msgid "Expand Root Partition" msgstr "Ampliar partición raíz" @@ -499,45 +540,52 @@ msgstr "" "operación su partición raíz dispondrá de %(expandable_root_size)s espacio " "libre adicional." -#: plinth/modules/disks/views.py:65 +#: plinth/modules/disks/views.py:71 #, python-brace-format msgid "Error expanding partition: {exception}" msgstr "Error al ampliar partición: {exception}" -#: plinth/modules/disks/views.py:68 +#: plinth/modules/disks/views.py:74 msgid "Partition expanded successfully." msgstr "Partición ampliada con éxito." -#: plinth/modules/disks/views.py:77 +#: plinth/modules/disks/views.py:93 +#, python-format, python-brace-format +msgid "" +"Warning: Low space on system partition ({percent_used}% used, {free_space} " +"free)." +msgstr "" + +#: plinth/modules/disks/views.py:130 #, python-brace-format msgid "{disk_size:.1f} bytes" msgstr "{disk_size:.1f} bytes" -#: plinth/modules/disks/views.py:81 +#: plinth/modules/disks/views.py:134 #, python-brace-format msgid "{disk_size:.1f} KiB" msgstr "{disk_size:.1f} KiB" -#: plinth/modules/disks/views.py:85 +#: plinth/modules/disks/views.py:138 #, python-brace-format msgid "{disk_size:.1f} MiB" msgstr "{disk_size:.1f} MiB" -#: plinth/modules/disks/views.py:89 +#: plinth/modules/disks/views.py:142 #, python-brace-format msgid "{disk_size:.1f} GiB" msgstr "{disk_size:.1f} GiB" -#: plinth/modules/disks/views.py:92 +#: plinth/modules/disks/views.py:145 #, python-brace-format msgid "{disk_size:.1f} TiB" msgstr "{disk_size:.1f} TiB" -#: plinth/modules/dynamicdns/__init__.py:33 +#: plinth/modules/dynamicdns/__init__.py:35 msgid "Dynamic DNS Client" msgstr "Cliente de DNS dinámico" -#: plinth/modules/dynamicdns/__init__.py:37 +#: plinth/modules/dynamicdns/__init__.py:39 #, python-brace-format msgid "" "If your Internet provider changes your IP address periodically (i.e. every " @@ -548,7 +596,7 @@ msgstr "" "24h) será muy difícil para los demás encontrarle en Internet. Esto permitirá " "a otros encontrar los servicios que ofrece {box_name}." -#: plinth/modules/dynamicdns/__init__.py:43 +#: plinth/modules/dynamicdns/__init__.py:45 msgid "" "The solution is to assign a DNS name to your IP address and update the DNS " "name every time your IP is changed by your Internet provider. Dynamic DNS " @@ -565,11 +613,18 @@ msgstr "" "asigna su nombre DNS a esta nueva IP de forma que cualquiera que pida su " "nombre DNS obtendrá la dirección IP actualizada." -#: plinth/modules/dynamicdns/dynamicdns.py:35 plinth/modules/help/help.py:40 +#: plinth/modules/dynamicdns/__init__.py:67 +#: plinth/modules/dynamicdns/dynamicdns.py:377 +#, fuzzy +#| msgid "Dynamic DNS Client" +msgid "Dynamic DNS Service" +msgstr "Cliente de DNS dinámico" + +#: plinth/modules/dynamicdns/dynamicdns.py:43 plinth/modules/help/help.py:40 msgid "About" msgstr "Acerca de" -#: plinth/modules/dynamicdns/dynamicdns.py:39 +#: plinth/modules/dynamicdns/dynamicdns.py:47 #: plinth/modules/firewall/templates/firewall.html:47 #: plinth/modules/networks/templates/connection_show.html:261 #: plinth/modules/openvpn/templates/openvpn.html:67 @@ -578,7 +633,7 @@ msgstr "Acerca de" msgid "Status" msgstr "Estado" -#: plinth/modules/dynamicdns/dynamicdns.py:63 +#: plinth/modules/dynamicdns/dynamicdns.py:71 msgid "" "The Variables <User>, <Pass>, <Ip>, <Domain> may be " "used within the URL. For details see the update URL templates of the example " @@ -588,7 +643,7 @@ msgstr "" "pueden usar en la URL. Para más información consulte las plantillas para " "actualizar URL de los ejemplos incluidos." -#: plinth/modules/dynamicdns/dynamicdns.py:67 +#: plinth/modules/dynamicdns/dynamicdns.py:75 msgid "" "Please choose an update protocol according to your provider. If your " "provider does not support the GnuDIP protocol or your provider is not listed " @@ -598,7 +653,7 @@ msgstr "" "el protocolo GnuDIP o no aparece en el listado deberá usar la URL de " "actualización de su proveedor." -#: plinth/modules/dynamicdns/dynamicdns.py:72 +#: plinth/modules/dynamicdns/dynamicdns.py:80 msgid "" "Please do not enter a URL here (like \"https://example.com/\") but only the " "hostname of the GnuDIP server (like \"example.com\")." @@ -606,18 +661,18 @@ msgstr "" "Por favor no introduzca una URL (\"https://ejemplo.com/\"), solo el nombre " "de su servidor GnuDIP (\"ejemplo.com\")." -#: plinth/modules/dynamicdns/dynamicdns.py:76 +#: plinth/modules/dynamicdns/dynamicdns.py:84 #, python-brace-format msgid "The public domain name you want to use to reach your {box_name}." msgstr "" "Nombre de dominio público que quiere usar para para identificar su " "{box_name}." -#: plinth/modules/dynamicdns/dynamicdns.py:79 +#: plinth/modules/dynamicdns/dynamicdns.py:87 msgid "Use this option if your provider uses self signed certificates." msgstr "Elija esta opción si su proveedor usa certificados autofirmados." -#: plinth/modules/dynamicdns/dynamicdns.py:82 +#: plinth/modules/dynamicdns/dynamicdns.py:90 msgid "" "If this option is selected, your username and password will be used for HTTP " "basic authentication." @@ -625,11 +680,11 @@ msgstr "" "Si selecciona esta opción su nombre de usuario y clave se emplearán en la " "autenticación básica de HTTP." -#: plinth/modules/dynamicdns/dynamicdns.py:85 +#: plinth/modules/dynamicdns/dynamicdns.py:93 msgid "Leave this field empty if you want to keep your current password." msgstr "Deje vacío este campo si quiere conservar su clave actual." -#: plinth/modules/dynamicdns/dynamicdns.py:88 +#: plinth/modules/dynamicdns/dynamicdns.py:96 #, python-brace-format msgid "" "Optional Value. If your {box_name} is not connected directly to the Internet " @@ -642,84 +697,84 @@ msgstr "" "número IP real. La URL debería devolver simplemente el número IP del cliente " "(p.e. http://myip.datasystems24.de)." -#: plinth/modules/dynamicdns/dynamicdns.py:96 +#: plinth/modules/dynamicdns/dynamicdns.py:104 msgid "The username that was used when the account was created." msgstr "El nombre de usuario que empleó al crear la cuenta." -#: plinth/modules/dynamicdns/dynamicdns.py:107 +#: plinth/modules/dynamicdns/dynamicdns.py:115 msgid "Enable Dynamic DNS" msgstr "Activar DNS dinámico" -#: plinth/modules/dynamicdns/dynamicdns.py:110 +#: plinth/modules/dynamicdns/dynamicdns.py:118 msgid "Service Type" msgstr "Tipo de servicio" -#: plinth/modules/dynamicdns/dynamicdns.py:115 +#: plinth/modules/dynamicdns/dynamicdns.py:123 msgid "GnuDIP Server Address" msgstr "Dirección del servidor GnuDIP" -#: plinth/modules/dynamicdns/dynamicdns.py:120 +#: plinth/modules/dynamicdns/dynamicdns.py:128 msgid "Invalid server name" msgstr "Nombre de servidor no válido" -#: plinth/modules/dynamicdns/dynamicdns.py:123 +#: plinth/modules/dynamicdns/dynamicdns.py:131 msgid "Update URL" msgstr "URL de actualización" -#: plinth/modules/dynamicdns/dynamicdns.py:127 +#: plinth/modules/dynamicdns/dynamicdns.py:135 msgid "Accept all SSL certificates" msgstr "Aceptar todos los certificados SSL" -#: plinth/modules/dynamicdns/dynamicdns.py:131 +#: plinth/modules/dynamicdns/dynamicdns.py:139 msgid "Use HTTP basic authentication" msgstr "Usar autenticación básica de HTTP" -#: plinth/modules/dynamicdns/dynamicdns.py:143 +#: plinth/modules/dynamicdns/dynamicdns.py:151 #: plinth/modules/networks/forms.py:228 plinth/modules/transmission/forms.py:37 msgid "Username" msgstr "Nombre de usuario" -#: plinth/modules/dynamicdns/dynamicdns.py:146 +#: plinth/modules/dynamicdns/dynamicdns.py:154 #: plinth/modules/networks/forms.py:229 plinth/modules/transmission/forms.py:41 msgid "Password" msgstr "Clave de acceso" -#: plinth/modules/dynamicdns/dynamicdns.py:149 +#: plinth/modules/dynamicdns/dynamicdns.py:157 #: plinth/modules/networks/forms.py:231 msgid "Show password" msgstr "Mostrar clave de acceso" -#: plinth/modules/dynamicdns/dynamicdns.py:153 +#: plinth/modules/dynamicdns/dynamicdns.py:161 msgid "URL to look up public IP" msgstr "URL para consultar la IP pública" -#: plinth/modules/dynamicdns/dynamicdns.py:179 +#: plinth/modules/dynamicdns/dynamicdns.py:187 msgid "Please provide an update URL or a GnuDIP server address" msgstr "" "Por favor indique una URL de actualización o la dirección de un servidor " "GnuDIP" -#: plinth/modules/dynamicdns/dynamicdns.py:184 +#: plinth/modules/dynamicdns/dynamicdns.py:192 msgid "Please provide a GnuDIP username" msgstr "Por favor indique un nombre de usuario GnuDIP" -#: plinth/modules/dynamicdns/dynamicdns.py:188 +#: plinth/modules/dynamicdns/dynamicdns.py:196 msgid "Please provide a GnuDIP domain name" msgstr "Por favor indique un nombre de dominio GnuDIP" -#: plinth/modules/dynamicdns/dynamicdns.py:193 +#: plinth/modules/dynamicdns/dynamicdns.py:201 msgid "Please provide a password" msgstr "Por favor indique una clave de acceso" -#: plinth/modules/dynamicdns/dynamicdns.py:211 +#: plinth/modules/dynamicdns/dynamicdns.py:219 msgid "Configure Dynamic DNS" msgstr "Configurar DNS dinámico" -#: plinth/modules/dynamicdns/dynamicdns.py:232 +#: plinth/modules/dynamicdns/dynamicdns.py:240 msgid "Dynamic DNS Status" msgstr "Estado del DNS dinámico" -#: plinth/modules/dynamicdns/dynamicdns.py:364 +#: plinth/modules/dynamicdns/dynamicdns.py:381 #: plinth/modules/openvpn/views.py:143 plinth/modules/transmission/views.py:72 msgid "Configuration updated" msgstr "Configuración actualizada" @@ -792,15 +847,18 @@ msgstr "" msgid "Last update" msgstr "Última actualización" -#: plinth/modules/ejabberd/__init__.py:42 -msgid "" -"Chat Server \n" -" (ejabberd)" -msgstr "" -"Servidor Chat \n" -" (ejabberd)" - #: plinth/modules/ejabberd/__init__.py:45 +msgid "ejabberd" +msgstr "" + +#: plinth/modules/ejabberd/__init__.py:47 +#: plinth/modules/matrixsynapse/__init__.py:43 +#, fuzzy +#| msgid "Web Server" +msgid "Chat Server" +msgstr "Servidor Web" + +#: plinth/modules/ejabberd/__init__.py:50 msgid "" "XMPP is an open and standardized communication protocol. Here you can run " "and configure your XMPP server, called ejabberd." @@ -808,11 +866,17 @@ msgstr "" "XMPP es un protocolo comunicación abierto y estándar. Puede ejecutar y " "configurar su servidor XMPP (ejabberd) aquí." -#: plinth/modules/ejabberd/__init__.py:48 +#: plinth/modules/ejabberd/__init__.py:54 +#, fuzzy, python-brace-format +#| msgid "" +#| "To actually communicate, you can use the web client or any other XMPP " +#| "client." msgid "" -"To actually communicate, you can use the web client or any other XMPP client." +"To actually communicate, you can use the web " +"client or any other XMPP client. When enabled, ejabberd can be accessed by " +"any user with a {box_name} login." msgstr "" "Para comunicarse puede usar el cliente web o cualquier otro cliente XMPP." @@ -860,16 +924,11 @@ msgstr "Lanzar cliente web" msgid "Configuration" msgstr "Configuración" -#: plinth/modules/ejabberd/views.py:60 plinth/modules/openvpn/views.py:145 -#: plinth/modules/tor/views.py:134 plinth/views.py:103 -msgid "Setting unchanged" -msgstr "Configuración sin cambio" - -#: plinth/modules/ejabberd/views.py:64 plinth/views.py:107 +#: plinth/modules/ejabberd/views.py:64 plinth/views.py:116 msgid "Application enabled" msgstr "Aplicación activada" -#: plinth/modules/ejabberd/views.py:67 plinth/views.py:110 +#: plinth/modules/ejabberd/views.py:67 plinth/views.py:119 msgid "Application disabled" msgstr "Aplicación desactivada" @@ -922,13 +981,13 @@ msgid "Service/Port" msgstr "Servicio/Puerto" #: plinth/modules/firewall/templates/firewall.html:65 -#: plinth/modules/letsencrypt/templates/letsencrypt.html:88 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:94 #: plinth/modules/names/templates/names.html:49 msgid "Enabled" msgstr "Activado" #: plinth/modules/firewall/templates/firewall.html:68 -#: plinth/modules/letsencrypt/templates/letsencrypt.html:90 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:96 #: plinth/modules/names/templates/names.html:51 #: plinth/modules/networks/forms.py:63 msgid "Disabled" @@ -967,7 +1026,8 @@ msgstr "¡Configuración completada!" #: plinth/modules/first_boot/templates/firstboot_complete.html:32 #, python-format msgid "Without any apps, your %(box_name)s cannot do very much." -msgstr "Sin ninguna aplicación instalada, su %(box_name)s no puede hacer mucho." +msgstr "" +"Sin ninguna aplicación instalada, su %(box_name)s no puede hacer mucho." #: plinth/modules/first_boot/templates/firstboot_complete.html:39 msgid "Install Apps" @@ -1184,22 +1244,43 @@ msgstr "" "Por favor elimine las claves y cualquier información personal del registro " "antes de enviar el informe de fallos." -#: plinth/modules/ikiwiki/__init__.py:39 -msgid "Wiki and Blog (ikiwiki)" -msgstr "Blog y Wiki (ikiwiki)" +#: plinth/modules/ikiwiki/__init__.py:41 +#, fuzzy +#| msgid "wiki" +msgid "ikiwiki" +msgstr "wiki" -#: plinth/modules/ikiwiki/__init__.py:42 +#: plinth/modules/ikiwiki/__init__.py:43 +msgid "Wiki and Blog" +msgstr "Wiki y Blog" + +#: plinth/modules/ikiwiki/__init__.py:46 +#, fuzzy +#| msgid "" +#| "ikiwiki is a simple wiki and blog application. It supports several " +#| "lightweight markup languages, including Markdown, and common blogging " +#| "functionality such as comments and RSS feeds. When enabled, the blogs and " +#| "wikis will be available from /ikiwiki." msgid "" "ikiwiki is a simple wiki and blog application. It supports several " "lightweight markup languages, including Markdown, and common blogging " "functionality such as comments and RSS feeds. When enabled, the blogs and " -"wikis will be available from /ikiwiki." +"wikis will be available at /ikiwiki (once created)." msgstr "" "ikiwiki es una sencilla aplicación de wiki y blog. Soporta algunos lenguajes " "de marcado, Markdown incluido, y funcionalidades comunes de los blogs como " "comentarios o fuentes RSS. Cuando está activo los blogs y wikis están " "accesibles en /ikiwiki." +#: plinth/modules/ikiwiki/__init__.py:53 +#, python-brace-format +msgid "" +"Only {box_name} users in the admin group can create and " +"manage blogs and wikis, but any user in the wiki group can " +"edit existing ones. In the User " +"Configuration you can change these permissions or add new users." +msgstr "" + #: plinth/modules/ikiwiki/forms.py:34 #: plinth/modules/networks/templates/connection_show.html:78 msgid "Name" @@ -1311,18 +1392,20 @@ msgid "Delete Wiki or Blog" msgstr "Eliminar Wiki o Blog" #: plinth/modules/infinoted/__init__.py:43 -msgid "" -"Gobby Server \n" -" (infinoted)" +msgid "infinoted" msgstr "" -"Servidor Gobby\n" -" (infinoted)" -#: plinth/modules/infinoted/__init__.py:46 +#: plinth/modules/infinoted/__init__.py:45 +#, fuzzy +#| msgid "Web Server" +msgid "Gobby Server" +msgstr "Servidor Web" + +#: plinth/modules/infinoted/__init__.py:48 msgid "infinoted is a server for Gobby, a collaborative text editor." msgstr "infinoted es un servidor para Gobby, un editor de texto colaborativo." -#: plinth/modules/infinoted/__init__.py:49 +#: plinth/modules/infinoted/__init__.py:51 #, python-brace-format msgid "" "To use it, download Gobby, desktop " @@ -1335,14 +1418,20 @@ msgstr "" "{box_name}." #: plinth/modules/jsxc/__init__.py:36 -msgid "" -"Chat Client \n" -" (JSXC)" +msgid "JSXC" +msgstr "" + +#: plinth/modules/jsxc/__init__.py:38 +#, fuzzy +#| msgid "" +#| "Chat Client \n" +#| " (JSXC)" +msgid "Chat Client" msgstr "" "Cliente de Chat \n" " (JSXC)" -#: plinth/modules/jsxc/__init__.py:40 +#: plinth/modules/jsxc/__init__.py:42 msgid "" "JSXC is a web client for XMPP. Typically it is used with an XMPP server " "running locally." @@ -1350,7 +1439,7 @@ msgstr "" "JSXC es un cliente web para XMPP. Se usa habitualmente con un servidor XMPP " "local." -#: plinth/modules/jsxc/__init__.py:78 +#: plinth/modules/jsxc/__init__.py:80 msgid "" "Chat Client \n" " (jsxc)" @@ -1358,12 +1447,19 @@ msgstr "" "Cliente de Chat \n" " (jsxc)" -#: plinth/modules/letsencrypt/__init__.py:39 -#: plinth/modules/letsencrypt/__init__.py:64 -msgid "Certificates (Let's Encrypt)" +#: plinth/modules/letsencrypt/__init__.py:40 +#, fuzzy +#| msgid "Certificates (Let's Encrypt)" +msgid "Let's Encrypt" msgstr "Certificados (Let's Encrypt)" -#: plinth/modules/letsencrypt/__init__.py:43 +#: plinth/modules/letsencrypt/__init__.py:42 +#, fuzzy +#| msgid "Certificate Status" +msgid "Certificates" +msgstr "Estado del certificado" + +#: plinth/modules/letsencrypt/__init__.py:46 #, python-brace-format msgid "" "A digital certificate allows users of a web service to verify the identity " @@ -1378,7 +1474,7 @@ msgstr "" "dominio disponible. Lo hace mostrándose a sí mismo como propietario de un " "dominio a Let's Encrypt, autoridad de certificación (CA)." -#: plinth/modules/letsencrypt/__init__.py:50 +#: plinth/modules/letsencrypt/__init__.py:53 msgid "" "Let's Encrypt is a free, automated, and open certificate authority, run for " "the public's benefit by the Internet Security Research Group (ISRG). Please " @@ -1407,52 +1503,102 @@ msgstr "Seguridad del sitio" msgid "Actions" msgstr "Acciones" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:56 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:62 #, python-format msgid "Valid, expires on %(expiry_date)s" msgstr "Válido, expira el %(expiry_date)s" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:63 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:69 msgid "Revoked" msgstr "Revocado" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:67 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:73 #, python-format msgid "Expired on %(expiry_date)s" msgstr "Expiró el %(expiry_date)s" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:71 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:77 msgid "Invalid test certificate" msgstr "Prueba de certificado no válida" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:75 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:81 #, python-format msgid "Invalid (%(reason)s)" msgstr "No válido (%(reason)s)" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:82 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:88 msgid "No certificate" msgstr "No certificado" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:99 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:105 msgid "Re-obtain" msgstr "Volver a obtener" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:105 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:111 #: plinth/modules/networks/templates/connection_show.html:63 #: plinth/modules/snapshot/templates/snapshot.html:34 msgid "Delete" msgstr "Eliminar" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:112 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:118 msgid "Revoke" msgstr "Revocar" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:120 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:126 msgid "Obtain" msgstr "Obtener" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:133 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:149 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:156 +#, fuzzy +#| msgid "Update" +msgid "Update config" +msgstr "Actualización" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:161 +#, python-format +msgid "" +"\n" +" Let Plinth manage certificate renewal of\n" +" %(current_domain)s (recommended)\n" +" " +msgstr "" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:166 +msgid "" +"\n" +" Let Plinth manage certificate renewal of the current domain " +"(recommended)\n" +" " +msgstr "" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:175 +#, python-format +msgid "" +"If %(box_name)s manages the certificate renewal for the current domain, it " +"will ensure that all apps that use the certificate can use it, as soon as it " +"gets renewed." +msgstr "" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:181 +msgid "" +"No certificate available for the current domain. First obtain a " +"certificate to enable management of its renewal." +msgstr "" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:186 +#, fuzzy +#| msgid "" +#| "No domains have been configured. Configure domains to be able to obtain " +#| "certificates for them." +msgid "" +"No current domain is configured. First configure a domain to enable " +"management of its certificates." +msgstr "" +"No se ha configurado ningún dominio. Debe configurar alguno para poder " +"obtener un certificado." + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:195 msgid "" "No domains have been configured. Configure domains to be able to obtain " "certificates for them." @@ -1460,7 +1606,7 @@ msgstr "" "No se ha configurado ningún dominio. Debe configurar alguno para poder " "obtener un certificado." -#: plinth/modules/letsencrypt/views.py:55 +#: plinth/modules/letsencrypt/views.py:57 #, python-brace-format msgid "" "Certificate successfully revoked for domain {domain}.This may take a few " @@ -1469,40 +1615,73 @@ msgstr "" "El certificado para el dominio {domain} ha sido revocado con éxito. " "Necesitará unos momentos para tener efecto." -#: plinth/modules/letsencrypt/views.py:61 +#: plinth/modules/letsencrypt/views.py:63 #, python-brace-format msgid "Failed to revoke certificate for domain {domain}: {error}" msgstr "Falló la revocación del certificado para el dominio {domain}: {error}" -#: plinth/modules/letsencrypt/views.py:73 +#: plinth/modules/letsencrypt/views.py:75 #, python-brace-format msgid "Certificate successfully obtained for domain {domain}" msgstr "Se ha obtenido con éxito el certificado para el dominio {domain}" -#: plinth/modules/letsencrypt/views.py:78 +#: plinth/modules/letsencrypt/views.py:81 #, python-brace-format msgid "Failed to obtain certificate for domain {domain}: {error}" msgstr "Falló la obtención del certificado para el dominio {domain}: {error}" #: plinth/modules/letsencrypt/views.py:90 +#: plinth/modules/letsencrypt/views.py:109 +#, fuzzy, python-brace-format +#| msgid "Certificate successfully deleted for domain {domain}" +msgid "Certificate renewal management enabled for {domain}." +msgstr "El certificado para el dominio {domain} ha sido eliminado con éxito" + +#: plinth/modules/letsencrypt/views.py:95 +#, fuzzy, python-brace-format +#| msgid "Failed to delete certificate for domain {domain}: {error}" +msgid "Failed to enable certificate renewal management for {domain}: {error}" +msgstr "Falló la eliminación del certificado para el dominio {domain}: {error}" + +#: plinth/modules/letsencrypt/views.py:112 +#, fuzzy, python-brace-format +#| msgid "Certificate successfully deleted for domain {domain}" +msgid "Certificate renewal management disabled for {domain}." +msgstr "El certificado para el dominio {domain} ha sido eliminado con éxito" + +#: plinth/modules/letsencrypt/views.py:118 +#, fuzzy, python-brace-format +#| msgid "Failed to obtain certificate for domain {domain}: {error}" +msgid "Failed to switch certificate renewal management for {domain}: {error}" +msgstr "Falló la obtención del certificado para el dominio {domain}: {error}" + +#: plinth/modules/letsencrypt/views.py:134 +#, fuzzy, python-brace-format +#| msgid "Failed to delete certificate for domain {domain}: {error}" +msgid "Failed to disable certificate renewal management for {domain}: {error}" +msgstr "Falló la eliminación del certificado para el dominio {domain}: {error}" + +#: plinth/modules/letsencrypt/views.py:141 #, python-brace-format msgid "Certificate successfully deleted for domain {domain}" msgstr "El certificado para el dominio {domain} ha sido eliminado con éxito" -#: plinth/modules/letsencrypt/views.py:95 +#: plinth/modules/letsencrypt/views.py:146 #, python-brace-format msgid "Failed to delete certificate for domain {domain}: {error}" msgstr "Falló la eliminación del certificado para el dominio {domain}: {error}" #: plinth/modules/matrixsynapse/__init__.py:41 -msgid "" -"Chat Server \n" -" (Matrix Synapse)" +#, fuzzy +#| msgid "" +#| "Chat Server \n" +#| " (Matrix Synapse)" +msgid "Matrix Synapse" msgstr "" "Servidor de Chat \n" " (Matrix Synapse)" -#: plinth/modules/matrixsynapse/__init__.py:44 +#: plinth/modules/matrixsynapse/__init__.py:46 msgid "" "Matrix is an new " "ecosystem for open, federated instant messaging and VoIP. Synapse is a " @@ -1519,19 +1698,15 @@ msgstr "" "funcionar. La federación de los servidores permite que los usuarios de un " "servidor Matrix contacten con los de otro servidor." -#: plinth/modules/matrixsynapse/__init__.py:52 +#: plinth/modules/matrixsynapse/__init__.py:54 msgid "" "To communicate, you can use the available clients for mobile, desktop and the web. Riot client is recommended." msgstr "" -"Para comunicarse puede usar los clientes disponibles para móvil, escritorio y la web. Se recomienda el " -"cliente Riot." - -#: plinth/modules/matrixsynapse/forms.py:31 -msgid "Select the domain name" -msgstr "Seleccione el nombre de dominio" +"Para comunicarse puede usar los clientes disponibles para móvil, escritorio y la web. Se recomienda " +"el cliente Riot." #: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:34 msgid "" @@ -1578,14 +1753,20 @@ msgstr "" "no se puede cambiar el nombre de dominio una vez ha sido configurado." #: plinth/modules/minetest/__init__.py:48 -msgid "" -"Block Sandbox \n" -" (Minetest)" +msgid "Minetest" +msgstr "" + +#: plinth/modules/minetest/__init__.py:50 +#, fuzzy +#| msgid "" +#| "Block Sandbox \n" +#| " (Minetest)" +msgid "Block Sandbox" msgstr "" "Sandbox de bloques \n" " (Minetest)" -#: plinth/modules/minetest/__init__.py:52 +#: plinth/modules/minetest/__init__.py:54 #, python-brace-format msgid "" "Minetest is a multiplayer infinite-world block sandbox. This module enables " @@ -1729,7 +1910,7 @@ msgstr "Intérprete de órdenes seguro" #: plinth/modules/monkeysphere/templates/monkeysphere.html:87 #: plinth/modules/monkeysphere/templates/monkeysphere_details.html:60 -#: plinth/service.py:117 +#: plinth/service.py:116 msgid "Web Server" msgstr "Servidor Web" @@ -1828,14 +2009,20 @@ msgid "Error occurred while publishing key." msgstr "Se ha producido un error al publicar la clave." #: plinth/modules/mumble/__init__.py:35 -msgid "" -"Voice Chat \n" -" (Mumble)" +msgid "Mumble" +msgstr "" + +#: plinth/modules/mumble/__init__.py:37 +#, fuzzy +#| msgid "" +#| "Voice Chat \n" +#| " (Mumble)" +msgid "Voice Chat" msgstr "" "Chat de voz \n" " (Mumble)" -#: plinth/modules/mumble/__init__.py:44 +#: plinth/modules/mumble/__init__.py:46 msgid "" "Mumble is an open source, low-latency, encrypted, high quality voice chat " "software." @@ -1843,7 +2030,7 @@ msgstr "" "Mumble es un software libre de gran calidad para chat de voz, de baja " "latencia y con cifrado." -#: plinth/modules/mumble/__init__.py:47 +#: plinth/modules/mumble/__init__.py:49 msgid "" "You can connect to your Mumble server on the regular Mumble port 64738. Clients to connect to Mumble from your " @@ -2361,7 +2548,7 @@ msgid "This connection is not active." msgstr "Esta conexión no está activa." #: plinth/modules/networks/templates/connection_show.html:266 -#: plinth/modules/security/__init__.py:32 plinth/modules/security/views.py:46 +#: plinth/modules/security/__init__.py:32 plinth/modules/security/views.py:48 msgid "Security" msgstr "Protección" @@ -2467,14 +2654,22 @@ msgid "Inactive" msgstr "Inactiva" #: plinth/modules/openvpn/__init__.py:42 -msgid "" -"Virtual Private Network \n" -" (OpenVPN)" +#, fuzzy +#| msgid "Open" +msgid "OpenVPN" +msgstr "Abierto" + +#: plinth/modules/openvpn/__init__.py:44 +#, fuzzy +#| msgid "" +#| "Virtual Private Network \n" +#| " (OpenVPN)" +msgid "Virtual Private Network" msgstr "" "Red privada virtual\n" " (OpenVPN)" -#: plinth/modules/openvpn/__init__.py:46 +#: plinth/modules/openvpn/__init__.py:48 #, python-brace-format msgid "" "Virtual Private Network (VPN) is a technique for securely connecting two " @@ -2491,7 +2686,7 @@ msgstr "" "forma privada. También puede acceder a Internet a través de su {box_name} " "para añadir protección y anonimato." -#: plinth/modules/openvpn/__init__.py:84 +#: plinth/modules/openvpn/__init__.py:86 #, python-brace-format msgid "" "Download Profile" @@ -2582,10 +2777,18 @@ msgid "Setup failed." msgstr "Ha fallado la configuración." #: plinth/modules/pagekite/__init__.py:44 -msgid "Public Visibility (PageKite)" +#, fuzzy +#| msgid "Pagekite" +msgid "PageKite" +msgstr "PageKite" + +#: plinth/modules/pagekite/__init__.py:46 +#, fuzzy +#| msgid "Public Visibility (PageKite)" +msgid "Public Visibility" msgstr "Visibilidad pública (PageKite)" -#: plinth/modules/pagekite/__init__.py:48 +#: plinth/modules/pagekite/__init__.py:50 #, python-brace-format msgid "" "PageKite is a system for exposing {box_name} services when you don't have a " @@ -2598,18 +2801,18 @@ msgstr "" "servicios de su {box_name} no son accesibles desde Internet. Esto incluye " "las siguientes situaciones:" -#: plinth/modules/pagekite/__init__.py:55 +#: plinth/modules/pagekite/__init__.py:57 #, python-brace-format msgid "{box_name} is behind a restricted firewall." msgstr "{box_name} está detrás de un firewall restringido." -#: plinth/modules/pagekite/__init__.py:59 +#: plinth/modules/pagekite/__init__.py:61 #, python-brace-format msgid "{box_name} is connected to a (wireless) router which you don't control." msgstr "" "{box_name} está conectado a un router (inalámbrico) que usted no controla." -#: plinth/modules/pagekite/__init__.py:62 +#: plinth/modules/pagekite/__init__.py:64 msgid "" "Your ISP does not provide you an external IP address and instead provides " "Internet connection through NAT." @@ -2617,7 +2820,7 @@ msgstr "" "Su proveedor de servicio no le da una dirección IP externa y, por el " "contrario, le facilita conexión a Internet a través de un NAT." -#: plinth/modules/pagekite/__init__.py:65 +#: plinth/modules/pagekite/__init__.py:67 msgid "" "Your ISP does not provide you a static IP address and your IP address " "changes evertime you connect to Internet." @@ -2625,11 +2828,11 @@ msgstr "" "Su proveedor de servicios no le da una dirección IP estática por lo que su " "IP cambia a menudo cada vez que se conecta a Internet." -#: plinth/modules/pagekite/__init__.py:68 +#: plinth/modules/pagekite/__init__.py:70 msgid "Your ISP limits incoming connections." msgstr "Su proveedor de servicios limita las conexiones entrantes." -#: plinth/modules/pagekite/__init__.py:71 +#: plinth/modules/pagekite/__init__.py:73 #, python-brace-format msgid "" "PageKite works around NAT, firewalls and IP-address limitations by using a " @@ -2928,8 +3131,8 @@ msgstr "" "La configuración de PageKite ha terminado. Los servicios HTTP y HTTPS están " "activos." -#: plinth/modules/power/__init__.py:28 plinth/modules/power/views.py:50 -#: plinth/modules/power/views.py:65 +#: plinth/modules/power/__init__.py:28 plinth/modules/power/views.py:51 +#: plinth/modules/power/views.py:67 msgid "Power" msgstr "Apagar / Reiniciar" @@ -2938,10 +3141,22 @@ msgid "Restart or shut down the system." msgstr "Reiniciar o apagar el sistema." #: plinth/modules/power/templates/power.html:28 +#, fuzzy +#| msgid "" +#| "Another installation or upgrade is already running. Please wait for a few " +#| "moments before trying again." +msgid "" +"Currently an installation or upgrade is running. Consider waiting until it's " +"finished before shutting down or restarting." +msgstr "" +"Otra instalación o actualización está actualmente en ejecución. Por favor " +"espere unos momentos antes de intentarlo de nuevo." + +#: plinth/modules/power/templates/power.html:37 msgid "Restart »" msgstr "Reiniciar »" -#: plinth/modules/power/templates/power.html:31 +#: plinth/modules/power/templates/power.html:40 msgid "Shut Down »" msgstr "Apagar »" @@ -2953,7 +3168,20 @@ msgstr "" "¿Seguro que desea reiniciar el sistema? No podrá acceder a esta interfaz web " "hasta que el sistema haya reiniciado." -#: plinth/modules/power/templates/power_restart.html:42 +#: plinth/modules/power/templates/power_restart.html:38 +#, fuzzy +#| msgid "" +#| "Another installation or upgrade is already running. Please wait for a few " +#| "moments before trying again." +msgid "" +"Currently an installation or upgrade is running. Consider waiting until it's " +"finished before restarting." +msgstr "" +"Otra instalación o actualización está actualmente en ejecución. Por favor " +"espere unos momentos antes de intentarlo de nuevo." + +#: plinth/modules/power/templates/power_restart.html:52 +#: plinth/modules/power/templates/power_restart.html:55 msgid "Restart Now" msgstr "Reiniciar ahora" @@ -2965,19 +3193,38 @@ msgstr "" "¿Seguro que quiere apagar el sistema? Una vez apagado no podrá acceder a " "esta interfaz web." -#: plinth/modules/power/templates/power_shutdown.html:41 +#: plinth/modules/power/templates/power_shutdown.html:37 +#, fuzzy +#| msgid "" +#| "Another installation or upgrade is already running. Please wait for a few " +#| "moments before trying again." +msgid "" +"Currently an installation or upgrade is running. Consider waiting until it's " +"finished before shutting down." +msgstr "" +"Otra instalación o actualización está actualmente en ejecución. Por favor " +"espere unos momentos antes de intentarlo de nuevo." + +#: plinth/modules/power/templates/power_shutdown.html:51 +#: plinth/modules/power/templates/power_shutdown.html:54 msgid "Shut Down Now" msgstr "Apagar ahora" #: plinth/modules/privoxy/__init__.py:43 -msgid "" -"Web Proxy \n" -" (Privoxy)" +msgid "Privoxy" +msgstr "" + +#: plinth/modules/privoxy/__init__.py:45 +#, fuzzy +#| msgid "" +#| "Web Proxy \n" +#| " (Privoxy)" +msgid "Web Proxy" msgstr "" "Proxy Web \n" " (Privoxy)" -#: plinth/modules/privoxy/__init__.py:46 +#: plinth/modules/privoxy/__init__.py:48 msgid "" "Privoxy is a non-caching web proxy with advanced filtering capabilities for " "enhancing privacy, modifying web page data and HTTP headers, controlling " @@ -2988,7 +3235,7 @@ msgstr "" "cabeceras HTTP, controlar el acceso y eliminar publicidad y otra basura de " "Internet. " -#: plinth/modules/privoxy/__init__.py:52 +#: plinth/modules/privoxy/__init__.py:54 #, python-brace-format msgid "" "You can use Privoxy by modifying your browser proxy settings to your " @@ -3003,20 +3250,26 @@ msgstr "" "documentación en http://config." "privoxy.org/ o http://p.p." -#: plinth/modules/privoxy/__init__.py:144 +#: plinth/modules/privoxy/__init__.py:147 #, python-brace-format msgid "Access {url} with proxy {proxy} on tcp{kind}" msgstr "Acceso a {url} con proxy {proxy} en tcp {kind}" #: plinth/modules/quassel/__init__.py:42 -msgid "" -"IRC Client \n" -" (Quassel)" +msgid "Quassel" +msgstr "" + +#: plinth/modules/quassel/__init__.py:44 +#, fuzzy +#| msgid "" +#| "IRC Client \n" +#| " (Quassel)" +msgid "IRC Client" msgstr "" "Cliente IRC \n" " (Quassel)" -#: plinth/modules/quassel/__init__.py:46 +#: plinth/modules/quassel/__init__.py:48 #, python-brace-format msgid "" "Quassel is an IRC application that is split into two parts, a \"core\" and a " @@ -3033,7 +3286,7 @@ msgstr "" "conectado de forma que distintos clientes Quassel pueden conectarse y " "desconectarse de este servidor desde un ordenador de escritorio o un móvil." -#: plinth/modules/quassel/__init__.py:54 +#: plinth/modules/quassel/__init__.py:56 msgid "" "You can connect to your Quassel core on the default Quassel port 4242. " "Clients to connect to Quassel from your móvil." #: plinth/modules/radicale/__init__.py:43 -msgid "" -"Calendar and Addressbook \n" -" (Radicale)" +msgid "Radicale" +msgstr "" + +#: plinth/modules/radicale/__init__.py:45 +#, fuzzy +#| msgid "" +#| "Calendar and Addressbook \n" +#| " (Radicale)" +msgid "Calendar and Addressbook" msgstr "" "Calendario y Contactos \n" " (Radicale)" -#: plinth/modules/radicale/__init__.py:47 -#, python-brace-format +#: plinth/modules/radicale/__init__.py:49 +#, fuzzy, python-brace-format +#| msgid "" +#| "Radicale is a CalDAV and CardDAV server. It allows synchronization and " +#| "sharing of scheduling and contact data. To use Radicale, a " +#| "supported client application is needed. Radicale can be accessed by " +#| "any user with a {box_name} login." msgid "" "Radicale is a CalDAV and CardDAV server. It allows synchronization and " "sharing of scheduling and contact data. To use Radicale, a supported " -"client application is needed. Radicale can be accessed by any user with " -"a {box_name} login." +"radicale.org/clients/\">supported client application is needed. Radicale " +"can be accessed by any user with a {box_name} login." msgstr "" "Radicale es un servidor CalDAV y CardDAV que le permite sincronizar y " "compartir su calendario y los datos de sus contactos. Para usar Radicale " @@ -3090,14 +3354,16 @@ msgid "Access rights configuration updated" msgstr "Configuración de derechos de acceso actualizada" #: plinth/modules/repro/__init__.py:38 -msgid "" -"SIP Server \n" -" (repro)" +msgid "repro" msgstr "" -"Servidor SIP \n" -" (repro)" -#: plinth/modules/repro/__init__.py:41 +#: plinth/modules/repro/__init__.py:40 +#, fuzzy +#| msgid "DNS Server" +msgid "SIP Server" +msgstr "Servidor DNS" + +#: plinth/modules/repro/__init__.py:43 msgid "" "repro provides various SIP services that a SIP softphone can utilize to " "provide audio and video calls as well as presence and instant messaging. " @@ -3112,7 +3378,7 @@ msgstr "" "un proxy para federar comunicaciones SIP con otros servidores de Internet de " "forma parecida al email." -#: plinth/modules/repro/__init__.py:48 +#: plinth/modules/repro/__init__.py:50 msgid "" "To make SIP calls, a client application is needed. Available clients include " "Jitsi (for computers) and CsipSimple (para teléfonos Android)." -#: plinth/modules/repro/__init__.py:53 +#: plinth/modules/repro/__init__.py:55 msgid "" "Note: Before using repro, domains and users will need to " "be configured using the web-based " @@ -3139,14 +3405,20 @@ msgstr "" "reiniciar el servicio repro: desactive el servicio y vuélvalo a activarlo." #: plinth/modules/restore/__init__.py:36 -msgid "" -"Unhosted Storage \n" -" (reStore)" +msgid "reStore" +msgstr "" + +#: plinth/modules/restore/__init__.py:38 +#, fuzzy +#| msgid "" +#| "Unhosted Storage \n" +#| " (reStore)" +msgid "Unhosted Storage" msgstr "" "Almacenamiento sin servidor \n" " (reStore)" -#: plinth/modules/restore/__init__.py:40 +#: plinth/modules/restore/__init__.py:42 #, python-brace-format msgid "" "reStore is a server for unhosted web " @@ -3162,7 +3434,7 @@ msgstr "" "el usuario. Con reStore su {box_name} se convierte en un servidor de " "almacenamiento sin servidor." -#: plinth/modules/restore/__init__.py:47 +#: plinth/modules/restore/__init__.py:49 msgid "" "You can create and edit accounts in the reStore web-" "interface." @@ -3171,14 +3443,20 @@ msgstr "" "reStore." #: plinth/modules/roundcube/__init__.py:35 -msgid "" -"Email Client \n" -" (Roundcube)" +msgid "Roundcube" +msgstr "" + +#: plinth/modules/roundcube/__init__.py:37 +#, fuzzy +#| msgid "" +#| "Email Client \n" +#| " (Roundcube)" +msgid "Email Client" msgstr "" "Cliente de correo \n" " (Roundcube)" -#: plinth/modules/roundcube/__init__.py:38 +#: plinth/modules/roundcube/__init__.py:40 msgid "" "Roundcube webmail is a browser-based multilingual IMAP client with an " "application-like user interface. It provides full functionality you expect " @@ -3191,7 +3469,7 @@ msgstr "" "contactos, organización de carpetas, búsqueda de mensajes y corrección " "ortográfica." -#: plinth/modules/roundcube/__init__.py:44 +#: plinth/modules/roundcube/__init__.py:46 msgid "" "You can access Roundcube from /roundcube. Provide " "the username and password of the email account you wish to access followed " @@ -3206,7 +3484,7 @@ msgstr "" "(recomendado) rellene el campo del servidor como imaps://imap.ejemplo." "com." -#: plinth/modules/roundcube/__init__.py:51 +#: plinth/modules/roundcube/__init__.py:53 msgid "" "For Gmail, username will be your Gmail address, password will be your Google " "account password and server will be imaps://imap.gmail.com. " @@ -3236,28 +3514,45 @@ msgstr "" "pueden acceder a la consola por SSH. Los usuarios de consola pueden acceder " "a ciertos servicios sin autenticación posterior." -#: plinth/modules/security/views.py:63 +#: plinth/modules/security/forms.py:35 +msgid "Fail2ban (recommended)" +msgstr "" + +#: plinth/modules/security/forms.py:36 +msgid "" +"When this option is enabled, fail2ban will limit brute force break-in " +"attempts to the SSH server and other password protected internet-services " +"which are enabled." +msgstr "" + +#: plinth/modules/security/views.py:66 #, python-brace-format msgid "Error setting restricted access: {exception}" msgstr "Error al definir el acceso restringido: {exception}" -#: plinth/modules/security/views.py:66 +#: plinth/modules/security/views.py:69 msgid "Updated security configuration" msgstr "Configuración de seguridad actualizada" #: plinth/modules/shaarli/__init__.py:35 -msgid "" -"Bookmarks \n" -" (Shaarli)" +msgid "Shaarli" +msgstr "" + +#: plinth/modules/shaarli/__init__.py:37 +#, fuzzy +#| msgid "" +#| "Bookmarks \n" +#| " (Shaarli)" +msgid "Bookmarks" msgstr "" "Marcadores \n" " (Shaarli)" -#: plinth/modules/shaarli/__init__.py:38 +#: plinth/modules/shaarli/__init__.py:40 msgid "Shaarli allows you to save and share bookmarks." msgstr "Shaarli le permite guardar y compartir marcadores." -#: plinth/modules/shaarli/__init__.py:40 +#: plinth/modules/shaarli/__init__.py:42 msgid "" "When enabled, Shaarli will be available from /shaarli path on the web server. Note that Shaarli only supports a single user " @@ -3384,6 +3679,18 @@ msgstr "Debe reiniciar el sistema para completar la restauración." msgid "Rollback to Snapshot" msgstr "Restaurar a instantánea" +#: plinth/modules/ssh/__init__.py:37 +msgid "Secure Shell (SSH) Server" +msgstr "Servidor de intérprete de órdenes seguro (SSH)" + +#: plinth/modules/ssh/__init__.py:40 +msgid "" +"A Secure Shell server uses the secure shell protocol to accept connections " +"from remote computers. An authorized remote computer can perform " +"administration tasks, copy files or run other services using such " +"connections." +msgstr "" + #: plinth/modules/sso/__init__.py:30 msgid "Single Sign On" msgstr "Inicio de sesión único" @@ -3393,14 +3700,20 @@ msgid "Login" msgstr "Inicio de sesión" #: plinth/modules/syncthing/__init__.py:39 -msgid "" -"File Synchronization \n" -" (Syncthing)" +msgid "Syncthing" +msgstr "" + +#: plinth/modules/syncthing/__init__.py:41 +#, fuzzy +#| msgid "" +#| "File Synchronization \n" +#| " (Syncthing)" +msgid "File Synchronization" msgstr "" "Sincronización de archivos\n" " (Syncthing)" -#: plinth/modules/syncthing/__init__.py:42 +#: plinth/modules/syncthing/__init__.py:44 msgid "" "Syncthing is an application to synchronize files across multiple devices, e." "g. your desktop computer and mobile phone. Creation, modification, or " @@ -3412,7 +3725,7 @@ msgstr "" "modificación o borrado de archivos en uno de los dispositivos se replica " "automáticamente en todos los demás que también estén ejecutando Syncthing." -#: plinth/modules/syncthing/__init__.py:47 +#: plinth/modules/syncthing/__init__.py:49 #, python-brace-format msgid "" "Running Syncthing on {box_name} provides an extra synchronization point for " @@ -3427,24 +3740,30 @@ msgstr "" "{box_name} ejecuta una instancia única de Syncthing que puede ser usada por " "varios usuarios. Cada conjunto de dispositivos de un usuario puede " "sincronizarse con un conjunto distinto de carpetas. La interfaz web en " -"{box_name} solo está disponible para los usuarios que pertenezcan al grupo \"" -"admin\"." +"{box_name} solo está disponible para los usuarios que pertenezcan al grupo " +"\"admin\"." -#: plinth/modules/syncthing/__init__.py:54 +#: plinth/modules/syncthing/__init__.py:56 msgid "" "When enabled, Syncthing's web interface will be available from /syncthing. Desktop and mobile clients are also available." msgstr "" -"Cuando se activa, la interfaz web de Syncthing está accesible en /syncthing. También hay disponibles clientes de móvil y escritorio." +"Cuando se activa, la interfaz web de Syncthing está accesible en /syncthing. También hay disponibles clientes de móvil y escritorio." #: plinth/modules/tahoe/__init__.py:42 -msgid "Distributed File Storage (Tahoe-LAFS)" +msgid "Tahoe-LAFS" +msgstr "" + +#: plinth/modules/tahoe/__init__.py:44 +#, fuzzy +#| msgid "Distributed File Storage (Tahoe-LAFS)" +msgid "Distributed File Storage" msgstr "Almacén de archivos distribuido (Tahoe-LAFS)" -#: plinth/modules/tahoe/__init__.py:73 +#: plinth/modules/tahoe/__init__.py:75 msgid "" "Tahoe-LAFS is a decentralized secure file storage system. It uses provider " "independent security to store files over a distributed network of storage " @@ -3457,7 +3776,7 @@ msgstr "" "de los nodos fallara, sus archivos seguirían estando disponibles a través " "del resto de nodos." -#: plinth/modules/tahoe/__init__.py:78 +#: plinth/modules/tahoe/__init__.py:80 #, python-brace-format msgid "" "This {box_name} hosts a storage node and an introducer by default. " @@ -3478,8 +3797,8 @@ msgid "" msgstr "" "El dominio del servidor Tahoe-LAFS es %(domain_name)s. Cambiar el " "nombre de dominio de FreedomBox hará necesario reinstalar Tahoe-LAFS lo que " -"implica que PERDERÁ SUS DATOS. Puede acceder a Tahoe-LAFS en https://%(domain_name)s:5678." +"implica que PERDERÁ SUS DATOS. Puede acceder a Tahoe-LAFS en https://%(domain_name)s:5678." #: plinth/modules/tahoe/templates/tahoe-post-setup.html:55 msgid "Local introducer" @@ -3507,7 +3826,17 @@ msgstr "Presentadores conectados" msgid "Remove" msgstr "Eliminar" -#: plinth/modules/tor/__init__.py:45 +#: plinth/modules/tor/__init__.py:42 +msgid "Tor" +msgstr "" + +#: plinth/modules/tor/__init__.py:44 +#, fuzzy +#| msgid "Tor Anonymity Network" +msgid "Anonymity Network" +msgstr "Red anónima Tor" + +#: plinth/modules/tor/__init__.py:47 msgid "" "Tor is an anonymous communication system. You can learn more about it from " "the Tor Project website. For " @@ -3521,36 +3850,36 @@ msgstr "" "download/download-easy.html.en\">Navegador Tor para tener la mejor " "protección cuando navega por la red." -#: plinth/modules/tor/__init__.py:70 plinth/modules/tor/__init__.py:112 +#: plinth/modules/tor/__init__.py:72 plinth/modules/tor/__init__.py:114 msgid "Tor Anonymity Network" msgstr "Red anónima Tor" -#: plinth/modules/tor/__init__.py:76 plinth/modules/tor/__init__.py:120 +#: plinth/modules/tor/__init__.py:78 plinth/modules/tor/__init__.py:122 msgid "Tor Bridge Relay" msgstr "Puente de retransmisión Tor" -#: plinth/modules/tor/__init__.py:98 plinth/modules/tor/__init__.py:141 +#: plinth/modules/tor/__init__.py:100 plinth/modules/tor/__init__.py:143 msgid "Tor Hidden Service" msgstr "Servicio de ocultación Tor" -#: plinth/modules/tor/__init__.py:160 +#: plinth/modules/tor/__init__.py:162 msgid "Tor relay port available" msgstr "Puerto de servidor Tor disponible" -#: plinth/modules/tor/__init__.py:168 +#: plinth/modules/tor/__init__.py:170 msgid "Obfs3 transport registered" msgstr "Transporte Obfs3 registrado" -#: plinth/modules/tor/__init__.py:174 +#: plinth/modules/tor/__init__.py:176 msgid "Obfs4 transport registered" msgstr "Transporte Obfs4 registrado" -#: plinth/modules/tor/__init__.py:211 +#: plinth/modules/tor/__init__.py:213 #, python-brace-format msgid "Access URL {url} on tcp{kind} via Tor" msgstr "Acceso a URL {url} sobre tcp {kind} vía Tor" -#: plinth/modules/tor/__init__.py:222 +#: plinth/modules/tor/__init__.py:224 #, python-brace-format msgid "Confirm Tor usage at {url} on tcp{kind}" msgstr "Confirmar uso de Tor en {url} sobre tcp {kind}" @@ -3577,9 +3906,9 @@ msgid "" "or censors connections to the Tor Network. This will disable relay modes." msgstr "" "Cuando se activan, los puentes abajo configurados se usarán para conectar a " -"la red Tor. Emplee esta opción si su proveedor de servicios de Internet (ISP)" -" bloquea o censura las conexiones a la red Tor. Esto desactivará los modos " -"de reenvío." +"la red Tor. Emplee esta opción si su proveedor de servicios de Internet " +"(ISP) bloquea o censura las conexiones a la red Tor. Esto desactivará los " +"modos de reenvío." #: plinth/modules/tor/forms.py:102 msgid "Upstream bridges" @@ -3591,9 +3920,9 @@ msgid "" "\">https://bridges.torproject.org/ and copy/paste the bridge information " "here. Currently supported transports are none, obfs3, obfs4 and scamblesuit." msgstr "" -"Puede obtener algunos puentes en https://bridges.torproject.org/ y copiar/pegar la información aquí. Los " -"tipos de transporte actualmente soportados son ninguno, obfs3, obfs4 y " +"Puede obtener algunos puentes en https://bridges.torproject.org/ y copiar/pegar la información aquí. " +"Los tipos de transporte actualmente soportados son ninguno, obfs3, obfs4 y " "scamblesuit." #: plinth/modules/tor/forms.py:112 @@ -3722,14 +4051,21 @@ msgid "An error occurred during configuration." msgstr "Ha habido un error en la configuración." #: plinth/modules/transmission/__init__.py:38 -msgid "" -"BitTorrent \n" -" (Transmission)" +#, fuzzy +#| msgid "" +#| "BitTorrent \n" +#| " (Transmission)" +msgid "Transmission" msgstr "" "BitTorrent \n" " (Transmission)" -#: plinth/modules/transmission/__init__.py:41 +#: plinth/modules/transmission/__init__.py:40 +#, fuzzy +msgid "BitTorrent" +msgstr "Deluge BitTorrent" + +#: plinth/modules/transmission/__init__.py:43 msgid "" "BitTorrent is a peer-to-peer file sharing protocol. Transmission daemon " "handles Bitorrent file sharing. Note that BitTorrent is not anonymous." @@ -3738,7 +4074,7 @@ msgstr "" "Transmission controla la compartición de archivos. Recuerde que BitTorrent " "no es anónimo." -#: plinth/modules/transmission/__init__.py:44 +#: plinth/modules/transmission/__init__.py:46 msgid "" "Access the web interface at /transmission." msgstr "" @@ -3770,15 +4106,21 @@ msgstr "" "Clave para acceder a la interfaz web. La clave actual se muestra en formato " "hash. Para introducir una clave nueva escríbala como texto." -#: plinth/modules/ttrss/__init__.py:37 -msgid "" -"News Feed Reader \n" -" (Tiny Tiny RSS)" +#: plinth/modules/ttrss/__init__.py:39 +msgid "Tiny Tiny RSS" +msgstr "" + +#: plinth/modules/ttrss/__init__.py:41 +#, fuzzy +#| msgid "" +#| "News Feed Reader \n" +#| " (Tiny Tiny RSS)" +msgid "News Feed Reader" msgstr "" "Lector de noticias \n" " (Tiny Tiny RSS)" -#: plinth/modules/ttrss/__init__.py:40 +#: plinth/modules/ttrss/__init__.py:44 msgid "" "Tiny Tiny RSS is a news feed (RSS/Atom) reader and aggregator, designed to " "allow reading news from any location, while feeling as close to a real " @@ -3788,10 +4130,15 @@ msgstr "" "permitir noticias desde cualquier lugar, mientras mantiene un aspecto de " "aplicación de escritorio en la medida de lo posible." -#: plinth/modules/ttrss/__init__.py:44 +#: plinth/modules/ttrss/__init__.py:49 +#, fuzzy, python-brace-format +#| msgid "" +#| "When enabled, Tiny Tiny RSS will be available from /" +#| "tt-rss path on the web server." msgid "" "When enabled, Tiny Tiny RSS will be available from /tt-" -"rss path on the web server." +"rss path on the web server. It can be accessed by any user with a {box_name} login." msgstr "" "Cuando está activado Tiny Tiny RSS está disponible en /" "tt-rss/." @@ -4110,15 +4457,11 @@ msgstr "cambio de medio" msgid "configuration file: {file}" msgstr "archivo de configuración: {file}" -#: plinth/service.py:119 +#: plinth/service.py:118 msgid "Web Server over Secure Socket Layer" msgstr "Servidor Web sobre SSL" -#: plinth/service.py:121 -msgid "Secure Shell (SSH) Server" -msgstr "Servidor de intérprete de órdenes seguro (SSH)" - -#: plinth/service.py:123 +#: plinth/service.py:120 #, python-brace-format msgid "{box_name} Web Interface (Plinth)" msgstr "Interfaz web (Plinth) de {box_name}" @@ -4170,11 +4513,11 @@ msgstr "" "podamos solucionarlo. Por favor, adjunte también el resgistro de estado al informe de error." -#: plinth/templates/apps.html:25 +#: plinth/templates/apps.html:33 msgid "Services and Applications" msgstr "Servicios y aplicaciones" -#: plinth/templates/apps.html:28 +#: plinth/templates/apps.html:36 #, python-format msgid "" "You can install and run various services and applications on your " @@ -4185,7 +4528,7 @@ msgstr "" "en los enlaces del panel izquierdo para obtener una descripción de la " "aplicación y decidir si la instala." -#: plinth/templates/apps.html:36 +#: plinth/templates/apps.html:44 msgid "" "This box can be your photo sharing site, your instant messaging site, your " "social networking site, your news site. Remember web portals? We can be " @@ -4361,16 +4704,16 @@ msgstr "Instalando %(package_names)s: %(status)s" msgid "%(percentage)s%% complete" msgstr "%(percentage)s%% completado" -#: plinth/templates/system.html:25 +#: plinth/templates/system.html:33 msgid "System Configuration" msgstr "Configuración del sistema" -#: plinth/templates/system.html:28 +#: plinth/templates/system.html:36 #, python-format msgid "Here you can administrate the underlying system of your %(box_name)s." msgstr "Aquí puede administrar el sistema básico de su %(box_name)s." -#: plinth/templates/system.html:34 +#: plinth/templates/system.html:42 #, python-format msgid "" "The options affect the %(box_name)s at its most general level, so be careful!" @@ -4378,6 +4721,43 @@ msgstr "" "Estas opciones afectan a su %(box_name)s de forma general, así que ¡vaya con " "cuidado!" +#~ msgid "Select the domain name to be used for diaspora*" +#~ msgstr "Seleccione el nombre de dominio que usará diaspora*" + +#~ msgid "" +#~ "Warning! Do not change the FreedomBox domain name after setting up " +#~ "diaspora*" +#~ msgstr "" +#~ "Atención! No cambie el nombre de dominio de FreedomBox después de " +#~ "configurar diaspora*" + +#~ msgid "" +#~ "Chat Server \n" +#~ " (ejabberd)" +#~ msgstr "" +#~ "Servidor Chat \n" +#~ " (ejabberd)" + +#~ msgid "Wiki and Blog (ikiwiki)" +#~ msgstr "Blog y Wiki (ikiwiki)" + +#~ msgid "" +#~ "Gobby Server \n" +#~ " (infinoted)" +#~ msgstr "" +#~ "Servidor Gobby\n" +#~ " (infinoted)" + +#~ msgid "Select the domain name" +#~ msgstr "Seleccione el nombre de dominio" + +#~ msgid "" +#~ "SIP Server \n" +#~ " (repro)" +#~ msgstr "" +#~ "Servidor SIP \n" +#~ " (repro)" + #~ msgid "Applications" #~ msgstr "Aplicaciones" @@ -4585,13 +4965,6 @@ msgstr "" #~ msgid "BitTorrent (Deluge)" #~ msgstr "BitTorrent (Deluge)" -#, fuzzy -#~ msgid "Deluge BitTorrent" -#~ msgstr "Deluge BitTorrent" - -#~ msgid "Enable Deluge" -#~ msgstr "Activar Deluge" - #~ msgid "System Diagnostics" #~ msgstr "Diagnósticos del sistema" @@ -4611,9 +4984,6 @@ msgstr "" #~ msgid "Enable ikiwiki" #~ msgstr "Activar ikiwiki" -#~ msgid "Wiki and Blog" -#~ msgstr "Wiki y Blog" - #~ msgid "Generate PGP Key" #~ msgstr "Generar clave PGP" diff --git a/plinth/locale/fa/LC_MESSAGES/django.po b/plinth/locale/fa/LC_MESSAGES/django.po index a751df31b..0f7e329f5 100644 --- a/plinth/locale/fa/LC_MESSAGES/django.po +++ b/plinth/locale/fa/LC_MESSAGES/django.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2017-07-10 22:56-0400\n" +"POT-Creation-Date: 2017-09-24 11:24-0400\n" "PO-Revision-Date: 2016-08-12 15:51+0000\n" "Last-Translator: Masoud Abkenar \n" "Language-Team: Persian /deluge path on the web server. The default password is 'deluge', but " @@ -397,21 +409,22 @@ msgstr "آزمون" msgid "Result" msgstr "نتیجه‌ها" -#: plinth/modules/diaspora/__init__.py:61 +#: plinth/modules/diaspora/__init__.py:51 +msgid "diaspora*" +msgstr "" + +#: plinth/modules/diaspora/__init__.py:53 +msgid "Federated Social Network" +msgstr "" + +#: plinth/modules/diaspora/__init__.py:62 msgid "" "diaspora* is a decentralized social network where you can store and control " "your own data." msgstr "" -#: plinth/modules/diaspora/forms.py:30 -#, fuzzy -#| msgid "Invalid domain name" -msgid "Select the domain name to be used for diaspora*" -msgstr "نام دامنه معتبر نیست" - -#: plinth/modules/diaspora/forms.py:32 -msgid "" -"Warning! Do not change the FreedomBox domain name after setting up diaspora*" +#: plinth/modules/diaspora/forms.py:31 +msgid "Enable new user registrations" msgstr "" #: plinth/modules/diaspora/templates/diaspora-post-setup.html:32 @@ -438,7 +451,21 @@ msgstr "" msgid "Update setup" msgstr "به‌روزرسانی وضعیت" -#: plinth/modules/disks/__init__.py:33 plinth/modules/disks/views.py:39 +#: plinth/modules/diaspora/views.py:96 plinth/modules/ejabberd/views.py:60 +#: plinth/modules/openvpn/views.py:145 plinth/modules/tor/views.py:134 +#: plinth/views.py:112 +msgid "Setting unchanged" +msgstr "" + +#: plinth/modules/diaspora/views.py:100 +msgid "User registrations enabled" +msgstr "" + +#: plinth/modules/diaspora/views.py:104 +msgid "User registrations disabled" +msgstr "" + +#: plinth/modules/disks/__init__.py:33 plinth/modules/disks/views.py:45 msgid "Disks" msgstr "دیسک‌ها" @@ -484,7 +511,7 @@ msgstr "" #: plinth/modules/disks/templates/disks.html:90 #: plinth/modules/disks/templates/disks.html:102 #: plinth/modules/disks/templates/disks_expand.html:45 -#: plinth/modules/disks/views.py:56 +#: plinth/modules/disks/views.py:62 msgid "Expand Root Partition" msgstr "بزرگ‌کردن پارتیشن ریشه" @@ -505,50 +532,57 @@ msgstr "" "%(expandable_root_size)s فضای خالی در اختیار پارتیشن ریشهٔ شما قرار خواهد " "گرفت." -#: plinth/modules/disks/views.py:65 +#: plinth/modules/disks/views.py:71 #, python-brace-format msgid "Error expanding partition: {exception}" msgstr "خطا در هنگام بزرگ‌کردن پارتیشن: {exception}" -#: plinth/modules/disks/views.py:68 +#: plinth/modules/disks/views.py:74 msgid "Partition expanded successfully." msgstr "پارتیشن با موفقیت بزرگ شد." -#: plinth/modules/disks/views.py:77 +#: plinth/modules/disks/views.py:93 +#, python-format, python-brace-format +msgid "" +"Warning: Low space on system partition ({percent_used}% used, {free_space} " +"free)." +msgstr "" + +#: plinth/modules/disks/views.py:130 #, fuzzy, python-brace-format msgid "{disk_size:.1f} bytes" msgstr "{disk_size} بایت" -#: plinth/modules/disks/views.py:81 +#: plinth/modules/disks/views.py:134 #, fuzzy, python-brace-format #| msgid "{disk_size} KiB" msgid "{disk_size:.1f} KiB" msgstr "{disk_size} KiB" -#: plinth/modules/disks/views.py:85 +#: plinth/modules/disks/views.py:138 #, fuzzy, python-brace-format #| msgid "{disk_size} MiB" msgid "{disk_size:.1f} MiB" msgstr "{disk_size} MiB" -#: plinth/modules/disks/views.py:89 +#: plinth/modules/disks/views.py:142 #, fuzzy, python-brace-format #| msgid "{disk_size} GiB" msgid "{disk_size:.1f} GiB" msgstr "{disk_size} GiB" -#: plinth/modules/disks/views.py:92 +#: plinth/modules/disks/views.py:145 #, fuzzy, python-brace-format #| msgid "{disk_size} TiB" msgid "{disk_size:.1f} TiB" msgstr "{disk_size} TiB" -#: plinth/modules/dynamicdns/__init__.py:33 +#: plinth/modules/dynamicdns/__init__.py:35 #, fuzzy msgid "Dynamic DNS Client" msgstr "برنامهٔ DNS متغیر (Dynamic DNS Client)" -#: plinth/modules/dynamicdns/__init__.py:37 +#: plinth/modules/dynamicdns/__init__.py:39 #, python-brace-format msgid "" "If your Internet provider changes your IP address periodically (i.e. every " @@ -559,7 +593,7 @@ msgstr "" "می‌دهد، دیگران نمی‌توانند شما را به راحتی در اینترنت پیدا کنند. این باعث می‌شود " "که دیگران نتوانند سرویس‌هایی را که {box_name} شما ارائه می‌دهد پیدا کنند." -#: plinth/modules/dynamicdns/__init__.py:43 +#: plinth/modules/dynamicdns/__init__.py:45 msgid "" "The solution is to assign a DNS name to your IP address and update the DNS " "name every time your IP is changed by your Internet provider. Dynamic DNS " @@ -576,11 +610,17 @@ msgstr "" "نام DNS شما را به نشانی IP شما مرتبط می‌کند، و اگر کسی در اینترنت نام DNS شما " "را جستجو کرد، نشانی IP شما را در پاسخ خواهد گرفت." -#: plinth/modules/dynamicdns/dynamicdns.py:35 plinth/modules/help/help.py:40 +#: plinth/modules/dynamicdns/__init__.py:67 +#: plinth/modules/dynamicdns/dynamicdns.py:377 +#, fuzzy +msgid "Dynamic DNS Service" +msgstr "برنامهٔ DNS متغیر (Dynamic DNS Client)" + +#: plinth/modules/dynamicdns/dynamicdns.py:43 plinth/modules/help/help.py:40 msgid "About" msgstr "درباره" -#: plinth/modules/dynamicdns/dynamicdns.py:39 +#: plinth/modules/dynamicdns/dynamicdns.py:47 #: plinth/modules/firewall/templates/firewall.html:47 #: plinth/modules/networks/templates/connection_show.html:261 #: plinth/modules/openvpn/templates/openvpn.html:67 @@ -590,7 +630,7 @@ msgstr "درباره" msgid "Status" msgstr "وضعیت" -#: plinth/modules/dynamicdns/dynamicdns.py:63 +#: plinth/modules/dynamicdns/dynamicdns.py:71 #, fuzzy msgid "" "The Variables <User>, <Pass>, <Ip>, <Domain> may be " @@ -601,7 +641,7 @@ msgstr "" "نشانی URL به کار بروند. برای جزئیات بیشتر الگوهای نشانی‌های به‌روزرسانی را از " "خدمات‌دهنده‌های نمونه ببینید." -#: plinth/modules/dynamicdns/dynamicdns.py:67 +#: plinth/modules/dynamicdns/dynamicdns.py:75 msgid "" "Please choose an update protocol according to your provider. If your " "provider does not support the GnuDIP protocol or your provider is not listed " @@ -611,7 +651,7 @@ msgstr "" "خدمات‌دهندهٔ شما از GnuDIP پشتیبانی نمی‌کند یا در فهرست نیست، می‌توانید نشانی " "به‌روزرسانی (update URL) خدمات‌دهنده‌تان را به‌کار ببرید." -#: plinth/modules/dynamicdns/dynamicdns.py:72 +#: plinth/modules/dynamicdns/dynamicdns.py:80 msgid "" "Please do not enter a URL here (like \"https://example.com/\") but only the " "hostname of the GnuDIP server (like \"example.com\")." @@ -619,18 +659,18 @@ msgstr "" "لطفاً یک نشانی URL (مانند \"https://example.com/\") را این‌جا ننویسید، بلکه " "تنها نام میزبان سرور GnuDIP را بنویسید (مانند \"example.com\")." -#: plinth/modules/dynamicdns/dynamicdns.py:76 +#: plinth/modules/dynamicdns/dynamicdns.py:84 #, python-brace-format msgid "The public domain name you want to use to reach your {box_name}." msgstr "نام دامنهٔ عمومی که با آن می‌خواهید به {box_name} خود وصل شوید." -#: plinth/modules/dynamicdns/dynamicdns.py:79 +#: plinth/modules/dynamicdns/dynamicdns.py:87 msgid "Use this option if your provider uses self signed certificates." msgstr "" "اگر خدمات‌دهندهٔ شما گواهی‌نامه‌های خودامضاشده را به‌کار می‌برد این گزینه را " "انتخاب کنید." -#: plinth/modules/dynamicdns/dynamicdns.py:82 +#: plinth/modules/dynamicdns/dynamicdns.py:90 #, fuzzy msgid "" "If this option is selected, your username and password will be used for HTTP " @@ -639,11 +679,11 @@ msgstr "" "اگر این گزینه انتخاب شود، نام کاربری و رمز شما برای تأیید هویت سادهٔ تحت وب " "(HTTP basic authentication) به کار خواهد رفت." -#: plinth/modules/dynamicdns/dynamicdns.py:85 +#: plinth/modules/dynamicdns/dynamicdns.py:93 msgid "Leave this field empty if you want to keep your current password." msgstr "اگر نمی‌خواهید رمزتان را عوض کنید، این‌جا را خالی بگذارید." -#: plinth/modules/dynamicdns/dynamicdns.py:88 +#: plinth/modules/dynamicdns/dynamicdns.py:96 #, python-brace-format msgid "" "Optional Value. If your {box_name} is not connected directly to the Internet " @@ -655,83 +695,83 @@ msgstr "" "روتر NAT وصل باشد) این نشانی برای تعیین IP واقعی به‌کار می‌رود. این نشانی باید " "صرفاً IP را برگرداند (مثال: http://myip.datasystems24.de)." -#: plinth/modules/dynamicdns/dynamicdns.py:96 +#: plinth/modules/dynamicdns/dynamicdns.py:104 msgid "The username that was used when the account was created." msgstr "نام کاربری که هنگام ساختن حساب به‌کار برده شد." -#: plinth/modules/dynamicdns/dynamicdns.py:107 +#: plinth/modules/dynamicdns/dynamicdns.py:115 msgid "Enable Dynamic DNS" msgstr "فعال‌سازی DNS متغیر" -#: plinth/modules/dynamicdns/dynamicdns.py:110 +#: plinth/modules/dynamicdns/dynamicdns.py:118 msgid "Service Type" msgstr "نوع سرویس" -#: plinth/modules/dynamicdns/dynamicdns.py:115 +#: plinth/modules/dynamicdns/dynamicdns.py:123 msgid "GnuDIP Server Address" msgstr "نشانی سرور GnuDIP" -#: plinth/modules/dynamicdns/dynamicdns.py:120 +#: plinth/modules/dynamicdns/dynamicdns.py:128 msgid "Invalid server name" msgstr "نام کاربری معتبر نیست" -#: plinth/modules/dynamicdns/dynamicdns.py:123 +#: plinth/modules/dynamicdns/dynamicdns.py:131 msgid "Update URL" msgstr "نشانی به‌روزرسانی" -#: plinth/modules/dynamicdns/dynamicdns.py:127 +#: plinth/modules/dynamicdns/dynamicdns.py:135 msgid "Accept all SSL certificates" msgstr "همهٔ گواهی‌نامه‌های SSL را بپذیر" -#: plinth/modules/dynamicdns/dynamicdns.py:131 +#: plinth/modules/dynamicdns/dynamicdns.py:139 msgid "Use HTTP basic authentication" msgstr "به‌کاربردن تأیید هویت سادهٔ تحت وب" -#: plinth/modules/dynamicdns/dynamicdns.py:143 +#: plinth/modules/dynamicdns/dynamicdns.py:151 #: plinth/modules/networks/forms.py:228 plinth/modules/transmission/forms.py:37 msgid "Username" msgstr "نام کاربری" -#: plinth/modules/dynamicdns/dynamicdns.py:146 +#: plinth/modules/dynamicdns/dynamicdns.py:154 #: plinth/modules/networks/forms.py:229 plinth/modules/transmission/forms.py:41 msgid "Password" msgstr "رمز" -#: plinth/modules/dynamicdns/dynamicdns.py:149 +#: plinth/modules/dynamicdns/dynamicdns.py:157 #: plinth/modules/networks/forms.py:231 msgid "Show password" msgstr "رمز را نشان بده" -#: plinth/modules/dynamicdns/dynamicdns.py:153 +#: plinth/modules/dynamicdns/dynamicdns.py:161 msgid "URL to look up public IP" msgstr "نشانی برای دیدن آی‌پی عمومی" -#: plinth/modules/dynamicdns/dynamicdns.py:179 +#: plinth/modules/dynamicdns/dynamicdns.py:187 msgid "Please provide an update URL or a GnuDIP server address" msgstr "" "لطفاً یک نشانی به‌روزرسانی (update URL) یا نشانی سرور GnuDIP را وارد کنید" -#: plinth/modules/dynamicdns/dynamicdns.py:184 +#: plinth/modules/dynamicdns/dynamicdns.py:192 msgid "Please provide a GnuDIP username" msgstr "لطفاً یک نام کاربری GnuDIP وارد کنید" -#: plinth/modules/dynamicdns/dynamicdns.py:188 +#: plinth/modules/dynamicdns/dynamicdns.py:196 msgid "Please provide a GnuDIP domain name" msgstr "لطفاً یک نام دامنهٔ GnuDIP وارد کنید" -#: plinth/modules/dynamicdns/dynamicdns.py:193 +#: plinth/modules/dynamicdns/dynamicdns.py:201 msgid "Please provide a password" msgstr "لطفاً یک رمز وارد کنید" -#: plinth/modules/dynamicdns/dynamicdns.py:211 +#: plinth/modules/dynamicdns/dynamicdns.py:219 msgid "Configure Dynamic DNS" msgstr "پیکربندی DNS متغیر" -#: plinth/modules/dynamicdns/dynamicdns.py:232 +#: plinth/modules/dynamicdns/dynamicdns.py:240 msgid "Dynamic DNS Status" msgstr "وضعیت DNS متغیر" -#: plinth/modules/dynamicdns/dynamicdns.py:364 +#: plinth/modules/dynamicdns/dynamicdns.py:381 #: plinth/modules/openvpn/views.py:143 plinth/modules/transmission/views.py:72 msgid "Configuration updated" msgstr "پیکربندی به‌روز شد" @@ -802,23 +842,30 @@ msgstr "" msgid "Last update" msgstr "آخرین به‌روزرسانی" -#: plinth/modules/ejabberd/__init__.py:42 -msgid "" -"Chat Server \n" -" (ejabberd)" +#: plinth/modules/ejabberd/__init__.py:45 +msgid "ejabberd" msgstr "" -#: plinth/modules/ejabberd/__init__.py:45 +#: plinth/modules/ejabberd/__init__.py:47 +#: plinth/modules/matrixsynapse/__init__.py:43 +#, fuzzy +#| msgid "Web Server" +msgid "Chat Server" +msgstr "سرور وب" + +#: plinth/modules/ejabberd/__init__.py:50 msgid "" "XMPP is an open and standardized communication protocol. Here you can run " "and configure your XMPP server, called ejabberd." msgstr "" -#: plinth/modules/ejabberd/__init__.py:48 +#: plinth/modules/ejabberd/__init__.py:54 +#, python-brace-format msgid "" -"To actually communicate, you can use the web client or any other XMPP client." +"To actually communicate, you can use the web " +"client or any other XMPP client. When enabled, ejabberd can be accessed by " +"any user with a {box_name} login." msgstr "" #: plinth/modules/ejabberd/forms.py:33 @@ -856,16 +903,11 @@ msgstr "" msgid "Configuration" msgstr "" -#: plinth/modules/ejabberd/views.py:60 plinth/modules/openvpn/views.py:145 -#: plinth/modules/tor/views.py:134 plinth/views.py:103 -msgid "Setting unchanged" -msgstr "" - -#: plinth/modules/ejabberd/views.py:64 plinth/views.py:107 +#: plinth/modules/ejabberd/views.py:64 plinth/views.py:116 msgid "Application enabled" msgstr "" -#: plinth/modules/ejabberd/views.py:67 plinth/views.py:110 +#: plinth/modules/ejabberd/views.py:67 plinth/views.py:119 msgid "Application disabled" msgstr "" @@ -920,13 +962,13 @@ msgid "Service/Port" msgstr "سرویس/پورت" #: plinth/modules/firewall/templates/firewall.html:65 -#: plinth/modules/letsencrypt/templates/letsencrypt.html:88 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:94 #: plinth/modules/names/templates/names.html:49 msgid "Enabled" msgstr "فعال" #: plinth/modules/firewall/templates/firewall.html:68 -#: plinth/modules/letsencrypt/templates/letsencrypt.html:90 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:96 #: plinth/modules/names/templates/names.html:51 #: plinth/modules/networks/forms.py:63 msgid "Disabled" @@ -1174,22 +1216,43 @@ msgid "" "before submitting the bug report." msgstr "" -#: plinth/modules/ikiwiki/__init__.py:39 -msgid "Wiki and Blog (ikiwiki)" -msgstr "ویکی و وبلاگ (ikiwiki)" +#: plinth/modules/ikiwiki/__init__.py:41 +msgid "ikiwiki" +msgstr "" -#: plinth/modules/ikiwiki/__init__.py:42 +#: plinth/modules/ikiwiki/__init__.py:43 +#, fuzzy +#| msgid "Manage Wikis and Blogs" +msgid "Wiki and Blog" +msgstr "مدیریت ویکی‌ها و وبلاگ‌ها" + +#: plinth/modules/ikiwiki/__init__.py:46 +#, fuzzy +#| msgid "" +#| "ikiwiki is a simple wiki and blog application. It supports several " +#| "lightweight markup languages, including Markdown, and common blogging " +#| "functionality such as comments and RSS feeds. When enabled, the blogs and " +#| "wikis will be available from /ikiwiki." msgid "" "ikiwiki is a simple wiki and blog application. It supports several " "lightweight markup languages, including Markdown, and common blogging " "functionality such as comments and RSS feeds. When enabled, the blogs and " -"wikis will be available from /ikiwiki." +"wikis will be available at /ikiwiki (once created)." msgstr "" "ایکی‌ویکی (ikiwiki) یک برنامهٔ ویکی و وبلاگ ساده است که از زبان‌های نشانه‌گذاری " "مختلفی مانند Markdown و ویژگی‌های معمول یک وبلاگ مانند نظرگذاری و خوراک RSS " "پشتیبانی می‌کند. اگر این برنامه فعال باشد، وبلاگ‌ها و ویکی‌ها از نشانی /ikiwiki قابل دسترس خواهند بود." +#: plinth/modules/ikiwiki/__init__.py:53 +#, python-brace-format +msgid "" +"Only {box_name} users in the admin group can create and " +"manage blogs and wikis, but any user in the wiki group can " +"edit existing ones. In the User " +"Configuration you can change these permissions or add new users." +msgstr "" + #: plinth/modules/ikiwiki/forms.py:34 #: plinth/modules/networks/templates/connection_show.html:78 msgid "Name" @@ -1301,16 +1364,20 @@ msgid "Delete Wiki or Blog" msgstr "پاک‌کردن ویکی یا وبلاگ" #: plinth/modules/infinoted/__init__.py:43 -msgid "" -"Gobby Server \n" -" (infinoted)" +msgid "infinoted" msgstr "" -#: plinth/modules/infinoted/__init__.py:46 +#: plinth/modules/infinoted/__init__.py:45 +#, fuzzy +#| msgid "Web Server" +msgid "Gobby Server" +msgstr "سرور وب" + +#: plinth/modules/infinoted/__init__.py:48 msgid "infinoted is a server for Gobby, a collaborative text editor." msgstr "" -#: plinth/modules/infinoted/__init__.py:49 +#: plinth/modules/infinoted/__init__.py:51 #, python-brace-format msgid "" "To use it, download Gobby, desktop " @@ -1319,29 +1386,38 @@ msgid "" msgstr "" #: plinth/modules/jsxc/__init__.py:36 -msgid "" -"Chat Client \n" -" (JSXC)" +msgid "JSXC" msgstr "" -#: plinth/modules/jsxc/__init__.py:40 +#: plinth/modules/jsxc/__init__.py:38 +msgid "Chat Client" +msgstr "" + +#: plinth/modules/jsxc/__init__.py:42 msgid "" "JSXC is a web client for XMPP. Typically it is used with an XMPP server " "running locally." msgstr "" -#: plinth/modules/jsxc/__init__.py:78 +#: plinth/modules/jsxc/__init__.py:80 msgid "" "Chat Client \n" " (jsxc)" msgstr "" -#: plinth/modules/letsencrypt/__init__.py:39 -#: plinth/modules/letsencrypt/__init__.py:64 -msgid "Certificates (Let's Encrypt)" +#: plinth/modules/letsencrypt/__init__.py:40 +#, fuzzy +#| msgid "Certificates (Let's Encrypt)" +msgid "Let's Encrypt" msgstr "گواهی دیجیتال (Let's Encrypt)" -#: plinth/modules/letsencrypt/__init__.py:43 +#: plinth/modules/letsencrypt/__init__.py:42 +#, fuzzy +#| msgid "Certificate Status" +msgid "Certificates" +msgstr "وضعیت گواهی دیجیتال" + +#: plinth/modules/letsencrypt/__init__.py:46 #, fuzzy, python-brace-format #| msgid "" #| "A digital certficate allows users of a web service to verify the identity " @@ -1362,7 +1438,7 @@ msgstr "" "برای این کار {box_name} به Let's Encrypt (که یک مرجع صدور گواهی دیجیتال است) " "اثبات می‌کند که مالک دامنه است." -#: plinth/modules/letsencrypt/__init__.py:50 +#: plinth/modules/letsencrypt/__init__.py:53 #, fuzzy #| msgid "" #| "Let's Encrypt is a free, automated, and open certificate authority, run " @@ -1398,64 +1474,108 @@ msgstr "امنیت وبسایت" msgid "Actions" msgstr "کنش‌ها" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:56 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:62 #, fuzzy, python-format msgid "Valid, expires on %(expiry_date)s" msgstr "انقضا در تاریخ %(expiry_date)s" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:63 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:69 #, fuzzy #| msgid "Revoke" msgid "Revoked" msgstr "باطل کردن" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:67 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:73 #, fuzzy, python-format msgid "Expired on %(expiry_date)s" msgstr "انقضا در تاریخ %(expiry_date)s" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:71 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:77 #, fuzzy #| msgid "No certficate" msgid "Invalid test certificate" msgstr "بدون گواهی دیجیتال" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:75 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:81 #, python-format msgid "Invalid (%(reason)s)" msgstr "" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:82 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:88 #, fuzzy #| msgid "No certficate" msgid "No certificate" msgstr "بدون گواهی دیجیتال" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:99 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:105 msgid "Re-obtain" msgstr "بازپس‌گیری" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:105 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:111 #: plinth/modules/networks/templates/connection_show.html:63 #: plinth/modules/snapshot/templates/snapshot.html:34 msgid "Delete" msgstr "پاک‌کردن" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:112 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:118 msgid "Revoke" msgstr "باطل کردن" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:120 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:126 msgid "Obtain" msgstr "گرفتن" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:133 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:149 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:156 +#, fuzzy +#| msgid "Update URL" +msgid "Update config" +msgstr "نشانی به‌روزرسانی" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:161 +#, python-format +msgid "" +"\n" +" Let Plinth manage certificate renewal of\n" +" %(current_domain)s (recommended)\n" +" " +msgstr "" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:166 +msgid "" +"\n" +" Let Plinth manage certificate renewal of the current domain " +"(recommended)\n" +" " +msgstr "" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:175 +#, python-format +msgid "" +"If %(box_name)s manages the certificate renewal for the current domain, it " +"will ensure that all apps that use the certificate can use it, as soon as it " +"gets renewed." +msgstr "" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:181 +msgid "" +"No certificate available for the current domain. First obtain a " +"certificate to enable management of its renewal." +msgstr "" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:186 +msgid "" +"No current domain is configured. First configure a domain to enable " +"management of its certificates." +msgstr "" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:195 msgid "" "No domains have been configured. Configure domains to be able to obtain " "certificates for them." msgstr "" -#: plinth/modules/letsencrypt/views.py:55 +#: plinth/modules/letsencrypt/views.py:57 #, fuzzy, python-brace-format #| msgid "Certificate successfully revoked for domain {domain}" msgid "" @@ -1463,40 +1583,69 @@ msgid "" "moments to take effect." msgstr "گواهی دامنهٔ {domain} با موفقیت باطل شد" -#: plinth/modules/letsencrypt/views.py:61 +#: plinth/modules/letsencrypt/views.py:63 #, python-brace-format msgid "Failed to revoke certificate for domain {domain}: {error}" msgstr "باطل‌کردن گواهی دامنهٔ {domain} شکست خورد: {error}" -#: plinth/modules/letsencrypt/views.py:73 +#: plinth/modules/letsencrypt/views.py:75 #, python-brace-format msgid "Certificate successfully obtained for domain {domain}" msgstr "گواهی دیجیتال برای دامنهٔ {domain} با موفقیت گرفته شد" -#: plinth/modules/letsencrypt/views.py:78 +#: plinth/modules/letsencrypt/views.py:81 #, python-brace-format msgid "Failed to obtain certificate for domain {domain}: {error}" msgstr "گرفتن گواهی برای دامنهٔ {domain} شکست خورد: {error}" #: plinth/modules/letsencrypt/views.py:90 +#: plinth/modules/letsencrypt/views.py:109 +#, fuzzy, python-brace-format +#| msgid "Certificate successfully revoked for domain {domain}" +msgid "Certificate renewal management enabled for {domain}." +msgstr "گواهی دامنهٔ {domain} با موفقیت باطل شد" + +#: plinth/modules/letsencrypt/views.py:95 +#, fuzzy, python-brace-format +#| msgid "Failed to revoke certificate for domain {domain}: {error}" +msgid "Failed to enable certificate renewal management for {domain}: {error}" +msgstr "باطل‌کردن گواهی دامنهٔ {domain} شکست خورد: {error}" + +#: plinth/modules/letsencrypt/views.py:112 +#, fuzzy, python-brace-format +#| msgid "Certificate successfully revoked for domain {domain}" +msgid "Certificate renewal management disabled for {domain}." +msgstr "گواهی دامنهٔ {domain} با موفقیت باطل شد" + +#: plinth/modules/letsencrypt/views.py:118 +#, fuzzy, python-brace-format +#| msgid "Failed to obtain certificate for domain {domain}: {error}" +msgid "Failed to switch certificate renewal management for {domain}: {error}" +msgstr "گرفتن گواهی برای دامنهٔ {domain} شکست خورد: {error}" + +#: plinth/modules/letsencrypt/views.py:134 +#, fuzzy, python-brace-format +#| msgid "Failed to revoke certificate for domain {domain}: {error}" +msgid "Failed to disable certificate renewal management for {domain}: {error}" +msgstr "باطل‌کردن گواهی دامنهٔ {domain} شکست خورد: {error}" + +#: plinth/modules/letsencrypt/views.py:141 #, fuzzy, python-brace-format #| msgid "Certificate successfully revoked for domain {domain}" msgid "Certificate successfully deleted for domain {domain}" msgstr "گواهی دامنهٔ {domain} با موفقیت باطل شد" -#: plinth/modules/letsencrypt/views.py:95 +#: plinth/modules/letsencrypt/views.py:146 #, fuzzy, python-brace-format #| msgid "Failed to revoke certificate for domain {domain}: {error}" msgid "Failed to delete certificate for domain {domain}: {error}" msgstr "باطل‌کردن گواهی دامنهٔ {domain} شکست خورد: {error}" #: plinth/modules/matrixsynapse/__init__.py:41 -msgid "" -"Chat Server \n" -" (Matrix Synapse)" +msgid "Matrix Synapse" msgstr "" -#: plinth/modules/matrixsynapse/__init__.py:44 +#: plinth/modules/matrixsynapse/__init__.py:46 msgid "" "Matrix is an new " "ecosystem for open, federated instant messaging and VoIP. Synapse is a " @@ -1506,19 +1655,13 @@ msgid "" "converse with users on all other Matrix servers via federation." msgstr "" -#: plinth/modules/matrixsynapse/__init__.py:52 +#: plinth/modules/matrixsynapse/__init__.py:54 msgid "" "To communicate, you can use the available clients for mobile, desktop and the web. Riot client is recommended." msgstr "" -#: plinth/modules/matrixsynapse/forms.py:31 -#, fuzzy -#| msgid "Invalid domain name" -msgid "Select the domain name" -msgstr "نام دامنه معتبر نیست" - #: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:34 msgid "" "Matrix service needs to be configured for a domain. Users on other Matrix " @@ -1550,13 +1693,15 @@ msgid "" msgstr "" #: plinth/modules/minetest/__init__.py:48 +msgid "Minetest" +msgstr "" + +#: plinth/modules/minetest/__init__.py:50 #, fuzzy -msgid "" -"Block Sandbox \n" -" (Minetest)" +msgid "Block Sandbox" msgstr "بازی مکعب‌ها (Minetest)" -#: plinth/modules/minetest/__init__.py:52 +#: plinth/modules/minetest/__init__.py:54 #, fuzzy, python-brace-format msgid "" "Minetest is a multiplayer infinite-world block sandbox. This module enables " @@ -1703,7 +1848,7 @@ msgstr "پوستهٔ ایمن" #: plinth/modules/monkeysphere/templates/monkeysphere.html:87 #: plinth/modules/monkeysphere/templates/monkeysphere_details.html:60 -#: plinth/service.py:117 +#: plinth/service.py:116 msgid "Web Server" msgstr "سرور وب" @@ -1803,20 +1948,22 @@ msgid "Error occurred while publishing key." msgstr "هنگام انتشار کلید خطایی رخ داد." #: plinth/modules/mumble/__init__.py:35 +msgid "Mumble" +msgstr "" + +#: plinth/modules/mumble/__init__.py:37 #, fuzzy #| msgid "Voice Chat (Mumble)" -msgid "" -"Voice Chat \n" -" (Mumble)" +msgid "Voice Chat" msgstr "چت صوتی (Mumble)" -#: plinth/modules/mumble/__init__.py:44 +#: plinth/modules/mumble/__init__.py:46 msgid "" "Mumble is an open source, low-latency, encrypted, high quality voice chat " "software." msgstr "مامبل (Mumble) یک نرم‌افزار چت صوتی متن‌باز، کم‌تأخیر، و باکیفیت است." -#: plinth/modules/mumble/__init__.py:47 +#: plinth/modules/mumble/__init__.py:49 msgid "" "You can connect to your Mumble server on the regular Mumble port 64738. Clients to connect to Mumble from your " @@ -2351,7 +2498,7 @@ msgid "This connection is not active." msgstr "این اتصال فعال نیست." #: plinth/modules/networks/templates/connection_show.html:266 -#: plinth/modules/security/__init__.py:32 plinth/modules/security/views.py:46 +#: plinth/modules/security/__init__.py:32 plinth/modules/security/views.py:48 msgid "Security" msgstr "امنیت" @@ -2457,12 +2604,16 @@ msgid "Inactive" msgstr "غیرفعال" #: plinth/modules/openvpn/__init__.py:42 -msgid "" -"Virtual Private Network \n" -" (OpenVPN)" +#, fuzzy +#| msgid "Open" +msgid "OpenVPN" +msgstr "باز" + +#: plinth/modules/openvpn/__init__.py:44 +msgid "Virtual Private Network" msgstr "" -#: plinth/modules/openvpn/__init__.py:46 +#: plinth/modules/openvpn/__init__.py:48 #, python-brace-format msgid "" "Virtual Private Network (VPN) is a technique for securely connecting two " @@ -2473,7 +2624,7 @@ msgid "" "security and anonymity." msgstr "" -#: plinth/modules/openvpn/__init__.py:84 +#: plinth/modules/openvpn/__init__.py:86 #, python-brace-format msgid "" "Download Profile" @@ -2548,10 +2699,14 @@ msgid "Setup failed." msgstr "" #: plinth/modules/pagekite/__init__.py:44 -msgid "Public Visibility (PageKite)" +msgid "PageKite" msgstr "" -#: plinth/modules/pagekite/__init__.py:48 +#: plinth/modules/pagekite/__init__.py:46 +msgid "Public Visibility" +msgstr "" + +#: plinth/modules/pagekite/__init__.py:50 #, python-brace-format msgid "" "PageKite is a system for exposing {box_name} services when you don't have a " @@ -2560,33 +2715,33 @@ msgid "" "following situations:" msgstr "" -#: plinth/modules/pagekite/__init__.py:55 +#: plinth/modules/pagekite/__init__.py:57 #, python-brace-format msgid "{box_name} is behind a restricted firewall." msgstr "" -#: plinth/modules/pagekite/__init__.py:59 +#: plinth/modules/pagekite/__init__.py:61 #, python-brace-format msgid "{box_name} is connected to a (wireless) router which you don't control." msgstr "" -#: plinth/modules/pagekite/__init__.py:62 +#: plinth/modules/pagekite/__init__.py:64 msgid "" "Your ISP does not provide you an external IP address and instead provides " "Internet connection through NAT." msgstr "" -#: plinth/modules/pagekite/__init__.py:65 +#: plinth/modules/pagekite/__init__.py:67 msgid "" "Your ISP does not provide you a static IP address and your IP address " "changes evertime you connect to Internet." msgstr "" -#: plinth/modules/pagekite/__init__.py:68 +#: plinth/modules/pagekite/__init__.py:70 msgid "Your ISP limits incoming connections." msgstr "" -#: plinth/modules/pagekite/__init__.py:71 +#: plinth/modules/pagekite/__init__.py:73 #, python-brace-format msgid "" "PageKite works around NAT, firewalls and IP-address limitations by using a " @@ -2867,8 +3022,8 @@ msgstr "" msgid "Pagekite setup finished. The HTTP and HTTPS services are activated now." msgstr "راه‌اندازی Pagekite پایان یافت. سرویس‌های HTTP و HTTPS فعال هستند." -#: plinth/modules/power/__init__.py:28 plinth/modules/power/views.py:50 -#: plinth/modules/power/views.py:65 +#: plinth/modules/power/__init__.py:28 plinth/modules/power/views.py:51 +#: plinth/modules/power/views.py:67 msgid "Power" msgstr "" @@ -2877,10 +3032,16 @@ msgid "Restart or shut down the system." msgstr "" #: plinth/modules/power/templates/power.html:28 +msgid "" +"Currently an installation or upgrade is running. Consider waiting until it's " +"finished before shutting down or restarting." +msgstr "" + +#: plinth/modules/power/templates/power.html:37 msgid "Restart »" msgstr "" -#: plinth/modules/power/templates/power.html:31 +#: plinth/modules/power/templates/power.html:40 msgid "Shut Down »" msgstr "" @@ -2890,7 +3051,14 @@ msgid "" "interface for a few minutes until the system is restarted." msgstr "" -#: plinth/modules/power/templates/power_restart.html:42 +#: plinth/modules/power/templates/power_restart.html:38 +msgid "" +"Currently an installation or upgrade is running. Consider waiting until it's " +"finished before restarting." +msgstr "" + +#: plinth/modules/power/templates/power_restart.html:52 +#: plinth/modules/power/templates/power_restart.html:55 msgid "Restart Now" msgstr "" @@ -2900,24 +3068,33 @@ msgid "" "interface after shut down." msgstr "" -#: plinth/modules/power/templates/power_shutdown.html:41 +#: plinth/modules/power/templates/power_shutdown.html:37 +msgid "" +"Currently an installation or upgrade is running. Consider waiting until it's " +"finished before shutting down." +msgstr "" + +#: plinth/modules/power/templates/power_shutdown.html:51 +#: plinth/modules/power/templates/power_shutdown.html:54 msgid "Shut Down Now" msgstr "" #: plinth/modules/privoxy/__init__.py:43 -msgid "" -"Web Proxy \n" -" (Privoxy)" +msgid "Privoxy" msgstr "" -#: plinth/modules/privoxy/__init__.py:46 +#: plinth/modules/privoxy/__init__.py:45 +msgid "Web Proxy" +msgstr "" + +#: plinth/modules/privoxy/__init__.py:48 msgid "" "Privoxy is a non-caching web proxy with advanced filtering capabilities for " "enhancing privacy, modifying web page data and HTTP headers, controlling " "access, and removing ads and other obnoxious Internet junk. " msgstr "" -#: plinth/modules/privoxy/__init__.py:52 +#: plinth/modules/privoxy/__init__.py:54 #, python-brace-format msgid "" "You can use Privoxy by modifying your browser proxy settings to your " @@ -2927,18 +3104,20 @@ msgid "" "\">http://p.p." msgstr "" -#: plinth/modules/privoxy/__init__.py:144 +#: plinth/modules/privoxy/__init__.py:147 #, python-brace-format msgid "Access {url} with proxy {proxy} on tcp{kind}" msgstr "" #: plinth/modules/quassel/__init__.py:42 -msgid "" -"IRC Client \n" -" (Quassel)" +msgid "Quassel" msgstr "" -#: plinth/modules/quassel/__init__.py:46 +#: plinth/modules/quassel/__init__.py:44 +msgid "IRC Client" +msgstr "" + +#: plinth/modules/quassel/__init__.py:48 #, python-brace-format msgid "" "Quassel is an IRC application that is split into two parts, a \"core\" and a " @@ -2949,7 +3128,7 @@ msgid "" "connect and disconnect from it." msgstr "" -#: plinth/modules/quassel/__init__.py:54 +#: plinth/modules/quassel/__init__.py:56 msgid "" "You can connect to your Quassel core on the default Quassel port 4242. " "Clients to connect to Quassel from your supported " -"client application is needed. Radicale can be accessed by any user with " -"a {box_name} login." +"radicale.org/clients/\">supported client application is needed. Radicale " +"can be accessed by any user with a {box_name} login." msgstr "" #: plinth/modules/radicale/forms.py:28 @@ -2994,12 +3174,16 @@ msgid "Access rights configuration updated" msgstr "پیکربندی به‌روز شد" #: plinth/modules/repro/__init__.py:38 -msgid "" -"SIP Server \n" -" (repro)" +msgid "repro" msgstr "" -#: plinth/modules/repro/__init__.py:41 +#: plinth/modules/repro/__init__.py:40 +#, fuzzy +#| msgid "DNS Server" +msgid "SIP Server" +msgstr "دی‌ان‌اس" + +#: plinth/modules/repro/__init__.py:43 msgid "" "repro provides various SIP services that a SIP softphone can utilize to " "provide audio and video calls as well as presence and instant messaging. " @@ -3008,7 +3192,7 @@ msgid "" "communications to other servers on the Internet similar to email." msgstr "" -#: plinth/modules/repro/__init__.py:48 +#: plinth/modules/repro/__init__.py:50 msgid "" "To make SIP calls, a client application is needed. Available clients include " "Jitsi (for computers) and (for Android phones)." msgstr "" -#: plinth/modules/repro/__init__.py:53 +#: plinth/modules/repro/__init__.py:55 msgid "" "Note: Before using repro, domains and users will need to " "be configured using the web-based " @@ -3026,12 +3210,14 @@ msgid "" msgstr "" #: plinth/modules/restore/__init__.py:36 -msgid "" -"Unhosted Storage \n" -" (reStore)" +msgid "reStore" msgstr "" -#: plinth/modules/restore/__init__.py:40 +#: plinth/modules/restore/__init__.py:38 +msgid "Unhosted Storage" +msgstr "" + +#: plinth/modules/restore/__init__.py:42 #, python-brace-format msgid "" "reStore is a server for unhosted web " @@ -3041,19 +3227,22 @@ msgid "" "becomes your unhosted storage server." msgstr "" -#: plinth/modules/restore/__init__.py:47 +#: plinth/modules/restore/__init__.py:49 msgid "" "You can create and edit accounts in the reStore web-" "interface." msgstr "" #: plinth/modules/roundcube/__init__.py:35 -msgid "" -"Email Client \n" -" (Roundcube)" +msgid "Roundcube" msgstr "" -#: plinth/modules/roundcube/__init__.py:38 +#: plinth/modules/roundcube/__init__.py:37 +#, fuzzy +msgid "Email Client" +msgstr "برنامهٔ DNS متغیر (Dynamic DNS Client)" + +#: plinth/modules/roundcube/__init__.py:40 msgid "" "Roundcube webmail is a browser-based multilingual IMAP client with an " "application-like user interface. It provides full functionality you expect " @@ -3061,7 +3250,7 @@ msgid "" "manipulation, message searching and spell checking." msgstr "" -#: plinth/modules/roundcube/__init__.py:44 +#: plinth/modules/roundcube/__init__.py:46 msgid "" "You can access Roundcube from /roundcube. Provide " "the username and password of the email account you wish to access followed " @@ -3070,7 +3259,7 @@ msgid "" "server field like imaps://imap.example.com." msgstr "" -#: plinth/modules/roundcube/__init__.py:51 +#: plinth/modules/roundcube/__init__.py:53 msgid "" "For Gmail, username will be your Gmail address, password will be your Google " "account password and server will be imaps://imap.gmail.com. " @@ -3091,29 +3280,42 @@ msgid "" "services without further authorization." msgstr "" -#: plinth/modules/security/views.py:63 +#: plinth/modules/security/forms.py:35 +msgid "Fail2ban (recommended)" +msgstr "" + +#: plinth/modules/security/forms.py:36 +msgid "" +"When this option is enabled, fail2ban will limit brute force break-in " +"attempts to the SSH server and other password protected internet-services " +"which are enabled." +msgstr "" + +#: plinth/modules/security/views.py:66 #, fuzzy, python-brace-format #| msgid "Error setting time zone: {exception}" msgid "Error setting restricted access: {exception}" msgstr "خطا در هنگام تنظیم منطقهٔ زمانی: {exception}" -#: plinth/modules/security/views.py:66 +#: plinth/modules/security/views.py:69 #, fuzzy #| msgid "General Configuration" msgid "Updated security configuration" msgstr "پیکربندی عمومی" #: plinth/modules/shaarli/__init__.py:35 -msgid "" -"Bookmarks \n" -" (Shaarli)" +msgid "Shaarli" msgstr "" -#: plinth/modules/shaarli/__init__.py:38 -msgid "Shaarli allows you to save and share bookmarks." +#: plinth/modules/shaarli/__init__.py:37 +msgid "Bookmarks" msgstr "" #: plinth/modules/shaarli/__init__.py:40 +msgid "Shaarli allows you to save and share bookmarks." +msgstr "" + +#: plinth/modules/shaarli/__init__.py:42 msgid "" "When enabled, Shaarli will be available from /shaarli path on the web server. Note that Shaarli only supports a single user " @@ -3230,6 +3432,18 @@ msgstr "" msgid "Rollback to Snapshot" msgstr "" +#: plinth/modules/ssh/__init__.py:37 +msgid "Secure Shell (SSH) Server" +msgstr "" + +#: plinth/modules/ssh/__init__.py:40 +msgid "" +"A Secure Shell server uses the secure shell protocol to accept connections " +"from remote computers. An authorized remote computer can perform " +"administration tasks, copy files or run other services using such " +"connections." +msgstr "" + #: plinth/modules/sso/__init__.py:30 msgid "Single Sign On" msgstr "" @@ -3239,12 +3453,14 @@ msgid "Login" msgstr "" #: plinth/modules/syncthing/__init__.py:39 -msgid "" -"File Synchronization \n" -" (Syncthing)" +msgid "Syncthing" msgstr "" -#: plinth/modules/syncthing/__init__.py:42 +#: plinth/modules/syncthing/__init__.py:41 +msgid "File Synchronization" +msgstr "" + +#: plinth/modules/syncthing/__init__.py:44 msgid "" "Syncthing is an application to synchronize files across multiple devices, e." "g. your desktop computer and mobile phone. Creation, modification, or " @@ -3252,7 +3468,7 @@ msgid "" "other devices that also run Syncthing." msgstr "" -#: plinth/modules/syncthing/__init__.py:47 +#: plinth/modules/syncthing/__init__.py:49 #, python-brace-format msgid "" "Running Syncthing on {box_name} provides an extra synchronization point for " @@ -3263,7 +3479,7 @@ msgid "" "{box_name} is only available for users belonging to the \"admin\" group." msgstr "" -#: plinth/modules/syncthing/__init__.py:54 +#: plinth/modules/syncthing/__init__.py:56 msgid "" "When enabled, Syncthing's web interface will be available from /syncthing. Desktop and mobile clients are also Tor Project website. For " @@ -3338,36 +3567,36 @@ msgid "" "\">Tor Browser." msgstr "" -#: plinth/modules/tor/__init__.py:70 plinth/modules/tor/__init__.py:112 +#: plinth/modules/tor/__init__.py:72 plinth/modules/tor/__init__.py:114 msgid "Tor Anonymity Network" msgstr "" -#: plinth/modules/tor/__init__.py:76 plinth/modules/tor/__init__.py:120 +#: plinth/modules/tor/__init__.py:78 plinth/modules/tor/__init__.py:122 msgid "Tor Bridge Relay" msgstr "" -#: plinth/modules/tor/__init__.py:98 plinth/modules/tor/__init__.py:141 +#: plinth/modules/tor/__init__.py:100 plinth/modules/tor/__init__.py:143 msgid "Tor Hidden Service" msgstr "" -#: plinth/modules/tor/__init__.py:160 +#: plinth/modules/tor/__init__.py:162 msgid "Tor relay port available" msgstr "" -#: plinth/modules/tor/__init__.py:168 +#: plinth/modules/tor/__init__.py:170 msgid "Obfs3 transport registered" msgstr "" -#: plinth/modules/tor/__init__.py:174 +#: plinth/modules/tor/__init__.py:176 msgid "Obfs4 transport registered" msgstr "" -#: plinth/modules/tor/__init__.py:211 +#: plinth/modules/tor/__init__.py:213 #, python-brace-format msgid "Access URL {url} on tcp{kind} via Tor" msgstr "" -#: plinth/modules/tor/__init__.py:222 +#: plinth/modules/tor/__init__.py:224 #, python-brace-format msgid "Confirm Tor usage at {url} on tcp{kind}" msgstr "" @@ -3511,18 +3740,20 @@ msgid "An error occurred during configuration." msgstr "" #: plinth/modules/transmission/__init__.py:38 -msgid "" -"BitTorrent \n" -" (Transmission)" +msgid "Transmission" msgstr "" -#: plinth/modules/transmission/__init__.py:41 +#: plinth/modules/transmission/__init__.py:40 +msgid "BitTorrent" +msgstr "" + +#: plinth/modules/transmission/__init__.py:43 msgid "" "BitTorrent is a peer-to-peer file sharing protocol. Transmission daemon " "handles Bitorrent file sharing. Note that BitTorrent is not anonymous." msgstr "" -#: plinth/modules/transmission/__init__.py:44 +#: plinth/modules/transmission/__init__.py:46 msgid "" "Access the web interface at /transmission." msgstr "" @@ -3548,23 +3779,27 @@ msgid "" "hashed format. To set a new password, enter the password in plain text." msgstr "" -#: plinth/modules/ttrss/__init__.py:37 -msgid "" -"News Feed Reader \n" -" (Tiny Tiny RSS)" +#: plinth/modules/ttrss/__init__.py:39 +msgid "Tiny Tiny RSS" msgstr "" -#: plinth/modules/ttrss/__init__.py:40 +#: plinth/modules/ttrss/__init__.py:41 +msgid "News Feed Reader" +msgstr "" + +#: plinth/modules/ttrss/__init__.py:44 msgid "" "Tiny Tiny RSS is a news feed (RSS/Atom) reader and aggregator, designed to " "allow reading news from any location, while feeling as close to a real " "desktop application as possible." msgstr "" -#: plinth/modules/ttrss/__init__.py:44 +#: plinth/modules/ttrss/__init__.py:49 +#, python-brace-format msgid "" "When enabled, Tiny Tiny RSS will be available from /tt-" -"rss path on the web server." +"rss path on the web server. It can be accessed by any user with a {box_name} login." msgstr "" #: plinth/modules/upgrades/__init__.py:35 @@ -3861,15 +4096,11 @@ msgstr "" msgid "configuration file: {file}" msgstr "" -#: plinth/service.py:119 +#: plinth/service.py:118 msgid "Web Server over Secure Socket Layer" msgstr "" -#: plinth/service.py:121 -msgid "Secure Shell (SSH) Server" -msgstr "" - -#: plinth/service.py:123 +#: plinth/service.py:120 #, python-brace-format msgid "{box_name} Web Interface (Plinth)" msgstr "" @@ -3912,12 +4143,12 @@ msgid "" "\"%(status_log_url)s\">status log to the bug report." msgstr "" -#: plinth/templates/apps.html:25 +#: plinth/templates/apps.html:33 #, fuzzy msgid "Services and Applications" msgstr "سرویس‌ها و برنامه‌ها" -#: plinth/templates/apps.html:28 +#: plinth/templates/apps.html:36 #, python-format msgid "" "You can install and run various services and applications on your " @@ -3928,7 +4159,7 @@ msgstr "" "کنید. روی پیوند به صفحهٔ هرکدام از برنامه‌ها کلیک کنید تا توضیحی درباره‌اش " "بخوانید و آن را نصب کنید." -#: plinth/templates/apps.html:36 +#: plinth/templates/apps.html:44 msgid "" "This box can be your photo sharing site, your instant messaging site, your " "social networking site, your news site. Remember web portals? We can be " @@ -4095,21 +4326,34 @@ msgstr "" msgid "%(percentage)s%% complete" msgstr "" -#: plinth/templates/system.html:25 +#: plinth/templates/system.html:33 msgid "System Configuration" msgstr "" -#: plinth/templates/system.html:28 +#: plinth/templates/system.html:36 #, python-format msgid "Here you can administrate the underlying system of your %(box_name)s." msgstr "" -#: plinth/templates/system.html:34 +#: plinth/templates/system.html:42 #, python-format msgid "" "The options affect the %(box_name)s at its most general level, so be careful!" msgstr "" +#, fuzzy +#~| msgid "Invalid domain name" +#~ msgid "Select the domain name to be used for diaspora*" +#~ msgstr "نام دامنه معتبر نیست" + +#~ msgid "Wiki and Blog (ikiwiki)" +#~ msgstr "ویکی و وبلاگ (ikiwiki)" + +#, fuzzy +#~| msgid "Invalid domain name" +#~ msgid "Select the domain name" +#~ msgstr "نام دامنه معتبر نیست" + #~ msgid "Applications" #~ msgstr "برنامه‌ها" @@ -4135,10 +4379,6 @@ msgstr "" #~ "شما باید وضعیت شبکه را بررسی کنید و اگر لازم باشد تغییرش دهید. یادتان " #~ "نرود که رمز پیش‌فرض Wi-Fi را عوض کنید!" -#, fuzzy -#~ msgid "Go to Networks" -#~ msgstr "رفتن به تنظیمات شبکه" - #~ msgid "File Hosting (ownCloud)" #~ msgstr "میزبانی پرونده (ownCloud)" diff --git a/plinth/locale/fake/LC_MESSAGES/django.po b/plinth/locale/fake/LC_MESSAGES/django.po index b11e50b59..175b9af74 100644 --- a/plinth/locale/fake/LC_MESSAGES/django.po +++ b/plinth/locale/fake/LC_MESSAGES/django.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Plinth 0.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2017-07-10 22:56-0400\n" +"POT-Creation-Date: 2017-09-24 11:24-0400\n" "PO-Revision-Date: 2016-01-31 22:24+0530\n" "Last-Translator: Sunil Mohan Adapa \n" "Language-Team: Plinth Developers /deluge path on the web server. The default password is 'deluge', but " @@ -405,21 +419,22 @@ msgstr "TEST" msgid "Result" msgstr "RESULT" -#: plinth/modules/diaspora/__init__.py:61 +#: plinth/modules/diaspora/__init__.py:51 +msgid "diaspora*" +msgstr "" + +#: plinth/modules/diaspora/__init__.py:53 +msgid "Federated Social Network" +msgstr "" + +#: plinth/modules/diaspora/__init__.py:62 msgid "" "diaspora* is a decentralized social network where you can store and control " "your own data." msgstr "" -#: plinth/modules/diaspora/forms.py:30 -#, fuzzy -#| msgid "Invalid domain name" -msgid "Select the domain name to be used for diaspora*" -msgstr "INVALID DOMAIN NAME" - -#: plinth/modules/diaspora/forms.py:32 -msgid "" -"Warning! Do not change the FreedomBox domain name after setting up diaspora*" +#: plinth/modules/diaspora/forms.py:31 +msgid "Enable new user registrations" msgstr "" #: plinth/modules/diaspora/templates/diaspora-post-setup.html:32 @@ -446,7 +461,25 @@ msgstr "" msgid "Update setup" msgstr "UPDATE SETUP" -#: plinth/modules/disks/__init__.py:33 plinth/modules/disks/views.py:39 +#: plinth/modules/diaspora/views.py:96 plinth/modules/ejabberd/views.py:60 +#: plinth/modules/openvpn/views.py:145 plinth/modules/tor/views.py:134 +#: plinth/views.py:112 +msgid "Setting unchanged" +msgstr "SETTING UNCHANGED" + +#: plinth/modules/diaspora/views.py:100 +#, fuzzy +#| msgid "Applications" +msgid "User registrations enabled" +msgstr "APPLICATIONS" + +#: plinth/modules/diaspora/views.py:104 +#, fuzzy +#| msgid "Applications" +msgid "User registrations disabled" +msgstr "APPLICATIONS" + +#: plinth/modules/disks/__init__.py:33 plinth/modules/disks/views.py:45 msgid "Disks" msgstr "" @@ -490,7 +523,7 @@ msgstr "" #: plinth/modules/disks/templates/disks.html:90 #: plinth/modules/disks/templates/disks.html:102 #: plinth/modules/disks/templates/disks_expand.html:45 -#: plinth/modules/disks/views.py:56 +#: plinth/modules/disks/views.py:62 msgid "Expand Root Partition" msgstr "" @@ -508,48 +541,55 @@ msgid "" "root partition." msgstr "" -#: plinth/modules/disks/views.py:65 +#: plinth/modules/disks/views.py:71 #, fuzzy, python-brace-format #| msgid "Error setting time zone: {exception}" msgid "Error expanding partition: {exception}" msgstr "ERROR SETTING TIME ZONE: {exception}" -#: plinth/modules/disks/views.py:68 +#: plinth/modules/disks/views.py:74 #, fuzzy #| msgid "Password changed successfully." msgid "Partition expanded successfully." msgstr "PASSWORD CHANGED SUCCESSFULLY." -#: plinth/modules/disks/views.py:77 +#: plinth/modules/disks/views.py:93 +#, python-format, python-brace-format +msgid "" +"Warning: Low space on system partition ({percent_used}% used, {free_space} " +"free)." +msgstr "" + +#: plinth/modules/disks/views.py:130 #, python-brace-format msgid "{disk_size:.1f} bytes" msgstr "" -#: plinth/modules/disks/views.py:81 +#: plinth/modules/disks/views.py:134 #, python-brace-format msgid "{disk_size:.1f} KiB" msgstr "" -#: plinth/modules/disks/views.py:85 +#: plinth/modules/disks/views.py:138 #, python-brace-format msgid "{disk_size:.1f} MiB" msgstr "" -#: plinth/modules/disks/views.py:89 +#: plinth/modules/disks/views.py:142 #, python-brace-format msgid "{disk_size:.1f} GiB" msgstr "" -#: plinth/modules/disks/views.py:92 +#: plinth/modules/disks/views.py:145 #, python-brace-format msgid "{disk_size:.1f} TiB" msgstr "" -#: plinth/modules/dynamicdns/__init__.py:33 +#: plinth/modules/dynamicdns/__init__.py:35 msgid "Dynamic DNS Client" msgstr "DYNAMIC DNS CLIENT" -#: plinth/modules/dynamicdns/__init__.py:37 +#: plinth/modules/dynamicdns/__init__.py:39 #, fuzzy, python-brace-format #| msgid "" #| "If your internet provider changes your IP address periodic (i.e. every " @@ -565,7 +605,7 @@ msgstr "" "IT MAY BE HARD FOR OTHERS TO FIND YOU IN THE WEB. AND FOR THIS REASON NOBODY " "MAY FIND THE SERVICES WHICH ARE PROVIDED BY %(box_name)s, SUCH AS OWNCLOUD." -#: plinth/modules/dynamicdns/__init__.py:43 +#: plinth/modules/dynamicdns/__init__.py:45 #, fuzzy #| msgid "" #| "The solution is to assign a DNS name to your IP address and update the " @@ -591,11 +631,18 @@ msgstr "" "THE SERVER WILL ASSIGN YOUR DNS NAME WITH THE NEW IP AND IF SOMEONE FROM THE " "INTERNET ASKS FOR YOUR DNS NAME HE WILL GET YOUR CURRENT IP ANSWERED." -#: plinth/modules/dynamicdns/dynamicdns.py:35 plinth/modules/help/help.py:40 +#: plinth/modules/dynamicdns/__init__.py:67 +#: plinth/modules/dynamicdns/dynamicdns.py:377 +#, fuzzy +#| msgid "Dynamic DNS Client" +msgid "Dynamic DNS Service" +msgstr "DYNAMIC DNS CLIENT" + +#: plinth/modules/dynamicdns/dynamicdns.py:43 plinth/modules/help/help.py:40 msgid "About" msgstr "ABOUT" -#: plinth/modules/dynamicdns/dynamicdns.py:39 +#: plinth/modules/dynamicdns/dynamicdns.py:47 #: plinth/modules/firewall/templates/firewall.html:47 #: plinth/modules/networks/templates/connection_show.html:261 #: plinth/modules/openvpn/templates/openvpn.html:67 @@ -604,7 +651,7 @@ msgstr "ABOUT" msgid "Status" msgstr "STATUS" -#: plinth/modules/dynamicdns/dynamicdns.py:63 +#: plinth/modules/dynamicdns/dynamicdns.py:71 msgid "" "The Variables <User>, <Pass>, <Ip>, <Domain> may be " "used within the URL. For details see the update URL templates of the example " @@ -614,7 +661,7 @@ msgstr "" "USED WITHIN THE URL. FOR DETAILS SEE THE UPDATE URL TEMPLATES OF THE EXAMPLE " "PROVIDERS." -#: plinth/modules/dynamicdns/dynamicdns.py:67 +#: plinth/modules/dynamicdns/dynamicdns.py:75 #, fuzzy #| msgid "" #| "Please choose an update protocol according to your provider. If your " @@ -629,7 +676,7 @@ msgstr "" "PROVIDER DOES NOT SUPPORT THE GNUDIP PROTOCOL OR YOUR PROVIDER IS NOT LISTED " "YOU MAY USE THE UPDATE URL OF YOUR PROVIDER." -#: plinth/modules/dynamicdns/dynamicdns.py:72 +#: plinth/modules/dynamicdns/dynamicdns.py:80 msgid "" "Please do not enter a URL here (like \"https://example.com/\") but only the " "hostname of the GnuDIP server (like \"example.com\")." @@ -637,17 +684,17 @@ msgstr "" "PLEASE DO NOT ENTER A URL HERE (LIKE \"HTTPS://EXAMPLE.COM/\") BUT ONLY THE " "HOSTNAME OF THE GNUDIP SERVER (LIKE \"EXAMPLE.COM\")." -#: plinth/modules/dynamicdns/dynamicdns.py:76 +#: plinth/modules/dynamicdns/dynamicdns.py:84 #, fuzzy, python-brace-format #| msgid "The public domain name you want use to reach your {box_name}." msgid "The public domain name you want to use to reach your {box_name}." msgstr "THE PUBLIC DOMAIN NAME YOU WANT USE TO REACH YOUR {box_name}." -#: plinth/modules/dynamicdns/dynamicdns.py:79 +#: plinth/modules/dynamicdns/dynamicdns.py:87 msgid "Use this option if your provider uses self signed certificates." msgstr "USE THIS OPTION IF YOUR PROVIDER USES SELF SIGNED CERTIFICATES." -#: plinth/modules/dynamicdns/dynamicdns.py:82 +#: plinth/modules/dynamicdns/dynamicdns.py:90 msgid "" "If this option is selected, your username and password will be used for HTTP " "basic authentication." @@ -655,7 +702,7 @@ msgstr "" "IF THIS OPTION IS SELECTED, YOUR USERNAME AND PASSWORD WILL BE USED FOR HTTP " "BASIC AUTHENTICATION." -#: plinth/modules/dynamicdns/dynamicdns.py:85 +#: plinth/modules/dynamicdns/dynamicdns.py:93 #, fuzzy #| msgid "" #| "Leave this field empty if you want to keep your previous configured " @@ -664,7 +711,7 @@ msgid "Leave this field empty if you want to keep your current password." msgstr "" "LEAVE THIS FIELD EMPTY IF YOU WANT TO KEEP YOUR PREVIOUS CONFIGURED PASSWORD." -#: plinth/modules/dynamicdns/dynamicdns.py:88 +#: plinth/modules/dynamicdns/dynamicdns.py:96 #, fuzzy, python-brace-format #| msgid "" #| "Optional Value. If your {box_name} is not connected directly to the " @@ -682,94 +729,94 @@ msgstr "" "INTERNET IP. THE URL SHOULD SIMPLY RETURN THE IP WHERE THE CLIENT COMES FROM " "(EXAMPLE: HTTP://MYIP.DATASYSTEMS24.DE)." -#: plinth/modules/dynamicdns/dynamicdns.py:96 +#: plinth/modules/dynamicdns/dynamicdns.py:104 msgid "The username that was used when the account was created." msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:107 +#: plinth/modules/dynamicdns/dynamicdns.py:115 msgid "Enable Dynamic DNS" msgstr "ENABLE DYNAMIC DNS" -#: plinth/modules/dynamicdns/dynamicdns.py:110 +#: plinth/modules/dynamicdns/dynamicdns.py:118 #, fuzzy #| msgid "Service type" msgid "Service Type" msgstr "SERVICE TYPE" -#: plinth/modules/dynamicdns/dynamicdns.py:115 +#: plinth/modules/dynamicdns/dynamicdns.py:123 #, fuzzy #| msgid "GnudIP Server Address" msgid "GnuDIP Server Address" msgstr "GNUDIP SERVER ADDRESS" -#: plinth/modules/dynamicdns/dynamicdns.py:120 +#: plinth/modules/dynamicdns/dynamicdns.py:128 msgid "Invalid server name" msgstr "INVALID SERVER NAME" -#: plinth/modules/dynamicdns/dynamicdns.py:123 +#: plinth/modules/dynamicdns/dynamicdns.py:131 msgid "Update URL" msgstr "UPDATE URL" -#: plinth/modules/dynamicdns/dynamicdns.py:127 +#: plinth/modules/dynamicdns/dynamicdns.py:135 msgid "Accept all SSL certificates" msgstr "ACCEPT ALL SSL CERTIFICATES" -#: plinth/modules/dynamicdns/dynamicdns.py:131 +#: plinth/modules/dynamicdns/dynamicdns.py:139 msgid "Use HTTP basic authentication" msgstr "USE HTTP BASIC AUTHENTICATION" -#: plinth/modules/dynamicdns/dynamicdns.py:143 +#: plinth/modules/dynamicdns/dynamicdns.py:151 #: plinth/modules/networks/forms.py:228 plinth/modules/transmission/forms.py:37 msgid "Username" msgstr "USERNAME" -#: plinth/modules/dynamicdns/dynamicdns.py:146 +#: plinth/modules/dynamicdns/dynamicdns.py:154 #: plinth/modules/networks/forms.py:229 plinth/modules/transmission/forms.py:41 msgid "Password" msgstr "PASSWORD" -#: plinth/modules/dynamicdns/dynamicdns.py:149 +#: plinth/modules/dynamicdns/dynamicdns.py:157 #: plinth/modules/networks/forms.py:231 msgid "Show password" msgstr "SHOW PASSWORD" -#: plinth/modules/dynamicdns/dynamicdns.py:153 +#: plinth/modules/dynamicdns/dynamicdns.py:161 msgid "URL to look up public IP" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:179 +#: plinth/modules/dynamicdns/dynamicdns.py:187 #, fuzzy #| msgid "Please provide update URL or a GnuDIP Server" msgid "Please provide an update URL or a GnuDIP server address" msgstr "PLEASE PROVIDE UPDATE URL OR A GNUDIP SERVER" -#: plinth/modules/dynamicdns/dynamicdns.py:184 +#: plinth/modules/dynamicdns/dynamicdns.py:192 #, fuzzy #| msgid "Please provide GnuDIP username" msgid "Please provide a GnuDIP username" msgstr "PLEASE PROVIDE GNUDIP USERNAME" -#: plinth/modules/dynamicdns/dynamicdns.py:188 +#: plinth/modules/dynamicdns/dynamicdns.py:196 #, fuzzy #| msgid "Please provide GnuDIP domain" msgid "Please provide a GnuDIP domain name" msgstr "PLEASE PROVIDE GNUDIP DOMAIN" -#: plinth/modules/dynamicdns/dynamicdns.py:193 +#: plinth/modules/dynamicdns/dynamicdns.py:201 msgid "Please provide a password" msgstr "PLEASE PROVIDE A PASSWORD" -#: plinth/modules/dynamicdns/dynamicdns.py:211 +#: plinth/modules/dynamicdns/dynamicdns.py:219 msgid "Configure Dynamic DNS" msgstr "CONFIGURE DYNAMIC DNS" -#: plinth/modules/dynamicdns/dynamicdns.py:232 +#: plinth/modules/dynamicdns/dynamicdns.py:240 #, fuzzy #| msgid "Dynamic DNS" msgid "Dynamic DNS Status" msgstr "DYNAMIC DNS" -#: plinth/modules/dynamicdns/dynamicdns.py:364 +#: plinth/modules/dynamicdns/dynamicdns.py:381 #: plinth/modules/openvpn/views.py:143 plinth/modules/transmission/views.py:72 msgid "Configuration updated" msgstr "CONFIGURATION UPDATED" @@ -859,15 +906,18 @@ msgstr "" msgid "Last update" msgstr "LAST UPDATE" -#: plinth/modules/ejabberd/__init__.py:42 -#, fuzzy -#| msgid "Chat Server (XMPP)" -msgid "" -"Chat Server \n" -" (ejabberd)" -msgstr "CHAT SERVER (XMPP)" - #: plinth/modules/ejabberd/__init__.py:45 +msgid "ejabberd" +msgstr "" + +#: plinth/modules/ejabberd/__init__.py:47 +#: plinth/modules/matrixsynapse/__init__.py:43 +#, fuzzy +#| msgid "Web Server" +msgid "Chat Server" +msgstr "WEB SERVER" + +#: plinth/modules/ejabberd/__init__.py:50 msgid "" "XMPP is an open and standardized communication protocol. Here you can run " "and configure your XMPP server, called ejabberd." @@ -875,16 +925,17 @@ msgstr "" "XMPP IS AN OPEN AND STANDARDIZED COMMUNICATION PROTOCOL. HERE YOU CAN RUN " "AND CONFIGURE YOUR XMPP SERVER, CALLED EJABBERD." -#: plinth/modules/ejabberd/__init__.py:48 -#, fuzzy +#: plinth/modules/ejabberd/__init__.py:54 +#, fuzzy, python-brace-format #| msgid "" #| "To actually communicate, you can use the web client " #| "or any other XMPP client." msgid "" -"To actually communicate, you can use the web client or any other XMPP client." +"To actually communicate, you can use the web " +"client or any other XMPP client. When enabled, ejabberd can be accessed by " +"any user with a {box_name} login." msgstr "" "TO ACTUALLY COMMUNICATE, YOU CAN USE THE WEB CLIENT OR " "ANY OTHER /ikiwiki." +"wikis will be available at /ikiwiki (once created)." +msgstr "" + +#: plinth/modules/ikiwiki/__init__.py:53 +#, python-brace-format +msgid "" +"Only {box_name} users in the admin group can create and " +"manage blogs and wikis, but any user in the wiki group can " +"edit existing ones. In the User " +"Configuration you can change these permissions or add new users." msgstr "" #: plinth/modules/ikiwiki/forms.py:34 @@ -1387,16 +1448,20 @@ msgid "Delete Wiki or Blog" msgstr "DELETE WIKI OR BLOG" #: plinth/modules/infinoted/__init__.py:43 -msgid "" -"Gobby Server \n" -" (infinoted)" +msgid "infinoted" msgstr "" -#: plinth/modules/infinoted/__init__.py:46 +#: plinth/modules/infinoted/__init__.py:45 +#, fuzzy +#| msgid "Web Server" +msgid "Gobby Server" +msgstr "WEB SERVER" + +#: plinth/modules/infinoted/__init__.py:48 msgid "infinoted is a server for Gobby, a collaborative text editor." msgstr "" -#: plinth/modules/infinoted/__init__.py:49 +#: plinth/modules/infinoted/__init__.py:51 #, python-brace-format msgid "" "To use it, download Gobby, desktop " @@ -1405,20 +1470,22 @@ msgid "" msgstr "" #: plinth/modules/jsxc/__init__.py:36 +msgid "JSXC" +msgstr "" + +#: plinth/modules/jsxc/__init__.py:38 #, fuzzy #| msgid "IRC Client (Quassel)" -msgid "" -"Chat Client \n" -" (JSXC)" +msgid "Chat Client" msgstr "IRC CLIENT (QUASSEL)" -#: plinth/modules/jsxc/__init__.py:40 +#: plinth/modules/jsxc/__init__.py:42 msgid "" "JSXC is a web client for XMPP. Typically it is used with an XMPP server " "running locally." msgstr "" -#: plinth/modules/jsxc/__init__.py:78 +#: plinth/modules/jsxc/__init__.py:80 #, fuzzy #| msgid "IRC Client (Quassel)" msgid "" @@ -1426,12 +1493,19 @@ msgid "" " (jsxc)" msgstr "IRC CLIENT (QUASSEL)" -#: plinth/modules/letsencrypt/__init__.py:39 -#: plinth/modules/letsencrypt/__init__.py:64 -msgid "Certificates (Let's Encrypt)" +#: plinth/modules/letsencrypt/__init__.py:40 +#, fuzzy +#| msgid "Certificates (Let's Encrypt)" +msgid "Let's Encrypt" msgstr "CERTIFICATES (LET'S ENCRYPT)" -#: plinth/modules/letsencrypt/__init__.py:43 +#: plinth/modules/letsencrypt/__init__.py:42 +#, fuzzy +#| msgid "Certificate Status" +msgid "Certificates" +msgstr "CERTIFICATE STATUS" + +#: plinth/modules/letsencrypt/__init__.py:46 #, fuzzy, python-brace-format #| msgid "" #| "A digital certficate allows users of a web service to verify the identity " @@ -1452,7 +1526,7 @@ msgstr "" "DOMAIN. IT DOES SO BY PROVING ITSELF TO BE THE OWNER OF A DOMAIN TO LET'S " "ENCRYPT, A CERTFICATE AUTHORITY (CA)." -#: plinth/modules/letsencrypt/__init__.py:50 +#: plinth/modules/letsencrypt/__init__.py:53 #, fuzzy #| msgid "" #| "Let's Encrypt is a free, automated, and open certificate authority, run " @@ -1487,66 +1561,110 @@ msgstr "WEBSITE SECURITY" msgid "Actions" msgstr "ACTIONS" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:56 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:62 #, fuzzy, python-format #| msgid "Expires on %(expiry_date)s" msgid "Valid, expires on %(expiry_date)s" msgstr "EXPIRES ON %(expiry_date)s" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:63 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:69 #, fuzzy #| msgid "Revoke" msgid "Revoked" msgstr "REVOKE" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:67 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:73 #, fuzzy, python-format #| msgid "Expires on %(expiry_date)s" msgid "Expired on %(expiry_date)s" msgstr "EXPIRES ON %(expiry_date)s" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:71 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:77 #, fuzzy #| msgid "Invalid kite name" msgid "Invalid test certificate" msgstr "INVALID KITE NAME" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:75 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:81 #, python-format msgid "Invalid (%(reason)s)" msgstr "" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:82 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:88 #, fuzzy #| msgid "No certficate" msgid "No certificate" msgstr "NO CERTFICATE" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:99 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:105 msgid "Re-obtain" msgstr "RE-OBTAIN" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:105 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:111 #: plinth/modules/networks/templates/connection_show.html:63 #: plinth/modules/snapshot/templates/snapshot.html:34 msgid "Delete" msgstr "DELETE" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:112 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:118 msgid "Revoke" msgstr "REVOKE" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:120 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:126 msgid "Obtain" msgstr "OBTAIN" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:133 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:149 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:156 +#, fuzzy +#| msgid "Update URL" +msgid "Update config" +msgstr "UPDATE URL" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:161 +#, python-format +msgid "" +"\n" +" Let Plinth manage certificate renewal of\n" +" %(current_domain)s (recommended)\n" +" " +msgstr "" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:166 +msgid "" +"\n" +" Let Plinth manage certificate renewal of the current domain " +"(recommended)\n" +" " +msgstr "" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:175 +#, python-format +msgid "" +"If %(box_name)s manages the certificate renewal for the current domain, it " +"will ensure that all apps that use the certificate can use it, as soon as it " +"gets renewed." +msgstr "" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:181 +msgid "" +"No certificate available for the current domain. First obtain a " +"certificate to enable management of its renewal." +msgstr "" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:186 +msgid "" +"No current domain is configured. First configure a domain to enable " +"management of its certificates." +msgstr "" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:195 msgid "" "No domains have been configured. Configure domains to be able to obtain " "certificates for them." msgstr "" -#: plinth/modules/letsencrypt/views.py:55 +#: plinth/modules/letsencrypt/views.py:57 #, fuzzy, python-brace-format #| msgid "Certificate successfully revoked for domain {domain}" msgid "" @@ -1554,28 +1672,59 @@ msgid "" "moments to take effect." msgstr "CERTIFICATE SUCCESSFULLY REVOKED FOR DOMAIN {domain}" -#: plinth/modules/letsencrypt/views.py:61 +#: plinth/modules/letsencrypt/views.py:63 #, python-brace-format msgid "Failed to revoke certificate for domain {domain}: {error}" msgstr "FAILED TO REVOKE CERTIFICATE FOR DOMAIN {domain}: {error}" -#: plinth/modules/letsencrypt/views.py:73 +#: plinth/modules/letsencrypt/views.py:75 #, python-brace-format msgid "Certificate successfully obtained for domain {domain}" msgstr "CERTIFICATE SUCCESSFULLY OBTAINED FOR DOMAIN {domain}" -#: plinth/modules/letsencrypt/views.py:78 +#: plinth/modules/letsencrypt/views.py:81 #, python-brace-format msgid "Failed to obtain certificate for domain {domain}: {error}" msgstr "FAILED TO OBTAIN CERTIFICATE FOR DOMAIN {domain}: {error}" #: plinth/modules/letsencrypt/views.py:90 +#: plinth/modules/letsencrypt/views.py:109 +#, fuzzy, python-brace-format +#| msgid "Certificate successfully revoked for domain {domain}" +msgid "Certificate renewal management enabled for {domain}." +msgstr "CERTIFICATE SUCCESSFULLY REVOKED FOR DOMAIN {domain}" + +#: plinth/modules/letsencrypt/views.py:95 +#, fuzzy, python-brace-format +#| msgid "Failed to revoke certificate for domain {domain}: {error}" +msgid "Failed to enable certificate renewal management for {domain}: {error}" +msgstr "FAILED TO REVOKE CERTIFICATE FOR DOMAIN {domain}: {error}" + +#: plinth/modules/letsencrypt/views.py:112 +#, fuzzy, python-brace-format +#| msgid "Certificate successfully revoked for domain {domain}" +msgid "Certificate renewal management disabled for {domain}." +msgstr "CERTIFICATE SUCCESSFULLY REVOKED FOR DOMAIN {domain}" + +#: plinth/modules/letsencrypt/views.py:118 +#, fuzzy, python-brace-format +#| msgid "Failed to obtain certificate for domain {domain}: {error}" +msgid "Failed to switch certificate renewal management for {domain}: {error}" +msgstr "FAILED TO OBTAIN CERTIFICATE FOR DOMAIN {domain}: {error}" + +#: plinth/modules/letsencrypt/views.py:134 +#, fuzzy, python-brace-format +#| msgid "Failed to revoke certificate for domain {domain}: {error}" +msgid "Failed to disable certificate renewal management for {domain}: {error}" +msgstr "FAILED TO REVOKE CERTIFICATE FOR DOMAIN {domain}: {error}" + +#: plinth/modules/letsencrypt/views.py:141 #, fuzzy, python-brace-format #| msgid "Certificate successfully revoked for domain {domain}" msgid "Certificate successfully deleted for domain {domain}" msgstr "CERTIFICATE SUCCESSFULLY REVOKED FOR DOMAIN {domain}" -#: plinth/modules/letsencrypt/views.py:95 +#: plinth/modules/letsencrypt/views.py:146 #, fuzzy, python-brace-format #| msgid "Failed to revoke certificate for domain {domain}: {error}" msgid "Failed to delete certificate for domain {domain}: {error}" @@ -1584,12 +1733,10 @@ msgstr "FAILED TO REVOKE CERTIFICATE FOR DOMAIN {domain}: {error}" #: plinth/modules/matrixsynapse/__init__.py:41 #, fuzzy #| msgid "Chat Server (XMPP)" -msgid "" -"Chat Server \n" -" (Matrix Synapse)" +msgid "Matrix Synapse" msgstr "CHAT SERVER (XMPP)" -#: plinth/modules/matrixsynapse/__init__.py:44 +#: plinth/modules/matrixsynapse/__init__.py:46 msgid "" "Matrix is an new " "ecosystem for open, federated instant messaging and VoIP. Synapse is a " @@ -1599,19 +1746,13 @@ msgid "" "converse with users on all other Matrix servers via federation." msgstr "" -#: plinth/modules/matrixsynapse/__init__.py:52 +#: plinth/modules/matrixsynapse/__init__.py:54 msgid "" "To communicate, you can use the available clients for mobile, desktop and the web. Riot client is recommended." msgstr "" -#: plinth/modules/matrixsynapse/forms.py:31 -#, fuzzy -#| msgid "Invalid domain name" -msgid "Select the domain name" -msgstr "INVALID DOMAIN NAME" - #: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:34 msgid "" "Matrix service needs to be configured for a domain. Users on other Matrix " @@ -1650,12 +1791,16 @@ msgstr "" "CONFIGURE PAGE." #: plinth/modules/minetest/__init__.py:48 -msgid "" -"Block Sandbox \n" -" (Minetest)" +msgid "Minetest" msgstr "" -#: plinth/modules/minetest/__init__.py:52 +#: plinth/modules/minetest/__init__.py:50 +#, fuzzy +#| msgid "Blocked" +msgid "Block Sandbox" +msgstr "BLOCKED" + +#: plinth/modules/minetest/__init__.py:54 #, python-brace-format msgid "" "Minetest is a multiplayer infinite-world block sandbox. This module enables " @@ -1827,7 +1972,7 @@ msgstr "SECURE SHELL (SSH)" #: plinth/modules/monkeysphere/templates/monkeysphere.html:87 #: plinth/modules/monkeysphere/templates/monkeysphere_details.html:60 -#: plinth/service.py:117 +#: plinth/service.py:116 msgid "Web Server" msgstr "WEB SERVER" @@ -1942,14 +2087,16 @@ msgid "Error occurred while publishing key." msgstr "ERROR OCCURRED WHILE PUBLISHING KEY." #: plinth/modules/mumble/__init__.py:35 +msgid "Mumble" +msgstr "" + +#: plinth/modules/mumble/__init__.py:37 #, fuzzy #| msgid "Voice Chat (Mumble)" -msgid "" -"Voice Chat \n" -" (Mumble)" +msgid "Voice Chat" msgstr "VOICE CHAT (MUMBLE)" -#: plinth/modules/mumble/__init__.py:44 +#: plinth/modules/mumble/__init__.py:46 msgid "" "Mumble is an open source, low-latency, encrypted, high quality voice chat " "software." @@ -1957,7 +2104,7 @@ msgstr "" "MUMBLE IS AN OPEN SOURCE, LOW-LATENCY, ENCRYPTED, HIGH QUALITY VOICE CHAT " "SOFTWARE." -#: plinth/modules/mumble/__init__.py:47 +#: plinth/modules/mumble/__init__.py:49 msgid "" "You can connect to your Mumble server on the regular Mumble port 64738. Clients to connect to Mumble from your " @@ -2484,7 +2631,7 @@ msgid "This connection is not active." msgstr "THIS CONNECTION IS NOT ACTIVE." #: plinth/modules/networks/templates/connection_show.html:266 -#: plinth/modules/security/__init__.py:32 plinth/modules/security/views.py:46 +#: plinth/modules/security/__init__.py:32 plinth/modules/security/views.py:48 msgid "Security" msgstr "SECURITY" @@ -2591,13 +2738,17 @@ msgstr "INACTIVE" #: plinth/modules/openvpn/__init__.py:42 #, fuzzy +#| msgid "OpenVPN" +msgid "OpenVPN" +msgstr "OPENVPN" + +#: plinth/modules/openvpn/__init__.py:44 +#, fuzzy #| msgid "Virtual Private Network (OpenVPN)" -msgid "" -"Virtual Private Network \n" -" (OpenVPN)" +msgid "Virtual Private Network" msgstr "VIRTUAL PRIVATE NETWORK (OPENVPN)" -#: plinth/modules/openvpn/__init__.py:46 +#: plinth/modules/openvpn/__init__.py:48 #, fuzzy, python-brace-format #| msgid "" #| "Virtual Private Network (VPN) is a technique for securely connecting two " @@ -2621,7 +2772,7 @@ msgstr "" "YOU CAN ALSO ACCESS THE REST OF THE INTERNET VIA %(box_name)s FOR ADDED " "SECURITY AND ANONYMITY." -#: plinth/modules/openvpn/__init__.py:84 +#: plinth/modules/openvpn/__init__.py:86 #, python-brace-format msgid "" "Download Profile" @@ -2708,10 +2859,18 @@ msgid "Setup failed." msgstr "SETUP FAILED." #: plinth/modules/pagekite/__init__.py:44 -msgid "Public Visibility (PageKite)" +#, fuzzy +#| msgid "Pagekite" +msgid "PageKite" +msgstr "PAGEKITE" + +#: plinth/modules/pagekite/__init__.py:46 +#, fuzzy +#| msgid "Public Visibility (PageKite)" +msgid "Public Visibility" msgstr "PUBLIC VISIBILITY (PAGEKITE)" -#: plinth/modules/pagekite/__init__.py:48 +#: plinth/modules/pagekite/__init__.py:50 #, fuzzy, python-brace-format #| msgid "" #| "PageKite is a system for exposing %(box_name)s services when you don't " @@ -2729,13 +2888,13 @@ msgstr "" "SERVICES ARE UNREACHABLE FROM THE REST OF THE INTERNET. THIS INCLUDES THE " "FOLLOWING SITUATIONS:" -#: plinth/modules/pagekite/__init__.py:55 +#: plinth/modules/pagekite/__init__.py:57 #, fuzzy, python-brace-format #| msgid "%(box_name)s is behind a restricted firewall." msgid "{box_name} is behind a restricted firewall." msgstr "%(box_name)s IS BEHIND A RESTRICTED FIREWALL." -#: plinth/modules/pagekite/__init__.py:59 +#: plinth/modules/pagekite/__init__.py:61 #, fuzzy, python-brace-format #| msgid "" #| "%(box_name)s is connected to a (wireless) router which you don't control." @@ -2743,7 +2902,7 @@ msgid "{box_name} is connected to a (wireless) router which you don't control." msgstr "" "%(box_name)s IS CONNECTED TO A (WIRELESS) ROUTER WHICH YOU DON'T CONTROL." -#: plinth/modules/pagekite/__init__.py:62 +#: plinth/modules/pagekite/__init__.py:64 msgid "" "Your ISP does not provide you an external IP address and instead provides " "Internet connection through NAT." @@ -2751,7 +2910,7 @@ msgstr "" "YOUR ISP DOES NOT PROVIDE YOU AN EXTERNAL IP ADDRESS AND INSTEAD PROVIDES " "INTERNET CONNECTION THROUGH NAT." -#: plinth/modules/pagekite/__init__.py:65 +#: plinth/modules/pagekite/__init__.py:67 msgid "" "Your ISP does not provide you a static IP address and your IP address " "changes evertime you connect to Internet." @@ -2759,11 +2918,11 @@ msgstr "" "YOUR ISP DOES NOT PROVIDE YOU A STATIC IP ADDRESS AND YOUR IP ADDRESS " "CHANGES EVERTIME YOU CONNECT TO INTERNET." -#: plinth/modules/pagekite/__init__.py:68 +#: plinth/modules/pagekite/__init__.py:70 msgid "Your ISP limits incoming connections." msgstr "YOUR ISP LIMITS INCOMING CONNECTIONS." -#: plinth/modules/pagekite/__init__.py:71 +#: plinth/modules/pagekite/__init__.py:73 #, fuzzy, python-brace-format #| msgid "" #| "PageKite works around NAT, firewalls and IP-address limitations by using " @@ -3068,8 +3227,8 @@ msgstr "CUSTOM SERVICES" msgid "Pagekite setup finished. The HTTP and HTTPS services are activated now." msgstr "" -#: plinth/modules/power/__init__.py:28 plinth/modules/power/views.py:50 -#: plinth/modules/power/views.py:65 +#: plinth/modules/power/__init__.py:28 plinth/modules/power/views.py:51 +#: plinth/modules/power/views.py:67 msgid "Power" msgstr "POWER" @@ -3078,10 +3237,16 @@ msgid "Restart or shut down the system." msgstr "RESTART OR SHUT DOWN THE SYSTEM." #: plinth/modules/power/templates/power.html:28 +msgid "" +"Currently an installation or upgrade is running. Consider waiting until it's " +"finished before shutting down or restarting." +msgstr "" + +#: plinth/modules/power/templates/power.html:37 msgid "Restart »" msgstr "RESTART »" -#: plinth/modules/power/templates/power.html:31 +#: plinth/modules/power/templates/power.html:40 msgid "Shut Down »" msgstr "SHUT DOWN »" @@ -3093,7 +3258,14 @@ msgstr "" "ARE YOU SURE YOU WANT TO RESTART? YOU WILL NOT BE ABLE TO ACCESS THIS WEB " "INTERFACE FOR A FEW MINUTES UNTIL THE SYSTEM IS RESTARTED." -#: plinth/modules/power/templates/power_restart.html:42 +#: plinth/modules/power/templates/power_restart.html:38 +msgid "" +"Currently an installation or upgrade is running. Consider waiting until it's " +"finished before restarting." +msgstr "" + +#: plinth/modules/power/templates/power_restart.html:52 +#: plinth/modules/power/templates/power_restart.html:55 msgid "Restart Now" msgstr "RESTART NOW" @@ -3105,19 +3277,30 @@ msgstr "" "ARE YOU SURE YOU WANT TO SHUT DOWN? YOU WILL NOT BE ABLE TO ACCESS THIS WEB " "INTERFACE AFTER SHUT DOWN." -#: plinth/modules/power/templates/power_shutdown.html:41 +#: plinth/modules/power/templates/power_shutdown.html:37 +msgid "" +"Currently an installation or upgrade is running. Consider waiting until it's " +"finished before shutting down." +msgstr "" + +#: plinth/modules/power/templates/power_shutdown.html:51 +#: plinth/modules/power/templates/power_shutdown.html:54 msgid "Shut Down Now" msgstr "SHUT DOWN NOW" #: plinth/modules/privoxy/__init__.py:43 #, fuzzy -#| msgid "Web Proxy (Privoxy)" -msgid "" -"Web Proxy \n" -" (Privoxy)" -msgstr "WEB PROXY (PRIVOXY)" +#| msgid "Enable Privoxy" +msgid "Privoxy" +msgstr "ENABLE PRIVOXY" -#: plinth/modules/privoxy/__init__.py:46 +#: plinth/modules/privoxy/__init__.py:45 +#, fuzzy +#| msgid "Privoxy Web Proxy" +msgid "Web Proxy" +msgstr "PRIVOXY WEB PROXY" + +#: plinth/modules/privoxy/__init__.py:48 #, fuzzy #| msgid "" #| "Privoxy is a non-caching web proxy with advanced filtering capabilities " @@ -3132,7 +3315,7 @@ msgstr "" "ENHANCING PRIVACY, MODIFYING WEB PAGE DATA AND HTTP HEADERS, CONTROLLING " "ACCESS, AND REMOVING ADS AND OTHER OBNOXIOUS INTERNET JUNK." -#: plinth/modules/privoxy/__init__.py:52 +#: plinth/modules/privoxy/__init__.py:54 #, fuzzy, python-brace-format #| msgid "" #| "You can use Privoxy by modifying your browser proxy settings to your " @@ -3153,20 +3336,22 @@ msgstr "" "config.privoxy.org\">HTTP://CONFIG.PRIVOXY.ORG/ OR HTTP://P.P.\"" -#: plinth/modules/privoxy/__init__.py:144 +#: plinth/modules/privoxy/__init__.py:147 #, python-brace-format msgid "Access {url} with proxy {proxy} on tcp{kind}" msgstr "ACCESS {url} WITH PROXY {proxy} ON TCP{kind}" #: plinth/modules/quassel/__init__.py:42 -#, fuzzy -#| msgid "IRC Client (Quassel)" -msgid "" -"IRC Client \n" -" (Quassel)" -msgstr "IRC CLIENT (QUASSEL)" +msgid "Quassel" +msgstr "" -#: plinth/modules/quassel/__init__.py:46 +#: plinth/modules/quassel/__init__.py:44 +#, fuzzy +#| msgid "Quassel IRC Client" +msgid "IRC Client" +msgstr "QUASSEL IRC CLIENT" + +#: plinth/modules/quassel/__init__.py:48 #, fuzzy, python-brace-format #| msgid "" #| "Quassel is an IRC application that is split into two parts, a \"core\" " @@ -3190,7 +3375,7 @@ msgstr "" "ONE OR MORE QUASSEL CLIENTS FROM A DESKTOP OR A MOBILE CAN BE USED TO " "CONNECT AND DISCONNECT FROM IT." -#: plinth/modules/quassel/__init__.py:54 +#: plinth/modules/quassel/__init__.py:56 msgid "" "You can connect to your Quassel core on the default Quassel port 4242. " "Clients to connect to Quassel from your MOBILE DEVICES ARE AVAILABLE." #: plinth/modules/radicale/__init__.py:43 -msgid "" -"Calendar and Addressbook \n" -" (Radicale)" +msgid "Radicale" msgstr "" -#: plinth/modules/radicale/__init__.py:47 +#: plinth/modules/radicale/__init__.py:45 +msgid "Calendar and Addressbook" +msgstr "" + +#: plinth/modules/radicale/__init__.py:49 #, python-brace-format msgid "" "Radicale is a CalDAV and CardDAV server. It allows synchronization and " "sharing of scheduling and contact data. To use Radicale, a supported " -"client application is needed. Radicale can be accessed by any user with " -"a {box_name} login." +"radicale.org/clients/\">supported client application is needed. Radicale " +"can be accessed by any user with a {box_name} login." msgstr "" #: plinth/modules/radicale/forms.py:28 @@ -3239,14 +3425,16 @@ msgid "Access rights configuration updated" msgstr "CONFIGURATION UPDATED" #: plinth/modules/repro/__init__.py:38 -#, fuzzy -#| msgid "SIP Server (repro)" -msgid "" -"SIP Server \n" -" (repro)" -msgstr "SIP SERVER (REPRO)" +msgid "repro" +msgstr "" -#: plinth/modules/repro/__init__.py:41 +#: plinth/modules/repro/__init__.py:40 +#, fuzzy +#| msgid "DNS Server" +msgid "SIP Server" +msgstr "DNS SERVER" + +#: plinth/modules/repro/__init__.py:43 msgid "" "repro provides various SIP services that a SIP softphone can utilize to " "provide audio and video calls as well as presence and instant messaging. " @@ -3260,7 +3448,7 @@ msgstr "" "THEIR PRESENCE KNOWN. IT ALSO ACTS AS A PROXY TO FEDERATE SIP " "COMMUNICATIONS TO OTHER SERVERS ON THE INTERNET SIMILAR TO EMAIL." -#: plinth/modules/repro/__init__.py:48 +#: plinth/modules/repro/__init__.py:50 msgid "" "To make SIP calls, a client application is needed. Available clients include " "Jitsi (for computers) and CSIPSIMPLE (FOR ANDROID PHONES)." -#: plinth/modules/repro/__init__.py:53 +#: plinth/modules/repro/__init__.py:55 msgid "" "Note: Before using repro, domains and users will need to " "be configured using the web-based " @@ -3287,14 +3475,16 @@ msgstr "" "REQUIRED TO RESTART THE REPRO SERVICE. DISABLE THE SERVICE AND RE-ENABLE IT." #: plinth/modules/restore/__init__.py:36 +msgid "reStore" +msgstr "RESTORE" + +#: plinth/modules/restore/__init__.py:38 #, fuzzy #| msgid "Unhosted Storage (reStore)" -msgid "" -"Unhosted Storage \n" -" (reStore)" +msgid "Unhosted Storage" msgstr "UNHOSTED STORAGE (RESTORE)" -#: plinth/modules/restore/__init__.py:40 +#: plinth/modules/restore/__init__.py:42 #, fuzzy, python-brace-format #| msgid "" #| "reStore is a server for unhosted web " @@ -3315,7 +3505,7 @@ msgstr "" "UNHOSTED STORAGE SERVER OF USER'S CHOICE. WITH RESTORE, YOUR %(box_name)s " "BECOMES YOUR UNHOSTED STORAGE SERVER." -#: plinth/modules/restore/__init__.py:47 +#: plinth/modules/restore/__init__.py:49 msgid "" "You can create and edit accounts in the reStore web-" "interface." @@ -3325,13 +3515,17 @@ msgstr "" #: plinth/modules/roundcube/__init__.py:35 #, fuzzy +#| msgid "Enable Roundcube" +msgid "Roundcube" +msgstr "ENABLE ROUNDCUBE" + +#: plinth/modules/roundcube/__init__.py:37 +#, fuzzy #| msgid "Email Client (Roundcube)" -msgid "" -"Email Client \n" -" (Roundcube)" +msgid "Email Client" msgstr "EMAIL CLIENT (ROUNDCUBE)" -#: plinth/modules/roundcube/__init__.py:38 +#: plinth/modules/roundcube/__init__.py:40 msgid "" "Roundcube webmail is a browser-based multilingual IMAP client with an " "application-like user interface. It provides full functionality you expect " @@ -3343,7 +3537,7 @@ msgstr "" "FROM AN EMAIL CLIENT, INCLUDING MIME SUPPORT, ADDRESS BOOK, FOLDER " "MANIPULATION, MESSAGE SEARCHING AND SPELL CHECKING." -#: plinth/modules/roundcube/__init__.py:44 +#: plinth/modules/roundcube/__init__.py:46 msgid "" "You can access Roundcube from /roundcube. Provide " "the username and password of the email account you wish to access followed " @@ -3357,7 +3551,7 @@ msgstr "" "IMAP.EXAMPLE.COM. FOR IMAP OVER SSL (RECOMMENDED), FILL THE " "SERVER FIELD LIKE IMAPS://IMAP.EXAMPLE.COM." -#: plinth/modules/roundcube/__init__.py:51 +#: plinth/modules/roundcube/__init__.py:53 #, fuzzy #| msgid "" #| "For Gmail, username will be your Gmail address, password will be your " @@ -3392,31 +3586,44 @@ msgid "" "services without further authorization." msgstr "" -#: plinth/modules/security/views.py:63 +#: plinth/modules/security/forms.py:35 +msgid "Fail2ban (recommended)" +msgstr "" + +#: plinth/modules/security/forms.py:36 +msgid "" +"When this option is enabled, fail2ban will limit brute force break-in " +"attempts to the SSH server and other password protected internet-services " +"which are enabled." +msgstr "" + +#: plinth/modules/security/views.py:66 #, fuzzy, python-brace-format #| msgid "Error setting time zone: {exception}" msgid "Error setting restricted access: {exception}" msgstr "ERROR SETTING TIME ZONE: {exception}" -#: plinth/modules/security/views.py:66 +#: plinth/modules/security/views.py:69 #, fuzzy #| msgid "General Configuration" msgid "Updated security configuration" msgstr "GENERAL CONFIGURATION" #: plinth/modules/shaarli/__init__.py:35 +msgid "Shaarli" +msgstr "SHAARLI" + +#: plinth/modules/shaarli/__init__.py:37 #, fuzzy #| msgid "Bookmarks (Shaarli)" -msgid "" -"Bookmarks \n" -" (Shaarli)" +msgid "Bookmarks" msgstr "BOOKMARKS (SHAARLI)" -#: plinth/modules/shaarli/__init__.py:38 +#: plinth/modules/shaarli/__init__.py:40 msgid "Shaarli allows you to save and share bookmarks." msgstr "SHAARLI ALLOWS YOU TO SAVE AND SHARE BOOKMARKS." -#: plinth/modules/shaarli/__init__.py:40 +#: plinth/modules/shaarli/__init__.py:42 msgid "" "When enabled, Shaarli will be available from /shaarli path on the web server. Note that Shaarli only supports a single user " @@ -3542,6 +3749,18 @@ msgstr "" msgid "Rollback to Snapshot" msgstr "" +#: plinth/modules/ssh/__init__.py:37 +msgid "Secure Shell (SSH) Server" +msgstr "SECURE SHELL (SSH) SERVER" + +#: plinth/modules/ssh/__init__.py:40 +msgid "" +"A Secure Shell server uses the secure shell protocol to accept connections " +"from remote computers. An authorized remote computer can perform " +"administration tasks, copy files or run other services using such " +"connections." +msgstr "" + #: plinth/modules/sso/__init__.py:30 msgid "Single Sign On" msgstr "" @@ -3551,12 +3770,14 @@ msgid "Login" msgstr "LOGIN" #: plinth/modules/syncthing/__init__.py:39 -msgid "" -"File Synchronization \n" -" (Syncthing)" +msgid "Syncthing" msgstr "" -#: plinth/modules/syncthing/__init__.py:42 +#: plinth/modules/syncthing/__init__.py:41 +msgid "File Synchronization" +msgstr "" + +#: plinth/modules/syncthing/__init__.py:44 msgid "" "Syncthing is an application to synchronize files across multiple devices, e." "g. your desktop computer and mobile phone. Creation, modification, or " @@ -3564,7 +3785,7 @@ msgid "" "other devices that also run Syncthing." msgstr "" -#: plinth/modules/syncthing/__init__.py:47 +#: plinth/modules/syncthing/__init__.py:49 #, python-brace-format msgid "" "Running Syncthing on {box_name} provides an extra synchronization point for " @@ -3575,7 +3796,7 @@ msgid "" "{box_name} is only available for users belonging to the \"admin\" group." msgstr "" -#: plinth/modules/syncthing/__init__.py:54 +#: plinth/modules/syncthing/__init__.py:56 msgid "" "When enabled, Syncthing's web interface will be available from /syncthing. Desktop and mobile clients are also " "TOR BROWSER." -#: plinth/modules/tor/__init__.py:70 plinth/modules/tor/__init__.py:112 +#: plinth/modules/tor/__init__.py:72 plinth/modules/tor/__init__.py:114 msgid "Tor Anonymity Network" msgstr "TOR ANONYMITY NETWORK" -#: plinth/modules/tor/__init__.py:76 plinth/modules/tor/__init__.py:120 +#: plinth/modules/tor/__init__.py:78 plinth/modules/tor/__init__.py:122 msgid "Tor Bridge Relay" msgstr "TOR BRIDGE RELAY" -#: plinth/modules/tor/__init__.py:98 plinth/modules/tor/__init__.py:141 +#: plinth/modules/tor/__init__.py:100 plinth/modules/tor/__init__.py:143 msgid "Tor Hidden Service" msgstr "TOR HIDDEN SERVICE" -#: plinth/modules/tor/__init__.py:160 +#: plinth/modules/tor/__init__.py:162 msgid "Tor relay port available" msgstr "TOR RELAY PORT AVAILABLE" -#: plinth/modules/tor/__init__.py:168 +#: plinth/modules/tor/__init__.py:170 msgid "Obfs3 transport registered" msgstr "OBFS3 TRANSPORT REGISTERED" -#: plinth/modules/tor/__init__.py:174 +#: plinth/modules/tor/__init__.py:176 msgid "Obfs4 transport registered" msgstr "OBFS4 TRANSPORT REGISTERED" -#: plinth/modules/tor/__init__.py:211 +#: plinth/modules/tor/__init__.py:213 #, python-brace-format msgid "Access URL {url} on tcp{kind} via Tor" msgstr "ACCESS URL {url} ON TCP{kind} VIA TOR" -#: plinth/modules/tor/__init__.py:222 +#: plinth/modules/tor/__init__.py:224 #, python-brace-format msgid "Confirm Tor usage at {url} on tcp{kind}" msgstr "CONFIRM TOR USAGE AT {url} ON TCP{kind}" @@ -3859,13 +4094,17 @@ msgstr "AN ERROR OCCURRED DURING CONFIGURATION." #: plinth/modules/transmission/__init__.py:38 #, fuzzy -#| msgid "BitTorrent (Transmission)" -msgid "" -"BitTorrent \n" -" (Transmission)" -msgstr "BITTORRENT (TRANSMISSION)" +#| msgid "Transmission BitTorrent" +msgid "Transmission" +msgstr "TRANSMISSION BITTORRENT" -#: plinth/modules/transmission/__init__.py:41 +#: plinth/modules/transmission/__init__.py:40 +#, fuzzy +#| msgid "Deluge BitTorrent" +msgid "BitTorrent" +msgstr "DELUGE BITTORRENT" + +#: plinth/modules/transmission/__init__.py:43 msgid "" "BitTorrent is a peer-to-peer file sharing protocol. Transmission daemon " "handles Bitorrent file sharing. Note that BitTorrent is not anonymous." @@ -3873,7 +4112,7 @@ msgstr "" "BITTORRENT IS A PEER-TO-PEER FILE SHARING PROTOCOL. TRANSMISSION DAEMON " "HANDLES BITORRENT FILE SHARING. NOTE THAT BITTORRENT IS NOT ANONYMOUS." -#: plinth/modules/transmission/__init__.py:44 +#: plinth/modules/transmission/__init__.py:46 msgid "" "Access the web interface at /transmission." msgstr "" @@ -3905,27 +4144,30 @@ msgstr "" "PASSWORD TO LOGIN TO THE WEB INTERFACE. CURRENT PASSWORD IS SHOWN IN A " "HASHED FORMAT. TO SET A NEW PASSWORD, ENTER THE PASSWORD IN PLAIN TEXT." -#: plinth/modules/ttrss/__init__.py:37 -msgid "" -"News Feed Reader \n" -" (Tiny Tiny RSS)" +#: plinth/modules/ttrss/__init__.py:39 +msgid "Tiny Tiny RSS" msgstr "" -#: plinth/modules/ttrss/__init__.py:40 +#: plinth/modules/ttrss/__init__.py:41 +msgid "News Feed Reader" +msgstr "" + +#: plinth/modules/ttrss/__init__.py:44 msgid "" "Tiny Tiny RSS is a news feed (RSS/Atom) reader and aggregator, designed to " "allow reading news from any location, while feeling as close to a real " "desktop application as possible." msgstr "" -#: plinth/modules/ttrss/__init__.py:44 -#, fuzzy +#: plinth/modules/ttrss/__init__.py:49 +#, fuzzy, python-brace-format #| msgid "" #| "When enabled, the blogs and wikis will be available from /ikiwiki." msgid "" "When enabled, Tiny Tiny RSS will be available from /tt-" -"rss path on the web server." +"rss path on the web server. It can be accessed by any user with a {box_name} login." msgstr "" "WHEN ENABLED, THE BLOGS AND WIKIS WILL BE AVAILABLE FROM /IKIWIKI." @@ -4250,15 +4492,11 @@ msgstr "SETTING UNCHANGED" msgid "configuration file: {file}" msgstr "CONFIGURATION" -#: plinth/service.py:119 +#: plinth/service.py:118 msgid "Web Server over Secure Socket Layer" msgstr "WEB SERVER OVER SECURE SOCKET LAYER" -#: plinth/service.py:121 -msgid "Secure Shell (SSH) Server" -msgstr "SECURE SHELL (SSH) SERVER" - -#: plinth/service.py:123 +#: plinth/service.py:120 #, python-brace-format msgid "{box_name} Web Interface (Plinth)" msgstr "{box_name} WEB INTERFACE (PLINTH)" @@ -4311,11 +4549,11 @@ msgstr "" "REPORT THE ERROR ON THE BUG TRACKER SO WE CAN FIX IT." -#: plinth/templates/apps.html:25 +#: plinth/templates/apps.html:33 msgid "Services and Applications" msgstr "SERVICES AND APPLICATIONS" -#: plinth/templates/apps.html:28 +#: plinth/templates/apps.html:36 #, python-format msgid "" "You can install and run various services and applications on your " @@ -4326,7 +4564,7 @@ msgstr "" "%(box_name)s. CLICK ON ANY APP PAGE LINK ON THE LEFT TO READ A DESCRIPTION " "OF THE APPLICATION AND CHOOSE TO INSTALL IT." -#: plinth/templates/apps.html:36 +#: plinth/templates/apps.html:44 msgid "" "This box can be your photo sharing site, your instant messaging site, your " "social networking site, your news site. Remember web portals? We can be " @@ -4504,18 +4742,18 @@ msgstr "INSTALLING %(package_names)s: %(status)s" msgid "%(percentage)s%% complete" msgstr "%(percentage)s%% COMPLETE" -#: plinth/templates/system.html:25 +#: plinth/templates/system.html:33 msgid "System Configuration" msgstr "SYSTEM CONFIGURATION" -#: plinth/templates/system.html:28 +#: plinth/templates/system.html:36 #, fuzzy, python-format #| msgid "" #| "Here you can administrate the underlying system of your %(box_name)s." msgid "Here you can administrate the underlying system of your %(box_name)s." msgstr "HERE YOU CAN ADMINISTRATE THE UNDERLYING SYSTEM OF YOUR %(box_name)s." -#: plinth/templates/system.html:34 +#: plinth/templates/system.html:42 #, fuzzy, python-format #| msgid "" #| "The options affect the %(box_name)s at its most general level, so be " @@ -4525,6 +4763,54 @@ msgid "" msgstr "" "THE OPTIONS AFFECT THE %(box_name)s AT ITS MOST GENERAL LEVEL, SO BE CAREFUL!" +#, fuzzy +#~| msgid "Invalid domain name" +#~ msgid "Select the domain name to be used for diaspora*" +#~ msgstr "INVALID DOMAIN NAME" + +#, fuzzy +#~| msgid "Chat Server (XMPP)" +#~ msgid "" +#~ "Chat Server \n" +#~ " (ejabberd)" +#~ msgstr "CHAT SERVER (XMPP)" + +#~ msgid "Wiki and Blog (ikiwiki)" +#~ msgstr "WIKI AND BLOG (IKIWIKI)" + +#, fuzzy +#~| msgid "Invalid domain name" +#~ msgid "Select the domain name" +#~ msgstr "INVALID DOMAIN NAME" + +#, fuzzy +#~| msgid "Web Proxy (Privoxy)" +#~ msgid "" +#~ "Web Proxy \n" +#~ " (Privoxy)" +#~ msgstr "WEB PROXY (PRIVOXY)" + +#, fuzzy +#~| msgid "IRC Client (Quassel)" +#~ msgid "" +#~ "IRC Client \n" +#~ " (Quassel)" +#~ msgstr "IRC CLIENT (QUASSEL)" + +#, fuzzy +#~| msgid "SIP Server (repro)" +#~ msgid "" +#~ "SIP Server \n" +#~ " (repro)" +#~ msgstr "SIP SERVER (REPRO)" + +#, fuzzy +#~| msgid "BitTorrent (Transmission)" +#~ msgid "" +#~ "BitTorrent \n" +#~ " (Transmission)" +#~ msgstr "BITTORRENT (TRANSMISSION)" + #~ msgid "Applications" #~ msgstr "APPLICATIONS" @@ -4733,12 +5019,6 @@ msgstr "" #~ msgid "BitTorrent (Deluge)" #~ msgstr "BITTORRENT (DELUGE)" -#~ msgid "Deluge BitTorrent" -#~ msgstr "DELUGE BITTORRENT" - -#~ msgid "Enable Deluge" -#~ msgstr "ENABLE DELUGE" - #~ msgid "System Diagnostics" #~ msgstr "SYSTEM DIAGNOSTICS" @@ -4758,9 +5038,6 @@ msgstr "" #~ msgid "Enable ikiwiki" #~ msgstr "ENABLE IKIWIKI" -#~ msgid "Wiki and Blog" -#~ msgstr "WIKI AND BLOG" - #~ msgid "Generate PGP Key" #~ msgstr "GENERATE PGP KEY" @@ -4789,15 +5066,6 @@ msgstr "" #~ msgstr "" #~ "EXPOSING SSH WITH THE DEFAULT PASSWORD FOR 'FBX' IS A VERY BAD IDEA." -#~ msgid "Privoxy Web Proxy" -#~ msgstr "PRIVOXY WEB PROXY" - -#~ msgid "Enable Privoxy" -#~ msgstr "ENABLE PRIVOXY" - -#~ msgid "Quassel IRC Client" -#~ msgstr "QUASSEL IRC CLIENT" - #~ msgid "Enable Quassel core service" #~ msgstr "ENABLE QUASSEL CORE SERVICE" @@ -4807,15 +5075,6 @@ msgstr "" #~ msgid "Enable repro service" #~ msgstr "ENABLE REPRO SERVICE" -#~ msgid "reStore" -#~ msgstr "RESTORE" - -#~ msgid "Enable Roundcube" -#~ msgstr "ENABLE ROUNDCUBE" - -#~ msgid "Shaarli" -#~ msgstr "SHAARLI" - #~ msgid "Enable Shaarli" #~ msgstr "ENABLE SHAARLI" @@ -4825,9 +5084,6 @@ msgstr "" #~ msgid "Tor Control Panel" #~ msgstr "TOR CONTROL PANEL" -#~ msgid "Transmission BitTorrent" -#~ msgstr "TRANSMISSION BITTORRENT" - #~ msgid "Enable Transmission daemon" #~ msgstr "ENABLE TRANSMISSION DAEMON" diff --git a/plinth/locale/fr/LC_MESSAGES/django.po b/plinth/locale/fr/LC_MESSAGES/django.po index b080cb3cc..8427b88b1 100644 --- a/plinth/locale/fr/LC_MESSAGES/django.po +++ b/plinth/locale/fr/LC_MESSAGES/django.po @@ -7,11 +7,11 @@ msgid "" msgstr "" "Project-Id-Version: FreedomBox UI\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2017-07-10 22:56-0400\n" +"POT-Creation-Date: 2017-09-24 11:24-0400\n" "PO-Revision-Date: 2017-07-17 20:11+0000\n" "Last-Translator: Kyodev \n" -"Language-Team: French " -"\n" +"Language-Team: French \n" "Language: fr\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -19,37 +19,37 @@ msgstr "" "Plural-Forms: nplurals=2; plural=n > 1;\n" "X-Generator: Weblate 2.16-dev\n" -#: plinth/action_utils.py:254 +#: plinth/action_utils.py:259 #, python-brace-format msgid "Listening on {kind} port {listen_address}:{port}" msgstr "Écoute sur le port {listen_address}:{port} ({kind})" -#: plinth/action_utils.py:257 +#: plinth/action_utils.py:262 #, python-brace-format msgid "Listening on {kind} port {port}" msgstr "Écoute sur le port {port}, type {kind}" -#: plinth/action_utils.py:352 +#: plinth/action_utils.py:357 #, python-brace-format msgid "Access URL {url} on tcp{kind}" msgstr "Accès à l'URL {url} via tcp{kind}" -#: plinth/action_utils.py:356 +#: plinth/action_utils.py:361 #, python-brace-format msgid "Access URL {url}" msgstr "Accès à l'URL {url}" -#: plinth/action_utils.py:386 +#: plinth/action_utils.py:391 #, python-brace-format msgid "Connect to {host}:{port}" msgstr "Connexion à {host}:{port}" -#: plinth/action_utils.py:389 +#: plinth/action_utils.py:394 #, python-brace-format msgid "Cannot connect to {host}:{port}" msgstr "Impossible de se connecter à {host}:{port}" -#: plinth/context_processors.py:38 plinth/views.py:49 +#: plinth/context_processors.py:38 plinth/views.py:52 msgid "FreedomBox" msgstr "FreedomBox" @@ -58,9 +58,17 @@ msgid "Enable application" msgstr "Activer l'application" #: plinth/forms.py:45 -msgid "Select the domain name to be used for this application" +#, fuzzy +#| msgid "Select the domain name to be used for this application" +msgid "Select a domain name to be used with this application" msgstr "Sélectionnez le nom de domaine à utiliser avec cette application" +#: plinth/forms.py:47 +msgid "" +"Warning! The application may not work properly if domain name is changed " +"later." +msgstr "" + #: plinth/middleware.py:71 msgid "Application installed." msgstr "Application installée." @@ -97,12 +105,18 @@ msgstr "" "particulièrement lors d'une connexion à un réseau local hostile." #: plinth/modules/bind/__init__.py:34 -msgid "" -"Domain Name Server \n" -" (BIND)" +msgid "BIND" +msgstr "" + +#: plinth/modules/bind/__init__.py:36 +#, fuzzy +#| msgid "" +#| "Domain Name Server \n" +#| " (BIND)" +msgid "Domain Name Server" msgstr "Serveur de noms DNS (BIND)" -#: plinth/modules/bind/__init__.py:43 +#: plinth/modules/bind/__init__.py:45 msgid "" "BIND is open source software that enables you to publish your Domain Name " "System (DNS) information on the Internet, and to resolve DNS queries for " @@ -112,7 +126,7 @@ msgstr "" "informations DNS (Système de Noms de Domaines) et la résolution des requêtes " "DNS pour vos utilisateurs." -#: plinth/modules/bind/__init__.py:47 +#: plinth/modules/bind/__init__.py:49 msgid "" "BIND is by far the most widely used DNS software on the Internet, providing " "a robust and stable platform on top of which organizations can build " @@ -161,7 +175,7 @@ msgid "Enable forwarding to set forwarding DNS servers" msgstr "Activez le forwarding pour définir des serveurs DNS de forwarding" #: plinth/modules/config/config.py:88 plinth/modules/config/config.py:125 -#: plinth/modules/dynamicdns/dynamicdns.py:140 +#: plinth/modules/dynamicdns/dynamicdns.py:148 msgid "Invalid domain name" msgstr "Nom de domaine invalide" @@ -189,7 +203,7 @@ msgstr "Nom de machine invalide" #: plinth/modules/config/config.py:112 plinth/modules/config/config.py:169 #: plinth/modules/config/config.py:285 -#: plinth/modules/dynamicdns/dynamicdns.py:135 +#: plinth/modules/dynamicdns/dynamicdns.py:143 msgid "Domain Name" msgstr "Nom de Domaine" @@ -221,7 +235,7 @@ msgid "Language for this web administration interface" msgstr "Langue de cette interface web d'administration" #: plinth/modules/config/config.py:151 -#: plinth/modules/dynamicdns/dynamicdns.py:37 +#: plinth/modules/dynamicdns/dynamicdns.py:45 #: plinth/modules/ikiwiki/views.py:37 #: plinth/modules/tahoe/templates/tahoe-pre-setup.html:39 msgid "Configure" @@ -305,18 +319,26 @@ msgid "Time zone set" msgstr "Fuseau horaire établi" #: plinth/modules/deluge/__init__.py:39 -msgid "" -"BitTorrent Web Client \n" -" (Deluge)" +#, fuzzy +#| msgid "Enable Deluge" +msgid "Deluge" +msgstr "Activer Deluge" + +#: plinth/modules/deluge/__init__.py:41 +#, fuzzy +#| msgid "" +#| "BitTorrent Web Client \n" +#| " (Deluge)" +msgid "BitTorrent Web Client" msgstr "" "Client Web pour BitTorrent \n" "(Deluge)" -#: plinth/modules/deluge/__init__.py:42 +#: plinth/modules/deluge/__init__.py:44 msgid "Deluge is a BitTorrent client that features a Web UI." msgstr "Deluge est un client BitTorrent avec une interface utilisateur Web." -#: plinth/modules/deluge/__init__.py:44 +#: plinth/modules/deluge/__init__.py:46 msgid "" "When enabled, the Deluge web client will be available from /deluge path on the web server. The default password is 'deluge', but " @@ -384,7 +406,15 @@ msgstr "Test" msgid "Result" msgstr "Résultat" -#: plinth/modules/diaspora/__init__.py:61 +#: plinth/modules/diaspora/__init__.py:51 +msgid "diaspora*" +msgstr "" + +#: plinth/modules/diaspora/__init__.py:53 +msgid "Federated Social Network" +msgstr "" + +#: plinth/modules/diaspora/__init__.py:62 msgid "" "diaspora* is a decentralized social network where you can store and control " "your own data." @@ -392,16 +422,9 @@ msgstr "" "diaspora* est un réseau social décentralisé où vous pouvez enregistrer et " "contrôler les donnés qui vous appartiennent." -#: plinth/modules/diaspora/forms.py:30 -msgid "Select the domain name to be used for diaspora*" -msgstr "Sélectionnez le nom de domaine à utiliser pour diaspora" - -#: plinth/modules/diaspora/forms.py:32 -msgid "" -"Warning! Do not change the FreedomBox domain name after setting up diaspora*" +#: plinth/modules/diaspora/forms.py:31 +msgid "Enable new user registrations" msgstr "" -"Attention! Ne changez pas le nom de domaine de FreedomBox après avoir " -"configuré diaspora*" #: plinth/modules/diaspora/templates/diaspora-post-setup.html:32 #, python-format @@ -433,7 +456,25 @@ msgstr "" msgid "Update setup" msgstr "Actualiser la configuration" -#: plinth/modules/disks/__init__.py:33 plinth/modules/disks/views.py:39 +#: plinth/modules/diaspora/views.py:96 plinth/modules/ejabberd/views.py:60 +#: plinth/modules/openvpn/views.py:145 plinth/modules/tor/views.py:134 +#: plinth/views.py:112 +msgid "Setting unchanged" +msgstr "Paramètres inchangés" + +#: plinth/modules/diaspora/views.py:100 +#, fuzzy +#| msgid "Application enabled" +msgid "User registrations enabled" +msgstr "Application activée" + +#: plinth/modules/diaspora/views.py:104 +#, fuzzy +#| msgid "Application disabled" +msgid "User registrations disabled" +msgstr "Application désactivée" + +#: plinth/modules/disks/__init__.py:33 plinth/modules/disks/views.py:45 msgid "Disks" msgstr "Disques" @@ -478,7 +519,7 @@ msgstr "" #: plinth/modules/disks/templates/disks.html:90 #: plinth/modules/disks/templates/disks.html:102 #: plinth/modules/disks/templates/disks_expand.html:45 -#: plinth/modules/disks/views.py:56 +#: plinth/modules/disks/views.py:62 msgid "Expand Root Partition" msgstr "Étendre la partition root" @@ -501,45 +542,52 @@ msgstr "" "%(expandable_root_size)s d'espace en plus sera disponible pour votre " "partition root." -#: plinth/modules/disks/views.py:65 +#: plinth/modules/disks/views.py:71 #, python-brace-format msgid "Error expanding partition: {exception}" msgstr "Erreur lors de l'expansion de la partition : {exception}" -#: plinth/modules/disks/views.py:68 +#: plinth/modules/disks/views.py:74 msgid "Partition expanded successfully." msgstr "Partition étendue avec succès." -#: plinth/modules/disks/views.py:77 +#: plinth/modules/disks/views.py:93 +#, python-format, python-brace-format +msgid "" +"Warning: Low space on system partition ({percent_used}% used, {free_space} " +"free)." +msgstr "" + +#: plinth/modules/disks/views.py:130 #, python-brace-format msgid "{disk_size:.1f} bytes" msgstr "{disk_size:.1f} octets" -#: plinth/modules/disks/views.py:81 +#: plinth/modules/disks/views.py:134 #, python-brace-format msgid "{disk_size:.1f} KiB" msgstr "{disk_size:.1f} Kio" -#: plinth/modules/disks/views.py:85 +#: plinth/modules/disks/views.py:138 #, python-brace-format msgid "{disk_size:.1f} MiB" msgstr "{disk_size:.1f} Mio" -#: plinth/modules/disks/views.py:89 +#: plinth/modules/disks/views.py:142 #, python-brace-format msgid "{disk_size:.1f} GiB" msgstr "{disk_size:.1f} Gio" -#: plinth/modules/disks/views.py:92 +#: plinth/modules/disks/views.py:145 #, python-brace-format msgid "{disk_size:.1f} TiB" msgstr "{disk_size:.1f} Tio" -#: plinth/modules/dynamicdns/__init__.py:33 +#: plinth/modules/dynamicdns/__init__.py:35 msgid "Dynamic DNS Client" msgstr "Client DNS dynamique" -#: plinth/modules/dynamicdns/__init__.py:37 +#: plinth/modules/dynamicdns/__init__.py:39 #, python-brace-format msgid "" "If your Internet provider changes your IP address periodically (i.e. every " @@ -551,7 +599,7 @@ msgstr "" "doute la raison pour laquelle personne ne peut trouver les services fournis " "par {box_name}." -#: plinth/modules/dynamicdns/__init__.py:43 +#: plinth/modules/dynamicdns/__init__.py:45 msgid "" "The solution is to assign a DNS name to your IP address and update the DNS " "name every time your IP is changed by your Internet provider. Dynamic DNS " @@ -569,11 +617,18 @@ msgstr "" "la nouvelle IP. Si quelqu'un sur Internet demande votre nom DNS, il " "obtiendra votre IP du jour." -#: plinth/modules/dynamicdns/dynamicdns.py:35 plinth/modules/help/help.py:40 +#: plinth/modules/dynamicdns/__init__.py:67 +#: plinth/modules/dynamicdns/dynamicdns.py:377 +#, fuzzy +#| msgid "Dynamic DNS Client" +msgid "Dynamic DNS Service" +msgstr "Client DNS dynamique" + +#: plinth/modules/dynamicdns/dynamicdns.py:43 plinth/modules/help/help.py:40 msgid "About" msgstr "À propos" -#: plinth/modules/dynamicdns/dynamicdns.py:39 +#: plinth/modules/dynamicdns/dynamicdns.py:47 #: plinth/modules/firewall/templates/firewall.html:47 #: plinth/modules/networks/templates/connection_show.html:261 #: plinth/modules/openvpn/templates/openvpn.html:67 @@ -582,7 +637,7 @@ msgstr "À propos" msgid "Status" msgstr "État" -#: plinth/modules/dynamicdns/dynamicdns.py:63 +#: plinth/modules/dynamicdns/dynamicdns.py:71 msgid "" "The Variables <User>, <Pass>, <Ip>, <Domain> may be " "used within the URL. For details see the update URL templates of the example " @@ -592,7 +647,7 @@ msgstr "" "être utilisées dans l'URL. Pour plus de détails, voir les modèles d'URL mis " "à jour pour un exemple de fournisseurs." -#: plinth/modules/dynamicdns/dynamicdns.py:67 +#: plinth/modules/dynamicdns/dynamicdns.py:75 msgid "" "Please choose an update protocol according to your provider. If your " "provider does not support the GnuDIP protocol or your provider is not listed " @@ -603,7 +658,7 @@ msgstr "" "votre fournisseur n'est pas listé, vous pouvez utiliser la mise à jour URL " "de votre fournisseur." -#: plinth/modules/dynamicdns/dynamicdns.py:72 +#: plinth/modules/dynamicdns/dynamicdns.py:80 msgid "" "Please do not enter a URL here (like \"https://example.com/\") but only the " "hostname of the GnuDIP server (like \"example.com\")." @@ -611,19 +666,19 @@ msgstr "" "Veuillez ne pas entrer une URL (comme \"https://example.com/\"), mais " "seulement le nom de machine du serveur GnuDIP (comme \"example.com\")." -#: plinth/modules/dynamicdns/dynamicdns.py:76 +#: plinth/modules/dynamicdns/dynamicdns.py:84 #, python-brace-format msgid "The public domain name you want to use to reach your {box_name}." msgstr "" "Le nom de domaine public que vous désirez utiliser pour atteindre votre " "{box_name}." -#: plinth/modules/dynamicdns/dynamicdns.py:79 +#: plinth/modules/dynamicdns/dynamicdns.py:87 msgid "Use this option if your provider uses self signed certificates." msgstr "" "Utilisez ce choix si votre fournisseur utilise des certificats auto-signés." -#: plinth/modules/dynamicdns/dynamicdns.py:82 +#: plinth/modules/dynamicdns/dynamicdns.py:90 msgid "" "If this option is selected, your username and password will be used for HTTP " "basic authentication." @@ -631,13 +686,13 @@ msgstr "" "Si ce choix est sélectionné, votre nom d'utilisateur et votre mot de passe " "seront utilisés pour une authentification HTTP de base." -#: plinth/modules/dynamicdns/dynamicdns.py:85 +#: plinth/modules/dynamicdns/dynamicdns.py:93 msgid "Leave this field empty if you want to keep your current password." msgstr "" "Laissez ce champ vide si vous ne désirez pas changer le mot de passe entré " "précédemment." -#: plinth/modules/dynamicdns/dynamicdns.py:88 +#: plinth/modules/dynamicdns/dynamicdns.py:96 #, python-brace-format msgid "" "Optional Value. If your {box_name} is not connected directly to the Internet " @@ -651,84 +706,84 @@ msgstr "" "directement à l'Internet (si par exemple votre routeur est sur le mode « NAT " "»)." -#: plinth/modules/dynamicdns/dynamicdns.py:96 +#: plinth/modules/dynamicdns/dynamicdns.py:104 msgid "The username that was used when the account was created." msgstr "" "Le nom d'utilsateur (« Username » ou « Hostname ») choisi lors de la " "création du compte dynamique." -#: plinth/modules/dynamicdns/dynamicdns.py:107 +#: plinth/modules/dynamicdns/dynamicdns.py:115 msgid "Enable Dynamic DNS" msgstr "Activer le DNS Dynamique" -#: plinth/modules/dynamicdns/dynamicdns.py:110 +#: plinth/modules/dynamicdns/dynamicdns.py:118 msgid "Service Type" msgstr "Type de service" -#: plinth/modules/dynamicdns/dynamicdns.py:115 +#: plinth/modules/dynamicdns/dynamicdns.py:123 msgid "GnuDIP Server Address" msgstr "Adresse Serveur GnuDIP" -#: plinth/modules/dynamicdns/dynamicdns.py:120 +#: plinth/modules/dynamicdns/dynamicdns.py:128 msgid "Invalid server name" msgstr "Nom de serveur invalide" -#: plinth/modules/dynamicdns/dynamicdns.py:123 +#: plinth/modules/dynamicdns/dynamicdns.py:131 msgid "Update URL" msgstr "Actualiser l'URL" -#: plinth/modules/dynamicdns/dynamicdns.py:127 +#: plinth/modules/dynamicdns/dynamicdns.py:135 msgid "Accept all SSL certificates" msgstr "Accepte tous les certificats SSL" -#: plinth/modules/dynamicdns/dynamicdns.py:131 +#: plinth/modules/dynamicdns/dynamicdns.py:139 msgid "Use HTTP basic authentication" msgstr "Utiliser une authentification HTTP basique" -#: plinth/modules/dynamicdns/dynamicdns.py:143 +#: plinth/modules/dynamicdns/dynamicdns.py:151 #: plinth/modules/networks/forms.py:228 plinth/modules/transmission/forms.py:37 msgid "Username" msgstr "Nom Utilisateur" -#: plinth/modules/dynamicdns/dynamicdns.py:146 +#: plinth/modules/dynamicdns/dynamicdns.py:154 #: plinth/modules/networks/forms.py:229 plinth/modules/transmission/forms.py:41 msgid "Password" msgstr "Mot de passe" -#: plinth/modules/dynamicdns/dynamicdns.py:149 +#: plinth/modules/dynamicdns/dynamicdns.py:157 #: plinth/modules/networks/forms.py:231 msgid "Show password" msgstr "Montrer le mot de passe" -#: plinth/modules/dynamicdns/dynamicdns.py:153 +#: plinth/modules/dynamicdns/dynamicdns.py:161 msgid "URL to look up public IP" msgstr "URL pour rechercher l'IP publique" -#: plinth/modules/dynamicdns/dynamicdns.py:179 +#: plinth/modules/dynamicdns/dynamicdns.py:187 msgid "Please provide an update URL or a GnuDIP server address" msgstr "Fournir une mise à jour URL ou une adresse de serveur GnuDIP" -#: plinth/modules/dynamicdns/dynamicdns.py:184 +#: plinth/modules/dynamicdns/dynamicdns.py:192 msgid "Please provide a GnuDIP username" msgstr "Fournir le nom d'utilisateur GnuDIP (« Username/Hostname »)" -#: plinth/modules/dynamicdns/dynamicdns.py:188 +#: plinth/modules/dynamicdns/dynamicdns.py:196 msgid "Please provide a GnuDIP domain name" msgstr "Fournir le nom de domaine GnuDIP (« Domain Name »)" -#: plinth/modules/dynamicdns/dynamicdns.py:193 +#: plinth/modules/dynamicdns/dynamicdns.py:201 msgid "Please provide a password" msgstr "Fournir un mot de passe" -#: plinth/modules/dynamicdns/dynamicdns.py:211 +#: plinth/modules/dynamicdns/dynamicdns.py:219 msgid "Configure Dynamic DNS" msgstr "Configurer le DNS Dynamique" -#: plinth/modules/dynamicdns/dynamicdns.py:232 +#: plinth/modules/dynamicdns/dynamicdns.py:240 msgid "Dynamic DNS Status" msgstr "Etat du DNS Dynamique" -#: plinth/modules/dynamicdns/dynamicdns.py:364 +#: plinth/modules/dynamicdns/dynamicdns.py:381 #: plinth/modules/openvpn/views.py:143 plinth/modules/transmission/views.py:72 msgid "Configuration updated" msgstr "Configuration actualisée" @@ -804,15 +859,18 @@ msgstr "" msgid "Last update" msgstr "Dernière mise à jour" -#: plinth/modules/ejabberd/__init__.py:42 -msgid "" -"Chat Server \n" -" (ejabberd)" -msgstr "" -"Serveur de discussion\n" -" (ejabberd)" - #: plinth/modules/ejabberd/__init__.py:45 +msgid "ejabberd" +msgstr "" + +#: plinth/modules/ejabberd/__init__.py:47 +#: plinth/modules/matrixsynapse/__init__.py:43 +#, fuzzy +#| msgid "Web Server" +msgid "Chat Server" +msgstr "Serveur Web" + +#: plinth/modules/ejabberd/__init__.py:50 msgid "" "XMPP is an open and standardized communication protocol. Here you can run " "and configure your XMPP server, called ejabberd." @@ -820,11 +878,17 @@ msgstr "" "XMPP est un protocole de communication ouvert et standardisé. Vous pouvez " "lancer et configurer ici votre serveur XMPP, appelé ejabberd." -#: plinth/modules/ejabberd/__init__.py:48 +#: plinth/modules/ejabberd/__init__.py:54 +#, fuzzy, python-brace-format +#| msgid "" +#| "To actually communicate, you can use the web client or any other XMPP " +#| "client." msgid "" -"To actually communicate, you can use the web client or any other XMPP client." +"To actually communicate, you can use the web " +"client or any other XMPP client. When enabled, ejabberd can be accessed by " +"any user with a {box_name} login." msgstr "" "Pour communiquer, vous pouvez utiliser le client Web ou tout autre client XMPP/ikiwiki." msgid "" "ikiwiki is a simple wiki and blog application. It supports several " "lightweight markup languages, including Markdown, and common blogging " "functionality such as comments and RSS feeds. When enabled, the blogs and " -"wikis will be available from /ikiwiki." +"wikis will be available at /ikiwiki (once created)." msgstr "" "ikiwiki est une application simple de wiki et de blogs. Il prend en charge " "plusieurs langages de balisage légers, y compris Markdown, et les " @@ -1221,6 +1292,15 @@ msgstr "" "Une fois activés, les blogs et les wikis seront disponibles sur /ikiwiki." +#: plinth/modules/ikiwiki/__init__.py:53 +#, python-brace-format +msgid "" +"Only {box_name} users in the admin group can create and " +"manage blogs and wikis, but any user in the wiki group can " +"edit existing ones. In the User " +"Configuration you can change these permissions or add new users." +msgstr "" + #: plinth/modules/ikiwiki/forms.py:34 #: plinth/modules/networks/templates/connection_show.html:78 msgid "Name" @@ -1333,18 +1413,20 @@ msgid "Delete Wiki or Blog" msgstr "Supprimer le Wiki ou le Blogue" #: plinth/modules/infinoted/__init__.py:43 -msgid "" -"Gobby Server \n" -" (infinoted)" +msgid "infinoted" msgstr "" -"Serveur Gobby\n" -"(infinoted)" -#: plinth/modules/infinoted/__init__.py:46 +#: plinth/modules/infinoted/__init__.py:45 +#, fuzzy +#| msgid "Web Server" +msgid "Gobby Server" +msgstr "Serveur Web" + +#: plinth/modules/infinoted/__init__.py:48 msgid "infinoted is a server for Gobby, a collaborative text editor." msgstr "infinoted est un serveur pour Gobby, un éditeur de texte collaboratif." -#: plinth/modules/infinoted/__init__.py:49 +#: plinth/modules/infinoted/__init__.py:51 #, python-brace-format msgid "" "To use it, download Gobby, desktop " @@ -1356,14 +1438,20 @@ msgstr "" "to Server\". Saisissez le nom de domaine de {box_name}." #: plinth/modules/jsxc/__init__.py:36 -msgid "" -"Chat Client \n" -" (JSXC)" +msgid "JSXC" +msgstr "" + +#: plinth/modules/jsxc/__init__.py:38 +#, fuzzy +#| msgid "" +#| "Chat Client \n" +#| " (JSXC)" +msgid "Chat Client" msgstr "" "Logiciel de chat\n" "(JSXC)" -#: plinth/modules/jsxc/__init__.py:40 +#: plinth/modules/jsxc/__init__.py:42 msgid "" "JSXC is a web client for XMPP. Typically it is used with an XMPP server " "running locally." @@ -1371,7 +1459,7 @@ msgstr "" "JSXC est un client Web pour XMPP. Il s'utilise typiquement avec un serveur " "XMPP tournant sur la même machine." -#: plinth/modules/jsxc/__init__.py:78 +#: plinth/modules/jsxc/__init__.py:80 msgid "" "Chat Client \n" " (jsxc)" @@ -1379,12 +1467,19 @@ msgstr "" "Logiciel de chat\n" " (jsxc)" -#: plinth/modules/letsencrypt/__init__.py:39 -#: plinth/modules/letsencrypt/__init__.py:64 -msgid "Certificates (Let's Encrypt)" +#: plinth/modules/letsencrypt/__init__.py:40 +#, fuzzy +#| msgid "Certificates (Let's Encrypt)" +msgid "Let's Encrypt" msgstr "Certificats (Let's Encrypt)" -#: plinth/modules/letsencrypt/__init__.py:43 +#: plinth/modules/letsencrypt/__init__.py:42 +#, fuzzy +#| msgid "Certificate Status" +msgid "Certificates" +msgstr "État du certificat" + +#: plinth/modules/letsencrypt/__init__.py:46 #, python-brace-format msgid "" "A digital certificate allows users of a web service to verify the identity " @@ -1400,7 +1495,7 @@ msgstr "" "le propriétaire du domaine auprès de l'autorité de certification « Let's " "Encrypt »." -#: plinth/modules/letsencrypt/__init__.py:50 +#: plinth/modules/letsencrypt/__init__.py:53 msgid "" "Let's Encrypt is a free, automated, and open certificate authority, run for " "the public's benefit by the Internet Security Research Group (ISRG). Please " @@ -1429,52 +1524,102 @@ msgstr "Sécurité du site web" msgid "Actions" msgstr "Actions" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:56 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:62 #, python-format msgid "Valid, expires on %(expiry_date)s" msgstr "Valide, expire le %(expiry_date)s" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:63 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:69 msgid "Revoked" msgstr "Révoqué" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:67 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:73 #, python-format msgid "Expired on %(expiry_date)s" msgstr "Expiré le %(expiry_date)s" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:71 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:77 msgid "Invalid test certificate" msgstr "Certificat de test invalide" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:75 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:81 #, python-format msgid "Invalid (%(reason)s)" msgstr "Invalide (%(reason)s)" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:82 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:88 msgid "No certificate" msgstr "Aucun certificat" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:99 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:105 msgid "Re-obtain" msgstr "Obtenir à nouveau" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:105 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:111 #: plinth/modules/networks/templates/connection_show.html:63 #: plinth/modules/snapshot/templates/snapshot.html:34 msgid "Delete" msgstr "Supprimer" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:112 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:118 msgid "Revoke" msgstr "Révoquer" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:120 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:126 msgid "Obtain" msgstr "Obtenir" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:133 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:149 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:156 +#, fuzzy +#| msgid "Update" +msgid "Update config" +msgstr "Actualiser" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:161 +#, python-format +msgid "" +"\n" +" Let Plinth manage certificate renewal of\n" +" %(current_domain)s (recommended)\n" +" " +msgstr "" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:166 +msgid "" +"\n" +" Let Plinth manage certificate renewal of the current domain " +"(recommended)\n" +" " +msgstr "" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:175 +#, python-format +msgid "" +"If %(box_name)s manages the certificate renewal for the current domain, it " +"will ensure that all apps that use the certificate can use it, as soon as it " +"gets renewed." +msgstr "" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:181 +msgid "" +"No certificate available for the current domain. First obtain a " +"certificate to enable management of its renewal." +msgstr "" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:186 +#, fuzzy +#| msgid "" +#| "No domains have been configured. Configure domains to be able to obtain " +#| "certificates for them." +msgid "" +"No current domain is configured. First configure a domain to enable " +"management of its certificates." +msgstr "" +"Aucun domaine n'a été configuré. Configurez des domaines pour pouvoir leur " +"obtenir des certificats." + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:195 msgid "" "No domains have been configured. Configure domains to be able to obtain " "certificates for them." @@ -1482,7 +1627,7 @@ msgstr "" "Aucun domaine n'a été configuré. Configurez des domaines pour pouvoir leur " "obtenir des certificats." -#: plinth/modules/letsencrypt/views.py:55 +#: plinth/modules/letsencrypt/views.py:57 #, python-brace-format msgid "" "Certificate successfully revoked for domain {domain}.This may take a few " @@ -1491,42 +1636,77 @@ msgstr "" "Certificat révoqué avec succès pour le domaine {domain}. Cela peut prendre " "un moment pour prendre effet." -#: plinth/modules/letsencrypt/views.py:61 +#: plinth/modules/letsencrypt/views.py:63 #, python-brace-format msgid "Failed to revoke certificate for domain {domain}: {error}" msgstr "" "Échec de la révocation du certificat pour le domaine {domain} : {error}" -#: plinth/modules/letsencrypt/views.py:73 +#: plinth/modules/letsencrypt/views.py:75 #, python-brace-format msgid "Certificate successfully obtained for domain {domain}" msgstr "Certificat obtenu avec succès pour le domaine {domain}" -#: plinth/modules/letsencrypt/views.py:78 +#: plinth/modules/letsencrypt/views.py:81 #, python-brace-format msgid "Failed to obtain certificate for domain {domain}: {error}" msgstr "Échec de l'obtention du certificat pour le domaine {domain} : {error}" #: plinth/modules/letsencrypt/views.py:90 +#: plinth/modules/letsencrypt/views.py:109 +#, fuzzy, python-brace-format +#| msgid "Certificate successfully deleted for domain {domain}" +msgid "Certificate renewal management enabled for {domain}." +msgstr "Certificat supprimé avec succès pour le domaine {domain}" + +#: plinth/modules/letsencrypt/views.py:95 +#, fuzzy, python-brace-format +#| msgid "Failed to delete certificate for domain {domain}: {error}" +msgid "Failed to enable certificate renewal management for {domain}: {error}" +msgstr "" +"Échec de la suppression du certificat pour le domaine {domain} : {error}" + +#: plinth/modules/letsencrypt/views.py:112 +#, fuzzy, python-brace-format +#| msgid "Certificate successfully deleted for domain {domain}" +msgid "Certificate renewal management disabled for {domain}." +msgstr "Certificat supprimé avec succès pour le domaine {domain}" + +#: plinth/modules/letsencrypt/views.py:118 +#, fuzzy, python-brace-format +#| msgid "Failed to obtain certificate for domain {domain}: {error}" +msgid "Failed to switch certificate renewal management for {domain}: {error}" +msgstr "Échec de l'obtention du certificat pour le domaine {domain} : {error}" + +#: plinth/modules/letsencrypt/views.py:134 +#, fuzzy, python-brace-format +#| msgid "Failed to delete certificate for domain {domain}: {error}" +msgid "Failed to disable certificate renewal management for {domain}: {error}" +msgstr "" +"Échec de la suppression du certificat pour le domaine {domain} : {error}" + +#: plinth/modules/letsencrypt/views.py:141 #, python-brace-format msgid "Certificate successfully deleted for domain {domain}" msgstr "Certificat supprimé avec succès pour le domaine {domain}" -#: plinth/modules/letsencrypt/views.py:95 +#: plinth/modules/letsencrypt/views.py:146 #, python-brace-format msgid "Failed to delete certificate for domain {domain}: {error}" msgstr "" "Échec de la suppression du certificat pour le domaine {domain} : {error}" #: plinth/modules/matrixsynapse/__init__.py:41 -msgid "" -"Chat Server \n" -" (Matrix Synapse)" +#, fuzzy +#| msgid "" +#| "Chat Server \n" +#| " (Matrix Synapse)" +msgid "Matrix Synapse" msgstr "" "Serveur de discussion\n" " (Matrix Synapse)" -#: plinth/modules/matrixsynapse/__init__.py:44 +#: plinth/modules/matrixsynapse/__init__.py:46 msgid "" "Matrix is an new " "ecosystem for open, federated instant messaging and VoIP. Synapse is a " @@ -1544,7 +1724,7 @@ msgstr "" "peuvent converser avec des utilisateurs sur tous les autres serveurs Matrix " "grâce la fédération." -#: plinth/modules/matrixsynapse/__init__.py:52 +#: plinth/modules/matrixsynapse/__init__.py:54 msgid "" "To communicate, you can use the available clients for mobile, desktop and the web. les clients disponible pour mobile, desktop et le web. Le " "client Riot est recommandé." -#: plinth/modules/matrixsynapse/forms.py:31 -msgid "Select the domain name" -msgstr "Sélectionnez le nom de domaine" - #: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:34 msgid "" "Matrix service needs to be configured for a domain. Users on other Matrix " @@ -1604,14 +1780,20 @@ msgstr "" "pas prise en charge." #: plinth/modules/minetest/__init__.py:48 -msgid "" -"Block Sandbox \n" -" (Minetest)" +msgid "Minetest" +msgstr "" + +#: plinth/modules/minetest/__init__.py:50 +#, fuzzy +#| msgid "" +#| "Block Sandbox \n" +#| " (Minetest)" +msgid "Block Sandbox" msgstr "" "Bac à sable cubique\n" " (Minetest)" -#: plinth/modules/minetest/__init__.py:52 +#: plinth/modules/minetest/__init__.py:54 #, python-brace-format msgid "" "Minetest is a multiplayer infinite-world block sandbox. This module enables " @@ -1755,7 +1937,7 @@ msgstr "Secure Shell" #: plinth/modules/monkeysphere/templates/monkeysphere.html:87 #: plinth/modules/monkeysphere/templates/monkeysphere_details.html:60 -#: plinth/service.py:117 +#: plinth/service.py:116 msgid "Web Server" msgstr "Serveur Web" @@ -1855,14 +2037,20 @@ msgid "Error occurred while publishing key." msgstr "Une erreur est survenue lors de la publication de la clef." #: plinth/modules/mumble/__init__.py:35 -msgid "" -"Voice Chat \n" -" (Mumble)" +msgid "Mumble" +msgstr "" + +#: plinth/modules/mumble/__init__.py:37 +#, fuzzy +#| msgid "" +#| "Voice Chat \n" +#| " (Mumble)" +msgid "Voice Chat" msgstr "" "Chat vocal\n" " (Mumble)" -#: plinth/modules/mumble/__init__.py:44 +#: plinth/modules/mumble/__init__.py:46 msgid "" "Mumble is an open source, low-latency, encrypted, high quality voice chat " "software." @@ -1870,7 +2058,7 @@ msgstr "" "Mumble est un logiciel de chat vocal de haute qualité, open source, crypté " "et à faible temps de latence." -#: plinth/modules/mumble/__init__.py:47 +#: plinth/modules/mumble/__init__.py:49 msgid "" "You can connect to your Mumble server on the regular Mumble port 64738. Clients to connect to Mumble from your " @@ -2394,7 +2582,7 @@ msgid "This connection is not active." msgstr "Cette connexion n'est pas active." #: plinth/modules/networks/templates/connection_show.html:266 -#: plinth/modules/security/__init__.py:32 plinth/modules/security/views.py:46 +#: plinth/modules/security/__init__.py:32 plinth/modules/security/views.py:48 msgid "Security" msgstr "Sécurité" @@ -2501,14 +2689,22 @@ msgid "Inactive" msgstr "Inactif" #: plinth/modules/openvpn/__init__.py:42 -msgid "" -"Virtual Private Network \n" -" (OpenVPN)" +#, fuzzy +#| msgid "Open" +msgid "OpenVPN" +msgstr "Ouvert" + +#: plinth/modules/openvpn/__init__.py:44 +#, fuzzy +#| msgid "" +#| "Virtual Private Network \n" +#| " (OpenVPN)" +msgid "Virtual Private Network" msgstr "" "Réseau Privé Virtuel\n" "(OpenVPN)" -#: plinth/modules/openvpn/__init__.py:46 +#: plinth/modules/openvpn/__init__.py:48 #, python-brace-format msgid "" "Virtual Private Network (VPN) is a technique for securely connecting two " @@ -2525,7 +2721,7 @@ msgstr "" "internes via {box_name}. Vous pouvez aussi accéder à l'Internet via " "{box_name} depuis votre réseau pour une sécurité et un anonymat accrus." -#: plinth/modules/openvpn/__init__.py:84 +#: plinth/modules/openvpn/__init__.py:86 #, python-brace-format msgid "" "Download Profile" @@ -2615,10 +2811,18 @@ msgid "Setup failed." msgstr "Échec de l'installation." #: plinth/modules/pagekite/__init__.py:44 -msgid "Public Visibility (PageKite)" +#, fuzzy +#| msgid "Pagekite" +msgid "PageKite" +msgstr "Pagekite" + +#: plinth/modules/pagekite/__init__.py:46 +#, fuzzy +#| msgid "Public Visibility (PageKite)" +msgid "Public Visibility" msgstr "Visibilité Publique (PageKite)" -#: plinth/modules/pagekite/__init__.py:48 +#: plinth/modules/pagekite/__init__.py:50 #, python-brace-format msgid "" "PageKite is a system for exposing {box_name} services when you don't have a " @@ -2631,18 +2835,18 @@ msgstr "" "besoin que si les services de {box_name} ne sont pas joignables depuis le " "reste de l'Internet. Cela comprend les situations suivantes :" -#: plinth/modules/pagekite/__init__.py:55 +#: plinth/modules/pagekite/__init__.py:57 #, python-brace-format msgid "{box_name} is behind a restricted firewall." msgstr "{box_name} est derrière un pare-feu restrictif." -#: plinth/modules/pagekite/__init__.py:59 +#: plinth/modules/pagekite/__init__.py:61 #, python-brace-format msgid "{box_name} is connected to a (wireless) router which you don't control." msgstr "" "{box_name} est connecté à un réseau (sans fil) que vous ne contrôlez pas." -#: plinth/modules/pagekite/__init__.py:62 +#: plinth/modules/pagekite/__init__.py:64 msgid "" "Your ISP does not provide you an external IP address and instead provides " "Internet connection through NAT." @@ -2650,7 +2854,7 @@ msgstr "" "Votre FAI ne vous fournit pas une adresse IP externe, plutôt une connexion " "Internet via NAT." -#: plinth/modules/pagekite/__init__.py:65 +#: plinth/modules/pagekite/__init__.py:67 msgid "" "Your ISP does not provide you a static IP address and your IP address " "changes evertime you connect to Internet." @@ -2658,11 +2862,11 @@ msgstr "" "Votre FAI ne vous fournit pas une adresse statique, votre adresse IP change " "à chaque fois que vous vous connectez à l'Internet." -#: plinth/modules/pagekite/__init__.py:68 +#: plinth/modules/pagekite/__init__.py:70 msgid "Your ISP limits incoming connections." msgstr "Votre FAI limite les connexions entrantes." -#: plinth/modules/pagekite/__init__.py:71 +#: plinth/modules/pagekite/__init__.py:73 #, python-brace-format msgid "" "PageKite works around NAT, firewalls and IP-address limitations by using a " @@ -2964,8 +3168,8 @@ msgid "Pagekite setup finished. The HTTP and HTTPS services are activated now." msgstr "" "Installation de Pagekite terminée. Les services HTTP et HTTPS sont activés." -#: plinth/modules/power/__init__.py:28 plinth/modules/power/views.py:50 -#: plinth/modules/power/views.py:65 +#: plinth/modules/power/__init__.py:28 plinth/modules/power/views.py:51 +#: plinth/modules/power/views.py:67 msgid "Power" msgstr "Alimentation" @@ -2974,10 +3178,22 @@ msgid "Restart or shut down the system." msgstr "Redémarrer ou éteindre le système." #: plinth/modules/power/templates/power.html:28 +#, fuzzy +#| msgid "" +#| "Another installation or upgrade is already running. Please wait for a few " +#| "moments before trying again." +msgid "" +"Currently an installation or upgrade is running. Consider waiting until it's " +"finished before shutting down or restarting." +msgstr "" +"Une autre installation ou mise à niveau est déjà en cours d’exécution. " +"Veuillez patienter quelques instants avant de réessayer." + +#: plinth/modules/power/templates/power.html:37 msgid "Restart »" msgstr "Redémarrer »" -#: plinth/modules/power/templates/power.html:31 +#: plinth/modules/power/templates/power.html:40 msgid "Shut Down »" msgstr "Éteindre »" @@ -2990,7 +3206,20 @@ msgstr "" "interface Web durant quelques minutes, jusqu'à ce que le système ait " "redémarré." -#: plinth/modules/power/templates/power_restart.html:42 +#: plinth/modules/power/templates/power_restart.html:38 +#, fuzzy +#| msgid "" +#| "Another installation or upgrade is already running. Please wait for a few " +#| "moments before trying again." +msgid "" +"Currently an installation or upgrade is running. Consider waiting until it's " +"finished before restarting." +msgstr "" +"Une autre installation ou mise à niveau est déjà en cours d’exécution. " +"Veuillez patienter quelques instants avant de réessayer." + +#: plinth/modules/power/templates/power_restart.html:52 +#: plinth/modules/power/templates/power_restart.html:55 msgid "Restart Now" msgstr "Redémarrer Maintenant" @@ -3002,19 +3231,36 @@ msgstr "" "Voulez-vous vraiment éteindre le système ? Vous ne pourrez plus avoir accès " "à cette interface Web après l'extinction du système." -#: plinth/modules/power/templates/power_shutdown.html:41 +#: plinth/modules/power/templates/power_shutdown.html:37 +#, fuzzy +#| msgid "" +#| "Another installation or upgrade is already running. Please wait for a few " +#| "moments before trying again." +msgid "" +"Currently an installation or upgrade is running. Consider waiting until it's " +"finished before shutting down." +msgstr "" +"Une autre installation ou mise à niveau est déjà en cours d’exécution. " +"Veuillez patienter quelques instants avant de réessayer." + +#: plinth/modules/power/templates/power_shutdown.html:51 +#: plinth/modules/power/templates/power_shutdown.html:54 msgid "Shut Down Now" msgstr "Éteindre Maintenant" #: plinth/modules/privoxy/__init__.py:43 -msgid "" -"Web Proxy \n" -" (Privoxy)" -msgstr "" -"Proxy Web\n" -" (Privoxy)" +#, fuzzy +#| msgid "Enable Privoxy" +msgid "Privoxy" +msgstr "Activer Privoxy" -#: plinth/modules/privoxy/__init__.py:46 +#: plinth/modules/privoxy/__init__.py:45 +#, fuzzy +#| msgid "Privoxy Web Proxy" +msgid "Web Proxy" +msgstr "Proxy Web Privoxy" + +#: plinth/modules/privoxy/__init__.py:48 msgid "" "Privoxy is a non-caching web proxy with advanced filtering capabilities for " "enhancing privacy, modifying web page data and HTTP headers, controlling " @@ -3025,7 +3271,7 @@ msgstr "" "pages Web ou des en-têtes HTTP ainsi que de contrôler l'accès et de retirer " "les publicités ou autres éléments nuisibles de l'Internet. " -#: plinth/modules/privoxy/__init__.py:52 +#: plinth/modules/privoxy/__init__.py:54 #, python-brace-format msgid "" "You can use Privoxy by modifying your browser proxy settings to your " @@ -3041,20 +3287,22 @@ msgstr "" "config.privoxy.org\">http://config.privoxy.org/ ou http://p.p." -#: plinth/modules/privoxy/__init__.py:144 +#: plinth/modules/privoxy/__init__.py:147 #, python-brace-format msgid "Access {url} with proxy {proxy} on tcp{kind}" msgstr "Accéder à l'URL {url} avec le proxy {proxy} sur tcp{kind}" #: plinth/modules/quassel/__init__.py:42 -msgid "" -"IRC Client \n" -" (Quassel)" +msgid "Quassel" msgstr "" -"Logiciel client IRC\n" -" (Quassel)" -#: plinth/modules/quassel/__init__.py:46 +#: plinth/modules/quassel/__init__.py:44 +#, fuzzy +#| msgid "Quassel IRC Client" +msgid "IRC Client" +msgstr "Logiciel IRC Quassel" + +#: plinth/modules/quassel/__init__.py:48 #, python-brace-format msgid "" "Quassel is an IRC application that is split into two parts, a \"core\" and a " @@ -3071,7 +3319,7 @@ msgstr "" "vous soyez toujours en ligne. Un ou plusieurs clients Quassel basés sur un " "ordinateur ou un mobile servent à se brancher sur le cœur ou s'en débrancher." -#: plinth/modules/quassel/__init__.py:54 +#: plinth/modules/quassel/__init__.py:56 msgid "" "You can connect to your Quassel core on the default Quassel port 4242. " "Clients to connect to Quassel from your " +#| "supported client application is needed. Radicale can be accessed by " +#| "any user with a {box_name} login." msgid "" "Radicale is a CalDAV and CardDAV server. It allows synchronization and " "sharing of scheduling and contact data. To use Radicale, a supported " -"client application is needed. Radicale can be accessed by any user with " -"a {box_name} login." +"radicale.org/clients/\">supported client application is needed. Radicale " +"can be accessed by any user with a {box_name} login." msgstr "" "Radicale est un serveur pour les protocoles d'édition de calendrier en ligne " "CalDAV et de carnet d'adresses CardDAV. Il permet de synchroniser et de " @@ -3133,14 +3392,16 @@ msgid "Access rights configuration updated" msgstr "Configuration des droits d'accès mise à jour" #: plinth/modules/repro/__init__.py:38 -msgid "" -"SIP Server \n" -" (repro)" +msgid "repro" msgstr "" -"Serveur SIP\n" -" (repro)" -#: plinth/modules/repro/__init__.py:41 +#: plinth/modules/repro/__init__.py:40 +#, fuzzy +#| msgid "DNS Server" +msgid "SIP Server" +msgstr "Serveur DNS" + +#: plinth/modules/repro/__init__.py:43 msgid "" "repro provides various SIP services that a SIP softphone can utilize to " "provide audio and video calls as well as presence and instant messaging. " @@ -3156,7 +3417,7 @@ msgstr "" "fédérer les communications SIP avec d'autres serveurs sur Internet de " "manière comparable avec le courrier électronique." -#: plinth/modules/repro/__init__.py:48 +#: plinth/modules/repro/__init__.py:50 msgid "" "To make SIP calls, a client application is needed. Available clients include " "Jitsi (for computers) and CSipSimple (pour les téléphones Android)." -#: plinth/modules/repro/__init__.py:53 +#: plinth/modules/repro/__init__.py:55 msgid "" "Note: Before using repro, domains and users will need to " "be configured using the web-based " @@ -3185,14 +3446,20 @@ msgstr "" "réactivez-le." #: plinth/modules/restore/__init__.py:36 -msgid "" -"Unhosted Storage \n" -" (reStore)" +msgid "reStore" +msgstr "reStore" + +#: plinth/modules/restore/__init__.py:38 +#, fuzzy +#| msgid "" +#| "Unhosted Storage \n" +#| " (reStore)" +msgid "Unhosted Storage" msgstr "" "Stockage Non Hébergé\n" " (reStore)" -#: plinth/modules/restore/__init__.py:40 +#: plinth/modules/restore/__init__.py:42 #, python-brace-format msgid "" "reStore is a server for unhosted web " @@ -3209,7 +3476,7 @@ msgstr "" "utilisant reStore, votre machine {box_name} devient votre serveur de " "stockage non hébergé." -#: plinth/modules/restore/__init__.py:47 +#: plinth/modules/restore/__init__.py:49 msgid "" "You can create and edit accounts in the reStore web-" "interface." @@ -3218,14 +3485,22 @@ msgstr "" "restore/'>l'interface Web reStore." #: plinth/modules/roundcube/__init__.py:35 -msgid "" -"Email Client \n" -" (Roundcube)" +#, fuzzy +#| msgid "Enable Roundcube" +msgid "Roundcube" +msgstr "Activer Roundcube" + +#: plinth/modules/roundcube/__init__.py:37 +#, fuzzy +#| msgid "" +#| "Email Client \n" +#| " (Roundcube)" +msgid "Email Client" msgstr "" "Client Courriel\n" " (Roundcube)" -#: plinth/modules/roundcube/__init__.py:38 +#: plinth/modules/roundcube/__init__.py:40 msgid "" "Roundcube webmail is a browser-based multilingual IMAP client with an " "application-like user interface. It provides full functionality you expect " @@ -3239,7 +3514,7 @@ msgstr "" "d'adresses, une gestion des dossiers, une recherche des messages et un " "correcteur orthographique." -#: plinth/modules/roundcube/__init__.py:44 +#: plinth/modules/roundcube/__init__.py:46 msgid "" "You can access Roundcube from /roundcube. Provide " "the username and password of the email account you wish to access followed " @@ -3254,7 +3529,7 @@ msgstr "" "example.com. Pour de l'IMAP sur du SSL (recommandé), remplissez les " "champs du serveur avec par exemple imaps://imap.example.com." -#: plinth/modules/roundcube/__init__.py:51 +#: plinth/modules/roundcube/__init__.py:53 msgid "" "For Gmail, username will be your Gmail address, password will be your Google " "account password and server will be imaps://imap.gmail.com. " @@ -3285,28 +3560,45 @@ msgstr "" "console pourraient avoir accès à certains services sans autorisation " "supplémentaire." -#: plinth/modules/security/views.py:63 +#: plinth/modules/security/forms.py:35 +msgid "Fail2ban (recommended)" +msgstr "" + +#: plinth/modules/security/forms.py:36 +msgid "" +"When this option is enabled, fail2ban will limit brute force break-in " +"attempts to the SSH server and other password protected internet-services " +"which are enabled." +msgstr "" + +#: plinth/modules/security/views.py:66 #, python-brace-format msgid "Error setting restricted access: {exception}" msgstr "Erreur lors de l'établissement de l'accès restreint : {exception}" -#: plinth/modules/security/views.py:66 +#: plinth/modules/security/views.py:69 msgid "Updated security configuration" msgstr "Configuration de sécurité mise à jour" #: plinth/modules/shaarli/__init__.py:35 -msgid "" -"Bookmarks \n" -" (Shaarli)" +msgid "Shaarli" +msgstr "Shaarli" + +#: plinth/modules/shaarli/__init__.py:37 +#, fuzzy +#| msgid "" +#| "Bookmarks \n" +#| " (Shaarli)" +msgid "Bookmarks" msgstr "" "Signets\n" " (Shaarli)" -#: plinth/modules/shaarli/__init__.py:38 +#: plinth/modules/shaarli/__init__.py:40 msgid "Shaarli allows you to save and share bookmarks." msgstr "Shaarli permet de sauvegarder et de partager vos signets." -#: plinth/modules/shaarli/__init__.py:40 +#: plinth/modules/shaarli/__init__.py:42 msgid "" "When enabled, Shaarli will be available from /shaarli path on the web server. Note that Shaarli only supports a single user " @@ -3437,6 +3729,18 @@ msgstr "Le système doit être redémarré pour terminer le retour en arrière." msgid "Rollback to Snapshot" msgstr "Revenir à l'instantané" +#: plinth/modules/ssh/__init__.py:37 +msgid "Secure Shell (SSH) Server" +msgstr "Serveur Secure Shell (SSH)" + +#: plinth/modules/ssh/__init__.py:40 +msgid "" +"A Secure Shell server uses the secure shell protocol to accept connections " +"from remote computers. An authorized remote computer can perform " +"administration tasks, copy files or run other services using such " +"connections." +msgstr "" + #: plinth/modules/sso/__init__.py:30 msgid "Single Sign On" msgstr "Authentification unique" @@ -3446,14 +3750,20 @@ msgid "Login" msgstr "S'identifier" #: plinth/modules/syncthing/__init__.py:39 -msgid "" -"File Synchronization \n" -" (Syncthing)" +msgid "Syncthing" +msgstr "" + +#: plinth/modules/syncthing/__init__.py:41 +#, fuzzy +#| msgid "" +#| "File Synchronization \n" +#| " (Syncthing)" +msgid "File Synchronization" msgstr "" "Synchronisation de fichiers\n" "(Syncthing)" -#: plinth/modules/syncthing/__init__.py:42 +#: plinth/modules/syncthing/__init__.py:44 msgid "" "Syncthing is an application to synchronize files across multiple devices, e." "g. your desktop computer and mobile phone. Creation, modification, or " @@ -3466,7 +3776,7 @@ msgstr "" "seront automatiquement répliquées aux autres appareils qui utilisent " "Syncthing." -#: plinth/modules/syncthing/__init__.py:47 +#: plinth/modules/syncthing/__init__.py:49 #, python-brace-format msgid "" "Running Syncthing on {box_name} provides an extra synchronization point for " @@ -3484,7 +3794,7 @@ msgstr "" "groupe distinct de dossiers. L'interface Web sur {box_name} est seulement " "disponible pour les utilisateurs appartenant au groupe \"admin\"." -#: plinth/modules/syncthing/__init__.py:54 +#: plinth/modules/syncthing/__init__.py:56 msgid "" "When enabled, Syncthing's web interface will be available from /syncthing. Desktop and mobile clients are also disponibles.." #: plinth/modules/tahoe/__init__.py:42 -msgid "Distributed File Storage (Tahoe-LAFS)" +msgid "Tahoe-LAFS" +msgstr "" + +#: plinth/modules/tahoe/__init__.py:44 +#, fuzzy +#| msgid "Distributed File Storage (Tahoe-LAFS)" +msgid "Distributed File Storage" msgstr "Stockage de fichiers distribués (Tahoe-LAFS)" -#: plinth/modules/tahoe/__init__.py:73 +#: plinth/modules/tahoe/__init__.py:75 msgid "" "Tahoe-LAFS is a decentralized secure file storage system. It uses provider " "independent security to store files over a distributed network of storage " @@ -3510,7 +3826,7 @@ msgstr "" "sur un réseau distribué de nœuds de stockage. Même si certains des nœuds " "échouent, vos fichiers peuvent être retrouvés depuis les nœuds restants." -#: plinth/modules/tahoe/__init__.py:78 +#: plinth/modules/tahoe/__init__.py:80 #, python-brace-format msgid "" "This {box_name} hosts a storage node and an introducer by default. " @@ -3560,7 +3876,17 @@ msgstr "Introducteurs connectés" msgid "Remove" msgstr "Supprimer" -#: plinth/modules/tor/__init__.py:45 +#: plinth/modules/tor/__init__.py:42 +msgid "Tor" +msgstr "" + +#: plinth/modules/tor/__init__.py:44 +#, fuzzy +#| msgid "Tor Anonymity Network" +msgid "Anonymity Network" +msgstr "Réseau d'anonymat Tor" + +#: plinth/modules/tor/__init__.py:47 msgid "" "Tor is an anonymous communication system. You can learn more about it from " "the Tor Project website. For " @@ -3574,36 +3900,36 @@ msgstr "" "recommande l'utilisation du navigateur Tor." -#: plinth/modules/tor/__init__.py:70 plinth/modules/tor/__init__.py:112 +#: plinth/modules/tor/__init__.py:72 plinth/modules/tor/__init__.py:114 msgid "Tor Anonymity Network" msgstr "Réseau d'anonymat Tor" -#: plinth/modules/tor/__init__.py:76 plinth/modules/tor/__init__.py:120 +#: plinth/modules/tor/__init__.py:78 plinth/modules/tor/__init__.py:122 msgid "Tor Bridge Relay" msgstr "Relais pont Tor" -#: plinth/modules/tor/__init__.py:98 plinth/modules/tor/__init__.py:141 +#: plinth/modules/tor/__init__.py:100 plinth/modules/tor/__init__.py:143 msgid "Tor Hidden Service" msgstr "Service Caché Tor" -#: plinth/modules/tor/__init__.py:160 +#: plinth/modules/tor/__init__.py:162 msgid "Tor relay port available" msgstr "Port du relais Tor disponible" -#: plinth/modules/tor/__init__.py:168 +#: plinth/modules/tor/__init__.py:170 msgid "Obfs3 transport registered" msgstr "Transport Obfs3 enregistré" -#: plinth/modules/tor/__init__.py:174 +#: plinth/modules/tor/__init__.py:176 msgid "Obfs4 transport registered" msgstr "Transport Obfs4 enregistré" -#: plinth/modules/tor/__init__.py:211 +#: plinth/modules/tor/__init__.py:213 #, python-brace-format msgid "Access URL {url} on tcp{kind} via Tor" msgstr "Accédez à l'URL {url} sur tcp{kind} via Tor" -#: plinth/modules/tor/__init__.py:222 +#: plinth/modules/tor/__init__.py:224 #, python-brace-format msgid "Confirm Tor usage at {url} on tcp{kind}" msgstr "Confirmez l'utilisation de Tor pour {url} sur tcp{kind}" @@ -3772,14 +4098,18 @@ msgid "An error occurred during configuration." msgstr "Une erreur est survenue pendant la configuration." #: plinth/modules/transmission/__init__.py:38 -msgid "" -"BitTorrent \n" -" (Transmission)" -msgstr "" -"BitTorrent\n" -" (Transmission)" +#, fuzzy +#| msgid "Transmission BitTorrent" +msgid "Transmission" +msgstr "Transmission BitTorrent" -#: plinth/modules/transmission/__init__.py:41 +#: plinth/modules/transmission/__init__.py:40 +#, fuzzy +#| msgid "Deluge BitTorrent" +msgid "BitTorrent" +msgstr "Deluge BitTorrent" + +#: plinth/modules/transmission/__init__.py:43 msgid "" "BitTorrent is a peer-to-peer file sharing protocol. Transmission daemon " "handles Bitorrent file sharing. Note that BitTorrent is not anonymous." @@ -3788,7 +4118,7 @@ msgstr "" "Transmission permet le partage de fichiers Bitorrent. Noter que " "l'utilisation de Bitorrent n'est pas anonyme." -#: plinth/modules/transmission/__init__.py:44 +#: plinth/modules/transmission/__init__.py:46 msgid "" "Access the web interface at /transmission." msgstr "" @@ -3821,15 +4151,21 @@ msgstr "" "visible au format haché. Pour établir un nouveau mot de passe, entrez-le en " "texte brut." -#: plinth/modules/ttrss/__init__.py:37 -msgid "" -"News Feed Reader \n" -" (Tiny Tiny RSS)" +#: plinth/modules/ttrss/__init__.py:39 +msgid "Tiny Tiny RSS" +msgstr "" + +#: plinth/modules/ttrss/__init__.py:41 +#, fuzzy +#| msgid "" +#| "News Feed Reader \n" +#| " (Tiny Tiny RSS)" +msgid "News Feed Reader" msgstr "" "Lecteur de news\n" " (Tiny Tiny RSS)" -#: plinth/modules/ttrss/__init__.py:40 +#: plinth/modules/ttrss/__init__.py:44 msgid "" "Tiny Tiny RSS is a news feed (RSS/Atom) reader and aggregator, designed to " "allow reading news from any location, while feeling as close to a real " @@ -3840,10 +4176,15 @@ msgstr "" "restant au plus près du design d'une application utilisée sur le bureau d'un " "ordinateur." -#: plinth/modules/ttrss/__init__.py:44 +#: plinth/modules/ttrss/__init__.py:49 +#, fuzzy, python-brace-format +#| msgid "" +#| "When enabled, Tiny Tiny RSS will be available from /" +#| "tt-rss path on the web server." msgid "" "When enabled, Tiny Tiny RSS will be available from /tt-" -"rss path on the web server." +"rss path on the web server. It can be accessed by any user with a {box_name} login." msgstr "" "Lorsqu'activé, Tiny Tiny RSS est accessible depuis le chemin /tt-rss sur le serveur web." @@ -4164,15 +4505,11 @@ msgstr "Changement de support" msgid "configuration file: {file}" msgstr "fichier de configuration : {file}" -#: plinth/service.py:119 +#: plinth/service.py:118 msgid "Web Server over Secure Socket Layer" msgstr "Serveur web via SSL (Secure Socket Layer)" -#: plinth/service.py:121 -msgid "Secure Shell (SSH) Server" -msgstr "Serveur Secure Shell (SSH)" - -#: plinth/service.py:123 +#: plinth/service.py:120 #, python-brace-format msgid "{box_name} Web Interface (Plinth)" msgstr "Interface web de {box_name} (Plinth)" @@ -4224,11 +4561,11 @@ msgstr "" "traitement et réparation. Veuillez également attacher le journal d'état au rapport d'erreur." -#: plinth/templates/apps.html:25 +#: plinth/templates/apps.html:33 msgid "Services and Applications" msgstr "Services et Applications" -#: plinth/templates/apps.html:28 +#: plinth/templates/apps.html:36 #, python-format msgid "" "You can install and run various services and applications on your " @@ -4239,7 +4576,7 @@ msgstr "" "votre %(box_name)s. Cliquer sur l'un des liens à gauche pour lire une " "description de chaque application et choisir ou non de l'installer." -#: plinth/templates/apps.html:36 +#: plinth/templates/apps.html:44 msgid "" "This box can be your photo sharing site, your instant messaging site, your " "social networking site, your news site. Remember web portals? We can be " @@ -4414,18 +4751,18 @@ msgstr "Installation de %(package_names)s: %(status)s" msgid "%(percentage)s%% complete" msgstr "%(percentage)s%% effectué" -#: plinth/templates/system.html:25 +#: plinth/templates/system.html:33 msgid "System Configuration" msgstr "Configuration Système" -#: plinth/templates/system.html:28 +#: plinth/templates/system.html:36 #, python-format msgid "Here you can administrate the underlying system of your %(box_name)s." msgstr "" "Ici, vous pouvez administrer le système réglant le fonctionnement de " "%(box_name)s." -#: plinth/templates/system.html:34 +#: plinth/templates/system.html:42 #, python-format msgid "" "The options affect the %(box_name)s at its most general level, so be careful!" @@ -4433,6 +4770,64 @@ msgstr "" "Ces options affectent %(box_name)s à son niveau le plus général, faites " "attention !" +#~ msgid "Select the domain name to be used for diaspora*" +#~ msgstr "Sélectionnez le nom de domaine à utiliser pour diaspora" + +#~ msgid "" +#~ "Warning! Do not change the FreedomBox domain name after setting up " +#~ "diaspora*" +#~ msgstr "" +#~ "Attention! Ne changez pas le nom de domaine de FreedomBox après avoir " +#~ "configuré diaspora*" + +#~ msgid "" +#~ "Chat Server \n" +#~ " (ejabberd)" +#~ msgstr "" +#~ "Serveur de discussion\n" +#~ " (ejabberd)" + +#~ msgid "Wiki and Blog (ikiwiki)" +#~ msgstr "Wiki et blogue (ikiwiki)" + +#~ msgid "" +#~ "Gobby Server \n" +#~ " (infinoted)" +#~ msgstr "" +#~ "Serveur Gobby\n" +#~ "(infinoted)" + +#~ msgid "Select the domain name" +#~ msgstr "Sélectionnez le nom de domaine" + +#~ msgid "" +#~ "Web Proxy \n" +#~ " (Privoxy)" +#~ msgstr "" +#~ "Proxy Web\n" +#~ " (Privoxy)" + +#~ msgid "" +#~ "IRC Client \n" +#~ " (Quassel)" +#~ msgstr "" +#~ "Logiciel client IRC\n" +#~ " (Quassel)" + +#~ msgid "" +#~ "SIP Server \n" +#~ " (repro)" +#~ msgstr "" +#~ "Serveur SIP\n" +#~ " (repro)" + +#~ msgid "" +#~ "BitTorrent \n" +#~ " (Transmission)" +#~ msgstr "" +#~ "BitTorrent\n" +#~ " (Transmission)" + #~ msgid "Applications" #~ msgstr "Applications" @@ -4641,12 +5036,6 @@ msgstr "" #~ msgid "BitTorrent (Deluge)" #~ msgstr "BitTorrent (Deluge)" -#~ msgid "Deluge BitTorrent" -#~ msgstr "Deluge BitTorrent" - -#~ msgid "Enable Deluge" -#~ msgstr "Activer Deluge" - #~ msgid "System Diagnostics" #~ msgstr "Diagnostics Système" @@ -4668,10 +5057,6 @@ msgstr "" #~ msgid "Enable ikiwiki" #~ msgstr "Activer ikiwiki" -#~| msgid "Wiki & Blog" -#~ msgid "Wiki and Blog" -#~ msgstr "Wiki et Blogue" - #~ msgid "Generate PGP Key" #~ msgstr "Générer une clef PGP" @@ -4701,15 +5086,6 @@ msgstr "" #~ "Exposer SSH avec un mot de passe par défaut pour « fbx » est une TRÈS " #~ "MAUVAISE idée." -#~ msgid "Privoxy Web Proxy" -#~ msgstr "Proxy Web Privoxy" - -#~ msgid "Enable Privoxy" -#~ msgstr "Activer Privoxy" - -#~ msgid "Quassel IRC Client" -#~ msgstr "Logiciel IRC Quassel" - #~ msgid "Enable Quassel core service" #~ msgstr "Activer le cœur Quassel" @@ -4721,15 +5097,6 @@ msgstr "" #~ msgid "Enable repro service" #~ msgstr "Activer le service repro" -#~ msgid "reStore" -#~ msgstr "reStore" - -#~ msgid "Enable Roundcube" -#~ msgstr "Activer Roundcube" - -#~ msgid "Shaarli" -#~ msgstr "Shaarli" - #~ msgid "Enable Shaarli" #~ msgstr "Activer Shaarli" @@ -4739,9 +5106,6 @@ msgstr "" #~ msgid "Tor Control Panel" #~ msgstr "Panneau de configuration Tor" -#~ msgid "Transmission BitTorrent" -#~ msgstr "Transmission BitTorrent" - #~ msgid "Enable Transmission daemon" #~ msgstr "Activer Transmission BitTorrent" diff --git a/plinth/locale/gu/LC_MESSAGES/django.po b/plinth/locale/gu/LC_MESSAGES/django.po index 69bb006f2..f6765a1c4 100644 --- a/plinth/locale/gu/LC_MESSAGES/django.po +++ b/plinth/locale/gu/LC_MESSAGES/django.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2017-07-10 22:56-0400\n" +"POT-Creation-Date: 2017-09-24 11:24-0400\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -17,37 +17,37 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -#: plinth/action_utils.py:254 +#: plinth/action_utils.py:259 #, python-brace-format msgid "Listening on {kind} port {listen_address}:{port}" msgstr "" -#: plinth/action_utils.py:257 +#: plinth/action_utils.py:262 #, python-brace-format msgid "Listening on {kind} port {port}" msgstr "" -#: plinth/action_utils.py:352 +#: plinth/action_utils.py:357 #, python-brace-format msgid "Access URL {url} on tcp{kind}" msgstr "" -#: plinth/action_utils.py:356 +#: plinth/action_utils.py:361 #, python-brace-format msgid "Access URL {url}" msgstr "" -#: plinth/action_utils.py:386 +#: plinth/action_utils.py:391 #, python-brace-format msgid "Connect to {host}:{port}" msgstr "" -#: plinth/action_utils.py:389 +#: plinth/action_utils.py:394 #, python-brace-format msgid "Cannot connect to {host}:{port}" msgstr "" -#: plinth/context_processors.py:38 plinth/views.py:49 +#: plinth/context_processors.py:38 plinth/views.py:52 msgid "FreedomBox" msgstr "" @@ -56,7 +56,13 @@ msgid "Enable application" msgstr "" #: plinth/forms.py:45 -msgid "Select the domain name to be used for this application" +msgid "Select a domain name to be used with this application" +msgstr "" + +#: plinth/forms.py:47 +msgid "" +"Warning! The application may not work properly if domain name is changed " +"later." msgstr "" #: plinth/middleware.py:71 @@ -89,19 +95,21 @@ msgid "" msgstr "" #: plinth/modules/bind/__init__.py:34 -msgid "" -"Domain Name Server \n" -" (BIND)" +msgid "BIND" msgstr "" -#: plinth/modules/bind/__init__.py:43 +#: plinth/modules/bind/__init__.py:36 +msgid "Domain Name Server" +msgstr "" + +#: plinth/modules/bind/__init__.py:45 msgid "" "BIND is open source software that enables you to publish your Domain Name " "System (DNS) information on the Internet, and to resolve DNS queries for " "your users." msgstr "" -#: plinth/modules/bind/__init__.py:47 +#: plinth/modules/bind/__init__.py:49 msgid "" "BIND is by far the most widely used DNS software on the Internet, providing " "a robust and stable platform on top of which organizations can build " @@ -146,7 +154,7 @@ msgid "Enable forwarding to set forwarding DNS servers" msgstr "" #: plinth/modules/config/config.py:88 plinth/modules/config/config.py:125 -#: plinth/modules/dynamicdns/dynamicdns.py:140 +#: plinth/modules/dynamicdns/dynamicdns.py:148 msgid "Invalid domain name" msgstr "" @@ -169,7 +177,7 @@ msgstr "" #: plinth/modules/config/config.py:112 plinth/modules/config/config.py:169 #: plinth/modules/config/config.py:285 -#: plinth/modules/dynamicdns/dynamicdns.py:135 +#: plinth/modules/dynamicdns/dynamicdns.py:143 msgid "Domain Name" msgstr "" @@ -193,7 +201,7 @@ msgid "Language for this web administration interface" msgstr "" #: plinth/modules/config/config.py:151 -#: plinth/modules/dynamicdns/dynamicdns.py:37 +#: plinth/modules/dynamicdns/dynamicdns.py:45 #: plinth/modules/ikiwiki/views.py:37 #: plinth/modules/tahoe/templates/tahoe-pre-setup.html:39 msgid "Configure" @@ -273,16 +281,18 @@ msgid "Time zone set" msgstr "" #: plinth/modules/deluge/__init__.py:39 -msgid "" -"BitTorrent Web Client \n" -" (Deluge)" +msgid "Deluge" msgstr "" -#: plinth/modules/deluge/__init__.py:42 -msgid "Deluge is a BitTorrent client that features a Web UI." +#: plinth/modules/deluge/__init__.py:41 +msgid "BitTorrent Web Client" msgstr "" #: plinth/modules/deluge/__init__.py:44 +msgid "Deluge is a BitTorrent client that features a Web UI." +msgstr "" + +#: plinth/modules/deluge/__init__.py:46 msgid "" "When enabled, the Deluge web client will be available from /deluge path on the web server. The default password is 'deluge', but " @@ -343,19 +353,22 @@ msgstr "" msgid "Result" msgstr "" -#: plinth/modules/diaspora/__init__.py:61 +#: plinth/modules/diaspora/__init__.py:51 +msgid "diaspora*" +msgstr "" + +#: plinth/modules/diaspora/__init__.py:53 +msgid "Federated Social Network" +msgstr "" + +#: plinth/modules/diaspora/__init__.py:62 msgid "" "diaspora* is a decentralized social network where you can store and control " "your own data." msgstr "" -#: plinth/modules/diaspora/forms.py:30 -msgid "Select the domain name to be used for diaspora*" -msgstr "" - -#: plinth/modules/diaspora/forms.py:32 -msgid "" -"Warning! Do not change the FreedomBox domain name after setting up diaspora*" +#: plinth/modules/diaspora/forms.py:31 +msgid "Enable new user registrations" msgstr "" #: plinth/modules/diaspora/templates/diaspora-post-setup.html:32 @@ -382,7 +395,21 @@ msgstr "" msgid "Update setup" msgstr "" -#: plinth/modules/disks/__init__.py:33 plinth/modules/disks/views.py:39 +#: plinth/modules/diaspora/views.py:96 plinth/modules/ejabberd/views.py:60 +#: plinth/modules/openvpn/views.py:145 plinth/modules/tor/views.py:134 +#: plinth/views.py:112 +msgid "Setting unchanged" +msgstr "" + +#: plinth/modules/diaspora/views.py:100 +msgid "User registrations enabled" +msgstr "" + +#: plinth/modules/diaspora/views.py:104 +msgid "User registrations disabled" +msgstr "" + +#: plinth/modules/disks/__init__.py:33 plinth/modules/disks/views.py:45 msgid "Disks" msgstr "" @@ -424,7 +451,7 @@ msgstr "" #: plinth/modules/disks/templates/disks.html:90 #: plinth/modules/disks/templates/disks.html:102 #: plinth/modules/disks/templates/disks_expand.html:45 -#: plinth/modules/disks/views.py:56 +#: plinth/modules/disks/views.py:62 msgid "Expand Root Partition" msgstr "" @@ -442,45 +469,52 @@ msgid "" "root partition." msgstr "" -#: plinth/modules/disks/views.py:65 +#: plinth/modules/disks/views.py:71 #, python-brace-format msgid "Error expanding partition: {exception}" msgstr "" -#: plinth/modules/disks/views.py:68 +#: plinth/modules/disks/views.py:74 msgid "Partition expanded successfully." msgstr "" -#: plinth/modules/disks/views.py:77 +#: plinth/modules/disks/views.py:93 +#, python-format, python-brace-format +msgid "" +"Warning: Low space on system partition ({percent_used}% used, {free_space} " +"free)." +msgstr "" + +#: plinth/modules/disks/views.py:130 #, python-brace-format msgid "{disk_size:.1f} bytes" msgstr "" -#: plinth/modules/disks/views.py:81 +#: plinth/modules/disks/views.py:134 #, python-brace-format msgid "{disk_size:.1f} KiB" msgstr "" -#: plinth/modules/disks/views.py:85 +#: plinth/modules/disks/views.py:138 #, python-brace-format msgid "{disk_size:.1f} MiB" msgstr "" -#: plinth/modules/disks/views.py:89 +#: plinth/modules/disks/views.py:142 #, python-brace-format msgid "{disk_size:.1f} GiB" msgstr "" -#: plinth/modules/disks/views.py:92 +#: plinth/modules/disks/views.py:145 #, python-brace-format msgid "{disk_size:.1f} TiB" msgstr "" -#: plinth/modules/dynamicdns/__init__.py:33 +#: plinth/modules/dynamicdns/__init__.py:35 msgid "Dynamic DNS Client" msgstr "" -#: plinth/modules/dynamicdns/__init__.py:37 +#: plinth/modules/dynamicdns/__init__.py:39 #, python-brace-format msgid "" "If your Internet provider changes your IP address periodically (i.e. every " @@ -488,7 +522,7 @@ msgid "" "prevent others from finding services which are provided by this {box_name}." msgstr "" -#: plinth/modules/dynamicdns/__init__.py:43 +#: plinth/modules/dynamicdns/__init__.py:45 msgid "" "The solution is to assign a DNS name to your IP address and update the DNS " "name every time your IP is changed by your Internet provider. Dynamic DNS " @@ -499,11 +533,16 @@ msgid "" "IP address." msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:35 plinth/modules/help/help.py:40 +#: plinth/modules/dynamicdns/__init__.py:67 +#: plinth/modules/dynamicdns/dynamicdns.py:377 +msgid "Dynamic DNS Service" +msgstr "" + +#: plinth/modules/dynamicdns/dynamicdns.py:43 plinth/modules/help/help.py:40 msgid "About" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:39 +#: plinth/modules/dynamicdns/dynamicdns.py:47 #: plinth/modules/firewall/templates/firewall.html:47 #: plinth/modules/networks/templates/connection_show.html:261 #: plinth/modules/openvpn/templates/openvpn.html:67 @@ -512,46 +551,46 @@ msgstr "" msgid "Status" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:63 +#: plinth/modules/dynamicdns/dynamicdns.py:71 msgid "" "The Variables <User>, <Pass>, <Ip>, <Domain> may be " "used within the URL. For details see the update URL templates of the example " "providers." msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:67 +#: plinth/modules/dynamicdns/dynamicdns.py:75 msgid "" "Please choose an update protocol according to your provider. If your " "provider does not support the GnuDIP protocol or your provider is not listed " "you may use the update URL of your provider." msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:72 +#: plinth/modules/dynamicdns/dynamicdns.py:80 msgid "" "Please do not enter a URL here (like \"https://example.com/\") but only the " "hostname of the GnuDIP server (like \"example.com\")." msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:76 +#: plinth/modules/dynamicdns/dynamicdns.py:84 #, python-brace-format msgid "The public domain name you want to use to reach your {box_name}." msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:79 +#: plinth/modules/dynamicdns/dynamicdns.py:87 msgid "Use this option if your provider uses self signed certificates." msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:82 +#: plinth/modules/dynamicdns/dynamicdns.py:90 msgid "" "If this option is selected, your username and password will be used for HTTP " "basic authentication." msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:85 +#: plinth/modules/dynamicdns/dynamicdns.py:93 msgid "Leave this field empty if you want to keep your current password." msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:88 +#: plinth/modules/dynamicdns/dynamicdns.py:96 #, python-brace-format msgid "" "Optional Value. If your {box_name} is not connected directly to the Internet " @@ -560,82 +599,82 @@ msgid "" "(example: http://myip.datasystems24.de)." msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:96 +#: plinth/modules/dynamicdns/dynamicdns.py:104 msgid "The username that was used when the account was created." msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:107 +#: plinth/modules/dynamicdns/dynamicdns.py:115 msgid "Enable Dynamic DNS" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:110 +#: plinth/modules/dynamicdns/dynamicdns.py:118 msgid "Service Type" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:115 +#: plinth/modules/dynamicdns/dynamicdns.py:123 msgid "GnuDIP Server Address" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:120 +#: plinth/modules/dynamicdns/dynamicdns.py:128 msgid "Invalid server name" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:123 +#: plinth/modules/dynamicdns/dynamicdns.py:131 msgid "Update URL" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:127 +#: plinth/modules/dynamicdns/dynamicdns.py:135 msgid "Accept all SSL certificates" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:131 +#: plinth/modules/dynamicdns/dynamicdns.py:139 msgid "Use HTTP basic authentication" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:143 +#: plinth/modules/dynamicdns/dynamicdns.py:151 #: plinth/modules/networks/forms.py:228 plinth/modules/transmission/forms.py:37 msgid "Username" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:146 +#: plinth/modules/dynamicdns/dynamicdns.py:154 #: plinth/modules/networks/forms.py:229 plinth/modules/transmission/forms.py:41 msgid "Password" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:149 +#: plinth/modules/dynamicdns/dynamicdns.py:157 #: plinth/modules/networks/forms.py:231 msgid "Show password" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:153 +#: plinth/modules/dynamicdns/dynamicdns.py:161 msgid "URL to look up public IP" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:179 +#: plinth/modules/dynamicdns/dynamicdns.py:187 msgid "Please provide an update URL or a GnuDIP server address" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:184 +#: plinth/modules/dynamicdns/dynamicdns.py:192 msgid "Please provide a GnuDIP username" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:188 +#: plinth/modules/dynamicdns/dynamicdns.py:196 msgid "Please provide a GnuDIP domain name" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:193 +#: plinth/modules/dynamicdns/dynamicdns.py:201 msgid "Please provide a password" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:211 +#: plinth/modules/dynamicdns/dynamicdns.py:219 msgid "Configure Dynamic DNS" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:232 +#: plinth/modules/dynamicdns/dynamicdns.py:240 msgid "Dynamic DNS Status" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:364 +#: plinth/modules/dynamicdns/dynamicdns.py:381 #: plinth/modules/openvpn/views.py:143 plinth/modules/transmission/views.py:72 msgid "Configuration updated" msgstr "" @@ -690,23 +729,28 @@ msgstr "" msgid "Last update" msgstr "" -#: plinth/modules/ejabberd/__init__.py:42 -msgid "" -"Chat Server \n" -" (ejabberd)" +#: plinth/modules/ejabberd/__init__.py:45 +msgid "ejabberd" msgstr "" -#: plinth/modules/ejabberd/__init__.py:45 +#: plinth/modules/ejabberd/__init__.py:47 +#: plinth/modules/matrixsynapse/__init__.py:43 +msgid "Chat Server" +msgstr "" + +#: plinth/modules/ejabberd/__init__.py:50 msgid "" "XMPP is an open and standardized communication protocol. Here you can run " "and configure your XMPP server, called ejabberd." msgstr "" -#: plinth/modules/ejabberd/__init__.py:48 +#: plinth/modules/ejabberd/__init__.py:54 +#, python-brace-format msgid "" -"To actually communicate, you can use the web client or any other XMPP client." +"To actually communicate, you can use the web " +"client or any other XMPP client. When enabled, ejabberd can be accessed by " +"any user with a {box_name} login." msgstr "" #: plinth/modules/ejabberd/forms.py:33 @@ -744,16 +788,11 @@ msgstr "" msgid "Configuration" msgstr "" -#: plinth/modules/ejabberd/views.py:60 plinth/modules/openvpn/views.py:145 -#: plinth/modules/tor/views.py:134 plinth/views.py:103 -msgid "Setting unchanged" -msgstr "" - -#: plinth/modules/ejabberd/views.py:64 plinth/views.py:107 +#: plinth/modules/ejabberd/views.py:64 plinth/views.py:116 msgid "Application enabled" msgstr "" -#: plinth/modules/ejabberd/views.py:67 plinth/views.py:110 +#: plinth/modules/ejabberd/views.py:67 plinth/views.py:119 msgid "Application disabled" msgstr "" @@ -799,13 +838,13 @@ msgid "Service/Port" msgstr "" #: plinth/modules/firewall/templates/firewall.html:65 -#: plinth/modules/letsencrypt/templates/letsencrypt.html:88 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:94 #: plinth/modules/names/templates/names.html:49 msgid "Enabled" msgstr "" #: plinth/modules/firewall/templates/firewall.html:68 -#: plinth/modules/letsencrypt/templates/letsencrypt.html:90 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:96 #: plinth/modules/names/templates/names.html:51 #: plinth/modules/networks/forms.py:63 msgid "Disabled" @@ -1016,16 +1055,29 @@ msgid "" "before submitting the bug report." msgstr "" -#: plinth/modules/ikiwiki/__init__.py:39 -msgid "Wiki and Blog (ikiwiki)" +#: plinth/modules/ikiwiki/__init__.py:41 +msgid "ikiwiki" msgstr "" -#: plinth/modules/ikiwiki/__init__.py:42 +#: plinth/modules/ikiwiki/__init__.py:43 +msgid "Wiki and Blog" +msgstr "" + +#: plinth/modules/ikiwiki/__init__.py:46 msgid "" "ikiwiki is a simple wiki and blog application. It supports several " "lightweight markup languages, including Markdown, and common blogging " "functionality such as comments and RSS feeds. When enabled, the blogs and " -"wikis will be available from /ikiwiki." +"wikis will be available at /ikiwiki (once created)." +msgstr "" + +#: plinth/modules/ikiwiki/__init__.py:53 +#, python-brace-format +msgid "" +"Only {box_name} users in the admin group can create and " +"manage blogs and wikis, but any user in the wiki group can " +"edit existing ones. In the User " +"Configuration you can change these permissions or add new users." msgstr "" #: plinth/modules/ikiwiki/forms.py:34 @@ -1137,16 +1189,18 @@ msgid "Delete Wiki or Blog" msgstr "" #: plinth/modules/infinoted/__init__.py:43 -msgid "" -"Gobby Server \n" -" (infinoted)" +msgid "infinoted" msgstr "" -#: plinth/modules/infinoted/__init__.py:46 +#: plinth/modules/infinoted/__init__.py:45 +msgid "Gobby Server" +msgstr "" + +#: plinth/modules/infinoted/__init__.py:48 msgid "infinoted is a server for Gobby, a collaborative text editor." msgstr "" -#: plinth/modules/infinoted/__init__.py:49 +#: plinth/modules/infinoted/__init__.py:51 #, python-brace-format msgid "" "To use it, download Gobby, desktop " @@ -1155,29 +1209,34 @@ msgid "" msgstr "" #: plinth/modules/jsxc/__init__.py:36 -msgid "" -"Chat Client \n" -" (JSXC)" +msgid "JSXC" msgstr "" -#: plinth/modules/jsxc/__init__.py:40 +#: plinth/modules/jsxc/__init__.py:38 +msgid "Chat Client" +msgstr "" + +#: plinth/modules/jsxc/__init__.py:42 msgid "" "JSXC is a web client for XMPP. Typically it is used with an XMPP server " "running locally." msgstr "" -#: plinth/modules/jsxc/__init__.py:78 +#: plinth/modules/jsxc/__init__.py:80 msgid "" "Chat Client \n" " (jsxc)" msgstr "" -#: plinth/modules/letsencrypt/__init__.py:39 -#: plinth/modules/letsencrypt/__init__.py:64 -msgid "Certificates (Let's Encrypt)" +#: plinth/modules/letsencrypt/__init__.py:40 +msgid "Let's Encrypt" msgstr "" -#: plinth/modules/letsencrypt/__init__.py:43 +#: plinth/modules/letsencrypt/__init__.py:42 +msgid "Certificates" +msgstr "" + +#: plinth/modules/letsencrypt/__init__.py:46 #, python-brace-format msgid "" "A digital certificate allows users of a web service to verify the identity " @@ -1187,7 +1246,7 @@ msgid "" "Encrypt, a certificate authority (CA)." msgstr "" -#: plinth/modules/letsencrypt/__init__.py:50 +#: plinth/modules/letsencrypt/__init__.py:53 msgid "" "Let's Encrypt is a free, automated, and open certificate authority, run for " "the public's benefit by the Internet Security Research Group (ISRG). Please " @@ -1211,96 +1270,162 @@ msgstr "" msgid "Actions" msgstr "" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:56 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:62 #, python-format msgid "Valid, expires on %(expiry_date)s" msgstr "" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:63 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:69 msgid "Revoked" msgstr "" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:67 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:73 #, python-format msgid "Expired on %(expiry_date)s" msgstr "" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:71 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:77 msgid "Invalid test certificate" msgstr "" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:75 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:81 #, python-format msgid "Invalid (%(reason)s)" msgstr "" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:82 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:88 msgid "No certificate" msgstr "" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:99 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:105 msgid "Re-obtain" msgstr "" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:105 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:111 #: plinth/modules/networks/templates/connection_show.html:63 #: plinth/modules/snapshot/templates/snapshot.html:34 msgid "Delete" msgstr "" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:112 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:118 msgid "Revoke" msgstr "" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:120 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:126 msgid "Obtain" msgstr "" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:133 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:149 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:156 +msgid "Update config" +msgstr "" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:161 +#, python-format +msgid "" +"\n" +" Let Plinth manage certificate renewal of\n" +" %(current_domain)s (recommended)\n" +" " +msgstr "" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:166 +msgid "" +"\n" +" Let Plinth manage certificate renewal of the current domain " +"(recommended)\n" +" " +msgstr "" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:175 +#, python-format +msgid "" +"If %(box_name)s manages the certificate renewal for the current domain, it " +"will ensure that all apps that use the certificate can use it, as soon as it " +"gets renewed." +msgstr "" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:181 +msgid "" +"No certificate available for the current domain. First obtain a " +"certificate to enable management of its renewal." +msgstr "" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:186 +msgid "" +"No current domain is configured. First configure a domain to enable " +"management of its certificates." +msgstr "" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:195 msgid "" "No domains have been configured. Configure domains to be able to obtain " "certificates for them." msgstr "" -#: plinth/modules/letsencrypt/views.py:55 +#: plinth/modules/letsencrypt/views.py:57 #, python-brace-format msgid "" "Certificate successfully revoked for domain {domain}.This may take a few " "moments to take effect." msgstr "" -#: plinth/modules/letsencrypt/views.py:61 +#: plinth/modules/letsencrypt/views.py:63 #, python-brace-format msgid "Failed to revoke certificate for domain {domain}: {error}" msgstr "" -#: plinth/modules/letsencrypt/views.py:73 +#: plinth/modules/letsencrypt/views.py:75 #, python-brace-format msgid "Certificate successfully obtained for domain {domain}" msgstr "" -#: plinth/modules/letsencrypt/views.py:78 +#: plinth/modules/letsencrypt/views.py:81 #, python-brace-format msgid "Failed to obtain certificate for domain {domain}: {error}" msgstr "" #: plinth/modules/letsencrypt/views.py:90 +#: plinth/modules/letsencrypt/views.py:109 +#, python-brace-format +msgid "Certificate renewal management enabled for {domain}." +msgstr "" + +#: plinth/modules/letsencrypt/views.py:95 +#, python-brace-format +msgid "Failed to enable certificate renewal management for {domain}: {error}" +msgstr "" + +#: plinth/modules/letsencrypt/views.py:112 +#, python-brace-format +msgid "Certificate renewal management disabled for {domain}." +msgstr "" + +#: plinth/modules/letsencrypt/views.py:118 +#, python-brace-format +msgid "Failed to switch certificate renewal management for {domain}: {error}" +msgstr "" + +#: plinth/modules/letsencrypt/views.py:134 +#, python-brace-format +msgid "Failed to disable certificate renewal management for {domain}: {error}" +msgstr "" + +#: plinth/modules/letsencrypt/views.py:141 #, python-brace-format msgid "Certificate successfully deleted for domain {domain}" msgstr "" -#: plinth/modules/letsencrypt/views.py:95 +#: plinth/modules/letsencrypt/views.py:146 #, python-brace-format msgid "Failed to delete certificate for domain {domain}: {error}" msgstr "" #: plinth/modules/matrixsynapse/__init__.py:41 -msgid "" -"Chat Server \n" -" (Matrix Synapse)" +msgid "Matrix Synapse" msgstr "" -#: plinth/modules/matrixsynapse/__init__.py:44 +#: plinth/modules/matrixsynapse/__init__.py:46 msgid "" "Matrix is an new " "ecosystem for open, federated instant messaging and VoIP. Synapse is a " @@ -1310,17 +1435,13 @@ msgid "" "converse with users on all other Matrix servers via federation." msgstr "" -#: plinth/modules/matrixsynapse/__init__.py:52 +#: plinth/modules/matrixsynapse/__init__.py:54 msgid "" "To communicate, you can use the available clients for mobile, desktop and the web. Riot client is recommended." msgstr "" -#: plinth/modules/matrixsynapse/forms.py:31 -msgid "Select the domain name" -msgstr "" - #: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:34 msgid "" "Matrix service needs to be configured for a domain. Users on other Matrix " @@ -1352,12 +1473,14 @@ msgid "" msgstr "" #: plinth/modules/minetest/__init__.py:48 -msgid "" -"Block Sandbox \n" -" (Minetest)" +msgid "Minetest" msgstr "" -#: plinth/modules/minetest/__init__.py:52 +#: plinth/modules/minetest/__init__.py:50 +msgid "Block Sandbox" +msgstr "" + +#: plinth/modules/minetest/__init__.py:54 #, python-brace-format msgid "" "Minetest is a multiplayer infinite-world block sandbox. This module enables " @@ -1473,7 +1596,7 @@ msgstr "" #: plinth/modules/monkeysphere/templates/monkeysphere.html:87 #: plinth/modules/monkeysphere/templates/monkeysphere_details.html:60 -#: plinth/service.py:117 +#: plinth/service.py:116 msgid "Web Server" msgstr "" @@ -1570,18 +1693,20 @@ msgid "Error occurred while publishing key." msgstr "" #: plinth/modules/mumble/__init__.py:35 -msgid "" -"Voice Chat \n" -" (Mumble)" +msgid "Mumble" msgstr "" -#: plinth/modules/mumble/__init__.py:44 +#: plinth/modules/mumble/__init__.py:37 +msgid "Voice Chat" +msgstr "" + +#: plinth/modules/mumble/__init__.py:46 msgid "" "Mumble is an open source, low-latency, encrypted, high quality voice chat " "software." msgstr "" -#: plinth/modules/mumble/__init__.py:47 +#: plinth/modules/mumble/__init__.py:49 msgid "" "You can connect to your Mumble server on the regular Mumble port 64738. Clients to connect to Mumble from your " @@ -2069,7 +2194,7 @@ msgid "This connection is not active." msgstr "" #: plinth/modules/networks/templates/connection_show.html:266 -#: plinth/modules/security/__init__.py:32 plinth/modules/security/views.py:46 +#: plinth/modules/security/__init__.py:32 plinth/modules/security/views.py:48 msgid "Security" msgstr "" @@ -2165,12 +2290,14 @@ msgid "Inactive" msgstr "" #: plinth/modules/openvpn/__init__.py:42 -msgid "" -"Virtual Private Network \n" -" (OpenVPN)" +msgid "OpenVPN" msgstr "" -#: plinth/modules/openvpn/__init__.py:46 +#: plinth/modules/openvpn/__init__.py:44 +msgid "Virtual Private Network" +msgstr "" + +#: plinth/modules/openvpn/__init__.py:48 #, python-brace-format msgid "" "Virtual Private Network (VPN) is a technique for securely connecting two " @@ -2181,7 +2308,7 @@ msgid "" "security and anonymity." msgstr "" -#: plinth/modules/openvpn/__init__.py:84 +#: plinth/modules/openvpn/__init__.py:86 #, python-brace-format msgid "" "Download Profile" @@ -2256,10 +2383,14 @@ msgid "Setup failed." msgstr "" #: plinth/modules/pagekite/__init__.py:44 -msgid "Public Visibility (PageKite)" +msgid "PageKite" msgstr "" -#: plinth/modules/pagekite/__init__.py:48 +#: plinth/modules/pagekite/__init__.py:46 +msgid "Public Visibility" +msgstr "" + +#: plinth/modules/pagekite/__init__.py:50 #, python-brace-format msgid "" "PageKite is a system for exposing {box_name} services when you don't have a " @@ -2268,33 +2399,33 @@ msgid "" "following situations:" msgstr "" -#: plinth/modules/pagekite/__init__.py:55 +#: plinth/modules/pagekite/__init__.py:57 #, python-brace-format msgid "{box_name} is behind a restricted firewall." msgstr "" -#: plinth/modules/pagekite/__init__.py:59 +#: plinth/modules/pagekite/__init__.py:61 #, python-brace-format msgid "{box_name} is connected to a (wireless) router which you don't control." msgstr "" -#: plinth/modules/pagekite/__init__.py:62 +#: plinth/modules/pagekite/__init__.py:64 msgid "" "Your ISP does not provide you an external IP address and instead provides " "Internet connection through NAT." msgstr "" -#: plinth/modules/pagekite/__init__.py:65 +#: plinth/modules/pagekite/__init__.py:67 msgid "" "Your ISP does not provide you a static IP address and your IP address " "changes evertime you connect to Internet." msgstr "" -#: plinth/modules/pagekite/__init__.py:68 +#: plinth/modules/pagekite/__init__.py:70 msgid "Your ISP limits incoming connections." msgstr "" -#: plinth/modules/pagekite/__init__.py:71 +#: plinth/modules/pagekite/__init__.py:73 #, python-brace-format msgid "" "PageKite works around NAT, firewalls and IP-address limitations by using a " @@ -2570,8 +2701,8 @@ msgstr "" msgid "Pagekite setup finished. The HTTP and HTTPS services are activated now." msgstr "" -#: plinth/modules/power/__init__.py:28 plinth/modules/power/views.py:50 -#: plinth/modules/power/views.py:65 +#: plinth/modules/power/__init__.py:28 plinth/modules/power/views.py:51 +#: plinth/modules/power/views.py:67 msgid "Power" msgstr "" @@ -2580,10 +2711,16 @@ msgid "Restart or shut down the system." msgstr "" #: plinth/modules/power/templates/power.html:28 +msgid "" +"Currently an installation or upgrade is running. Consider waiting until it's " +"finished before shutting down or restarting." +msgstr "" + +#: plinth/modules/power/templates/power.html:37 msgid "Restart »" msgstr "" -#: plinth/modules/power/templates/power.html:31 +#: plinth/modules/power/templates/power.html:40 msgid "Shut Down »" msgstr "" @@ -2593,7 +2730,14 @@ msgid "" "interface for a few minutes until the system is restarted." msgstr "" -#: plinth/modules/power/templates/power_restart.html:42 +#: plinth/modules/power/templates/power_restart.html:38 +msgid "" +"Currently an installation or upgrade is running. Consider waiting until it's " +"finished before restarting." +msgstr "" + +#: plinth/modules/power/templates/power_restart.html:52 +#: plinth/modules/power/templates/power_restart.html:55 msgid "Restart Now" msgstr "" @@ -2603,24 +2747,33 @@ msgid "" "interface after shut down." msgstr "" -#: plinth/modules/power/templates/power_shutdown.html:41 +#: plinth/modules/power/templates/power_shutdown.html:37 +msgid "" +"Currently an installation or upgrade is running. Consider waiting until it's " +"finished before shutting down." +msgstr "" + +#: plinth/modules/power/templates/power_shutdown.html:51 +#: plinth/modules/power/templates/power_shutdown.html:54 msgid "Shut Down Now" msgstr "" #: plinth/modules/privoxy/__init__.py:43 -msgid "" -"Web Proxy \n" -" (Privoxy)" +msgid "Privoxy" msgstr "" -#: plinth/modules/privoxy/__init__.py:46 +#: plinth/modules/privoxy/__init__.py:45 +msgid "Web Proxy" +msgstr "" + +#: plinth/modules/privoxy/__init__.py:48 msgid "" "Privoxy is a non-caching web proxy with advanced filtering capabilities for " "enhancing privacy, modifying web page data and HTTP headers, controlling " "access, and removing ads and other obnoxious Internet junk. " msgstr "" -#: plinth/modules/privoxy/__init__.py:52 +#: plinth/modules/privoxy/__init__.py:54 #, python-brace-format msgid "" "You can use Privoxy by modifying your browser proxy settings to your " @@ -2630,18 +2783,20 @@ msgid "" "\">http://p.p." msgstr "" -#: plinth/modules/privoxy/__init__.py:144 +#: plinth/modules/privoxy/__init__.py:147 #, python-brace-format msgid "Access {url} with proxy {proxy} on tcp{kind}" msgstr "" #: plinth/modules/quassel/__init__.py:42 -msgid "" -"IRC Client \n" -" (Quassel)" +msgid "Quassel" msgstr "" -#: plinth/modules/quassel/__init__.py:46 +#: plinth/modules/quassel/__init__.py:44 +msgid "IRC Client" +msgstr "" + +#: plinth/modules/quassel/__init__.py:48 #, python-brace-format msgid "" "Quassel is an IRC application that is split into two parts, a \"core\" and a " @@ -2652,7 +2807,7 @@ msgid "" "connect and disconnect from it." msgstr "" -#: plinth/modules/quassel/__init__.py:54 +#: plinth/modules/quassel/__init__.py:56 msgid "" "You can connect to your Quassel core on the default Quassel port 4242. " "Clients to connect to Quassel from your supported " -"client application is needed. Radicale can be accessed by any user with " -"a {box_name} login." +"radicale.org/clients/\">supported client application is needed. Radicale " +"can be accessed by any user with a {box_name} login." msgstr "" #: plinth/modules/radicale/forms.py:28 @@ -2695,12 +2851,14 @@ msgid "Access rights configuration updated" msgstr "" #: plinth/modules/repro/__init__.py:38 -msgid "" -"SIP Server \n" -" (repro)" +msgid "repro" msgstr "" -#: plinth/modules/repro/__init__.py:41 +#: plinth/modules/repro/__init__.py:40 +msgid "SIP Server" +msgstr "" + +#: plinth/modules/repro/__init__.py:43 msgid "" "repro provides various SIP services that a SIP softphone can utilize to " "provide audio and video calls as well as presence and instant messaging. " @@ -2709,7 +2867,7 @@ msgid "" "communications to other servers on the Internet similar to email." msgstr "" -#: plinth/modules/repro/__init__.py:48 +#: plinth/modules/repro/__init__.py:50 msgid "" "To make SIP calls, a client application is needed. Available clients include " "Jitsi (for computers) and (for Android phones)." msgstr "" -#: plinth/modules/repro/__init__.py:53 +#: plinth/modules/repro/__init__.py:55 msgid "" "Note: Before using repro, domains and users will need to " "be configured using the web-based " @@ -2727,12 +2885,14 @@ msgid "" msgstr "" #: plinth/modules/restore/__init__.py:36 -msgid "" -"Unhosted Storage \n" -" (reStore)" +msgid "reStore" msgstr "" -#: plinth/modules/restore/__init__.py:40 +#: plinth/modules/restore/__init__.py:38 +msgid "Unhosted Storage" +msgstr "" + +#: plinth/modules/restore/__init__.py:42 #, python-brace-format msgid "" "reStore is a server for unhosted web " @@ -2742,19 +2902,21 @@ msgid "" "becomes your unhosted storage server." msgstr "" -#: plinth/modules/restore/__init__.py:47 +#: plinth/modules/restore/__init__.py:49 msgid "" "You can create and edit accounts in the reStore web-" "interface." msgstr "" #: plinth/modules/roundcube/__init__.py:35 -msgid "" -"Email Client \n" -" (Roundcube)" +msgid "Roundcube" msgstr "" -#: plinth/modules/roundcube/__init__.py:38 +#: plinth/modules/roundcube/__init__.py:37 +msgid "Email Client" +msgstr "" + +#: plinth/modules/roundcube/__init__.py:40 msgid "" "Roundcube webmail is a browser-based multilingual IMAP client with an " "application-like user interface. It provides full functionality you expect " @@ -2762,7 +2924,7 @@ msgid "" "manipulation, message searching and spell checking." msgstr "" -#: plinth/modules/roundcube/__init__.py:44 +#: plinth/modules/roundcube/__init__.py:46 msgid "" "You can access Roundcube from /roundcube. Provide " "the username and password of the email account you wish to access followed " @@ -2771,7 +2933,7 @@ msgid "" "server field like imaps://imap.example.com." msgstr "" -#: plinth/modules/roundcube/__init__.py:51 +#: plinth/modules/roundcube/__init__.py:53 msgid "" "For Gmail, username will be your Gmail address, password will be your Google " "account password and server will be imaps://imap.gmail.com. " @@ -2792,26 +2954,39 @@ msgid "" "services without further authorization." msgstr "" -#: plinth/modules/security/views.py:63 +#: plinth/modules/security/forms.py:35 +msgid "Fail2ban (recommended)" +msgstr "" + +#: plinth/modules/security/forms.py:36 +msgid "" +"When this option is enabled, fail2ban will limit brute force break-in " +"attempts to the SSH server and other password protected internet-services " +"which are enabled." +msgstr "" + +#: plinth/modules/security/views.py:66 #, python-brace-format msgid "Error setting restricted access: {exception}" msgstr "" -#: plinth/modules/security/views.py:66 +#: plinth/modules/security/views.py:69 msgid "Updated security configuration" msgstr "" #: plinth/modules/shaarli/__init__.py:35 -msgid "" -"Bookmarks \n" -" (Shaarli)" +msgid "Shaarli" msgstr "" -#: plinth/modules/shaarli/__init__.py:38 -msgid "Shaarli allows you to save and share bookmarks." +#: plinth/modules/shaarli/__init__.py:37 +msgid "Bookmarks" msgstr "" #: plinth/modules/shaarli/__init__.py:40 +msgid "Shaarli allows you to save and share bookmarks." +msgstr "" + +#: plinth/modules/shaarli/__init__.py:42 msgid "" "When enabled, Shaarli will be available from /shaarli path on the web server. Note that Shaarli only supports a single user " @@ -2924,6 +3099,18 @@ msgstr "" msgid "Rollback to Snapshot" msgstr "" +#: plinth/modules/ssh/__init__.py:37 +msgid "Secure Shell (SSH) Server" +msgstr "" + +#: plinth/modules/ssh/__init__.py:40 +msgid "" +"A Secure Shell server uses the secure shell protocol to accept connections " +"from remote computers. An authorized remote computer can perform " +"administration tasks, copy files or run other services using such " +"connections." +msgstr "" + #: plinth/modules/sso/__init__.py:30 msgid "Single Sign On" msgstr "" @@ -2933,12 +3120,14 @@ msgid "Login" msgstr "" #: plinth/modules/syncthing/__init__.py:39 -msgid "" -"File Synchronization \n" -" (Syncthing)" +msgid "Syncthing" msgstr "" -#: plinth/modules/syncthing/__init__.py:42 +#: plinth/modules/syncthing/__init__.py:41 +msgid "File Synchronization" +msgstr "" + +#: plinth/modules/syncthing/__init__.py:44 msgid "" "Syncthing is an application to synchronize files across multiple devices, e." "g. your desktop computer and mobile phone. Creation, modification, or " @@ -2946,7 +3135,7 @@ msgid "" "other devices that also run Syncthing." msgstr "" -#: plinth/modules/syncthing/__init__.py:47 +#: plinth/modules/syncthing/__init__.py:49 #, python-brace-format msgid "" "Running Syncthing on {box_name} provides an extra synchronization point for " @@ -2957,7 +3146,7 @@ msgid "" "{box_name} is only available for users belonging to the \"admin\" group." msgstr "" -#: plinth/modules/syncthing/__init__.py:54 +#: plinth/modules/syncthing/__init__.py:56 msgid "" "When enabled, Syncthing's web interface will be available from /syncthing. Desktop and mobile clients are also Tor Project website. For " @@ -3028,36 +3229,36 @@ msgid "" "\">Tor Browser." msgstr "" -#: plinth/modules/tor/__init__.py:70 plinth/modules/tor/__init__.py:112 +#: plinth/modules/tor/__init__.py:72 plinth/modules/tor/__init__.py:114 msgid "Tor Anonymity Network" msgstr "" -#: plinth/modules/tor/__init__.py:76 plinth/modules/tor/__init__.py:120 +#: plinth/modules/tor/__init__.py:78 plinth/modules/tor/__init__.py:122 msgid "Tor Bridge Relay" msgstr "" -#: plinth/modules/tor/__init__.py:98 plinth/modules/tor/__init__.py:141 +#: plinth/modules/tor/__init__.py:100 plinth/modules/tor/__init__.py:143 msgid "Tor Hidden Service" msgstr "" -#: plinth/modules/tor/__init__.py:160 +#: plinth/modules/tor/__init__.py:162 msgid "Tor relay port available" msgstr "" -#: plinth/modules/tor/__init__.py:168 +#: plinth/modules/tor/__init__.py:170 msgid "Obfs3 transport registered" msgstr "" -#: plinth/modules/tor/__init__.py:174 +#: plinth/modules/tor/__init__.py:176 msgid "Obfs4 transport registered" msgstr "" -#: plinth/modules/tor/__init__.py:211 +#: plinth/modules/tor/__init__.py:213 #, python-brace-format msgid "Access URL {url} on tcp{kind} via Tor" msgstr "" -#: plinth/modules/tor/__init__.py:222 +#: plinth/modules/tor/__init__.py:224 #, python-brace-format msgid "Confirm Tor usage at {url} on tcp{kind}" msgstr "" @@ -3201,18 +3402,20 @@ msgid "An error occurred during configuration." msgstr "" #: plinth/modules/transmission/__init__.py:38 -msgid "" -"BitTorrent \n" -" (Transmission)" +msgid "Transmission" msgstr "" -#: plinth/modules/transmission/__init__.py:41 +#: plinth/modules/transmission/__init__.py:40 +msgid "BitTorrent" +msgstr "" + +#: plinth/modules/transmission/__init__.py:43 msgid "" "BitTorrent is a peer-to-peer file sharing protocol. Transmission daemon " "handles Bitorrent file sharing. Note that BitTorrent is not anonymous." msgstr "" -#: plinth/modules/transmission/__init__.py:44 +#: plinth/modules/transmission/__init__.py:46 msgid "" "Access the web interface at /transmission." msgstr "" @@ -3238,23 +3441,27 @@ msgid "" "hashed format. To set a new password, enter the password in plain text." msgstr "" -#: plinth/modules/ttrss/__init__.py:37 -msgid "" -"News Feed Reader \n" -" (Tiny Tiny RSS)" +#: plinth/modules/ttrss/__init__.py:39 +msgid "Tiny Tiny RSS" msgstr "" -#: plinth/modules/ttrss/__init__.py:40 +#: plinth/modules/ttrss/__init__.py:41 +msgid "News Feed Reader" +msgstr "" + +#: plinth/modules/ttrss/__init__.py:44 msgid "" "Tiny Tiny RSS is a news feed (RSS/Atom) reader and aggregator, designed to " "allow reading news from any location, while feeling as close to a real " "desktop application as possible." msgstr "" -#: plinth/modules/ttrss/__init__.py:44 +#: plinth/modules/ttrss/__init__.py:49 +#, python-brace-format msgid "" "When enabled, Tiny Tiny RSS will be available from /tt-" -"rss path on the web server." +"rss path on the web server. It can be accessed by any user with a {box_name} login." msgstr "" #: plinth/modules/upgrades/__init__.py:35 @@ -3546,15 +3753,11 @@ msgstr "" msgid "configuration file: {file}" msgstr "" -#: plinth/service.py:119 +#: plinth/service.py:118 msgid "Web Server over Secure Socket Layer" msgstr "" -#: plinth/service.py:121 -msgid "Secure Shell (SSH) Server" -msgstr "" - -#: plinth/service.py:123 +#: plinth/service.py:120 #, python-brace-format msgid "{box_name} Web Interface (Plinth)" msgstr "" @@ -3597,11 +3800,11 @@ msgid "" "\"%(status_log_url)s\">status log to the bug report." msgstr "" -#: plinth/templates/apps.html:25 +#: plinth/templates/apps.html:33 msgid "Services and Applications" msgstr "" -#: plinth/templates/apps.html:28 +#: plinth/templates/apps.html:36 #, python-format msgid "" "You can install and run various services and applications on your " @@ -3609,7 +3812,7 @@ msgid "" "of the application and choose to install it." msgstr "" -#: plinth/templates/apps.html:36 +#: plinth/templates/apps.html:44 msgid "" "This box can be your photo sharing site, your instant messaging site, your " "social networking site, your news site. Remember web portals? We can be " @@ -3769,16 +3972,16 @@ msgstr "" msgid "%(percentage)s%% complete" msgstr "" -#: plinth/templates/system.html:25 +#: plinth/templates/system.html:33 msgid "System Configuration" msgstr "" -#: plinth/templates/system.html:28 +#: plinth/templates/system.html:36 #, python-format msgid "Here you can administrate the underlying system of your %(box_name)s." msgstr "" -#: plinth/templates/system.html:34 +#: plinth/templates/system.html:42 #, python-format msgid "" "The options affect the %(box_name)s at its most general level, so be careful!" diff --git a/plinth/locale/hi/LC_MESSAGES/django.po b/plinth/locale/hi/LC_MESSAGES/django.po index da0caf3c0..651d91590 100644 --- a/plinth/locale/hi/LC_MESSAGES/django.po +++ b/plinth/locale/hi/LC_MESSAGES/django.po @@ -7,11 +7,11 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2017-07-10 22:56-0400\n" +"POT-Creation-Date: 2017-09-24 11:24-0400\n" "PO-Revision-Date: 2017-08-18 07:46+0000\n" "Last-Translator: Prachi Srivastava \n" -"Language-Team: Hindi " -"\n" +"Language-Team: Hindi \n" "Language: hi\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -19,37 +19,37 @@ msgstr "" "Plural-Forms: nplurals=2; plural=n != 1;\n" "X-Generator: Weblate 2.17-dev\n" -#: plinth/action_utils.py:254 +#: plinth/action_utils.py:259 #, python-brace-format msgid "Listening on {kind} port {listen_address}:{port}" msgstr "" -#: plinth/action_utils.py:257 +#: plinth/action_utils.py:262 #, python-brace-format msgid "Listening on {kind} port {port}" msgstr "" -#: plinth/action_utils.py:352 +#: plinth/action_utils.py:357 #, python-brace-format msgid "Access URL {url} on tcp{kind}" msgstr "" -#: plinth/action_utils.py:356 +#: plinth/action_utils.py:361 #, python-brace-format msgid "Access URL {url}" msgstr "" -#: plinth/action_utils.py:386 +#: plinth/action_utils.py:391 #, fuzzy, python-brace-format msgid "Connect to {host}:{port}" msgstr "{host}:{port} से जुड़े" -#: plinth/action_utils.py:389 +#: plinth/action_utils.py:394 #, python-brace-format msgid "Cannot connect to {host}:{port}" msgstr "" -#: plinth/context_processors.py:38 plinth/views.py:49 +#: plinth/context_processors.py:38 plinth/views.py:52 msgid "FreedomBox" msgstr "" @@ -58,7 +58,13 @@ msgid "Enable application" msgstr "" #: plinth/forms.py:45 -msgid "Select the domain name to be used for this application" +msgid "Select a domain name to be used with this application" +msgstr "" + +#: plinth/forms.py:47 +msgid "" +"Warning! The application may not work properly if domain name is changed " +"later." msgstr "" #: plinth/middleware.py:71 @@ -91,19 +97,22 @@ msgid "" msgstr "" #: plinth/modules/bind/__init__.py:34 -msgid "" -"Domain Name Server \n" -" (BIND)" +msgid "BIND" msgstr "" -#: plinth/modules/bind/__init__.py:43 +#: plinth/modules/bind/__init__.py:36 +#, fuzzy +msgid "Domain Name Server" +msgstr "डोमेन नाम" + +#: plinth/modules/bind/__init__.py:45 msgid "" "BIND is open source software that enables you to publish your Domain Name " "System (DNS) information on the Internet, and to resolve DNS queries for " "your users." msgstr "" -#: plinth/modules/bind/__init__.py:47 +#: plinth/modules/bind/__init__.py:49 msgid "" "BIND is by far the most widely used DNS software on the Internet, providing " "a robust and stable platform on top of which organizations can build " @@ -149,7 +158,7 @@ msgid "Enable forwarding to set forwarding DNS servers" msgstr "" #: plinth/modules/config/config.py:88 plinth/modules/config/config.py:125 -#: plinth/modules/dynamicdns/dynamicdns.py:140 +#: plinth/modules/dynamicdns/dynamicdns.py:148 #, fuzzy msgid "Invalid domain name" msgstr "डोमेन नाम अमान्य है।" @@ -166,10 +175,9 @@ msgid "" "and have as interior characters only alphabets, digits and hyphens. Total " "length must be 63 characters or less." msgstr "" -"होस्ट नाम स्थानीय नाम है जिसके द्वारा स्थानीय नेट्वर्क के अन्य यंत्र आपके " -"{box_name} से सम्पर्क करेंगे । होस्ट नाम के शुरुआत एवं अंत में केवल आल्फ़बेट " -"अथवा अंक का प्रयोग करे, बीच के शब्दों के लिए आल्फ़बेट, अंक अथवा समास चिह्न का" -" प्रयोग करे। कुल अंक सीमा ६३ कम होनी चाहिए।" +"होस्ट नाम स्थानीय नाम है जिसके द्वारा स्थानीय नेट्वर्क के अन्य यंत्र आपके {box_name} से " +"सम्पर्क करेंगे । होस्ट नाम के शुरुआत एवं अंत में केवल आल्फ़बेट अथवा अंक का प्रयोग करे, बीच के " +"शब्दों के लिए आल्फ़बेट, अंक अथवा समास चिह्न का प्रयोग करे। कुल अंक सीमा ६३ कम होनी चाहिए।" #: plinth/modules/config/config.py:109 #, fuzzy @@ -178,7 +186,7 @@ msgstr "अमान्य होस्ट नाम" #: plinth/modules/config/config.py:112 plinth/modules/config/config.py:169 #: plinth/modules/config/config.py:285 -#: plinth/modules/dynamicdns/dynamicdns.py:135 +#: plinth/modules/dynamicdns/dynamicdns.py:143 #, fuzzy msgid "Domain Name" msgstr "डोमेन नाम" @@ -203,7 +211,7 @@ msgid "Language for this web administration interface" msgstr "" #: plinth/modules/config/config.py:151 -#: plinth/modules/dynamicdns/dynamicdns.py:37 +#: plinth/modules/dynamicdns/dynamicdns.py:45 #: plinth/modules/ikiwiki/views.py:37 #: plinth/modules/tahoe/templates/tahoe-pre-setup.html:39 msgid "Configure" @@ -285,16 +293,18 @@ msgid "Time zone set" msgstr "" #: plinth/modules/deluge/__init__.py:39 -msgid "" -"BitTorrent Web Client \n" -" (Deluge)" +msgid "Deluge" msgstr "" -#: plinth/modules/deluge/__init__.py:42 -msgid "Deluge is a BitTorrent client that features a Web UI." +#: plinth/modules/deluge/__init__.py:41 +msgid "BitTorrent Web Client" msgstr "" #: plinth/modules/deluge/__init__.py:44 +msgid "Deluge is a BitTorrent client that features a Web UI." +msgstr "" + +#: plinth/modules/deluge/__init__.py:46 msgid "" "When enabled, the Deluge web client will be available from /deluge path on the web server. The default password is 'deluge', but " @@ -358,19 +368,22 @@ msgstr "परीक्षण" msgid "Result" msgstr "परिणाम" -#: plinth/modules/diaspora/__init__.py:61 +#: plinth/modules/diaspora/__init__.py:51 +msgid "diaspora*" +msgstr "" + +#: plinth/modules/diaspora/__init__.py:53 +msgid "Federated Social Network" +msgstr "" + +#: plinth/modules/diaspora/__init__.py:62 msgid "" "diaspora* is a decentralized social network where you can store and control " "your own data." msgstr "" -#: plinth/modules/diaspora/forms.py:30 -msgid "Select the domain name to be used for diaspora*" -msgstr "" - -#: plinth/modules/diaspora/forms.py:32 -msgid "" -"Warning! Do not change the FreedomBox domain name after setting up diaspora*" +#: plinth/modules/diaspora/forms.py:31 +msgid "Enable new user registrations" msgstr "" #: plinth/modules/diaspora/templates/diaspora-post-setup.html:32 @@ -397,7 +410,21 @@ msgstr "" msgid "Update setup" msgstr "" -#: plinth/modules/disks/__init__.py:33 plinth/modules/disks/views.py:39 +#: plinth/modules/diaspora/views.py:96 plinth/modules/ejabberd/views.py:60 +#: plinth/modules/openvpn/views.py:145 plinth/modules/tor/views.py:134 +#: plinth/views.py:112 +msgid "Setting unchanged" +msgstr "" + +#: plinth/modules/diaspora/views.py:100 +msgid "User registrations enabled" +msgstr "" + +#: plinth/modules/diaspora/views.py:104 +msgid "User registrations disabled" +msgstr "" + +#: plinth/modules/disks/__init__.py:33 plinth/modules/disks/views.py:45 msgid "Disks" msgstr "" @@ -439,7 +466,7 @@ msgstr "" #: plinth/modules/disks/templates/disks.html:90 #: plinth/modules/disks/templates/disks.html:102 #: plinth/modules/disks/templates/disks_expand.html:45 -#: plinth/modules/disks/views.py:56 +#: plinth/modules/disks/views.py:62 msgid "Expand Root Partition" msgstr "" @@ -457,45 +484,52 @@ msgid "" "root partition." msgstr "" -#: plinth/modules/disks/views.py:65 +#: plinth/modules/disks/views.py:71 #, python-brace-format msgid "Error expanding partition: {exception}" msgstr "" -#: plinth/modules/disks/views.py:68 +#: plinth/modules/disks/views.py:74 msgid "Partition expanded successfully." msgstr "" -#: plinth/modules/disks/views.py:77 +#: plinth/modules/disks/views.py:93 +#, python-format, python-brace-format +msgid "" +"Warning: Low space on system partition ({percent_used}% used, {free_space} " +"free)." +msgstr "" + +#: plinth/modules/disks/views.py:130 #, python-brace-format msgid "{disk_size:.1f} bytes" msgstr "" -#: plinth/modules/disks/views.py:81 +#: plinth/modules/disks/views.py:134 #, python-brace-format msgid "{disk_size:.1f} KiB" msgstr "" -#: plinth/modules/disks/views.py:85 +#: plinth/modules/disks/views.py:138 #, python-brace-format msgid "{disk_size:.1f} MiB" msgstr "" -#: plinth/modules/disks/views.py:89 +#: plinth/modules/disks/views.py:142 #, python-brace-format msgid "{disk_size:.1f} GiB" msgstr "" -#: plinth/modules/disks/views.py:92 +#: plinth/modules/disks/views.py:145 #, python-brace-format msgid "{disk_size:.1f} TiB" msgstr "" -#: plinth/modules/dynamicdns/__init__.py:33 +#: plinth/modules/dynamicdns/__init__.py:35 msgid "Dynamic DNS Client" msgstr "" -#: plinth/modules/dynamicdns/__init__.py:37 +#: plinth/modules/dynamicdns/__init__.py:39 #, python-brace-format msgid "" "If your Internet provider changes your IP address periodically (i.e. every " @@ -503,7 +537,7 @@ msgid "" "prevent others from finding services which are provided by this {box_name}." msgstr "" -#: plinth/modules/dynamicdns/__init__.py:43 +#: plinth/modules/dynamicdns/__init__.py:45 msgid "" "The solution is to assign a DNS name to your IP address and update the DNS " "name every time your IP is changed by your Internet provider. Dynamic DNS " @@ -514,11 +548,16 @@ msgid "" "IP address." msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:35 plinth/modules/help/help.py:40 +#: plinth/modules/dynamicdns/__init__.py:67 +#: plinth/modules/dynamicdns/dynamicdns.py:377 +msgid "Dynamic DNS Service" +msgstr "" + +#: plinth/modules/dynamicdns/dynamicdns.py:43 plinth/modules/help/help.py:40 msgid "About" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:39 +#: plinth/modules/dynamicdns/dynamicdns.py:47 #: plinth/modules/firewall/templates/firewall.html:47 #: plinth/modules/networks/templates/connection_show.html:261 #: plinth/modules/openvpn/templates/openvpn.html:67 @@ -527,46 +566,46 @@ msgstr "" msgid "Status" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:63 +#: plinth/modules/dynamicdns/dynamicdns.py:71 msgid "" "The Variables <User>, <Pass>, <Ip>, <Domain> may be " "used within the URL. For details see the update URL templates of the example " "providers." msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:67 +#: plinth/modules/dynamicdns/dynamicdns.py:75 msgid "" "Please choose an update protocol according to your provider. If your " "provider does not support the GnuDIP protocol or your provider is not listed " "you may use the update URL of your provider." msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:72 +#: plinth/modules/dynamicdns/dynamicdns.py:80 msgid "" "Please do not enter a URL here (like \"https://example.com/\") but only the " "hostname of the GnuDIP server (like \"example.com\")." msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:76 +#: plinth/modules/dynamicdns/dynamicdns.py:84 #, python-brace-format msgid "The public domain name you want to use to reach your {box_name}." msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:79 +#: plinth/modules/dynamicdns/dynamicdns.py:87 msgid "Use this option if your provider uses self signed certificates." msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:82 +#: plinth/modules/dynamicdns/dynamicdns.py:90 msgid "" "If this option is selected, your username and password will be used for HTTP " "basic authentication." msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:85 +#: plinth/modules/dynamicdns/dynamicdns.py:93 msgid "Leave this field empty if you want to keep your current password." msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:88 +#: plinth/modules/dynamicdns/dynamicdns.py:96 #, python-brace-format msgid "" "Optional Value. If your {box_name} is not connected directly to the Internet " @@ -575,82 +614,82 @@ msgid "" "(example: http://myip.datasystems24.de)." msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:96 +#: plinth/modules/dynamicdns/dynamicdns.py:104 msgid "The username that was used when the account was created." msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:107 +#: plinth/modules/dynamicdns/dynamicdns.py:115 msgid "Enable Dynamic DNS" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:110 +#: plinth/modules/dynamicdns/dynamicdns.py:118 msgid "Service Type" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:115 +#: plinth/modules/dynamicdns/dynamicdns.py:123 msgid "GnuDIP Server Address" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:120 +#: plinth/modules/dynamicdns/dynamicdns.py:128 msgid "Invalid server name" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:123 +#: plinth/modules/dynamicdns/dynamicdns.py:131 msgid "Update URL" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:127 +#: plinth/modules/dynamicdns/dynamicdns.py:135 msgid "Accept all SSL certificates" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:131 +#: plinth/modules/dynamicdns/dynamicdns.py:139 msgid "Use HTTP basic authentication" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:143 +#: plinth/modules/dynamicdns/dynamicdns.py:151 #: plinth/modules/networks/forms.py:228 plinth/modules/transmission/forms.py:37 msgid "Username" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:146 +#: plinth/modules/dynamicdns/dynamicdns.py:154 #: plinth/modules/networks/forms.py:229 plinth/modules/transmission/forms.py:41 msgid "Password" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:149 +#: plinth/modules/dynamicdns/dynamicdns.py:157 #: plinth/modules/networks/forms.py:231 msgid "Show password" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:153 +#: plinth/modules/dynamicdns/dynamicdns.py:161 msgid "URL to look up public IP" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:179 +#: plinth/modules/dynamicdns/dynamicdns.py:187 msgid "Please provide an update URL or a GnuDIP server address" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:184 +#: plinth/modules/dynamicdns/dynamicdns.py:192 msgid "Please provide a GnuDIP username" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:188 +#: plinth/modules/dynamicdns/dynamicdns.py:196 msgid "Please provide a GnuDIP domain name" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:193 +#: plinth/modules/dynamicdns/dynamicdns.py:201 msgid "Please provide a password" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:211 +#: plinth/modules/dynamicdns/dynamicdns.py:219 msgid "Configure Dynamic DNS" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:232 +#: plinth/modules/dynamicdns/dynamicdns.py:240 msgid "Dynamic DNS Status" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:364 +#: plinth/modules/dynamicdns/dynamicdns.py:381 #: plinth/modules/openvpn/views.py:143 plinth/modules/transmission/views.py:72 msgid "Configuration updated" msgstr "" @@ -705,23 +744,28 @@ msgstr "" msgid "Last update" msgstr "" -#: plinth/modules/ejabberd/__init__.py:42 -msgid "" -"Chat Server \n" -" (ejabberd)" +#: plinth/modules/ejabberd/__init__.py:45 +msgid "ejabberd" msgstr "" -#: plinth/modules/ejabberd/__init__.py:45 +#: plinth/modules/ejabberd/__init__.py:47 +#: plinth/modules/matrixsynapse/__init__.py:43 +msgid "Chat Server" +msgstr "" + +#: plinth/modules/ejabberd/__init__.py:50 msgid "" "XMPP is an open and standardized communication protocol. Here you can run " "and configure your XMPP server, called ejabberd." msgstr "" -#: plinth/modules/ejabberd/__init__.py:48 +#: plinth/modules/ejabberd/__init__.py:54 +#, python-brace-format msgid "" -"To actually communicate, you can use the web client or any other XMPP client." +"To actually communicate, you can use the web " +"client or any other XMPP client. When enabled, ejabberd can be accessed by " +"any user with a {box_name} login." msgstr "" #: plinth/modules/ejabberd/forms.py:33 @@ -759,16 +803,11 @@ msgstr "" msgid "Configuration" msgstr "" -#: plinth/modules/ejabberd/views.py:60 plinth/modules/openvpn/views.py:145 -#: plinth/modules/tor/views.py:134 plinth/views.py:103 -msgid "Setting unchanged" -msgstr "" - -#: plinth/modules/ejabberd/views.py:64 plinth/views.py:107 +#: plinth/modules/ejabberd/views.py:64 plinth/views.py:116 msgid "Application enabled" msgstr "" -#: plinth/modules/ejabberd/views.py:67 plinth/views.py:110 +#: plinth/modules/ejabberd/views.py:67 plinth/views.py:119 msgid "Application disabled" msgstr "" @@ -814,13 +853,13 @@ msgid "Service/Port" msgstr "" #: plinth/modules/firewall/templates/firewall.html:65 -#: plinth/modules/letsencrypt/templates/letsencrypt.html:88 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:94 #: plinth/modules/names/templates/names.html:49 msgid "Enabled" msgstr "" #: plinth/modules/firewall/templates/firewall.html:68 -#: plinth/modules/letsencrypt/templates/letsencrypt.html:90 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:96 #: plinth/modules/names/templates/names.html:51 #: plinth/modules/networks/forms.py:63 msgid "Disabled" @@ -1031,16 +1070,29 @@ msgid "" "before submitting the bug report." msgstr "" -#: plinth/modules/ikiwiki/__init__.py:39 -msgid "Wiki and Blog (ikiwiki)" +#: plinth/modules/ikiwiki/__init__.py:41 +msgid "ikiwiki" msgstr "" -#: plinth/modules/ikiwiki/__init__.py:42 +#: plinth/modules/ikiwiki/__init__.py:43 +msgid "Wiki and Blog" +msgstr "" + +#: plinth/modules/ikiwiki/__init__.py:46 msgid "" "ikiwiki is a simple wiki and blog application. It supports several " "lightweight markup languages, including Markdown, and common blogging " "functionality such as comments and RSS feeds. When enabled, the blogs and " -"wikis will be available from /ikiwiki." +"wikis will be available at /ikiwiki (once created)." +msgstr "" + +#: plinth/modules/ikiwiki/__init__.py:53 +#, python-brace-format +msgid "" +"Only {box_name} users in the admin group can create and " +"manage blogs and wikis, but any user in the wiki group can " +"edit existing ones. In the User " +"Configuration you can change these permissions or add new users." msgstr "" #: plinth/modules/ikiwiki/forms.py:34 @@ -1152,16 +1204,18 @@ msgid "Delete Wiki or Blog" msgstr "" #: plinth/modules/infinoted/__init__.py:43 -msgid "" -"Gobby Server \n" -" (infinoted)" +msgid "infinoted" msgstr "" -#: plinth/modules/infinoted/__init__.py:46 +#: plinth/modules/infinoted/__init__.py:45 +msgid "Gobby Server" +msgstr "" + +#: plinth/modules/infinoted/__init__.py:48 msgid "infinoted is a server for Gobby, a collaborative text editor." msgstr "" -#: plinth/modules/infinoted/__init__.py:49 +#: plinth/modules/infinoted/__init__.py:51 #, python-brace-format msgid "" "To use it, download Gobby, desktop " @@ -1170,29 +1224,34 @@ msgid "" msgstr "" #: plinth/modules/jsxc/__init__.py:36 -msgid "" -"Chat Client \n" -" (JSXC)" +msgid "JSXC" msgstr "" -#: plinth/modules/jsxc/__init__.py:40 +#: plinth/modules/jsxc/__init__.py:38 +msgid "Chat Client" +msgstr "" + +#: plinth/modules/jsxc/__init__.py:42 msgid "" "JSXC is a web client for XMPP. Typically it is used with an XMPP server " "running locally." msgstr "" -#: plinth/modules/jsxc/__init__.py:78 +#: plinth/modules/jsxc/__init__.py:80 msgid "" "Chat Client \n" " (jsxc)" msgstr "" -#: plinth/modules/letsencrypt/__init__.py:39 -#: plinth/modules/letsencrypt/__init__.py:64 -msgid "Certificates (Let's Encrypt)" +#: plinth/modules/letsencrypt/__init__.py:40 +msgid "Let's Encrypt" msgstr "" -#: plinth/modules/letsencrypt/__init__.py:43 +#: plinth/modules/letsencrypt/__init__.py:42 +msgid "Certificates" +msgstr "" + +#: plinth/modules/letsencrypt/__init__.py:46 #, python-brace-format msgid "" "A digital certificate allows users of a web service to verify the identity " @@ -1202,7 +1261,7 @@ msgid "" "Encrypt, a certificate authority (CA)." msgstr "" -#: plinth/modules/letsencrypt/__init__.py:50 +#: plinth/modules/letsencrypt/__init__.py:53 msgid "" "Let's Encrypt is a free, automated, and open certificate authority, run for " "the public's benefit by the Internet Security Research Group (ISRG). Please " @@ -1226,96 +1285,162 @@ msgstr "" msgid "Actions" msgstr "" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:56 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:62 #, python-format msgid "Valid, expires on %(expiry_date)s" msgstr "" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:63 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:69 msgid "Revoked" msgstr "" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:67 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:73 #, python-format msgid "Expired on %(expiry_date)s" msgstr "" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:71 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:77 msgid "Invalid test certificate" msgstr "" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:75 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:81 #, python-format msgid "Invalid (%(reason)s)" msgstr "" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:82 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:88 msgid "No certificate" msgstr "" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:99 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:105 msgid "Re-obtain" msgstr "" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:105 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:111 #: plinth/modules/networks/templates/connection_show.html:63 #: plinth/modules/snapshot/templates/snapshot.html:34 msgid "Delete" msgstr "" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:112 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:118 msgid "Revoke" msgstr "" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:120 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:126 msgid "Obtain" msgstr "" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:133 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:149 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:156 +msgid "Update config" +msgstr "" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:161 +#, python-format +msgid "" +"\n" +" Let Plinth manage certificate renewal of\n" +" %(current_domain)s (recommended)\n" +" " +msgstr "" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:166 +msgid "" +"\n" +" Let Plinth manage certificate renewal of the current domain " +"(recommended)\n" +" " +msgstr "" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:175 +#, python-format +msgid "" +"If %(box_name)s manages the certificate renewal for the current domain, it " +"will ensure that all apps that use the certificate can use it, as soon as it " +"gets renewed." +msgstr "" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:181 +msgid "" +"No certificate available for the current domain. First obtain a " +"certificate to enable management of its renewal." +msgstr "" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:186 +msgid "" +"No current domain is configured. First configure a domain to enable " +"management of its certificates." +msgstr "" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:195 msgid "" "No domains have been configured. Configure domains to be able to obtain " "certificates for them." msgstr "" -#: plinth/modules/letsencrypt/views.py:55 +#: plinth/modules/letsencrypt/views.py:57 #, python-brace-format msgid "" "Certificate successfully revoked for domain {domain}.This may take a few " "moments to take effect." msgstr "" -#: plinth/modules/letsencrypt/views.py:61 +#: plinth/modules/letsencrypt/views.py:63 #, python-brace-format msgid "Failed to revoke certificate for domain {domain}: {error}" msgstr "" -#: plinth/modules/letsencrypt/views.py:73 +#: plinth/modules/letsencrypt/views.py:75 #, python-brace-format msgid "Certificate successfully obtained for domain {domain}" msgstr "" -#: plinth/modules/letsencrypt/views.py:78 +#: plinth/modules/letsencrypt/views.py:81 #, python-brace-format msgid "Failed to obtain certificate for domain {domain}: {error}" msgstr "" #: plinth/modules/letsencrypt/views.py:90 +#: plinth/modules/letsencrypt/views.py:109 +#, python-brace-format +msgid "Certificate renewal management enabled for {domain}." +msgstr "" + +#: plinth/modules/letsencrypt/views.py:95 +#, python-brace-format +msgid "Failed to enable certificate renewal management for {domain}: {error}" +msgstr "" + +#: plinth/modules/letsencrypt/views.py:112 +#, python-brace-format +msgid "Certificate renewal management disabled for {domain}." +msgstr "" + +#: plinth/modules/letsencrypt/views.py:118 +#, python-brace-format +msgid "Failed to switch certificate renewal management for {domain}: {error}" +msgstr "" + +#: plinth/modules/letsencrypt/views.py:134 +#, python-brace-format +msgid "Failed to disable certificate renewal management for {domain}: {error}" +msgstr "" + +#: plinth/modules/letsencrypt/views.py:141 #, python-brace-format msgid "Certificate successfully deleted for domain {domain}" msgstr "" -#: plinth/modules/letsencrypt/views.py:95 +#: plinth/modules/letsencrypt/views.py:146 #, python-brace-format msgid "Failed to delete certificate for domain {domain}: {error}" msgstr "" #: plinth/modules/matrixsynapse/__init__.py:41 -msgid "" -"Chat Server \n" -" (Matrix Synapse)" +msgid "Matrix Synapse" msgstr "" -#: plinth/modules/matrixsynapse/__init__.py:44 +#: plinth/modules/matrixsynapse/__init__.py:46 msgid "" "Matrix is an new " "ecosystem for open, federated instant messaging and VoIP. Synapse is a " @@ -1325,17 +1450,13 @@ msgid "" "converse with users on all other Matrix servers via federation." msgstr "" -#: plinth/modules/matrixsynapse/__init__.py:52 +#: plinth/modules/matrixsynapse/__init__.py:54 msgid "" "To communicate, you can use the available clients for mobile, desktop and the web. Riot client is recommended." msgstr "" -#: plinth/modules/matrixsynapse/forms.py:31 -msgid "Select the domain name" -msgstr "" - #: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:34 msgid "" "Matrix service needs to be configured for a domain. Users on other Matrix " @@ -1367,12 +1488,14 @@ msgid "" msgstr "" #: plinth/modules/minetest/__init__.py:48 -msgid "" -"Block Sandbox \n" -" (Minetest)" +msgid "Minetest" msgstr "" -#: plinth/modules/minetest/__init__.py:52 +#: plinth/modules/minetest/__init__.py:50 +msgid "Block Sandbox" +msgstr "" + +#: plinth/modules/minetest/__init__.py:54 #, python-brace-format msgid "" "Minetest is a multiplayer infinite-world block sandbox. This module enables " @@ -1488,7 +1611,7 @@ msgstr "" #: plinth/modules/monkeysphere/templates/monkeysphere.html:87 #: plinth/modules/monkeysphere/templates/monkeysphere_details.html:60 -#: plinth/service.py:117 +#: plinth/service.py:116 msgid "Web Server" msgstr "" @@ -1585,18 +1708,20 @@ msgid "Error occurred while publishing key." msgstr "" #: plinth/modules/mumble/__init__.py:35 -msgid "" -"Voice Chat \n" -" (Mumble)" +msgid "Mumble" msgstr "" -#: plinth/modules/mumble/__init__.py:44 +#: plinth/modules/mumble/__init__.py:37 +msgid "Voice Chat" +msgstr "" + +#: plinth/modules/mumble/__init__.py:46 msgid "" "Mumble is an open source, low-latency, encrypted, high quality voice chat " "software." msgstr "" -#: plinth/modules/mumble/__init__.py:47 +#: plinth/modules/mumble/__init__.py:49 msgid "" "You can connect to your Mumble server on the regular Mumble port 64738. Clients to connect to Mumble from your " @@ -2084,7 +2209,7 @@ msgid "This connection is not active." msgstr "" #: plinth/modules/networks/templates/connection_show.html:266 -#: plinth/modules/security/__init__.py:32 plinth/modules/security/views.py:46 +#: plinth/modules/security/__init__.py:32 plinth/modules/security/views.py:48 msgid "Security" msgstr "" @@ -2180,12 +2305,14 @@ msgid "Inactive" msgstr "" #: plinth/modules/openvpn/__init__.py:42 -msgid "" -"Virtual Private Network \n" -" (OpenVPN)" +msgid "OpenVPN" msgstr "" -#: plinth/modules/openvpn/__init__.py:46 +#: plinth/modules/openvpn/__init__.py:44 +msgid "Virtual Private Network" +msgstr "" + +#: plinth/modules/openvpn/__init__.py:48 #, python-brace-format msgid "" "Virtual Private Network (VPN) is a technique for securely connecting two " @@ -2196,7 +2323,7 @@ msgid "" "security and anonymity." msgstr "" -#: plinth/modules/openvpn/__init__.py:84 +#: plinth/modules/openvpn/__init__.py:86 #, python-brace-format msgid "" "Download Profile" @@ -2271,10 +2398,14 @@ msgid "Setup failed." msgstr "" #: plinth/modules/pagekite/__init__.py:44 -msgid "Public Visibility (PageKite)" +msgid "PageKite" msgstr "" -#: plinth/modules/pagekite/__init__.py:48 +#: plinth/modules/pagekite/__init__.py:46 +msgid "Public Visibility" +msgstr "" + +#: plinth/modules/pagekite/__init__.py:50 #, python-brace-format msgid "" "PageKite is a system for exposing {box_name} services when you don't have a " @@ -2283,33 +2414,33 @@ msgid "" "following situations:" msgstr "" -#: plinth/modules/pagekite/__init__.py:55 +#: plinth/modules/pagekite/__init__.py:57 #, python-brace-format msgid "{box_name} is behind a restricted firewall." msgstr "" -#: plinth/modules/pagekite/__init__.py:59 +#: plinth/modules/pagekite/__init__.py:61 #, python-brace-format msgid "{box_name} is connected to a (wireless) router which you don't control." msgstr "" -#: plinth/modules/pagekite/__init__.py:62 +#: plinth/modules/pagekite/__init__.py:64 msgid "" "Your ISP does not provide you an external IP address and instead provides " "Internet connection through NAT." msgstr "" -#: plinth/modules/pagekite/__init__.py:65 +#: plinth/modules/pagekite/__init__.py:67 msgid "" "Your ISP does not provide you a static IP address and your IP address " "changes evertime you connect to Internet." msgstr "" -#: plinth/modules/pagekite/__init__.py:68 +#: plinth/modules/pagekite/__init__.py:70 msgid "Your ISP limits incoming connections." msgstr "" -#: plinth/modules/pagekite/__init__.py:71 +#: plinth/modules/pagekite/__init__.py:73 #, python-brace-format msgid "" "PageKite works around NAT, firewalls and IP-address limitations by using a " @@ -2585,8 +2716,8 @@ msgstr "" msgid "Pagekite setup finished. The HTTP and HTTPS services are activated now." msgstr "" -#: plinth/modules/power/__init__.py:28 plinth/modules/power/views.py:50 -#: plinth/modules/power/views.py:65 +#: plinth/modules/power/__init__.py:28 plinth/modules/power/views.py:51 +#: plinth/modules/power/views.py:67 msgid "Power" msgstr "" @@ -2595,10 +2726,16 @@ msgid "Restart or shut down the system." msgstr "" #: plinth/modules/power/templates/power.html:28 +msgid "" +"Currently an installation or upgrade is running. Consider waiting until it's " +"finished before shutting down or restarting." +msgstr "" + +#: plinth/modules/power/templates/power.html:37 msgid "Restart »" msgstr "" -#: plinth/modules/power/templates/power.html:31 +#: plinth/modules/power/templates/power.html:40 msgid "Shut Down »" msgstr "" @@ -2608,7 +2745,14 @@ msgid "" "interface for a few minutes until the system is restarted." msgstr "" -#: plinth/modules/power/templates/power_restart.html:42 +#: plinth/modules/power/templates/power_restart.html:38 +msgid "" +"Currently an installation or upgrade is running. Consider waiting until it's " +"finished before restarting." +msgstr "" + +#: plinth/modules/power/templates/power_restart.html:52 +#: plinth/modules/power/templates/power_restart.html:55 msgid "Restart Now" msgstr "" @@ -2618,24 +2762,33 @@ msgid "" "interface after shut down." msgstr "" -#: plinth/modules/power/templates/power_shutdown.html:41 +#: plinth/modules/power/templates/power_shutdown.html:37 +msgid "" +"Currently an installation or upgrade is running. Consider waiting until it's " +"finished before shutting down." +msgstr "" + +#: plinth/modules/power/templates/power_shutdown.html:51 +#: plinth/modules/power/templates/power_shutdown.html:54 msgid "Shut Down Now" msgstr "" #: plinth/modules/privoxy/__init__.py:43 -msgid "" -"Web Proxy \n" -" (Privoxy)" +msgid "Privoxy" msgstr "" -#: plinth/modules/privoxy/__init__.py:46 +#: plinth/modules/privoxy/__init__.py:45 +msgid "Web Proxy" +msgstr "" + +#: plinth/modules/privoxy/__init__.py:48 msgid "" "Privoxy is a non-caching web proxy with advanced filtering capabilities for " "enhancing privacy, modifying web page data and HTTP headers, controlling " "access, and removing ads and other obnoxious Internet junk. " msgstr "" -#: plinth/modules/privoxy/__init__.py:52 +#: plinth/modules/privoxy/__init__.py:54 #, python-brace-format msgid "" "You can use Privoxy by modifying your browser proxy settings to your " @@ -2645,18 +2798,20 @@ msgid "" "\">http://p.p." msgstr "" -#: plinth/modules/privoxy/__init__.py:144 +#: plinth/modules/privoxy/__init__.py:147 #, python-brace-format msgid "Access {url} with proxy {proxy} on tcp{kind}" msgstr "" #: plinth/modules/quassel/__init__.py:42 -msgid "" -"IRC Client \n" -" (Quassel)" +msgid "Quassel" msgstr "" -#: plinth/modules/quassel/__init__.py:46 +#: plinth/modules/quassel/__init__.py:44 +msgid "IRC Client" +msgstr "" + +#: plinth/modules/quassel/__init__.py:48 #, python-brace-format msgid "" "Quassel is an IRC application that is split into two parts, a \"core\" and a " @@ -2667,7 +2822,7 @@ msgid "" "connect and disconnect from it." msgstr "" -#: plinth/modules/quassel/__init__.py:54 +#: plinth/modules/quassel/__init__.py:56 msgid "" "You can connect to your Quassel core on the default Quassel port 4242. " "Clients to connect to Quassel from your supported " -"client application is needed. Radicale can be accessed by any user with " -"a {box_name} login." +"radicale.org/clients/\">supported client application is needed. Radicale " +"can be accessed by any user with a {box_name} login." msgstr "" #: plinth/modules/radicale/forms.py:28 @@ -2710,12 +2866,14 @@ msgid "Access rights configuration updated" msgstr "" #: plinth/modules/repro/__init__.py:38 -msgid "" -"SIP Server \n" -" (repro)" +msgid "repro" msgstr "" -#: plinth/modules/repro/__init__.py:41 +#: plinth/modules/repro/__init__.py:40 +msgid "SIP Server" +msgstr "" + +#: plinth/modules/repro/__init__.py:43 msgid "" "repro provides various SIP services that a SIP softphone can utilize to " "provide audio and video calls as well as presence and instant messaging. " @@ -2724,7 +2882,7 @@ msgid "" "communications to other servers on the Internet similar to email." msgstr "" -#: plinth/modules/repro/__init__.py:48 +#: plinth/modules/repro/__init__.py:50 msgid "" "To make SIP calls, a client application is needed. Available clients include " "Jitsi (for computers) and (for Android phones)." msgstr "" -#: plinth/modules/repro/__init__.py:53 +#: plinth/modules/repro/__init__.py:55 msgid "" "Note: Before using repro, domains and users will need to " "be configured using the web-based " @@ -2742,12 +2900,14 @@ msgid "" msgstr "" #: plinth/modules/restore/__init__.py:36 -msgid "" -"Unhosted Storage \n" -" (reStore)" +msgid "reStore" msgstr "" -#: plinth/modules/restore/__init__.py:40 +#: plinth/modules/restore/__init__.py:38 +msgid "Unhosted Storage" +msgstr "" + +#: plinth/modules/restore/__init__.py:42 #, python-brace-format msgid "" "reStore is a server for unhosted web " @@ -2757,19 +2917,21 @@ msgid "" "becomes your unhosted storage server." msgstr "" -#: plinth/modules/restore/__init__.py:47 +#: plinth/modules/restore/__init__.py:49 msgid "" "You can create and edit accounts in the reStore web-" "interface." msgstr "" #: plinth/modules/roundcube/__init__.py:35 -msgid "" -"Email Client \n" -" (Roundcube)" +msgid "Roundcube" msgstr "" -#: plinth/modules/roundcube/__init__.py:38 +#: plinth/modules/roundcube/__init__.py:37 +msgid "Email Client" +msgstr "" + +#: plinth/modules/roundcube/__init__.py:40 msgid "" "Roundcube webmail is a browser-based multilingual IMAP client with an " "application-like user interface. It provides full functionality you expect " @@ -2777,7 +2939,7 @@ msgid "" "manipulation, message searching and spell checking." msgstr "" -#: plinth/modules/roundcube/__init__.py:44 +#: plinth/modules/roundcube/__init__.py:46 msgid "" "You can access Roundcube from /roundcube. Provide " "the username and password of the email account you wish to access followed " @@ -2786,7 +2948,7 @@ msgid "" "server field like imaps://imap.example.com." msgstr "" -#: plinth/modules/roundcube/__init__.py:51 +#: plinth/modules/roundcube/__init__.py:53 msgid "" "For Gmail, username will be your Gmail address, password will be your Google " "account password and server will be imaps://imap.gmail.com. " @@ -2807,26 +2969,39 @@ msgid "" "services without further authorization." msgstr "" -#: plinth/modules/security/views.py:63 +#: plinth/modules/security/forms.py:35 +msgid "Fail2ban (recommended)" +msgstr "" + +#: plinth/modules/security/forms.py:36 +msgid "" +"When this option is enabled, fail2ban will limit brute force break-in " +"attempts to the SSH server and other password protected internet-services " +"which are enabled." +msgstr "" + +#: plinth/modules/security/views.py:66 #, python-brace-format msgid "Error setting restricted access: {exception}" msgstr "" -#: plinth/modules/security/views.py:66 +#: plinth/modules/security/views.py:69 msgid "Updated security configuration" msgstr "" #: plinth/modules/shaarli/__init__.py:35 -msgid "" -"Bookmarks \n" -" (Shaarli)" +msgid "Shaarli" msgstr "" -#: plinth/modules/shaarli/__init__.py:38 -msgid "Shaarli allows you to save and share bookmarks." +#: plinth/modules/shaarli/__init__.py:37 +msgid "Bookmarks" msgstr "" #: plinth/modules/shaarli/__init__.py:40 +msgid "Shaarli allows you to save and share bookmarks." +msgstr "" + +#: plinth/modules/shaarli/__init__.py:42 msgid "" "When enabled, Shaarli will be available from /shaarli path on the web server. Note that Shaarli only supports a single user " @@ -2939,6 +3114,18 @@ msgstr "" msgid "Rollback to Snapshot" msgstr "" +#: plinth/modules/ssh/__init__.py:37 +msgid "Secure Shell (SSH) Server" +msgstr "" + +#: plinth/modules/ssh/__init__.py:40 +msgid "" +"A Secure Shell server uses the secure shell protocol to accept connections " +"from remote computers. An authorized remote computer can perform " +"administration tasks, copy files or run other services using such " +"connections." +msgstr "" + #: plinth/modules/sso/__init__.py:30 msgid "Single Sign On" msgstr "" @@ -2948,12 +3135,14 @@ msgid "Login" msgstr "" #: plinth/modules/syncthing/__init__.py:39 -msgid "" -"File Synchronization \n" -" (Syncthing)" +msgid "Syncthing" msgstr "" -#: plinth/modules/syncthing/__init__.py:42 +#: plinth/modules/syncthing/__init__.py:41 +msgid "File Synchronization" +msgstr "" + +#: plinth/modules/syncthing/__init__.py:44 msgid "" "Syncthing is an application to synchronize files across multiple devices, e." "g. your desktop computer and mobile phone. Creation, modification, or " @@ -2961,7 +3150,7 @@ msgid "" "other devices that also run Syncthing." msgstr "" -#: plinth/modules/syncthing/__init__.py:47 +#: plinth/modules/syncthing/__init__.py:49 #, python-brace-format msgid "" "Running Syncthing on {box_name} provides an extra synchronization point for " @@ -2972,7 +3161,7 @@ msgid "" "{box_name} is only available for users belonging to the \"admin\" group." msgstr "" -#: plinth/modules/syncthing/__init__.py:54 +#: plinth/modules/syncthing/__init__.py:56 msgid "" "When enabled, Syncthing's web interface will be available from /syncthing. Desktop and mobile clients are also Tor Project website. For " @@ -3043,36 +3244,36 @@ msgid "" "\">Tor Browser." msgstr "" -#: plinth/modules/tor/__init__.py:70 plinth/modules/tor/__init__.py:112 +#: plinth/modules/tor/__init__.py:72 plinth/modules/tor/__init__.py:114 msgid "Tor Anonymity Network" msgstr "" -#: plinth/modules/tor/__init__.py:76 plinth/modules/tor/__init__.py:120 +#: plinth/modules/tor/__init__.py:78 plinth/modules/tor/__init__.py:122 msgid "Tor Bridge Relay" msgstr "" -#: plinth/modules/tor/__init__.py:98 plinth/modules/tor/__init__.py:141 +#: plinth/modules/tor/__init__.py:100 plinth/modules/tor/__init__.py:143 msgid "Tor Hidden Service" msgstr "" -#: plinth/modules/tor/__init__.py:160 +#: plinth/modules/tor/__init__.py:162 msgid "Tor relay port available" msgstr "" -#: plinth/modules/tor/__init__.py:168 +#: plinth/modules/tor/__init__.py:170 msgid "Obfs3 transport registered" msgstr "" -#: plinth/modules/tor/__init__.py:174 +#: plinth/modules/tor/__init__.py:176 msgid "Obfs4 transport registered" msgstr "" -#: plinth/modules/tor/__init__.py:211 +#: plinth/modules/tor/__init__.py:213 #, python-brace-format msgid "Access URL {url} on tcp{kind} via Tor" msgstr "" -#: plinth/modules/tor/__init__.py:222 +#: plinth/modules/tor/__init__.py:224 #, python-brace-format msgid "Confirm Tor usage at {url} on tcp{kind}" msgstr "" @@ -3216,18 +3417,20 @@ msgid "An error occurred during configuration." msgstr "" #: plinth/modules/transmission/__init__.py:38 -msgid "" -"BitTorrent \n" -" (Transmission)" +msgid "Transmission" msgstr "" -#: plinth/modules/transmission/__init__.py:41 +#: plinth/modules/transmission/__init__.py:40 +msgid "BitTorrent" +msgstr "" + +#: plinth/modules/transmission/__init__.py:43 msgid "" "BitTorrent is a peer-to-peer file sharing protocol. Transmission daemon " "handles Bitorrent file sharing. Note that BitTorrent is not anonymous." msgstr "" -#: plinth/modules/transmission/__init__.py:44 +#: plinth/modules/transmission/__init__.py:46 msgid "" "Access the web interface at /transmission." msgstr "" @@ -3253,23 +3456,27 @@ msgid "" "hashed format. To set a new password, enter the password in plain text." msgstr "" -#: plinth/modules/ttrss/__init__.py:37 -msgid "" -"News Feed Reader \n" -" (Tiny Tiny RSS)" +#: plinth/modules/ttrss/__init__.py:39 +msgid "Tiny Tiny RSS" msgstr "" -#: plinth/modules/ttrss/__init__.py:40 +#: plinth/modules/ttrss/__init__.py:41 +msgid "News Feed Reader" +msgstr "" + +#: plinth/modules/ttrss/__init__.py:44 msgid "" "Tiny Tiny RSS is a news feed (RSS/Atom) reader and aggregator, designed to " "allow reading news from any location, while feeling as close to a real " "desktop application as possible." msgstr "" -#: plinth/modules/ttrss/__init__.py:44 +#: plinth/modules/ttrss/__init__.py:49 +#, python-brace-format msgid "" "When enabled, Tiny Tiny RSS will be available from /tt-" -"rss path on the web server." +"rss path on the web server. It can be accessed by any user with a {box_name} login." msgstr "" #: plinth/modules/upgrades/__init__.py:35 @@ -3561,15 +3768,11 @@ msgstr "" msgid "configuration file: {file}" msgstr "" -#: plinth/service.py:119 +#: plinth/service.py:118 msgid "Web Server over Secure Socket Layer" msgstr "" -#: plinth/service.py:121 -msgid "Secure Shell (SSH) Server" -msgstr "" - -#: plinth/service.py:123 +#: plinth/service.py:120 #, python-brace-format msgid "{box_name} Web Interface (Plinth)" msgstr "" @@ -3612,11 +3815,11 @@ msgid "" "\"%(status_log_url)s\">status log to the bug report." msgstr "" -#: plinth/templates/apps.html:25 +#: plinth/templates/apps.html:33 msgid "Services and Applications" msgstr "" -#: plinth/templates/apps.html:28 +#: plinth/templates/apps.html:36 #, python-format msgid "" "You can install and run various services and applications on your " @@ -3624,7 +3827,7 @@ msgid "" "of the application and choose to install it." msgstr "" -#: plinth/templates/apps.html:36 +#: plinth/templates/apps.html:44 #, fuzzy msgid "" "This box can be your photo sharing site, your instant messaging site, your " @@ -3791,16 +3994,16 @@ msgstr "" msgid "%(percentage)s%% complete" msgstr "" -#: plinth/templates/system.html:25 +#: plinth/templates/system.html:33 msgid "System Configuration" msgstr "" -#: plinth/templates/system.html:28 +#: plinth/templates/system.html:36 #, python-format msgid "Here you can administrate the underlying system of your %(box_name)s." msgstr "" -#: plinth/templates/system.html:34 +#: plinth/templates/system.html:42 #, python-format msgid "" "The options affect the %(box_name)s at its most general level, so be careful!" diff --git a/plinth/locale/id/LC_MESSAGES/django.po b/plinth/locale/id/LC_MESSAGES/django.po index 42af66c4a..49777c0e9 100644 --- a/plinth/locale/id/LC_MESSAGES/django.po +++ b/plinth/locale/id/LC_MESSAGES/django.po @@ -2,7 +2,7 @@ msgid "" msgstr "" "Project-Id-Version: Indonesian (FreedomBox)\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2017-07-10 22:56-0400\n" +"POT-Creation-Date: 2017-09-24 11:24-0400\n" "PO-Revision-Date: 2016-08-28 19:39+0000\n" "Last-Translator: Izharul Haq \n" "Language-Team: Indonesian /deluge path on the web server. The default password is 'deluge', but " @@ -348,19 +360,22 @@ msgstr "Pengujian" msgid "Result" msgstr "Hasil" -#: plinth/modules/diaspora/__init__.py:61 +#: plinth/modules/diaspora/__init__.py:51 +msgid "diaspora*" +msgstr "" + +#: plinth/modules/diaspora/__init__.py:53 +msgid "Federated Social Network" +msgstr "" + +#: plinth/modules/diaspora/__init__.py:62 msgid "" "diaspora* is a decentralized social network where you can store and control " "your own data." msgstr "" -#: plinth/modules/diaspora/forms.py:30 -msgid "Select the domain name to be used for diaspora*" -msgstr "" - -#: plinth/modules/diaspora/forms.py:32 -msgid "" -"Warning! Do not change the FreedomBox domain name after setting up diaspora*" +#: plinth/modules/diaspora/forms.py:31 +msgid "Enable new user registrations" msgstr "" #: plinth/modules/diaspora/templates/diaspora-post-setup.html:32 @@ -387,7 +402,21 @@ msgstr "" msgid "Update setup" msgstr "" -#: plinth/modules/disks/__init__.py:33 plinth/modules/disks/views.py:39 +#: plinth/modules/diaspora/views.py:96 plinth/modules/ejabberd/views.py:60 +#: plinth/modules/openvpn/views.py:145 plinth/modules/tor/views.py:134 +#: plinth/views.py:112 +msgid "Setting unchanged" +msgstr "" + +#: plinth/modules/diaspora/views.py:100 +msgid "User registrations enabled" +msgstr "" + +#: plinth/modules/diaspora/views.py:104 +msgid "User registrations disabled" +msgstr "" + +#: plinth/modules/disks/__init__.py:33 plinth/modules/disks/views.py:45 msgid "Disks" msgstr "Diska" @@ -429,7 +458,7 @@ msgstr "" #: plinth/modules/disks/templates/disks.html:90 #: plinth/modules/disks/templates/disks.html:102 #: plinth/modules/disks/templates/disks_expand.html:45 -#: plinth/modules/disks/views.py:56 +#: plinth/modules/disks/views.py:62 msgid "Expand Root Partition" msgstr "" @@ -447,50 +476,57 @@ msgid "" "root partition." msgstr "" -#: plinth/modules/disks/views.py:65 +#: plinth/modules/disks/views.py:71 #, python-brace-format msgid "Error expanding partition: {exception}" msgstr "" -#: plinth/modules/disks/views.py:68 +#: plinth/modules/disks/views.py:74 msgid "Partition expanded successfully." msgstr "" -#: plinth/modules/disks/views.py:77 +#: plinth/modules/disks/views.py:93 +#, python-format, python-brace-format +msgid "" +"Warning: Low space on system partition ({percent_used}% used, {free_space} " +"free)." +msgstr "" + +#: plinth/modules/disks/views.py:130 #, fuzzy, python-brace-format #| msgid "{disk_size} bytes" msgid "{disk_size:.1f} bytes" msgstr "{disk_size} bytes" -#: plinth/modules/disks/views.py:81 +#: plinth/modules/disks/views.py:134 #, fuzzy, python-brace-format #| msgid "{disk_size} KiB" msgid "{disk_size:.1f} KiB" msgstr "{disk_size} KiB" -#: plinth/modules/disks/views.py:85 +#: plinth/modules/disks/views.py:138 #, fuzzy, python-brace-format #| msgid "{disk_size} MiB" msgid "{disk_size:.1f} MiB" msgstr "{disk_size} MiB" -#: plinth/modules/disks/views.py:89 +#: plinth/modules/disks/views.py:142 #, fuzzy, python-brace-format #| msgid "{disk_size} GiB" msgid "{disk_size:.1f} GiB" msgstr "{disk_size} GiB" -#: plinth/modules/disks/views.py:92 +#: plinth/modules/disks/views.py:145 #, fuzzy, python-brace-format #| msgid "{disk_size} TiB" msgid "{disk_size:.1f} TiB" msgstr "{disk_size} TiB" -#: plinth/modules/dynamicdns/__init__.py:33 +#: plinth/modules/dynamicdns/__init__.py:35 msgid "Dynamic DNS Client" msgstr "" -#: plinth/modules/dynamicdns/__init__.py:37 +#: plinth/modules/dynamicdns/__init__.py:39 #, python-brace-format msgid "" "If your Internet provider changes your IP address periodically (i.e. every " @@ -498,7 +534,7 @@ msgid "" "prevent others from finding services which are provided by this {box_name}." msgstr "" -#: plinth/modules/dynamicdns/__init__.py:43 +#: plinth/modules/dynamicdns/__init__.py:45 msgid "" "The solution is to assign a DNS name to your IP address and update the DNS " "name every time your IP is changed by your Internet provider. Dynamic DNS " @@ -509,11 +545,18 @@ msgid "" "IP address." msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:35 plinth/modules/help/help.py:40 +#: plinth/modules/dynamicdns/__init__.py:67 +#: plinth/modules/dynamicdns/dynamicdns.py:377 +#, fuzzy +#| msgid "Dynamic DNS Status" +msgid "Dynamic DNS Service" +msgstr "Status Dynamic DNS" + +#: plinth/modules/dynamicdns/dynamicdns.py:43 plinth/modules/help/help.py:40 msgid "About" msgstr "Tentang" -#: plinth/modules/dynamicdns/dynamicdns.py:39 +#: plinth/modules/dynamicdns/dynamicdns.py:47 #: plinth/modules/firewall/templates/firewall.html:47 #: plinth/modules/networks/templates/connection_show.html:261 #: plinth/modules/openvpn/templates/openvpn.html:67 @@ -522,46 +565,46 @@ msgstr "Tentang" msgid "Status" msgstr "Status" -#: plinth/modules/dynamicdns/dynamicdns.py:63 +#: plinth/modules/dynamicdns/dynamicdns.py:71 msgid "" "The Variables <User>, <Pass>, <Ip>, <Domain> may be " "used within the URL. For details see the update URL templates of the example " "providers." msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:67 +#: plinth/modules/dynamicdns/dynamicdns.py:75 msgid "" "Please choose an update protocol according to your provider. If your " "provider does not support the GnuDIP protocol or your provider is not listed " "you may use the update URL of your provider." msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:72 +#: plinth/modules/dynamicdns/dynamicdns.py:80 msgid "" "Please do not enter a URL here (like \"https://example.com/\") but only the " "hostname of the GnuDIP server (like \"example.com\")." msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:76 +#: plinth/modules/dynamicdns/dynamicdns.py:84 #, python-brace-format msgid "The public domain name you want to use to reach your {box_name}." msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:79 +#: plinth/modules/dynamicdns/dynamicdns.py:87 msgid "Use this option if your provider uses self signed certificates." msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:82 +#: plinth/modules/dynamicdns/dynamicdns.py:90 msgid "" "If this option is selected, your username and password will be used for HTTP " "basic authentication." msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:85 +#: plinth/modules/dynamicdns/dynamicdns.py:93 msgid "Leave this field empty if you want to keep your current password." msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:88 +#: plinth/modules/dynamicdns/dynamicdns.py:96 #, python-brace-format msgid "" "Optional Value. If your {box_name} is not connected directly to the Internet " @@ -570,82 +613,82 @@ msgid "" "(example: http://myip.datasystems24.de)." msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:96 +#: plinth/modules/dynamicdns/dynamicdns.py:104 msgid "The username that was used when the account was created." msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:107 +#: plinth/modules/dynamicdns/dynamicdns.py:115 msgid "Enable Dynamic DNS" msgstr "Aktifkan Dynamic DNS" -#: plinth/modules/dynamicdns/dynamicdns.py:110 +#: plinth/modules/dynamicdns/dynamicdns.py:118 msgid "Service Type" msgstr "Tipe Layanan" -#: plinth/modules/dynamicdns/dynamicdns.py:115 +#: plinth/modules/dynamicdns/dynamicdns.py:123 msgid "GnuDIP Server Address" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:120 +#: plinth/modules/dynamicdns/dynamicdns.py:128 msgid "Invalid server name" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:123 +#: plinth/modules/dynamicdns/dynamicdns.py:131 msgid "Update URL" msgstr "Perbaharui URL" -#: plinth/modules/dynamicdns/dynamicdns.py:127 +#: plinth/modules/dynamicdns/dynamicdns.py:135 msgid "Accept all SSL certificates" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:131 +#: plinth/modules/dynamicdns/dynamicdns.py:139 msgid "Use HTTP basic authentication" msgstr "Gunakan autentikasi dasar HTTP" -#: plinth/modules/dynamicdns/dynamicdns.py:143 +#: plinth/modules/dynamicdns/dynamicdns.py:151 #: plinth/modules/networks/forms.py:228 plinth/modules/transmission/forms.py:37 msgid "Username" msgstr "Nama Pengguna" -#: plinth/modules/dynamicdns/dynamicdns.py:146 +#: plinth/modules/dynamicdns/dynamicdns.py:154 #: plinth/modules/networks/forms.py:229 plinth/modules/transmission/forms.py:41 msgid "Password" msgstr "Kata Sandi" -#: plinth/modules/dynamicdns/dynamicdns.py:149 +#: plinth/modules/dynamicdns/dynamicdns.py:157 #: plinth/modules/networks/forms.py:231 msgid "Show password" msgstr "Tampilkan kata sandi" -#: plinth/modules/dynamicdns/dynamicdns.py:153 +#: plinth/modules/dynamicdns/dynamicdns.py:161 msgid "URL to look up public IP" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:179 +#: plinth/modules/dynamicdns/dynamicdns.py:187 msgid "Please provide an update URL or a GnuDIP server address" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:184 +#: plinth/modules/dynamicdns/dynamicdns.py:192 msgid "Please provide a GnuDIP username" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:188 +#: plinth/modules/dynamicdns/dynamicdns.py:196 msgid "Please provide a GnuDIP domain name" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:193 +#: plinth/modules/dynamicdns/dynamicdns.py:201 msgid "Please provide a password" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:211 +#: plinth/modules/dynamicdns/dynamicdns.py:219 msgid "Configure Dynamic DNS" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:232 +#: plinth/modules/dynamicdns/dynamicdns.py:240 msgid "Dynamic DNS Status" msgstr "Status Dynamic DNS" -#: plinth/modules/dynamicdns/dynamicdns.py:364 +#: plinth/modules/dynamicdns/dynamicdns.py:381 #: plinth/modules/openvpn/views.py:143 plinth/modules/transmission/views.py:72 msgid "Configuration updated" msgstr "" @@ -700,23 +743,30 @@ msgstr "" msgid "Last update" msgstr "" -#: plinth/modules/ejabberd/__init__.py:42 -msgid "" -"Chat Server \n" -" (ejabberd)" +#: plinth/modules/ejabberd/__init__.py:45 +msgid "ejabberd" msgstr "" -#: plinth/modules/ejabberd/__init__.py:45 +#: plinth/modules/ejabberd/__init__.py:47 +#: plinth/modules/matrixsynapse/__init__.py:43 +#, fuzzy +#| msgid "Web Server" +msgid "Chat Server" +msgstr "Server Web" + +#: plinth/modules/ejabberd/__init__.py:50 msgid "" "XMPP is an open and standardized communication protocol. Here you can run " "and configure your XMPP server, called ejabberd." msgstr "" -#: plinth/modules/ejabberd/__init__.py:48 +#: plinth/modules/ejabberd/__init__.py:54 +#, python-brace-format msgid "" -"To actually communicate, you can use the web client or any other XMPP client." +"To actually communicate, you can use the web " +"client or any other XMPP client. When enabled, ejabberd can be accessed by " +"any user with a {box_name} login." msgstr "" #: plinth/modules/ejabberd/forms.py:33 @@ -754,16 +804,11 @@ msgstr "" msgid "Configuration" msgstr "" -#: plinth/modules/ejabberd/views.py:60 plinth/modules/openvpn/views.py:145 -#: plinth/modules/tor/views.py:134 plinth/views.py:103 -msgid "Setting unchanged" -msgstr "" - -#: plinth/modules/ejabberd/views.py:64 plinth/views.py:107 +#: plinth/modules/ejabberd/views.py:64 plinth/views.py:116 msgid "Application enabled" msgstr "" -#: plinth/modules/ejabberd/views.py:67 plinth/views.py:110 +#: plinth/modules/ejabberd/views.py:67 plinth/views.py:119 msgid "Application disabled" msgstr "" @@ -811,13 +856,13 @@ msgid "Service/Port" msgstr "Layanan/Port" #: plinth/modules/firewall/templates/firewall.html:65 -#: plinth/modules/letsencrypt/templates/letsencrypt.html:88 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:94 #: plinth/modules/names/templates/names.html:49 msgid "Enabled" msgstr "Aktifkan" #: plinth/modules/firewall/templates/firewall.html:68 -#: plinth/modules/letsencrypt/templates/letsencrypt.html:90 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:96 #: plinth/modules/names/templates/names.html:51 #: plinth/modules/networks/forms.py:63 msgid "Disabled" @@ -1031,16 +1076,33 @@ msgid "" "before submitting the bug report." msgstr "" -#: plinth/modules/ikiwiki/__init__.py:39 -msgid "Wiki and Blog (ikiwiki)" -msgstr "Wiki dan Blog (ikiwiki)" +#: plinth/modules/ikiwiki/__init__.py:41 +#, fuzzy +#| msgid "wiki" +msgid "ikiwiki" +msgstr "wiki" -#: plinth/modules/ikiwiki/__init__.py:42 +#: plinth/modules/ikiwiki/__init__.py:43 +#, fuzzy +#| msgid "Manage Wikis and Blogs" +msgid "Wiki and Blog" +msgstr "Kelola Wiki dan Blog" + +#: plinth/modules/ikiwiki/__init__.py:46 msgid "" "ikiwiki is a simple wiki and blog application. It supports several " "lightweight markup languages, including Markdown, and common blogging " "functionality such as comments and RSS feeds. When enabled, the blogs and " -"wikis will be available from /ikiwiki." +"wikis will be available at /ikiwiki (once created)." +msgstr "" + +#: plinth/modules/ikiwiki/__init__.py:53 +#, python-brace-format +msgid "" +"Only {box_name} users in the admin group can create and " +"manage blogs and wikis, but any user in the wiki group can " +"edit existing ones. In the User " +"Configuration you can change these permissions or add new users." msgstr "" #: plinth/modules/ikiwiki/forms.py:34 @@ -1152,16 +1214,20 @@ msgid "Delete Wiki or Blog" msgstr "Hapus Wiki atau Blog" #: plinth/modules/infinoted/__init__.py:43 -msgid "" -"Gobby Server \n" -" (infinoted)" +msgid "infinoted" msgstr "" -#: plinth/modules/infinoted/__init__.py:46 +#: plinth/modules/infinoted/__init__.py:45 +#, fuzzy +#| msgid "Web Server" +msgid "Gobby Server" +msgstr "Server Web" + +#: plinth/modules/infinoted/__init__.py:48 msgid "infinoted is a server for Gobby, a collaborative text editor." msgstr "" -#: plinth/modules/infinoted/__init__.py:49 +#: plinth/modules/infinoted/__init__.py:51 #, python-brace-format msgid "" "To use it, download Gobby, desktop " @@ -1170,29 +1236,36 @@ msgid "" msgstr "" #: plinth/modules/jsxc/__init__.py:36 -msgid "" -"Chat Client \n" -" (JSXC)" +msgid "JSXC" msgstr "" -#: plinth/modules/jsxc/__init__.py:40 +#: plinth/modules/jsxc/__init__.py:38 +msgid "Chat Client" +msgstr "" + +#: plinth/modules/jsxc/__init__.py:42 msgid "" "JSXC is a web client for XMPP. Typically it is used with an XMPP server " "running locally." msgstr "" -#: plinth/modules/jsxc/__init__.py:78 +#: plinth/modules/jsxc/__init__.py:80 msgid "" "Chat Client \n" " (jsxc)" msgstr "" -#: plinth/modules/letsencrypt/__init__.py:39 -#: plinth/modules/letsencrypt/__init__.py:64 -msgid "Certificates (Let's Encrypt)" +#: plinth/modules/letsencrypt/__init__.py:40 +msgid "Let's Encrypt" msgstr "" -#: plinth/modules/letsencrypt/__init__.py:43 +#: plinth/modules/letsencrypt/__init__.py:42 +#, fuzzy +#| msgid "No certficate" +msgid "Certificates" +msgstr "Tidak ada Sertifikat" + +#: plinth/modules/letsencrypt/__init__.py:46 #, python-brace-format msgid "" "A digital certificate allows users of a web service to verify the identity " @@ -1202,7 +1275,7 @@ msgid "" "Encrypt, a certificate authority (CA)." msgstr "" -#: plinth/modules/letsencrypt/__init__.py:50 +#: plinth/modules/letsencrypt/__init__.py:53 msgid "" "Let's Encrypt is a free, automated, and open certificate authority, run for " "the public's benefit by the Internet Security Research Group (ISRG). Please " @@ -1226,100 +1299,168 @@ msgstr "Keamanan Website" msgid "Actions" msgstr "Aksi" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:56 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:62 #, python-format msgid "Valid, expires on %(expiry_date)s" msgstr "" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:63 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:69 msgid "Revoked" msgstr "" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:67 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:73 #, python-format msgid "Expired on %(expiry_date)s" msgstr "" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:71 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:77 #, fuzzy #| msgid "No certficate" msgid "Invalid test certificate" msgstr "Tidak ada Sertifikat" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:75 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:81 #, python-format msgid "Invalid (%(reason)s)" msgstr "" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:82 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:88 #, fuzzy #| msgid "No certficate" msgid "No certificate" msgstr "Tidak ada Sertifikat" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:99 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:105 msgid "Re-obtain" msgstr "" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:105 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:111 #: plinth/modules/networks/templates/connection_show.html:63 #: plinth/modules/snapshot/templates/snapshot.html:34 msgid "Delete" msgstr "Hapus" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:112 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:118 msgid "Revoke" msgstr "" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:120 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:126 msgid "Obtain" msgstr "" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:133 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:149 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:156 +#, fuzzy +#| msgid "Update URL" +msgid "Update config" +msgstr "Perbaharui URL" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:161 +#, python-format +msgid "" +"\n" +" Let Plinth manage certificate renewal of\n" +" %(current_domain)s (recommended)\n" +" " +msgstr "" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:166 +msgid "" +"\n" +" Let Plinth manage certificate renewal of the current domain " +"(recommended)\n" +" " +msgstr "" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:175 +#, python-format +msgid "" +"If %(box_name)s manages the certificate renewal for the current domain, it " +"will ensure that all apps that use the certificate can use it, as soon as it " +"gets renewed." +msgstr "" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:181 +msgid "" +"No certificate available for the current domain. First obtain a " +"certificate to enable management of its renewal." +msgstr "" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:186 +msgid "" +"No current domain is configured. First configure a domain to enable " +"management of its certificates." +msgstr "" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:195 msgid "" "No domains have been configured. Configure domains to be able to obtain " "certificates for them." msgstr "" -#: plinth/modules/letsencrypt/views.py:55 +#: plinth/modules/letsencrypt/views.py:57 #, python-brace-format msgid "" "Certificate successfully revoked for domain {domain}.This may take a few " "moments to take effect." msgstr "" -#: plinth/modules/letsencrypt/views.py:61 +#: plinth/modules/letsencrypt/views.py:63 #, python-brace-format msgid "Failed to revoke certificate for domain {domain}: {error}" msgstr "" -#: plinth/modules/letsencrypt/views.py:73 +#: plinth/modules/letsencrypt/views.py:75 #, python-brace-format msgid "Certificate successfully obtained for domain {domain}" msgstr "" -#: plinth/modules/letsencrypt/views.py:78 +#: plinth/modules/letsencrypt/views.py:81 #, python-brace-format msgid "Failed to obtain certificate for domain {domain}: {error}" msgstr "" #: plinth/modules/letsencrypt/views.py:90 +#: plinth/modules/letsencrypt/views.py:109 +#, python-brace-format +msgid "Certificate renewal management enabled for {domain}." +msgstr "" + +#: plinth/modules/letsencrypt/views.py:95 +#, python-brace-format +msgid "Failed to enable certificate renewal management for {domain}: {error}" +msgstr "" + +#: plinth/modules/letsencrypt/views.py:112 +#, python-brace-format +msgid "Certificate renewal management disabled for {domain}." +msgstr "" + +#: plinth/modules/letsencrypt/views.py:118 +#, python-brace-format +msgid "Failed to switch certificate renewal management for {domain}: {error}" +msgstr "" + +#: plinth/modules/letsencrypt/views.py:134 +#, python-brace-format +msgid "Failed to disable certificate renewal management for {domain}: {error}" +msgstr "" + +#: plinth/modules/letsencrypt/views.py:141 #, python-brace-format msgid "Certificate successfully deleted for domain {domain}" msgstr "" -#: plinth/modules/letsencrypt/views.py:95 +#: plinth/modules/letsencrypt/views.py:146 #, python-brace-format msgid "Failed to delete certificate for domain {domain}: {error}" msgstr "" #: plinth/modules/matrixsynapse/__init__.py:41 -msgid "" -"Chat Server \n" -" (Matrix Synapse)" +msgid "Matrix Synapse" msgstr "" -#: plinth/modules/matrixsynapse/__init__.py:44 +#: plinth/modules/matrixsynapse/__init__.py:46 msgid "" "Matrix is an new " "ecosystem for open, federated instant messaging and VoIP. Synapse is a " @@ -1329,17 +1470,13 @@ msgid "" "converse with users on all other Matrix servers via federation." msgstr "" -#: plinth/modules/matrixsynapse/__init__.py:52 +#: plinth/modules/matrixsynapse/__init__.py:54 msgid "" "To communicate, you can use the available clients for mobile, desktop and the web. Riot client is recommended." msgstr "" -#: plinth/modules/matrixsynapse/forms.py:31 -msgid "Select the domain name" -msgstr "" - #: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:34 msgid "" "Matrix service needs to be configured for a domain. Users on other Matrix " @@ -1371,12 +1508,14 @@ msgid "" msgstr "" #: plinth/modules/minetest/__init__.py:48 -msgid "" -"Block Sandbox \n" -" (Minetest)" +msgid "Minetest" msgstr "" -#: plinth/modules/minetest/__init__.py:52 +#: plinth/modules/minetest/__init__.py:50 +msgid "Block Sandbox" +msgstr "" + +#: plinth/modules/minetest/__init__.py:54 #, python-brace-format msgid "" "Minetest is a multiplayer infinite-world block sandbox. This module enables " @@ -1498,7 +1637,7 @@ msgstr "Secure Shell" #: plinth/modules/monkeysphere/templates/monkeysphere.html:87 #: plinth/modules/monkeysphere/templates/monkeysphere_details.html:60 -#: plinth/service.py:117 +#: plinth/service.py:116 msgid "Web Server" msgstr "Server Web" @@ -1595,20 +1734,22 @@ msgid "Error occurred while publishing key." msgstr "" #: plinth/modules/mumble/__init__.py:35 +msgid "Mumble" +msgstr "" + +#: plinth/modules/mumble/__init__.py:37 #, fuzzy #| msgid "Voice Chat (Mumble)" -msgid "" -"Voice Chat \n" -" (Mumble)" +msgid "Voice Chat" msgstr "Pesan Suara (Mumble)" -#: plinth/modules/mumble/__init__.py:44 +#: plinth/modules/mumble/__init__.py:46 msgid "" "Mumble is an open source, low-latency, encrypted, high quality voice chat " "software." msgstr "" -#: plinth/modules/mumble/__init__.py:47 +#: plinth/modules/mumble/__init__.py:49 msgid "" "You can connect to your Mumble server on the regular Mumble port 64738. Clients to connect to Mumble from your " @@ -2098,7 +2239,7 @@ msgid "This connection is not active." msgstr "" #: plinth/modules/networks/templates/connection_show.html:266 -#: plinth/modules/security/__init__.py:32 plinth/modules/security/views.py:46 +#: plinth/modules/security/__init__.py:32 plinth/modules/security/views.py:48 msgid "Security" msgstr "" @@ -2194,12 +2335,16 @@ msgid "Inactive" msgstr "" #: plinth/modules/openvpn/__init__.py:42 -msgid "" -"Virtual Private Network \n" -" (OpenVPN)" +#, fuzzy +#| msgid "Open" +msgid "OpenVPN" +msgstr "Open" + +#: plinth/modules/openvpn/__init__.py:44 +msgid "Virtual Private Network" msgstr "" -#: plinth/modules/openvpn/__init__.py:46 +#: plinth/modules/openvpn/__init__.py:48 #, python-brace-format msgid "" "Virtual Private Network (VPN) is a technique for securely connecting two " @@ -2210,7 +2355,7 @@ msgid "" "security and anonymity." msgstr "" -#: plinth/modules/openvpn/__init__.py:84 +#: plinth/modules/openvpn/__init__.py:86 #, python-brace-format msgid "" "Download Profile" @@ -2285,10 +2430,16 @@ msgid "Setup failed." msgstr "Pengaturan gagal." #: plinth/modules/pagekite/__init__.py:44 -msgid "Public Visibility (PageKite)" +#, fuzzy +#| msgid "Pagekite" +msgid "PageKite" +msgstr "Pagekite" + +#: plinth/modules/pagekite/__init__.py:46 +msgid "Public Visibility" msgstr "" -#: plinth/modules/pagekite/__init__.py:48 +#: plinth/modules/pagekite/__init__.py:50 #, python-brace-format msgid "" "PageKite is a system for exposing {box_name} services when you don't have a " @@ -2297,33 +2448,33 @@ msgid "" "following situations:" msgstr "" -#: plinth/modules/pagekite/__init__.py:55 +#: plinth/modules/pagekite/__init__.py:57 #, python-brace-format msgid "{box_name} is behind a restricted firewall." msgstr "" -#: plinth/modules/pagekite/__init__.py:59 +#: plinth/modules/pagekite/__init__.py:61 #, python-brace-format msgid "{box_name} is connected to a (wireless) router which you don't control." msgstr "" -#: plinth/modules/pagekite/__init__.py:62 +#: plinth/modules/pagekite/__init__.py:64 msgid "" "Your ISP does not provide you an external IP address and instead provides " "Internet connection through NAT." msgstr "" -#: plinth/modules/pagekite/__init__.py:65 +#: plinth/modules/pagekite/__init__.py:67 msgid "" "Your ISP does not provide you a static IP address and your IP address " "changes evertime you connect to Internet." msgstr "" -#: plinth/modules/pagekite/__init__.py:68 +#: plinth/modules/pagekite/__init__.py:70 msgid "Your ISP limits incoming connections." msgstr "" -#: plinth/modules/pagekite/__init__.py:71 +#: plinth/modules/pagekite/__init__.py:73 #, python-brace-format msgid "" "PageKite works around NAT, firewalls and IP-address limitations by using a " @@ -2599,8 +2750,8 @@ msgstr "Kostumisasi Layanan" msgid "Pagekite setup finished. The HTTP and HTTPS services are activated now." msgstr "" -#: plinth/modules/power/__init__.py:28 plinth/modules/power/views.py:50 -#: plinth/modules/power/views.py:65 +#: plinth/modules/power/__init__.py:28 plinth/modules/power/views.py:51 +#: plinth/modules/power/views.py:67 msgid "Power" msgstr "" @@ -2609,10 +2760,16 @@ msgid "Restart or shut down the system." msgstr "Jalankan ulang atau matikan sistem." #: plinth/modules/power/templates/power.html:28 +msgid "" +"Currently an installation or upgrade is running. Consider waiting until it's " +"finished before shutting down or restarting." +msgstr "" + +#: plinth/modules/power/templates/power.html:37 msgid "Restart »" msgstr "Jalankan ulang »" -#: plinth/modules/power/templates/power.html:31 +#: plinth/modules/power/templates/power.html:40 msgid "Shut Down »" msgstr "Matikan »" @@ -2622,7 +2779,14 @@ msgid "" "interface for a few minutes until the system is restarted." msgstr "" -#: plinth/modules/power/templates/power_restart.html:42 +#: plinth/modules/power/templates/power_restart.html:38 +msgid "" +"Currently an installation or upgrade is running. Consider waiting until it's " +"finished before restarting." +msgstr "" + +#: plinth/modules/power/templates/power_restart.html:52 +#: plinth/modules/power/templates/power_restart.html:55 msgid "Restart Now" msgstr "Jalankan ulang Sekarang" @@ -2632,26 +2796,35 @@ msgid "" "interface after shut down." msgstr "" -#: plinth/modules/power/templates/power_shutdown.html:41 +#: plinth/modules/power/templates/power_shutdown.html:37 +msgid "" +"Currently an installation or upgrade is running. Consider waiting until it's " +"finished before shutting down." +msgstr "" + +#: plinth/modules/power/templates/power_shutdown.html:51 +#: plinth/modules/power/templates/power_shutdown.html:54 msgid "Shut Down Now" msgstr "Matikan Sekarang" #: plinth/modules/privoxy/__init__.py:43 +msgid "Privoxy" +msgstr "" + +#: plinth/modules/privoxy/__init__.py:45 #, fuzzy #| msgid "Web Proxy (Privoxy)" -msgid "" -"Web Proxy \n" -" (Privoxy)" +msgid "Web Proxy" msgstr "Web Proxy (Privoxy)" -#: plinth/modules/privoxy/__init__.py:46 +#: plinth/modules/privoxy/__init__.py:48 msgid "" "Privoxy is a non-caching web proxy with advanced filtering capabilities for " "enhancing privacy, modifying web page data and HTTP headers, controlling " "access, and removing ads and other obnoxious Internet junk. " msgstr "" -#: plinth/modules/privoxy/__init__.py:52 +#: plinth/modules/privoxy/__init__.py:54 #, python-brace-format msgid "" "You can use Privoxy by modifying your browser proxy settings to your " @@ -2661,18 +2834,20 @@ msgid "" "\">http://p.p." msgstr "" -#: plinth/modules/privoxy/__init__.py:144 +#: plinth/modules/privoxy/__init__.py:147 #, python-brace-format msgid "Access {url} with proxy {proxy} on tcp{kind}" msgstr "" #: plinth/modules/quassel/__init__.py:42 -msgid "" -"IRC Client \n" -" (Quassel)" +msgid "Quassel" msgstr "" -#: plinth/modules/quassel/__init__.py:46 +#: plinth/modules/quassel/__init__.py:44 +msgid "IRC Client" +msgstr "" + +#: plinth/modules/quassel/__init__.py:48 #, python-brace-format msgid "" "Quassel is an IRC application that is split into two parts, a \"core\" and a " @@ -2683,7 +2858,7 @@ msgid "" "connect and disconnect from it." msgstr "" -#: plinth/modules/quassel/__init__.py:54 +#: plinth/modules/quassel/__init__.py:56 msgid "" "You can connect to your Quassel core on the default Quassel port 4242. " "Clients to connect to Quassel from your supported " -"client application is needed. Radicale can be accessed by any user with " -"a {box_name} login." +"radicale.org/clients/\">supported client application is needed. Radicale " +"can be accessed by any user with a {box_name} login." msgstr "" #: plinth/modules/radicale/forms.py:28 @@ -2726,14 +2902,16 @@ msgid "Access rights configuration updated" msgstr "" #: plinth/modules/repro/__init__.py:38 -#, fuzzy -#| msgid "SIP Server (repro)" -msgid "" -"SIP Server \n" -" (repro)" -msgstr "Server SIP (repro)" +msgid "repro" +msgstr "" -#: plinth/modules/repro/__init__.py:41 +#: plinth/modules/repro/__init__.py:40 +#, fuzzy +#| msgid "DNS Server" +msgid "SIP Server" +msgstr "DNS Server" + +#: plinth/modules/repro/__init__.py:43 msgid "" "repro provides various SIP services that a SIP softphone can utilize to " "provide audio and video calls as well as presence and instant messaging. " @@ -2742,7 +2920,7 @@ msgid "" "communications to other servers on the Internet similar to email." msgstr "" -#: plinth/modules/repro/__init__.py:48 +#: plinth/modules/repro/__init__.py:50 msgid "" "To make SIP calls, a client application is needed. Available clients include " "Jitsi (for computers) and (for Android phones)." msgstr "" -#: plinth/modules/repro/__init__.py:53 +#: plinth/modules/repro/__init__.py:55 msgid "" "Note: Before using repro, domains and users will need to " "be configured using the web-based " @@ -2760,12 +2938,14 @@ msgid "" msgstr "" #: plinth/modules/restore/__init__.py:36 -msgid "" -"Unhosted Storage \n" -" (reStore)" +msgid "reStore" msgstr "" -#: plinth/modules/restore/__init__.py:40 +#: plinth/modules/restore/__init__.py:38 +msgid "Unhosted Storage" +msgstr "" + +#: plinth/modules/restore/__init__.py:42 #, python-brace-format msgid "" "reStore is a server for unhosted web " @@ -2775,19 +2955,21 @@ msgid "" "becomes your unhosted storage server." msgstr "" -#: plinth/modules/restore/__init__.py:47 +#: plinth/modules/restore/__init__.py:49 msgid "" "You can create and edit accounts in the reStore web-" "interface." msgstr "" #: plinth/modules/roundcube/__init__.py:35 -msgid "" -"Email Client \n" -" (Roundcube)" +msgid "Roundcube" msgstr "" -#: plinth/modules/roundcube/__init__.py:38 +#: plinth/modules/roundcube/__init__.py:37 +msgid "Email Client" +msgstr "" + +#: plinth/modules/roundcube/__init__.py:40 msgid "" "Roundcube webmail is a browser-based multilingual IMAP client with an " "application-like user interface. It provides full functionality you expect " @@ -2795,7 +2977,7 @@ msgid "" "manipulation, message searching and spell checking." msgstr "" -#: plinth/modules/roundcube/__init__.py:44 +#: plinth/modules/roundcube/__init__.py:46 msgid "" "You can access Roundcube from /roundcube. Provide " "the username and password of the email account you wish to access followed " @@ -2804,7 +2986,7 @@ msgid "" "server field like imaps://imap.example.com." msgstr "" -#: plinth/modules/roundcube/__init__.py:51 +#: plinth/modules/roundcube/__init__.py:53 msgid "" "For Gmail, username will be your Gmail address, password will be your Google " "account password and server will be imaps://imap.gmail.com. " @@ -2825,26 +3007,39 @@ msgid "" "services without further authorization." msgstr "" -#: plinth/modules/security/views.py:63 +#: plinth/modules/security/forms.py:35 +msgid "Fail2ban (recommended)" +msgstr "" + +#: plinth/modules/security/forms.py:36 +msgid "" +"When this option is enabled, fail2ban will limit brute force break-in " +"attempts to the SSH server and other password protected internet-services " +"which are enabled." +msgstr "" + +#: plinth/modules/security/views.py:66 #, python-brace-format msgid "Error setting restricted access: {exception}" msgstr "" -#: plinth/modules/security/views.py:66 +#: plinth/modules/security/views.py:69 msgid "Updated security configuration" msgstr "" #: plinth/modules/shaarli/__init__.py:35 -msgid "" -"Bookmarks \n" -" (Shaarli)" +msgid "Shaarli" msgstr "" -#: plinth/modules/shaarli/__init__.py:38 -msgid "Shaarli allows you to save and share bookmarks." +#: plinth/modules/shaarli/__init__.py:37 +msgid "Bookmarks" msgstr "" #: plinth/modules/shaarli/__init__.py:40 +msgid "Shaarli allows you to save and share bookmarks." +msgstr "" + +#: plinth/modules/shaarli/__init__.py:42 msgid "" "When enabled, Shaarli will be available from /shaarli path on the web server. Note that Shaarli only supports a single user " @@ -2957,6 +3152,18 @@ msgstr "" msgid "Rollback to Snapshot" msgstr "" +#: plinth/modules/ssh/__init__.py:37 +msgid "Secure Shell (SSH) Server" +msgstr "" + +#: plinth/modules/ssh/__init__.py:40 +msgid "" +"A Secure Shell server uses the secure shell protocol to accept connections " +"from remote computers. An authorized remote computer can perform " +"administration tasks, copy files or run other services using such " +"connections." +msgstr "" + #: plinth/modules/sso/__init__.py:30 msgid "Single Sign On" msgstr "" @@ -2966,12 +3173,14 @@ msgid "Login" msgstr "" #: plinth/modules/syncthing/__init__.py:39 -msgid "" -"File Synchronization \n" -" (Syncthing)" +msgid "Syncthing" msgstr "" -#: plinth/modules/syncthing/__init__.py:42 +#: plinth/modules/syncthing/__init__.py:41 +msgid "File Synchronization" +msgstr "" + +#: plinth/modules/syncthing/__init__.py:44 msgid "" "Syncthing is an application to synchronize files across multiple devices, e." "g. your desktop computer and mobile phone. Creation, modification, or " @@ -2979,7 +3188,7 @@ msgid "" "other devices that also run Syncthing." msgstr "" -#: plinth/modules/syncthing/__init__.py:47 +#: plinth/modules/syncthing/__init__.py:49 #, python-brace-format msgid "" "Running Syncthing on {box_name} provides an extra synchronization point for " @@ -2990,7 +3199,7 @@ msgid "" "{box_name} is only available for users belonging to the \"admin\" group." msgstr "" -#: plinth/modules/syncthing/__init__.py:54 +#: plinth/modules/syncthing/__init__.py:56 msgid "" "When enabled, Syncthing's web interface will be available from /syncthing. Desktop and mobile clients are also Tor Project website. For " @@ -3065,36 +3288,36 @@ msgid "" "\">Tor Browser." msgstr "" -#: plinth/modules/tor/__init__.py:70 plinth/modules/tor/__init__.py:112 +#: plinth/modules/tor/__init__.py:72 plinth/modules/tor/__init__.py:114 msgid "Tor Anonymity Network" msgstr "" -#: plinth/modules/tor/__init__.py:76 plinth/modules/tor/__init__.py:120 +#: plinth/modules/tor/__init__.py:78 plinth/modules/tor/__init__.py:122 msgid "Tor Bridge Relay" msgstr "" -#: plinth/modules/tor/__init__.py:98 plinth/modules/tor/__init__.py:141 +#: plinth/modules/tor/__init__.py:100 plinth/modules/tor/__init__.py:143 msgid "Tor Hidden Service" msgstr "" -#: plinth/modules/tor/__init__.py:160 +#: plinth/modules/tor/__init__.py:162 msgid "Tor relay port available" msgstr "" -#: plinth/modules/tor/__init__.py:168 +#: plinth/modules/tor/__init__.py:170 msgid "Obfs3 transport registered" msgstr "" -#: plinth/modules/tor/__init__.py:174 +#: plinth/modules/tor/__init__.py:176 msgid "Obfs4 transport registered" msgstr "" -#: plinth/modules/tor/__init__.py:211 +#: plinth/modules/tor/__init__.py:213 #, python-brace-format msgid "Access URL {url} on tcp{kind} via Tor" msgstr "" -#: plinth/modules/tor/__init__.py:222 +#: plinth/modules/tor/__init__.py:224 #, python-brace-format msgid "Confirm Tor usage at {url} on tcp{kind}" msgstr "" @@ -3238,18 +3461,20 @@ msgid "An error occurred during configuration." msgstr "" #: plinth/modules/transmission/__init__.py:38 -msgid "" -"BitTorrent \n" -" (Transmission)" +msgid "Transmission" msgstr "" -#: plinth/modules/transmission/__init__.py:41 +#: plinth/modules/transmission/__init__.py:40 +msgid "BitTorrent" +msgstr "" + +#: plinth/modules/transmission/__init__.py:43 msgid "" "BitTorrent is a peer-to-peer file sharing protocol. Transmission daemon " "handles Bitorrent file sharing. Note that BitTorrent is not anonymous." msgstr "" -#: plinth/modules/transmission/__init__.py:44 +#: plinth/modules/transmission/__init__.py:46 msgid "" "Access the web interface at /transmission." msgstr "" @@ -3275,23 +3500,27 @@ msgid "" "hashed format. To set a new password, enter the password in plain text." msgstr "" -#: plinth/modules/ttrss/__init__.py:37 -msgid "" -"News Feed Reader \n" -" (Tiny Tiny RSS)" +#: plinth/modules/ttrss/__init__.py:39 +msgid "Tiny Tiny RSS" msgstr "" -#: plinth/modules/ttrss/__init__.py:40 +#: plinth/modules/ttrss/__init__.py:41 +msgid "News Feed Reader" +msgstr "" + +#: plinth/modules/ttrss/__init__.py:44 msgid "" "Tiny Tiny RSS is a news feed (RSS/Atom) reader and aggregator, designed to " "allow reading news from any location, while feeling as close to a real " "desktop application as possible." msgstr "" -#: plinth/modules/ttrss/__init__.py:44 +#: plinth/modules/ttrss/__init__.py:49 +#, python-brace-format msgid "" "When enabled, Tiny Tiny RSS will be available from /tt-" -"rss path on the web server." +"rss path on the web server. It can be accessed by any user with a {box_name} login." msgstr "" #: plinth/modules/upgrades/__init__.py:35 @@ -3585,15 +3814,11 @@ msgstr "" msgid "configuration file: {file}" msgstr "" -#: plinth/service.py:119 +#: plinth/service.py:118 msgid "Web Server over Secure Socket Layer" msgstr "" -#: plinth/service.py:121 -msgid "Secure Shell (SSH) Server" -msgstr "" - -#: plinth/service.py:123 +#: plinth/service.py:120 #, python-brace-format msgid "{box_name} Web Interface (Plinth)" msgstr "" @@ -3636,11 +3861,11 @@ msgid "" "\"%(status_log_url)s\">status log to the bug report." msgstr "" -#: plinth/templates/apps.html:25 +#: plinth/templates/apps.html:33 msgid "Services and Applications" msgstr "Layanan dan Aplikasi" -#: plinth/templates/apps.html:28 +#: plinth/templates/apps.html:36 #, python-format msgid "" "You can install and run various services and applications on your " @@ -3648,7 +3873,7 @@ msgid "" "of the application and choose to install it." msgstr "" -#: plinth/templates/apps.html:36 +#: plinth/templates/apps.html:44 msgid "" "This box can be your photo sharing site, your instant messaging site, your " "social networking site, your news site. Remember web portals? We can be " @@ -3816,21 +4041,31 @@ msgstr "" msgid "%(percentage)s%% complete" msgstr "" -#: plinth/templates/system.html:25 +#: plinth/templates/system.html:33 msgid "System Configuration" msgstr "Pengaturan Sistem" -#: plinth/templates/system.html:28 +#: plinth/templates/system.html:36 #, python-format msgid "Here you can administrate the underlying system of your %(box_name)s." msgstr "" -#: plinth/templates/system.html:34 +#: plinth/templates/system.html:42 #, python-format msgid "" "The options affect the %(box_name)s at its most general level, so be careful!" msgstr "" +#~ msgid "Wiki and Blog (ikiwiki)" +#~ msgstr "Wiki dan Blog (ikiwiki)" + +#, fuzzy +#~| msgid "SIP Server (repro)" +#~ msgid "" +#~ "SIP Server \n" +#~ " (repro)" +#~ msgstr "Server SIP (repro)" + #~ msgid "Applications" #~ msgstr "Aplikasi" @@ -3840,9 +4075,6 @@ msgstr "" #~ msgid "Current Network Configuration" #~ msgstr "Pengaturan Jaringan saat ini" -#~ msgid "Go to Networks" -#~ msgstr "Pergi ke Pengaturan Jaringan" - #~ msgid "Apply changes" #~ msgstr "Terapkan perubahan" diff --git a/plinth/locale/it/LC_MESSAGES/django.po b/plinth/locale/it/LC_MESSAGES/django.po index 8cd925ac6..c1210c4aa 100644 --- a/plinth/locale/it/LC_MESSAGES/django.po +++ b/plinth/locale/it/LC_MESSAGES/django.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2017-07-10 22:56-0400\n" +"POT-Creation-Date: 2017-09-24 11:24-0400\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -18,37 +18,37 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: plinth/action_utils.py:254 +#: plinth/action_utils.py:259 #, python-brace-format msgid "Listening on {kind} port {listen_address}:{port}" msgstr "" -#: plinth/action_utils.py:257 +#: plinth/action_utils.py:262 #, python-brace-format msgid "Listening on {kind} port {port}" msgstr "" -#: plinth/action_utils.py:352 +#: plinth/action_utils.py:357 #, python-brace-format msgid "Access URL {url} on tcp{kind}" msgstr "" -#: plinth/action_utils.py:356 +#: plinth/action_utils.py:361 #, python-brace-format msgid "Access URL {url}" msgstr "" -#: plinth/action_utils.py:386 +#: plinth/action_utils.py:391 #, python-brace-format msgid "Connect to {host}:{port}" msgstr "" -#: plinth/action_utils.py:389 +#: plinth/action_utils.py:394 #, python-brace-format msgid "Cannot connect to {host}:{port}" msgstr "" -#: plinth/context_processors.py:38 plinth/views.py:49 +#: plinth/context_processors.py:38 plinth/views.py:52 msgid "FreedomBox" msgstr "" @@ -57,7 +57,13 @@ msgid "Enable application" msgstr "" #: plinth/forms.py:45 -msgid "Select the domain name to be used for this application" +msgid "Select a domain name to be used with this application" +msgstr "" + +#: plinth/forms.py:47 +msgid "" +"Warning! The application may not work properly if domain name is changed " +"later." msgstr "" #: plinth/middleware.py:71 @@ -90,19 +96,21 @@ msgid "" msgstr "" #: plinth/modules/bind/__init__.py:34 -msgid "" -"Domain Name Server \n" -" (BIND)" +msgid "BIND" msgstr "" -#: plinth/modules/bind/__init__.py:43 +#: plinth/modules/bind/__init__.py:36 +msgid "Domain Name Server" +msgstr "" + +#: plinth/modules/bind/__init__.py:45 msgid "" "BIND is open source software that enables you to publish your Domain Name " "System (DNS) information on the Internet, and to resolve DNS queries for " "your users." msgstr "" -#: plinth/modules/bind/__init__.py:47 +#: plinth/modules/bind/__init__.py:49 msgid "" "BIND is by far the most widely used DNS software on the Internet, providing " "a robust and stable platform on top of which organizations can build " @@ -147,7 +155,7 @@ msgid "Enable forwarding to set forwarding DNS servers" msgstr "" #: plinth/modules/config/config.py:88 plinth/modules/config/config.py:125 -#: plinth/modules/dynamicdns/dynamicdns.py:140 +#: plinth/modules/dynamicdns/dynamicdns.py:148 msgid "Invalid domain name" msgstr "" @@ -170,7 +178,7 @@ msgstr "" #: plinth/modules/config/config.py:112 plinth/modules/config/config.py:169 #: plinth/modules/config/config.py:285 -#: plinth/modules/dynamicdns/dynamicdns.py:135 +#: plinth/modules/dynamicdns/dynamicdns.py:143 msgid "Domain Name" msgstr "" @@ -194,7 +202,7 @@ msgid "Language for this web administration interface" msgstr "" #: plinth/modules/config/config.py:151 -#: plinth/modules/dynamicdns/dynamicdns.py:37 +#: plinth/modules/dynamicdns/dynamicdns.py:45 #: plinth/modules/ikiwiki/views.py:37 #: plinth/modules/tahoe/templates/tahoe-pre-setup.html:39 msgid "Configure" @@ -274,16 +282,18 @@ msgid "Time zone set" msgstr "" #: plinth/modules/deluge/__init__.py:39 -msgid "" -"BitTorrent Web Client \n" -" (Deluge)" +msgid "Deluge" msgstr "" -#: plinth/modules/deluge/__init__.py:42 -msgid "Deluge is a BitTorrent client that features a Web UI." +#: plinth/modules/deluge/__init__.py:41 +msgid "BitTorrent Web Client" msgstr "" #: plinth/modules/deluge/__init__.py:44 +msgid "Deluge is a BitTorrent client that features a Web UI." +msgstr "" + +#: plinth/modules/deluge/__init__.py:46 msgid "" "When enabled, the Deluge web client will be available from /deluge path on the web server. The default password is 'deluge', but " @@ -344,19 +354,22 @@ msgstr "" msgid "Result" msgstr "" -#: plinth/modules/diaspora/__init__.py:61 +#: plinth/modules/diaspora/__init__.py:51 +msgid "diaspora*" +msgstr "" + +#: plinth/modules/diaspora/__init__.py:53 +msgid "Federated Social Network" +msgstr "" + +#: plinth/modules/diaspora/__init__.py:62 msgid "" "diaspora* is a decentralized social network where you can store and control " "your own data." msgstr "" -#: plinth/modules/diaspora/forms.py:30 -msgid "Select the domain name to be used for diaspora*" -msgstr "" - -#: plinth/modules/diaspora/forms.py:32 -msgid "" -"Warning! Do not change the FreedomBox domain name after setting up diaspora*" +#: plinth/modules/diaspora/forms.py:31 +msgid "Enable new user registrations" msgstr "" #: plinth/modules/diaspora/templates/diaspora-post-setup.html:32 @@ -383,7 +396,21 @@ msgstr "" msgid "Update setup" msgstr "" -#: plinth/modules/disks/__init__.py:33 plinth/modules/disks/views.py:39 +#: plinth/modules/diaspora/views.py:96 plinth/modules/ejabberd/views.py:60 +#: plinth/modules/openvpn/views.py:145 plinth/modules/tor/views.py:134 +#: plinth/views.py:112 +msgid "Setting unchanged" +msgstr "" + +#: plinth/modules/diaspora/views.py:100 +msgid "User registrations enabled" +msgstr "" + +#: plinth/modules/diaspora/views.py:104 +msgid "User registrations disabled" +msgstr "" + +#: plinth/modules/disks/__init__.py:33 plinth/modules/disks/views.py:45 msgid "Disks" msgstr "" @@ -425,7 +452,7 @@ msgstr "" #: plinth/modules/disks/templates/disks.html:90 #: plinth/modules/disks/templates/disks.html:102 #: plinth/modules/disks/templates/disks_expand.html:45 -#: plinth/modules/disks/views.py:56 +#: plinth/modules/disks/views.py:62 msgid "Expand Root Partition" msgstr "" @@ -443,45 +470,52 @@ msgid "" "root partition." msgstr "" -#: plinth/modules/disks/views.py:65 +#: plinth/modules/disks/views.py:71 #, python-brace-format msgid "Error expanding partition: {exception}" msgstr "" -#: plinth/modules/disks/views.py:68 +#: plinth/modules/disks/views.py:74 msgid "Partition expanded successfully." msgstr "" -#: plinth/modules/disks/views.py:77 +#: plinth/modules/disks/views.py:93 +#, python-format, python-brace-format +msgid "" +"Warning: Low space on system partition ({percent_used}% used, {free_space} " +"free)." +msgstr "" + +#: plinth/modules/disks/views.py:130 #, python-brace-format msgid "{disk_size:.1f} bytes" msgstr "" -#: plinth/modules/disks/views.py:81 +#: plinth/modules/disks/views.py:134 #, python-brace-format msgid "{disk_size:.1f} KiB" msgstr "" -#: plinth/modules/disks/views.py:85 +#: plinth/modules/disks/views.py:138 #, python-brace-format msgid "{disk_size:.1f} MiB" msgstr "" -#: plinth/modules/disks/views.py:89 +#: plinth/modules/disks/views.py:142 #, python-brace-format msgid "{disk_size:.1f} GiB" msgstr "" -#: plinth/modules/disks/views.py:92 +#: plinth/modules/disks/views.py:145 #, python-brace-format msgid "{disk_size:.1f} TiB" msgstr "" -#: plinth/modules/dynamicdns/__init__.py:33 +#: plinth/modules/dynamicdns/__init__.py:35 msgid "Dynamic DNS Client" msgstr "" -#: plinth/modules/dynamicdns/__init__.py:37 +#: plinth/modules/dynamicdns/__init__.py:39 #, python-brace-format msgid "" "If your Internet provider changes your IP address periodically (i.e. every " @@ -489,7 +523,7 @@ msgid "" "prevent others from finding services which are provided by this {box_name}." msgstr "" -#: plinth/modules/dynamicdns/__init__.py:43 +#: plinth/modules/dynamicdns/__init__.py:45 msgid "" "The solution is to assign a DNS name to your IP address and update the DNS " "name every time your IP is changed by your Internet provider. Dynamic DNS " @@ -500,11 +534,16 @@ msgid "" "IP address." msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:35 plinth/modules/help/help.py:40 +#: plinth/modules/dynamicdns/__init__.py:67 +#: plinth/modules/dynamicdns/dynamicdns.py:377 +msgid "Dynamic DNS Service" +msgstr "" + +#: plinth/modules/dynamicdns/dynamicdns.py:43 plinth/modules/help/help.py:40 msgid "About" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:39 +#: plinth/modules/dynamicdns/dynamicdns.py:47 #: plinth/modules/firewall/templates/firewall.html:47 #: plinth/modules/networks/templates/connection_show.html:261 #: plinth/modules/openvpn/templates/openvpn.html:67 @@ -513,46 +552,46 @@ msgstr "" msgid "Status" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:63 +#: plinth/modules/dynamicdns/dynamicdns.py:71 msgid "" "The Variables <User>, <Pass>, <Ip>, <Domain> may be " "used within the URL. For details see the update URL templates of the example " "providers." msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:67 +#: plinth/modules/dynamicdns/dynamicdns.py:75 msgid "" "Please choose an update protocol according to your provider. If your " "provider does not support the GnuDIP protocol or your provider is not listed " "you may use the update URL of your provider." msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:72 +#: plinth/modules/dynamicdns/dynamicdns.py:80 msgid "" "Please do not enter a URL here (like \"https://example.com/\") but only the " "hostname of the GnuDIP server (like \"example.com\")." msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:76 +#: plinth/modules/dynamicdns/dynamicdns.py:84 #, python-brace-format msgid "The public domain name you want to use to reach your {box_name}." msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:79 +#: plinth/modules/dynamicdns/dynamicdns.py:87 msgid "Use this option if your provider uses self signed certificates." msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:82 +#: plinth/modules/dynamicdns/dynamicdns.py:90 msgid "" "If this option is selected, your username and password will be used for HTTP " "basic authentication." msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:85 +#: plinth/modules/dynamicdns/dynamicdns.py:93 msgid "Leave this field empty if you want to keep your current password." msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:88 +#: plinth/modules/dynamicdns/dynamicdns.py:96 #, python-brace-format msgid "" "Optional Value. If your {box_name} is not connected directly to the Internet " @@ -561,82 +600,82 @@ msgid "" "(example: http://myip.datasystems24.de)." msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:96 +#: plinth/modules/dynamicdns/dynamicdns.py:104 msgid "The username that was used when the account was created." msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:107 +#: plinth/modules/dynamicdns/dynamicdns.py:115 msgid "Enable Dynamic DNS" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:110 +#: plinth/modules/dynamicdns/dynamicdns.py:118 msgid "Service Type" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:115 +#: plinth/modules/dynamicdns/dynamicdns.py:123 msgid "GnuDIP Server Address" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:120 +#: plinth/modules/dynamicdns/dynamicdns.py:128 msgid "Invalid server name" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:123 +#: plinth/modules/dynamicdns/dynamicdns.py:131 msgid "Update URL" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:127 +#: plinth/modules/dynamicdns/dynamicdns.py:135 msgid "Accept all SSL certificates" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:131 +#: plinth/modules/dynamicdns/dynamicdns.py:139 msgid "Use HTTP basic authentication" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:143 +#: plinth/modules/dynamicdns/dynamicdns.py:151 #: plinth/modules/networks/forms.py:228 plinth/modules/transmission/forms.py:37 msgid "Username" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:146 +#: plinth/modules/dynamicdns/dynamicdns.py:154 #: plinth/modules/networks/forms.py:229 plinth/modules/transmission/forms.py:41 msgid "Password" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:149 +#: plinth/modules/dynamicdns/dynamicdns.py:157 #: plinth/modules/networks/forms.py:231 msgid "Show password" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:153 +#: plinth/modules/dynamicdns/dynamicdns.py:161 msgid "URL to look up public IP" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:179 +#: plinth/modules/dynamicdns/dynamicdns.py:187 msgid "Please provide an update URL or a GnuDIP server address" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:184 +#: plinth/modules/dynamicdns/dynamicdns.py:192 msgid "Please provide a GnuDIP username" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:188 +#: plinth/modules/dynamicdns/dynamicdns.py:196 msgid "Please provide a GnuDIP domain name" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:193 +#: plinth/modules/dynamicdns/dynamicdns.py:201 msgid "Please provide a password" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:211 +#: plinth/modules/dynamicdns/dynamicdns.py:219 msgid "Configure Dynamic DNS" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:232 +#: plinth/modules/dynamicdns/dynamicdns.py:240 msgid "Dynamic DNS Status" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:364 +#: plinth/modules/dynamicdns/dynamicdns.py:381 #: plinth/modules/openvpn/views.py:143 plinth/modules/transmission/views.py:72 msgid "Configuration updated" msgstr "" @@ -691,23 +730,28 @@ msgstr "" msgid "Last update" msgstr "" -#: plinth/modules/ejabberd/__init__.py:42 -msgid "" -"Chat Server \n" -" (ejabberd)" +#: plinth/modules/ejabberd/__init__.py:45 +msgid "ejabberd" msgstr "" -#: plinth/modules/ejabberd/__init__.py:45 +#: plinth/modules/ejabberd/__init__.py:47 +#: plinth/modules/matrixsynapse/__init__.py:43 +msgid "Chat Server" +msgstr "" + +#: plinth/modules/ejabberd/__init__.py:50 msgid "" "XMPP is an open and standardized communication protocol. Here you can run " "and configure your XMPP server, called ejabberd." msgstr "" -#: plinth/modules/ejabberd/__init__.py:48 +#: plinth/modules/ejabberd/__init__.py:54 +#, python-brace-format msgid "" -"To actually communicate, you can use the web client or any other XMPP client." +"To actually communicate, you can use the web " +"client or any other XMPP client. When enabled, ejabberd can be accessed by " +"any user with a {box_name} login." msgstr "" #: plinth/modules/ejabberd/forms.py:33 @@ -745,16 +789,11 @@ msgstr "" msgid "Configuration" msgstr "" -#: plinth/modules/ejabberd/views.py:60 plinth/modules/openvpn/views.py:145 -#: plinth/modules/tor/views.py:134 plinth/views.py:103 -msgid "Setting unchanged" -msgstr "" - -#: plinth/modules/ejabberd/views.py:64 plinth/views.py:107 +#: plinth/modules/ejabberd/views.py:64 plinth/views.py:116 msgid "Application enabled" msgstr "" -#: plinth/modules/ejabberd/views.py:67 plinth/views.py:110 +#: plinth/modules/ejabberd/views.py:67 plinth/views.py:119 msgid "Application disabled" msgstr "" @@ -800,13 +839,13 @@ msgid "Service/Port" msgstr "" #: plinth/modules/firewall/templates/firewall.html:65 -#: plinth/modules/letsencrypt/templates/letsencrypt.html:88 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:94 #: plinth/modules/names/templates/names.html:49 msgid "Enabled" msgstr "" #: plinth/modules/firewall/templates/firewall.html:68 -#: plinth/modules/letsencrypt/templates/letsencrypt.html:90 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:96 #: plinth/modules/names/templates/names.html:51 #: plinth/modules/networks/forms.py:63 msgid "Disabled" @@ -1017,16 +1056,29 @@ msgid "" "before submitting the bug report." msgstr "" -#: plinth/modules/ikiwiki/__init__.py:39 -msgid "Wiki and Blog (ikiwiki)" +#: plinth/modules/ikiwiki/__init__.py:41 +msgid "ikiwiki" msgstr "" -#: plinth/modules/ikiwiki/__init__.py:42 +#: plinth/modules/ikiwiki/__init__.py:43 +msgid "Wiki and Blog" +msgstr "" + +#: plinth/modules/ikiwiki/__init__.py:46 msgid "" "ikiwiki is a simple wiki and blog application. It supports several " "lightweight markup languages, including Markdown, and common blogging " "functionality such as comments and RSS feeds. When enabled, the blogs and " -"wikis will be available from /ikiwiki." +"wikis will be available at /ikiwiki (once created)." +msgstr "" + +#: plinth/modules/ikiwiki/__init__.py:53 +#, python-brace-format +msgid "" +"Only {box_name} users in the admin group can create and " +"manage blogs and wikis, but any user in the wiki group can " +"edit existing ones. In the User " +"Configuration you can change these permissions or add new users." msgstr "" #: plinth/modules/ikiwiki/forms.py:34 @@ -1138,16 +1190,18 @@ msgid "Delete Wiki or Blog" msgstr "" #: plinth/modules/infinoted/__init__.py:43 -msgid "" -"Gobby Server \n" -" (infinoted)" +msgid "infinoted" msgstr "" -#: plinth/modules/infinoted/__init__.py:46 +#: plinth/modules/infinoted/__init__.py:45 +msgid "Gobby Server" +msgstr "" + +#: plinth/modules/infinoted/__init__.py:48 msgid "infinoted is a server for Gobby, a collaborative text editor." msgstr "" -#: plinth/modules/infinoted/__init__.py:49 +#: plinth/modules/infinoted/__init__.py:51 #, python-brace-format msgid "" "To use it, download Gobby, desktop " @@ -1156,29 +1210,34 @@ msgid "" msgstr "" #: plinth/modules/jsxc/__init__.py:36 -msgid "" -"Chat Client \n" -" (JSXC)" +msgid "JSXC" msgstr "" -#: plinth/modules/jsxc/__init__.py:40 +#: plinth/modules/jsxc/__init__.py:38 +msgid "Chat Client" +msgstr "" + +#: plinth/modules/jsxc/__init__.py:42 msgid "" "JSXC is a web client for XMPP. Typically it is used with an XMPP server " "running locally." msgstr "" -#: plinth/modules/jsxc/__init__.py:78 +#: plinth/modules/jsxc/__init__.py:80 msgid "" "Chat Client \n" " (jsxc)" msgstr "" -#: plinth/modules/letsencrypt/__init__.py:39 -#: plinth/modules/letsencrypt/__init__.py:64 -msgid "Certificates (Let's Encrypt)" +#: plinth/modules/letsencrypt/__init__.py:40 +msgid "Let's Encrypt" msgstr "" -#: plinth/modules/letsencrypt/__init__.py:43 +#: plinth/modules/letsencrypt/__init__.py:42 +msgid "Certificates" +msgstr "" + +#: plinth/modules/letsencrypt/__init__.py:46 #, python-brace-format msgid "" "A digital certificate allows users of a web service to verify the identity " @@ -1188,7 +1247,7 @@ msgid "" "Encrypt, a certificate authority (CA)." msgstr "" -#: plinth/modules/letsencrypt/__init__.py:50 +#: plinth/modules/letsencrypt/__init__.py:53 msgid "" "Let's Encrypt is a free, automated, and open certificate authority, run for " "the public's benefit by the Internet Security Research Group (ISRG). Please " @@ -1212,96 +1271,162 @@ msgstr "" msgid "Actions" msgstr "" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:56 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:62 #, python-format msgid "Valid, expires on %(expiry_date)s" msgstr "" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:63 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:69 msgid "Revoked" msgstr "" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:67 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:73 #, python-format msgid "Expired on %(expiry_date)s" msgstr "" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:71 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:77 msgid "Invalid test certificate" msgstr "" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:75 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:81 #, python-format msgid "Invalid (%(reason)s)" msgstr "" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:82 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:88 msgid "No certificate" msgstr "" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:99 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:105 msgid "Re-obtain" msgstr "" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:105 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:111 #: plinth/modules/networks/templates/connection_show.html:63 #: plinth/modules/snapshot/templates/snapshot.html:34 msgid "Delete" msgstr "" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:112 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:118 msgid "Revoke" msgstr "" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:120 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:126 msgid "Obtain" msgstr "" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:133 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:149 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:156 +msgid "Update config" +msgstr "" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:161 +#, python-format +msgid "" +"\n" +" Let Plinth manage certificate renewal of\n" +" %(current_domain)s (recommended)\n" +" " +msgstr "" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:166 +msgid "" +"\n" +" Let Plinth manage certificate renewal of the current domain " +"(recommended)\n" +" " +msgstr "" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:175 +#, python-format +msgid "" +"If %(box_name)s manages the certificate renewal for the current domain, it " +"will ensure that all apps that use the certificate can use it, as soon as it " +"gets renewed." +msgstr "" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:181 +msgid "" +"No certificate available for the current domain. First obtain a " +"certificate to enable management of its renewal." +msgstr "" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:186 +msgid "" +"No current domain is configured. First configure a domain to enable " +"management of its certificates." +msgstr "" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:195 msgid "" "No domains have been configured. Configure domains to be able to obtain " "certificates for them." msgstr "" -#: plinth/modules/letsencrypt/views.py:55 +#: plinth/modules/letsencrypt/views.py:57 #, python-brace-format msgid "" "Certificate successfully revoked for domain {domain}.This may take a few " "moments to take effect." msgstr "" -#: plinth/modules/letsencrypt/views.py:61 +#: plinth/modules/letsencrypt/views.py:63 #, python-brace-format msgid "Failed to revoke certificate for domain {domain}: {error}" msgstr "" -#: plinth/modules/letsencrypt/views.py:73 +#: plinth/modules/letsencrypt/views.py:75 #, python-brace-format msgid "Certificate successfully obtained for domain {domain}" msgstr "" -#: plinth/modules/letsencrypt/views.py:78 +#: plinth/modules/letsencrypt/views.py:81 #, python-brace-format msgid "Failed to obtain certificate for domain {domain}: {error}" msgstr "" #: plinth/modules/letsencrypt/views.py:90 +#: plinth/modules/letsencrypt/views.py:109 +#, python-brace-format +msgid "Certificate renewal management enabled for {domain}." +msgstr "" + +#: plinth/modules/letsencrypt/views.py:95 +#, python-brace-format +msgid "Failed to enable certificate renewal management for {domain}: {error}" +msgstr "" + +#: plinth/modules/letsencrypt/views.py:112 +#, python-brace-format +msgid "Certificate renewal management disabled for {domain}." +msgstr "" + +#: plinth/modules/letsencrypt/views.py:118 +#, python-brace-format +msgid "Failed to switch certificate renewal management for {domain}: {error}" +msgstr "" + +#: plinth/modules/letsencrypt/views.py:134 +#, python-brace-format +msgid "Failed to disable certificate renewal management for {domain}: {error}" +msgstr "" + +#: plinth/modules/letsencrypt/views.py:141 #, python-brace-format msgid "Certificate successfully deleted for domain {domain}" msgstr "" -#: plinth/modules/letsencrypt/views.py:95 +#: plinth/modules/letsencrypt/views.py:146 #, python-brace-format msgid "Failed to delete certificate for domain {domain}: {error}" msgstr "" #: plinth/modules/matrixsynapse/__init__.py:41 -msgid "" -"Chat Server \n" -" (Matrix Synapse)" +msgid "Matrix Synapse" msgstr "" -#: plinth/modules/matrixsynapse/__init__.py:44 +#: plinth/modules/matrixsynapse/__init__.py:46 msgid "" "Matrix is an new " "ecosystem for open, federated instant messaging and VoIP. Synapse is a " @@ -1311,17 +1436,13 @@ msgid "" "converse with users on all other Matrix servers via federation." msgstr "" -#: plinth/modules/matrixsynapse/__init__.py:52 +#: plinth/modules/matrixsynapse/__init__.py:54 msgid "" "To communicate, you can use the available clients for mobile, desktop and the web. Riot client is recommended." msgstr "" -#: plinth/modules/matrixsynapse/forms.py:31 -msgid "Select the domain name" -msgstr "" - #: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:34 msgid "" "Matrix service needs to be configured for a domain. Users on other Matrix " @@ -1353,12 +1474,14 @@ msgid "" msgstr "" #: plinth/modules/minetest/__init__.py:48 -msgid "" -"Block Sandbox \n" -" (Minetest)" +msgid "Minetest" msgstr "" -#: plinth/modules/minetest/__init__.py:52 +#: plinth/modules/minetest/__init__.py:50 +msgid "Block Sandbox" +msgstr "" + +#: plinth/modules/minetest/__init__.py:54 #, python-brace-format msgid "" "Minetest is a multiplayer infinite-world block sandbox. This module enables " @@ -1474,7 +1597,7 @@ msgstr "" #: plinth/modules/monkeysphere/templates/monkeysphere.html:87 #: plinth/modules/monkeysphere/templates/monkeysphere_details.html:60 -#: plinth/service.py:117 +#: plinth/service.py:116 msgid "Web Server" msgstr "" @@ -1571,18 +1694,20 @@ msgid "Error occurred while publishing key." msgstr "" #: plinth/modules/mumble/__init__.py:35 -msgid "" -"Voice Chat \n" -" (Mumble)" +msgid "Mumble" msgstr "" -#: plinth/modules/mumble/__init__.py:44 +#: plinth/modules/mumble/__init__.py:37 +msgid "Voice Chat" +msgstr "" + +#: plinth/modules/mumble/__init__.py:46 msgid "" "Mumble is an open source, low-latency, encrypted, high quality voice chat " "software." msgstr "" -#: plinth/modules/mumble/__init__.py:47 +#: plinth/modules/mumble/__init__.py:49 msgid "" "You can connect to your Mumble server on the regular Mumble port 64738. Clients to connect to Mumble from your " @@ -2070,7 +2195,7 @@ msgid "This connection is not active." msgstr "" #: plinth/modules/networks/templates/connection_show.html:266 -#: plinth/modules/security/__init__.py:32 plinth/modules/security/views.py:46 +#: plinth/modules/security/__init__.py:32 plinth/modules/security/views.py:48 msgid "Security" msgstr "" @@ -2166,12 +2291,14 @@ msgid "Inactive" msgstr "" #: plinth/modules/openvpn/__init__.py:42 -msgid "" -"Virtual Private Network \n" -" (OpenVPN)" +msgid "OpenVPN" msgstr "" -#: plinth/modules/openvpn/__init__.py:46 +#: plinth/modules/openvpn/__init__.py:44 +msgid "Virtual Private Network" +msgstr "" + +#: plinth/modules/openvpn/__init__.py:48 #, python-brace-format msgid "" "Virtual Private Network (VPN) is a technique for securely connecting two " @@ -2182,7 +2309,7 @@ msgid "" "security and anonymity." msgstr "" -#: plinth/modules/openvpn/__init__.py:84 +#: plinth/modules/openvpn/__init__.py:86 #, python-brace-format msgid "" "Download Profile" @@ -2257,10 +2384,14 @@ msgid "Setup failed." msgstr "" #: plinth/modules/pagekite/__init__.py:44 -msgid "Public Visibility (PageKite)" +msgid "PageKite" msgstr "" -#: plinth/modules/pagekite/__init__.py:48 +#: plinth/modules/pagekite/__init__.py:46 +msgid "Public Visibility" +msgstr "" + +#: plinth/modules/pagekite/__init__.py:50 #, python-brace-format msgid "" "PageKite is a system for exposing {box_name} services when you don't have a " @@ -2269,33 +2400,33 @@ msgid "" "following situations:" msgstr "" -#: plinth/modules/pagekite/__init__.py:55 +#: plinth/modules/pagekite/__init__.py:57 #, python-brace-format msgid "{box_name} is behind a restricted firewall." msgstr "" -#: plinth/modules/pagekite/__init__.py:59 +#: plinth/modules/pagekite/__init__.py:61 #, python-brace-format msgid "{box_name} is connected to a (wireless) router which you don't control." msgstr "" -#: plinth/modules/pagekite/__init__.py:62 +#: plinth/modules/pagekite/__init__.py:64 msgid "" "Your ISP does not provide you an external IP address and instead provides " "Internet connection through NAT." msgstr "" -#: plinth/modules/pagekite/__init__.py:65 +#: plinth/modules/pagekite/__init__.py:67 msgid "" "Your ISP does not provide you a static IP address and your IP address " "changes evertime you connect to Internet." msgstr "" -#: plinth/modules/pagekite/__init__.py:68 +#: plinth/modules/pagekite/__init__.py:70 msgid "Your ISP limits incoming connections." msgstr "" -#: plinth/modules/pagekite/__init__.py:71 +#: plinth/modules/pagekite/__init__.py:73 #, python-brace-format msgid "" "PageKite works around NAT, firewalls and IP-address limitations by using a " @@ -2571,8 +2702,8 @@ msgstr "" msgid "Pagekite setup finished. The HTTP and HTTPS services are activated now." msgstr "" -#: plinth/modules/power/__init__.py:28 plinth/modules/power/views.py:50 -#: plinth/modules/power/views.py:65 +#: plinth/modules/power/__init__.py:28 plinth/modules/power/views.py:51 +#: plinth/modules/power/views.py:67 msgid "Power" msgstr "" @@ -2581,10 +2712,16 @@ msgid "Restart or shut down the system." msgstr "" #: plinth/modules/power/templates/power.html:28 +msgid "" +"Currently an installation or upgrade is running. Consider waiting until it's " +"finished before shutting down or restarting." +msgstr "" + +#: plinth/modules/power/templates/power.html:37 msgid "Restart »" msgstr "" -#: plinth/modules/power/templates/power.html:31 +#: plinth/modules/power/templates/power.html:40 msgid "Shut Down »" msgstr "" @@ -2594,7 +2731,14 @@ msgid "" "interface for a few minutes until the system is restarted." msgstr "" -#: plinth/modules/power/templates/power_restart.html:42 +#: plinth/modules/power/templates/power_restart.html:38 +msgid "" +"Currently an installation or upgrade is running. Consider waiting until it's " +"finished before restarting." +msgstr "" + +#: plinth/modules/power/templates/power_restart.html:52 +#: plinth/modules/power/templates/power_restart.html:55 msgid "Restart Now" msgstr "" @@ -2604,24 +2748,33 @@ msgid "" "interface after shut down." msgstr "" -#: plinth/modules/power/templates/power_shutdown.html:41 +#: plinth/modules/power/templates/power_shutdown.html:37 +msgid "" +"Currently an installation or upgrade is running. Consider waiting until it's " +"finished before shutting down." +msgstr "" + +#: plinth/modules/power/templates/power_shutdown.html:51 +#: plinth/modules/power/templates/power_shutdown.html:54 msgid "Shut Down Now" msgstr "" #: plinth/modules/privoxy/__init__.py:43 -msgid "" -"Web Proxy \n" -" (Privoxy)" +msgid "Privoxy" msgstr "" -#: plinth/modules/privoxy/__init__.py:46 +#: plinth/modules/privoxy/__init__.py:45 +msgid "Web Proxy" +msgstr "" + +#: plinth/modules/privoxy/__init__.py:48 msgid "" "Privoxy is a non-caching web proxy with advanced filtering capabilities for " "enhancing privacy, modifying web page data and HTTP headers, controlling " "access, and removing ads and other obnoxious Internet junk. " msgstr "" -#: plinth/modules/privoxy/__init__.py:52 +#: plinth/modules/privoxy/__init__.py:54 #, python-brace-format msgid "" "You can use Privoxy by modifying your browser proxy settings to your " @@ -2631,18 +2784,20 @@ msgid "" "\">http://p.p." msgstr "" -#: plinth/modules/privoxy/__init__.py:144 +#: plinth/modules/privoxy/__init__.py:147 #, python-brace-format msgid "Access {url} with proxy {proxy} on tcp{kind}" msgstr "" #: plinth/modules/quassel/__init__.py:42 -msgid "" -"IRC Client \n" -" (Quassel)" +msgid "Quassel" msgstr "" -#: plinth/modules/quassel/__init__.py:46 +#: plinth/modules/quassel/__init__.py:44 +msgid "IRC Client" +msgstr "" + +#: plinth/modules/quassel/__init__.py:48 #, python-brace-format msgid "" "Quassel is an IRC application that is split into two parts, a \"core\" and a " @@ -2653,7 +2808,7 @@ msgid "" "connect and disconnect from it." msgstr "" -#: plinth/modules/quassel/__init__.py:54 +#: plinth/modules/quassel/__init__.py:56 msgid "" "You can connect to your Quassel core on the default Quassel port 4242. " "Clients to connect to Quassel from your supported " -"client application is needed. Radicale can be accessed by any user with " -"a {box_name} login." +"radicale.org/clients/\">supported client application is needed. Radicale " +"can be accessed by any user with a {box_name} login." msgstr "" #: plinth/modules/radicale/forms.py:28 @@ -2696,12 +2852,14 @@ msgid "Access rights configuration updated" msgstr "" #: plinth/modules/repro/__init__.py:38 -msgid "" -"SIP Server \n" -" (repro)" +msgid "repro" msgstr "" -#: plinth/modules/repro/__init__.py:41 +#: plinth/modules/repro/__init__.py:40 +msgid "SIP Server" +msgstr "" + +#: plinth/modules/repro/__init__.py:43 msgid "" "repro provides various SIP services that a SIP softphone can utilize to " "provide audio and video calls as well as presence and instant messaging. " @@ -2710,7 +2868,7 @@ msgid "" "communications to other servers on the Internet similar to email." msgstr "" -#: plinth/modules/repro/__init__.py:48 +#: plinth/modules/repro/__init__.py:50 msgid "" "To make SIP calls, a client application is needed. Available clients include " "Jitsi (for computers) and (for Android phones)." msgstr "" -#: plinth/modules/repro/__init__.py:53 +#: plinth/modules/repro/__init__.py:55 msgid "" "Note: Before using repro, domains and users will need to " "be configured using the web-based " @@ -2728,12 +2886,14 @@ msgid "" msgstr "" #: plinth/modules/restore/__init__.py:36 -msgid "" -"Unhosted Storage \n" -" (reStore)" +msgid "reStore" msgstr "" -#: plinth/modules/restore/__init__.py:40 +#: plinth/modules/restore/__init__.py:38 +msgid "Unhosted Storage" +msgstr "" + +#: plinth/modules/restore/__init__.py:42 #, python-brace-format msgid "" "reStore is a server for unhosted web " @@ -2743,19 +2903,21 @@ msgid "" "becomes your unhosted storage server." msgstr "" -#: plinth/modules/restore/__init__.py:47 +#: plinth/modules/restore/__init__.py:49 msgid "" "You can create and edit accounts in the reStore web-" "interface." msgstr "" #: plinth/modules/roundcube/__init__.py:35 -msgid "" -"Email Client \n" -" (Roundcube)" +msgid "Roundcube" msgstr "" -#: plinth/modules/roundcube/__init__.py:38 +#: plinth/modules/roundcube/__init__.py:37 +msgid "Email Client" +msgstr "" + +#: plinth/modules/roundcube/__init__.py:40 msgid "" "Roundcube webmail is a browser-based multilingual IMAP client with an " "application-like user interface. It provides full functionality you expect " @@ -2763,7 +2925,7 @@ msgid "" "manipulation, message searching and spell checking." msgstr "" -#: plinth/modules/roundcube/__init__.py:44 +#: plinth/modules/roundcube/__init__.py:46 msgid "" "You can access Roundcube from /roundcube. Provide " "the username and password of the email account you wish to access followed " @@ -2772,7 +2934,7 @@ msgid "" "server field like imaps://imap.example.com." msgstr "" -#: plinth/modules/roundcube/__init__.py:51 +#: plinth/modules/roundcube/__init__.py:53 msgid "" "For Gmail, username will be your Gmail address, password will be your Google " "account password and server will be imaps://imap.gmail.com. " @@ -2793,26 +2955,39 @@ msgid "" "services without further authorization." msgstr "" -#: plinth/modules/security/views.py:63 +#: plinth/modules/security/forms.py:35 +msgid "Fail2ban (recommended)" +msgstr "" + +#: plinth/modules/security/forms.py:36 +msgid "" +"When this option is enabled, fail2ban will limit brute force break-in " +"attempts to the SSH server and other password protected internet-services " +"which are enabled." +msgstr "" + +#: plinth/modules/security/views.py:66 #, python-brace-format msgid "Error setting restricted access: {exception}" msgstr "" -#: plinth/modules/security/views.py:66 +#: plinth/modules/security/views.py:69 msgid "Updated security configuration" msgstr "" #: plinth/modules/shaarli/__init__.py:35 -msgid "" -"Bookmarks \n" -" (Shaarli)" +msgid "Shaarli" msgstr "" -#: plinth/modules/shaarli/__init__.py:38 -msgid "Shaarli allows you to save and share bookmarks." +#: plinth/modules/shaarli/__init__.py:37 +msgid "Bookmarks" msgstr "" #: plinth/modules/shaarli/__init__.py:40 +msgid "Shaarli allows you to save and share bookmarks." +msgstr "" + +#: plinth/modules/shaarli/__init__.py:42 msgid "" "When enabled, Shaarli will be available from /shaarli path on the web server. Note that Shaarli only supports a single user " @@ -2925,6 +3100,18 @@ msgstr "" msgid "Rollback to Snapshot" msgstr "" +#: plinth/modules/ssh/__init__.py:37 +msgid "Secure Shell (SSH) Server" +msgstr "" + +#: plinth/modules/ssh/__init__.py:40 +msgid "" +"A Secure Shell server uses the secure shell protocol to accept connections " +"from remote computers. An authorized remote computer can perform " +"administration tasks, copy files or run other services using such " +"connections." +msgstr "" + #: plinth/modules/sso/__init__.py:30 msgid "Single Sign On" msgstr "" @@ -2934,12 +3121,14 @@ msgid "Login" msgstr "" #: plinth/modules/syncthing/__init__.py:39 -msgid "" -"File Synchronization \n" -" (Syncthing)" +msgid "Syncthing" msgstr "" -#: plinth/modules/syncthing/__init__.py:42 +#: plinth/modules/syncthing/__init__.py:41 +msgid "File Synchronization" +msgstr "" + +#: plinth/modules/syncthing/__init__.py:44 msgid "" "Syncthing is an application to synchronize files across multiple devices, e." "g. your desktop computer and mobile phone. Creation, modification, or " @@ -2947,7 +3136,7 @@ msgid "" "other devices that also run Syncthing." msgstr "" -#: plinth/modules/syncthing/__init__.py:47 +#: plinth/modules/syncthing/__init__.py:49 #, python-brace-format msgid "" "Running Syncthing on {box_name} provides an extra synchronization point for " @@ -2958,7 +3147,7 @@ msgid "" "{box_name} is only available for users belonging to the \"admin\" group." msgstr "" -#: plinth/modules/syncthing/__init__.py:54 +#: plinth/modules/syncthing/__init__.py:56 msgid "" "When enabled, Syncthing's web interface will be available from /syncthing. Desktop and mobile clients are also Tor Project website. For " @@ -3029,36 +3230,36 @@ msgid "" "\">Tor Browser." msgstr "" -#: plinth/modules/tor/__init__.py:70 plinth/modules/tor/__init__.py:112 +#: plinth/modules/tor/__init__.py:72 plinth/modules/tor/__init__.py:114 msgid "Tor Anonymity Network" msgstr "" -#: plinth/modules/tor/__init__.py:76 plinth/modules/tor/__init__.py:120 +#: plinth/modules/tor/__init__.py:78 plinth/modules/tor/__init__.py:122 msgid "Tor Bridge Relay" msgstr "" -#: plinth/modules/tor/__init__.py:98 plinth/modules/tor/__init__.py:141 +#: plinth/modules/tor/__init__.py:100 plinth/modules/tor/__init__.py:143 msgid "Tor Hidden Service" msgstr "" -#: plinth/modules/tor/__init__.py:160 +#: plinth/modules/tor/__init__.py:162 msgid "Tor relay port available" msgstr "" -#: plinth/modules/tor/__init__.py:168 +#: plinth/modules/tor/__init__.py:170 msgid "Obfs3 transport registered" msgstr "" -#: plinth/modules/tor/__init__.py:174 +#: plinth/modules/tor/__init__.py:176 msgid "Obfs4 transport registered" msgstr "" -#: plinth/modules/tor/__init__.py:211 +#: plinth/modules/tor/__init__.py:213 #, python-brace-format msgid "Access URL {url} on tcp{kind} via Tor" msgstr "" -#: plinth/modules/tor/__init__.py:222 +#: plinth/modules/tor/__init__.py:224 #, python-brace-format msgid "Confirm Tor usage at {url} on tcp{kind}" msgstr "" @@ -3202,18 +3403,20 @@ msgid "An error occurred during configuration." msgstr "" #: plinth/modules/transmission/__init__.py:38 -msgid "" -"BitTorrent \n" -" (Transmission)" +msgid "Transmission" msgstr "" -#: plinth/modules/transmission/__init__.py:41 +#: plinth/modules/transmission/__init__.py:40 +msgid "BitTorrent" +msgstr "" + +#: plinth/modules/transmission/__init__.py:43 msgid "" "BitTorrent is a peer-to-peer file sharing protocol. Transmission daemon " "handles Bitorrent file sharing. Note that BitTorrent is not anonymous." msgstr "" -#: plinth/modules/transmission/__init__.py:44 +#: plinth/modules/transmission/__init__.py:46 msgid "" "Access the web interface at /transmission." msgstr "" @@ -3239,23 +3442,27 @@ msgid "" "hashed format. To set a new password, enter the password in plain text." msgstr "" -#: plinth/modules/ttrss/__init__.py:37 -msgid "" -"News Feed Reader \n" -" (Tiny Tiny RSS)" +#: plinth/modules/ttrss/__init__.py:39 +msgid "Tiny Tiny RSS" msgstr "" -#: plinth/modules/ttrss/__init__.py:40 +#: plinth/modules/ttrss/__init__.py:41 +msgid "News Feed Reader" +msgstr "" + +#: plinth/modules/ttrss/__init__.py:44 msgid "" "Tiny Tiny RSS is a news feed (RSS/Atom) reader and aggregator, designed to " "allow reading news from any location, while feeling as close to a real " "desktop application as possible." msgstr "" -#: plinth/modules/ttrss/__init__.py:44 +#: plinth/modules/ttrss/__init__.py:49 +#, python-brace-format msgid "" "When enabled, Tiny Tiny RSS will be available from /tt-" -"rss path on the web server." +"rss path on the web server. It can be accessed by any user with a {box_name} login." msgstr "" #: plinth/modules/upgrades/__init__.py:35 @@ -3547,15 +3754,11 @@ msgstr "" msgid "configuration file: {file}" msgstr "" -#: plinth/service.py:119 +#: plinth/service.py:118 msgid "Web Server over Secure Socket Layer" msgstr "" -#: plinth/service.py:121 -msgid "Secure Shell (SSH) Server" -msgstr "" - -#: plinth/service.py:123 +#: plinth/service.py:120 #, python-brace-format msgid "{box_name} Web Interface (Plinth)" msgstr "" @@ -3598,11 +3801,11 @@ msgid "" "\"%(status_log_url)s\">status log to the bug report." msgstr "" -#: plinth/templates/apps.html:25 +#: plinth/templates/apps.html:33 msgid "Services and Applications" msgstr "" -#: plinth/templates/apps.html:28 +#: plinth/templates/apps.html:36 #, python-format msgid "" "You can install and run various services and applications on your " @@ -3610,7 +3813,7 @@ msgid "" "of the application and choose to install it." msgstr "" -#: plinth/templates/apps.html:36 +#: plinth/templates/apps.html:44 msgid "" "This box can be your photo sharing site, your instant messaging site, your " "social networking site, your news site. Remember web portals? We can be " @@ -3770,16 +3973,16 @@ msgstr "" msgid "%(percentage)s%% complete" msgstr "" -#: plinth/templates/system.html:25 +#: plinth/templates/system.html:33 msgid "System Configuration" msgstr "" -#: plinth/templates/system.html:28 +#: plinth/templates/system.html:36 #, python-format msgid "Here you can administrate the underlying system of your %(box_name)s." msgstr "" -#: plinth/templates/system.html:34 +#: plinth/templates/system.html:42 #, python-format msgid "" "The options affect the %(box_name)s at its most general level, so be careful!" diff --git a/plinth/locale/ja/LC_MESSAGES/django.po b/plinth/locale/ja/LC_MESSAGES/django.po index 4e53411a4..dda04b4ea 100644 --- a/plinth/locale/ja/LC_MESSAGES/django.po +++ b/plinth/locale/ja/LC_MESSAGES/django.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2017-07-10 22:56-0400\n" +"POT-Creation-Date: 2017-09-24 11:24-0400\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -18,37 +18,37 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\n" -#: plinth/action_utils.py:254 +#: plinth/action_utils.py:259 #, python-brace-format msgid "Listening on {kind} port {listen_address}:{port}" msgstr "" -#: plinth/action_utils.py:257 +#: plinth/action_utils.py:262 #, python-brace-format msgid "Listening on {kind} port {port}" msgstr "" -#: plinth/action_utils.py:352 +#: plinth/action_utils.py:357 #, python-brace-format msgid "Access URL {url} on tcp{kind}" msgstr "" -#: plinth/action_utils.py:356 +#: plinth/action_utils.py:361 #, python-brace-format msgid "Access URL {url}" msgstr "" -#: plinth/action_utils.py:386 +#: plinth/action_utils.py:391 #, python-brace-format msgid "Connect to {host}:{port}" msgstr "" -#: plinth/action_utils.py:389 +#: plinth/action_utils.py:394 #, python-brace-format msgid "Cannot connect to {host}:{port}" msgstr "" -#: plinth/context_processors.py:38 plinth/views.py:49 +#: plinth/context_processors.py:38 plinth/views.py:52 msgid "FreedomBox" msgstr "" @@ -57,7 +57,13 @@ msgid "Enable application" msgstr "" #: plinth/forms.py:45 -msgid "Select the domain name to be used for this application" +msgid "Select a domain name to be used with this application" +msgstr "" + +#: plinth/forms.py:47 +msgid "" +"Warning! The application may not work properly if domain name is changed " +"later." msgstr "" #: plinth/middleware.py:71 @@ -90,19 +96,21 @@ msgid "" msgstr "" #: plinth/modules/bind/__init__.py:34 -msgid "" -"Domain Name Server \n" -" (BIND)" +msgid "BIND" msgstr "" -#: plinth/modules/bind/__init__.py:43 +#: plinth/modules/bind/__init__.py:36 +msgid "Domain Name Server" +msgstr "" + +#: plinth/modules/bind/__init__.py:45 msgid "" "BIND is open source software that enables you to publish your Domain Name " "System (DNS) information on the Internet, and to resolve DNS queries for " "your users." msgstr "" -#: plinth/modules/bind/__init__.py:47 +#: plinth/modules/bind/__init__.py:49 msgid "" "BIND is by far the most widely used DNS software on the Internet, providing " "a robust and stable platform on top of which organizations can build " @@ -147,7 +155,7 @@ msgid "Enable forwarding to set forwarding DNS servers" msgstr "" #: plinth/modules/config/config.py:88 plinth/modules/config/config.py:125 -#: plinth/modules/dynamicdns/dynamicdns.py:140 +#: plinth/modules/dynamicdns/dynamicdns.py:148 msgid "Invalid domain name" msgstr "" @@ -170,7 +178,7 @@ msgstr "" #: plinth/modules/config/config.py:112 plinth/modules/config/config.py:169 #: plinth/modules/config/config.py:285 -#: plinth/modules/dynamicdns/dynamicdns.py:135 +#: plinth/modules/dynamicdns/dynamicdns.py:143 msgid "Domain Name" msgstr "" @@ -194,7 +202,7 @@ msgid "Language for this web administration interface" msgstr "" #: plinth/modules/config/config.py:151 -#: plinth/modules/dynamicdns/dynamicdns.py:37 +#: plinth/modules/dynamicdns/dynamicdns.py:45 #: plinth/modules/ikiwiki/views.py:37 #: plinth/modules/tahoe/templates/tahoe-pre-setup.html:39 msgid "Configure" @@ -274,16 +282,18 @@ msgid "Time zone set" msgstr "" #: plinth/modules/deluge/__init__.py:39 -msgid "" -"BitTorrent Web Client \n" -" (Deluge)" +msgid "Deluge" msgstr "" -#: plinth/modules/deluge/__init__.py:42 -msgid "Deluge is a BitTorrent client that features a Web UI." +#: plinth/modules/deluge/__init__.py:41 +msgid "BitTorrent Web Client" msgstr "" #: plinth/modules/deluge/__init__.py:44 +msgid "Deluge is a BitTorrent client that features a Web UI." +msgstr "" + +#: plinth/modules/deluge/__init__.py:46 msgid "" "When enabled, the Deluge web client will be available from /deluge path on the web server. The default password is 'deluge', but " @@ -344,19 +354,22 @@ msgstr "" msgid "Result" msgstr "" -#: plinth/modules/diaspora/__init__.py:61 +#: plinth/modules/diaspora/__init__.py:51 +msgid "diaspora*" +msgstr "" + +#: plinth/modules/diaspora/__init__.py:53 +msgid "Federated Social Network" +msgstr "" + +#: plinth/modules/diaspora/__init__.py:62 msgid "" "diaspora* is a decentralized social network where you can store and control " "your own data." msgstr "" -#: plinth/modules/diaspora/forms.py:30 -msgid "Select the domain name to be used for diaspora*" -msgstr "" - -#: plinth/modules/diaspora/forms.py:32 -msgid "" -"Warning! Do not change the FreedomBox domain name after setting up diaspora*" +#: plinth/modules/diaspora/forms.py:31 +msgid "Enable new user registrations" msgstr "" #: plinth/modules/diaspora/templates/diaspora-post-setup.html:32 @@ -383,7 +396,21 @@ msgstr "" msgid "Update setup" msgstr "" -#: plinth/modules/disks/__init__.py:33 plinth/modules/disks/views.py:39 +#: plinth/modules/diaspora/views.py:96 plinth/modules/ejabberd/views.py:60 +#: plinth/modules/openvpn/views.py:145 plinth/modules/tor/views.py:134 +#: plinth/views.py:112 +msgid "Setting unchanged" +msgstr "" + +#: plinth/modules/diaspora/views.py:100 +msgid "User registrations enabled" +msgstr "" + +#: plinth/modules/diaspora/views.py:104 +msgid "User registrations disabled" +msgstr "" + +#: plinth/modules/disks/__init__.py:33 plinth/modules/disks/views.py:45 msgid "Disks" msgstr "" @@ -425,7 +452,7 @@ msgstr "" #: plinth/modules/disks/templates/disks.html:90 #: plinth/modules/disks/templates/disks.html:102 #: plinth/modules/disks/templates/disks_expand.html:45 -#: plinth/modules/disks/views.py:56 +#: plinth/modules/disks/views.py:62 msgid "Expand Root Partition" msgstr "" @@ -443,45 +470,52 @@ msgid "" "root partition." msgstr "" -#: plinth/modules/disks/views.py:65 +#: plinth/modules/disks/views.py:71 #, python-brace-format msgid "Error expanding partition: {exception}" msgstr "" -#: plinth/modules/disks/views.py:68 +#: plinth/modules/disks/views.py:74 msgid "Partition expanded successfully." msgstr "" -#: plinth/modules/disks/views.py:77 +#: plinth/modules/disks/views.py:93 +#, python-format, python-brace-format +msgid "" +"Warning: Low space on system partition ({percent_used}% used, {free_space} " +"free)." +msgstr "" + +#: plinth/modules/disks/views.py:130 #, python-brace-format msgid "{disk_size:.1f} bytes" msgstr "" -#: plinth/modules/disks/views.py:81 +#: plinth/modules/disks/views.py:134 #, python-brace-format msgid "{disk_size:.1f} KiB" msgstr "" -#: plinth/modules/disks/views.py:85 +#: plinth/modules/disks/views.py:138 #, python-brace-format msgid "{disk_size:.1f} MiB" msgstr "" -#: plinth/modules/disks/views.py:89 +#: plinth/modules/disks/views.py:142 #, python-brace-format msgid "{disk_size:.1f} GiB" msgstr "" -#: plinth/modules/disks/views.py:92 +#: plinth/modules/disks/views.py:145 #, python-brace-format msgid "{disk_size:.1f} TiB" msgstr "" -#: plinth/modules/dynamicdns/__init__.py:33 +#: plinth/modules/dynamicdns/__init__.py:35 msgid "Dynamic DNS Client" msgstr "" -#: plinth/modules/dynamicdns/__init__.py:37 +#: plinth/modules/dynamicdns/__init__.py:39 #, python-brace-format msgid "" "If your Internet provider changes your IP address periodically (i.e. every " @@ -489,7 +523,7 @@ msgid "" "prevent others from finding services which are provided by this {box_name}." msgstr "" -#: plinth/modules/dynamicdns/__init__.py:43 +#: plinth/modules/dynamicdns/__init__.py:45 msgid "" "The solution is to assign a DNS name to your IP address and update the DNS " "name every time your IP is changed by your Internet provider. Dynamic DNS " @@ -500,11 +534,16 @@ msgid "" "IP address." msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:35 plinth/modules/help/help.py:40 +#: plinth/modules/dynamicdns/__init__.py:67 +#: plinth/modules/dynamicdns/dynamicdns.py:377 +msgid "Dynamic DNS Service" +msgstr "" + +#: plinth/modules/dynamicdns/dynamicdns.py:43 plinth/modules/help/help.py:40 msgid "About" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:39 +#: plinth/modules/dynamicdns/dynamicdns.py:47 #: plinth/modules/firewall/templates/firewall.html:47 #: plinth/modules/networks/templates/connection_show.html:261 #: plinth/modules/openvpn/templates/openvpn.html:67 @@ -513,46 +552,46 @@ msgstr "" msgid "Status" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:63 +#: plinth/modules/dynamicdns/dynamicdns.py:71 msgid "" "The Variables <User>, <Pass>, <Ip>, <Domain> may be " "used within the URL. For details see the update URL templates of the example " "providers." msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:67 +#: plinth/modules/dynamicdns/dynamicdns.py:75 msgid "" "Please choose an update protocol according to your provider. If your " "provider does not support the GnuDIP protocol or your provider is not listed " "you may use the update URL of your provider." msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:72 +#: plinth/modules/dynamicdns/dynamicdns.py:80 msgid "" "Please do not enter a URL here (like \"https://example.com/\") but only the " "hostname of the GnuDIP server (like \"example.com\")." msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:76 +#: plinth/modules/dynamicdns/dynamicdns.py:84 #, python-brace-format msgid "The public domain name you want to use to reach your {box_name}." msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:79 +#: plinth/modules/dynamicdns/dynamicdns.py:87 msgid "Use this option if your provider uses self signed certificates." msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:82 +#: plinth/modules/dynamicdns/dynamicdns.py:90 msgid "" "If this option is selected, your username and password will be used for HTTP " "basic authentication." msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:85 +#: plinth/modules/dynamicdns/dynamicdns.py:93 msgid "Leave this field empty if you want to keep your current password." msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:88 +#: plinth/modules/dynamicdns/dynamicdns.py:96 #, python-brace-format msgid "" "Optional Value. If your {box_name} is not connected directly to the Internet " @@ -561,82 +600,82 @@ msgid "" "(example: http://myip.datasystems24.de)." msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:96 +#: plinth/modules/dynamicdns/dynamicdns.py:104 msgid "The username that was used when the account was created." msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:107 +#: plinth/modules/dynamicdns/dynamicdns.py:115 msgid "Enable Dynamic DNS" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:110 +#: plinth/modules/dynamicdns/dynamicdns.py:118 msgid "Service Type" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:115 +#: plinth/modules/dynamicdns/dynamicdns.py:123 msgid "GnuDIP Server Address" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:120 +#: plinth/modules/dynamicdns/dynamicdns.py:128 msgid "Invalid server name" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:123 +#: plinth/modules/dynamicdns/dynamicdns.py:131 msgid "Update URL" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:127 +#: plinth/modules/dynamicdns/dynamicdns.py:135 msgid "Accept all SSL certificates" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:131 +#: plinth/modules/dynamicdns/dynamicdns.py:139 msgid "Use HTTP basic authentication" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:143 +#: plinth/modules/dynamicdns/dynamicdns.py:151 #: plinth/modules/networks/forms.py:228 plinth/modules/transmission/forms.py:37 msgid "Username" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:146 +#: plinth/modules/dynamicdns/dynamicdns.py:154 #: plinth/modules/networks/forms.py:229 plinth/modules/transmission/forms.py:41 msgid "Password" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:149 +#: plinth/modules/dynamicdns/dynamicdns.py:157 #: plinth/modules/networks/forms.py:231 msgid "Show password" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:153 +#: plinth/modules/dynamicdns/dynamicdns.py:161 msgid "URL to look up public IP" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:179 +#: plinth/modules/dynamicdns/dynamicdns.py:187 msgid "Please provide an update URL or a GnuDIP server address" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:184 +#: plinth/modules/dynamicdns/dynamicdns.py:192 msgid "Please provide a GnuDIP username" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:188 +#: plinth/modules/dynamicdns/dynamicdns.py:196 msgid "Please provide a GnuDIP domain name" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:193 +#: plinth/modules/dynamicdns/dynamicdns.py:201 msgid "Please provide a password" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:211 +#: plinth/modules/dynamicdns/dynamicdns.py:219 msgid "Configure Dynamic DNS" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:232 +#: plinth/modules/dynamicdns/dynamicdns.py:240 msgid "Dynamic DNS Status" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:364 +#: plinth/modules/dynamicdns/dynamicdns.py:381 #: plinth/modules/openvpn/views.py:143 plinth/modules/transmission/views.py:72 msgid "Configuration updated" msgstr "" @@ -691,23 +730,28 @@ msgstr "" msgid "Last update" msgstr "" -#: plinth/modules/ejabberd/__init__.py:42 -msgid "" -"Chat Server \n" -" (ejabberd)" +#: plinth/modules/ejabberd/__init__.py:45 +msgid "ejabberd" msgstr "" -#: plinth/modules/ejabberd/__init__.py:45 +#: plinth/modules/ejabberd/__init__.py:47 +#: plinth/modules/matrixsynapse/__init__.py:43 +msgid "Chat Server" +msgstr "" + +#: plinth/modules/ejabberd/__init__.py:50 msgid "" "XMPP is an open and standardized communication protocol. Here you can run " "and configure your XMPP server, called ejabberd." msgstr "" -#: plinth/modules/ejabberd/__init__.py:48 +#: plinth/modules/ejabberd/__init__.py:54 +#, python-brace-format msgid "" -"To actually communicate, you can use the web client or any other XMPP client." +"To actually communicate, you can use the web " +"client or any other XMPP client. When enabled, ejabberd can be accessed by " +"any user with a {box_name} login." msgstr "" #: plinth/modules/ejabberd/forms.py:33 @@ -745,16 +789,11 @@ msgstr "" msgid "Configuration" msgstr "" -#: plinth/modules/ejabberd/views.py:60 plinth/modules/openvpn/views.py:145 -#: plinth/modules/tor/views.py:134 plinth/views.py:103 -msgid "Setting unchanged" -msgstr "" - -#: plinth/modules/ejabberd/views.py:64 plinth/views.py:107 +#: plinth/modules/ejabberd/views.py:64 plinth/views.py:116 msgid "Application enabled" msgstr "" -#: plinth/modules/ejabberd/views.py:67 plinth/views.py:110 +#: plinth/modules/ejabberd/views.py:67 plinth/views.py:119 msgid "Application disabled" msgstr "" @@ -800,13 +839,13 @@ msgid "Service/Port" msgstr "" #: plinth/modules/firewall/templates/firewall.html:65 -#: plinth/modules/letsencrypt/templates/letsencrypt.html:88 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:94 #: plinth/modules/names/templates/names.html:49 msgid "Enabled" msgstr "" #: plinth/modules/firewall/templates/firewall.html:68 -#: plinth/modules/letsencrypt/templates/letsencrypt.html:90 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:96 #: plinth/modules/names/templates/names.html:51 #: plinth/modules/networks/forms.py:63 msgid "Disabled" @@ -1017,16 +1056,29 @@ msgid "" "before submitting the bug report." msgstr "" -#: plinth/modules/ikiwiki/__init__.py:39 -msgid "Wiki and Blog (ikiwiki)" +#: plinth/modules/ikiwiki/__init__.py:41 +msgid "ikiwiki" msgstr "" -#: plinth/modules/ikiwiki/__init__.py:42 +#: plinth/modules/ikiwiki/__init__.py:43 +msgid "Wiki and Blog" +msgstr "" + +#: plinth/modules/ikiwiki/__init__.py:46 msgid "" "ikiwiki is a simple wiki and blog application. It supports several " "lightweight markup languages, including Markdown, and common blogging " "functionality such as comments and RSS feeds. When enabled, the blogs and " -"wikis will be available from /ikiwiki." +"wikis will be available at /ikiwiki (once created)." +msgstr "" + +#: plinth/modules/ikiwiki/__init__.py:53 +#, python-brace-format +msgid "" +"Only {box_name} users in the admin group can create and " +"manage blogs and wikis, but any user in the wiki group can " +"edit existing ones. In the User " +"Configuration you can change these permissions or add new users." msgstr "" #: plinth/modules/ikiwiki/forms.py:34 @@ -1138,16 +1190,18 @@ msgid "Delete Wiki or Blog" msgstr "" #: plinth/modules/infinoted/__init__.py:43 -msgid "" -"Gobby Server \n" -" (infinoted)" +msgid "infinoted" msgstr "" -#: plinth/modules/infinoted/__init__.py:46 +#: plinth/modules/infinoted/__init__.py:45 +msgid "Gobby Server" +msgstr "" + +#: plinth/modules/infinoted/__init__.py:48 msgid "infinoted is a server for Gobby, a collaborative text editor." msgstr "" -#: plinth/modules/infinoted/__init__.py:49 +#: plinth/modules/infinoted/__init__.py:51 #, python-brace-format msgid "" "To use it, download Gobby, desktop " @@ -1156,29 +1210,34 @@ msgid "" msgstr "" #: plinth/modules/jsxc/__init__.py:36 -msgid "" -"Chat Client \n" -" (JSXC)" +msgid "JSXC" msgstr "" -#: plinth/modules/jsxc/__init__.py:40 +#: plinth/modules/jsxc/__init__.py:38 +msgid "Chat Client" +msgstr "" + +#: plinth/modules/jsxc/__init__.py:42 msgid "" "JSXC is a web client for XMPP. Typically it is used with an XMPP server " "running locally." msgstr "" -#: plinth/modules/jsxc/__init__.py:78 +#: plinth/modules/jsxc/__init__.py:80 msgid "" "Chat Client \n" " (jsxc)" msgstr "" -#: plinth/modules/letsencrypt/__init__.py:39 -#: plinth/modules/letsencrypt/__init__.py:64 -msgid "Certificates (Let's Encrypt)" +#: plinth/modules/letsencrypt/__init__.py:40 +msgid "Let's Encrypt" msgstr "" -#: plinth/modules/letsencrypt/__init__.py:43 +#: plinth/modules/letsencrypt/__init__.py:42 +msgid "Certificates" +msgstr "" + +#: plinth/modules/letsencrypt/__init__.py:46 #, python-brace-format msgid "" "A digital certificate allows users of a web service to verify the identity " @@ -1188,7 +1247,7 @@ msgid "" "Encrypt, a certificate authority (CA)." msgstr "" -#: plinth/modules/letsencrypt/__init__.py:50 +#: plinth/modules/letsencrypt/__init__.py:53 msgid "" "Let's Encrypt is a free, automated, and open certificate authority, run for " "the public's benefit by the Internet Security Research Group (ISRG). Please " @@ -1212,96 +1271,162 @@ msgstr "" msgid "Actions" msgstr "" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:56 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:62 #, python-format msgid "Valid, expires on %(expiry_date)s" msgstr "" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:63 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:69 msgid "Revoked" msgstr "" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:67 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:73 #, python-format msgid "Expired on %(expiry_date)s" msgstr "" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:71 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:77 msgid "Invalid test certificate" msgstr "" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:75 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:81 #, python-format msgid "Invalid (%(reason)s)" msgstr "" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:82 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:88 msgid "No certificate" msgstr "" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:99 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:105 msgid "Re-obtain" msgstr "" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:105 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:111 #: plinth/modules/networks/templates/connection_show.html:63 #: plinth/modules/snapshot/templates/snapshot.html:34 msgid "Delete" msgstr "" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:112 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:118 msgid "Revoke" msgstr "" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:120 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:126 msgid "Obtain" msgstr "" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:133 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:149 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:156 +msgid "Update config" +msgstr "" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:161 +#, python-format +msgid "" +"\n" +" Let Plinth manage certificate renewal of\n" +" %(current_domain)s (recommended)\n" +" " +msgstr "" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:166 +msgid "" +"\n" +" Let Plinth manage certificate renewal of the current domain " +"(recommended)\n" +" " +msgstr "" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:175 +#, python-format +msgid "" +"If %(box_name)s manages the certificate renewal for the current domain, it " +"will ensure that all apps that use the certificate can use it, as soon as it " +"gets renewed." +msgstr "" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:181 +msgid "" +"No certificate available for the current domain. First obtain a " +"certificate to enable management of its renewal." +msgstr "" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:186 +msgid "" +"No current domain is configured. First configure a domain to enable " +"management of its certificates." +msgstr "" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:195 msgid "" "No domains have been configured. Configure domains to be able to obtain " "certificates for them." msgstr "" -#: plinth/modules/letsencrypt/views.py:55 +#: plinth/modules/letsencrypt/views.py:57 #, python-brace-format msgid "" "Certificate successfully revoked for domain {domain}.This may take a few " "moments to take effect." msgstr "" -#: plinth/modules/letsencrypt/views.py:61 +#: plinth/modules/letsencrypt/views.py:63 #, python-brace-format msgid "Failed to revoke certificate for domain {domain}: {error}" msgstr "" -#: plinth/modules/letsencrypt/views.py:73 +#: plinth/modules/letsencrypt/views.py:75 #, python-brace-format msgid "Certificate successfully obtained for domain {domain}" msgstr "" -#: plinth/modules/letsencrypt/views.py:78 +#: plinth/modules/letsencrypt/views.py:81 #, python-brace-format msgid "Failed to obtain certificate for domain {domain}: {error}" msgstr "" #: plinth/modules/letsencrypt/views.py:90 +#: plinth/modules/letsencrypt/views.py:109 +#, python-brace-format +msgid "Certificate renewal management enabled for {domain}." +msgstr "" + +#: plinth/modules/letsencrypt/views.py:95 +#, python-brace-format +msgid "Failed to enable certificate renewal management for {domain}: {error}" +msgstr "" + +#: plinth/modules/letsencrypt/views.py:112 +#, python-brace-format +msgid "Certificate renewal management disabled for {domain}." +msgstr "" + +#: plinth/modules/letsencrypt/views.py:118 +#, python-brace-format +msgid "Failed to switch certificate renewal management for {domain}: {error}" +msgstr "" + +#: plinth/modules/letsencrypt/views.py:134 +#, python-brace-format +msgid "Failed to disable certificate renewal management for {domain}: {error}" +msgstr "" + +#: plinth/modules/letsencrypt/views.py:141 #, python-brace-format msgid "Certificate successfully deleted for domain {domain}" msgstr "" -#: plinth/modules/letsencrypt/views.py:95 +#: plinth/modules/letsencrypt/views.py:146 #, python-brace-format msgid "Failed to delete certificate for domain {domain}: {error}" msgstr "" #: plinth/modules/matrixsynapse/__init__.py:41 -msgid "" -"Chat Server \n" -" (Matrix Synapse)" +msgid "Matrix Synapse" msgstr "" -#: plinth/modules/matrixsynapse/__init__.py:44 +#: plinth/modules/matrixsynapse/__init__.py:46 msgid "" "Matrix is an new " "ecosystem for open, federated instant messaging and VoIP. Synapse is a " @@ -1311,17 +1436,13 @@ msgid "" "converse with users on all other Matrix servers via federation." msgstr "" -#: plinth/modules/matrixsynapse/__init__.py:52 +#: plinth/modules/matrixsynapse/__init__.py:54 msgid "" "To communicate, you can use the available clients for mobile, desktop and the web. Riot client is recommended." msgstr "" -#: plinth/modules/matrixsynapse/forms.py:31 -msgid "Select the domain name" -msgstr "" - #: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:34 msgid "" "Matrix service needs to be configured for a domain. Users on other Matrix " @@ -1353,12 +1474,14 @@ msgid "" msgstr "" #: plinth/modules/minetest/__init__.py:48 -msgid "" -"Block Sandbox \n" -" (Minetest)" +msgid "Minetest" msgstr "" -#: plinth/modules/minetest/__init__.py:52 +#: plinth/modules/minetest/__init__.py:50 +msgid "Block Sandbox" +msgstr "" + +#: plinth/modules/minetest/__init__.py:54 #, python-brace-format msgid "" "Minetest is a multiplayer infinite-world block sandbox. This module enables " @@ -1474,7 +1597,7 @@ msgstr "" #: plinth/modules/monkeysphere/templates/monkeysphere.html:87 #: plinth/modules/monkeysphere/templates/monkeysphere_details.html:60 -#: plinth/service.py:117 +#: plinth/service.py:116 msgid "Web Server" msgstr "" @@ -1571,18 +1694,20 @@ msgid "Error occurred while publishing key." msgstr "" #: plinth/modules/mumble/__init__.py:35 -msgid "" -"Voice Chat \n" -" (Mumble)" +msgid "Mumble" msgstr "" -#: plinth/modules/mumble/__init__.py:44 +#: plinth/modules/mumble/__init__.py:37 +msgid "Voice Chat" +msgstr "" + +#: plinth/modules/mumble/__init__.py:46 msgid "" "Mumble is an open source, low-latency, encrypted, high quality voice chat " "software." msgstr "" -#: plinth/modules/mumble/__init__.py:47 +#: plinth/modules/mumble/__init__.py:49 msgid "" "You can connect to your Mumble server on the regular Mumble port 64738. Clients to connect to Mumble from your " @@ -2070,7 +2195,7 @@ msgid "This connection is not active." msgstr "" #: plinth/modules/networks/templates/connection_show.html:266 -#: plinth/modules/security/__init__.py:32 plinth/modules/security/views.py:46 +#: plinth/modules/security/__init__.py:32 plinth/modules/security/views.py:48 msgid "Security" msgstr "" @@ -2166,12 +2291,14 @@ msgid "Inactive" msgstr "" #: plinth/modules/openvpn/__init__.py:42 -msgid "" -"Virtual Private Network \n" -" (OpenVPN)" +msgid "OpenVPN" msgstr "" -#: plinth/modules/openvpn/__init__.py:46 +#: plinth/modules/openvpn/__init__.py:44 +msgid "Virtual Private Network" +msgstr "" + +#: plinth/modules/openvpn/__init__.py:48 #, python-brace-format msgid "" "Virtual Private Network (VPN) is a technique for securely connecting two " @@ -2182,7 +2309,7 @@ msgid "" "security and anonymity." msgstr "" -#: plinth/modules/openvpn/__init__.py:84 +#: plinth/modules/openvpn/__init__.py:86 #, python-brace-format msgid "" "Download Profile" @@ -2257,10 +2384,14 @@ msgid "Setup failed." msgstr "" #: plinth/modules/pagekite/__init__.py:44 -msgid "Public Visibility (PageKite)" +msgid "PageKite" msgstr "" -#: plinth/modules/pagekite/__init__.py:48 +#: plinth/modules/pagekite/__init__.py:46 +msgid "Public Visibility" +msgstr "" + +#: plinth/modules/pagekite/__init__.py:50 #, python-brace-format msgid "" "PageKite is a system for exposing {box_name} services when you don't have a " @@ -2269,33 +2400,33 @@ msgid "" "following situations:" msgstr "" -#: plinth/modules/pagekite/__init__.py:55 +#: plinth/modules/pagekite/__init__.py:57 #, python-brace-format msgid "{box_name} is behind a restricted firewall." msgstr "" -#: plinth/modules/pagekite/__init__.py:59 +#: plinth/modules/pagekite/__init__.py:61 #, python-brace-format msgid "{box_name} is connected to a (wireless) router which you don't control." msgstr "" -#: plinth/modules/pagekite/__init__.py:62 +#: plinth/modules/pagekite/__init__.py:64 msgid "" "Your ISP does not provide you an external IP address and instead provides " "Internet connection through NAT." msgstr "" -#: plinth/modules/pagekite/__init__.py:65 +#: plinth/modules/pagekite/__init__.py:67 msgid "" "Your ISP does not provide you a static IP address and your IP address " "changes evertime you connect to Internet." msgstr "" -#: plinth/modules/pagekite/__init__.py:68 +#: plinth/modules/pagekite/__init__.py:70 msgid "Your ISP limits incoming connections." msgstr "" -#: plinth/modules/pagekite/__init__.py:71 +#: plinth/modules/pagekite/__init__.py:73 #, python-brace-format msgid "" "PageKite works around NAT, firewalls and IP-address limitations by using a " @@ -2571,8 +2702,8 @@ msgstr "" msgid "Pagekite setup finished. The HTTP and HTTPS services are activated now." msgstr "" -#: plinth/modules/power/__init__.py:28 plinth/modules/power/views.py:50 -#: plinth/modules/power/views.py:65 +#: plinth/modules/power/__init__.py:28 plinth/modules/power/views.py:51 +#: plinth/modules/power/views.py:67 msgid "Power" msgstr "" @@ -2581,10 +2712,16 @@ msgid "Restart or shut down the system." msgstr "" #: plinth/modules/power/templates/power.html:28 +msgid "" +"Currently an installation or upgrade is running. Consider waiting until it's " +"finished before shutting down or restarting." +msgstr "" + +#: plinth/modules/power/templates/power.html:37 msgid "Restart »" msgstr "" -#: plinth/modules/power/templates/power.html:31 +#: plinth/modules/power/templates/power.html:40 msgid "Shut Down »" msgstr "" @@ -2594,7 +2731,14 @@ msgid "" "interface for a few minutes until the system is restarted." msgstr "" -#: plinth/modules/power/templates/power_restart.html:42 +#: plinth/modules/power/templates/power_restart.html:38 +msgid "" +"Currently an installation or upgrade is running. Consider waiting until it's " +"finished before restarting." +msgstr "" + +#: plinth/modules/power/templates/power_restart.html:52 +#: plinth/modules/power/templates/power_restart.html:55 msgid "Restart Now" msgstr "" @@ -2604,24 +2748,33 @@ msgid "" "interface after shut down." msgstr "" -#: plinth/modules/power/templates/power_shutdown.html:41 +#: plinth/modules/power/templates/power_shutdown.html:37 +msgid "" +"Currently an installation or upgrade is running. Consider waiting until it's " +"finished before shutting down." +msgstr "" + +#: plinth/modules/power/templates/power_shutdown.html:51 +#: plinth/modules/power/templates/power_shutdown.html:54 msgid "Shut Down Now" msgstr "" #: plinth/modules/privoxy/__init__.py:43 -msgid "" -"Web Proxy \n" -" (Privoxy)" +msgid "Privoxy" msgstr "" -#: plinth/modules/privoxy/__init__.py:46 +#: plinth/modules/privoxy/__init__.py:45 +msgid "Web Proxy" +msgstr "" + +#: plinth/modules/privoxy/__init__.py:48 msgid "" "Privoxy is a non-caching web proxy with advanced filtering capabilities for " "enhancing privacy, modifying web page data and HTTP headers, controlling " "access, and removing ads and other obnoxious Internet junk. " msgstr "" -#: plinth/modules/privoxy/__init__.py:52 +#: plinth/modules/privoxy/__init__.py:54 #, python-brace-format msgid "" "You can use Privoxy by modifying your browser proxy settings to your " @@ -2631,18 +2784,20 @@ msgid "" "\">http://p.p." msgstr "" -#: plinth/modules/privoxy/__init__.py:144 +#: plinth/modules/privoxy/__init__.py:147 #, python-brace-format msgid "Access {url} with proxy {proxy} on tcp{kind}" msgstr "" #: plinth/modules/quassel/__init__.py:42 -msgid "" -"IRC Client \n" -" (Quassel)" +msgid "Quassel" msgstr "" -#: plinth/modules/quassel/__init__.py:46 +#: plinth/modules/quassel/__init__.py:44 +msgid "IRC Client" +msgstr "" + +#: plinth/modules/quassel/__init__.py:48 #, python-brace-format msgid "" "Quassel is an IRC application that is split into two parts, a \"core\" and a " @@ -2653,7 +2808,7 @@ msgid "" "connect and disconnect from it." msgstr "" -#: plinth/modules/quassel/__init__.py:54 +#: plinth/modules/quassel/__init__.py:56 msgid "" "You can connect to your Quassel core on the default Quassel port 4242. " "Clients to connect to Quassel from your supported " -"client application is needed. Radicale can be accessed by any user with " -"a {box_name} login." +"radicale.org/clients/\">supported client application is needed. Radicale " +"can be accessed by any user with a {box_name} login." msgstr "" #: plinth/modules/radicale/forms.py:28 @@ -2696,12 +2852,14 @@ msgid "Access rights configuration updated" msgstr "" #: plinth/modules/repro/__init__.py:38 -msgid "" -"SIP Server \n" -" (repro)" +msgid "repro" msgstr "" -#: plinth/modules/repro/__init__.py:41 +#: plinth/modules/repro/__init__.py:40 +msgid "SIP Server" +msgstr "" + +#: plinth/modules/repro/__init__.py:43 msgid "" "repro provides various SIP services that a SIP softphone can utilize to " "provide audio and video calls as well as presence and instant messaging. " @@ -2710,7 +2868,7 @@ msgid "" "communications to other servers on the Internet similar to email." msgstr "" -#: plinth/modules/repro/__init__.py:48 +#: plinth/modules/repro/__init__.py:50 msgid "" "To make SIP calls, a client application is needed. Available clients include " "Jitsi (for computers) and (for Android phones)." msgstr "" -#: plinth/modules/repro/__init__.py:53 +#: plinth/modules/repro/__init__.py:55 msgid "" "Note: Before using repro, domains and users will need to " "be configured using the web-based " @@ -2728,12 +2886,14 @@ msgid "" msgstr "" #: plinth/modules/restore/__init__.py:36 -msgid "" -"Unhosted Storage \n" -" (reStore)" +msgid "reStore" msgstr "" -#: plinth/modules/restore/__init__.py:40 +#: plinth/modules/restore/__init__.py:38 +msgid "Unhosted Storage" +msgstr "" + +#: plinth/modules/restore/__init__.py:42 #, python-brace-format msgid "" "reStore is a server for unhosted web " @@ -2743,19 +2903,21 @@ msgid "" "becomes your unhosted storage server." msgstr "" -#: plinth/modules/restore/__init__.py:47 +#: plinth/modules/restore/__init__.py:49 msgid "" "You can create and edit accounts in the reStore web-" "interface." msgstr "" #: plinth/modules/roundcube/__init__.py:35 -msgid "" -"Email Client \n" -" (Roundcube)" +msgid "Roundcube" msgstr "" -#: plinth/modules/roundcube/__init__.py:38 +#: plinth/modules/roundcube/__init__.py:37 +msgid "Email Client" +msgstr "" + +#: plinth/modules/roundcube/__init__.py:40 msgid "" "Roundcube webmail is a browser-based multilingual IMAP client with an " "application-like user interface. It provides full functionality you expect " @@ -2763,7 +2925,7 @@ msgid "" "manipulation, message searching and spell checking." msgstr "" -#: plinth/modules/roundcube/__init__.py:44 +#: plinth/modules/roundcube/__init__.py:46 msgid "" "You can access Roundcube from /roundcube. Provide " "the username and password of the email account you wish to access followed " @@ -2772,7 +2934,7 @@ msgid "" "server field like imaps://imap.example.com." msgstr "" -#: plinth/modules/roundcube/__init__.py:51 +#: plinth/modules/roundcube/__init__.py:53 msgid "" "For Gmail, username will be your Gmail address, password will be your Google " "account password and server will be imaps://imap.gmail.com. " @@ -2793,26 +2955,39 @@ msgid "" "services without further authorization." msgstr "" -#: plinth/modules/security/views.py:63 +#: plinth/modules/security/forms.py:35 +msgid "Fail2ban (recommended)" +msgstr "" + +#: plinth/modules/security/forms.py:36 +msgid "" +"When this option is enabled, fail2ban will limit brute force break-in " +"attempts to the SSH server and other password protected internet-services " +"which are enabled." +msgstr "" + +#: plinth/modules/security/views.py:66 #, python-brace-format msgid "Error setting restricted access: {exception}" msgstr "" -#: plinth/modules/security/views.py:66 +#: plinth/modules/security/views.py:69 msgid "Updated security configuration" msgstr "" #: plinth/modules/shaarli/__init__.py:35 -msgid "" -"Bookmarks \n" -" (Shaarli)" +msgid "Shaarli" msgstr "" -#: plinth/modules/shaarli/__init__.py:38 -msgid "Shaarli allows you to save and share bookmarks." +#: plinth/modules/shaarli/__init__.py:37 +msgid "Bookmarks" msgstr "" #: plinth/modules/shaarli/__init__.py:40 +msgid "Shaarli allows you to save and share bookmarks." +msgstr "" + +#: plinth/modules/shaarli/__init__.py:42 msgid "" "When enabled, Shaarli will be available from /shaarli path on the web server. Note that Shaarli only supports a single user " @@ -2925,6 +3100,18 @@ msgstr "" msgid "Rollback to Snapshot" msgstr "" +#: plinth/modules/ssh/__init__.py:37 +msgid "Secure Shell (SSH) Server" +msgstr "" + +#: plinth/modules/ssh/__init__.py:40 +msgid "" +"A Secure Shell server uses the secure shell protocol to accept connections " +"from remote computers. An authorized remote computer can perform " +"administration tasks, copy files or run other services using such " +"connections." +msgstr "" + #: plinth/modules/sso/__init__.py:30 msgid "Single Sign On" msgstr "" @@ -2934,12 +3121,14 @@ msgid "Login" msgstr "" #: plinth/modules/syncthing/__init__.py:39 -msgid "" -"File Synchronization \n" -" (Syncthing)" +msgid "Syncthing" msgstr "" -#: plinth/modules/syncthing/__init__.py:42 +#: plinth/modules/syncthing/__init__.py:41 +msgid "File Synchronization" +msgstr "" + +#: plinth/modules/syncthing/__init__.py:44 msgid "" "Syncthing is an application to synchronize files across multiple devices, e." "g. your desktop computer and mobile phone. Creation, modification, or " @@ -2947,7 +3136,7 @@ msgid "" "other devices that also run Syncthing." msgstr "" -#: plinth/modules/syncthing/__init__.py:47 +#: plinth/modules/syncthing/__init__.py:49 #, python-brace-format msgid "" "Running Syncthing on {box_name} provides an extra synchronization point for " @@ -2958,7 +3147,7 @@ msgid "" "{box_name} is only available for users belonging to the \"admin\" group." msgstr "" -#: plinth/modules/syncthing/__init__.py:54 +#: plinth/modules/syncthing/__init__.py:56 msgid "" "When enabled, Syncthing's web interface will be available from /syncthing. Desktop and mobile clients are also Tor Project website. For " @@ -3029,36 +3230,36 @@ msgid "" "\">Tor Browser." msgstr "" -#: plinth/modules/tor/__init__.py:70 plinth/modules/tor/__init__.py:112 +#: plinth/modules/tor/__init__.py:72 plinth/modules/tor/__init__.py:114 msgid "Tor Anonymity Network" msgstr "" -#: plinth/modules/tor/__init__.py:76 plinth/modules/tor/__init__.py:120 +#: plinth/modules/tor/__init__.py:78 plinth/modules/tor/__init__.py:122 msgid "Tor Bridge Relay" msgstr "" -#: plinth/modules/tor/__init__.py:98 plinth/modules/tor/__init__.py:141 +#: plinth/modules/tor/__init__.py:100 plinth/modules/tor/__init__.py:143 msgid "Tor Hidden Service" msgstr "" -#: plinth/modules/tor/__init__.py:160 +#: plinth/modules/tor/__init__.py:162 msgid "Tor relay port available" msgstr "" -#: plinth/modules/tor/__init__.py:168 +#: plinth/modules/tor/__init__.py:170 msgid "Obfs3 transport registered" msgstr "" -#: plinth/modules/tor/__init__.py:174 +#: plinth/modules/tor/__init__.py:176 msgid "Obfs4 transport registered" msgstr "" -#: plinth/modules/tor/__init__.py:211 +#: plinth/modules/tor/__init__.py:213 #, python-brace-format msgid "Access URL {url} on tcp{kind} via Tor" msgstr "" -#: plinth/modules/tor/__init__.py:222 +#: plinth/modules/tor/__init__.py:224 #, python-brace-format msgid "Confirm Tor usage at {url} on tcp{kind}" msgstr "" @@ -3202,18 +3403,20 @@ msgid "An error occurred during configuration." msgstr "" #: plinth/modules/transmission/__init__.py:38 -msgid "" -"BitTorrent \n" -" (Transmission)" +msgid "Transmission" msgstr "" -#: plinth/modules/transmission/__init__.py:41 +#: plinth/modules/transmission/__init__.py:40 +msgid "BitTorrent" +msgstr "" + +#: plinth/modules/transmission/__init__.py:43 msgid "" "BitTorrent is a peer-to-peer file sharing protocol. Transmission daemon " "handles Bitorrent file sharing. Note that BitTorrent is not anonymous." msgstr "" -#: plinth/modules/transmission/__init__.py:44 +#: plinth/modules/transmission/__init__.py:46 msgid "" "Access the web interface at /transmission." msgstr "" @@ -3239,23 +3442,27 @@ msgid "" "hashed format. To set a new password, enter the password in plain text." msgstr "" -#: plinth/modules/ttrss/__init__.py:37 -msgid "" -"News Feed Reader \n" -" (Tiny Tiny RSS)" +#: plinth/modules/ttrss/__init__.py:39 +msgid "Tiny Tiny RSS" msgstr "" -#: plinth/modules/ttrss/__init__.py:40 +#: plinth/modules/ttrss/__init__.py:41 +msgid "News Feed Reader" +msgstr "" + +#: plinth/modules/ttrss/__init__.py:44 msgid "" "Tiny Tiny RSS is a news feed (RSS/Atom) reader and aggregator, designed to " "allow reading news from any location, while feeling as close to a real " "desktop application as possible." msgstr "" -#: plinth/modules/ttrss/__init__.py:44 +#: plinth/modules/ttrss/__init__.py:49 +#, python-brace-format msgid "" "When enabled, Tiny Tiny RSS will be available from /tt-" -"rss path on the web server." +"rss path on the web server. It can be accessed by any user with a {box_name} login." msgstr "" #: plinth/modules/upgrades/__init__.py:35 @@ -3547,15 +3754,11 @@ msgstr "" msgid "configuration file: {file}" msgstr "" -#: plinth/service.py:119 +#: plinth/service.py:118 msgid "Web Server over Secure Socket Layer" msgstr "" -#: plinth/service.py:121 -msgid "Secure Shell (SSH) Server" -msgstr "" - -#: plinth/service.py:123 +#: plinth/service.py:120 #, python-brace-format msgid "{box_name} Web Interface (Plinth)" msgstr "" @@ -3598,11 +3801,11 @@ msgid "" "\"%(status_log_url)s\">status log to the bug report." msgstr "" -#: plinth/templates/apps.html:25 +#: plinth/templates/apps.html:33 msgid "Services and Applications" msgstr "" -#: plinth/templates/apps.html:28 +#: plinth/templates/apps.html:36 #, python-format msgid "" "You can install and run various services and applications on your " @@ -3610,7 +3813,7 @@ msgid "" "of the application and choose to install it." msgstr "" -#: plinth/templates/apps.html:36 +#: plinth/templates/apps.html:44 msgid "" "This box can be your photo sharing site, your instant messaging site, your " "social networking site, your news site. Remember web portals? We can be " @@ -3770,16 +3973,16 @@ msgstr "" msgid "%(percentage)s%% complete" msgstr "" -#: plinth/templates/system.html:25 +#: plinth/templates/system.html:33 msgid "System Configuration" msgstr "" -#: plinth/templates/system.html:28 +#: plinth/templates/system.html:36 #, python-format msgid "Here you can administrate the underlying system of your %(box_name)s." msgstr "" -#: plinth/templates/system.html:34 +#: plinth/templates/system.html:42 #, python-format msgid "" "The options affect the %(box_name)s at its most general level, so be careful!" diff --git a/plinth/locale/nb/LC_MESSAGES/django.po b/plinth/locale/nb/LC_MESSAGES/django.po index 7224cce72..42ed0dffa 100644 --- a/plinth/locale/nb/LC_MESSAGES/django.po +++ b/plinth/locale/nb/LC_MESSAGES/django.po @@ -15,11 +15,11 @@ msgid "" msgstr "" "Project-Id-Version: FreedomBox UI\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2017-07-10 22:56-0400\n" +"POT-Creation-Date: 2017-09-24 11:24-0400\n" "PO-Revision-Date: 2017-09-24 10:46+0000\n" "Last-Translator: Petter Reinholdtsen \n" -"Language-Team: Norwegian Bokmål " -"\n" +"Language-Team: Norwegian Bokmål \n" "Language: nb\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -27,37 +27,37 @@ msgstr "" "Plural-Forms: nplurals=2; plural=n != 1;\n" "X-Generator: Weblate 2.17-dev\n" -#: plinth/action_utils.py:254 +#: plinth/action_utils.py:259 #, python-brace-format msgid "Listening on {kind} port {listen_address}:{port}" msgstr "Lytter på {kind} port {listen_address}:{port}" -#: plinth/action_utils.py:257 +#: plinth/action_utils.py:262 #, python-brace-format msgid "Listening on {kind} port {port}" msgstr "Lytter på {kind} port {port}" -#: plinth/action_utils.py:352 +#: plinth/action_utils.py:357 #, python-brace-format msgid "Access URL {url} on tcp{kind}" msgstr "Kontakt nettadressen {url} på tcp{kind}" -#: plinth/action_utils.py:356 +#: plinth/action_utils.py:361 #, python-brace-format msgid "Access URL {url}" msgstr "Kontakt nettadressen {url}" -#: plinth/action_utils.py:386 +#: plinth/action_utils.py:391 #, python-brace-format msgid "Connect to {host}:{port}" msgstr "Koble til {host}:{port}" -#: plinth/action_utils.py:389 +#: plinth/action_utils.py:394 #, python-brace-format msgid "Cannot connect to {host}:{port}" msgstr "Klarer ikke koble til {host}:{port}" -#: plinth/context_processors.py:38 plinth/views.py:49 +#: plinth/context_processors.py:38 plinth/views.py:52 msgid "FreedomBox" msgstr "FreedomBox" @@ -66,9 +66,17 @@ msgid "Enable application" msgstr "Aktiver program" #: plinth/forms.py:45 -msgid "Select the domain name to be used for this application" +#, fuzzy +#| msgid "Select the domain name to be used for this application" +msgid "Select a domain name to be used with this application" msgstr "Velg domenenavnet som skal brukes av dette programmet" +#: plinth/forms.py:47 +msgid "" +"Warning! The application may not work properly if domain name is changed " +"later." +msgstr "" + #: plinth/middleware.py:71 msgid "Application installed." msgstr "Program installert." @@ -105,14 +113,20 @@ msgstr "" "fiendtlig/fremmed lokalt nettverk." #: plinth/modules/bind/__init__.py:34 -msgid "" -"Domain Name Server \n" -" (BIND)" +msgid "BIND" +msgstr "" + +#: plinth/modules/bind/__init__.py:36 +#, fuzzy +#| msgid "" +#| "Domain Name Server \n" +#| " (BIND)" +msgid "Domain Name Server" msgstr "" "Domenenavntjener\n" "(BIND)" -#: plinth/modules/bind/__init__.py:43 +#: plinth/modules/bind/__init__.py:45 msgid "" "BIND is open source software that enables you to publish your Domain Name " "System (DNS) information on the Internet, and to resolve DNS queries for " @@ -122,7 +136,7 @@ msgstr "" "domenenavninformasjon (DNS) på Internett, og å slå opp dine DNS-forespørsler " "for dine brukere." -#: plinth/modules/bind/__init__.py:47 +#: plinth/modules/bind/__init__.py:49 msgid "" "BIND is by far the most widely used DNS software on the Internet, providing " "a robust and stable platform on top of which organizations can build " @@ -171,7 +185,7 @@ msgid "Enable forwarding to set forwarding DNS servers" msgstr "Aktiver videresending for å sette DNS-tjenere for videresending" #: plinth/modules/config/config.py:88 plinth/modules/config/config.py:125 -#: plinth/modules/dynamicdns/dynamicdns.py:140 +#: plinth/modules/dynamicdns/dynamicdns.py:148 msgid "Invalid domain name" msgstr "Ugyldig domenenavn" @@ -198,7 +212,7 @@ msgstr "Ugyldig vertsnavn" #: plinth/modules/config/config.py:112 plinth/modules/config/config.py:169 #: plinth/modules/config/config.py:285 -#: plinth/modules/dynamicdns/dynamicdns.py:135 +#: plinth/modules/dynamicdns/dynamicdns.py:143 msgid "Domain Name" msgstr "Domenenavn" @@ -227,7 +241,7 @@ msgid "Language for this web administration interface" msgstr "Språk i dette nettadministrasjonsgrensesnittet" #: plinth/modules/config/config.py:151 -#: plinth/modules/dynamicdns/dynamicdns.py:37 +#: plinth/modules/dynamicdns/dynamicdns.py:45 #: plinth/modules/ikiwiki/views.py:37 #: plinth/modules/tahoe/templates/tahoe-pre-setup.html:39 msgid "Configure" @@ -311,18 +325,24 @@ msgid "Time zone set" msgstr "Tidssone satt" #: plinth/modules/deluge/__init__.py:39 -msgid "" -"BitTorrent Web Client \n" -" (Deluge)" +msgid "Deluge" +msgstr "" + +#: plinth/modules/deluge/__init__.py:41 +#, fuzzy +#| msgid "" +#| "BitTorrent Web Client \n" +#| " (Deluge)" +msgid "BitTorrent Web Client" msgstr "" "BitTorrent nett-klient\n" "(Deluge)" -#: plinth/modules/deluge/__init__.py:42 +#: plinth/modules/deluge/__init__.py:44 msgid "Deluge is a BitTorrent client that features a Web UI." msgstr "Deluge er en BitTorrent-klient som har et Web-grensesnitt." -#: plinth/modules/deluge/__init__.py:44 +#: plinth/modules/deluge/__init__.py:46 msgid "" "When enabled, the Deluge web client will be available from /deluge path on the web server. The default password is 'deluge', but " @@ -389,7 +409,15 @@ msgstr "Test" msgid "Result" msgstr "Resultat" -#: plinth/modules/diaspora/__init__.py:61 +#: plinth/modules/diaspora/__init__.py:51 +msgid "diaspora*" +msgstr "" + +#: plinth/modules/diaspora/__init__.py:53 +msgid "Federated Social Network" +msgstr "" + +#: plinth/modules/diaspora/__init__.py:62 msgid "" "diaspora* is a decentralized social network where you can store and control " "your own data." @@ -397,16 +425,9 @@ msgstr "" "diaspora* er et desentralisert sosialt nettverk der du kan lagre og " "administrere dine egne data." -#: plinth/modules/diaspora/forms.py:30 -msgid "Select the domain name to be used for diaspora*" -msgstr "Velg domenenavnet som skal brukes av diaspora*" - -#: plinth/modules/diaspora/forms.py:32 -msgid "" -"Warning! Do not change the FreedomBox domain name after setting up diaspora*" +#: plinth/modules/diaspora/forms.py:31 +msgid "Enable new user registrations" msgstr "" -"Advarsel! Du må du ikke endre FreedomBox-domenenavn etter oppsett av " -"diaspora*" #: plinth/modules/diaspora/templates/diaspora-post-setup.html:32 #, python-format @@ -437,7 +458,25 @@ msgstr "" msgid "Update setup" msgstr "Oppdater oppsett" -#: plinth/modules/disks/__init__.py:33 plinth/modules/disks/views.py:39 +#: plinth/modules/diaspora/views.py:96 plinth/modules/ejabberd/views.py:60 +#: plinth/modules/openvpn/views.py:145 plinth/modules/tor/views.py:134 +#: plinth/views.py:112 +msgid "Setting unchanged" +msgstr "Oppsett uendret" + +#: plinth/modules/diaspora/views.py:100 +#, fuzzy +#| msgid "Application enabled" +msgid "User registrations enabled" +msgstr "Programmet er aktivert" + +#: plinth/modules/diaspora/views.py:104 +#, fuzzy +#| msgid "Application disabled" +msgid "User registrations disabled" +msgstr "Programmet er deaktivert" + +#: plinth/modules/disks/__init__.py:33 plinth/modules/disks/views.py:45 msgid "Disks" msgstr "Disker" @@ -482,7 +521,7 @@ msgstr "" #: plinth/modules/disks/templates/disks.html:90 #: plinth/modules/disks/templates/disks.html:102 #: plinth/modules/disks/templates/disks_expand.html:45 -#: plinth/modules/disks/views.py:56 +#: plinth/modules/disks/views.py:62 msgid "Expand Root Partition" msgstr "Utvid root-partisjon" @@ -505,45 +544,52 @@ msgstr "" "operasjonen vil det være %(expandable_root_size)s med ekstra plass " "tilgjengelig på root-partisjonen din." -#: plinth/modules/disks/views.py:65 +#: plinth/modules/disks/views.py:71 #, python-brace-format msgid "Error expanding partition: {exception}" msgstr "Utviding av partisjon feilet: {exception}" -#: plinth/modules/disks/views.py:68 +#: plinth/modules/disks/views.py:74 msgid "Partition expanded successfully." msgstr "Vellykket partisjonsutvidelse." -#: plinth/modules/disks/views.py:77 +#: plinth/modules/disks/views.py:93 +#, python-format, python-brace-format +msgid "" +"Warning: Low space on system partition ({percent_used}% used, {free_space} " +"free)." +msgstr "" + +#: plinth/modules/disks/views.py:130 #, python-brace-format msgid "{disk_size:.1f} bytes" msgstr "{disk_size:.1f} byte" -#: plinth/modules/disks/views.py:81 +#: plinth/modules/disks/views.py:134 #, python-brace-format msgid "{disk_size:.1f} KiB" msgstr "{disk_size:.1f} KiB" -#: plinth/modules/disks/views.py:85 +#: plinth/modules/disks/views.py:138 #, python-brace-format msgid "{disk_size:.1f} MiB" msgstr "{disk_size:.1f} MiB" -#: plinth/modules/disks/views.py:89 +#: plinth/modules/disks/views.py:142 #, python-brace-format msgid "{disk_size:.1f} GiB" msgstr "{disk_size:.1f} GiB" -#: plinth/modules/disks/views.py:92 +#: plinth/modules/disks/views.py:145 #, python-brace-format msgid "{disk_size:.1f} TiB" msgstr "{disk_size:.1f} TiB" -#: plinth/modules/dynamicdns/__init__.py:33 +#: plinth/modules/dynamicdns/__init__.py:35 msgid "Dynamic DNS Client" msgstr "Dynamisk DNS-klient" -#: plinth/modules/dynamicdns/__init__.py:37 +#: plinth/modules/dynamicdns/__init__.py:39 #, python-brace-format msgid "" "If your Internet provider changes your IP address periodically (i.e. every " @@ -554,7 +600,7 @@ msgstr "" "eks. hver 24 t), kan det være vanskelig for andre å finne deg på Internett. " "Dette vil hindre andre i å finne tjenester som tilbys av dette {box_name}et." -#: plinth/modules/dynamicdns/__init__.py:43 +#: plinth/modules/dynamicdns/__init__.py:45 msgid "" "The solution is to assign a DNS name to your IP address and update the DNS " "name every time your IP is changed by your Internet provider. Dynamic DNS " @@ -571,11 +617,18 @@ msgstr "" "serveren tildele DNS-navnet ditt til den nye IP-en. Hvis noen fra Internett " "ber om ditt DNS-navn, vil de da få svar med din gjeldende IP-adresse." -#: plinth/modules/dynamicdns/dynamicdns.py:35 plinth/modules/help/help.py:40 +#: plinth/modules/dynamicdns/__init__.py:67 +#: plinth/modules/dynamicdns/dynamicdns.py:377 +#, fuzzy +#| msgid "Dynamic DNS Client" +msgid "Dynamic DNS Service" +msgstr "Dynamisk DNS-klient" + +#: plinth/modules/dynamicdns/dynamicdns.py:43 plinth/modules/help/help.py:40 msgid "About" msgstr "Om" -#: plinth/modules/dynamicdns/dynamicdns.py:39 +#: plinth/modules/dynamicdns/dynamicdns.py:47 #: plinth/modules/firewall/templates/firewall.html:47 #: plinth/modules/networks/templates/connection_show.html:261 #: plinth/modules/openvpn/templates/openvpn.html:67 @@ -584,7 +637,7 @@ msgstr "Om" msgid "Status" msgstr "Status" -#: plinth/modules/dynamicdns/dynamicdns.py:63 +#: plinth/modules/dynamicdns/dynamicdns.py:71 msgid "" "The Variables <User>, <Pass>, <Ip>, <Domain> may be " "used within the URL. For details see the update URL templates of the example " @@ -594,7 +647,7 @@ msgstr "" "i nettadressen. For detaljer, se de oppdaterte nettadressemalene fra " "eksempel leverandørene." -#: plinth/modules/dynamicdns/dynamicdns.py:67 +#: plinth/modules/dynamicdns/dynamicdns.py:75 msgid "" "Please choose an update protocol according to your provider. If your " "provider does not support the GnuDIP protocol or your provider is not listed " @@ -604,7 +657,7 @@ msgstr "" "leverandøren ikke støtter GnuDIP-protokollen, eller din leverandør ikke er " "oppført, kan du bruke leverandørens URL for oppdatering." -#: plinth/modules/dynamicdns/dynamicdns.py:72 +#: plinth/modules/dynamicdns/dynamicdns.py:80 msgid "" "Please do not enter a URL here (like \"https://example.com/\") but only the " "hostname of the GnuDIP server (like \"example.com\")." @@ -612,19 +665,19 @@ msgstr "" "Vennligst ikke bruk en nettadresse her (som \"https://example.com/\"), men " "bare vertsnavnet til GnuDIP-serveren (som \"example.com\")." -#: plinth/modules/dynamicdns/dynamicdns.py:76 +#: plinth/modules/dynamicdns/dynamicdns.py:84 #, python-brace-format msgid "The public domain name you want to use to reach your {box_name}." msgstr "" "Det offentlige domenenavnet du ønsker å bruke for å få tilgang til ditt " "{box_name}." -#: plinth/modules/dynamicdns/dynamicdns.py:79 +#: plinth/modules/dynamicdns/dynamicdns.py:87 msgid "Use this option if your provider uses self signed certificates." msgstr "" "Bruk dette alternativet hvis leverandøren bruker selvsignerte sertifikater." -#: plinth/modules/dynamicdns/dynamicdns.py:82 +#: plinth/modules/dynamicdns/dynamicdns.py:90 msgid "" "If this option is selected, your username and password will be used for HTTP " "basic authentication." @@ -632,11 +685,11 @@ msgstr "" "Hvis dette alternativet velges, vil ditt brukernavn og passord brukes for " "enkel godkjenning i HTTP." -#: plinth/modules/dynamicdns/dynamicdns.py:85 +#: plinth/modules/dynamicdns/dynamicdns.py:93 msgid "Leave this field empty if you want to keep your current password." msgstr "La dette feltet stå tomt hvis du vil beholde ditt nåværende passord." -#: plinth/modules/dynamicdns/dynamicdns.py:88 +#: plinth/modules/dynamicdns/dynamicdns.py:96 #, python-brace-format msgid "" "Optional Value. If your {box_name} is not connected directly to the Internet " @@ -649,82 +702,82 @@ msgstr "" "den virkelige Internett-IP-en. Nettadressen skal bare returnere IP-en som " "tjeneren kommer fra (eksempelvis: http://myip.datasystems24.de)." -#: plinth/modules/dynamicdns/dynamicdns.py:96 +#: plinth/modules/dynamicdns/dynamicdns.py:104 msgid "The username that was used when the account was created." msgstr "Brukernavnet som ble benyttet da kontoen ble opprettet." -#: plinth/modules/dynamicdns/dynamicdns.py:107 +#: plinth/modules/dynamicdns/dynamicdns.py:115 msgid "Enable Dynamic DNS" msgstr "Aktiver dynamisk DNS (Dynamic DNS)" -#: plinth/modules/dynamicdns/dynamicdns.py:110 +#: plinth/modules/dynamicdns/dynamicdns.py:118 msgid "Service Type" msgstr "Type tjeneste" -#: plinth/modules/dynamicdns/dynamicdns.py:115 +#: plinth/modules/dynamicdns/dynamicdns.py:123 msgid "GnuDIP Server Address" msgstr "GnuDIP-tjeneradresse" -#: plinth/modules/dynamicdns/dynamicdns.py:120 +#: plinth/modules/dynamicdns/dynamicdns.py:128 msgid "Invalid server name" msgstr "Ugyldig tjenernavn" -#: plinth/modules/dynamicdns/dynamicdns.py:123 +#: plinth/modules/dynamicdns/dynamicdns.py:131 msgid "Update URL" msgstr "Oppdater URL" -#: plinth/modules/dynamicdns/dynamicdns.py:127 +#: plinth/modules/dynamicdns/dynamicdns.py:135 msgid "Accept all SSL certificates" msgstr "Godta alle SSL-sertifikater" -#: plinth/modules/dynamicdns/dynamicdns.py:131 +#: plinth/modules/dynamicdns/dynamicdns.py:139 msgid "Use HTTP basic authentication" msgstr "Bruk HTTP-basisgodkjenning" -#: plinth/modules/dynamicdns/dynamicdns.py:143 +#: plinth/modules/dynamicdns/dynamicdns.py:151 #: plinth/modules/networks/forms.py:228 plinth/modules/transmission/forms.py:37 msgid "Username" msgstr "Brukernavn" -#: plinth/modules/dynamicdns/dynamicdns.py:146 +#: plinth/modules/dynamicdns/dynamicdns.py:154 #: plinth/modules/networks/forms.py:229 plinth/modules/transmission/forms.py:41 msgid "Password" msgstr "Passord" -#: plinth/modules/dynamicdns/dynamicdns.py:149 +#: plinth/modules/dynamicdns/dynamicdns.py:157 #: plinth/modules/networks/forms.py:231 msgid "Show password" msgstr "Vis passord" -#: plinth/modules/dynamicdns/dynamicdns.py:153 +#: plinth/modules/dynamicdns/dynamicdns.py:161 msgid "URL to look up public IP" msgstr "URL for å slå opp offentlig IP" -#: plinth/modules/dynamicdns/dynamicdns.py:179 +#: plinth/modules/dynamicdns/dynamicdns.py:187 msgid "Please provide an update URL or a GnuDIP server address" msgstr "Vennligst oppgi en oppdatert nettadresse eller en GnuDIP-tjeneradresse" -#: plinth/modules/dynamicdns/dynamicdns.py:184 +#: plinth/modules/dynamicdns/dynamicdns.py:192 msgid "Please provide a GnuDIP username" msgstr "Vennligst oppgi et GnuDIP-brukernavn" -#: plinth/modules/dynamicdns/dynamicdns.py:188 +#: plinth/modules/dynamicdns/dynamicdns.py:196 msgid "Please provide a GnuDIP domain name" msgstr "Vennligst oppgi et GnuDIP-domenenavn" -#: plinth/modules/dynamicdns/dynamicdns.py:193 +#: plinth/modules/dynamicdns/dynamicdns.py:201 msgid "Please provide a password" msgstr "Vennligst oppgi et passord" -#: plinth/modules/dynamicdns/dynamicdns.py:211 +#: plinth/modules/dynamicdns/dynamicdns.py:219 msgid "Configure Dynamic DNS" msgstr "Konfigurer dynamisk DNS" -#: plinth/modules/dynamicdns/dynamicdns.py:232 +#: plinth/modules/dynamicdns/dynamicdns.py:240 msgid "Dynamic DNS Status" msgstr "Dynamisk DNS-status" -#: plinth/modules/dynamicdns/dynamicdns.py:364 +#: plinth/modules/dynamicdns/dynamicdns.py:381 #: plinth/modules/openvpn/views.py:143 plinth/modules/transmission/views.py:72 msgid "Configuration updated" msgstr "Oppsett oppdatert" @@ -796,15 +849,18 @@ msgstr "" msgid "Last update" msgstr "Siste oppdatering" -#: plinth/modules/ejabberd/__init__.py:42 -msgid "" -"Chat Server \n" -" (ejabberd)" -msgstr "" -"Lynmeldingstjener\n" -"(ejabberd)" - #: plinth/modules/ejabberd/__init__.py:45 +msgid "ejabberd" +msgstr "" + +#: plinth/modules/ejabberd/__init__.py:47 +#: plinth/modules/matrixsynapse/__init__.py:43 +#, fuzzy +#| msgid "Web Server" +msgid "Chat Server" +msgstr "Nett-tjener" + +#: plinth/modules/ejabberd/__init__.py:50 msgid "" "XMPP is an open and standardized communication protocol. Here you can run " "and configure your XMPP server, called ejabberd." @@ -812,11 +868,17 @@ msgstr "" "XMPP er en åpen og standardisert kommunikasjonsprotokoll. Her kan du kjøre " "og konfigurere din XMPP-tjener, kalt ejabberd." -#: plinth/modules/ejabberd/__init__.py:48 +#: plinth/modules/ejabberd/__init__.py:54 +#, fuzzy, python-brace-format +#| msgid "" +#| "To actually communicate, you can use the web client or any other XMPP " +#| "client." msgid "" -"To actually communicate, you can use the web client or any other XMPP client." +"To actually communicate, you can use the web " +"client or any other XMPP client. When enabled, ejabberd can be accessed by " +"any user with a {box_name} login." msgstr "" "For faktisk å kommunisere, kan du bruke webklienten eller hvilken som helst " "annen /ikiwiki." msgid "" "ikiwiki is a simple wiki and blog application. It supports several " "lightweight markup languages, including Markdown, and common blogging " "functionality such as comments and RSS feeds. When enabled, the blogs and " -"wikis will be available from /ikiwiki." +"wikis will be available at /ikiwiki (once created)." msgstr "" "ikiwiki er et enkelt wiki- og bloggsystem. Det støtter flere ulike " "lettvektsoppmerkingsspråk, inkludert Markdown, og vanlige bloggfunksjoner " "som kommentarer og RSS-kilder. Når den er aktiv, vil bloggene og wikiene " "bli tilgjengelig fra /ikiwiki." +#: plinth/modules/ikiwiki/__init__.py:53 +#, python-brace-format +msgid "" +"Only {box_name} users in the admin group can create and " +"manage blogs and wikis, but any user in the wiki group can " +"edit existing ones. In the User " +"Configuration you can change these permissions or add new users." +msgstr "" + #: plinth/modules/ikiwiki/forms.py:34 #: plinth/modules/networks/templates/connection_show.html:78 msgid "Name" @@ -1314,18 +1394,20 @@ msgid "Delete Wiki or Blog" msgstr "Slette wiki eller blogg" #: plinth/modules/infinoted/__init__.py:43 -msgid "" -"Gobby Server \n" -" (infinoted)" +msgid "infinoted" msgstr "" -"Gobby-tjener\n" -"(infinoted)" -#: plinth/modules/infinoted/__init__.py:46 +#: plinth/modules/infinoted/__init__.py:45 +#, fuzzy +#| msgid "Web Server" +msgid "Gobby Server" +msgstr "Nett-tjener" + +#: plinth/modules/infinoted/__init__.py:48 msgid "infinoted is a server for Gobby, a collaborative text editor." msgstr "infinoted er en tjener for Gobby, en samskrivende teksteditor." -#: plinth/modules/infinoted/__init__.py:49 +#: plinth/modules/infinoted/__init__.py:51 #, python-brace-format msgid "" "To use it, download Gobby, desktop " @@ -1337,14 +1419,20 @@ msgstr "" "«Koble til tjener», og skriver inn domenenavnet til din {box_name} ." #: plinth/modules/jsxc/__init__.py:36 -msgid "" -"Chat Client \n" -" (JSXC)" +msgid "JSXC" +msgstr "" + +#: plinth/modules/jsxc/__init__.py:38 +#, fuzzy +#| msgid "" +#| "Chat Client \n" +#| " (JSXC)" +msgid "Chat Client" msgstr "" "Meldings-klient\n" "(JSXC)" -#: plinth/modules/jsxc/__init__.py:40 +#: plinth/modules/jsxc/__init__.py:42 msgid "" "JSXC is a web client for XMPP. Typically it is used with an XMPP server " "running locally." @@ -1352,7 +1440,7 @@ msgstr "" "JSXC er en nettleserklient for XMPP. Typisk brukes den med en XMPP-tjener " "som kjører lokalt." -#: plinth/modules/jsxc/__init__.py:78 +#: plinth/modules/jsxc/__init__.py:80 msgid "" "Chat Client \n" " (jsxc)" @@ -1360,12 +1448,19 @@ msgstr "" "Meldings-klient\n" "(jsxc)" -#: plinth/modules/letsencrypt/__init__.py:39 -#: plinth/modules/letsencrypt/__init__.py:64 -msgid "Certificates (Let's Encrypt)" +#: plinth/modules/letsencrypt/__init__.py:40 +#, fuzzy +#| msgid "Certificates (Let's Encrypt)" +msgid "Let's Encrypt" msgstr "Sertifikater (Let's Encrypt)" -#: plinth/modules/letsencrypt/__init__.py:43 +#: plinth/modules/letsencrypt/__init__.py:42 +#, fuzzy +#| msgid "Certificate Status" +msgid "Certificates" +msgstr "Sertifikatsstatus" + +#: plinth/modules/letsencrypt/__init__.py:46 #, python-brace-format msgid "" "A digital certificate allows users of a web service to verify the identity " @@ -1380,7 +1475,7 @@ msgstr "" "ved at det selv bekrefter eierskapet til et domene overfor " "sertifiseringsinstansen (CA) Let's Encrypt." -#: plinth/modules/letsencrypt/__init__.py:50 +#: plinth/modules/letsencrypt/__init__.py:53 msgid "" "Let's Encrypt is a free, automated, and open certificate authority, run for " "the public's benefit by the Internet Security Research Group (ISRG). Please " @@ -1408,52 +1503,102 @@ msgstr "Nettstedssikkerhet" msgid "Actions" msgstr "Handlinger" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:56 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:62 #, python-format msgid "Valid, expires on %(expiry_date)s" msgstr "Gyldig, utløper %(expiry_date)s" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:63 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:69 msgid "Revoked" msgstr "Trukket tilbake" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:67 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:73 #, python-format msgid "Expired on %(expiry_date)s" msgstr "Utløpt %(expiry_date)s" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:71 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:77 msgid "Invalid test certificate" msgstr "Ugyldig testsertifikat" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:75 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:81 #, python-format msgid "Invalid (%(reason)s)" msgstr "Ugyldig (%(reason)s)" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:82 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:88 msgid "No certificate" msgstr "Sertifikat mangler" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:99 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:105 msgid "Re-obtain" msgstr "Gjeninnhente" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:105 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:111 #: plinth/modules/networks/templates/connection_show.html:63 #: plinth/modules/snapshot/templates/snapshot.html:34 msgid "Delete" msgstr "Slett" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:112 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:118 msgid "Revoke" msgstr "Inndra (tilbakekall)" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:120 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:126 msgid "Obtain" msgstr "Innhente" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:133 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:149 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:156 +#, fuzzy +#| msgid "Update" +msgid "Update config" +msgstr "Oppdater" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:161 +#, python-format +msgid "" +"\n" +" Let Plinth manage certificate renewal of\n" +" %(current_domain)s (recommended)\n" +" " +msgstr "" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:166 +msgid "" +"\n" +" Let Plinth manage certificate renewal of the current domain " +"(recommended)\n" +" " +msgstr "" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:175 +#, python-format +msgid "" +"If %(box_name)s manages the certificate renewal for the current domain, it " +"will ensure that all apps that use the certificate can use it, as soon as it " +"gets renewed." +msgstr "" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:181 +msgid "" +"No certificate available for the current domain. First obtain a " +"certificate to enable management of its renewal." +msgstr "" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:186 +#, fuzzy +#| msgid "" +#| "No domains have been configured. Configure domains to be able to obtain " +#| "certificates for them." +msgid "" +"No current domain is configured. First configure a domain to enable " +"management of its certificates." +msgstr "" +"Ingen domener er satt opp. Sett opp domener for å kunne skaffe sertifikater " +"for dem." + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:195 msgid "" "No domains have been configured. Configure domains to be able to obtain " "certificates for them." @@ -1461,7 +1606,7 @@ msgstr "" "Ingen domener er satt opp. Sett opp domener for å kunne skaffe sertifikater " "for dem." -#: plinth/modules/letsencrypt/views.py:55 +#: plinth/modules/letsencrypt/views.py:57 #, python-brace-format msgid "" "Certificate successfully revoked for domain {domain}.This may take a few " @@ -1470,40 +1615,73 @@ msgstr "" "Sertifikat vellykket tilbakekalt for domenet {domain}. Det kan ta en liten " "stund før dette tar effekt." -#: plinth/modules/letsencrypt/views.py:61 +#: plinth/modules/letsencrypt/views.py:63 #, python-brace-format msgid "Failed to revoke certificate for domain {domain}: {error}" msgstr "Klarte ikke å inndra sertifikatet for domenet {domain}: {error}" -#: plinth/modules/letsencrypt/views.py:73 +#: plinth/modules/letsencrypt/views.py:75 #, python-brace-format msgid "Certificate successfully obtained for domain {domain}" msgstr "Sertifikat vellykket innhentet til domene {domain}" -#: plinth/modules/letsencrypt/views.py:78 +#: plinth/modules/letsencrypt/views.py:81 #, python-brace-format msgid "Failed to obtain certificate for domain {domain}: {error}" msgstr "Klarte ikke å oppnå sertifikat til domene {domain}: {error}" #: plinth/modules/letsencrypt/views.py:90 +#: plinth/modules/letsencrypt/views.py:109 +#, fuzzy, python-brace-format +#| msgid "Certificate successfully deleted for domain {domain}" +msgid "Certificate renewal management enabled for {domain}." +msgstr "Vellykket sletting av sertifikatet for domenet {domain}" + +#: plinth/modules/letsencrypt/views.py:95 +#, fuzzy, python-brace-format +#| msgid "Failed to delete certificate for domain {domain}: {error}" +msgid "Failed to enable certificate renewal management for {domain}: {error}" +msgstr "Klarte ikke å slette sertifikatet for domenet {domain}: {error}" + +#: plinth/modules/letsencrypt/views.py:112 +#, fuzzy, python-brace-format +#| msgid "Certificate successfully deleted for domain {domain}" +msgid "Certificate renewal management disabled for {domain}." +msgstr "Vellykket sletting av sertifikatet for domenet {domain}" + +#: plinth/modules/letsencrypt/views.py:118 +#, fuzzy, python-brace-format +#| msgid "Failed to obtain certificate for domain {domain}: {error}" +msgid "Failed to switch certificate renewal management for {domain}: {error}" +msgstr "Klarte ikke å oppnå sertifikat til domene {domain}: {error}" + +#: plinth/modules/letsencrypt/views.py:134 +#, fuzzy, python-brace-format +#| msgid "Failed to delete certificate for domain {domain}: {error}" +msgid "Failed to disable certificate renewal management for {domain}: {error}" +msgstr "Klarte ikke å slette sertifikatet for domenet {domain}: {error}" + +#: plinth/modules/letsencrypt/views.py:141 #, python-brace-format msgid "Certificate successfully deleted for domain {domain}" msgstr "Vellykket sletting av sertifikatet for domenet {domain}" -#: plinth/modules/letsencrypt/views.py:95 +#: plinth/modules/letsencrypt/views.py:146 #, python-brace-format msgid "Failed to delete certificate for domain {domain}: {error}" msgstr "Klarte ikke å slette sertifikatet for domenet {domain}: {error}" #: plinth/modules/matrixsynapse/__init__.py:41 -msgid "" -"Chat Server \n" -" (Matrix Synapse)" +#, fuzzy +#| msgid "" +#| "Chat Server \n" +#| " (Matrix Synapse)" +msgid "Matrix Synapse" msgstr "" "Lynmeldingstjener\n" "(Matrix Synapse)" -#: plinth/modules/matrixsynapse/__init__.py:44 +#: plinth/modules/matrixsynapse/__init__.py:46 msgid "" "Matrix is an new " "ecosystem for open, federated instant messaging and VoIP. Synapse is a " @@ -1519,7 +1697,7 @@ msgstr "" "krever ikke telefonnumre for å virke. Brukere på en gitt Matrix-tjener kan " "snakke med brukere på alle andre samvirkende Matrix-tjenere." -#: plinth/modules/matrixsynapse/__init__.py:52 +#: plinth/modules/matrixsynapse/__init__.py:54 msgid "" "To communicate, you can use the available clients for mobile, desktop and the web. available clients (tilgjengelige klienter) for mobil, PC og " "Internett. Riot-klient anbefales." -#: plinth/modules/matrixsynapse/forms.py:31 -msgid "Select the domain name" -msgstr "Velg domenenavnet" - #: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:34 msgid "" "Matrix service needs to be configured for a domain. Users on other Matrix " @@ -1577,14 +1751,20 @@ msgstr "" "etter det første oppsettet støttes ikke for øyeblikket." #: plinth/modules/minetest/__init__.py:48 -msgid "" -"Block Sandbox \n" -" (Minetest)" +msgid "Minetest" +msgstr "" + +#: plinth/modules/minetest/__init__.py:50 +#, fuzzy +#| msgid "" +#| "Block Sandbox \n" +#| " (Minetest)" +msgid "Block Sandbox" msgstr "" "Block Sandbox\n" "(Minetest)" -#: plinth/modules/minetest/__init__.py:52 +#: plinth/modules/minetest/__init__.py:54 #, python-brace-format msgid "" "Minetest is a multiplayer infinite-world block sandbox. This module enables " @@ -1635,7 +1815,8 @@ msgstr "Aktiver skade" #: plinth/modules/minetest/forms.py:54 msgid "When disabled, players cannot die or receive damage of any kind." -msgstr "Når den ikke er aktiv, kan ikke spillere dø eller ta skade av noe slag." +msgstr "" +"Når den ikke er aktiv, kan ikke spillere dø eller ta skade av noe slag." #: plinth/modules/minetest/views.py:58 msgid "Maximum players configuration updated" @@ -1723,7 +1904,7 @@ msgstr "Secure Shell (SSH)" #: plinth/modules/monkeysphere/templates/monkeysphere.html:87 #: plinth/modules/monkeysphere/templates/monkeysphere_details.html:60 -#: plinth/service.py:117 +#: plinth/service.py:116 msgid "Web Server" msgstr "Nett-tjener" @@ -1823,14 +2004,20 @@ msgid "Error occurred while publishing key." msgstr "Feil oppstått under utlegging av nøkkel." #: plinth/modules/mumble/__init__.py:35 -msgid "" -"Voice Chat \n" -" (Mumble)" +msgid "Mumble" +msgstr "" + +#: plinth/modules/mumble/__init__.py:37 +#, fuzzy +#| msgid "" +#| "Voice Chat \n" +#| " (Mumble)" +msgid "Voice Chat" msgstr "" "Nettprat\n" "(Mumble)" -#: plinth/modules/mumble/__init__.py:44 +#: plinth/modules/mumble/__init__.py:46 msgid "" "Mumble is an open source, low-latency, encrypted, high quality voice chat " "software." @@ -1838,7 +2025,7 @@ msgstr "" "Mumble er en åpen kildekode, rask, kryptert, høy kvalitets programvare for " "nettprat." -#: plinth/modules/mumble/__init__.py:47 +#: plinth/modules/mumble/__init__.py:49 msgid "" "You can connect to your Mumble server on the regular Mumble port 64738. Clients to connect to Mumble from your " @@ -2356,7 +2543,7 @@ msgid "This connection is not active." msgstr "Denne forbindelsen er ikke aktiv." #: plinth/modules/networks/templates/connection_show.html:266 -#: plinth/modules/security/__init__.py:32 plinth/modules/security/views.py:46 +#: plinth/modules/security/__init__.py:32 plinth/modules/security/views.py:48 msgid "Security" msgstr "Sikkerhet" @@ -2464,14 +2651,22 @@ msgid "Inactive" msgstr "Slått av (inaktiv)" #: plinth/modules/openvpn/__init__.py:42 -msgid "" -"Virtual Private Network \n" -" (OpenVPN)" +#, fuzzy +#| msgid "Open" +msgid "OpenVPN" +msgstr "Åpen" + +#: plinth/modules/openvpn/__init__.py:44 +#, fuzzy +#| msgid "" +#| "Virtual Private Network \n" +#| " (OpenVPN)" +msgid "Virtual Private Network" msgstr "" "Virtuelt privat nettverk\n" " (OpenVPN)" -#: plinth/modules/openvpn/__init__.py:46 +#: plinth/modules/openvpn/__init__.py:48 #, python-brace-format msgid "" "Virtual Private Network (VPN) is a technique for securely connecting two " @@ -2488,7 +2683,7 @@ msgstr "" "Du kan også få tilgang til resten av Internettet via {box_name} med utvidet " "sikkerhet og anonymitet." -#: plinth/modules/openvpn/__init__.py:84 +#: plinth/modules/openvpn/__init__.py:86 #, python-brace-format msgid "" "Download Profile" @@ -2578,10 +2773,18 @@ msgid "Setup failed." msgstr "Oppsettet mislyktes." #: plinth/modules/pagekite/__init__.py:44 -msgid "Public Visibility (PageKite)" +#, fuzzy +#| msgid "Pagekite" +msgid "PageKite" +msgstr "PageKite" + +#: plinth/modules/pagekite/__init__.py:46 +#, fuzzy +#| msgid "Public Visibility (PageKite)" +msgid "Public Visibility" msgstr "Offentlig synlighet (PageKite)" -#: plinth/modules/pagekite/__init__.py:48 +#: plinth/modules/pagekite/__init__.py:50 #, python-brace-format msgid "" "PageKite is a system for exposing {box_name} services when you don't have a " @@ -2594,17 +2797,17 @@ msgstr "" "{box_name}-tjenester ikke nås fra resten av nettet. Dette omfatter de " "følgende situasjoner:" -#: plinth/modules/pagekite/__init__.py:55 +#: plinth/modules/pagekite/__init__.py:57 #, python-brace-format msgid "{box_name} is behind a restricted firewall." msgstr "{box_name} er bak en begrensende brannmur." -#: plinth/modules/pagekite/__init__.py:59 +#: plinth/modules/pagekite/__init__.py:61 #, python-brace-format msgid "{box_name} is connected to a (wireless) router which you don't control." msgstr "{box_name} er koblet til en (trådløs) ruter du ikke kan kontrollere." -#: plinth/modules/pagekite/__init__.py:62 +#: plinth/modules/pagekite/__init__.py:64 msgid "" "Your ISP does not provide you an external IP address and instead provides " "Internet connection through NAT." @@ -2612,7 +2815,7 @@ msgstr "" "Din Internett-leverandør gir deg ikke en ekstern IP-adresse, og gir i stedet " "en NAT-et Internett-tilkobling." -#: plinth/modules/pagekite/__init__.py:65 +#: plinth/modules/pagekite/__init__.py:67 msgid "" "Your ISP does not provide you a static IP address and your IP address " "changes evertime you connect to Internet." @@ -2620,11 +2823,11 @@ msgstr "" "Internett-leverandøren gir deg ikke en statisk IP-adresse, og IP-adressen " "endres hver gang du kobler deg til Internett." -#: plinth/modules/pagekite/__init__.py:68 +#: plinth/modules/pagekite/__init__.py:70 msgid "Your ISP limits incoming connections." msgstr "Din Internett-leverandør begrenser innkommende oppkoblinger." -#: plinth/modules/pagekite/__init__.py:71 +#: plinth/modules/pagekite/__init__.py:73 #, python-brace-format msgid "" "PageKite works around NAT, firewalls and IP-address limitations by using a " @@ -2925,8 +3128,8 @@ msgstr "Tilpassede tjenester" msgid "Pagekite setup finished. The HTTP and HTTPS services are activated now." msgstr "PageKite oppsett ferdig. HTTP- og HTTPS-tjenester er nå aktivert." -#: plinth/modules/power/__init__.py:28 plinth/modules/power/views.py:50 -#: plinth/modules/power/views.py:65 +#: plinth/modules/power/__init__.py:28 plinth/modules/power/views.py:51 +#: plinth/modules/power/views.py:67 msgid "Power" msgstr "Strøm" @@ -2935,10 +3138,22 @@ msgid "Restart or shut down the system." msgstr "Start om igjen, eller slå av systemet." #: plinth/modules/power/templates/power.html:28 +#, fuzzy +#| msgid "" +#| "Another installation or upgrade is already running. Please wait for a few " +#| "moments before trying again." +msgid "" +"Currently an installation or upgrade is running. Consider waiting until it's " +"finished before shutting down or restarting." +msgstr "" +"En annen installasjon eller oppgradering kjører allerede. Vent litt før du " +"prøver igjen." + +#: plinth/modules/power/templates/power.html:37 msgid "Restart »" msgstr "Omstart »" -#: plinth/modules/power/templates/power.html:31 +#: plinth/modules/power/templates/power.html:40 msgid "Shut Down »" msgstr "Slå av »" @@ -2950,7 +3165,20 @@ msgstr "" "Er du sikker på at du ønsker en omstart? Du vil ikke få kontakt med dette " "webgrensesnittet i noen få minutter inntil systemet er startet opp igjen." -#: plinth/modules/power/templates/power_restart.html:42 +#: plinth/modules/power/templates/power_restart.html:38 +#, fuzzy +#| msgid "" +#| "Another installation or upgrade is already running. Please wait for a few " +#| "moments before trying again." +msgid "" +"Currently an installation or upgrade is running. Consider waiting until it's " +"finished before restarting." +msgstr "" +"En annen installasjon eller oppgradering kjører allerede. Vent litt før du " +"prøver igjen." + +#: plinth/modules/power/templates/power_restart.html:52 +#: plinth/modules/power/templates/power_restart.html:55 msgid "Restart Now" msgstr "Omstart nå" @@ -2962,19 +3190,38 @@ msgstr "" "Er du sikker på at du ønsker å slå av? Du vil ikke få kontakt med dette " "webgrensesnittet etter at systemet er slått av." -#: plinth/modules/power/templates/power_shutdown.html:41 +#: plinth/modules/power/templates/power_shutdown.html:37 +#, fuzzy +#| msgid "" +#| "Another installation or upgrade is already running. Please wait for a few " +#| "moments before trying again." +msgid "" +"Currently an installation or upgrade is running. Consider waiting until it's " +"finished before shutting down." +msgstr "" +"En annen installasjon eller oppgradering kjører allerede. Vent litt før du " +"prøver igjen." + +#: plinth/modules/power/templates/power_shutdown.html:51 +#: plinth/modules/power/templates/power_shutdown.html:54 msgid "Shut Down Now" msgstr "Slå av nå" #: plinth/modules/privoxy/__init__.py:43 -msgid "" -"Web Proxy \n" -" (Privoxy)" +msgid "Privoxy" +msgstr "" + +#: plinth/modules/privoxy/__init__.py:45 +#, fuzzy +#| msgid "" +#| "Web Proxy \n" +#| " (Privoxy)" +msgid "Web Proxy" msgstr "" "Mellomtjener for nettet\n" "(Privoxy)" -#: plinth/modules/privoxy/__init__.py:46 +#: plinth/modules/privoxy/__init__.py:48 msgid "" "Privoxy is a non-caching web proxy with advanced filtering capabilities for " "enhancing privacy, modifying web page data and HTTP headers, controlling " @@ -2985,7 +3232,7 @@ msgstr "" "overskrifter, kontrollere tilgang, og fjerne annonser og annet ubehagelig " "Internett-søppel. " -#: plinth/modules/privoxy/__init__.py:52 +#: plinth/modules/privoxy/__init__.py:54 #, python-brace-format msgid "" "You can use Privoxy by modifying your browser proxy settings to your " @@ -3001,20 +3248,26 @@ msgstr "" "privoxy.org\">http://config.privoxy.org/ eller http://p.p." -#: plinth/modules/privoxy/__init__.py:144 +#: plinth/modules/privoxy/__init__.py:147 #, python-brace-format msgid "Access {url} with proxy {proxy} on tcp{kind}" msgstr "Tilgang {url} med mellomtjener {proxy} på tcp{kind}" #: plinth/modules/quassel/__init__.py:42 -msgid "" -"IRC Client \n" -" (Quassel)" +msgid "Quassel" +msgstr "" + +#: plinth/modules/quassel/__init__.py:44 +#, fuzzy +#| msgid "" +#| "IRC Client \n" +#| " (Quassel)" +msgid "IRC Client" msgstr "" "IRC-klient\n" "(Quassel)" -#: plinth/modules/quassel/__init__.py:46 +#: plinth/modules/quassel/__init__.py:48 #, python-brace-format msgid "" "Quassel is an IRC application that is split into two parts, a \"core\" and a " @@ -3031,7 +3284,7 @@ msgstr "" "skrivebordet kan en eller flere Quassel-klienter brukes til å koble til og " "fra." -#: plinth/modules/quassel/__init__.py:54 +#: plinth/modules/quassel/__init__.py:56 msgid "" "You can connect to your Quassel core on the default Quassel port 4242. " "Clients to connect to Quassel from your mobile enheter er tilgjengelig." #: plinth/modules/radicale/__init__.py:43 -msgid "" -"Calendar and Addressbook \n" -" (Radicale)" +msgid "Radicale" +msgstr "" + +#: plinth/modules/radicale/__init__.py:45 +#, fuzzy +#| msgid "" +#| "Calendar and Addressbook \n" +#| " (Radicale)" +msgid "Calendar and Addressbook" msgstr "" "Kalender og adressebok\n" "(Radicale)" -#: plinth/modules/radicale/__init__.py:47 -#, python-brace-format +#: plinth/modules/radicale/__init__.py:49 +#, fuzzy, python-brace-format +#| msgid "" +#| "Radicale is a CalDAV and CardDAV server. It allows synchronization and " +#| "sharing of scheduling and contact data. To use Radicale, a " +#| "supported client application is needed. Radicale can be accessed by " +#| "any user with a {box_name} login." msgid "" "Radicale is a CalDAV and CardDAV server. It allows synchronization and " "sharing of scheduling and contact data. To use Radicale, a supported " -"client application is needed. Radicale can be accessed by any user with " -"a {box_name} login." +"radicale.org/clients/\">supported client application is needed. Radicale " +"can be accessed by any user with a {box_name} login." msgstr "" "Radicale er en CalDAV- og CardDAV-tjener. Den tillater synkronisering og " "deling av kontakt- og planleggingsdata. For å bruke Radicale trenges et Jitsi (for computers) and CSipSimple (for Android telefoner)." -#: plinth/modules/repro/__init__.py:53 +#: plinth/modules/repro/__init__.py:55 msgid "" "Note: Before using repro, domains and users will need to " "be configured using the web-based " @@ -3136,14 +3402,20 @@ msgstr "" "repro-tjenesten på nytt. Deaktiver tjenesten og reaktiver den." #: plinth/modules/restore/__init__.py:36 -msgid "" -"Unhosted Storage \n" -" (reStore)" +msgid "reStore" +msgstr "" + +#: plinth/modules/restore/__init__.py:38 +#, fuzzy +#| msgid "" +#| "Unhosted Storage \n" +#| " (reStore)" +msgid "Unhosted Storage" msgstr "" "Vertsløs lagring\n" "(reStore)" -#: plinth/modules/restore/__init__.py:40 +#: plinth/modules/restore/__init__.py:42 #, python-brace-format msgid "" "reStore is a server for unhosted web " @@ -3158,7 +3430,7 @@ msgstr "" "som brukeren selv velger. Med reStore blir {box_name} din vertsfrie " "lagringstjener." -#: plinth/modules/restore/__init__.py:47 +#: plinth/modules/restore/__init__.py:49 msgid "" "You can create and edit accounts in the reStore web-" "interface." @@ -3167,14 +3439,20 @@ msgstr "" "interface (ReStore webgrensesnitt)." #: plinth/modules/roundcube/__init__.py:35 -msgid "" -"Email Client \n" -" (Roundcube)" +msgid "Roundcube" +msgstr "" + +#: plinth/modules/roundcube/__init__.py:37 +#, fuzzy +#| msgid "" +#| "Email Client \n" +#| " (Roundcube)" +msgid "Email Client" msgstr "" "E-postklient\n" "(Roundcube)" -#: plinth/modules/roundcube/__init__.py:38 +#: plinth/modules/roundcube/__init__.py:40 msgid "" "Roundcube webmail is a browser-based multilingual IMAP client with an " "application-like user interface. It provides full functionality you expect " @@ -3186,7 +3464,7 @@ msgstr "" "forventer fra en e-posttjener, medregnet MIME-støtte, adressebok, " "mappebehandling, søk etter meldinger og stavekontroll." -#: plinth/modules/roundcube/__init__.py:44 +#: plinth/modules/roundcube/__init__.py:46 msgid "" "You can access Roundcube from /roundcube. Provide " "the username and password of the email account you wish to access followed " @@ -3200,7 +3478,7 @@ msgstr "" "example.com. For IMAP over SSL (anbefalt), fyll feltet for tjeneren, " "som imaps://imap.example.com." -#: plinth/modules/roundcube/__init__.py:51 +#: plinth/modules/roundcube/__init__.py:53 msgid "" "For Gmail, username will be your Gmail address, password will be your Google " "account password and server will be imaps://imap.gmail.com. " @@ -3230,28 +3508,45 @@ msgstr "" "ha mulighet til å logge inn via konsollet eller via SSH. Konsollbrukere kan " "være i stand til å koble seg til endel tjenester uten tilgangskontroll." -#: plinth/modules/security/views.py:63 +#: plinth/modules/security/forms.py:35 +msgid "Fail2ban (recommended)" +msgstr "" + +#: plinth/modules/security/forms.py:36 +msgid "" +"When this option is enabled, fail2ban will limit brute force break-in " +"attempts to the SSH server and other password protected internet-services " +"which are enabled." +msgstr "" + +#: plinth/modules/security/views.py:66 #, python-brace-format msgid "Error setting restricted access: {exception}" msgstr "Feil ved oppsetting av begrenset tilgang: {exception}" -#: plinth/modules/security/views.py:66 +#: plinth/modules/security/views.py:69 msgid "Updated security configuration" msgstr "Oppdaterte sikkerhetsoppsett" #: plinth/modules/shaarli/__init__.py:35 -msgid "" -"Bookmarks \n" -" (Shaarli)" +msgid "Shaarli" +msgstr "" + +#: plinth/modules/shaarli/__init__.py:37 +#, fuzzy +#| msgid "" +#| "Bookmarks \n" +#| " (Shaarli)" +msgid "Bookmarks" msgstr "" "Bokmerker\n" "(Shaarli)" -#: plinth/modules/shaarli/__init__.py:38 +#: plinth/modules/shaarli/__init__.py:40 msgid "Shaarli allows you to save and share bookmarks." msgstr "Shaarli tillater deg å lagre og dele bokmerker." -#: plinth/modules/shaarli/__init__.py:40 +#: plinth/modules/shaarli/__init__.py:42 msgid "" "When enabled, Shaarli will be available from /shaarli path on the web server. Note that Shaarli only supports a single user " @@ -3381,6 +3676,18 @@ msgstr "Systemet må startes på nytt for å fullføre tilbakerullingen." msgid "Rollback to Snapshot" msgstr "Rull tilbake til øyeblikksbilde" +#: plinth/modules/ssh/__init__.py:37 +msgid "Secure Shell (SSH) Server" +msgstr "Secure Shell (SSH) tjener" + +#: plinth/modules/ssh/__init__.py:40 +msgid "" +"A Secure Shell server uses the secure shell protocol to accept connections " +"from remote computers. An authorized remote computer can perform " +"administration tasks, copy files or run other services using such " +"connections." +msgstr "" + #: plinth/modules/sso/__init__.py:30 msgid "Single Sign On" msgstr "Engangspålogging" @@ -3390,14 +3697,20 @@ msgid "Login" msgstr "Login" #: plinth/modules/syncthing/__init__.py:39 -msgid "" -"File Synchronization \n" -" (Syncthing)" +msgid "Syncthing" +msgstr "" + +#: plinth/modules/syncthing/__init__.py:41 +#, fuzzy +#| msgid "" +#| "File Synchronization \n" +#| " (Syncthing)" +msgid "File Synchronization" msgstr "" "Filsynkronisering\n" " (Syncthing)" -#: plinth/modules/syncthing/__init__.py:42 +#: plinth/modules/syncthing/__init__.py:44 msgid "" "Syncthing is an application to synchronize files across multiple devices, e." "g. your desktop computer and mobile phone. Creation, modification, or " @@ -3408,7 +3721,7 @@ msgstr "" "Oppretting, endring og sletting av filer på én enhet vil automatisk bli " "replikert (gjenskapt) til andre enheter." -#: plinth/modules/syncthing/__init__.py:47 +#: plinth/modules/syncthing/__init__.py:49 #, python-brace-format msgid "" "Running Syncthing on {box_name} provides an extra synchronization point for " @@ -3425,7 +3738,7 @@ msgstr "" "med sine egne sett med mapper. Webgrensesnittet er bare tilgjengelig for " "brukere som hører til i «admin»-gruppen." -#: plinth/modules/syncthing/__init__.py:54 +#: plinth/modules/syncthing/__init__.py:56 msgid "" "When enabled, Syncthing's web interface will be available from /syncthing. Desktop and mobile clients are also -tilgjengelig (available)." #: plinth/modules/tahoe/__init__.py:42 -msgid "Distributed File Storage (Tahoe-LAFS)" +msgid "Tahoe-LAFS" +msgstr "" + +#: plinth/modules/tahoe/__init__.py:44 +#, fuzzy +#| msgid "Distributed File Storage (Tahoe-LAFS)" +msgid "Distributed File Storage" msgstr "Distribuert fillagring (Tahoe-LAFS)" -#: plinth/modules/tahoe/__init__.py:73 +#: plinth/modules/tahoe/__init__.py:75 msgid "" "Tahoe-LAFS is a decentralized secure file storage system. It uses provider " "independent security to store files over a distributed network of storage " @@ -3451,7 +3770,7 @@ msgstr "" "nettverk av lagringsnoder. Selv om noen av nodene mislykkes, kan filene " "hentes tilbake fra de gjenværende nodene." -#: plinth/modules/tahoe/__init__.py:78 +#: plinth/modules/tahoe/__init__.py:80 #, python-brace-format msgid "" "This {box_name} hosts a storage node and an introducer by default. " @@ -3501,7 +3820,17 @@ msgstr "Tilknyttede introduserere" msgid "Remove" msgstr "Fjern" -#: plinth/modules/tor/__init__.py:45 +#: plinth/modules/tor/__init__.py:42 +msgid "Tor" +msgstr "" + +#: plinth/modules/tor/__init__.py:44 +#, fuzzy +#| msgid "Tor Anonymity Network" +msgid "Anonymity Network" +msgstr "Tor anonymitetsnettverk" + +#: plinth/modules/tor/__init__.py:47 msgid "" "Tor is an anonymous communication system. You can learn more about it from " "the Tor Project website. For " @@ -3515,36 +3844,36 @@ msgstr "" "\"https://www.torproject.org/download/download-easy.html.en\">Tor Browser." -#: plinth/modules/tor/__init__.py:70 plinth/modules/tor/__init__.py:112 +#: plinth/modules/tor/__init__.py:72 plinth/modules/tor/__init__.py:114 msgid "Tor Anonymity Network" msgstr "Tor anonymitetsnettverk" -#: plinth/modules/tor/__init__.py:76 plinth/modules/tor/__init__.py:120 +#: plinth/modules/tor/__init__.py:78 plinth/modules/tor/__init__.py:122 msgid "Tor Bridge Relay" msgstr "Tor Bridge Relay" -#: plinth/modules/tor/__init__.py:98 plinth/modules/tor/__init__.py:141 +#: plinth/modules/tor/__init__.py:100 plinth/modules/tor/__init__.py:143 msgid "Tor Hidden Service" msgstr "Skjult Tor-tjeneste" -#: plinth/modules/tor/__init__.py:160 +#: plinth/modules/tor/__init__.py:162 msgid "Tor relay port available" msgstr "Tor relay-port tilgjengelig" -#: plinth/modules/tor/__init__.py:168 +#: plinth/modules/tor/__init__.py:170 msgid "Obfs3 transport registered" msgstr "Obfs3-transport registrert" -#: plinth/modules/tor/__init__.py:174 +#: plinth/modules/tor/__init__.py:176 msgid "Obfs4 transport registered" msgstr "Obfs4-transport registrert" -#: plinth/modules/tor/__init__.py:211 +#: plinth/modules/tor/__init__.py:213 #, python-brace-format msgid "Access URL {url} on tcp{kind} via Tor" msgstr "Adgang til URL {url} på tcp{kind} via Tor" -#: plinth/modules/tor/__init__.py:222 +#: plinth/modules/tor/__init__.py:224 #, python-brace-format msgid "Confirm Tor usage at {url} on tcp{kind}" msgstr "Bekreft Tor-bruk på {url} via tcp{kind}" @@ -3712,14 +4041,20 @@ msgid "An error occurred during configuration." msgstr "En feil oppsto under konfigureringen." #: plinth/modules/transmission/__init__.py:38 -msgid "" -"BitTorrent \n" -" (Transmission)" +#, fuzzy +#| msgid "" +#| "BitTorrent \n" +#| " (Transmission)" +msgid "Transmission" msgstr "" "BitTorrent\n" "(Transmission)" -#: plinth/modules/transmission/__init__.py:41 +#: plinth/modules/transmission/__init__.py:40 +msgid "BitTorrent" +msgstr "" + +#: plinth/modules/transmission/__init__.py:43 msgid "" "BitTorrent is a peer-to-peer file sharing protocol. Transmission daemon " "handles Bitorrent file sharing. Note that BitTorrent is not anonymous." @@ -3728,7 +4063,7 @@ msgstr "" "(overføringsdemon) håndterer BitTorrent-fildeling i bakgrunnen. Merk at " "BitTorrent ikke er anonym." -#: plinth/modules/transmission/__init__.py:44 +#: plinth/modules/transmission/__init__.py:46 msgid "" "Access the web interface at /transmission." msgstr "" @@ -3762,15 +4097,21 @@ msgstr "" "kryptert format. Å sette et nytt passord, skriv inn passordet i klartekst " "(vanlig tekst)." -#: plinth/modules/ttrss/__init__.py:37 -msgid "" -"News Feed Reader \n" -" (Tiny Tiny RSS)" +#: plinth/modules/ttrss/__init__.py:39 +msgid "Tiny Tiny RSS" +msgstr "" + +#: plinth/modules/ttrss/__init__.py:41 +#, fuzzy +#| msgid "" +#| "News Feed Reader \n" +#| " (Tiny Tiny RSS)" +msgid "News Feed Reader" msgstr "" "Nyhetstrøm-leser\n" "(Tiny Tiny RSS)" -#: plinth/modules/ttrss/__init__.py:40 +#: plinth/modules/ttrss/__init__.py:44 msgid "" "Tiny Tiny RSS is a news feed (RSS/Atom) reader and aggregator, designed to " "allow reading news from any location, while feeling as close to a real " @@ -3780,10 +4121,15 @@ msgstr "" "designet for å kunne lese nyheter fra hvor som helst, mens man er så nær en " "virkelig skrivebordsenhet som mulig." -#: plinth/modules/ttrss/__init__.py:44 +#: plinth/modules/ttrss/__init__.py:49 +#, fuzzy, python-brace-format +#| msgid "" +#| "When enabled, Tiny Tiny RSS will be available from /" +#| "tt-rss path on the web server." msgid "" "When enabled, Tiny Tiny RSS will be available from /tt-" -"rss path on the web server." +"rss path on the web server. It can be accessed by any user with a {box_name} login." msgstr "" "Når aktivert, er Tiny Tiny RSS tilgjengelig fra /tt-" "rss-banen på netttjeneren." @@ -4100,15 +4446,11 @@ msgstr "mediaendring" msgid "configuration file: {file}" msgstr "oppsettsfil: {file}" -#: plinth/service.py:119 +#: plinth/service.py:118 msgid "Web Server over Secure Socket Layer" msgstr "Webtjener over SSL" -#: plinth/service.py:121 -msgid "Secure Shell (SSH) Server" -msgstr "Secure Shell (SSH) tjener" - -#: plinth/service.py:123 +#: plinth/service.py:120 #, python-brace-format msgid "{box_name} Web Interface (Plinth)" msgstr "{box_name} Web-grensesnitt (Plinth)" @@ -4161,11 +4503,11 @@ msgstr "" "veldig fint om du legger ved statusloggen " "til feilrapporten." -#: plinth/templates/apps.html:25 +#: plinth/templates/apps.html:33 msgid "Services and Applications" msgstr "Tjenester og programmer" -#: plinth/templates/apps.html:28 +#: plinth/templates/apps.html:36 #, python-format msgid "" "You can install and run various services and applications on your " @@ -4176,7 +4518,7 @@ msgstr "" "%(box_name)s. Klikk på en programlenke til venstre for å lese en beskrivelse " "av programmet, og velge å installere det." -#: plinth/templates/apps.html:36 +#: plinth/templates/apps.html:44 msgid "" "This box can be your photo sharing site, your instant messaging site, your " "social networking site, your news site. Remember web portals? We can be " @@ -4351,17 +4693,17 @@ msgstr "Installere %(package_names)s: %(status)s" msgid "%(percentage)s%% complete" msgstr "%(percentage)s%% fullført" -#: plinth/templates/system.html:25 +#: plinth/templates/system.html:33 msgid "System Configuration" msgstr "Systemoppsett" -#: plinth/templates/system.html:28 +#: plinth/templates/system.html:36 #, python-format msgid "Here you can administrate the underlying system of your %(box_name)s." msgstr "" "Her kan du administrere det underliggende systemet til ditt %(box_name)s." -#: plinth/templates/system.html:34 +#: plinth/templates/system.html:42 #, python-format msgid "" "The options affect the %(box_name)s at its most general level, so be careful!" @@ -4369,6 +4711,43 @@ msgstr "" "Valgene som berører %(box_name)s er på det mest grunnleggende nivået, så vær " "forsiktig!" +#~ msgid "Select the domain name to be used for diaspora*" +#~ msgstr "Velg domenenavnet som skal brukes av diaspora*" + +#~ msgid "" +#~ "Warning! Do not change the FreedomBox domain name after setting up " +#~ "diaspora*" +#~ msgstr "" +#~ "Advarsel! Du må du ikke endre FreedomBox-domenenavn etter oppsett av " +#~ "diaspora*" + +#~ msgid "" +#~ "Chat Server \n" +#~ " (ejabberd)" +#~ msgstr "" +#~ "Lynmeldingstjener\n" +#~ "(ejabberd)" + +#~ msgid "Wiki and Blog (ikiwiki)" +#~ msgstr "Wiki og blogg (ikiwiki)" + +#~ msgid "" +#~ "Gobby Server \n" +#~ " (infinoted)" +#~ msgstr "" +#~ "Gobby-tjener\n" +#~ "(infinoted)" + +#~ msgid "Select the domain name" +#~ msgstr "Velg domenenavnet" + +#~ msgid "" +#~ "SIP Server \n" +#~ " (repro)" +#~ msgstr "" +#~ "SIP-tjener\n" +#~ "(repro)" + #~ msgid "Applications" #~ msgstr "Anvendelser" diff --git a/plinth/locale/nl/LC_MESSAGES/django.po b/plinth/locale/nl/LC_MESSAGES/django.po index 8d581082e..8fb9b07a7 100644 --- a/plinth/locale/nl/LC_MESSAGES/django.po +++ b/plinth/locale/nl/LC_MESSAGES/django.po @@ -7,11 +7,11 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2017-07-10 22:56-0400\n" +"POT-Creation-Date: 2017-09-24 11:24-0400\n" "PO-Revision-Date: 2017-08-21 05:56+0000\n" "Last-Translator: ikmaak \n" -"Language-Team: Dutch " -"\n" +"Language-Team: Dutch \n" "Language: nl\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -21,37 +21,37 @@ msgstr "" "X-Language: nl_NL\n" "X-Source-Language: C\n" -#: plinth/action_utils.py:254 +#: plinth/action_utils.py:259 #, python-brace-format msgid "Listening on {kind} port {listen_address}:{port}" msgstr "Luistert op {kind} poort {listen_address}:{port}" -#: plinth/action_utils.py:257 +#: plinth/action_utils.py:262 #, python-brace-format msgid "Listening on {kind} port {port}" msgstr "Luistert op {kind} poort {port}" -#: plinth/action_utils.py:352 +#: plinth/action_utils.py:357 #, python-brace-format msgid "Access URL {url} on tcp{kind}" msgstr "Gebruik URL {url} op tcp{kind}" -#: plinth/action_utils.py:356 +#: plinth/action_utils.py:361 #, python-brace-format msgid "Access URL {url}" msgstr "ToegangsURL {url}" -#: plinth/action_utils.py:386 +#: plinth/action_utils.py:391 #, python-brace-format msgid "Connect to {host}:{port}" msgstr "Verbind met {host}:{port}" -#: plinth/action_utils.py:389 +#: plinth/action_utils.py:394 #, python-brace-format msgid "Cannot connect to {host}:{port}" msgstr "Kan niet verbinden met {host}:{port}" -#: plinth/context_processors.py:38 plinth/views.py:49 +#: plinth/context_processors.py:38 plinth/views.py:52 msgid "FreedomBox" msgstr "FreedomBox" @@ -60,9 +60,17 @@ msgid "Enable application" msgstr "Toepassing inschakelen" #: plinth/forms.py:45 -msgid "Select the domain name to be used for this application" +#, fuzzy +#| msgid "Select the domain name to be used for this application" +msgid "Select a domain name to be used with this application" msgstr "Selecteer de domeinnaam voor deze applicatie" +#: plinth/forms.py:47 +msgid "" +"Warning! The application may not work properly if domain name is changed " +"later." +msgstr "" + #: plinth/middleware.py:71 msgid "Application installed." msgstr "De toepassing is geïnstalleerd." @@ -99,14 +107,20 @@ msgstr "" "mogelijk vijandig lokaal netwerk." #: plinth/modules/bind/__init__.py:34 -msgid "" -"Domain Name Server \n" -" (BIND)" +msgid "BIND" +msgstr "" + +#: plinth/modules/bind/__init__.py:36 +#, fuzzy +#| msgid "" +#| "Domain Name Server \n" +#| " (BIND)" +msgid "Domain Name Server" msgstr "" "Domeinnaam Server \n" " (BIND)" -#: plinth/modules/bind/__init__.py:43 +#: plinth/modules/bind/__init__.py:45 msgid "" "BIND is open source software that enables you to publish your Domain Name " "System (DNS) information on the Internet, and to resolve DNS queries for " @@ -116,7 +130,7 @@ msgstr "" "informatie op het Internet kunt publiceren, en DNS-aanvragen voor uw " "gebruikers kunt beantwoorden." -#: plinth/modules/bind/__init__.py:47 +#: plinth/modules/bind/__init__.py:49 msgid "" "BIND is by far the most widely used DNS software on the Internet, providing " "a robust and stable platform on top of which organizations can build " @@ -165,7 +179,7 @@ msgid "Enable forwarding to set forwarding DNS servers" msgstr "Forwarding instellen om DNS-servers doorsturen in te schakelen" #: plinth/modules/config/config.py:88 plinth/modules/config/config.py:125 -#: plinth/modules/dynamicdns/dynamicdns.py:140 +#: plinth/modules/dynamicdns/dynamicdns.py:148 msgid "Invalid domain name" msgstr "Foutieve domeinnaam" @@ -192,7 +206,7 @@ msgstr "Foutieve hostnaam" #: plinth/modules/config/config.py:112 plinth/modules/config/config.py:169 #: plinth/modules/config/config.py:285 -#: plinth/modules/dynamicdns/dynamicdns.py:135 +#: plinth/modules/dynamicdns/dynamicdns.py:143 msgid "Domain Name" msgstr "Domeinnaam" @@ -222,7 +236,7 @@ msgid "Language for this web administration interface" msgstr "Taalkeuze voor deze webadministratie-interface" #: plinth/modules/config/config.py:151 -#: plinth/modules/dynamicdns/dynamicdns.py:37 +#: plinth/modules/dynamicdns/dynamicdns.py:45 #: plinth/modules/ikiwiki/views.py:37 #: plinth/modules/tahoe/templates/tahoe-pre-setup.html:39 msgid "Configure" @@ -306,18 +320,26 @@ msgid "Time zone set" msgstr "Tijdzone ingesteld" #: plinth/modules/deluge/__init__.py:39 -msgid "" -"BitTorrent Web Client \n" -" (Deluge)" +#, fuzzy +#| msgid "Enable Deluge" +msgid "Deluge" +msgstr "Deluge Inschakelen" + +#: plinth/modules/deluge/__init__.py:41 +#, fuzzy +#| msgid "" +#| "BitTorrent Web Client \n" +#| " (Deluge)" +msgid "BitTorrent Web Client" msgstr "" "BitTorrent-webclient \n" " (Deluge)" -#: plinth/modules/deluge/__init__.py:42 +#: plinth/modules/deluge/__init__.py:44 msgid "Deluge is a BitTorrent client that features a Web UI." msgstr "Deluge is een BitTorrent Cliënt met web-bediening." -#: plinth/modules/deluge/__init__.py:44 +#: plinth/modules/deluge/__init__.py:46 msgid "" "When enabled, the Deluge web client will be available from /deluge path on the web server. The default password is 'deluge', but " @@ -383,7 +405,15 @@ msgstr "Test" msgid "Result" msgstr "Resultaat" -#: plinth/modules/diaspora/__init__.py:61 +#: plinth/modules/diaspora/__init__.py:51 +msgid "diaspora*" +msgstr "" + +#: plinth/modules/diaspora/__init__.py:53 +msgid "Federated Social Network" +msgstr "" + +#: plinth/modules/diaspora/__init__.py:62 msgid "" "diaspora* is a decentralized social network where you can store and control " "your own data." @@ -391,16 +421,9 @@ msgstr "" "diaspora* is een decentraal sociaal netwerk waar je gegevens kunt opslaan en " "zelf onder controle houdt." -#: plinth/modules/diaspora/forms.py:30 -msgid "Select the domain name to be used for diaspora*" -msgstr "Selecteer de domeinnaam voor diaspora*" - -#: plinth/modules/diaspora/forms.py:32 -msgid "" -"Warning! Do not change the FreedomBox domain name after setting up diaspora*" +#: plinth/modules/diaspora/forms.py:31 +msgid "Enable new user registrations" msgstr "" -"Waarschuwing! Wijzig niet de FreedomBox domeinnaam na het installeren van " -"diaspora*" #: plinth/modules/diaspora/templates/diaspora-post-setup.html:32 #, python-format @@ -415,8 +438,8 @@ msgstr "" "Gebruiker IDs zien er uit als username@diaspora.%(domain_name)s
" "Als de FreedomBox domeinnaam wordt gewijzigd, is alle data van de gebruikers " "die geregistreerd zijn met de vorige podnaam zijn niet meer toegankelijk. " -"
Je kunt de diaspora* pod bereiken op diaspora.%(domain_name)s " +"
Je kunt de diaspora* pod bereiken op diaspora.%(domain_name)s " #: plinth/modules/diaspora/templates/diaspora-pre-setup.html:58 #: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:40 @@ -432,7 +455,25 @@ msgstr "" msgid "Update setup" msgstr "Instelling bijwerken" -#: plinth/modules/disks/__init__.py:33 plinth/modules/disks/views.py:39 +#: plinth/modules/diaspora/views.py:96 plinth/modules/ejabberd/views.py:60 +#: plinth/modules/openvpn/views.py:145 plinth/modules/tor/views.py:134 +#: plinth/views.py:112 +msgid "Setting unchanged" +msgstr "Instelling onveranderd" + +#: plinth/modules/diaspora/views.py:100 +#, fuzzy +#| msgid "Application enabled" +msgid "User registrations enabled" +msgstr "Toepassing ingeschakeld" + +#: plinth/modules/diaspora/views.py:104 +#, fuzzy +#| msgid "Application disabled" +msgid "User registrations disabled" +msgstr "Toepassing uitgeschakeld" + +#: plinth/modules/disks/__init__.py:33 plinth/modules/disks/views.py:45 msgid "Disks" msgstr "Schijven" @@ -478,7 +519,7 @@ msgstr "" #: plinth/modules/disks/templates/disks.html:90 #: plinth/modules/disks/templates/disks.html:102 #: plinth/modules/disks/templates/disks_expand.html:45 -#: plinth/modules/disks/views.py:56 +#: plinth/modules/disks/views.py:62 msgid "Expand Root Partition" msgstr "Root-partitie uitbreiden" @@ -501,45 +542,52 @@ msgstr "" "%(expandable_root_size)s extra vrije ruimte in de root-partitie beschikbaar " "zijn." -#: plinth/modules/disks/views.py:65 +#: plinth/modules/disks/views.py:71 #, python-brace-format msgid "Error expanding partition: {exception}" msgstr "Fout bij partitie uitbreiden: {exception}" -#: plinth/modules/disks/views.py:68 +#: plinth/modules/disks/views.py:74 msgid "Partition expanded successfully." msgstr "Partitie succesvol uitgebreid." -#: plinth/modules/disks/views.py:77 +#: plinth/modules/disks/views.py:93 +#, python-format, python-brace-format +msgid "" +"Warning: Low space on system partition ({percent_used}% used, {free_space} " +"free)." +msgstr "" + +#: plinth/modules/disks/views.py:130 #, python-brace-format msgid "{disk_size:.1f} bytes" msgstr "{disk_size:.1f} bytes" -#: plinth/modules/disks/views.py:81 +#: plinth/modules/disks/views.py:134 #, python-brace-format msgid "{disk_size:.1f} KiB" msgstr "{disk_size:.1f} KiB" -#: plinth/modules/disks/views.py:85 +#: plinth/modules/disks/views.py:138 #, python-brace-format msgid "{disk_size:.1f} MiB" msgstr "{disk_size:.1f} MiB" -#: plinth/modules/disks/views.py:89 +#: plinth/modules/disks/views.py:142 #, python-brace-format msgid "{disk_size:.1f} GiB" msgstr "{disk_size:.1f} GiB" -#: plinth/modules/disks/views.py:92 +#: plinth/modules/disks/views.py:145 #, python-brace-format msgid "{disk_size:.1f} TiB" msgstr "{disk_size:.1f} TiB" -#: plinth/modules/dynamicdns/__init__.py:33 +#: plinth/modules/dynamicdns/__init__.py:35 msgid "Dynamic DNS Client" msgstr "Dynamic DNS Cliënt" -#: plinth/modules/dynamicdns/__init__.py:37 +#: plinth/modules/dynamicdns/__init__.py:39 #, python-brace-format msgid "" "If your Internet provider changes your IP address periodically (i.e. every " @@ -551,7 +599,7 @@ msgstr "" "internet. Daardoor is het gebruik van de diensten van {box_name} vaak " "onmogelijk van buiten het lokale netwerk." -#: plinth/modules/dynamicdns/__init__.py:43 +#: plinth/modules/dynamicdns/__init__.py:45 msgid "" "The solution is to assign a DNS name to your IP address and update the DNS " "name every time your IP is changed by your Internet provider. Dynamic DNS " @@ -569,11 +617,18 @@ msgstr "" "naamswijziging doorvoeren, en als iemand op het internet om deze DNS naam " "vraagt wordt dit beantwoord met het juiste IP adres." -#: plinth/modules/dynamicdns/dynamicdns.py:35 plinth/modules/help/help.py:40 +#: plinth/modules/dynamicdns/__init__.py:67 +#: plinth/modules/dynamicdns/dynamicdns.py:377 +#, fuzzy +#| msgid "Dynamic DNS Client" +msgid "Dynamic DNS Service" +msgstr "Dynamic DNS Cliënt" + +#: plinth/modules/dynamicdns/dynamicdns.py:43 plinth/modules/help/help.py:40 msgid "About" msgstr "Over" -#: plinth/modules/dynamicdns/dynamicdns.py:39 +#: plinth/modules/dynamicdns/dynamicdns.py:47 #: plinth/modules/firewall/templates/firewall.html:47 #: plinth/modules/networks/templates/connection_show.html:261 #: plinth/modules/openvpn/templates/openvpn.html:67 @@ -582,7 +637,7 @@ msgstr "Over" msgid "Status" msgstr "Status" -#: plinth/modules/dynamicdns/dynamicdns.py:63 +#: plinth/modules/dynamicdns/dynamicdns.py:71 msgid "" "The Variables <User>, <Pass>, <Ip>, <Domain> may be " "used within the URL. For details see the update URL templates of the example " @@ -592,7 +647,7 @@ msgstr "" "worden gebruikt in de URL. Zie voor details de update URL voorbeelden van de " "voorbeeld providers." -#: plinth/modules/dynamicdns/dynamicdns.py:67 +#: plinth/modules/dynamicdns/dynamicdns.py:75 msgid "" "Please choose an update protocol according to your provider. If your " "provider does not support the GnuDIP protocol or your provider is not listed " @@ -602,7 +657,7 @@ msgstr "" "GnuDIP protocol gebruikt of de provider staat niet in de lijst, gebruik dan " "de update URL van de provider." -#: plinth/modules/dynamicdns/dynamicdns.py:72 +#: plinth/modules/dynamicdns/dynamicdns.py:80 msgid "" "Please do not enter a URL here (like \"https://example.com/\") but only the " "hostname of the GnuDIP server (like \"example.com\")." @@ -610,19 +665,19 @@ msgstr "" "Voer hier geen complete URL in (zoals \"https://example.com/\") maar alleen " "de hostnaam van de GnuDIP server (zoals \"example.com\")." -#: plinth/modules/dynamicdns/dynamicdns.py:76 +#: plinth/modules/dynamicdns/dynamicdns.py:84 #, python-brace-format msgid "The public domain name you want to use to reach your {box_name}." msgstr "" "De publieke domeinnaam die gebruikt wordt om {box_name} aan te spreken." -#: plinth/modules/dynamicdns/dynamicdns.py:79 +#: plinth/modules/dynamicdns/dynamicdns.py:87 msgid "Use this option if your provider uses self signed certificates." msgstr "" "Gebruik deze functie indien de provider gebruik maakt van self-signed " "certificaten." -#: plinth/modules/dynamicdns/dynamicdns.py:82 +#: plinth/modules/dynamicdns/dynamicdns.py:90 msgid "" "If this option is selected, your username and password will be used for HTTP " "basic authentication." @@ -630,11 +685,11 @@ msgstr "" "Als deze optie is geselecteerd wordt de gebruikersnaam en wachtwoord " "gebruikt voor HTTP basic authentificatie." -#: plinth/modules/dynamicdns/dynamicdns.py:85 +#: plinth/modules/dynamicdns/dynamicdns.py:93 msgid "Leave this field empty if you want to keep your current password." msgstr "Laat dit veld leeg om het huidige wachtwoord te behouden." -#: plinth/modules/dynamicdns/dynamicdns.py:88 +#: plinth/modules/dynamicdns/dynamicdns.py:96 #, python-brace-format msgid "" "Optional Value. If your {box_name} is not connected directly to the Internet " @@ -647,82 +702,82 @@ msgstr "" "Internet IP adres te bepalen. Het antwoord op het aanroepen van deze URL zou " "het IP adres moeten zijn (Voorbeeld: http://myip.datasystems24.de)." -#: plinth/modules/dynamicdns/dynamicdns.py:96 +#: plinth/modules/dynamicdns/dynamicdns.py:104 msgid "The username that was used when the account was created." msgstr "De gebruikersnaam die werd gebruikt toen de account werd gemaakt." -#: plinth/modules/dynamicdns/dynamicdns.py:107 +#: plinth/modules/dynamicdns/dynamicdns.py:115 msgid "Enable Dynamic DNS" msgstr "Dynamic DNS Inschakelen" -#: plinth/modules/dynamicdns/dynamicdns.py:110 +#: plinth/modules/dynamicdns/dynamicdns.py:118 msgid "Service Type" msgstr "Dienst Type" -#: plinth/modules/dynamicdns/dynamicdns.py:115 +#: plinth/modules/dynamicdns/dynamicdns.py:123 msgid "GnuDIP Server Address" msgstr "GnuDIP Serveradres" -#: plinth/modules/dynamicdns/dynamicdns.py:120 +#: plinth/modules/dynamicdns/dynamicdns.py:128 msgid "Invalid server name" msgstr "Foute servernaam" -#: plinth/modules/dynamicdns/dynamicdns.py:123 +#: plinth/modules/dynamicdns/dynamicdns.py:131 msgid "Update URL" msgstr "URL bijwerken" -#: plinth/modules/dynamicdns/dynamicdns.py:127 +#: plinth/modules/dynamicdns/dynamicdns.py:135 msgid "Accept all SSL certificates" msgstr "Accepteer alle SSL certificaten" -#: plinth/modules/dynamicdns/dynamicdns.py:131 +#: plinth/modules/dynamicdns/dynamicdns.py:139 msgid "Use HTTP basic authentication" msgstr "Gebruik HTTP-basisverificatie" -#: plinth/modules/dynamicdns/dynamicdns.py:143 +#: plinth/modules/dynamicdns/dynamicdns.py:151 #: plinth/modules/networks/forms.py:228 plinth/modules/transmission/forms.py:37 msgid "Username" msgstr "Gebruikersnaam" -#: plinth/modules/dynamicdns/dynamicdns.py:146 +#: plinth/modules/dynamicdns/dynamicdns.py:154 #: plinth/modules/networks/forms.py:229 plinth/modules/transmission/forms.py:41 msgid "Password" msgstr "Wachtwoord" -#: plinth/modules/dynamicdns/dynamicdns.py:149 +#: plinth/modules/dynamicdns/dynamicdns.py:157 #: plinth/modules/networks/forms.py:231 msgid "Show password" msgstr "Toon wachtwoord" -#: plinth/modules/dynamicdns/dynamicdns.py:153 +#: plinth/modules/dynamicdns/dynamicdns.py:161 msgid "URL to look up public IP" msgstr "URL voor controle van het IP-adres" -#: plinth/modules/dynamicdns/dynamicdns.py:179 +#: plinth/modules/dynamicdns/dynamicdns.py:187 msgid "Please provide an update URL or a GnuDIP server address" msgstr "Voer een update URL of GnuDIP Serveradres in" -#: plinth/modules/dynamicdns/dynamicdns.py:184 +#: plinth/modules/dynamicdns/dynamicdns.py:192 msgid "Please provide a GnuDIP username" msgstr "Voer een GnuDIP gebruikersnaam in" -#: plinth/modules/dynamicdns/dynamicdns.py:188 +#: plinth/modules/dynamicdns/dynamicdns.py:196 msgid "Please provide a GnuDIP domain name" msgstr "Voer een GnuDIP domeinnaam in" -#: plinth/modules/dynamicdns/dynamicdns.py:193 +#: plinth/modules/dynamicdns/dynamicdns.py:201 msgid "Please provide a password" msgstr "Voer een wachtwoord in" -#: plinth/modules/dynamicdns/dynamicdns.py:211 +#: plinth/modules/dynamicdns/dynamicdns.py:219 msgid "Configure Dynamic DNS" msgstr "Instellen Dynamic DNS" -#: plinth/modules/dynamicdns/dynamicdns.py:232 +#: plinth/modules/dynamicdns/dynamicdns.py:240 msgid "Dynamic DNS Status" msgstr "Dynamische DNS-Status" -#: plinth/modules/dynamicdns/dynamicdns.py:364 +#: plinth/modules/dynamicdns/dynamicdns.py:381 #: plinth/modules/openvpn/views.py:143 plinth/modules/transmission/views.py:72 msgid "Configuration updated" msgstr "Configuratie bijgewerkt" @@ -794,15 +849,18 @@ msgstr "" msgid "Last update" msgstr "Laatste bijwerking" -#: plinth/modules/ejabberd/__init__.py:42 -msgid "" -"Chat Server \n" -" (ejabberd)" -msgstr "" -"Chatserver\n" -" (ejabberd)" - #: plinth/modules/ejabberd/__init__.py:45 +msgid "ejabberd" +msgstr "" + +#: plinth/modules/ejabberd/__init__.py:47 +#: plinth/modules/matrixsynapse/__init__.py:43 +#, fuzzy +#| msgid "Web Server" +msgid "Chat Server" +msgstr "Webserver" + +#: plinth/modules/ejabberd/__init__.py:50 msgid "" "XMPP is an open and standardized communication protocol. Here you can run " "and configure your XMPP server, called ejabberd." @@ -810,11 +868,17 @@ msgstr "" "XMPP is een open en gestandaardiseerd communicatie protocol. Hiermee kan een " "XMPP server met de naam ejabberd worden ingesteld." -#: plinth/modules/ejabberd/__init__.py:48 +#: plinth/modules/ejabberd/__init__.py:54 +#, fuzzy, python-brace-format +#| msgid "" +#| "To actually communicate, you can use the web client or any other XMPP " +#| "client." msgid "" -"To actually communicate, you can use the web client or any other XMPP client." +"To actually communicate, you can use the web " +"client or any other XMPP client. When enabled, ejabberd can be accessed by " +"any user with a {box_name} login." msgstr "" "Om daadwerkelijk te communiceren, kan de web cliënt of iedere andere XMPP cliënt/ikiwiki." msgid "" "ikiwiki is a simple wiki and blog application. It supports several " "lightweight markup languages, including Markdown, and common blogging " "functionality such as comments and RSS feeds. When enabled, the blogs and " -"wikis will be available from /ikiwiki." +"wikis will be available at /ikiwiki (once created)." msgstr "" "ikiwiki is een eenvoudig wiki- en blog programma. Het ondersteunt " "verschillende lichtgewicht markup-talen, met inbegrip van Markdown, en " @@ -1205,6 +1278,15 @@ msgstr "" "ingeschakeld, zijn de blogs en wiki's beschikbaar via /" "ikiwiki." +#: plinth/modules/ikiwiki/__init__.py:53 +#, python-brace-format +msgid "" +"Only {box_name} users in the admin group can create and " +"manage blogs and wikis, but any user in the wiki group can " +"edit existing ones. In the User " +"Configuration you can change these permissions or add new users." +msgstr "" + #: plinth/modules/ikiwiki/forms.py:34 #: plinth/modules/networks/templates/connection_show.html:78 msgid "Name" @@ -1316,20 +1398,22 @@ msgid "Delete Wiki or Blog" msgstr "Verwijder Wiki of Blog" #: plinth/modules/infinoted/__init__.py:43 -msgid "" -"Gobby Server \n" -" (infinoted)" +msgid "infinoted" msgstr "" -"Gobby Server\n" -" (infinoted)" -#: plinth/modules/infinoted/__init__.py:46 +#: plinth/modules/infinoted/__init__.py:45 +#, fuzzy +#| msgid "Web Server" +msgid "Gobby Server" +msgstr "Webserver" + +#: plinth/modules/infinoted/__init__.py:48 msgid "infinoted is a server for Gobby, a collaborative text editor." msgstr "" "infinoted is een server voor Gobby, een tekst-editor voor gezamenlijk " "gebruik." -#: plinth/modules/infinoted/__init__.py:49 +#: plinth/modules/infinoted/__init__.py:51 #, python-brace-format msgid "" "To use it, download Gobby, desktop " @@ -1341,14 +1425,20 @@ msgstr "" "\"Verbinden met Server\" en voer uw {box_name} domeinnaam in." #: plinth/modules/jsxc/__init__.py:36 -msgid "" -"Chat Client \n" -" (JSXC)" +msgid "JSXC" +msgstr "" + +#: plinth/modules/jsxc/__init__.py:38 +#, fuzzy +#| msgid "" +#| "Chat Client \n" +#| " (JSXC)" +msgid "Chat Client" msgstr "" "Chat Cliënt \n" " (JSXC)" -#: plinth/modules/jsxc/__init__.py:40 +#: plinth/modules/jsxc/__init__.py:42 msgid "" "JSXC is a web client for XMPP. Typically it is used with an XMPP server " "running locally." @@ -1356,7 +1446,7 @@ msgstr "" "JSXC is een webclient voor XMPP. Het wordt meestal gebruikt met een XMPP-" "server die lokaal wordt uitgevoerd." -#: plinth/modules/jsxc/__init__.py:78 +#: plinth/modules/jsxc/__init__.py:80 msgid "" "Chat Client \n" " (jsxc)" @@ -1364,12 +1454,19 @@ msgstr "" "Chat Cliënt \n" " (jsxc)" -#: plinth/modules/letsencrypt/__init__.py:39 -#: plinth/modules/letsencrypt/__init__.py:64 -msgid "Certificates (Let's Encrypt)" +#: plinth/modules/letsencrypt/__init__.py:40 +#, fuzzy +#| msgid "Certificates (Let's Encrypt)" +msgid "Let's Encrypt" msgstr "Certificaten (Let's Encrypt)" -#: plinth/modules/letsencrypt/__init__.py:43 +#: plinth/modules/letsencrypt/__init__.py:42 +#, fuzzy +#| msgid "Certificate Status" +msgid "Certificates" +msgstr "Certificaatstatus" + +#: plinth/modules/letsencrypt/__init__.py:46 #, python-brace-format msgid "" "A digital certificate allows users of a web service to verify the identity " @@ -1385,7 +1482,7 @@ msgstr "" "van een domein te zijn tegenover Let's Encrypt, een certificaatwaarmerker " "(CA)." -#: plinth/modules/letsencrypt/__init__.py:50 +#: plinth/modules/letsencrypt/__init__.py:53 msgid "" "Let's Encrypt is a free, automated, and open certificate authority, run for " "the public's benefit by the Internet Security Research Group (ISRG). Please " @@ -1414,52 +1511,102 @@ msgstr "Websitebeveiliging" msgid "Actions" msgstr "Acties" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:56 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:62 #, python-format msgid "Valid, expires on %(expiry_date)s" msgstr "Geldig, verloopt op %(expiry_date)s" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:63 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:69 msgid "Revoked" msgstr "Ingetrokken" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:67 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:73 #, python-format msgid "Expired on %(expiry_date)s" msgstr "Verlopen op %(expiry_date)s" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:71 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:77 msgid "Invalid test certificate" msgstr "Ongeldig test certificaat" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:75 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:81 #, python-format msgid "Invalid (%(reason)s)" msgstr "Ongeldig (%(reason)s)" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:82 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:88 msgid "No certificate" msgstr "Geen certificaat" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:99 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:105 msgid "Re-obtain" msgstr "Opnieuw verkrijgen" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:105 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:111 #: plinth/modules/networks/templates/connection_show.html:63 #: plinth/modules/snapshot/templates/snapshot.html:34 msgid "Delete" msgstr "Verwijder" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:112 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:118 msgid "Revoke" msgstr "Intrekken" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:120 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:126 msgid "Obtain" msgstr "Verkrijgen" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:133 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:149 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:156 +#, fuzzy +#| msgid "Update" +msgid "Update config" +msgstr "Update" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:161 +#, python-format +msgid "" +"\n" +" Let Plinth manage certificate renewal of\n" +" %(current_domain)s (recommended)\n" +" " +msgstr "" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:166 +msgid "" +"\n" +" Let Plinth manage certificate renewal of the current domain " +"(recommended)\n" +" " +msgstr "" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:175 +#, python-format +msgid "" +"If %(box_name)s manages the certificate renewal for the current domain, it " +"will ensure that all apps that use the certificate can use it, as soon as it " +"gets renewed." +msgstr "" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:181 +msgid "" +"No certificate available for the current domain. First obtain a " +"certificate to enable management of its renewal." +msgstr "" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:186 +#, fuzzy +#| msgid "" +#| "No domains have been configured. Configure domains to be able to obtain " +#| "certificates for them." +msgid "" +"No current domain is configured. First configure a domain to enable " +"management of its certificates." +msgstr "" +"Er zijn geen geconfigureerde domeinen. Stel domeinen in om certificaten " +"ervoor te kunnen uitgeven." + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:195 msgid "" "No domains have been configured. Configure domains to be able to obtain " "certificates for them." @@ -1467,7 +1614,7 @@ msgstr "" "Er zijn geen geconfigureerde domeinen. Stel domeinen in om certificaten " "ervoor te kunnen uitgeven." -#: plinth/modules/letsencrypt/views.py:55 +#: plinth/modules/letsencrypt/views.py:57 #, python-brace-format msgid "" "Certificate successfully revoked for domain {domain}.This may take a few " @@ -1476,40 +1623,73 @@ msgstr "" "Certificaat met succes ingetrokken voor domein {domain}. Het kan enige tijd " "duren voordat het effect heeft." -#: plinth/modules/letsencrypt/views.py:61 +#: plinth/modules/letsencrypt/views.py:63 #, python-brace-format msgid "Failed to revoke certificate for domain {domain}: {error}" msgstr "Intrekken certificaat voor domein {domain} mislukt: {error}" -#: plinth/modules/letsencrypt/views.py:73 +#: plinth/modules/letsencrypt/views.py:75 #, python-brace-format msgid "Certificate successfully obtained for domain {domain}" msgstr "Certificaat voor domein {domain} met succes verkregen" -#: plinth/modules/letsencrypt/views.py:78 +#: plinth/modules/letsencrypt/views.py:81 #, python-brace-format msgid "Failed to obtain certificate for domain {domain}: {error}" msgstr "Verkrijgen van certificaat voor domein {domain} is mislukt: {error}" #: plinth/modules/letsencrypt/views.py:90 +#: plinth/modules/letsencrypt/views.py:109 +#, fuzzy, python-brace-format +#| msgid "Certificate successfully deleted for domain {domain}" +msgid "Certificate renewal management enabled for {domain}." +msgstr "Certificaat met succes verwijderd voor domein {domain}" + +#: plinth/modules/letsencrypt/views.py:95 +#, fuzzy, python-brace-format +#| msgid "Failed to delete certificate for domain {domain}: {error}" +msgid "Failed to enable certificate renewal management for {domain}: {error}" +msgstr "Verwijderen certificaat voor domein {domain} mislukt: {error}" + +#: plinth/modules/letsencrypt/views.py:112 +#, fuzzy, python-brace-format +#| msgid "Certificate successfully deleted for domain {domain}" +msgid "Certificate renewal management disabled for {domain}." +msgstr "Certificaat met succes verwijderd voor domein {domain}" + +#: plinth/modules/letsencrypt/views.py:118 +#, fuzzy, python-brace-format +#| msgid "Failed to obtain certificate for domain {domain}: {error}" +msgid "Failed to switch certificate renewal management for {domain}: {error}" +msgstr "Verkrijgen van certificaat voor domein {domain} is mislukt: {error}" + +#: plinth/modules/letsencrypt/views.py:134 +#, fuzzy, python-brace-format +#| msgid "Failed to delete certificate for domain {domain}: {error}" +msgid "Failed to disable certificate renewal management for {domain}: {error}" +msgstr "Verwijderen certificaat voor domein {domain} mislukt: {error}" + +#: plinth/modules/letsencrypt/views.py:141 #, python-brace-format msgid "Certificate successfully deleted for domain {domain}" msgstr "Certificaat met succes verwijderd voor domein {domain}" -#: plinth/modules/letsencrypt/views.py:95 +#: plinth/modules/letsencrypt/views.py:146 #, python-brace-format msgid "Failed to delete certificate for domain {domain}: {error}" msgstr "Verwijderen certificaat voor domein {domain} mislukt: {error}" #: plinth/modules/matrixsynapse/__init__.py:41 -msgid "" -"Chat Server \n" -" (Matrix Synapse)" +#, fuzzy +#| msgid "" +#| "Chat Server \n" +#| " (Matrix Synapse)" +msgid "Matrix Synapse" msgstr "" "Chatserver\n" " (Matrix Synapse)" -#: plinth/modules/matrixsynapse/__init__.py:44 +#: plinth/modules/matrixsynapse/__init__.py:46 msgid "" "Matrix is an new " "ecosystem for open, federated instant messaging and VoIP. Synapse is a " @@ -1519,17 +1699,13 @@ msgid "" "converse with users on all other Matrix servers via federation." msgstr "" -#: plinth/modules/matrixsynapse/__init__.py:52 +#: plinth/modules/matrixsynapse/__init__.py:54 msgid "" "To communicate, you can use the available clients for mobile, desktop and the web. Riot client is recommended." msgstr "" -#: plinth/modules/matrixsynapse/forms.py:31 -msgid "Select the domain name" -msgstr "Selecteer de domeinnaam" - #: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:34 msgid "" "Matrix service needs to be configured for a domain. Users on other Matrix " @@ -1573,14 +1749,20 @@ msgstr "" "de Instellingen pagina." #: plinth/modules/minetest/__init__.py:48 -msgid "" -"Block Sandbox \n" -" (Minetest)" +msgid "Minetest" +msgstr "" + +#: plinth/modules/minetest/__init__.py:50 +#, fuzzy +#| msgid "" +#| "Block Sandbox \n" +#| " (Minetest)" +msgid "Block Sandbox" msgstr "" "Block Sandbox \n" " (Minetest)" -#: plinth/modules/minetest/__init__.py:52 +#: plinth/modules/minetest/__init__.py:54 #, python-brace-format msgid "" "Minetest is a multiplayer infinite-world block sandbox. This module enables " @@ -1614,8 +1796,8 @@ msgid "" "creative gameplay, rather than challenging \"survival\" gameplay." msgstr "" "Creative modus verandert de regels van het spel om het meer geschikt te " -"maken voor creatief gebruik, in plaats van de uitdagingen van de \"" -"overlevings\" modus." +"maken voor creatief gebruik, in plaats van de uitdagingen van de " +"\"overlevings\" modus." #: plinth/modules/minetest/forms.py:46 msgid "Enable PVP" @@ -1724,7 +1906,7 @@ msgstr "Secure Shell" #: plinth/modules/monkeysphere/templates/monkeysphere.html:87 #: plinth/modules/monkeysphere/templates/monkeysphere_details.html:60 -#: plinth/service.py:117 +#: plinth/service.py:116 msgid "Web Server" msgstr "Webserver" @@ -1824,14 +2006,20 @@ msgid "Error occurred while publishing key." msgstr "Er is een fout opgetreden tijdens het publiceren van de sleutel." #: plinth/modules/mumble/__init__.py:35 -msgid "" -"Voice Chat \n" -" (Mumble)" +msgid "Mumble" +msgstr "" + +#: plinth/modules/mumble/__init__.py:37 +#, fuzzy +#| msgid "" +#| "Voice Chat \n" +#| " (Mumble)" +msgid "Voice Chat" msgstr "" "Voice Chat \n" " (Mumble)" -#: plinth/modules/mumble/__init__.py:44 +#: plinth/modules/mumble/__init__.py:46 msgid "" "Mumble is an open source, low-latency, encrypted, high quality voice chat " "software." @@ -1839,7 +2027,7 @@ msgstr "" "Mumble is een Open Source, snelle, versleutelde, hoge kwaliteit " "groepsgespreksserver." -#: plinth/modules/mumble/__init__.py:47 +#: plinth/modules/mumble/__init__.py:49 msgid "" "You can connect to your Mumble server on the regular Mumble port 64738. Clients to connect to Mumble from your " @@ -2361,7 +2549,7 @@ msgid "This connection is not active." msgstr "Deze verbinding is niet actief." #: plinth/modules/networks/templates/connection_show.html:266 -#: plinth/modules/security/__init__.py:32 plinth/modules/security/views.py:46 +#: plinth/modules/security/__init__.py:32 plinth/modules/security/views.py:48 msgid "Security" msgstr "Security" @@ -2468,14 +2656,22 @@ msgid "Inactive" msgstr "Inactief" #: plinth/modules/openvpn/__init__.py:42 -msgid "" -"Virtual Private Network \n" -" (OpenVPN)" +#, fuzzy +#| msgid "Open" +msgid "OpenVPN" +msgstr "Open" + +#: plinth/modules/openvpn/__init__.py:44 +#, fuzzy +#| msgid "" +#| "Virtual Private Network \n" +#| " (OpenVPN)" +msgid "Virtual Private Network" msgstr "" "Virtual Private Network\n" " (OpenVPN)" -#: plinth/modules/openvpn/__init__.py:46 +#: plinth/modules/openvpn/__init__.py:48 #, python-brace-format msgid "" "Virtual Private Network (VPN) is a technique for securely connecting two " @@ -2493,7 +2689,7 @@ msgstr "" "mogelijk om de rest van het internetgebruik via {box_name} te leiden, voor " "meer veiligheid en anonimiteit." -#: plinth/modules/openvpn/__init__.py:84 +#: plinth/modules/openvpn/__init__.py:86 #, python-brace-format msgid "" "Download Profile" @@ -2581,10 +2777,18 @@ msgid "Setup failed." msgstr "Instelling mislukt." #: plinth/modules/pagekite/__init__.py:44 -msgid "Public Visibility (PageKite)" +#, fuzzy +#| msgid "Pagekite" +msgid "PageKite" +msgstr "PageKite" + +#: plinth/modules/pagekite/__init__.py:46 +#, fuzzy +#| msgid "Public Visibility (PageKite)" +msgid "Public Visibility" msgstr "Publieke zichtbaarheid (PageKite)" -#: plinth/modules/pagekite/__init__.py:48 +#: plinth/modules/pagekite/__init__.py:50 #, python-brace-format msgid "" "PageKite is a system for exposing {box_name} services when you don't have a " @@ -2597,19 +2801,19 @@ msgstr "" "Dit is alleen vereist als de diensten op {box_name} niet te bereiken zijn " "vanaf de rest van internet. Dit is het geval in de volgende situaties:" -#: plinth/modules/pagekite/__init__.py:55 +#: plinth/modules/pagekite/__init__.py:57 #, python-brace-format msgid "{box_name} is behind a restricted firewall." msgstr "{box_name} is verbonden achter een beperkende firewall." -#: plinth/modules/pagekite/__init__.py:59 +#: plinth/modules/pagekite/__init__.py:61 #, python-brace-format msgid "{box_name} is connected to a (wireless) router which you don't control." msgstr "" "{box_name} is verbonden met een (wireless) router die niet onder eigen " "controle staat." -#: plinth/modules/pagekite/__init__.py:62 +#: plinth/modules/pagekite/__init__.py:64 msgid "" "Your ISP does not provide you an external IP address and instead provides " "Internet connection through NAT." @@ -2617,7 +2821,7 @@ msgstr "" "De internetprovider geeft geen extern IP adres maar maakt gebruik van een " "NAT verbinding." -#: plinth/modules/pagekite/__init__.py:65 +#: plinth/modules/pagekite/__init__.py:67 msgid "" "Your ISP does not provide you a static IP address and your IP address " "changes evertime you connect to Internet." @@ -2625,11 +2829,11 @@ msgstr "" "De internetprovider geeft geen statisch IP adres, en het IP adres wijzigt " "bij elke verbinding." -#: plinth/modules/pagekite/__init__.py:68 +#: plinth/modules/pagekite/__init__.py:70 msgid "Your ISP limits incoming connections." msgstr "De internetprovider beperkt inkomende verbindingen." -#: plinth/modules/pagekite/__init__.py:71 +#: plinth/modules/pagekite/__init__.py:73 #, python-brace-format msgid "" "PageKite works around NAT, firewalls and IP-address limitations by using a " @@ -2932,8 +3136,8 @@ msgid "Pagekite setup finished. The HTTP and HTTPS services are activated now." msgstr "" "Pagekite setup voltooid. De HTTP- en HTTPS-services zijn nu geactiveerd." -#: plinth/modules/power/__init__.py:28 plinth/modules/power/views.py:50 -#: plinth/modules/power/views.py:65 +#: plinth/modules/power/__init__.py:28 plinth/modules/power/views.py:51 +#: plinth/modules/power/views.py:67 msgid "Power" msgstr "Power" @@ -2942,10 +3146,22 @@ msgid "Restart or shut down the system." msgstr "Herstarten of uitschakelen van het systeem." #: plinth/modules/power/templates/power.html:28 +#, fuzzy +#| msgid "" +#| "Another installation or upgrade is already running. Please wait for a few " +#| "moments before trying again." +msgid "" +"Currently an installation or upgrade is running. Consider waiting until it's " +"finished before shutting down or restarting." +msgstr "" +"Een andere installatie of upgrade is reeds uitgevoerd. Wacht een paar " +"momenten voordat u het opnieuw probeert." + +#: plinth/modules/power/templates/power.html:37 msgid "Restart »" msgstr "Herstart »" -#: plinth/modules/power/templates/power.html:31 +#: plinth/modules/power/templates/power.html:40 msgid "Shut Down »" msgstr "Uitschakelen »" @@ -2957,7 +3173,20 @@ msgstr "" "Daadwerkelijk herstarten? Het is niet mogelijk deze website te gebruiken tot " "het systeem is herstart. Dit kan enkele minuten duren." -#: plinth/modules/power/templates/power_restart.html:42 +#: plinth/modules/power/templates/power_restart.html:38 +#, fuzzy +#| msgid "" +#| "Another installation or upgrade is already running. Please wait for a few " +#| "moments before trying again." +msgid "" +"Currently an installation or upgrade is running. Consider waiting until it's " +"finished before restarting." +msgstr "" +"Een andere installatie of upgrade is reeds uitgevoerd. Wacht een paar " +"momenten voordat u het opnieuw probeert." + +#: plinth/modules/power/templates/power_restart.html:52 +#: plinth/modules/power/templates/power_restart.html:55 msgid "Restart Now" msgstr "Nu Herstarten" @@ -2969,19 +3198,36 @@ msgstr "" "Daadwerkelijk uitschakelen? Het is niet mogelijk deze website te gebruiken " "als het systeem is uitgeschakeld." -#: plinth/modules/power/templates/power_shutdown.html:41 +#: plinth/modules/power/templates/power_shutdown.html:37 +#, fuzzy +#| msgid "" +#| "Another installation or upgrade is already running. Please wait for a few " +#| "moments before trying again." +msgid "" +"Currently an installation or upgrade is running. Consider waiting until it's " +"finished before shutting down." +msgstr "" +"Een andere installatie of upgrade is reeds uitgevoerd. Wacht een paar " +"momenten voordat u het opnieuw probeert." + +#: plinth/modules/power/templates/power_shutdown.html:51 +#: plinth/modules/power/templates/power_shutdown.html:54 msgid "Shut Down Now" msgstr "Nu Uitschakelen" #: plinth/modules/privoxy/__init__.py:43 -msgid "" -"Web Proxy \n" -" (Privoxy)" -msgstr "" -"Web Proxy \n" -" (Privoxy)" +#, fuzzy +#| msgid "Enable Privoxy" +msgid "Privoxy" +msgstr "Privoxy Inschakelen" -#: plinth/modules/privoxy/__init__.py:46 +#: plinth/modules/privoxy/__init__.py:45 +#, fuzzy +#| msgid "Privoxy Web Proxy" +msgid "Web Proxy" +msgstr "Privoxy Web Proxy" + +#: plinth/modules/privoxy/__init__.py:48 msgid "" "Privoxy is a non-caching web proxy with advanced filtering capabilities for " "enhancing privacy, modifying web page data and HTTP headers, controlling " @@ -2991,7 +3237,7 @@ msgstr "" "om privacy te verhogen, webpagina data en HTTP headers te wijzigen, toegang " "te controleren, en advertenties en andere rommel te weren. " -#: plinth/modules/privoxy/__init__.py:52 +#: plinth/modules/privoxy/__init__.py:54 #, python-brace-format msgid "" "You can use Privoxy by modifying your browser proxy settings to your " @@ -3006,20 +3252,22 @@ msgstr "" "href=\"http://config.privoxy.org\">http://config.privoxy.org/ of http://p.p." -#: plinth/modules/privoxy/__init__.py:144 +#: plinth/modules/privoxy/__init__.py:147 #, python-brace-format msgid "Access {url} with proxy {proxy} on tcp{kind}" msgstr "Gebruik {url} via proxy {proxy} op tcp{kind}" #: plinth/modules/quassel/__init__.py:42 -msgid "" -"IRC Client \n" -" (Quassel)" +msgid "Quassel" msgstr "" -"IRC Cliënt \n" -" (Quassel)" -#: plinth/modules/quassel/__init__.py:46 +#: plinth/modules/quassel/__init__.py:44 +#, fuzzy +#| msgid "Quassel IRC Client" +msgid "IRC Client" +msgstr "Quassel IRC Cliënt" + +#: plinth/modules/quassel/__init__.py:48 #, python-brace-format msgid "" "Quassel is an IRC application that is split into two parts, a \"core\" and a " @@ -3037,7 +3285,7 @@ msgstr "" "telefoon kunnen worden gebruikt om te verbinden of de verbinding te " "verbreken." -#: plinth/modules/quassel/__init__.py:54 +#: plinth/modules/quassel/__init__.py:56 msgid "" "You can connect to your Quassel core on the default Quassel port 4242. " "Clients to connect to Quassel from your mobiele apparaten." #: plinth/modules/radicale/__init__.py:43 -msgid "" -"Calendar and Addressbook \n" -" (Radicale)" +msgid "Radicale" +msgstr "" + +#: plinth/modules/radicale/__init__.py:45 +#, fuzzy +#| msgid "" +#| "Calendar and Addressbook \n" +#| " (Radicale)" +msgid "Calendar and Addressbook" msgstr "" "Agenda en Adresboek \n" " (Radicale)" -#: plinth/modules/radicale/__init__.py:47 -#, python-brace-format +#: plinth/modules/radicale/__init__.py:49 +#, fuzzy, python-brace-format +#| msgid "" +#| "Radicale is a CalDAV and CardDAV server. It allows synchronization and " +#| "sharing of scheduling and contact data. To use Radicale, a " +#| "supported client application is needed. Radicale can be accessed by " +#| "any user with a {box_name} login." msgid "" "Radicale is a CalDAV and CardDAV server. It allows synchronization and " "sharing of scheduling and contact data. To use Radicale, a supported " -"client application is needed. Radicale can be accessed by any user with " -"a {box_name} login." +"radicale.org/clients/\">supported client application is needed. Radicale " +"can be accessed by any user with a {box_name} login." msgstr "" "Radicale is een CalDAV en CardDAV server. Het biedt synchronisatie en delen " "van agenda- en contactgegevens. Om Radicale te gebruiken is een Jitsi (for computers) and " "CSipSimple (voor Android-telefoons)." -#: plinth/modules/repro/__init__.py:53 +#: plinth/modules/repro/__init__.py:55 msgid "" "Note: Before using repro, domains and users will need to " "be configured using the web-based " @@ -3147,14 +3408,20 @@ msgstr "" "Hiervoor moet de service uitgeschakeld en weer ingeschakeld worden." #: plinth/modules/restore/__init__.py:36 -msgid "" -"Unhosted Storage \n" -" (reStore)" +msgid "reStore" +msgstr "reStore" + +#: plinth/modules/restore/__init__.py:38 +#, fuzzy +#| msgid "" +#| "Unhosted Storage \n" +#| " (reStore)" +msgid "Unhosted Storage" msgstr "" "Unhosted dataopslag\n" " (reStore)" -#: plinth/modules/restore/__init__.py:40 +#: plinth/modules/restore/__init__.py:42 #, python-brace-format msgid "" "reStore is a server for unhosted web " @@ -3169,7 +3436,7 @@ msgstr "" "unhosted storage server naar keuze van de gebruiker worden geplaatst. Met " "reStore kan {box_name} een unhosted storage server worden." -#: plinth/modules/restore/__init__.py:47 +#: plinth/modules/restore/__init__.py:49 msgid "" "You can create and edit accounts in the reStore web-" "interface." @@ -3178,14 +3445,22 @@ msgstr "" "restore/'>reStore web-interface." #: plinth/modules/roundcube/__init__.py:35 -msgid "" -"Email Client \n" -" (Roundcube)" +#, fuzzy +#| msgid "Enable Roundcube" +msgid "Roundcube" +msgstr "Roundcube Inschakelen" + +#: plinth/modules/roundcube/__init__.py:37 +#, fuzzy +#| msgid "" +#| "Email Client \n" +#| " (Roundcube)" +msgid "Email Client" msgstr "" "Email Cliënt \n" " (Roundcube)" -#: plinth/modules/roundcube/__init__.py:38 +#: plinth/modules/roundcube/__init__.py:40 msgid "" "Roundcube webmail is a browser-based multilingual IMAP client with an " "application-like user interface. It provides full functionality you expect " @@ -3197,7 +3472,7 @@ msgstr "" "die je van een email cliënt verwacht, inclusief MIME ondersteuning, " "adresboek, mappen beheer, berichtenzoekfuncties en spellingscontrole." -#: plinth/modules/roundcube/__init__.py:44 +#: plinth/modules/roundcube/__init__.py:46 msgid "" "You can access Roundcube from /roundcube. Provide " "the username and password of the email account you wish to access followed " @@ -3212,7 +3487,7 @@ msgstr "" "(aanbevolen): vul het serverveld in, bijvoorbeeld imaps://imap.example." "com." -#: plinth/modules/roundcube/__init__.py:51 +#: plinth/modules/roundcube/__init__.py:53 msgid "" "For Gmail, username will be your Gmail address, password will be your Google " "account password and server will be imaps://imap.gmail.com. " @@ -3241,28 +3516,45 @@ msgstr "" "\"admin\" inloggen op de console of via SSH. Console gebruikers hebben " "mogelijk toegang tot sommige diensten zonder verdere toestemming." -#: plinth/modules/security/views.py:63 +#: plinth/modules/security/forms.py:35 +msgid "Fail2ban (recommended)" +msgstr "" + +#: plinth/modules/security/forms.py:36 +msgid "" +"When this option is enabled, fail2ban will limit brute force break-in " +"attempts to the SSH server and other password protected internet-services " +"which are enabled." +msgstr "" + +#: plinth/modules/security/views.py:66 #, python-brace-format msgid "Error setting restricted access: {exception}" msgstr "Fout bij beperkte toegang instellen: {exception}" -#: plinth/modules/security/views.py:66 +#: plinth/modules/security/views.py:69 msgid "Updated security configuration" msgstr "Bijgewerkte Beveiligingsconfiguratie" #: plinth/modules/shaarli/__init__.py:35 -msgid "" -"Bookmarks \n" -" (Shaarli)" +msgid "Shaarli" +msgstr "Shaarli" + +#: plinth/modules/shaarli/__init__.py:37 +#, fuzzy +#| msgid "" +#| "Bookmarks \n" +#| " (Shaarli)" +msgid "Bookmarks" msgstr "" "Bladwijzers \n" " (Shaarli)" -#: plinth/modules/shaarli/__init__.py:38 +#: plinth/modules/shaarli/__init__.py:40 msgid "Shaarli allows you to save and share bookmarks." msgstr "Met Shaarli is het mogelijk bookmarks te bewaren en delen." -#: plinth/modules/shaarli/__init__.py:40 +#: plinth/modules/shaarli/__init__.py:42 msgid "" "When enabled, Shaarli will be available from /shaarli path on the web server. Note that Shaarli only supports a single user " @@ -3392,6 +3684,18 @@ msgstr "" msgid "Rollback to Snapshot" msgstr "Terugdraaien naar Snapshot" +#: plinth/modules/ssh/__init__.py:37 +msgid "Secure Shell (SSH) Server" +msgstr "Secure Shell (SSH) Server" + +#: plinth/modules/ssh/__init__.py:40 +msgid "" +"A Secure Shell server uses the secure shell protocol to accept connections " +"from remote computers. An authorized remote computer can perform " +"administration tasks, copy files or run other services using such " +"connections." +msgstr "" + #: plinth/modules/sso/__init__.py:30 msgid "Single Sign On" msgstr "Eenmalige aanmelding" @@ -3401,14 +3705,20 @@ msgid "Login" msgstr "Aanmelding" #: plinth/modules/syncthing/__init__.py:39 -msgid "" -"File Synchronization \n" -" (Syncthing)" +msgid "Syncthing" +msgstr "" + +#: plinth/modules/syncthing/__init__.py:41 +#, fuzzy +#| msgid "" +#| "File Synchronization \n" +#| " (Syncthing)" +msgid "File Synchronization" msgstr "" "Bestandssynchronisatie\n" " (Syncthing)" -#: plinth/modules/syncthing/__init__.py:42 +#: plinth/modules/syncthing/__init__.py:44 msgid "" "Syncthing is an application to synchronize files across multiple devices, e." "g. your desktop computer and mobile phone. Creation, modification, or " @@ -3416,7 +3726,7 @@ msgid "" "other devices that also run Syncthing." msgstr "" -#: plinth/modules/syncthing/__init__.py:47 +#: plinth/modules/syncthing/__init__.py:49 #, python-brace-format msgid "" "Running Syncthing on {box_name} provides an extra synchronization point for " @@ -3427,7 +3737,7 @@ msgid "" "{box_name} is only available for users belonging to the \"admin\" group." msgstr "" -#: plinth/modules/syncthing/__init__.py:54 +#: plinth/modules/syncthing/__init__.py:56 msgid "" "When enabled, Syncthing's web interface will be available from /syncthing. Desktop and mobile clients are also Tor Project website. For " @@ -3503,36 +3827,36 @@ msgstr "" "de Tor " "Browser aan." -#: plinth/modules/tor/__init__.py:70 plinth/modules/tor/__init__.py:112 +#: plinth/modules/tor/__init__.py:72 plinth/modules/tor/__init__.py:114 msgid "Tor Anonymity Network" msgstr "Tor Anonimiteitsnetwerk" -#: plinth/modules/tor/__init__.py:76 plinth/modules/tor/__init__.py:120 +#: plinth/modules/tor/__init__.py:78 plinth/modules/tor/__init__.py:122 msgid "Tor Bridge Relay" msgstr "Tor Bridge Relay" -#: plinth/modules/tor/__init__.py:98 plinth/modules/tor/__init__.py:141 +#: plinth/modules/tor/__init__.py:100 plinth/modules/tor/__init__.py:143 msgid "Tor Hidden Service" msgstr "Tor-Hidden Service" -#: plinth/modules/tor/__init__.py:160 +#: plinth/modules/tor/__init__.py:162 msgid "Tor relay port available" msgstr "Tor relay poort beschikbaar" -#: plinth/modules/tor/__init__.py:168 +#: plinth/modules/tor/__init__.py:170 msgid "Obfs3 transport registered" msgstr "Obfs3 transport geregistreerd" -#: plinth/modules/tor/__init__.py:174 +#: plinth/modules/tor/__init__.py:176 msgid "Obfs4 transport registered" msgstr "Obfs4 transport geregistreerd" -#: plinth/modules/tor/__init__.py:211 +#: plinth/modules/tor/__init__.py:213 #, python-brace-format msgid "Access URL {url} on tcp{kind} via Tor" msgstr "Gebruik URL {url} op tcp{kind} via Tor" -#: plinth/modules/tor/__init__.py:222 +#: plinth/modules/tor/__init__.py:224 #, python-brace-format msgid "Confirm Tor usage at {url} on tcp{kind}" msgstr "Bevestig Tor gebruik met {url} via tcp{kind}" @@ -3694,14 +4018,18 @@ msgid "An error occurred during configuration." msgstr "Er is een fout opgetreden tijdens de configuratie." #: plinth/modules/transmission/__init__.py:38 -msgid "" -"BitTorrent \n" -" (Transmission)" -msgstr "" -"BitTorrent \n" -" (Transmission)" +#, fuzzy +#| msgid "Transmission BitTorrent" +msgid "Transmission" +msgstr "Transmission BitTorrent" -#: plinth/modules/transmission/__init__.py:41 +#: plinth/modules/transmission/__init__.py:40 +#, fuzzy +#| msgid "Deluge BitTorrent" +msgid "BitTorrent" +msgstr "Deluge BitTorrent" + +#: plinth/modules/transmission/__init__.py:43 msgid "" "BitTorrent is a peer-to-peer file sharing protocol. Transmission daemon " "handles Bitorrent file sharing. Note that BitTorrent is not anonymous." @@ -3710,7 +4038,7 @@ msgstr "" "daemon voorziet in Bittorrent bestandsdelingdiensten. Houd in gedachten dat " "BitTorrent gebruik niet anoniem is." -#: plinth/modules/transmission/__init__.py:44 +#: plinth/modules/transmission/__init__.py:46 msgid "" "Access the web interface at /transmission." msgstr "" @@ -3743,15 +4071,21 @@ msgstr "" "getoond in een gehashte weergave. Om een nieuw wachtwoord in te stellen kan " "deze normaal worden ingevoerd." -#: plinth/modules/ttrss/__init__.py:37 -msgid "" -"News Feed Reader \n" -" (Tiny Tiny RSS)" +#: plinth/modules/ttrss/__init__.py:39 +msgid "Tiny Tiny RSS" +msgstr "" + +#: plinth/modules/ttrss/__init__.py:41 +#, fuzzy +#| msgid "" +#| "News Feed Reader \n" +#| " (Tiny Tiny RSS)" +msgid "News Feed Reader" msgstr "" "News Feed Reader \n" " (Tiny Tiny RSS)" -#: plinth/modules/ttrss/__init__.py:40 +#: plinth/modules/ttrss/__init__.py:44 msgid "" "Tiny Tiny RSS is a news feed (RSS/Atom) reader and aggregator, designed to " "allow reading news from any location, while feeling as close to a real " @@ -3761,10 +4095,15 @@ msgstr "" "om het lezen van nieuws vanaf iedere locatie mogelijk te maken, terwijl het " "op een echte desktop applicatie wil lijken." -#: plinth/modules/ttrss/__init__.py:44 +#: plinth/modules/ttrss/__init__.py:49 +#, fuzzy, python-brace-format +#| msgid "" +#| "When enabled, Tiny Tiny RSS will be available from /" +#| "tt-rss path on the web server." msgid "" "When enabled, Tiny Tiny RSS will be available from /tt-" -"rss path on the web server." +"rss path on the web server. It can be accessed by any user with a {box_name} login." msgstr "" "Indien ingeschakeld, is Tiny Tiny RSS beschikbaar door het / tt-rss pad op de webserver." @@ -4083,15 +4422,11 @@ msgstr "media wijzigen" msgid "configuration file: {file}" msgstr "configuratiebestand: {file}" -#: plinth/service.py:119 +#: plinth/service.py:118 msgid "Web Server over Secure Socket Layer" msgstr "Web Server over Secure Socket Layer" -#: plinth/service.py:121 -msgid "Secure Shell (SSH) Server" -msgstr "Secure Shell (SSH) Server" - -#: plinth/service.py:123 +#: plinth/service.py:120 #, python-brace-format msgid "{box_name} Web Interface (Plinth)" msgstr "{box_name} Web Interface (Plinth)" @@ -4143,11 +4478,11 @@ msgstr "" "a> zodat we deze kunnen verhelpen. Voeg alstublieft het Status Log toe aan de bug-reportage." -#: plinth/templates/apps.html:25 +#: plinth/templates/apps.html:33 msgid "Services and Applications" msgstr "Diensten en Programma's" -#: plinth/templates/apps.html:28 +#: plinth/templates/apps.html:36 #, python-format msgid "" "You can install and run various services and applications on your " @@ -4159,7 +4494,7 @@ msgstr "" "omschrijving van het programma te krijgen, en daar kan dan gekozen worden om " "het te installeren." -#: plinth/templates/apps.html:36 +#: plinth/templates/apps.html:44 msgid "" "This box can be your photo sharing site, your instant messaging site, your " "social networking site, your news site. Remember web portals? We can be " @@ -4333,16 +4668,16 @@ msgstr "Installeren van %(package_names)s: %(status)s" msgid "%(percentage)s%% complete" msgstr "%(percentage)s%% voltooid" -#: plinth/templates/system.html:25 +#: plinth/templates/system.html:33 msgid "System Configuration" msgstr "Systeeminstelling" -#: plinth/templates/system.html:28 +#: plinth/templates/system.html:36 #, python-format msgid "Here you can administrate the underlying system of your %(box_name)s." msgstr "Hier kunt u het onderliggende systeem van %(box_name)s beheren." -#: plinth/templates/system.html:34 +#: plinth/templates/system.html:42 #, python-format msgid "" "The options affect the %(box_name)s at its most general level, so be careful!" @@ -4350,6 +4685,64 @@ msgstr "" "Deze mogelijkheden veranderen de basisinstellingen van %(box_name)s, dus " "wees gewaarschuwd!" +#~ msgid "Select the domain name to be used for diaspora*" +#~ msgstr "Selecteer de domeinnaam voor diaspora*" + +#~ msgid "" +#~ "Warning! Do not change the FreedomBox domain name after setting up " +#~ "diaspora*" +#~ msgstr "" +#~ "Waarschuwing! Wijzig niet de FreedomBox domeinnaam na het installeren van " +#~ "diaspora*" + +#~ msgid "" +#~ "Chat Server \n" +#~ " (ejabberd)" +#~ msgstr "" +#~ "Chatserver\n" +#~ " (ejabberd)" + +#~ msgid "Wiki and Blog (ikiwiki)" +#~ msgstr "Wiki en Blog (ikiwiki)" + +#~ msgid "" +#~ "Gobby Server \n" +#~ " (infinoted)" +#~ msgstr "" +#~ "Gobby Server\n" +#~ " (infinoted)" + +#~ msgid "Select the domain name" +#~ msgstr "Selecteer de domeinnaam" + +#~ msgid "" +#~ "Web Proxy \n" +#~ " (Privoxy)" +#~ msgstr "" +#~ "Web Proxy \n" +#~ " (Privoxy)" + +#~ msgid "" +#~ "IRC Client \n" +#~ " (Quassel)" +#~ msgstr "" +#~ "IRC Cliënt \n" +#~ " (Quassel)" + +#~ msgid "" +#~ "SIP Server \n" +#~ " (repro)" +#~ msgstr "" +#~ "SIP Server \n" +#~ " (repro)" + +#~ msgid "" +#~ "BitTorrent \n" +#~ " (Transmission)" +#~ msgstr "" +#~ "BitTorrent \n" +#~ " (Transmission)" + #~ msgid "Applications" #~ msgstr "Programma's" @@ -4559,12 +4952,6 @@ msgstr "" #~ msgid "BitTorrent (Deluge)" #~ msgstr "BitTorrent (Deluge)" -#~ msgid "Deluge BitTorrent" -#~ msgstr "Deluge BitTorrent" - -#~ msgid "Enable Deluge" -#~ msgstr "Deluge Inschakelen" - #~ msgid "System Diagnostics" #~ msgstr "Systeemdiagnose" @@ -4588,11 +4975,6 @@ msgstr "" #~ msgid "Enable ikiwiki" #~ msgstr "Ikiwiki Inschakelen" -#, fuzzy -#~| msgid "Wiki & Blog" -#~ msgid "Wiki and Blog" -#~ msgstr "Wiki & Blog" - #~ msgid "Mumble Voice Chat Server" #~ msgstr "Mumble Voice Chat Server" @@ -4616,15 +4998,6 @@ msgstr "" #~ "SSH van buitenaf bereikbaar maken met het standaardwachtwoord voor \"fbx" #~ "\" is een HEEL SLECHT idee." -#~ msgid "Privoxy Web Proxy" -#~ msgstr "Privoxy Web Proxy" - -#~ msgid "Enable Privoxy" -#~ msgstr "Privoxy Inschakelen" - -#~ msgid "Quassel IRC Client" -#~ msgstr "Quassel IRC Cliënt" - #~ msgid "Enable Quassel core service" #~ msgstr "Quassel-core service inschakelen" @@ -4638,15 +5011,6 @@ msgstr "" #~ msgid "Enable repro service" #~ msgstr "Quassel-core service inschakelen" -#~ msgid "reStore" -#~ msgstr "reStore" - -#~ msgid "Enable Roundcube" -#~ msgstr "Roundcube Inschakelen" - -#~ msgid "Shaarli" -#~ msgstr "Shaarli" - #~ msgid "Enable Shaarli" #~ msgstr "Shaarli Inschakelen" @@ -4656,9 +5020,6 @@ msgstr "" #~ msgid "Tor Control Panel" #~ msgstr "Tor Controlepaneel" -#~ msgid "Transmission BitTorrent" -#~ msgstr "Transmission BitTorrent" - #~ msgid "Enable Transmission daemon" #~ msgstr "Transmission daemon Inschakelen" diff --git a/plinth/locale/pl/LC_MESSAGES/django.po b/plinth/locale/pl/LC_MESSAGES/django.po index 08c912d2b..968dc8ab9 100644 --- a/plinth/locale/pl/LC_MESSAGES/django.po +++ b/plinth/locale/pl/LC_MESSAGES/django.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2017-07-10 22:56-0400\n" +"POT-Creation-Date: 2017-09-24 11:24-0400\n" "PO-Revision-Date: 2017-05-21 20:57+0000\n" "Last-Translator: Radek Pasiok \n" "Language-Team: Polish =20) ? 1 : 2;\n" "X-Generator: Weblate 2.14.1-dev\n" -#: plinth/action_utils.py:254 +#: plinth/action_utils.py:259 #, python-brace-format msgid "Listening on {kind} port {listen_address}:{port}" msgstr "Nasłuchuję na {kind} port {listen_address}{port}" -#: plinth/action_utils.py:257 +#: plinth/action_utils.py:262 #, python-brace-format msgid "Listening on {kind} port {port}" msgstr "Nasłuchuję na {kind} port {port}" -#: plinth/action_utils.py:352 +#: plinth/action_utils.py:357 #, python-brace-format msgid "Access URL {url} on tcp{kind}" msgstr "Adres URL {url} na {kind}" -#: plinth/action_utils.py:356 +#: plinth/action_utils.py:361 #, python-brace-format msgid "Access URL {url}" msgstr "Adres URL {url}" -#: plinth/action_utils.py:386 +#: plinth/action_utils.py:391 #, python-brace-format msgid "Connect to {host}:{port}" msgstr "Podłączony do {host}:{port}" -#: plinth/action_utils.py:389 +#: plinth/action_utils.py:394 #, python-brace-format msgid "Cannot connect to {host}:{port}" msgstr "Nie mogę się podłączyć do {host}:{port}" -#: plinth/context_processors.py:38 plinth/views.py:49 +#: plinth/context_processors.py:38 plinth/views.py:52 msgid "FreedomBox" msgstr "FreedomBox" @@ -61,9 +61,15 @@ msgstr "Aktywuj aplikację" #: plinth/forms.py:45 #, fuzzy #| msgid "Select the domain name" -msgid "Select the domain name to be used for this application" +msgid "Select a domain name to be used with this application" msgstr "Określ nazwę domeny" +#: plinth/forms.py:47 +msgid "" +"Warning! The application may not work properly if domain name is changed " +"later." +msgstr "" + #: plinth/middleware.py:71 msgid "Application installed." msgstr "Aplikacja zainstalowania." @@ -99,14 +105,20 @@ msgstr "" "poprawić bezpieczeństwo, szczególnie gdy podłączony do nieprzyjaznych sieci." #: plinth/modules/bind/__init__.py:34 -msgid "" -"Domain Name Server \n" -" (BIND)" +msgid "BIND" +msgstr "" + +#: plinth/modules/bind/__init__.py:36 +#, fuzzy +#| msgid "" +#| "Domain Name Server \n" +#| " (BIND)" +msgid "Domain Name Server" msgstr "" "Serwer nazw domen\n" " (BIND)" -#: plinth/modules/bind/__init__.py:43 +#: plinth/modules/bind/__init__.py:45 msgid "" "BIND is open source software that enables you to publish your Domain Name " "System (DNS) information on the Internet, and to resolve DNS queries for " @@ -116,7 +128,7 @@ msgstr "" "Internecie informacji o systemie nazw domen (DNS, Domain Name System) i " "obsługę zapytań DNS twoich użytkowników." -#: plinth/modules/bind/__init__.py:47 +#: plinth/modules/bind/__init__.py:49 msgid "" "BIND is by far the most widely used DNS software on the Internet, providing " "a robust and stable platform on top of which organizations can build " @@ -165,7 +177,7 @@ msgid "Enable forwarding to set forwarding DNS servers" msgstr "Włącz aby ustawić przekazywanie serwerów DNS" #: plinth/modules/config/config.py:88 plinth/modules/config/config.py:125 -#: plinth/modules/dynamicdns/dynamicdns.py:140 +#: plinth/modules/dynamicdns/dynamicdns.py:148 msgid "Invalid domain name" msgstr "Niewłaściwa nazwa domeny" @@ -191,7 +203,7 @@ msgstr "Niewłaściwa nazwa hosta" #: plinth/modules/config/config.py:112 plinth/modules/config/config.py:169 #: plinth/modules/config/config.py:285 -#: plinth/modules/dynamicdns/dynamicdns.py:135 +#: plinth/modules/dynamicdns/dynamicdns.py:143 msgid "Domain Name" msgstr "Nazwa domeny" @@ -220,7 +232,7 @@ msgid "Language for this web administration interface" msgstr "Język tego interfejsu administratora" #: plinth/modules/config/config.py:151 -#: plinth/modules/dynamicdns/dynamicdns.py:37 +#: plinth/modules/dynamicdns/dynamicdns.py:45 #: plinth/modules/ikiwiki/views.py:37 #: plinth/modules/tahoe/templates/tahoe-pre-setup.html:39 msgid "Configure" @@ -308,18 +320,24 @@ msgid "Time zone set" msgstr "Strefa czasowa ustawiona" #: plinth/modules/deluge/__init__.py:39 -msgid "" -"BitTorrent Web Client \n" -" (Deluge)" +msgid "Deluge" +msgstr "" + +#: plinth/modules/deluge/__init__.py:41 +#, fuzzy +#| msgid "" +#| "BitTorrent Web Client \n" +#| " (Deluge)" +msgid "BitTorrent Web Client" msgstr "" "Klient BitTorrent \n" " (Deluge)" -#: plinth/modules/deluge/__init__.py:42 +#: plinth/modules/deluge/__init__.py:44 msgid "Deluge is a BitTorrent client that features a Web UI." msgstr "Deluge to klient BitTorrent z interfejsem webowym." -#: plinth/modules/deluge/__init__.py:44 +#: plinth/modules/deluge/__init__.py:46 msgid "" "When enabled, the Deluge web client will be available from /deluge path on the web server. The default password is 'deluge', but " @@ -385,21 +403,22 @@ msgstr "Test" msgid "Result" msgstr "Wynik" -#: plinth/modules/diaspora/__init__.py:61 +#: plinth/modules/diaspora/__init__.py:51 +msgid "diaspora*" +msgstr "" + +#: plinth/modules/diaspora/__init__.py:53 +msgid "Federated Social Network" +msgstr "" + +#: plinth/modules/diaspora/__init__.py:62 msgid "" "diaspora* is a decentralized social network where you can store and control " "your own data." msgstr "" -#: plinth/modules/diaspora/forms.py:30 -#, fuzzy -#| msgid "Select the domain name" -msgid "Select the domain name to be used for diaspora*" -msgstr "Określ nazwę domeny" - -#: plinth/modules/diaspora/forms.py:32 -msgid "" -"Warning! Do not change the FreedomBox domain name after setting up diaspora*" +#: plinth/modules/diaspora/forms.py:31 +msgid "Enable new user registrations" msgstr "" #: plinth/modules/diaspora/templates/diaspora-post-setup.html:32 @@ -426,7 +445,21 @@ msgstr "" msgid "Update setup" msgstr "Aktualizuj ustawienia" -#: plinth/modules/disks/__init__.py:33 plinth/modules/disks/views.py:39 +#: plinth/modules/diaspora/views.py:96 plinth/modules/ejabberd/views.py:60 +#: plinth/modules/openvpn/views.py:145 plinth/modules/tor/views.py:134 +#: plinth/views.py:112 +msgid "Setting unchanged" +msgstr "" + +#: plinth/modules/diaspora/views.py:100 +msgid "User registrations enabled" +msgstr "" + +#: plinth/modules/diaspora/views.py:104 +msgid "User registrations disabled" +msgstr "" + +#: plinth/modules/disks/__init__.py:33 plinth/modules/disks/views.py:45 msgid "Disks" msgstr "Dyski" @@ -472,7 +505,7 @@ msgstr "" #: plinth/modules/disks/templates/disks.html:90 #: plinth/modules/disks/templates/disks.html:102 #: plinth/modules/disks/templates/disks_expand.html:45 -#: plinth/modules/disks/views.py:56 +#: plinth/modules/disks/views.py:62 msgid "Expand Root Partition" msgstr "Rozszerz główną partycję" @@ -492,46 +525,53 @@ msgstr "" "Proszę najpierw utworzyć kopię bezpieczeństwa. Po tej operacji twoja główna " "partycja będzie zwiększona o %(expandable_root_size)s." -#: plinth/modules/disks/views.py:65 +#: plinth/modules/disks/views.py:71 #, python-brace-format msgid "Error expanding partition: {exception}" msgstr "Błąd rozszerzania partycji: {exception}" -#: plinth/modules/disks/views.py:68 +#: plinth/modules/disks/views.py:74 msgid "Partition expanded successfully." msgstr "Partycja rozszerzona." -#: plinth/modules/disks/views.py:77 +#: plinth/modules/disks/views.py:93 +#, python-format, python-brace-format +msgid "" +"Warning: Low space on system partition ({percent_used}% used, {free_space} " +"free)." +msgstr "" + +#: plinth/modules/disks/views.py:130 #, fuzzy, python-brace-format #| msgid "{disk_size} bytes" msgid "{disk_size:.1f} bytes" msgstr "{disk_size} bajtów" -#: plinth/modules/disks/views.py:81 +#: plinth/modules/disks/views.py:134 #, fuzzy, python-brace-format msgid "{disk_size:.1f} KiB" msgstr "{disk_size} KiB" -#: plinth/modules/disks/views.py:85 +#: plinth/modules/disks/views.py:138 #, fuzzy, python-brace-format msgid "{disk_size:.1f} MiB" msgstr "{disk_size} MiB" -#: plinth/modules/disks/views.py:89 +#: plinth/modules/disks/views.py:142 #, fuzzy, python-brace-format msgid "{disk_size:.1f} GiB" msgstr "{disk_size} GiB" -#: plinth/modules/disks/views.py:92 +#: plinth/modules/disks/views.py:145 #, fuzzy, python-brace-format msgid "{disk_size:.1f} TiB" msgstr "{disk_size} TiB" -#: plinth/modules/dynamicdns/__init__.py:33 +#: plinth/modules/dynamicdns/__init__.py:35 msgid "Dynamic DNS Client" msgstr "Klient Dynamic DNS" -#: plinth/modules/dynamicdns/__init__.py:37 +#: plinth/modules/dynamicdns/__init__.py:39 #, python-brace-format msgid "" "If your Internet provider changes your IP address periodically (i.e. every " @@ -542,7 +582,7 @@ msgstr "" "twój numer IP, innym użytkownikom może być trudno cię odnaleźć. Uniemożliwia " "to znajdowanie usług świadczonych przez {box_name}." -#: plinth/modules/dynamicdns/__init__.py:43 +#: plinth/modules/dynamicdns/__init__.py:45 msgid "" "The solution is to assign a DNS name to your IP address and update the DNS " "name every time your IP is changed by your Internet provider. Dynamic DNS " @@ -553,11 +593,18 @@ msgid "" "IP address." msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:35 plinth/modules/help/help.py:40 +#: plinth/modules/dynamicdns/__init__.py:67 +#: plinth/modules/dynamicdns/dynamicdns.py:377 +#, fuzzy +#| msgid "Dynamic DNS Client" +msgid "Dynamic DNS Service" +msgstr "Klient Dynamic DNS" + +#: plinth/modules/dynamicdns/dynamicdns.py:43 plinth/modules/help/help.py:40 msgid "About" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:39 +#: plinth/modules/dynamicdns/dynamicdns.py:47 #: plinth/modules/firewall/templates/firewall.html:47 #: plinth/modules/networks/templates/connection_show.html:261 #: plinth/modules/openvpn/templates/openvpn.html:67 @@ -566,7 +613,7 @@ msgstr "" msgid "Status" msgstr "Stan" -#: plinth/modules/dynamicdns/dynamicdns.py:63 +#: plinth/modules/dynamicdns/dynamicdns.py:71 msgid "" "The Variables <User>, <Pass>, <Ip>, <Domain> may be " "used within the URL. For details see the update URL templates of the example " @@ -576,7 +623,7 @@ msgstr "" "mogą być używanie w adresie URL. Po szczegóły zobacz uaktualnianie URL dla " "przykładowego prowicera." -#: plinth/modules/dynamicdns/dynamicdns.py:67 +#: plinth/modules/dynamicdns/dynamicdns.py:75 msgid "" "Please choose an update protocol according to your provider. If your " "provider does not support the GnuDIP protocol or your provider is not listed " @@ -586,7 +633,7 @@ msgstr "" "twój prowider nie wspiera protokołu GnuDIP albo nie jest na liście wtedy " "możesz użyć URL uaktualnienia twojego prowidera." -#: plinth/modules/dynamicdns/dynamicdns.py:72 +#: plinth/modules/dynamicdns/dynamicdns.py:80 msgid "" "Please do not enter a URL here (like \"https://example.com/\") but only the " "hostname of the GnuDIP server (like \"example.com\")." @@ -594,17 +641,17 @@ msgstr "" "Proszę nie wpisuj adresu URL tutaj (np. \"https://example.com/\") tylko " "nazwę hosta serwera GnuDIP (np. \"example.com\")." -#: plinth/modules/dynamicdns/dynamicdns.py:76 +#: plinth/modules/dynamicdns/dynamicdns.py:84 #, python-brace-format msgid "The public domain name you want to use to reach your {box_name}." msgstr "Domena pod którą chcesz używać aby zobaczyć twój {box_name}." -#: plinth/modules/dynamicdns/dynamicdns.py:79 +#: plinth/modules/dynamicdns/dynamicdns.py:87 msgid "Use this option if your provider uses self signed certificates." msgstr "" "Zaznacz jeśli twój prowider używa certyfikatów podpisanych przez siebie." -#: plinth/modules/dynamicdns/dynamicdns.py:82 +#: plinth/modules/dynamicdns/dynamicdns.py:90 msgid "" "If this option is selected, your username and password will be used for HTTP " "basic authentication." @@ -612,11 +659,11 @@ msgstr "" "Jeśli ta opcja jest zaznaczona to twoja nazwa użytkownika i hasło będą " "używane do podstawowej autentyfikacji HTTP." -#: plinth/modules/dynamicdns/dynamicdns.py:85 +#: plinth/modules/dynamicdns/dynamicdns.py:93 msgid "Leave this field empty if you want to keep your current password." msgstr "Zostaw puste jeśli chcesz używać aktualnego hasła." -#: plinth/modules/dynamicdns/dynamicdns.py:88 +#: plinth/modules/dynamicdns/dynamicdns.py:96 #, python-brace-format msgid "" "Optional Value. If your {box_name} is not connected directly to the Internet " @@ -629,82 +676,82 @@ msgstr "" "określenia twojego prawdziwego adresu IP. URL powinien zwrócić IP z którego " "klient pochodzi. (przykład: http://myip.datasystems24.de)." -#: plinth/modules/dynamicdns/dynamicdns.py:96 +#: plinth/modules/dynamicdns/dynamicdns.py:104 msgid "The username that was used when the account was created." msgstr "Użytkownik który był używany podczas zakladania konta." -#: plinth/modules/dynamicdns/dynamicdns.py:107 +#: plinth/modules/dynamicdns/dynamicdns.py:115 msgid "Enable Dynamic DNS" msgstr "Zezwól na Dynamic DNS" -#: plinth/modules/dynamicdns/dynamicdns.py:110 +#: plinth/modules/dynamicdns/dynamicdns.py:118 msgid "Service Type" msgstr "Typ usługi" -#: plinth/modules/dynamicdns/dynamicdns.py:115 +#: plinth/modules/dynamicdns/dynamicdns.py:123 msgid "GnuDIP Server Address" msgstr "Adres serwera GnuGIP" -#: plinth/modules/dynamicdns/dynamicdns.py:120 +#: plinth/modules/dynamicdns/dynamicdns.py:128 msgid "Invalid server name" msgstr "Niewłaściwa nazwa użytkownika" -#: plinth/modules/dynamicdns/dynamicdns.py:123 +#: plinth/modules/dynamicdns/dynamicdns.py:131 msgid "Update URL" msgstr "Uaktualnij URL" -#: plinth/modules/dynamicdns/dynamicdns.py:127 +#: plinth/modules/dynamicdns/dynamicdns.py:135 msgid "Accept all SSL certificates" msgstr "Akceptuj wszystkie certyfikaty SSL" -#: plinth/modules/dynamicdns/dynamicdns.py:131 +#: plinth/modules/dynamicdns/dynamicdns.py:139 msgid "Use HTTP basic authentication" msgstr "Użyj podstawowej autentyfikacji HTTP" -#: plinth/modules/dynamicdns/dynamicdns.py:143 +#: plinth/modules/dynamicdns/dynamicdns.py:151 #: plinth/modules/networks/forms.py:228 plinth/modules/transmission/forms.py:37 msgid "Username" msgstr "Nazwa użytkownika" -#: plinth/modules/dynamicdns/dynamicdns.py:146 +#: plinth/modules/dynamicdns/dynamicdns.py:154 #: plinth/modules/networks/forms.py:229 plinth/modules/transmission/forms.py:41 msgid "Password" msgstr "Hasło" -#: plinth/modules/dynamicdns/dynamicdns.py:149 +#: plinth/modules/dynamicdns/dynamicdns.py:157 #: plinth/modules/networks/forms.py:231 msgid "Show password" msgstr "Pokaż hasło" -#: plinth/modules/dynamicdns/dynamicdns.py:153 +#: plinth/modules/dynamicdns/dynamicdns.py:161 msgid "URL to look up public IP" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:179 +#: plinth/modules/dynamicdns/dynamicdns.py:187 msgid "Please provide an update URL or a GnuDIP server address" msgstr "Proszę wskaż adres do uaktualniania URL lub serwera GnuDIP" -#: plinth/modules/dynamicdns/dynamicdns.py:184 +#: plinth/modules/dynamicdns/dynamicdns.py:192 msgid "Please provide a GnuDIP username" msgstr "Nazwa użytkowniika GnuDIP" -#: plinth/modules/dynamicdns/dynamicdns.py:188 +#: plinth/modules/dynamicdns/dynamicdns.py:196 msgid "Please provide a GnuDIP domain name" msgstr "Domena GnuDIP" -#: plinth/modules/dynamicdns/dynamicdns.py:193 +#: plinth/modules/dynamicdns/dynamicdns.py:201 msgid "Please provide a password" msgstr "Hasło" -#: plinth/modules/dynamicdns/dynamicdns.py:211 +#: plinth/modules/dynamicdns/dynamicdns.py:219 msgid "Configure Dynamic DNS" msgstr "Konfiguruj Dynamic DNS" -#: plinth/modules/dynamicdns/dynamicdns.py:232 +#: plinth/modules/dynamicdns/dynamicdns.py:240 msgid "Dynamic DNS Status" msgstr "Status Dynamic DNS" -#: plinth/modules/dynamicdns/dynamicdns.py:364 +#: plinth/modules/dynamicdns/dynamicdns.py:381 #: plinth/modules/openvpn/views.py:143 plinth/modules/transmission/views.py:72 msgid "Configuration updated" msgstr "Konfigurcja uaktualniona" @@ -771,23 +818,28 @@ msgstr "" msgid "Last update" msgstr "Ostatnie uaktualnienie" -#: plinth/modules/ejabberd/__init__.py:42 -msgid "" -"Chat Server \n" -" (ejabberd)" +#: plinth/modules/ejabberd/__init__.py:45 +msgid "ejabberd" msgstr "" -#: plinth/modules/ejabberd/__init__.py:45 +#: plinth/modules/ejabberd/__init__.py:47 +#: plinth/modules/matrixsynapse/__init__.py:43 +msgid "Chat Server" +msgstr "" + +#: plinth/modules/ejabberd/__init__.py:50 msgid "" "XMPP is an open and standardized communication protocol. Here you can run " "and configure your XMPP server, called ejabberd." msgstr "" -#: plinth/modules/ejabberd/__init__.py:48 +#: plinth/modules/ejabberd/__init__.py:54 +#, python-brace-format msgid "" -"To actually communicate, you can use the web client or any other XMPP client." +"To actually communicate, you can use the web " +"client or any other XMPP client. When enabled, ejabberd can be accessed by " +"any user with a {box_name} login." msgstr "" #: plinth/modules/ejabberd/forms.py:33 @@ -825,16 +877,11 @@ msgstr "" msgid "Configuration" msgstr "Konfiguracja" -#: plinth/modules/ejabberd/views.py:60 plinth/modules/openvpn/views.py:145 -#: plinth/modules/tor/views.py:134 plinth/views.py:103 -msgid "Setting unchanged" -msgstr "" - -#: plinth/modules/ejabberd/views.py:64 plinth/views.py:107 +#: plinth/modules/ejabberd/views.py:64 plinth/views.py:116 msgid "Application enabled" msgstr "" -#: plinth/modules/ejabberd/views.py:67 plinth/views.py:110 +#: plinth/modules/ejabberd/views.py:67 plinth/views.py:119 msgid "Application disabled" msgstr "" @@ -880,13 +927,13 @@ msgid "Service/Port" msgstr "Usługa/Port" #: plinth/modules/firewall/templates/firewall.html:65 -#: plinth/modules/letsencrypt/templates/letsencrypt.html:88 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:94 #: plinth/modules/names/templates/names.html:49 msgid "Enabled" msgstr "Włączony" #: plinth/modules/firewall/templates/firewall.html:68 -#: plinth/modules/letsencrypt/templates/letsencrypt.html:90 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:96 #: plinth/modules/names/templates/names.html:51 #: plinth/modules/networks/forms.py:63 msgid "Disabled" @@ -1099,16 +1146,29 @@ msgid "" "before submitting the bug report." msgstr "" -#: plinth/modules/ikiwiki/__init__.py:39 -msgid "Wiki and Blog (ikiwiki)" +#: plinth/modules/ikiwiki/__init__.py:41 +msgid "ikiwiki" msgstr "" -#: plinth/modules/ikiwiki/__init__.py:42 +#: plinth/modules/ikiwiki/__init__.py:43 +msgid "Wiki and Blog" +msgstr "" + +#: plinth/modules/ikiwiki/__init__.py:46 msgid "" "ikiwiki is a simple wiki and blog application. It supports several " "lightweight markup languages, including Markdown, and common blogging " "functionality such as comments and RSS feeds. When enabled, the blogs and " -"wikis will be available from /ikiwiki." +"wikis will be available at /ikiwiki (once created)." +msgstr "" + +#: plinth/modules/ikiwiki/__init__.py:53 +#, python-brace-format +msgid "" +"Only {box_name} users in the admin group can create and " +"manage blogs and wikis, but any user in the wiki group can " +"edit existing ones. In the User " +"Configuration you can change these permissions or add new users." msgstr "" #: plinth/modules/ikiwiki/forms.py:34 @@ -1220,16 +1280,18 @@ msgid "Delete Wiki or Blog" msgstr "" #: plinth/modules/infinoted/__init__.py:43 -msgid "" -"Gobby Server \n" -" (infinoted)" +msgid "infinoted" msgstr "" -#: plinth/modules/infinoted/__init__.py:46 +#: plinth/modules/infinoted/__init__.py:45 +msgid "Gobby Server" +msgstr "" + +#: plinth/modules/infinoted/__init__.py:48 msgid "infinoted is a server for Gobby, a collaborative text editor." msgstr "" -#: plinth/modules/infinoted/__init__.py:49 +#: plinth/modules/infinoted/__init__.py:51 #, python-brace-format msgid "" "To use it, download Gobby, desktop " @@ -1238,29 +1300,34 @@ msgid "" msgstr "" #: plinth/modules/jsxc/__init__.py:36 -msgid "" -"Chat Client \n" -" (JSXC)" +msgid "JSXC" msgstr "" -#: plinth/modules/jsxc/__init__.py:40 +#: plinth/modules/jsxc/__init__.py:38 +msgid "Chat Client" +msgstr "" + +#: plinth/modules/jsxc/__init__.py:42 msgid "" "JSXC is a web client for XMPP. Typically it is used with an XMPP server " "running locally." msgstr "" -#: plinth/modules/jsxc/__init__.py:78 +#: plinth/modules/jsxc/__init__.py:80 msgid "" "Chat Client \n" " (jsxc)" msgstr "" -#: plinth/modules/letsencrypt/__init__.py:39 -#: plinth/modules/letsencrypt/__init__.py:64 -msgid "Certificates (Let's Encrypt)" +#: plinth/modules/letsencrypt/__init__.py:40 +msgid "Let's Encrypt" msgstr "" -#: plinth/modules/letsencrypt/__init__.py:43 +#: plinth/modules/letsencrypt/__init__.py:42 +msgid "Certificates" +msgstr "" + +#: plinth/modules/letsencrypt/__init__.py:46 #, python-brace-format msgid "" "A digital certificate allows users of a web service to verify the identity " @@ -1270,7 +1337,7 @@ msgid "" "Encrypt, a certificate authority (CA)." msgstr "" -#: plinth/modules/letsencrypt/__init__.py:50 +#: plinth/modules/letsencrypt/__init__.py:53 msgid "" "Let's Encrypt is a free, automated, and open certificate authority, run for " "the public's benefit by the Internet Security Research Group (ISRG). Please " @@ -1294,98 +1361,166 @@ msgstr "" msgid "Actions" msgstr "" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:56 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:62 #, python-format msgid "Valid, expires on %(expiry_date)s" msgstr "" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:63 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:69 msgid "Revoked" msgstr "" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:67 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:73 #, python-format msgid "Expired on %(expiry_date)s" msgstr "" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:71 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:77 #, fuzzy #| msgid "Invalid server name" msgid "Invalid test certificate" msgstr "Niewłaściwa nazwa użytkownika" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:75 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:81 #, python-format msgid "Invalid (%(reason)s)" msgstr "" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:82 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:88 msgid "No certificate" msgstr "" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:99 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:105 msgid "Re-obtain" msgstr "" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:105 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:111 #: plinth/modules/networks/templates/connection_show.html:63 #: plinth/modules/snapshot/templates/snapshot.html:34 msgid "Delete" msgstr "" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:112 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:118 msgid "Revoke" msgstr "" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:120 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:126 msgid "Obtain" msgstr "" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:133 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:149 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:156 +#, fuzzy +#| msgid "Update URL" +msgid "Update config" +msgstr "Uaktualnij URL" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:161 +#, python-format +msgid "" +"\n" +" Let Plinth manage certificate renewal of\n" +" %(current_domain)s (recommended)\n" +" " +msgstr "" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:166 +msgid "" +"\n" +" Let Plinth manage certificate renewal of the current domain " +"(recommended)\n" +" " +msgstr "" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:175 +#, python-format +msgid "" +"If %(box_name)s manages the certificate renewal for the current domain, it " +"will ensure that all apps that use the certificate can use it, as soon as it " +"gets renewed." +msgstr "" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:181 +msgid "" +"No certificate available for the current domain. First obtain a " +"certificate to enable management of its renewal." +msgstr "" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:186 +msgid "" +"No current domain is configured. First configure a domain to enable " +"management of its certificates." +msgstr "" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:195 msgid "" "No domains have been configured. Configure domains to be able to obtain " "certificates for them." msgstr "" -#: plinth/modules/letsencrypt/views.py:55 +#: plinth/modules/letsencrypt/views.py:57 #, python-brace-format msgid "" "Certificate successfully revoked for domain {domain}.This may take a few " "moments to take effect." msgstr "" -#: plinth/modules/letsencrypt/views.py:61 +#: plinth/modules/letsencrypt/views.py:63 #, python-brace-format msgid "Failed to revoke certificate for domain {domain}: {error}" msgstr "" -#: plinth/modules/letsencrypt/views.py:73 +#: plinth/modules/letsencrypt/views.py:75 #, python-brace-format msgid "Certificate successfully obtained for domain {domain}" msgstr "" -#: plinth/modules/letsencrypt/views.py:78 +#: plinth/modules/letsencrypt/views.py:81 #, python-brace-format msgid "Failed to obtain certificate for domain {domain}: {error}" msgstr "" #: plinth/modules/letsencrypt/views.py:90 +#: plinth/modules/letsencrypt/views.py:109 +#, python-brace-format +msgid "Certificate renewal management enabled for {domain}." +msgstr "" + +#: plinth/modules/letsencrypt/views.py:95 +#, python-brace-format +msgid "Failed to enable certificate renewal management for {domain}: {error}" +msgstr "" + +#: plinth/modules/letsencrypt/views.py:112 +#, python-brace-format +msgid "Certificate renewal management disabled for {domain}." +msgstr "" + +#: plinth/modules/letsencrypt/views.py:118 +#, python-brace-format +msgid "Failed to switch certificate renewal management for {domain}: {error}" +msgstr "" + +#: plinth/modules/letsencrypt/views.py:134 +#, python-brace-format +msgid "Failed to disable certificate renewal management for {domain}: {error}" +msgstr "" + +#: plinth/modules/letsencrypt/views.py:141 #, python-brace-format msgid "Certificate successfully deleted for domain {domain}" msgstr "" -#: plinth/modules/letsencrypt/views.py:95 +#: plinth/modules/letsencrypt/views.py:146 #, python-brace-format msgid "Failed to delete certificate for domain {domain}: {error}" msgstr "" #: plinth/modules/matrixsynapse/__init__.py:41 -msgid "" -"Chat Server \n" -" (Matrix Synapse)" +msgid "Matrix Synapse" msgstr "" -#: plinth/modules/matrixsynapse/__init__.py:44 +#: plinth/modules/matrixsynapse/__init__.py:46 msgid "" "Matrix is an new " "ecosystem for open, federated instant messaging and VoIP. Synapse is a " @@ -1395,17 +1530,13 @@ msgid "" "converse with users on all other Matrix servers via federation." msgstr "" -#: plinth/modules/matrixsynapse/__init__.py:52 +#: plinth/modules/matrixsynapse/__init__.py:54 msgid "" "To communicate, you can use the available clients for mobile, desktop and the web. Riot client is recommended." msgstr "" -#: plinth/modules/matrixsynapse/forms.py:31 -msgid "Select the domain name" -msgstr "Określ nazwę domeny" - #: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:34 msgid "" "Matrix service needs to be configured for a domain. Users on other Matrix " @@ -1437,12 +1568,16 @@ msgid "" msgstr "" #: plinth/modules/minetest/__init__.py:48 -msgid "" -"Block Sandbox \n" -" (Minetest)" +msgid "Minetest" msgstr "" -#: plinth/modules/minetest/__init__.py:52 +#: plinth/modules/minetest/__init__.py:50 +#, fuzzy +#| msgid "Blocked" +msgid "Block Sandbox" +msgstr "Zablokowano" + +#: plinth/modules/minetest/__init__.py:54 #, python-brace-format msgid "" "Minetest is a multiplayer infinite-world block sandbox. This module enables " @@ -1558,7 +1693,7 @@ msgstr "" #: plinth/modules/monkeysphere/templates/monkeysphere.html:87 #: plinth/modules/monkeysphere/templates/monkeysphere_details.html:60 -#: plinth/service.py:117 +#: plinth/service.py:116 msgid "Web Server" msgstr "" @@ -1655,18 +1790,20 @@ msgid "Error occurred while publishing key." msgstr "" #: plinth/modules/mumble/__init__.py:35 -msgid "" -"Voice Chat \n" -" (Mumble)" +msgid "Mumble" msgstr "" -#: plinth/modules/mumble/__init__.py:44 +#: plinth/modules/mumble/__init__.py:37 +msgid "Voice Chat" +msgstr "" + +#: plinth/modules/mumble/__init__.py:46 msgid "" "Mumble is an open source, low-latency, encrypted, high quality voice chat " "software." msgstr "" -#: plinth/modules/mumble/__init__.py:47 +#: plinth/modules/mumble/__init__.py:49 msgid "" "You can connect to your Mumble server on the regular Mumble port 64738. Clients to connect to Mumble from your " @@ -2154,7 +2291,7 @@ msgid "This connection is not active." msgstr "" #: plinth/modules/networks/templates/connection_show.html:266 -#: plinth/modules/security/__init__.py:32 plinth/modules/security/views.py:46 +#: plinth/modules/security/__init__.py:32 plinth/modules/security/views.py:48 msgid "Security" msgstr "" @@ -2250,12 +2387,14 @@ msgid "Inactive" msgstr "" #: plinth/modules/openvpn/__init__.py:42 -msgid "" -"Virtual Private Network \n" -" (OpenVPN)" +msgid "OpenVPN" msgstr "" -#: plinth/modules/openvpn/__init__.py:46 +#: plinth/modules/openvpn/__init__.py:44 +msgid "Virtual Private Network" +msgstr "" + +#: plinth/modules/openvpn/__init__.py:48 #, python-brace-format msgid "" "Virtual Private Network (VPN) is a technique for securely connecting two " @@ -2266,7 +2405,7 @@ msgid "" "security and anonymity." msgstr "" -#: plinth/modules/openvpn/__init__.py:84 +#: plinth/modules/openvpn/__init__.py:86 #, python-brace-format msgid "" "Download Profile" @@ -2341,10 +2480,14 @@ msgid "Setup failed." msgstr "" #: plinth/modules/pagekite/__init__.py:44 -msgid "Public Visibility (PageKite)" +msgid "PageKite" msgstr "" -#: plinth/modules/pagekite/__init__.py:48 +#: plinth/modules/pagekite/__init__.py:46 +msgid "Public Visibility" +msgstr "" + +#: plinth/modules/pagekite/__init__.py:50 #, python-brace-format msgid "" "PageKite is a system for exposing {box_name} services when you don't have a " @@ -2353,33 +2496,33 @@ msgid "" "following situations:" msgstr "" -#: plinth/modules/pagekite/__init__.py:55 +#: plinth/modules/pagekite/__init__.py:57 #, python-brace-format msgid "{box_name} is behind a restricted firewall." msgstr "" -#: plinth/modules/pagekite/__init__.py:59 +#: plinth/modules/pagekite/__init__.py:61 #, python-brace-format msgid "{box_name} is connected to a (wireless) router which you don't control." msgstr "" -#: plinth/modules/pagekite/__init__.py:62 +#: plinth/modules/pagekite/__init__.py:64 msgid "" "Your ISP does not provide you an external IP address and instead provides " "Internet connection through NAT." msgstr "" -#: plinth/modules/pagekite/__init__.py:65 +#: plinth/modules/pagekite/__init__.py:67 msgid "" "Your ISP does not provide you a static IP address and your IP address " "changes evertime you connect to Internet." msgstr "" -#: plinth/modules/pagekite/__init__.py:68 +#: plinth/modules/pagekite/__init__.py:70 msgid "Your ISP limits incoming connections." msgstr "" -#: plinth/modules/pagekite/__init__.py:71 +#: plinth/modules/pagekite/__init__.py:73 #, python-brace-format msgid "" "PageKite works around NAT, firewalls and IP-address limitations by using a " @@ -2661,8 +2804,8 @@ msgid "Pagekite setup finished. The HTTP and HTTPS services are activated now." msgstr "" "Ustawiania Pagekite zostało zakończone. Usługi HTTP i HTTPS są aktywne." -#: plinth/modules/power/__init__.py:28 plinth/modules/power/views.py:50 -#: plinth/modules/power/views.py:65 +#: plinth/modules/power/__init__.py:28 plinth/modules/power/views.py:51 +#: plinth/modules/power/views.py:67 msgid "Power" msgstr "" @@ -2671,10 +2814,16 @@ msgid "Restart or shut down the system." msgstr "" #: plinth/modules/power/templates/power.html:28 +msgid "" +"Currently an installation or upgrade is running. Consider waiting until it's " +"finished before shutting down or restarting." +msgstr "" + +#: plinth/modules/power/templates/power.html:37 msgid "Restart »" msgstr "" -#: plinth/modules/power/templates/power.html:31 +#: plinth/modules/power/templates/power.html:40 msgid "Shut Down »" msgstr "" @@ -2684,7 +2833,14 @@ msgid "" "interface for a few minutes until the system is restarted." msgstr "" -#: plinth/modules/power/templates/power_restart.html:42 +#: plinth/modules/power/templates/power_restart.html:38 +msgid "" +"Currently an installation or upgrade is running. Consider waiting until it's " +"finished before restarting." +msgstr "" + +#: plinth/modules/power/templates/power_restart.html:52 +#: plinth/modules/power/templates/power_restart.html:55 msgid "Restart Now" msgstr "" @@ -2694,24 +2850,33 @@ msgid "" "interface after shut down." msgstr "" -#: plinth/modules/power/templates/power_shutdown.html:41 +#: plinth/modules/power/templates/power_shutdown.html:37 +msgid "" +"Currently an installation or upgrade is running. Consider waiting until it's " +"finished before shutting down." +msgstr "" + +#: plinth/modules/power/templates/power_shutdown.html:51 +#: plinth/modules/power/templates/power_shutdown.html:54 msgid "Shut Down Now" msgstr "" #: plinth/modules/privoxy/__init__.py:43 -msgid "" -"Web Proxy \n" -" (Privoxy)" +msgid "Privoxy" msgstr "" -#: plinth/modules/privoxy/__init__.py:46 +#: plinth/modules/privoxy/__init__.py:45 +msgid "Web Proxy" +msgstr "" + +#: plinth/modules/privoxy/__init__.py:48 msgid "" "Privoxy is a non-caching web proxy with advanced filtering capabilities for " "enhancing privacy, modifying web page data and HTTP headers, controlling " "access, and removing ads and other obnoxious Internet junk. " msgstr "" -#: plinth/modules/privoxy/__init__.py:52 +#: plinth/modules/privoxy/__init__.py:54 #, python-brace-format msgid "" "You can use Privoxy by modifying your browser proxy settings to your " @@ -2721,18 +2886,20 @@ msgid "" "\">http://p.p." msgstr "" -#: plinth/modules/privoxy/__init__.py:144 +#: plinth/modules/privoxy/__init__.py:147 #, python-brace-format msgid "Access {url} with proxy {proxy} on tcp{kind}" msgstr "" #: plinth/modules/quassel/__init__.py:42 -msgid "" -"IRC Client \n" -" (Quassel)" +msgid "Quassel" msgstr "" -#: plinth/modules/quassel/__init__.py:46 +#: plinth/modules/quassel/__init__.py:44 +msgid "IRC Client" +msgstr "" + +#: plinth/modules/quassel/__init__.py:48 #, python-brace-format msgid "" "Quassel is an IRC application that is split into two parts, a \"core\" and a " @@ -2743,7 +2910,7 @@ msgid "" "connect and disconnect from it." msgstr "" -#: plinth/modules/quassel/__init__.py:54 +#: plinth/modules/quassel/__init__.py:56 msgid "" "You can connect to your Quassel core on the default Quassel port 4242. " "Clients to connect to Quassel from your supported " -"client application is needed. Radicale can be accessed by any user with " -"a {box_name} login." +"radicale.org/clients/\">supported client application is needed. Radicale " +"can be accessed by any user with a {box_name} login." msgstr "" #: plinth/modules/radicale/forms.py:28 @@ -2786,12 +2954,14 @@ msgid "Access rights configuration updated" msgstr "Zaktualizowano ustawienia praw dostępu" #: plinth/modules/repro/__init__.py:38 -msgid "" -"SIP Server \n" -" (repro)" +msgid "repro" msgstr "" -#: plinth/modules/repro/__init__.py:41 +#: plinth/modules/repro/__init__.py:40 +msgid "SIP Server" +msgstr "" + +#: plinth/modules/repro/__init__.py:43 msgid "" "repro provides various SIP services that a SIP softphone can utilize to " "provide audio and video calls as well as presence and instant messaging. " @@ -2800,7 +2970,7 @@ msgid "" "communications to other servers on the Internet similar to email." msgstr "" -#: plinth/modules/repro/__init__.py:48 +#: plinth/modules/repro/__init__.py:50 msgid "" "To make SIP calls, a client application is needed. Available clients include " "Jitsi (for computers) and (for Android phones)." msgstr "" -#: plinth/modules/repro/__init__.py:53 +#: plinth/modules/repro/__init__.py:55 msgid "" "Note: Before using repro, domains and users will need to " "be configured using the web-based " @@ -2818,12 +2988,14 @@ msgid "" msgstr "" #: plinth/modules/restore/__init__.py:36 -msgid "" -"Unhosted Storage \n" -" (reStore)" +msgid "reStore" msgstr "" -#: plinth/modules/restore/__init__.py:40 +#: plinth/modules/restore/__init__.py:38 +msgid "Unhosted Storage" +msgstr "" + +#: plinth/modules/restore/__init__.py:42 #, python-brace-format msgid "" "reStore is a server for unhosted web " @@ -2833,19 +3005,23 @@ msgid "" "becomes your unhosted storage server." msgstr "" -#: plinth/modules/restore/__init__.py:47 +#: plinth/modules/restore/__init__.py:49 msgid "" "You can create and edit accounts in the reStore web-" "interface." msgstr "" #: plinth/modules/roundcube/__init__.py:35 -msgid "" -"Email Client \n" -" (Roundcube)" +msgid "Roundcube" msgstr "" -#: plinth/modules/roundcube/__init__.py:38 +#: plinth/modules/roundcube/__init__.py:37 +#, fuzzy +#| msgid "Dynamic DNS Client" +msgid "Email Client" +msgstr "Klient Dynamic DNS" + +#: plinth/modules/roundcube/__init__.py:40 msgid "" "Roundcube webmail is a browser-based multilingual IMAP client with an " "application-like user interface. It provides full functionality you expect " @@ -2853,7 +3029,7 @@ msgid "" "manipulation, message searching and spell checking." msgstr "" -#: plinth/modules/roundcube/__init__.py:44 +#: plinth/modules/roundcube/__init__.py:46 msgid "" "You can access Roundcube from /roundcube. Provide " "the username and password of the email account you wish to access followed " @@ -2862,7 +3038,7 @@ msgid "" "server field like imaps://imap.example.com." msgstr "" -#: plinth/modules/roundcube/__init__.py:51 +#: plinth/modules/roundcube/__init__.py:53 msgid "" "For Gmail, username will be your Gmail address, password will be your Google " "account password and server will be imaps://imap.gmail.com. " @@ -2883,26 +3059,39 @@ msgid "" "services without further authorization." msgstr "" -#: plinth/modules/security/views.py:63 +#: plinth/modules/security/forms.py:35 +msgid "Fail2ban (recommended)" +msgstr "" + +#: plinth/modules/security/forms.py:36 +msgid "" +"When this option is enabled, fail2ban will limit brute force break-in " +"attempts to the SSH server and other password protected internet-services " +"which are enabled." +msgstr "" + +#: plinth/modules/security/views.py:66 #, python-brace-format msgid "Error setting restricted access: {exception}" msgstr "Błąd ustawienia ograniczonego dostępu: {exception}" -#: plinth/modules/security/views.py:66 +#: plinth/modules/security/views.py:69 msgid "Updated security configuration" msgstr "Zaktualizowano ustawienia bezpieczeństwa" #: plinth/modules/shaarli/__init__.py:35 -msgid "" -"Bookmarks \n" -" (Shaarli)" +msgid "Shaarli" msgstr "" -#: plinth/modules/shaarli/__init__.py:38 -msgid "Shaarli allows you to save and share bookmarks." +#: plinth/modules/shaarli/__init__.py:37 +msgid "Bookmarks" msgstr "" #: plinth/modules/shaarli/__init__.py:40 +msgid "Shaarli allows you to save and share bookmarks." +msgstr "" + +#: plinth/modules/shaarli/__init__.py:42 msgid "" "When enabled, Shaarli will be available from /shaarli path on the web server. Note that Shaarli only supports a single user " @@ -3015,6 +3204,18 @@ msgstr "" msgid "Rollback to Snapshot" msgstr "" +#: plinth/modules/ssh/__init__.py:37 +msgid "Secure Shell (SSH) Server" +msgstr "" + +#: plinth/modules/ssh/__init__.py:40 +msgid "" +"A Secure Shell server uses the secure shell protocol to accept connections " +"from remote computers. An authorized remote computer can perform " +"administration tasks, copy files or run other services using such " +"connections." +msgstr "" + #: plinth/modules/sso/__init__.py:30 msgid "Single Sign On" msgstr "" @@ -3024,12 +3225,14 @@ msgid "Login" msgstr "" #: plinth/modules/syncthing/__init__.py:39 -msgid "" -"File Synchronization \n" -" (Syncthing)" +msgid "Syncthing" msgstr "" -#: plinth/modules/syncthing/__init__.py:42 +#: plinth/modules/syncthing/__init__.py:41 +msgid "File Synchronization" +msgstr "" + +#: plinth/modules/syncthing/__init__.py:44 msgid "" "Syncthing is an application to synchronize files across multiple devices, e." "g. your desktop computer and mobile phone. Creation, modification, or " @@ -3037,7 +3240,7 @@ msgid "" "other devices that also run Syncthing." msgstr "" -#: plinth/modules/syncthing/__init__.py:47 +#: plinth/modules/syncthing/__init__.py:49 #, python-brace-format msgid "" "Running Syncthing on {box_name} provides an extra synchronization point for " @@ -3048,7 +3251,7 @@ msgid "" "{box_name} is only available for users belonging to the \"admin\" group." msgstr "" -#: plinth/modules/syncthing/__init__.py:54 +#: plinth/modules/syncthing/__init__.py:56 msgid "" "When enabled, Syncthing's web interface will be available from /syncthing. Desktop and mobile clients are also Tor Project website. For " @@ -3119,36 +3336,36 @@ msgid "" "\">Tor Browser." msgstr "" -#: plinth/modules/tor/__init__.py:70 plinth/modules/tor/__init__.py:112 +#: plinth/modules/tor/__init__.py:72 plinth/modules/tor/__init__.py:114 msgid "Tor Anonymity Network" msgstr "" -#: plinth/modules/tor/__init__.py:76 plinth/modules/tor/__init__.py:120 +#: plinth/modules/tor/__init__.py:78 plinth/modules/tor/__init__.py:122 msgid "Tor Bridge Relay" msgstr "" -#: plinth/modules/tor/__init__.py:98 plinth/modules/tor/__init__.py:141 +#: plinth/modules/tor/__init__.py:100 plinth/modules/tor/__init__.py:143 msgid "Tor Hidden Service" msgstr "" -#: plinth/modules/tor/__init__.py:160 +#: plinth/modules/tor/__init__.py:162 msgid "Tor relay port available" msgstr "" -#: plinth/modules/tor/__init__.py:168 +#: plinth/modules/tor/__init__.py:170 msgid "Obfs3 transport registered" msgstr "" -#: plinth/modules/tor/__init__.py:174 +#: plinth/modules/tor/__init__.py:176 msgid "Obfs4 transport registered" msgstr "" -#: plinth/modules/tor/__init__.py:211 +#: plinth/modules/tor/__init__.py:213 #, python-brace-format msgid "Access URL {url} on tcp{kind} via Tor" msgstr "" -#: plinth/modules/tor/__init__.py:222 +#: plinth/modules/tor/__init__.py:224 #, python-brace-format msgid "Confirm Tor usage at {url} on tcp{kind}" msgstr "" @@ -3292,18 +3509,20 @@ msgid "An error occurred during configuration." msgstr "" #: plinth/modules/transmission/__init__.py:38 -msgid "" -"BitTorrent \n" -" (Transmission)" +msgid "Transmission" msgstr "" -#: plinth/modules/transmission/__init__.py:41 +#: plinth/modules/transmission/__init__.py:40 +msgid "BitTorrent" +msgstr "" + +#: plinth/modules/transmission/__init__.py:43 msgid "" "BitTorrent is a peer-to-peer file sharing protocol. Transmission daemon " "handles Bitorrent file sharing. Note that BitTorrent is not anonymous." msgstr "" -#: plinth/modules/transmission/__init__.py:44 +#: plinth/modules/transmission/__init__.py:46 msgid "" "Access the web interface at /transmission." msgstr "" @@ -3329,23 +3548,27 @@ msgid "" "hashed format. To set a new password, enter the password in plain text." msgstr "" -#: plinth/modules/ttrss/__init__.py:37 -msgid "" -"News Feed Reader \n" -" (Tiny Tiny RSS)" +#: plinth/modules/ttrss/__init__.py:39 +msgid "Tiny Tiny RSS" msgstr "" -#: plinth/modules/ttrss/__init__.py:40 +#: plinth/modules/ttrss/__init__.py:41 +msgid "News Feed Reader" +msgstr "" + +#: plinth/modules/ttrss/__init__.py:44 msgid "" "Tiny Tiny RSS is a news feed (RSS/Atom) reader and aggregator, designed to " "allow reading news from any location, while feeling as close to a real " "desktop application as possible." msgstr "" -#: plinth/modules/ttrss/__init__.py:44 +#: plinth/modules/ttrss/__init__.py:49 +#, python-brace-format msgid "" "When enabled, Tiny Tiny RSS will be available from /tt-" -"rss path on the web server." +"rss path on the web server. It can be accessed by any user with a {box_name} login." msgstr "" #: plinth/modules/upgrades/__init__.py:35 @@ -3640,15 +3863,11 @@ msgstr "" msgid "configuration file: {file}" msgstr "plik konfiguracyjny: {file}" -#: plinth/service.py:119 +#: plinth/service.py:118 msgid "Web Server over Secure Socket Layer" msgstr "" -#: plinth/service.py:121 -msgid "Secure Shell (SSH) Server" -msgstr "" - -#: plinth/service.py:123 +#: plinth/service.py:120 #, python-brace-format msgid "{box_name} Web Interface (Plinth)" msgstr "" @@ -3691,11 +3910,11 @@ msgid "" "\"%(status_log_url)s\">status log to the bug report." msgstr "" -#: plinth/templates/apps.html:25 +#: plinth/templates/apps.html:33 msgid "Services and Applications" msgstr "Aplikacje i usługi" -#: plinth/templates/apps.html:28 +#: plinth/templates/apps.html:36 #, python-format msgid "" "You can install and run various services and applications on your " @@ -3706,7 +3925,7 @@ msgstr "" "%(box_name)s. Kliknij na dowolnej aplikacji po lewej aby przeczytać jej opis " "i ją zainstalować." -#: plinth/templates/apps.html:36 +#: plinth/templates/apps.html:44 msgid "" "This box can be your photo sharing site, your instant messaging site, your " "social networking site, your news site. Remember web portals? We can be " @@ -3870,21 +4089,29 @@ msgstr "" msgid "%(percentage)s%% complete" msgstr "" -#: plinth/templates/system.html:25 +#: plinth/templates/system.html:33 msgid "System Configuration" msgstr "" -#: plinth/templates/system.html:28 +#: plinth/templates/system.html:36 #, python-format msgid "Here you can administrate the underlying system of your %(box_name)s." msgstr "" -#: plinth/templates/system.html:34 +#: plinth/templates/system.html:42 #, python-format msgid "" "The options affect the %(box_name)s at its most general level, so be careful!" msgstr "" +#, fuzzy +#~| msgid "Select the domain name" +#~ msgid "Select the domain name to be used for diaspora*" +#~ msgstr "Określ nazwę domeny" + +#~ msgid "Select the domain name" +#~ msgstr "Określ nazwę domeny" + #~ msgid "Applications" #~ msgstr "Aplikacje" @@ -3911,9 +4138,6 @@ msgstr "" #~ "Powinieneś sprawdzić ustawienia sieci i zmodyfikować je jeśli to " #~ "potrzebne. Nie zapomnij zmienić hasła do Wi-Fi!" -#~ msgid "Go to Networks" -#~ msgstr "Przejdź do sieci" - #, fuzzy #~| msgid "deluge-web is running" #~ msgid "is running" diff --git a/plinth/locale/pt/LC_MESSAGES/django.po b/plinth/locale/pt/LC_MESSAGES/django.po index 30af593ed..25c09cf4a 100644 --- a/plinth/locale/pt/LC_MESSAGES/django.po +++ b/plinth/locale/pt/LC_MESSAGES/django.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2017-07-10 22:56-0400\n" +"POT-Creation-Date: 2017-09-24 11:24-0400\n" "PO-Revision-Date: 2015-12-15 01:08+0000\n" "Last-Translator: Daniel Sousa \n" "Language-Team: Portuguese /deluge path on the web server. The default password is 'deluge', but " @@ -400,21 +412,22 @@ msgstr "" msgid "Result" msgstr "" -#: plinth/modules/diaspora/__init__.py:61 +#: plinth/modules/diaspora/__init__.py:51 +msgid "diaspora*" +msgstr "" + +#: plinth/modules/diaspora/__init__.py:53 +msgid "Federated Social Network" +msgstr "" + +#: plinth/modules/diaspora/__init__.py:62 msgid "" "diaspora* is a decentralized social network where you can store and control " "your own data." msgstr "" -#: plinth/modules/diaspora/forms.py:30 -#, fuzzy -#| msgid "Invalid domain name" -msgid "Select the domain name to be used for diaspora*" -msgstr "Nome de domínio inválido" - -#: plinth/modules/diaspora/forms.py:32 -msgid "" -"Warning! Do not change the FreedomBox domain name after setting up diaspora*" +#: plinth/modules/diaspora/forms.py:31 +msgid "Enable new user registrations" msgstr "" #: plinth/modules/diaspora/templates/diaspora-post-setup.html:32 @@ -441,7 +454,25 @@ msgstr "" msgid "Update setup" msgstr "" -#: plinth/modules/disks/__init__.py:33 plinth/modules/disks/views.py:39 +#: plinth/modules/diaspora/views.py:96 plinth/modules/ejabberd/views.py:60 +#: plinth/modules/openvpn/views.py:145 plinth/modules/tor/views.py:134 +#: plinth/views.py:112 +msgid "Setting unchanged" +msgstr "Definição inalterada" + +#: plinth/modules/diaspora/views.py:100 +#, fuzzy +#| msgid "Applications" +msgid "User registrations enabled" +msgstr "Aplicações" + +#: plinth/modules/diaspora/views.py:104 +#, fuzzy +#| msgid "Applications" +msgid "User registrations disabled" +msgstr "Aplicações" + +#: plinth/modules/disks/__init__.py:33 plinth/modules/disks/views.py:45 msgid "Disks" msgstr "" @@ -483,7 +514,7 @@ msgstr "" #: plinth/modules/disks/templates/disks.html:90 #: plinth/modules/disks/templates/disks.html:102 #: plinth/modules/disks/templates/disks_expand.html:45 -#: plinth/modules/disks/views.py:56 +#: plinth/modules/disks/views.py:62 msgid "Expand Root Partition" msgstr "" @@ -501,46 +532,53 @@ msgid "" "root partition." msgstr "" -#: plinth/modules/disks/views.py:65 +#: plinth/modules/disks/views.py:71 #, fuzzy, python-brace-format #| msgid "Error setting language: {exception}" msgid "Error expanding partition: {exception}" msgstr "Erro ao definir a língua: {exception}" -#: plinth/modules/disks/views.py:68 +#: plinth/modules/disks/views.py:74 msgid "Partition expanded successfully." msgstr "" -#: plinth/modules/disks/views.py:77 +#: plinth/modules/disks/views.py:93 +#, python-format, python-brace-format +msgid "" +"Warning: Low space on system partition ({percent_used}% used, {free_space} " +"free)." +msgstr "" + +#: plinth/modules/disks/views.py:130 #, python-brace-format msgid "{disk_size:.1f} bytes" msgstr "" -#: plinth/modules/disks/views.py:81 +#: plinth/modules/disks/views.py:134 #, python-brace-format msgid "{disk_size:.1f} KiB" msgstr "" -#: plinth/modules/disks/views.py:85 +#: plinth/modules/disks/views.py:138 #, python-brace-format msgid "{disk_size:.1f} MiB" msgstr "" -#: plinth/modules/disks/views.py:89 +#: plinth/modules/disks/views.py:142 #, python-brace-format msgid "{disk_size:.1f} GiB" msgstr "" -#: plinth/modules/disks/views.py:92 +#: plinth/modules/disks/views.py:145 #, python-brace-format msgid "{disk_size:.1f} TiB" msgstr "" -#: plinth/modules/dynamicdns/__init__.py:33 +#: plinth/modules/dynamicdns/__init__.py:35 msgid "Dynamic DNS Client" msgstr "" -#: plinth/modules/dynamicdns/__init__.py:37 +#: plinth/modules/dynamicdns/__init__.py:39 #, python-brace-format msgid "" "If your Internet provider changes your IP address periodically (i.e. every " @@ -548,7 +586,7 @@ msgid "" "prevent others from finding services which are provided by this {box_name}." msgstr "" -#: plinth/modules/dynamicdns/__init__.py:43 +#: plinth/modules/dynamicdns/__init__.py:45 msgid "" "The solution is to assign a DNS name to your IP address and update the DNS " "name every time your IP is changed by your Internet provider. Dynamic DNS " @@ -559,11 +597,16 @@ msgid "" "IP address." msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:35 plinth/modules/help/help.py:40 +#: plinth/modules/dynamicdns/__init__.py:67 +#: plinth/modules/dynamicdns/dynamicdns.py:377 +msgid "Dynamic DNS Service" +msgstr "" + +#: plinth/modules/dynamicdns/dynamicdns.py:43 plinth/modules/help/help.py:40 msgid "About" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:39 +#: plinth/modules/dynamicdns/dynamicdns.py:47 #: plinth/modules/firewall/templates/firewall.html:47 #: plinth/modules/networks/templates/connection_show.html:261 #: plinth/modules/openvpn/templates/openvpn.html:67 @@ -572,46 +615,46 @@ msgstr "" msgid "Status" msgstr "Estado" -#: plinth/modules/dynamicdns/dynamicdns.py:63 +#: plinth/modules/dynamicdns/dynamicdns.py:71 msgid "" "The Variables <User>, <Pass>, <Ip>, <Domain> may be " "used within the URL. For details see the update URL templates of the example " "providers." msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:67 +#: plinth/modules/dynamicdns/dynamicdns.py:75 msgid "" "Please choose an update protocol according to your provider. If your " "provider does not support the GnuDIP protocol or your provider is not listed " "you may use the update URL of your provider." msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:72 +#: plinth/modules/dynamicdns/dynamicdns.py:80 msgid "" "Please do not enter a URL here (like \"https://example.com/\") but only the " "hostname of the GnuDIP server (like \"example.com\")." msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:76 +#: plinth/modules/dynamicdns/dynamicdns.py:84 #, python-brace-format msgid "The public domain name you want to use to reach your {box_name}." msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:79 +#: plinth/modules/dynamicdns/dynamicdns.py:87 msgid "Use this option if your provider uses self signed certificates." msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:82 +#: plinth/modules/dynamicdns/dynamicdns.py:90 msgid "" "If this option is selected, your username and password will be used for HTTP " "basic authentication." msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:85 +#: plinth/modules/dynamicdns/dynamicdns.py:93 msgid "Leave this field empty if you want to keep your current password." msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:88 +#: plinth/modules/dynamicdns/dynamicdns.py:96 #, python-brace-format msgid "" "Optional Value. If your {box_name} is not connected directly to the Internet " @@ -620,84 +663,84 @@ msgid "" "(example: http://myip.datasystems24.de)." msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:96 +#: plinth/modules/dynamicdns/dynamicdns.py:104 msgid "The username that was used when the account was created." msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:107 +#: plinth/modules/dynamicdns/dynamicdns.py:115 msgid "Enable Dynamic DNS" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:110 +#: plinth/modules/dynamicdns/dynamicdns.py:118 #, fuzzy #| msgid "Service Discovery" msgid "Service Type" msgstr "Descoberta do Serviço" -#: plinth/modules/dynamicdns/dynamicdns.py:115 +#: plinth/modules/dynamicdns/dynamicdns.py:123 msgid "GnuDIP Server Address" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:120 +#: plinth/modules/dynamicdns/dynamicdns.py:128 msgid "Invalid server name" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:123 +#: plinth/modules/dynamicdns/dynamicdns.py:131 msgid "Update URL" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:127 +#: plinth/modules/dynamicdns/dynamicdns.py:135 msgid "Accept all SSL certificates" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:131 +#: plinth/modules/dynamicdns/dynamicdns.py:139 msgid "Use HTTP basic authentication" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:143 +#: plinth/modules/dynamicdns/dynamicdns.py:151 #: plinth/modules/networks/forms.py:228 plinth/modules/transmission/forms.py:37 msgid "Username" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:146 +#: plinth/modules/dynamicdns/dynamicdns.py:154 #: plinth/modules/networks/forms.py:229 plinth/modules/transmission/forms.py:41 msgid "Password" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:149 +#: plinth/modules/dynamicdns/dynamicdns.py:157 #: plinth/modules/networks/forms.py:231 msgid "Show password" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:153 +#: plinth/modules/dynamicdns/dynamicdns.py:161 msgid "URL to look up public IP" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:179 +#: plinth/modules/dynamicdns/dynamicdns.py:187 msgid "Please provide an update URL or a GnuDIP server address" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:184 +#: plinth/modules/dynamicdns/dynamicdns.py:192 msgid "Please provide a GnuDIP username" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:188 +#: plinth/modules/dynamicdns/dynamicdns.py:196 msgid "Please provide a GnuDIP domain name" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:193 +#: plinth/modules/dynamicdns/dynamicdns.py:201 msgid "Please provide a password" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:211 +#: plinth/modules/dynamicdns/dynamicdns.py:219 msgid "Configure Dynamic DNS" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:232 +#: plinth/modules/dynamicdns/dynamicdns.py:240 msgid "Dynamic DNS Status" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:364 +#: plinth/modules/dynamicdns/dynamicdns.py:381 #: plinth/modules/openvpn/views.py:143 plinth/modules/transmission/views.py:72 msgid "Configuration updated" msgstr "Configuração atualizada" @@ -752,23 +795,28 @@ msgstr "" msgid "Last update" msgstr "" -#: plinth/modules/ejabberd/__init__.py:42 -msgid "" -"Chat Server \n" -" (ejabberd)" +#: plinth/modules/ejabberd/__init__.py:45 +msgid "ejabberd" msgstr "" -#: plinth/modules/ejabberd/__init__.py:45 +#: plinth/modules/ejabberd/__init__.py:47 +#: plinth/modules/matrixsynapse/__init__.py:43 +msgid "Chat Server" +msgstr "" + +#: plinth/modules/ejabberd/__init__.py:50 msgid "" "XMPP is an open and standardized communication protocol. Here you can run " "and configure your XMPP server, called ejabberd." msgstr "" -#: plinth/modules/ejabberd/__init__.py:48 +#: plinth/modules/ejabberd/__init__.py:54 +#, python-brace-format msgid "" -"To actually communicate, you can use the web client or any other XMPP client." +"To actually communicate, you can use the web " +"client or any other XMPP client. When enabled, ejabberd can be accessed by " +"any user with a {box_name} login." msgstr "" #: plinth/modules/ejabberd/forms.py:33 @@ -806,18 +854,13 @@ msgstr "" msgid "Configuration" msgstr "Configuração" -#: plinth/modules/ejabberd/views.py:60 plinth/modules/openvpn/views.py:145 -#: plinth/modules/tor/views.py:134 plinth/views.py:103 -msgid "Setting unchanged" -msgstr "Definição inalterada" - -#: plinth/modules/ejabberd/views.py:64 plinth/views.py:107 +#: plinth/modules/ejabberd/views.py:64 plinth/views.py:116 #, fuzzy #| msgid "Applications" msgid "Application enabled" msgstr "Aplicações" -#: plinth/modules/ejabberd/views.py:67 plinth/views.py:110 +#: plinth/modules/ejabberd/views.py:67 plinth/views.py:119 #, fuzzy #| msgid "Applications" msgid "Application disabled" @@ -865,13 +908,13 @@ msgid "Service/Port" msgstr "" #: plinth/modules/firewall/templates/firewall.html:65 -#: plinth/modules/letsencrypt/templates/letsencrypt.html:88 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:94 #: plinth/modules/names/templates/names.html:49 msgid "Enabled" msgstr "" #: plinth/modules/firewall/templates/firewall.html:68 -#: plinth/modules/letsencrypt/templates/letsencrypt.html:90 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:96 #: plinth/modules/names/templates/names.html:51 #: plinth/modules/networks/forms.py:63 msgid "Disabled" @@ -1084,16 +1127,31 @@ msgid "" "before submitting the bug report." msgstr "" -#: plinth/modules/ikiwiki/__init__.py:39 -msgid "Wiki and Blog (ikiwiki)" +#: plinth/modules/ikiwiki/__init__.py:41 +#, fuzzy +#| msgid "Enable network time" +msgid "ikiwiki" +msgstr "Ativar tempo da rede" + +#: plinth/modules/ikiwiki/__init__.py:43 +msgid "Wiki and Blog" msgstr "" -#: plinth/modules/ikiwiki/__init__.py:42 +#: plinth/modules/ikiwiki/__init__.py:46 msgid "" "ikiwiki is a simple wiki and blog application. It supports several " "lightweight markup languages, including Markdown, and common blogging " "functionality such as comments and RSS feeds. When enabled, the blogs and " -"wikis will be available from /ikiwiki." +"wikis will be available at /ikiwiki (once created)." +msgstr "" + +#: plinth/modules/ikiwiki/__init__.py:53 +#, python-brace-format +msgid "" +"Only {box_name} users in the admin group can create and " +"manage blogs and wikis, but any user in the wiki group can " +"edit existing ones. In the User " +"Configuration you can change these permissions or add new users." msgstr "" #: plinth/modules/ikiwiki/forms.py:34 @@ -1205,16 +1263,18 @@ msgid "Delete Wiki or Blog" msgstr "" #: plinth/modules/infinoted/__init__.py:43 -msgid "" -"Gobby Server \n" -" (infinoted)" +msgid "infinoted" msgstr "" -#: plinth/modules/infinoted/__init__.py:46 +#: plinth/modules/infinoted/__init__.py:45 +msgid "Gobby Server" +msgstr "" + +#: plinth/modules/infinoted/__init__.py:48 msgid "infinoted is a server for Gobby, a collaborative text editor." msgstr "" -#: plinth/modules/infinoted/__init__.py:49 +#: plinth/modules/infinoted/__init__.py:51 #, python-brace-format msgid "" "To use it, download Gobby, desktop " @@ -1223,29 +1283,34 @@ msgid "" msgstr "" #: plinth/modules/jsxc/__init__.py:36 -msgid "" -"Chat Client \n" -" (JSXC)" +msgid "JSXC" msgstr "" -#: plinth/modules/jsxc/__init__.py:40 +#: plinth/modules/jsxc/__init__.py:38 +msgid "Chat Client" +msgstr "" + +#: plinth/modules/jsxc/__init__.py:42 msgid "" "JSXC is a web client for XMPP. Typically it is used with an XMPP server " "running locally." msgstr "" -#: plinth/modules/jsxc/__init__.py:78 +#: plinth/modules/jsxc/__init__.py:80 msgid "" "Chat Client \n" " (jsxc)" msgstr "" -#: plinth/modules/letsencrypt/__init__.py:39 -#: plinth/modules/letsencrypt/__init__.py:64 -msgid "Certificates (Let's Encrypt)" +#: plinth/modules/letsencrypt/__init__.py:40 +msgid "Let's Encrypt" msgstr "" -#: plinth/modules/letsencrypt/__init__.py:43 +#: plinth/modules/letsencrypt/__init__.py:42 +msgid "Certificates" +msgstr "" + +#: plinth/modules/letsencrypt/__init__.py:46 #, python-brace-format msgid "" "A digital certificate allows users of a web service to verify the identity " @@ -1255,7 +1320,7 @@ msgid "" "Encrypt, a certificate authority (CA)." msgstr "" -#: plinth/modules/letsencrypt/__init__.py:50 +#: plinth/modules/letsencrypt/__init__.py:53 msgid "" "Let's Encrypt is a free, automated, and open certificate authority, run for " "the public's benefit by the Internet Security Research Group (ISRG). Please " @@ -1283,96 +1348,164 @@ msgstr "" msgid "Actions" msgstr "Aplicações" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:56 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:62 #, python-format msgid "Valid, expires on %(expiry_date)s" msgstr "" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:63 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:69 msgid "Revoked" msgstr "" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:67 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:73 #, python-format msgid "Expired on %(expiry_date)s" msgstr "" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:71 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:77 msgid "Invalid test certificate" msgstr "" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:75 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:81 #, python-format msgid "Invalid (%(reason)s)" msgstr "" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:82 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:88 msgid "No certificate" msgstr "" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:99 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:105 msgid "Re-obtain" msgstr "" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:105 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:111 #: plinth/modules/networks/templates/connection_show.html:63 #: plinth/modules/snapshot/templates/snapshot.html:34 msgid "Delete" msgstr "" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:112 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:118 msgid "Revoke" msgstr "" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:120 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:126 msgid "Obtain" msgstr "" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:133 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:149 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:156 +#, fuzzy +#| msgid "General Configuration" +msgid "Update config" +msgstr "Configuração Geral" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:161 +#, python-format +msgid "" +"\n" +" Let Plinth manage certificate renewal of\n" +" %(current_domain)s (recommended)\n" +" " +msgstr "" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:166 +msgid "" +"\n" +" Let Plinth manage certificate renewal of the current domain " +"(recommended)\n" +" " +msgstr "" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:175 +#, python-format +msgid "" +"If %(box_name)s manages the certificate renewal for the current domain, it " +"will ensure that all apps that use the certificate can use it, as soon as it " +"gets renewed." +msgstr "" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:181 +msgid "" +"No certificate available for the current domain. First obtain a " +"certificate to enable management of its renewal." +msgstr "" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:186 +msgid "" +"No current domain is configured. First configure a domain to enable " +"management of its certificates." +msgstr "" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:195 msgid "" "No domains have been configured. Configure domains to be able to obtain " "certificates for them." msgstr "" -#: plinth/modules/letsencrypt/views.py:55 +#: plinth/modules/letsencrypt/views.py:57 #, python-brace-format msgid "" "Certificate successfully revoked for domain {domain}.This may take a few " "moments to take effect." msgstr "" -#: plinth/modules/letsencrypt/views.py:61 +#: plinth/modules/letsencrypt/views.py:63 #, python-brace-format msgid "Failed to revoke certificate for domain {domain}: {error}" msgstr "" -#: plinth/modules/letsencrypt/views.py:73 +#: plinth/modules/letsencrypt/views.py:75 #, python-brace-format msgid "Certificate successfully obtained for domain {domain}" msgstr "" -#: plinth/modules/letsencrypt/views.py:78 +#: plinth/modules/letsencrypt/views.py:81 #, python-brace-format msgid "Failed to obtain certificate for domain {domain}: {error}" msgstr "" #: plinth/modules/letsencrypt/views.py:90 +#: plinth/modules/letsencrypt/views.py:109 +#, python-brace-format +msgid "Certificate renewal management enabled for {domain}." +msgstr "" + +#: plinth/modules/letsencrypt/views.py:95 +#, python-brace-format +msgid "Failed to enable certificate renewal management for {domain}: {error}" +msgstr "" + +#: plinth/modules/letsencrypt/views.py:112 +#, python-brace-format +msgid "Certificate renewal management disabled for {domain}." +msgstr "" + +#: plinth/modules/letsencrypt/views.py:118 +#, python-brace-format +msgid "Failed to switch certificate renewal management for {domain}: {error}" +msgstr "" + +#: plinth/modules/letsencrypt/views.py:134 +#, python-brace-format +msgid "Failed to disable certificate renewal management for {domain}: {error}" +msgstr "" + +#: plinth/modules/letsencrypt/views.py:141 #, python-brace-format msgid "Certificate successfully deleted for domain {domain}" msgstr "" -#: plinth/modules/letsencrypt/views.py:95 +#: plinth/modules/letsencrypt/views.py:146 #, python-brace-format msgid "Failed to delete certificate for domain {domain}: {error}" msgstr "" #: plinth/modules/matrixsynapse/__init__.py:41 -msgid "" -"Chat Server \n" -" (Matrix Synapse)" +msgid "Matrix Synapse" msgstr "" -#: plinth/modules/matrixsynapse/__init__.py:44 +#: plinth/modules/matrixsynapse/__init__.py:46 msgid "" "Matrix is an new " "ecosystem for open, federated instant messaging and VoIP. Synapse is a " @@ -1382,19 +1515,13 @@ msgid "" "converse with users on all other Matrix servers via federation." msgstr "" -#: plinth/modules/matrixsynapse/__init__.py:52 +#: plinth/modules/matrixsynapse/__init__.py:54 msgid "" "To communicate, you can use the available clients for mobile, desktop and the web. Riot client is recommended." msgstr "" -#: plinth/modules/matrixsynapse/forms.py:31 -#, fuzzy -#| msgid "Invalid domain name" -msgid "Select the domain name" -msgstr "Nome de domínio inválido" - #: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:34 msgid "" "Matrix service needs to be configured for a domain. Users on other Matrix " @@ -1426,12 +1553,14 @@ msgid "" msgstr "" #: plinth/modules/minetest/__init__.py:48 -msgid "" -"Block Sandbox \n" -" (Minetest)" +msgid "Minetest" msgstr "" -#: plinth/modules/minetest/__init__.py:52 +#: plinth/modules/minetest/__init__.py:50 +msgid "Block Sandbox" +msgstr "" + +#: plinth/modules/minetest/__init__.py:54 #, python-brace-format msgid "" "Minetest is a multiplayer infinite-world block sandbox. This module enables " @@ -1559,7 +1688,7 @@ msgstr "" #: plinth/modules/monkeysphere/templates/monkeysphere.html:87 #: plinth/modules/monkeysphere/templates/monkeysphere_details.html:60 -#: plinth/service.py:117 +#: plinth/service.py:116 msgid "Web Server" msgstr "" @@ -1660,18 +1789,20 @@ msgid "Error occurred while publishing key." msgstr "" #: plinth/modules/mumble/__init__.py:35 -msgid "" -"Voice Chat \n" -" (Mumble)" +msgid "Mumble" msgstr "" -#: plinth/modules/mumble/__init__.py:44 +#: plinth/modules/mumble/__init__.py:37 +msgid "Voice Chat" +msgstr "" + +#: plinth/modules/mumble/__init__.py:46 msgid "" "Mumble is an open source, low-latency, encrypted, high quality voice chat " "software." msgstr "" -#: plinth/modules/mumble/__init__.py:47 +#: plinth/modules/mumble/__init__.py:49 msgid "" "You can connect to your Mumble server on the regular Mumble port 64738. Clients to connect to Mumble from your " @@ -2159,7 +2290,7 @@ msgid "This connection is not active." msgstr "" #: plinth/modules/networks/templates/connection_show.html:266 -#: plinth/modules/security/__init__.py:32 plinth/modules/security/views.py:46 +#: plinth/modules/security/__init__.py:32 plinth/modules/security/views.py:48 msgid "Security" msgstr "" @@ -2255,12 +2386,14 @@ msgid "Inactive" msgstr "" #: plinth/modules/openvpn/__init__.py:42 -msgid "" -"Virtual Private Network \n" -" (OpenVPN)" +msgid "OpenVPN" msgstr "" -#: plinth/modules/openvpn/__init__.py:46 +#: plinth/modules/openvpn/__init__.py:44 +msgid "Virtual Private Network" +msgstr "" + +#: plinth/modules/openvpn/__init__.py:48 #, python-brace-format msgid "" "Virtual Private Network (VPN) is a technique for securely connecting two " @@ -2271,7 +2404,7 @@ msgid "" "security and anonymity." msgstr "" -#: plinth/modules/openvpn/__init__.py:84 +#: plinth/modules/openvpn/__init__.py:86 #, python-brace-format msgid "" "Download Profile" @@ -2346,10 +2479,14 @@ msgid "Setup failed." msgstr "" #: plinth/modules/pagekite/__init__.py:44 -msgid "Public Visibility (PageKite)" +msgid "PageKite" msgstr "" -#: plinth/modules/pagekite/__init__.py:48 +#: plinth/modules/pagekite/__init__.py:46 +msgid "Public Visibility" +msgstr "" + +#: plinth/modules/pagekite/__init__.py:50 #, python-brace-format msgid "" "PageKite is a system for exposing {box_name} services when you don't have a " @@ -2358,33 +2495,33 @@ msgid "" "following situations:" msgstr "" -#: plinth/modules/pagekite/__init__.py:55 +#: plinth/modules/pagekite/__init__.py:57 #, python-brace-format msgid "{box_name} is behind a restricted firewall." msgstr "" -#: plinth/modules/pagekite/__init__.py:59 +#: plinth/modules/pagekite/__init__.py:61 #, python-brace-format msgid "{box_name} is connected to a (wireless) router which you don't control." msgstr "" -#: plinth/modules/pagekite/__init__.py:62 +#: plinth/modules/pagekite/__init__.py:64 msgid "" "Your ISP does not provide you an external IP address and instead provides " "Internet connection through NAT." msgstr "" -#: plinth/modules/pagekite/__init__.py:65 +#: plinth/modules/pagekite/__init__.py:67 msgid "" "Your ISP does not provide you a static IP address and your IP address " "changes evertime you connect to Internet." msgstr "" -#: plinth/modules/pagekite/__init__.py:68 +#: plinth/modules/pagekite/__init__.py:70 msgid "Your ISP limits incoming connections." msgstr "" -#: plinth/modules/pagekite/__init__.py:71 +#: plinth/modules/pagekite/__init__.py:73 #, python-brace-format msgid "" "PageKite works around NAT, firewalls and IP-address limitations by using a " @@ -2662,8 +2799,8 @@ msgstr "" msgid "Pagekite setup finished. The HTTP and HTTPS services are activated now." msgstr "" -#: plinth/modules/power/__init__.py:28 plinth/modules/power/views.py:50 -#: plinth/modules/power/views.py:65 +#: plinth/modules/power/__init__.py:28 plinth/modules/power/views.py:51 +#: plinth/modules/power/views.py:67 msgid "Power" msgstr "" @@ -2672,10 +2809,16 @@ msgid "Restart or shut down the system." msgstr "" #: plinth/modules/power/templates/power.html:28 +msgid "" +"Currently an installation or upgrade is running. Consider waiting until it's " +"finished before shutting down or restarting." +msgstr "" + +#: plinth/modules/power/templates/power.html:37 msgid "Restart »" msgstr "" -#: plinth/modules/power/templates/power.html:31 +#: plinth/modules/power/templates/power.html:40 msgid "Shut Down »" msgstr "" @@ -2685,7 +2828,14 @@ msgid "" "interface for a few minutes until the system is restarted." msgstr "" -#: plinth/modules/power/templates/power_restart.html:42 +#: plinth/modules/power/templates/power_restart.html:38 +msgid "" +"Currently an installation or upgrade is running. Consider waiting until it's " +"finished before restarting." +msgstr "" + +#: plinth/modules/power/templates/power_restart.html:52 +#: plinth/modules/power/templates/power_restart.html:55 msgid "Restart Now" msgstr "" @@ -2695,24 +2845,33 @@ msgid "" "interface after shut down." msgstr "" -#: plinth/modules/power/templates/power_shutdown.html:41 +#: plinth/modules/power/templates/power_shutdown.html:37 +msgid "" +"Currently an installation or upgrade is running. Consider waiting until it's " +"finished before shutting down." +msgstr "" + +#: plinth/modules/power/templates/power_shutdown.html:51 +#: plinth/modules/power/templates/power_shutdown.html:54 msgid "Shut Down Now" msgstr "" #: plinth/modules/privoxy/__init__.py:43 -msgid "" -"Web Proxy \n" -" (Privoxy)" +msgid "Privoxy" msgstr "" -#: plinth/modules/privoxy/__init__.py:46 +#: plinth/modules/privoxy/__init__.py:45 +msgid "Web Proxy" +msgstr "" + +#: plinth/modules/privoxy/__init__.py:48 msgid "" "Privoxy is a non-caching web proxy with advanced filtering capabilities for " "enhancing privacy, modifying web page data and HTTP headers, controlling " "access, and removing ads and other obnoxious Internet junk. " msgstr "" -#: plinth/modules/privoxy/__init__.py:52 +#: plinth/modules/privoxy/__init__.py:54 #, python-brace-format msgid "" "You can use Privoxy by modifying your browser proxy settings to your " @@ -2722,18 +2881,20 @@ msgid "" "\">http://p.p." msgstr "" -#: plinth/modules/privoxy/__init__.py:144 +#: plinth/modules/privoxy/__init__.py:147 #, python-brace-format msgid "Access {url} with proxy {proxy} on tcp{kind}" msgstr "" #: plinth/modules/quassel/__init__.py:42 -msgid "" -"IRC Client \n" -" (Quassel)" +msgid "Quassel" msgstr "" -#: plinth/modules/quassel/__init__.py:46 +#: plinth/modules/quassel/__init__.py:44 +msgid "IRC Client" +msgstr "" + +#: plinth/modules/quassel/__init__.py:48 #, python-brace-format msgid "" "Quassel is an IRC application that is split into two parts, a \"core\" and a " @@ -2744,7 +2905,7 @@ msgid "" "connect and disconnect from it." msgstr "" -#: plinth/modules/quassel/__init__.py:54 +#: plinth/modules/quassel/__init__.py:56 msgid "" "You can connect to your Quassel core on the default Quassel port 4242. " "Clients to connect to Quassel from your supported " -"client application is needed. Radicale can be accessed by any user with " -"a {box_name} login." +"radicale.org/clients/\">supported client application is needed. Radicale " +"can be accessed by any user with a {box_name} login." msgstr "" #: plinth/modules/radicale/forms.py:28 @@ -2789,12 +2951,14 @@ msgid "Access rights configuration updated" msgstr "Configuração atualizada" #: plinth/modules/repro/__init__.py:38 -msgid "" -"SIP Server \n" -" (repro)" +msgid "repro" msgstr "" -#: plinth/modules/repro/__init__.py:41 +#: plinth/modules/repro/__init__.py:40 +msgid "SIP Server" +msgstr "" + +#: plinth/modules/repro/__init__.py:43 msgid "" "repro provides various SIP services that a SIP softphone can utilize to " "provide audio and video calls as well as presence and instant messaging. " @@ -2803,7 +2967,7 @@ msgid "" "communications to other servers on the Internet similar to email." msgstr "" -#: plinth/modules/repro/__init__.py:48 +#: plinth/modules/repro/__init__.py:50 msgid "" "To make SIP calls, a client application is needed. Available clients include " "Jitsi (for computers) and (for Android phones)." msgstr "" -#: plinth/modules/repro/__init__.py:53 +#: plinth/modules/repro/__init__.py:55 msgid "" "Note: Before using repro, domains and users will need to " "be configured using the web-based " @@ -2821,12 +2985,14 @@ msgid "" msgstr "" #: plinth/modules/restore/__init__.py:36 -msgid "" -"Unhosted Storage \n" -" (reStore)" +msgid "reStore" msgstr "" -#: plinth/modules/restore/__init__.py:40 +#: plinth/modules/restore/__init__.py:38 +msgid "Unhosted Storage" +msgstr "" + +#: plinth/modules/restore/__init__.py:42 #, python-brace-format msgid "" "reStore is a server for unhosted web " @@ -2836,19 +3002,21 @@ msgid "" "becomes your unhosted storage server." msgstr "" -#: plinth/modules/restore/__init__.py:47 +#: plinth/modules/restore/__init__.py:49 msgid "" "You can create and edit accounts in the reStore web-" "interface." msgstr "" #: plinth/modules/roundcube/__init__.py:35 -msgid "" -"Email Client \n" -" (Roundcube)" +msgid "Roundcube" msgstr "" -#: plinth/modules/roundcube/__init__.py:38 +#: plinth/modules/roundcube/__init__.py:37 +msgid "Email Client" +msgstr "" + +#: plinth/modules/roundcube/__init__.py:40 msgid "" "Roundcube webmail is a browser-based multilingual IMAP client with an " "application-like user interface. It provides full functionality you expect " @@ -2856,7 +3024,7 @@ msgid "" "manipulation, message searching and spell checking." msgstr "" -#: plinth/modules/roundcube/__init__.py:44 +#: plinth/modules/roundcube/__init__.py:46 msgid "" "You can access Roundcube from /roundcube. Provide " "the username and password of the email account you wish to access followed " @@ -2865,7 +3033,7 @@ msgid "" "server field like imaps://imap.example.com." msgstr "" -#: plinth/modules/roundcube/__init__.py:51 +#: plinth/modules/roundcube/__init__.py:53 msgid "" "For Gmail, username will be your Gmail address, password will be your Google " "account password and server will be imaps://imap.gmail.com. " @@ -2886,29 +3054,42 @@ msgid "" "services without further authorization." msgstr "" -#: plinth/modules/security/views.py:63 +#: plinth/modules/security/forms.py:35 +msgid "Fail2ban (recommended)" +msgstr "" + +#: plinth/modules/security/forms.py:36 +msgid "" +"When this option is enabled, fail2ban will limit brute force break-in " +"attempts to the SSH server and other password protected internet-services " +"which are enabled." +msgstr "" + +#: plinth/modules/security/views.py:66 #, fuzzy, python-brace-format #| msgid "Error setting domain name: {exception}" msgid "Error setting restricted access: {exception}" msgstr "Erro ao definir o nome do domínio: {exception}" -#: plinth/modules/security/views.py:66 +#: plinth/modules/security/views.py:69 #, fuzzy #| msgid "General Configuration" msgid "Updated security configuration" msgstr "Configuração Geral" #: plinth/modules/shaarli/__init__.py:35 -msgid "" -"Bookmarks \n" -" (Shaarli)" +msgid "Shaarli" msgstr "" -#: plinth/modules/shaarli/__init__.py:38 -msgid "Shaarli allows you to save and share bookmarks." +#: plinth/modules/shaarli/__init__.py:37 +msgid "Bookmarks" msgstr "" #: plinth/modules/shaarli/__init__.py:40 +msgid "Shaarli allows you to save and share bookmarks." +msgstr "" + +#: plinth/modules/shaarli/__init__.py:42 msgid "" "When enabled, Shaarli will be available from /shaarli path on the web server. Note that Shaarli only supports a single user " @@ -3021,6 +3202,18 @@ msgstr "" msgid "Rollback to Snapshot" msgstr "" +#: plinth/modules/ssh/__init__.py:37 +msgid "Secure Shell (SSH) Server" +msgstr "" + +#: plinth/modules/ssh/__init__.py:40 +msgid "" +"A Secure Shell server uses the secure shell protocol to accept connections " +"from remote computers. An authorized remote computer can perform " +"administration tasks, copy files or run other services using such " +"connections." +msgstr "" + #: plinth/modules/sso/__init__.py:30 msgid "Single Sign On" msgstr "" @@ -3030,12 +3223,14 @@ msgid "Login" msgstr "" #: plinth/modules/syncthing/__init__.py:39 -msgid "" -"File Synchronization \n" -" (Syncthing)" +msgid "Syncthing" msgstr "" -#: plinth/modules/syncthing/__init__.py:42 +#: plinth/modules/syncthing/__init__.py:41 +msgid "File Synchronization" +msgstr "" + +#: plinth/modules/syncthing/__init__.py:44 msgid "" "Syncthing is an application to synchronize files across multiple devices, e." "g. your desktop computer and mobile phone. Creation, modification, or " @@ -3043,7 +3238,7 @@ msgid "" "other devices that also run Syncthing." msgstr "" -#: plinth/modules/syncthing/__init__.py:47 +#: plinth/modules/syncthing/__init__.py:49 #, python-brace-format msgid "" "Running Syncthing on {box_name} provides an extra synchronization point for " @@ -3054,7 +3249,7 @@ msgid "" "{box_name} is only available for users belonging to the \"admin\" group." msgstr "" -#: plinth/modules/syncthing/__init__.py:54 +#: plinth/modules/syncthing/__init__.py:56 msgid "" "When enabled, Syncthing's web interface will be available from /syncthing. Desktop and mobile clients are also Tor Project website. For " @@ -3125,36 +3332,36 @@ msgid "" "\">Tor Browser." msgstr "" -#: plinth/modules/tor/__init__.py:70 plinth/modules/tor/__init__.py:112 +#: plinth/modules/tor/__init__.py:72 plinth/modules/tor/__init__.py:114 msgid "Tor Anonymity Network" msgstr "" -#: plinth/modules/tor/__init__.py:76 plinth/modules/tor/__init__.py:120 +#: plinth/modules/tor/__init__.py:78 plinth/modules/tor/__init__.py:122 msgid "Tor Bridge Relay" msgstr "" -#: plinth/modules/tor/__init__.py:98 plinth/modules/tor/__init__.py:141 +#: plinth/modules/tor/__init__.py:100 plinth/modules/tor/__init__.py:143 msgid "Tor Hidden Service" msgstr "" -#: plinth/modules/tor/__init__.py:160 +#: plinth/modules/tor/__init__.py:162 msgid "Tor relay port available" msgstr "" -#: plinth/modules/tor/__init__.py:168 +#: plinth/modules/tor/__init__.py:170 msgid "Obfs3 transport registered" msgstr "" -#: plinth/modules/tor/__init__.py:174 +#: plinth/modules/tor/__init__.py:176 msgid "Obfs4 transport registered" msgstr "" -#: plinth/modules/tor/__init__.py:211 +#: plinth/modules/tor/__init__.py:213 #, python-brace-format msgid "Access URL {url} on tcp{kind} via Tor" msgstr "" -#: plinth/modules/tor/__init__.py:222 +#: plinth/modules/tor/__init__.py:224 #, python-brace-format msgid "Confirm Tor usage at {url} on tcp{kind}" msgstr "" @@ -3304,18 +3511,20 @@ msgid "An error occurred during configuration." msgstr "" #: plinth/modules/transmission/__init__.py:38 -msgid "" -"BitTorrent \n" -" (Transmission)" +msgid "Transmission" msgstr "" -#: plinth/modules/transmission/__init__.py:41 +#: plinth/modules/transmission/__init__.py:40 +msgid "BitTorrent" +msgstr "" + +#: plinth/modules/transmission/__init__.py:43 msgid "" "BitTorrent is a peer-to-peer file sharing protocol. Transmission daemon " "handles Bitorrent file sharing. Note that BitTorrent is not anonymous." msgstr "" -#: plinth/modules/transmission/__init__.py:44 +#: plinth/modules/transmission/__init__.py:46 msgid "" "Access the web interface at /transmission." msgstr "" @@ -3341,23 +3550,27 @@ msgid "" "hashed format. To set a new password, enter the password in plain text." msgstr "" -#: plinth/modules/ttrss/__init__.py:37 -msgid "" -"News Feed Reader \n" -" (Tiny Tiny RSS)" +#: plinth/modules/ttrss/__init__.py:39 +msgid "Tiny Tiny RSS" msgstr "" -#: plinth/modules/ttrss/__init__.py:40 +#: plinth/modules/ttrss/__init__.py:41 +msgid "News Feed Reader" +msgstr "" + +#: plinth/modules/ttrss/__init__.py:44 msgid "" "Tiny Tiny RSS is a news feed (RSS/Atom) reader and aggregator, designed to " "allow reading news from any location, while feeling as close to a real " "desktop application as possible." msgstr "" -#: plinth/modules/ttrss/__init__.py:44 +#: plinth/modules/ttrss/__init__.py:49 +#, python-brace-format msgid "" "When enabled, Tiny Tiny RSS will be available from /tt-" -"rss path on the web server." +"rss path on the web server. It can be accessed by any user with a {box_name} login." msgstr "" #: plinth/modules/upgrades/__init__.py:35 @@ -3654,15 +3867,11 @@ msgstr "Definição inalterada" msgid "configuration file: {file}" msgstr "Configuração" -#: plinth/service.py:119 +#: plinth/service.py:118 msgid "Web Server over Secure Socket Layer" msgstr "" -#: plinth/service.py:121 -msgid "Secure Shell (SSH) Server" -msgstr "" - -#: plinth/service.py:123 +#: plinth/service.py:120 #, python-brace-format msgid "{box_name} Web Interface (Plinth)" msgstr "" @@ -3705,11 +3914,11 @@ msgid "" "\"%(status_log_url)s\">status log to the bug report." msgstr "" -#: plinth/templates/apps.html:25 +#: plinth/templates/apps.html:33 msgid "Services and Applications" msgstr "Serviços e Aplicações" -#: plinth/templates/apps.html:28 +#: plinth/templates/apps.html:36 #, python-format msgid "" "You can install and run various services and applications on your " @@ -3717,7 +3926,7 @@ msgid "" "of the application and choose to install it." msgstr "" -#: plinth/templates/apps.html:36 +#: plinth/templates/apps.html:44 msgid "" "This box can be your photo sharing site, your instant messaging site, your " "social networking site, your news site. Remember web portals? We can be " @@ -3885,21 +4094,31 @@ msgstr "" msgid "%(percentage)s%% complete" msgstr "" -#: plinth/templates/system.html:25 +#: plinth/templates/system.html:33 msgid "System Configuration" msgstr "" -#: plinth/templates/system.html:28 +#: plinth/templates/system.html:36 #, python-format msgid "Here you can administrate the underlying system of your %(box_name)s." msgstr "" -#: plinth/templates/system.html:34 +#: plinth/templates/system.html:42 #, python-format msgid "" "The options affect the %(box_name)s at its most general level, so be careful!" msgstr "" +#, fuzzy +#~| msgid "Invalid domain name" +#~ msgid "Select the domain name to be used for diaspora*" +#~ msgstr "Nome de domínio inválido" + +#, fuzzy +#~| msgid "Invalid domain name" +#~ msgid "Select the domain name" +#~ msgstr "Nome de domínio inválido" + #~ msgid "Applications" #~ msgstr "Aplicações" @@ -3954,11 +4173,6 @@ msgstr "" #~ msgid "Network Time Server" #~ msgstr "Servidor do Tempo da Rede" -#, fuzzy -#~| msgid "Enable network time" -#~ msgid "Enable ikiwiki" -#~ msgstr "Ativar tempo da rede" - #, fuzzy #~| msgid "Enable service discovery" #~ msgid "Enable repro service" diff --git a/plinth/locale/ru/LC_MESSAGES/django.po b/plinth/locale/ru/LC_MESSAGES/django.po index 8acc16f49..a621a211c 100644 --- a/plinth/locale/ru/LC_MESSAGES/django.po +++ b/plinth/locale/ru/LC_MESSAGES/django.po @@ -7,50 +7,50 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2017-07-10 22:56-0400\n" +"POT-Creation-Date: 2017-09-24 11:24-0400\n" "PO-Revision-Date: 2017-09-08 01:56+0000\n" "Last-Translator: Алексей Докучаев \n" -"Language-Team: Russian " -"\n" +"Language-Team: Russian \n" "Language: ru\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=" -"4 && (n%100<10 || n%100>=20) ? 1 : 2;\n" +"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n" +"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n" "X-Generator: Weblate 2.17-dev\n" -#: plinth/action_utils.py:254 +#: plinth/action_utils.py:259 #, python-brace-format msgid "Listening on {kind} port {listen_address}:{port}" msgstr "Слушать на {kind} порт {listen_address}:{port}" -#: plinth/action_utils.py:257 +#: plinth/action_utils.py:262 #, python-brace-format msgid "Listening on {kind} port {port}" msgstr "Слушать порт {port} на {kind}" -#: plinth/action_utils.py:352 +#: plinth/action_utils.py:357 #, python-brace-format msgid "Access URL {url} on tcp{kind}" msgstr "Доступ к URL {url} по tcp {kind}" -#: plinth/action_utils.py:356 +#: plinth/action_utils.py:361 #, python-brace-format msgid "Access URL {url}" msgstr "Доступ к URL {url}" -#: plinth/action_utils.py:386 +#: plinth/action_utils.py:391 #, python-brace-format msgid "Connect to {host}:{port}" msgstr "Подключение к {host}:{port}" -#: plinth/action_utils.py:389 +#: plinth/action_utils.py:394 #, python-brace-format msgid "Cannot connect to {host}:{port}" msgstr "Невозможно подключиться к {host}:{port}" -#: plinth/context_processors.py:38 plinth/views.py:49 +#: plinth/context_processors.py:38 plinth/views.py:52 msgid "FreedomBox" msgstr "FrеedomBox" @@ -59,9 +59,17 @@ msgid "Enable application" msgstr "Включить приложение" #: plinth/forms.py:45 -msgid "Select the domain name to be used for this application" +#, fuzzy +#| msgid "Select the domain name to be used for this application" +msgid "Select a domain name to be used with this application" msgstr "Выберите имя домена, используемого приложением" +#: plinth/forms.py:47 +msgid "" +"Warning! The application may not work properly if domain name is changed " +"later." +msgstr "" + #: plinth/middleware.py:71 msgid "Application installed." msgstr "Приложение установлено." @@ -98,12 +106,18 @@ msgstr "" "подключении к вражеской сети." #: plinth/modules/bind/__init__.py:34 -msgid "" -"Domain Name Server \n" -" (BIND)" +msgid "BIND" +msgstr "" + +#: plinth/modules/bind/__init__.py:36 +#, fuzzy +#| msgid "" +#| "Domain Name Server \n" +#| " (BIND)" +msgid "Domain Name Server" msgstr "Сервер доменных имен (BIND)" -#: plinth/modules/bind/__init__.py:43 +#: plinth/modules/bind/__init__.py:45 msgid "" "BIND is open source software that enables you to publish your Domain Name " "System (DNS) information on the Internet, and to resolve DNS queries for " @@ -113,7 +127,7 @@ msgstr "" "позволяет публиковать информацию о доменных именах (DNS) и позволяет " "получать DNS запросы пользователей." -#: plinth/modules/bind/__init__.py:47 +#: plinth/modules/bind/__init__.py:49 msgid "" "BIND is by far the most widely used DNS software on the Internet, providing " "a robust and stable platform on top of which organizations can build " @@ -163,7 +177,7 @@ msgid "Enable forwarding to set forwarding DNS servers" msgstr "Включить пересылку для установки пересылки DNS-серверов" #: plinth/modules/config/config.py:88 plinth/modules/config/config.py:125 -#: plinth/modules/dynamicdns/dynamicdns.py:140 +#: plinth/modules/dynamicdns/dynamicdns.py:148 msgid "Invalid domain name" msgstr "Недопустимое имя домена" @@ -190,7 +204,7 @@ msgstr "Недопустимое имя хоста" #: plinth/modules/config/config.py:112 plinth/modules/config/config.py:169 #: plinth/modules/config/config.py:285 -#: plinth/modules/dynamicdns/dynamicdns.py:135 +#: plinth/modules/dynamicdns/dynamicdns.py:143 msgid "Domain Name" msgstr "Доменное имя" @@ -219,7 +233,7 @@ msgid "Language for this web administration interface" msgstr "Язык для этого веб-интерфейса администрирования" #: plinth/modules/config/config.py:151 -#: plinth/modules/dynamicdns/dynamicdns.py:37 +#: plinth/modules/dynamicdns/dynamicdns.py:45 #: plinth/modules/ikiwiki/views.py:37 #: plinth/modules/tahoe/templates/tahoe-pre-setup.html:39 msgid "Configure" @@ -303,18 +317,26 @@ msgid "Time zone set" msgstr "Смена часового пояса" #: plinth/modules/deluge/__init__.py:39 -msgid "" -"BitTorrent Web Client \n" -" (Deluge)" +#, fuzzy +#| msgid "Enable Deluge" +msgid "Deluge" +msgstr "Включить Deluge" + +#: plinth/modules/deluge/__init__.py:41 +#, fuzzy +#| msgid "" +#| "BitTorrent Web Client \n" +#| " (Deluge)" +msgid "BitTorrent Web Client" msgstr "" "BitTorrent Веб Клиент\n" " (Deluge)" -#: plinth/modules/deluge/__init__.py:42 +#: plinth/modules/deluge/__init__.py:44 msgid "Deluge is a BitTorrent client that features a Web UI." msgstr "Deluge это клиент BitTorrent, имеющий веб-интерфейс." -#: plinth/modules/deluge/__init__.py:44 +#: plinth/modules/deluge/__init__.py:46 msgid "" "When enabled, the Deluge web client will be available from /deluge path on the web server. The default password is 'deluge', but " @@ -380,7 +402,15 @@ msgstr "Тест" msgid "Result" msgstr "Результат" -#: plinth/modules/diaspora/__init__.py:61 +#: plinth/modules/diaspora/__init__.py:51 +msgid "diaspora*" +msgstr "" + +#: plinth/modules/diaspora/__init__.py:53 +msgid "Federated Social Network" +msgstr "" + +#: plinth/modules/diaspora/__init__.py:62 msgid "" "diaspora* is a decentralized social network where you can store and control " "your own data." @@ -388,16 +418,9 @@ msgstr "" "diaspora* это децентрализованная социальная сеть, где вы можете держать и " "контролировать ваши данные." -#: plinth/modules/diaspora/forms.py:30 -msgid "Select the domain name to be used for diaspora*" -msgstr "Выберите имя домена, используемого диаспорой*" - -#: plinth/modules/diaspora/forms.py:32 -msgid "" -"Warning! Do not change the FreedomBox domain name after setting up diaspora*" +#: plinth/modules/diaspora/forms.py:31 +msgid "Enable new user registrations" msgstr "" -"Внимание! Не изменяйте доменное имя вашего FreedomBox после настройки " -"diaspora*" #: plinth/modules/diaspora/templates/diaspora-post-setup.html:32 #, python-format @@ -409,11 +432,11 @@ msgid "" "href=\"https://diaspora.%(domain_name)s\"> diaspora.%(domain_name)s " msgstr "" "Имя под-домена diaspora* присваивается к %(domain_name)s. " -"Идентификатор пользователя будет выглядеть " -"username@diaspora.%(domain_name)s
. Если доменное имя FreedomBox " -"изменилось, все данные пользователя с предыдущим именем будут недоступны. " -"
Вы можете получить к под diaspora* на diaspora.%(domain_name)s" +"Идентификатор пользователя будет выглядеть username@diaspora." +"%(domain_name)s
. Если доменное имя FreedomBox изменилось, все " +"данные пользователя с предыдущим именем будут недоступны.
Вы можете " +"получить к под diaspora* на diaspora.%(domain_name)s" #: plinth/modules/diaspora/templates/diaspora-pre-setup.html:58 #: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:40 @@ -429,7 +452,25 @@ msgstr "" msgid "Update setup" msgstr "Обновить настройки" -#: plinth/modules/disks/__init__.py:33 plinth/modules/disks/views.py:39 +#: plinth/modules/diaspora/views.py:96 plinth/modules/ejabberd/views.py:60 +#: plinth/modules/openvpn/views.py:145 plinth/modules/tor/views.py:134 +#: plinth/views.py:112 +msgid "Setting unchanged" +msgstr "Настройки без изменений" + +#: plinth/modules/diaspora/views.py:100 +#, fuzzy +#| msgid "Application enabled" +msgid "User registrations enabled" +msgstr "Приложение включено" + +#: plinth/modules/diaspora/views.py:104 +#, fuzzy +#| msgid "Application disabled" +msgid "User registrations disabled" +msgstr "Приложение отключено" + +#: plinth/modules/disks/__init__.py:33 plinth/modules/disks/views.py:45 msgid "Disks" msgstr "Диски" @@ -475,7 +516,7 @@ msgstr "" #: plinth/modules/disks/templates/disks.html:90 #: plinth/modules/disks/templates/disks.html:102 #: plinth/modules/disks/templates/disks_expand.html:45 -#: plinth/modules/disks/views.py:56 +#: plinth/modules/disks/views.py:62 msgid "Expand Root Partition" msgstr "Расширить корневой раздел" @@ -498,45 +539,52 @@ msgstr "" "этой операции будет доступно %(expandable_root_size)s свободного места в " "вашем корневом разделе." -#: plinth/modules/disks/views.py:65 +#: plinth/modules/disks/views.py:71 #, python-brace-format msgid "Error expanding partition: {exception}" msgstr "Ошибка расширения раздела: {exception}" -#: plinth/modules/disks/views.py:68 +#: plinth/modules/disks/views.py:74 msgid "Partition expanded successfully." msgstr "Раздел успешно расширен." -#: plinth/modules/disks/views.py:77 +#: plinth/modules/disks/views.py:93 +#, python-format, python-brace-format +msgid "" +"Warning: Low space on system partition ({percent_used}% used, {free_space} " +"free)." +msgstr "" + +#: plinth/modules/disks/views.py:130 #, python-brace-format msgid "{disk_size:.1f} bytes" msgstr "{disk_size:.1f} байт" -#: plinth/modules/disks/views.py:81 +#: plinth/modules/disks/views.py:134 #, python-brace-format msgid "{disk_size:.1f} KiB" msgstr "{disk_size:.1f} КиБ" -#: plinth/modules/disks/views.py:85 +#: plinth/modules/disks/views.py:138 #, python-brace-format msgid "{disk_size:.1f} MiB" msgstr "{disk_size:.1f} Миб" -#: plinth/modules/disks/views.py:89 +#: plinth/modules/disks/views.py:142 #, python-brace-format msgid "{disk_size:.1f} GiB" msgstr "{disk_size:.1f} Гиб" -#: plinth/modules/disks/views.py:92 +#: plinth/modules/disks/views.py:145 #, python-brace-format msgid "{disk_size:.1f} TiB" msgstr "{disk_size:.1f} Тиб" -#: plinth/modules/dynamicdns/__init__.py:33 +#: plinth/modules/dynamicdns/__init__.py:35 msgid "Dynamic DNS Client" msgstr "Клиент динамического DNS" -#: plinth/modules/dynamicdns/__init__.py:37 +#: plinth/modules/dynamicdns/__init__.py:39 #, python-brace-format msgid "" "If your Internet provider changes your IP address periodically (i.e. every " @@ -547,7 +595,7 @@ msgstr "" "в 24 часа) это может стать препятствиям, чтобы найти вас в Интернете. Это " "так-же может сделать недоступными предоставляемые {box_name} услуги." -#: plinth/modules/dynamicdns/__init__.py:43 +#: plinth/modules/dynamicdns/__init__.py:45 msgid "" "The solution is to assign a DNS name to your IP address and update the DNS " "name every time your IP is changed by your Internet provider. Dynamic DNS " @@ -564,11 +612,18 @@ msgstr "" "сервер будет назначать DNS-имя на новый IP-адрес, и если кто-то из Интернета " "запрашивает DNS-имя, они будут получать ответ ваш текущий IP-адрес." -#: plinth/modules/dynamicdns/dynamicdns.py:35 plinth/modules/help/help.py:40 +#: plinth/modules/dynamicdns/__init__.py:67 +#: plinth/modules/dynamicdns/dynamicdns.py:377 +#, fuzzy +#| msgid "Dynamic DNS Client" +msgid "Dynamic DNS Service" +msgstr "Клиент динамического DNS" + +#: plinth/modules/dynamicdns/dynamicdns.py:43 plinth/modules/help/help.py:40 msgid "About" msgstr "О службе" -#: plinth/modules/dynamicdns/dynamicdns.py:39 +#: plinth/modules/dynamicdns/dynamicdns.py:47 #: plinth/modules/firewall/templates/firewall.html:47 #: plinth/modules/networks/templates/connection_show.html:261 #: plinth/modules/openvpn/templates/openvpn.html:67 @@ -577,7 +632,7 @@ msgstr "О службе" msgid "Status" msgstr "Статус" -#: plinth/modules/dynamicdns/dynamicdns.py:63 +#: plinth/modules/dynamicdns/dynamicdns.py:71 msgid "" "The Variables <User>, <Pass>, <Ip>, <Domain> may be " "used within the URL. For details see the update URL templates of the example " @@ -587,7 +642,7 @@ msgstr "" "использоваться в URL-адресе. Для получения дополнительной информации " "смотрите примеры обновления URL." -#: plinth/modules/dynamicdns/dynamicdns.py:67 +#: plinth/modules/dynamicdns/dynamicdns.py:75 msgid "" "Please choose an update protocol according to your provider. If your " "provider does not support the GnuDIP protocol or your provider is not listed " @@ -597,7 +652,7 @@ msgstr "" "ваш провайдер не поддерживает протокол GnudIP или поставщик не указан, вы " "можете использовать URL-адрес обновления вашего провайдера." -#: plinth/modules/dynamicdns/dynamicdns.py:72 +#: plinth/modules/dynamicdns/dynamicdns.py:80 msgid "" "Please do not enter a URL here (like \"https://example.com/\") but only the " "hostname of the GnuDIP server (like \"example.com\")." @@ -605,18 +660,18 @@ msgstr "" "Пожалуйста, не вводите URL здесь (как «https://example.com/»), только имя " "хоста сервера GnuDIP (как \"example.com\")." -#: plinth/modules/dynamicdns/dynamicdns.py:76 +#: plinth/modules/dynamicdns/dynamicdns.py:84 #, python-brace-format msgid "The public domain name you want to use to reach your {box_name}." msgstr "Общее доменное имя для подключения к вашему {box_name}." -#: plinth/modules/dynamicdns/dynamicdns.py:79 +#: plinth/modules/dynamicdns/dynamicdns.py:87 msgid "Use this option if your provider uses self signed certificates." msgstr "" "Используйте этот параметр, если ваш провайдер использует самостоятельно " "подписанные сертификаты." -#: plinth/modules/dynamicdns/dynamicdns.py:82 +#: plinth/modules/dynamicdns/dynamicdns.py:90 msgid "" "If this option is selected, your username and password will be used for HTTP " "basic authentication." @@ -624,11 +679,11 @@ msgstr "" "Если выбран этот параметр, будет использоваться имя пользователя и пароль " "для обычной проверки подлинности HTTP." -#: plinth/modules/dynamicdns/dynamicdns.py:85 +#: plinth/modules/dynamicdns/dynamicdns.py:93 msgid "Leave this field empty if you want to keep your current password." msgstr "Оставьте это поле пустым, если вы хотите сохранить ваш текущий пароль." -#: plinth/modules/dynamicdns/dynamicdns.py:88 +#: plinth/modules/dynamicdns/dynamicdns.py:96 #, python-brace-format msgid "" "Optional Value. If your {box_name} is not connected directly to the Internet " @@ -641,82 +696,82 @@ msgstr "" "для определения настоящего IP адреса. URL-адрес должен просто вернуть IP " "(пример: http://myip.datasystems24.de)." -#: plinth/modules/dynamicdns/dynamicdns.py:96 +#: plinth/modules/dynamicdns/dynamicdns.py:104 msgid "The username that was used when the account was created." msgstr "Имя пользователя, которое использовалось при создании учетной записи." -#: plinth/modules/dynamicdns/dynamicdns.py:107 +#: plinth/modules/dynamicdns/dynamicdns.py:115 msgid "Enable Dynamic DNS" msgstr "Включение динамического DNS" -#: plinth/modules/dynamicdns/dynamicdns.py:110 +#: plinth/modules/dynamicdns/dynamicdns.py:118 msgid "Service Type" msgstr "Тип службы" -#: plinth/modules/dynamicdns/dynamicdns.py:115 +#: plinth/modules/dynamicdns/dynamicdns.py:123 msgid "GnuDIP Server Address" msgstr "Адрес сервера GnuDIP" -#: plinth/modules/dynamicdns/dynamicdns.py:120 +#: plinth/modules/dynamicdns/dynamicdns.py:128 msgid "Invalid server name" msgstr "Недопустимое имя сервера" -#: plinth/modules/dynamicdns/dynamicdns.py:123 +#: plinth/modules/dynamicdns/dynamicdns.py:131 msgid "Update URL" msgstr "Обновление URL-адреса" -#: plinth/modules/dynamicdns/dynamicdns.py:127 +#: plinth/modules/dynamicdns/dynamicdns.py:135 msgid "Accept all SSL certificates" msgstr "Принимать все SSL-сертификаты" -#: plinth/modules/dynamicdns/dynamicdns.py:131 +#: plinth/modules/dynamicdns/dynamicdns.py:139 msgid "Use HTTP basic authentication" msgstr "Использовать базовую аутентификацию HTTP" -#: plinth/modules/dynamicdns/dynamicdns.py:143 +#: plinth/modules/dynamicdns/dynamicdns.py:151 #: plinth/modules/networks/forms.py:228 plinth/modules/transmission/forms.py:37 msgid "Username" msgstr "Имя пользователя" -#: plinth/modules/dynamicdns/dynamicdns.py:146 +#: plinth/modules/dynamicdns/dynamicdns.py:154 #: plinth/modules/networks/forms.py:229 plinth/modules/transmission/forms.py:41 msgid "Password" msgstr "Пароль" -#: plinth/modules/dynamicdns/dynamicdns.py:149 +#: plinth/modules/dynamicdns/dynamicdns.py:157 #: plinth/modules/networks/forms.py:231 msgid "Show password" msgstr "Показать пароль" -#: plinth/modules/dynamicdns/dynamicdns.py:153 +#: plinth/modules/dynamicdns/dynamicdns.py:161 msgid "URL to look up public IP" msgstr "URL-адрес для поиска публичного IP" -#: plinth/modules/dynamicdns/dynamicdns.py:179 +#: plinth/modules/dynamicdns/dynamicdns.py:187 msgid "Please provide an update URL or a GnuDIP server address" msgstr "Просьба предоставьте URL-адрес или адрес сервера GnuDIP" -#: plinth/modules/dynamicdns/dynamicdns.py:184 +#: plinth/modules/dynamicdns/dynamicdns.py:192 msgid "Please provide a GnuDIP username" msgstr "Просьба представить имя пользователя GnuDIP" -#: plinth/modules/dynamicdns/dynamicdns.py:188 +#: plinth/modules/dynamicdns/dynamicdns.py:196 msgid "Please provide a GnuDIP domain name" msgstr "Просьба предоставить имя домена GnuDIP" -#: plinth/modules/dynamicdns/dynamicdns.py:193 +#: plinth/modules/dynamicdns/dynamicdns.py:201 msgid "Please provide a password" msgstr "Введите пароль" -#: plinth/modules/dynamicdns/dynamicdns.py:211 +#: plinth/modules/dynamicdns/dynamicdns.py:219 msgid "Configure Dynamic DNS" msgstr "Настройка динамического DNS" -#: plinth/modules/dynamicdns/dynamicdns.py:232 +#: plinth/modules/dynamicdns/dynamicdns.py:240 msgid "Dynamic DNS Status" msgstr "Состояние динамического DNS" -#: plinth/modules/dynamicdns/dynamicdns.py:364 +#: plinth/modules/dynamicdns/dynamicdns.py:381 #: plinth/modules/openvpn/views.py:143 plinth/modules/transmission/views.py:72 msgid "Configuration updated" msgstr "Конфигурация обновлена" @@ -789,15 +844,18 @@ msgstr "" msgid "Last update" msgstr "Последнее обновление" -#: plinth/modules/ejabberd/__init__.py:42 -msgid "" -"Chat Server \n" -" (ejabberd)" -msgstr "" -"Чат-сервер \n" -" (ejabberd)" - #: plinth/modules/ejabberd/__init__.py:45 +msgid "ejabberd" +msgstr "" + +#: plinth/modules/ejabberd/__init__.py:47 +#: plinth/modules/matrixsynapse/__init__.py:43 +#, fuzzy +#| msgid "Web Server" +msgid "Chat Server" +msgstr "Веб-сервер" + +#: plinth/modules/ejabberd/__init__.py:50 msgid "" "XMPP is an open and standardized communication protocol. Here you can run " "and configure your XMPP server, called ejabberd." @@ -805,11 +863,17 @@ msgstr "" "XMPP является открытым и стандартизированным коммуникационным протоколом. " "Здесь вы можете запустить и настроить сервер XMPP, называемый ejabberd." -#: plinth/modules/ejabberd/__init__.py:48 +#: plinth/modules/ejabberd/__init__.py:54 +#, fuzzy, python-brace-format +#| msgid "" +#| "To actually communicate, you can use the web client or any other XMPP " +#| "client." msgid "" -"To actually communicate, you can use the web client or any other XMPP client." +"To actually communicate, you can use the web " +"client or any other XMPP client. When enabled, ejabberd can be accessed by " +"any user with a {box_name} login." msgstr "" "Для общения вы можете использовать веб-клиент или иной XMPP клиент." @@ -856,16 +920,11 @@ msgstr "Запустить веб-клиент" msgid "Configuration" msgstr "Конфигурация" -#: plinth/modules/ejabberd/views.py:60 plinth/modules/openvpn/views.py:145 -#: plinth/modules/tor/views.py:134 plinth/views.py:103 -msgid "Setting unchanged" -msgstr "Настройки без изменений" - -#: plinth/modules/ejabberd/views.py:64 plinth/views.py:107 +#: plinth/modules/ejabberd/views.py:64 plinth/views.py:116 msgid "Application enabled" msgstr "Приложение включено" -#: plinth/modules/ejabberd/views.py:67 plinth/views.py:110 +#: plinth/modules/ejabberd/views.py:67 plinth/views.py:119 msgid "Application disabled" msgstr "Приложение отключено" @@ -920,13 +979,13 @@ msgid "Service/Port" msgstr "Служба/Порт" #: plinth/modules/firewall/templates/firewall.html:65 -#: plinth/modules/letsencrypt/templates/letsencrypt.html:88 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:94 #: plinth/modules/names/templates/names.html:49 msgid "Enabled" msgstr "Включено" #: plinth/modules/firewall/templates/firewall.html:68 -#: plinth/modules/letsencrypt/templates/letsencrypt.html:90 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:96 #: plinth/modules/names/templates/names.html:51 #: plinth/modules/networks/forms.py:63 msgid "Disabled" @@ -1180,22 +1239,43 @@ msgstr "" "Удалите любые пароли или другую личную информацию из журнала перед отправкой " "отчета об ошибке." -#: plinth/modules/ikiwiki/__init__.py:39 -msgid "Wiki and Blog (ikiwiki)" -msgstr "Вики и Блог (ikiwiki)" +#: plinth/modules/ikiwiki/__init__.py:41 +#, fuzzy +#| msgid "wiki" +msgid "ikiwiki" +msgstr "Wiki" -#: plinth/modules/ikiwiki/__init__.py:42 +#: plinth/modules/ikiwiki/__init__.py:43 +msgid "Wiki and Blog" +msgstr "Вики и Блог" + +#: plinth/modules/ikiwiki/__init__.py:46 +#, fuzzy +#| msgid "" +#| "ikiwiki is a simple wiki and blog application. It supports several " +#| "lightweight markup languages, including Markdown, and common blogging " +#| "functionality such as comments and RSS feeds. When enabled, the blogs and " +#| "wikis will be available from /ikiwiki." msgid "" "ikiwiki is a simple wiki and blog application. It supports several " "lightweight markup languages, including Markdown, and common blogging " "functionality such as comments and RSS feeds. When enabled, the blogs and " -"wikis will be available from /ikiwiki." +"wikis will be available at /ikiwiki (once created)." msgstr "" "ikiwiki это простое приложение wiki и блога. Оно поддерживает легковесные " "языки разметки, включая Markdown, и основную функциональность блоков, как " "комментарии и RSS-каналы. Когда включен, блоги и вики доступны по адресу /ikiwiki." +#: plinth/modules/ikiwiki/__init__.py:53 +#, python-brace-format +msgid "" +"Only {box_name} users in the admin group can create and " +"manage blogs and wikis, but any user in the wiki group can " +"edit existing ones. In the User " +"Configuration you can change these permissions or add new users." +msgstr "" + #: plinth/modules/ikiwiki/forms.py:34 #: plinth/modules/networks/templates/connection_show.html:78 msgid "Name" @@ -1307,18 +1387,20 @@ msgid "Delete Wiki or Blog" msgstr "Удаление блога или вики" #: plinth/modules/infinoted/__init__.py:43 -msgid "" -"Gobby Server \n" -" (infinoted)" +msgid "infinoted" msgstr "" -"Сервер Gobby\n" -"(infinoted)" -#: plinth/modules/infinoted/__init__.py:46 +#: plinth/modules/infinoted/__init__.py:45 +#, fuzzy +#| msgid "Web Server" +msgid "Gobby Server" +msgstr "Веб-сервер" + +#: plinth/modules/infinoted/__init__.py:48 msgid "infinoted is a server for Gobby, a collaborative text editor." msgstr "infinoted это сервер для Gobby, совместный текстовый редактор." -#: plinth/modules/infinoted/__init__.py:49 +#: plinth/modules/infinoted/__init__.py:51 #, python-brace-format msgid "" "To use it, download Gobby, desktop " @@ -1330,14 +1412,20 @@ msgstr "" "«Подключиться к серверу» и введите доменное имя вашего {box_name}." #: plinth/modules/jsxc/__init__.py:36 -msgid "" -"Chat Client \n" -" (JSXC)" +msgid "JSXC" +msgstr "" + +#: plinth/modules/jsxc/__init__.py:38 +#, fuzzy +#| msgid "" +#| "Chat Client \n" +#| " (JSXC)" +msgid "Chat Client" msgstr "" "Чат-клиент \n" " (jsxc)" -#: plinth/modules/jsxc/__init__.py:40 +#: plinth/modules/jsxc/__init__.py:42 msgid "" "JSXC is a web client for XMPP. Typically it is used with an XMPP server " "running locally." @@ -1345,7 +1433,7 @@ msgstr "" "JSXC является веб-клиентом для XMPP. Обычно он используется с XMPP сервером " "работающим локально." -#: plinth/modules/jsxc/__init__.py:78 +#: plinth/modules/jsxc/__init__.py:80 msgid "" "Chat Client \n" " (jsxc)" @@ -1353,12 +1441,19 @@ msgstr "" "Чат-клиент \n" " (jsxc)" -#: plinth/modules/letsencrypt/__init__.py:39 -#: plinth/modules/letsencrypt/__init__.py:64 -msgid "Certificates (Let's Encrypt)" +#: plinth/modules/letsencrypt/__init__.py:40 +#, fuzzy +#| msgid "Certificates (Let's Encrypt)" +msgid "Let's Encrypt" msgstr "Сертификаты (Let's Encrypt)" -#: plinth/modules/letsencrypt/__init__.py:43 +#: plinth/modules/letsencrypt/__init__.py:42 +#, fuzzy +#| msgid "Certificate Status" +msgid "Certificates" +msgstr "Статус сертификата" + +#: plinth/modules/letsencrypt/__init__.py:46 #, python-brace-format msgid "" "A digital certificate allows users of a web service to verify the identity " @@ -1372,7 +1467,7 @@ msgstr "" "автоматически получать и устанавливать цифровые сертификаты для каждого " "доступного домена." -#: plinth/modules/letsencrypt/__init__.py:50 +#: plinth/modules/letsencrypt/__init__.py:53 msgid "" "Let's Encrypt is a free, automated, and open certificate authority, run for " "the public's benefit by the Internet Security Research Group (ISRG). Please " @@ -1401,52 +1496,102 @@ msgstr "Безопасность Веб-сайта" msgid "Actions" msgstr "Действия" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:56 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:62 #, python-format msgid "Valid, expires on %(expiry_date)s" msgstr "Действительно, истекает %(expiry_date)s" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:63 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:69 msgid "Revoked" msgstr "Отменено" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:67 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:73 #, python-format msgid "Expired on %(expiry_date)s" msgstr "Истекло %(expiry_date)s" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:71 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:77 msgid "Invalid test certificate" msgstr "Недопустимый сертификат" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:75 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:81 #, python-format msgid "Invalid (%(reason)s)" msgstr "Неверный %(reason)s" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:82 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:88 msgid "No certificate" msgstr "Не сертификата" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:99 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:105 msgid "Re-obtain" msgstr "Получить повторно" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:105 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:111 #: plinth/modules/networks/templates/connection_show.html:63 #: plinth/modules/snapshot/templates/snapshot.html:34 msgid "Delete" msgstr "Удалить" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:112 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:118 msgid "Revoke" msgstr "Отменить" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:120 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:126 msgid "Obtain" msgstr "Получить" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:133 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:149 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:156 +#, fuzzy +#| msgid "Update" +msgid "Update config" +msgstr "Обновление" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:161 +#, python-format +msgid "" +"\n" +" Let Plinth manage certificate renewal of\n" +" %(current_domain)s (recommended)\n" +" " +msgstr "" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:166 +msgid "" +"\n" +" Let Plinth manage certificate renewal of the current domain " +"(recommended)\n" +" " +msgstr "" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:175 +#, python-format +msgid "" +"If %(box_name)s manages the certificate renewal for the current domain, it " +"will ensure that all apps that use the certificate can use it, as soon as it " +"gets renewed." +msgstr "" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:181 +msgid "" +"No certificate available for the current domain. First obtain a " +"certificate to enable management of its renewal." +msgstr "" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:186 +#, fuzzy +#| msgid "" +#| "No domains have been configured. Configure domains to be able to obtain " +#| "certificates for them." +msgid "" +"No current domain is configured. First configure a domain to enable " +"management of its certificates." +msgstr "" +"Не настроено ни одного домена. Настройте домены, чтобы иметь возможность " +"получить сертификаты для них." + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:195 msgid "" "No domains have been configured. Configure domains to be able to obtain " "certificates for them." @@ -1454,7 +1599,7 @@ msgstr "" "Не настроено ни одного домена. Настройте домены, чтобы иметь возможность " "получить сертификаты для них." -#: plinth/modules/letsencrypt/views.py:55 +#: plinth/modules/letsencrypt/views.py:57 #, python-brace-format msgid "" "Certificate successfully revoked for domain {domain}.This may take a few " @@ -1463,40 +1608,73 @@ msgstr "" "Сертификат успешно отменен для домена {domain}. Для принятия изменений может " "потребоваться время." -#: plinth/modules/letsencrypt/views.py:61 +#: plinth/modules/letsencrypt/views.py:63 #, python-brace-format msgid "Failed to revoke certificate for domain {domain}: {error}" msgstr "Не удалось отозвать сертификат для домена {domain}: {error}" -#: plinth/modules/letsencrypt/views.py:73 +#: plinth/modules/letsencrypt/views.py:75 #, python-brace-format msgid "Certificate successfully obtained for domain {domain}" msgstr "Сертификат успешно получен для домена {domain}" -#: plinth/modules/letsencrypt/views.py:78 +#: plinth/modules/letsencrypt/views.py:81 #, python-brace-format msgid "Failed to obtain certificate for domain {domain}: {error}" msgstr "Не удалось получить сертификат для домена {domain}: {error}" #: plinth/modules/letsencrypt/views.py:90 +#: plinth/modules/letsencrypt/views.py:109 +#, fuzzy, python-brace-format +#| msgid "Certificate successfully deleted for domain {domain}" +msgid "Certificate renewal management enabled for {domain}." +msgstr "Сертификат успешно удален для домена {domain}" + +#: plinth/modules/letsencrypt/views.py:95 +#, fuzzy, python-brace-format +#| msgid "Failed to delete certificate for domain {domain}: {error}" +msgid "Failed to enable certificate renewal management for {domain}: {error}" +msgstr "Не удалось удалить сертификат для домена {domain}: {error}" + +#: plinth/modules/letsencrypt/views.py:112 +#, fuzzy, python-brace-format +#| msgid "Certificate successfully deleted for domain {domain}" +msgid "Certificate renewal management disabled for {domain}." +msgstr "Сертификат успешно удален для домена {domain}" + +#: plinth/modules/letsencrypt/views.py:118 +#, fuzzy, python-brace-format +#| msgid "Failed to obtain certificate for domain {domain}: {error}" +msgid "Failed to switch certificate renewal management for {domain}: {error}" +msgstr "Не удалось получить сертификат для домена {domain}: {error}" + +#: plinth/modules/letsencrypt/views.py:134 +#, fuzzy, python-brace-format +#| msgid "Failed to delete certificate for domain {domain}: {error}" +msgid "Failed to disable certificate renewal management for {domain}: {error}" +msgstr "Не удалось удалить сертификат для домена {domain}: {error}" + +#: plinth/modules/letsencrypt/views.py:141 #, python-brace-format msgid "Certificate successfully deleted for domain {domain}" msgstr "Сертификат успешно удален для домена {domain}" -#: plinth/modules/letsencrypt/views.py:95 +#: plinth/modules/letsencrypt/views.py:146 #, python-brace-format msgid "Failed to delete certificate for domain {domain}: {error}" msgstr "Не удалось удалить сертификат для домена {domain}: {error}" #: plinth/modules/matrixsynapse/__init__.py:41 -msgid "" -"Chat Server \n" -" (Matrix Synapse)" +#, fuzzy +#| msgid "" +#| "Chat Server \n" +#| " (Matrix Synapse)" +msgid "Matrix Synapse" msgstr "" "Чат-сервер \n" " (Matrix Synapse)" -#: plinth/modules/matrixsynapse/__init__.py:44 +#: plinth/modules/matrixsynapse/__init__.py:46 msgid "" "Matrix is an new " "ecosystem for open, federated instant messaging and VoIP. Synapse is a " @@ -1513,7 +1691,7 @@ msgstr "" "одном сервере Matrix могут общаться с пользователями на всех остальных " "серверах." -#: plinth/modules/matrixsynapse/__init__.py:52 +#: plinth/modules/matrixsynapse/__init__.py:54 msgid "" "To communicate, you can use the available clients for mobile, desktop and the web. различные клиенты для телефонов, десктопов или Веба. " "Рекомендуется использовать Riot." -#: plinth/modules/matrixsynapse/forms.py:31 -msgid "Select the domain name" -msgstr "Выберите имя домена" - #: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:34 msgid "" "Matrix service needs to be configured for a domain. Users on other Matrix " @@ -1573,14 +1747,20 @@ msgstr "" "не поддерживается." #: plinth/modules/minetest/__init__.py:48 -msgid "" -"Block Sandbox \n" -" (Minetest)" +msgid "Minetest" +msgstr "" + +#: plinth/modules/minetest/__init__.py:50 +#, fuzzy +#| msgid "" +#| "Block Sandbox \n" +#| " (Minetest)" +msgid "Block Sandbox" msgstr "" "Песочница \n" " (Minetest)" -#: plinth/modules/minetest/__init__.py:52 +#: plinth/modules/minetest/__init__.py:54 #, python-brace-format msgid "" "Minetest is a multiplayer infinite-world block sandbox. This module enables " @@ -1633,7 +1813,8 @@ msgstr "Включить урон" #: plinth/modules/minetest/forms.py:54 msgid "When disabled, players cannot die or receive damage of any kind." -msgstr "Когда выключено, игроки не могут умереть или получить урон любого рода." +msgstr "" +"Когда выключено, игроки не могут умереть или получить урон любого рода." #: plinth/modules/minetest/views.py:58 msgid "Maximum players configuration updated" @@ -1720,7 +1901,7 @@ msgstr "Sеcure Shell" #: plinth/modules/monkeysphere/templates/monkeysphere.html:87 #: plinth/modules/monkeysphere/templates/monkeysphere_details.html:60 -#: plinth/service.py:117 +#: plinth/service.py:116 msgid "Web Server" msgstr "Веб-сервер" @@ -1819,14 +2000,20 @@ msgid "Error occurred while publishing key." msgstr "Произошла ошибка при публикации ключа." #: plinth/modules/mumble/__init__.py:35 -msgid "" -"Voice Chat \n" -" (Mumble)" +msgid "Mumble" +msgstr "" + +#: plinth/modules/mumble/__init__.py:37 +#, fuzzy +#| msgid "" +#| "Voice Chat \n" +#| " (Mumble)" +msgid "Voice Chat" msgstr "" "Голосовой чат \n" " (Mumble)" -#: plinth/modules/mumble/__init__.py:44 +#: plinth/modules/mumble/__init__.py:46 msgid "" "Mumble is an open source, low-latency, encrypted, high quality voice chat " "software." @@ -1834,7 +2021,7 @@ msgstr "" "Mumble это шифрованый чат с высоким качеством голоса, низкой задержкой и " "открытым исходным кодом." -#: plinth/modules/mumble/__init__.py:47 +#: plinth/modules/mumble/__init__.py:49 msgid "" "You can connect to your Mumble server on the regular Mumble port 64738. Clients to connect to Mumble from your " @@ -2351,7 +2538,7 @@ msgid "This connection is not active." msgstr "Это подключение не активно." #: plinth/modules/networks/templates/connection_show.html:266 -#: plinth/modules/security/__init__.py:32 plinth/modules/security/views.py:46 +#: plinth/modules/security/__init__.py:32 plinth/modules/security/views.py:48 msgid "Security" msgstr "Безопасность" @@ -2456,14 +2643,22 @@ msgid "Inactive" msgstr "Неактивен" #: plinth/modules/openvpn/__init__.py:42 -msgid "" -"Virtual Private Network \n" -" (OpenVPN)" +#, fuzzy +#| msgid "Open" +msgid "OpenVPN" +msgstr "Open" + +#: plinth/modules/openvpn/__init__.py:44 +#, fuzzy +#| msgid "" +#| "Virtual Private Network \n" +#| " (OpenVPN)" +msgid "Virtual Private Network" msgstr "" "Виртуальная частная сеть\n" " (OpenVPN)" -#: plinth/modules/openvpn/__init__.py:46 +#: plinth/modules/openvpn/__init__.py:48 #, python-brace-format msgid "" "Virtual Private Network (VPN) is a technique for securely connecting two " @@ -2481,7 +2676,7 @@ msgstr "" "также получить доступ к остальной части Интернет через {box_name} для " "дополнительной безопасности и анонимности." -#: plinth/modules/openvpn/__init__.py:84 +#: plinth/modules/openvpn/__init__.py:86 #, python-brace-format msgid "" "Download Profile" @@ -2571,10 +2766,18 @@ msgid "Setup failed." msgstr "Установка не удалась." #: plinth/modules/pagekite/__init__.py:44 -msgid "Public Visibility (PageKite)" +#, fuzzy +#| msgid "Pagekite" +msgid "PageKite" +msgstr "Pаgekite" + +#: plinth/modules/pagekite/__init__.py:46 +#, fuzzy +#| msgid "Public Visibility (PageKite)" +msgid "Public Visibility" msgstr "Открытая видимость (PageKite)" -#: plinth/modules/pagekite/__init__.py:48 +#: plinth/modules/pagekite/__init__.py:50 #, python-brace-format msgid "" "PageKite is a system for exposing {box_name} services when you don't have a " @@ -2587,19 +2790,19 @@ msgstr "" "недоступны из остальной части интернета. Это включает в себя следующие " "ситуации:" -#: plinth/modules/pagekite/__init__.py:55 +#: plinth/modules/pagekite/__init__.py:57 #, python-brace-format msgid "{box_name} is behind a restricted firewall." msgstr "{box_name} ограничен брандмауэром." -#: plinth/modules/pagekite/__init__.py:59 +#: plinth/modules/pagekite/__init__.py:61 #, python-brace-format msgid "{box_name} is connected to a (wireless) router which you don't control." msgstr "" "{box_name} подключен к маршрутизатору (беспроводному), который вы не " "контролируете." -#: plinth/modules/pagekite/__init__.py:62 +#: plinth/modules/pagekite/__init__.py:64 msgid "" "Your ISP does not provide you an external IP address and instead provides " "Internet connection through NAT." @@ -2607,7 +2810,7 @@ msgstr "" "Ваш провайдер не предоставляет вам внешний IP-адрес и вместо этого " "обеспечивает подключение к Интернету через NAT." -#: plinth/modules/pagekite/__init__.py:65 +#: plinth/modules/pagekite/__init__.py:67 msgid "" "Your ISP does not provide you a static IP address and your IP address " "changes evertime you connect to Internet." @@ -2615,11 +2818,11 @@ msgstr "" "Ваш провайдер не предоставляет вам статический IP-адрес и ваш IP адрес " "изменяется каждый раз при подключении к Интернету." -#: plinth/modules/pagekite/__init__.py:68 +#: plinth/modules/pagekite/__init__.py:70 msgid "Your ISP limits incoming connections." msgstr "Ваш провайдер ограничивает входящие соединения." -#: plinth/modules/pagekite/__init__.py:71 +#: plinth/modules/pagekite/__init__.py:73 #, python-brace-format msgid "" "PageKite works around NAT, firewalls and IP-address limitations by using a " @@ -2915,8 +3118,8 @@ msgstr "Пользовательские службы" msgid "Pagekite setup finished. The HTTP and HTTPS services are activated now." msgstr "Установка Pagekite завершена. Службы HTTP И HTTPS запущены." -#: plinth/modules/power/__init__.py:28 plinth/modules/power/views.py:50 -#: plinth/modules/power/views.py:65 +#: plinth/modules/power/__init__.py:28 plinth/modules/power/views.py:51 +#: plinth/modules/power/views.py:67 msgid "Power" msgstr "Pоwer" @@ -2925,10 +3128,22 @@ msgid "Restart or shut down the system." msgstr "Перезагрузка или завершение работы системы." #: plinth/modules/power/templates/power.html:28 +#, fuzzy +#| msgid "" +#| "Another installation or upgrade is already running. Please wait for a few " +#| "moments before trying again." +msgid "" +"Currently an installation or upgrade is running. Consider waiting until it's " +"finished before shutting down or restarting." +msgstr "" +"Другая установка или обновление уже запущенны. Пожалуйста, подождите " +"несколько минут перед повторной попыткой." + +#: plinth/modules/power/templates/power.html:37 msgid "Restart »" msgstr "Рестарт »" -#: plinth/modules/power/templates/power.html:31 +#: plinth/modules/power/templates/power.html:40 msgid "Shut Down »" msgstr "Выключить »" @@ -2940,7 +3155,20 @@ msgstr "" "Вы действительно хотите перезагрузиться? Вы не будете иметь доступ к веб-" "интерфейсу на время перезагрузки системы." -#: plinth/modules/power/templates/power_restart.html:42 +#: plinth/modules/power/templates/power_restart.html:38 +#, fuzzy +#| msgid "" +#| "Another installation or upgrade is already running. Please wait for a few " +#| "moments before trying again." +msgid "" +"Currently an installation or upgrade is running. Consider waiting until it's " +"finished before restarting." +msgstr "" +"Другая установка или обновление уже запущенны. Пожалуйста, подождите " +"несколько минут перед повторной попыткой." + +#: plinth/modules/power/templates/power_restart.html:52 +#: plinth/modules/power/templates/power_restart.html:55 msgid "Restart Now" msgstr "Перезагрузить сейчас" @@ -2952,19 +3180,36 @@ msgstr "" "Вы действительно хотите выключить? Вы не будете иметь доступ к веб-" "интерфейсу после выключения." -#: plinth/modules/power/templates/power_shutdown.html:41 +#: plinth/modules/power/templates/power_shutdown.html:37 +#, fuzzy +#| msgid "" +#| "Another installation or upgrade is already running. Please wait for a few " +#| "moments before trying again." +msgid "" +"Currently an installation or upgrade is running. Consider waiting until it's " +"finished before shutting down." +msgstr "" +"Другая установка или обновление уже запущенны. Пожалуйста, подождите " +"несколько минут перед повторной попыткой." + +#: plinth/modules/power/templates/power_shutdown.html:51 +#: plinth/modules/power/templates/power_shutdown.html:54 msgid "Shut Down Now" msgstr "Завершить работу сейчас" #: plinth/modules/privoxy/__init__.py:43 -msgid "" -"Web Proxy \n" -" (Privoxy)" -msgstr "" -"Веб-прокси\n" -" (Privoxy)" +#, fuzzy +#| msgid "Enable Privoxy" +msgid "Privoxy" +msgstr "Включить Privoxy" -#: plinth/modules/privoxy/__init__.py:46 +#: plinth/modules/privoxy/__init__.py:45 +#, fuzzy +#| msgid "Privoxy Web Proxy" +msgid "Web Proxy" +msgstr "Privoxy Web-прокси" + +#: plinth/modules/privoxy/__init__.py:48 msgid "" "Privoxy is a non-caching web proxy with advanced filtering capabilities for " "enhancing privacy, modifying web page data and HTTP headers, controlling " @@ -2975,7 +3220,7 @@ msgstr "" "HTTP, контроля доступа и удаления рекламы и прочего неприятного мусора в " "интернете. " -#: plinth/modules/privoxy/__init__.py:52 +#: plinth/modules/privoxy/__init__.py:54 #, python-brace-format msgid "" "You can use Privoxy by modifying your browser proxy settings to your " @@ -2990,20 +3235,22 @@ msgstr "" "config.privoxy.org\">http://config.privoxy.org или http://p.p." -#: plinth/modules/privoxy/__init__.py:144 +#: plinth/modules/privoxy/__init__.py:147 #, python-brace-format msgid "Access {url} with proxy {proxy} on tcp{kind}" msgstr "Доступ к {url} с прокси {proxy} на tcp{kind}" #: plinth/modules/quassel/__init__.py:42 -msgid "" -"IRC Client \n" -" (Quassel)" +msgid "Quassel" msgstr "" -"IRC-клиент\n" -" (Quassel)" -#: plinth/modules/quassel/__init__.py:46 +#: plinth/modules/quassel/__init__.py:44 +#, fuzzy +#| msgid "Quassel IRC Client" +msgid "IRC Client" +msgstr "Quassel IRC-клиент" + +#: plinth/modules/quassel/__init__.py:48 #, python-brace-format msgid "" "Quassel is an IRC application that is split into two parts, a \"core\" and a " @@ -3020,7 +3267,7 @@ msgstr "" "клиентов. Для этого могут использоваться как клиенты настольного компьютера, " "так и мобильные версии." -#: plinth/modules/quassel/__init__.py:54 +#: plinth/modules/quassel/__init__.py:56 msgid "" "You can connect to your Quassel core on the default Quassel port 4242. " "Clients to connect to Quassel from your мобильных устройств." #: plinth/modules/radicale/__init__.py:43 -msgid "" -"Calendar and Addressbook \n" -" (Radicale)" +msgid "Radicale" +msgstr "" + +#: plinth/modules/radicale/__init__.py:45 +#, fuzzy +#| msgid "" +#| "Calendar and Addressbook \n" +#| " (Radicale)" +msgid "Calendar and Addressbook" msgstr "" "Календарь и Адресная книга\n" " (Radicale)" -#: plinth/modules/radicale/__init__.py:47 -#, python-brace-format +#: plinth/modules/radicale/__init__.py:49 +#, fuzzy, python-brace-format +#| msgid "" +#| "Radicale is a CalDAV and CardDAV server. It allows synchronization and " +#| "sharing of scheduling and contact data. To use Radicale, a " +#| "supported client application is needed. Radicale can be accessed by " +#| "any user with a {box_name} login." msgid "" "Radicale is a CalDAV and CardDAV server. It allows synchronization and " "sharing of scheduling and contact data. To use Radicale, a supported " -"client application is needed. Radicale can be accessed by any user with " -"a {box_name} login." +"radicale.org/clients/\">supported client application is needed. Radicale " +"can be accessed by any user with a {box_name} login." msgstr "" "Radicale это CalDAV и CardDAV сервер. Он позволяет синхронизировать и " "делиться запланированными событиями и контактами. Чтобы использовать " @@ -3080,14 +3338,16 @@ msgid "Access rights configuration updated" msgstr "Конфигурация прав доступа обновлена" #: plinth/modules/repro/__init__.py:38 -msgid "" -"SIP Server \n" -" (repro)" +msgid "repro" msgstr "" -"Сервер SIP \n" -" (repro)" -#: plinth/modules/repro/__init__.py:41 +#: plinth/modules/repro/__init__.py:40 +#, fuzzy +#| msgid "DNS Server" +msgid "SIP Server" +msgstr "DNS-сервер" + +#: plinth/modules/repro/__init__.py:43 msgid "" "repro provides various SIP services that a SIP softphone can utilize to " "provide audio and video calls as well as presence and instant messaging. " @@ -3101,7 +3361,7 @@ msgstr "" "действует как прокси-сервер отправляя SIP сообщения на другие серверы в " "Интернете, похож на электронную почту." -#: plinth/modules/repro/__init__.py:48 +#: plinth/modules/repro/__init__.py:50 msgid "" "To make SIP calls, a client application is needed. Available clients include " "Jitsi (for computers) and CSipSimple (для телефонов на Android)." -#: plinth/modules/repro/__init__.py:53 +#: plinth/modules/repro/__init__.py:55 msgid "" "Note: Before using repro, domains and users will need to " "be configured using the web-based " @@ -3128,14 +3388,20 @@ msgstr "" "перезапустить службу repro. Отключить и снова включить её." #: plinth/modules/restore/__init__.py:36 -msgid "" -"Unhosted Storage \n" -" (reStore)" +msgid "reStore" +msgstr "rеStore" + +#: plinth/modules/restore/__init__.py:38 +#, fuzzy +#| msgid "" +#| "Unhosted Storage \n" +#| " (reStore)" +msgid "Unhosted Storage" msgstr "" "Unhosted хранилище\n" " (reStore)" -#: plinth/modules/restore/__init__.py:40 +#: plinth/modules/restore/__init__.py:42 #, python-brace-format msgid "" "reStore is a server for unhosted web " @@ -3150,7 +3416,7 @@ msgstr "" "храниться на сервере хранения по выбору пользователя. С reStore, ваш " "{box_name} становится сервером хранения unhosted." -#: plinth/modules/restore/__init__.py:47 +#: plinth/modules/restore/__init__.py:49 msgid "" "You can create and edit accounts in the reStore web-" "interface." @@ -3159,14 +3425,22 @@ msgstr "" "интерфейсе reStore." #: plinth/modules/roundcube/__init__.py:35 -msgid "" -"Email Client \n" -" (Roundcube)" +#, fuzzy +#| msgid "Enable Roundcube" +msgid "Roundcube" +msgstr "Включить Roundcube" + +#: plinth/modules/roundcube/__init__.py:37 +#, fuzzy +#| msgid "" +#| "Email Client \n" +#| " (Roundcube)" +msgid "Email Client" msgstr "" "Почтовый клиент\n" " (Roundcube)" -#: plinth/modules/roundcube/__init__.py:38 +#: plinth/modules/roundcube/__init__.py:40 msgid "" "Roundcube webmail is a browser-based multilingual IMAP client with an " "application-like user interface. It provides full functionality you expect " @@ -3178,7 +3452,7 @@ msgstr "" "которую вы ожидаете от почтового клиента, включая поддержку MIME, адресную " "книгу, управление папками, поиск сообщений и проверку орфографии." -#: plinth/modules/roundcube/__init__.py:44 +#: plinth/modules/roundcube/__init__.py:46 msgid "" "You can access Roundcube from /roundcube. Provide " "the username and password of the email account you wish to access followed " @@ -3193,7 +3467,7 @@ msgstr "" "(рекомендуется) заполните поле сервера, например imaps://imap.example." "com." -#: plinth/modules/roundcube/__init__.py:51 +#: plinth/modules/roundcube/__init__.py:53 msgid "" "For Gmail, username will be your Gmail address, password will be your Google " "account password and server will be imaps://imap.gmail.com. " @@ -3224,28 +3498,45 @@ msgstr "" "могут иметь возможность доступа к некоторым службам без дополнительного " "разрешения." -#: plinth/modules/security/views.py:63 +#: plinth/modules/security/forms.py:35 +msgid "Fail2ban (recommended)" +msgstr "" + +#: plinth/modules/security/forms.py:36 +msgid "" +"When this option is enabled, fail2ban will limit brute force break-in " +"attempts to the SSH server and other password protected internet-services " +"which are enabled." +msgstr "" + +#: plinth/modules/security/views.py:66 #, python-brace-format msgid "Error setting restricted access: {exception}" msgstr "Ошибка настройки ограничения доступа: {exception}" -#: plinth/modules/security/views.py:66 +#: plinth/modules/security/views.py:69 msgid "Updated security configuration" msgstr "Обновлена настройка безопасности" #: plinth/modules/shaarli/__init__.py:35 -msgid "" -"Bookmarks \n" -" (Shaarli)" +msgid "Shaarli" +msgstr "Shаarli" + +#: plinth/modules/shaarli/__init__.py:37 +#, fuzzy +#| msgid "" +#| "Bookmarks \n" +#| " (Shaarli)" +msgid "Bookmarks" msgstr "" "Закладки\n" " (Shaarli)" -#: plinth/modules/shaarli/__init__.py:38 +#: plinth/modules/shaarli/__init__.py:40 msgid "Shaarli allows you to save and share bookmarks." msgstr "Shaarli позволяет вам сохранять и обмениваться закладками." -#: plinth/modules/shaarli/__init__.py:40 +#: plinth/modules/shaarli/__init__.py:42 msgid "" "When enabled, Shaarli will be available from /shaarli path on the web server. Note that Shaarli only supports a single user " @@ -3372,6 +3663,18 @@ msgstr "Необходимо перезагрузить систему для з msgid "Rollback to Snapshot" msgstr "Откат к снимку" +#: plinth/modules/ssh/__init__.py:37 +msgid "Secure Shell (SSH) Server" +msgstr "Secure Shell (SSH) сервер" + +#: plinth/modules/ssh/__init__.py:40 +msgid "" +"A Secure Shell server uses the secure shell protocol to accept connections " +"from remote computers. An authorized remote computer can perform " +"administration tasks, copy files or run other services using such " +"connections." +msgstr "" + #: plinth/modules/sso/__init__.py:30 msgid "Single Sign On" msgstr "Единый вход" @@ -3381,14 +3684,20 @@ msgid "Login" msgstr "Логин" #: plinth/modules/syncthing/__init__.py:39 -msgid "" -"File Synchronization \n" -" (Syncthing)" +msgid "Syncthing" +msgstr "" + +#: plinth/modules/syncthing/__init__.py:41 +#, fuzzy +#| msgid "" +#| "File Synchronization \n" +#| " (Syncthing)" +msgid "File Synchronization" msgstr "" "Синхронизация файлов\n" " (Syncthing)" -#: plinth/modules/syncthing/__init__.py:42 +#: plinth/modules/syncthing/__init__.py:44 msgid "" "Syncthing is an application to synchronize files across multiple devices, e." "g. your desktop computer and mobile phone. Creation, modification, or " @@ -3400,7 +3709,7 @@ msgstr "" "или удаление файлов на одном устройстве будет автоматически реплицироваться " "на все другие устройства, на которых работает Syncthing." -#: plinth/modules/syncthing/__init__.py:47 +#: plinth/modules/syncthing/__init__.py:49 #, python-brace-format msgid "" "Running Syncthing on {box_name} provides an extra synchronization point for " @@ -3418,7 +3727,7 @@ msgstr "" "собственный набор папок. Веб-интерфейс доступен только для пользователей, " "принадлежащих к группе «admin»." -#: plinth/modules/syncthing/__init__.py:54 +#: plinth/modules/syncthing/__init__.py:56 msgid "" "When enabled, Syncthing's web interface will be available from /syncthing. Desktop and mobile clients are also доступны." #: plinth/modules/tahoe/__init__.py:42 -msgid "Distributed File Storage (Tahoe-LAFS)" +msgid "Tahoe-LAFS" +msgstr "" + +#: plinth/modules/tahoe/__init__.py:44 +#, fuzzy +#| msgid "Distributed File Storage (Tahoe-LAFS)" +msgid "Distributed File Storage" msgstr "Распределенное Хранилище Файлов (Tahoe-LAFS)" -#: plinth/modules/tahoe/__init__.py:73 +#: plinth/modules/tahoe/__init__.py:75 msgid "" "Tahoe-LAFS is a decentralized secure file storage system. It uses provider " "independent security to store files over a distributed network of storage " @@ -3444,7 +3759,7 @@ msgstr "" "распределенной сети узлов хранения файлов. Если некоторые узлы будут " "недоступны, вы можете получить ваши файлы от оставшихся узлов." -#: plinth/modules/tahoe/__init__.py:78 +#: plinth/modules/tahoe/__init__.py:80 #, python-brace-format msgid "" "This {box_name} hosts a storage node and an introducer by default. " @@ -3465,8 +3780,8 @@ msgid "" msgstr "" "Сервер Tahoe-LAFS доступен на %(domain_name)s. Изменение доменного " "имени FreedomBox потребует переустановки Tahoe-LAFS и ВЫ МОЖЕТЕ ПОТЕРЯТЬ " -"ВСЕ ВАШИ ДАННЫЕ. Вы получить доступ к Tahoe-LAFS на https://%(domain_name)s:5678." +"ВСЕ ВАШИ ДАННЫЕ. Вы получить доступ к Tahoe-LAFS на https://%(domain_name)s:5678." #: plinth/modules/tahoe/templates/tahoe-post-setup.html:55 msgid "Local introducer" @@ -3494,7 +3809,17 @@ msgstr "Подключенные посредники" msgid "Remove" msgstr "Удалить" -#: plinth/modules/tor/__init__.py:45 +#: plinth/modules/tor/__init__.py:42 +msgid "Tor" +msgstr "" + +#: plinth/modules/tor/__init__.py:44 +#, fuzzy +#| msgid "Tor Anonymity Network" +msgid "Anonymity Network" +msgstr "Tоr Anonymity Network" + +#: plinth/modules/tor/__init__.py:47 msgid "" "Tor is an anonymous communication system. You can learn more about it from " "the Tor Project website. For " @@ -3508,36 +3833,36 @@ msgstr "" "\"https://www.torproject.org/download/download-easy.html.en\">Tor Browser." -#: plinth/modules/tor/__init__.py:70 plinth/modules/tor/__init__.py:112 +#: plinth/modules/tor/__init__.py:72 plinth/modules/tor/__init__.py:114 msgid "Tor Anonymity Network" msgstr "Tоr Anonymity Network" -#: plinth/modules/tor/__init__.py:76 plinth/modules/tor/__init__.py:120 +#: plinth/modules/tor/__init__.py:78 plinth/modules/tor/__init__.py:122 msgid "Tor Bridge Relay" msgstr "Ретранслятор Tor типа мост" -#: plinth/modules/tor/__init__.py:98 plinth/modules/tor/__init__.py:141 +#: plinth/modules/tor/__init__.py:100 plinth/modules/tor/__init__.py:143 msgid "Tor Hidden Service" msgstr "Скрытый сервис Tor" -#: plinth/modules/tor/__init__.py:160 +#: plinth/modules/tor/__init__.py:162 msgid "Tor relay port available" msgstr "Доступен порт трансляции Tor" -#: plinth/modules/tor/__init__.py:168 +#: plinth/modules/tor/__init__.py:170 msgid "Obfs3 transport registered" msgstr "Obfs3 транспорт зарегестрирован" -#: plinth/modules/tor/__init__.py:174 +#: plinth/modules/tor/__init__.py:176 msgid "Obfs4 transport registered" msgstr "Obfs4 транспорт зарегистрирован" -#: plinth/modules/tor/__init__.py:211 +#: plinth/modules/tor/__init__.py:213 #, python-brace-format msgid "Access URL {url} on tcp{kind} via Tor" msgstr "Доступ к {url} по tcp{kind} через Tor" -#: plinth/modules/tor/__init__.py:222 +#: plinth/modules/tor/__init__.py:224 #, python-brace-format msgid "Confirm Tor usage at {url} on tcp{kind}" msgstr "Подтверждение использования Tor в {url} по tcp {kind}" @@ -3704,14 +4029,18 @@ msgid "An error occurred during configuration." msgstr "Произошла ошибка во время настройки." #: plinth/modules/transmission/__init__.py:38 -msgid "" -"BitTorrent \n" -" (Transmission)" -msgstr "" -"BitTorrent\n" -" (Transmissiоn)" +#, fuzzy +#| msgid "Transmission BitTorrent" +msgid "Transmission" +msgstr "BitTorrent Transmissiоn" -#: plinth/modules/transmission/__init__.py:41 +#: plinth/modules/transmission/__init__.py:40 +#, fuzzy +#| msgid "Deluge BitTorrent" +msgid "BitTorrent" +msgstr "Deluge БитТоррент" + +#: plinth/modules/transmission/__init__.py:43 msgid "" "BitTorrent is a peer-to-peer file sharing protocol. Transmission daemon " "handles Bitorrent file sharing. Note that BitTorrent is not anonymous." @@ -3720,7 +4049,7 @@ msgstr "" "обрабатывает обмен файлами Bitorrent. Обратите внимание, что BitTorrent не " "является анонимным." -#: plinth/modules/transmission/__init__.py:44 +#: plinth/modules/transmission/__init__.py:46 msgid "" "Access the web interface at /transmission." msgstr "" @@ -3753,15 +4082,21 @@ msgstr "" "хэшированном формате. Чтобы задать новый пароль, введите пароль в виде " "обычного текста." -#: plinth/modules/ttrss/__init__.py:37 -msgid "" -"News Feed Reader \n" -" (Tiny Tiny RSS)" +#: plinth/modules/ttrss/__init__.py:39 +msgid "Tiny Tiny RSS" +msgstr "" + +#: plinth/modules/ttrss/__init__.py:41 +#, fuzzy +#| msgid "" +#| "News Feed Reader \n" +#| " (Tiny Tiny RSS)" +msgid "News Feed Reader" msgstr "" "Чтение ленты новостей\n" " (Tiny Tiny RSS)" -#: plinth/modules/ttrss/__init__.py:40 +#: plinth/modules/ttrss/__init__.py:44 msgid "" "Tiny Tiny RSS is a news feed (RSS/Atom) reader and aggregator, designed to " "allow reading news from any location, while feeling as close to a real " @@ -3770,10 +4105,15 @@ msgstr "" "Tiny Tiny RSS это новый (RSS/Atom) агрегатор новостей, позволяющий читать " "новости из любого места, так же удобно, как и в настольных приложениях." -#: plinth/modules/ttrss/__init__.py:44 +#: plinth/modules/ttrss/__init__.py:49 +#, fuzzy, python-brace-format +#| msgid "" +#| "When enabled, Tiny Tiny RSS will be available from /" +#| "tt-rss path on the web server." msgid "" "When enabled, Tiny Tiny RSS will be available from /tt-" -"rss path on the web server." +"rss path on the web server. It can be accessed by any user with a {box_name} login." msgstr "" "Когда включен, Tiny Tiny RSS доступен по адресу /tt-rss." @@ -4090,15 +4430,11 @@ msgstr "изменение медиа" msgid "configuration file: {file}" msgstr "Файл настроек: {file}" -#: plinth/service.py:119 +#: plinth/service.py:118 msgid "Web Server over Secure Socket Layer" msgstr "Веб-сервер через Secure Socket Layer" -#: plinth/service.py:121 -msgid "Secure Shell (SSH) Server" -msgstr "Secure Shell (SSH) сервер" - -#: plinth/service.py:123 +#: plinth/service.py:120 #, python-brace-format msgid "{box_name} Web Interface (Plinth)" msgstr "{box_name} Веб-интерфейс (Plinth)" @@ -4149,11 +4485,11 @@ msgstr "" "прикрепите Лог состояния к отчету об " "ошибке." -#: plinth/templates/apps.html:25 +#: plinth/templates/apps.html:33 msgid "Services and Applications" msgstr "Службы и Приложения" -#: plinth/templates/apps.html:28 +#: plinth/templates/apps.html:36 #, python-format msgid "" "You can install and run various services and applications on your " @@ -4164,7 +4500,7 @@ msgstr "" "%(box_name)s. Нажмите на любую страницу приложения слева, чтобы прочитать " "описание приложения и выбрать его для установки." -#: plinth/templates/apps.html:36 +#: plinth/templates/apps.html:44 msgid "" "This box can be your photo sharing site, your instant messaging site, your " "social networking site, your news site. Remember web portals? We can be " @@ -4339,16 +4675,16 @@ msgstr "Установка %(package_names)s: %(status)s" msgid "%(percentage)s%% complete" msgstr "%(percentage)s%% завершено" -#: plinth/templates/system.html:25 +#: plinth/templates/system.html:33 msgid "System Configuration" msgstr "Конфигурация системы" -#: plinth/templates/system.html:28 +#: plinth/templates/system.html:36 #, python-format msgid "Here you can administrate the underlying system of your %(box_name)s." msgstr "Здесь вы можете администрировать базовую систему вашего %(box_name)s." -#: plinth/templates/system.html:34 +#: plinth/templates/system.html:42 #, python-format msgid "" "The options affect the %(box_name)s at its most general level, so be careful!" @@ -4356,6 +4692,64 @@ msgstr "" "Параметры влияют на %(box_name)s на основном уровне, так что будьте " "осторожны!" +#~ msgid "Select the domain name to be used for diaspora*" +#~ msgstr "Выберите имя домена, используемого диаспорой*" + +#~ msgid "" +#~ "Warning! Do not change the FreedomBox domain name after setting up " +#~ "diaspora*" +#~ msgstr "" +#~ "Внимание! Не изменяйте доменное имя вашего FreedomBox после настройки " +#~ "diaspora*" + +#~ msgid "" +#~ "Chat Server \n" +#~ " (ejabberd)" +#~ msgstr "" +#~ "Чат-сервер \n" +#~ " (ejabberd)" + +#~ msgid "Wiki and Blog (ikiwiki)" +#~ msgstr "Вики и Блог (ikiwiki)" + +#~ msgid "" +#~ "Gobby Server \n" +#~ " (infinoted)" +#~ msgstr "" +#~ "Сервер Gobby\n" +#~ "(infinoted)" + +#~ msgid "Select the domain name" +#~ msgstr "Выберите имя домена" + +#~ msgid "" +#~ "Web Proxy \n" +#~ " (Privoxy)" +#~ msgstr "" +#~ "Веб-прокси\n" +#~ " (Privoxy)" + +#~ msgid "" +#~ "IRC Client \n" +#~ " (Quassel)" +#~ msgstr "" +#~ "IRC-клиент\n" +#~ " (Quassel)" + +#~ msgid "" +#~ "SIP Server \n" +#~ " (repro)" +#~ msgstr "" +#~ "Сервер SIP \n" +#~ " (repro)" + +#~ msgid "" +#~ "BitTorrent \n" +#~ " (Transmission)" +#~ msgstr "" +#~ "BitTorrent\n" +#~ " (Transmissiоn)" + #~ msgid "Applications" #~ msgstr "Приложения" @@ -4562,12 +4956,6 @@ msgstr "" #~ msgid "BitTorrent (Deluge)" #~ msgstr "БитТоррент (Deluge)" -#~ msgid "Deluge BitTorrent" -#~ msgstr "Deluge БитТоррент" - -#~ msgid "Enable Deluge" -#~ msgstr "Включить Deluge" - #~ msgid "System Diagnostics" #~ msgstr "Диагностика системы" @@ -4585,9 +4973,6 @@ msgstr "" #~ msgid "Enable ikiwiki" #~ msgstr "Включить ikiwiki" -#~ msgid "Wiki and Blog" -#~ msgstr "Вики и Блог" - #~ msgid "Generate PGP Key" #~ msgstr "Генерировать ключ PGP" @@ -4612,15 +4997,6 @@ msgstr "" #~ msgid "ownCloud disabled" #~ msgstr "ownCloud выключен" -#~ msgid "Privoxy Web Proxy" -#~ msgstr "Privoxy Web-прокси" - -#~ msgid "Enable Privoxy" -#~ msgstr "Включить Privoxy" - -#~ msgid "Quassel IRC Client" -#~ msgstr "Quassel IRC-клиент" - #~ msgid "Enable Quassel core service" #~ msgstr "Включение службы ядра Quassel" @@ -4630,15 +5006,6 @@ msgstr "" #~ msgid "Enable repro service" #~ msgstr "Включить службу repro" -#~ msgid "reStore" -#~ msgstr "rеStore" - -#~ msgid "Enable Roundcube" -#~ msgstr "Включить Roundcube" - -#~ msgid "Shaarli" -#~ msgstr "Shаarli" - #~ msgid "Enable Shaarli" #~ msgstr "Включить Shaarli" @@ -4648,9 +5015,6 @@ msgstr "" #~ msgid "Tor Control Panel" #~ msgstr "Панель управления Tor" -#~ msgid "Transmission BitTorrent" -#~ msgstr "BitTorrent Transmissiоn" - #~ msgid "Enable Transmission daemon" #~ msgstr "Включить демона Transmission" diff --git a/plinth/locale/sv/LC_MESSAGES/django.po b/plinth/locale/sv/LC_MESSAGES/django.po index e6337ab94..02087bddd 100644 --- a/plinth/locale/sv/LC_MESSAGES/django.po +++ b/plinth/locale/sv/LC_MESSAGES/django.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2017-07-10 22:56-0400\n" +"POT-Creation-Date: 2017-09-24 11:24-0400\n" "PO-Revision-Date: 2016-07-23 19:30+0000\n" "Last-Translator: Caly \n" "Language-Team: Swedish /deluge path on the web server. The default password is 'deluge', but " @@ -400,21 +414,22 @@ msgstr "Test" msgid "Result" msgstr "Resultat" -#: plinth/modules/diaspora/__init__.py:61 +#: plinth/modules/diaspora/__init__.py:51 +msgid "diaspora*" +msgstr "" + +#: plinth/modules/diaspora/__init__.py:53 +msgid "Federated Social Network" +msgstr "" + +#: plinth/modules/diaspora/__init__.py:62 msgid "" "diaspora* is a decentralized social network where you can store and control " "your own data." msgstr "" -#: plinth/modules/diaspora/forms.py:30 -#, fuzzy -#| msgid "Invalid domain name" -msgid "Select the domain name to be used for diaspora*" -msgstr "Ogiltigt domännamn" - -#: plinth/modules/diaspora/forms.py:32 -msgid "" -"Warning! Do not change the FreedomBox domain name after setting up diaspora*" +#: plinth/modules/diaspora/forms.py:31 +msgid "Enable new user registrations" msgstr "" #: plinth/modules/diaspora/templates/diaspora-post-setup.html:32 @@ -441,7 +456,25 @@ msgstr "" msgid "Update setup" msgstr "Uppdatera inställningar" -#: plinth/modules/disks/__init__.py:33 plinth/modules/disks/views.py:39 +#: plinth/modules/diaspora/views.py:96 plinth/modules/ejabberd/views.py:60 +#: plinth/modules/openvpn/views.py:145 plinth/modules/tor/views.py:134 +#: plinth/views.py:112 +msgid "Setting unchanged" +msgstr "Instänllningar oförändrade" + +#: plinth/modules/diaspora/views.py:100 +#, fuzzy +#| msgid "Applications" +msgid "User registrations enabled" +msgstr "Applikationer" + +#: plinth/modules/diaspora/views.py:104 +#, fuzzy +#| msgid "Applications" +msgid "User registrations disabled" +msgstr "Applikationer" + +#: plinth/modules/disks/__init__.py:33 plinth/modules/disks/views.py:45 msgid "Disks" msgstr "" @@ -485,7 +518,7 @@ msgstr "" #: plinth/modules/disks/templates/disks.html:90 #: plinth/modules/disks/templates/disks.html:102 #: plinth/modules/disks/templates/disks_expand.html:45 -#: plinth/modules/disks/views.py:56 +#: plinth/modules/disks/views.py:62 msgid "Expand Root Partition" msgstr "" @@ -503,46 +536,53 @@ msgid "" "root partition." msgstr "" -#: plinth/modules/disks/views.py:65 +#: plinth/modules/disks/views.py:71 #, fuzzy, python-brace-format #| msgid "Error setting time zone: {exception}" msgid "Error expanding partition: {exception}" msgstr "Fel i inställning av tidszon: {exception}" -#: plinth/modules/disks/views.py:68 +#: plinth/modules/disks/views.py:74 msgid "Partition expanded successfully." msgstr "" -#: plinth/modules/disks/views.py:77 +#: plinth/modules/disks/views.py:93 +#, python-format, python-brace-format +msgid "" +"Warning: Low space on system partition ({percent_used}% used, {free_space} " +"free)." +msgstr "" + +#: plinth/modules/disks/views.py:130 #, python-brace-format msgid "{disk_size:.1f} bytes" msgstr "" -#: plinth/modules/disks/views.py:81 +#: plinth/modules/disks/views.py:134 #, python-brace-format msgid "{disk_size:.1f} KiB" msgstr "" -#: plinth/modules/disks/views.py:85 +#: plinth/modules/disks/views.py:138 #, python-brace-format msgid "{disk_size:.1f} MiB" msgstr "" -#: plinth/modules/disks/views.py:89 +#: plinth/modules/disks/views.py:142 #, python-brace-format msgid "{disk_size:.1f} GiB" msgstr "" -#: plinth/modules/disks/views.py:92 +#: plinth/modules/disks/views.py:145 #, python-brace-format msgid "{disk_size:.1f} TiB" msgstr "" -#: plinth/modules/dynamicdns/__init__.py:33 +#: plinth/modules/dynamicdns/__init__.py:35 msgid "Dynamic DNS Client" msgstr "Klient för Dynamisk DNS" -#: plinth/modules/dynamicdns/__init__.py:37 +#: plinth/modules/dynamicdns/__init__.py:39 #, fuzzy, python-brace-format #| msgid "" #| "If your internet provider changes your IP address periodic (i.e. every " @@ -558,7 +598,7 @@ msgstr "" "kan det vara svårt för andra att hitta dig på nätet. Då kan ingen hitta de " "tjänster som tillhandahålls av %(box_name)s (tex. din ownCloud)." -#: plinth/modules/dynamicdns/__init__.py:43 +#: plinth/modules/dynamicdns/__init__.py:45 #, fuzzy #| msgid "" #| "The solution is to assign a DNS name to your IP address and update the " @@ -584,11 +624,18 @@ msgstr "" "DNS-namn med din nya IP, och om någon från Internet ber om ditt DNS-namn, " "kommer han bli skickad till din aktuella IP." -#: plinth/modules/dynamicdns/dynamicdns.py:35 plinth/modules/help/help.py:40 +#: plinth/modules/dynamicdns/__init__.py:67 +#: plinth/modules/dynamicdns/dynamicdns.py:377 +#, fuzzy +#| msgid "Dynamic DNS Client" +msgid "Dynamic DNS Service" +msgstr "Klient för Dynamisk DNS" + +#: plinth/modules/dynamicdns/dynamicdns.py:43 plinth/modules/help/help.py:40 msgid "About" msgstr "Om" -#: plinth/modules/dynamicdns/dynamicdns.py:39 +#: plinth/modules/dynamicdns/dynamicdns.py:47 #: plinth/modules/firewall/templates/firewall.html:47 #: plinth/modules/networks/templates/connection_show.html:261 #: plinth/modules/openvpn/templates/openvpn.html:67 @@ -597,7 +644,7 @@ msgstr "Om" msgid "Status" msgstr "Status" -#: plinth/modules/dynamicdns/dynamicdns.py:63 +#: plinth/modules/dynamicdns/dynamicdns.py:71 msgid "" "The Variables <User>, <Pass>, <Ip>, <Domain> may be " "used within the URL. For details see the update URL templates of the example " @@ -607,7 +654,7 @@ msgstr "" "användas i webbadressen. Se mallar från de olika tjänsteleverantörerna för " "information om uppdateringsadress." -#: plinth/modules/dynamicdns/dynamicdns.py:67 +#: plinth/modules/dynamicdns/dynamicdns.py:75 #, fuzzy #| msgid "" #| "Please choose an update protocol according to your provider. If your " @@ -622,7 +669,7 @@ msgstr "" "stöder protokollet GnudIP, eller din leverantör saknas i listan, använd din " "leverantörs uppdateringsadress." -#: plinth/modules/dynamicdns/dynamicdns.py:72 +#: plinth/modules/dynamicdns/dynamicdns.py:80 msgid "" "Please do not enter a URL here (like \"https://example.com/\") but only the " "hostname of the GnuDIP server (like \"example.com\")." @@ -630,20 +677,20 @@ msgstr "" "Skriv inte en full webbadress här (t.ex.: \"https://exempel.com/\"), utan " "endast värdnamnet för GnuDIP servern (t.ex.: \"exempel.com\")." -#: plinth/modules/dynamicdns/dynamicdns.py:76 +#: plinth/modules/dynamicdns/dynamicdns.py:84 #, fuzzy, python-brace-format #| msgid "The public domain name you want use to reach your {box_name}." msgid "The public domain name you want to use to reach your {box_name}." msgstr "" "Publikt domännamn du önskar använda för att ansluta till din {box_name}." -#: plinth/modules/dynamicdns/dynamicdns.py:79 +#: plinth/modules/dynamicdns/dynamicdns.py:87 msgid "Use this option if your provider uses self signed certificates." msgstr "" "Använd denna funktion om din tjänsteleverantör använder självsignerade " "certifikat." -#: plinth/modules/dynamicdns/dynamicdns.py:82 +#: plinth/modules/dynamicdns/dynamicdns.py:90 msgid "" "If this option is selected, your username and password will be used for HTTP " "basic authentication." @@ -651,7 +698,7 @@ msgstr "" "Om detta alternativ är markerat, kommer ditt användarnamn och lösenord " "användas för grundläggande HTTP autentisering." -#: plinth/modules/dynamicdns/dynamicdns.py:85 +#: plinth/modules/dynamicdns/dynamicdns.py:93 #, fuzzy #| msgid "" #| "Leave this field empty if you want to keep your previous configured " @@ -659,7 +706,7 @@ msgstr "" msgid "Leave this field empty if you want to keep your current password." msgstr "Lämna fältet tomt om du vill behålla tidigare konfigurerat lösenord." -#: plinth/modules/dynamicdns/dynamicdns.py:88 +#: plinth/modules/dynamicdns/dynamicdns.py:96 #, fuzzy, python-brace-format #| msgid "" #| "Optional Value. If your {box_name} is not connected directly to the " @@ -677,94 +724,94 @@ msgstr "" "IP. Webbadressen ska helt enkelt returnera det IP som klienten kommer från. " "(exempel: http://myip.datasystems24.de)." -#: plinth/modules/dynamicdns/dynamicdns.py:96 +#: plinth/modules/dynamicdns/dynamicdns.py:104 msgid "The username that was used when the account was created." msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:107 +#: plinth/modules/dynamicdns/dynamicdns.py:115 msgid "Enable Dynamic DNS" msgstr "Aktivera Dynamisk DNS" -#: plinth/modules/dynamicdns/dynamicdns.py:110 +#: plinth/modules/dynamicdns/dynamicdns.py:118 #, fuzzy #| msgid "Service type" msgid "Service Type" msgstr "Typ av tjänst" -#: plinth/modules/dynamicdns/dynamicdns.py:115 +#: plinth/modules/dynamicdns/dynamicdns.py:123 #, fuzzy #| msgid "GnudIP Server Address" msgid "GnuDIP Server Address" msgstr "GnudIP Serveradress" -#: plinth/modules/dynamicdns/dynamicdns.py:120 +#: plinth/modules/dynamicdns/dynamicdns.py:128 msgid "Invalid server name" msgstr "Du har angett ett ogiltigt servernamn" -#: plinth/modules/dynamicdns/dynamicdns.py:123 +#: plinth/modules/dynamicdns/dynamicdns.py:131 msgid "Update URL" msgstr "Adress för uppdateringar" -#: plinth/modules/dynamicdns/dynamicdns.py:127 +#: plinth/modules/dynamicdns/dynamicdns.py:135 msgid "Accept all SSL certificates" msgstr "Acceptera alla SSL-certifikat" -#: plinth/modules/dynamicdns/dynamicdns.py:131 +#: plinth/modules/dynamicdns/dynamicdns.py:139 msgid "Use HTTP basic authentication" msgstr "Använd grundläggande HTTP-autentisering" -#: plinth/modules/dynamicdns/dynamicdns.py:143 +#: plinth/modules/dynamicdns/dynamicdns.py:151 #: plinth/modules/networks/forms.py:228 plinth/modules/transmission/forms.py:37 msgid "Username" msgstr "Användarnamn" -#: plinth/modules/dynamicdns/dynamicdns.py:146 +#: plinth/modules/dynamicdns/dynamicdns.py:154 #: plinth/modules/networks/forms.py:229 plinth/modules/transmission/forms.py:41 msgid "Password" msgstr "Lösenord" -#: plinth/modules/dynamicdns/dynamicdns.py:149 +#: plinth/modules/dynamicdns/dynamicdns.py:157 #: plinth/modules/networks/forms.py:231 msgid "Show password" msgstr "Visa lösenord" -#: plinth/modules/dynamicdns/dynamicdns.py:153 +#: plinth/modules/dynamicdns/dynamicdns.py:161 msgid "URL to look up public IP" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:179 +#: plinth/modules/dynamicdns/dynamicdns.py:187 #, fuzzy #| msgid "Please provide update URL or a GnuDIP Server" msgid "Please provide an update URL or a GnuDIP server address" msgstr "Ange uppdateringsadress eller GnuDIP-server" -#: plinth/modules/dynamicdns/dynamicdns.py:184 +#: plinth/modules/dynamicdns/dynamicdns.py:192 #, fuzzy #| msgid "Please provide GnuDIP username" msgid "Please provide a GnuDIP username" msgstr "Ange användarnamn för GnuDIP" -#: plinth/modules/dynamicdns/dynamicdns.py:188 +#: plinth/modules/dynamicdns/dynamicdns.py:196 #, fuzzy #| msgid "Please provide GnuDIP domain" msgid "Please provide a GnuDIP domain name" msgstr "Ange GnuDIP-domän" -#: plinth/modules/dynamicdns/dynamicdns.py:193 +#: plinth/modules/dynamicdns/dynamicdns.py:201 msgid "Please provide a password" msgstr "Ange ett lösenord" -#: plinth/modules/dynamicdns/dynamicdns.py:211 +#: plinth/modules/dynamicdns/dynamicdns.py:219 msgid "Configure Dynamic DNS" msgstr "Konfigurera Dynamisk DNS" -#: plinth/modules/dynamicdns/dynamicdns.py:232 +#: plinth/modules/dynamicdns/dynamicdns.py:240 #, fuzzy #| msgid "Dynamic DNS" msgid "Dynamic DNS Status" msgstr "Dynamisk DNS (DomänNamnsServer)" -#: plinth/modules/dynamicdns/dynamicdns.py:364 +#: plinth/modules/dynamicdns/dynamicdns.py:381 #: plinth/modules/openvpn/views.py:143 plinth/modules/transmission/views.py:72 msgid "Configuration updated" msgstr "Konfiguration uppdaterad" @@ -855,23 +902,30 @@ msgstr "" msgid "Last update" msgstr "Senaste uppdatering" -#: plinth/modules/ejabberd/__init__.py:42 -msgid "" -"Chat Server \n" -" (ejabberd)" +#: plinth/modules/ejabberd/__init__.py:45 +msgid "ejabberd" msgstr "" -#: plinth/modules/ejabberd/__init__.py:45 +#: plinth/modules/ejabberd/__init__.py:47 +#: plinth/modules/matrixsynapse/__init__.py:43 +#, fuzzy +#| msgid "DNS Server" +msgid "Chat Server" +msgstr "DNS-Server" + +#: plinth/modules/ejabberd/__init__.py:50 msgid "" "XMPP is an open and standardized communication protocol. Here you can run " "and configure your XMPP server, called ejabberd." msgstr "" -#: plinth/modules/ejabberd/__init__.py:48 +#: plinth/modules/ejabberd/__init__.py:54 +#, python-brace-format msgid "" -"To actually communicate, you can use the web client or any other XMPP client." +"To actually communicate, you can use the web " +"client or any other XMPP client. When enabled, ejabberd can be accessed by " +"any user with a {box_name} login." msgstr "" #: plinth/modules/ejabberd/forms.py:33 @@ -909,18 +963,13 @@ msgstr "" msgid "Configuration" msgstr "Konfiguration" -#: plinth/modules/ejabberd/views.py:60 plinth/modules/openvpn/views.py:145 -#: plinth/modules/tor/views.py:134 plinth/views.py:103 -msgid "Setting unchanged" -msgstr "Instänllningar oförändrade" - -#: plinth/modules/ejabberd/views.py:64 plinth/views.py:107 +#: plinth/modules/ejabberd/views.py:64 plinth/views.py:116 #, fuzzy #| msgid "Applications" msgid "Application enabled" msgstr "Applikationer" -#: plinth/modules/ejabberd/views.py:67 plinth/views.py:110 +#: plinth/modules/ejabberd/views.py:67 plinth/views.py:119 #, fuzzy #| msgid "Applications" msgid "Application disabled" @@ -981,13 +1030,13 @@ msgid "Service/Port" msgstr "Service/Port" #: plinth/modules/firewall/templates/firewall.html:65 -#: plinth/modules/letsencrypt/templates/letsencrypt.html:88 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:94 #: plinth/modules/names/templates/names.html:49 msgid "Enabled" msgstr "Aktiverad" #: plinth/modules/firewall/templates/firewall.html:68 -#: plinth/modules/letsencrypt/templates/letsencrypt.html:90 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:96 #: plinth/modules/names/templates/names.html:51 #: plinth/modules/networks/forms.py:63 msgid "Disabled" @@ -1238,16 +1287,31 @@ msgid "" "before submitting the bug report." msgstr "" -#: plinth/modules/ikiwiki/__init__.py:39 -msgid "Wiki and Blog (ikiwiki)" -msgstr "Wiki och Blogg (ikiwiki)" +#: plinth/modules/ikiwiki/__init__.py:41 +#, fuzzy +#| msgid "Enable ikiwiki" +msgid "ikiwiki" +msgstr "Aktivera ikiwiki" -#: plinth/modules/ikiwiki/__init__.py:42 +#: plinth/modules/ikiwiki/__init__.py:43 +msgid "Wiki and Blog" +msgstr "Wiki och Blogg" + +#: plinth/modules/ikiwiki/__init__.py:46 msgid "" "ikiwiki is a simple wiki and blog application. It supports several " "lightweight markup languages, including Markdown, and common blogging " "functionality such as comments and RSS feeds. When enabled, the blogs and " -"wikis will be available from /ikiwiki." +"wikis will be available at /ikiwiki (once created)." +msgstr "" + +#: plinth/modules/ikiwiki/__init__.py:53 +#, python-brace-format +msgid "" +"Only {box_name} users in the admin group can create and " +"manage blogs and wikis, but any user in the wiki group can " +"edit existing ones. In the User " +"Configuration you can change these permissions or add new users." msgstr "" #: plinth/modules/ikiwiki/forms.py:34 @@ -1361,16 +1425,20 @@ msgid "Delete Wiki or Blog" msgstr "Ta Bort Wiki eller Blogg" #: plinth/modules/infinoted/__init__.py:43 -msgid "" -"Gobby Server \n" -" (infinoted)" +msgid "infinoted" msgstr "" -#: plinth/modules/infinoted/__init__.py:46 +#: plinth/modules/infinoted/__init__.py:45 +#, fuzzy +#| msgid "DNS Server" +msgid "Gobby Server" +msgstr "DNS-Server" + +#: plinth/modules/infinoted/__init__.py:48 msgid "infinoted is a server for Gobby, a collaborative text editor." msgstr "" -#: plinth/modules/infinoted/__init__.py:49 +#: plinth/modules/infinoted/__init__.py:51 #, python-brace-format msgid "" "To use it, download Gobby, desktop " @@ -1379,29 +1447,38 @@ msgid "" msgstr "" #: plinth/modules/jsxc/__init__.py:36 -msgid "" -"Chat Client \n" -" (JSXC)" +msgid "JSXC" msgstr "" -#: plinth/modules/jsxc/__init__.py:40 +#: plinth/modules/jsxc/__init__.py:38 +msgid "Chat Client" +msgstr "" + +#: plinth/modules/jsxc/__init__.py:42 msgid "" "JSXC is a web client for XMPP. Typically it is used with an XMPP server " "running locally." msgstr "" -#: plinth/modules/jsxc/__init__.py:78 +#: plinth/modules/jsxc/__init__.py:80 msgid "" "Chat Client \n" " (jsxc)" msgstr "" -#: plinth/modules/letsencrypt/__init__.py:39 -#: plinth/modules/letsencrypt/__init__.py:64 -msgid "Certificates (Let's Encrypt)" +#: plinth/modules/letsencrypt/__init__.py:40 +#, fuzzy +#| msgid "Certificates (Let's Encrypt)" +msgid "Let's Encrypt" msgstr "Certifikat (Let's Encrypt)" -#: plinth/modules/letsencrypt/__init__.py:43 +#: plinth/modules/letsencrypt/__init__.py:42 +#, fuzzy +#| msgid "Certificate Status" +msgid "Certificates" +msgstr "Certifikatets status" + +#: plinth/modules/letsencrypt/__init__.py:46 #, fuzzy, python-brace-format #| msgid "" #| "A digital certficate allows users of a web service to verify the identity " @@ -1422,7 +1499,7 @@ msgstr "" "domän. Detta sker genom att den bevisar sig vara ägare till en domän för " "Let's Encrypt, en auktoriserad certifikatutfärdare ." -#: plinth/modules/letsencrypt/__init__.py:50 +#: plinth/modules/letsencrypt/__init__.py:53 #, fuzzy #| msgid "" #| "Let's Encrypt is a free, automated, and open certificate authority, run " @@ -1457,66 +1534,110 @@ msgstr "Säkerhet för webbsida" msgid "Actions" msgstr "Åtgärder" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:56 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:62 #, fuzzy, python-format #| msgid "Expires on %(expiry_date)s" msgid "Valid, expires on %(expiry_date)s" msgstr "Giltig tills %(expiry_date)s" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:63 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:69 #, fuzzy #| msgid "Revoke" msgid "Revoked" msgstr "Återkalla" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:67 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:73 #, fuzzy, python-format #| msgid "Expires on %(expiry_date)s" msgid "Expired on %(expiry_date)s" msgstr "Giltig tills %(expiry_date)s" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:71 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:77 #, fuzzy #| msgid "No certficate" msgid "Invalid test certificate" msgstr "Inget certfikat" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:75 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:81 #, python-format msgid "Invalid (%(reason)s)" msgstr "" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:82 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:88 #, fuzzy #| msgid "No certficate" msgid "No certificate" msgstr "Inget certfikat" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:99 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:105 msgid "Re-obtain" msgstr "Återfå" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:105 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:111 #: plinth/modules/networks/templates/connection_show.html:63 #: plinth/modules/snapshot/templates/snapshot.html:34 msgid "Delete" msgstr "Ta bort" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:112 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:118 msgid "Revoke" msgstr "Återkalla" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:120 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:126 msgid "Obtain" msgstr "Skaffa" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:133 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:149 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:156 +#, fuzzy +#| msgid "Update URL" +msgid "Update config" +msgstr "Adress för uppdateringar" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:161 +#, python-format +msgid "" +"\n" +" Let Plinth manage certificate renewal of\n" +" %(current_domain)s (recommended)\n" +" " +msgstr "" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:166 +msgid "" +"\n" +" Let Plinth manage certificate renewal of the current domain " +"(recommended)\n" +" " +msgstr "" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:175 +#, python-format +msgid "" +"If %(box_name)s manages the certificate renewal for the current domain, it " +"will ensure that all apps that use the certificate can use it, as soon as it " +"gets renewed." +msgstr "" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:181 +msgid "" +"No certificate available for the current domain. First obtain a " +"certificate to enable management of its renewal." +msgstr "" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:186 +msgid "" +"No current domain is configured. First configure a domain to enable " +"management of its certificates." +msgstr "" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:195 msgid "" "No domains have been configured. Configure domains to be able to obtain " "certificates for them." msgstr "" -#: plinth/modules/letsencrypt/views.py:55 +#: plinth/modules/letsencrypt/views.py:57 #, fuzzy, python-brace-format #| msgid "Certificate successfully revoked for domain {domain}" msgid "" @@ -1524,40 +1645,69 @@ msgid "" "moments to take effect." msgstr "Certifikatet återkallat för domänen {domain}" -#: plinth/modules/letsencrypt/views.py:61 +#: plinth/modules/letsencrypt/views.py:63 #, python-brace-format msgid "Failed to revoke certificate for domain {domain}: {error}" msgstr "Det gick inte att återkalla certifikatet för domänen {domain}: {error}" -#: plinth/modules/letsencrypt/views.py:73 +#: plinth/modules/letsencrypt/views.py:75 #, python-brace-format msgid "Certificate successfully obtained for domain {domain}" msgstr "Certifikat erhållet för domänen {domain}" -#: plinth/modules/letsencrypt/views.py:78 +#: plinth/modules/letsencrypt/views.py:81 #, python-brace-format msgid "Failed to obtain certificate for domain {domain}: {error}" msgstr "Det gick inte att erhålla certifikat för domänen {domain}: {error}" #: plinth/modules/letsencrypt/views.py:90 +#: plinth/modules/letsencrypt/views.py:109 +#, fuzzy, python-brace-format +#| msgid "Certificate successfully revoked for domain {domain}" +msgid "Certificate renewal management enabled for {domain}." +msgstr "Certifikatet återkallat för domänen {domain}" + +#: plinth/modules/letsencrypt/views.py:95 +#, fuzzy, python-brace-format +#| msgid "Failed to revoke certificate for domain {domain}: {error}" +msgid "Failed to enable certificate renewal management for {domain}: {error}" +msgstr "Det gick inte att återkalla certifikatet för domänen {domain}: {error}" + +#: plinth/modules/letsencrypt/views.py:112 +#, fuzzy, python-brace-format +#| msgid "Certificate successfully revoked for domain {domain}" +msgid "Certificate renewal management disabled for {domain}." +msgstr "Certifikatet återkallat för domänen {domain}" + +#: plinth/modules/letsencrypt/views.py:118 +#, fuzzy, python-brace-format +#| msgid "Failed to obtain certificate for domain {domain}: {error}" +msgid "Failed to switch certificate renewal management for {domain}: {error}" +msgstr "Det gick inte att erhålla certifikat för domänen {domain}: {error}" + +#: plinth/modules/letsencrypt/views.py:134 +#, fuzzy, python-brace-format +#| msgid "Failed to revoke certificate for domain {domain}: {error}" +msgid "Failed to disable certificate renewal management for {domain}: {error}" +msgstr "Det gick inte att återkalla certifikatet för domänen {domain}: {error}" + +#: plinth/modules/letsencrypt/views.py:141 #, fuzzy, python-brace-format #| msgid "Certificate successfully revoked for domain {domain}" msgid "Certificate successfully deleted for domain {domain}" msgstr "Certifikatet återkallat för domänen {domain}" -#: plinth/modules/letsencrypt/views.py:95 +#: plinth/modules/letsencrypt/views.py:146 #, fuzzy, python-brace-format #| msgid "Failed to revoke certificate for domain {domain}: {error}" msgid "Failed to delete certificate for domain {domain}: {error}" msgstr "Det gick inte att återkalla certifikatet för domänen {domain}: {error}" #: plinth/modules/matrixsynapse/__init__.py:41 -msgid "" -"Chat Server \n" -" (Matrix Synapse)" +msgid "Matrix Synapse" msgstr "" -#: plinth/modules/matrixsynapse/__init__.py:44 +#: plinth/modules/matrixsynapse/__init__.py:46 msgid "" "Matrix is an new " "ecosystem for open, federated instant messaging and VoIP. Synapse is a " @@ -1567,19 +1717,13 @@ msgid "" "converse with users on all other Matrix servers via federation." msgstr "" -#: plinth/modules/matrixsynapse/__init__.py:52 +#: plinth/modules/matrixsynapse/__init__.py:54 msgid "" "To communicate, you can use the available clients for mobile, desktop and the web. Riot client is recommended." msgstr "" -#: plinth/modules/matrixsynapse/forms.py:31 -#, fuzzy -#| msgid "Invalid domain name" -msgid "Select the domain name" -msgstr "Ogiltigt domännamn" - #: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:34 msgid "" "Matrix service needs to be configured for a domain. Users on other Matrix " @@ -1611,12 +1755,16 @@ msgid "" msgstr "" #: plinth/modules/minetest/__init__.py:48 -msgid "" -"Block Sandbox \n" -" (Minetest)" +msgid "Minetest" msgstr "" -#: plinth/modules/minetest/__init__.py:52 +#: plinth/modules/minetest/__init__.py:50 +#, fuzzy +#| msgid "Blocked" +msgid "Block Sandbox" +msgstr "Blockerade" + +#: plinth/modules/minetest/__init__.py:54 #, python-brace-format msgid "" "Minetest is a multiplayer infinite-world block sandbox. This module enables " @@ -1786,7 +1934,7 @@ msgstr "" #: plinth/modules/monkeysphere/templates/monkeysphere.html:87 #: plinth/modules/monkeysphere/templates/monkeysphere_details.html:60 -#: plinth/service.py:117 +#: plinth/service.py:116 msgid "Web Server" msgstr "" @@ -1893,14 +2041,16 @@ msgid "Error occurred while publishing key." msgstr "Fel uppstod när nyckeln publicerades." #: plinth/modules/mumble/__init__.py:35 +msgid "Mumble" +msgstr "" + +#: plinth/modules/mumble/__init__.py:37 #, fuzzy #| msgid "Voice Chat (Mumble)" -msgid "" -"Voice Chat \n" -" (Mumble)" +msgid "Voice Chat" msgstr "Röstchatt (Mumble)" -#: plinth/modules/mumble/__init__.py:44 +#: plinth/modules/mumble/__init__.py:46 msgid "" "Mumble is an open source, low-latency, encrypted, high quality voice chat " "software." @@ -1908,7 +2058,7 @@ msgstr "" "Mumble är ett program för röstchatt med öppen källkod, låg latens, " "kryptering och hög ljudkvalitet." -#: plinth/modules/mumble/__init__.py:47 +#: plinth/modules/mumble/__init__.py:49 msgid "" "You can connect to your Mumble server on the regular Mumble port 64738. Clients to connect to Mumble from your " @@ -2433,7 +2583,7 @@ msgid "This connection is not active." msgstr "" #: plinth/modules/networks/templates/connection_show.html:266 -#: plinth/modules/security/__init__.py:32 plinth/modules/security/views.py:46 +#: plinth/modules/security/__init__.py:32 plinth/modules/security/views.py:48 msgid "Security" msgstr "" @@ -2529,12 +2679,14 @@ msgid "Inactive" msgstr "" #: plinth/modules/openvpn/__init__.py:42 -msgid "" -"Virtual Private Network \n" -" (OpenVPN)" +msgid "OpenVPN" msgstr "" -#: plinth/modules/openvpn/__init__.py:46 +#: plinth/modules/openvpn/__init__.py:44 +msgid "Virtual Private Network" +msgstr "" + +#: plinth/modules/openvpn/__init__.py:48 #, python-brace-format msgid "" "Virtual Private Network (VPN) is a technique for securely connecting two " @@ -2545,7 +2697,7 @@ msgid "" "security and anonymity." msgstr "" -#: plinth/modules/openvpn/__init__.py:84 +#: plinth/modules/openvpn/__init__.py:86 #, python-brace-format msgid "" "Download Profile" @@ -2620,10 +2772,14 @@ msgid "Setup failed." msgstr "" #: plinth/modules/pagekite/__init__.py:44 -msgid "Public Visibility (PageKite)" +msgid "PageKite" msgstr "" -#: plinth/modules/pagekite/__init__.py:48 +#: plinth/modules/pagekite/__init__.py:46 +msgid "Public Visibility" +msgstr "" + +#: plinth/modules/pagekite/__init__.py:50 #, python-brace-format msgid "" "PageKite is a system for exposing {box_name} services when you don't have a " @@ -2632,33 +2788,33 @@ msgid "" "following situations:" msgstr "" -#: plinth/modules/pagekite/__init__.py:55 +#: plinth/modules/pagekite/__init__.py:57 #, python-brace-format msgid "{box_name} is behind a restricted firewall." msgstr "" -#: plinth/modules/pagekite/__init__.py:59 +#: plinth/modules/pagekite/__init__.py:61 #, python-brace-format msgid "{box_name} is connected to a (wireless) router which you don't control." msgstr "" -#: plinth/modules/pagekite/__init__.py:62 +#: plinth/modules/pagekite/__init__.py:64 msgid "" "Your ISP does not provide you an external IP address and instead provides " "Internet connection through NAT." msgstr "" -#: plinth/modules/pagekite/__init__.py:65 +#: plinth/modules/pagekite/__init__.py:67 msgid "" "Your ISP does not provide you a static IP address and your IP address " "changes evertime you connect to Internet." msgstr "" -#: plinth/modules/pagekite/__init__.py:68 +#: plinth/modules/pagekite/__init__.py:70 msgid "Your ISP limits incoming connections." msgstr "" -#: plinth/modules/pagekite/__init__.py:71 +#: plinth/modules/pagekite/__init__.py:73 #, python-brace-format msgid "" "PageKite works around NAT, firewalls and IP-address limitations by using a " @@ -2936,8 +3092,8 @@ msgstr "" msgid "Pagekite setup finished. The HTTP and HTTPS services are activated now." msgstr "" -#: plinth/modules/power/__init__.py:28 plinth/modules/power/views.py:50 -#: plinth/modules/power/views.py:65 +#: plinth/modules/power/__init__.py:28 plinth/modules/power/views.py:51 +#: plinth/modules/power/views.py:67 msgid "Power" msgstr "" @@ -2946,10 +3102,16 @@ msgid "Restart or shut down the system." msgstr "" #: plinth/modules/power/templates/power.html:28 +msgid "" +"Currently an installation or upgrade is running. Consider waiting until it's " +"finished before shutting down or restarting." +msgstr "" + +#: plinth/modules/power/templates/power.html:37 msgid "Restart »" msgstr "" -#: plinth/modules/power/templates/power.html:31 +#: plinth/modules/power/templates/power.html:40 msgid "Shut Down »" msgstr "" @@ -2959,7 +3121,14 @@ msgid "" "interface for a few minutes until the system is restarted." msgstr "" -#: plinth/modules/power/templates/power_restart.html:42 +#: plinth/modules/power/templates/power_restart.html:38 +msgid "" +"Currently an installation or upgrade is running. Consider waiting until it's " +"finished before restarting." +msgstr "" + +#: plinth/modules/power/templates/power_restart.html:52 +#: plinth/modules/power/templates/power_restart.html:55 msgid "Restart Now" msgstr "" @@ -2969,24 +3138,33 @@ msgid "" "interface after shut down." msgstr "" -#: plinth/modules/power/templates/power_shutdown.html:41 +#: plinth/modules/power/templates/power_shutdown.html:37 +msgid "" +"Currently an installation or upgrade is running. Consider waiting until it's " +"finished before shutting down." +msgstr "" + +#: plinth/modules/power/templates/power_shutdown.html:51 +#: plinth/modules/power/templates/power_shutdown.html:54 msgid "Shut Down Now" msgstr "" #: plinth/modules/privoxy/__init__.py:43 -msgid "" -"Web Proxy \n" -" (Privoxy)" +msgid "Privoxy" msgstr "" -#: plinth/modules/privoxy/__init__.py:46 +#: plinth/modules/privoxy/__init__.py:45 +msgid "Web Proxy" +msgstr "" + +#: plinth/modules/privoxy/__init__.py:48 msgid "" "Privoxy is a non-caching web proxy with advanced filtering capabilities for " "enhancing privacy, modifying web page data and HTTP headers, controlling " "access, and removing ads and other obnoxious Internet junk. " msgstr "" -#: plinth/modules/privoxy/__init__.py:52 +#: plinth/modules/privoxy/__init__.py:54 #, python-brace-format msgid "" "You can use Privoxy by modifying your browser proxy settings to your " @@ -2996,18 +3174,20 @@ msgid "" "\">http://p.p." msgstr "" -#: plinth/modules/privoxy/__init__.py:144 +#: plinth/modules/privoxy/__init__.py:147 #, python-brace-format msgid "Access {url} with proxy {proxy} on tcp{kind}" msgstr "" #: plinth/modules/quassel/__init__.py:42 -msgid "" -"IRC Client \n" -" (Quassel)" +msgid "Quassel" msgstr "" -#: plinth/modules/quassel/__init__.py:46 +#: plinth/modules/quassel/__init__.py:44 +msgid "IRC Client" +msgstr "" + +#: plinth/modules/quassel/__init__.py:48 #, python-brace-format msgid "" "Quassel is an IRC application that is split into two parts, a \"core\" and a " @@ -3018,7 +3198,7 @@ msgid "" "connect and disconnect from it." msgstr "" -#: plinth/modules/quassel/__init__.py:54 +#: plinth/modules/quassel/__init__.py:56 msgid "" "You can connect to your Quassel core on the default Quassel port 4242. " "Clients to connect to Quassel from your supported " -"client application is needed. Radicale can be accessed by any user with " -"a {box_name} login." +"radicale.org/clients/\">supported client application is needed. Radicale " +"can be accessed by any user with a {box_name} login." msgstr "" #: plinth/modules/radicale/forms.py:28 @@ -3063,14 +3244,16 @@ msgid "Access rights configuration updated" msgstr "Konfiguration uppdaterad" #: plinth/modules/repro/__init__.py:38 -#, fuzzy -#| msgid "SIP Server (repro)" -msgid "" -"SIP Server \n" -" (repro)" -msgstr "SIP-Server (repro)" +msgid "repro" +msgstr "" -#: plinth/modules/repro/__init__.py:41 +#: plinth/modules/repro/__init__.py:40 +#, fuzzy +#| msgid "DNS Server" +msgid "SIP Server" +msgstr "DNS-Server" + +#: plinth/modules/repro/__init__.py:43 msgid "" "repro provides various SIP services that a SIP softphone can utilize to " "provide audio and video calls as well as presence and instant messaging. " @@ -3079,7 +3262,7 @@ msgid "" "communications to other servers on the Internet similar to email." msgstr "" -#: plinth/modules/repro/__init__.py:48 +#: plinth/modules/repro/__init__.py:50 msgid "" "To make SIP calls, a client application is needed. Available clients include " "Jitsi (for computers) and (for Android phones)." msgstr "" -#: plinth/modules/repro/__init__.py:53 +#: plinth/modules/repro/__init__.py:55 msgid "" "Note: Before using repro, domains and users will need to " "be configured using the web-based " @@ -3097,12 +3280,14 @@ msgid "" msgstr "" #: plinth/modules/restore/__init__.py:36 -msgid "" -"Unhosted Storage \n" -" (reStore)" +msgid "reStore" msgstr "" -#: plinth/modules/restore/__init__.py:40 +#: plinth/modules/restore/__init__.py:38 +msgid "Unhosted Storage" +msgstr "" + +#: plinth/modules/restore/__init__.py:42 #, python-brace-format msgid "" "reStore is a server for unhosted web " @@ -3112,19 +3297,23 @@ msgid "" "becomes your unhosted storage server." msgstr "" -#: plinth/modules/restore/__init__.py:47 +#: plinth/modules/restore/__init__.py:49 msgid "" "You can create and edit accounts in the reStore web-" "interface." msgstr "" #: plinth/modules/roundcube/__init__.py:35 -msgid "" -"Email Client \n" -" (Roundcube)" +msgid "Roundcube" msgstr "" -#: plinth/modules/roundcube/__init__.py:38 +#: plinth/modules/roundcube/__init__.py:37 +#, fuzzy +#| msgid "Dynamic DNS Client" +msgid "Email Client" +msgstr "Klient för Dynamisk DNS" + +#: plinth/modules/roundcube/__init__.py:40 msgid "" "Roundcube webmail is a browser-based multilingual IMAP client with an " "application-like user interface. It provides full functionality you expect " @@ -3132,7 +3321,7 @@ msgid "" "manipulation, message searching and spell checking." msgstr "" -#: plinth/modules/roundcube/__init__.py:44 +#: plinth/modules/roundcube/__init__.py:46 msgid "" "You can access Roundcube from /roundcube. Provide " "the username and password of the email account you wish to access followed " @@ -3141,7 +3330,7 @@ msgid "" "server field like imaps://imap.example.com." msgstr "" -#: plinth/modules/roundcube/__init__.py:51 +#: plinth/modules/roundcube/__init__.py:53 msgid "" "For Gmail, username will be your Gmail address, password will be your Google " "account password and server will be imaps://imap.gmail.com. " @@ -3162,29 +3351,42 @@ msgid "" "services without further authorization." msgstr "" -#: plinth/modules/security/views.py:63 +#: plinth/modules/security/forms.py:35 +msgid "Fail2ban (recommended)" +msgstr "" + +#: plinth/modules/security/forms.py:36 +msgid "" +"When this option is enabled, fail2ban will limit brute force break-in " +"attempts to the SSH server and other password protected internet-services " +"which are enabled." +msgstr "" + +#: plinth/modules/security/views.py:66 #, fuzzy, python-brace-format #| msgid "Error setting time zone: {exception}" msgid "Error setting restricted access: {exception}" msgstr "Fel i inställning av tidszon: {exception}" -#: plinth/modules/security/views.py:66 +#: plinth/modules/security/views.py:69 #, fuzzy #| msgid "General Configuration" msgid "Updated security configuration" msgstr "Allmän Konfiguration" #: plinth/modules/shaarli/__init__.py:35 -msgid "" -"Bookmarks \n" -" (Shaarli)" +msgid "Shaarli" msgstr "" -#: plinth/modules/shaarli/__init__.py:38 -msgid "Shaarli allows you to save and share bookmarks." +#: plinth/modules/shaarli/__init__.py:37 +msgid "Bookmarks" msgstr "" #: plinth/modules/shaarli/__init__.py:40 +msgid "Shaarli allows you to save and share bookmarks." +msgstr "" + +#: plinth/modules/shaarli/__init__.py:42 msgid "" "When enabled, Shaarli will be available from /shaarli path on the web server. Note that Shaarli only supports a single user " @@ -3303,6 +3505,18 @@ msgstr "" msgid "Rollback to Snapshot" msgstr "" +#: plinth/modules/ssh/__init__.py:37 +msgid "Secure Shell (SSH) Server" +msgstr "" + +#: plinth/modules/ssh/__init__.py:40 +msgid "" +"A Secure Shell server uses the secure shell protocol to accept connections " +"from remote computers. An authorized remote computer can perform " +"administration tasks, copy files or run other services using such " +"connections." +msgstr "" + #: plinth/modules/sso/__init__.py:30 msgid "Single Sign On" msgstr "" @@ -3312,12 +3526,14 @@ msgid "Login" msgstr "" #: plinth/modules/syncthing/__init__.py:39 -msgid "" -"File Synchronization \n" -" (Syncthing)" +msgid "Syncthing" msgstr "" -#: plinth/modules/syncthing/__init__.py:42 +#: plinth/modules/syncthing/__init__.py:41 +msgid "File Synchronization" +msgstr "" + +#: plinth/modules/syncthing/__init__.py:44 msgid "" "Syncthing is an application to synchronize files across multiple devices, e." "g. your desktop computer and mobile phone. Creation, modification, or " @@ -3325,7 +3541,7 @@ msgid "" "other devices that also run Syncthing." msgstr "" -#: plinth/modules/syncthing/__init__.py:47 +#: plinth/modules/syncthing/__init__.py:49 #, python-brace-format msgid "" "Running Syncthing on {box_name} provides an extra synchronization point for " @@ -3336,7 +3552,7 @@ msgid "" "{box_name} is only available for users belonging to the \"admin\" group." msgstr "" -#: plinth/modules/syncthing/__init__.py:54 +#: plinth/modules/syncthing/__init__.py:56 msgid "" "When enabled, Syncthing's web interface will be available from /syncthing. Desktop and mobile clients are also Tor Project website. For " @@ -3411,36 +3641,36 @@ msgid "" "\">Tor Browser." msgstr "" -#: plinth/modules/tor/__init__.py:70 plinth/modules/tor/__init__.py:112 +#: plinth/modules/tor/__init__.py:72 plinth/modules/tor/__init__.py:114 msgid "Tor Anonymity Network" msgstr "Tor Anonymitetsnätverk" -#: plinth/modules/tor/__init__.py:76 plinth/modules/tor/__init__.py:120 +#: plinth/modules/tor/__init__.py:78 plinth/modules/tor/__init__.py:122 msgid "Tor Bridge Relay" msgstr "" -#: plinth/modules/tor/__init__.py:98 plinth/modules/tor/__init__.py:141 +#: plinth/modules/tor/__init__.py:100 plinth/modules/tor/__init__.py:143 msgid "Tor Hidden Service" msgstr "" -#: plinth/modules/tor/__init__.py:160 +#: plinth/modules/tor/__init__.py:162 msgid "Tor relay port available" msgstr "" -#: plinth/modules/tor/__init__.py:168 +#: plinth/modules/tor/__init__.py:170 msgid "Obfs3 transport registered" msgstr "" -#: plinth/modules/tor/__init__.py:174 +#: plinth/modules/tor/__init__.py:176 msgid "Obfs4 transport registered" msgstr "" -#: plinth/modules/tor/__init__.py:211 +#: plinth/modules/tor/__init__.py:213 #, python-brace-format msgid "Access URL {url} on tcp{kind} via Tor" msgstr "" -#: plinth/modules/tor/__init__.py:222 +#: plinth/modules/tor/__init__.py:224 #, python-brace-format msgid "Confirm Tor usage at {url} on tcp{kind}" msgstr "" @@ -3586,18 +3816,22 @@ msgid "An error occurred during configuration." msgstr "" #: plinth/modules/transmission/__init__.py:38 -msgid "" -"BitTorrent \n" -" (Transmission)" +msgid "Transmission" msgstr "" -#: plinth/modules/transmission/__init__.py:41 +#: plinth/modules/transmission/__init__.py:40 +#, fuzzy +#| msgid "Deluge BitTorrent" +msgid "BitTorrent" +msgstr "Deluge BitTorrent" + +#: plinth/modules/transmission/__init__.py:43 msgid "" "BitTorrent is a peer-to-peer file sharing protocol. Transmission daemon " "handles Bitorrent file sharing. Note that BitTorrent is not anonymous." msgstr "" -#: plinth/modules/transmission/__init__.py:44 +#: plinth/modules/transmission/__init__.py:46 msgid "" "Access the web interface at /transmission." msgstr "" @@ -3623,27 +3857,30 @@ msgid "" "hashed format. To set a new password, enter the password in plain text." msgstr "" -#: plinth/modules/ttrss/__init__.py:37 -msgid "" -"News Feed Reader \n" -" (Tiny Tiny RSS)" +#: plinth/modules/ttrss/__init__.py:39 +msgid "Tiny Tiny RSS" msgstr "" -#: plinth/modules/ttrss/__init__.py:40 +#: plinth/modules/ttrss/__init__.py:41 +msgid "News Feed Reader" +msgstr "" + +#: plinth/modules/ttrss/__init__.py:44 msgid "" "Tiny Tiny RSS is a news feed (RSS/Atom) reader and aggregator, designed to " "allow reading news from any location, while feeling as close to a real " "desktop application as possible." msgstr "" -#: plinth/modules/ttrss/__init__.py:44 -#, fuzzy +#: plinth/modules/ttrss/__init__.py:49 +#, fuzzy, python-brace-format #| msgid "" #| "When enabled, the blogs and wikis will be available from /ikiwiki." msgid "" "When enabled, Tiny Tiny RSS will be available from /tt-" -"rss path on the web server." +"rss path on the web server. It can be accessed by any user with a {box_name} login." msgstr "" "När aktiverade kommer bloggar och wikis att vara tillgänglig på /ikiwiki." @@ -3947,15 +4184,11 @@ msgstr "Instänllningar oförändrade" msgid "configuration file: {file}" msgstr "Konfiguration" -#: plinth/service.py:119 +#: plinth/service.py:118 msgid "Web Server over Secure Socket Layer" msgstr "" -#: plinth/service.py:121 -msgid "Secure Shell (SSH) Server" -msgstr "" - -#: plinth/service.py:123 +#: plinth/service.py:120 #, python-brace-format msgid "{box_name} Web Interface (Plinth)" msgstr "" @@ -3998,11 +4231,11 @@ msgid "" "\"%(status_log_url)s\">status log to the bug report." msgstr "" -#: plinth/templates/apps.html:25 +#: plinth/templates/apps.html:33 msgid "Services and Applications" msgstr "Tjänster och Applikationer" -#: plinth/templates/apps.html:28 +#: plinth/templates/apps.html:36 #, python-format msgid "" "You can install and run various services and applications on your " @@ -4013,7 +4246,7 @@ msgstr "" "%(box_name)s. Klicka på valfri länk till vänster för att läsa beskrivning av " "applikationen och välja för att installera den." -#: plinth/templates/apps.html:36 +#: plinth/templates/apps.html:44 msgid "" "This box can be your photo sharing site, your instant messaging site, your " "social networking site, your news site. Remember web portals? We can be " @@ -4185,21 +4418,41 @@ msgstr "" msgid "%(percentage)s%% complete" msgstr "" -#: plinth/templates/system.html:25 +#: plinth/templates/system.html:33 msgid "System Configuration" msgstr "" -#: plinth/templates/system.html:28 +#: plinth/templates/system.html:36 #, python-format msgid "Here you can administrate the underlying system of your %(box_name)s." msgstr "" -#: plinth/templates/system.html:34 +#: plinth/templates/system.html:42 #, python-format msgid "" "The options affect the %(box_name)s at its most general level, so be careful!" msgstr "" +#, fuzzy +#~| msgid "Invalid domain name" +#~ msgid "Select the domain name to be used for diaspora*" +#~ msgstr "Ogiltigt domännamn" + +#~ msgid "Wiki and Blog (ikiwiki)" +#~ msgstr "Wiki och Blogg (ikiwiki)" + +#, fuzzy +#~| msgid "Invalid domain name" +#~ msgid "Select the domain name" +#~ msgstr "Ogiltigt domännamn" + +#, fuzzy +#~| msgid "SIP Server (repro)" +#~ msgid "" +#~ "SIP Server \n" +#~ " (repro)" +#~ msgstr "SIP-Server (repro)" + #~ msgid "Applications" #~ msgstr "Applikationer" @@ -4334,12 +4587,6 @@ msgstr "" #~ msgid "BitTorrent (Deluge)" #~ msgstr "BitTorrent (Deluge)" -#~ msgid "Deluge BitTorrent" -#~ msgstr "Deluge BitTorrent" - -#~ msgid "Enable Deluge" -#~ msgstr "Aktivera Deluge" - #~ msgid "System Diagnostics" #~ msgstr "Systemdiagnostik" @@ -4356,14 +4603,6 @@ msgstr "" #~ msgid "ikiwiki wikis and blogs" #~ msgstr "ikiwiki wikis och bloggar" -#~| msgid "Enable Ikiwiki" -#~ msgid "Enable ikiwiki" -#~ msgstr "Aktivera ikiwiki" - -#~| msgid "Wiki & Blog" -#~ msgid "Wiki and Blog" -#~ msgstr "Wiki och Blogg" - #~ msgid "Generate PGP Key" #~ msgstr "Generera PGP-nyckel" diff --git a/plinth/locale/ta/LC_MESSAGES/django.po b/plinth/locale/ta/LC_MESSAGES/django.po index 8cd925ac6..c1210c4aa 100644 --- a/plinth/locale/ta/LC_MESSAGES/django.po +++ b/plinth/locale/ta/LC_MESSAGES/django.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2017-07-10 22:56-0400\n" +"POT-Creation-Date: 2017-09-24 11:24-0400\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -18,37 +18,37 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: plinth/action_utils.py:254 +#: plinth/action_utils.py:259 #, python-brace-format msgid "Listening on {kind} port {listen_address}:{port}" msgstr "" -#: plinth/action_utils.py:257 +#: plinth/action_utils.py:262 #, python-brace-format msgid "Listening on {kind} port {port}" msgstr "" -#: plinth/action_utils.py:352 +#: plinth/action_utils.py:357 #, python-brace-format msgid "Access URL {url} on tcp{kind}" msgstr "" -#: plinth/action_utils.py:356 +#: plinth/action_utils.py:361 #, python-brace-format msgid "Access URL {url}" msgstr "" -#: plinth/action_utils.py:386 +#: plinth/action_utils.py:391 #, python-brace-format msgid "Connect to {host}:{port}" msgstr "" -#: plinth/action_utils.py:389 +#: plinth/action_utils.py:394 #, python-brace-format msgid "Cannot connect to {host}:{port}" msgstr "" -#: plinth/context_processors.py:38 plinth/views.py:49 +#: plinth/context_processors.py:38 plinth/views.py:52 msgid "FreedomBox" msgstr "" @@ -57,7 +57,13 @@ msgid "Enable application" msgstr "" #: plinth/forms.py:45 -msgid "Select the domain name to be used for this application" +msgid "Select a domain name to be used with this application" +msgstr "" + +#: plinth/forms.py:47 +msgid "" +"Warning! The application may not work properly if domain name is changed " +"later." msgstr "" #: plinth/middleware.py:71 @@ -90,19 +96,21 @@ msgid "" msgstr "" #: plinth/modules/bind/__init__.py:34 -msgid "" -"Domain Name Server \n" -" (BIND)" +msgid "BIND" msgstr "" -#: plinth/modules/bind/__init__.py:43 +#: plinth/modules/bind/__init__.py:36 +msgid "Domain Name Server" +msgstr "" + +#: plinth/modules/bind/__init__.py:45 msgid "" "BIND is open source software that enables you to publish your Domain Name " "System (DNS) information on the Internet, and to resolve DNS queries for " "your users." msgstr "" -#: plinth/modules/bind/__init__.py:47 +#: plinth/modules/bind/__init__.py:49 msgid "" "BIND is by far the most widely used DNS software on the Internet, providing " "a robust and stable platform on top of which organizations can build " @@ -147,7 +155,7 @@ msgid "Enable forwarding to set forwarding DNS servers" msgstr "" #: plinth/modules/config/config.py:88 plinth/modules/config/config.py:125 -#: plinth/modules/dynamicdns/dynamicdns.py:140 +#: plinth/modules/dynamicdns/dynamicdns.py:148 msgid "Invalid domain name" msgstr "" @@ -170,7 +178,7 @@ msgstr "" #: plinth/modules/config/config.py:112 plinth/modules/config/config.py:169 #: plinth/modules/config/config.py:285 -#: plinth/modules/dynamicdns/dynamicdns.py:135 +#: plinth/modules/dynamicdns/dynamicdns.py:143 msgid "Domain Name" msgstr "" @@ -194,7 +202,7 @@ msgid "Language for this web administration interface" msgstr "" #: plinth/modules/config/config.py:151 -#: plinth/modules/dynamicdns/dynamicdns.py:37 +#: plinth/modules/dynamicdns/dynamicdns.py:45 #: plinth/modules/ikiwiki/views.py:37 #: plinth/modules/tahoe/templates/tahoe-pre-setup.html:39 msgid "Configure" @@ -274,16 +282,18 @@ msgid "Time zone set" msgstr "" #: plinth/modules/deluge/__init__.py:39 -msgid "" -"BitTorrent Web Client \n" -" (Deluge)" +msgid "Deluge" msgstr "" -#: plinth/modules/deluge/__init__.py:42 -msgid "Deluge is a BitTorrent client that features a Web UI." +#: plinth/modules/deluge/__init__.py:41 +msgid "BitTorrent Web Client" msgstr "" #: plinth/modules/deluge/__init__.py:44 +msgid "Deluge is a BitTorrent client that features a Web UI." +msgstr "" + +#: plinth/modules/deluge/__init__.py:46 msgid "" "When enabled, the Deluge web client will be available from /deluge path on the web server. The default password is 'deluge', but " @@ -344,19 +354,22 @@ msgstr "" msgid "Result" msgstr "" -#: plinth/modules/diaspora/__init__.py:61 +#: plinth/modules/diaspora/__init__.py:51 +msgid "diaspora*" +msgstr "" + +#: plinth/modules/diaspora/__init__.py:53 +msgid "Federated Social Network" +msgstr "" + +#: plinth/modules/diaspora/__init__.py:62 msgid "" "diaspora* is a decentralized social network where you can store and control " "your own data." msgstr "" -#: plinth/modules/diaspora/forms.py:30 -msgid "Select the domain name to be used for diaspora*" -msgstr "" - -#: plinth/modules/diaspora/forms.py:32 -msgid "" -"Warning! Do not change the FreedomBox domain name after setting up diaspora*" +#: plinth/modules/diaspora/forms.py:31 +msgid "Enable new user registrations" msgstr "" #: plinth/modules/diaspora/templates/diaspora-post-setup.html:32 @@ -383,7 +396,21 @@ msgstr "" msgid "Update setup" msgstr "" -#: plinth/modules/disks/__init__.py:33 plinth/modules/disks/views.py:39 +#: plinth/modules/diaspora/views.py:96 plinth/modules/ejabberd/views.py:60 +#: plinth/modules/openvpn/views.py:145 plinth/modules/tor/views.py:134 +#: plinth/views.py:112 +msgid "Setting unchanged" +msgstr "" + +#: plinth/modules/diaspora/views.py:100 +msgid "User registrations enabled" +msgstr "" + +#: plinth/modules/diaspora/views.py:104 +msgid "User registrations disabled" +msgstr "" + +#: plinth/modules/disks/__init__.py:33 plinth/modules/disks/views.py:45 msgid "Disks" msgstr "" @@ -425,7 +452,7 @@ msgstr "" #: plinth/modules/disks/templates/disks.html:90 #: plinth/modules/disks/templates/disks.html:102 #: plinth/modules/disks/templates/disks_expand.html:45 -#: plinth/modules/disks/views.py:56 +#: plinth/modules/disks/views.py:62 msgid "Expand Root Partition" msgstr "" @@ -443,45 +470,52 @@ msgid "" "root partition." msgstr "" -#: plinth/modules/disks/views.py:65 +#: plinth/modules/disks/views.py:71 #, python-brace-format msgid "Error expanding partition: {exception}" msgstr "" -#: plinth/modules/disks/views.py:68 +#: plinth/modules/disks/views.py:74 msgid "Partition expanded successfully." msgstr "" -#: plinth/modules/disks/views.py:77 +#: plinth/modules/disks/views.py:93 +#, python-format, python-brace-format +msgid "" +"Warning: Low space on system partition ({percent_used}% used, {free_space} " +"free)." +msgstr "" + +#: plinth/modules/disks/views.py:130 #, python-brace-format msgid "{disk_size:.1f} bytes" msgstr "" -#: plinth/modules/disks/views.py:81 +#: plinth/modules/disks/views.py:134 #, python-brace-format msgid "{disk_size:.1f} KiB" msgstr "" -#: plinth/modules/disks/views.py:85 +#: plinth/modules/disks/views.py:138 #, python-brace-format msgid "{disk_size:.1f} MiB" msgstr "" -#: plinth/modules/disks/views.py:89 +#: plinth/modules/disks/views.py:142 #, python-brace-format msgid "{disk_size:.1f} GiB" msgstr "" -#: plinth/modules/disks/views.py:92 +#: plinth/modules/disks/views.py:145 #, python-brace-format msgid "{disk_size:.1f} TiB" msgstr "" -#: plinth/modules/dynamicdns/__init__.py:33 +#: plinth/modules/dynamicdns/__init__.py:35 msgid "Dynamic DNS Client" msgstr "" -#: plinth/modules/dynamicdns/__init__.py:37 +#: plinth/modules/dynamicdns/__init__.py:39 #, python-brace-format msgid "" "If your Internet provider changes your IP address periodically (i.e. every " @@ -489,7 +523,7 @@ msgid "" "prevent others from finding services which are provided by this {box_name}." msgstr "" -#: plinth/modules/dynamicdns/__init__.py:43 +#: plinth/modules/dynamicdns/__init__.py:45 msgid "" "The solution is to assign a DNS name to your IP address and update the DNS " "name every time your IP is changed by your Internet provider. Dynamic DNS " @@ -500,11 +534,16 @@ msgid "" "IP address." msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:35 plinth/modules/help/help.py:40 +#: plinth/modules/dynamicdns/__init__.py:67 +#: plinth/modules/dynamicdns/dynamicdns.py:377 +msgid "Dynamic DNS Service" +msgstr "" + +#: plinth/modules/dynamicdns/dynamicdns.py:43 plinth/modules/help/help.py:40 msgid "About" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:39 +#: plinth/modules/dynamicdns/dynamicdns.py:47 #: plinth/modules/firewall/templates/firewall.html:47 #: plinth/modules/networks/templates/connection_show.html:261 #: plinth/modules/openvpn/templates/openvpn.html:67 @@ -513,46 +552,46 @@ msgstr "" msgid "Status" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:63 +#: plinth/modules/dynamicdns/dynamicdns.py:71 msgid "" "The Variables <User>, <Pass>, <Ip>, <Domain> may be " "used within the URL. For details see the update URL templates of the example " "providers." msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:67 +#: plinth/modules/dynamicdns/dynamicdns.py:75 msgid "" "Please choose an update protocol according to your provider. If your " "provider does not support the GnuDIP protocol or your provider is not listed " "you may use the update URL of your provider." msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:72 +#: plinth/modules/dynamicdns/dynamicdns.py:80 msgid "" "Please do not enter a URL here (like \"https://example.com/\") but only the " "hostname of the GnuDIP server (like \"example.com\")." msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:76 +#: plinth/modules/dynamicdns/dynamicdns.py:84 #, python-brace-format msgid "The public domain name you want to use to reach your {box_name}." msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:79 +#: plinth/modules/dynamicdns/dynamicdns.py:87 msgid "Use this option if your provider uses self signed certificates." msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:82 +#: plinth/modules/dynamicdns/dynamicdns.py:90 msgid "" "If this option is selected, your username and password will be used for HTTP " "basic authentication." msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:85 +#: plinth/modules/dynamicdns/dynamicdns.py:93 msgid "Leave this field empty if you want to keep your current password." msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:88 +#: plinth/modules/dynamicdns/dynamicdns.py:96 #, python-brace-format msgid "" "Optional Value. If your {box_name} is not connected directly to the Internet " @@ -561,82 +600,82 @@ msgid "" "(example: http://myip.datasystems24.de)." msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:96 +#: plinth/modules/dynamicdns/dynamicdns.py:104 msgid "The username that was used when the account was created." msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:107 +#: plinth/modules/dynamicdns/dynamicdns.py:115 msgid "Enable Dynamic DNS" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:110 +#: plinth/modules/dynamicdns/dynamicdns.py:118 msgid "Service Type" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:115 +#: plinth/modules/dynamicdns/dynamicdns.py:123 msgid "GnuDIP Server Address" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:120 +#: plinth/modules/dynamicdns/dynamicdns.py:128 msgid "Invalid server name" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:123 +#: plinth/modules/dynamicdns/dynamicdns.py:131 msgid "Update URL" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:127 +#: plinth/modules/dynamicdns/dynamicdns.py:135 msgid "Accept all SSL certificates" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:131 +#: plinth/modules/dynamicdns/dynamicdns.py:139 msgid "Use HTTP basic authentication" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:143 +#: plinth/modules/dynamicdns/dynamicdns.py:151 #: plinth/modules/networks/forms.py:228 plinth/modules/transmission/forms.py:37 msgid "Username" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:146 +#: plinth/modules/dynamicdns/dynamicdns.py:154 #: plinth/modules/networks/forms.py:229 plinth/modules/transmission/forms.py:41 msgid "Password" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:149 +#: plinth/modules/dynamicdns/dynamicdns.py:157 #: plinth/modules/networks/forms.py:231 msgid "Show password" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:153 +#: plinth/modules/dynamicdns/dynamicdns.py:161 msgid "URL to look up public IP" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:179 +#: plinth/modules/dynamicdns/dynamicdns.py:187 msgid "Please provide an update URL or a GnuDIP server address" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:184 +#: plinth/modules/dynamicdns/dynamicdns.py:192 msgid "Please provide a GnuDIP username" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:188 +#: plinth/modules/dynamicdns/dynamicdns.py:196 msgid "Please provide a GnuDIP domain name" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:193 +#: plinth/modules/dynamicdns/dynamicdns.py:201 msgid "Please provide a password" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:211 +#: plinth/modules/dynamicdns/dynamicdns.py:219 msgid "Configure Dynamic DNS" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:232 +#: plinth/modules/dynamicdns/dynamicdns.py:240 msgid "Dynamic DNS Status" msgstr "" -#: plinth/modules/dynamicdns/dynamicdns.py:364 +#: plinth/modules/dynamicdns/dynamicdns.py:381 #: plinth/modules/openvpn/views.py:143 plinth/modules/transmission/views.py:72 msgid "Configuration updated" msgstr "" @@ -691,23 +730,28 @@ msgstr "" msgid "Last update" msgstr "" -#: plinth/modules/ejabberd/__init__.py:42 -msgid "" -"Chat Server \n" -" (ejabberd)" +#: plinth/modules/ejabberd/__init__.py:45 +msgid "ejabberd" msgstr "" -#: plinth/modules/ejabberd/__init__.py:45 +#: plinth/modules/ejabberd/__init__.py:47 +#: plinth/modules/matrixsynapse/__init__.py:43 +msgid "Chat Server" +msgstr "" + +#: plinth/modules/ejabberd/__init__.py:50 msgid "" "XMPP is an open and standardized communication protocol. Here you can run " "and configure your XMPP server, called ejabberd." msgstr "" -#: plinth/modules/ejabberd/__init__.py:48 +#: plinth/modules/ejabberd/__init__.py:54 +#, python-brace-format msgid "" -"To actually communicate, you can use the web client or any other XMPP client." +"To actually communicate, you can use the web " +"client or any other XMPP client. When enabled, ejabberd can be accessed by " +"any user with a {box_name} login." msgstr "" #: plinth/modules/ejabberd/forms.py:33 @@ -745,16 +789,11 @@ msgstr "" msgid "Configuration" msgstr "" -#: plinth/modules/ejabberd/views.py:60 plinth/modules/openvpn/views.py:145 -#: plinth/modules/tor/views.py:134 plinth/views.py:103 -msgid "Setting unchanged" -msgstr "" - -#: plinth/modules/ejabberd/views.py:64 plinth/views.py:107 +#: plinth/modules/ejabberd/views.py:64 plinth/views.py:116 msgid "Application enabled" msgstr "" -#: plinth/modules/ejabberd/views.py:67 plinth/views.py:110 +#: plinth/modules/ejabberd/views.py:67 plinth/views.py:119 msgid "Application disabled" msgstr "" @@ -800,13 +839,13 @@ msgid "Service/Port" msgstr "" #: plinth/modules/firewall/templates/firewall.html:65 -#: plinth/modules/letsencrypt/templates/letsencrypt.html:88 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:94 #: plinth/modules/names/templates/names.html:49 msgid "Enabled" msgstr "" #: plinth/modules/firewall/templates/firewall.html:68 -#: plinth/modules/letsencrypt/templates/letsencrypt.html:90 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:96 #: plinth/modules/names/templates/names.html:51 #: plinth/modules/networks/forms.py:63 msgid "Disabled" @@ -1017,16 +1056,29 @@ msgid "" "before submitting the bug report." msgstr "" -#: plinth/modules/ikiwiki/__init__.py:39 -msgid "Wiki and Blog (ikiwiki)" +#: plinth/modules/ikiwiki/__init__.py:41 +msgid "ikiwiki" msgstr "" -#: plinth/modules/ikiwiki/__init__.py:42 +#: plinth/modules/ikiwiki/__init__.py:43 +msgid "Wiki and Blog" +msgstr "" + +#: plinth/modules/ikiwiki/__init__.py:46 msgid "" "ikiwiki is a simple wiki and blog application. It supports several " "lightweight markup languages, including Markdown, and common blogging " "functionality such as comments and RSS feeds. When enabled, the blogs and " -"wikis will be available from /ikiwiki." +"wikis will be available at /ikiwiki (once created)." +msgstr "" + +#: plinth/modules/ikiwiki/__init__.py:53 +#, python-brace-format +msgid "" +"Only {box_name} users in the admin group can create and " +"manage blogs and wikis, but any user in the wiki group can " +"edit existing ones. In the User " +"Configuration you can change these permissions or add new users." msgstr "" #: plinth/modules/ikiwiki/forms.py:34 @@ -1138,16 +1190,18 @@ msgid "Delete Wiki or Blog" msgstr "" #: plinth/modules/infinoted/__init__.py:43 -msgid "" -"Gobby Server \n" -" (infinoted)" +msgid "infinoted" msgstr "" -#: plinth/modules/infinoted/__init__.py:46 +#: plinth/modules/infinoted/__init__.py:45 +msgid "Gobby Server" +msgstr "" + +#: plinth/modules/infinoted/__init__.py:48 msgid "infinoted is a server for Gobby, a collaborative text editor." msgstr "" -#: plinth/modules/infinoted/__init__.py:49 +#: plinth/modules/infinoted/__init__.py:51 #, python-brace-format msgid "" "To use it, download Gobby, desktop " @@ -1156,29 +1210,34 @@ msgid "" msgstr "" #: plinth/modules/jsxc/__init__.py:36 -msgid "" -"Chat Client \n" -" (JSXC)" +msgid "JSXC" msgstr "" -#: plinth/modules/jsxc/__init__.py:40 +#: plinth/modules/jsxc/__init__.py:38 +msgid "Chat Client" +msgstr "" + +#: plinth/modules/jsxc/__init__.py:42 msgid "" "JSXC is a web client for XMPP. Typically it is used with an XMPP server " "running locally." msgstr "" -#: plinth/modules/jsxc/__init__.py:78 +#: plinth/modules/jsxc/__init__.py:80 msgid "" "Chat Client \n" " (jsxc)" msgstr "" -#: plinth/modules/letsencrypt/__init__.py:39 -#: plinth/modules/letsencrypt/__init__.py:64 -msgid "Certificates (Let's Encrypt)" +#: plinth/modules/letsencrypt/__init__.py:40 +msgid "Let's Encrypt" msgstr "" -#: plinth/modules/letsencrypt/__init__.py:43 +#: plinth/modules/letsencrypt/__init__.py:42 +msgid "Certificates" +msgstr "" + +#: plinth/modules/letsencrypt/__init__.py:46 #, python-brace-format msgid "" "A digital certificate allows users of a web service to verify the identity " @@ -1188,7 +1247,7 @@ msgid "" "Encrypt, a certificate authority (CA)." msgstr "" -#: plinth/modules/letsencrypt/__init__.py:50 +#: plinth/modules/letsencrypt/__init__.py:53 msgid "" "Let's Encrypt is a free, automated, and open certificate authority, run for " "the public's benefit by the Internet Security Research Group (ISRG). Please " @@ -1212,96 +1271,162 @@ msgstr "" msgid "Actions" msgstr "" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:56 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:62 #, python-format msgid "Valid, expires on %(expiry_date)s" msgstr "" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:63 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:69 msgid "Revoked" msgstr "" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:67 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:73 #, python-format msgid "Expired on %(expiry_date)s" msgstr "" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:71 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:77 msgid "Invalid test certificate" msgstr "" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:75 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:81 #, python-format msgid "Invalid (%(reason)s)" msgstr "" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:82 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:88 msgid "No certificate" msgstr "" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:99 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:105 msgid "Re-obtain" msgstr "" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:105 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:111 #: plinth/modules/networks/templates/connection_show.html:63 #: plinth/modules/snapshot/templates/snapshot.html:34 msgid "Delete" msgstr "" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:112 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:118 msgid "Revoke" msgstr "" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:120 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:126 msgid "Obtain" msgstr "" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:133 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:149 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:156 +msgid "Update config" +msgstr "" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:161 +#, python-format +msgid "" +"\n" +" Let Plinth manage certificate renewal of\n" +" %(current_domain)s (recommended)\n" +" " +msgstr "" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:166 +msgid "" +"\n" +" Let Plinth manage certificate renewal of the current domain " +"(recommended)\n" +" " +msgstr "" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:175 +#, python-format +msgid "" +"If %(box_name)s manages the certificate renewal for the current domain, it " +"will ensure that all apps that use the certificate can use it, as soon as it " +"gets renewed." +msgstr "" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:181 +msgid "" +"No certificate available for the current domain. First obtain a " +"certificate to enable management of its renewal." +msgstr "" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:186 +msgid "" +"No current domain is configured. First configure a domain to enable " +"management of its certificates." +msgstr "" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:195 msgid "" "No domains have been configured. Configure domains to be able to obtain " "certificates for them." msgstr "" -#: plinth/modules/letsencrypt/views.py:55 +#: plinth/modules/letsencrypt/views.py:57 #, python-brace-format msgid "" "Certificate successfully revoked for domain {domain}.This may take a few " "moments to take effect." msgstr "" -#: plinth/modules/letsencrypt/views.py:61 +#: plinth/modules/letsencrypt/views.py:63 #, python-brace-format msgid "Failed to revoke certificate for domain {domain}: {error}" msgstr "" -#: plinth/modules/letsencrypt/views.py:73 +#: plinth/modules/letsencrypt/views.py:75 #, python-brace-format msgid "Certificate successfully obtained for domain {domain}" msgstr "" -#: plinth/modules/letsencrypt/views.py:78 +#: plinth/modules/letsencrypt/views.py:81 #, python-brace-format msgid "Failed to obtain certificate for domain {domain}: {error}" msgstr "" #: plinth/modules/letsencrypt/views.py:90 +#: plinth/modules/letsencrypt/views.py:109 +#, python-brace-format +msgid "Certificate renewal management enabled for {domain}." +msgstr "" + +#: plinth/modules/letsencrypt/views.py:95 +#, python-brace-format +msgid "Failed to enable certificate renewal management for {domain}: {error}" +msgstr "" + +#: plinth/modules/letsencrypt/views.py:112 +#, python-brace-format +msgid "Certificate renewal management disabled for {domain}." +msgstr "" + +#: plinth/modules/letsencrypt/views.py:118 +#, python-brace-format +msgid "Failed to switch certificate renewal management for {domain}: {error}" +msgstr "" + +#: plinth/modules/letsencrypt/views.py:134 +#, python-brace-format +msgid "Failed to disable certificate renewal management for {domain}: {error}" +msgstr "" + +#: plinth/modules/letsencrypt/views.py:141 #, python-brace-format msgid "Certificate successfully deleted for domain {domain}" msgstr "" -#: plinth/modules/letsencrypt/views.py:95 +#: plinth/modules/letsencrypt/views.py:146 #, python-brace-format msgid "Failed to delete certificate for domain {domain}: {error}" msgstr "" #: plinth/modules/matrixsynapse/__init__.py:41 -msgid "" -"Chat Server \n" -" (Matrix Synapse)" +msgid "Matrix Synapse" msgstr "" -#: plinth/modules/matrixsynapse/__init__.py:44 +#: plinth/modules/matrixsynapse/__init__.py:46 msgid "" "Matrix is an new " "ecosystem for open, federated instant messaging and VoIP. Synapse is a " @@ -1311,17 +1436,13 @@ msgid "" "converse with users on all other Matrix servers via federation." msgstr "" -#: plinth/modules/matrixsynapse/__init__.py:52 +#: plinth/modules/matrixsynapse/__init__.py:54 msgid "" "To communicate, you can use the available clients for mobile, desktop and the web. Riot client is recommended." msgstr "" -#: plinth/modules/matrixsynapse/forms.py:31 -msgid "Select the domain name" -msgstr "" - #: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:34 msgid "" "Matrix service needs to be configured for a domain. Users on other Matrix " @@ -1353,12 +1474,14 @@ msgid "" msgstr "" #: plinth/modules/minetest/__init__.py:48 -msgid "" -"Block Sandbox \n" -" (Minetest)" +msgid "Minetest" msgstr "" -#: plinth/modules/minetest/__init__.py:52 +#: plinth/modules/minetest/__init__.py:50 +msgid "Block Sandbox" +msgstr "" + +#: plinth/modules/minetest/__init__.py:54 #, python-brace-format msgid "" "Minetest is a multiplayer infinite-world block sandbox. This module enables " @@ -1474,7 +1597,7 @@ msgstr "" #: plinth/modules/monkeysphere/templates/monkeysphere.html:87 #: plinth/modules/monkeysphere/templates/monkeysphere_details.html:60 -#: plinth/service.py:117 +#: plinth/service.py:116 msgid "Web Server" msgstr "" @@ -1571,18 +1694,20 @@ msgid "Error occurred while publishing key." msgstr "" #: plinth/modules/mumble/__init__.py:35 -msgid "" -"Voice Chat \n" -" (Mumble)" +msgid "Mumble" msgstr "" -#: plinth/modules/mumble/__init__.py:44 +#: plinth/modules/mumble/__init__.py:37 +msgid "Voice Chat" +msgstr "" + +#: plinth/modules/mumble/__init__.py:46 msgid "" "Mumble is an open source, low-latency, encrypted, high quality voice chat " "software." msgstr "" -#: plinth/modules/mumble/__init__.py:47 +#: plinth/modules/mumble/__init__.py:49 msgid "" "You can connect to your Mumble server on the regular Mumble port 64738. Clients to connect to Mumble from your " @@ -2070,7 +2195,7 @@ msgid "This connection is not active." msgstr "" #: plinth/modules/networks/templates/connection_show.html:266 -#: plinth/modules/security/__init__.py:32 plinth/modules/security/views.py:46 +#: plinth/modules/security/__init__.py:32 plinth/modules/security/views.py:48 msgid "Security" msgstr "" @@ -2166,12 +2291,14 @@ msgid "Inactive" msgstr "" #: plinth/modules/openvpn/__init__.py:42 -msgid "" -"Virtual Private Network \n" -" (OpenVPN)" +msgid "OpenVPN" msgstr "" -#: plinth/modules/openvpn/__init__.py:46 +#: plinth/modules/openvpn/__init__.py:44 +msgid "Virtual Private Network" +msgstr "" + +#: plinth/modules/openvpn/__init__.py:48 #, python-brace-format msgid "" "Virtual Private Network (VPN) is a technique for securely connecting two " @@ -2182,7 +2309,7 @@ msgid "" "security and anonymity." msgstr "" -#: plinth/modules/openvpn/__init__.py:84 +#: plinth/modules/openvpn/__init__.py:86 #, python-brace-format msgid "" "Download Profile" @@ -2257,10 +2384,14 @@ msgid "Setup failed." msgstr "" #: plinth/modules/pagekite/__init__.py:44 -msgid "Public Visibility (PageKite)" +msgid "PageKite" msgstr "" -#: plinth/modules/pagekite/__init__.py:48 +#: plinth/modules/pagekite/__init__.py:46 +msgid "Public Visibility" +msgstr "" + +#: plinth/modules/pagekite/__init__.py:50 #, python-brace-format msgid "" "PageKite is a system for exposing {box_name} services when you don't have a " @@ -2269,33 +2400,33 @@ msgid "" "following situations:" msgstr "" -#: plinth/modules/pagekite/__init__.py:55 +#: plinth/modules/pagekite/__init__.py:57 #, python-brace-format msgid "{box_name} is behind a restricted firewall." msgstr "" -#: plinth/modules/pagekite/__init__.py:59 +#: plinth/modules/pagekite/__init__.py:61 #, python-brace-format msgid "{box_name} is connected to a (wireless) router which you don't control." msgstr "" -#: plinth/modules/pagekite/__init__.py:62 +#: plinth/modules/pagekite/__init__.py:64 msgid "" "Your ISP does not provide you an external IP address and instead provides " "Internet connection through NAT." msgstr "" -#: plinth/modules/pagekite/__init__.py:65 +#: plinth/modules/pagekite/__init__.py:67 msgid "" "Your ISP does not provide you a static IP address and your IP address " "changes evertime you connect to Internet." msgstr "" -#: plinth/modules/pagekite/__init__.py:68 +#: plinth/modules/pagekite/__init__.py:70 msgid "Your ISP limits incoming connections." msgstr "" -#: plinth/modules/pagekite/__init__.py:71 +#: plinth/modules/pagekite/__init__.py:73 #, python-brace-format msgid "" "PageKite works around NAT, firewalls and IP-address limitations by using a " @@ -2571,8 +2702,8 @@ msgstr "" msgid "Pagekite setup finished. The HTTP and HTTPS services are activated now." msgstr "" -#: plinth/modules/power/__init__.py:28 plinth/modules/power/views.py:50 -#: plinth/modules/power/views.py:65 +#: plinth/modules/power/__init__.py:28 plinth/modules/power/views.py:51 +#: plinth/modules/power/views.py:67 msgid "Power" msgstr "" @@ -2581,10 +2712,16 @@ msgid "Restart or shut down the system." msgstr "" #: plinth/modules/power/templates/power.html:28 +msgid "" +"Currently an installation or upgrade is running. Consider waiting until it's " +"finished before shutting down or restarting." +msgstr "" + +#: plinth/modules/power/templates/power.html:37 msgid "Restart »" msgstr "" -#: plinth/modules/power/templates/power.html:31 +#: plinth/modules/power/templates/power.html:40 msgid "Shut Down »" msgstr "" @@ -2594,7 +2731,14 @@ msgid "" "interface for a few minutes until the system is restarted." msgstr "" -#: plinth/modules/power/templates/power_restart.html:42 +#: plinth/modules/power/templates/power_restart.html:38 +msgid "" +"Currently an installation or upgrade is running. Consider waiting until it's " +"finished before restarting." +msgstr "" + +#: plinth/modules/power/templates/power_restart.html:52 +#: plinth/modules/power/templates/power_restart.html:55 msgid "Restart Now" msgstr "" @@ -2604,24 +2748,33 @@ msgid "" "interface after shut down." msgstr "" -#: plinth/modules/power/templates/power_shutdown.html:41 +#: plinth/modules/power/templates/power_shutdown.html:37 +msgid "" +"Currently an installation or upgrade is running. Consider waiting until it's " +"finished before shutting down." +msgstr "" + +#: plinth/modules/power/templates/power_shutdown.html:51 +#: plinth/modules/power/templates/power_shutdown.html:54 msgid "Shut Down Now" msgstr "" #: plinth/modules/privoxy/__init__.py:43 -msgid "" -"Web Proxy \n" -" (Privoxy)" +msgid "Privoxy" msgstr "" -#: plinth/modules/privoxy/__init__.py:46 +#: plinth/modules/privoxy/__init__.py:45 +msgid "Web Proxy" +msgstr "" + +#: plinth/modules/privoxy/__init__.py:48 msgid "" "Privoxy is a non-caching web proxy with advanced filtering capabilities for " "enhancing privacy, modifying web page data and HTTP headers, controlling " "access, and removing ads and other obnoxious Internet junk. " msgstr "" -#: plinth/modules/privoxy/__init__.py:52 +#: plinth/modules/privoxy/__init__.py:54 #, python-brace-format msgid "" "You can use Privoxy by modifying your browser proxy settings to your " @@ -2631,18 +2784,20 @@ msgid "" "\">http://p.p." msgstr "" -#: plinth/modules/privoxy/__init__.py:144 +#: plinth/modules/privoxy/__init__.py:147 #, python-brace-format msgid "Access {url} with proxy {proxy} on tcp{kind}" msgstr "" #: plinth/modules/quassel/__init__.py:42 -msgid "" -"IRC Client \n" -" (Quassel)" +msgid "Quassel" msgstr "" -#: plinth/modules/quassel/__init__.py:46 +#: plinth/modules/quassel/__init__.py:44 +msgid "IRC Client" +msgstr "" + +#: plinth/modules/quassel/__init__.py:48 #, python-brace-format msgid "" "Quassel is an IRC application that is split into two parts, a \"core\" and a " @@ -2653,7 +2808,7 @@ msgid "" "connect and disconnect from it." msgstr "" -#: plinth/modules/quassel/__init__.py:54 +#: plinth/modules/quassel/__init__.py:56 msgid "" "You can connect to your Quassel core on the default Quassel port 4242. " "Clients to connect to Quassel from your supported " -"client application is needed. Radicale can be accessed by any user with " -"a {box_name} login." +"radicale.org/clients/\">supported client application is needed. Radicale " +"can be accessed by any user with a {box_name} login." msgstr "" #: plinth/modules/radicale/forms.py:28 @@ -2696,12 +2852,14 @@ msgid "Access rights configuration updated" msgstr "" #: plinth/modules/repro/__init__.py:38 -msgid "" -"SIP Server \n" -" (repro)" +msgid "repro" msgstr "" -#: plinth/modules/repro/__init__.py:41 +#: plinth/modules/repro/__init__.py:40 +msgid "SIP Server" +msgstr "" + +#: plinth/modules/repro/__init__.py:43 msgid "" "repro provides various SIP services that a SIP softphone can utilize to " "provide audio and video calls as well as presence and instant messaging. " @@ -2710,7 +2868,7 @@ msgid "" "communications to other servers on the Internet similar to email." msgstr "" -#: plinth/modules/repro/__init__.py:48 +#: plinth/modules/repro/__init__.py:50 msgid "" "To make SIP calls, a client application is needed. Available clients include " "Jitsi (for computers) and (for Android phones)." msgstr "" -#: plinth/modules/repro/__init__.py:53 +#: plinth/modules/repro/__init__.py:55 msgid "" "Note: Before using repro, domains and users will need to " "be configured using the web-based " @@ -2728,12 +2886,14 @@ msgid "" msgstr "" #: plinth/modules/restore/__init__.py:36 -msgid "" -"Unhosted Storage \n" -" (reStore)" +msgid "reStore" msgstr "" -#: plinth/modules/restore/__init__.py:40 +#: plinth/modules/restore/__init__.py:38 +msgid "Unhosted Storage" +msgstr "" + +#: plinth/modules/restore/__init__.py:42 #, python-brace-format msgid "" "reStore is a server for unhosted web " @@ -2743,19 +2903,21 @@ msgid "" "becomes your unhosted storage server." msgstr "" -#: plinth/modules/restore/__init__.py:47 +#: plinth/modules/restore/__init__.py:49 msgid "" "You can create and edit accounts in the reStore web-" "interface." msgstr "" #: plinth/modules/roundcube/__init__.py:35 -msgid "" -"Email Client \n" -" (Roundcube)" +msgid "Roundcube" msgstr "" -#: plinth/modules/roundcube/__init__.py:38 +#: plinth/modules/roundcube/__init__.py:37 +msgid "Email Client" +msgstr "" + +#: plinth/modules/roundcube/__init__.py:40 msgid "" "Roundcube webmail is a browser-based multilingual IMAP client with an " "application-like user interface. It provides full functionality you expect " @@ -2763,7 +2925,7 @@ msgid "" "manipulation, message searching and spell checking." msgstr "" -#: plinth/modules/roundcube/__init__.py:44 +#: plinth/modules/roundcube/__init__.py:46 msgid "" "You can access Roundcube from /roundcube. Provide " "the username and password of the email account you wish to access followed " @@ -2772,7 +2934,7 @@ msgid "" "server field like imaps://imap.example.com." msgstr "" -#: plinth/modules/roundcube/__init__.py:51 +#: plinth/modules/roundcube/__init__.py:53 msgid "" "For Gmail, username will be your Gmail address, password will be your Google " "account password and server will be imaps://imap.gmail.com. " @@ -2793,26 +2955,39 @@ msgid "" "services without further authorization." msgstr "" -#: plinth/modules/security/views.py:63 +#: plinth/modules/security/forms.py:35 +msgid "Fail2ban (recommended)" +msgstr "" + +#: plinth/modules/security/forms.py:36 +msgid "" +"When this option is enabled, fail2ban will limit brute force break-in " +"attempts to the SSH server and other password protected internet-services " +"which are enabled." +msgstr "" + +#: plinth/modules/security/views.py:66 #, python-brace-format msgid "Error setting restricted access: {exception}" msgstr "" -#: plinth/modules/security/views.py:66 +#: plinth/modules/security/views.py:69 msgid "Updated security configuration" msgstr "" #: plinth/modules/shaarli/__init__.py:35 -msgid "" -"Bookmarks \n" -" (Shaarli)" +msgid "Shaarli" msgstr "" -#: plinth/modules/shaarli/__init__.py:38 -msgid "Shaarli allows you to save and share bookmarks." +#: plinth/modules/shaarli/__init__.py:37 +msgid "Bookmarks" msgstr "" #: plinth/modules/shaarli/__init__.py:40 +msgid "Shaarli allows you to save and share bookmarks." +msgstr "" + +#: plinth/modules/shaarli/__init__.py:42 msgid "" "When enabled, Shaarli will be available from /shaarli path on the web server. Note that Shaarli only supports a single user " @@ -2925,6 +3100,18 @@ msgstr "" msgid "Rollback to Snapshot" msgstr "" +#: plinth/modules/ssh/__init__.py:37 +msgid "Secure Shell (SSH) Server" +msgstr "" + +#: plinth/modules/ssh/__init__.py:40 +msgid "" +"A Secure Shell server uses the secure shell protocol to accept connections " +"from remote computers. An authorized remote computer can perform " +"administration tasks, copy files or run other services using such " +"connections." +msgstr "" + #: plinth/modules/sso/__init__.py:30 msgid "Single Sign On" msgstr "" @@ -2934,12 +3121,14 @@ msgid "Login" msgstr "" #: plinth/modules/syncthing/__init__.py:39 -msgid "" -"File Synchronization \n" -" (Syncthing)" +msgid "Syncthing" msgstr "" -#: plinth/modules/syncthing/__init__.py:42 +#: plinth/modules/syncthing/__init__.py:41 +msgid "File Synchronization" +msgstr "" + +#: plinth/modules/syncthing/__init__.py:44 msgid "" "Syncthing is an application to synchronize files across multiple devices, e." "g. your desktop computer and mobile phone. Creation, modification, or " @@ -2947,7 +3136,7 @@ msgid "" "other devices that also run Syncthing." msgstr "" -#: plinth/modules/syncthing/__init__.py:47 +#: plinth/modules/syncthing/__init__.py:49 #, python-brace-format msgid "" "Running Syncthing on {box_name} provides an extra synchronization point for " @@ -2958,7 +3147,7 @@ msgid "" "{box_name} is only available for users belonging to the \"admin\" group." msgstr "" -#: plinth/modules/syncthing/__init__.py:54 +#: plinth/modules/syncthing/__init__.py:56 msgid "" "When enabled, Syncthing's web interface will be available from /syncthing. Desktop and mobile clients are also Tor Project website. For " @@ -3029,36 +3230,36 @@ msgid "" "\">Tor Browser." msgstr "" -#: plinth/modules/tor/__init__.py:70 plinth/modules/tor/__init__.py:112 +#: plinth/modules/tor/__init__.py:72 plinth/modules/tor/__init__.py:114 msgid "Tor Anonymity Network" msgstr "" -#: plinth/modules/tor/__init__.py:76 plinth/modules/tor/__init__.py:120 +#: plinth/modules/tor/__init__.py:78 plinth/modules/tor/__init__.py:122 msgid "Tor Bridge Relay" msgstr "" -#: plinth/modules/tor/__init__.py:98 plinth/modules/tor/__init__.py:141 +#: plinth/modules/tor/__init__.py:100 plinth/modules/tor/__init__.py:143 msgid "Tor Hidden Service" msgstr "" -#: plinth/modules/tor/__init__.py:160 +#: plinth/modules/tor/__init__.py:162 msgid "Tor relay port available" msgstr "" -#: plinth/modules/tor/__init__.py:168 +#: plinth/modules/tor/__init__.py:170 msgid "Obfs3 transport registered" msgstr "" -#: plinth/modules/tor/__init__.py:174 +#: plinth/modules/tor/__init__.py:176 msgid "Obfs4 transport registered" msgstr "" -#: plinth/modules/tor/__init__.py:211 +#: plinth/modules/tor/__init__.py:213 #, python-brace-format msgid "Access URL {url} on tcp{kind} via Tor" msgstr "" -#: plinth/modules/tor/__init__.py:222 +#: plinth/modules/tor/__init__.py:224 #, python-brace-format msgid "Confirm Tor usage at {url} on tcp{kind}" msgstr "" @@ -3202,18 +3403,20 @@ msgid "An error occurred during configuration." msgstr "" #: plinth/modules/transmission/__init__.py:38 -msgid "" -"BitTorrent \n" -" (Transmission)" +msgid "Transmission" msgstr "" -#: plinth/modules/transmission/__init__.py:41 +#: plinth/modules/transmission/__init__.py:40 +msgid "BitTorrent" +msgstr "" + +#: plinth/modules/transmission/__init__.py:43 msgid "" "BitTorrent is a peer-to-peer file sharing protocol. Transmission daemon " "handles Bitorrent file sharing. Note that BitTorrent is not anonymous." msgstr "" -#: plinth/modules/transmission/__init__.py:44 +#: plinth/modules/transmission/__init__.py:46 msgid "" "Access the web interface at /transmission." msgstr "" @@ -3239,23 +3442,27 @@ msgid "" "hashed format. To set a new password, enter the password in plain text." msgstr "" -#: plinth/modules/ttrss/__init__.py:37 -msgid "" -"News Feed Reader \n" -" (Tiny Tiny RSS)" +#: plinth/modules/ttrss/__init__.py:39 +msgid "Tiny Tiny RSS" msgstr "" -#: plinth/modules/ttrss/__init__.py:40 +#: plinth/modules/ttrss/__init__.py:41 +msgid "News Feed Reader" +msgstr "" + +#: plinth/modules/ttrss/__init__.py:44 msgid "" "Tiny Tiny RSS is a news feed (RSS/Atom) reader and aggregator, designed to " "allow reading news from any location, while feeling as close to a real " "desktop application as possible." msgstr "" -#: plinth/modules/ttrss/__init__.py:44 +#: plinth/modules/ttrss/__init__.py:49 +#, python-brace-format msgid "" "When enabled, Tiny Tiny RSS will be available from /tt-" -"rss path on the web server." +"rss path on the web server. It can be accessed by any user with a {box_name} login." msgstr "" #: plinth/modules/upgrades/__init__.py:35 @@ -3547,15 +3754,11 @@ msgstr "" msgid "configuration file: {file}" msgstr "" -#: plinth/service.py:119 +#: plinth/service.py:118 msgid "Web Server over Secure Socket Layer" msgstr "" -#: plinth/service.py:121 -msgid "Secure Shell (SSH) Server" -msgstr "" - -#: plinth/service.py:123 +#: plinth/service.py:120 #, python-brace-format msgid "{box_name} Web Interface (Plinth)" msgstr "" @@ -3598,11 +3801,11 @@ msgid "" "\"%(status_log_url)s\">status log to the bug report." msgstr "" -#: plinth/templates/apps.html:25 +#: plinth/templates/apps.html:33 msgid "Services and Applications" msgstr "" -#: plinth/templates/apps.html:28 +#: plinth/templates/apps.html:36 #, python-format msgid "" "You can install and run various services and applications on your " @@ -3610,7 +3813,7 @@ msgid "" "of the application and choose to install it." msgstr "" -#: plinth/templates/apps.html:36 +#: plinth/templates/apps.html:44 msgid "" "This box can be your photo sharing site, your instant messaging site, your " "social networking site, your news site. Remember web portals? We can be " @@ -3770,16 +3973,16 @@ msgstr "" msgid "%(percentage)s%% complete" msgstr "" -#: plinth/templates/system.html:25 +#: plinth/templates/system.html:33 msgid "System Configuration" msgstr "" -#: plinth/templates/system.html:28 +#: plinth/templates/system.html:36 #, python-format msgid "Here you can administrate the underlying system of your %(box_name)s." msgstr "" -#: plinth/templates/system.html:34 +#: plinth/templates/system.html:42 #, python-format msgid "" "The options affect the %(box_name)s at its most general level, so be careful!" diff --git a/plinth/locale/te/LC_MESSAGES/django.po b/plinth/locale/te/LC_MESSAGES/django.po index c7ef9fa33..b31beff3e 100644 --- a/plinth/locale/te/LC_MESSAGES/django.po +++ b/plinth/locale/te/LC_MESSAGES/django.po @@ -9,11 +9,11 @@ msgid "" msgstr "" "Project-Id-Version: FreedomBox UI\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2017-07-10 22:56-0400\n" +"POT-Creation-Date: 2017-09-24 11:24-0400\n" "PO-Revision-Date: 2017-09-11 04:49+0000\n" "Last-Translator: BHARATH \n" -"Language-Team: Telugu " -"\n" +"Language-Team: Telugu \n" "Language: te\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -21,37 +21,37 @@ msgstr "" "Plural-Forms: nplurals=2; plural=n != 1;\n" "X-Generator: Weblate 2.17-dev\n" -#: plinth/action_utils.py:254 +#: plinth/action_utils.py:259 #, python-brace-format msgid "Listening on {kind} port {listen_address}:{port}" msgstr "పోర్ట్{listen_address}:{port} పై వింటూ {kind}" -#: plinth/action_utils.py:257 +#: plinth/action_utils.py:262 #, python-brace-format msgid "Listening on {kind} port {port}" msgstr "పోర్ట్ {port} పై ఆలకించమండి {kind}" -#: plinth/action_utils.py:352 +#: plinth/action_utils.py:357 #, python-brace-format msgid "Access URL {url} on tcp{kind}" msgstr "tcp పై {kind} URL {url} యాక్సెస్ చేయండి" -#: plinth/action_utils.py:356 +#: plinth/action_utils.py:361 #, python-brace-format msgid "Access URL {url}" msgstr "URL {url} ప్రవేశము" -#: plinth/action_utils.py:386 +#: plinth/action_utils.py:391 #, python-brace-format msgid "Connect to {host}:{port}" msgstr "అనుసంధానించండి {host}:{port}" -#: plinth/action_utils.py:389 +#: plinth/action_utils.py:394 #, python-brace-format msgid "Cannot connect to {host}:{port}" msgstr "అనుసంధానించండం సాధ్యంకాదు {host}:{port}" -#: plinth/context_processors.py:38 plinth/views.py:49 +#: plinth/context_processors.py:38 plinth/views.py:52 msgid "FreedomBox" msgstr "ఫ్రీడమ్‌బాక్స్" @@ -60,9 +60,17 @@ msgid "Enable application" msgstr "అనువర్తనాన్ని చేతనించు" #: plinth/forms.py:45 -msgid "Select the domain name to be used for this application" +#, fuzzy +#| msgid "Select the domain name to be used for this application" +msgid "Select a domain name to be used with this application" msgstr "ఈ అనువర్తనానికి కావలసిన డొమైన్ పేరును ఎంచుకోండి" +#: plinth/forms.py:47 +msgid "" +"Warning! The application may not work properly if domain name is changed " +"later." +msgstr "" + #: plinth/middleware.py:71 msgid "Application installed." msgstr "అనువర్తనం స్థాపించబడింది." @@ -97,14 +105,20 @@ msgstr "" "పని చేయకుండా చెయ్యచ్చు ముఖ్యంగా మీరు విరుద్ధమైన స్థానిక నెట్‌వర్క్ లో కనెక్ట్ ఆవతున్నప్పుడు." #: plinth/modules/bind/__init__.py:34 -msgid "" -"Domain Name Server \n" -" (BIND)" +msgid "BIND" +msgstr "" + +#: plinth/modules/bind/__init__.py:36 +#, fuzzy +#| msgid "" +#| "Domain Name Server \n" +#| " (BIND)" +msgid "Domain Name Server" msgstr "" "డొమైన్ నేమ్ సర్వర్\n" " (బైండ్)" -#: plinth/modules/bind/__init__.py:43 +#: plinth/modules/bind/__init__.py:45 msgid "" "BIND is open source software that enables you to publish your Domain Name " "System (DNS) information on the Internet, and to resolve DNS queries for " @@ -113,7 +127,7 @@ msgstr "" "BIND అనే ఓపెన్ సోర్స్ సాఫ్ట్వేర్ ని మీ ఇంటర్నెట్ లో మీ డొమైన్ నేమ్ సిస్టం (DNS) అనేది సమాచారాన్ని " "ప్రచురించడానికి అనుమతిస్తుంది, మరియు మీ వినియోగదారులు DNS విచారణలను పరిష్కరించడానికి ." -#: plinth/modules/bind/__init__.py:47 +#: plinth/modules/bind/__init__.py:49 #, fuzzy msgid "" "BIND is by far the most widely used DNS software on the Internet, providing " @@ -121,9 +135,9 @@ msgid "" "distributed computing systems with the knowledge that those systems are " "fully compliant with published DNS standards." msgstr "" -"BIND అనేది ఇంటర్నెట్లో అత్యధికంగా ఉపయోగించబడే DNS సాఫ్ట్వేర్ , సంస్థలకు " -"బలమైన మరియు స్థిరమైన వేదికను అందించడం వలన సంస్థలు ప్రచురించిన DNS ప్రామాణి" -"క అనుగునంగా పంపిణీ కంప్యూటింగ్ వ్యవస్థను నిర్మించుకోగలరు" +"BIND అనేది ఇంటర్నెట్లో అత్యధికంగా ఉపయోగించబడే DNS సాఫ్ట్వేర్ , సంస్థలకు బలమైన మరియు స్థిరమైన వేదికను " +"అందించడం వలన సంస్థలు ప్రచురించిన DNS ప్రామాణిక అనుగునంగా పంపిణీ కంప్యూటింగ్ వ్యవస్థను " +"నిర్మించుకోగలరు" #: plinth/modules/bind/forms.py:38 #, fuzzy @@ -165,12 +179,10 @@ msgstr "డి.ఎన్.ఎస్. సేవిక ఆకృతీకరణ న #: plinth/modules/bind/views.py:79 #, fuzzy msgid "Enable forwarding to set forwarding DNS servers" -msgstr "" -"ఫొర్వర్దింగ్ డిఎన్ఎస్ సేవికను సరిగా ఏర్పాటు చేయుటకు ఫొర్వర్దింగ్ ను " -"క్రియాశీలీకరించు" +msgstr "ఫొర్వర్దింగ్ డిఎన్ఎస్ సేవికను సరిగా ఏర్పాటు చేయుటకు ఫొర్వర్దింగ్ ను క్రియాశీలీకరించు" #: plinth/modules/config/config.py:88 plinth/modules/config/config.py:125 -#: plinth/modules/dynamicdns/dynamicdns.py:140 +#: plinth/modules/dynamicdns/dynamicdns.py:148 msgid "Invalid domain name" msgstr "డొమైన్ పేరు చెల్లదు" @@ -196,7 +208,7 @@ msgstr "ఆతిథ్యనామం చెల్లనిది" #: plinth/modules/config/config.py:112 plinth/modules/config/config.py:169 #: plinth/modules/config/config.py:285 -#: plinth/modules/dynamicdns/dynamicdns.py:135 +#: plinth/modules/dynamicdns/dynamicdns.py:143 msgid "Domain Name" msgstr "డొమైను పేరు" @@ -225,7 +237,7 @@ msgid "Language for this web administration interface" msgstr "జాల నిర్వాహక అంతరవర్తి కోసం భాష" #: plinth/modules/config/config.py:151 -#: plinth/modules/dynamicdns/dynamicdns.py:37 +#: plinth/modules/dynamicdns/dynamicdns.py:45 #: plinth/modules/ikiwiki/views.py:37 #: plinth/modules/tahoe/templates/tahoe-pre-setup.html:39 msgid "Configure" @@ -313,17 +325,21 @@ msgstr "సమయమండలం ఏర్పాటు చేయబడినద #: plinth/modules/deluge/__init__.py:39 #, fuzzy +#| msgid "Enable Deluge" +msgid "Deluge" +msgstr "ప్రళయనిఅమలుచెయ్యి" + +#: plinth/modules/deluge/__init__.py:41 +#, fuzzy #| msgid "BitTorrent Web Client (Deluge)" -msgid "" -"BitTorrent Web Client \n" -" (Deluge)" +msgid "BitTorrent Web Client" msgstr "బిట్ టోరెంట్ జాల కక్షిదారు (డీలడ్జ్)" -#: plinth/modules/deluge/__init__.py:42 +#: plinth/modules/deluge/__init__.py:44 msgid "Deluge is a BitTorrent client that features a Web UI." msgstr "డీలడ్జ్ అనేది జాల UI కలిగివున్న ఒక బిట్ టోరెంట్ కక్షిదారు." -#: plinth/modules/deluge/__init__.py:44 +#: plinth/modules/deluge/__init__.py:46 msgid "" "When enabled, the Deluge web client will be available from /deluge path on the web server. The default password is 'deluge', but " @@ -389,26 +405,26 @@ msgstr "పరీక్ష" msgid "Result" msgstr "ఫలితం" -#: plinth/modules/diaspora/__init__.py:61 +#: plinth/modules/diaspora/__init__.py:51 +msgid "diaspora*" +msgstr "" + +#: plinth/modules/diaspora/__init__.py:53 +msgid "Federated Social Network" +msgstr "" + +#: plinth/modules/diaspora/__init__.py:62 #, fuzzy msgid "" "diaspora* is a decentralized social network where you can store and control " "your own data." msgstr "" -"diaspora* అనే వికేంద్రీకృత సామాజిక నెట్వర్క్ లొ మీరు మీ యొక్క సమాచారాన్ని " -"నిల్వ ఉంచుకోవచ్చు మరియు \n" +"diaspora* అనే వికేంద్రీకృత సామాజిక నెట్వర్క్ లొ మీరు మీ యొక్క సమాచారాన్ని నిల్వ ఉంచుకోవచ్చు మరియు \n" "నియంత్రణ పరచుకోవచ్చు" -#: plinth/modules/diaspora/forms.py:30 -msgid "Select the domain name to be used for diaspora*" -msgstr "diaspora* కొరకు వాడవలసిన డొమైన్ పేరును ఎంచుకోండి" - -#: plinth/modules/diaspora/forms.py:32 -#, fuzzy -msgid "" -"Warning! Do not change the FreedomBox domain name after setting up diaspora*" +#: plinth/modules/diaspora/forms.py:31 +msgid "Enable new user registrations" msgstr "" -"హెచ్చరిక! diaspora అమర్చిన తరువాత FreedomBox అధికారక్షేత్రం పేరును మార్చరాదు" #: plinth/modules/diaspora/templates/diaspora-post-setup.html:32 #, python-format @@ -434,7 +450,25 @@ msgstr "" msgid "Update setup" msgstr "అమరికను నవీకరించు" -#: plinth/modules/disks/__init__.py:33 plinth/modules/disks/views.py:39 +#: plinth/modules/diaspora/views.py:96 plinth/modules/ejabberd/views.py:60 +#: plinth/modules/openvpn/views.py:145 plinth/modules/tor/views.py:134 +#: plinth/views.py:112 +msgid "Setting unchanged" +msgstr "మారకుండా అమర్చుతోంది" + +#: plinth/modules/diaspora/views.py:100 +#, fuzzy +#| msgid "Application enabled" +msgid "User registrations enabled" +msgstr "అనువర్తనం ఆమోదింపబడింది" + +#: plinth/modules/diaspora/views.py:104 +#, fuzzy +#| msgid "Application disabled" +msgid "User registrations disabled" +msgstr "అనువర్తనం ఆమోదింపబడలేదు" + +#: plinth/modules/disks/__init__.py:33 plinth/modules/disks/views.py:45 msgid "Disks" msgstr "డిస్కులు" @@ -479,7 +513,7 @@ msgstr "" #: plinth/modules/disks/templates/disks.html:90 #: plinth/modules/disks/templates/disks.html:102 #: plinth/modules/disks/templates/disks_expand.html:45 -#: plinth/modules/disks/views.py:56 +#: plinth/modules/disks/views.py:62 msgid "Expand Root Partition" msgstr "రూట్ విభజనను విస్తరించు" @@ -499,45 +533,52 @@ msgstr "" "దయచేసి మీ సమాచారాన్ని బ్యాకప్ (భద్రపరచు కొనుట) చేస్కోండి. ఈ క్రియ తర్వాత %(expandable_root_size)s " "అధనపు సామర్ధ్యం మీ రూ విభజనలో అందుబాటులోకి వస్తుంది." -#: plinth/modules/disks/views.py:65 +#: plinth/modules/disks/views.py:71 #, python-brace-format msgid "Error expanding partition: {exception}" msgstr "విభజన విస్తరణలో దోషం: {exception}" -#: plinth/modules/disks/views.py:68 +#: plinth/modules/disks/views.py:74 msgid "Partition expanded successfully." msgstr "విభజనను విస్తరించడం విజయవంతమైనది." -#: plinth/modules/disks/views.py:77 +#: plinth/modules/disks/views.py:93 +#, python-format, python-brace-format +msgid "" +"Warning: Low space on system partition ({percent_used}% used, {free_space} " +"free)." +msgstr "" + +#: plinth/modules/disks/views.py:130 #, python-brace-format msgid "{disk_size:.1f} bytes" msgstr "{disk_size:.1f} బైట్లు" -#: plinth/modules/disks/views.py:81 +#: plinth/modules/disks/views.py:134 #, python-brace-format msgid "{disk_size:.1f} KiB" msgstr "{disk_size:.1f} కిలోబైట్లు" -#: plinth/modules/disks/views.py:85 +#: plinth/modules/disks/views.py:138 #, python-brace-format msgid "{disk_size:.1f} MiB" msgstr "{disk_size:.1f} మెగాబైట్లు" -#: plinth/modules/disks/views.py:89 +#: plinth/modules/disks/views.py:142 #, python-brace-format msgid "{disk_size:.1f} GiB" msgstr "{disk_size:.1f} గిగాబైట్లు" -#: plinth/modules/disks/views.py:92 +#: plinth/modules/disks/views.py:145 #, python-brace-format msgid "{disk_size:.1f} TiB" msgstr "{disk_size:.1f} టెరాబైట్లు" -#: plinth/modules/dynamicdns/__init__.py:33 +#: plinth/modules/dynamicdns/__init__.py:35 msgid "Dynamic DNS Client" msgstr "గతిక DNS కక్షిదారు" -#: plinth/modules/dynamicdns/__init__.py:37 +#: plinth/modules/dynamicdns/__init__.py:39 #, python-brace-format msgid "" "If your Internet provider changes your IP address periodically (i.e. every " @@ -548,7 +589,7 @@ msgstr "" "అప్పుడు ఇతరులు అంతర్జాలంలో మిమల్ని కనుగొనడానికి కష్టం ఆవతుంది. అప్పుడు వారు ఈ {box_name} " "అందించే సేవలను కనుగోనలేరు." -#: plinth/modules/dynamicdns/__init__.py:43 +#: plinth/modules/dynamicdns/__init__.py:45 msgid "" "The solution is to assign a DNS name to your IP address and update the DNS " "name every time your IP is changed by your Internet provider. Dynamic DNS " @@ -564,11 +605,18 @@ msgstr "" "అనుమతిస్తుంది. తరువాత, సర్వర్ కొత్త IP మీ DNS పేరు కేటాయిస్తుంది, మరియు ఇంటర్నెట్ నుండి ఎవరైనా మీ " "DNS పేరు అడుగుతాడు ఉంటే, వారు మీ ప్రస్తుత ఐ.పీ. చిరునామాతో సమాధానం పొందుతారు." -#: plinth/modules/dynamicdns/dynamicdns.py:35 plinth/modules/help/help.py:40 +#: plinth/modules/dynamicdns/__init__.py:67 +#: plinth/modules/dynamicdns/dynamicdns.py:377 +#, fuzzy +#| msgid "Dynamic DNS Client" +msgid "Dynamic DNS Service" +msgstr "గతిక DNS కక్షిదారు" + +#: plinth/modules/dynamicdns/dynamicdns.py:43 plinth/modules/help/help.py:40 msgid "About" msgstr "గురించి" -#: plinth/modules/dynamicdns/dynamicdns.py:39 +#: plinth/modules/dynamicdns/dynamicdns.py:47 #: plinth/modules/firewall/templates/firewall.html:47 #: plinth/modules/networks/templates/connection_show.html:261 #: plinth/modules/openvpn/templates/openvpn.html:67 @@ -577,7 +625,7 @@ msgstr "గురించి" msgid "Status" msgstr "స్థితి" -#: plinth/modules/dynamicdns/dynamicdns.py:63 +#: plinth/modules/dynamicdns/dynamicdns.py:71 msgid "" "The Variables <User>, <Pass>, <Ip>, <Domain> may be " "used within the URL. For details see the update URL templates of the example " @@ -586,7 +634,7 @@ msgstr "" "<వాడుకరి>, <పాస్>, <ఎల్.పి>, <డోమైన్> అనే వేరియబల్స్ మీ యూ.ఆర్.ఎల్ తో " "వాడవచ్చును. వివరాల కోసం మీ యూ.ఆర్.ఎల్ నవీనికరణ టెంప్లేట్ ను చూడండి." -#: plinth/modules/dynamicdns/dynamicdns.py:67 +#: plinth/modules/dynamicdns/dynamicdns.py:75 msgid "" "Please choose an update protocol according to your provider. If your " "provider does not support the GnuDIP protocol or your provider is not listed " @@ -595,7 +643,7 @@ msgstr "" "దయ చేసి మీ నవీకరణ ప్రోటొకాల్ ను ఎంచుకోండి. మీ ప్రదాత గ్నూడిప్ ప్రోటొకాల్ కు సహకరించకపోయిన లేదా మీ ప్రదాత " "కింద జాబితా లో లేకపోయినా మీ ప్రదాత యొక్క నవీకరణ యూ.ఆర్.ఎల్ ను వాడగలరు." -#: plinth/modules/dynamicdns/dynamicdns.py:72 +#: plinth/modules/dynamicdns/dynamicdns.py:80 msgid "" "Please do not enter a URL here (like \"https://example.com/\") but only the " "hostname of the GnuDIP server (like \"example.com\")." @@ -603,16 +651,16 @@ msgstr "" "దయ చేసి యూ.ఆర్.ఎల్ (ఉ.దా \"ఏచ్.టి.టి.పి.ఎస్://ఎగ్స్యాంపల్.కామ్\") ను తెలుపవద్దు కానీ కేవలం అతిధ్య " "పేరును (ఉ.దా \"ఎగ్స్యాంపల్.కామ్\") మాత్రమే తెలుపండి." -#: plinth/modules/dynamicdns/dynamicdns.py:76 +#: plinth/modules/dynamicdns/dynamicdns.py:84 #, python-brace-format msgid "The public domain name you want to use to reach your {box_name}." msgstr "మీ {box_name} ను చేరుకోవడానికి మీరు ఉపయోగించాలని కోరుకుంటున్న మీ పబ్లిక్ డొమైన్ పేరు." -#: plinth/modules/dynamicdns/dynamicdns.py:79 +#: plinth/modules/dynamicdns/dynamicdns.py:87 msgid "Use this option if your provider uses self signed certificates." msgstr "మీ అంతర్జాల సేవ ప్రదాత ఒకవేళ స్వీయ సంతక సర్టిఫికేట్లు ఉపయోగిస్తుంటే ఈ ఎంపికను ఉపయోగించండి." -#: plinth/modules/dynamicdns/dynamicdns.py:82 +#: plinth/modules/dynamicdns/dynamicdns.py:90 msgid "" "If this option is selected, your username and password will be used for HTTP " "basic authentication." @@ -620,11 +668,11 @@ msgstr "" "ఈ ఎంపికను ఎంపిక చేస్తే, మీ వాడుకరి పేరు మరియు పాస్‌వర్డ్ హెచ్.టి.టి.పి ప్రాథమిక ప్రమాణీకరణ కోసం " "ఉపయోగించబడుతుంది." -#: plinth/modules/dynamicdns/dynamicdns.py:85 +#: plinth/modules/dynamicdns/dynamicdns.py:93 msgid "Leave this field empty if you want to keep your current password." msgstr "మీరు మీ ప్రస్తుత పాస్‌వర్డ్ ను ఉంచుకోవాలనుకుంటే ఈ ఫీల్డ్ ఖాళీగా వదిలివేయండి." -#: plinth/modules/dynamicdns/dynamicdns.py:88 +#: plinth/modules/dynamicdns/dynamicdns.py:96 #, python-brace-format msgid "" "Optional Value. If your {box_name} is not connected directly to the Internet " @@ -637,82 +685,82 @@ msgstr "" "ఎక్కడ నుండి వస్తుంది అనే ఐపీ మాత్రమే ఈ యూ.ఆర్.ఎల్ తిరిగివ్వాలి (ఉ.దా: ఏచ్.టి.టి.పి.://మైఐపి." "డాటాసిస్టమ్స్24.దే)." -#: plinth/modules/dynamicdns/dynamicdns.py:96 +#: plinth/modules/dynamicdns/dynamicdns.py:104 msgid "The username that was used when the account was created." msgstr "మీరు మీ ఖాతాను సృష్టించినప్పుడు వాడిన వాడుకరి పేరు ." -#: plinth/modules/dynamicdns/dynamicdns.py:107 +#: plinth/modules/dynamicdns/dynamicdns.py:115 msgid "Enable Dynamic DNS" msgstr "చురుకైన DNS అమలుచెయ్యి" -#: plinth/modules/dynamicdns/dynamicdns.py:110 +#: plinth/modules/dynamicdns/dynamicdns.py:118 msgid "Service Type" msgstr "సేవా రకం" -#: plinth/modules/dynamicdns/dynamicdns.py:115 +#: plinth/modules/dynamicdns/dynamicdns.py:123 msgid "GnuDIP Server Address" msgstr "GnudIP సేవకం చిరునామా" -#: plinth/modules/dynamicdns/dynamicdns.py:120 +#: plinth/modules/dynamicdns/dynamicdns.py:128 msgid "Invalid server name" msgstr "సేవిక పేరు చెలదు" -#: plinth/modules/dynamicdns/dynamicdns.py:123 +#: plinth/modules/dynamicdns/dynamicdns.py:131 msgid "Update URL" msgstr "URL నవీకరణ" -#: plinth/modules/dynamicdns/dynamicdns.py:127 +#: plinth/modules/dynamicdns/dynamicdns.py:135 msgid "Accept all SSL certificates" msgstr "అన్ని ఎస్.ఎస్.ఎల్ సర్టిఫికెట్లు అంగీకరించు" -#: plinth/modules/dynamicdns/dynamicdns.py:131 +#: plinth/modules/dynamicdns/dynamicdns.py:139 msgid "Use HTTP basic authentication" msgstr "HTTP ప్రాథమిక ప్రమాణీకరణ ఉపయోగించు" -#: plinth/modules/dynamicdns/dynamicdns.py:143 +#: plinth/modules/dynamicdns/dynamicdns.py:151 #: plinth/modules/networks/forms.py:228 plinth/modules/transmission/forms.py:37 msgid "Username" msgstr "వినియోగి పేరు" -#: plinth/modules/dynamicdns/dynamicdns.py:146 +#: plinth/modules/dynamicdns/dynamicdns.py:154 #: plinth/modules/networks/forms.py:229 plinth/modules/transmission/forms.py:41 msgid "Password" msgstr "రహస్యపదం" -#: plinth/modules/dynamicdns/dynamicdns.py:149 +#: plinth/modules/dynamicdns/dynamicdns.py:157 #: plinth/modules/networks/forms.py:231 msgid "Show password" msgstr "రహస్యపదం కనబర్చు" -#: plinth/modules/dynamicdns/dynamicdns.py:153 +#: plinth/modules/dynamicdns/dynamicdns.py:161 msgid "URL to look up public IP" msgstr "పబ్లిక్ IP చూసేందుకు URL" -#: plinth/modules/dynamicdns/dynamicdns.py:179 +#: plinth/modules/dynamicdns/dynamicdns.py:187 msgid "Please provide an update URL or a GnuDIP server address" msgstr "దయచేసి నవీకరణ యూ.ఆర్.ఎల్ ను లేక ఒక GnuDIP సేవిక ఐ.పీ చిరునామాను అందించండి" -#: plinth/modules/dynamicdns/dynamicdns.py:184 +#: plinth/modules/dynamicdns/dynamicdns.py:192 msgid "Please provide a GnuDIP username" msgstr "దయచేసి గ్నూ.డిప్ వాడుకరిపేరుని అందించండి" -#: plinth/modules/dynamicdns/dynamicdns.py:188 +#: plinth/modules/dynamicdns/dynamicdns.py:196 msgid "Please provide a GnuDIP domain name" msgstr "గ్నూ.డిప్ డోమైన్ పేరును దయచేసి అందించండి" -#: plinth/modules/dynamicdns/dynamicdns.py:193 +#: plinth/modules/dynamicdns/dynamicdns.py:201 msgid "Please provide a password" msgstr "ఒక రహస్యపదం అందించండి దయచేసి" -#: plinth/modules/dynamicdns/dynamicdns.py:211 +#: plinth/modules/dynamicdns/dynamicdns.py:219 msgid "Configure Dynamic DNS" msgstr "చురుకైనDNS ఆకృతీకరించు" -#: plinth/modules/dynamicdns/dynamicdns.py:232 +#: plinth/modules/dynamicdns/dynamicdns.py:240 msgid "Dynamic DNS Status" msgstr "చలనశీల డి.ఎన్.ఎస్ స్థితి" -#: plinth/modules/dynamicdns/dynamicdns.py:364 +#: plinth/modules/dynamicdns/dynamicdns.py:381 #: plinth/modules/openvpn/views.py:143 plinth/modules/transmission/views.py:72 msgid "Configuration updated" msgstr "ఆకృతీకరణ నవీకరించబడింది" @@ -783,16 +831,18 @@ msgstr "" msgid "Last update" msgstr "చివరి నవీకరణ" -#: plinth/modules/ejabberd/__init__.py:42 -#, fuzzy -msgid "" -"Chat Server \n" -" (ejabberd)" -msgstr "" -"చాట్ సర్వర్\n" -" (ejabberd)" - #: plinth/modules/ejabberd/__init__.py:45 +msgid "ejabberd" +msgstr "" + +#: plinth/modules/ejabberd/__init__.py:47 +#: plinth/modules/matrixsynapse/__init__.py:43 +#, fuzzy +#| msgid "Web Server" +msgid "Chat Server" +msgstr "జాల సేవకం" + +#: plinth/modules/ejabberd/__init__.py:50 msgid "" "XMPP is an open and standardized communication protocol. Here you can run " "and configure your XMPP server, called ejabberd." @@ -800,11 +850,17 @@ msgstr "" "XMPP ఓపెన్ మరియు ప్రామాణికమైన కమ్యూనికేషన్ ప్రోటోకాల్. ఇక్కడ మీరు మీ XMPP సర్వర్ ని రూపకరణ మరియు " "అమలు చేయగలరు ejabberd అని ఆకృతీకరించవచ్చు." -#: plinth/modules/ejabberd/__init__.py:48 +#: plinth/modules/ejabberd/__init__.py:54 +#, fuzzy, python-brace-format +#| msgid "" +#| "To actually communicate, you can use the web client or any other XMPP " +#| "client." msgid "" -"To actually communicate, you can use the web client or any other XMPP client." +"To actually communicate, you can use the web " +"client or any other XMPP client. When enabled, ejabberd can be accessed by " +"any user with a {box_name} login." msgstr "" "నిజానికి సమాచార మార్పిడి చేయడానికి, మీరు వెబ్ క్లయింట్ లేదా ఏ ఇతర XMPP క్లయింట్ ఉపయోగించవచ్చు." @@ -844,16 +900,11 @@ msgstr "వెబ్ క్లయింట్ ని ప్రారంభిం msgid "Configuration" msgstr "ఆకృతీకరణ" -#: plinth/modules/ejabberd/views.py:60 plinth/modules/openvpn/views.py:145 -#: plinth/modules/tor/views.py:134 plinth/views.py:103 -msgid "Setting unchanged" -msgstr "మారకుండా అమర్చుతోంది" - -#: plinth/modules/ejabberd/views.py:64 plinth/views.py:107 +#: plinth/modules/ejabberd/views.py:64 plinth/views.py:116 msgid "Application enabled" msgstr "అనువర్తనం ఆమోదింపబడింది" -#: plinth/modules/ejabberd/views.py:67 plinth/views.py:110 +#: plinth/modules/ejabberd/views.py:67 plinth/views.py:119 msgid "Application disabled" msgstr "అనువర్తనం ఆమోదింపబడలేదు" @@ -905,13 +956,13 @@ msgid "Service/Port" msgstr "సేవ / పోర్ట్" #: plinth/modules/firewall/templates/firewall.html:65 -#: plinth/modules/letsencrypt/templates/letsencrypt.html:88 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:94 #: plinth/modules/names/templates/names.html:49 msgid "Enabled" msgstr "క్రియాశీలీ" #: plinth/modules/firewall/templates/firewall.html:68 -#: plinth/modules/letsencrypt/templates/letsencrypt.html:90 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:96 #: plinth/modules/names/templates/names.html:51 #: plinth/modules/networks/forms.py:63 msgid "Disabled" @@ -1152,24 +1203,47 @@ msgid "" "Please remove any passwords or other personal information from the log " "before submitting the bug report." msgstr "" -"బగ్ (తప్పుల) నివేదిక సమర్పించే ముందు దయచేసి లాగ్ నుండి ఏవైనా రహస్యపదాలను లేదా" -" ఇతర వ్యక్తిగత సమాచారాన్ని తొలగించగలరు." +"బగ్ (తప్పుల) నివేదిక సమర్పించే ముందు దయచేసి లాగ్ నుండి ఏవైనా రహస్యపదాలను లేదా ఇతర వ్యక్తిగత సమాచారాన్ని " +"తొలగించగలరు." -#: plinth/modules/ikiwiki/__init__.py:39 -msgid "Wiki and Blog (ikiwiki)" -msgstr "వికీ & బ్లాగ్ (Ikiwiki)" +#: plinth/modules/ikiwiki/__init__.py:41 +#, fuzzy +#| msgid "Enable Ikiwiki" +msgid "ikiwiki" +msgstr "Ikiwiki అమలుచెయ్యి" -#: plinth/modules/ikiwiki/__init__.py:42 +#: plinth/modules/ikiwiki/__init__.py:43 +#, fuzzy +#| msgid "Wiki & Blog" +msgid "Wiki and Blog" +msgstr "వికీ & బ్లాగ్" + +#: plinth/modules/ikiwiki/__init__.py:46 +#, fuzzy +#| msgid "" +#| "ikiwiki is a simple wiki and blog application. It supports several " +#| "lightweight markup languages, including Markdown, and common blogging " +#| "functionality such as comments and RSS feeds. When enabled, the blogs and " +#| "wikis will be available from /ikiwiki." msgid "" "ikiwiki is a simple wiki and blog application. It supports several " "lightweight markup languages, including Markdown, and common blogging " "functionality such as comments and RSS feeds. When enabled, the blogs and " -"wikis will be available from /ikiwiki." +"wikis will be available at /ikiwiki (once created)." msgstr "" "ఈకివికి ఒక సాధారణ వికీ మరియు బ్లాగ్ అప్లికేషన్. ఇది అనేక తేలికైన మార్కప్ బాషలకు మరియు వ్యాఖ్యానాలు, ఆర్.ఎస్." "ఎస్ ఫీడ్లు వంటి సాధారణ బ్లాగింగ్ కార్యాచరణకు సహకరిస్తుంది. దీన్ని ఆమోదించినప్పుడు మీ బ్లాగులు మరియు " "వికిలు /ఈకివికి వద్ద అందుబాటులో ఉంటాయి." +#: plinth/modules/ikiwiki/__init__.py:53 +#, python-brace-format +msgid "" +"Only {box_name} users in the admin group can create and " +"manage blogs and wikis, but any user in the wiki group can " +"edit existing ones. In the User " +"Configuration you can change these permissions or add new users." +msgstr "" + #: plinth/modules/ikiwiki/forms.py:34 #: plinth/modules/networks/templates/connection_show.html:78 msgid "Name" @@ -1177,8 +1251,7 @@ msgstr "పేరు" #: plinth/modules/ikiwiki/forms.py:35 msgid "Only alphanumeric characters are allowed." -msgstr "" -"ఆల్ఫాన్యూమరిక్ అక్షరాలు (ఆంగ్ల అక్షరాలు మరియు అంకెలు) మాత్రమే అనుమతించబడతాయి." +msgstr "ఆల్ఫాన్యూమరిక్ అక్షరాలు (ఆంగ్ల అక్షరాలు మరియు అంకెలు) మాత్రమే అనుమతించబడతాయి." #: plinth/modules/ikiwiki/forms.py:38 msgid "Admin Account Name" @@ -1282,18 +1355,20 @@ msgid "Delete Wiki or Blog" msgstr "వికీ లేదా బ్లాగును తొలగించు" #: plinth/modules/infinoted/__init__.py:43 -#, fuzzy -#| msgid "Gobby Server (infinoted)" -msgid "" -"Gobby Server \n" -" (infinoted)" -msgstr "గొబ్బయ్ సర్వర్ (ఇన్ఫినోటెడ్)" +msgid "infinoted" +msgstr "" -#: plinth/modules/infinoted/__init__.py:46 +#: plinth/modules/infinoted/__init__.py:45 +#, fuzzy +#| msgid "Web Server" +msgid "Gobby Server" +msgstr "జాల సేవకం" + +#: plinth/modules/infinoted/__init__.py:48 msgid "infinoted is a server for Gobby, a collaborative text editor." msgstr "Gobby కోసం ఇన్ఫినోటెడ్ అనేది ఒక సర్వర్,ఒక సహకార టెక్స్ట్ ఎడిటర్." -#: plinth/modules/infinoted/__init__.py:49 +#: plinth/modules/infinoted/__init__.py:51 #, python-brace-format msgid "" "To use it, download Gobby, desktop " @@ -1302,34 +1377,43 @@ msgid "" msgstr "" #: plinth/modules/jsxc/__init__.py:36 +msgid "JSXC" +msgstr "" + +#: plinth/modules/jsxc/__init__.py:38 #, fuzzy -msgid "" -"Chat Client \n" -" (JSXC)" +msgid "Chat Client" msgstr "" "చాట్ క్లయింట్\n" " (JSXC)" -#: plinth/modules/jsxc/__init__.py:40 +#: plinth/modules/jsxc/__init__.py:42 msgid "" "JSXC is a web client for XMPP. Typically it is used with an XMPP server " "running locally." msgstr "" "JSXC XMPP కోసం ఒక వెబ్ కక్షిదారి. సాధారణంగా ఇది ఒక XMPP సర్వర్ స్థానికంగా అమలు చేయటానికి ఉపయోగిస్తారు." -#: plinth/modules/jsxc/__init__.py:78 +#: plinth/modules/jsxc/__init__.py:80 #, fuzzy msgid "" "Chat Client \n" " (jsxc)" msgstr "ఐ ర్ సి క్లయింట్ (Quassel)" -#: plinth/modules/letsencrypt/__init__.py:39 -#: plinth/modules/letsencrypt/__init__.py:64 -msgid "Certificates (Let's Encrypt)" +#: plinth/modules/letsencrypt/__init__.py:40 +#, fuzzy +#| msgid "Certificates (Let's Encrypt)" +msgid "Let's Encrypt" msgstr "యోగ్యతాపత్రాలు (ఎన్క్రిప్ట్ చేసాద్దాం)" -#: plinth/modules/letsencrypt/__init__.py:43 +#: plinth/modules/letsencrypt/__init__.py:42 +#, fuzzy +#| msgid "Certificate Status" +msgid "Certificates" +msgstr "యోగ్యతాపత్రం స్థితి" + +#: plinth/modules/letsencrypt/__init__.py:46 #, fuzzy, python-brace-format msgid "" "A digital certificate allows users of a web service to verify the identity " @@ -1343,7 +1427,7 @@ msgstr "" "కొరకు సెటప్ డిజిటల్ సర్టిఫికెట్లు చేయవచ్చు. ఇది ఎన్క్రిప్ట్ తెలపండి ఒక డొమైన్ యొక్క యజమాని, ధృవపత్ర (CA) " "ఉన్నట్లు రుజువు చేసుకుంటూ అవుతున్నారు." -#: plinth/modules/letsencrypt/__init__.py:50 +#: plinth/modules/letsencrypt/__init__.py:53 #, fuzzy msgid "" "Let's Encrypt is a free, automated, and open certificate authority, run for " @@ -1372,61 +1456,106 @@ msgstr "వెబ్‌సైటు భద్రత" msgid "Actions" msgstr "చర్యలు" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:56 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:62 #, fuzzy, python-format #| msgid "Expires on %(expiry_date)s" msgid "Valid, expires on %(expiry_date)s" msgstr "%(expiry_date)s న కాలం చెల్లుతుంది" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:63 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:69 msgid "Revoked" msgstr "ఉపసంహరించుకొనబడింది" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:67 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:73 #, python-format msgid "Expired on %(expiry_date)s" msgstr "%(expiry_date)s న కాలం చెల్లినది" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:71 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:77 #, fuzzy msgid "Invalid test certificate" msgstr "చెల్లని గాలిపటం పేరు" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:75 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:81 #, python-format msgid "Invalid (%(reason)s)" msgstr "" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:82 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:88 msgid "No certificate" msgstr "ధృవీకరణ పత్రం లేదు" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:99 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:105 msgid "Re-obtain" msgstr "తిరిగి-పొందు" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:105 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:111 #: plinth/modules/networks/templates/connection_show.html:63 #: plinth/modules/snapshot/templates/snapshot.html:34 msgid "Delete" msgstr "తొలగించు" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:112 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:118 msgid "Revoke" msgstr "ఉపసంహరించుకొను" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:120 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:126 msgid "Obtain" msgstr "పొందు" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:133 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:149 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:156 +#, fuzzy +#| msgid "Update" +msgid "Update config" +msgstr "నవీకరణ యూ.ఆర్.ఎల్" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:161 +#, python-format +msgid "" +"\n" +" Let Plinth manage certificate renewal of\n" +" %(current_domain)s (recommended)\n" +" " +msgstr "" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:166 +msgid "" +"\n" +" Let Plinth manage certificate renewal of the current domain " +"(recommended)\n" +" " +msgstr "" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:175 +#, python-format +msgid "" +"If %(box_name)s manages the certificate renewal for the current domain, it " +"will ensure that all apps that use the certificate can use it, as soon as it " +"gets renewed." +msgstr "" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:181 +msgid "" +"No certificate available for the current domain. First obtain a " +"certificate to enable management of its renewal." +msgstr "" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:186 +#, fuzzy +msgid "" +"No current domain is configured. First configure a domain to enable " +"management of its certificates." +msgstr "తోబుట్టువుల డొమైన్లు కన్ఫిగర్ చేయబడ్డాయి. వారికి సర్టిఫికేట్లు పొందగలగటం డొమైన్ ఆకృతీకరించుము." + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:195 #, fuzzy msgid "" "No domains have been configured. Configure domains to be able to obtain " "certificates for them." msgstr "తోబుట్టువుల డొమైన్లు కన్ఫిగర్ చేయబడ్డాయి. వారికి సర్టిఫికేట్లు పొందగలగటం డొమైన్ ఆకృతీకరించుము." -#: plinth/modules/letsencrypt/views.py:55 +#: plinth/modules/letsencrypt/views.py:57 #, fuzzy, python-brace-format #| msgid "Certificate successfully revoked for domain {domain}" msgid "" @@ -1434,42 +1563,71 @@ msgid "" "moments to take effect." msgstr "{domain} డోమైన్ కొరకు సర్టిఫికేట్ ఉప్సంహరుంచుకొనబడింది" -#: plinth/modules/letsencrypt/views.py:61 +#: plinth/modules/letsencrypt/views.py:63 #, python-brace-format msgid "Failed to revoke certificate for domain {domain}: {error}" msgstr "{domain} డోమైన్ కొరకు సర్టిఫికేట్ ఉప్సంహరుంచుకొనడంలో విఫలం: {error}" -#: plinth/modules/letsencrypt/views.py:73 +#: plinth/modules/letsencrypt/views.py:75 #, python-brace-format msgid "Certificate successfully obtained for domain {domain}" msgstr "{domain} డోమైన్ కొరకు సర్టిఫికేట్ సంపాదింపబడింది" -#: plinth/modules/letsencrypt/views.py:78 +#: plinth/modules/letsencrypt/views.py:81 #, python-brace-format msgid "Failed to obtain certificate for domain {domain}: {error}" msgstr "{domain} డోమైన్ కొరకు సర్టిఫికేట్ సంపాదించుటలో విఫలం: {error}" #: plinth/modules/letsencrypt/views.py:90 +#: plinth/modules/letsencrypt/views.py:109 +#, fuzzy, python-brace-format +#| msgid "Certificate successfully revoked for domain {domain}" +msgid "Certificate renewal management enabled for {domain}." +msgstr "{domain} డోమైన్ కొరకు సర్టిఫికేట్ ఉప్సంహరుంచుకొనబడింది" + +#: plinth/modules/letsencrypt/views.py:95 +#, fuzzy, python-brace-format +#| msgid "Failed to delete certificate for domain {domain}: {error}" +msgid "Failed to enable certificate renewal management for {domain}: {error}" +msgstr "{domain} డోమైన్ కొరకు ధృవీకరణపత్రం నిర్మూలించడంలో విఫలం: {error}" + +#: plinth/modules/letsencrypt/views.py:112 +#, fuzzy, python-brace-format +#| msgid "Certificate successfully revoked for domain {domain}" +msgid "Certificate renewal management disabled for {domain}." +msgstr "{domain} డోమైన్ కొరకు సర్టిఫికేట్ ఉప్సంహరుంచుకొనబడింది" + +#: plinth/modules/letsencrypt/views.py:118 +#, fuzzy, python-brace-format +#| msgid "Failed to obtain certificate for domain {domain}: {error}" +msgid "Failed to switch certificate renewal management for {domain}: {error}" +msgstr "{domain} డోమైన్ కొరకు సర్టిఫికేట్ సంపాదించుటలో విఫలం: {error}" + +#: plinth/modules/letsencrypt/views.py:134 +#, fuzzy, python-brace-format +#| msgid "Failed to delete certificate for domain {domain}: {error}" +msgid "Failed to disable certificate renewal management for {domain}: {error}" +msgstr "{domain} డోమైన్ కొరకు ధృవీకరణపత్రం నిర్మూలించడంలో విఫలం: {error}" + +#: plinth/modules/letsencrypt/views.py:141 #, fuzzy, python-brace-format #| msgid "Certificate successfully revoked for domain {domain}" msgid "Certificate successfully deleted for domain {domain}" msgstr "{domain} డోమైన్ కొరకు సర్టిఫికేట్ ఉప్సంహరుంచుకొనబడింది" -#: plinth/modules/letsencrypt/views.py:95 +#: plinth/modules/letsencrypt/views.py:146 #, python-brace-format msgid "Failed to delete certificate for domain {domain}: {error}" msgstr "{domain} డోమైన్ కొరకు ధృవీకరణపత్రం నిర్మూలించడంలో విఫలం: {error}" #: plinth/modules/matrixsynapse/__init__.py:41 #, fuzzy -msgid "" -"Chat Server \n" -" (Matrix Synapse)" +msgid "Matrix Synapse" msgstr "" "చాట్ సర్వర్\n" " (ejabberd)" -#: plinth/modules/matrixsynapse/__init__.py:44 +#: plinth/modules/matrixsynapse/__init__.py:46 msgid "" "Matrix is an new " "ecosystem for open, federated instant messaging and VoIP. Synapse is a " @@ -1479,17 +1637,13 @@ msgid "" "converse with users on all other Matrix servers via federation." msgstr "" -#: plinth/modules/matrixsynapse/__init__.py:52 +#: plinth/modules/matrixsynapse/__init__.py:54 msgid "" "To communicate, you can use the available clients for mobile, desktop and the web. Riot client is recommended." msgstr "" -#: plinth/modules/matrixsynapse/forms.py:31 -msgid "Select the domain name" -msgstr "డొమైన్ పేరు ఎంచుకోండి" - #: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:34 msgid "" "Matrix service needs to be configured for a domain. Users on other Matrix " @@ -1521,14 +1675,16 @@ msgid "" msgstr "" #: plinth/modules/minetest/__init__.py:48 +msgid "Minetest" +msgstr "" + +#: plinth/modules/minetest/__init__.py:50 #, fuzzy #| msgid "Block Sandbox (Minetest)" -msgid "" -"Block Sandbox \n" -" (Minetest)" +msgid "Block Sandbox" msgstr "స్యాండ్ బాక్స్ ను అడ్డగించు (మైన్ పరీక్ష)" -#: plinth/modules/minetest/__init__.py:52 +#: plinth/modules/minetest/__init__.py:54 #, fuzzy, python-brace-format msgid "" "Minetest is a multiplayer infinite-world block sandbox. This module enables " @@ -1687,7 +1843,7 @@ msgstr "సెక్యూర్ షెల్" #: plinth/modules/monkeysphere/templates/monkeysphere.html:87 #: plinth/modules/monkeysphere/templates/monkeysphere_details.html:60 -#: plinth/service.py:117 +#: plinth/service.py:116 msgid "Web Server" msgstr "జాల సేవకం" @@ -1786,14 +1942,20 @@ msgid "Error occurred while publishing key." msgstr "కీని ప్రచురించేటప్పుడు దోషం సంభవించింది." #: plinth/modules/mumble/__init__.py:35 -msgid "" -"Voice Chat \n" -" (Mumble)" +msgid "Mumble" +msgstr "" + +#: plinth/modules/mumble/__init__.py:37 +#, fuzzy +#| msgid "" +#| "Voice Chat \n" +#| " (Mumble)" +msgid "Voice Chat" msgstr "" "స్వర సంభాషణ \n" " (Mumble)" -#: plinth/modules/mumble/__init__.py:44 +#: plinth/modules/mumble/__init__.py:46 msgid "" "Mumble is an open source, low-latency, encrypted, high quality voice chat " "software." @@ -1801,7 +1963,7 @@ msgstr "" "మంబుల్ అనేది తక్కువ-జాప్యత, ఎన్క్రిప్టెడ్, అధిక నాణ్యతా వంటి విశిష్టలతో కూడిన ఒక ఓపెన్ సోర్స్ స్వర సంభాషణా " "సాఫ్ట్‌వేర్." -#: plinth/modules/mumble/__init__.py:47 +#: plinth/modules/mumble/__init__.py:49 #, fuzzy msgid "" "You can connect to your Mumble server on the regular Mumble port 64738. Download Profile" @@ -2545,10 +2709,16 @@ msgstr "అమరక విఫలమైంది." #: plinth/modules/pagekite/__init__.py:44 #, fuzzy -msgid "Public Visibility (PageKite)" +#| msgid "Pagekite" +msgid "PageKite" +msgstr "పేజ్ కైట్" + +#: plinth/modules/pagekite/__init__.py:46 +#, fuzzy +msgid "Public Visibility" msgstr "పబ్లిక్ దృష్టి గోచరత (PageKite)" -#: plinth/modules/pagekite/__init__.py:48 +#: plinth/modules/pagekite/__init__.py:50 #, fuzzy, python-brace-format msgid "" "PageKite is a system for exposing {box_name} services when you don't have a " @@ -2560,17 +2730,17 @@ msgstr "" "లేనప్పుడు కోసం ఒక వ్యవస్థ. మీ {box_name} 2 సేవలు ఇంటర్నెట్ మిగిలిన నుండి అందుబాటులో ఉంటే మీరు " "మాత్రమే ఈ అవసరం. ఈ క్రింది సందర్భాలలో కలిగి:" -#: plinth/modules/pagekite/__init__.py:55 +#: plinth/modules/pagekite/__init__.py:57 #, fuzzy, python-brace-format msgid "{box_name} is behind a restricted firewall." msgstr "{Box_name} 1 నిరోధిత ఫైర్వాల్ వెనుక ఉంది." -#: plinth/modules/pagekite/__init__.py:59 +#: plinth/modules/pagekite/__init__.py:61 #, fuzzy, python-brace-format msgid "{box_name} is connected to a (wireless) router which you don't control." msgstr "{Box_name} 1 మీరు నియంత్రించే లేని ఒక (వైర్లెస్) రౌటర్ అనుసంధానించబడిన." -#: plinth/modules/pagekite/__init__.py:62 +#: plinth/modules/pagekite/__init__.py:64 #, fuzzy msgid "" "Your ISP does not provide you an external IP address and instead provides " @@ -2579,7 +2749,7 @@ msgstr "" "మీ ISP మీరు ఒక బాహ్య IP చిరునామా అందించడం లేదు మరియు బదులుగా NAT ద్వారా ఇంటర్నెట్ కనెక్షన్ " "అందిస్తుంది." -#: plinth/modules/pagekite/__init__.py:65 +#: plinth/modules/pagekite/__init__.py:67 #, fuzzy msgid "" "Your ISP does not provide you a static IP address and your IP address " @@ -2588,12 +2758,12 @@ msgstr "" "మీ ISP మీరు స్టాటిక్ IP చిరునామా అందించడం లేదు మరియు మీ IP చిరునామా మీరు ఇంటర్నెట్ కు కనెక్ట్ ప్రతి " "సమయ మార్పులు." -#: plinth/modules/pagekite/__init__.py:68 +#: plinth/modules/pagekite/__init__.py:70 #, fuzzy msgid "Your ISP limits incoming connections." msgstr "మీ ISP ఇన్కమింగ్ కనెక్షన్లను పరిమితం చేస్తుంది." -#: plinth/modules/pagekite/__init__.py:71 +#: plinth/modules/pagekite/__init__.py:73 #, python-brace-format msgid "" "PageKite works around NAT, firewalls and IP-address limitations by using a " @@ -2905,8 +3075,8 @@ msgstr "కస్టమ్ సేవలు" msgid "Pagekite setup finished. The HTTP and HTTPS services are activated now." msgstr "పేజెకైట్ ఏర్పాటు పూర్తి అయినది. ఏచ్.టి.టి.పి మరియు ఏచ్.టి.టి.పి.ఎస్ సేవలు క్రియాశీలకంగా చేయబడ్డాయి." -#: plinth/modules/power/__init__.py:28 plinth/modules/power/views.py:50 -#: plinth/modules/power/views.py:65 +#: plinth/modules/power/__init__.py:28 plinth/modules/power/views.py:51 +#: plinth/modules/power/views.py:67 msgid "Power" msgstr "శక్తి" @@ -2915,10 +3085,16 @@ msgid "Restart or shut down the system." msgstr "పునఃప్రారంభించండి లేదా సిస్టమ్ మూసివేయండి." #: plinth/modules/power/templates/power.html:28 +msgid "" +"Currently an installation or upgrade is running. Consider waiting until it's " +"finished before shutting down or restarting." +msgstr "" + +#: plinth/modules/power/templates/power.html:37 msgid "Restart »" msgstr "» ని పునఃప్రారంభించండి;" -#: plinth/modules/power/templates/power.html:31 +#: plinth/modules/power/templates/power.html:40 msgid "Shut Down »" msgstr "» ని మూసివేయండి;" @@ -2930,7 +3106,14 @@ msgstr "" "మీరు ఖచ్చితంగా మళ్ళీ ప్రారంభించాలని మీరు భావిస్తున్నారా? మీరు సిస్టమ్ ని పునఃప్రారంభిచెంత వరకు కొన్ని " "నిమిషాలు ఈ వెబ్ ఇంటర్ఫేస్ ని యాక్సెస్ చేయలేరు." -#: plinth/modules/power/templates/power_restart.html:42 +#: plinth/modules/power/templates/power_restart.html:38 +msgid "" +"Currently an installation or upgrade is running. Consider waiting until it's " +"finished before restarting." +msgstr "" + +#: plinth/modules/power/templates/power_restart.html:52 +#: plinth/modules/power/templates/power_restart.html:55 msgid "Restart Now" msgstr "మళ్ళీ పునఃప్రారంభించండి" @@ -2941,25 +3124,34 @@ msgid "" msgstr "" "మీరు ఖచ్చితంగా మూసివేయాలనుకుంటున్నారా ? మీరు మూసివేసిన తరువాత ఈ వెబ్ ఇంటర్ఫేస్ ని యాక్సెస్ చేయలేరు." -#: plinth/modules/power/templates/power_shutdown.html:41 +#: plinth/modules/power/templates/power_shutdown.html:37 +msgid "" +"Currently an installation or upgrade is running. Consider waiting until it's " +"finished before shutting down." +msgstr "" + +#: plinth/modules/power/templates/power_shutdown.html:51 +#: plinth/modules/power/templates/power_shutdown.html:54 msgid "Shut Down Now" msgstr "ఇపుడు మూసివేయండి" #: plinth/modules/privoxy/__init__.py:43 +msgid "Privoxy" +msgstr "" + +#: plinth/modules/privoxy/__init__.py:45 #, fuzzy -msgid "" -"Web Proxy \n" -" (Privoxy)" +msgid "Web Proxy" msgstr "వెబ్ ప్రాక్సీ (Privoxy)" -#: plinth/modules/privoxy/__init__.py:46 +#: plinth/modules/privoxy/__init__.py:48 msgid "" "Privoxy is a non-caching web proxy with advanced filtering capabilities for " "enhancing privacy, modifying web page data and HTTP headers, controlling " "access, and removing ads and other obnoxious Internet junk. " msgstr "" -#: plinth/modules/privoxy/__init__.py:52 +#: plinth/modules/privoxy/__init__.py:54 #, python-brace-format msgid "" "You can use Privoxy by modifying your browser proxy settings to your " @@ -2969,19 +3161,21 @@ msgid "" "\">http://p.p." msgstr "" -#: plinth/modules/privoxy/__init__.py:144 +#: plinth/modules/privoxy/__init__.py:147 #, python-brace-format msgid "Access {url} with proxy {proxy} on tcp{kind}" msgstr "టీసీపీ{kind} పై{proxy} తో యాక్సిస్ {url} చేయండి" #: plinth/modules/quassel/__init__.py:42 +msgid "Quassel" +msgstr "" + +#: plinth/modules/quassel/__init__.py:44 #, fuzzy -msgid "" -"IRC Client \n" -" (Quassel)" +msgid "IRC Client" msgstr "ఐ ర్ సి క్లయింట్ (Quassel)" -#: plinth/modules/quassel/__init__.py:46 +#: plinth/modules/quassel/__init__.py:48 #, python-brace-format msgid "" "Quassel is an IRC application that is split into two parts, a \"core\" and a " @@ -2992,7 +3186,7 @@ msgid "" "connect and disconnect from it." msgstr "" -#: plinth/modules/quassel/__init__.py:54 +#: plinth/modules/quassel/__init__.py:56 msgid "" "You can connect to your Quassel core on the default Quassel port 4242. " "Clients to connect to Quassel from your supported " -"client application is needed. Radicale can be accessed by any user with " -"a {box_name} login." +"radicale.org/clients/\">supported client application is needed. Radicale " +"can be accessed by any user with a {box_name} login." msgstr "" #: plinth/modules/radicale/forms.py:28 @@ -3040,14 +3235,16 @@ msgid "Access rights configuration updated" msgstr "ఆకృతీకరణ నవీకరించబడింది" #: plinth/modules/repro/__init__.py:38 -#, fuzzy -#| msgid "GnudIP Server Address" -msgid "" -"SIP Server \n" -" (repro)" -msgstr "సేవిక చిరునామా GnudIP" +msgid "repro" +msgstr "" -#: plinth/modules/repro/__init__.py:41 +#: plinth/modules/repro/__init__.py:40 +#, fuzzy +#| msgid "DNS Server" +msgid "SIP Server" +msgstr "DNS సేవకం" + +#: plinth/modules/repro/__init__.py:43 msgid "" "repro provides various SIP services that a SIP softphone can utilize to " "provide audio and video calls as well as presence and instant messaging. " @@ -3056,7 +3253,7 @@ msgid "" "communications to other servers on the Internet similar to email." msgstr "" -#: plinth/modules/repro/__init__.py:48 +#: plinth/modules/repro/__init__.py:50 msgid "" "To make SIP calls, a client application is needed. Available clients include " "Jitsi (for computers) and (for Android phones)." msgstr "" -#: plinth/modules/repro/__init__.py:53 +#: plinth/modules/repro/__init__.py:55 msgid "" "Note: Before using repro, domains and users will need to " "be configured using the web-based " @@ -3074,13 +3271,15 @@ msgid "" msgstr "" #: plinth/modules/restore/__init__.py:36 +msgid "reStore" +msgstr "" + +#: plinth/modules/restore/__init__.py:38 #, fuzzy -msgid "" -"Unhosted Storage \n" -" (reStore)" +msgid "Unhosted Storage" msgstr "అన్హొస్టెడ్ స్టోరేజ్ ని (పునరుద్ధరించండి)" -#: plinth/modules/restore/__init__.py:40 +#: plinth/modules/restore/__init__.py:42 #, python-brace-format msgid "" "reStore is a server for unhosted web " @@ -3090,7 +3289,7 @@ msgid "" "becomes your unhosted storage server." msgstr "" -#: plinth/modules/restore/__init__.py:47 +#: plinth/modules/restore/__init__.py:49 msgid "" "You can create and edit accounts in the reStore web-" "interface." @@ -3099,13 +3298,15 @@ msgstr "" "పునరుద్ధరించండి." #: plinth/modules/roundcube/__init__.py:35 +msgid "Roundcube" +msgstr "" + +#: plinth/modules/roundcube/__init__.py:37 #, fuzzy -msgid "" -"Email Client \n" -" (Roundcube)" +msgid "Email Client" msgstr "తపాల బంట్రౌతు(Roundcube)" -#: plinth/modules/roundcube/__init__.py:38 +#: plinth/modules/roundcube/__init__.py:40 msgid "" "Roundcube webmail is a browser-based multilingual IMAP client with an " "application-like user interface. It provides full functionality you expect " @@ -3113,7 +3314,7 @@ msgid "" "manipulation, message searching and spell checking." msgstr "" -#: plinth/modules/roundcube/__init__.py:44 +#: plinth/modules/roundcube/__init__.py:46 msgid "" "You can access Roundcube from /roundcube. Provide " "the username and password of the email account you wish to access followed " @@ -3122,7 +3323,7 @@ msgid "" "server field like imaps://imap.example.com." msgstr "" -#: plinth/modules/roundcube/__init__.py:51 +#: plinth/modules/roundcube/__init__.py:53 msgid "" "For Gmail, username will be your Gmail address, password will be your Google " "account password and server will be imaps://imap.gmail.com. " @@ -3146,32 +3347,45 @@ msgstr "" "అవగలరు లేదా ఎస్ ఎస్ అహ్ ద్వారా . కన్సోల్ వాడుకదారులు మరింత అనుమతి లేకుండా కొన్ని సేవలు యాక్సెస్ " "చేయవచ్చు." -#: plinth/modules/security/views.py:63 +#: plinth/modules/security/forms.py:35 +msgid "Fail2ban (recommended)" +msgstr "" + +#: plinth/modules/security/forms.py:36 +msgid "" +"When this option is enabled, fail2ban will limit brute force break-in " +"attempts to the SSH server and other password protected internet-services " +"which are enabled." +msgstr "" + +#: plinth/modules/security/views.py:66 #, fuzzy, python-brace-format #| msgid "Error setting time zone: {exception}" msgid "Error setting restricted access: {exception}" msgstr "సమయమండలం అమర్పులోపం: {exception}" -#: plinth/modules/security/views.py:66 +#: plinth/modules/security/views.py:69 #, fuzzy #| msgid "General Configuration" msgid "Updated security configuration" msgstr "సాధారణ ఆకృతీకరణ" #: plinth/modules/shaarli/__init__.py:35 +msgid "Shaarli" +msgstr "" + +#: plinth/modules/shaarli/__init__.py:37 #, fuzzy -msgid "" -"Bookmarks \n" -" (Shaarli)" +msgid "Bookmarks" msgstr "" "గుర్తుంచు\n" " (Shaarli)" -#: plinth/modules/shaarli/__init__.py:38 +#: plinth/modules/shaarli/__init__.py:40 msgid "Shaarli allows you to save and share bookmarks." msgstr "రు బుక్మార్క్లు ని సేవ్ మరియు పంచుకొనుటకు షార్లి అనుమతిస్తుంది." -#: plinth/modules/shaarli/__init__.py:40 +#: plinth/modules/shaarli/__init__.py:42 msgid "" "When enabled, Shaarli will be available from /shaarli path on the web server. Note that Shaarli only supports a single user " @@ -3293,6 +3507,18 @@ msgstr "రొల్ల్బచ్క్ ని పూర్తి చేయడ msgid "Rollback to Snapshot" msgstr "చాయాచిత్రం కు రొల్ల్బచ్క్ చేయండి" +#: plinth/modules/ssh/__init__.py:37 +msgid "Secure Shell (SSH) Server" +msgstr "" + +#: plinth/modules/ssh/__init__.py:40 +msgid "" +"A Secure Shell server uses the secure shell protocol to accept connections " +"from remote computers. An authorized remote computer can perform " +"administration tasks, copy files or run other services using such " +"connections." +msgstr "" + #: plinth/modules/sso/__init__.py:30 msgid "Single Sign On" msgstr "" @@ -3302,12 +3528,14 @@ msgid "Login" msgstr "ప్రవేశ ద్వారం" #: plinth/modules/syncthing/__init__.py:39 -msgid "" -"File Synchronization \n" -" (Syncthing)" +msgid "Syncthing" msgstr "" -#: plinth/modules/syncthing/__init__.py:42 +#: plinth/modules/syncthing/__init__.py:41 +msgid "File Synchronization" +msgstr "" + +#: plinth/modules/syncthing/__init__.py:44 msgid "" "Syncthing is an application to synchronize files across multiple devices, e." "g. your desktop computer and mobile phone. Creation, modification, or " @@ -3315,7 +3543,7 @@ msgid "" "other devices that also run Syncthing." msgstr "" -#: plinth/modules/syncthing/__init__.py:47 +#: plinth/modules/syncthing/__init__.py:49 #, python-brace-format msgid "" "Running Syncthing on {box_name} provides an extra synchronization point for " @@ -3326,7 +3554,7 @@ msgid "" "{box_name} is only available for users belonging to the \"admin\" group." msgstr "" -#: plinth/modules/syncthing/__init__.py:54 +#: plinth/modules/syncthing/__init__.py:56 msgid "" "When enabled, Syncthing's web interface will be available from /syncthing. Desktop and mobile clients are also Tor Project website. For " @@ -3399,36 +3641,36 @@ msgid "" "\">Tor Browser." msgstr "" -#: plinth/modules/tor/__init__.py:70 plinth/modules/tor/__init__.py:112 +#: plinth/modules/tor/__init__.py:72 plinth/modules/tor/__init__.py:114 msgid "Tor Anonymity Network" msgstr "టోర్ అనామిక నెట్‌వర్క్" -#: plinth/modules/tor/__init__.py:76 plinth/modules/tor/__init__.py:120 +#: plinth/modules/tor/__init__.py:78 plinth/modules/tor/__init__.py:122 msgid "Tor Bridge Relay" msgstr "" -#: plinth/modules/tor/__init__.py:98 plinth/modules/tor/__init__.py:141 +#: plinth/modules/tor/__init__.py:100 plinth/modules/tor/__init__.py:143 msgid "Tor Hidden Service" msgstr "" -#: plinth/modules/tor/__init__.py:160 +#: plinth/modules/tor/__init__.py:162 msgid "Tor relay port available" msgstr "" -#: plinth/modules/tor/__init__.py:168 +#: plinth/modules/tor/__init__.py:170 msgid "Obfs3 transport registered" msgstr "" -#: plinth/modules/tor/__init__.py:174 +#: plinth/modules/tor/__init__.py:176 msgid "Obfs4 transport registered" msgstr "" -#: plinth/modules/tor/__init__.py:211 +#: plinth/modules/tor/__init__.py:213 #, python-brace-format msgid "Access URL {url} on tcp{kind} via Tor" msgstr "" -#: plinth/modules/tor/__init__.py:222 +#: plinth/modules/tor/__init__.py:224 #, python-brace-format msgid "Confirm Tor usage at {url} on tcp{kind}" msgstr "టోర్ వాడుకను నిర్ధారించండి{url} టీ సి పి పై{kind}" @@ -3574,18 +3816,22 @@ msgid "An error occurred during configuration." msgstr "" #: plinth/modules/transmission/__init__.py:38 -msgid "" -"BitTorrent \n" -" (Transmission)" +msgid "Transmission" msgstr "" -#: plinth/modules/transmission/__init__.py:41 +#: plinth/modules/transmission/__init__.py:40 +#, fuzzy +#| msgid "Deluge BitTorrent" +msgid "BitTorrent" +msgstr "బిట్ టొర్రెంట్ ప్రళయం" + +#: plinth/modules/transmission/__init__.py:43 msgid "" "BitTorrent is a peer-to-peer file sharing protocol. Transmission daemon " "handles Bitorrent file sharing. Note that BitTorrent is not anonymous." msgstr "" -#: plinth/modules/transmission/__init__.py:44 +#: plinth/modules/transmission/__init__.py:46 msgid "" "Access the web interface at /transmission." msgstr "" @@ -3611,23 +3857,27 @@ msgid "" "hashed format. To set a new password, enter the password in plain text." msgstr "" -#: plinth/modules/ttrss/__init__.py:37 -msgid "" -"News Feed Reader \n" -" (Tiny Tiny RSS)" +#: plinth/modules/ttrss/__init__.py:39 +msgid "Tiny Tiny RSS" msgstr "" -#: plinth/modules/ttrss/__init__.py:40 +#: plinth/modules/ttrss/__init__.py:41 +msgid "News Feed Reader" +msgstr "" + +#: plinth/modules/ttrss/__init__.py:44 msgid "" "Tiny Tiny RSS is a news feed (RSS/Atom) reader and aggregator, designed to " "allow reading news from any location, while feeling as close to a real " "desktop application as possible." msgstr "" -#: plinth/modules/ttrss/__init__.py:44 +#: plinth/modules/ttrss/__init__.py:49 +#, python-brace-format msgid "" "When enabled, Tiny Tiny RSS will be available from /tt-" -"rss path on the web server." +"rss path on the web server. It can be accessed by any user with a {box_name} login." msgstr "" #: plinth/modules/upgrades/__init__.py:35 @@ -3921,15 +4171,11 @@ msgstr "ప్రసార మాధ్యమం మార్పు" msgid "configuration file: {file}" msgstr "ఆకృతీకరణ ఫైలు: {file}" -#: plinth/service.py:119 +#: plinth/service.py:118 msgid "Web Server over Secure Socket Layer" msgstr "" -#: plinth/service.py:121 -msgid "Secure Shell (SSH) Server" -msgstr "" - -#: plinth/service.py:123 +#: plinth/service.py:120 #, python-brace-format msgid "{box_name} Web Interface (Plinth)" msgstr "" @@ -3972,11 +4218,11 @@ msgid "" "\"%(status_log_url)s\">status log to the bug report." msgstr "" -#: plinth/templates/apps.html:25 +#: plinth/templates/apps.html:33 msgid "Services and Applications" msgstr "సేవ మరియు అనువర్తనాలు" -#: plinth/templates/apps.html:28 +#: plinth/templates/apps.html:36 #, python-format msgid "" "You can install and run various services and applications on your " @@ -3986,7 +4232,7 @@ msgstr "" "మీరు మీ %(box_name)s లో వివిధ సాఫ్ట్‌వేర్లను ఇన్‌స్టాల్ చేసుకొనగలరు. ఏదన్న సాఫ్ట్‌వేర్ గురించి " "తెలుసుకొనుటకు లేదా ఇన్‌స్టాల్ చేస్కోనుటకు మీ ఎడమ వైపున ఉన్న లింక్ మీద నొక్కగలరు." -#: plinth/templates/apps.html:36 +#: plinth/templates/apps.html:44 msgid "" "This box can be your photo sharing site, your instant messaging site, your " "social networking site, your news site. Remember web portals? We can be " @@ -4157,22 +4403,59 @@ msgstr "సంస్థాపన %(package_names)s%:(status)s" msgid "%(percentage)s%% complete" msgstr "%(percentage)s %% పూర్తి" -#: plinth/templates/system.html:25 +#: plinth/templates/system.html:33 msgid "System Configuration" msgstr "వ్యవస్థ రూపశిల్పం" -#: plinth/templates/system.html:28 +#: plinth/templates/system.html:36 #, fuzzy, python-format #| msgid "Here you can administrate the underlying system of your {box_name}." msgid "Here you can administrate the underlying system of your %(box_name)s." msgstr "ఇక్కడ మీరు అంతర్లీన వ్యవస్థ పరిపాలకుడుగా మీ {box_name}." -#: plinth/templates/system.html:34 +#: plinth/templates/system.html:42 #, python-format msgid "" "The options affect the %(box_name)s at its most general level, so be careful!" msgstr "" +#~ msgid "Select the domain name to be used for diaspora*" +#~ msgstr "diaspora* కొరకు వాడవలసిన డొమైన్ పేరును ఎంచుకోండి" + +#, fuzzy +#~ msgid "" +#~ "Warning! Do not change the FreedomBox domain name after setting up " +#~ "diaspora*" +#~ msgstr "హెచ్చరిక! diaspora అమర్చిన తరువాత FreedomBox అధికారక్షేత్రం పేరును మార్చరాదు" + +#, fuzzy +#~ msgid "" +#~ "Chat Server \n" +#~ " (ejabberd)" +#~ msgstr "" +#~ "చాట్ సర్వర్\n" +#~ " (ejabberd)" + +#~ msgid "Wiki and Blog (ikiwiki)" +#~ msgstr "వికీ & బ్లాగ్ (Ikiwiki)" + +#, fuzzy +#~| msgid "Gobby Server (infinoted)" +#~ msgid "" +#~ "Gobby Server \n" +#~ " (infinoted)" +#~ msgstr "గొబ్బయ్ సర్వర్ (ఇన్ఫినోటెడ్)" + +#~ msgid "Select the domain name" +#~ msgstr "డొమైన్ పేరు ఎంచుకోండి" + +#, fuzzy +#~| msgid "GnudIP Server Address" +#~ msgid "" +#~ "SIP Server \n" +#~ " (repro)" +#~ msgstr "సేవిక చిరునామా GnudIP" + #~ msgid "Applications" #~ msgstr "అనువర్తనాలు" @@ -4342,12 +4625,6 @@ msgstr "" #~ msgid "BitTorrent (Deluge)" #~ msgstr "బిట్ టొర్రెంట్ (ప్రళయం)" -#~ msgid "Deluge BitTorrent" -#~ msgstr "బిట్ టొర్రెంట్ ప్రళయం" - -#~ msgid "Enable Deluge" -#~ msgstr "ప్రళయనిఅమలుచెయ్యి" - #~ msgid "System Diagnostics" #~ msgstr "లక్షణములు వ్యవస్థ" @@ -4359,16 +4636,6 @@ msgstr "" #~ msgid "ikiwiki wikis and blogs" #~ msgstr "వికీలు మరియు బ్లాగ్ లు Ikiwik" -#, fuzzy -#~| msgid "Enable Ikiwiki" -#~ msgid "Enable ikiwiki" -#~ msgstr "Ikiwiki అమలుచెయ్యి" - -#, fuzzy -#~| msgid "Wiki & Blog" -#~ msgid "Wiki and Blog" -#~ msgstr "వికీ & బ్లాగ్" - #~ msgid "Mumble Voice Chat Server" #~ msgstr "మంబ్లు సేవిక మాటామంతి గాత్రం" diff --git a/plinth/locale/tr/LC_MESSAGES/django.po b/plinth/locale/tr/LC_MESSAGES/django.po index c074f730e..145e99489 100644 --- a/plinth/locale/tr/LC_MESSAGES/django.po +++ b/plinth/locale/tr/LC_MESSAGES/django.po @@ -6,11 +6,11 @@ msgid "" msgstr "" "Project-Id-Version: \n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2017-07-10 22:56-0400\n" +"POT-Creation-Date: 2017-09-24 11:24-0400\n" "PO-Revision-Date: 2017-07-14 13:54+0000\n" "Last-Translator: John Doe \n" -"Language-Team: Turkish " -"\n" +"Language-Team: Turkish \n" "Language: tr\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -18,37 +18,37 @@ msgstr "" "Plural-Forms: nplurals=2; plural=n > 1;\n" "X-Generator: Weblate 2.16-dev\n" -#: plinth/action_utils.py:254 +#: plinth/action_utils.py:259 #, python-brace-format msgid "Listening on {kind} port {listen_address}:{port}" msgstr "{kind} port {listen_address}:{port} dinleniyor" -#: plinth/action_utils.py:257 +#: plinth/action_utils.py:262 #, python-brace-format msgid "Listening on {kind} port {port}" msgstr "{kind} port {port} dinleniyor" -#: plinth/action_utils.py:352 +#: plinth/action_utils.py:357 #, python-brace-format msgid "Access URL {url} on tcp{kind}" msgstr "tcp{kind} üzerinden {url} bağlantısına eriş" -#: plinth/action_utils.py:356 +#: plinth/action_utils.py:361 #, python-brace-format msgid "Access URL {url}" msgstr "{url} bağlantısına eriş" -#: plinth/action_utils.py:386 +#: plinth/action_utils.py:391 #, python-brace-format msgid "Connect to {host}:{port}" msgstr "{host}:{port} konumuna bağlan" -#: plinth/action_utils.py:389 +#: plinth/action_utils.py:394 #, python-brace-format msgid "Cannot connect to {host}:{port}" msgstr "{host}:{port} konumuna bağlanılamadı" -#: plinth/context_processors.py:38 plinth/views.py:49 +#: plinth/context_processors.py:38 plinth/views.py:52 msgid "FreedomBox" msgstr "FreedomBox" @@ -57,9 +57,17 @@ msgid "Enable application" msgstr "Uygulamayı etkinleştir" #: plinth/forms.py:45 -msgid "Select the domain name to be used for this application" +#, fuzzy +#| msgid "Select the domain name to be used for this application" +msgid "Select a domain name to be used with this application" msgstr "Bu uygulama için kullanılacak alan ismini seç" +#: plinth/forms.py:47 +msgid "" +"Warning! The application may not work properly if domain name is changed " +"later." +msgstr "" + #: plinth/middleware.py:71 msgid "Application installed." msgstr "Uygulama kuruldu." @@ -96,14 +104,20 @@ msgstr "" "için devre dışı bırakılabilir." #: plinth/modules/bind/__init__.py:34 -msgid "" -"Domain Name Server \n" -" (BIND)" +msgid "BIND" +msgstr "" + +#: plinth/modules/bind/__init__.py:36 +#, fuzzy +#| msgid "" +#| "Domain Name Server \n" +#| " (BIND)" +msgid "Domain Name Server" msgstr "" "Alan Adı Sunucusu\n" " (BIND)" -#: plinth/modules/bind/__init__.py:43 +#: plinth/modules/bind/__init__.py:45 msgid "" "BIND is open source software that enables you to publish your Domain Name " "System (DNS) information on the Internet, and to resolve DNS queries for " @@ -113,7 +127,7 @@ msgstr "" "kullanıcılarınızın DNS sorgularının çözümlenmesine imkan veren açık kaynaklı " "bir yazılımdır." -#: plinth/modules/bind/__init__.py:47 +#: plinth/modules/bind/__init__.py:49 msgid "" "BIND is by far the most widely used DNS software on the Internet, providing " "a robust and stable platform on top of which organizations can build " @@ -162,7 +176,7 @@ msgid "Enable forwarding to set forwarding DNS servers" msgstr "İletmeli DNS sunucuları kurmak için yönlendirmeyi etkinleştir" #: plinth/modules/config/config.py:88 plinth/modules/config/config.py:125 -#: plinth/modules/dynamicdns/dynamicdns.py:140 +#: plinth/modules/dynamicdns/dynamicdns.py:148 msgid "Invalid domain name" msgstr "Geçersiz alan ismi" @@ -189,7 +203,7 @@ msgstr "Geçersiz makine ismi" #: plinth/modules/config/config.py:112 plinth/modules/config/config.py:169 #: plinth/modules/config/config.py:285 -#: plinth/modules/dynamicdns/dynamicdns.py:135 +#: plinth/modules/dynamicdns/dynamicdns.py:143 msgid "Domain Name" msgstr "Alan Adı" @@ -219,7 +233,7 @@ msgid "Language for this web administration interface" msgstr "Bu web yönetim arayüzü için kullanılacak dil" #: plinth/modules/config/config.py:151 -#: plinth/modules/dynamicdns/dynamicdns.py:37 +#: plinth/modules/dynamicdns/dynamicdns.py:45 #: plinth/modules/ikiwiki/views.py:37 #: plinth/modules/tahoe/templates/tahoe-pre-setup.html:39 msgid "Configure" @@ -303,18 +317,26 @@ msgid "Time zone set" msgstr "Saat dilimi ayarlandı" #: plinth/modules/deluge/__init__.py:39 -msgid "" -"BitTorrent Web Client \n" -" (Deluge)" +#, fuzzy +#| msgid "Enable Deluge" +msgid "Deluge" +msgstr "Deluge'ü Etkinleştir" + +#: plinth/modules/deluge/__init__.py:41 +#, fuzzy +#| msgid "" +#| "BitTorrent Web Client \n" +#| " (Deluge)" +msgid "BitTorrent Web Client" msgstr "" "BitTorrent Web İstemcisi \n" " (Deluge)" -#: plinth/modules/deluge/__init__.py:42 +#: plinth/modules/deluge/__init__.py:44 msgid "Deluge is a BitTorrent client that features a Web UI." msgstr "Deluge, ağ arayüzü sunan bir BitTorrent istemcisidir." -#: plinth/modules/deluge/__init__.py:44 +#: plinth/modules/deluge/__init__.py:46 msgid "" "When enabled, the Deluge web client will be available from /deluge path on the web server. The default password is 'deluge', but " @@ -381,7 +403,15 @@ msgstr "Test" msgid "Result" msgstr "Sonuç" -#: plinth/modules/diaspora/__init__.py:61 +#: plinth/modules/diaspora/__init__.py:51 +msgid "diaspora*" +msgstr "" + +#: plinth/modules/diaspora/__init__.py:53 +msgid "Federated Social Network" +msgstr "" + +#: plinth/modules/diaspora/__init__.py:62 msgid "" "diaspora* is a decentralized social network where you can store and control " "your own data." @@ -389,14 +419,9 @@ msgstr "" "diaspora* kendi verilerinizi saklayıp kontrol edebileceğiniz merkezi olmayan " "bir sosyal ağdır." -#: plinth/modules/diaspora/forms.py:30 -msgid "Select the domain name to be used for diaspora*" -msgstr "diaspora* için kullanılacak alan ismini seç" - -#: plinth/modules/diaspora/forms.py:32 -msgid "" -"Warning! Do not change the FreedomBox domain name after setting up diaspora*" -msgstr "İkaz! diaspora* kurulduktan sonra FreedomBox alan adını değiştirmeyin" +#: plinth/modules/diaspora/forms.py:31 +msgid "Enable new user registrations" +msgstr "" #: plinth/modules/diaspora/templates/diaspora-post-setup.html:32 #, python-format @@ -428,7 +453,25 @@ msgstr "" msgid "Update setup" msgstr "Kurulumu güncelle" -#: plinth/modules/disks/__init__.py:33 plinth/modules/disks/views.py:39 +#: plinth/modules/diaspora/views.py:96 plinth/modules/ejabberd/views.py:60 +#: plinth/modules/openvpn/views.py:145 plinth/modules/tor/views.py:134 +#: plinth/views.py:112 +msgid "Setting unchanged" +msgstr "Ayar değiştirilmedi" + +#: plinth/modules/diaspora/views.py:100 +#, fuzzy +#| msgid "Application enabled" +msgid "User registrations enabled" +msgstr "Uygulama etkinleştirildi" + +#: plinth/modules/diaspora/views.py:104 +#, fuzzy +#| msgid "Application disabled" +msgid "User registrations disabled" +msgstr "Uygulama devre dışı bırakıldı" + +#: plinth/modules/disks/__init__.py:33 plinth/modules/disks/views.py:45 msgid "Disks" msgstr "Diskler" @@ -474,7 +517,7 @@ msgstr "" #: plinth/modules/disks/templates/disks.html:90 #: plinth/modules/disks/templates/disks.html:102 #: plinth/modules/disks/templates/disks_expand.html:45 -#: plinth/modules/disks/views.py:56 +#: plinth/modules/disks/views.py:62 msgid "Expand Root Partition" msgstr "Kök Bölümünü Genişlet" @@ -497,45 +540,52 @@ msgstr "" "bölümünüzde ilave %(expandable_root_size)s değerinde boş alan " "kullanılabilir olacaktır." -#: plinth/modules/disks/views.py:65 +#: plinth/modules/disks/views.py:71 #, python-brace-format msgid "Error expanding partition: {exception}" msgstr "Bölümün genişletilmesinde hata: {exception}" -#: plinth/modules/disks/views.py:68 +#: plinth/modules/disks/views.py:74 msgid "Partition expanded successfully." msgstr "Bölüm başarılı bir şekilde genişletildi." -#: plinth/modules/disks/views.py:77 +#: plinth/modules/disks/views.py:93 +#, python-format, python-brace-format +msgid "" +"Warning: Low space on system partition ({percent_used}% used, {free_space} " +"free)." +msgstr "" + +#: plinth/modules/disks/views.py:130 #, python-brace-format msgid "{disk_size:.1f} bytes" msgstr "{disk_size:.1f} bayt" -#: plinth/modules/disks/views.py:81 +#: plinth/modules/disks/views.py:134 #, python-brace-format msgid "{disk_size:.1f} KiB" msgstr "{disk_size:.1f} KiB" -#: plinth/modules/disks/views.py:85 +#: plinth/modules/disks/views.py:138 #, python-brace-format msgid "{disk_size:.1f} MiB" msgstr "{disk_size:.1f} MiB" -#: plinth/modules/disks/views.py:89 +#: plinth/modules/disks/views.py:142 #, python-brace-format msgid "{disk_size:.1f} GiB" msgstr "{disk_size:.1f} GiB" -#: plinth/modules/disks/views.py:92 +#: plinth/modules/disks/views.py:145 #, python-brace-format msgid "{disk_size:.1f} TiB" msgstr "{disk_size:.1f} TiB" -#: plinth/modules/dynamicdns/__init__.py:33 +#: plinth/modules/dynamicdns/__init__.py:35 msgid "Dynamic DNS Client" msgstr "Dinamik DNS istemcisi" -#: plinth/modules/dynamicdns/__init__.py:37 +#: plinth/modules/dynamicdns/__init__.py:39 #, python-brace-format msgid "" "If your Internet provider changes your IP address periodically (i.e. every " @@ -547,7 +597,7 @@ msgstr "" "zorlanabilir. Ve bu sebeple kimse sizin ownCloud'unuz gibi {box_name} " "tarafından sunulan servisleri bulamayabilir." -#: plinth/modules/dynamicdns/__init__.py:43 +#: plinth/modules/dynamicdns/__init__.py:45 msgid "" "The solution is to assign a DNS name to your IP address and update the DNS " "name every time your IP is changed by your Internet provider. Dynamic DNS " @@ -564,11 +614,18 @@ msgstr "" "sunucu DNS isminizi yeni IP adresi ile ilişkilendirecek ve İnternet'te " "birisi DNS isminizi sorguladığında güncel IP adresinizi elde edebilecektir." -#: plinth/modules/dynamicdns/dynamicdns.py:35 plinth/modules/help/help.py:40 +#: plinth/modules/dynamicdns/__init__.py:67 +#: plinth/modules/dynamicdns/dynamicdns.py:377 +#, fuzzy +#| msgid "Dynamic DNS Client" +msgid "Dynamic DNS Service" +msgstr "Dinamik DNS istemcisi" + +#: plinth/modules/dynamicdns/dynamicdns.py:43 plinth/modules/help/help.py:40 msgid "About" msgstr "Hakkında" -#: plinth/modules/dynamicdns/dynamicdns.py:39 +#: plinth/modules/dynamicdns/dynamicdns.py:47 #: plinth/modules/firewall/templates/firewall.html:47 #: plinth/modules/networks/templates/connection_show.html:261 #: plinth/modules/openvpn/templates/openvpn.html:67 @@ -577,7 +634,7 @@ msgstr "Hakkında" msgid "Status" msgstr "Durum" -#: plinth/modules/dynamicdns/dynamicdns.py:63 +#: plinth/modules/dynamicdns/dynamicdns.py:71 msgid "" "The Variables <User>, <Pass>, <Ip>, <Domain> may be " "used within the URL. For details see the update URL templates of the example " @@ -587,7 +644,7 @@ msgstr "" "(bağlantıda) kullanılabilir. Ayrıntılar için örnek sunucuların URL " "güncelleme şablonlarına bakınız." -#: plinth/modules/dynamicdns/dynamicdns.py:67 +#: plinth/modules/dynamicdns/dynamicdns.py:75 msgid "" "Please choose an update protocol according to your provider. If your " "provider does not support the GnuDIP protocol or your provider is not listed " @@ -597,7 +654,7 @@ msgstr "" "sağlayıcınız GnuDIP protokolünü desteklemiyorsa ya da listelenmemişse " "sağlayıcınızın güncelleme bağlantısını (URL) kullanabilirsiniz." -#: plinth/modules/dynamicdns/dynamicdns.py:72 +#: plinth/modules/dynamicdns/dynamicdns.py:80 msgid "" "Please do not enter a URL here (like \"https://example.com/\") but only the " "hostname of the GnuDIP server (like \"example.com\")." @@ -605,19 +662,19 @@ msgstr "" "Buraya lütfen \"https://example.com/\" gibi bir URL girmeyin, sadece GnuDIP " "sunucusunun makine ismini girin (\"example.com\" gibi)." -#: plinth/modules/dynamicdns/dynamicdns.py:76 +#: plinth/modules/dynamicdns/dynamicdns.py:84 #, python-brace-format msgid "The public domain name you want to use to reach your {box_name}." msgstr "" "{box_name} kutunuza erişilmesi için kullanmak istediğiniz herkese açık alan " "ismi." -#: plinth/modules/dynamicdns/dynamicdns.py:79 +#: plinth/modules/dynamicdns/dynamicdns.py:87 msgid "Use this option if your provider uses self signed certificates." msgstr "" "Sağlayıcınız kendi imzaladığı sertifikalar kullanıyorsa bu seçeneği kullanın." -#: plinth/modules/dynamicdns/dynamicdns.py:82 +#: plinth/modules/dynamicdns/dynamicdns.py:90 msgid "" "If this option is selected, your username and password will be used for HTTP " "basic authentication." @@ -625,11 +682,11 @@ msgstr "" "Eğer bu seçenek seçiliyse, kullanıcı isminiz ve parolanız temel HTTP kimlik " "doğrulaması için kullanılacaktır." -#: plinth/modules/dynamicdns/dynamicdns.py:85 +#: plinth/modules/dynamicdns/dynamicdns.py:93 msgid "Leave this field empty if you want to keep your current password." msgstr "Güncel parolanızı tutmak istiyorsanız bu alanı boş bırakın." -#: plinth/modules/dynamicdns/dynamicdns.py:88 +#: plinth/modules/dynamicdns/dynamicdns.py:96 #, python-brace-format msgid "" "Optional Value. If your {box_name} is not connected directly to the Internet " @@ -642,82 +699,82 @@ msgstr "" "belirlemek için kullanılır. URL sadece istemcinin bulunduğu yerin IP'sini " "vermelidir (mesela: http://myip.datasystems24.de)." -#: plinth/modules/dynamicdns/dynamicdns.py:96 +#: plinth/modules/dynamicdns/dynamicdns.py:104 msgid "The username that was used when the account was created." msgstr "Hesabın oluşturulduğu zaman kullanılan kullanıcı ismi." -#: plinth/modules/dynamicdns/dynamicdns.py:107 +#: plinth/modules/dynamicdns/dynamicdns.py:115 msgid "Enable Dynamic DNS" msgstr "Dinamik DNS'i Etkinleştir" -#: plinth/modules/dynamicdns/dynamicdns.py:110 +#: plinth/modules/dynamicdns/dynamicdns.py:118 msgid "Service Type" msgstr "Servis Türü" -#: plinth/modules/dynamicdns/dynamicdns.py:115 +#: plinth/modules/dynamicdns/dynamicdns.py:123 msgid "GnuDIP Server Address" msgstr "GnuDIP Sunucu Adresi" -#: plinth/modules/dynamicdns/dynamicdns.py:120 +#: plinth/modules/dynamicdns/dynamicdns.py:128 msgid "Invalid server name" msgstr "Geçersiz sunucu ismi" -#: plinth/modules/dynamicdns/dynamicdns.py:123 +#: plinth/modules/dynamicdns/dynamicdns.py:131 msgid "Update URL" msgstr "URL'i Güncelle" -#: plinth/modules/dynamicdns/dynamicdns.py:127 +#: plinth/modules/dynamicdns/dynamicdns.py:135 msgid "Accept all SSL certificates" msgstr "Tüm SSL sertifikalarını kabul et" -#: plinth/modules/dynamicdns/dynamicdns.py:131 +#: plinth/modules/dynamicdns/dynamicdns.py:139 msgid "Use HTTP basic authentication" msgstr "Temel HTTP kimlik doğrulamasını kullan" -#: plinth/modules/dynamicdns/dynamicdns.py:143 +#: plinth/modules/dynamicdns/dynamicdns.py:151 #: plinth/modules/networks/forms.py:228 plinth/modules/transmission/forms.py:37 msgid "Username" msgstr "Kullanıcı ismi" -#: plinth/modules/dynamicdns/dynamicdns.py:146 +#: plinth/modules/dynamicdns/dynamicdns.py:154 #: plinth/modules/networks/forms.py:229 plinth/modules/transmission/forms.py:41 msgid "Password" msgstr "Parola" -#: plinth/modules/dynamicdns/dynamicdns.py:149 +#: plinth/modules/dynamicdns/dynamicdns.py:157 #: plinth/modules/networks/forms.py:231 msgid "Show password" msgstr "Parolayı göster" -#: plinth/modules/dynamicdns/dynamicdns.py:153 +#: plinth/modules/dynamicdns/dynamicdns.py:161 msgid "URL to look up public IP" msgstr "Genel IP adresini bulmak için URL" -#: plinth/modules/dynamicdns/dynamicdns.py:179 +#: plinth/modules/dynamicdns/dynamicdns.py:187 msgid "Please provide an update URL or a GnuDIP server address" msgstr "Lütfen bir güncelleme URL'i ya da GnuDIP sunucu adresi belirtin" -#: plinth/modules/dynamicdns/dynamicdns.py:184 +#: plinth/modules/dynamicdns/dynamicdns.py:192 msgid "Please provide a GnuDIP username" msgstr "Lütfen bir GnuDIP kullanıcı ismi belirtin" -#: plinth/modules/dynamicdns/dynamicdns.py:188 +#: plinth/modules/dynamicdns/dynamicdns.py:196 msgid "Please provide a GnuDIP domain name" msgstr "Lütfen bir GnuDIP alan ismi belirtin" -#: plinth/modules/dynamicdns/dynamicdns.py:193 +#: plinth/modules/dynamicdns/dynamicdns.py:201 msgid "Please provide a password" msgstr "Lütfen bir parola girin" -#: plinth/modules/dynamicdns/dynamicdns.py:211 +#: plinth/modules/dynamicdns/dynamicdns.py:219 msgid "Configure Dynamic DNS" msgstr "Dİnamik DNS'i Yapılandır" -#: plinth/modules/dynamicdns/dynamicdns.py:232 +#: plinth/modules/dynamicdns/dynamicdns.py:240 msgid "Dynamic DNS Status" msgstr "Dinamik DNS Durumu" -#: plinth/modules/dynamicdns/dynamicdns.py:364 +#: plinth/modules/dynamicdns/dynamicdns.py:381 #: plinth/modules/openvpn/views.py:143 plinth/modules/transmission/views.py:72 msgid "Configuration updated" msgstr "Kurulum güncellendi" @@ -789,15 +846,18 @@ msgstr "" msgid "Last update" msgstr "Son güncelleme" -#: plinth/modules/ejabberd/__init__.py:42 -msgid "" -"Chat Server \n" -" (ejabberd)" -msgstr "" -"Sohbet Sunucusu\n" -" (ejabberd)" - #: plinth/modules/ejabberd/__init__.py:45 +msgid "ejabberd" +msgstr "" + +#: plinth/modules/ejabberd/__init__.py:47 +#: plinth/modules/matrixsynapse/__init__.py:43 +#, fuzzy +#| msgid "Web Server" +msgid "Chat Server" +msgstr "Web Sunucusu" + +#: plinth/modules/ejabberd/__init__.py:50 msgid "" "XMPP is an open and standardized communication protocol. Here you can run " "and configure your XMPP server, called ejabberd." @@ -805,11 +865,17 @@ msgstr "" "XMPP açık ve standardize edilmiş bir iletişim protokolüdür. Burada ejabberd " "isimli XMPP sunucusunu yapılandırıp çalıştırabilirsiniz." -#: plinth/modules/ejabberd/__init__.py:48 +#: plinth/modules/ejabberd/__init__.py:54 +#, fuzzy, python-brace-format +#| msgid "" +#| "To actually communicate, you can use the web client or any other XMPP " +#| "client." msgid "" -"To actually communicate, you can use the web client or any other XMPP client." +"To actually communicate, you can use the web " +"client or any other XMPP client. When enabled, ejabberd can be accessed by " +"any user with a {box_name} login." msgstr "" "İletişim kurmak için ağ istemcisini ya da herhangi bir diğer XMPP istemcisini " @@ -859,16 +925,11 @@ msgstr "Ağ istemcisini başlat" msgid "Configuration" msgstr "Yapılandırma" -#: plinth/modules/ejabberd/views.py:60 plinth/modules/openvpn/views.py:145 -#: plinth/modules/tor/views.py:134 plinth/views.py:103 -msgid "Setting unchanged" -msgstr "Ayar değiştirilmedi" - -#: plinth/modules/ejabberd/views.py:64 plinth/views.py:107 +#: plinth/modules/ejabberd/views.py:64 plinth/views.py:116 msgid "Application enabled" msgstr "Uygulama etkinleştirildi" -#: plinth/modules/ejabberd/views.py:67 plinth/views.py:110 +#: plinth/modules/ejabberd/views.py:67 plinth/views.py:119 msgid "Application disabled" msgstr "Uygulama devre dışı bırakıldı" @@ -923,13 +984,13 @@ msgid "Service/Port" msgstr "Servis/Port" #: plinth/modules/firewall/templates/firewall.html:65 -#: plinth/modules/letsencrypt/templates/letsencrypt.html:88 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:94 #: plinth/modules/names/templates/names.html:49 msgid "Enabled" msgstr "Etkin" #: plinth/modules/firewall/templates/firewall.html:68 -#: plinth/modules/letsencrypt/templates/letsencrypt.html:90 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:96 #: plinth/modules/names/templates/names.html:51 #: plinth/modules/networks/forms.py:63 msgid "Disabled" @@ -1185,16 +1246,28 @@ msgstr "" "Hata raporunu göndermeden önce lütfen kütükten parolaları ve diğer kişisel " "verileri kaldırınız." -#: plinth/modules/ikiwiki/__init__.py:39 -msgid "Wiki and Blog (ikiwiki)" -msgstr "Viki ve Blog (ikiwiki)" +#: plinth/modules/ikiwiki/__init__.py:41 +#, fuzzy +#| msgid "wiki" +msgid "ikiwiki" +msgstr "wiki" -#: plinth/modules/ikiwiki/__init__.py:42 +#: plinth/modules/ikiwiki/__init__.py:43 +msgid "Wiki and Blog" +msgstr "Viki ve Blog" + +#: plinth/modules/ikiwiki/__init__.py:46 +#, fuzzy +#| msgid "" +#| "ikiwiki is a simple wiki and blog application. It supports several " +#| "lightweight markup languages, including Markdown, and common blogging " +#| "functionality such as comments and RSS feeds. When enabled, the blogs and " +#| "wikis will be available from /ikiwiki." msgid "" "ikiwiki is a simple wiki and blog application. It supports several " "lightweight markup languages, including Markdown, and common blogging " "functionality such as comments and RSS feeds. When enabled, the blogs and " -"wikis will be available from /ikiwiki." +"wikis will be available at /ikiwiki (once created)." msgstr "" "ikiwiki sade bir blog ve viki uygulamasıdır. Birçok hafif işaretleme " "dillerini destekler ki buna Markdown dahildir, ayrıca RSS beslemeleri ve " @@ -1202,6 +1275,15 @@ msgstr "" "bloglar ve vikiler /ikiwiki adresinden erişilebilir " "olacaktır." +#: plinth/modules/ikiwiki/__init__.py:53 +#, python-brace-format +msgid "" +"Only {box_name} users in the admin group can create and " +"manage blogs and wikis, but any user in the wiki group can " +"edit existing ones. In the User " +"Configuration you can change these permissions or add new users." +msgstr "" + #: plinth/modules/ikiwiki/forms.py:34 #: plinth/modules/networks/templates/connection_show.html:78 msgid "Name" @@ -1314,20 +1396,22 @@ msgid "Delete Wiki or Blog" msgstr "Viki ya da Blogu Sil" #: plinth/modules/infinoted/__init__.py:43 -msgid "" -"Gobby Server \n" -" (infinoted)" +msgid "infinoted" msgstr "" -"Gobby sunucusu\n" -" (infinoted)" -#: plinth/modules/infinoted/__init__.py:46 +#: plinth/modules/infinoted/__init__.py:45 +#, fuzzy +#| msgid "Web Server" +msgid "Gobby Server" +msgstr "Web Sunucusu" + +#: plinth/modules/infinoted/__init__.py:48 msgid "infinoted is a server for Gobby, a collaborative text editor." msgstr "" "infinoted, işbirliğine izin veren bir metin düzenleyici olan Gobby için bir " "sunucudur." -#: plinth/modules/infinoted/__init__.py:49 +#: plinth/modules/infinoted/__init__.py:51 #, python-brace-format msgid "" "To use it, download Gobby, desktop " @@ -1339,14 +1423,20 @@ msgstr "" "\" seçeneğini seçin ve {box_name} kutunuzun alan adını girin." #: plinth/modules/jsxc/__init__.py:36 -msgid "" -"Chat Client \n" -" (JSXC)" +msgid "JSXC" +msgstr "" + +#: plinth/modules/jsxc/__init__.py:38 +#, fuzzy +#| msgid "" +#| "Chat Client \n" +#| " (JSXC)" +msgid "Chat Client" msgstr "" "Sohbet İstemcisi \n" " (JSXC)" -#: plinth/modules/jsxc/__init__.py:40 +#: plinth/modules/jsxc/__init__.py:42 msgid "" "JSXC is a web client for XMPP. Typically it is used with an XMPP server " "running locally." @@ -1354,7 +1444,7 @@ msgstr "" "JSXC, XMPP için bir web istemcisidir. Tipik olarak yerel şekilde çalışan bir " "XMPP sunucusuyla kullanılır." -#: plinth/modules/jsxc/__init__.py:78 +#: plinth/modules/jsxc/__init__.py:80 msgid "" "Chat Client \n" " (jsxc)" @@ -1362,12 +1452,19 @@ msgstr "" "Sohbet İstemcisi\n" " (jsxc)" -#: plinth/modules/letsencrypt/__init__.py:39 -#: plinth/modules/letsencrypt/__init__.py:64 -msgid "Certificates (Let's Encrypt)" +#: plinth/modules/letsencrypt/__init__.py:40 +#, fuzzy +#| msgid "Certificates (Let's Encrypt)" +msgid "Let's Encrypt" msgstr "Sertifikalar (Let's Encrypt)" -#: plinth/modules/letsencrypt/__init__.py:43 +#: plinth/modules/letsencrypt/__init__.py:42 +#, fuzzy +#| msgid "Certificate Status" +msgid "Certificates" +msgstr "Sertifika Durumu" + +#: plinth/modules/letsencrypt/__init__.py:46 #, python-brace-format msgid "" "A digital certificate allows users of a web service to verify the identity " @@ -1383,7 +1480,7 @@ msgstr "" "bir sertifika otoritesi (Certificate Authority, CA) olan Let's Encrypt'e " "ispatlayarak yapar." -#: plinth/modules/letsencrypt/__init__.py:50 +#: plinth/modules/letsencrypt/__init__.py:53 msgid "" "Let's Encrypt is a free, automated, and open certificate authority, run for " "the public's benefit by the Internet Security Research Group (ISRG). Please " @@ -1412,52 +1509,102 @@ msgstr "Site Güvenliği" msgid "Actions" msgstr "Eylemler" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:56 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:62 #, python-format msgid "Valid, expires on %(expiry_date)s" msgstr "Geçerli, şu tarihte sona eriyor: %(expiry_date)s" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:63 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:69 msgid "Revoked" msgstr "İptal edilmiş" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:67 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:73 #, python-format msgid "Expired on %(expiry_date)s" msgstr "%(expiry_date)s tarihinde süresi dolmuş" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:71 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:77 msgid "Invalid test certificate" msgstr "Geçersiz test sertifikası" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:75 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:81 #, python-format msgid "Invalid (%(reason)s)" msgstr "Geçersiz %(reason)s" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:82 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:88 msgid "No certificate" msgstr "Sertifika yok" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:99 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:105 msgid "Re-obtain" msgstr "Tekrar edin" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:105 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:111 #: plinth/modules/networks/templates/connection_show.html:63 #: plinth/modules/snapshot/templates/snapshot.html:34 msgid "Delete" msgstr "Sil" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:112 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:118 msgid "Revoke" msgstr "İptal et" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:120 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:126 msgid "Obtain" msgstr "Edin" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:133 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:149 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:156 +#, fuzzy +#| msgid "Update" +msgid "Update config" +msgstr "Güncelle" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:161 +#, python-format +msgid "" +"\n" +" Let Plinth manage certificate renewal of\n" +" %(current_domain)s (recommended)\n" +" " +msgstr "" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:166 +msgid "" +"\n" +" Let Plinth manage certificate renewal of the current domain " +"(recommended)\n" +" " +msgstr "" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:175 +#, python-format +msgid "" +"If %(box_name)s manages the certificate renewal for the current domain, it " +"will ensure that all apps that use the certificate can use it, as soon as it " +"gets renewed." +msgstr "" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:181 +msgid "" +"No certificate available for the current domain. First obtain a " +"certificate to enable management of its renewal." +msgstr "" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:186 +#, fuzzy +#| msgid "" +#| "No domains have been configured. Configure domains to be able to obtain " +#| "certificates for them." +msgid "" +"No current domain is configured. First configure a domain to enable " +"management of its certificates." +msgstr "" +"Hiçbir alan yapılandırılmamış. Onlardan sertifika edinmek için alan " +"yapılandırın." + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:195 msgid "" "No domains have been configured. Configure domains to be able to obtain " "certificates for them." @@ -1465,7 +1612,7 @@ msgstr "" "Hiçbir alan yapılandırılmamış. Onlardan sertifika edinmek için alan " "yapılandırın." -#: plinth/modules/letsencrypt/views.py:55 +#: plinth/modules/letsencrypt/views.py:57 #, python-brace-format msgid "" "Certificate successfully revoked for domain {domain}.This may take a few " @@ -1474,41 +1621,74 @@ msgstr "" "{domain} alanı için sertifika başarılı bir şekilde iptal edildi. Bu işlemin " "başlaması biraz zaman alabilir." -#: plinth/modules/letsencrypt/views.py:61 +#: plinth/modules/letsencrypt/views.py:63 #, python-brace-format msgid "Failed to revoke certificate for domain {domain}: {error}" msgstr "" "{domain} alanı için sertifikanın iptal edilmesi başarısız oldu: {error}" -#: plinth/modules/letsencrypt/views.py:73 +#: plinth/modules/letsencrypt/views.py:75 #, python-brace-format msgid "Certificate successfully obtained for domain {domain}" msgstr "{domain} alanı için sertifika başarılı bir şekilde edinildi" -#: plinth/modules/letsencrypt/views.py:78 +#: plinth/modules/letsencrypt/views.py:81 #, python-brace-format msgid "Failed to obtain certificate for domain {domain}: {error}" msgstr "{domain} alanı için sertifika edinilemedi: {error}" #: plinth/modules/letsencrypt/views.py:90 +#: plinth/modules/letsencrypt/views.py:109 +#, fuzzy, python-brace-format +#| msgid "Certificate successfully deleted for domain {domain}" +msgid "Certificate renewal management enabled for {domain}." +msgstr "{domain} alanı için sertifika başarılı bir şekilde silindi" + +#: plinth/modules/letsencrypt/views.py:95 +#, fuzzy, python-brace-format +#| msgid "Failed to delete certificate for domain {domain}: {error}" +msgid "Failed to enable certificate renewal management for {domain}: {error}" +msgstr "{domain} alanı için sertifikanın silinmesi başarısız oldu: {error}" + +#: plinth/modules/letsencrypt/views.py:112 +#, fuzzy, python-brace-format +#| msgid "Certificate successfully deleted for domain {domain}" +msgid "Certificate renewal management disabled for {domain}." +msgstr "{domain} alanı için sertifika başarılı bir şekilde silindi" + +#: plinth/modules/letsencrypt/views.py:118 +#, fuzzy, python-brace-format +#| msgid "Failed to obtain certificate for domain {domain}: {error}" +msgid "Failed to switch certificate renewal management for {domain}: {error}" +msgstr "{domain} alanı için sertifika edinilemedi: {error}" + +#: plinth/modules/letsencrypt/views.py:134 +#, fuzzy, python-brace-format +#| msgid "Failed to delete certificate for domain {domain}: {error}" +msgid "Failed to disable certificate renewal management for {domain}: {error}" +msgstr "{domain} alanı için sertifikanın silinmesi başarısız oldu: {error}" + +#: plinth/modules/letsencrypt/views.py:141 #, python-brace-format msgid "Certificate successfully deleted for domain {domain}" msgstr "{domain} alanı için sertifika başarılı bir şekilde silindi" -#: plinth/modules/letsencrypt/views.py:95 +#: plinth/modules/letsencrypt/views.py:146 #, python-brace-format msgid "Failed to delete certificate for domain {domain}: {error}" msgstr "{domain} alanı için sertifikanın silinmesi başarısız oldu: {error}" #: plinth/modules/matrixsynapse/__init__.py:41 -msgid "" -"Chat Server \n" -" (Matrix Synapse)" +#, fuzzy +#| msgid "" +#| "Chat Server \n" +#| " (Matrix Synapse)" +msgid "Matrix Synapse" msgstr "" "Sohbet Sunucusu\n" " (Matrix Synapse)" -#: plinth/modules/matrixsynapse/__init__.py:44 +#: plinth/modules/matrixsynapse/__init__.py:46 msgid "" "Matrix is an new " "ecosystem for open, federated instant messaging and VoIP. Synapse is a " @@ -1525,7 +1705,7 @@ msgstr "" "kullanıcılar federasyon sayesinde tüm diğer Matrix sunucularındaki " "kullanıcılarla iletişimde bulunabilirler." -#: plinth/modules/matrixsynapse/__init__.py:52 +#: plinth/modules/matrixsynapse/__init__.py:54 msgid "" "To communicate, you can use the available clients for mobile, desktop and the web. mevcut istemcilerini kullanabilirsiniz. Riot istemcisi tavsiye edilir." -#: plinth/modules/matrixsynapse/forms.py:31 -msgid "Select the domain name" -msgstr "Alan ismini seç" - #: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:34 msgid "" "Matrix service needs to be configured for a domain. Users on other Matrix " @@ -1584,14 +1760,20 @@ msgstr "" "adını ilk yapılandırmadan sonra değiştirmek şimdilik desteklenmemektedir." #: plinth/modules/minetest/__init__.py:48 -msgid "" -"Block Sandbox \n" -" (Minetest)" +msgid "Minetest" +msgstr "" + +#: plinth/modules/minetest/__init__.py:50 +#, fuzzy +#| msgid "" +#| "Block Sandbox \n" +#| " (Minetest)" +msgid "Block Sandbox" msgstr "" "Blok Kum Havuzu\n" " (Minetest)" -#: plinth/modules/minetest/__init__.py:52 +#: plinth/modules/minetest/__init__.py:54 #, python-brace-format msgid "" "Minetest is a multiplayer infinite-world block sandbox. This module enables " @@ -1643,7 +1825,8 @@ msgstr "Zararı etkinleştir" #: plinth/modules/minetest/forms.py:54 msgid "When disabled, players cannot die or receive damage of any kind." -msgstr "Devre dışı bırakıldığında, oyuncular ölemez ve hiçbir zarar göremezler." +msgstr "" +"Devre dışı bırakıldığında, oyuncular ölemez ve hiçbir zarar göremezler." #: plinth/modules/minetest/views.py:58 msgid "Maximum players configuration updated" @@ -1731,7 +1914,7 @@ msgstr "Güvenli Kabuk" #: plinth/modules/monkeysphere/templates/monkeysphere.html:87 #: plinth/modules/monkeysphere/templates/monkeysphere_details.html:60 -#: plinth/service.py:117 +#: plinth/service.py:116 msgid "Web Server" msgstr "Web Sunucusu" @@ -1831,14 +2014,20 @@ msgid "Error occurred while publishing key." msgstr "Anahtarın yayınlanmasında bir hata meydana geldi." #: plinth/modules/mumble/__init__.py:35 -msgid "" -"Voice Chat \n" -" (Mumble)" +msgid "Mumble" +msgstr "" + +#: plinth/modules/mumble/__init__.py:37 +#, fuzzy +#| msgid "" +#| "Voice Chat \n" +#| " (Mumble)" +msgid "Voice Chat" msgstr "" "Ses ile Sohbet\n" " (Mumble)" -#: plinth/modules/mumble/__init__.py:44 +#: plinth/modules/mumble/__init__.py:46 msgid "" "Mumble is an open source, low-latency, encrypted, high quality voice chat " "software." @@ -1846,7 +2035,7 @@ msgstr "" "Mumble, açık kaynak, düşük gecikmeli, şifreli, yüksek kaliteli sesle sohbet " "yazılımıdır." -#: plinth/modules/mumble/__init__.py:47 +#: plinth/modules/mumble/__init__.py:49 msgid "" "You can connect to your Mumble server on the regular Mumble port 64738. Clients to connect to Mumble from your " @@ -2368,7 +2557,7 @@ msgid "This connection is not active." msgstr "Bu bağlantı etkin değildir." #: plinth/modules/networks/templates/connection_show.html:266 -#: plinth/modules/security/__init__.py:32 plinth/modules/security/views.py:46 +#: plinth/modules/security/__init__.py:32 plinth/modules/security/views.py:48 msgid "Security" msgstr "Güvenlik" @@ -2474,14 +2663,22 @@ msgid "Inactive" msgstr "Devre Dışı" #: plinth/modules/openvpn/__init__.py:42 -msgid "" -"Virtual Private Network \n" -" (OpenVPN)" +#, fuzzy +#| msgid "Open" +msgid "OpenVPN" +msgstr "Açık" + +#: plinth/modules/openvpn/__init__.py:44 +#, fuzzy +#| msgid "" +#| "Virtual Private Network \n" +#| " (OpenVPN)" +msgid "Virtual Private Network" msgstr "" "Sanal Özel Şebeke\n" " (OpenVPN)" -#: plinth/modules/openvpn/__init__.py:46 +#: plinth/modules/openvpn/__init__.py:48 #, python-brace-format msgid "" "Virtual Private Network (VPN) is a technique for securely connecting two " @@ -2498,7 +2695,7 @@ msgstr "" "servisleri kullanabilirsiniz. Aynı zamanda ek güvenlik ve anonimlik için " "İnternet'in geri kalanına {box_name} vasıtasıyla erişebilirsiniz." -#: plinth/modules/openvpn/__init__.py:84 +#: plinth/modules/openvpn/__init__.py:86 #, python-brace-format msgid "" "Download Profile" @@ -2587,10 +2784,18 @@ msgid "Setup failed." msgstr "Kurulum başarısı oldu." #: plinth/modules/pagekite/__init__.py:44 -msgid "Public Visibility (PageKite)" +#, fuzzy +#| msgid "Pagekite" +msgid "PageKite" +msgstr "Pagekite" + +#: plinth/modules/pagekite/__init__.py:46 +#, fuzzy +#| msgid "Public Visibility (PageKite)" +msgid "Public Visibility" msgstr "Herkese Açık Görünülürlük (PageKite)" -#: plinth/modules/pagekite/__init__.py:48 +#: plinth/modules/pagekite/__init__.py:50 #, python-brace-format msgid "" "PageKite is a system for exposing {box_name} services when you don't have a " @@ -2602,19 +2807,19 @@ msgstr "" "erişmek için bir sistemdir. Buna sadece {box_name} servislerine İnternet'ten " "erişmek mümkün değilse ihtiyaç duyarsınız. Bu, şu durumları kapsar:" -#: plinth/modules/pagekite/__init__.py:55 +#: plinth/modules/pagekite/__init__.py:57 #, python-brace-format msgid "{box_name} is behind a restricted firewall." msgstr "{box_name} kısıtlı bir güvenlik duvarının arkasında olduğunda." -#: plinth/modules/pagekite/__init__.py:59 +#: plinth/modules/pagekite/__init__.py:61 #, python-brace-format msgid "{box_name} is connected to a (wireless) router which you don't control." msgstr "" "{box_name} kontrolünüzde olmayan bir (kablosuz) yönlendiriciye bağlı " "olduğunda." -#: plinth/modules/pagekite/__init__.py:62 +#: plinth/modules/pagekite/__init__.py:64 msgid "" "Your ISP does not provide you an external IP address and instead provides " "Internet connection through NAT." @@ -2622,7 +2827,7 @@ msgstr "" "İnternet Erişim Sağlayıcınız size harici bir IP adresi sunmadığında ve bunun " "yerine İnternet bağlantısını NAT vasıtasıyla sağladığında." -#: plinth/modules/pagekite/__init__.py:65 +#: plinth/modules/pagekite/__init__.py:67 msgid "" "Your ISP does not provide you a static IP address and your IP address " "changes evertime you connect to Internet." @@ -2630,11 +2835,11 @@ msgstr "" "İnternet Erişim Sağlayıcınız size statik bir IP adresi sağlamadığında ve IP " "adresiniz İnternet'e her bağlandığınızda değiştiğinde." -#: plinth/modules/pagekite/__init__.py:68 +#: plinth/modules/pagekite/__init__.py:70 msgid "Your ISP limits incoming connections." msgstr "İnternet Erişim Sağlayıcınız içeri gelen bağlantıları kısıtladığında." -#: plinth/modules/pagekite/__init__.py:71 +#: plinth/modules/pagekite/__init__.py:73 #, python-brace-format msgid "" "PageKite works around NAT, firewalls and IP-address limitations by using a " @@ -2936,8 +3141,8 @@ msgstr "" "Pagekite kurulumu tamamlanmıştır. HTTP ve HTTPS servisleri artık " "etkinleştirilmiştir." -#: plinth/modules/power/__init__.py:28 plinth/modules/power/views.py:50 -#: plinth/modules/power/views.py:65 +#: plinth/modules/power/__init__.py:28 plinth/modules/power/views.py:51 +#: plinth/modules/power/views.py:67 msgid "Power" msgstr "Enerji" @@ -2946,10 +3151,22 @@ msgid "Restart or shut down the system." msgstr "Sistemi tekrar başlat ya da kapat." #: plinth/modules/power/templates/power.html:28 +#, fuzzy +#| msgid "" +#| "Another installation or upgrade is already running. Please wait for a few " +#| "moments before trying again." +msgid "" +"Currently an installation or upgrade is running. Consider waiting until it's " +"finished before shutting down or restarting." +msgstr "" +"Başka bir kurulum ya da güncelleme zaten çalışmaktadır. Lütfen tekrar " +"denemeden önce biraz bekleyin." + +#: plinth/modules/power/templates/power.html:37 msgid "Restart »" msgstr "Tekrar başlat »" -#: plinth/modules/power/templates/power.html:31 +#: plinth/modules/power/templates/power.html:40 msgid "Shut Down »" msgstr "Kapat »" @@ -2961,7 +3178,20 @@ msgstr "" "Yeniden başlatmak istediğinizden emin misiniz? Bu ağ arayüzüne sistem tekrar " "başlatılına dek birkaç dakika boyunca erişemeyeceksiniz." -#: plinth/modules/power/templates/power_restart.html:42 +#: plinth/modules/power/templates/power_restart.html:38 +#, fuzzy +#| msgid "" +#| "Another installation or upgrade is already running. Please wait for a few " +#| "moments before trying again." +msgid "" +"Currently an installation or upgrade is running. Consider waiting until it's " +"finished before restarting." +msgstr "" +"Başka bir kurulum ya da güncelleme zaten çalışmaktadır. Lütfen tekrar " +"denemeden önce biraz bekleyin." + +#: plinth/modules/power/templates/power_restart.html:52 +#: plinth/modules/power/templates/power_restart.html:55 msgid "Restart Now" msgstr "Şimdi Tekrar Başlat" @@ -2973,19 +3203,36 @@ msgstr "" "Sistemi kapatmak istediğinizden emin misiniz? Kapatmanın ardından bu ağ " "arayüzüne erişemeyeceksiniz." -#: plinth/modules/power/templates/power_shutdown.html:41 +#: plinth/modules/power/templates/power_shutdown.html:37 +#, fuzzy +#| msgid "" +#| "Another installation or upgrade is already running. Please wait for a few " +#| "moments before trying again." +msgid "" +"Currently an installation or upgrade is running. Consider waiting until it's " +"finished before shutting down." +msgstr "" +"Başka bir kurulum ya da güncelleme zaten çalışmaktadır. Lütfen tekrar " +"denemeden önce biraz bekleyin." + +#: plinth/modules/power/templates/power_shutdown.html:51 +#: plinth/modules/power/templates/power_shutdown.html:54 msgid "Shut Down Now" msgstr "Şimdi Kapat" #: plinth/modules/privoxy/__init__.py:43 -msgid "" -"Web Proxy \n" -" (Privoxy)" -msgstr "" -"Ağ Vekil Sunucusu\n" -" (Privoxy)" +#, fuzzy +#| msgid "Enable Privoxy" +msgid "Privoxy" +msgstr "Privoxy'yi Etkinleştir" -#: plinth/modules/privoxy/__init__.py:46 +#: plinth/modules/privoxy/__init__.py:45 +#, fuzzy +#| msgid "Privoxy Web Proxy" +msgid "Web Proxy" +msgstr "Privoxy Ağ Vekil Sunucusu" + +#: plinth/modules/privoxy/__init__.py:48 msgid "" "Privoxy is a non-caching web proxy with advanced filtering capabilities for " "enhancing privacy, modifying web page data and HTTP headers, controlling " @@ -2996,7 +3243,7 @@ msgstr "" "gelişmiş filtreleme özellikleri bulunan ve önbelleğe veri almayan bir ağ " "vekil sunucusudur. " -#: plinth/modules/privoxy/__init__.py:52 +#: plinth/modules/privoxy/__init__.py:54 #, python-brace-format msgid "" "You can use Privoxy by modifying your browser proxy settings to your " @@ -3012,20 +3259,22 @@ msgstr "" "org/ veya http://p.p adresinde " "görebilirsiniz." -#: plinth/modules/privoxy/__init__.py:144 +#: plinth/modules/privoxy/__init__.py:147 #, python-brace-format msgid "Access {url} with proxy {proxy} on tcp{kind}" msgstr "{url} konumuna {proxy} vekili vasıtasıyla tcp{kind} üzerinden eriş" #: plinth/modules/quassel/__init__.py:42 -msgid "" -"IRC Client \n" -" (Quassel)" +msgid "Quassel" msgstr "" -"IRC İstemcisi\n" -" (Quassel)" -#: plinth/modules/quassel/__init__.py:46 +#: plinth/modules/quassel/__init__.py:44 +#, fuzzy +#| msgid "Quassel IRC Client" +msgid "IRC Client" +msgstr "Quassel IRC İstemcisi" + +#: plinth/modules/quassel/__init__.py:48 #, python-brace-format msgid "" "Quassel is an IRC application that is split into two parts, a \"core\" and a " @@ -3042,7 +3291,7 @@ msgstr "" "da daha fazla Quassel istemcileri masaüstünden ya da mobil telefondan ona " "bağlanmak ve ondan bağlantıyı kesmek için kullanılabilir." -#: plinth/modules/quassel/__init__.py:54 +#: plinth/modules/quassel/__init__.py:56 msgid "" "You can connect to your Quassel core on the default Quassel port 4242. " "Clients to connect to Quassel from your mobil cihaz istemcileri mevcuttur." #: plinth/modules/radicale/__init__.py:43 -msgid "" -"Calendar and Addressbook \n" -" (Radicale)" +msgid "Radicale" +msgstr "" + +#: plinth/modules/radicale/__init__.py:45 +#, fuzzy +#| msgid "" +#| "Calendar and Addressbook \n" +#| " (Radicale)" +msgid "Calendar and Addressbook" msgstr "" "Takvim ve Adres Defteri\n" " (Radicale)" -#: plinth/modules/radicale/__init__.py:47 -#, python-brace-format +#: plinth/modules/radicale/__init__.py:49 +#, fuzzy, python-brace-format +#| msgid "" +#| "Radicale is a CalDAV and CardDAV server. It allows synchronization and " +#| "sharing of scheduling and contact data. To use Radicale, a " +#| "supported client application is needed. Radicale can be accessed by " +#| "any user with a {box_name} login." msgid "" "Radicale is a CalDAV and CardDAV server. It allows synchronization and " "sharing of scheduling and contact data. To use Radicale, a supported " -"client application is needed. Radicale can be accessed by any user with " -"a {box_name} login." +"radicale.org/clients/\">supported client application is needed. Radicale " +"can be accessed by any user with a {box_name} login." msgstr "" "Radicale, bir CalDAV ve CardDAV sunucusudur. İletişim ve randevu verilerinin " "paylaşılmasına ve eşleştirilmesine imkân verir. Radicale'i kullanmak için " @@ -3102,14 +3362,16 @@ msgid "Access rights configuration updated" msgstr "Erişim izinleri yapılandırması güncellendi" #: plinth/modules/repro/__init__.py:38 -msgid "" -"SIP Server \n" -" (repro)" +msgid "repro" msgstr "" -"SIP Sunucusu\n" -" (repro)" -#: plinth/modules/repro/__init__.py:41 +#: plinth/modules/repro/__init__.py:40 +#, fuzzy +#| msgid "DNS Server" +msgid "SIP Server" +msgstr "DNS Sunucusu" + +#: plinth/modules/repro/__init__.py:43 msgid "" "repro provides various SIP services that a SIP softphone can utilize to " "provide audio and video calls as well as presence and instant messaging. " @@ -3123,7 +3385,7 @@ msgstr "" "hesapları sağlar. Aynı zamanda e-postaya benzer bir şekilde diğer sunucular " "ile SIP bağlantılarını federe edecek bir vekil sunucu görevi de yapar." -#: plinth/modules/repro/__init__.py:48 +#: plinth/modules/repro/__init__.py:50 msgid "" "To make SIP calls, a client application is needed. Available clients include " "Jitsi (for computers) and CSipSimple'ı (Android telefonlar için) içerir." -#: plinth/modules/repro/__init__.py:53 +#: plinth/modules/repro/__init__.py:55 msgid "" "Note: Before using repro, domains and users will need to " "be configured using the web-based " @@ -3151,14 +3413,20 @@ msgstr "" "tekrar etkinleştirin." #: plinth/modules/restore/__init__.py:36 -msgid "" -"Unhosted Storage \n" -" (reStore)" +msgid "reStore" +msgstr "reStore" + +#: plinth/modules/restore/__init__.py:38 +#, fuzzy +#| msgid "" +#| "Unhosted Storage \n" +#| " (reStore)" +msgid "Unhosted Storage" msgstr "" "Barındırılmayan Depolama\n" " (reStore)" -#: plinth/modules/restore/__init__.py:40 +#: plinth/modules/restore/__init__.py:42 #, python-brace-format msgid "" "reStore is a server for unhosted web " @@ -3174,7 +3442,7 @@ msgstr "" "sunucusunda depolanabilir. reStore ile {box_name} kutunuz barındırılmayan " "depolama sunucunuz haline gelir." -#: plinth/modules/restore/__init__.py:47 +#: plinth/modules/restore/__init__.py:49 msgid "" "You can create and edit accounts in the reStore web-" "interface." @@ -3183,14 +3451,22 @@ msgstr "" "düzenleyebilirsiniz." #: plinth/modules/roundcube/__init__.py:35 -msgid "" -"Email Client \n" -" (Roundcube)" +#, fuzzy +#| msgid "Enable Roundcube" +msgid "Roundcube" +msgstr "Roundcube'u Etkinleştir" + +#: plinth/modules/roundcube/__init__.py:37 +#, fuzzy +#| msgid "" +#| "Email Client \n" +#| " (Roundcube)" +msgid "Email Client" msgstr "" "E-posta İstemcisi\n" " (Roundcube)" -#: plinth/modules/roundcube/__init__.py:38 +#: plinth/modules/roundcube/__init__.py:40 msgid "" "Roundcube webmail is a browser-based multilingual IMAP client with an " "application-like user interface. It provides full functionality you expect " @@ -3202,7 +3478,7 @@ msgstr "" "istemcilerinden beklediğiniz tüm işlevleri sağlar ve buna MIME desteği, " "adres defteri, klasör düzenleme, mesaj arama ve imlâ kontrolü de dahildir." -#: plinth/modules/roundcube/__init__.py:44 +#: plinth/modules/roundcube/__init__.py:46 msgid "" "You can access Roundcube from /roundcube. Provide " "the username and password of the email account you wish to access followed " @@ -3217,7 +3493,7 @@ msgstr "" "tavsiye edilir), sunucu alanını imaps://imap.example.com gibi " "doldurun." -#: plinth/modules/roundcube/__init__.py:51 +#: plinth/modules/roundcube/__init__.py:53 msgid "" "For Gmail, username will be your Gmail address, password will be your Google " "account password and server will be imaps://imap.gmail.com. " @@ -3247,28 +3523,45 @@ msgstr "" "kullanıcılarının bazı hizmetlere ek izne gerek olmadan erişebilmesi mümkün " "olabilir." -#: plinth/modules/security/views.py:63 +#: plinth/modules/security/forms.py:35 +msgid "Fail2ban (recommended)" +msgstr "" + +#: plinth/modules/security/forms.py:36 +msgid "" +"When this option is enabled, fail2ban will limit brute force break-in " +"attempts to the SSH server and other password protected internet-services " +"which are enabled." +msgstr "" + +#: plinth/modules/security/views.py:66 #, python-brace-format msgid "Error setting restricted access: {exception}" msgstr "Kısıtlı erişimin ayarlanmasında hata: {exception}" -#: plinth/modules/security/views.py:66 +#: plinth/modules/security/views.py:69 msgid "Updated security configuration" msgstr "Güvenlik yapılandırması güncellendi" #: plinth/modules/shaarli/__init__.py:35 -msgid "" -"Bookmarks \n" -" (Shaarli)" +msgid "Shaarli" +msgstr "Shaarli" + +#: plinth/modules/shaarli/__init__.py:37 +#, fuzzy +#| msgid "" +#| "Bookmarks \n" +#| " (Shaarli)" +msgid "Bookmarks" msgstr "" "Yer İmleri\n" " (Shaarli)" -#: plinth/modules/shaarli/__init__.py:38 +#: plinth/modules/shaarli/__init__.py:40 msgid "Shaarli allows you to save and share bookmarks." msgstr "Shaarli, yer imlerinizi kaydetmenize ve paylaşmanıza imkân verir." -#: plinth/modules/shaarli/__init__.py:40 +#: plinth/modules/shaarli/__init__.py:42 msgid "" "When enabled, Shaarli will be available from /shaarli path on the web server. Note that Shaarli only supports a single user " @@ -3398,6 +3691,18 @@ msgstr "" msgid "Rollback to Snapshot" msgstr "Anlığa Geri Al" +#: plinth/modules/ssh/__init__.py:37 +msgid "Secure Shell (SSH) Server" +msgstr "Güvenli Kabuk (SSH) Sunucusu" + +#: plinth/modules/ssh/__init__.py:40 +msgid "" +"A Secure Shell server uses the secure shell protocol to accept connections " +"from remote computers. An authorized remote computer can perform " +"administration tasks, copy files or run other services using such " +"connections." +msgstr "" + #: plinth/modules/sso/__init__.py:30 msgid "Single Sign On" msgstr "Tekli Oturum Açma" @@ -3407,14 +3712,20 @@ msgid "Login" msgstr "Giriş" #: plinth/modules/syncthing/__init__.py:39 -msgid "" -"File Synchronization \n" -" (Syncthing)" +msgid "Syncthing" +msgstr "" + +#: plinth/modules/syncthing/__init__.py:41 +#, fuzzy +#| msgid "" +#| "File Synchronization \n" +#| " (Syncthing)" +msgid "File Synchronization" msgstr "" "Dosya eşleşmesi\n" " (Syncthing)" -#: plinth/modules/syncthing/__init__.py:42 +#: plinth/modules/syncthing/__init__.py:44 msgid "" "Syncthing is an application to synchronize files across multiple devices, e." "g. your desktop computer and mobile phone. Creation, modification, or " @@ -3426,7 +3737,7 @@ msgstr "" "oluşturulması, değiştirilmesi ya da silinmesi, Syncthing çalıştıran diğer " "tüm cihazlarda da otomatik olarak meydana gelecektir." -#: plinth/modules/syncthing/__init__.py:47 +#: plinth/modules/syncthing/__init__.py:49 #, python-brace-format msgid "" "Running Syncthing on {box_name} provides an extra synchronization point for " @@ -3444,7 +3755,7 @@ msgstr "" "{box_name} üzerindeki ağ arayüzü sadece \"admin\" yani yönetici grubuna ait " "kullanıcılar tarafından kullanılabilir." -#: plinth/modules/syncthing/__init__.py:54 +#: plinth/modules/syncthing/__init__.py:56 msgid "" "When enabled, Syncthing's web interface will be available from /syncthing. Desktop and mobile clients are also mevcuttur.." #: plinth/modules/tahoe/__init__.py:42 -msgid "Distributed File Storage (Tahoe-LAFS)" +msgid "Tahoe-LAFS" +msgstr "" + +#: plinth/modules/tahoe/__init__.py:44 +#, fuzzy +#| msgid "Distributed File Storage (Tahoe-LAFS)" +msgid "Distributed File Storage" msgstr "Dağıtılmış Dosya Depolaması (Tahoe-LAFS)" -#: plinth/modules/tahoe/__init__.py:73 +#: plinth/modules/tahoe/__init__.py:75 msgid "" "Tahoe-LAFS is a decentralized secure file storage system. It uses provider " "independent security to store files over a distributed network of storage " @@ -3470,7 +3787,7 @@ msgstr "" "bağımsız güvenlik kullanır. Bazı düğümler arızalansa bile dosyalarınız kalan " "düğümlerden alınabilir." -#: plinth/modules/tahoe/__init__.py:78 +#: plinth/modules/tahoe/__init__.py:80 #, python-brace-format msgid "" "This {box_name} hosts a storage node and an introducer by default. " @@ -3520,7 +3837,17 @@ msgstr "Bağlı tanıtıcılar" msgid "Remove" msgstr "Kaldır" -#: plinth/modules/tor/__init__.py:45 +#: plinth/modules/tor/__init__.py:42 +msgid "Tor" +msgstr "" + +#: plinth/modules/tor/__init__.py:44 +#, fuzzy +#| msgid "Tor Anonymity Network" +msgid "Anonymity Network" +msgstr "Tor Anonimlik Ağı" + +#: plinth/modules/tor/__init__.py:47 msgid "" "Tor is an anonymous communication system. You can learn more about it from " "the Tor Project website. For " @@ -3534,36 +3861,36 @@ msgstr "" "href=\"https://www.torproject.org/download/download-easy.html\">Tor " "Tarayıcısını kullanmanızı tavsiye eder." -#: plinth/modules/tor/__init__.py:70 plinth/modules/tor/__init__.py:112 +#: plinth/modules/tor/__init__.py:72 plinth/modules/tor/__init__.py:114 msgid "Tor Anonymity Network" msgstr "Tor Anonimlik Ağı" -#: plinth/modules/tor/__init__.py:76 plinth/modules/tor/__init__.py:120 +#: plinth/modules/tor/__init__.py:78 plinth/modules/tor/__init__.py:122 msgid "Tor Bridge Relay" msgstr "Tor Köprü Aktarması" -#: plinth/modules/tor/__init__.py:98 plinth/modules/tor/__init__.py:141 +#: plinth/modules/tor/__init__.py:100 plinth/modules/tor/__init__.py:143 msgid "Tor Hidden Service" msgstr "Tor Gizli Servisi" -#: plinth/modules/tor/__init__.py:160 +#: plinth/modules/tor/__init__.py:162 msgid "Tor relay port available" msgstr "Tor geçit portu mevcuttur" -#: plinth/modules/tor/__init__.py:168 +#: plinth/modules/tor/__init__.py:170 msgid "Obfs3 transport registered" msgstr "Obfs3 taşıma kayıtlıdır" -#: plinth/modules/tor/__init__.py:174 +#: plinth/modules/tor/__init__.py:176 msgid "Obfs4 transport registered" msgstr "Obfs4 taşıma kayıtlıdır" -#: plinth/modules/tor/__init__.py:211 +#: plinth/modules/tor/__init__.py:213 #, python-brace-format msgid "Access URL {url} on tcp{kind} via Tor" msgstr "{url} bağlantısına tcp{kind} üzerinden Tor vasıtasıyla eriş" -#: plinth/modules/tor/__init__.py:222 +#: plinth/modules/tor/__init__.py:224 #, python-brace-format msgid "Confirm Tor usage at {url} on tcp{kind}" msgstr "tcp{kind} üzerinden {url} konumunda Tor kullanımını teyit et" @@ -3733,14 +4060,18 @@ msgid "An error occurred during configuration." msgstr "Yapılandırma sırasında bir hata meydana geldi." #: plinth/modules/transmission/__init__.py:38 -msgid "" -"BitTorrent \n" -" (Transmission)" -msgstr "" -"BitTorrent\n" -" (Transmission)" +#, fuzzy +#| msgid "Transmission BitTorrent" +msgid "Transmission" +msgstr "Transmission BitTorrent" -#: plinth/modules/transmission/__init__.py:41 +#: plinth/modules/transmission/__init__.py:40 +#, fuzzy +#| msgid "Deluge BitTorrent" +msgid "BitTorrent" +msgstr "Deluge BitTorrent" + +#: plinth/modules/transmission/__init__.py:43 msgid "" "BitTorrent is a peer-to-peer file sharing protocol. Transmission daemon " "handles Bitorrent file sharing. Note that BitTorrent is not anonymous." @@ -3749,7 +4080,7 @@ msgstr "" "BitTorrent dosya paylaşımını idare eder. BitTorrent'ın anonim olmadığını " "unutmayın." -#: plinth/modules/transmission/__init__.py:44 +#: plinth/modules/transmission/__init__.py:46 msgid "" "Access the web interface at /transmission." msgstr "" @@ -3783,15 +4114,21 @@ msgstr "" "gösterilmektedir. Yeni bir parola ayarlamak için parolayı düz metin olarak " "girin." -#: plinth/modules/ttrss/__init__.py:37 -msgid "" -"News Feed Reader \n" -" (Tiny Tiny RSS)" +#: plinth/modules/ttrss/__init__.py:39 +msgid "Tiny Tiny RSS" +msgstr "" + +#: plinth/modules/ttrss/__init__.py:41 +#, fuzzy +#| msgid "" +#| "News Feed Reader \n" +#| " (Tiny Tiny RSS)" +msgid "News Feed Reader" msgstr "" "Haber Besleme Okuyucusu\n" " (Tiny Tiny RSS)" -#: plinth/modules/ttrss/__init__.py:40 +#: plinth/modules/ttrss/__init__.py:44 msgid "" "Tiny Tiny RSS is a news feed (RSS/Atom) reader and aggregator, designed to " "allow reading news from any location, while feeling as close to a real " @@ -3801,10 +4138,15 @@ msgstr "" "ve haber toplamaları herhangi bir yerden okumaya imkân sağlamak için " "tasarlanmış bir haber besleme (RSS/Atom) okuyucusu ve toplayıcısıdır." -#: plinth/modules/ttrss/__init__.py:44 +#: plinth/modules/ttrss/__init__.py:49 +#, fuzzy, python-brace-format +#| msgid "" +#| "When enabled, Tiny Tiny RSS will be available from /" +#| "tt-rss path on the web server." msgid "" "When enabled, Tiny Tiny RSS will be available from /tt-" -"rss path on the web server." +"rss path on the web server. It can be accessed by any user with a {box_name} login." msgstr "" "Etkinleştirildiğinde,Tiny Tiny RSS'e erişim ağ sunucusunda /tt-rss yolundan mümkün olacaktır." @@ -4122,15 +4464,11 @@ msgstr "ortam değiştirme" msgid "configuration file: {file}" msgstr "Yapılandırma dosyası: {file}" -#: plinth/service.py:119 +#: plinth/service.py:118 msgid "Web Server over Secure Socket Layer" msgstr "SSL (Secure Socket Layer) üzerinden Web Sunucusu" -#: plinth/service.py:121 -msgid "Secure Shell (SSH) Server" -msgstr "Güvenli Kabuk (SSH) Sunucusu" - -#: plinth/service.py:123 +#: plinth/service.py:120 #, python-brace-format msgid "{box_name} Web Interface (Plinth)" msgstr "{box_name} Ağ Arayüzü (Plinth)" @@ -4180,11 +4518,11 @@ msgstr "" "\">hata izleyicisinde rapor edin ki sorunu giderebilelim. Hata raporuna " "durum kütüğünü eklemeyi unutmayınız." -#: plinth/templates/apps.html:25 +#: plinth/templates/apps.html:33 msgid "Services and Applications" msgstr "Servisler ve Uygulamalar" -#: plinth/templates/apps.html:28 +#: plinth/templates/apps.html:36 #, python-format msgid "" "You can install and run various services and applications on your " @@ -4195,7 +4533,7 @@ msgstr "" "çalıştırabilirsiniz. Herhangi bir uygulamanın açıklamasını okuyup onu " "kurmayı seçmek için sol taraftaki uygulama sayfası bağlantısına tıklayın." -#: plinth/templates/apps.html:36 +#: plinth/templates/apps.html:44 msgid "" "This box can be your photo sharing site, your instant messaging site, your " "social networking site, your news site. Remember web portals? We can be " @@ -4370,16 +4708,16 @@ msgstr "%(package_names)s kuruluyor: %(status)s" msgid "%(percentage)s%% complete" msgstr "%(percentage)s%% tamamlandı" -#: plinth/templates/system.html:25 +#: plinth/templates/system.html:33 msgid "System Configuration" msgstr "Sistem Yapılandırması" -#: plinth/templates/system.html:28 +#: plinth/templates/system.html:36 #, python-format msgid "Here you can administrate the underlying system of your %(box_name)s." msgstr "Burada %(box_name)s kutunuzun temel sistemini yönetebilirsiniz." -#: plinth/templates/system.html:34 +#: plinth/templates/system.html:42 #, python-format msgid "" "The options affect the %(box_name)s at its most general level, so be careful!" @@ -4387,6 +4725,63 @@ msgstr "" "Seçenekler %(box_name)s kutusunu en genel düzeyde etkiler, bu nedenle " "dikkatli olun!" +#~ msgid "Select the domain name to be used for diaspora*" +#~ msgstr "diaspora* için kullanılacak alan ismini seç" + +#~ msgid "" +#~ "Warning! Do not change the FreedomBox domain name after setting up " +#~ "diaspora*" +#~ msgstr "" +#~ "İkaz! diaspora* kurulduktan sonra FreedomBox alan adını değiştirmeyin" + +#~ msgid "" +#~ "Chat Server \n" +#~ " (ejabberd)" +#~ msgstr "" +#~ "Sohbet Sunucusu\n" +#~ " (ejabberd)" + +#~ msgid "Wiki and Blog (ikiwiki)" +#~ msgstr "Viki ve Blog (ikiwiki)" + +#~ msgid "" +#~ "Gobby Server \n" +#~ " (infinoted)" +#~ msgstr "" +#~ "Gobby sunucusu\n" +#~ " (infinoted)" + +#~ msgid "Select the domain name" +#~ msgstr "Alan ismini seç" + +#~ msgid "" +#~ "Web Proxy \n" +#~ " (Privoxy)" +#~ msgstr "" +#~ "Ağ Vekil Sunucusu\n" +#~ " (Privoxy)" + +#~ msgid "" +#~ "IRC Client \n" +#~ " (Quassel)" +#~ msgstr "" +#~ "IRC İstemcisi\n" +#~ " (Quassel)" + +#~ msgid "" +#~ "SIP Server \n" +#~ " (repro)" +#~ msgstr "" +#~ "SIP Sunucusu\n" +#~ " (repro)" + +#~ msgid "" +#~ "BitTorrent \n" +#~ " (Transmission)" +#~ msgstr "" +#~ "BitTorrent\n" +#~ " (Transmission)" + #~ msgid "Applications" #~ msgstr "Uygulamalar" @@ -4593,12 +4988,6 @@ msgstr "" #~ msgid "BitTorrent (Deluge)" #~ msgstr "BitTorrent (Deluge)" -#~ msgid "Deluge BitTorrent" -#~ msgstr "Deluge BitTorrent" - -#~ msgid "Enable Deluge" -#~ msgstr "Deluge'ü Etkinleştir" - #~ msgid "System Diagnostics" #~ msgstr "Sistem Teşhisleri" @@ -4620,10 +5009,6 @@ msgstr "" #~ msgid "Enable ikiwiki" #~ msgstr "ikiwiki'yi Etkinleştir" -#~| msgid "Wiki & Blog" -#~ msgid "Wiki and Blog" -#~ msgstr "Viki ve Blog" - #~ msgid "Generate PGP Key" #~ msgstr "PGP Anahtarı Oluştur" @@ -4653,15 +5038,6 @@ msgstr "" #~ "'fbx' için varsayılan parola ile SSH'i açığa çıkarmak ÇOK KÖTÜ bir " #~ "fikirdir." -#~ msgid "Privoxy Web Proxy" -#~ msgstr "Privoxy Ağ Vekil Sunucusu" - -#~ msgid "Enable Privoxy" -#~ msgstr "Privoxy'yi Etkinleştir" - -#~ msgid "Quassel IRC Client" -#~ msgstr "Quassel IRC İstemcisi" - #~ msgid "Enable Quassel core service" #~ msgstr "Quassel çekirdek servisini etkinleştir" @@ -4673,15 +5049,6 @@ msgstr "" #~ msgid "Enable repro service" #~ msgstr "repro servisini etkinleştir" -#~ msgid "reStore" -#~ msgstr "reStore" - -#~ msgid "Enable Roundcube" -#~ msgstr "Roundcube'u Etkinleştir" - -#~ msgid "Shaarli" -#~ msgstr "Shaarli" - #~ msgid "Enable Shaarli" #~ msgstr "Shaarli'yi Etkinleştir" @@ -4691,9 +5058,6 @@ msgstr "" #~ msgid "Tor Control Panel" #~ msgstr "Tor Kontrol Panosu" -#~ msgid "Transmission BitTorrent" -#~ msgstr "Transmission BitTorrent" - #~ msgid "Enable Transmission daemon" #~ msgstr "Transmission servisini etkinleştir" diff --git a/plinth/locale/zh_Hans/LC_MESSAGES/django.po b/plinth/locale/zh_Hans/LC_MESSAGES/django.po index 8ece79ae8..d106e41d0 100644 --- a/plinth/locale/zh_Hans/LC_MESSAGES/django.po +++ b/plinth/locale/zh_Hans/LC_MESSAGES/django.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Plinth\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2017-07-10 22:56-0400\n" +"POT-Creation-Date: 2017-09-24 11:24-0400\n" "PO-Revision-Date: 2017-04-19 16:01+0000\n" "Last-Translator: Chi-Hsun Tsai \n" "Language-Team: Chinese (Simplified) /deluge path on the web server. The default password is 'deluge', but " @@ -373,21 +393,22 @@ msgstr "测试" msgid "Result" msgstr "结果" -#: plinth/modules/diaspora/__init__.py:61 +#: plinth/modules/diaspora/__init__.py:51 +msgid "diaspora*" +msgstr "" + +#: plinth/modules/diaspora/__init__.py:53 +msgid "Federated Social Network" +msgstr "" + +#: plinth/modules/diaspora/__init__.py:62 msgid "" "diaspora* is a decentralized social network where you can store and control " "your own data." msgstr "" -#: plinth/modules/diaspora/forms.py:30 -#, fuzzy -#| msgid "Select the domain name" -msgid "Select the domain name to be used for diaspora*" -msgstr "選擇網域名" - -#: plinth/modules/diaspora/forms.py:32 -msgid "" -"Warning! Do not change the FreedomBox domain name after setting up diaspora*" +#: plinth/modules/diaspora/forms.py:31 +msgid "Enable new user registrations" msgstr "" #: plinth/modules/diaspora/templates/diaspora-post-setup.html:32 @@ -414,7 +435,25 @@ msgstr "" msgid "Update setup" msgstr "更新安装程序" -#: plinth/modules/disks/__init__.py:33 plinth/modules/disks/views.py:39 +#: plinth/modules/diaspora/views.py:96 plinth/modules/ejabberd/views.py:60 +#: plinth/modules/openvpn/views.py:145 plinth/modules/tor/views.py:134 +#: plinth/views.py:112 +msgid "Setting unchanged" +msgstr "设置未改变" + +#: plinth/modules/diaspora/views.py:100 +#, fuzzy +#| msgid "Application enabled" +msgid "User registrations enabled" +msgstr "应用程序已启用" + +#: plinth/modules/diaspora/views.py:104 +#, fuzzy +#| msgid "Application disabled" +msgid "User registrations disabled" +msgstr "应用程序已禁用" + +#: plinth/modules/disks/__init__.py:33 plinth/modules/disks/views.py:45 msgid "Disks" msgstr "磁盘" @@ -458,7 +497,7 @@ msgstr "" #: plinth/modules/disks/templates/disks.html:90 #: plinth/modules/disks/templates/disks.html:102 #: plinth/modules/disks/templates/disks_expand.html:45 -#: plinth/modules/disks/views.py:56 +#: plinth/modules/disks/views.py:62 msgid "Expand Root Partition" msgstr "扩展根分区" @@ -478,50 +517,57 @@ msgstr "" "执行前请备份你的数据。这个操作以后,将会为你的根分区扩展出 " "%(expandable_root_size)s 空余空间。" -#: plinth/modules/disks/views.py:65 +#: plinth/modules/disks/views.py:71 #, python-brace-format msgid "Error expanding partition: {exception}" msgstr "扩展分区错误:{exception}" -#: plinth/modules/disks/views.py:68 +#: plinth/modules/disks/views.py:74 msgid "Partition expanded successfully." msgstr "已成功扩展分区。" -#: plinth/modules/disks/views.py:77 +#: plinth/modules/disks/views.py:93 +#, python-format, python-brace-format +msgid "" +"Warning: Low space on system partition ({percent_used}% used, {free_space} " +"free)." +msgstr "" + +#: plinth/modules/disks/views.py:130 #, fuzzy, python-brace-format #| msgid "{disk_size} bytes" msgid "{disk_size:.1f} bytes" msgstr "{disk_size} bytes" -#: plinth/modules/disks/views.py:81 +#: plinth/modules/disks/views.py:134 #, fuzzy, python-brace-format #| msgid "{disk_size} KiB" msgid "{disk_size:.1f} KiB" msgstr "{disk_size} KiB" -#: plinth/modules/disks/views.py:85 +#: plinth/modules/disks/views.py:138 #, fuzzy, python-brace-format #| msgid "{disk_size} MiB" msgid "{disk_size:.1f} MiB" msgstr "{disk_size} MiB" -#: plinth/modules/disks/views.py:89 +#: plinth/modules/disks/views.py:142 #, fuzzy, python-brace-format #| msgid "{disk_size} GiB" msgid "{disk_size:.1f} GiB" msgstr "{disk_size} GiB" -#: plinth/modules/disks/views.py:92 +#: plinth/modules/disks/views.py:145 #, fuzzy, python-brace-format #| msgid "{disk_size} TiB" msgid "{disk_size:.1f} TiB" msgstr "{disk_size} TiB" -#: plinth/modules/dynamicdns/__init__.py:33 +#: plinth/modules/dynamicdns/__init__.py:35 msgid "Dynamic DNS Client" msgstr "动态 DNS 客户端" -#: plinth/modules/dynamicdns/__init__.py:37 +#: plinth/modules/dynamicdns/__init__.py:39 #, python-brace-format msgid "" "If your Internet provider changes your IP address periodically (i.e. every " @@ -531,7 +577,7 @@ msgstr "" "如果您的互联网提供商定期(例如每24小时)更改您的IP地址,其他人可能很难在互联" "网上找到您。这会阻止其他人找到由此 {box_name} 提供的服务。" -#: plinth/modules/dynamicdns/__init__.py:43 +#: plinth/modules/dynamicdns/__init__.py:45 msgid "" "The solution is to assign a DNS name to your IP address and update the DNS " "name every time your IP is changed by your Internet provider. Dynamic DNS " @@ -547,11 +593,18 @@ msgstr "" "将您的 DNS 名称分配给新的 IP,如果互联网上的某人要求您的 DNS 名称,他们将收到" "一个带有您当前 IP 地址的响应。" -#: plinth/modules/dynamicdns/dynamicdns.py:35 plinth/modules/help/help.py:40 +#: plinth/modules/dynamicdns/__init__.py:67 +#: plinth/modules/dynamicdns/dynamicdns.py:377 +#, fuzzy +#| msgid "Dynamic DNS Client" +msgid "Dynamic DNS Service" +msgstr "动态 DNS 客户端" + +#: plinth/modules/dynamicdns/dynamicdns.py:43 plinth/modules/help/help.py:40 msgid "About" msgstr "关于" -#: plinth/modules/dynamicdns/dynamicdns.py:39 +#: plinth/modules/dynamicdns/dynamicdns.py:47 #: plinth/modules/firewall/templates/firewall.html:47 #: plinth/modules/networks/templates/connection_show.html:261 #: plinth/modules/openvpn/templates/openvpn.html:67 @@ -560,7 +613,7 @@ msgstr "关于" msgid "Status" msgstr "状态" -#: plinth/modules/dynamicdns/dynamicdns.py:63 +#: plinth/modules/dynamicdns/dynamicdns.py:71 msgid "" "The Variables <User>, <Pass>, <Ip>, <Domain> may be " "used within the URL. For details see the update URL templates of the example " @@ -569,7 +622,7 @@ msgstr "" "变量 < 用户 > < 传递 > < Ip > < 域 > 可能在 URL 内使" "用。详细信息请参见更新 URL 模板的示例提供程序。" -#: plinth/modules/dynamicdns/dynamicdns.py:67 +#: plinth/modules/dynamicdns/dynamicdns.py:75 msgid "" "Please choose an update protocol according to your provider. If your " "provider does not support the GnuDIP protocol or your provider is not listed " @@ -578,7 +631,7 @@ msgstr "" "请选择您的提供商更新协议。如果您的提供商不支持 GnuDIP 协议或未列出您的提供商" "可能会使用您的提供商的更新 URL。" -#: plinth/modules/dynamicdns/dynamicdns.py:72 +#: plinth/modules/dynamicdns/dynamicdns.py:80 msgid "" "Please do not enter a URL here (like \"https://example.com/\") but only the " "hostname of the GnuDIP server (like \"example.com\")." @@ -586,26 +639,26 @@ msgstr "" "请不要在此输入 URL(如\"https://example.com/\"),只输入 GnuDIP 服务器的主机" "名(例如“example.com”)。" -#: plinth/modules/dynamicdns/dynamicdns.py:76 +#: plinth/modules/dynamicdns/dynamicdns.py:84 #, python-brace-format msgid "The public domain name you want to use to reach your {box_name}." msgstr "你访问你的 {box_name} 时想使用的公开域名。" -#: plinth/modules/dynamicdns/dynamicdns.py:79 +#: plinth/modules/dynamicdns/dynamicdns.py:87 msgid "Use this option if your provider uses self signed certificates." msgstr "如果您的提供商使用自签名的证书,请使用此选项。" -#: plinth/modules/dynamicdns/dynamicdns.py:82 +#: plinth/modules/dynamicdns/dynamicdns.py:90 msgid "" "If this option is selected, your username and password will be used for HTTP " "basic authentication." msgstr "如果选择了此选项,您的用户名和密码将用于 HTTP 基本身份验证。" -#: plinth/modules/dynamicdns/dynamicdns.py:85 +#: plinth/modules/dynamicdns/dynamicdns.py:93 msgid "Leave this field empty if you want to keep your current password." msgstr "如果你想保持你的当前密码,请将此字段留空。" -#: plinth/modules/dynamicdns/dynamicdns.py:88 +#: plinth/modules/dynamicdns/dynamicdns.py:96 #, python-brace-format msgid "" "Optional Value. If your {box_name} is not connected directly to the Internet " @@ -617,82 +670,82 @@ msgstr "" "此 URL 用于确定真实的IP地址。URL应该简单地返回客户端来自的 IP (例如:http://" "myip.datasystems24.de)。" -#: plinth/modules/dynamicdns/dynamicdns.py:96 +#: plinth/modules/dynamicdns/dynamicdns.py:104 msgid "The username that was used when the account was created." msgstr "账户创建时使用的用户名" -#: plinth/modules/dynamicdns/dynamicdns.py:107 +#: plinth/modules/dynamicdns/dynamicdns.py:115 msgid "Enable Dynamic DNS" msgstr "启用动态 DNS" -#: plinth/modules/dynamicdns/dynamicdns.py:110 +#: plinth/modules/dynamicdns/dynamicdns.py:118 msgid "Service Type" msgstr "服务类型" -#: plinth/modules/dynamicdns/dynamicdns.py:115 +#: plinth/modules/dynamicdns/dynamicdns.py:123 msgid "GnuDIP Server Address" msgstr "GnuDIP 服务器地址" -#: plinth/modules/dynamicdns/dynamicdns.py:120 +#: plinth/modules/dynamicdns/dynamicdns.py:128 msgid "Invalid server name" msgstr "服务器名称无效" -#: plinth/modules/dynamicdns/dynamicdns.py:123 +#: plinth/modules/dynamicdns/dynamicdns.py:131 msgid "Update URL" msgstr "更新 URL" -#: plinth/modules/dynamicdns/dynamicdns.py:127 +#: plinth/modules/dynamicdns/dynamicdns.py:135 msgid "Accept all SSL certificates" msgstr "接受所有 SSL 证书" -#: plinth/modules/dynamicdns/dynamicdns.py:131 +#: plinth/modules/dynamicdns/dynamicdns.py:139 msgid "Use HTTP basic authentication" msgstr "使用 HTTP 基本身份验证" -#: plinth/modules/dynamicdns/dynamicdns.py:143 +#: plinth/modules/dynamicdns/dynamicdns.py:151 #: plinth/modules/networks/forms.py:228 plinth/modules/transmission/forms.py:37 msgid "Username" msgstr "用户名" -#: plinth/modules/dynamicdns/dynamicdns.py:146 +#: plinth/modules/dynamicdns/dynamicdns.py:154 #: plinth/modules/networks/forms.py:229 plinth/modules/transmission/forms.py:41 msgid "Password" msgstr "密码" -#: plinth/modules/dynamicdns/dynamicdns.py:149 +#: plinth/modules/dynamicdns/dynamicdns.py:157 #: plinth/modules/networks/forms.py:231 msgid "Show password" msgstr "显示密码" -#: plinth/modules/dynamicdns/dynamicdns.py:153 +#: plinth/modules/dynamicdns/dynamicdns.py:161 msgid "URL to look up public IP" msgstr "查寻公开 IP 的 URL" -#: plinth/modules/dynamicdns/dynamicdns.py:179 +#: plinth/modules/dynamicdns/dynamicdns.py:187 msgid "Please provide an update URL or a GnuDIP server address" msgstr "请提供一个更新 URL 或者 GnuDIP 服务器地址" -#: plinth/modules/dynamicdns/dynamicdns.py:184 +#: plinth/modules/dynamicdns/dynamicdns.py:192 msgid "Please provide a GnuDIP username" msgstr "请提供一个 GnuDIP 用户名" -#: plinth/modules/dynamicdns/dynamicdns.py:188 +#: plinth/modules/dynamicdns/dynamicdns.py:196 msgid "Please provide a GnuDIP domain name" msgstr "请提供一个 GnuDIP 域名" -#: plinth/modules/dynamicdns/dynamicdns.py:193 +#: plinth/modules/dynamicdns/dynamicdns.py:201 msgid "Please provide a password" msgstr "请提供一个密码" -#: plinth/modules/dynamicdns/dynamicdns.py:211 +#: plinth/modules/dynamicdns/dynamicdns.py:219 msgid "Configure Dynamic DNS" msgstr "配置动态 DNS" -#: plinth/modules/dynamicdns/dynamicdns.py:232 +#: plinth/modules/dynamicdns/dynamicdns.py:240 msgid "Dynamic DNS Status" msgstr "动态 DNS 状态" -#: plinth/modules/dynamicdns/dynamicdns.py:364 +#: plinth/modules/dynamicdns/dynamicdns.py:381 #: plinth/modules/openvpn/views.py:143 plinth/modules/transmission/views.py:72 msgid "Configuration updated" msgstr "配置已更新" @@ -758,15 +811,18 @@ msgstr "" msgid "Last update" msgstr "最后一次更新" -#: plinth/modules/ejabberd/__init__.py:42 -msgid "" -"Chat Server \n" -" (ejabberd)" -msgstr "" -"聊天服务器\n" -"(ejabberd)" - #: plinth/modules/ejabberd/__init__.py:45 +msgid "ejabberd" +msgstr "" + +#: plinth/modules/ejabberd/__init__.py:47 +#: plinth/modules/matrixsynapse/__init__.py:43 +#, fuzzy +#| msgid "Web Server" +msgid "Chat Server" +msgstr "Web 服务器" + +#: plinth/modules/ejabberd/__init__.py:50 msgid "" "XMPP is an open and standardized communication protocol. Here you can run " "and configure your XMPP server, called ejabberd." @@ -774,11 +830,17 @@ msgstr "" "XMPP 是一种开放标准的通信协议。在这里你可以运行并配置您的 XMPP 服务器,称为 " "ejabberd。" -#: plinth/modules/ejabberd/__init__.py:48 +#: plinth/modules/ejabberd/__init__.py:54 +#, fuzzy, python-brace-format +#| msgid "" +#| "To actually communicate, you can use the web client or any other XMPP " +#| "client." msgid "" -"To actually communicate, you can use the web client or any other XMPP client." +"To actually communicate, you can use the web " +"client or any other XMPP client. When enabled, ejabberd can be accessed by " +"any user with a {box_name} login." msgstr "" "要实际沟通,您可以使用 web 客户端或任何其他 XMPP 客户端。" @@ -821,16 +883,11 @@ msgstr "启动 web 客户端" msgid "Configuration" msgstr "配置" -#: plinth/modules/ejabberd/views.py:60 plinth/modules/openvpn/views.py:145 -#: plinth/modules/tor/views.py:134 plinth/views.py:103 -msgid "Setting unchanged" -msgstr "设置未改变" - -#: plinth/modules/ejabberd/views.py:64 plinth/views.py:107 +#: plinth/modules/ejabberd/views.py:64 plinth/views.py:116 msgid "Application enabled" msgstr "应用程序已启用" -#: plinth/modules/ejabberd/views.py:67 plinth/views.py:110 +#: plinth/modules/ejabberd/views.py:67 plinth/views.py:119 msgid "Application disabled" msgstr "应用程序已禁用" @@ -881,13 +938,13 @@ msgid "Service/Port" msgstr "服务/端口" #: plinth/modules/firewall/templates/firewall.html:65 -#: plinth/modules/letsencrypt/templates/letsencrypt.html:88 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:94 #: plinth/modules/names/templates/names.html:49 msgid "Enabled" msgstr "启用" #: plinth/modules/firewall/templates/firewall.html:68 -#: plinth/modules/letsencrypt/templates/letsencrypt.html:90 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:96 #: plinth/modules/names/templates/names.html:51 #: plinth/modules/networks/forms.py:63 msgid "Disabled" @@ -1132,21 +1189,42 @@ msgid "" "before submitting the bug report." msgstr "提交日志报告前,请从日志中删除任何密码和其他个人信息。" -#: plinth/modules/ikiwiki/__init__.py:39 -msgid "Wiki and Blog (ikiwiki)" -msgstr "Wiki 和博客(ikiwiki)" +#: plinth/modules/ikiwiki/__init__.py:41 +#, fuzzy +#| msgid "wiki" +msgid "ikiwiki" +msgstr "维基" -#: plinth/modules/ikiwiki/__init__.py:42 +#: plinth/modules/ikiwiki/__init__.py:43 +msgid "Wiki and Blog" +msgstr "Wiki 和博客" + +#: plinth/modules/ikiwiki/__init__.py:46 +#, fuzzy +#| msgid "" +#| "ikiwiki is a simple wiki and blog application. It supports several " +#| "lightweight markup languages, including Markdown, and common blogging " +#| "functionality such as comments and RSS feeds. When enabled, the blogs and " +#| "wikis will be available from /ikiwiki." msgid "" "ikiwiki is a simple wiki and blog application. It supports several " "lightweight markup languages, including Markdown, and common blogging " "functionality such as comments and RSS feeds. When enabled, the blogs and " -"wikis will be available from /ikiwiki." +"wikis will be available at /ikiwiki (once created)." msgstr "" "ikiwiki是一个简单的 wiki 和博客应用程序。它支持几种轻量级标记语言,包括 " "Markdown 和常见的博客功能,如评论和 RSS 源。启用后,博客和 Wiki 将可从 /ikiwiki 访问。" +#: plinth/modules/ikiwiki/__init__.py:53 +#, python-brace-format +msgid "" +"Only {box_name} users in the admin group can create and " +"manage blogs and wikis, but any user in the wiki group can " +"edit existing ones. In the User " +"Configuration you can change these permissions or add new users." +msgstr "" + #: plinth/modules/ikiwiki/forms.py:34 #: plinth/modules/networks/templates/connection_show.html:78 msgid "Name" @@ -1257,18 +1335,20 @@ msgid "Delete Wiki or Blog" msgstr "删除 wiki 页面或博客" #: plinth/modules/infinoted/__init__.py:43 -msgid "" -"Gobby Server \n" -" (infinoted)" +msgid "infinoted" msgstr "" -"Gobby 服务器 \n" -"(infinoted)" -#: plinth/modules/infinoted/__init__.py:46 +#: plinth/modules/infinoted/__init__.py:45 +#, fuzzy +#| msgid "Web Server" +msgid "Gobby Server" +msgstr "Web 服务器" + +#: plinth/modules/infinoted/__init__.py:48 msgid "infinoted is a server for Gobby, a collaborative text editor." msgstr "infinoted 是一个 Gobby 服务器,Gobby 是一个协作化的文本编辑器。" -#: plinth/modules/infinoted/__init__.py:49 +#: plinth/modules/infinoted/__init__.py:51 #, python-brace-format msgid "" "To use it, download Gobby, desktop " @@ -1279,20 +1359,26 @@ msgstr "" "端并安装。然后启动 Gobby 并选择“连接到服务器”并书入你的 {box_name} 域名即可。" #: plinth/modules/jsxc/__init__.py:36 -msgid "" -"Chat Client \n" -" (JSXC)" +msgid "JSXC" +msgstr "" + +#: plinth/modules/jsxc/__init__.py:38 +#, fuzzy +#| msgid "" +#| "Chat Client \n" +#| " (JSXC)" +msgid "Chat Client" msgstr "" "聊天客户端\n" "(JSXC)" -#: plinth/modules/jsxc/__init__.py:40 +#: plinth/modules/jsxc/__init__.py:42 msgid "" "JSXC is a web client for XMPP. Typically it is used with an XMPP server " "running locally." msgstr "JSXC 是一个 XMPP 网页客户端,主要用于连接本地 XMPP 服务器的连接。" -#: plinth/modules/jsxc/__init__.py:78 +#: plinth/modules/jsxc/__init__.py:80 msgid "" "Chat Client \n" " (jsxc)" @@ -1300,12 +1386,19 @@ msgstr "" "聊天客户端\n" "(jsxc)" -#: plinth/modules/letsencrypt/__init__.py:39 -#: plinth/modules/letsencrypt/__init__.py:64 -msgid "Certificates (Let's Encrypt)" +#: plinth/modules/letsencrypt/__init__.py:40 +#, fuzzy +#| msgid "Certificates (Let's Encrypt)" +msgid "Let's Encrypt" msgstr "证书(Let's Encrypt)" -#: plinth/modules/letsencrypt/__init__.py:43 +#: plinth/modules/letsencrypt/__init__.py:42 +#, fuzzy +#| msgid "Certificate Status" +msgid "Certificates" +msgstr "证书状态" + +#: plinth/modules/letsencrypt/__init__.py:46 #, python-brace-format msgid "" "A digital certificate allows users of a web service to verify the identity " @@ -1318,7 +1411,7 @@ msgstr "" "动获取和设置每个可用域名的数字证书。它通过向 Let's Encrypt 证明自己是一个域名" "的所有者。Let's Encrypt 是一个证书颁发机构(CA)。" -#: plinth/modules/letsencrypt/__init__.py:50 +#: plinth/modules/letsencrypt/__init__.py:53 msgid "" "Let's Encrypt is a free, automated, and open certificate authority, run for " "the public's benefit by the Internet Security Research Group (ISRG). Please " @@ -1345,64 +1438,112 @@ msgstr "网站安全" msgid "Actions" msgstr "行动" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:56 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:62 #, fuzzy, python-format #| msgid "Expires on %(expiry_date)s" msgid "Valid, expires on %(expiry_date)s" msgstr "到期日期 %(expiry_date)s" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:63 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:69 #, fuzzy #| msgid "Revoke" msgid "Revoked" msgstr "撤销" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:67 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:73 #, fuzzy, python-format #| msgid "Expires on %(expiry_date)s" msgid "Expired on %(expiry_date)s" msgstr "到期日期 %(expiry_date)s" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:71 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:77 #, fuzzy #| msgid "Invalid kite name" msgid "Invalid test certificate" msgstr "无效的 Kite 名称" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:75 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:81 #, python-format msgid "Invalid (%(reason)s)" msgstr "" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:82 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:88 msgid "No certificate" msgstr "没有证书" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:99 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:105 msgid "Re-obtain" msgstr "重新获取" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:105 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:111 #: plinth/modules/networks/templates/connection_show.html:63 #: plinth/modules/snapshot/templates/snapshot.html:34 msgid "Delete" msgstr "删除" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:112 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:118 msgid "Revoke" msgstr "撤销" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:120 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:126 msgid "Obtain" msgstr "获取" -#: plinth/modules/letsencrypt/templates/letsencrypt.html:133 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:149 +#: plinth/modules/letsencrypt/templates/letsencrypt.html:156 +#, fuzzy +#| msgid "Update" +msgid "Update config" +msgstr "更新" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:161 +#, python-format +msgid "" +"\n" +" Let Plinth manage certificate renewal of\n" +" %(current_domain)s (recommended)\n" +" " +msgstr "" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:166 +msgid "" +"\n" +" Let Plinth manage certificate renewal of the current domain " +"(recommended)\n" +" " +msgstr "" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:175 +#, python-format +msgid "" +"If %(box_name)s manages the certificate renewal for the current domain, it " +"will ensure that all apps that use the certificate can use it, as soon as it " +"gets renewed." +msgstr "" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:181 +msgid "" +"No certificate available for the current domain. First obtain a " +"certificate to enable management of its renewal." +msgstr "" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:186 +#, fuzzy +#| msgid "" +#| "No domains have been configured. Configure domains to be able to obtain " +#| "certificates for them." +msgid "" +"No current domain is configured. First configure a domain to enable " +"management of its certificates." +msgstr "没有配置域名。配置域名可以为它们获得相应的证书。" + +#: plinth/modules/letsencrypt/templates/letsencrypt.html:195 msgid "" "No domains have been configured. Configure domains to be able to obtain " "certificates for them." msgstr "没有配置域名。配置域名可以为它们获得相应的证书。" -#: plinth/modules/letsencrypt/views.py:55 +#: plinth/modules/letsencrypt/views.py:57 #, fuzzy, python-brace-format #| msgid "Certificate successfully revoked for domain {domain}" msgid "" @@ -1410,42 +1551,75 @@ msgid "" "moments to take effect." msgstr "成功为域名 {domain} 吊销证书" -#: plinth/modules/letsencrypt/views.py:61 +#: plinth/modules/letsencrypt/views.py:63 #, python-brace-format msgid "Failed to revoke certificate for domain {domain}: {error}" msgstr "无法为 {domain} 撤销证书:{error}" -#: plinth/modules/letsencrypt/views.py:73 +#: plinth/modules/letsencrypt/views.py:75 #, python-brace-format msgid "Certificate successfully obtained for domain {domain}" msgstr "为域名 {domain} 成功获得证书" -#: plinth/modules/letsencrypt/views.py:78 +#: plinth/modules/letsencrypt/views.py:81 #, python-brace-format msgid "Failed to obtain certificate for domain {domain}: {error}" msgstr "未能为域名 {domain} 获取证书:{error}" #: plinth/modules/letsencrypt/views.py:90 +#: plinth/modules/letsencrypt/views.py:109 +#, fuzzy, python-brace-format +#| msgid "Certificate successfully revoked for domain {domain}" +msgid "Certificate renewal management enabled for {domain}." +msgstr "成功为域名 {domain} 吊销证书" + +#: plinth/modules/letsencrypt/views.py:95 +#, fuzzy, python-brace-format +#| msgid "Failed to revoke certificate for domain {domain}: {error}" +msgid "Failed to enable certificate renewal management for {domain}: {error}" +msgstr "无法为 {domain} 撤销证书:{error}" + +#: plinth/modules/letsencrypt/views.py:112 +#, fuzzy, python-brace-format +#| msgid "Certificate successfully revoked for domain {domain}" +msgid "Certificate renewal management disabled for {domain}." +msgstr "成功为域名 {domain} 吊销证书" + +#: plinth/modules/letsencrypt/views.py:118 +#, fuzzy, python-brace-format +#| msgid "Failed to obtain certificate for domain {domain}: {error}" +msgid "Failed to switch certificate renewal management for {domain}: {error}" +msgstr "未能为域名 {domain} 获取证书:{error}" + +#: plinth/modules/letsencrypt/views.py:134 +#, fuzzy, python-brace-format +#| msgid "Failed to revoke certificate for domain {domain}: {error}" +msgid "Failed to disable certificate renewal management for {domain}: {error}" +msgstr "无法为 {domain} 撤销证书:{error}" + +#: plinth/modules/letsencrypt/views.py:141 #, fuzzy, python-brace-format #| msgid "Certificate successfully revoked for domain {domain}" msgid "Certificate successfully deleted for domain {domain}" msgstr "成功为域名 {domain} 吊销证书" -#: plinth/modules/letsencrypt/views.py:95 +#: plinth/modules/letsencrypt/views.py:146 #, fuzzy, python-brace-format #| msgid "Failed to revoke certificate for domain {domain}: {error}" msgid "Failed to delete certificate for domain {domain}: {error}" msgstr "无法为 {domain} 撤销证书:{error}" #: plinth/modules/matrixsynapse/__init__.py:41 -msgid "" -"Chat Server \n" -" (Matrix Synapse)" +#, fuzzy +#| msgid "" +#| "Chat Server \n" +#| " (Matrix Synapse)" +msgid "Matrix Synapse" msgstr "" "聊天服务器\n" "(Matrix Synapse)" -#: plinth/modules/matrixsynapse/__init__.py:44 +#: plinth/modules/matrixsynapse/__init__.py:46 msgid "" "Matrix is an new " "ecosystem for open, federated instant messaging and VoIP. Synapse is a " @@ -1455,17 +1629,13 @@ msgid "" "converse with users on all other Matrix servers via federation." msgstr "" -#: plinth/modules/matrixsynapse/__init__.py:52 +#: plinth/modules/matrixsynapse/__init__.py:54 msgid "" "To communicate, you can use the available clients for mobile, desktop and the web. Riot client is recommended." msgstr "" -#: plinth/modules/matrixsynapse/forms.py:31 -msgid "Select the domain name" -msgstr "選擇網域名" - #: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:34 msgid "" "Matrix service needs to be configured for a domain. Users on other Matrix " @@ -1504,14 +1674,20 @@ msgstr "" "置你的域名。" #: plinth/modules/minetest/__init__.py:48 -msgid "" -"Block Sandbox \n" -" (Minetest)" +msgid "Minetest" +msgstr "" + +#: plinth/modules/minetest/__init__.py:50 +#, fuzzy +#| msgid "" +#| "Block Sandbox \n" +#| " (Minetest)" +msgid "Block Sandbox" msgstr "" "方块沙盒\n" "(Minetest)" -#: plinth/modules/minetest/__init__.py:52 +#: plinth/modules/minetest/__init__.py:54 #, python-brace-format msgid "" "Minetest is a multiplayer infinite-world block sandbox. This module enables " @@ -1658,7 +1834,7 @@ msgstr "安全 Shell" #: plinth/modules/monkeysphere/templates/monkeysphere.html:87 #: plinth/modules/monkeysphere/templates/monkeysphere_details.html:60 -#: plinth/service.py:117 +#: plinth/service.py:116 msgid "Web Server" msgstr "Web 服务器" @@ -1757,20 +1933,26 @@ msgid "Error occurred while publishing key." msgstr "发布密钥时出现错误。" #: plinth/modules/mumble/__init__.py:35 -msgid "" -"Voice Chat \n" -" (Mumble)" +msgid "Mumble" +msgstr "" + +#: plinth/modules/mumble/__init__.py:37 +#, fuzzy +#| msgid "" +#| "Voice Chat \n" +#| " (Mumble)" +msgid "Voice Chat" msgstr "" "语音聊天\n" "(Mumble)" -#: plinth/modules/mumble/__init__.py:44 +#: plinth/modules/mumble/__init__.py:46 msgid "" "Mumble is an open source, low-latency, encrypted, high quality voice chat " "software." msgstr "Mumble 是一个开放源码的低延迟、 加密、 高品质语音聊天软件。" -#: plinth/modules/mumble/__init__.py:47 +#: plinth/modules/mumble/__init__.py:49 msgid "" "You can connect to your Mumble server on the regular Mumble port 64738. Clients to connect to Mumble from your " @@ -2272,7 +2454,7 @@ msgid "This connection is not active." msgstr "此连接未处于激活状态。" #: plinth/modules/networks/templates/connection_show.html:266 -#: plinth/modules/security/__init__.py:32 plinth/modules/security/views.py:46 +#: plinth/modules/security/__init__.py:32 plinth/modules/security/views.py:48 msgid "Security" msgstr "安全" @@ -2375,13 +2557,17 @@ msgstr "未激活" #: plinth/modules/openvpn/__init__.py:42 #, fuzzy +#| msgid "Open" +msgid "OpenVPN" +msgstr "打开" + +#: plinth/modules/openvpn/__init__.py:44 +#, fuzzy #| msgid "Virtual Private Network (OpenVPN)" -msgid "" -"Virtual Private Network \n" -" (OpenVPN)" +msgid "Virtual Private Network" msgstr "虚拟专用网络(OpenVPN)" -#: plinth/modules/openvpn/__init__.py:46 +#: plinth/modules/openvpn/__init__.py:48 #, python-brace-format msgid "" "Virtual Private Network (VPN) is a technique for securely connecting two " @@ -2396,7 +2582,7 @@ msgstr "" "供的私人/内部服务。您还可以通过 {box_name} 访问互联网的其他部分,以增加安全性" "和匿名性。" -#: plinth/modules/openvpn/__init__.py:84 +#: plinth/modules/openvpn/__init__.py:86 #, python-brace-format msgid "" "Download Profile" @@ -2479,10 +2665,18 @@ msgid "Setup failed." msgstr "安装失败。" #: plinth/modules/pagekite/__init__.py:44 -msgid "Public Visibility (PageKite)" +#, fuzzy +#| msgid "Pagekite" +msgid "PageKite" +msgstr "Pagekite" + +#: plinth/modules/pagekite/__init__.py:46 +#, fuzzy +#| msgid "Public Visibility (PageKite)" +msgid "Public Visibility" msgstr "公开可见性(PageKite)" -#: plinth/modules/pagekite/__init__.py:48 +#: plinth/modules/pagekite/__init__.py:50 #, python-brace-format msgid "" "PageKite is a system for exposing {box_name} services when you don't have a " @@ -2493,34 +2687,34 @@ msgstr "" "PageKite 是一种在您没有直接连接到互联网时暴露 {box_name} 服务的系统。 如果您" "的 {box_name} 服务无法从互联网访问,您只需要设置 PageKite。这包括以下情况:" -#: plinth/modules/pagekite/__init__.py:55 +#: plinth/modules/pagekite/__init__.py:57 #, python-brace-format msgid "{box_name} is behind a restricted firewall." msgstr "{box_name} 位于受限的防火墙的后面。" -#: plinth/modules/pagekite/__init__.py:59 +#: plinth/modules/pagekite/__init__.py:61 #, python-brace-format msgid "{box_name} is connected to a (wireless) router which you don't control." msgstr "{box_name} 已连接到非你控制的(无线)路由器。" -#: plinth/modules/pagekite/__init__.py:62 +#: plinth/modules/pagekite/__init__.py:64 msgid "" "Your ISP does not provide you an external IP address and instead provides " "Internet connection through NAT." msgstr "您的 ISP 没有提供外部的 IP 地址而是通过提供 NAT 连接互联网。" -#: plinth/modules/pagekite/__init__.py:65 +#: plinth/modules/pagekite/__init__.py:67 msgid "" "Your ISP does not provide you a static IP address and your IP address " "changes evertime you connect to Internet." msgstr "" "您的 ISP 不提供你一个静态的 IP 地址且你连接到互联网的 IP 地址每次会更改。" -#: plinth/modules/pagekite/__init__.py:68 +#: plinth/modules/pagekite/__init__.py:70 msgid "Your ISP limits incoming connections." msgstr "您的 ISP 限制传入的连接。" -#: plinth/modules/pagekite/__init__.py:71 +#: plinth/modules/pagekite/__init__.py:73 #, python-brace-format msgid "" "PageKite works around NAT, firewalls and IP-address limitations by using a " @@ -2807,8 +3001,8 @@ msgstr "定制服务" msgid "Pagekite setup finished. The HTTP and HTTPS services are activated now." msgstr "Pagekite 安装完成。HTTP 和 HTTPS 服务现已启用。" -#: plinth/modules/power/__init__.py:28 plinth/modules/power/views.py:50 -#: plinth/modules/power/views.py:65 +#: plinth/modules/power/__init__.py:28 plinth/modules/power/views.py:51 +#: plinth/modules/power/views.py:67 msgid "Power" msgstr "电源" @@ -2817,10 +3011,16 @@ msgid "Restart or shut down the system." msgstr "重新启动或关闭系统。" #: plinth/modules/power/templates/power.html:28 +msgid "" +"Currently an installation or upgrade is running. Consider waiting until it's " +"finished before shutting down or restarting." +msgstr "" + +#: plinth/modules/power/templates/power.html:37 msgid "Restart »" msgstr "重新启动 »" -#: plinth/modules/power/templates/power.html:31 +#: plinth/modules/power/templates/power.html:40 msgid "Shut Down »" msgstr "关闭 »" @@ -2831,7 +3031,14 @@ msgid "" msgstr "" "你确定要重新启动?你将在几分钟内不能访问此 web 界面,直到重新启动系统。" -#: plinth/modules/power/templates/power_restart.html:42 +#: plinth/modules/power/templates/power_restart.html:38 +msgid "" +"Currently an installation or upgrade is running. Consider waiting until it's " +"finished before restarting." +msgstr "" + +#: plinth/modules/power/templates/power_restart.html:52 +#: plinth/modules/power/templates/power_restart.html:55 msgid "Restart Now" msgstr "现在重新启动" @@ -2841,19 +3048,30 @@ msgid "" "interface after shut down." msgstr "你确定要关闭? 关闭以后将不能访问此 web 界面。" -#: plinth/modules/power/templates/power_shutdown.html:41 +#: plinth/modules/power/templates/power_shutdown.html:37 +msgid "" +"Currently an installation or upgrade is running. Consider waiting until it's " +"finished before shutting down." +msgstr "" + +#: plinth/modules/power/templates/power_shutdown.html:51 +#: plinth/modules/power/templates/power_shutdown.html:54 msgid "Shut Down Now" msgstr "现在关闭" #: plinth/modules/privoxy/__init__.py:43 -msgid "" -"Web Proxy \n" -" (Privoxy)" -msgstr "" -"网页代理\n" -"(Privoxy)" +#, fuzzy +#| msgid "Enable Privoxy" +msgid "Privoxy" +msgstr "启用 Privoxy" -#: plinth/modules/privoxy/__init__.py:46 +#: plinth/modules/privoxy/__init__.py:45 +#, fuzzy +#| msgid "Privoxy Web Proxy" +msgid "Web Proxy" +msgstr "Privoxy 网页代理" + +#: plinth/modules/privoxy/__init__.py:48 msgid "" "Privoxy is a non-caching web proxy with advanced filtering capabilities for " "enhancing privacy, modifying web page data and HTTP headers, controlling " @@ -2862,7 +3080,7 @@ msgstr "" "Privoxy 是一个非缓存Web代理,具有高级过滤功能,用于增强隐私,修改网页数据和 " "HTTP 标头,控制访问,以及删除广告和其他令人讨厌的互联网垃圾。" -#: plinth/modules/privoxy/__init__.py:52 +#: plinth/modules/privoxy/__init__.py:54 #, python-brace-format msgid "" "You can use Privoxy by modifying your browser proxy settings to your " @@ -2876,20 +3094,22 @@ msgstr "" "privoxy.org\">http://config.privoxy.org/ 或 http://p.p 中查看其配置详细信息和文档" -#: plinth/modules/privoxy/__init__.py:144 +#: plinth/modules/privoxy/__init__.py:147 #, python-brace-format msgid "Access {url} with proxy {proxy} on tcp{kind}" msgstr "在 tcp{kind} 上通过 {proxy} 访问 {url}" #: plinth/modules/quassel/__init__.py:42 -msgid "" -"IRC Client \n" -" (Quassel)" +msgid "Quassel" msgstr "" -"IRC 客户端\n" -"(Quassel)" -#: plinth/modules/quassel/__init__.py:46 +#: plinth/modules/quassel/__init__.py:44 +#, fuzzy +#| msgid "Quassel IRC Client" +msgid "IRC Client" +msgstr "Quassel IRC 客户端" + +#: plinth/modules/quassel/__init__.py:48 #, python-brace-format msgid "" "Quassel is an IRC application that is split into two parts, a \"core\" and a " @@ -2904,7 +3124,7 @@ msgstr "" "以运行 Quassel 核心服务,使您始终在线,并且可以使用桌面或移动设备上的一个或多" "个 Quassel 客户端连接和断开连接。" -#: plinth/modules/quassel/__init__.py:54 +#: plinth/modules/quassel/__init__.py:56 msgid "" "You can connect to your Quassel core on the default Quassel port 4242. " "Clients to connect to Quassel from your 移动设备客户端连接到 Quassel 的核心。" #: plinth/modules/radicale/__init__.py:43 -msgid "" -"Calendar and Addressbook \n" -" (Radicale)" +msgid "Radicale" +msgstr "" + +#: plinth/modules/radicale/__init__.py:45 +#, fuzzy +#| msgid "" +#| "Calendar and Addressbook \n" +#| " (Radicale)" +msgid "Calendar and Addressbook" msgstr "" "日历和通讯录\n" "(Radicale)" -#: plinth/modules/radicale/__init__.py:47 -#, python-brace-format +#: plinth/modules/radicale/__init__.py:49 +#, fuzzy, python-brace-format +#| msgid "" +#| "Radicale is a CalDAV and CardDAV server. It allows synchronization and " +#| "sharing of scheduling and contact data. To use Radicale, a " +#| "supported client application is needed. Radicale can be accessed by " +#| "any user with a {box_name} login." msgid "" "Radicale is a CalDAV and CardDAV server. It allows synchronization and " "sharing of scheduling and contact data. To use Radicale, a supported " -"client application is needed. Radicale can be accessed by any user with " -"a {box_name} login." +"radicale.org/clients/\">supported client application is needed. Radicale " +"can be accessed by any user with a {box_name} login." msgstr "" "Radicale 是一个 CalDAV 和 CardDAV 服务器。它允许同步和日程安排和联系人数据的" "共享。要使用 Radicale,需要安装Jitsi (for computers) and CSipSimple(适用于 Android 手机)。" -#: plinth/modules/repro/__init__.py:53 +#: plinth/modules/repro/__init__.py:55 msgid "" "Note: Before using repro, domains and users will need to " "be configured using the web-based " @@ -3000,14 +3233,20 @@ msgstr "" "Repro 配置面板。设置域名后,需要重新启动 Repro 服务。禁用服务并重新启用既可。" #: plinth/modules/restore/__init__.py:36 -msgid "" -"Unhosted Storage \n" -" (reStore)" +msgid "reStore" +msgstr "reStore" + +#: plinth/modules/restore/__init__.py:38 +#, fuzzy +#| msgid "" +#| "Unhosted Storage \n" +#| " (reStore)" +msgid "Unhosted Storage" msgstr "" "未托管存储\n" "(reStrore)" -#: plinth/modules/restore/__init__.py:40 +#: plinth/modules/restore/__init__.py:42 #, python-brace-format msgid "" "reStore is a server for unhosted web " @@ -3021,7 +3260,7 @@ msgstr "" "都可以存储在用户选择的非主机存储服务器上。使用reStore,您的 {box_name} 将成为" "您的未托管存储服务器。" -#: plinth/modules/restore/__init__.py:47 +#: plinth/modules/restore/__init__.py:49 msgid "" "You can create and edit accounts in the reStore web-" "interface." @@ -3029,14 +3268,22 @@ msgstr "" "您可以在 reStrore 的 web 界面 中创建和编辑帐户 。" #: plinth/modules/roundcube/__init__.py:35 -msgid "" -"Email Client \n" -" (Roundcube)" +#, fuzzy +#| msgid "Enable Roundcube" +msgid "Roundcube" +msgstr "启用 Roundcube" + +#: plinth/modules/roundcube/__init__.py:37 +#, fuzzy +#| msgid "" +#| "Email Client \n" +#| " (Roundcube)" +msgid "Email Client" msgstr "" "邮件客户端\n" "(Roundcube)" -#: plinth/modules/roundcube/__init__.py:38 +#: plinth/modules/roundcube/__init__.py:40 msgid "" "Roundcube webmail is a browser-based multilingual IMAP client with an " "application-like user interface. It provides full functionality you expect " @@ -3047,7 +3294,7 @@ msgstr "" "户界面。它提供您需要的从电子邮件客户端、MIME支持、地址簿、文件夹操作、消息搜" "索到拼写检查的完整功能。" -#: plinth/modules/roundcube/__init__.py:44 +#: plinth/modules/roundcube/__init__.py:46 msgid "" "You can access Roundcube from /roundcube. Provide " "the username and password of the email account you wish to access followed " @@ -3060,7 +3307,7 @@ msgstr "" "如 imap.example.com。对于基于 SSL 的 IMAP(建议),服务器填写为" "类似 imaps://imap.example.com。" -#: plinth/modules/roundcube/__init__.py:51 +#: plinth/modules/roundcube/__init__.py:53 msgid "" "For Gmail, username will be your Gmail address, password will be your Google " "account password and server will be imaps://imap.gmail.com. " @@ -3087,28 +3334,45 @@ msgstr "" "若启用此项,只有处于“admin”组中的用户能够通过 SSH 访问控制台。控制台用户可以" "访问一些服务而不需要认证。" -#: plinth/modules/security/views.py:63 +#: plinth/modules/security/forms.py:35 +msgid "Fail2ban (recommended)" +msgstr "" + +#: plinth/modules/security/forms.py:36 +msgid "" +"When this option is enabled, fail2ban will limit brute force break-in " +"attempts to the SSH server and other password protected internet-services " +"which are enabled." +msgstr "" + +#: plinth/modules/security/views.py:66 #, python-brace-format msgid "Error setting restricted access: {exception}" msgstr "设置限制访问错误:{exception}" -#: plinth/modules/security/views.py:66 +#: plinth/modules/security/views.py:69 msgid "Updated security configuration" msgstr "安全配置已更新" #: plinth/modules/shaarli/__init__.py:35 -msgid "" -"Bookmarks \n" -" (Shaarli)" +msgid "Shaarli" +msgstr "Shaarli" + +#: plinth/modules/shaarli/__init__.py:37 +#, fuzzy +#| msgid "" +#| "Bookmarks \n" +#| " (Shaarli)" +msgid "Bookmarks" msgstr "" "书签\n" "(Shaarli)" -#: plinth/modules/shaarli/__init__.py:38 +#: plinth/modules/shaarli/__init__.py:40 msgid "Shaarli allows you to save and share bookmarks." msgstr "Shaarli 允许您保存和共享书签。" -#: plinth/modules/shaarli/__init__.py:40 +#: plinth/modules/shaarli/__init__.py:42 msgid "" "When enabled, Shaarli will be available from /shaarli path on the web server. Note that Shaarli only supports a single user " @@ -3231,6 +3495,18 @@ msgstr "系统需要重启以完成完全回滚。" msgid "Rollback to Snapshot" msgstr "回滚到快照" +#: plinth/modules/ssh/__init__.py:37 +msgid "Secure Shell (SSH) Server" +msgstr "安全 Shell(SSH)服务器" + +#: plinth/modules/ssh/__init__.py:40 +msgid "" +"A Secure Shell server uses the secure shell protocol to accept connections " +"from remote computers. An authorized remote computer can perform " +"administration tasks, copy files or run other services using such " +"connections." +msgstr "" + #: plinth/modules/sso/__init__.py:30 msgid "Single Sign On" msgstr "" @@ -3240,12 +3516,14 @@ msgid "Login" msgstr "登录" #: plinth/modules/syncthing/__init__.py:39 -msgid "" -"File Synchronization \n" -" (Syncthing)" +msgid "Syncthing" msgstr "" -#: plinth/modules/syncthing/__init__.py:42 +#: plinth/modules/syncthing/__init__.py:41 +msgid "File Synchronization" +msgstr "" + +#: plinth/modules/syncthing/__init__.py:44 msgid "" "Syncthing is an application to synchronize files across multiple devices, e." "g. your desktop computer and mobile phone. Creation, modification, or " @@ -3253,7 +3531,7 @@ msgid "" "other devices that also run Syncthing." msgstr "" -#: plinth/modules/syncthing/__init__.py:47 +#: plinth/modules/syncthing/__init__.py:49 #, python-brace-format msgid "" "Running Syncthing on {box_name} provides an extra synchronization point for " @@ -3264,7 +3542,7 @@ msgid "" "{box_name} is only available for users belonging to the \"admin\" group." msgstr "" -#: plinth/modules/syncthing/__init__.py:54 +#: plinth/modules/syncthing/__init__.py:56 msgid "" "When enabled, Syncthing's web interface will be available from /syncthing. Desktop and mobile clients are also Tor Project website. For " @@ -3343,36 +3635,36 @@ msgstr "" "href=\"https://www.torproject.org/download/download-easy.html.en\">Tor浏览器" "。" -#: plinth/modules/tor/__init__.py:70 plinth/modules/tor/__init__.py:112 +#: plinth/modules/tor/__init__.py:72 plinth/modules/tor/__init__.py:114 msgid "Tor Anonymity Network" msgstr "Tor 匿名网络" -#: plinth/modules/tor/__init__.py:76 plinth/modules/tor/__init__.py:120 +#: plinth/modules/tor/__init__.py:78 plinth/modules/tor/__init__.py:122 msgid "Tor Bridge Relay" msgstr "Tor 网桥中继" -#: plinth/modules/tor/__init__.py:98 plinth/modules/tor/__init__.py:141 +#: plinth/modules/tor/__init__.py:100 plinth/modules/tor/__init__.py:143 msgid "Tor Hidden Service" msgstr "隐藏的 Tor 服务" -#: plinth/modules/tor/__init__.py:160 +#: plinth/modules/tor/__init__.py:162 msgid "Tor relay port available" msgstr "Tor 中继端口可用" -#: plinth/modules/tor/__init__.py:168 +#: plinth/modules/tor/__init__.py:170 msgid "Obfs3 transport registered" msgstr "已注册 Obfs3 传输" -#: plinth/modules/tor/__init__.py:174 +#: plinth/modules/tor/__init__.py:176 msgid "Obfs4 transport registered" msgstr "已注册 Obfs4 传输" -#: plinth/modules/tor/__init__.py:211 +#: plinth/modules/tor/__init__.py:213 #, python-brace-format msgid "Access URL {url} on tcp{kind} via Tor" msgstr "在 tcp{kind} 上通过 Tor 访问 {url}" -#: plinth/modules/tor/__init__.py:222 +#: plinth/modules/tor/__init__.py:224 #, python-brace-format msgid "Confirm Tor usage at {url} on tcp{kind}" msgstr "确认使用 Tor 通过 tcp{kind} 访问 {url}" @@ -3526,14 +3818,18 @@ msgid "An error occurred during configuration." msgstr "在配置过程中出错。" #: plinth/modules/transmission/__init__.py:38 -msgid "" -"BitTorrent \n" -" (Transmission)" -msgstr "" -"BitTorrent\n" -"(Transmission)" +#, fuzzy +#| msgid "Transmission BitTorrent" +msgid "Transmission" +msgstr "Transmission BitTorrent" -#: plinth/modules/transmission/__init__.py:41 +#: plinth/modules/transmission/__init__.py:40 +#, fuzzy +#| msgid "Deluge BitTorrent" +msgid "BitTorrent" +msgstr "Deluge BitTorrent 客户端" + +#: plinth/modules/transmission/__init__.py:43 msgid "" "BitTorrent is a peer-to-peer file sharing protocol. Transmission daemon " "handles Bitorrent file sharing. Note that BitTorrent is not anonymous." @@ -3541,7 +3837,7 @@ msgstr "" "BitTorrent 是对等文件共享协议。Transmission 守护进程处理 Bitorrent 文件共享。" "请注意,BitTorrent 不是匿名。" -#: plinth/modules/transmission/__init__.py:44 +#: plinth/modules/transmission/__init__.py:46 msgid "" "Access the web interface at /transmission." msgstr "通过 /transmission 访问其 web 界面。" @@ -3571,15 +3867,21 @@ msgstr "" "登录到 web 界面的密码。当前密码以哈希格式所示。若要设置一个新密码,请以纯文本" "格式输入密码。" -#: plinth/modules/ttrss/__init__.py:37 -msgid "" -"News Feed Reader \n" -" (Tiny Tiny RSS)" +#: plinth/modules/ttrss/__init__.py:39 +msgid "Tiny Tiny RSS" +msgstr "" + +#: plinth/modules/ttrss/__init__.py:41 +#, fuzzy +#| msgid "" +#| "News Feed Reader \n" +#| " (Tiny Tiny RSS)" +msgid "News Feed Reader" msgstr "" "新闻收取阅读器\n" "(Tiny Tiny RSS)" -#: plinth/modules/ttrss/__init__.py:40 +#: plinth/modules/ttrss/__init__.py:44 msgid "" "Tiny Tiny RSS is a news feed (RSS/Atom) reader and aggregator, designed to " "allow reading news from any location, while feeling as close to a real " @@ -3588,10 +3890,15 @@ msgstr "" "Tiny Tiny RSS是一个新闻源(RSS / Atom)阅读器和聚合器,旨在允许从任何位置读取" "新闻,同时提供尽可能接近真实的桌面应用程序体验。" -#: plinth/modules/ttrss/__init__.py:44 +#: plinth/modules/ttrss/__init__.py:49 +#, fuzzy, python-brace-format +#| msgid "" +#| "When enabled, Tiny Tiny RSS will be available from /" +#| "tt-rss path on the web server." msgid "" "When enabled, Tiny Tiny RSS will be available from /tt-" -"rss path on the web server." +"rss path on the web server. It can be accessed by any user with a {box_name} login." msgstr "" "启用以后,Tiny Tiny RSS 将可从网页服务器的 /tt-rss 路" "径访问。" @@ -3898,15 +4205,11 @@ msgstr "媒体改变" msgid "configuration file: {file}" msgstr "配置文件:{file}" -#: plinth/service.py:119 +#: plinth/service.py:118 msgid "Web Server over Secure Socket Layer" msgstr "Web 服务器安全套接字层" -#: plinth/service.py:121 -msgid "Secure Shell (SSH) Server" -msgstr "安全 Shell(SSH)服务器" - -#: plinth/service.py:123 +#: plinth/service.py:120 #, python-brace-format msgid "{box_name} Web Interface (Plinth)" msgstr "{box_name} Web 界面(Plinth)" @@ -3954,11 +4257,11 @@ msgstr "" "com/freedombox/Plinth/issues\"> bug 追踪器 上这样我们就可以修复该错误。同" "时请附加状态日志到 Bug 报告里。" -#: plinth/templates/apps.html:25 +#: plinth/templates/apps.html:33 msgid "Services and Applications" msgstr "服务和应用程序" -#: plinth/templates/apps.html:28 +#: plinth/templates/apps.html:36 #, python-format msgid "" "You can install and run various services and applications on your " @@ -3968,7 +4271,7 @@ msgstr "" "你可以安装和运行各种服务和应用程序在您 %(box_name)s 上。点击左边应用程序链接" "阅读相应的描述,并选择是否要安装。" -#: plinth/templates/apps.html:36 +#: plinth/templates/apps.html:44 msgid "" "This box can be your photo sharing site, your instant messaging site, your " "social networking site, your news site. Remember web portals? We can be " @@ -4144,17 +4447,17 @@ msgstr "正在安装 %(package_names)s:%(status)s" msgid "%(percentage)s%% complete" msgstr "已完成 %(percentage)s%%" -#: plinth/templates/system.html:25 +#: plinth/templates/system.html:33 msgid "System Configuration" msgstr "系统配置" -#: plinth/templates/system.html:28 +#: plinth/templates/system.html:36 #, fuzzy, python-format #| msgid "Here you can administrate the underlying system of your {box_name}." msgid "Here you can administrate the underlying system of your %(box_name)s." msgstr "在这里您可以管理 {box_name} 的底层系统。" -#: plinth/templates/system.html:34 +#: plinth/templates/system.html:42 #, fuzzy, python-format #| msgid "" #| "The options affect the {box_name} at its most general level, so be " @@ -4163,6 +4466,59 @@ msgid "" "The options affect the %(box_name)s at its most general level, so be careful!" msgstr "此选项会在通用层面影响 {box_name} 所以要小心!" +#, fuzzy +#~| msgid "Select the domain name" +#~ msgid "Select the domain name to be used for diaspora*" +#~ msgstr "選擇網域名" + +#~ msgid "" +#~ "Chat Server \n" +#~ " (ejabberd)" +#~ msgstr "" +#~ "聊天服务器\n" +#~ "(ejabberd)" + +#~ msgid "Wiki and Blog (ikiwiki)" +#~ msgstr "Wiki 和博客(ikiwiki)" + +#~ msgid "" +#~ "Gobby Server \n" +#~ " (infinoted)" +#~ msgstr "" +#~ "Gobby 服务器 \n" +#~ "(infinoted)" + +#~ msgid "Select the domain name" +#~ msgstr "選擇網域名" + +#~ msgid "" +#~ "Web Proxy \n" +#~ " (Privoxy)" +#~ msgstr "" +#~ "网页代理\n" +#~ "(Privoxy)" + +#~ msgid "" +#~ "IRC Client \n" +#~ " (Quassel)" +#~ msgstr "" +#~ "IRC 客户端\n" +#~ "(Quassel)" + +#~ msgid "" +#~ "SIP Server \n" +#~ " (repro)" +#~ msgstr "" +#~ "SIP 服务器\n" +#~ "(repro)" + +#~ msgid "" +#~ "BitTorrent \n" +#~ " (Transmission)" +#~ msgstr "" +#~ "BitTorrent\n" +#~ "(Transmission)" + #~ msgid "Applications" #~ msgstr "应用程序" @@ -4359,12 +4715,6 @@ msgstr "此选项会在通用层面影响 {box_name} 所以要小心!" #~ msgid "BitTorrent (Deluge)" #~ msgstr "BitTorrent 下载(Deluge)" -#~ msgid "Deluge BitTorrent" -#~ msgstr "Deluge BitTorrent 客户端" - -#~ msgid "Enable Deluge" -#~ msgstr "启用 Deluge" - #~ msgid "System Diagnostics" #~ msgstr "系统诊断" @@ -4382,9 +4732,6 @@ msgstr "此选项会在通用层面影响 {box_name} 所以要小心!" #~ msgid "Enable ikiwiki" #~ msgstr "启用 ikiwiki" -#~ msgid "Wiki and Blog" -#~ msgstr "Wiki 和博客" - #~ msgid "Generate PGP Key" #~ msgstr "生成 PGP 密钥" @@ -4412,15 +4759,6 @@ msgstr "此选项会在通用层面影响 {box_name} 所以要小心!" #~ msgid "Exposing SSH with the default password for 'fbx' is a VERY BAD idea." #~ msgstr "将 SSH 暴露出来使用默认密码 \"fbx\" 是非常不明智的。" -#~ msgid "Privoxy Web Proxy" -#~ msgstr "Privoxy 网页代理" - -#~ msgid "Enable Privoxy" -#~ msgstr "启用 Privoxy" - -#~ msgid "Quassel IRC Client" -#~ msgstr "Quassel IRC 客户端" - #~ msgid "Enable Quassel core service" #~ msgstr "启用 Quassel 核心服务" @@ -4430,15 +4768,6 @@ msgstr "此选项会在通用层面影响 {box_name} 所以要小心!" #~ msgid "Enable repro service" #~ msgstr "启用 repro 服务" -#~ msgid "reStore" -#~ msgstr "reStore" - -#~ msgid "Enable Roundcube" -#~ msgstr "启用 Roundcube" - -#~ msgid "Shaarli" -#~ msgstr "Shaarli" - #~ msgid "Enable Shaarli" #~ msgstr "启用 Shaarli" @@ -4448,9 +4777,6 @@ msgstr "此选项会在通用层面影响 {box_name} 所以要小心!" #~ msgid "Tor Control Panel" #~ msgstr "Tor 控制面板" -#~ msgid "Transmission BitTorrent" -#~ msgstr "Transmission BitTorrent" - #~ msgid "Enable Transmission daemon" #~ msgstr "启用 Transmission 守护进程"