diff --git a/plinth/locale/bg/LC_MESSAGES/django.po b/plinth/locale/bg/LC_MESSAGES/django.po
index 05b1fc4a3..941b74df4 100644
--- a/plinth/locale/bg/LC_MESSAGES/django.po
+++ b/plinth/locale/bg/LC_MESSAGES/django.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2020-02-14 21:26+0200\n"
+"POT-Creation-Date: 2020-02-24 19:12-0500\n"
"PO-Revision-Date: 2019-10-12 14:52+0000\n"
"Last-Translator: Nevena Mircheva This means that devices on the Internet can reach you when you are "
+"connected to the Internet. Every time you connect to the Internet with your "
+"Internet Service Provider (ISP), you may get a different IP address, "
+"especially after some offline time. Many ISPs offer this type of "
+"connectivity. If you have a public IP address but are unsure if it changes "
+"over time or not, it is safer to choose this option. This means that devices on the Internet can reach you "
+"when you are connected to the Internet. Every time you connect to the "
+"Internet with your Internet Service Provider (ISP), you always get the same "
+"IP address. This is the most trouble-free setup for many {box_name} services "
+"but very few ISPs offer this. You may be able to get this service from your "
+"ISP by making an additional payment. This means that "
+"devices on the Internet can not reach you when you are connected to "
+"the Internet. Every time you connect to the Internet with your Internet "
+"Service Provider (ISP), you get an IP address that is only relevant for "
+"local networks. Many ISPs offer this type of connectivity. This is the most "
+"troublesome situation for hosting services at home. {box_name} provides many "
+"workaround solutions but each solution has some limitations. Most routers "
-"provide a configuration setting called DMZ. This will allow the router to "
-"forward all incoming traffic from the internet to a single IP address such "
-"as the {box_name}'s address. First remember to configure a static local IP "
-"address for your {box_name} in your router's configuration. Most routers provide a configuration setting called DMZ. This will allow "
+"the router to forward all incoming traffic from the Internet to a single IP "
+"address such as the {box_name}'s IP address. First remember to configure a "
+"static local IP address for your {box_name} in your router's configuration."
+"p>"
msgstr ""
-#: plinth/modules/networks/forms.py:332
+#: plinth/modules/networks/forms.py:368
#, python-brace-format
msgid ""
-"Forward Specific Traffic as needed by each application You may alternatively choose to forward only specific traffic to your "
"{box_name}. This is ideal if you have other servers like {box_name} in your "
"network or if your router does not support DMZ feature. All applications "
@@ -3071,276 +3134,280 @@ msgid ""
"to be forwarded for that application to work. Choose this if you "
+"Router is currently unconfigured Choose this if you "
"have not configured or are unable to configure the router currently and wish "
"to be reminded later. Some of the other configuration steps may fail. This means that devices on the Internet can reach you when you are "
+"connected to the Internet. Every time you connect to the Internet with your "
+"Internet Service Provider (ISP), you may get a different IP address, "
+"especially after some offline time. Many ISPs offer this type of "
+"connectivity. If you have a public IP address but are unsure if it changes "
+"over time or not, it is safer to choose this option. This means that devices on the Internet can reach you "
+"when you are connected to the Internet. Every time you connect to the "
+"Internet with your Internet Service Provider (ISP), you always get the same "
+"IP address. This is the most trouble-free setup for many {box_name} services "
+"but very few ISPs offer this. You may be able to get this service from your "
+"ISP by making an additional payment. This means that "
+"devices on the Internet can not reach you when you are connected to "
+"the Internet. Every time you connect to the Internet with your Internet "
+"Service Provider (ISP), you get an IP address that is only relevant for "
+"local networks. Many ISPs offer this type of connectivity. This is the most "
+"troublesome situation for hosting services at home. {box_name} provides many "
+"workaround solutions but each solution has some limitations. Most routers "
-"provide a configuration setting called DMZ. This will allow the router to "
-"forward all incoming traffic from the internet to a single IP address such "
-"as the {box_name}'s address. First remember to configure a static local IP "
-"address for your {box_name} in your router's configuration. Most routers provide a configuration setting called DMZ. This will allow "
+"the router to forward all incoming traffic from the Internet to a single IP "
+"address such as the {box_name}'s IP address. First remember to configure a "
+"static local IP address for your {box_name} in your router's configuration."
+"p>"
msgstr ""
-#: plinth/modules/networks/forms.py:332
+#: plinth/modules/networks/forms.py:368
#, python-brace-format
msgid ""
-"Forward Specific Traffic as needed by each application You may alternatively choose to forward only specific traffic to your "
"{box_name}. This is ideal if you have other servers like {box_name} in your "
"network or if your router does not support DMZ feature. All applications "
@@ -3064,276 +3127,280 @@ msgid ""
"to be forwarded for that application to work. Choose this if you "
+"Router is currently unconfigured Choose this if you "
"have not configured or are unable to configure the router currently and wish "
"to be reminded later. Some of the other configuration steps may fail. This means that devices on the Internet can reach you when you are "
+"connected to the Internet. Every time you connect to the Internet with your "
+"Internet Service Provider (ISP), you may get a different IP address, "
+"especially after some offline time. Many ISPs offer this type of "
+"connectivity. If you have a public IP address but are unsure if it changes "
+"over time or not, it is safer to choose this option. This means that devices on the Internet can reach you "
+"when you are connected to the Internet. Every time you connect to the "
+"Internet with your Internet Service Provider (ISP), you always get the same "
+"IP address. This is the most trouble-free setup for many {box_name} services "
+"but very few ISPs offer this. You may be able to get this service from your "
+"ISP by making an additional payment. This means that "
+"devices on the Internet can not reach you when you are connected to "
+"the Internet. Every time you connect to the Internet with your Internet "
+"Service Provider (ISP), you get an IP address that is only relevant for "
+"local networks. Many ISPs offer this type of connectivity. This is the most "
+"troublesome situation for hosting services at home. {box_name} provides many "
+"workaround solutions but each solution has some limitations. Most routers "
-"provide a configuration setting called DMZ. This will allow the router to "
-"forward all incoming traffic from the internet to a single IP address such "
-"as the {box_name}'s address. First remember to configure a static local IP "
-"address for your {box_name} in your router's configuration. Most routers provide a configuration setting called DMZ. This will allow "
+"the router to forward all incoming traffic from the Internet to a single IP "
+"address such as the {box_name}'s IP address. First remember to configure a "
+"static local IP address for your {box_name} in your router's configuration."
+"p>"
msgstr ""
-#: plinth/modules/networks/forms.py:332
+#: plinth/modules/networks/forms.py:368
#, python-brace-format
msgid ""
-"Forward Specific Traffic as needed by each application You may alternatively choose to forward only specific traffic to your "
"{box_name}. This is ideal if you have other servers like {box_name} in your "
"network or if your router does not support DMZ feature. All applications "
@@ -3570,266 +3641,272 @@ msgid ""
"to be forwarded for that application to work. Choose this if you "
+"Router is currently unconfigured Choose this if you "
"have not configured or are unable to configure the router currently and wish "
"to be reminded later. Some of the other configuration steps may fail. This means that devices on the Internet can reach you when you are "
+"connected to the Internet. Every time you connect to the Internet with your "
+"Internet Service Provider (ISP), you may get a different IP address, "
+"especially after some offline time. Many ISPs offer this type of "
+"connectivity. If you have a public IP address but are unsure if it changes "
+"over time or not, it is safer to choose this option. This means that devices on the Internet can reach you "
+"when you are connected to the Internet. Every time you connect to the "
+"Internet with your Internet Service Provider (ISP), you always get the same "
+"IP address. This is the most trouble-free setup for many {box_name} services "
+"but very few ISPs offer this. You may be able to get this service from your "
+"ISP by making an additional payment. This means that "
+"devices on the Internet can not reach you when you are connected to "
+"the Internet. Every time you connect to the Internet with your Internet "
+"Service Provider (ISP), you get an IP address that is only relevant for "
+"local networks. Many ISPs offer this type of connectivity. This is the most "
+"troublesome situation for hosting services at home. {box_name} provides many "
+"workaround solutions but each solution has some limitations. Most routers "
-"provide a configuration setting called DMZ. This will allow the router to "
-"forward all incoming traffic from the internet to a single IP address such "
-"as the {box_name}'s address. First remember to configure a static local IP "
-"address for your {box_name} in your router's configuration. Most routers provide a configuration setting called DMZ. This will allow "
+"the router to forward all incoming traffic from the Internet to a single IP "
+"address such as the {box_name}'s IP address. First remember to configure a "
+"static local IP address for your {box_name} in your router's configuration."
+"p>"
msgstr ""
-#: plinth/modules/networks/forms.py:332
+#: plinth/modules/networks/forms.py:368
#, python-brace-format
msgid ""
-"Forward Specific Traffic as needed by each application You may alternatively choose to forward only specific traffic to your "
"{box_name}. This is ideal if you have other servers like {box_name} in your "
"network or if your router does not support DMZ feature. All applications "
@@ -3594,267 +3665,273 @@ msgid ""
"to be forwarded for that application to work. Choose this if you "
+"Router is currently unconfigured Choose this if you "
"have not configured or are unable to configure the router currently and wish "
"to be reminded later. Some of the other configuration steps may fail. This means that devices on the Internet can reach you when you are "
+"connected to the Internet. Every time you connect to the Internet with your "
+"Internet Service Provider (ISP), you may get a different IP address, "
+"especially after some offline time. Many ISPs offer this type of "
+"connectivity. If you have a public IP address but are unsure if it changes "
+"over time or not, it is safer to choose this option. This means that devices on the Internet can reach you "
+"when you are connected to the Internet. Every time you connect to the "
+"Internet with your Internet Service Provider (ISP), you always get the same "
+"IP address. This is the most trouble-free setup for many {box_name} services "
+"but very few ISPs offer this. You may be able to get this service from your "
+"ISP by making an additional payment. This means that "
+"devices on the Internet can not reach you when you are connected to "
+"the Internet. Every time you connect to the Internet with your Internet "
+"Service Provider (ISP), you get an IP address that is only relevant for "
+"local networks. Many ISPs offer this type of connectivity. This is the most "
+"troublesome situation for hosting services at home. {box_name} provides many "
+"workaround solutions but each solution has some limitations. Most "
+#| "routers provide a configuration setting called DMZ. This will allow the "
+#| "router to forward all incoming traffic from the internet to a single IP "
+#| "address such as the {box_name}'s address. First remember to configure a "
+#| "static local IP address for your {box_name} in your router's "
+#| "configuration. Most routers "
-"provide a configuration setting called DMZ. This will allow the router to "
-"forward all incoming traffic from the internet to a single IP address such "
-"as the {box_name}'s address. First remember to configure a static local IP "
-"address for your {box_name} in your router's configuration. Most routers provide a configuration setting called DMZ. This will allow "
+"the router to forward all incoming traffic from the Internet to a single IP "
+"address such as the {box_name}'s IP address. First remember to configure a "
+"static local IP address for your {box_name} in your router's configuration."
+"p>"
msgstr ""
"Verwenden Sie die DMZ-Funktion, um den gesamten Datenverkehr weiterzuleiten. Dadurch kann der Router den gesamten eingehenden "
@@ -3560,10 +3638,19 @@ msgstr ""
"lokale IP-Adresse für Ihre {box_name} in der Konfiguration Ihres Routers zu "
"konfigurieren. You may alternatively choose to forward only specific traffic to "
+#| "your {box_name}. This is ideal if you have other servers like {box_name} "
+#| "in your network or if your router does not support DMZ feature. All "
+#| "applications that provide a web interface need you to forward traffic "
+#| "from ports 80 and 443 to work. Each of the other applications will "
+#| "suggest which port(s) need to be forwarded for that application to work."
+#| "p>"
msgid ""
-"Forward Specific Traffic as needed by each application You may alternatively choose to forward only specific traffic to your "
"{box_name}. This is ideal if you have other servers like {box_name} in your "
"network or if your router does not support DMZ feature. All applications "
@@ -3580,9 +3667,15 @@ msgstr ""
"anderen Anwendungen schlägt vor, welche Ports für diese Anwendung "
"weitergeleitet werden müssen. Choose this if "
+#| "you have not configured or are unable to configure the router currently "
+#| "and wish to be reminded later. Some of the other configuration steps may "
+#| "fail. Choose this if you "
+"Router is currently unconfigured Choose this if you "
"have not configured or are unable to configure the router currently and wish "
"to be reminded later. Some of the other configuration steps may fail.
SSH key-based authentication is not yet "
"possible."
msgstr ""
-#: plinth/modules/backups/forms.py:224
+#: plinth/modules/backups/forms.py:209
msgid "Remote backup repository already exists."
msgstr ""
-#: plinth/modules/backups/forms.py:230
+#: plinth/modules/backups/forms.py:215
msgid "Select verified SSH public key"
msgstr ""
-#: plinth/modules/backups/repository.py:48
+#: plinth/modules/backups/repository.py:33
msgid ""
"Connection refused - make sure you provided correct credentials and the "
"server is running."
msgstr ""
-#: plinth/modules/backups/repository.py:55
+#: plinth/modules/backups/repository.py:40
msgid "Connection refused"
msgstr ""
-#: plinth/modules/backups/repository.py:62
+#: plinth/modules/backups/repository.py:47
msgid "Repository not found"
msgstr ""
-#: plinth/modules/backups/repository.py:67
+#: plinth/modules/backups/repository.py:52
msgid "Incorrect encryption passphrase"
msgstr ""
-#: plinth/modules/backups/repository.py:72
+#: plinth/modules/backups/repository.py:57
msgid "SSH access denied"
msgstr ""
-#: plinth/modules/backups/repository.py:78
+#: plinth/modules/backups/repository.py:63
msgid "Repository path is neither empty nor is an existing backups repository."
msgstr ""
-#: plinth/modules/backups/repository.py:152
+#: plinth/modules/backups/repository.py:137
msgid "Existing repository is not encrypted."
msgstr ""
-#: plinth/modules/backups/repository.py:337
+#: plinth/modules/backups/repository.py:322
#, python-brace-format
msgid "{box_name} storage"
msgstr ""
-#: plinth/modules/backups/templates/backups.html:45
-#: plinth/modules/backups/views.py:77
+#: plinth/modules/backups/templates/backups.html:30
+#: plinth/modules/backups/views.py:60
msgid "Create a new backup"
msgstr ""
-#: plinth/modules/backups/templates/backups.html:49
+#: plinth/modules/backups/templates/backups.html:34
msgid "Create Backup"
msgstr ""
-#: plinth/modules/backups/templates/backups.html:52
+#: plinth/modules/backups/templates/backups.html:37
msgid "Upload and restore a backup archive"
msgstr ""
-#: plinth/modules/backups/templates/backups.html:56
+#: plinth/modules/backups/templates/backups.html:41
msgid "Upload and Restore"
msgstr ""
-#: plinth/modules/backups/templates/backups.html:59
+#: plinth/modules/backups/templates/backups.html:44
msgid "Add a backup location"
msgstr ""
-#: plinth/modules/backups/templates/backups.html:63
+#: plinth/modules/backups/templates/backups.html:48
msgid "Add Backup Location"
msgstr ""
-#: plinth/modules/backups/templates/backups.html:66
+#: plinth/modules/backups/templates/backups.html:51
msgid "Add a remote backup location"
msgstr ""
-#: plinth/modules/backups/templates/backups.html:70
+#: plinth/modules/backups/templates/backups.html:55
msgid "Add Remote Backup Location"
msgstr ""
-#: plinth/modules/backups/templates/backups.html:73
+#: plinth/modules/backups/templates/backups.html:58
msgid "Existing Backups"
msgstr ""
-#: plinth/modules/backups/templates/backups_add_remote_repository.html:34
+#: plinth/modules/backups/templates/backups_add_remote_repository.html:19
#, python-format
msgid ""
"The credentials for this repository are stored on your %(box_name)s.
"
@@ -352,71 +352,72 @@ msgid ""
"if chosen, the encryption passphrase."
msgstr ""
-#: plinth/modules/backups/templates/backups_add_remote_repository.html:43
+#: plinth/modules/backups/templates/backups_add_remote_repository.html:28
msgid "Create Location"
msgstr ""
-#: plinth/modules/backups/templates/backups_add_repository.html:34
-#: plinth/modules/gitweb/views.py:70
+#: plinth/modules/backups/templates/backups_add_repository.html:19
+#: plinth/modules/gitweb/views.py:50
msgid "Create Repository"
msgstr ""
-#: plinth/modules/backups/templates/backups_delete.html:27
+#: plinth/modules/backups/templates/backups_delete.html:12
msgid "Delete this archive permanently?"
msgstr ""
-#: plinth/modules/backups/templates/backups_delete.html:33
-#: plinth/modules/ikiwiki/forms.py:30
-#: plinth/modules/networks/templates/connection_show.html:78
-#: plinth/modules/sharing/templates/sharing.html:52
+#: plinth/modules/backups/templates/backups_delete.html:18
+#: plinth/modules/ikiwiki/forms.py:15
+#: plinth/modules/networks/templates/connection_show.html:63
+#: plinth/modules/sharing/templates/sharing.html:37
msgid "Name"
msgstr ""
-#: plinth/modules/backups/templates/backups_delete.html:34
+#: plinth/modules/backups/templates/backups_delete.html:19
msgid "Time"
msgstr ""
-#: plinth/modules/backups/templates/backups_delete.html:51
+#: plinth/modules/backups/templates/backups_delete.html:36
#, python-format
msgid "Delete Archive %(name)s"
msgstr ""
-#: plinth/modules/backups/templates/backups_form.html:35
-#: plinth/modules/gitweb/templates/gitweb_create_edit.html:35
-#: plinth/modules/networks/templates/router_configuration_update.html:34
-#: plinth/modules/pagekite/templates/pagekite_custom_services.html:47
-#: plinth/modules/sharing/templates/sharing_add_edit.html:35
+#: plinth/modules/backups/templates/backups_form.html:20
+#: plinth/modules/gitweb/templates/gitweb_create_edit.html:20
+#: plinth/modules/networks/templates/internet_connectivity_type.html:18
+#: plinth/modules/networks/templates/router_configuration_update.html:19
+#: plinth/modules/pagekite/templates/pagekite_custom_services.html:32
+#: plinth/modules/sharing/templates/sharing_add_edit.html:20
msgid "Submit"
msgstr ""
-#: plinth/modules/backups/templates/backups_repository_remove.html:28
+#: plinth/modules/backups/templates/backups_repository_remove.html:13
msgid "Are you sure that you want to remove this repository?"
msgstr ""
-#: plinth/modules/backups/templates/backups_repository_remove.html:34
+#: plinth/modules/backups/templates/backups_repository_remove.html:19
msgid ""
"The remote repository will not be deleted. This just removes the repository "
"from the listing on the backup page, you can add it again later on."
msgstr ""
-#: plinth/modules/backups/templates/backups_repository_remove.html:46
+#: plinth/modules/backups/templates/backups_repository_remove.html:31
msgid "Remove Location"
msgstr ""
-#: plinth/modules/backups/templates/backups_restore.html:30
+#: plinth/modules/backups/templates/backups_restore.html:15
msgid "Restore data from"
msgstr ""
-#: plinth/modules/backups/templates/backups_restore.html:43
-#: plinth/modules/backups/views.py:171
+#: plinth/modules/backups/templates/backups_restore.html:28
+#: plinth/modules/backups/views.py:154
msgid "Restore"
msgstr ""
-#: plinth/modules/backups/templates/backups_restore.html:47
+#: plinth/modules/backups/templates/backups_restore.html:32
msgid "Restoring"
msgstr ""
-#: plinth/modules/backups/templates/backups_upload.html:32
+#: plinth/modules/backups/templates/backups_upload.html:17
#, python-format
msgid ""
"\n"
@@ -428,154 +429,146 @@ msgid ""
" "
msgstr ""
-#: plinth/modules/backups/templates/backups_upload.html:42
-#: plinth/modules/help/templates/statuslog.html:38
+#: plinth/modules/backups/templates/backups_upload.html:27
+#: plinth/modules/help/templates/statuslog.html:23
msgid "Caution:"
msgstr ""
-#: plinth/modules/backups/templates/backups_upload.html:43
+#: plinth/modules/backups/templates/backups_upload.html:28
#, python-format
msgid ""
"You have %(max_filesize)s available to restore a backup. Exceeding this "
"limit can leave your %(box_name)s unusable."
msgstr ""
-#: plinth/modules/backups/templates/backups_upload.html:56
+#: plinth/modules/backups/templates/backups_upload.html:41
msgid "Upload file"
msgstr ""
-#: plinth/modules/backups/templates/verify_ssh_hostkey.html:33
+#: plinth/modules/backups/templates/verify_ssh_hostkey.html:18
#, python-format
msgid ""
"Could not reach SSH host %(hostname)s. Please verify that the host is up and "
"accepting connections."
msgstr ""
-#: plinth/modules/backups/templates/verify_ssh_hostkey.html:43
+#: plinth/modules/backups/templates/verify_ssh_hostkey.html:28
#, python-format
msgid ""
"The authenticity of SSH host %(hostname)s could not be established. The host "
"advertises the following SSH public keys. Please verify any one of them."
msgstr ""
-#: plinth/modules/backups/templates/verify_ssh_hostkey.html:55
+#: plinth/modules/backups/templates/verify_ssh_hostkey.html:40
msgid "How to verify?"
msgstr ""
-#: plinth/modules/backups/templates/verify_ssh_hostkey.html:60
+#: plinth/modules/backups/templates/verify_ssh_hostkey.html:45
msgid ""
"Run the following command on the SSH host machine. The output should match "
"one of the provided options. You can also use dsa, ecdsa, ed25519 etc. "
"instead of rsa, by choosing the corresponding file."
msgstr ""
-#: plinth/modules/backups/templates/verify_ssh_hostkey.html:75
+#: plinth/modules/backups/templates/verify_ssh_hostkey.html:60
msgid "Verify Host"
msgstr ""
-#: plinth/modules/backups/views.py:72
+#: plinth/modules/backups/views.py:55
msgid "Archive created."
msgstr ""
-#: plinth/modules/backups/views.py:99
+#: plinth/modules/backups/views.py:82
msgid "Delete Archive"
msgstr ""
-#: plinth/modules/backups/views.py:111
+#: plinth/modules/backups/views.py:94
msgid "Archive deleted."
msgstr ""
-#: plinth/modules/backups/views.py:124
+#: plinth/modules/backups/views.py:107
msgid "Upload and restore a backup"
msgstr ""
-#: plinth/modules/backups/views.py:159
+#: plinth/modules/backups/views.py:142
msgid "Restored files from backup."
msgstr ""
-#: plinth/modules/backups/views.py:186
+#: plinth/modules/backups/views.py:169
msgid "No backup file found."
msgstr ""
-#: plinth/modules/backups/views.py:194
+#: plinth/modules/backups/views.py:177
msgid "Restore from uploaded file"
msgstr ""
-#: plinth/modules/backups/views.py:251
+#: plinth/modules/backups/views.py:234
msgid "No additional disks available to add a repository."
msgstr ""
-#: plinth/modules/backups/views.py:259
+#: plinth/modules/backups/views.py:242
msgid "Create backup repository"
msgstr ""
-#: plinth/modules/backups/views.py:286
+#: plinth/modules/backups/views.py:269
msgid "Create remote backup repository"
msgstr ""
-#: plinth/modules/backups/views.py:305
+#: plinth/modules/backups/views.py:288
msgid "Added new remote SSH repository."
msgstr ""
-#: plinth/modules/backups/views.py:327
+#: plinth/modules/backups/views.py:310
msgid "Verify SSH hostkey"
msgstr ""
-#: plinth/modules/backups/views.py:353
+#: plinth/modules/backups/views.py:336
msgid "SSH host already verified."
msgstr ""
-#: plinth/modules/backups/views.py:363
+#: plinth/modules/backups/views.py:346
msgid "SSH host verified."
msgstr ""
-#: plinth/modules/backups/views.py:377
+#: plinth/modules/backups/views.py:360
msgid "SSH host public key could not be verified."
msgstr ""
-#: plinth/modules/backups/views.py:379
+#: plinth/modules/backups/views.py:362
msgid "Authentication to remote server failed."
msgstr ""
-#: plinth/modules/backups/views.py:381
+#: plinth/modules/backups/views.py:364
msgid "Error establishing connection to server: {}"
msgstr ""
-#: plinth/modules/backups/views.py:392
+#: plinth/modules/backups/views.py:375
msgid "Repository removed."
msgstr ""
-#: plinth/modules/backups/views.py:406
+#: plinth/modules/backups/views.py:389
msgid "Remove Repository"
msgstr ""
-#: plinth/modules/backups/views.py:415
+#: plinth/modules/backups/views.py:398
msgid "Repository removed. Backups were not deleted."
msgstr ""
-#: plinth/modules/backups/views.py:425
+#: plinth/modules/backups/views.py:408
msgid "Unmounting failed!"
msgstr ""
-#: plinth/modules/backups/views.py:440 plinth/modules/backups/views.py:444
+#: plinth/modules/backups/views.py:423 plinth/modules/backups/views.py:427
msgid "Mounting failed"
msgstr ""
-#: plinth/modules/bind/__init__.py:36
-msgid "BIND"
-msgstr ""
-
-#: plinth/modules/bind/__init__.py:38
-msgid "Domain Name Server"
-msgstr ""
-
-#: plinth/modules/bind/__init__.py:45
+#: plinth/modules/bind/__init__.py:29
msgid ""
"BIND enables you to publish your Domain Name System (DNS) information on the "
"Internet, and to resolve DNS queries for your user devices on your network."
msgstr ""
-#: plinth/modules/bind/__init__.py:49
+#: plinth/modules/bind/__init__.py:33
#, python-brace-format
msgid ""
"Currently, on {box_name}, BIND is only used to resolve DNS queries for other "
@@ -583,39 +576,67 @@ msgid ""
"connection from {box_name}."
msgstr ""
-#: plinth/modules/bind/forms.py:37
+#: plinth/modules/bind/__init__.py:82
+msgid "BIND"
+msgstr ""
+
+#: plinth/modules/bind/__init__.py:83
+msgid "Domain Name Server"
+msgstr ""
+
+#: plinth/modules/bind/forms.py:22
msgid "Forwarders"
msgstr ""
-#: plinth/modules/bind/forms.py:38
+#: plinth/modules/bind/forms.py:23
msgid ""
"A list DNS servers, separated by space, to which requests will be forwarded"
msgstr ""
-#: plinth/modules/bind/forms.py:42
+#: plinth/modules/bind/forms.py:27
msgid "Enable DNSSEC"
msgstr ""
-#: plinth/modules/bind/forms.py:43
+#: plinth/modules/bind/forms.py:28
msgid "Enable Domain Name System Security Extensions"
msgstr ""
-#: plinth/modules/bind/views.py:58 plinth/modules/deluge/views.py:67
-#: plinth/modules/dynamicdns/views.py:171 plinth/modules/openvpn/views.py:153
-#: plinth/modules/shadowsocks/views.py:79
-#: plinth/modules/transmission/views.py:73
+#: plinth/modules/bind/templates/bind.html:11
+msgid "Serving Domains"
+msgstr ""
+
+#: plinth/modules/bind/templates/bind.html:16
+#: plinth/modules/ikiwiki/forms.py:12
+#: plinth/modules/networks/templates/connection_show.html:83
+#: plinth/modules/storage/templates/storage.html:28
+msgid "Type"
+msgstr ""
+
+#: plinth/modules/bind/templates/bind.html:17
+msgid "Domain Names"
+msgstr ""
+
+#: plinth/modules/bind/templates/bind.html:18
+msgid "Serving"
+msgstr ""
+
+#: plinth/modules/bind/templates/bind.html:19
+msgid "IP addresses"
+msgstr ""
+
+#: plinth/modules/bind/templates/bind.html:35
+#: plinth/modules/bind/templates/bind.html:37
+msgid "Refresh IP address and domains"
+msgstr ""
+
+#: plinth/modules/bind/views.py:73 plinth/modules/deluge/views.py:46
+#: plinth/modules/dynamicdns/views.py:150 plinth/modules/openvpn/views.py:134
+#: plinth/modules/shadowsocks/views.py:59
+#: plinth/modules/transmission/views.py:52
msgid "Configuration updated"
msgstr ""
-#: plinth/modules/cockpit/__init__.py:45 plinth/modules/cockpit/manifest.py:27
-msgid "Cockpit"
-msgstr ""
-
-#: plinth/modules/cockpit/__init__.py:49
-msgid "Server Administration"
-msgstr ""
-
-#: plinth/modules/cockpit/__init__.py:53
+#: plinth/modules/cockpit/__init__.py:32
#, python-brace-format
msgid ""
"Cockpit is a server manager that makes it easy to administer GNU/Linux "
@@ -624,68 +645,76 @@ msgid ""
"console operations is also available."
msgstr ""
-#: plinth/modules/cockpit/__init__.py:59
+#: plinth/modules/cockpit/__init__.py:38
#, python-brace-format
msgid ""
"It can be accessed by any user on {box_name} "
"belonging to the admin group."
msgstr ""
-#: plinth/modules/cockpit/__init__.py:63
+#: plinth/modules/cockpit/__init__.py:42
msgid ""
"Cockpit requires that you access it through a domain name. It will not work "
"when accessed using an IP address as part of the URL."
msgstr ""
-#: plinth/modules/cockpit/templates/cockpit.html:26
+#: plinth/modules/cockpit/__init__.py:59 plinth/modules/cockpit/manifest.py:12
+msgid "Cockpit"
+msgstr ""
+
+#: plinth/modules/cockpit/__init__.py:61
+msgid "Server Administration"
+msgstr ""
+
+#: plinth/modules/cockpit/templates/cockpit.html:11
msgid "Access"
msgstr ""
-#: plinth/modules/cockpit/templates/cockpit.html:29
+#: plinth/modules/cockpit/templates/cockpit.html:14
msgid "Cockpit will only work when accessed using the following URLs."
msgstr ""
-#: plinth/modules/config/__init__.py:37
-msgid "General Configuration"
-msgstr ""
-
-#: plinth/modules/config/__init__.py:40
+#: plinth/modules/config/__init__.py:23
msgid ""
"Here you can set some general configuration options like hostname, domain "
"name, webserver home page etc."
msgstr ""
-#: plinth/modules/config/__init__.py:67 plinth/modules/dynamicdns/views.py:44
-#: plinth/modules/i2p/views.py:31 plinth/modules/names/templates/names.html:44
-#: plinth/modules/names/templates/names.html:58
-#: plinth/modules/snapshot/views.py:41
-#: plinth/modules/tahoe/templates/tahoe-pre-setup.html:39
+#: plinth/modules/config/__init__.py:50
+msgid "General Configuration"
+msgstr ""
+
+#: plinth/modules/config/__init__.py:55 plinth/modules/dynamicdns/views.py:29
+#: plinth/modules/i2p/views.py:16 plinth/modules/names/templates/names.html:29
+#: plinth/modules/names/templates/names.html:43
+#: plinth/modules/snapshot/views.py:26
+#: plinth/modules/tahoe/templates/tahoe-pre-setup.html:24
msgid "Configure"
msgstr ""
-#: plinth/modules/config/__init__.py:71 plinth/modules/config/forms.py:76
-#: plinth/modules/dynamicdns/forms.py:110
+#: plinth/modules/config/__init__.py:59 plinth/modules/config/forms.py:61
+#: plinth/modules/dynamicdns/forms.py:95
msgid "Domain Name"
msgstr ""
-#: plinth/modules/config/forms.py:42 plinth/modules/config/forms.py:88
-#: plinth/modules/dynamicdns/forms.py:113
+#: plinth/modules/config/forms.py:27 plinth/modules/config/forms.py:73
+#: plinth/modules/dynamicdns/forms.py:98
msgid "Invalid domain name"
msgstr ""
-#: plinth/modules/config/forms.py:50
+#: plinth/modules/config/forms.py:35
msgid "Apache Default"
msgstr ""
-#: plinth/modules/config/forms.py:51
+#: plinth/modules/config/forms.py:36
msgid "FreedomBox Service (Plinth)"
msgstr ""
-#: plinth/modules/config/forms.py:63
+#: plinth/modules/config/forms.py:48
msgid "Hostname"
msgstr ""
-#: plinth/modules/config/forms.py:65
+#: plinth/modules/config/forms.py:50
#, python-brace-format
msgid ""
"Hostname is the local name by which other devices on the local network can "
@@ -694,11 +723,11 @@ msgid ""
"length must be 63 characters or less."
msgstr ""
-#: plinth/modules/config/forms.py:72
+#: plinth/modules/config/forms.py:57
msgid "Invalid hostname"
msgstr ""
-#: plinth/modules/config/forms.py:78
+#: plinth/modules/config/forms.py:63
#, python-brace-format
msgid ""
"Domain name is the global name by which other devices on the Internet can "
@@ -709,11 +738,11 @@ msgid ""
"or less."
msgstr ""
-#: plinth/modules/config/forms.py:93
+#: plinth/modules/config/forms.py:78
msgid "Webserver Home Page"
msgstr ""
-#: plinth/modules/config/forms.py:95
+#: plinth/modules/config/forms.py:80
#, python-brace-format
msgid ""
"Choose the default page that must be served when someone visits your "
@@ -723,70 +752,62 @@ msgid ""
"explicitly type /plinth or /freedombox to reach {box_name} Service (Plinth)."
msgstr ""
-#: plinth/modules/config/forms.py:106
+#: plinth/modules/config/forms.py:91
msgid "Show advanced apps and features"
msgstr ""
-#: plinth/modules/config/forms.py:107
+#: plinth/modules/config/forms.py:92
msgid "Show apps and features that require more technical knowledge."
msgstr ""
-#: plinth/modules/config/views.py:65
+#: plinth/modules/config/views.py:47
#, python-brace-format
msgid "Error setting hostname: {exception}"
msgstr ""
-#: plinth/modules/config/views.py:68
+#: plinth/modules/config/views.py:50
msgid "Hostname set"
msgstr ""
-#: plinth/modules/config/views.py:77
+#: plinth/modules/config/views.py:59
#, python-brace-format
msgid "Error setting domain name: {exception}"
msgstr ""
-#: plinth/modules/config/views.py:80
+#: plinth/modules/config/views.py:62
msgid "Domain name set"
msgstr ""
-#: plinth/modules/config/views.py:88
+#: plinth/modules/config/views.py:70
#, python-brace-format
msgid "Error setting webserver home page: {exception}"
msgstr ""
-#: plinth/modules/config/views.py:91
+#: plinth/modules/config/views.py:73
msgid "Webserver home page set"
msgstr ""
-#: plinth/modules/config/views.py:99
+#: plinth/modules/config/views.py:81
#, python-brace-format
msgid "Error changing advanced mode: {exception}"
msgstr ""
-#: plinth/modules/config/views.py:104
+#: plinth/modules/config/views.py:86
msgid "Showing advanced apps and features"
msgstr ""
-#: plinth/modules/config/views.py:107
+#: plinth/modules/config/views.py:89
msgid "Hiding advanced apps and features"
msgstr ""
-#: plinth/modules/coquelicot/__init__.py:40
-msgid "Coquelicot"
-msgstr ""
-
-#: plinth/modules/coquelicot/__init__.py:42 plinth/modules/samba/__init__.py:50
-msgid "File Sharing"
-msgstr ""
-
-#: plinth/modules/coquelicot/__init__.py:45
+#: plinth/modules/coquelicot/__init__.py:24
msgid ""
"Coquelicot is a \"one-click\" file sharing web application with a focus on "
"protecting users' privacy. It is best used for quickly sharing a single "
"file. "
msgstr ""
-#: plinth/modules/coquelicot/__init__.py:48
+#: plinth/modules/coquelicot/__init__.py:27
msgid ""
"This Coquelicot instance is exposed to the public but requires an upload "
"password to prevent unauthorized access. You can set a new upload password "
@@ -794,193 +815,201 @@ msgid ""
"password is \"test\"."
msgstr ""
-#: plinth/modules/coquelicot/forms.py:30
+#: plinth/modules/coquelicot/__init__.py:45
+msgid "Coquelicot"
+msgstr ""
+
+#: plinth/modules/coquelicot/__init__.py:47 plinth/modules/samba/__init__.py:62
+msgid "File Sharing"
+msgstr ""
+
+#: plinth/modules/coquelicot/forms.py:15
msgid "Upload Password"
msgstr ""
-#: plinth/modules/coquelicot/forms.py:31
+#: plinth/modules/coquelicot/forms.py:16
msgid ""
"Set a new upload password for Coquelicot. Leave this field blank to keep the "
"current password."
msgstr ""
-#: plinth/modules/coquelicot/forms.py:35
+#: plinth/modules/coquelicot/forms.py:20
msgid "Maximum File Size (in MiB)"
msgstr ""
-#: plinth/modules/coquelicot/forms.py:36
+#: plinth/modules/coquelicot/forms.py:21
msgid "Set the maximum size of the files that can be uploaded to Coquelicot."
msgstr ""
-#: plinth/modules/coquelicot/manifest.py:24
+#: plinth/modules/coquelicot/manifest.py:9
msgid "coquelicot"
msgstr ""
-#: plinth/modules/coquelicot/views.py:58
+#: plinth/modules/coquelicot/views.py:37
msgid "Upload password updated"
msgstr ""
-#: plinth/modules/coquelicot/views.py:61
+#: plinth/modules/coquelicot/views.py:40
msgid "Failed to update upload password"
msgstr ""
-#: plinth/modules/coquelicot/views.py:69
+#: plinth/modules/coquelicot/views.py:48
msgid "Maximum file size updated"
msgstr ""
-#: plinth/modules/coquelicot/views.py:72
+#: plinth/modules/coquelicot/views.py:51
msgid "Failed to update maximum file size"
msgstr ""
-#: plinth/modules/datetime/__init__.py:39
-msgid "Date & Time"
-msgstr ""
-
-#: plinth/modules/datetime/__init__.py:42
+#: plinth/modules/datetime/__init__.py:25
msgid ""
"Network time server is a program that maintains the system time in "
"synchronization with servers on the Internet."
msgstr ""
-#: plinth/modules/datetime/__init__.py:97
+#: plinth/modules/datetime/__init__.py:42
+msgid "Date & Time"
+msgstr ""
+
+#: plinth/modules/datetime/__init__.py:85
msgid "Time synchronized to NTP server"
msgstr ""
-#: plinth/modules/datetime/forms.py:35
+#: plinth/modules/datetime/forms.py:20
msgid "Time Zone"
msgstr ""
-#: plinth/modules/datetime/forms.py:36
+#: plinth/modules/datetime/forms.py:21
msgid ""
"Set your time zone to get accurate timestamps. This will set the system-wide "
"time zone."
msgstr ""
-#: plinth/modules/datetime/forms.py:47
+#: plinth/modules/datetime/forms.py:32
msgid "-- no time zone set --"
msgstr ""
-#: plinth/modules/datetime/views.py:64
+#: plinth/modules/datetime/views.py:45
#, python-brace-format
msgid "Error setting time zone: {exception}"
msgstr ""
-#: plinth/modules/datetime/views.py:67
+#: plinth/modules/datetime/views.py:48
msgid "Time zone set"
msgstr ""
-#: plinth/modules/deluge/__init__.py:39 plinth/modules/deluge/manifest.py:24
-msgid "Deluge"
-msgstr ""
-
-#: plinth/modules/deluge/__init__.py:43
-#: plinth/modules/transmission/__init__.py:45
-msgid "BitTorrent Web Client"
-msgstr ""
-
-#: plinth/modules/deluge/__init__.py:46
+#: plinth/modules/deluge/__init__.py:25
msgid "Deluge is a BitTorrent client that features a Web UI."
msgstr ""
-#: plinth/modules/deluge/__init__.py:47
+#: plinth/modules/deluge/__init__.py:26
msgid ""
"The default password is 'deluge', but you should log in and change it "
"immediately after enabling this service."
msgstr ""
-#: plinth/modules/deluge/__init__.py:51
-#: plinth/modules/transmission/__init__.py:57
+#: plinth/modules/deluge/__init__.py:30
+#: plinth/modules/transmission/__init__.py:34
msgid "Download files using BitTorrent applications"
msgstr ""
-#: plinth/modules/deluge/forms.py:35 plinth/modules/transmission/forms.py:35
+#: plinth/modules/deluge/__init__.py:46 plinth/modules/deluge/manifest.py:9
+msgid "Deluge"
+msgstr ""
+
+#: plinth/modules/deluge/__init__.py:47
+#: plinth/modules/transmission/__init__.py:50
+msgid "BitTorrent Web Client"
+msgstr ""
+
+#: plinth/modules/deluge/forms.py:20 plinth/modules/transmission/forms.py:20
msgid "Download directory"
msgstr ""
-#: plinth/modules/deluge/manifest.py:25
+#: plinth/modules/deluge/manifest.py:10
msgid "Bittorrent client written in Python/PyGTK"
msgstr ""
-#: plinth/modules/diagnostics/__init__.py:33
-msgid "Diagnostics"
-msgstr ""
-
-#: plinth/modules/diagnostics/__init__.py:36
+#: plinth/modules/diagnostics/__init__.py:19
msgid ""
"The system diagnostic test will run a number of checks on your system to "
"confirm that applications and services are working as expected."
msgstr ""
-#: plinth/modules/diagnostics/diagnostics.py:65
+#: plinth/modules/diagnostics/__init__.py:37
+msgid "Diagnostics"
+msgstr ""
+
+#: plinth/modules/diagnostics/diagnostics.py:48
msgid "Diagnostic Test"
msgstr ""
-#: plinth/modules/diagnostics/templates/diagnostics.html:43
-#: plinth/modules/diagnostics/templates/diagnostics_button.html:28
-#: plinth/modules/diagnostics/templates/diagnostics_button.html:31
+#: plinth/modules/diagnostics/templates/diagnostics.html:28
+#: plinth/modules/diagnostics/templates/diagnostics_button.html:13
+#: plinth/modules/diagnostics/templates/diagnostics_button.html:16
msgid "Run Diagnostics"
msgstr ""
-#: plinth/modules/diagnostics/templates/diagnostics.html:46
+#: plinth/modules/diagnostics/templates/diagnostics.html:31
msgid "Diagnostics test is currently running"
msgstr ""
-#: plinth/modules/diagnostics/templates/diagnostics.html:59
+#: plinth/modules/diagnostics/templates/diagnostics.html:44
msgid "Results"
msgstr ""
-#: plinth/modules/diagnostics/templates/diagnostics.html:67
-#: plinth/modules/diagnostics/templates/diagnostics_app.html:27
+#: plinth/modules/diagnostics/templates/diagnostics.html:52
+#: plinth/modules/diagnostics/templates/diagnostics_app.html:12
#, python-format
msgid "App: %(app_id)s"
msgstr ""
-#: plinth/modules/diagnostics/templates/diagnostics_app.html:25
+#: plinth/modules/diagnostics/templates/diagnostics_app.html:10
msgid "Diagnostic Results"
msgstr ""
-#: plinth/modules/diagnostics/templates/diagnostics_app.html:32
+#: plinth/modules/diagnostics/templates/diagnostics_app.html:17
msgid "This app does not support diagnostics"
msgstr ""
-#: plinth/modules/diagnostics/templates/diagnostics_results.html:25
+#: plinth/modules/diagnostics/templates/diagnostics_results.html:10
msgid "Test"
msgstr ""
-#: plinth/modules/diagnostics/templates/diagnostics_results.html:26
+#: plinth/modules/diagnostics/templates/diagnostics_results.html:11
msgid "Result"
msgstr ""
-#: plinth/modules/diaspora/__init__.py:54
-#: plinth/modules/diaspora/manifest.py:38
-msgid "diaspora*"
-msgstr ""
-
-#: plinth/modules/diaspora/__init__.py:56
-msgid "Federated Social Network"
-msgstr ""
-
-#: plinth/modules/diaspora/__init__.py:63
+#: plinth/modules/diaspora/__init__.py:45
msgid ""
"diaspora* is a decentralized social network where you can store and control "
"your own data."
msgstr ""
-#: plinth/modules/diaspora/forms.py:30
+#: plinth/modules/diaspora/__init__.py:69
+#: plinth/modules/diaspora/manifest.py:23
+msgid "diaspora*"
+msgstr ""
+
+#: plinth/modules/diaspora/__init__.py:70
+msgid "Federated Social Network"
+msgstr ""
+
+#: plinth/modules/diaspora/forms.py:15
msgid "Enable new user registrations"
msgstr ""
-#: plinth/modules/diaspora/manifest.py:26
+#: plinth/modules/diaspora/manifest.py:11
msgid "dandelion*"
msgstr ""
-#: plinth/modules/diaspora/manifest.py:28
+#: plinth/modules/diaspora/manifest.py:13
msgid ""
"It is an unofficial webview based client for the community-run, distributed "
"social network diaspora*"
msgstr ""
-#: plinth/modules/diaspora/templates/diaspora-post-setup.html:32
+#: plinth/modules/diaspora/templates/diaspora-post-setup.html:16
#, python-format
msgid ""
"The diaspora* pod domain is set to %(domain_name)s. User IDs will "
@@ -990,39 +1019,35 @@ msgid ""
"href=\"https://diaspora.%(domain_name)s\"> diaspora.%(domain_name)s "
msgstr ""
-#: plinth/modules/diaspora/templates/diaspora-pre-setup.html:58
-#: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:40
-#: plinth/modules/ejabberd/templates/ejabberd.html:58
-#: plinth/modules/i2p/templates/i2p.html:34
-#: plinth/modules/ikiwiki/templates/ikiwiki_create.html:33
-#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:62
-#: plinth/modules/snapshot/templates/snapshot.html:30
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:51
-#: plinth/modules/tahoe/templates/tahoe-pre-setup.html:58
-#: plinth/templates/app.html:77
+#: plinth/modules/diaspora/templates/diaspora-pre-setup.html:43
+#: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:25
+#: plinth/modules/ejabberd/templates/ejabberd.html:43
+#: plinth/modules/i2p/templates/i2p.html:19
+#: plinth/modules/ikiwiki/templates/ikiwiki_create.html:18
+#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:47
+#: plinth/modules/snapshot/templates/snapshot.html:15
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:35
+#: plinth/modules/tahoe/templates/tahoe-pre-setup.html:43
+#: plinth/templates/app.html:62
msgid "Update setup"
msgstr ""
-#: plinth/modules/diaspora/views.py:93 plinth/modules/ejabberd/views.py:66
-#: plinth/modules/matrixsynapse/views.py:108
-#: plinth/modules/mediawiki/views.py:79 plinth/modules/openvpn/views.py:155
-#: plinth/modules/tor/views.py:156 plinth/views.py:175
+#: plinth/modules/diaspora/views.py:76 plinth/modules/ejabberd/views.py:46
+#: plinth/modules/matrixsynapse/views.py:85
+#: plinth/modules/mediawiki/views.py:59 plinth/modules/openvpn/views.py:136
+#: plinth/modules/tor/views.py:137 plinth/views.py:185
msgid "Setting unchanged"
msgstr ""
-#: plinth/modules/diaspora/views.py:97
+#: plinth/modules/diaspora/views.py:80
msgid "User registrations enabled"
msgstr ""
-#: plinth/modules/diaspora/views.py:101
+#: plinth/modules/diaspora/views.py:84
msgid "User registrations disabled"
msgstr ""
-#: plinth/modules/dynamicdns/__init__.py:40
-msgid "Dynamic DNS Client"
-msgstr ""
-
-#: plinth/modules/dynamicdns/__init__.py:44
+#: plinth/modules/dynamicdns/__init__.py:27
#, python-brace-format
msgid ""
"If your Internet provider changes your IP address periodically (i.e. every "
@@ -1030,7 +1055,7 @@ msgid ""
"prevent others from finding services which are provided by this {box_name}."
msgstr ""
-#: plinth/modules/dynamicdns/__init__.py:48
+#: plinth/modules/dynamicdns/__init__.py:31
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 "
@@ -1041,50 +1066,54 @@ msgid ""
"IP address."
msgstr ""
-#: plinth/modules/dynamicdns/__init__.py:78
+#: plinth/modules/dynamicdns/__init__.py:56
+msgid "Dynamic DNS Client"
+msgstr ""
+
+#: plinth/modules/dynamicdns/__init__.py:66
msgid "Dynamic Domain Name"
msgstr ""
-#: plinth/modules/dynamicdns/forms.py:42
+#: plinth/modules/dynamicdns/forms.py:27
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/forms.py:46
+#: plinth/modules/dynamicdns/forms.py:31
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/forms.py:51
+#: plinth/modules/dynamicdns/forms.py:36
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/forms.py:55
+#: plinth/modules/dynamicdns/forms.py:40
#, python-brace-format
msgid "The public domain name you want to use to reach your {box_name}."
msgstr ""
-#: plinth/modules/dynamicdns/forms.py:58
+#: plinth/modules/dynamicdns/forms.py:43
msgid "Use this option if your provider uses self signed certificates."
msgstr ""
-#: plinth/modules/dynamicdns/forms.py:61
+#: plinth/modules/dynamicdns/forms.py:46
msgid ""
"If this option is selected, your username and password will be used for HTTP "
"basic authentication."
msgstr ""
-#: plinth/modules/dynamicdns/forms.py:64
+#: plinth/modules/dynamicdns/forms.py:49
msgid "Leave this field empty if you want to keep your current password."
msgstr ""
-#: plinth/modules/dynamicdns/forms.py:67
+#: plinth/modules/dynamicdns/forms.py:52
#, python-brace-format
msgid ""
"Optional Value. If your {box_name} is not connected directly to the Internet "
@@ -1093,72 +1122,72 @@ msgid ""
"(example: http://myip.datasystems24.de)."
msgstr ""
-#: plinth/modules/dynamicdns/forms.py:75
+#: plinth/modules/dynamicdns/forms.py:60
msgid "The username that was used when the account was created."
msgstr ""
-#: plinth/modules/dynamicdns/forms.py:83
+#: plinth/modules/dynamicdns/forms.py:68
msgid "Enable Dynamic DNS"
msgstr ""
-#: plinth/modules/dynamicdns/forms.py:86
+#: plinth/modules/dynamicdns/forms.py:71
msgid "Service Type"
msgstr ""
-#: plinth/modules/dynamicdns/forms.py:91
+#: plinth/modules/dynamicdns/forms.py:76
msgid "GnuDIP Server Address"
msgstr ""
-#: plinth/modules/dynamicdns/forms.py:94
+#: plinth/modules/dynamicdns/forms.py:79
msgid "Invalid server name"
msgstr ""
-#: plinth/modules/dynamicdns/forms.py:97
+#: plinth/modules/dynamicdns/forms.py:82
msgid "Update URL"
msgstr ""
-#: plinth/modules/dynamicdns/forms.py:102
+#: plinth/modules/dynamicdns/forms.py:87
msgid "Accept all SSL certificates"
msgstr ""
-#: plinth/modules/dynamicdns/forms.py:106
+#: plinth/modules/dynamicdns/forms.py:91
msgid "Use HTTP basic authentication"
msgstr ""
-#: plinth/modules/dynamicdns/forms.py:116 plinth/modules/networks/forms.py:217
+#: plinth/modules/dynamicdns/forms.py:101 plinth/modules/networks/forms.py:199
msgid "Username"
msgstr ""
-#: plinth/modules/dynamicdns/forms.py:119 plinth/modules/networks/forms.py:218
-#: plinth/modules/shadowsocks/forms.py:60
+#: plinth/modules/dynamicdns/forms.py:104 plinth/modules/networks/forms.py:200
+#: plinth/modules/shadowsocks/forms.py:45
msgid "Password"
msgstr ""
-#: plinth/modules/dynamicdns/forms.py:123 plinth/modules/networks/forms.py:220
+#: plinth/modules/dynamicdns/forms.py:108 plinth/modules/networks/forms.py:202
msgid "Show password"
msgstr ""
-#: plinth/modules/dynamicdns/forms.py:127
+#: plinth/modules/dynamicdns/forms.py:112
msgid "URL to look up public IP"
msgstr ""
-#: plinth/modules/dynamicdns/forms.py:151
+#: plinth/modules/dynamicdns/forms.py:136
msgid "Please provide an update URL or a GnuDIP server address"
msgstr ""
-#: plinth/modules/dynamicdns/forms.py:156
+#: plinth/modules/dynamicdns/forms.py:141
msgid "Please provide a GnuDIP username"
msgstr ""
-#: plinth/modules/dynamicdns/forms.py:160
+#: plinth/modules/dynamicdns/forms.py:145
msgid "Please provide a GnuDIP domain name"
msgstr ""
-#: plinth/modules/dynamicdns/forms.py:165
+#: plinth/modules/dynamicdns/forms.py:150
msgid "Please provide a password"
msgstr ""
-#: plinth/modules/dynamicdns/templates/dynamicdns.html:27
+#: plinth/modules/dynamicdns/templates/dynamicdns.html:12
msgid ""
"If you are looking for a free dynamic DNS account, you may find a free "
"GnuDIP service at ."
msgstr ""
-#: plinth/modules/dynamicdns/templates/dynamicdns.html:38
+#: plinth/modules/dynamicdns/templates/dynamicdns.html:23
#, python-format
msgid ""
"If your %(box_name)s is connected behind a NAT router, don't forget to add "
@@ -1175,27 +1204,27 @@ msgid ""
"port 443 (HTTPS)."
msgstr ""
-#: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:30
+#: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:15
msgid ""
"You have disabled Javascript. Dynamic form mode is disabled and some helper "
"functions may not work (but the main functionality should work)."
msgstr ""
-#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:24
+#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:9
msgid "NAT type"
msgstr ""
-#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:28
+#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:13
msgid ""
"NAT type was not detected yet. If you do not provide an \"IP Check URL\", we "
"will not detect a NAT type."
msgstr ""
-#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:34
+#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:19
msgid "Direct connection to the Internet."
msgstr ""
-#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:36
+#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:21
#, python-format
msgid ""
"Behind NAT. This means that Dynamic DNS service will poll the \"URL to look "
@@ -1204,54 +1233,45 @@ msgid ""
"changes, it may take up to %(timer)s minutes until your DNS entry is updated."
msgstr ""
-#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:48
+#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:33
msgid "Last update"
msgstr ""
-#: plinth/modules/dynamicdns/views.py:41 plinth/modules/help/__init__.py:59
-#: plinth/templates/help-menu.html:61 plinth/templates/help-menu.html:62
+#: plinth/modules/dynamicdns/views.py:26 plinth/modules/help/__init__.py:49
+#: plinth/templates/help-menu.html:46 plinth/templates/help-menu.html:47
msgid "About"
msgstr ""
-#: plinth/modules/dynamicdns/views.py:47
-#: plinth/modules/firewall/templates/firewall.html:25
-#: plinth/modules/firewall/templates/firewall.html:45
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:38
-#: plinth/modules/networks/templates/connection_show.html:261
-#: plinth/modules/openvpn/templates/openvpn.html:39
-#: plinth/modules/openvpn/templates/openvpn.html:60
-#: plinth/modules/tor/templates/tor.html:37
-#: plinth/modules/tor/templates/tor.html:51
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:61
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:60
-#: plinth/templates/app.html:42
+#: plinth/modules/dynamicdns/views.py:32
+#: plinth/modules/firewall/templates/firewall.html:10
+#: plinth/modules/firewall/templates/firewall.html:30
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:23
+#: plinth/modules/networks/templates/connection_show.html:246
+#: plinth/modules/openvpn/templates/openvpn.html:24
+#: plinth/modules/openvpn/templates/openvpn.html:45
+#: plinth/modules/tor/templates/tor.html:22
+#: plinth/modules/tor/templates/tor.html:36
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:46
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:45
+#: plinth/templates/app.html:27
msgid "Status"
msgstr ""
-#: plinth/modules/dynamicdns/views.py:79
+#: plinth/modules/dynamicdns/views.py:62
msgid "Configure Dynamic DNS"
msgstr ""
-#: plinth/modules/dynamicdns/views.py:105
+#: plinth/modules/dynamicdns/views.py:86
msgid "Dynamic DNS Status"
msgstr ""
-#: plinth/modules/ejabberd/__init__.py:50
-msgid "ejabberd"
-msgstr ""
-
-#: plinth/modules/ejabberd/__init__.py:54
-#: plinth/modules/matrixsynapse/__init__.py:52
-msgid "Chat Server"
-msgstr ""
-
-#: plinth/modules/ejabberd/__init__.py:57
+#: plinth/modules/ejabberd/__init__.py:36
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:60
+#: plinth/modules/ejabberd/__init__.py:39
#, python-brace-format
msgid ""
"To actually communicate, you can use the web client"
@@ -1260,11 +1280,20 @@ msgid ""
"any user with a {box_name} login."
msgstr ""
-#: plinth/modules/ejabberd/forms.py:32
+#: plinth/modules/ejabberd/__init__.py:70
+msgid "ejabberd"
+msgstr ""
+
+#: plinth/modules/ejabberd/__init__.py:71
+#: plinth/modules/matrixsynapse/__init__.py:68
+msgid "Chat Server"
+msgstr ""
+
+#: plinth/modules/ejabberd/forms.py:17
msgid "Enable Message Archive Management"
msgstr ""
-#: plinth/modules/ejabberd/forms.py:34
+#: plinth/modules/ejabberd/forms.py:19
#, python-brace-format
msgid ""
"If enabled, your {box_name} will store chat message histories. This allows "
@@ -1273,29 +1302,29 @@ msgid ""
"the histories are stored as plain text or encrypted."
msgstr ""
-#: plinth/modules/ejabberd/manifest.py:26
+#: plinth/modules/ejabberd/manifest.py:11
msgid "Conversations"
msgstr ""
-#: plinth/modules/ejabberd/manifest.py:40
+#: plinth/modules/ejabberd/manifest.py:25
msgid "Xabber"
msgstr ""
-#: plinth/modules/ejabberd/manifest.py:42
+#: plinth/modules/ejabberd/manifest.py:27
msgid ""
"Open source Jabber (XMPP) client with multi-account support and clean and "
"simple interface. "
msgstr ""
-#: plinth/modules/ejabberd/manifest.py:57
+#: plinth/modules/ejabberd/manifest.py:42
msgid "Yaxim"
msgstr ""
-#: plinth/modules/ejabberd/manifest.py:71
+#: plinth/modules/ejabberd/manifest.py:56
msgid "ChatSecure"
msgstr ""
-#: plinth/modules/ejabberd/manifest.py:73
+#: plinth/modules/ejabberd/manifest.py:58
msgid ""
"ChatSecure is a free and open source messaging app that features OTR "
"encryption over XMPP. You can connect to an existing Google account, create "
@@ -1303,15 +1332,15 @@ msgid ""
"your own server for extra security."
msgstr ""
-#: plinth/modules/ejabberd/manifest.py:89
+#: plinth/modules/ejabberd/manifest.py:74
msgid "Dino"
msgstr ""
-#: plinth/modules/ejabberd/manifest.py:101
+#: plinth/modules/ejabberd/manifest.py:86
msgid "Gajim"
msgstr ""
-#: plinth/modules/ejabberd/templates/ejabberd.html:33
+#: plinth/modules/ejabberd/templates/ejabberd.html:18
#, python-format
msgid ""
"Your XMPP server domain is set to %(domainname)s. User IDs will look "
@@ -1319,28 +1348,24 @@ msgid ""
"Configure page."
msgstr ""
-#: plinth/modules/ejabberd/templates/ejabberd.html:50
-#: plinth/modules/i2p/templates/i2p.html:26
-#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:30
-#: plinth/modules/snapshot/templates/snapshot.html:27
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:43
-#: plinth/templates/app.html:70
+#: plinth/modules/ejabberd/templates/ejabberd.html:35
+#: plinth/modules/i2p/templates/i2p.html:11
+#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:15
+#: plinth/modules/snapshot/templates/snapshot.html:12
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:27
+#: plinth/templates/app.html:55
msgid "Configuration"
msgstr ""
-#: plinth/modules/ejabberd/views.py:78
+#: plinth/modules/ejabberd/views.py:58
msgid "Message Archive Management enabled"
msgstr ""
-#: plinth/modules/ejabberd/views.py:82
+#: plinth/modules/ejabberd/views.py:62
msgid "Message Archive Management disabled"
msgstr ""
-#: plinth/modules/firewall/__init__.py:39
-msgid "Firewall"
-msgstr ""
-
-#: plinth/modules/firewall/__init__.py:43
+#: plinth/modules/firewall/__init__.py:32
#, python-brace-format
msgid ""
"Firewall is a security system that controls the incoming and outgoing "
@@ -1348,22 +1373,26 @@ msgid ""
"configured reduces risk of security threat from the Internet."
msgstr ""
-#: plinth/modules/firewall/components.py:130
+#: plinth/modules/firewall/__init__.py:63
+msgid "Firewall"
+msgstr ""
+
+#: plinth/modules/firewall/components.py:118
#, python-brace-format
msgid "Port {name} ({details}) available for internal networks"
msgstr ""
-#: plinth/modules/firewall/components.py:138
+#: plinth/modules/firewall/components.py:126
#, python-brace-format
msgid "Port {name} ({details}) available for external networks"
msgstr ""
-#: plinth/modules/firewall/components.py:143
+#: plinth/modules/firewall/components.py:131
#, python-brace-format
msgid "Port {name} ({details}) unavailable for external networks"
msgstr ""
-#: plinth/modules/firewall/templates/firewall.html:30
+#: plinth/modules/firewall/templates/firewall.html:15
#, python-format
msgid ""
"Firewall daemon is not running. Please run it. Firewall comes enabled by "
@@ -1372,49 +1401,49 @@ msgid ""
"system with systemd 'systemctl start firewalld'."
msgstr ""
-#: plinth/modules/firewall/templates/firewall.html:43
+#: plinth/modules/firewall/templates/firewall.html:28
msgid "Show Ports"
msgstr ""
-#: plinth/modules/firewall/templates/firewall.html:44
+#: plinth/modules/firewall/templates/firewall.html:29
msgid "Service/Port"
msgstr ""
-#: plinth/modules/firewall/templates/firewall.html:63
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:89
+#: plinth/modules/firewall/templates/firewall.html:48
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:74
msgid "Enabled"
msgstr ""
-#: plinth/modules/firewall/templates/firewall.html:66
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:91
-#: plinth/modules/networks/forms.py:64 plinth/templates/cards.html:49
+#: plinth/modules/firewall/templates/firewall.html:51
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:76
+#: plinth/modules/networks/forms.py:47 plinth/templates/cards.html:34
msgid "Disabled"
msgstr ""
-#: plinth/modules/firewall/templates/firewall.html:78
+#: plinth/modules/firewall/templates/firewall.html:67
msgid "Permitted"
msgstr ""
-#: plinth/modules/firewall/templates/firewall.html:81
+#: plinth/modules/firewall/templates/firewall.html:70
msgid "Permitted (internal only)"
msgstr ""
-#: plinth/modules/firewall/templates/firewall.html:84
+#: plinth/modules/firewall/templates/firewall.html:73
msgid "Permitted (external only)"
msgstr ""
-#: plinth/modules/firewall/templates/firewall.html:87
+#: plinth/modules/firewall/templates/firewall.html:76
msgid "Blocked"
msgstr ""
-#: plinth/modules/firewall/templates/firewall.html:99
+#: plinth/modules/firewall/templates/firewall.html:88
msgid ""
"The operation of the firewall is automatic. When you enable a service it is "
"also permitted in the firewall and when you disable a service it is also "
"disabled in the firewall."
msgstr ""
-#: plinth/modules/first_boot/forms.py:29
+#: plinth/modules/first_boot/forms.py:14
#, python-brace-format
msgid ""
"Enter the secret generated during FreedomBox installation. This secret can "
@@ -1422,47 +1451,39 @@ msgid ""
"wizard-secret\" on your {box_name}"
msgstr ""
-#: plinth/modules/first_boot/forms.py:34
+#: plinth/modules/first_boot/forms.py:19
msgid "Firstboot Wizard Secret"
msgstr ""
-#: plinth/modules/first_boot/templates/firstboot_complete.html:26
+#: plinth/modules/first_boot/templates/firstboot_complete.html:11
msgid "Setup Complete!"
msgstr ""
-#: plinth/modules/first_boot/templates/firstboot_complete.html:29
+#: plinth/modules/first_boot/templates/firstboot_complete.html:14
#, python-format
msgid "Without any apps, your %(box_name)s cannot do very much."
msgstr ""
-#: plinth/modules/first_boot/templates/firstboot_complete.html:36
+#: plinth/modules/first_boot/templates/firstboot_complete.html:21
msgid "Install Apps"
msgstr ""
-#: plinth/modules/first_boot/templates/firstboot_complete.html:42
+#: plinth/modules/first_boot/templates/firstboot_complete.html:27
#, python-format
msgid ""
"You may want to check the network setup and "
"modify it if necessary."
msgstr ""
-#: plinth/modules/first_boot/templates/firstboot_welcome.html:52
+#: plinth/modules/first_boot/templates/firstboot_welcome.html:37
msgid "Start Setup"
msgstr ""
-#: plinth/modules/first_boot/views.py:64
+#: plinth/modules/first_boot/views.py:49
msgid "Setup Complete"
msgstr ""
-#: plinth/modules/gitweb/__init__.py:44 plinth/modules/gitweb/manifest.py:28
-msgid "Gitweb"
-msgstr ""
-
-#: plinth/modules/gitweb/__init__.py:48
-msgid "Simple Git Hosting"
-msgstr ""
-
-#: plinth/modules/gitweb/__init__.py:51
+#: plinth/modules/gitweb/__init__.py:28
msgid ""
"Git is a distributed version-control system for tracking changes in source "
"code during software development. Gitweb provides a web interface to Git "
@@ -1473,180 +1494,188 @@ msgid ""
"the world."
msgstr ""
-#: plinth/modules/gitweb/__init__.py:58
+#: plinth/modules/gitweb/__init__.py:35
msgid ""
"To learn more on how to use Git visit Git tutorial."
msgstr ""
-#: plinth/modules/gitweb/__init__.py:64
+#: plinth/modules/gitweb/__init__.py:39
msgid "Read-write access to Git repositories"
msgstr ""
-#: plinth/modules/gitweb/forms.py:59
+#: plinth/modules/gitweb/__init__.py:56 plinth/modules/gitweb/manifest.py:13
+msgid "Gitweb"
+msgstr ""
+
+#: plinth/modules/gitweb/__init__.py:57
+msgid "Simple Git Hosting"
+msgstr ""
+
+#: plinth/modules/gitweb/forms.py:44
msgid "Invalid repository URL."
msgstr ""
-#: plinth/modules/gitweb/forms.py:69
+#: plinth/modules/gitweb/forms.py:54
msgid "Invalid repository name."
msgstr ""
-#: plinth/modules/gitweb/forms.py:77
+#: plinth/modules/gitweb/forms.py:62
msgid "Name of a new repository or URL to import an existing repository."
msgstr ""
-#: plinth/modules/gitweb/forms.py:83
+#: plinth/modules/gitweb/forms.py:68
msgid "Description of the repository"
msgstr ""
-#: plinth/modules/gitweb/forms.py:84 plinth/modules/gitweb/forms.py:88
+#: plinth/modules/gitweb/forms.py:69 plinth/modules/gitweb/forms.py:73
msgid "Optional, for displaying on Gitweb."
msgstr ""
-#: plinth/modules/gitweb/forms.py:86
+#: plinth/modules/gitweb/forms.py:71
msgid "Repository's owner name"
msgstr ""
-#: plinth/modules/gitweb/forms.py:91
+#: plinth/modules/gitweb/forms.py:76
msgid "Private repository"
msgstr ""
-#: plinth/modules/gitweb/forms.py:92
+#: plinth/modules/gitweb/forms.py:77
msgid "Allow only authorized users to access this repository."
msgstr ""
-#: plinth/modules/gitweb/forms.py:113 plinth/modules/gitweb/forms.py:145
+#: plinth/modules/gitweb/forms.py:98 plinth/modules/gitweb/forms.py:130
msgid "A repository with this name already exists."
msgstr ""
-#: plinth/modules/gitweb/forms.py:126
+#: plinth/modules/gitweb/forms.py:111
msgid "Name of the repository"
msgstr ""
-#: plinth/modules/gitweb/forms.py:130
+#: plinth/modules/gitweb/forms.py:115
msgid "An alpha-numeric string that uniquely identifies a repository."
msgstr ""
-#: plinth/modules/gitweb/manifest.py:36
+#: plinth/modules/gitweb/manifest.py:21
msgid "Git"
msgstr ""
-#: plinth/modules/gitweb/templates/gitweb_configure.html:46
+#: plinth/modules/gitweb/templates/gitweb_configure.html:31
msgid "Manage Repositories"
msgstr ""
-#: plinth/modules/gitweb/templates/gitweb_configure.html:50
-#: plinth/modules/gitweb/templates/gitweb_configure.html:52
+#: plinth/modules/gitweb/templates/gitweb_configure.html:35
+#: plinth/modules/gitweb/templates/gitweb_configure.html:37
msgid "Create repository"
msgstr ""
-#: plinth/modules/gitweb/templates/gitweb_configure.html:59
+#: plinth/modules/gitweb/templates/gitweb_configure.html:44
msgid "No repositories available."
msgstr ""
-#: plinth/modules/gitweb/templates/gitweb_configure.html:67
+#: plinth/modules/gitweb/templates/gitweb_configure.html:52
#, python-format
msgid "Delete repository %(repo.name)s"
msgstr ""
-#: plinth/modules/gitweb/templates/gitweb_configure.html:83
+#: plinth/modules/gitweb/templates/gitweb_configure.html:68
msgid "Cloning..."
msgstr ""
-#: plinth/modules/gitweb/templates/gitweb_configure.html:89
+#: plinth/modules/gitweb/templates/gitweb_configure.html:74
#, python-format
msgid "Go to repository %(repo.name)s"
msgstr ""
-#: plinth/modules/gitweb/templates/gitweb_delete.html:27
+#: plinth/modules/gitweb/templates/gitweb_delete.html:12
#, python-format
msgid "Delete Git Repository %(name)s"
msgstr ""
-#: plinth/modules/gitweb/templates/gitweb_delete.html:33
+#: plinth/modules/gitweb/templates/gitweb_delete.html:18
msgid "Delete this repository permanently?"
msgstr ""
-#: plinth/modules/gitweb/templates/gitweb_delete.html:42
-#: plinth/modules/ikiwiki/templates/ikiwiki_delete.html:44
+#: plinth/modules/gitweb/templates/gitweb_delete.html:27
+#: plinth/modules/ikiwiki/templates/ikiwiki_delete.html:29
#, python-format
msgid "Delete %(name)s"
msgstr ""
-#: plinth/modules/gitweb/views.py:65
+#: plinth/modules/gitweb/views.py:45
msgid "Repository created."
msgstr ""
-#: plinth/modules/gitweb/views.py:87
+#: plinth/modules/gitweb/views.py:67
msgid "An error occurred while creating the repository."
msgstr ""
-#: plinth/modules/gitweb/views.py:100
+#: plinth/modules/gitweb/views.py:80
msgid "Repository edited."
msgstr ""
-#: plinth/modules/gitweb/views.py:105
+#: plinth/modules/gitweb/views.py:85
msgid "Edit repository"
msgstr ""
-#: plinth/modules/gitweb/views.py:133 plinth/modules/searx/views.py:62
-#: plinth/modules/searx/views.py:73 plinth/modules/tor/views.py:178
+#: plinth/modules/gitweb/views.py:113 plinth/modules/searx/views.py:42
+#: plinth/modules/searx/views.py:53 plinth/modules/tor/views.py:159
msgid "An error occurred during configuration."
msgstr ""
-#: plinth/modules/gitweb/views.py:154
+#: plinth/modules/gitweb/views.py:134
#, python-brace-format
msgid "{name} deleted."
msgstr ""
-#: plinth/modules/gitweb/views.py:158
+#: plinth/modules/gitweb/views.py:138
#, python-brace-format
msgid "Could not delete {name}: {error}"
msgstr ""
-#: plinth/modules/help/__init__.py:40
+#: plinth/modules/help/__init__.py:30
msgid "Documentation"
msgstr ""
-#: plinth/modules/help/__init__.py:43 plinth/modules/networks/forms.py:64
-#: plinth/modules/networks/forms.py:95 plinth/templates/help-menu.html:35
-#: plinth/templates/help-menu.html:36 plinth/templates/index.html:135
+#: plinth/modules/help/__init__.py:33 plinth/modules/networks/forms.py:47
+#: plinth/modules/networks/forms.py:77 plinth/templates/help-menu.html:20
+#: plinth/templates/help-menu.html:21 plinth/templates/index.html:120
msgid "Manual"
msgstr ""
-#: plinth/modules/help/__init__.py:47 plinth/modules/help/help.py:58
-#: plinth/modules/help/templates/help_support.html:24
-#: plinth/templates/help-menu.html:42 plinth/templates/help-menu.html:43
+#: plinth/modules/help/__init__.py:37 plinth/modules/help/help.py:43
+#: plinth/modules/help/templates/help_support.html:9
+#: plinth/templates/help-menu.html:27 plinth/templates/help-menu.html:28
msgid "Get Support"
msgstr ""
-#: plinth/modules/help/__init__.py:51 plinth/modules/help/help.py:52
-#: plinth/modules/help/templates/help_feedback.html:24
-#: plinth/templates/help-menu.html:48 plinth/templates/help-menu.html:49
+#: plinth/modules/help/__init__.py:41 plinth/modules/help/help.py:37
+#: plinth/modules/help/templates/help_feedback.html:9
+#: plinth/templates/help-menu.html:33 plinth/templates/help-menu.html:34
msgid "Submit Feedback"
msgstr ""
-#: plinth/modules/help/__init__.py:55 plinth/modules/help/help.py:46
-#: plinth/modules/help/templates/help_contribute.html:24
-#: plinth/templates/help-menu.html:54 plinth/templates/help-menu.html:55
+#: plinth/modules/help/__init__.py:45 plinth/modules/help/help.py:31
+#: plinth/modules/help/templates/help_contribute.html:9
+#: plinth/templates/help-menu.html:39 plinth/templates/help-menu.html:40
msgid "Contribute"
msgstr ""
-#: plinth/modules/help/help.py:40
+#: plinth/modules/help/help.py:25
msgid "Documentation and FAQ"
msgstr ""
-#: plinth/modules/help/help.py:66
+#: plinth/modules/help/help.py:51
#, python-brace-format
msgid "About {box_name}"
msgstr ""
-#: plinth/modules/help/help.py:101
+#: plinth/modules/help/help.py:86
#, python-brace-format
msgid "{box_name} Manual"
msgstr ""
-#: plinth/modules/help/templates/help_about.html:32
+#: plinth/modules/help/templates/help_about.html:17
#, python-format
msgid ""
"%(box_name)s is a community project to develop, design and promote personal "
@@ -1658,7 +1687,7 @@ msgid ""
"your data stays with you."
msgstr ""
-#: plinth/modules/help/templates/help_about.html:45
+#: plinth/modules/help/templates/help_about.html:30
msgid ""
"We live in a world where our use of the network is mediated by those who "
"often do not have our best interests at heart. By building software that "
@@ -1668,7 +1697,7 @@ msgid ""
"returning the Internet to its intended peer-to-peer architecture."
msgstr ""
-#: plinth/modules/help/templates/help_about.html:58
+#: plinth/modules/help/templates/help_about.html:43
#, python-format
msgid ""
"There are a number of projects working to realize a future of distributed "
@@ -1676,37 +1705,37 @@ msgid ""
"package."
msgstr ""
-#: plinth/modules/help/templates/help_about.html:66
+#: plinth/modules/help/templates/help_about.html:51
#, python-format
msgid ""
"For more information about the %(box_name)s project, see the %(box_name)s Wiki."
msgstr ""
-#: plinth/modules/help/templates/help_about.html:75
+#: plinth/modules/help/templates/help_about.html:60
msgid "Learn more »"
msgstr ""
-#: plinth/modules/help/templates/help_about.html:78
+#: plinth/modules/help/templates/help_about.html:63
#, python-format
msgid "You are running %(os_release)s and %(box_name)s version %(version)s."
msgstr ""
-#: plinth/modules/help/templates/help_about.html:83
+#: plinth/modules/help/templates/help_about.html:68
#, python-format
msgid "There is a new %(box_name)s version available."
msgstr ""
-#: plinth/modules/help/templates/help_about.html:87
+#: plinth/modules/help/templates/help_about.html:72
#, python-format
msgid "%(box_name)s is up to date."
msgstr ""
-#: plinth/modules/help/templates/help_about.html:94
+#: plinth/modules/help/templates/help_about.html:79
msgid "Security Notice"
msgstr ""
-#: plinth/modules/help/templates/help_about.html:96
+#: plinth/modules/help/templates/help_about.html:81
msgid ""
"You are using packages from Debian backports. Please note that these "
"packages do not have security support from Debian. However, they are "
@@ -1714,17 +1743,17 @@ msgid ""
"community."
msgstr ""
-#: plinth/modules/help/templates/help_base.html:36
-#: plinth/modules/help/templates/help_index.html:76
+#: plinth/modules/help/templates/help_base.html:21
+#: plinth/modules/help/templates/help_index.html:61
#, python-format
msgid "%(box_name)s Setup"
msgstr ""
-#: plinth/modules/help/templates/help_contribute.html:27
+#: plinth/modules/help/templates/help_contribute.html:12
msgid "The FreedomBox project welcomes contributions of all kinds."
msgstr ""
-#: plinth/modules/help/templates/help_contribute.html:33
+#: plinth/modules/help/templates/help_contribute.html:18
msgid ""
"You can contribute by writing code, testing and reporting bugs, discussing "
"new use cases and applications, designing logos and artwork, providing "
@@ -1733,7 +1762,7 @@ msgid ""
"the word."
msgstr ""
-#: plinth/modules/help/templates/help_contribute.html:43
+#: plinth/modules/help/templates/help_contribute.html:28
msgid ""
"You can also help the project financially by donating to the non-profit FreedomBox "
@@ -1745,26 +1774,26 @@ msgid ""
"supporters."
msgstr ""
-#: plinth/modules/help/templates/help_contribute.html:57
-#: plinth/modules/power/templates/power_restart.html:42
-#: plinth/modules/power/templates/power_shutdown.html:41
-#: plinth/templates/header.html:59
+#: plinth/modules/help/templates/help_contribute.html:42
+#: plinth/modules/power/templates/power_restart.html:27
+#: plinth/modules/power/templates/power_shutdown.html:26
+#: plinth/templates/app-header.html:51
msgid "Learn more..."
msgstr ""
-#: plinth/modules/help/templates/help_feedback.html:27
+#: plinth/modules/help/templates/help_feedback.html:12
#, python-format
msgid "Your feedback will help us improve %(box_name)s!"
msgstr ""
-#: plinth/modules/help/templates/help_feedback.html:33
+#: plinth/modules/help/templates/help_feedback.html:18
msgid ""
"Let us know about missing features, your favourite apps and how we can "
"improve them on our discussion forum."
msgstr ""
-#: plinth/modules/help/templates/help_feedback.html:41
+#: plinth/modules/help/templates/help_feedback.html:26
msgid ""
"If you find any bugs or issues, please use the issue tracker"
@@ -1772,30 +1801,30 @@ msgid ""
"already reported and then use the \"New issue\" button."
msgstr ""
-#: plinth/modules/help/templates/help_feedback.html:51
+#: plinth/modules/help/templates/help_feedback.html:36
msgid "Thank you!"
msgstr ""
-#: plinth/modules/help/templates/help_index.html:27
-#: plinth/templates/help-menu.html:23 plinth/templates/help-menu.html:28
+#: plinth/modules/help/templates/help_index.html:12
+#: plinth/templates/help-menu.html:8 plinth/templates/help-menu.html:13
msgid "Help"
msgstr ""
-#: plinth/modules/help/templates/help_index.html:31
+#: plinth/modules/help/templates/help_index.html:16
#, python-format
msgid ""
"The %(box_name)s Manual is the best place to "
"start for information regarding %(box_name)s."
msgstr ""
-#: plinth/modules/help/templates/help_index.html:38
+#: plinth/modules/help/templates/help_index.html:23
#, python-format
msgid ""
" "
"%(box_name)s project wiki contains further information."
msgstr ""
-#: plinth/modules/help/templates/help_index.html:45
+#: plinth/modules/help/templates/help_index.html:30
#, python-format
msgid ""
"To seek help from %(box_name)s community, queries may be posted on the discussion forum."
msgstr ""
-#: plinth/modules/help/templates/help_support.html:42
+#: plinth/modules/help/templates/help_support.html:27
msgid ""
"You can also chat with us on our IRC and Matrix channels (bridged): "
"
"
@@ -1839,11 +1868,11 @@ msgid ""
"debian.net\">mailing list."
msgstr ""
-#: plinth/modules/help/templates/statuslog.html:25
+#: plinth/modules/help/templates/statuslog.html:10
msgid "Status Log"
msgstr ""
-#: plinth/modules/help/templates/statuslog.html:28
+#: plinth/modules/help/templates/statuslog.html:13
#, python-format
msgid ""
"These are the last %(num_lines)s lines of the status log for this web "
@@ -1852,21 +1881,13 @@ msgid ""
"this status log to the bug report."
msgstr ""
-#: plinth/modules/help/templates/statuslog.html:39
+#: plinth/modules/help/templates/statuslog.html:24
msgid ""
"Please remove any passwords or other personal information from the log "
"before submitting the bug report."
msgstr ""
-#: plinth/modules/i2p/__init__.py:42 plinth/modules/i2p/manifest.py:31
-msgid "I2P"
-msgstr ""
-
-#: plinth/modules/i2p/__init__.py:46 plinth/modules/tor/__init__.py:49
-msgid "Anonymity Network"
-msgstr ""
-
-#: plinth/modules/i2p/__init__.py:49
+#: plinth/modules/i2p/__init__.py:28
msgid ""
"The Invisible Internet Project is an anonymous network layer intended to "
"protect communication from censorship and surveillance. I2P provides "
@@ -1874,83 +1895,83 @@ msgid ""
"distributed around the world."
msgstr ""
-#: plinth/modules/i2p/__init__.py:53
+#: plinth/modules/i2p/__init__.py:32
msgid ""
"Find more information about I2P on their project homepage."
msgstr ""
-#: plinth/modules/i2p/__init__.py:55
+#: plinth/modules/i2p/__init__.py:34
msgid ""
"The first visit to the provided web interface will initiate the "
"configuration process."
msgstr ""
-#: plinth/modules/i2p/__init__.py:61
+#: plinth/modules/i2p/__init__.py:38
msgid "Manage I2P application"
msgstr ""
-#: plinth/modules/i2p/__init__.py:103
+#: plinth/modules/i2p/__init__.py:64 plinth/modules/i2p/manifest.py:16
+msgid "I2P"
+msgstr ""
+
+#: plinth/modules/i2p/__init__.py:65 plinth/modules/tor/__init__.py:56
+msgid "Anonymity Network"
+msgstr ""
+
+#: plinth/modules/i2p/__init__.py:87
msgid "I2P Proxy"
msgstr ""
-#: plinth/modules/i2p/templates/i2p_service.html:31
-#: plinth/templates/clients.html:43
+#: plinth/modules/i2p/templates/i2p_service.html:16
+#: plinth/templates/clients.html:28
msgid "Launch"
msgstr ""
-#: plinth/modules/i2p/views.py:34
+#: plinth/modules/i2p/views.py:19
msgid "Proxies"
msgstr ""
-#: plinth/modules/i2p/views.py:37
+#: plinth/modules/i2p/views.py:22
msgid "Anonymous torrents"
msgstr ""
-#: plinth/modules/i2p/views.py:88
+#: plinth/modules/i2p/views.py:64
msgid "I2P Proxies and Tunnels"
msgstr ""
-#: plinth/modules/i2p/views.py:91
+#: plinth/modules/i2p/views.py:67
msgid ""
"I2P lets you browse the Internet and hidden services (eepsites) anonymously. "
"For this, your browser, preferably a Tor Browser, needs to be configured for "
"a proxy."
msgstr ""
-#: plinth/modules/i2p/views.py:94
+#: plinth/modules/i2p/views.py:70
msgid ""
"By default HTTP, HTTPS and IRC proxies are available. Additional proxies and "
"tunnels may be configured using the tunnel configuration interface."
msgstr ""
-#: plinth/modules/i2p/views.py:103
+#: plinth/modules/i2p/views.py:79
msgid "Anonymous Torrents"
msgstr ""
-#: plinth/modules/i2p/views.py:106
+#: plinth/modules/i2p/views.py:82
msgid ""
"I2P provides an application to download files anonymously in a peer-to-peer "
"network. Download files by adding torrents or create a new torrent to share "
"a file."
msgstr ""
-#: plinth/modules/ikiwiki/__init__.py:41 plinth/modules/ikiwiki/manifest.py:24
-msgid "ikiwiki"
-msgstr ""
-
-#: plinth/modules/ikiwiki/__init__.py:45
-msgid "Wiki and Blog"
-msgstr ""
-
-#: plinth/modules/ikiwiki/__init__.py:48
+#: plinth/modules/ikiwiki/__init__.py:27
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."
msgstr ""
-#: plinth/modules/ikiwiki/__init__.py:52
+#: plinth/modules/ikiwiki/__init__.py:31
#, python-brace-format
msgid ""
"Only {box_name} users in the admin group can create and "
@@ -1959,102 +1980,96 @@ msgid ""
"Configuration you can change these permissions or add new users."
msgstr ""
-#: plinth/modules/ikiwiki/__init__.py:62
+#: plinth/modules/ikiwiki/__init__.py:39
msgid "View and edit wiki applications"
msgstr ""
-#: plinth/modules/ikiwiki/forms.py:27
-#: plinth/modules/networks/templates/connection_show.html:98
-#: plinth/modules/storage/templates/storage.html:43
-msgid "Type"
+#: plinth/modules/ikiwiki/__init__.py:53 plinth/modules/ikiwiki/manifest.py:9
+msgid "ikiwiki"
msgstr ""
-#: plinth/modules/ikiwiki/forms.py:32
+#: plinth/modules/ikiwiki/__init__.py:54
+msgid "Wiki and Blog"
+msgstr ""
+
+#: plinth/modules/ikiwiki/forms.py:17
msgid "Admin Account Name"
msgstr ""
-#: plinth/modules/ikiwiki/forms.py:34
+#: plinth/modules/ikiwiki/forms.py:19
msgid "Admin Account Password"
msgstr ""
-#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:27
+#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:12
msgid "Manage Wikis and Blogs"
msgstr ""
-#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:31
-#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:33
-#: plinth/modules/ikiwiki/templates/ikiwiki_create.html:25
+#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:16
+#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:18
+#: plinth/modules/ikiwiki/templates/ikiwiki_create.html:10
msgid "Create Wiki or Blog"
msgstr ""
-#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:40
+#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:25
msgid "No wikis or blogs available."
msgstr ""
-#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:48
+#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:33
#, python-format
msgid "Delete site %(site)s"
msgstr ""
-#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:55
+#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:40
#, python-format
msgid "Go to site %(site)s"
msgstr ""
-#: plinth/modules/ikiwiki/templates/ikiwiki_delete.html:27
+#: plinth/modules/ikiwiki/templates/ikiwiki_delete.html:12
#, python-format
msgid "Delete Wiki or Blog %(name)s"
msgstr ""
-#: plinth/modules/ikiwiki/templates/ikiwiki_delete.html:33
+#: plinth/modules/ikiwiki/templates/ikiwiki_delete.html:18
msgid ""
"This action will remove all the posts, pages and comments including revision "
"history. Delete this wiki or blog permanently?"
msgstr ""
-#: plinth/modules/ikiwiki/views.py:96
+#: plinth/modules/ikiwiki/views.py:73
#, python-brace-format
msgid "Created wiki {name}."
msgstr ""
-#: plinth/modules/ikiwiki/views.py:99
+#: plinth/modules/ikiwiki/views.py:76
#, python-brace-format
msgid "Could not create wiki: {error}"
msgstr ""
-#: plinth/modules/ikiwiki/views.py:109
+#: plinth/modules/ikiwiki/views.py:86
#, python-brace-format
msgid "Created blog {name}."
msgstr ""
-#: plinth/modules/ikiwiki/views.py:112
+#: plinth/modules/ikiwiki/views.py:89
#, python-brace-format
msgid "Could not create blog: {error}"
msgstr ""
-#: plinth/modules/ikiwiki/views.py:127
+#: plinth/modules/ikiwiki/views.py:104
#, python-brace-format
msgid "{title} deleted."
msgstr ""
-#: plinth/modules/ikiwiki/views.py:131
+#: plinth/modules/ikiwiki/views.py:108
#, python-brace-format
msgid "Could not delete {title}: {error}"
msgstr ""
-#: plinth/modules/infinoted/__init__.py:42
-msgid "infinoted"
-msgstr ""
-
-#: plinth/modules/infinoted/__init__.py:46
-msgid "Gobby Server"
-msgstr ""
-
-#: plinth/modules/infinoted/__init__.py:49
+#: plinth/modules/infinoted/__init__.py:26
msgid "infinoted is a server for Gobby, a collaborative text editor."
msgstr ""
-#: plinth/modules/infinoted/__init__.py:51
+#: plinth/modules/infinoted/__init__.py:28
#, python-brace-format
msgid ""
"To use it, download Gobby, desktop "
@@ -2062,49 +2077,49 @@ msgid ""
"enter your {box_name}'s domain name."
msgstr ""
-#: plinth/modules/infinoted/manifest.py:27
+#: plinth/modules/infinoted/__init__.py:48
+msgid "infinoted"
+msgstr ""
+
+#: plinth/modules/infinoted/__init__.py:49
+msgid "Gobby Server"
+msgstr ""
+
+#: plinth/modules/infinoted/manifest.py:12
msgid "Gobby"
msgstr ""
-#: plinth/modules/infinoted/manifest.py:29
+#: plinth/modules/infinoted/manifest.py:14
msgid "Gobby is a collaborative text editor"
msgstr ""
-#: plinth/modules/infinoted/manifest.py:32
+#: plinth/modules/infinoted/manifest.py:17
#, python-brace-format
msgid ""
"Start Gobby and select \"Connect to Server\" and enter your {box_name}'s "
"domain name."
msgstr ""
-#: plinth/modules/jsxc/__init__.py:36 plinth/modules/jsxc/manifest.py:25
-msgid "JSXC"
-msgstr ""
-
-#: plinth/modules/jsxc/__init__.py:40
-msgid "Chat Client"
-msgstr ""
-
-#: plinth/modules/jsxc/__init__.py:43
+#: plinth/modules/jsxc/__init__.py:22
msgid ""
"JSXC is a web client for XMPP. Typically it is used with an XMPP server "
"running locally."
msgstr ""
-#: plinth/modules/jsxc/templates/jsxc_launch.html:140
-#: plinth/templates/base.html:253
+#: plinth/modules/jsxc/__init__.py:40 plinth/modules/jsxc/manifest.py:10
+msgid "JSXC"
+msgstr ""
+
+#: plinth/modules/jsxc/__init__.py:41
+msgid "Chat Client"
+msgstr ""
+
+#: plinth/modules/jsxc/templates/jsxc_launch.html:125
+#: plinth/templates/base.html:238
msgid "JavaScript license information"
msgstr ""
-#: plinth/modules/letsencrypt/__init__.py:48
-msgid "Let's Encrypt"
-msgstr ""
-
-#: plinth/modules/letsencrypt/__init__.py:50
-msgid "Certificates"
-msgstr ""
-
-#: plinth/modules/letsencrypt/__init__.py:54
+#: plinth/modules/letsencrypt/__init__.py:35
#, python-brace-format
msgid ""
"A digital certificate allows users of a web service to verify the identity "
@@ -2114,7 +2129,7 @@ msgid ""
"Encrypt, a certificate authority (CA)."
msgstr ""
-#: plinth/modules/letsencrypt/__init__.py:60
+#: plinth/modules/letsencrypt/__init__.py:41
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 "
@@ -2122,118 +2137,122 @@ msgid ""
"\">Let's Encrypt Subscriber Agreement before using this service."
msgstr ""
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:44
+#: plinth/modules/letsencrypt/__init__.py:65
+msgid "Let's Encrypt"
+msgstr ""
+
+#: plinth/modules/letsencrypt/__init__.py:66
+msgid "Certificates"
+msgstr ""
+
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:29
msgid "Domain"
msgstr ""
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:45
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:30
msgid "Certificate Status"
msgstr ""
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:46
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:31
msgid "Website Security"
msgstr ""
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:47
-#: plinth/modules/storage/templates/storage.html:45
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:32
+#: plinth/modules/storage/templates/storage.html:30
msgid "Actions"
msgstr ""
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:57
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:42
#, python-format
msgid "Valid, expires on %(expiry_date)s"
msgstr ""
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:64
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:49
msgid "Revoked"
msgstr ""
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:68
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:53
#, python-format
msgid "Expired on %(expiry_date)s"
msgstr ""
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:72
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:57
msgid "Invalid test certificate"
msgstr ""
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:76
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:61
#, python-format
msgid "Invalid (%(reason)s)"
msgstr ""
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:83
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:68
msgid "No certificate"
msgstr ""
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:100
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:85
msgid "Re-obtain"
msgstr ""
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:106
-#: plinth/modules/networks/templates/connection_show.html:63
-#: plinth/modules/samba/templates/samba.html:142
-#: plinth/modules/wireguard/templates/wireguard_delete_client.html:39
-#: plinth/modules/wireguard/templates/wireguard_delete_server.html:48
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:88
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:89
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:91
+#: plinth/modules/networks/templates/connection_show.html:48
+#: plinth/modules/samba/templates/samba.html:127
+#: plinth/modules/wireguard/templates/wireguard_delete_client.html:24
+#: plinth/modules/wireguard/templates/wireguard_delete_server.html:33
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:73
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:74
msgid "Delete"
msgstr ""
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:113
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:98
msgid "Revoke"
msgstr ""
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:121
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:106
msgid "Obtain"
msgstr ""
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:132
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:117
#, python-format
msgid ""
"No domains have been configured. Configure "
"domains to be able to obtain certificates for them."
msgstr ""
-#: plinth/modules/letsencrypt/views.py:58
+#: plinth/modules/letsencrypt/views.py:41
#, 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:64
+#: plinth/modules/letsencrypt/views.py:47
#, python-brace-format
msgid "Failed to revoke certificate for domain {domain}: {error}"
msgstr ""
+#: plinth/modules/letsencrypt/views.py:60
#: plinth/modules/letsencrypt/views.py:77
-#: plinth/modules/letsencrypt/views.py:94
#, python-brace-format
msgid "Certificate successfully obtained for domain {domain}"
msgstr ""
+#: plinth/modules/letsencrypt/views.py:65
#: plinth/modules/letsencrypt/views.py:82
-#: plinth/modules/letsencrypt/views.py:99
#, python-brace-format
msgid "Failed to obtain certificate for domain {domain}: {error}"
msgstr ""
-#: plinth/modules/letsencrypt/views.py:111
+#: plinth/modules/letsencrypt/views.py:94
#, python-brace-format
msgid "Certificate successfully deleted for domain {domain}"
msgstr ""
-#: plinth/modules/letsencrypt/views.py:116
+#: plinth/modules/letsencrypt/views.py:99
#, python-brace-format
msgid "Failed to delete certificate for domain {domain}: {error}"
msgstr ""
-#: plinth/modules/matrixsynapse/__init__.py:48
-msgid "Matrix Synapse"
-msgstr ""
-
-#: plinth/modules/matrixsynapse/__init__.py:55
+#: plinth/modules/matrixsynapse/__init__.py:34
msgid ""
"Matrix is an new "
"ecosystem for open, federated instant messaging and VoIP. Synapse is a "
@@ -2243,36 +2262,40 @@ msgid ""
"converse with users on all other Matrix servers via federation."
msgstr ""
-#: plinth/modules/matrixsynapse/__init__.py:62
+#: plinth/modules/matrixsynapse/__init__.py:41
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:29
+#: plinth/modules/matrixsynapse/__init__.py:66
+msgid "Matrix Synapse"
+msgstr ""
+
+#: plinth/modules/matrixsynapse/forms.py:14
msgid "Enable Public Registration"
msgstr ""
-#: plinth/modules/matrixsynapse/forms.py:30
+#: plinth/modules/matrixsynapse/forms.py:15
msgid ""
"Enabling public registration means that anyone on the Internet can register "
"a new account on your Matrix server. Disable this if you only want existing "
"users to be able to use it."
msgstr ""
-#: plinth/modules/matrixsynapse/manifest.py:28
+#: plinth/modules/matrixsynapse/manifest.py:13
msgid "Riot"
msgstr ""
-#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:33
+#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:18
msgid ""
"Matrix service needs to be configured for a domain. Users on other Matrix "
"servers will be able to reach users on this server using this domain name. "
"Matrix user IDs will look like @username:domainname."
msgstr ""
-#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:41
+#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:26
msgid ""
"\n"
" Warning! Changing the domain name after the initial\n"
@@ -2280,14 +2303,14 @@ msgid ""
" "
msgstr ""
-#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:50
+#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:35
#, python-format
msgid ""
"No domain(s) are available. Configure at "
"least one domain to be able to use Matrix Synapse."
msgstr ""
-#: plinth/modules/matrixsynapse/templates/matrix-synapse.html:29
+#: plinth/modules/matrixsynapse/templates/matrix-synapse.html:14
#, python-format
msgid ""
"The Matrix server domain is set to %(domain_name)s. User IDs will "
@@ -2295,13 +2318,13 @@ msgid ""
"the initial setup is currently not supported."
msgstr ""
-#: plinth/modules/matrixsynapse/templates/matrix-synapse.html:36
+#: plinth/modules/matrixsynapse/templates/matrix-synapse.html:21
msgid ""
"New users can be registered from any client if public registration is "
"enabled."
msgstr ""
-#: plinth/modules/matrixsynapse/templates/matrix-synapse.html:45
+#: plinth/modules/matrixsynapse/templates/matrix-synapse.html:30
#, python-format
msgid ""
"The configured domain name is using a self-signed certificate. Federation "
@@ -2309,24 +2332,15 @@ msgid ""
"go to Let's Encrypt to obtain one."
msgstr ""
-#: plinth/modules/matrixsynapse/views.py:121
+#: plinth/modules/matrixsynapse/views.py:98
msgid "Public registration enabled"
msgstr ""
-#: plinth/modules/matrixsynapse/views.py:126
+#: plinth/modules/matrixsynapse/views.py:103
msgid "Public registration disabled"
msgstr ""
-#: plinth/modules/mediawiki/__init__.py:40
-#: plinth/modules/mediawiki/manifest.py:24
-msgid "MediaWiki"
-msgstr ""
-
-#: plinth/modules/mediawiki/__init__.py:44 plinth/templates/index.html:139
-msgid "Wiki"
-msgstr ""
-
-#: plinth/modules/mediawiki/__init__.py:47
+#: plinth/modules/mediawiki/__init__.py:26
msgid ""
"MediaWiki is the wiki engine that powers Wikipedia and other WikiMedia "
"projects. A wiki engine is a program for creating a collaboratively edited "
@@ -2334,7 +2348,7 @@ msgid ""
"collaborate with friends on projects."
msgstr ""
-#: plinth/modules/mediawiki/__init__.py:51
+#: plinth/modules/mediawiki/__init__.py:30
msgid ""
"This MediaWiki instance comes with a randomly generated administrator "
"password. You can set a new password in the \"Configuration\" section and "
@@ -2343,86 +2357,86 @@ msgid ""
"CreateAccount\">Special:CreateAccount page."
msgstr ""
-#: plinth/modules/mediawiki/__init__.py:57
+#: plinth/modules/mediawiki/__init__.py:36
msgid ""
"Anyone with a link to this wiki can read it. Only users that are logged in "
"can make changes to the content."
msgstr ""
-#: plinth/modules/mediawiki/forms.py:42
+#: plinth/modules/mediawiki/__init__.py:54
+#: plinth/modules/mediawiki/manifest.py:9
+msgid "MediaWiki"
+msgstr ""
+
+#: plinth/modules/mediawiki/__init__.py:55 plinth/templates/index.html:124
+msgid "Wiki"
+msgstr ""
+
+#: plinth/modules/mediawiki/forms.py:27
msgid "Administrator Password"
msgstr ""
-#: plinth/modules/mediawiki/forms.py:43
+#: plinth/modules/mediawiki/forms.py:28
msgid ""
"Set a new password for MediaWiki's administrator account (admin). Leave this "
"field blank to keep the current password."
msgstr ""
-#: plinth/modules/mediawiki/forms.py:48
+#: plinth/modules/mediawiki/forms.py:33
msgid "Enable public registrations"
msgstr ""
-#: plinth/modules/mediawiki/forms.py:49
+#: plinth/modules/mediawiki/forms.py:34
msgid ""
"If enabled, anyone on the internet will be able to create an account on your "
"MediaWiki instance."
msgstr ""
-#: plinth/modules/mediawiki/forms.py:53
+#: plinth/modules/mediawiki/forms.py:38
msgid "Enable private mode"
msgstr ""
-#: plinth/modules/mediawiki/forms.py:54
+#: plinth/modules/mediawiki/forms.py:39
msgid ""
"If enabled, access will be restricted. Only people who have accounts can "
"read/write to the wiki. Public registrations will also be disabled."
msgstr ""
-#: plinth/modules/mediawiki/forms.py:59
+#: plinth/modules/mediawiki/forms.py:44
msgid "Default Skin"
msgstr ""
-#: plinth/modules/mediawiki/forms.py:60
+#: plinth/modules/mediawiki/forms.py:45
msgid ""
"Choose a default skin for your MediaWiki installation. Users have the option "
"to select their preferred skin."
msgstr ""
-#: plinth/modules/mediawiki/views.py:74
+#: plinth/modules/mediawiki/views.py:54
msgid "Password updated"
msgstr ""
-#: plinth/modules/mediawiki/views.py:93
+#: plinth/modules/mediawiki/views.py:73
msgid "Public registrations enabled"
msgstr ""
-#: plinth/modules/mediawiki/views.py:102
+#: plinth/modules/mediawiki/views.py:82
msgid "Public registrations disabled"
msgstr ""
-#: plinth/modules/mediawiki/views.py:107
+#: plinth/modules/mediawiki/views.py:87
msgid "Private mode enabled"
msgstr ""
-#: plinth/modules/mediawiki/views.py:114
+#: plinth/modules/mediawiki/views.py:94
msgid "Private mode disabled"
msgstr ""
-#: plinth/modules/mediawiki/views.py:122
+#: plinth/modules/mediawiki/views.py:102
msgid "Default skin changed"
msgstr ""
-#: plinth/modules/minetest/__init__.py:50
-#: plinth/modules/minetest/manifest.py:25
-msgid "Minetest"
-msgstr ""
-
-#: plinth/modules/minetest/__init__.py:54
-msgid "Block Sandbox"
-msgstr ""
-
-#: plinth/modules/minetest/__init__.py:58
+#: plinth/modules/minetest/__init__.py:37
#, python-brace-format
msgid ""
"Minetest is a multiplayer infinite-world block sandbox. This module enables "
@@ -2431,73 +2445,78 @@ msgid ""
"downloads/\">Minetest client is needed."
msgstr ""
-#: plinth/modules/minetest/forms.py:30
+#: plinth/modules/minetest/__init__.py:63
+#: plinth/modules/minetest/manifest.py:10
+msgid "Minetest"
+msgstr ""
+
+#: plinth/modules/minetest/__init__.py:64
+msgid "Block Sandbox"
+msgstr ""
+
+#: plinth/modules/minetest/forms.py:15
msgid "Maximum number of players"
msgstr ""
-#: plinth/modules/minetest/forms.py:32
+#: plinth/modules/minetest/forms.py:17
msgid ""
"You can change the maximum number of players playing minetest at a single "
"instance of time."
msgstr ""
-#: plinth/modules/minetest/forms.py:36
+#: plinth/modules/minetest/forms.py:21
msgid "Enable creative mode"
msgstr ""
-#: plinth/modules/minetest/forms.py:37
+#: plinth/modules/minetest/forms.py:22
msgid ""
"Creative mode changes the rules of the game to make it more suitable for "
"creative gameplay, rather than challenging \"survival\" gameplay."
msgstr ""
-#: plinth/modules/minetest/forms.py:42
+#: plinth/modules/minetest/forms.py:27
msgid "Enable PVP"
msgstr ""
-#: plinth/modules/minetest/forms.py:43
+#: plinth/modules/minetest/forms.py:28
msgid "Enabling Player Vs Player will allow players to damage other players."
msgstr ""
-#: plinth/modules/minetest/forms.py:47
+#: plinth/modules/minetest/forms.py:32
msgid "Enable damage"
msgstr ""
-#: plinth/modules/minetest/forms.py:48
+#: plinth/modules/minetest/forms.py:33
msgid "When disabled, players cannot die or receive damage of any kind."
msgstr ""
-#: plinth/modules/minetest/templates/minetest.html:33
-#: plinth/modules/networks/forms.py:66 plinth/modules/networks/forms.py:97
+#: plinth/modules/minetest/templates/minetest.html:18
+#: plinth/modules/networks/forms.py:49 plinth/modules/networks/forms.py:79
msgid "Address"
msgstr ""
-#: plinth/modules/minetest/templates/minetest.html:34
-#: plinth/modules/tor/templates/tor.html:96
+#: plinth/modules/minetest/templates/minetest.html:19
+#: plinth/modules/tor/templates/tor.html:81
msgid "Port"
msgstr ""
-#: plinth/modules/minetest/views.py:70
+#: plinth/modules/minetest/views.py:50
msgid "Maximum players configuration updated"
msgstr ""
-#: plinth/modules/minetest/views.py:77
+#: plinth/modules/minetest/views.py:57
msgid "Creative mode configuration updated"
msgstr ""
-#: plinth/modules/minetest/views.py:83
+#: plinth/modules/minetest/views.py:63
msgid "PVP configuration updated"
msgstr ""
-#: plinth/modules/minetest/views.py:89
+#: plinth/modules/minetest/views.py:69
msgid "Damage configuration updated"
msgstr ""
-#: plinth/modules/minidlna/__init__.py:41
-msgid "Simple Media Server"
-msgstr ""
-
-#: plinth/modules/minidlna/__init__.py:44
+#: plinth/modules/minidlna/__init__.py:23
msgid ""
"MiniDLNA is a simple media server software, with the aim of being fully "
"compliant with DLNA/UPnP-AV clients. The MiniDNLA daemon serves media files "
@@ -2508,15 +2527,19 @@ msgid ""
"Kodi."
msgstr ""
-#: plinth/modules/minidlna/__init__.py:56
+#: plinth/modules/minidlna/__init__.py:33
msgid "Media streaming server"
msgstr ""
-#: plinth/modules/minidlna/forms.py:30
+#: plinth/modules/minidlna/__init__.py:47
+msgid "Simple Media Server"
+msgstr ""
+
+#: plinth/modules/minidlna/forms.py:15
msgid "Media Files Directory"
msgstr ""
-#: plinth/modules/minidlna/forms.py:31
+#: plinth/modules/minidlna/forms.py:16
msgid ""
"Directory that MiniDLNA Server will read for content. All sub-directories of "
"this will be also scanned for media files. If you change the default ensure "
@@ -2524,77 +2547,72 @@ msgid ""
"user. Any user media directories (\"/home/username/\") will usually work."
msgstr ""
-#: plinth/modules/minidlna/manifest.py:25
+#: plinth/modules/minidlna/manifest.py:10
msgid "vlc"
msgstr ""
-#: plinth/modules/minidlna/manifest.py:64
+#: plinth/modules/minidlna/manifest.py:49
msgid "kodi"
msgstr ""
-#: plinth/modules/minidlna/manifest.py:103
+#: plinth/modules/minidlna/manifest.py:88
msgid "yaacc"
msgstr ""
-#: plinth/modules/minidlna/manifest.py:114
+#: plinth/modules/minidlna/manifest.py:99
msgid "totem"
msgstr ""
-#: plinth/modules/minidlna/views.py:57
+#: plinth/modules/minidlna/views.py:37
msgid "Specified directory does not exist."
msgstr ""
-#: plinth/modules/minidlna/views.py:62
+#: plinth/modules/minidlna/views.py:42
msgid "Updated media directory"
msgstr ""
-#: plinth/modules/mldonkey/__init__.py:40
-#: plinth/modules/mldonkey/manifest.py:27
-msgid "MLDonkey"
-msgstr ""
-
-#: plinth/modules/mldonkey/__init__.py:44
-msgid "Peer-to-peer File Sharing"
-msgstr ""
-
-#: plinth/modules/mldonkey/__init__.py:47
+#: plinth/modules/mldonkey/__init__.py:26
msgid ""
"MLDonkey is a peer-to-peer file sharing application used to exchange large "
"files. It can participate in multiple peer-to-peer networks including "
"eDonkey, Kademlia, Overnet, BitTorrent and DirectConnect."
msgstr ""
-#: plinth/modules/mldonkey/__init__.py:50
+#: plinth/modules/mldonkey/__init__.py:29
msgid ""
"Users belonging to admin and ed2k group can control it through the web "
"interface. Users in the admin group can also control it through any of the "
"separate mobile or desktop front-ends or a telnet interface. See manual."
msgstr ""
-#: plinth/modules/mldonkey/__init__.py:55
+#: plinth/modules/mldonkey/__init__.py:34
#, python-brace-format
msgid ""
"On {box_name}, downloaded files can be found in /var/lib/mldonkey/ directory."
msgstr ""
-#: plinth/modules/mldonkey/__init__.py:63
+#: plinth/modules/mldonkey/__init__.py:40
msgid "Download files using eDonkey applications"
msgstr ""
-#: plinth/modules/mldonkey/manifest.py:34
+#: plinth/modules/mldonkey/__init__.py:54
+#: plinth/modules/mldonkey/manifest.py:12
+msgid "MLDonkey"
+msgstr ""
+
+#: plinth/modules/mldonkey/__init__.py:56
+msgid "Peer-to-peer File Sharing"
+msgstr ""
+
+#: plinth/modules/mldonkey/manifest.py:19
msgid "KMLDonkey"
msgstr ""
-#: plinth/modules/mldonkey/manifest.py:46
+#: plinth/modules/mldonkey/manifest.py:31
msgid "AMLDonkey"
msgstr ""
-#: plinth/modules/monkeysphere/__init__.py:32
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:26
-msgid "Monkeysphere"
-msgstr ""
-
-#: plinth/modules/monkeysphere/__init__.py:35
+#: plinth/modules/monkeysphere/__init__.py:18
msgid ""
"With Monkeysphere, an OpenPGP key can be generated for each configured "
"domain serving SSH. The OpenPGP public key can then be uploaded to the "
@@ -2606,7 +2624,7 @@ msgid ""
"for more details."
msgstr ""
-#: plinth/modules/monkeysphere/__init__.py:43
+#: plinth/modules/monkeysphere/__init__.py:26
msgid ""
"Monkeysphere can also generate an OpenPGP key for each Secure Web Server "
"(HTTPS) certificate installed on this machine. The OpenPGP public key can "
@@ -2617,176 +2635,177 @@ msgid ""
"Monkeysphere website."
msgstr ""
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:60
+#: plinth/modules/monkeysphere/__init__.py:50
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:11
+msgid "Monkeysphere"
+msgstr ""
+
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:45
msgid "Publishing key to keyserver..."
msgstr ""
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:67
-#: plinth/modules/users/templates/users_delete.html:41
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:52
+#: plinth/modules/users/templates/users_delete.html:26
msgid "Cancel"
msgstr ""
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:75
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:55
-#: plinth/modules/tor/templates/tor.html:95
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:60
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:40
+#: plinth/modules/tor/templates/tor.html:80
msgid "Service"
msgstr ""
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:76
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:61
msgid "Domains"
msgstr ""
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:77
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:31
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:62
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:16
msgid "OpenPGP Fingerprint"
msgstr ""
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:86
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:58
-#: plinth/modules/names/components.py:39
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:71
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:43
+#: plinth/modules/names/components.py:24
msgid "Secure Shell"
msgstr ""
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:90
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:62
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:75
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:47
msgid "Other"
msgstr ""
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:127
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:112
#, python-format
msgid "Show details for key %(fingerprint)s"
msgstr ""
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:133
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:118
msgid "-"
msgstr ""
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:143
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:128
msgid "Import Key"
msgstr ""
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:152
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:137
msgid "Publish Key"
msgstr ""
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:161
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:146
msgid "Add Domains"
msgstr ""
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:35
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:20
msgid "OpenPGP User IDs"
msgstr ""
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:39
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:24
msgid "Key Import Date"
msgstr ""
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:43
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:28
msgid "SSH Key Type"
msgstr ""
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:47
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:32
msgid "SSH Key Size"
msgstr ""
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:51
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:36
msgid "SSH Fingerprint"
msgstr ""
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:67
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:52
msgid "Key File"
msgstr ""
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:71
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:56
msgid "Available Domains"
msgstr ""
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:75
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:60
msgid "Added Domains"
msgstr ""
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:82
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:67
msgid ""
"After this key is published to the keyservers, it can be signed using GnuPG with the following commands:"
msgstr ""
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:88
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:73
msgid "Download the key"
msgstr ""
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:91
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:76
msgid "Sign the key"
msgstr ""
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:94
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:79
msgid "Send the key back to the keyservers"
msgstr ""
-#: plinth/modules/monkeysphere/views.py:60
+#: plinth/modules/monkeysphere/views.py:43
msgid "Imported key."
msgstr ""
-#: plinth/modules/monkeysphere/views.py:96
+#: plinth/modules/monkeysphere/views.py:79
msgid "Cancelled key publishing."
msgstr ""
-#: plinth/modules/monkeysphere/views.py:147
+#: plinth/modules/monkeysphere/views.py:130
msgid "Published key to keyserver."
msgstr ""
-#: plinth/modules/monkeysphere/views.py:149
+#: plinth/modules/monkeysphere/views.py:132
msgid "Error occurred while publishing key."
msgstr ""
-#: plinth/modules/mumble/__init__.py:33 plinth/modules/mumble/manifest.py:27
-msgid "Mumble"
-msgstr ""
-
-#: plinth/modules/mumble/__init__.py:37
-msgid "Voice Chat"
-msgstr ""
-
-#: plinth/modules/mumble/__init__.py:44
+#: plinth/modules/mumble/__init__.py:23
msgid ""
"Mumble is an open source, low-latency, encrypted, high quality voice chat "
"software."
msgstr ""
-#: plinth/modules/mumble/__init__.py:46
+#: plinth/modules/mumble/__init__.py:25
msgid ""
"You can connect to your Mumble server on the regular Mumble port 64738. Clients to connect to Mumble from your "
"desktop and Android devices are available."
msgstr ""
-#: plinth/modules/mumble/forms.py:31
+#: plinth/modules/mumble/__init__.py:49 plinth/modules/mumble/manifest.py:12
+msgid "Mumble"
+msgstr ""
+
+#: plinth/modules/mumble/__init__.py:50
+msgid "Voice Chat"
+msgstr ""
+
+#: plinth/modules/mumble/forms.py:16
msgid "Set SuperUser Password"
msgstr ""
-#: plinth/modules/mumble/forms.py:34
+#: plinth/modules/mumble/forms.py:19
msgid ""
"Optional. Leave this field blank to keep the current password. SuperUser "
"password can be used to manage permissions in Mumble."
msgstr ""
-#: plinth/modules/mumble/manifest.py:52
+#: plinth/modules/mumble/manifest.py:37
msgid "Plumble"
msgstr ""
-#: plinth/modules/mumble/manifest.py:66
+#: plinth/modules/mumble/manifest.py:51
msgid "Mumblefly"
msgstr ""
-#: plinth/modules/mumble/views.py:50
+#: plinth/modules/mumble/views.py:29
msgid "SuperUser password successfully updated."
msgstr ""
-#: plinth/modules/names/__init__.py:37
-msgid "Name Services"
-msgstr ""
-
-#: plinth/modules/names/__init__.py:45
+#: plinth/modules/names/__init__.py:26
#, python-brace-format
msgid ""
"Name Services provides an overview of the ways {box_name} can be reached "
@@ -2795,76 +2814,80 @@ msgid ""
"enabled or disabled for incoming connections through the given name."
msgstr ""
-#: plinth/modules/names/components.py:27
+#: plinth/modules/names/__init__.py:46
+msgid "Name Services"
+msgstr ""
+
+#: plinth/modules/names/components.py:12
msgid "All"
msgstr ""
-#: plinth/modules/names/components.py:31 plinth/modules/names/components.py:35
+#: plinth/modules/names/components.py:16 plinth/modules/names/components.py:20
msgid "All web apps"
msgstr ""
-#: plinth/modules/networks/__init__.py:42
-msgid "Networks"
-msgstr ""
-
-#: plinth/modules/networks/__init__.py:45
+#: plinth/modules/networks/__init__.py:35
msgid ""
"Configure network devices. Connect to the Internet via Ethernet, Wi-Fi or "
"PPPoE. Share that connection with other devices on the network."
msgstr ""
-#: plinth/modules/networks/__init__.py:47
+#: plinth/modules/networks/__init__.py:37
msgid ""
"Devices administered through other methods may not be available for "
"configuration here."
msgstr ""
-#: plinth/modules/networks/__init__.py:156
+#: plinth/modules/networks/__init__.py:58
+msgid "Networks"
+msgstr ""
+
+#: plinth/modules/networks/__init__.py:151
#, python-brace-format
msgid "Using DNSSEC on IPv{kind}"
msgstr ""
-#: plinth/modules/networks/forms.py:32
+#: plinth/modules/networks/forms.py:16
msgid "Connection Type"
msgstr ""
-#: plinth/modules/networks/forms.py:44
+#: plinth/modules/networks/forms.py:28
msgid "Connection Name"
msgstr ""
-#: plinth/modules/networks/forms.py:46
+#: plinth/modules/networks/forms.py:30
msgid "Network Interface"
msgstr ""
-#: plinth/modules/networks/forms.py:47
+#: plinth/modules/networks/forms.py:31
msgid "The network device that this connection should be bound to."
msgstr ""
-#: plinth/modules/networks/forms.py:50
+#: plinth/modules/networks/forms.py:34
msgid "Firewall Zone"
msgstr ""
-#: plinth/modules/networks/forms.py:51
+#: plinth/modules/networks/forms.py:35
msgid ""
"The firewall zone will control which services are available over this "
"interfaces. Select Internal only for trusted networks."
msgstr ""
-#: plinth/modules/networks/forms.py:54
-#: plinth/modules/networks/templates/connections_diagram.html:78
+#: plinth/modules/networks/forms.py:38
+#: plinth/modules/networks/templates/connections_diagram.html:63
msgid "External"
msgstr ""
-#: plinth/modules/networks/forms.py:54
-#: plinth/modules/networks/templates/connections_diagram.html:107
+#: plinth/modules/networks/forms.py:38
+#: plinth/modules/networks/templates/connections_diagram.html:92
msgid "Internal"
msgstr ""
-#: plinth/modules/networks/forms.py:56
+#: plinth/modules/networks/forms.py:40
msgid "IPv4 Addressing Method"
msgstr ""
-#: plinth/modules/networks/forms.py:58
+#: plinth/modules/networks/forms.py:41
#, python-brace-format
msgid ""
"\"Automatic\" method will make {box_name} acquire configuration from this "
@@ -2872,197 +2895,237 @@ msgid ""
"router, configure clients on this network and share its Internet connection."
msgstr ""
-#: plinth/modules/networks/forms.py:63
+#: plinth/modules/networks/forms.py:46
msgid "Automatic (DHCP)"
msgstr ""
-#: plinth/modules/networks/forms.py:63
+#: plinth/modules/networks/forms.py:46
msgid "Shared"
msgstr ""
-#: plinth/modules/networks/forms.py:69
+#: plinth/modules/networks/forms.py:52
msgid "Netmask"
msgstr ""
-#: plinth/modules/networks/forms.py:70
+#: plinth/modules/networks/forms.py:53
msgid ""
"Optional value. If left blank, a default netmask based on the address will "
"be used."
msgstr ""
-#: plinth/modules/networks/forms.py:74 plinth/modules/networks/forms.py:104
-#: plinth/modules/networks/templates/connection_show.html:202
-#: plinth/modules/networks/templates/connection_show.html:241
+#: plinth/modules/networks/forms.py:57 plinth/modules/networks/forms.py:86
+#: plinth/modules/networks/templates/connection_show.html:187
+#: plinth/modules/networks/templates/connection_show.html:226
msgid "Gateway"
msgstr ""
-#: plinth/modules/networks/forms.py:74 plinth/modules/networks/forms.py:104
+#: plinth/modules/networks/forms.py:57 plinth/modules/networks/forms.py:86
msgid "Optional value."
msgstr ""
-#: plinth/modules/networks/forms.py:77 plinth/modules/networks/forms.py:107
+#: plinth/modules/networks/forms.py:60 plinth/modules/networks/forms.py:89
msgid "DNS Server"
msgstr ""
-#: plinth/modules/networks/forms.py:78
+#: plinth/modules/networks/forms.py:61
msgid ""
"Optional value. If this value is given and IPv4 addressing method is "
"\"Automatic\", the DNS Servers provided by a DHCP server will be ignored."
msgstr ""
-#: plinth/modules/networks/forms.py:83 plinth/modules/networks/forms.py:113
+#: plinth/modules/networks/forms.py:66 plinth/modules/networks/forms.py:95
msgid "Second DNS Server"
msgstr ""
-#: plinth/modules/networks/forms.py:84
+#: plinth/modules/networks/forms.py:67
msgid ""
"Optional value. If this value is given and IPv4 Addressing Method is "
"\"Automatic\", the DNS Servers provided by a DHCP server will be ignored."
msgstr ""
-#: plinth/modules/networks/forms.py:89
+#: plinth/modules/networks/forms.py:72
msgid "IPv6 Addressing Method"
msgstr ""
-#: plinth/modules/networks/forms.py:91
+#: plinth/modules/networks/forms.py:73
#, python-brace-format
msgid ""
"\"Automatic\" methods will make {box_name} acquire configuration from this "
"network making it a client."
msgstr ""
-#: plinth/modules/networks/forms.py:94 plinth/modules/networks/forms.py:259
+#: plinth/modules/networks/forms.py:76 plinth/modules/networks/forms.py:241
msgid "Automatic"
msgstr ""
-#: plinth/modules/networks/forms.py:94
+#: plinth/modules/networks/forms.py:76
msgid "Automatic, DHCP only"
msgstr ""
-#: plinth/modules/networks/forms.py:95
+#: plinth/modules/networks/forms.py:77
msgid "Ignore"
msgstr ""
-#: plinth/modules/networks/forms.py:99
+#: plinth/modules/networks/forms.py:81
msgid "Prefix"
msgstr ""
-#: plinth/modules/networks/forms.py:100
+#: plinth/modules/networks/forms.py:82
msgid "Value between 1 and 128."
msgstr ""
-#: plinth/modules/networks/forms.py:108
+#: plinth/modules/networks/forms.py:90
msgid ""
"Optional value. If this value is given and IPv6 addressing method is "
"\"Automatic\", the DNS Servers provided by a DHCP server will be ignored."
msgstr ""
-#: plinth/modules/networks/forms.py:114
+#: plinth/modules/networks/forms.py:96
msgid ""
"Optional value. If this value is given and IPv6 Addressing Method is "
"\"Automatic\", the DNS Servers provided by a DHCP server will be ignored."
msgstr ""
-#: plinth/modules/networks/forms.py:127
+#: plinth/modules/networks/forms.py:109
msgid "-- select --"
msgstr ""
-#: plinth/modules/networks/forms.py:252
-#: plinth/modules/networks/templates/connection_show.html:144
+#: plinth/modules/networks/forms.py:234
+#: plinth/modules/networks/templates/connection_show.html:129
msgid "SSID"
msgstr ""
-#: plinth/modules/networks/forms.py:253
+#: plinth/modules/networks/forms.py:235
msgid "The visible name of the network."
msgstr ""
-#: plinth/modules/networks/forms.py:255
-#: plinth/modules/networks/templates/connection_show.html:157
+#: plinth/modules/networks/forms.py:237
+#: plinth/modules/networks/templates/connection_show.html:142
msgid "Mode"
msgstr ""
-#: plinth/modules/networks/forms.py:255
+#: plinth/modules/networks/forms.py:237
msgid "Infrastructure"
msgstr ""
-#: plinth/modules/networks/forms.py:256
+#: plinth/modules/networks/forms.py:238
msgid "Access Point"
msgstr ""
-#: plinth/modules/networks/forms.py:257
+#: plinth/modules/networks/forms.py:239
msgid "Ad-hoc"
msgstr ""
-#: plinth/modules/networks/forms.py:259
+#: plinth/modules/networks/forms.py:241
msgid "Frequency Band"
msgstr ""
-#: plinth/modules/networks/forms.py:260
+#: plinth/modules/networks/forms.py:242
msgid "A (5 GHz)"
msgstr ""
-#: plinth/modules/networks/forms.py:261
+#: plinth/modules/networks/forms.py:243
msgid "B/G (2.4 GHz)"
msgstr ""
-#: plinth/modules/networks/forms.py:263
-#: plinth/modules/networks/templates/connection_show.html:173
+#: plinth/modules/networks/forms.py:245
+#: plinth/modules/networks/templates/connection_show.html:158
msgid "Channel"
msgstr ""
-#: plinth/modules/networks/forms.py:264
+#: plinth/modules/networks/forms.py:246
msgid ""
"Optional value. Wireless channel in the selected frequency band to restrict "
"to. Blank or 0 value means automatic selection."
msgstr ""
-#: plinth/modules/networks/forms.py:269
+#: plinth/modules/networks/forms.py:251
msgid "BSSID"
msgstr ""
-#: plinth/modules/networks/forms.py:270
+#: plinth/modules/networks/forms.py:252
msgid ""
"Optional value. Unique identifier for the access point. When connecting to "
"an access point, connect only if the BSSID of the access point matches the "
"one provided. Example: 00:11:22:aa:bb:cc."
msgstr ""
-#: plinth/modules/networks/forms.py:276
+#: plinth/modules/networks/forms.py:258
msgid "Authentication Mode"
msgstr ""
-#: plinth/modules/networks/forms.py:277
+#: plinth/modules/networks/forms.py:259
msgid ""
"Select WPA if the wireless network is secured and requires clients to have "
"the password to connect."
msgstr ""
-#: plinth/modules/networks/forms.py:279
+#: plinth/modules/networks/forms.py:261
msgid "WPA"
msgstr ""
-#: plinth/modules/networks/forms.py:279
+#: plinth/modules/networks/forms.py:261
msgid "Open"
msgstr ""
+#: plinth/modules/networks/forms.py:297
+msgid "Choose your internet connection type"
+msgstr ""
+
+#: plinth/modules/networks/forms.py:301
+msgid ""
+"I have a public IP address that may change over time
Your PageKite frontend server may not support all the "
"protocol/port combinations that you are able to define here. For example, "
"HTTPS on ports other than 443 is known to cause problems."
msgstr ""
-#: plinth/modules/pagekite/templates/pagekite_firstboot.html:26
+#: plinth/modules/pagekite/templates/pagekite_firstboot.html:11
msgid "Setup a freedombox.me subdomain with your voucher"
msgstr ""
-#: plinth/modules/pagekite/templates/pagekite_firstboot.html:30
+#: plinth/modules/pagekite/templates/pagekite_firstboot.html:15
#, python-format
msgid ""
"Skip this step if you do not have a "
@@ -3774,134 +3876,125 @@ msgid ""
"credentials."
msgstr ""
-#: plinth/modules/pagekite/templates/pagekite_firstboot.html:38
+#: plinth/modules/pagekite/templates/pagekite_firstboot.html:23
msgid ""
"You can use an already redeemed voucher but it will only work with the "
"initially registered subdomain."
msgstr ""
-#: plinth/modules/pagekite/templates/pagekite_firstboot.html:52
+#: plinth/modules/pagekite/templates/pagekite_firstboot.html:37
msgid "Register"
msgstr ""
-#: plinth/modules/pagekite/templates/pagekite_firstboot.html:56
+#: plinth/modules/pagekite/templates/pagekite_firstboot.html:41
msgid "Skip Registration"
msgstr ""
-#: plinth/modules/pagekite/templates/pagekite_standard_services.html:40
+#: plinth/modules/pagekite/templates/pagekite_standard_services.html:25
msgid "Warning:
"
msgstr ""
-#: plinth/modules/pagekite/templates/pagekite_standard_services.html:43
+#: plinth/modules/pagekite/templates/pagekite_standard_services.html:28
msgid ""
"Published services are accessible and attackable from the evil Internet."
msgstr ""
-#: plinth/modules/pagekite/templates/pagekite_standard_services.html:58
+#: plinth/modules/pagekite/templates/pagekite_standard_services.html:43
msgid "Save Services"
msgstr ""
-#: plinth/modules/pagekite/utils.py:57
+#: plinth/modules/pagekite/utils.py:42
msgid "Web Server (HTTP)"
msgstr ""
-#: plinth/modules/pagekite/utils.py:59
+#: plinth/modules/pagekite/utils.py:44
#, python-brace-format
msgid "Site will be available at http://{0}"
msgstr ""
-#: plinth/modules/pagekite/utils.py:71
+#: plinth/modules/pagekite/utils.py:56
msgid "Web Server (HTTPS)"
msgstr ""
-#: plinth/modules/pagekite/utils.py:73
+#: plinth/modules/pagekite/utils.py:58
#, python-brace-format
msgid "Site will be available at https://{0}"
msgstr ""
-#: plinth/modules/pagekite/utils.py:85
+#: plinth/modules/pagekite/utils.py:70
msgid "Secure Shell (SSH)"
msgstr ""
-#: plinth/modules/pagekite/utils.py:87
+#: plinth/modules/pagekite/utils.py:72
msgid ""
"See SSH client setup instructions"
msgstr ""
-#: plinth/modules/power/__init__.py:29 plinth/modules/power/views.py:55
-#: plinth/modules/power/views.py:74
-msgid "Power"
-msgstr ""
-
-#: plinth/modules/power/__init__.py:31
+#: plinth/modules/power/__init__.py:16
msgid "Restart or shut down the system."
msgstr ""
-#: plinth/modules/power/templates/power.html:28
+#: plinth/modules/power/__init__.py:31
+msgid "Power"
+msgstr ""
+
+#: plinth/modules/power/templates/power.html:13
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
+#: plinth/modules/power/templates/power.html:22
msgid "Restart »"
msgstr ""
-#: plinth/modules/power/templates/power.html:40
+#: plinth/modules/power/templates/power.html:25
msgid "Shut Down »"
msgstr ""
-#: plinth/modules/power/templates/power_restart.html:32
+#: plinth/modules/power/templates/power_restart.html:17
msgid ""
"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."
msgstr ""
-#: plinth/modules/power/templates/power_restart.html:49
+#: plinth/modules/power/templates/power_restart.html:34
msgid ""
"Currently an installation or upgrade is running. Consider waiting until it's "
"finished before restarting."
msgstr ""
-#: plinth/modules/power/templates/power_restart.html:63
-#: plinth/modules/power/templates/power_restart.html:66
+#: plinth/modules/power/templates/power_restart.html:48
+#: plinth/modules/power/templates/power_restart.html:51
msgid "Restart Now"
msgstr ""
-#: plinth/modules/power/templates/power_shutdown.html:32
+#: plinth/modules/power/templates/power_shutdown.html:17
msgid ""
"Are you sure you want to shut down? You will not be able to access this web "
"interface after shut down."
msgstr ""
-#: plinth/modules/power/templates/power_shutdown.html:48
+#: plinth/modules/power/templates/power_shutdown.html:33
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:62
-#: plinth/modules/power/templates/power_shutdown.html:65
+#: plinth/modules/power/templates/power_shutdown.html:47
+#: plinth/modules/power/templates/power_shutdown.html:50
msgid "Shut Down Now"
msgstr ""
-#: plinth/modules/privoxy/__init__.py:43
-msgid "Privoxy"
-msgstr ""
-
-#: plinth/modules/privoxy/__init__.py:47
-msgid "Web Proxy"
-msgstr ""
-
-#: plinth/modules/privoxy/__init__.py:50
+#: plinth/modules/privoxy/__init__.py:29
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:55
+#: plinth/modules/privoxy/__init__.py:34
#, python-brace-format
msgid ""
"You can use Privoxy by modifying your browser proxy settings to your "
@@ -3911,20 +4004,20 @@ msgid ""
"\">http://p.p."
msgstr ""
-#: plinth/modules/privoxy/__init__.py:141
+#: plinth/modules/privoxy/__init__.py:57
+msgid "Privoxy"
+msgstr ""
+
+#: plinth/modules/privoxy/__init__.py:58
+msgid "Web Proxy"
+msgstr ""
+
+#: plinth/modules/privoxy/__init__.py:121
#, python-brace-format
msgid "Access {url} with proxy {proxy} on tcp{kind}"
msgstr ""
-#: plinth/modules/quassel/__init__.py:45 plinth/modules/quassel/manifest.py:25
-msgid "Quassel"
-msgstr ""
-
-#: plinth/modules/quassel/__init__.py:49
-msgid "IRC Client"
-msgstr ""
-
-#: plinth/modules/quassel/__init__.py:53
+#: plinth/modules/quassel/__init__.py:32
#, python-brace-format
msgid ""
"Quassel is an IRC application that is split into two parts, a \"core\" and a "
@@ -3935,7 +4028,7 @@ msgid ""
"connect and disconnect from it."
msgstr ""
-#: plinth/modules/quassel/__init__.py:60
+#: plinth/modules/quassel/__init__.py:39
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."
msgstr ""
-#: plinth/modules/quassel/forms.py:38
+#: plinth/modules/quassel/__init__.py:62 plinth/modules/quassel/manifest.py:10
+msgid "Quassel"
+msgstr ""
+
+#: plinth/modules/quassel/__init__.py:63
+msgid "IRC Client"
+msgstr ""
+
+#: plinth/modules/quassel/forms.py:23
msgid "TLS domain"
msgstr ""
-#: plinth/modules/quassel/forms.py:40
+#: plinth/modules/quassel/forms.py:25
msgid ""
"Select a domain to use TLS with. If the list is empty, please configure at "
"least one domain with certificates."
msgstr ""
-#: plinth/modules/quassel/manifest.py:49
+#: plinth/modules/quassel/manifest.py:34
msgid "Quasseldroid"
msgstr ""
-#: plinth/modules/radicale/__init__.py:45
-#: plinth/modules/radicale/manifest.py:90
-msgid "Radicale"
-msgstr ""
-
-#: plinth/modules/radicale/__init__.py:49
-msgid "Calendar and Addressbook"
-msgstr ""
-
-#: plinth/modules/radicale/__init__.py:53
+#: plinth/modules/radicale/__init__.py:32
#, python-brace-format
msgid ""
"Radicale is a CalDAV and CardDAV server. It allows synchronization and "
@@ -3975,61 +4067,70 @@ msgid ""
"can be accessed by any user with a {box_name} login."
msgstr ""
-#: plinth/modules/radicale/__init__.py:58
+#: plinth/modules/radicale/__init__.py:37
msgid ""
"Radicale provides a basic web interface, which only supports creating new "
"calendars and addressbooks. It does not support adding events or contacts, "
"which must be done using a separate client."
msgstr ""
-#: plinth/modules/radicale/forms.py:30
+#: plinth/modules/radicale/__init__.py:62
+#: plinth/modules/radicale/manifest.py:75
+msgid "Radicale"
+msgstr ""
+
+#: plinth/modules/radicale/__init__.py:63
+msgid "Calendar and Addressbook"
+msgstr ""
+
+#: plinth/modules/radicale/forms.py:15
msgid "Only the owner of a calendar/addressbook can view or make changes."
msgstr ""
-#: plinth/modules/radicale/forms.py:34
+#: plinth/modules/radicale/forms.py:19
#, python-brace-format
msgid ""
"Any user with a {box_name} login can view any calendar/addressbook, but only "
"the owner can make changes."
msgstr ""
-#: plinth/modules/radicale/forms.py:39
+#: plinth/modules/radicale/forms.py:24
#, python-brace-format
msgid ""
"Any user with a {box_name} login can view or make changes to any calendar/"
"addressbook."
msgstr ""
-#: plinth/modules/radicale/manifest.py:25
+#: plinth/modules/radicale/manifest.py:10
msgid "DAVx5"
msgstr ""
-#: plinth/modules/radicale/manifest.py:27
+#: plinth/modules/radicale/manifest.py:12
msgid ""
"Enter the URL of the Radicale server (e.g. https://imaps://imap.gmail.com. "
@@ -4078,17 +4170,22 @@ msgid ""
"a>)."
msgstr ""
-#: plinth/modules/samba/__init__.py:46
-msgid "Samba"
+#: plinth/modules/roundcube/__init__.py:54
+#: plinth/modules/roundcube/manifest.py:9
+msgid "Roundcube"
msgstr ""
-#: plinth/modules/samba/__init__.py:53
+#: plinth/modules/roundcube/__init__.py:55
+msgid "Email Client"
+msgstr ""
+
+#: plinth/modules/samba/__init__.py:32
msgid ""
"Samba allows to share files and folders between FreedomBox and other "
"computers in your local network."
msgstr ""
-#: plinth/modules/samba/__init__.py:56
+#: plinth/modules/samba/__init__.py:35
#, python-brace-format
msgid ""
"After installation, you can choose which disks to use for sharing. Enabled "
@@ -4097,51 +4194,55 @@ msgid ""
"There are three types of shares you can choose from: "
msgstr ""
-#: plinth/modules/samba/__init__.py:61
+#: plinth/modules/samba/__init__.py:40
msgid "Open share - accessible to everyone in your local network."
msgstr ""
-#: plinth/modules/samba/__init__.py:62
+#: plinth/modules/samba/__init__.py:41
msgid ""
"Group share - accessible only to FreedomBox users who are in the freedombox-"
"share group."
msgstr ""
-#: plinth/modules/samba/__init__.py:64
+#: plinth/modules/samba/__init__.py:43
msgid ""
"Home share - every user in the freedombox-share group can have their own "
"private space."
msgstr ""
-#: plinth/modules/samba/__init__.py:68
+#: plinth/modules/samba/__init__.py:47
msgid "Access to the private shares"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:39
-#: plinth/modules/samba/templates/samba.html:50
+#: plinth/modules/samba/__init__.py:61
+msgid "Samba"
+msgstr ""
+
+#: plinth/modules/samba/templates/samba.html:24
+#: plinth/modules/samba/templates/samba.html:35
msgid "Shares"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:41
+#: plinth/modules/samba/templates/samba.html:26
msgid ""
"Note: Only specially created directories will be shared on selected disks, "
"not the whole disk."
msgstr ""
-#: plinth/modules/samba/templates/samba.html:49
+#: plinth/modules/samba/templates/samba.html:34
msgid "Disk Name"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:51
-#: plinth/modules/storage/templates/storage.html:44
+#: plinth/modules/samba/templates/samba.html:36
+#: plinth/modules/storage/templates/storage.html:29
msgid "Used"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:72
+#: plinth/modules/samba/templates/samba.html:57
msgid "VFAT partitions are not supported"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:103
+#: plinth/modules/samba/templates/samba.html:88
#, python-format
msgid ""
"You can find additional information about disks on the users module page."
msgstr ""
-#: plinth/modules/samba/templates/samba.html:109
+#: plinth/modules/samba/templates/samba.html:94
msgid "Users who can currently access group and home shares"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:113
+#: plinth/modules/samba/templates/samba.html:98
msgid ""
"Users needing to re-enter their password on the password change page to "
"access group and home shares"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:118
+#: plinth/modules/samba/templates/samba.html:103
msgid "Unavailable Shares"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:120
+#: plinth/modules/samba/templates/samba.html:105
msgid ""
"Shares that are configured but the disk is not available. If the disk is "
"plugged back in, sharing will be automatically enabled."
msgstr ""
-#: plinth/modules/samba/templates/samba.html:128
+#: plinth/modules/samba/templates/samba.html:113
msgid "Share name"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:129
+#: plinth/modules/samba/templates/samba.html:114
msgid "Action"
msgstr ""
-#: plinth/modules/samba/views.py:61 plinth/modules/storage/forms.py:164
+#: plinth/modules/samba/views.py:43 plinth/modules/storage/forms.py:149
msgid "Open Share"
msgstr ""
-#: plinth/modules/samba/views.py:62 plinth/modules/storage/forms.py:162
+#: plinth/modules/samba/views.py:44 plinth/modules/storage/forms.py:147
msgid "Group Share"
msgstr ""
-#: plinth/modules/samba/views.py:63
+#: plinth/modules/samba/views.py:45
msgid "Home Share"
msgstr ""
-#: plinth/modules/samba/views.py:96
+#: plinth/modules/samba/views.py:78
msgid "Share enabled."
msgstr ""
-#: plinth/modules/samba/views.py:101
+#: plinth/modules/samba/views.py:83
#, fuzzy, python-brace-format
#| msgid "Error installing application: {error}"
msgid "Error enabling share: {error_message}"
msgstr "Грешка при инсталиране на приложението: {error}"
-#: plinth/modules/samba/views.py:106
+#: plinth/modules/samba/views.py:88
msgid "Share disabled."
msgstr ""
-#: plinth/modules/samba/views.py:111
+#: plinth/modules/samba/views.py:93
#, fuzzy, python-brace-format
#| msgid "Error installing application: {error}"
msgid "Error disabling share: {error_message}"
msgstr "Грешка при инсталиране на приложението: {error}"
-#: plinth/modules/searx/__init__.py:41 plinth/modules/searx/manifest.py:24
-msgid "Searx"
-msgstr ""
-
-#: plinth/modules/searx/__init__.py:45
-msgid "Web Search"
-msgstr ""
-
-#: plinth/modules/searx/__init__.py:48
+#: plinth/modules/searx/__init__.py:25
msgid ""
"Searx is a privacy-respecting Internet metasearch engine. It aggregrates and "
"displays results from multiple search engines."
msgstr ""
-#: plinth/modules/searx/__init__.py:50
+#: plinth/modules/searx/__init__.py:27
msgid ""
"Searx can be used to avoid tracking and profiling by search engines. It "
"stores no cookies by default."
msgstr ""
-#: plinth/modules/searx/__init__.py:54
+#: plinth/modules/searx/__init__.py:31
msgid "Search the web"
msgstr ""
-#: plinth/modules/searx/forms.py:30
+#: plinth/modules/searx/__init__.py:47 plinth/modules/searx/manifest.py:9
+msgid "Searx"
+msgstr ""
+
+#: plinth/modules/searx/__init__.py:48
+msgid "Web Search"
+msgstr ""
+
+#: plinth/modules/searx/forms.py:15
msgid "Safe Search"
msgstr ""
-#: plinth/modules/searx/forms.py:31
+#: plinth/modules/searx/forms.py:16
msgid "Select the default family filter to apply to your search results."
msgstr ""
-#: plinth/modules/searx/forms.py:32
+#: plinth/modules/searx/forms.py:17
msgid "None"
msgstr ""
-#: plinth/modules/searx/forms.py:32
+#: plinth/modules/searx/forms.py:17
msgid "Moderate"
msgstr ""
-#: plinth/modules/searx/forms.py:32
+#: plinth/modules/searx/forms.py:17
msgid "Strict"
msgstr ""
-#: plinth/modules/searx/forms.py:35
+#: plinth/modules/searx/forms.py:20
msgid "Allow Public Access"
msgstr ""
-#: plinth/modules/searx/forms.py:36
+#: plinth/modules/searx/forms.py:21
msgid "Allow this application to be used by anyone who can reach it."
msgstr ""
-#: plinth/modules/searx/views.py:59 plinth/modules/searx/views.py:70
-#: plinth/modules/tor/views.py:149 plinth/modules/tor/views.py:176
+#: plinth/modules/searx/views.py:39 plinth/modules/searx/views.py:50
+#: plinth/modules/tor/views.py:130 plinth/modules/tor/views.py:157
msgid "Configuration updated."
msgstr ""
-#: plinth/modules/security/forms.py:28
+#: plinth/modules/security/forms.py:13
msgid "Restrict console logins (recommended)"
msgstr ""
-#: plinth/modules/security/forms.py:29
+#: plinth/modules/security/forms.py:14
msgid ""
"When this option is enabled, only users in the \"admin\" group will be able "
"to log in to console or via SSH. Console users may be able to access some "
"services without further authorization."
msgstr ""
-#: plinth/modules/security/forms.py:34
+#: plinth/modules/security/forms.py:19
msgid "Fail2Ban (recommended)"
msgstr ""
-#: plinth/modules/security/forms.py:35
+#: plinth/modules/security/forms.py:20
msgid ""
"When this option is enabled, Fail2Ban will limit brute force break-in "
"attempts to the SSH server and other enabled password protected internet-"
"services."
msgstr ""
-#: plinth/modules/security/templates/security.html:26
-#: plinth/modules/security/templates/security.html:28
+#: plinth/modules/security/templates/security.html:11
+#: plinth/modules/security/templates/security.html:13
msgid "Show security report"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:25
-#: plinth/modules/security/views.py:87
+#: plinth/modules/security/templates/security_report.html:10
+#: plinth/modules/security/views.py:71
msgid "Security Report"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:27
+#: plinth/modules/security/templates/security_report.html:12
#, python-format
msgid ""
"The installed version of FreedomBox has %(count)s reported security "
"vulnerabilities."
msgstr ""
-#: plinth/modules/security/templates/security_report.html:33
+#: plinth/modules/security/templates/security_report.html:18
msgid ""
"The following table lists the current reported number, and historical count, "
"of security vulnerabilities for each installed app."
msgstr ""
-#: plinth/modules/security/templates/security_report.html:39
+#: plinth/modules/security/templates/security_report.html:24
msgid ""
"For apps that provide services, the \"Sandboxed\" column shows whether "
"sandboxing features are in use. Sandboxing mitigates the impact of a "
"potentially compromised app to the rest of the system."
msgstr ""
-#: plinth/modules/security/templates/security_report.html:46
+#: plinth/modules/security/templates/security_report.html:31
msgid ""
"\"Sandbox Coverage\" is a score of how effectively the service is isolated "
"from the rest of the system. It is only displayed while the service is "
"running."
msgstr ""
-#: plinth/modules/security/templates/security_report.html:55
+#: plinth/modules/security/templates/security_report.html:40
msgid "App Name"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:56
+#: plinth/modules/security/templates/security_report.html:41
msgid "Current Vulnerabilities"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:57
+#: plinth/modules/security/templates/security_report.html:42
msgid "Past Vulnerabilities"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:58
+#: plinth/modules/security/templates/security_report.html:43
msgid "Sandboxed"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:59
+#: plinth/modules/security/templates/security_report.html:44
msgid "Sandbox Coverage"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:70
+#: plinth/modules/security/templates/security_report.html:55
msgid "N/A"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:72
+#: plinth/modules/security/templates/security_report.html:57
msgid "Yes"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:74
+#: plinth/modules/security/templates/security_report.html:59
msgid "No"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:81
+#: plinth/modules/security/templates/security_report.html:66
msgid "Not running"
msgstr ""
-#: plinth/modules/security/views.py:69
+#: plinth/modules/security/views.py:53
#, python-brace-format
msgid "Error setting restricted access: {exception}"
msgstr ""
-#: plinth/modules/security/views.py:72
+#: plinth/modules/security/views.py:56
msgid "Updated security configuration"
msgstr ""
-#: plinth/modules/shaarli/__init__.py:34 plinth/modules/shaarli/manifest.py:23
-msgid "Shaarli"
-msgstr ""
-
-#: plinth/modules/shaarli/__init__.py:36
-msgid "Bookmarks"
-msgstr ""
-
-#: plinth/modules/shaarli/__init__.py:39
+#: plinth/modules/shaarli/__init__.py:20
msgid "Shaarli allows you to save and share bookmarks."
msgstr ""
-#: plinth/modules/shaarli/__init__.py:40
+#: plinth/modules/shaarli/__init__.py:21
msgid ""
"When enabled, Shaarli will be available from /shaarli path on the web server. Note that Shaarli "
@@ -4390,22 +4483,22 @@ msgid ""
"initial visit."
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:35
-msgid "Shadowsocks"
+#: plinth/modules/shaarli/__init__.py:39 plinth/modules/shaarli/manifest.py:8
+msgid "Shaarli"
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:39
-msgid "Socks5 Proxy"
+#: plinth/modules/shaarli/__init__.py:40
+msgid "Bookmarks"
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:46
+#: plinth/modules/shadowsocks/__init__.py:25
msgid ""
"Shadowsocks is a lightweight and secure SOCKS5 proxy, designed to protect "
"your Internet traffic. It can be used to bypass Internet filtering and "
"censorship."
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:50
+#: plinth/modules/shadowsocks/__init__.py:29
#, python-brace-format
msgid ""
"Your {box_name} can run a Shadowsocks client, that can connect to a "
@@ -4414,149 +4507,153 @@ msgid ""
"the Shadowsocks server."
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:55
+#: plinth/modules/shadowsocks/__init__.py:34
msgid ""
"To use Shadowsocks after setup, set the SOCKS5 proxy URL in your device, "
"browser or application to http://freedombox_address:1080/"
msgstr ""
-#: plinth/modules/shadowsocks/forms.py:28
-#: plinth/modules/shadowsocks/forms.py:29
+#: plinth/modules/shadowsocks/__init__.py:50
+msgid "Shadowsocks"
+msgstr ""
+
+#: plinth/modules/shadowsocks/__init__.py:52
+msgid "Socks5 Proxy"
+msgstr ""
+
+#: plinth/modules/shadowsocks/forms.py:13
+#: plinth/modules/shadowsocks/forms.py:14
msgid "Recommended"
msgstr ""
-#: plinth/modules/shadowsocks/forms.py:52
+#: plinth/modules/shadowsocks/forms.py:37
msgid "Server"
msgstr ""
-#: plinth/modules/shadowsocks/forms.py:53
+#: plinth/modules/shadowsocks/forms.py:38
msgid "Server hostname or IP address"
msgstr ""
-#: plinth/modules/shadowsocks/forms.py:57
+#: plinth/modules/shadowsocks/forms.py:42
msgid "Server port number"
msgstr ""
-#: plinth/modules/shadowsocks/forms.py:60
+#: plinth/modules/shadowsocks/forms.py:45
msgid "Password used to encrypt data. Must match server password."
msgstr ""
-#: plinth/modules/shadowsocks/forms.py:65
+#: plinth/modules/shadowsocks/forms.py:50
msgid "Encryption method. Must match setting on server."
msgstr ""
-#: plinth/modules/sharing/__init__.py:34
-msgid "Sharing"
-msgstr ""
-
-#: plinth/modules/sharing/__init__.py:38
+#: plinth/modules/sharing/__init__.py:21
#, python-brace-format
msgid ""
"Sharing allows you to share files and folders on your {box_name} over the "
"web with chosen groups of users."
msgstr ""
-#: plinth/modules/sharing/forms.py:33
+#: plinth/modules/sharing/__init__.py:38
+msgid "Sharing"
+msgstr ""
+
+#: plinth/modules/sharing/forms.py:18
msgid "Name of the share"
msgstr ""
-#: plinth/modules/sharing/forms.py:35
+#: plinth/modules/sharing/forms.py:20
msgid ""
"A lowercase alpha-numeric string that uniquely identifies a share. Example: "
"media."
msgstr ""
-#: plinth/modules/sharing/forms.py:39
+#: plinth/modules/sharing/forms.py:24
msgid "Path to share"
msgstr ""
-#: plinth/modules/sharing/forms.py:40
+#: plinth/modules/sharing/forms.py:25
msgid "Disk path to a folder on this server that you intend to share."
msgstr ""
-#: plinth/modules/sharing/forms.py:43
+#: plinth/modules/sharing/forms.py:28
msgid "Public share"
msgstr ""
-#: plinth/modules/sharing/forms.py:44
+#: plinth/modules/sharing/forms.py:29
msgid "Make files in this folder available to anyone with the link."
msgstr ""
-#: plinth/modules/sharing/forms.py:48
+#: plinth/modules/sharing/forms.py:33
msgid "User groups that can read the files in the share"
msgstr ""
-#: plinth/modules/sharing/forms.py:50
+#: plinth/modules/sharing/forms.py:35
msgid ""
"Users of the selected user groups will be able to read the files in the "
"share."
msgstr ""
-#: plinth/modules/sharing/forms.py:67
+#: plinth/modules/sharing/forms.py:52
msgid "A share with this name already exists."
msgstr ""
-#: plinth/modules/sharing/forms.py:78
+#: plinth/modules/sharing/forms.py:63
msgid "Shares should be either public or shared with at least one group"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:39
-#: plinth/modules/sharing/templates/sharing.html:42
+#: plinth/modules/sharing/templates/sharing.html:24
+#: plinth/modules/sharing/templates/sharing.html:27
msgid "Add share"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:47
+#: plinth/modules/sharing/templates/sharing.html:32
msgid "No shares currently configured."
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:53
+#: plinth/modules/sharing/templates/sharing.html:38
msgid "Disk Path"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:54
+#: plinth/modules/sharing/templates/sharing.html:39
msgid "Shared Over"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:55
+#: plinth/modules/sharing/templates/sharing.html:40
msgid "With Groups"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:73
+#: plinth/modules/sharing/templates/sharing.html:58
msgid "public access"
msgstr ""
-#: plinth/modules/sharing/views.py:55
+#: plinth/modules/sharing/views.py:39
msgid "Share added."
msgstr ""
-#: plinth/modules/sharing/views.py:60
+#: plinth/modules/sharing/views.py:44
msgid "Add Share"
msgstr ""
-#: plinth/modules/sharing/views.py:75
+#: plinth/modules/sharing/views.py:59
msgid "Share edited."
msgstr ""
-#: plinth/modules/sharing/views.py:80
+#: plinth/modules/sharing/views.py:64
msgid "Edit Share"
msgstr ""
-#: plinth/modules/sharing/views.py:111
+#: plinth/modules/sharing/views.py:95
msgid "Share deleted."
msgstr ""
-#: plinth/modules/snapshot/__init__.py:37
-msgid "Storage Snapshots"
-msgstr ""
-
-#: plinth/modules/snapshot/__init__.py:40
+#: plinth/modules/snapshot/__init__.py:23
msgid ""
"Snapshots allows creating and managing btrfs file system snapshots. These "
"can be used to roll back the system to a previously known good state in case "
"of unwanted changes to the system."
msgstr ""
-#: plinth/modules/snapshot/__init__.py:44
+#: plinth/modules/snapshot/__init__.py:27
#, no-python-format
msgid ""
"Snapshots are taken periodically (called timeline snapshots) and also before "
@@ -4564,192 +4661,192 @@ msgid ""
"cleaned up according to the settings below."
msgstr ""
-#: plinth/modules/snapshot/__init__.py:47
+#: plinth/modules/snapshot/__init__.py:30
msgid ""
"Snapshots currently work on btrfs file systems only and on the root "
"partition only. Snapshots are not a replacement for backups since they can only be stored on the same partition. "
msgstr ""
-#: plinth/modules/snapshot/forms.py:27
+#: plinth/modules/snapshot/__init__.py:52
+msgid "Storage Snapshots"
+msgstr ""
+
+#: plinth/modules/snapshot/forms.py:12
msgid "Free Disk Space to Maintain"
msgstr ""
-#: plinth/modules/snapshot/forms.py:28
+#: plinth/modules/snapshot/forms.py:13
msgid ""
"Maintain this percentage of free space on the disk. If free space falls "
"below this value, older snapshots are removed until this much free space is "
"regained. The default value is 30%."
msgstr ""
-#: plinth/modules/snapshot/forms.py:35
+#: plinth/modules/snapshot/forms.py:20
msgid "Timeline Snapshots"
msgstr ""
-#: plinth/modules/snapshot/forms.py:36
+#: plinth/modules/snapshot/forms.py:21
msgid ""
"Enable or disable timeline snapshots (hourly, daily, monthly and yearly)."
msgstr ""
-#: plinth/modules/snapshot/forms.py:41
+#: plinth/modules/snapshot/forms.py:26
msgid "Software Installation Snapshots"
msgstr ""
-#: plinth/modules/snapshot/forms.py:42
+#: plinth/modules/snapshot/forms.py:27
msgid "Enable or disable snapshots before and after software installation"
msgstr ""
-#: plinth/modules/snapshot/forms.py:47
+#: plinth/modules/snapshot/forms.py:32
msgid "Hourly Snapshots Limit"
msgstr ""
-#: plinth/modules/snapshot/forms.py:48
+#: plinth/modules/snapshot/forms.py:33
msgid "Keep a maximum of this many hourly snapshots."
msgstr ""
-#: plinth/modules/snapshot/forms.py:51
+#: plinth/modules/snapshot/forms.py:36
msgid "Daily Snapshots Limit"
msgstr ""
-#: plinth/modules/snapshot/forms.py:52
+#: plinth/modules/snapshot/forms.py:37
msgid "Keep a maximum of this many daily snapshots."
msgstr ""
-#: plinth/modules/snapshot/forms.py:55
+#: plinth/modules/snapshot/forms.py:40
msgid "Weekly Snapshots Limit"
msgstr ""
-#: plinth/modules/snapshot/forms.py:56
+#: plinth/modules/snapshot/forms.py:41
msgid "Keep a maximum of this many weekly snapshots."
msgstr ""
-#: plinth/modules/snapshot/forms.py:59
+#: plinth/modules/snapshot/forms.py:44
msgid "Monthly Snapshots Limit"
msgstr ""
-#: plinth/modules/snapshot/forms.py:60
+#: plinth/modules/snapshot/forms.py:45
msgid "Keep a maximum of this many monthly snapshots."
msgstr ""
-#: plinth/modules/snapshot/forms.py:63
+#: plinth/modules/snapshot/forms.py:48
msgid "Yearly Snapshots Limit"
msgstr ""
-#: plinth/modules/snapshot/forms.py:64
+#: plinth/modules/snapshot/forms.py:49
msgid ""
"Keep a maximum of this many yearly snapshots. The default value is 0 "
"(disabled)."
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:27
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:12
msgid "Delete the following snapshots permanently?"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:31
-#: plinth/modules/snapshot/templates/snapshot_manage.html:43
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:39
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:16
+#: plinth/modules/snapshot/templates/snapshot_manage.html:28
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:24
msgid "Number"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:32
-#: plinth/modules/snapshot/templates/snapshot_manage.html:44
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:40
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:17
+#: plinth/modules/snapshot/templates/snapshot_manage.html:29
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:25
msgid "Date"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:52
-#: plinth/modules/snapshot/templates/snapshot_manage.html:37
-#: plinth/modules/snapshot/views.py:196
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:37
+#: plinth/modules/snapshot/templates/snapshot_manage.html:22
+#: plinth/modules/snapshot/views.py:175
msgid "Delete Snapshots"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_manage.html:33
+#: plinth/modules/snapshot/templates/snapshot_manage.html:18
msgid "Create Snapshot"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_manage.html:46
+#: plinth/modules/snapshot/templates/snapshot_manage.html:31
msgid "Rollback"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_manage.html:57
+#: plinth/modules/snapshot/templates/snapshot_manage.html:42
msgid "active"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_manage.html:66
+#: plinth/modules/snapshot/templates/snapshot_manage.html:51
#, python-format
msgid "Rollback to snapshot #%(number)s"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_not_supported.html:26
+#: plinth/modules/snapshot/templates/snapshot_not_supported.html:11
#, python-format
msgid ""
"Your have a filesystem of type %(fs_type)s. Snapshots are "
"currently only available on %(types_supported)s filesystems."
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:27
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:12
msgid "Roll back the system to this snapshot?"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:30
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:15
msgid ""
"A new snapshot with the current state of the file system will be "
"automatically created. You will be able to undo a rollback by reverting to "
"the newly created snapshot."
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:57
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:42
#, python-format
msgid "Rollback to Snapshot #%(number)s"
msgstr ""
-#: plinth/modules/snapshot/views.py:45
+#: plinth/modules/snapshot/views.py:30
msgid "Manage Snapshots"
msgstr ""
-#: plinth/modules/snapshot/views.py:98
+#: plinth/modules/snapshot/views.py:79
msgid "Created snapshot."
msgstr ""
-#: plinth/modules/snapshot/views.py:156
+#: plinth/modules/snapshot/views.py:135
msgid "Storage snapshots configuration updated"
msgstr ""
-#: plinth/modules/snapshot/views.py:160 plinth/modules/tor/views.py:79
+#: plinth/modules/snapshot/views.py:139 plinth/modules/tor/views.py:60
#, python-brace-format
msgid "Action error: {0} [{1}] [{2}]"
msgstr ""
-#: plinth/modules/snapshot/views.py:175
+#: plinth/modules/snapshot/views.py:154
msgid "Deleted all snapshots"
msgstr ""
-#: plinth/modules/snapshot/views.py:179
+#: plinth/modules/snapshot/views.py:158
msgid "Deleted selected snapshots"
msgstr ""
-#: plinth/modules/snapshot/views.py:184
+#: plinth/modules/snapshot/views.py:163
msgid "Snapshot is currently in use. Please try again later."
msgstr ""
-#: plinth/modules/snapshot/views.py:207
+#: plinth/modules/snapshot/views.py:186
#, python-brace-format
msgid "Rolled back to snapshot #{number}."
msgstr ""
-#: plinth/modules/snapshot/views.py:210
+#: plinth/modules/snapshot/views.py:189
msgid "The system must be restarted to complete the rollback."
msgstr ""
-#: plinth/modules/snapshot/views.py:222
+#: plinth/modules/snapshot/views.py:201
msgid "Rollback to Snapshot"
msgstr ""
-#: plinth/modules/ssh/__init__.py:43
-msgid "Secure Shell (SSH) Server"
-msgstr ""
-
-#: plinth/modules/ssh/__init__.py:46
+#: plinth/modules/ssh/__init__.py:29
msgid ""
"A Secure Shell server uses the secure shell protocol to accept connections "
"from remote computers. An authorized remote computer can perform "
@@ -4757,56 +4854,56 @@ msgid ""
"connections."
msgstr ""
-#: plinth/modules/ssh/forms.py:30
+#: plinth/modules/ssh/__init__.py:50
+msgid "Secure Shell (SSH) Server"
+msgstr ""
+
+#: plinth/modules/ssh/forms.py:15
msgid "Disable password authentication"
msgstr ""
-#: plinth/modules/ssh/forms.py:31
+#: plinth/modules/ssh/forms.py:16
msgid ""
"Improves security by preventing password guessing. Ensure that you have "
"setup SSH keys in your administrator user account before enabling this "
"option."
msgstr ""
-#: plinth/modules/ssh/templates/ssh.html:26
+#: plinth/modules/ssh/templates/ssh.html:11
msgid "Server Fingerprints"
msgstr ""
-#: plinth/modules/ssh/templates/ssh.html:29
+#: plinth/modules/ssh/templates/ssh.html:14
msgid ""
"When connecting to the server, ensure that the fingerprint shown by the SSH "
"client matches one of these fingerprints."
msgstr ""
-#: plinth/modules/ssh/templates/ssh.html:38
+#: plinth/modules/ssh/templates/ssh.html:23
msgid "Algorithm"
msgstr ""
-#: plinth/modules/ssh/templates/ssh.html:39
+#: plinth/modules/ssh/templates/ssh.html:24
msgid "Fingerprint"
msgstr ""
-#: plinth/modules/ssh/views.py:66
+#: plinth/modules/ssh/views.py:48
msgid "SSH authentication with password disabled."
msgstr ""
-#: plinth/modules/ssh/views.py:69
+#: plinth/modules/ssh/views.py:51
msgid "SSH authentication with password enabled."
msgstr ""
-#: plinth/modules/sso/__init__.py:30
+#: plinth/modules/sso/__init__.py:33
msgid "Single Sign On"
msgstr ""
-#: plinth/modules/sso/templates/login.html:35
+#: plinth/modules/sso/templates/login.html:20
msgid "Login"
msgstr ""
-#: plinth/modules/storage/__init__.py:39 plinth/modules/storage/__init__.py:331
-msgid "Storage"
-msgstr ""
-
-#: plinth/modules/storage/__init__.py:47
+#: plinth/modules/storage/__init__.py:30
#, python-brace-format
msgid ""
"This module allows you to manage storage media attached to your {box_name}. "
@@ -4814,145 +4911,149 @@ msgid ""
"media, expand the root partition etc."
msgstr ""
-#: plinth/modules/storage/__init__.py:224
+#: plinth/modules/storage/__init__.py:52 plinth/modules/storage/__init__.py:318
+msgid "Storage"
+msgstr ""
+
+#: plinth/modules/storage/__init__.py:211
#, python-brace-format
msgid "{disk_size:.1f} bytes"
msgstr ""
-#: plinth/modules/storage/__init__.py:228
+#: plinth/modules/storage/__init__.py:215
#, python-brace-format
msgid "{disk_size:.1f} KiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:232
+#: plinth/modules/storage/__init__.py:219
#, python-brace-format
msgid "{disk_size:.1f} MiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:236
+#: plinth/modules/storage/__init__.py:223
#, python-brace-format
msgid "{disk_size:.1f} GiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:239
+#: plinth/modules/storage/__init__.py:226
#, python-brace-format
msgid "{disk_size:.1f} TiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:246
+#: plinth/modules/storage/__init__.py:233
msgid "The operation failed."
msgstr ""
-#: plinth/modules/storage/__init__.py:248
+#: plinth/modules/storage/__init__.py:235
msgid "The operation was cancelled."
msgstr ""
-#: plinth/modules/storage/__init__.py:250
+#: plinth/modules/storage/__init__.py:237
msgid "The device is already unmounting."
msgstr ""
-#: plinth/modules/storage/__init__.py:252
+#: plinth/modules/storage/__init__.py:239
msgid "The operation is not supported due to missing driver/tool support."
msgstr ""
-#: plinth/modules/storage/__init__.py:255
+#: plinth/modules/storage/__init__.py:242
msgid "The operation timed out."
msgstr ""
-#: plinth/modules/storage/__init__.py:257
+#: plinth/modules/storage/__init__.py:244
msgid "The operation would wake up a disk that is in a deep-sleep state."
msgstr ""
-#: plinth/modules/storage/__init__.py:260
+#: plinth/modules/storage/__init__.py:247
msgid "Attempting to unmount a device that is busy."
msgstr ""
-#: plinth/modules/storage/__init__.py:262
+#: plinth/modules/storage/__init__.py:249
msgid "The operation has already been cancelled."
msgstr ""
-#: plinth/modules/storage/__init__.py:268
+#: plinth/modules/storage/__init__.py:255
msgid "Not authorized to perform the requested operation."
msgstr ""
-#: plinth/modules/storage/__init__.py:270
+#: plinth/modules/storage/__init__.py:257
msgid "The device is already mounted."
msgstr ""
-#: plinth/modules/storage/__init__.py:272
+#: plinth/modules/storage/__init__.py:259
msgid "The device is not mounted."
msgstr ""
-#: plinth/modules/storage/__init__.py:275
+#: plinth/modules/storage/__init__.py:262
msgid "Not permitted to use the requested option."
msgstr ""
-#: plinth/modules/storage/__init__.py:278
+#: plinth/modules/storage/__init__.py:265
msgid "The device is mounted by another user."
msgstr ""
-#: plinth/modules/storage/__init__.py:326
+#: plinth/modules/storage/__init__.py:313
#, no-python-format, python-brace-format
msgid "Low space on system partition: {percent_used}% used, {free_space} free."
msgstr ""
-#: plinth/modules/storage/__init__.py:328
+#: plinth/modules/storage/__init__.py:315
msgid "Low disk space"
msgstr ""
-#: plinth/modules/storage/forms.py:79
+#: plinth/modules/storage/forms.py:64
msgid "Invalid directory name."
msgstr ""
-#: plinth/modules/storage/forms.py:97
+#: plinth/modules/storage/forms.py:82
msgid "Directory does not exist."
msgstr ""
-#: plinth/modules/storage/forms.py:99
+#: plinth/modules/storage/forms.py:84
msgid "Path is not a directory."
msgstr ""
-#: plinth/modules/storage/forms.py:102
+#: plinth/modules/storage/forms.py:87
msgid "Directory is not readable by the user."
msgstr ""
-#: plinth/modules/storage/forms.py:105
+#: plinth/modules/storage/forms.py:90
msgid "Directory is not writable by the user."
msgstr ""
-#: plinth/modules/storage/forms.py:110
+#: plinth/modules/storage/forms.py:95
msgid "Directory"
msgstr ""
-#: plinth/modules/storage/forms.py:113
+#: plinth/modules/storage/forms.py:98
msgid "Subdirectory (optional)"
msgstr ""
-#: plinth/modules/storage/forms.py:160
+#: plinth/modules/storage/forms.py:145
msgid "Share"
msgstr ""
-#: plinth/modules/storage/forms.py:168
+#: plinth/modules/storage/forms.py:153
msgid "Other directory (specify below)"
msgstr ""
-#: plinth/modules/storage/templates/storage.html:35
+#: plinth/modules/storage/templates/storage.html:20
msgid "The following storage devices are in use:"
msgstr ""
-#: plinth/modules/storage/templates/storage.html:41
+#: plinth/modules/storage/templates/storage.html:26
msgid "Label"
msgstr ""
-#: plinth/modules/storage/templates/storage.html:42
+#: plinth/modules/storage/templates/storage.html:27
msgid "Mount Point"
msgstr ""
-#: plinth/modules/storage/templates/storage.html:90
+#: plinth/modules/storage/templates/storage.html:75
msgid "Partition Expansion"
msgstr ""
-#: plinth/modules/storage/templates/storage.html:92
+#: plinth/modules/storage/templates/storage.html:77
#, python-format
msgid ""
"There is %(expandable_root_size)s of unallocated space available after your "
@@ -4960,13 +5061,13 @@ msgid ""
"will provide you additional free space to store your files."
msgstr ""
-#: plinth/modules/storage/templates/storage.html:102
-#: plinth/modules/storage/templates/storage_expand.html:39
-#: plinth/modules/storage/views.py:76
+#: plinth/modules/storage/templates/storage.html:87
+#: plinth/modules/storage/templates/storage_expand.html:24
+#: plinth/modules/storage/views.py:58
msgid "Expand Root Partition"
msgstr ""
-#: plinth/modules/storage/templates/storage_expand.html:29
+#: plinth/modules/storage/templates/storage_expand.html:14
#, python-format
msgid ""
"Please backup your data before proceeding. After this operation, "
@@ -4974,39 +5075,30 @@ msgid ""
"root partition."
msgstr ""
-#: plinth/modules/storage/views.py:88
+#: plinth/modules/storage/views.py:70
#, python-brace-format
msgid "Error expanding partition: {exception}"
msgstr ""
-#: plinth/modules/storage/views.py:91
+#: plinth/modules/storage/views.py:73
msgid "Partition expanded successfully."
msgstr ""
-#: plinth/modules/storage/views.py:109
+#: plinth/modules/storage/views.py:91
#, python-brace-format
msgid "{drive_vendor} {drive_model} can be safely unplugged."
msgstr ""
-#: plinth/modules/storage/views.py:113
+#: plinth/modules/storage/views.py:95
msgid "Device can be safely unplugged."
msgstr ""
-#: plinth/modules/storage/views.py:123
+#: plinth/modules/storage/views.py:105
#, python-brace-format
msgid "Error ejecting device: {error_message}"
msgstr ""
-#: plinth/modules/syncthing/__init__.py:40
-#: plinth/modules/syncthing/manifest.py:28
-msgid "Syncthing"
-msgstr ""
-
-#: plinth/modules/syncthing/__init__.py:44
-msgid "File Synchronization"
-msgstr ""
-
-#: plinth/modules/syncthing/__init__.py:47
+#: plinth/modules/syncthing/__init__.py:26
msgid ""
"Syncthing is an application to synchronize files across multiple devices, e."
"g. your desktop computer and mobile phone. Creation, modification, or "
@@ -5014,7 +5106,7 @@ msgid ""
"other devices that also run Syncthing."
msgstr ""
-#: plinth/modules/syncthing/__init__.py:52
+#: plinth/modules/syncthing/__init__.py:31
#, python-brace-format
msgid ""
"Running Syncthing on {box_name} provides an extra synchronization point for "
@@ -5025,19 +5117,20 @@ msgid ""
"{box_name} is only available for users belonging to the \"admin\" group."
msgstr ""
-#: plinth/modules/syncthing/__init__.py:63
+#: plinth/modules/syncthing/__init__.py:40
msgid "Administer Syncthing application"
msgstr ""
-#: plinth/modules/tahoe/__init__.py:43
-msgid "Tahoe-LAFS"
+#: plinth/modules/syncthing/__init__.py:54
+#: plinth/modules/syncthing/manifest.py:13
+msgid "Syncthing"
msgstr ""
-#: plinth/modules/tahoe/__init__.py:47
-msgid "Distributed File Storage"
+#: plinth/modules/syncthing/__init__.py:55
+msgid "File Synchronization"
msgstr ""
-#: plinth/modules/tahoe/__init__.py:134
+#: plinth/modules/tahoe/__init__.py:30
msgid ""
"Tahoe-LAFS is a decentralized secure file storage system. It uses provider "
"independent security to store files over a distributed network of storage "
@@ -5045,7 +5138,7 @@ msgid ""
"remaining nodes."
msgstr ""
-#: plinth/modules/tahoe/__init__.py:139
+#: plinth/modules/tahoe/__init__.py:35
#, python-brace-format
msgid ""
"This {box_name} hosts a storage node and an introducer by default. "
@@ -5053,7 +5146,15 @@ msgid ""
"other storage nodes."
msgstr ""
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:33
+#: plinth/modules/tahoe/__init__.py:66
+msgid "Tahoe-LAFS"
+msgstr ""
+
+#: plinth/modules/tahoe/__init__.py:68
+msgid "Distributed File Storage"
+msgstr ""
+
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:17
#, python-format
msgid ""
"The Tahoe-LAFS server domain is set to %(domain_name)s. Changing the "
@@ -5062,37 +5163,33 @@ msgid ""
"%(domain_name)s:5678\">https://%(domain_name)s:5678."
msgstr ""
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:55
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:39
msgid "Local introducer"
msgstr ""
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:43
#: plinth/modules/tahoe/templates/tahoe-post-setup.html:59
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:75
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:92
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:76
msgid "Pet Name"
msgstr ""
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:72
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:56
msgid "Add new introducer"
msgstr ""
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:83
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:67
msgid "Add"
msgstr ""
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:88
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:72
msgid "Connected introducers"
msgstr ""
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:105
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:89
msgid "Remove"
msgstr ""
-#: plinth/modules/tor/__init__.py:47
-msgid "Tor"
-msgstr ""
-
-#: plinth/modules/tor/__init__.py:52
+#: plinth/modules/tor/__init__.py:33
msgid ""
"Tor is an anonymous communication system. You can learn more about it from "
"the Tor Project website. For "
@@ -5101,76 +5198,80 @@ msgid ""
"\">Tor Browser."
msgstr ""
-#: plinth/modules/tor/__init__.py:83
+#: plinth/modules/tor/__init__.py:55
+msgid "Tor"
+msgstr ""
+
+#: plinth/modules/tor/__init__.py:66
msgid "Tor Onion Service"
msgstr ""
-#: plinth/modules/tor/__init__.py:87
+#: plinth/modules/tor/__init__.py:70
msgid "Tor Socks Proxy"
msgstr ""
-#: plinth/modules/tor/__init__.py:91
+#: plinth/modules/tor/__init__.py:74
msgid "Tor Bridge Relay"
msgstr ""
-#: plinth/modules/tor/__init__.py:112
+#: plinth/modules/tor/__init__.py:95
msgid "Tor relay port available"
msgstr ""
-#: plinth/modules/tor/__init__.py:122
+#: plinth/modules/tor/__init__.py:105
msgid "Obfs3 transport registered"
msgstr ""
-#: plinth/modules/tor/__init__.py:132
+#: plinth/modules/tor/__init__.py:115
msgid "Obfs4 transport registered"
msgstr ""
-#: plinth/modules/tor/__init__.py:225
+#: plinth/modules/tor/__init__.py:208
#, python-brace-format
msgid "Access URL {url} on tcp{kind} via Tor"
msgstr ""
-#: plinth/modules/tor/__init__.py:236
+#: plinth/modules/tor/__init__.py:219
#, python-brace-format
msgid "Confirm Tor usage at {url} on tcp{kind}"
msgstr ""
-#: plinth/modules/tor/forms.py:46
+#: plinth/modules/tor/forms.py:31
msgid ""
"Enter a valid bridge with this format: [transport] IP:ORPort [fingerprint]"
msgstr ""
-#: plinth/modules/tor/forms.py:88
+#: plinth/modules/tor/forms.py:73
msgid "Enable Tor"
msgstr ""
-#: plinth/modules/tor/forms.py:90
+#: plinth/modules/tor/forms.py:75
msgid "Use upstream bridges to connect to Tor network"
msgstr ""
-#: plinth/modules/tor/forms.py:92
+#: plinth/modules/tor/forms.py:77
msgid ""
"When enabled, the bridges configured below will be used to connect to the "
"Tor network. Use this option if your Internet Service Provider (ISP) blocks "
"or censors connections to the Tor Network. This will disable relay modes."
msgstr ""
-#: plinth/modules/tor/forms.py:97
+#: plinth/modules/tor/forms.py:82
msgid "Upstream bridges"
msgstr ""
-#: plinth/modules/tor/forms.py:99
+#: plinth/modules/tor/forms.py:84
msgid ""
"You can get some bridges from https://bridges.torproject.org/ and copy/paste the bridge information "
"here. Currently supported transports are none, obfs3, obfs4 and scamblesuit."
msgstr ""
-#: plinth/modules/tor/forms.py:105
+#: plinth/modules/tor/forms.py:90
msgid "Enable Tor relay"
msgstr ""
-#: plinth/modules/tor/forms.py:106
+#: plinth/modules/tor/forms.py:91
#, python-brace-format
msgid ""
"When enabled, your {box_name} will run a Tor relay and donate bandwidth to "
@@ -5178,22 +5279,22 @@ msgid ""
"download bandwidth."
msgstr ""
-#: plinth/modules/tor/forms.py:111
+#: plinth/modules/tor/forms.py:96
msgid "Enable Tor bridge relay"
msgstr ""
-#: plinth/modules/tor/forms.py:113
+#: plinth/modules/tor/forms.py:98
msgid ""
"When enabled, relay information is published in the Tor bridge database "
"instead of public Tor relay database making it harder to censor this node. "
"This helps others circumvent censorship."
msgstr ""
-#: plinth/modules/tor/forms.py:118
+#: plinth/modules/tor/forms.py:103
msgid "Enable Tor Hidden Service"
msgstr ""
-#: plinth/modules/tor/forms.py:120
+#: plinth/modules/tor/forms.py:105
#, python-brace-format
msgid ""
"A hidden service will allow {box_name} to provide selected services (such as "
@@ -5201,210 +5302,206 @@ msgid ""
"anonymity yet."
msgstr ""
-#: plinth/modules/tor/forms.py:125
+#: plinth/modules/tor/forms.py:110
msgid "Download software packages over Tor"
msgstr ""
-#: plinth/modules/tor/forms.py:126
+#: plinth/modules/tor/forms.py:111
msgid ""
"When enabled, software will be downloaded over the Tor network for "
"installations and upgrades. This adds a degree of privacy and security "
"during software downloads."
msgstr ""
-#: plinth/modules/tor/forms.py:141
+#: plinth/modules/tor/forms.py:126
msgid "Specify at least one upstream bridge to use upstream bridges."
msgstr ""
-#: plinth/modules/tor/manifest.py:29
+#: plinth/modules/tor/manifest.py:14
msgid "Tor Browser"
msgstr ""
-#: plinth/modules/tor/manifest.py:45
+#: plinth/modules/tor/manifest.py:30
msgid "Orbot: Proxy with Tor"
msgstr ""
-#: plinth/modules/tor/templates/tor.html:41
+#: plinth/modules/tor/templates/tor.html:26
msgid "Tor configuration is being updated"
msgstr ""
-#: plinth/modules/tor/templates/tor.html:50
+#: plinth/modules/tor/templates/tor.html:35
msgid "Onion Service"
msgstr ""
-#: plinth/modules/tor/templates/tor.html:52
+#: plinth/modules/tor/templates/tor.html:37
msgid "Ports"
msgstr ""
-#: plinth/modules/tor/templates/tor.html:82
+#: plinth/modules/tor/templates/tor.html:67
msgid "Relay"
msgstr ""
-#: plinth/modules/tor/templates/tor.html:84
+#: plinth/modules/tor/templates/tor.html:69
#, python-format
msgid ""
"If your %(box_name)s is behind a router or firewall, you should make sure "
"the following ports are open, and port-forwarded, if necessary:"
msgstr ""
-#: plinth/modules/tor/templates/tor.html:112
+#: plinth/modules/tor/templates/tor.html:97
msgid "SOCKS"
msgstr ""
-#: plinth/modules/tor/templates/tor.html:115
+#: plinth/modules/tor/templates/tor.html:100
#, python-format
msgid "A Tor SOCKS port is available on your %(box_name)s on TCP port 9050."
msgstr ""
-#: plinth/modules/transmission/__init__.py:41
-#: plinth/modules/transmission/manifest.py:24
-msgid "Transmission"
-msgstr ""
-
-#: plinth/modules/transmission/__init__.py:48
+#: plinth/modules/transmission/__init__.py:27
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/ttrss/__init__.py:43 plinth/modules/ttrss/manifest.py:34
-msgid "Tiny Tiny RSS"
+#: plinth/modules/transmission/__init__.py:48
+#: plinth/modules/transmission/manifest.py:9
+msgid "Transmission"
msgstr ""
-#: plinth/modules/ttrss/__init__.py:47
-msgid "News Feed Reader"
-msgstr ""
-
-#: plinth/modules/ttrss/__init__.py:50
+#: plinth/modules/ttrss/__init__.py:29
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:54
+#: plinth/modules/ttrss/__init__.py:33
#, python-brace-format
msgid ""
"When enabled, Tiny Tiny RSS can be accessed by any user with a {box_name} login."
msgstr ""
-#: plinth/modules/ttrss/__init__.py:58
+#: plinth/modules/ttrss/__init__.py:37
msgid ""
"When using a mobile or desktop application for Tiny Tiny RSS, use the URL /tt-rss-app for "
"connecting."
msgstr ""
-#: plinth/modules/ttrss/__init__.py:65
+#: plinth/modules/ttrss/__init__.py:42
msgid "Read and subscribe to news feeds"
msgstr ""
-#: plinth/modules/ttrss/manifest.py:25
+#: plinth/modules/ttrss/__init__.py:56 plinth/modules/ttrss/manifest.py:19
+msgid "Tiny Tiny RSS"
+msgstr ""
+
+#: plinth/modules/ttrss/__init__.py:57
+msgid "News Feed Reader"
+msgstr ""
+
+#: plinth/modules/ttrss/manifest.py:10
msgid "Tiny Tiny RSS (Fork)"
msgstr ""
-#: plinth/modules/upgrades/__init__.py:37 plinth/templates/setup.html:89
-msgid "Update"
-msgstr ""
-
-#: plinth/modules/upgrades/__init__.py:40
+#: plinth/modules/upgrades/__init__.py:23
msgid "Check for and apply the latest software and security updates."
msgstr ""
-#: plinth/modules/upgrades/__init__.py:84
+#: plinth/modules/upgrades/__init__.py:38 plinth/templates/setup.html:74
+msgid "Update"
+msgstr ""
+
+#: plinth/modules/upgrades/__init__.py:71
#, fuzzy
#| msgid "FreedomBox"
msgid "FreedomBox Updated"
msgstr "FreedomBox"
-#: plinth/modules/upgrades/forms.py:28
+#: plinth/modules/upgrades/forms.py:13
msgid "Enable auto-update"
msgstr ""
-#: plinth/modules/upgrades/forms.py:29
+#: plinth/modules/upgrades/forms.py:14
msgid "When enabled, FreedomBox automatically updates once a day."
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades-new-release.html:24
+#: plinth/modules/upgrades/templates/upgrades-new-release.html:9
#, python-format
msgid "%(box_name)s Updated"
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades-new-release.html:28
+#: plinth/modules/upgrades/templates/upgrades-new-release.html:13
#, python-format
msgid ""
"%(box_name)s has been updated to version %(version)s. See the release announcement."
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades-new-release.html:37
-#: plinth/templates/notifications.html:59
+#: plinth/modules/upgrades/templates/upgrades-new-release.html:22
+#: plinth/templates/notifications.html:44
msgid "Dismiss"
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades.html:45
+#: plinth/modules/upgrades/templates/upgrades.html:30
msgid "Update now"
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades.html:54
+#: plinth/modules/upgrades/templates/upgrades.html:39
msgid "Updating..."
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades.html:59
+#: plinth/modules/upgrades/templates/upgrades.html:44
msgid ""
"This may take a long time to complete. During an update, "
"you cannot install apps. Also, this web interface may be temporarily "
"unavailable and show an error. In that case, refresh the page to continue."
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades.html:73
+#: plinth/modules/upgrades/templates/upgrades.html:58
msgid "Toggle recent update logs"
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades_configure.html:26
-#: plinth/modules/upgrades/templates/upgrades_configure.html:27
-#: plinth/modules/upgrades/views.py:107
+#: plinth/modules/upgrades/templates/upgrades_configure.html:11
+#: plinth/modules/upgrades/templates/upgrades_configure.html:12
+#: plinth/modules/upgrades/views.py:89
msgid "Manual update"
msgstr ""
-#: plinth/modules/upgrades/views.py:66
+#: plinth/modules/upgrades/views.py:48
#, python-brace-format
msgid "Error when configuring unattended-upgrades: {error}"
msgstr ""
-#: plinth/modules/upgrades/views.py:70
+#: plinth/modules/upgrades/views.py:52
msgid "Automatic upgrades enabled"
msgstr ""
-#: plinth/modules/upgrades/views.py:73
+#: plinth/modules/upgrades/views.py:55
msgid "Automatic upgrades disabled"
msgstr ""
-#: plinth/modules/upgrades/views.py:75
+#: plinth/modules/upgrades/views.py:57
msgid "Settings unchanged"
msgstr ""
-#: plinth/modules/upgrades/views.py:101
+#: plinth/modules/upgrades/views.py:83
msgid "Upgrade process started."
msgstr ""
-#: plinth/modules/upgrades/views.py:104
+#: plinth/modules/upgrades/views.py:86
msgid "Starting upgrade failed."
msgstr ""
-#: plinth/modules/users/__init__.py:51
-msgid "Users and Groups"
-msgstr ""
-
-#: plinth/modules/users/__init__.py:54
+#: plinth/modules/users/__init__.py:37
msgid ""
"Create and managed user accounts. These accounts serve as centralized "
"authentication mechanism for most apps. Some apps further require a user "
"account to be part of a group to authorize the user to access the app."
msgstr ""
-#: plinth/modules/users/__init__.py:59
+#: plinth/modules/users/__init__.py:42
#, python-brace-format
msgid ""
"Any user may login to {box_name} web interface to see a list of apps "
@@ -5412,33 +5509,37 @@ msgid ""
"group may alter apps or system settings."
msgstr ""
-#: plinth/modules/users/__init__.py:128
+#: plinth/modules/users/__init__.py:64
+msgid "Users and Groups"
+msgstr ""
+
+#: plinth/modules/users/__init__.py:115
#, python-brace-format
msgid "Check LDAP entry \"{search_item}\""
msgstr ""
-#: plinth/modules/users/forms.py:43
+#: plinth/modules/users/forms.py:28
msgid "Access to all services and system settings"
msgstr ""
-#: plinth/modules/users/forms.py:59
+#: plinth/modules/users/forms.py:44
msgid "Username is taken or is reserved."
msgstr ""
-#: plinth/modules/users/forms.py:87
+#: plinth/modules/users/forms.py:72
msgid "Enter a valid username."
msgstr ""
-#: plinth/modules/users/forms.py:93
+#: plinth/modules/users/forms.py:78
msgid ""
"Required. 150 characters or fewer. English letters, digits and @/./-/_ only."
msgstr ""
-#: plinth/modules/users/forms.py:106 plinth/modules/users/forms.py:222
+#: plinth/modules/users/forms.py:91 plinth/modules/users/forms.py:207
msgid "Permissions"
msgstr ""
-#: plinth/modules/users/forms.py:109
+#: plinth/modules/users/forms.py:94
msgid ""
"Select which services should be available to the new user. The user will be "
"able to log in to services that support single sign-on through LDAP, if they "
@@ -5447,187 +5548,182 @@ msgid ""
"SSH and have administrative privileges (sudo)."
msgstr ""
-#: plinth/modules/users/forms.py:148 plinth/modules/users/forms.py:372
+#: plinth/modules/users/forms.py:133 plinth/modules/users/forms.py:357
msgid "Creating LDAP user failed."
msgstr ""
-#: plinth/modules/users/forms.py:159
+#: plinth/modules/users/forms.py:144
#, python-brace-format
msgid "Failed to add new user to {group} group."
msgstr ""
-#: plinth/modules/users/forms.py:173
+#: plinth/modules/users/forms.py:158
msgid "Authorized SSH Keys"
msgstr ""
-#: plinth/modules/users/forms.py:175
+#: plinth/modules/users/forms.py:160
msgid ""
"Setting an SSH public key will allow this user to securely log in to the "
"system without using a password. You may enter multiple keys, one on each "
"line. Blank lines and lines starting with # will be ignored."
msgstr ""
-#: plinth/modules/users/forms.py:259
+#: plinth/modules/users/forms.py:244
msgid "Renaming LDAP user failed."
msgstr ""
-#: plinth/modules/users/forms.py:271
+#: plinth/modules/users/forms.py:256
msgid "Failed to remove user from group."
msgstr ""
-#: plinth/modules/users/forms.py:282
+#: plinth/modules/users/forms.py:267
msgid "Failed to add user to group."
msgstr ""
-#: plinth/modules/users/forms.py:291
+#: plinth/modules/users/forms.py:276
msgid "Unable to set SSH keys."
msgstr ""
-#: plinth/modules/users/forms.py:306
+#: plinth/modules/users/forms.py:291
msgid "Failed to change user status."
msgstr ""
-#: plinth/modules/users/forms.py:314
+#: plinth/modules/users/forms.py:299
msgid "Cannot delete the only administrator in the system."
msgstr ""
-#: plinth/modules/users/forms.py:346
+#: plinth/modules/users/forms.py:331
msgid "Changing LDAP user password failed."
msgstr ""
-#: plinth/modules/users/forms.py:381
+#: plinth/modules/users/forms.py:366
msgid "Failed to add new user to admin group."
msgstr ""
-#: plinth/modules/users/forms.py:398
+#: plinth/modules/users/forms.py:383
msgid "Failed to restrict console access."
msgstr ""
-#: plinth/modules/users/forms.py:410
+#: plinth/modules/users/forms.py:395
msgid "User account created, you are now logged in"
msgstr ""
-#: plinth/modules/users/templates/users_change_password.html:26
+#: plinth/modules/users/templates/users_change_password.html:11
#, python-format
msgid "Change Password for %(username)s"
msgstr ""
-#: plinth/modules/users/templates/users_change_password.html:36
+#: plinth/modules/users/templates/users_change_password.html:21
msgid "Save Password"
msgstr ""
-#: plinth/modules/users/templates/users_create.html:32
-#: plinth/modules/users/templates/users_list.html:42
-#: plinth/modules/users/templates/users_list.html:44
-#: plinth/modules/users/views.py:57
+#: plinth/modules/users/templates/users_create.html:17
+#: plinth/modules/users/templates/users_list.html:27
+#: plinth/modules/users/templates/users_list.html:29
+#: plinth/modules/users/views.py:42
msgid "Create User"
msgstr ""
-#: plinth/modules/users/templates/users_delete.html:26
-#: plinth/modules/users/views.py:139
+#: plinth/modules/users/templates/users_delete.html:11
+#: plinth/modules/users/views.py:121
msgid "Delete User"
msgstr ""
-#: plinth/modules/users/templates/users_delete.html:29
+#: plinth/modules/users/templates/users_delete.html:14
#, python-format
msgid "Delete user %(username)s permanently?"
msgstr ""
-#: plinth/modules/users/templates/users_delete.html:38
+#: plinth/modules/users/templates/users_delete.html:23
#, python-format
msgid "Delete %(username)s"
msgstr ""
-#: plinth/modules/users/templates/users_firstboot.html:26
+#: plinth/modules/users/templates/users_firstboot.html:11
msgid "Administrator Account"
msgstr ""
-#: plinth/modules/users/templates/users_firstboot.html:29
+#: plinth/modules/users/templates/users_firstboot.html:14
msgid ""
"Choose a username and password to access this web interface. The password "
"can be changed later. This user will be granted administrative privileges. "
"Other users can be added later."
msgstr ""
-#: plinth/modules/users/templates/users_firstboot.html:42
+#: plinth/modules/users/templates/users_firstboot.html:27
msgid "Create Account"
msgstr ""
-#: plinth/modules/users/templates/users_list.html:38
-#: plinth/modules/users/views.py:74
+#: plinth/modules/users/templates/users_list.html:23
+#: plinth/modules/users/views.py:59
msgid "Users"
msgstr ""
-#: plinth/modules/users/templates/users_list.html:57
+#: plinth/modules/users/templates/users_list.html:42
#, python-format
msgid "Delete user %(username)s"
msgstr ""
-#: plinth/modules/users/templates/users_list.html:65
+#: plinth/modules/users/templates/users_list.html:50
#, python-format
msgid "Edit user %(username)s"
msgstr ""
-#: plinth/modules/users/templates/users_update.html:30
+#: plinth/modules/users/templates/users_update.html:15
#, python-format
msgid ""
"Use the change password form to "
"change the password."
msgstr ""
-#: plinth/modules/users/templates/users_update.html:42
-#: plinth/templates/language-selection.html:32
+#: plinth/modules/users/templates/users_update.html:27
+#: plinth/templates/language-selection.html:17
msgid "Save Changes"
msgstr ""
-#: plinth/modules/users/views.py:55
+#: plinth/modules/users/views.py:40
#, python-format
msgid "User %(username)s created."
msgstr ""
-#: plinth/modules/users/views.py:93
+#: plinth/modules/users/views.py:75
#, python-format
msgid "User %(username)s updated."
msgstr ""
-#: plinth/modules/users/views.py:94
+#: plinth/modules/users/views.py:76
msgid "Edit User"
msgstr ""
-#: plinth/modules/users/views.py:149
+#: plinth/modules/users/views.py:131
#, python-brace-format
msgid "User {user} deleted."
msgstr ""
-#: plinth/modules/users/views.py:156
+#: plinth/modules/users/views.py:138
msgid "Deleting LDAP user failed."
msgstr ""
-#: plinth/modules/users/views.py:165
+#: plinth/modules/users/views.py:147
msgid "Change Password"
msgstr ""
-#: plinth/modules/users/views.py:166
+#: plinth/modules/users/views.py:148
msgid "Password changed successfully."
msgstr ""
-#: plinth/modules/wireguard/__init__.py:38
-#: plinth/modules/wireguard/manifest.py:29
-msgid "WireGuard"
-msgstr ""
-
-#: plinth/modules/wireguard/__init__.py:43
+#: plinth/modules/wireguard/__init__.py:24
msgid "WireGuard is a fast, modern, secure VPN tunnel."
msgstr ""
-#: plinth/modules/wireguard/__init__.py:45
+#: plinth/modules/wireguard/__init__.py:26
#, python-brace-format
msgid ""
"It can be used to connect to a VPN provider which supports WireGuard, and to "
"route all outgoing traffic from {box_name} through the VPN."
msgstr ""
-#: plinth/modules/wireguard/__init__.py:49
+#: plinth/modules/wireguard/__init__.py:30
#, python-brace-format
msgid ""
"A second use case is to connect a mobile device to {box_name} while "
@@ -5635,59 +5731,64 @@ msgid ""
"securely relayed through {box_name}."
msgstr ""
-#: plinth/modules/wireguard/forms.py:47
+#: plinth/modules/wireguard/__init__.py:52
+#: plinth/modules/wireguard/manifest.py:14
+msgid "WireGuard"
+msgstr ""
+
+#: plinth/modules/wireguard/forms.py:32
msgid "Invalid key."
msgstr ""
-#: plinth/modules/wireguard/forms.py:76
-#: plinth/modules/wireguard/templates/wireguard.html:32
-#: plinth/modules/wireguard/templates/wireguard.html:89
-#: plinth/modules/wireguard/templates/wireguard_delete_server.html:38
+#: plinth/modules/wireguard/forms.py:61
+#: plinth/modules/wireguard/templates/wireguard.html:17
+#: plinth/modules/wireguard/templates/wireguard.html:74
+#: plinth/modules/wireguard/templates/wireguard_delete_server.html:23
msgid "Public Key"
msgstr ""
-#: plinth/modules/wireguard/forms.py:77
+#: plinth/modules/wireguard/forms.py:62
msgid ""
"Public key of the peer. Example: "
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs= ."
msgstr ""
-#: plinth/modules/wireguard/forms.py:85
+#: plinth/modules/wireguard/forms.py:70
msgid "Endpoint of the server"
msgstr ""
-#: plinth/modules/wireguard/forms.py:86
+#: plinth/modules/wireguard/forms.py:71
msgid ""
"Domain name and port in the form \"ip:port\". Example: demo.wireguard."
"com:12912 ."
msgstr ""
-#: plinth/modules/wireguard/forms.py:91
+#: plinth/modules/wireguard/forms.py:76
msgid "Public key of the server"
msgstr ""
-#: plinth/modules/wireguard/forms.py:92
+#: plinth/modules/wireguard/forms.py:77
msgid ""
"Provided by the server operator, a long string of characters. Example: "
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs= ."
msgstr ""
-#: plinth/modules/wireguard/forms.py:97
+#: plinth/modules/wireguard/forms.py:82
msgid "Client IP address provided by server"
msgstr ""
-#: plinth/modules/wireguard/forms.py:98
+#: plinth/modules/wireguard/forms.py:83
msgid ""
"IP address assigned to this machine on the VPN after connecting to the "
"endpoint. This value is usually provided by the server operator. Example: "
"192.168.0.10."
msgstr ""
-#: plinth/modules/wireguard/forms.py:104
+#: plinth/modules/wireguard/forms.py:89
msgid "Private key of this machine"
msgstr ""
-#: plinth/modules/wireguard/forms.py:105
+#: plinth/modules/wireguard/forms.py:90
msgid ""
"Optional. New public/private keys are generated if left blank. Public key "
"can then be provided to the server. This is the recommended way. However, "
@@ -5695,159 +5796,159 @@ msgid ""
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs= ."
msgstr ""
-#: plinth/modules/wireguard/forms.py:113
+#: plinth/modules/wireguard/forms.py:98
msgid "Pre-shared key"
msgstr ""
-#: plinth/modules/wireguard/forms.py:114
+#: plinth/modules/wireguard/forms.py:99
msgid ""
"Optional. A shared secret key provided by the server to add an additional "
"layer of security. Fill in only if provided. Example: "
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs=."
msgstr ""
-#: plinth/modules/wireguard/forms.py:120
+#: plinth/modules/wireguard/forms.py:105
msgid "Use this connection to send all outgoing traffic"
msgstr ""
-#: plinth/modules/wireguard/forms.py:122
+#: plinth/modules/wireguard/forms.py:107
msgid "Typically checked for a VPN service though which all traffic is sent."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:25
+#: plinth/modules/wireguard/templates/wireguard.html:10
#, fuzzy
#| msgid "Web Server"
msgid "As a Server"
msgstr "Уеб Сървър"
-#: plinth/modules/wireguard/templates/wireguard.html:27
+#: plinth/modules/wireguard/templates/wireguard.html:12
msgid "Peers allowed to connect to this server:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:33
+#: plinth/modules/wireguard/templates/wireguard.html:18
msgid "Allowed IPs"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:34
-#: plinth/modules/wireguard/templates/wireguard.html:90
+#: plinth/modules/wireguard/templates/wireguard.html:19
+#: plinth/modules/wireguard/templates/wireguard.html:75
msgid "Last Connected Time"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:53
+#: plinth/modules/wireguard/templates/wireguard.html:38
#, python-format
msgid "No peers configured to connect to this %(box_name)s yet."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:62
+#: plinth/modules/wireguard/templates/wireguard.html:47
#, python-format
msgid "Public key for this %(box_name)s:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:68
+#: plinth/modules/wireguard/templates/wireguard.html:53
msgid "Not configured yet."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:72
+#: plinth/modules/wireguard/templates/wireguard.html:57
msgid "Add a new peer"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:76
-#: plinth/modules/wireguard/views.py:69
+#: plinth/modules/wireguard/templates/wireguard.html:61
+#: plinth/modules/wireguard/views.py:51
msgid "Add Allowed Client"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:79
+#: plinth/modules/wireguard/templates/wireguard.html:64
msgid "As a Client"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:81
+#: plinth/modules/wireguard/templates/wireguard.html:66
#, python-format
msgid "Servers that %(box_name)s will connect to:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:88
-#: plinth/modules/wireguard/templates/wireguard_delete_server.html:34
+#: plinth/modules/wireguard/templates/wireguard.html:73
+#: plinth/modules/wireguard/templates/wireguard_delete_server.html:19
msgid "Endpoint"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:111
+#: plinth/modules/wireguard/templates/wireguard.html:96
msgid "No connections to remote servers are configured yet."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:119
+#: plinth/modules/wireguard/templates/wireguard.html:104
msgid "Add a new server"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:123
-#: plinth/modules/wireguard/views.py:178
+#: plinth/modules/wireguard/templates/wireguard.html:108
+#: plinth/modules/wireguard/views.py:160
msgid "Add Connection to Server"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_add_client.html:34
+#: plinth/modules/wireguard/templates/wireguard_add_client.html:19
msgid "Add Client"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_delete_client.html:29
+#: plinth/modules/wireguard/templates/wireguard_delete_client.html:14
msgid "Are you sure that you want to delete this client?"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_delete_server.html:29
+#: plinth/modules/wireguard/templates/wireguard_delete_server.html:14
msgid "Are you sure that you want to delete this server?"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_edit_client.html:34
+#: plinth/modules/wireguard/templates/wireguard_edit_client.html:19
msgid "Update Client"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_edit_server.html:34
+#: plinth/modules/wireguard/templates/wireguard_edit_server.html:19
msgid "Update Connection"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:27
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:12
#, python-format
msgid ""
"%(box_name)s will allow this client to connect to it. Ensure that the client "
"is configured with the following information."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:35
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:20
msgid "Client public key:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:39
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:24
msgid "IP address to use for client:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:43
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:46
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:28
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:31
msgid "Pre-shared key:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:47
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:32
msgid "Server endpoints:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:55
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:42
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:40
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:27
msgid "Server public key:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:65
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:64
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:50
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:49
msgid "Data transmitted:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:69
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:68
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:54
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:53
msgid "Data received:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:73
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:72
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:58
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:57
msgid "Latest handshake:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:29
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:14
#, python-format
msgid ""
"%(box_name)s will attempt to reach a WireGuard server with the following "
@@ -5855,133 +5956,133 @@ msgid ""
"public key and IP address."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:38
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:23
msgid "Server endpoint:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:50
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:35
msgid "Public key of this machine:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:54
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:39
msgid "IP address of this machine:"
msgstr ""
-#: plinth/modules/wireguard/views.py:64
+#: plinth/modules/wireguard/views.py:46
msgid "Added new client."
msgstr ""
-#: plinth/modules/wireguard/views.py:79 plinth/modules/wireguard/views.py:138
+#: plinth/modules/wireguard/views.py:61 plinth/modules/wireguard/views.py:120
msgid "Client with public key already exists"
msgstr ""
-#: plinth/modules/wireguard/views.py:92
+#: plinth/modules/wireguard/views.py:74
msgid "Allowed Client"
msgstr ""
-#: plinth/modules/wireguard/views.py:114
+#: plinth/modules/wireguard/views.py:96
msgid "Updated client."
msgstr ""
-#: plinth/modules/wireguard/views.py:119
+#: plinth/modules/wireguard/views.py:101
msgid "Modify Client"
msgstr ""
-#: plinth/modules/wireguard/views.py:152
+#: plinth/modules/wireguard/views.py:134
msgid "Delete Allowed Client"
msgstr ""
-#: plinth/modules/wireguard/views.py:161
+#: plinth/modules/wireguard/views.py:143
msgid "Client deleted."
msgstr ""
-#: plinth/modules/wireguard/views.py:163
+#: plinth/modules/wireguard/views.py:145
msgid "Client not found"
msgstr ""
-#: plinth/modules/wireguard/views.py:173
+#: plinth/modules/wireguard/views.py:155
msgid "Added new server."
msgstr ""
-#: plinth/modules/wireguard/views.py:194
+#: plinth/modules/wireguard/views.py:176
msgid "Connection to Server"
msgstr ""
-#: plinth/modules/wireguard/views.py:212
+#: plinth/modules/wireguard/views.py:194
msgid "Updated server."
msgstr ""
-#: plinth/modules/wireguard/views.py:217
+#: plinth/modules/wireguard/views.py:199
msgid "Modify Connection to Server"
msgstr ""
-#: plinth/modules/wireguard/views.py:254
+#: plinth/modules/wireguard/views.py:236
msgid "Delete Connection to Server"
msgstr ""
-#: plinth/modules/wireguard/views.py:274
+#: plinth/modules/wireguard/views.py:256
msgid "Server deleted."
msgstr ""
-#: plinth/network.py:42
+#: plinth/network.py:27
msgid "PPPoE"
msgstr ""
-#: plinth/network.py:43
+#: plinth/network.py:28
msgid "Generic"
msgstr ""
-#: plinth/package.py:137
+#: plinth/package.py:122
msgid "Error during installation"
msgstr ""
-#: plinth/package.py:159
+#: plinth/package.py:144
msgid "installing"
msgstr ""
-#: plinth/package.py:161
+#: plinth/package.py:146
msgid "downloading"
msgstr ""
-#: plinth/package.py:163
+#: plinth/package.py:148
msgid "media change"
msgstr ""
-#: plinth/package.py:165
+#: plinth/package.py:150
#, python-brace-format
msgid "configuration file: {file}"
msgstr ""
-#: plinth/templates/403.html:25
+#: plinth/templates/403.html:10
msgid "403 Forbidden"
msgstr ""
-#: plinth/templates/403.html:29
+#: plinth/templates/403.html:14
#, python-format
msgid "You don't have permission to access %(request_path)s on this server."
msgstr ""
-#: plinth/templates/404.html:25
+#: plinth/templates/404.html:10
msgid "404"
msgstr ""
-#: plinth/templates/404.html:28
+#: plinth/templates/404.html:13
#, python-format
msgid "Requested page %(request_path)s was not found."
msgstr ""
-#: plinth/templates/404.html:34
+#: plinth/templates/404.html:19
msgid ""
"If you believe this missing page should exist, please file a bug at the "
"FreedomBox Service (Plinth) project issue tracker."
msgstr ""
-#: plinth/templates/500.html:25
+#: plinth/templates/500.html:10
msgid "500"
msgstr ""
-#: plinth/templates/500.html:29
+#: plinth/templates/500.html:14
#, python-format
msgid ""
"This is an internal error and not something you caused or can fix. Please "
@@ -5990,137 +6091,137 @@ msgid ""
"href=\"%(status_log_url)s\">status log to the bug report."
msgstr ""
-#: plinth/templates/app.html:47
+#: plinth/templates/app-header.html:22
+msgid "Installation"
+msgstr ""
+
+#: plinth/templates/app.html:32
#, python-format
msgid "Service %(service_name)s is running."
msgstr ""
-#: plinth/templates/app.html:52
+#: plinth/templates/app.html:37
#, python-format
msgid "Service %(service_name)s is not running."
msgstr ""
-#: plinth/templates/base.html:50
+#: plinth/templates/base.html:35
#, python-format
msgid "Core functionality and web interface for %(box_name)s"
msgstr ""
-#: plinth/templates/base.html:96
+#: plinth/templates/base.html:81
msgid "Toggle navigation"
msgstr ""
-#: plinth/templates/base.html:120 plinth/templates/base.html:123
+#: plinth/templates/base.html:105 plinth/templates/base.html:108
msgid "Home"
msgstr ""
-#: plinth/templates/base.html:128 plinth/templates/base.html:132
+#: plinth/templates/base.html:113 plinth/templates/base.html:117
msgid "Apps"
msgstr ""
-#: plinth/templates/base.html:137 plinth/templates/base.html:141
+#: plinth/templates/base.html:122 plinth/templates/base.html:126
msgid "System"
msgstr ""
-#: plinth/templates/base.html:173 plinth/templates/base.html:174
+#: plinth/templates/base.html:158 plinth/templates/base.html:159
msgid "Change password"
msgstr ""
-#: plinth/templates/base.html:181 plinth/templates/base.html:182
+#: plinth/templates/base.html:166 plinth/templates/base.html:167
msgid "Restart"
msgstr ""
-#: plinth/templates/base.html:187 plinth/templates/base.html:188
+#: plinth/templates/base.html:172 plinth/templates/base.html:173
msgid "Shut down"
msgstr ""
-#: plinth/templates/base.html:195 plinth/templates/base.html:196
-#: plinth/templates/base.html:220 plinth/templates/base.html:222
+#: plinth/templates/base.html:180 plinth/templates/base.html:181
+#: plinth/templates/base.html:205 plinth/templates/base.html:207
msgid "Log out"
msgstr ""
-#: plinth/templates/base.html:204 plinth/templates/base.html:207
+#: plinth/templates/base.html:189 plinth/templates/base.html:192
msgid "Select language"
msgstr ""
-#: plinth/templates/base.html:212 plinth/templates/base.html:214
+#: plinth/templates/base.html:197 plinth/templates/base.html:199
msgid "Log in"
msgstr ""
-#: plinth/templates/clients.html:32
+#: plinth/templates/clients.html:17
msgid "Web"
msgstr ""
-#: plinth/templates/clients.html:57
+#: plinth/templates/clients.html:42
msgid "Desktop"
msgstr ""
-#: plinth/templates/clients.html:68
+#: plinth/templates/clients.html:53
msgid "GNU/Linux"
msgstr ""
-#: plinth/templates/clients.html:70
+#: plinth/templates/clients.html:55
msgid "Windows"
msgstr ""
-#: plinth/templates/clients.html:72
+#: plinth/templates/clients.html:57
msgid "macOS"
msgstr ""
-#: plinth/templates/clients.html:88
+#: plinth/templates/clients.html:73
msgid "Mobile"
msgstr ""
-#: plinth/templates/clients.html:99
+#: plinth/templates/clients.html:84
msgid "Play Store"
msgstr ""
-#: plinth/templates/clients.html:101
+#: plinth/templates/clients.html:86
msgid "F-Droid"
msgstr ""
-#: plinth/templates/clients.html:103
+#: plinth/templates/clients.html:88
msgid "App Store"
msgstr ""
-#: plinth/templates/clients.html:119
+#: plinth/templates/clients.html:104
msgid "Package"
msgstr ""
-#: plinth/templates/clients.html:126
+#: plinth/templates/clients.html:111
msgid "Debian:"
msgstr ""
-#: plinth/templates/clients.html:129
+#: plinth/templates/clients.html:114
msgid "Homebrew:"
msgstr ""
-#: plinth/templates/clients.html:132
+#: plinth/templates/clients.html:117
msgid "RPM:"
msgstr ""
-#: plinth/templates/first_setup.html:39
+#: plinth/templates/first_setup.html:24
#, python-format
msgid ""
"Please wait for %(box_name)s to finish installation. You can start using "
"your %(box_name)s once it is done."
msgstr ""
-#: plinth/templates/header.html:36
-msgid "Installation"
-msgstr ""
-
-#: plinth/templates/index.html:37
+#: plinth/templates/index.html:22
#, python-format
msgid ""
"Enable some applications to add shortcuts to "
"this page."
msgstr ""
-#: plinth/templates/index.html:59
+#: plinth/templates/index.html:44
msgid "Configure »"
msgstr ""
-#: plinth/templates/index.html:115
+#: plinth/templates/index.html:100
#, python-format
msgid ""
"%(box_name)s, a Debian pure blend, is a 100%% free software self-hosting web "
@@ -6128,7 +6229,7 @@ msgid ""
"communication tools respecting your privacy and data ownership."
msgstr ""
-#: plinth/templates/index.html:124
+#: plinth/templates/index.html:109
#, python-format
msgid ""
"This portal is a part of the %(box_name)s web interface. %(box_name)s is "
@@ -6136,55 +6237,55 @@ msgid ""
"Version 3 or later."
msgstr ""
-#: plinth/templates/index.html:144
+#: plinth/templates/index.html:129
msgid "Homepage"
msgstr ""
-#: plinth/templates/index.html:147
+#: plinth/templates/index.html:132
msgid "Source Code"
msgstr ""
-#: plinth/templates/index.html:150
+#: plinth/templates/index.html:135
msgid "Donate"
msgstr ""
-#: plinth/templates/index.html:154
+#: plinth/templates/index.html:139
msgid "FreedomBox Foundation"
msgstr ""
-#: plinth/templates/index.html:161
+#: plinth/templates/index.html:146
msgid "IRC Chatroom"
msgstr ""
-#: plinth/templates/index.html:166
+#: plinth/templates/index.html:151
msgid "Mailing list"
msgstr ""
-#: plinth/templates/internal-zone.html:26
+#: plinth/templates/internal-zone.html:11
#, python-format
msgid "%(service_name)s is available only on internal networks."
msgstr ""
-#: plinth/templates/internal-zone.html:32
+#: plinth/templates/internal-zone.html:17
msgid "Currently there are no network interfaces configured as internal."
msgstr ""
-#: plinth/templates/internal-zone.html:34
+#: plinth/templates/internal-zone.html:19
#, python-format
msgid ""
"Currently the following network interfaces are configured as internal: "
"%(interface_list)s"
msgstr ""
-#: plinth/templates/notifications-dropdown.html:26
+#: plinth/templates/notifications-dropdown.html:11
msgid "Notifications"
msgstr ""
-#: plinth/templates/port-forwarding-info.html:23
+#: plinth/templates/port-forwarding-info.html:8
msgid "Port Forwarding"
msgstr ""
-#: plinth/templates/port-forwarding-info.html:26
+#: plinth/templates/port-forwarding-info.html:11
#, python-format
msgid ""
"If your FreedomBox is behind a router, you will need to set up port "
@@ -6192,62 +6293,62 @@ msgid ""
"%(service_name)s:"
msgstr ""
-#: plinth/templates/setup.html:51
+#: plinth/templates/setup.html:36
msgid "Install this application?"
msgstr ""
-#: plinth/templates/setup.html:55
+#: plinth/templates/setup.html:40
msgid "This application needs an update. Update now?"
msgstr ""
-#: plinth/templates/setup.html:66
+#: plinth/templates/setup.html:51
msgid ""
"Another installation or upgrade is already running. Please wait for a few "
"moments before trying again."
msgstr ""
-#: plinth/templates/setup.html:73
+#: plinth/templates/setup.html:58
msgid "This application is currently not available in your distribution."
msgstr ""
-#: plinth/templates/setup.html:87
+#: plinth/templates/setup.html:72
msgid "Install"
msgstr ""
-#: plinth/templates/setup.html:98
+#: plinth/templates/setup.html:83
msgid "Performing pre-install operation"
msgstr ""
-#: plinth/templates/setup.html:102
+#: plinth/templates/setup.html:87
msgid "Performing post-install operation"
msgstr ""
-#: plinth/templates/setup.html:107
+#: plinth/templates/setup.html:92
#, python-format
msgid "Installing %(package_names)s: %(status)s"
msgstr ""
-#: plinth/templates/setup.html:117
+#: plinth/templates/setup.html:102
#, python-format
msgid "%(percentage)s%% complete"
msgstr ""
-#: plinth/templates/toolbar.html:38
+#: plinth/templates/toolbar.html:23
msgid "Launch web client"
msgstr ""
-#: plinth/templates/toolbar.html:47
+#: plinth/templates/toolbar.html:32
msgid "Client Apps"
msgstr ""
-#: plinth/views.py:179
+#: plinth/views.py:189
msgid "Application enabled"
msgstr ""
-#: plinth/views.py:182
+#: plinth/views.py:192
msgid "Application disabled"
msgstr ""
-#: plinth/web_framework.py:190
+#: plinth/web_framework.py:107
msgid "Gujarati"
msgstr ""
diff --git a/plinth/locale/bn/LC_MESSAGES/django.po b/plinth/locale/bn/LC_MESSAGES/django.po
index 50bbe65fa..c6ef20dd8 100644
--- a/plinth/locale/bn/LC_MESSAGES/django.po
+++ b/plinth/locale/bn/LC_MESSAGES/django.po
@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2020-02-14 21:26+0200\n"
+"POT-Creation-Date: 2020-02-24 19:12-0500\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME
SSH key-based authentication is not yet "
"possible."
msgstr ""
-#: plinth/modules/backups/forms.py:224
+#: plinth/modules/backups/forms.py:209
msgid "Remote backup repository already exists."
msgstr ""
-#: plinth/modules/backups/forms.py:230
+#: plinth/modules/backups/forms.py:215
msgid "Select verified SSH public key"
msgstr ""
-#: plinth/modules/backups/repository.py:48
+#: plinth/modules/backups/repository.py:33
msgid ""
"Connection refused - make sure you provided correct credentials and the "
"server is running."
msgstr ""
-#: plinth/modules/backups/repository.py:55
+#: plinth/modules/backups/repository.py:40
msgid "Connection refused"
msgstr ""
-#: plinth/modules/backups/repository.py:62
+#: plinth/modules/backups/repository.py:47
msgid "Repository not found"
msgstr ""
-#: plinth/modules/backups/repository.py:67
+#: plinth/modules/backups/repository.py:52
msgid "Incorrect encryption passphrase"
msgstr ""
-#: plinth/modules/backups/repository.py:72
+#: plinth/modules/backups/repository.py:57
msgid "SSH access denied"
msgstr ""
-#: plinth/modules/backups/repository.py:78
+#: plinth/modules/backups/repository.py:63
msgid "Repository path is neither empty nor is an existing backups repository."
msgstr ""
-#: plinth/modules/backups/repository.py:152
+#: plinth/modules/backups/repository.py:137
msgid "Existing repository is not encrypted."
msgstr ""
-#: plinth/modules/backups/repository.py:337
+#: plinth/modules/backups/repository.py:322
#, python-brace-format
msgid "{box_name} storage"
msgstr ""
-#: plinth/modules/backups/templates/backups.html:45
-#: plinth/modules/backups/views.py:77
+#: plinth/modules/backups/templates/backups.html:30
+#: plinth/modules/backups/views.py:60
msgid "Create a new backup"
msgstr ""
-#: plinth/modules/backups/templates/backups.html:49
+#: plinth/modules/backups/templates/backups.html:34
msgid "Create Backup"
msgstr ""
-#: plinth/modules/backups/templates/backups.html:52
+#: plinth/modules/backups/templates/backups.html:37
msgid "Upload and restore a backup archive"
msgstr ""
-#: plinth/modules/backups/templates/backups.html:56
+#: plinth/modules/backups/templates/backups.html:41
msgid "Upload and Restore"
msgstr ""
-#: plinth/modules/backups/templates/backups.html:59
+#: plinth/modules/backups/templates/backups.html:44
msgid "Add a backup location"
msgstr ""
-#: plinth/modules/backups/templates/backups.html:63
+#: plinth/modules/backups/templates/backups.html:48
msgid "Add Backup Location"
msgstr ""
-#: plinth/modules/backups/templates/backups.html:66
+#: plinth/modules/backups/templates/backups.html:51
msgid "Add a remote backup location"
msgstr ""
-#: plinth/modules/backups/templates/backups.html:70
+#: plinth/modules/backups/templates/backups.html:55
msgid "Add Remote Backup Location"
msgstr ""
-#: plinth/modules/backups/templates/backups.html:73
+#: plinth/modules/backups/templates/backups.html:58
msgid "Existing Backups"
msgstr ""
-#: plinth/modules/backups/templates/backups_add_remote_repository.html:34
+#: plinth/modules/backups/templates/backups_add_remote_repository.html:19
#, python-format
msgid ""
"The credentials for this repository are stored on your %(box_name)s.
"
@@ -345,71 +345,72 @@ msgid ""
"if chosen, the encryption passphrase."
msgstr ""
-#: plinth/modules/backups/templates/backups_add_remote_repository.html:43
+#: plinth/modules/backups/templates/backups_add_remote_repository.html:28
msgid "Create Location"
msgstr ""
-#: plinth/modules/backups/templates/backups_add_repository.html:34
-#: plinth/modules/gitweb/views.py:70
+#: plinth/modules/backups/templates/backups_add_repository.html:19
+#: plinth/modules/gitweb/views.py:50
msgid "Create Repository"
msgstr ""
-#: plinth/modules/backups/templates/backups_delete.html:27
+#: plinth/modules/backups/templates/backups_delete.html:12
msgid "Delete this archive permanently?"
msgstr ""
-#: plinth/modules/backups/templates/backups_delete.html:33
-#: plinth/modules/ikiwiki/forms.py:30
-#: plinth/modules/networks/templates/connection_show.html:78
-#: plinth/modules/sharing/templates/sharing.html:52
+#: plinth/modules/backups/templates/backups_delete.html:18
+#: plinth/modules/ikiwiki/forms.py:15
+#: plinth/modules/networks/templates/connection_show.html:63
+#: plinth/modules/sharing/templates/sharing.html:37
msgid "Name"
msgstr ""
-#: plinth/modules/backups/templates/backups_delete.html:34
+#: plinth/modules/backups/templates/backups_delete.html:19
msgid "Time"
msgstr ""
-#: plinth/modules/backups/templates/backups_delete.html:51
+#: plinth/modules/backups/templates/backups_delete.html:36
#, python-format
msgid "Delete Archive %(name)s"
msgstr ""
-#: plinth/modules/backups/templates/backups_form.html:35
-#: plinth/modules/gitweb/templates/gitweb_create_edit.html:35
-#: plinth/modules/networks/templates/router_configuration_update.html:34
-#: plinth/modules/pagekite/templates/pagekite_custom_services.html:47
-#: plinth/modules/sharing/templates/sharing_add_edit.html:35
+#: plinth/modules/backups/templates/backups_form.html:20
+#: plinth/modules/gitweb/templates/gitweb_create_edit.html:20
+#: plinth/modules/networks/templates/internet_connectivity_type.html:18
+#: plinth/modules/networks/templates/router_configuration_update.html:19
+#: plinth/modules/pagekite/templates/pagekite_custom_services.html:32
+#: plinth/modules/sharing/templates/sharing_add_edit.html:20
msgid "Submit"
msgstr ""
-#: plinth/modules/backups/templates/backups_repository_remove.html:28
+#: plinth/modules/backups/templates/backups_repository_remove.html:13
msgid "Are you sure that you want to remove this repository?"
msgstr ""
-#: plinth/modules/backups/templates/backups_repository_remove.html:34
+#: plinth/modules/backups/templates/backups_repository_remove.html:19
msgid ""
"The remote repository will not be deleted. This just removes the repository "
"from the listing on the backup page, you can add it again later on."
msgstr ""
-#: plinth/modules/backups/templates/backups_repository_remove.html:46
+#: plinth/modules/backups/templates/backups_repository_remove.html:31
msgid "Remove Location"
msgstr ""
-#: plinth/modules/backups/templates/backups_restore.html:30
+#: plinth/modules/backups/templates/backups_restore.html:15
msgid "Restore data from"
msgstr ""
-#: plinth/modules/backups/templates/backups_restore.html:43
-#: plinth/modules/backups/views.py:171
+#: plinth/modules/backups/templates/backups_restore.html:28
+#: plinth/modules/backups/views.py:154
msgid "Restore"
msgstr ""
-#: plinth/modules/backups/templates/backups_restore.html:47
+#: plinth/modules/backups/templates/backups_restore.html:32
msgid "Restoring"
msgstr ""
-#: plinth/modules/backups/templates/backups_upload.html:32
+#: plinth/modules/backups/templates/backups_upload.html:17
#, python-format
msgid ""
"\n"
@@ -421,154 +422,146 @@ msgid ""
" "
msgstr ""
-#: plinth/modules/backups/templates/backups_upload.html:42
-#: plinth/modules/help/templates/statuslog.html:38
+#: plinth/modules/backups/templates/backups_upload.html:27
+#: plinth/modules/help/templates/statuslog.html:23
msgid "Caution:"
msgstr ""
-#: plinth/modules/backups/templates/backups_upload.html:43
+#: plinth/modules/backups/templates/backups_upload.html:28
#, python-format
msgid ""
"You have %(max_filesize)s available to restore a backup. Exceeding this "
"limit can leave your %(box_name)s unusable."
msgstr ""
-#: plinth/modules/backups/templates/backups_upload.html:56
+#: plinth/modules/backups/templates/backups_upload.html:41
msgid "Upload file"
msgstr ""
-#: plinth/modules/backups/templates/verify_ssh_hostkey.html:33
+#: plinth/modules/backups/templates/verify_ssh_hostkey.html:18
#, python-format
msgid ""
"Could not reach SSH host %(hostname)s. Please verify that the host is up and "
"accepting connections."
msgstr ""
-#: plinth/modules/backups/templates/verify_ssh_hostkey.html:43
+#: plinth/modules/backups/templates/verify_ssh_hostkey.html:28
#, python-format
msgid ""
"The authenticity of SSH host %(hostname)s could not be established. The host "
"advertises the following SSH public keys. Please verify any one of them."
msgstr ""
-#: plinth/modules/backups/templates/verify_ssh_hostkey.html:55
+#: plinth/modules/backups/templates/verify_ssh_hostkey.html:40
msgid "How to verify?"
msgstr ""
-#: plinth/modules/backups/templates/verify_ssh_hostkey.html:60
+#: plinth/modules/backups/templates/verify_ssh_hostkey.html:45
msgid ""
"Run the following command on the SSH host machine. The output should match "
"one of the provided options. You can also use dsa, ecdsa, ed25519 etc. "
"instead of rsa, by choosing the corresponding file."
msgstr ""
-#: plinth/modules/backups/templates/verify_ssh_hostkey.html:75
+#: plinth/modules/backups/templates/verify_ssh_hostkey.html:60
msgid "Verify Host"
msgstr ""
-#: plinth/modules/backups/views.py:72
+#: plinth/modules/backups/views.py:55
msgid "Archive created."
msgstr ""
-#: plinth/modules/backups/views.py:99
+#: plinth/modules/backups/views.py:82
msgid "Delete Archive"
msgstr ""
-#: plinth/modules/backups/views.py:111
+#: plinth/modules/backups/views.py:94
msgid "Archive deleted."
msgstr ""
-#: plinth/modules/backups/views.py:124
+#: plinth/modules/backups/views.py:107
msgid "Upload and restore a backup"
msgstr ""
-#: plinth/modules/backups/views.py:159
+#: plinth/modules/backups/views.py:142
msgid "Restored files from backup."
msgstr ""
-#: plinth/modules/backups/views.py:186
+#: plinth/modules/backups/views.py:169
msgid "No backup file found."
msgstr ""
-#: plinth/modules/backups/views.py:194
+#: plinth/modules/backups/views.py:177
msgid "Restore from uploaded file"
msgstr ""
-#: plinth/modules/backups/views.py:251
+#: plinth/modules/backups/views.py:234
msgid "No additional disks available to add a repository."
msgstr ""
-#: plinth/modules/backups/views.py:259
+#: plinth/modules/backups/views.py:242
msgid "Create backup repository"
msgstr ""
-#: plinth/modules/backups/views.py:286
+#: plinth/modules/backups/views.py:269
msgid "Create remote backup repository"
msgstr ""
-#: plinth/modules/backups/views.py:305
+#: plinth/modules/backups/views.py:288
msgid "Added new remote SSH repository."
msgstr ""
-#: plinth/modules/backups/views.py:327
+#: plinth/modules/backups/views.py:310
msgid "Verify SSH hostkey"
msgstr ""
-#: plinth/modules/backups/views.py:353
+#: plinth/modules/backups/views.py:336
msgid "SSH host already verified."
msgstr ""
-#: plinth/modules/backups/views.py:363
+#: plinth/modules/backups/views.py:346
msgid "SSH host verified."
msgstr ""
-#: plinth/modules/backups/views.py:377
+#: plinth/modules/backups/views.py:360
msgid "SSH host public key could not be verified."
msgstr ""
-#: plinth/modules/backups/views.py:379
+#: plinth/modules/backups/views.py:362
msgid "Authentication to remote server failed."
msgstr ""
-#: plinth/modules/backups/views.py:381
+#: plinth/modules/backups/views.py:364
msgid "Error establishing connection to server: {}"
msgstr ""
-#: plinth/modules/backups/views.py:392
+#: plinth/modules/backups/views.py:375
msgid "Repository removed."
msgstr ""
-#: plinth/modules/backups/views.py:406
+#: plinth/modules/backups/views.py:389
msgid "Remove Repository"
msgstr ""
-#: plinth/modules/backups/views.py:415
+#: plinth/modules/backups/views.py:398
msgid "Repository removed. Backups were not deleted."
msgstr ""
-#: plinth/modules/backups/views.py:425
+#: plinth/modules/backups/views.py:408
msgid "Unmounting failed!"
msgstr ""
-#: plinth/modules/backups/views.py:440 plinth/modules/backups/views.py:444
+#: plinth/modules/backups/views.py:423 plinth/modules/backups/views.py:427
msgid "Mounting failed"
msgstr ""
-#: plinth/modules/bind/__init__.py:36
-msgid "BIND"
-msgstr ""
-
-#: plinth/modules/bind/__init__.py:38
-msgid "Domain Name Server"
-msgstr ""
-
-#: plinth/modules/bind/__init__.py:45
+#: plinth/modules/bind/__init__.py:29
msgid ""
"BIND enables you to publish your Domain Name System (DNS) information on the "
"Internet, and to resolve DNS queries for your user devices on your network."
msgstr ""
-#: plinth/modules/bind/__init__.py:49
+#: plinth/modules/bind/__init__.py:33
#, python-brace-format
msgid ""
"Currently, on {box_name}, BIND is only used to resolve DNS queries for other "
@@ -576,39 +569,67 @@ msgid ""
"connection from {box_name}."
msgstr ""
-#: plinth/modules/bind/forms.py:37
+#: plinth/modules/bind/__init__.py:82
+msgid "BIND"
+msgstr ""
+
+#: plinth/modules/bind/__init__.py:83
+msgid "Domain Name Server"
+msgstr ""
+
+#: plinth/modules/bind/forms.py:22
msgid "Forwarders"
msgstr ""
-#: plinth/modules/bind/forms.py:38
+#: plinth/modules/bind/forms.py:23
msgid ""
"A list DNS servers, separated by space, to which requests will be forwarded"
msgstr ""
-#: plinth/modules/bind/forms.py:42
+#: plinth/modules/bind/forms.py:27
msgid "Enable DNSSEC"
msgstr ""
-#: plinth/modules/bind/forms.py:43
+#: plinth/modules/bind/forms.py:28
msgid "Enable Domain Name System Security Extensions"
msgstr ""
-#: plinth/modules/bind/views.py:58 plinth/modules/deluge/views.py:67
-#: plinth/modules/dynamicdns/views.py:171 plinth/modules/openvpn/views.py:153
-#: plinth/modules/shadowsocks/views.py:79
-#: plinth/modules/transmission/views.py:73
+#: plinth/modules/bind/templates/bind.html:11
+msgid "Serving Domains"
+msgstr ""
+
+#: plinth/modules/bind/templates/bind.html:16
+#: plinth/modules/ikiwiki/forms.py:12
+#: plinth/modules/networks/templates/connection_show.html:83
+#: plinth/modules/storage/templates/storage.html:28
+msgid "Type"
+msgstr ""
+
+#: plinth/modules/bind/templates/bind.html:17
+msgid "Domain Names"
+msgstr ""
+
+#: plinth/modules/bind/templates/bind.html:18
+msgid "Serving"
+msgstr ""
+
+#: plinth/modules/bind/templates/bind.html:19
+msgid "IP addresses"
+msgstr ""
+
+#: plinth/modules/bind/templates/bind.html:35
+#: plinth/modules/bind/templates/bind.html:37
+msgid "Refresh IP address and domains"
+msgstr ""
+
+#: plinth/modules/bind/views.py:73 plinth/modules/deluge/views.py:46
+#: plinth/modules/dynamicdns/views.py:150 plinth/modules/openvpn/views.py:134
+#: plinth/modules/shadowsocks/views.py:59
+#: plinth/modules/transmission/views.py:52
msgid "Configuration updated"
msgstr ""
-#: plinth/modules/cockpit/__init__.py:45 plinth/modules/cockpit/manifest.py:27
-msgid "Cockpit"
-msgstr ""
-
-#: plinth/modules/cockpit/__init__.py:49
-msgid "Server Administration"
-msgstr ""
-
-#: plinth/modules/cockpit/__init__.py:53
+#: plinth/modules/cockpit/__init__.py:32
#, python-brace-format
msgid ""
"Cockpit is a server manager that makes it easy to administer GNU/Linux "
@@ -617,68 +638,76 @@ msgid ""
"console operations is also available."
msgstr ""
-#: plinth/modules/cockpit/__init__.py:59
+#: plinth/modules/cockpit/__init__.py:38
#, python-brace-format
msgid ""
"It can be accessed by any user on {box_name} "
"belonging to the admin group."
msgstr ""
-#: plinth/modules/cockpit/__init__.py:63
+#: plinth/modules/cockpit/__init__.py:42
msgid ""
"Cockpit requires that you access it through a domain name. It will not work "
"when accessed using an IP address as part of the URL."
msgstr ""
-#: plinth/modules/cockpit/templates/cockpit.html:26
+#: plinth/modules/cockpit/__init__.py:59 plinth/modules/cockpit/manifest.py:12
+msgid "Cockpit"
+msgstr ""
+
+#: plinth/modules/cockpit/__init__.py:61
+msgid "Server Administration"
+msgstr ""
+
+#: plinth/modules/cockpit/templates/cockpit.html:11
msgid "Access"
msgstr ""
-#: plinth/modules/cockpit/templates/cockpit.html:29
+#: plinth/modules/cockpit/templates/cockpit.html:14
msgid "Cockpit will only work when accessed using the following URLs."
msgstr ""
-#: plinth/modules/config/__init__.py:37
-msgid "General Configuration"
-msgstr ""
-
-#: plinth/modules/config/__init__.py:40
+#: plinth/modules/config/__init__.py:23
msgid ""
"Here you can set some general configuration options like hostname, domain "
"name, webserver home page etc."
msgstr ""
-#: plinth/modules/config/__init__.py:67 plinth/modules/dynamicdns/views.py:44
-#: plinth/modules/i2p/views.py:31 plinth/modules/names/templates/names.html:44
-#: plinth/modules/names/templates/names.html:58
-#: plinth/modules/snapshot/views.py:41
-#: plinth/modules/tahoe/templates/tahoe-pre-setup.html:39
+#: plinth/modules/config/__init__.py:50
+msgid "General Configuration"
+msgstr ""
+
+#: plinth/modules/config/__init__.py:55 plinth/modules/dynamicdns/views.py:29
+#: plinth/modules/i2p/views.py:16 plinth/modules/names/templates/names.html:29
+#: plinth/modules/names/templates/names.html:43
+#: plinth/modules/snapshot/views.py:26
+#: plinth/modules/tahoe/templates/tahoe-pre-setup.html:24
msgid "Configure"
msgstr ""
-#: plinth/modules/config/__init__.py:71 plinth/modules/config/forms.py:76
-#: plinth/modules/dynamicdns/forms.py:110
+#: plinth/modules/config/__init__.py:59 plinth/modules/config/forms.py:61
+#: plinth/modules/dynamicdns/forms.py:95
msgid "Domain Name"
msgstr ""
-#: plinth/modules/config/forms.py:42 plinth/modules/config/forms.py:88
-#: plinth/modules/dynamicdns/forms.py:113
+#: plinth/modules/config/forms.py:27 plinth/modules/config/forms.py:73
+#: plinth/modules/dynamicdns/forms.py:98
msgid "Invalid domain name"
msgstr ""
-#: plinth/modules/config/forms.py:50
+#: plinth/modules/config/forms.py:35
msgid "Apache Default"
msgstr ""
-#: plinth/modules/config/forms.py:51
+#: plinth/modules/config/forms.py:36
msgid "FreedomBox Service (Plinth)"
msgstr ""
-#: plinth/modules/config/forms.py:63
+#: plinth/modules/config/forms.py:48
msgid "Hostname"
msgstr ""
-#: plinth/modules/config/forms.py:65
+#: plinth/modules/config/forms.py:50
#, python-brace-format
msgid ""
"Hostname is the local name by which other devices on the local network can "
@@ -687,11 +716,11 @@ msgid ""
"length must be 63 characters or less."
msgstr ""
-#: plinth/modules/config/forms.py:72
+#: plinth/modules/config/forms.py:57
msgid "Invalid hostname"
msgstr ""
-#: plinth/modules/config/forms.py:78
+#: plinth/modules/config/forms.py:63
#, python-brace-format
msgid ""
"Domain name is the global name by which other devices on the Internet can "
@@ -702,11 +731,11 @@ msgid ""
"or less."
msgstr ""
-#: plinth/modules/config/forms.py:93
+#: plinth/modules/config/forms.py:78
msgid "Webserver Home Page"
msgstr ""
-#: plinth/modules/config/forms.py:95
+#: plinth/modules/config/forms.py:80
#, python-brace-format
msgid ""
"Choose the default page that must be served when someone visits your "
@@ -716,70 +745,62 @@ msgid ""
"explicitly type /plinth or /freedombox to reach {box_name} Service (Plinth)."
msgstr ""
-#: plinth/modules/config/forms.py:106
+#: plinth/modules/config/forms.py:91
msgid "Show advanced apps and features"
msgstr ""
-#: plinth/modules/config/forms.py:107
+#: plinth/modules/config/forms.py:92
msgid "Show apps and features that require more technical knowledge."
msgstr ""
-#: plinth/modules/config/views.py:65
+#: plinth/modules/config/views.py:47
#, python-brace-format
msgid "Error setting hostname: {exception}"
msgstr ""
-#: plinth/modules/config/views.py:68
+#: plinth/modules/config/views.py:50
msgid "Hostname set"
msgstr ""
-#: plinth/modules/config/views.py:77
+#: plinth/modules/config/views.py:59
#, python-brace-format
msgid "Error setting domain name: {exception}"
msgstr ""
-#: plinth/modules/config/views.py:80
+#: plinth/modules/config/views.py:62
msgid "Domain name set"
msgstr ""
-#: plinth/modules/config/views.py:88
+#: plinth/modules/config/views.py:70
#, python-brace-format
msgid "Error setting webserver home page: {exception}"
msgstr ""
-#: plinth/modules/config/views.py:91
+#: plinth/modules/config/views.py:73
msgid "Webserver home page set"
msgstr ""
-#: plinth/modules/config/views.py:99
+#: plinth/modules/config/views.py:81
#, python-brace-format
msgid "Error changing advanced mode: {exception}"
msgstr ""
-#: plinth/modules/config/views.py:104
+#: plinth/modules/config/views.py:86
msgid "Showing advanced apps and features"
msgstr ""
-#: plinth/modules/config/views.py:107
+#: plinth/modules/config/views.py:89
msgid "Hiding advanced apps and features"
msgstr ""
-#: plinth/modules/coquelicot/__init__.py:40
-msgid "Coquelicot"
-msgstr ""
-
-#: plinth/modules/coquelicot/__init__.py:42 plinth/modules/samba/__init__.py:50
-msgid "File Sharing"
-msgstr ""
-
-#: plinth/modules/coquelicot/__init__.py:45
+#: plinth/modules/coquelicot/__init__.py:24
msgid ""
"Coquelicot is a \"one-click\" file sharing web application with a focus on "
"protecting users' privacy. It is best used for quickly sharing a single "
"file. "
msgstr ""
-#: plinth/modules/coquelicot/__init__.py:48
+#: plinth/modules/coquelicot/__init__.py:27
msgid ""
"This Coquelicot instance is exposed to the public but requires an upload "
"password to prevent unauthorized access. You can set a new upload password "
@@ -787,193 +808,201 @@ msgid ""
"password is \"test\"."
msgstr ""
-#: plinth/modules/coquelicot/forms.py:30
+#: plinth/modules/coquelicot/__init__.py:45
+msgid "Coquelicot"
+msgstr ""
+
+#: plinth/modules/coquelicot/__init__.py:47 plinth/modules/samba/__init__.py:62
+msgid "File Sharing"
+msgstr ""
+
+#: plinth/modules/coquelicot/forms.py:15
msgid "Upload Password"
msgstr ""
-#: plinth/modules/coquelicot/forms.py:31
+#: plinth/modules/coquelicot/forms.py:16
msgid ""
"Set a new upload password for Coquelicot. Leave this field blank to keep the "
"current password."
msgstr ""
-#: plinth/modules/coquelicot/forms.py:35
+#: plinth/modules/coquelicot/forms.py:20
msgid "Maximum File Size (in MiB)"
msgstr ""
-#: plinth/modules/coquelicot/forms.py:36
+#: plinth/modules/coquelicot/forms.py:21
msgid "Set the maximum size of the files that can be uploaded to Coquelicot."
msgstr ""
-#: plinth/modules/coquelicot/manifest.py:24
+#: plinth/modules/coquelicot/manifest.py:9
msgid "coquelicot"
msgstr ""
-#: plinth/modules/coquelicot/views.py:58
+#: plinth/modules/coquelicot/views.py:37
msgid "Upload password updated"
msgstr ""
-#: plinth/modules/coquelicot/views.py:61
+#: plinth/modules/coquelicot/views.py:40
msgid "Failed to update upload password"
msgstr ""
-#: plinth/modules/coquelicot/views.py:69
+#: plinth/modules/coquelicot/views.py:48
msgid "Maximum file size updated"
msgstr ""
-#: plinth/modules/coquelicot/views.py:72
+#: plinth/modules/coquelicot/views.py:51
msgid "Failed to update maximum file size"
msgstr ""
-#: plinth/modules/datetime/__init__.py:39
-msgid "Date & Time"
-msgstr ""
-
-#: plinth/modules/datetime/__init__.py:42
+#: plinth/modules/datetime/__init__.py:25
msgid ""
"Network time server is a program that maintains the system time in "
"synchronization with servers on the Internet."
msgstr ""
-#: plinth/modules/datetime/__init__.py:97
+#: plinth/modules/datetime/__init__.py:42
+msgid "Date & Time"
+msgstr ""
+
+#: plinth/modules/datetime/__init__.py:85
msgid "Time synchronized to NTP server"
msgstr ""
-#: plinth/modules/datetime/forms.py:35
+#: plinth/modules/datetime/forms.py:20
msgid "Time Zone"
msgstr ""
-#: plinth/modules/datetime/forms.py:36
+#: plinth/modules/datetime/forms.py:21
msgid ""
"Set your time zone to get accurate timestamps. This will set the system-wide "
"time zone."
msgstr ""
-#: plinth/modules/datetime/forms.py:47
+#: plinth/modules/datetime/forms.py:32
msgid "-- no time zone set --"
msgstr ""
-#: plinth/modules/datetime/views.py:64
+#: plinth/modules/datetime/views.py:45
#, python-brace-format
msgid "Error setting time zone: {exception}"
msgstr ""
-#: plinth/modules/datetime/views.py:67
+#: plinth/modules/datetime/views.py:48
msgid "Time zone set"
msgstr ""
-#: plinth/modules/deluge/__init__.py:39 plinth/modules/deluge/manifest.py:24
-msgid "Deluge"
-msgstr ""
-
-#: plinth/modules/deluge/__init__.py:43
-#: plinth/modules/transmission/__init__.py:45
-msgid "BitTorrent Web Client"
-msgstr ""
-
-#: plinth/modules/deluge/__init__.py:46
+#: plinth/modules/deluge/__init__.py:25
msgid "Deluge is a BitTorrent client that features a Web UI."
msgstr ""
-#: plinth/modules/deluge/__init__.py:47
+#: plinth/modules/deluge/__init__.py:26
msgid ""
"The default password is 'deluge', but you should log in and change it "
"immediately after enabling this service."
msgstr ""
-#: plinth/modules/deluge/__init__.py:51
-#: plinth/modules/transmission/__init__.py:57
+#: plinth/modules/deluge/__init__.py:30
+#: plinth/modules/transmission/__init__.py:34
msgid "Download files using BitTorrent applications"
msgstr ""
-#: plinth/modules/deluge/forms.py:35 plinth/modules/transmission/forms.py:35
+#: plinth/modules/deluge/__init__.py:46 plinth/modules/deluge/manifest.py:9
+msgid "Deluge"
+msgstr ""
+
+#: plinth/modules/deluge/__init__.py:47
+#: plinth/modules/transmission/__init__.py:50
+msgid "BitTorrent Web Client"
+msgstr ""
+
+#: plinth/modules/deluge/forms.py:20 plinth/modules/transmission/forms.py:20
msgid "Download directory"
msgstr ""
-#: plinth/modules/deluge/manifest.py:25
+#: plinth/modules/deluge/manifest.py:10
msgid "Bittorrent client written in Python/PyGTK"
msgstr ""
-#: plinth/modules/diagnostics/__init__.py:33
-msgid "Diagnostics"
-msgstr ""
-
-#: plinth/modules/diagnostics/__init__.py:36
+#: plinth/modules/diagnostics/__init__.py:19
msgid ""
"The system diagnostic test will run a number of checks on your system to "
"confirm that applications and services are working as expected."
msgstr ""
-#: plinth/modules/diagnostics/diagnostics.py:65
+#: plinth/modules/diagnostics/__init__.py:37
+msgid "Diagnostics"
+msgstr ""
+
+#: plinth/modules/diagnostics/diagnostics.py:48
msgid "Diagnostic Test"
msgstr ""
-#: plinth/modules/diagnostics/templates/diagnostics.html:43
-#: plinth/modules/diagnostics/templates/diagnostics_button.html:28
-#: plinth/modules/diagnostics/templates/diagnostics_button.html:31
+#: plinth/modules/diagnostics/templates/diagnostics.html:28
+#: plinth/modules/diagnostics/templates/diagnostics_button.html:13
+#: plinth/modules/diagnostics/templates/diagnostics_button.html:16
msgid "Run Diagnostics"
msgstr ""
-#: plinth/modules/diagnostics/templates/diagnostics.html:46
+#: plinth/modules/diagnostics/templates/diagnostics.html:31
msgid "Diagnostics test is currently running"
msgstr ""
-#: plinth/modules/diagnostics/templates/diagnostics.html:59
+#: plinth/modules/diagnostics/templates/diagnostics.html:44
msgid "Results"
msgstr ""
-#: plinth/modules/diagnostics/templates/diagnostics.html:67
-#: plinth/modules/diagnostics/templates/diagnostics_app.html:27
+#: plinth/modules/diagnostics/templates/diagnostics.html:52
+#: plinth/modules/diagnostics/templates/diagnostics_app.html:12
#, python-format
msgid "App: %(app_id)s"
msgstr ""
-#: plinth/modules/diagnostics/templates/diagnostics_app.html:25
+#: plinth/modules/diagnostics/templates/diagnostics_app.html:10
msgid "Diagnostic Results"
msgstr ""
-#: plinth/modules/diagnostics/templates/diagnostics_app.html:32
+#: plinth/modules/diagnostics/templates/diagnostics_app.html:17
msgid "This app does not support diagnostics"
msgstr ""
-#: plinth/modules/diagnostics/templates/diagnostics_results.html:25
+#: plinth/modules/diagnostics/templates/diagnostics_results.html:10
msgid "Test"
msgstr ""
-#: plinth/modules/diagnostics/templates/diagnostics_results.html:26
+#: plinth/modules/diagnostics/templates/diagnostics_results.html:11
msgid "Result"
msgstr ""
-#: plinth/modules/diaspora/__init__.py:54
-#: plinth/modules/diaspora/manifest.py:38
-msgid "diaspora*"
-msgstr ""
-
-#: plinth/modules/diaspora/__init__.py:56
-msgid "Federated Social Network"
-msgstr ""
-
-#: plinth/modules/diaspora/__init__.py:63
+#: plinth/modules/diaspora/__init__.py:45
msgid ""
"diaspora* is a decentralized social network where you can store and control "
"your own data."
msgstr ""
-#: plinth/modules/diaspora/forms.py:30
+#: plinth/modules/diaspora/__init__.py:69
+#: plinth/modules/diaspora/manifest.py:23
+msgid "diaspora*"
+msgstr ""
+
+#: plinth/modules/diaspora/__init__.py:70
+msgid "Federated Social Network"
+msgstr ""
+
+#: plinth/modules/diaspora/forms.py:15
msgid "Enable new user registrations"
msgstr ""
-#: plinth/modules/diaspora/manifest.py:26
+#: plinth/modules/diaspora/manifest.py:11
msgid "dandelion*"
msgstr ""
-#: plinth/modules/diaspora/manifest.py:28
+#: plinth/modules/diaspora/manifest.py:13
msgid ""
"It is an unofficial webview based client for the community-run, distributed "
"social network diaspora*"
msgstr ""
-#: plinth/modules/diaspora/templates/diaspora-post-setup.html:32
+#: plinth/modules/diaspora/templates/diaspora-post-setup.html:16
#, python-format
msgid ""
"The diaspora* pod domain is set to %(domain_name)s. User IDs will "
@@ -983,39 +1012,35 @@ msgid ""
"href=\"https://diaspora.%(domain_name)s\"> diaspora.%(domain_name)s "
msgstr ""
-#: plinth/modules/diaspora/templates/diaspora-pre-setup.html:58
-#: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:40
-#: plinth/modules/ejabberd/templates/ejabberd.html:58
-#: plinth/modules/i2p/templates/i2p.html:34
-#: plinth/modules/ikiwiki/templates/ikiwiki_create.html:33
-#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:62
-#: plinth/modules/snapshot/templates/snapshot.html:30
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:51
-#: plinth/modules/tahoe/templates/tahoe-pre-setup.html:58
-#: plinth/templates/app.html:77
+#: plinth/modules/diaspora/templates/diaspora-pre-setup.html:43
+#: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:25
+#: plinth/modules/ejabberd/templates/ejabberd.html:43
+#: plinth/modules/i2p/templates/i2p.html:19
+#: plinth/modules/ikiwiki/templates/ikiwiki_create.html:18
+#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:47
+#: plinth/modules/snapshot/templates/snapshot.html:15
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:35
+#: plinth/modules/tahoe/templates/tahoe-pre-setup.html:43
+#: plinth/templates/app.html:62
msgid "Update setup"
msgstr ""
-#: plinth/modules/diaspora/views.py:93 plinth/modules/ejabberd/views.py:66
-#: plinth/modules/matrixsynapse/views.py:108
-#: plinth/modules/mediawiki/views.py:79 plinth/modules/openvpn/views.py:155
-#: plinth/modules/tor/views.py:156 plinth/views.py:175
+#: plinth/modules/diaspora/views.py:76 plinth/modules/ejabberd/views.py:46
+#: plinth/modules/matrixsynapse/views.py:85
+#: plinth/modules/mediawiki/views.py:59 plinth/modules/openvpn/views.py:136
+#: plinth/modules/tor/views.py:137 plinth/views.py:185
msgid "Setting unchanged"
msgstr ""
-#: plinth/modules/diaspora/views.py:97
+#: plinth/modules/diaspora/views.py:80
msgid "User registrations enabled"
msgstr ""
-#: plinth/modules/diaspora/views.py:101
+#: plinth/modules/diaspora/views.py:84
msgid "User registrations disabled"
msgstr ""
-#: plinth/modules/dynamicdns/__init__.py:40
-msgid "Dynamic DNS Client"
-msgstr ""
-
-#: plinth/modules/dynamicdns/__init__.py:44
+#: plinth/modules/dynamicdns/__init__.py:27
#, python-brace-format
msgid ""
"If your Internet provider changes your IP address periodically (i.e. every "
@@ -1023,7 +1048,7 @@ msgid ""
"prevent others from finding services which are provided by this {box_name}."
msgstr ""
-#: plinth/modules/dynamicdns/__init__.py:48
+#: plinth/modules/dynamicdns/__init__.py:31
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 "
@@ -1034,50 +1059,54 @@ msgid ""
"IP address."
msgstr ""
-#: plinth/modules/dynamicdns/__init__.py:78
+#: plinth/modules/dynamicdns/__init__.py:56
+msgid "Dynamic DNS Client"
+msgstr ""
+
+#: plinth/modules/dynamicdns/__init__.py:66
msgid "Dynamic Domain Name"
msgstr ""
-#: plinth/modules/dynamicdns/forms.py:42
+#: plinth/modules/dynamicdns/forms.py:27
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/forms.py:46
+#: plinth/modules/dynamicdns/forms.py:31
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/forms.py:51
+#: plinth/modules/dynamicdns/forms.py:36
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/forms.py:55
+#: plinth/modules/dynamicdns/forms.py:40
#, python-brace-format
msgid "The public domain name you want to use to reach your {box_name}."
msgstr ""
-#: plinth/modules/dynamicdns/forms.py:58
+#: plinth/modules/dynamicdns/forms.py:43
msgid "Use this option if your provider uses self signed certificates."
msgstr ""
-#: plinth/modules/dynamicdns/forms.py:61
+#: plinth/modules/dynamicdns/forms.py:46
msgid ""
"If this option is selected, your username and password will be used for HTTP "
"basic authentication."
msgstr ""
-#: plinth/modules/dynamicdns/forms.py:64
+#: plinth/modules/dynamicdns/forms.py:49
msgid "Leave this field empty if you want to keep your current password."
msgstr ""
-#: plinth/modules/dynamicdns/forms.py:67
+#: plinth/modules/dynamicdns/forms.py:52
#, python-brace-format
msgid ""
"Optional Value. If your {box_name} is not connected directly to the Internet "
@@ -1086,72 +1115,72 @@ msgid ""
"(example: http://myip.datasystems24.de)."
msgstr ""
-#: plinth/modules/dynamicdns/forms.py:75
+#: plinth/modules/dynamicdns/forms.py:60
msgid "The username that was used when the account was created."
msgstr ""
-#: plinth/modules/dynamicdns/forms.py:83
+#: plinth/modules/dynamicdns/forms.py:68
msgid "Enable Dynamic DNS"
msgstr ""
-#: plinth/modules/dynamicdns/forms.py:86
+#: plinth/modules/dynamicdns/forms.py:71
msgid "Service Type"
msgstr ""
-#: plinth/modules/dynamicdns/forms.py:91
+#: plinth/modules/dynamicdns/forms.py:76
msgid "GnuDIP Server Address"
msgstr ""
-#: plinth/modules/dynamicdns/forms.py:94
+#: plinth/modules/dynamicdns/forms.py:79
msgid "Invalid server name"
msgstr ""
-#: plinth/modules/dynamicdns/forms.py:97
+#: plinth/modules/dynamicdns/forms.py:82
msgid "Update URL"
msgstr ""
-#: plinth/modules/dynamicdns/forms.py:102
+#: plinth/modules/dynamicdns/forms.py:87
msgid "Accept all SSL certificates"
msgstr ""
-#: plinth/modules/dynamicdns/forms.py:106
+#: plinth/modules/dynamicdns/forms.py:91
msgid "Use HTTP basic authentication"
msgstr ""
-#: plinth/modules/dynamicdns/forms.py:116 plinth/modules/networks/forms.py:217
+#: plinth/modules/dynamicdns/forms.py:101 plinth/modules/networks/forms.py:199
msgid "Username"
msgstr ""
-#: plinth/modules/dynamicdns/forms.py:119 plinth/modules/networks/forms.py:218
-#: plinth/modules/shadowsocks/forms.py:60
+#: plinth/modules/dynamicdns/forms.py:104 plinth/modules/networks/forms.py:200
+#: plinth/modules/shadowsocks/forms.py:45
msgid "Password"
msgstr ""
-#: plinth/modules/dynamicdns/forms.py:123 plinth/modules/networks/forms.py:220
+#: plinth/modules/dynamicdns/forms.py:108 plinth/modules/networks/forms.py:202
msgid "Show password"
msgstr ""
-#: plinth/modules/dynamicdns/forms.py:127
+#: plinth/modules/dynamicdns/forms.py:112
msgid "URL to look up public IP"
msgstr ""
-#: plinth/modules/dynamicdns/forms.py:151
+#: plinth/modules/dynamicdns/forms.py:136
msgid "Please provide an update URL or a GnuDIP server address"
msgstr ""
-#: plinth/modules/dynamicdns/forms.py:156
+#: plinth/modules/dynamicdns/forms.py:141
msgid "Please provide a GnuDIP username"
msgstr ""
-#: plinth/modules/dynamicdns/forms.py:160
+#: plinth/modules/dynamicdns/forms.py:145
msgid "Please provide a GnuDIP domain name"
msgstr ""
-#: plinth/modules/dynamicdns/forms.py:165
+#: plinth/modules/dynamicdns/forms.py:150
msgid "Please provide a password"
msgstr ""
-#: plinth/modules/dynamicdns/templates/dynamicdns.html:27
+#: plinth/modules/dynamicdns/templates/dynamicdns.html:12
msgid ""
"If you are looking for a free dynamic DNS account, you may find a free "
"GnuDIP service at ."
msgstr ""
-#: plinth/modules/dynamicdns/templates/dynamicdns.html:38
+#: plinth/modules/dynamicdns/templates/dynamicdns.html:23
#, python-format
msgid ""
"If your %(box_name)s is connected behind a NAT router, don't forget to add "
@@ -1168,27 +1197,27 @@ msgid ""
"port 443 (HTTPS)."
msgstr ""
-#: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:30
+#: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:15
msgid ""
"You have disabled Javascript. Dynamic form mode is disabled and some helper "
"functions may not work (but the main functionality should work)."
msgstr ""
-#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:24
+#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:9
msgid "NAT type"
msgstr ""
-#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:28
+#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:13
msgid ""
"NAT type was not detected yet. If you do not provide an \"IP Check URL\", we "
"will not detect a NAT type."
msgstr ""
-#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:34
+#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:19
msgid "Direct connection to the Internet."
msgstr ""
-#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:36
+#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:21
#, python-format
msgid ""
"Behind NAT. This means that Dynamic DNS service will poll the \"URL to look "
@@ -1197,54 +1226,45 @@ msgid ""
"changes, it may take up to %(timer)s minutes until your DNS entry is updated."
msgstr ""
-#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:48
+#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:33
msgid "Last update"
msgstr ""
-#: plinth/modules/dynamicdns/views.py:41 plinth/modules/help/__init__.py:59
-#: plinth/templates/help-menu.html:61 plinth/templates/help-menu.html:62
+#: plinth/modules/dynamicdns/views.py:26 plinth/modules/help/__init__.py:49
+#: plinth/templates/help-menu.html:46 plinth/templates/help-menu.html:47
msgid "About"
msgstr ""
-#: plinth/modules/dynamicdns/views.py:47
-#: plinth/modules/firewall/templates/firewall.html:25
-#: plinth/modules/firewall/templates/firewall.html:45
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:38
-#: plinth/modules/networks/templates/connection_show.html:261
-#: plinth/modules/openvpn/templates/openvpn.html:39
-#: plinth/modules/openvpn/templates/openvpn.html:60
-#: plinth/modules/tor/templates/tor.html:37
-#: plinth/modules/tor/templates/tor.html:51
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:61
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:60
-#: plinth/templates/app.html:42
+#: plinth/modules/dynamicdns/views.py:32
+#: plinth/modules/firewall/templates/firewall.html:10
+#: plinth/modules/firewall/templates/firewall.html:30
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:23
+#: plinth/modules/networks/templates/connection_show.html:246
+#: plinth/modules/openvpn/templates/openvpn.html:24
+#: plinth/modules/openvpn/templates/openvpn.html:45
+#: plinth/modules/tor/templates/tor.html:22
+#: plinth/modules/tor/templates/tor.html:36
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:46
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:45
+#: plinth/templates/app.html:27
msgid "Status"
msgstr ""
-#: plinth/modules/dynamicdns/views.py:79
+#: plinth/modules/dynamicdns/views.py:62
msgid "Configure Dynamic DNS"
msgstr ""
-#: plinth/modules/dynamicdns/views.py:105
+#: plinth/modules/dynamicdns/views.py:86
msgid "Dynamic DNS Status"
msgstr ""
-#: plinth/modules/ejabberd/__init__.py:50
-msgid "ejabberd"
-msgstr ""
-
-#: plinth/modules/ejabberd/__init__.py:54
-#: plinth/modules/matrixsynapse/__init__.py:52
-msgid "Chat Server"
-msgstr ""
-
-#: plinth/modules/ejabberd/__init__.py:57
+#: plinth/modules/ejabberd/__init__.py:36
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:60
+#: plinth/modules/ejabberd/__init__.py:39
#, python-brace-format
msgid ""
"To actually communicate, you can use the web client"
@@ -1253,11 +1273,20 @@ msgid ""
"any user with a {box_name} login."
msgstr ""
-#: plinth/modules/ejabberd/forms.py:32
+#: plinth/modules/ejabberd/__init__.py:70
+msgid "ejabberd"
+msgstr ""
+
+#: plinth/modules/ejabberd/__init__.py:71
+#: plinth/modules/matrixsynapse/__init__.py:68
+msgid "Chat Server"
+msgstr ""
+
+#: plinth/modules/ejabberd/forms.py:17
msgid "Enable Message Archive Management"
msgstr ""
-#: plinth/modules/ejabberd/forms.py:34
+#: plinth/modules/ejabberd/forms.py:19
#, python-brace-format
msgid ""
"If enabled, your {box_name} will store chat message histories. This allows "
@@ -1266,29 +1295,29 @@ msgid ""
"the histories are stored as plain text or encrypted."
msgstr ""
-#: plinth/modules/ejabberd/manifest.py:26
+#: plinth/modules/ejabberd/manifest.py:11
msgid "Conversations"
msgstr ""
-#: plinth/modules/ejabberd/manifest.py:40
+#: plinth/modules/ejabberd/manifest.py:25
msgid "Xabber"
msgstr ""
-#: plinth/modules/ejabberd/manifest.py:42
+#: plinth/modules/ejabberd/manifest.py:27
msgid ""
"Open source Jabber (XMPP) client with multi-account support and clean and "
"simple interface. "
msgstr ""
-#: plinth/modules/ejabberd/manifest.py:57
+#: plinth/modules/ejabberd/manifest.py:42
msgid "Yaxim"
msgstr ""
-#: plinth/modules/ejabberd/manifest.py:71
+#: plinth/modules/ejabberd/manifest.py:56
msgid "ChatSecure"
msgstr ""
-#: plinth/modules/ejabberd/manifest.py:73
+#: plinth/modules/ejabberd/manifest.py:58
msgid ""
"ChatSecure is a free and open source messaging app that features OTR "
"encryption over XMPP. You can connect to an existing Google account, create "
@@ -1296,15 +1325,15 @@ msgid ""
"your own server for extra security."
msgstr ""
-#: plinth/modules/ejabberd/manifest.py:89
+#: plinth/modules/ejabberd/manifest.py:74
msgid "Dino"
msgstr ""
-#: plinth/modules/ejabberd/manifest.py:101
+#: plinth/modules/ejabberd/manifest.py:86
msgid "Gajim"
msgstr ""
-#: plinth/modules/ejabberd/templates/ejabberd.html:33
+#: plinth/modules/ejabberd/templates/ejabberd.html:18
#, python-format
msgid ""
"Your XMPP server domain is set to %(domainname)s. User IDs will look "
@@ -1312,28 +1341,24 @@ msgid ""
"Configure page."
msgstr ""
-#: plinth/modules/ejabberd/templates/ejabberd.html:50
-#: plinth/modules/i2p/templates/i2p.html:26
-#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:30
-#: plinth/modules/snapshot/templates/snapshot.html:27
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:43
-#: plinth/templates/app.html:70
+#: plinth/modules/ejabberd/templates/ejabberd.html:35
+#: plinth/modules/i2p/templates/i2p.html:11
+#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:15
+#: plinth/modules/snapshot/templates/snapshot.html:12
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:27
+#: plinth/templates/app.html:55
msgid "Configuration"
msgstr ""
-#: plinth/modules/ejabberd/views.py:78
+#: plinth/modules/ejabberd/views.py:58
msgid "Message Archive Management enabled"
msgstr ""
-#: plinth/modules/ejabberd/views.py:82
+#: plinth/modules/ejabberd/views.py:62
msgid "Message Archive Management disabled"
msgstr ""
-#: plinth/modules/firewall/__init__.py:39
-msgid "Firewall"
-msgstr ""
-
-#: plinth/modules/firewall/__init__.py:43
+#: plinth/modules/firewall/__init__.py:32
#, python-brace-format
msgid ""
"Firewall is a security system that controls the incoming and outgoing "
@@ -1341,22 +1366,26 @@ msgid ""
"configured reduces risk of security threat from the Internet."
msgstr ""
-#: plinth/modules/firewall/components.py:130
+#: plinth/modules/firewall/__init__.py:63
+msgid "Firewall"
+msgstr ""
+
+#: plinth/modules/firewall/components.py:118
#, python-brace-format
msgid "Port {name} ({details}) available for internal networks"
msgstr ""
-#: plinth/modules/firewall/components.py:138
+#: plinth/modules/firewall/components.py:126
#, python-brace-format
msgid "Port {name} ({details}) available for external networks"
msgstr ""
-#: plinth/modules/firewall/components.py:143
+#: plinth/modules/firewall/components.py:131
#, python-brace-format
msgid "Port {name} ({details}) unavailable for external networks"
msgstr ""
-#: plinth/modules/firewall/templates/firewall.html:30
+#: plinth/modules/firewall/templates/firewall.html:15
#, python-format
msgid ""
"Firewall daemon is not running. Please run it. Firewall comes enabled by "
@@ -1365,49 +1394,49 @@ msgid ""
"system with systemd 'systemctl start firewalld'."
msgstr ""
-#: plinth/modules/firewall/templates/firewall.html:43
+#: plinth/modules/firewall/templates/firewall.html:28
msgid "Show Ports"
msgstr ""
-#: plinth/modules/firewall/templates/firewall.html:44
+#: plinth/modules/firewall/templates/firewall.html:29
msgid "Service/Port"
msgstr ""
-#: plinth/modules/firewall/templates/firewall.html:63
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:89
+#: plinth/modules/firewall/templates/firewall.html:48
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:74
msgid "Enabled"
msgstr ""
-#: plinth/modules/firewall/templates/firewall.html:66
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:91
-#: plinth/modules/networks/forms.py:64 plinth/templates/cards.html:49
+#: plinth/modules/firewall/templates/firewall.html:51
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:76
+#: plinth/modules/networks/forms.py:47 plinth/templates/cards.html:34
msgid "Disabled"
msgstr ""
-#: plinth/modules/firewall/templates/firewall.html:78
+#: plinth/modules/firewall/templates/firewall.html:67
msgid "Permitted"
msgstr ""
-#: plinth/modules/firewall/templates/firewall.html:81
+#: plinth/modules/firewall/templates/firewall.html:70
msgid "Permitted (internal only)"
msgstr ""
-#: plinth/modules/firewall/templates/firewall.html:84
+#: plinth/modules/firewall/templates/firewall.html:73
msgid "Permitted (external only)"
msgstr ""
-#: plinth/modules/firewall/templates/firewall.html:87
+#: plinth/modules/firewall/templates/firewall.html:76
msgid "Blocked"
msgstr ""
-#: plinth/modules/firewall/templates/firewall.html:99
+#: plinth/modules/firewall/templates/firewall.html:88
msgid ""
"The operation of the firewall is automatic. When you enable a service it is "
"also permitted in the firewall and when you disable a service it is also "
"disabled in the firewall."
msgstr ""
-#: plinth/modules/first_boot/forms.py:29
+#: plinth/modules/first_boot/forms.py:14
#, python-brace-format
msgid ""
"Enter the secret generated during FreedomBox installation. This secret can "
@@ -1415,47 +1444,39 @@ msgid ""
"wizard-secret\" on your {box_name}"
msgstr ""
-#: plinth/modules/first_boot/forms.py:34
+#: plinth/modules/first_boot/forms.py:19
msgid "Firstboot Wizard Secret"
msgstr ""
-#: plinth/modules/first_boot/templates/firstboot_complete.html:26
+#: plinth/modules/first_boot/templates/firstboot_complete.html:11
msgid "Setup Complete!"
msgstr ""
-#: plinth/modules/first_boot/templates/firstboot_complete.html:29
+#: plinth/modules/first_boot/templates/firstboot_complete.html:14
#, python-format
msgid "Without any apps, your %(box_name)s cannot do very much."
msgstr ""
-#: plinth/modules/first_boot/templates/firstboot_complete.html:36
+#: plinth/modules/first_boot/templates/firstboot_complete.html:21
msgid "Install Apps"
msgstr ""
-#: plinth/modules/first_boot/templates/firstboot_complete.html:42
+#: plinth/modules/first_boot/templates/firstboot_complete.html:27
#, python-format
msgid ""
"You may want to check the network setup and "
"modify it if necessary."
msgstr ""
-#: plinth/modules/first_boot/templates/firstboot_welcome.html:52
+#: plinth/modules/first_boot/templates/firstboot_welcome.html:37
msgid "Start Setup"
msgstr ""
-#: plinth/modules/first_boot/views.py:64
+#: plinth/modules/first_boot/views.py:49
msgid "Setup Complete"
msgstr ""
-#: plinth/modules/gitweb/__init__.py:44 plinth/modules/gitweb/manifest.py:28
-msgid "Gitweb"
-msgstr ""
-
-#: plinth/modules/gitweb/__init__.py:48
-msgid "Simple Git Hosting"
-msgstr ""
-
-#: plinth/modules/gitweb/__init__.py:51
+#: plinth/modules/gitweb/__init__.py:28
msgid ""
"Git is a distributed version-control system for tracking changes in source "
"code during software development. Gitweb provides a web interface to Git "
@@ -1466,180 +1487,188 @@ msgid ""
"the world."
msgstr ""
-#: plinth/modules/gitweb/__init__.py:58
+#: plinth/modules/gitweb/__init__.py:35
msgid ""
"To learn more on how to use Git visit Git tutorial."
msgstr ""
-#: plinth/modules/gitweb/__init__.py:64
+#: plinth/modules/gitweb/__init__.py:39
msgid "Read-write access to Git repositories"
msgstr ""
-#: plinth/modules/gitweb/forms.py:59
+#: plinth/modules/gitweb/__init__.py:56 plinth/modules/gitweb/manifest.py:13
+msgid "Gitweb"
+msgstr ""
+
+#: plinth/modules/gitweb/__init__.py:57
+msgid "Simple Git Hosting"
+msgstr ""
+
+#: plinth/modules/gitweb/forms.py:44
msgid "Invalid repository URL."
msgstr ""
-#: plinth/modules/gitweb/forms.py:69
+#: plinth/modules/gitweb/forms.py:54
msgid "Invalid repository name."
msgstr ""
-#: plinth/modules/gitweb/forms.py:77
+#: plinth/modules/gitweb/forms.py:62
msgid "Name of a new repository or URL to import an existing repository."
msgstr ""
-#: plinth/modules/gitweb/forms.py:83
+#: plinth/modules/gitweb/forms.py:68
msgid "Description of the repository"
msgstr ""
-#: plinth/modules/gitweb/forms.py:84 plinth/modules/gitweb/forms.py:88
+#: plinth/modules/gitweb/forms.py:69 plinth/modules/gitweb/forms.py:73
msgid "Optional, for displaying on Gitweb."
msgstr ""
-#: plinth/modules/gitweb/forms.py:86
+#: plinth/modules/gitweb/forms.py:71
msgid "Repository's owner name"
msgstr ""
-#: plinth/modules/gitweb/forms.py:91
+#: plinth/modules/gitweb/forms.py:76
msgid "Private repository"
msgstr ""
-#: plinth/modules/gitweb/forms.py:92
+#: plinth/modules/gitweb/forms.py:77
msgid "Allow only authorized users to access this repository."
msgstr ""
-#: plinth/modules/gitweb/forms.py:113 plinth/modules/gitweb/forms.py:145
+#: plinth/modules/gitweb/forms.py:98 plinth/modules/gitweb/forms.py:130
msgid "A repository with this name already exists."
msgstr ""
-#: plinth/modules/gitweb/forms.py:126
+#: plinth/modules/gitweb/forms.py:111
msgid "Name of the repository"
msgstr ""
-#: plinth/modules/gitweb/forms.py:130
+#: plinth/modules/gitweb/forms.py:115
msgid "An alpha-numeric string that uniquely identifies a repository."
msgstr ""
-#: plinth/modules/gitweb/manifest.py:36
+#: plinth/modules/gitweb/manifest.py:21
msgid "Git"
msgstr ""
-#: plinth/modules/gitweb/templates/gitweb_configure.html:46
+#: plinth/modules/gitweb/templates/gitweb_configure.html:31
msgid "Manage Repositories"
msgstr ""
-#: plinth/modules/gitweb/templates/gitweb_configure.html:50
-#: plinth/modules/gitweb/templates/gitweb_configure.html:52
+#: plinth/modules/gitweb/templates/gitweb_configure.html:35
+#: plinth/modules/gitweb/templates/gitweb_configure.html:37
msgid "Create repository"
msgstr ""
-#: plinth/modules/gitweb/templates/gitweb_configure.html:59
+#: plinth/modules/gitweb/templates/gitweb_configure.html:44
msgid "No repositories available."
msgstr ""
-#: plinth/modules/gitweb/templates/gitweb_configure.html:67
+#: plinth/modules/gitweb/templates/gitweb_configure.html:52
#, python-format
msgid "Delete repository %(repo.name)s"
msgstr ""
-#: plinth/modules/gitweb/templates/gitweb_configure.html:83
+#: plinth/modules/gitweb/templates/gitweb_configure.html:68
msgid "Cloning..."
msgstr ""
-#: plinth/modules/gitweb/templates/gitweb_configure.html:89
+#: plinth/modules/gitweb/templates/gitweb_configure.html:74
#, python-format
msgid "Go to repository %(repo.name)s"
msgstr ""
-#: plinth/modules/gitweb/templates/gitweb_delete.html:27
+#: plinth/modules/gitweb/templates/gitweb_delete.html:12
#, python-format
msgid "Delete Git Repository %(name)s"
msgstr ""
-#: plinth/modules/gitweb/templates/gitweb_delete.html:33
+#: plinth/modules/gitweb/templates/gitweb_delete.html:18
msgid "Delete this repository permanently?"
msgstr ""
-#: plinth/modules/gitweb/templates/gitweb_delete.html:42
-#: plinth/modules/ikiwiki/templates/ikiwiki_delete.html:44
+#: plinth/modules/gitweb/templates/gitweb_delete.html:27
+#: plinth/modules/ikiwiki/templates/ikiwiki_delete.html:29
#, python-format
msgid "Delete %(name)s"
msgstr ""
-#: plinth/modules/gitweb/views.py:65
+#: plinth/modules/gitweb/views.py:45
msgid "Repository created."
msgstr ""
-#: plinth/modules/gitweb/views.py:87
+#: plinth/modules/gitweb/views.py:67
msgid "An error occurred while creating the repository."
msgstr ""
-#: plinth/modules/gitweb/views.py:100
+#: plinth/modules/gitweb/views.py:80
msgid "Repository edited."
msgstr ""
-#: plinth/modules/gitweb/views.py:105
+#: plinth/modules/gitweb/views.py:85
msgid "Edit repository"
msgstr ""
-#: plinth/modules/gitweb/views.py:133 plinth/modules/searx/views.py:62
-#: plinth/modules/searx/views.py:73 plinth/modules/tor/views.py:178
+#: plinth/modules/gitweb/views.py:113 plinth/modules/searx/views.py:42
+#: plinth/modules/searx/views.py:53 plinth/modules/tor/views.py:159
msgid "An error occurred during configuration."
msgstr ""
-#: plinth/modules/gitweb/views.py:154
+#: plinth/modules/gitweb/views.py:134
#, python-brace-format
msgid "{name} deleted."
msgstr ""
-#: plinth/modules/gitweb/views.py:158
+#: plinth/modules/gitweb/views.py:138
#, python-brace-format
msgid "Could not delete {name}: {error}"
msgstr ""
-#: plinth/modules/help/__init__.py:40
+#: plinth/modules/help/__init__.py:30
msgid "Documentation"
msgstr ""
-#: plinth/modules/help/__init__.py:43 plinth/modules/networks/forms.py:64
-#: plinth/modules/networks/forms.py:95 plinth/templates/help-menu.html:35
-#: plinth/templates/help-menu.html:36 plinth/templates/index.html:135
+#: plinth/modules/help/__init__.py:33 plinth/modules/networks/forms.py:47
+#: plinth/modules/networks/forms.py:77 plinth/templates/help-menu.html:20
+#: plinth/templates/help-menu.html:21 plinth/templates/index.html:120
msgid "Manual"
msgstr ""
-#: plinth/modules/help/__init__.py:47 plinth/modules/help/help.py:58
-#: plinth/modules/help/templates/help_support.html:24
-#: plinth/templates/help-menu.html:42 plinth/templates/help-menu.html:43
+#: plinth/modules/help/__init__.py:37 plinth/modules/help/help.py:43
+#: plinth/modules/help/templates/help_support.html:9
+#: plinth/templates/help-menu.html:27 plinth/templates/help-menu.html:28
msgid "Get Support"
msgstr ""
-#: plinth/modules/help/__init__.py:51 plinth/modules/help/help.py:52
-#: plinth/modules/help/templates/help_feedback.html:24
-#: plinth/templates/help-menu.html:48 plinth/templates/help-menu.html:49
+#: plinth/modules/help/__init__.py:41 plinth/modules/help/help.py:37
+#: plinth/modules/help/templates/help_feedback.html:9
+#: plinth/templates/help-menu.html:33 plinth/templates/help-menu.html:34
msgid "Submit Feedback"
msgstr ""
-#: plinth/modules/help/__init__.py:55 plinth/modules/help/help.py:46
-#: plinth/modules/help/templates/help_contribute.html:24
-#: plinth/templates/help-menu.html:54 plinth/templates/help-menu.html:55
+#: plinth/modules/help/__init__.py:45 plinth/modules/help/help.py:31
+#: plinth/modules/help/templates/help_contribute.html:9
+#: plinth/templates/help-menu.html:39 plinth/templates/help-menu.html:40
msgid "Contribute"
msgstr ""
-#: plinth/modules/help/help.py:40
+#: plinth/modules/help/help.py:25
msgid "Documentation and FAQ"
msgstr ""
-#: plinth/modules/help/help.py:66
+#: plinth/modules/help/help.py:51
#, python-brace-format
msgid "About {box_name}"
msgstr ""
-#: plinth/modules/help/help.py:101
+#: plinth/modules/help/help.py:86
#, python-brace-format
msgid "{box_name} Manual"
msgstr ""
-#: plinth/modules/help/templates/help_about.html:32
+#: plinth/modules/help/templates/help_about.html:17
#, python-format
msgid ""
"%(box_name)s is a community project to develop, design and promote personal "
@@ -1651,7 +1680,7 @@ msgid ""
"your data stays with you."
msgstr ""
-#: plinth/modules/help/templates/help_about.html:45
+#: plinth/modules/help/templates/help_about.html:30
msgid ""
"We live in a world where our use of the network is mediated by those who "
"often do not have our best interests at heart. By building software that "
@@ -1661,7 +1690,7 @@ msgid ""
"returning the Internet to its intended peer-to-peer architecture."
msgstr ""
-#: plinth/modules/help/templates/help_about.html:58
+#: plinth/modules/help/templates/help_about.html:43
#, python-format
msgid ""
"There are a number of projects working to realize a future of distributed "
@@ -1669,37 +1698,37 @@ msgid ""
"package."
msgstr ""
-#: plinth/modules/help/templates/help_about.html:66
+#: plinth/modules/help/templates/help_about.html:51
#, python-format
msgid ""
"For more information about the %(box_name)s project, see the %(box_name)s Wiki."
msgstr ""
-#: plinth/modules/help/templates/help_about.html:75
+#: plinth/modules/help/templates/help_about.html:60
msgid "Learn more »"
msgstr ""
-#: plinth/modules/help/templates/help_about.html:78
+#: plinth/modules/help/templates/help_about.html:63
#, python-format
msgid "You are running %(os_release)s and %(box_name)s version %(version)s."
msgstr ""
-#: plinth/modules/help/templates/help_about.html:83
+#: plinth/modules/help/templates/help_about.html:68
#, python-format
msgid "There is a new %(box_name)s version available."
msgstr ""
-#: plinth/modules/help/templates/help_about.html:87
+#: plinth/modules/help/templates/help_about.html:72
#, python-format
msgid "%(box_name)s is up to date."
msgstr ""
-#: plinth/modules/help/templates/help_about.html:94
+#: plinth/modules/help/templates/help_about.html:79
msgid "Security Notice"
msgstr ""
-#: plinth/modules/help/templates/help_about.html:96
+#: plinth/modules/help/templates/help_about.html:81
msgid ""
"You are using packages from Debian backports. Please note that these "
"packages do not have security support from Debian. However, they are "
@@ -1707,17 +1736,17 @@ msgid ""
"community."
msgstr ""
-#: plinth/modules/help/templates/help_base.html:36
-#: plinth/modules/help/templates/help_index.html:76
+#: plinth/modules/help/templates/help_base.html:21
+#: plinth/modules/help/templates/help_index.html:61
#, python-format
msgid "%(box_name)s Setup"
msgstr ""
-#: plinth/modules/help/templates/help_contribute.html:27
+#: plinth/modules/help/templates/help_contribute.html:12
msgid "The FreedomBox project welcomes contributions of all kinds."
msgstr ""
-#: plinth/modules/help/templates/help_contribute.html:33
+#: plinth/modules/help/templates/help_contribute.html:18
msgid ""
"You can contribute by writing code, testing and reporting bugs, discussing "
"new use cases and applications, designing logos and artwork, providing "
@@ -1726,7 +1755,7 @@ msgid ""
"the word."
msgstr ""
-#: plinth/modules/help/templates/help_contribute.html:43
+#: plinth/modules/help/templates/help_contribute.html:28
msgid ""
"You can also help the project financially by donating to the non-profit FreedomBox "
@@ -1738,26 +1767,26 @@ msgid ""
"supporters."
msgstr ""
-#: plinth/modules/help/templates/help_contribute.html:57
-#: plinth/modules/power/templates/power_restart.html:42
-#: plinth/modules/power/templates/power_shutdown.html:41
-#: plinth/templates/header.html:59
+#: plinth/modules/help/templates/help_contribute.html:42
+#: plinth/modules/power/templates/power_restart.html:27
+#: plinth/modules/power/templates/power_shutdown.html:26
+#: plinth/templates/app-header.html:51
msgid "Learn more..."
msgstr ""
-#: plinth/modules/help/templates/help_feedback.html:27
+#: plinth/modules/help/templates/help_feedback.html:12
#, python-format
msgid "Your feedback will help us improve %(box_name)s!"
msgstr ""
-#: plinth/modules/help/templates/help_feedback.html:33
+#: plinth/modules/help/templates/help_feedback.html:18
msgid ""
"Let us know about missing features, your favourite apps and how we can "
"improve them on our discussion forum."
msgstr ""
-#: plinth/modules/help/templates/help_feedback.html:41
+#: plinth/modules/help/templates/help_feedback.html:26
msgid ""
"If you find any bugs or issues, please use the issue tracker"
@@ -1765,30 +1794,30 @@ msgid ""
"already reported and then use the \"New issue\" button."
msgstr ""
-#: plinth/modules/help/templates/help_feedback.html:51
+#: plinth/modules/help/templates/help_feedback.html:36
msgid "Thank you!"
msgstr ""
-#: plinth/modules/help/templates/help_index.html:27
-#: plinth/templates/help-menu.html:23 plinth/templates/help-menu.html:28
+#: plinth/modules/help/templates/help_index.html:12
+#: plinth/templates/help-menu.html:8 plinth/templates/help-menu.html:13
msgid "Help"
msgstr ""
-#: plinth/modules/help/templates/help_index.html:31
+#: plinth/modules/help/templates/help_index.html:16
#, python-format
msgid ""
"The %(box_name)s Manual is the best place to "
"start for information regarding %(box_name)s."
msgstr ""
-#: plinth/modules/help/templates/help_index.html:38
+#: plinth/modules/help/templates/help_index.html:23
#, python-format
msgid ""
" "
"%(box_name)s project wiki contains further information."
msgstr ""
-#: plinth/modules/help/templates/help_index.html:45
+#: plinth/modules/help/templates/help_index.html:30
#, python-format
msgid ""
"To seek help from %(box_name)s community, queries may be posted on the discussion forum."
msgstr ""
-#: plinth/modules/help/templates/help_support.html:42
+#: plinth/modules/help/templates/help_support.html:27
msgid ""
"You can also chat with us on our IRC and Matrix channels (bridged): "
"
"
@@ -1832,11 +1861,11 @@ msgid ""
"debian.net\">mailing list."
msgstr ""
-#: plinth/modules/help/templates/statuslog.html:25
+#: plinth/modules/help/templates/statuslog.html:10
msgid "Status Log"
msgstr ""
-#: plinth/modules/help/templates/statuslog.html:28
+#: plinth/modules/help/templates/statuslog.html:13
#, python-format
msgid ""
"These are the last %(num_lines)s lines of the status log for this web "
@@ -1845,21 +1874,13 @@ msgid ""
"this status log to the bug report."
msgstr ""
-#: plinth/modules/help/templates/statuslog.html:39
+#: plinth/modules/help/templates/statuslog.html:24
msgid ""
"Please remove any passwords or other personal information from the log "
"before submitting the bug report."
msgstr ""
-#: plinth/modules/i2p/__init__.py:42 plinth/modules/i2p/manifest.py:31
-msgid "I2P"
-msgstr ""
-
-#: plinth/modules/i2p/__init__.py:46 plinth/modules/tor/__init__.py:49
-msgid "Anonymity Network"
-msgstr ""
-
-#: plinth/modules/i2p/__init__.py:49
+#: plinth/modules/i2p/__init__.py:28
msgid ""
"The Invisible Internet Project is an anonymous network layer intended to "
"protect communication from censorship and surveillance. I2P provides "
@@ -1867,83 +1888,83 @@ msgid ""
"distributed around the world."
msgstr ""
-#: plinth/modules/i2p/__init__.py:53
+#: plinth/modules/i2p/__init__.py:32
msgid ""
"Find more information about I2P on their project homepage."
msgstr ""
-#: plinth/modules/i2p/__init__.py:55
+#: plinth/modules/i2p/__init__.py:34
msgid ""
"The first visit to the provided web interface will initiate the "
"configuration process."
msgstr ""
-#: plinth/modules/i2p/__init__.py:61
+#: plinth/modules/i2p/__init__.py:38
msgid "Manage I2P application"
msgstr ""
-#: plinth/modules/i2p/__init__.py:103
+#: plinth/modules/i2p/__init__.py:64 plinth/modules/i2p/manifest.py:16
+msgid "I2P"
+msgstr ""
+
+#: plinth/modules/i2p/__init__.py:65 plinth/modules/tor/__init__.py:56
+msgid "Anonymity Network"
+msgstr ""
+
+#: plinth/modules/i2p/__init__.py:87
msgid "I2P Proxy"
msgstr ""
-#: plinth/modules/i2p/templates/i2p_service.html:31
-#: plinth/templates/clients.html:43
+#: plinth/modules/i2p/templates/i2p_service.html:16
+#: plinth/templates/clients.html:28
msgid "Launch"
msgstr ""
-#: plinth/modules/i2p/views.py:34
+#: plinth/modules/i2p/views.py:19
msgid "Proxies"
msgstr ""
-#: plinth/modules/i2p/views.py:37
+#: plinth/modules/i2p/views.py:22
msgid "Anonymous torrents"
msgstr ""
-#: plinth/modules/i2p/views.py:88
+#: plinth/modules/i2p/views.py:64
msgid "I2P Proxies and Tunnels"
msgstr ""
-#: plinth/modules/i2p/views.py:91
+#: plinth/modules/i2p/views.py:67
msgid ""
"I2P lets you browse the Internet and hidden services (eepsites) anonymously. "
"For this, your browser, preferably a Tor Browser, needs to be configured for "
"a proxy."
msgstr ""
-#: plinth/modules/i2p/views.py:94
+#: plinth/modules/i2p/views.py:70
msgid ""
"By default HTTP, HTTPS and IRC proxies are available. Additional proxies and "
"tunnels may be configured using the tunnel configuration interface."
msgstr ""
-#: plinth/modules/i2p/views.py:103
+#: plinth/modules/i2p/views.py:79
msgid "Anonymous Torrents"
msgstr ""
-#: plinth/modules/i2p/views.py:106
+#: plinth/modules/i2p/views.py:82
msgid ""
"I2P provides an application to download files anonymously in a peer-to-peer "
"network. Download files by adding torrents or create a new torrent to share "
"a file."
msgstr ""
-#: plinth/modules/ikiwiki/__init__.py:41 plinth/modules/ikiwiki/manifest.py:24
-msgid "ikiwiki"
-msgstr ""
-
-#: plinth/modules/ikiwiki/__init__.py:45
-msgid "Wiki and Blog"
-msgstr ""
-
-#: plinth/modules/ikiwiki/__init__.py:48
+#: plinth/modules/ikiwiki/__init__.py:27
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."
msgstr ""
-#: plinth/modules/ikiwiki/__init__.py:52
+#: plinth/modules/ikiwiki/__init__.py:31
#, python-brace-format
msgid ""
"Only {box_name} users in the admin group can create and "
@@ -1952,102 +1973,96 @@ msgid ""
"Configuration you can change these permissions or add new users."
msgstr ""
-#: plinth/modules/ikiwiki/__init__.py:62
+#: plinth/modules/ikiwiki/__init__.py:39
msgid "View and edit wiki applications"
msgstr ""
-#: plinth/modules/ikiwiki/forms.py:27
-#: plinth/modules/networks/templates/connection_show.html:98
-#: plinth/modules/storage/templates/storage.html:43
-msgid "Type"
+#: plinth/modules/ikiwiki/__init__.py:53 plinth/modules/ikiwiki/manifest.py:9
+msgid "ikiwiki"
msgstr ""
-#: plinth/modules/ikiwiki/forms.py:32
+#: plinth/modules/ikiwiki/__init__.py:54
+msgid "Wiki and Blog"
+msgstr ""
+
+#: plinth/modules/ikiwiki/forms.py:17
msgid "Admin Account Name"
msgstr ""
-#: plinth/modules/ikiwiki/forms.py:34
+#: plinth/modules/ikiwiki/forms.py:19
msgid "Admin Account Password"
msgstr ""
-#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:27
+#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:12
msgid "Manage Wikis and Blogs"
msgstr ""
-#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:31
-#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:33
-#: plinth/modules/ikiwiki/templates/ikiwiki_create.html:25
+#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:16
+#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:18
+#: plinth/modules/ikiwiki/templates/ikiwiki_create.html:10
msgid "Create Wiki or Blog"
msgstr ""
-#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:40
+#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:25
msgid "No wikis or blogs available."
msgstr ""
-#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:48
+#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:33
#, python-format
msgid "Delete site %(site)s"
msgstr ""
-#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:55
+#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:40
#, python-format
msgid "Go to site %(site)s"
msgstr ""
-#: plinth/modules/ikiwiki/templates/ikiwiki_delete.html:27
+#: plinth/modules/ikiwiki/templates/ikiwiki_delete.html:12
#, python-format
msgid "Delete Wiki or Blog %(name)s"
msgstr ""
-#: plinth/modules/ikiwiki/templates/ikiwiki_delete.html:33
+#: plinth/modules/ikiwiki/templates/ikiwiki_delete.html:18
msgid ""
"This action will remove all the posts, pages and comments including revision "
"history. Delete this wiki or blog permanently?"
msgstr ""
-#: plinth/modules/ikiwiki/views.py:96
+#: plinth/modules/ikiwiki/views.py:73
#, python-brace-format
msgid "Created wiki {name}."
msgstr ""
-#: plinth/modules/ikiwiki/views.py:99
+#: plinth/modules/ikiwiki/views.py:76
#, python-brace-format
msgid "Could not create wiki: {error}"
msgstr ""
-#: plinth/modules/ikiwiki/views.py:109
+#: plinth/modules/ikiwiki/views.py:86
#, python-brace-format
msgid "Created blog {name}."
msgstr ""
-#: plinth/modules/ikiwiki/views.py:112
+#: plinth/modules/ikiwiki/views.py:89
#, python-brace-format
msgid "Could not create blog: {error}"
msgstr ""
-#: plinth/modules/ikiwiki/views.py:127
+#: plinth/modules/ikiwiki/views.py:104
#, python-brace-format
msgid "{title} deleted."
msgstr ""
-#: plinth/modules/ikiwiki/views.py:131
+#: plinth/modules/ikiwiki/views.py:108
#, python-brace-format
msgid "Could not delete {title}: {error}"
msgstr ""
-#: plinth/modules/infinoted/__init__.py:42
-msgid "infinoted"
-msgstr ""
-
-#: plinth/modules/infinoted/__init__.py:46
-msgid "Gobby Server"
-msgstr ""
-
-#: plinth/modules/infinoted/__init__.py:49
+#: plinth/modules/infinoted/__init__.py:26
msgid "infinoted is a server for Gobby, a collaborative text editor."
msgstr ""
-#: plinth/modules/infinoted/__init__.py:51
+#: plinth/modules/infinoted/__init__.py:28
#, python-brace-format
msgid ""
"To use it, download Gobby, desktop "
@@ -2055,49 +2070,49 @@ msgid ""
"enter your {box_name}'s domain name."
msgstr ""
-#: plinth/modules/infinoted/manifest.py:27
+#: plinth/modules/infinoted/__init__.py:48
+msgid "infinoted"
+msgstr ""
+
+#: plinth/modules/infinoted/__init__.py:49
+msgid "Gobby Server"
+msgstr ""
+
+#: plinth/modules/infinoted/manifest.py:12
msgid "Gobby"
msgstr ""
-#: plinth/modules/infinoted/manifest.py:29
+#: plinth/modules/infinoted/manifest.py:14
msgid "Gobby is a collaborative text editor"
msgstr ""
-#: plinth/modules/infinoted/manifest.py:32
+#: plinth/modules/infinoted/manifest.py:17
#, python-brace-format
msgid ""
"Start Gobby and select \"Connect to Server\" and enter your {box_name}'s "
"domain name."
msgstr ""
-#: plinth/modules/jsxc/__init__.py:36 plinth/modules/jsxc/manifest.py:25
-msgid "JSXC"
-msgstr ""
-
-#: plinth/modules/jsxc/__init__.py:40
-msgid "Chat Client"
-msgstr ""
-
-#: plinth/modules/jsxc/__init__.py:43
+#: plinth/modules/jsxc/__init__.py:22
msgid ""
"JSXC is a web client for XMPP. Typically it is used with an XMPP server "
"running locally."
msgstr ""
-#: plinth/modules/jsxc/templates/jsxc_launch.html:140
-#: plinth/templates/base.html:253
+#: plinth/modules/jsxc/__init__.py:40 plinth/modules/jsxc/manifest.py:10
+msgid "JSXC"
+msgstr ""
+
+#: plinth/modules/jsxc/__init__.py:41
+msgid "Chat Client"
+msgstr ""
+
+#: plinth/modules/jsxc/templates/jsxc_launch.html:125
+#: plinth/templates/base.html:238
msgid "JavaScript license information"
msgstr ""
-#: plinth/modules/letsencrypt/__init__.py:48
-msgid "Let's Encrypt"
-msgstr ""
-
-#: plinth/modules/letsencrypt/__init__.py:50
-msgid "Certificates"
-msgstr ""
-
-#: plinth/modules/letsencrypt/__init__.py:54
+#: plinth/modules/letsencrypt/__init__.py:35
#, python-brace-format
msgid ""
"A digital certificate allows users of a web service to verify the identity "
@@ -2107,7 +2122,7 @@ msgid ""
"Encrypt, a certificate authority (CA)."
msgstr ""
-#: plinth/modules/letsencrypt/__init__.py:60
+#: plinth/modules/letsencrypt/__init__.py:41
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 "
@@ -2115,118 +2130,122 @@ msgid ""
"\">Let's Encrypt Subscriber Agreement before using this service."
msgstr ""
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:44
+#: plinth/modules/letsencrypt/__init__.py:65
+msgid "Let's Encrypt"
+msgstr ""
+
+#: plinth/modules/letsencrypt/__init__.py:66
+msgid "Certificates"
+msgstr ""
+
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:29
msgid "Domain"
msgstr ""
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:45
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:30
msgid "Certificate Status"
msgstr ""
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:46
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:31
msgid "Website Security"
msgstr ""
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:47
-#: plinth/modules/storage/templates/storage.html:45
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:32
+#: plinth/modules/storage/templates/storage.html:30
msgid "Actions"
msgstr ""
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:57
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:42
#, python-format
msgid "Valid, expires on %(expiry_date)s"
msgstr ""
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:64
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:49
msgid "Revoked"
msgstr ""
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:68
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:53
#, python-format
msgid "Expired on %(expiry_date)s"
msgstr ""
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:72
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:57
msgid "Invalid test certificate"
msgstr ""
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:76
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:61
#, python-format
msgid "Invalid (%(reason)s)"
msgstr ""
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:83
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:68
msgid "No certificate"
msgstr ""
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:100
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:85
msgid "Re-obtain"
msgstr ""
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:106
-#: plinth/modules/networks/templates/connection_show.html:63
-#: plinth/modules/samba/templates/samba.html:142
-#: plinth/modules/wireguard/templates/wireguard_delete_client.html:39
-#: plinth/modules/wireguard/templates/wireguard_delete_server.html:48
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:88
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:89
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:91
+#: plinth/modules/networks/templates/connection_show.html:48
+#: plinth/modules/samba/templates/samba.html:127
+#: plinth/modules/wireguard/templates/wireguard_delete_client.html:24
+#: plinth/modules/wireguard/templates/wireguard_delete_server.html:33
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:73
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:74
msgid "Delete"
msgstr ""
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:113
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:98
msgid "Revoke"
msgstr ""
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:121
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:106
msgid "Obtain"
msgstr ""
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:132
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:117
#, python-format
msgid ""
"No domains have been configured. Configure "
"domains to be able to obtain certificates for them."
msgstr ""
-#: plinth/modules/letsencrypt/views.py:58
+#: plinth/modules/letsencrypt/views.py:41
#, 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:64
+#: plinth/modules/letsencrypt/views.py:47
#, python-brace-format
msgid "Failed to revoke certificate for domain {domain}: {error}"
msgstr ""
+#: plinth/modules/letsencrypt/views.py:60
#: plinth/modules/letsencrypt/views.py:77
-#: plinth/modules/letsencrypt/views.py:94
#, python-brace-format
msgid "Certificate successfully obtained for domain {domain}"
msgstr ""
+#: plinth/modules/letsencrypt/views.py:65
#: plinth/modules/letsencrypt/views.py:82
-#: plinth/modules/letsencrypt/views.py:99
#, python-brace-format
msgid "Failed to obtain certificate for domain {domain}: {error}"
msgstr ""
-#: plinth/modules/letsencrypt/views.py:111
+#: plinth/modules/letsencrypt/views.py:94
#, python-brace-format
msgid "Certificate successfully deleted for domain {domain}"
msgstr ""
-#: plinth/modules/letsencrypt/views.py:116
+#: plinth/modules/letsencrypt/views.py:99
#, python-brace-format
msgid "Failed to delete certificate for domain {domain}: {error}"
msgstr ""
-#: plinth/modules/matrixsynapse/__init__.py:48
-msgid "Matrix Synapse"
-msgstr ""
-
-#: plinth/modules/matrixsynapse/__init__.py:55
+#: plinth/modules/matrixsynapse/__init__.py:34
msgid ""
"Matrix is an new "
"ecosystem for open, federated instant messaging and VoIP. Synapse is a "
@@ -2236,36 +2255,40 @@ msgid ""
"converse with users on all other Matrix servers via federation."
msgstr ""
-#: plinth/modules/matrixsynapse/__init__.py:62
+#: plinth/modules/matrixsynapse/__init__.py:41
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:29
+#: plinth/modules/matrixsynapse/__init__.py:66
+msgid "Matrix Synapse"
+msgstr ""
+
+#: plinth/modules/matrixsynapse/forms.py:14
msgid "Enable Public Registration"
msgstr ""
-#: plinth/modules/matrixsynapse/forms.py:30
+#: plinth/modules/matrixsynapse/forms.py:15
msgid ""
"Enabling public registration means that anyone on the Internet can register "
"a new account on your Matrix server. Disable this if you only want existing "
"users to be able to use it."
msgstr ""
-#: plinth/modules/matrixsynapse/manifest.py:28
+#: plinth/modules/matrixsynapse/manifest.py:13
msgid "Riot"
msgstr ""
-#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:33
+#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:18
msgid ""
"Matrix service needs to be configured for a domain. Users on other Matrix "
"servers will be able to reach users on this server using this domain name. "
"Matrix user IDs will look like @username:domainname."
msgstr ""
-#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:41
+#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:26
msgid ""
"\n"
" Warning! Changing the domain name after the initial\n"
@@ -2273,14 +2296,14 @@ msgid ""
" "
msgstr ""
-#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:50
+#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:35
#, python-format
msgid ""
"No domain(s) are available. Configure at "
"least one domain to be able to use Matrix Synapse."
msgstr ""
-#: plinth/modules/matrixsynapse/templates/matrix-synapse.html:29
+#: plinth/modules/matrixsynapse/templates/matrix-synapse.html:14
#, python-format
msgid ""
"The Matrix server domain is set to %(domain_name)s. User IDs will "
@@ -2288,13 +2311,13 @@ msgid ""
"the initial setup is currently not supported."
msgstr ""
-#: plinth/modules/matrixsynapse/templates/matrix-synapse.html:36
+#: plinth/modules/matrixsynapse/templates/matrix-synapse.html:21
msgid ""
"New users can be registered from any client if public registration is "
"enabled."
msgstr ""
-#: plinth/modules/matrixsynapse/templates/matrix-synapse.html:45
+#: plinth/modules/matrixsynapse/templates/matrix-synapse.html:30
#, python-format
msgid ""
"The configured domain name is using a self-signed certificate. Federation "
@@ -2302,24 +2325,15 @@ msgid ""
"go to Let's Encrypt to obtain one."
msgstr ""
-#: plinth/modules/matrixsynapse/views.py:121
+#: plinth/modules/matrixsynapse/views.py:98
msgid "Public registration enabled"
msgstr ""
-#: plinth/modules/matrixsynapse/views.py:126
+#: plinth/modules/matrixsynapse/views.py:103
msgid "Public registration disabled"
msgstr ""
-#: plinth/modules/mediawiki/__init__.py:40
-#: plinth/modules/mediawiki/manifest.py:24
-msgid "MediaWiki"
-msgstr ""
-
-#: plinth/modules/mediawiki/__init__.py:44 plinth/templates/index.html:139
-msgid "Wiki"
-msgstr ""
-
-#: plinth/modules/mediawiki/__init__.py:47
+#: plinth/modules/mediawiki/__init__.py:26
msgid ""
"MediaWiki is the wiki engine that powers Wikipedia and other WikiMedia "
"projects. A wiki engine is a program for creating a collaboratively edited "
@@ -2327,7 +2341,7 @@ msgid ""
"collaborate with friends on projects."
msgstr ""
-#: plinth/modules/mediawiki/__init__.py:51
+#: plinth/modules/mediawiki/__init__.py:30
msgid ""
"This MediaWiki instance comes with a randomly generated administrator "
"password. You can set a new password in the \"Configuration\" section and "
@@ -2336,86 +2350,86 @@ msgid ""
"CreateAccount\">Special:CreateAccount page."
msgstr ""
-#: plinth/modules/mediawiki/__init__.py:57
+#: plinth/modules/mediawiki/__init__.py:36
msgid ""
"Anyone with a link to this wiki can read it. Only users that are logged in "
"can make changes to the content."
msgstr ""
-#: plinth/modules/mediawiki/forms.py:42
+#: plinth/modules/mediawiki/__init__.py:54
+#: plinth/modules/mediawiki/manifest.py:9
+msgid "MediaWiki"
+msgstr ""
+
+#: plinth/modules/mediawiki/__init__.py:55 plinth/templates/index.html:124
+msgid "Wiki"
+msgstr ""
+
+#: plinth/modules/mediawiki/forms.py:27
msgid "Administrator Password"
msgstr ""
-#: plinth/modules/mediawiki/forms.py:43
+#: plinth/modules/mediawiki/forms.py:28
msgid ""
"Set a new password for MediaWiki's administrator account (admin). Leave this "
"field blank to keep the current password."
msgstr ""
-#: plinth/modules/mediawiki/forms.py:48
+#: plinth/modules/mediawiki/forms.py:33
msgid "Enable public registrations"
msgstr ""
-#: plinth/modules/mediawiki/forms.py:49
+#: plinth/modules/mediawiki/forms.py:34
msgid ""
"If enabled, anyone on the internet will be able to create an account on your "
"MediaWiki instance."
msgstr ""
-#: plinth/modules/mediawiki/forms.py:53
+#: plinth/modules/mediawiki/forms.py:38
msgid "Enable private mode"
msgstr ""
-#: plinth/modules/mediawiki/forms.py:54
+#: plinth/modules/mediawiki/forms.py:39
msgid ""
"If enabled, access will be restricted. Only people who have accounts can "
"read/write to the wiki. Public registrations will also be disabled."
msgstr ""
-#: plinth/modules/mediawiki/forms.py:59
+#: plinth/modules/mediawiki/forms.py:44
msgid "Default Skin"
msgstr ""
-#: plinth/modules/mediawiki/forms.py:60
+#: plinth/modules/mediawiki/forms.py:45
msgid ""
"Choose a default skin for your MediaWiki installation. Users have the option "
"to select their preferred skin."
msgstr ""
-#: plinth/modules/mediawiki/views.py:74
+#: plinth/modules/mediawiki/views.py:54
msgid "Password updated"
msgstr ""
-#: plinth/modules/mediawiki/views.py:93
+#: plinth/modules/mediawiki/views.py:73
msgid "Public registrations enabled"
msgstr ""
-#: plinth/modules/mediawiki/views.py:102
+#: plinth/modules/mediawiki/views.py:82
msgid "Public registrations disabled"
msgstr ""
-#: plinth/modules/mediawiki/views.py:107
+#: plinth/modules/mediawiki/views.py:87
msgid "Private mode enabled"
msgstr ""
-#: plinth/modules/mediawiki/views.py:114
+#: plinth/modules/mediawiki/views.py:94
msgid "Private mode disabled"
msgstr ""
-#: plinth/modules/mediawiki/views.py:122
+#: plinth/modules/mediawiki/views.py:102
msgid "Default skin changed"
msgstr ""
-#: plinth/modules/minetest/__init__.py:50
-#: plinth/modules/minetest/manifest.py:25
-msgid "Minetest"
-msgstr ""
-
-#: plinth/modules/minetest/__init__.py:54
-msgid "Block Sandbox"
-msgstr ""
-
-#: plinth/modules/minetest/__init__.py:58
+#: plinth/modules/minetest/__init__.py:37
#, python-brace-format
msgid ""
"Minetest is a multiplayer infinite-world block sandbox. This module enables "
@@ -2424,73 +2438,78 @@ msgid ""
"downloads/\">Minetest client is needed."
msgstr ""
-#: plinth/modules/minetest/forms.py:30
+#: plinth/modules/minetest/__init__.py:63
+#: plinth/modules/minetest/manifest.py:10
+msgid "Minetest"
+msgstr ""
+
+#: plinth/modules/minetest/__init__.py:64
+msgid "Block Sandbox"
+msgstr ""
+
+#: plinth/modules/minetest/forms.py:15
msgid "Maximum number of players"
msgstr ""
-#: plinth/modules/minetest/forms.py:32
+#: plinth/modules/minetest/forms.py:17
msgid ""
"You can change the maximum number of players playing minetest at a single "
"instance of time."
msgstr ""
-#: plinth/modules/minetest/forms.py:36
+#: plinth/modules/minetest/forms.py:21
msgid "Enable creative mode"
msgstr ""
-#: plinth/modules/minetest/forms.py:37
+#: plinth/modules/minetest/forms.py:22
msgid ""
"Creative mode changes the rules of the game to make it more suitable for "
"creative gameplay, rather than challenging \"survival\" gameplay."
msgstr ""
-#: plinth/modules/minetest/forms.py:42
+#: plinth/modules/minetest/forms.py:27
msgid "Enable PVP"
msgstr ""
-#: plinth/modules/minetest/forms.py:43
+#: plinth/modules/minetest/forms.py:28
msgid "Enabling Player Vs Player will allow players to damage other players."
msgstr ""
-#: plinth/modules/minetest/forms.py:47
+#: plinth/modules/minetest/forms.py:32
msgid "Enable damage"
msgstr ""
-#: plinth/modules/minetest/forms.py:48
+#: plinth/modules/minetest/forms.py:33
msgid "When disabled, players cannot die or receive damage of any kind."
msgstr ""
-#: plinth/modules/minetest/templates/minetest.html:33
-#: plinth/modules/networks/forms.py:66 plinth/modules/networks/forms.py:97
+#: plinth/modules/minetest/templates/minetest.html:18
+#: plinth/modules/networks/forms.py:49 plinth/modules/networks/forms.py:79
msgid "Address"
msgstr ""
-#: plinth/modules/minetest/templates/minetest.html:34
-#: plinth/modules/tor/templates/tor.html:96
+#: plinth/modules/minetest/templates/minetest.html:19
+#: plinth/modules/tor/templates/tor.html:81
msgid "Port"
msgstr ""
-#: plinth/modules/minetest/views.py:70
+#: plinth/modules/minetest/views.py:50
msgid "Maximum players configuration updated"
msgstr ""
-#: plinth/modules/minetest/views.py:77
+#: plinth/modules/minetest/views.py:57
msgid "Creative mode configuration updated"
msgstr ""
-#: plinth/modules/minetest/views.py:83
+#: plinth/modules/minetest/views.py:63
msgid "PVP configuration updated"
msgstr ""
-#: plinth/modules/minetest/views.py:89
+#: plinth/modules/minetest/views.py:69
msgid "Damage configuration updated"
msgstr ""
-#: plinth/modules/minidlna/__init__.py:41
-msgid "Simple Media Server"
-msgstr ""
-
-#: plinth/modules/minidlna/__init__.py:44
+#: plinth/modules/minidlna/__init__.py:23
msgid ""
"MiniDLNA is a simple media server software, with the aim of being fully "
"compliant with DLNA/UPnP-AV clients. The MiniDNLA daemon serves media files "
@@ -2501,15 +2520,19 @@ msgid ""
"Kodi."
msgstr ""
-#: plinth/modules/minidlna/__init__.py:56
+#: plinth/modules/minidlna/__init__.py:33
msgid "Media streaming server"
msgstr ""
-#: plinth/modules/minidlna/forms.py:30
+#: plinth/modules/minidlna/__init__.py:47
+msgid "Simple Media Server"
+msgstr ""
+
+#: plinth/modules/minidlna/forms.py:15
msgid "Media Files Directory"
msgstr ""
-#: plinth/modules/minidlna/forms.py:31
+#: plinth/modules/minidlna/forms.py:16
msgid ""
"Directory that MiniDLNA Server will read for content. All sub-directories of "
"this will be also scanned for media files. If you change the default ensure "
@@ -2517,77 +2540,72 @@ msgid ""
"user. Any user media directories (\"/home/username/\") will usually work."
msgstr ""
-#: plinth/modules/minidlna/manifest.py:25
+#: plinth/modules/minidlna/manifest.py:10
msgid "vlc"
msgstr ""
-#: plinth/modules/minidlna/manifest.py:64
+#: plinth/modules/minidlna/manifest.py:49
msgid "kodi"
msgstr ""
-#: plinth/modules/minidlna/manifest.py:103
+#: plinth/modules/minidlna/manifest.py:88
msgid "yaacc"
msgstr ""
-#: plinth/modules/minidlna/manifest.py:114
+#: plinth/modules/minidlna/manifest.py:99
msgid "totem"
msgstr ""
-#: plinth/modules/minidlna/views.py:57
+#: plinth/modules/minidlna/views.py:37
msgid "Specified directory does not exist."
msgstr ""
-#: plinth/modules/minidlna/views.py:62
+#: plinth/modules/minidlna/views.py:42
msgid "Updated media directory"
msgstr ""
-#: plinth/modules/mldonkey/__init__.py:40
-#: plinth/modules/mldonkey/manifest.py:27
-msgid "MLDonkey"
-msgstr ""
-
-#: plinth/modules/mldonkey/__init__.py:44
-msgid "Peer-to-peer File Sharing"
-msgstr ""
-
-#: plinth/modules/mldonkey/__init__.py:47
+#: plinth/modules/mldonkey/__init__.py:26
msgid ""
"MLDonkey is a peer-to-peer file sharing application used to exchange large "
"files. It can participate in multiple peer-to-peer networks including "
"eDonkey, Kademlia, Overnet, BitTorrent and DirectConnect."
msgstr ""
-#: plinth/modules/mldonkey/__init__.py:50
+#: plinth/modules/mldonkey/__init__.py:29
msgid ""
"Users belonging to admin and ed2k group can control it through the web "
"interface. Users in the admin group can also control it through any of the "
"separate mobile or desktop front-ends or a telnet interface. See manual."
msgstr ""
-#: plinth/modules/mldonkey/__init__.py:55
+#: plinth/modules/mldonkey/__init__.py:34
#, python-brace-format
msgid ""
"On {box_name}, downloaded files can be found in /var/lib/mldonkey/ directory."
msgstr ""
-#: plinth/modules/mldonkey/__init__.py:63
+#: plinth/modules/mldonkey/__init__.py:40
msgid "Download files using eDonkey applications"
msgstr ""
-#: plinth/modules/mldonkey/manifest.py:34
+#: plinth/modules/mldonkey/__init__.py:54
+#: plinth/modules/mldonkey/manifest.py:12
+msgid "MLDonkey"
+msgstr ""
+
+#: plinth/modules/mldonkey/__init__.py:56
+msgid "Peer-to-peer File Sharing"
+msgstr ""
+
+#: plinth/modules/mldonkey/manifest.py:19
msgid "KMLDonkey"
msgstr ""
-#: plinth/modules/mldonkey/manifest.py:46
+#: plinth/modules/mldonkey/manifest.py:31
msgid "AMLDonkey"
msgstr ""
-#: plinth/modules/monkeysphere/__init__.py:32
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:26
-msgid "Monkeysphere"
-msgstr ""
-
-#: plinth/modules/monkeysphere/__init__.py:35
+#: plinth/modules/monkeysphere/__init__.py:18
msgid ""
"With Monkeysphere, an OpenPGP key can be generated for each configured "
"domain serving SSH. The OpenPGP public key can then be uploaded to the "
@@ -2599,7 +2617,7 @@ msgid ""
"for more details."
msgstr ""
-#: plinth/modules/monkeysphere/__init__.py:43
+#: plinth/modules/monkeysphere/__init__.py:26
msgid ""
"Monkeysphere can also generate an OpenPGP key for each Secure Web Server "
"(HTTPS) certificate installed on this machine. The OpenPGP public key can "
@@ -2610,176 +2628,177 @@ msgid ""
"Monkeysphere website."
msgstr ""
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:60
+#: plinth/modules/monkeysphere/__init__.py:50
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:11
+msgid "Monkeysphere"
+msgstr ""
+
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:45
msgid "Publishing key to keyserver..."
msgstr ""
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:67
-#: plinth/modules/users/templates/users_delete.html:41
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:52
+#: plinth/modules/users/templates/users_delete.html:26
msgid "Cancel"
msgstr ""
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:75
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:55
-#: plinth/modules/tor/templates/tor.html:95
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:60
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:40
+#: plinth/modules/tor/templates/tor.html:80
msgid "Service"
msgstr ""
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:76
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:61
msgid "Domains"
msgstr ""
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:77
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:31
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:62
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:16
msgid "OpenPGP Fingerprint"
msgstr ""
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:86
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:58
-#: plinth/modules/names/components.py:39
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:71
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:43
+#: plinth/modules/names/components.py:24
msgid "Secure Shell"
msgstr ""
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:90
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:62
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:75
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:47
msgid "Other"
msgstr ""
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:127
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:112
#, python-format
msgid "Show details for key %(fingerprint)s"
msgstr ""
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:133
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:118
msgid "-"
msgstr ""
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:143
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:128
msgid "Import Key"
msgstr ""
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:152
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:137
msgid "Publish Key"
msgstr ""
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:161
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:146
msgid "Add Domains"
msgstr ""
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:35
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:20
msgid "OpenPGP User IDs"
msgstr ""
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:39
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:24
msgid "Key Import Date"
msgstr ""
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:43
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:28
msgid "SSH Key Type"
msgstr ""
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:47
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:32
msgid "SSH Key Size"
msgstr ""
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:51
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:36
msgid "SSH Fingerprint"
msgstr ""
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:67
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:52
msgid "Key File"
msgstr ""
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:71
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:56
msgid "Available Domains"
msgstr ""
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:75
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:60
msgid "Added Domains"
msgstr ""
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:82
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:67
msgid ""
"After this key is published to the keyservers, it can be signed using GnuPG with the following commands:"
msgstr ""
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:88
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:73
msgid "Download the key"
msgstr ""
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:91
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:76
msgid "Sign the key"
msgstr ""
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:94
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:79
msgid "Send the key back to the keyservers"
msgstr ""
-#: plinth/modules/monkeysphere/views.py:60
+#: plinth/modules/monkeysphere/views.py:43
msgid "Imported key."
msgstr ""
-#: plinth/modules/monkeysphere/views.py:96
+#: plinth/modules/monkeysphere/views.py:79
msgid "Cancelled key publishing."
msgstr ""
-#: plinth/modules/monkeysphere/views.py:147
+#: plinth/modules/monkeysphere/views.py:130
msgid "Published key to keyserver."
msgstr ""
-#: plinth/modules/monkeysphere/views.py:149
+#: plinth/modules/monkeysphere/views.py:132
msgid "Error occurred while publishing key."
msgstr ""
-#: plinth/modules/mumble/__init__.py:33 plinth/modules/mumble/manifest.py:27
-msgid "Mumble"
-msgstr ""
-
-#: plinth/modules/mumble/__init__.py:37
-msgid "Voice Chat"
-msgstr ""
-
-#: plinth/modules/mumble/__init__.py:44
+#: plinth/modules/mumble/__init__.py:23
msgid ""
"Mumble is an open source, low-latency, encrypted, high quality voice chat "
"software."
msgstr ""
-#: plinth/modules/mumble/__init__.py:46
+#: plinth/modules/mumble/__init__.py:25
msgid ""
"You can connect to your Mumble server on the regular Mumble port 64738. Clients to connect to Mumble from your "
"desktop and Android devices are available."
msgstr ""
-#: plinth/modules/mumble/forms.py:31
+#: plinth/modules/mumble/__init__.py:49 plinth/modules/mumble/manifest.py:12
+msgid "Mumble"
+msgstr ""
+
+#: plinth/modules/mumble/__init__.py:50
+msgid "Voice Chat"
+msgstr ""
+
+#: plinth/modules/mumble/forms.py:16
msgid "Set SuperUser Password"
msgstr ""
-#: plinth/modules/mumble/forms.py:34
+#: plinth/modules/mumble/forms.py:19
msgid ""
"Optional. Leave this field blank to keep the current password. SuperUser "
"password can be used to manage permissions in Mumble."
msgstr ""
-#: plinth/modules/mumble/manifest.py:52
+#: plinth/modules/mumble/manifest.py:37
msgid "Plumble"
msgstr ""
-#: plinth/modules/mumble/manifest.py:66
+#: plinth/modules/mumble/manifest.py:51
msgid "Mumblefly"
msgstr ""
-#: plinth/modules/mumble/views.py:50
+#: plinth/modules/mumble/views.py:29
msgid "SuperUser password successfully updated."
msgstr ""
-#: plinth/modules/names/__init__.py:37
-msgid "Name Services"
-msgstr ""
-
-#: plinth/modules/names/__init__.py:45
+#: plinth/modules/names/__init__.py:26
#, python-brace-format
msgid ""
"Name Services provides an overview of the ways {box_name} can be reached "
@@ -2788,76 +2807,80 @@ msgid ""
"enabled or disabled for incoming connections through the given name."
msgstr ""
-#: plinth/modules/names/components.py:27
+#: plinth/modules/names/__init__.py:46
+msgid "Name Services"
+msgstr ""
+
+#: plinth/modules/names/components.py:12
msgid "All"
msgstr ""
-#: plinth/modules/names/components.py:31 plinth/modules/names/components.py:35
+#: plinth/modules/names/components.py:16 plinth/modules/names/components.py:20
msgid "All web apps"
msgstr ""
-#: plinth/modules/networks/__init__.py:42
-msgid "Networks"
-msgstr ""
-
-#: plinth/modules/networks/__init__.py:45
+#: plinth/modules/networks/__init__.py:35
msgid ""
"Configure network devices. Connect to the Internet via Ethernet, Wi-Fi or "
"PPPoE. Share that connection with other devices on the network."
msgstr ""
-#: plinth/modules/networks/__init__.py:47
+#: plinth/modules/networks/__init__.py:37
msgid ""
"Devices administered through other methods may not be available for "
"configuration here."
msgstr ""
-#: plinth/modules/networks/__init__.py:156
+#: plinth/modules/networks/__init__.py:58
+msgid "Networks"
+msgstr ""
+
+#: plinth/modules/networks/__init__.py:151
#, python-brace-format
msgid "Using DNSSEC on IPv{kind}"
msgstr ""
-#: plinth/modules/networks/forms.py:32
+#: plinth/modules/networks/forms.py:16
msgid "Connection Type"
msgstr ""
-#: plinth/modules/networks/forms.py:44
+#: plinth/modules/networks/forms.py:28
msgid "Connection Name"
msgstr ""
-#: plinth/modules/networks/forms.py:46
+#: plinth/modules/networks/forms.py:30
msgid "Network Interface"
msgstr ""
-#: plinth/modules/networks/forms.py:47
+#: plinth/modules/networks/forms.py:31
msgid "The network device that this connection should be bound to."
msgstr ""
-#: plinth/modules/networks/forms.py:50
+#: plinth/modules/networks/forms.py:34
msgid "Firewall Zone"
msgstr ""
-#: plinth/modules/networks/forms.py:51
+#: plinth/modules/networks/forms.py:35
msgid ""
"The firewall zone will control which services are available over this "
"interfaces. Select Internal only for trusted networks."
msgstr ""
-#: plinth/modules/networks/forms.py:54
-#: plinth/modules/networks/templates/connections_diagram.html:78
+#: plinth/modules/networks/forms.py:38
+#: plinth/modules/networks/templates/connections_diagram.html:63
msgid "External"
msgstr ""
-#: plinth/modules/networks/forms.py:54
-#: plinth/modules/networks/templates/connections_diagram.html:107
+#: plinth/modules/networks/forms.py:38
+#: plinth/modules/networks/templates/connections_diagram.html:92
msgid "Internal"
msgstr ""
-#: plinth/modules/networks/forms.py:56
+#: plinth/modules/networks/forms.py:40
msgid "IPv4 Addressing Method"
msgstr ""
-#: plinth/modules/networks/forms.py:58
+#: plinth/modules/networks/forms.py:41
#, python-brace-format
msgid ""
"\"Automatic\" method will make {box_name} acquire configuration from this "
@@ -2865,197 +2888,237 @@ msgid ""
"router, configure clients on this network and share its Internet connection."
msgstr ""
-#: plinth/modules/networks/forms.py:63
+#: plinth/modules/networks/forms.py:46
msgid "Automatic (DHCP)"
msgstr ""
-#: plinth/modules/networks/forms.py:63
+#: plinth/modules/networks/forms.py:46
msgid "Shared"
msgstr ""
-#: plinth/modules/networks/forms.py:69
+#: plinth/modules/networks/forms.py:52
msgid "Netmask"
msgstr ""
-#: plinth/modules/networks/forms.py:70
+#: plinth/modules/networks/forms.py:53
msgid ""
"Optional value. If left blank, a default netmask based on the address will "
"be used."
msgstr ""
-#: plinth/modules/networks/forms.py:74 plinth/modules/networks/forms.py:104
-#: plinth/modules/networks/templates/connection_show.html:202
-#: plinth/modules/networks/templates/connection_show.html:241
+#: plinth/modules/networks/forms.py:57 plinth/modules/networks/forms.py:86
+#: plinth/modules/networks/templates/connection_show.html:187
+#: plinth/modules/networks/templates/connection_show.html:226
msgid "Gateway"
msgstr ""
-#: plinth/modules/networks/forms.py:74 plinth/modules/networks/forms.py:104
+#: plinth/modules/networks/forms.py:57 plinth/modules/networks/forms.py:86
msgid "Optional value."
msgstr ""
-#: plinth/modules/networks/forms.py:77 plinth/modules/networks/forms.py:107
+#: plinth/modules/networks/forms.py:60 plinth/modules/networks/forms.py:89
msgid "DNS Server"
msgstr ""
-#: plinth/modules/networks/forms.py:78
+#: plinth/modules/networks/forms.py:61
msgid ""
"Optional value. If this value is given and IPv4 addressing method is "
"\"Automatic\", the DNS Servers provided by a DHCP server will be ignored."
msgstr ""
-#: plinth/modules/networks/forms.py:83 plinth/modules/networks/forms.py:113
+#: plinth/modules/networks/forms.py:66 plinth/modules/networks/forms.py:95
msgid "Second DNS Server"
msgstr ""
-#: plinth/modules/networks/forms.py:84
+#: plinth/modules/networks/forms.py:67
msgid ""
"Optional value. If this value is given and IPv4 Addressing Method is "
"\"Automatic\", the DNS Servers provided by a DHCP server will be ignored."
msgstr ""
-#: plinth/modules/networks/forms.py:89
+#: plinth/modules/networks/forms.py:72
msgid "IPv6 Addressing Method"
msgstr ""
-#: plinth/modules/networks/forms.py:91
+#: plinth/modules/networks/forms.py:73
#, python-brace-format
msgid ""
"\"Automatic\" methods will make {box_name} acquire configuration from this "
"network making it a client."
msgstr ""
-#: plinth/modules/networks/forms.py:94 plinth/modules/networks/forms.py:259
+#: plinth/modules/networks/forms.py:76 plinth/modules/networks/forms.py:241
msgid "Automatic"
msgstr ""
-#: plinth/modules/networks/forms.py:94
+#: plinth/modules/networks/forms.py:76
msgid "Automatic, DHCP only"
msgstr ""
-#: plinth/modules/networks/forms.py:95
+#: plinth/modules/networks/forms.py:77
msgid "Ignore"
msgstr ""
-#: plinth/modules/networks/forms.py:99
+#: plinth/modules/networks/forms.py:81
msgid "Prefix"
msgstr ""
-#: plinth/modules/networks/forms.py:100
+#: plinth/modules/networks/forms.py:82
msgid "Value between 1 and 128."
msgstr ""
-#: plinth/modules/networks/forms.py:108
+#: plinth/modules/networks/forms.py:90
msgid ""
"Optional value. If this value is given and IPv6 addressing method is "
"\"Automatic\", the DNS Servers provided by a DHCP server will be ignored."
msgstr ""
-#: plinth/modules/networks/forms.py:114
+#: plinth/modules/networks/forms.py:96
msgid ""
"Optional value. If this value is given and IPv6 Addressing Method is "
"\"Automatic\", the DNS Servers provided by a DHCP server will be ignored."
msgstr ""
-#: plinth/modules/networks/forms.py:127
+#: plinth/modules/networks/forms.py:109
msgid "-- select --"
msgstr ""
-#: plinth/modules/networks/forms.py:252
-#: plinth/modules/networks/templates/connection_show.html:144
+#: plinth/modules/networks/forms.py:234
+#: plinth/modules/networks/templates/connection_show.html:129
msgid "SSID"
msgstr ""
-#: plinth/modules/networks/forms.py:253
+#: plinth/modules/networks/forms.py:235
msgid "The visible name of the network."
msgstr ""
-#: plinth/modules/networks/forms.py:255
-#: plinth/modules/networks/templates/connection_show.html:157
+#: plinth/modules/networks/forms.py:237
+#: plinth/modules/networks/templates/connection_show.html:142
msgid "Mode"
msgstr ""
-#: plinth/modules/networks/forms.py:255
+#: plinth/modules/networks/forms.py:237
msgid "Infrastructure"
msgstr ""
-#: plinth/modules/networks/forms.py:256
+#: plinth/modules/networks/forms.py:238
msgid "Access Point"
msgstr ""
-#: plinth/modules/networks/forms.py:257
+#: plinth/modules/networks/forms.py:239
msgid "Ad-hoc"
msgstr ""
-#: plinth/modules/networks/forms.py:259
+#: plinth/modules/networks/forms.py:241
msgid "Frequency Band"
msgstr ""
-#: plinth/modules/networks/forms.py:260
+#: plinth/modules/networks/forms.py:242
msgid "A (5 GHz)"
msgstr ""
-#: plinth/modules/networks/forms.py:261
+#: plinth/modules/networks/forms.py:243
msgid "B/G (2.4 GHz)"
msgstr ""
-#: plinth/modules/networks/forms.py:263
-#: plinth/modules/networks/templates/connection_show.html:173
+#: plinth/modules/networks/forms.py:245
+#: plinth/modules/networks/templates/connection_show.html:158
msgid "Channel"
msgstr ""
-#: plinth/modules/networks/forms.py:264
+#: plinth/modules/networks/forms.py:246
msgid ""
"Optional value. Wireless channel in the selected frequency band to restrict "
"to. Blank or 0 value means automatic selection."
msgstr ""
-#: plinth/modules/networks/forms.py:269
+#: plinth/modules/networks/forms.py:251
msgid "BSSID"
msgstr ""
-#: plinth/modules/networks/forms.py:270
+#: plinth/modules/networks/forms.py:252
msgid ""
"Optional value. Unique identifier for the access point. When connecting to "
"an access point, connect only if the BSSID of the access point matches the "
"one provided. Example: 00:11:22:aa:bb:cc."
msgstr ""
-#: plinth/modules/networks/forms.py:276
+#: plinth/modules/networks/forms.py:258
msgid "Authentication Mode"
msgstr ""
-#: plinth/modules/networks/forms.py:277
+#: plinth/modules/networks/forms.py:259
msgid ""
"Select WPA if the wireless network is secured and requires clients to have "
"the password to connect."
msgstr ""
-#: plinth/modules/networks/forms.py:279
+#: plinth/modules/networks/forms.py:261
msgid "WPA"
msgstr ""
-#: plinth/modules/networks/forms.py:279
+#: plinth/modules/networks/forms.py:261
msgid "Open"
msgstr ""
+#: plinth/modules/networks/forms.py:297
+msgid "Choose your internet connection type"
+msgstr ""
+
+#: plinth/modules/networks/forms.py:301
+msgid ""
+"I have a public IP address that may change over time
Your PageKite frontend server may not support all the "
"protocol/port combinations that you are able to define here. For example, "
"HTTPS on ports other than 443 is known to cause problems."
msgstr ""
-#: plinth/modules/pagekite/templates/pagekite_firstboot.html:26
+#: plinth/modules/pagekite/templates/pagekite_firstboot.html:11
msgid "Setup a freedombox.me subdomain with your voucher"
msgstr ""
-#: plinth/modules/pagekite/templates/pagekite_firstboot.html:30
+#: plinth/modules/pagekite/templates/pagekite_firstboot.html:15
#, python-format
msgid ""
"Skip this step if you do not have a "
@@ -3767,134 +3869,125 @@ msgid ""
"credentials."
msgstr ""
-#: plinth/modules/pagekite/templates/pagekite_firstboot.html:38
+#: plinth/modules/pagekite/templates/pagekite_firstboot.html:23
msgid ""
"You can use an already redeemed voucher but it will only work with the "
"initially registered subdomain."
msgstr ""
-#: plinth/modules/pagekite/templates/pagekite_firstboot.html:52
+#: plinth/modules/pagekite/templates/pagekite_firstboot.html:37
msgid "Register"
msgstr ""
-#: plinth/modules/pagekite/templates/pagekite_firstboot.html:56
+#: plinth/modules/pagekite/templates/pagekite_firstboot.html:41
msgid "Skip Registration"
msgstr ""
-#: plinth/modules/pagekite/templates/pagekite_standard_services.html:40
+#: plinth/modules/pagekite/templates/pagekite_standard_services.html:25
msgid "Warning:
"
msgstr ""
-#: plinth/modules/pagekite/templates/pagekite_standard_services.html:43
+#: plinth/modules/pagekite/templates/pagekite_standard_services.html:28
msgid ""
"Published services are accessible and attackable from the evil Internet."
msgstr ""
-#: plinth/modules/pagekite/templates/pagekite_standard_services.html:58
+#: plinth/modules/pagekite/templates/pagekite_standard_services.html:43
msgid "Save Services"
msgstr ""
-#: plinth/modules/pagekite/utils.py:57
+#: plinth/modules/pagekite/utils.py:42
msgid "Web Server (HTTP)"
msgstr ""
-#: plinth/modules/pagekite/utils.py:59
+#: plinth/modules/pagekite/utils.py:44
#, python-brace-format
msgid "Site will be available at http://{0}"
msgstr ""
-#: plinth/modules/pagekite/utils.py:71
+#: plinth/modules/pagekite/utils.py:56
msgid "Web Server (HTTPS)"
msgstr ""
-#: plinth/modules/pagekite/utils.py:73
+#: plinth/modules/pagekite/utils.py:58
#, python-brace-format
msgid "Site will be available at https://{0}"
msgstr ""
-#: plinth/modules/pagekite/utils.py:85
+#: plinth/modules/pagekite/utils.py:70
msgid "Secure Shell (SSH)"
msgstr ""
-#: plinth/modules/pagekite/utils.py:87
+#: plinth/modules/pagekite/utils.py:72
msgid ""
"See SSH client setup instructions"
msgstr ""
-#: plinth/modules/power/__init__.py:29 plinth/modules/power/views.py:55
-#: plinth/modules/power/views.py:74
-msgid "Power"
-msgstr ""
-
-#: plinth/modules/power/__init__.py:31
+#: plinth/modules/power/__init__.py:16
msgid "Restart or shut down the system."
msgstr ""
-#: plinth/modules/power/templates/power.html:28
+#: plinth/modules/power/__init__.py:31
+msgid "Power"
+msgstr ""
+
+#: plinth/modules/power/templates/power.html:13
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
+#: plinth/modules/power/templates/power.html:22
msgid "Restart »"
msgstr ""
-#: plinth/modules/power/templates/power.html:40
+#: plinth/modules/power/templates/power.html:25
msgid "Shut Down »"
msgstr ""
-#: plinth/modules/power/templates/power_restart.html:32
+#: plinth/modules/power/templates/power_restart.html:17
msgid ""
"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."
msgstr ""
-#: plinth/modules/power/templates/power_restart.html:49
+#: plinth/modules/power/templates/power_restart.html:34
msgid ""
"Currently an installation or upgrade is running. Consider waiting until it's "
"finished before restarting."
msgstr ""
-#: plinth/modules/power/templates/power_restart.html:63
-#: plinth/modules/power/templates/power_restart.html:66
+#: plinth/modules/power/templates/power_restart.html:48
+#: plinth/modules/power/templates/power_restart.html:51
msgid "Restart Now"
msgstr ""
-#: plinth/modules/power/templates/power_shutdown.html:32
+#: plinth/modules/power/templates/power_shutdown.html:17
msgid ""
"Are you sure you want to shut down? You will not be able to access this web "
"interface after shut down."
msgstr ""
-#: plinth/modules/power/templates/power_shutdown.html:48
+#: plinth/modules/power/templates/power_shutdown.html:33
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:62
-#: plinth/modules/power/templates/power_shutdown.html:65
+#: plinth/modules/power/templates/power_shutdown.html:47
+#: plinth/modules/power/templates/power_shutdown.html:50
msgid "Shut Down Now"
msgstr ""
-#: plinth/modules/privoxy/__init__.py:43
-msgid "Privoxy"
-msgstr ""
-
-#: plinth/modules/privoxy/__init__.py:47
-msgid "Web Proxy"
-msgstr ""
-
-#: plinth/modules/privoxy/__init__.py:50
+#: plinth/modules/privoxy/__init__.py:29
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:55
+#: plinth/modules/privoxy/__init__.py:34
#, python-brace-format
msgid ""
"You can use Privoxy by modifying your browser proxy settings to your "
@@ -3904,20 +3997,20 @@ msgid ""
"\">http://p.p."
msgstr ""
-#: plinth/modules/privoxy/__init__.py:141
+#: plinth/modules/privoxy/__init__.py:57
+msgid "Privoxy"
+msgstr ""
+
+#: plinth/modules/privoxy/__init__.py:58
+msgid "Web Proxy"
+msgstr ""
+
+#: plinth/modules/privoxy/__init__.py:121
#, python-brace-format
msgid "Access {url} with proxy {proxy} on tcp{kind}"
msgstr ""
-#: plinth/modules/quassel/__init__.py:45 plinth/modules/quassel/manifest.py:25
-msgid "Quassel"
-msgstr ""
-
-#: plinth/modules/quassel/__init__.py:49
-msgid "IRC Client"
-msgstr ""
-
-#: plinth/modules/quassel/__init__.py:53
+#: plinth/modules/quassel/__init__.py:32
#, python-brace-format
msgid ""
"Quassel is an IRC application that is split into two parts, a \"core\" and a "
@@ -3928,7 +4021,7 @@ msgid ""
"connect and disconnect from it."
msgstr ""
-#: plinth/modules/quassel/__init__.py:60
+#: plinth/modules/quassel/__init__.py:39
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."
msgstr ""
-#: plinth/modules/quassel/forms.py:38
+#: plinth/modules/quassel/__init__.py:62 plinth/modules/quassel/manifest.py:10
+msgid "Quassel"
+msgstr ""
+
+#: plinth/modules/quassel/__init__.py:63
+msgid "IRC Client"
+msgstr ""
+
+#: plinth/modules/quassel/forms.py:23
msgid "TLS domain"
msgstr ""
-#: plinth/modules/quassel/forms.py:40
+#: plinth/modules/quassel/forms.py:25
msgid ""
"Select a domain to use TLS with. If the list is empty, please configure at "
"least one domain with certificates."
msgstr ""
-#: plinth/modules/quassel/manifest.py:49
+#: plinth/modules/quassel/manifest.py:34
msgid "Quasseldroid"
msgstr ""
-#: plinth/modules/radicale/__init__.py:45
-#: plinth/modules/radicale/manifest.py:90
-msgid "Radicale"
-msgstr ""
-
-#: plinth/modules/radicale/__init__.py:49
-msgid "Calendar and Addressbook"
-msgstr ""
-
-#: plinth/modules/radicale/__init__.py:53
+#: plinth/modules/radicale/__init__.py:32
#, python-brace-format
msgid ""
"Radicale is a CalDAV and CardDAV server. It allows synchronization and "
@@ -3968,61 +4060,70 @@ msgid ""
"can be accessed by any user with a {box_name} login."
msgstr ""
-#: plinth/modules/radicale/__init__.py:58
+#: plinth/modules/radicale/__init__.py:37
msgid ""
"Radicale provides a basic web interface, which only supports creating new "
"calendars and addressbooks. It does not support adding events or contacts, "
"which must be done using a separate client."
msgstr ""
-#: plinth/modules/radicale/forms.py:30
+#: plinth/modules/radicale/__init__.py:62
+#: plinth/modules/radicale/manifest.py:75
+msgid "Radicale"
+msgstr ""
+
+#: plinth/modules/radicale/__init__.py:63
+msgid "Calendar and Addressbook"
+msgstr ""
+
+#: plinth/modules/radicale/forms.py:15
msgid "Only the owner of a calendar/addressbook can view or make changes."
msgstr ""
-#: plinth/modules/radicale/forms.py:34
+#: plinth/modules/radicale/forms.py:19
#, python-brace-format
msgid ""
"Any user with a {box_name} login can view any calendar/addressbook, but only "
"the owner can make changes."
msgstr ""
-#: plinth/modules/radicale/forms.py:39
+#: plinth/modules/radicale/forms.py:24
#, python-brace-format
msgid ""
"Any user with a {box_name} login can view or make changes to any calendar/"
"addressbook."
msgstr ""
-#: plinth/modules/radicale/manifest.py:25
+#: plinth/modules/radicale/manifest.py:10
msgid "DAVx5"
msgstr ""
-#: plinth/modules/radicale/manifest.py:27
+#: plinth/modules/radicale/manifest.py:12
msgid ""
"Enter the URL of the Radicale server (e.g. https://imaps://imap.gmail.com. "
@@ -4071,17 +4163,22 @@ msgid ""
"a>)."
msgstr ""
-#: plinth/modules/samba/__init__.py:46
-msgid "Samba"
+#: plinth/modules/roundcube/__init__.py:54
+#: plinth/modules/roundcube/manifest.py:9
+msgid "Roundcube"
msgstr ""
-#: plinth/modules/samba/__init__.py:53
+#: plinth/modules/roundcube/__init__.py:55
+msgid "Email Client"
+msgstr ""
+
+#: plinth/modules/samba/__init__.py:32
msgid ""
"Samba allows to share files and folders between FreedomBox and other "
"computers in your local network."
msgstr ""
-#: plinth/modules/samba/__init__.py:56
+#: plinth/modules/samba/__init__.py:35
#, python-brace-format
msgid ""
"After installation, you can choose which disks to use for sharing. Enabled "
@@ -4090,51 +4187,55 @@ msgid ""
"There are three types of shares you can choose from: "
msgstr ""
-#: plinth/modules/samba/__init__.py:61
+#: plinth/modules/samba/__init__.py:40
msgid "Open share - accessible to everyone in your local network."
msgstr ""
-#: plinth/modules/samba/__init__.py:62
+#: plinth/modules/samba/__init__.py:41
msgid ""
"Group share - accessible only to FreedomBox users who are in the freedombox-"
"share group."
msgstr ""
-#: plinth/modules/samba/__init__.py:64
+#: plinth/modules/samba/__init__.py:43
msgid ""
"Home share - every user in the freedombox-share group can have their own "
"private space."
msgstr ""
-#: plinth/modules/samba/__init__.py:68
+#: plinth/modules/samba/__init__.py:47
msgid "Access to the private shares"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:39
-#: plinth/modules/samba/templates/samba.html:50
+#: plinth/modules/samba/__init__.py:61
+msgid "Samba"
+msgstr ""
+
+#: plinth/modules/samba/templates/samba.html:24
+#: plinth/modules/samba/templates/samba.html:35
msgid "Shares"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:41
+#: plinth/modules/samba/templates/samba.html:26
msgid ""
"Note: Only specially created directories will be shared on selected disks, "
"not the whole disk."
msgstr ""
-#: plinth/modules/samba/templates/samba.html:49
+#: plinth/modules/samba/templates/samba.html:34
msgid "Disk Name"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:51
-#: plinth/modules/storage/templates/storage.html:44
+#: plinth/modules/samba/templates/samba.html:36
+#: plinth/modules/storage/templates/storage.html:29
msgid "Used"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:72
+#: plinth/modules/samba/templates/samba.html:57
msgid "VFAT partitions are not supported"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:103
+#: plinth/modules/samba/templates/samba.html:88
#, python-format
msgid ""
"You can find additional information about disks on the users module page."
msgstr ""
-#: plinth/modules/samba/templates/samba.html:109
+#: plinth/modules/samba/templates/samba.html:94
msgid "Users who can currently access group and home shares"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:113
+#: plinth/modules/samba/templates/samba.html:98
msgid ""
"Users needing to re-enter their password on the password change page to "
"access group and home shares"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:118
+#: plinth/modules/samba/templates/samba.html:103
msgid "Unavailable Shares"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:120
+#: plinth/modules/samba/templates/samba.html:105
msgid ""
"Shares that are configured but the disk is not available. If the disk is "
"plugged back in, sharing will be automatically enabled."
msgstr ""
-#: plinth/modules/samba/templates/samba.html:128
+#: plinth/modules/samba/templates/samba.html:113
msgid "Share name"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:129
+#: plinth/modules/samba/templates/samba.html:114
msgid "Action"
msgstr ""
-#: plinth/modules/samba/views.py:61 plinth/modules/storage/forms.py:164
+#: plinth/modules/samba/views.py:43 plinth/modules/storage/forms.py:149
msgid "Open Share"
msgstr ""
-#: plinth/modules/samba/views.py:62 plinth/modules/storage/forms.py:162
+#: plinth/modules/samba/views.py:44 plinth/modules/storage/forms.py:147
msgid "Group Share"
msgstr ""
-#: plinth/modules/samba/views.py:63
+#: plinth/modules/samba/views.py:45
msgid "Home Share"
msgstr ""
-#: plinth/modules/samba/views.py:96
+#: plinth/modules/samba/views.py:78
msgid "Share enabled."
msgstr ""
-#: plinth/modules/samba/views.py:101
+#: plinth/modules/samba/views.py:83
#, python-brace-format
msgid "Error enabling share: {error_message}"
msgstr ""
-#: plinth/modules/samba/views.py:106
+#: plinth/modules/samba/views.py:88
msgid "Share disabled."
msgstr ""
-#: plinth/modules/samba/views.py:111
+#: plinth/modules/samba/views.py:93
#, python-brace-format
msgid "Error disabling share: {error_message}"
msgstr ""
-#: plinth/modules/searx/__init__.py:41 plinth/modules/searx/manifest.py:24
-msgid "Searx"
-msgstr ""
-
-#: plinth/modules/searx/__init__.py:45
-msgid "Web Search"
-msgstr ""
-
-#: plinth/modules/searx/__init__.py:48
+#: plinth/modules/searx/__init__.py:25
msgid ""
"Searx is a privacy-respecting Internet metasearch engine. It aggregrates and "
"displays results from multiple search engines."
msgstr ""
-#: plinth/modules/searx/__init__.py:50
+#: plinth/modules/searx/__init__.py:27
msgid ""
"Searx can be used to avoid tracking and profiling by search engines. It "
"stores no cookies by default."
msgstr ""
-#: plinth/modules/searx/__init__.py:54
+#: plinth/modules/searx/__init__.py:31
msgid "Search the web"
msgstr ""
-#: plinth/modules/searx/forms.py:30
+#: plinth/modules/searx/__init__.py:47 plinth/modules/searx/manifest.py:9
+msgid "Searx"
+msgstr ""
+
+#: plinth/modules/searx/__init__.py:48
+msgid "Web Search"
+msgstr ""
+
+#: plinth/modules/searx/forms.py:15
msgid "Safe Search"
msgstr ""
-#: plinth/modules/searx/forms.py:31
+#: plinth/modules/searx/forms.py:16
msgid "Select the default family filter to apply to your search results."
msgstr ""
-#: plinth/modules/searx/forms.py:32
+#: plinth/modules/searx/forms.py:17
msgid "None"
msgstr ""
-#: plinth/modules/searx/forms.py:32
+#: plinth/modules/searx/forms.py:17
msgid "Moderate"
msgstr ""
-#: plinth/modules/searx/forms.py:32
+#: plinth/modules/searx/forms.py:17
msgid "Strict"
msgstr ""
-#: plinth/modules/searx/forms.py:35
+#: plinth/modules/searx/forms.py:20
msgid "Allow Public Access"
msgstr ""
-#: plinth/modules/searx/forms.py:36
+#: plinth/modules/searx/forms.py:21
msgid "Allow this application to be used by anyone who can reach it."
msgstr ""
-#: plinth/modules/searx/views.py:59 plinth/modules/searx/views.py:70
-#: plinth/modules/tor/views.py:149 plinth/modules/tor/views.py:176
+#: plinth/modules/searx/views.py:39 plinth/modules/searx/views.py:50
+#: plinth/modules/tor/views.py:130 plinth/modules/tor/views.py:157
msgid "Configuration updated."
msgstr ""
-#: plinth/modules/security/forms.py:28
+#: plinth/modules/security/forms.py:13
msgid "Restrict console logins (recommended)"
msgstr ""
-#: plinth/modules/security/forms.py:29
+#: plinth/modules/security/forms.py:14
msgid ""
"When this option is enabled, only users in the \"admin\" group will be able "
"to log in to console or via SSH. Console users may be able to access some "
"services without further authorization."
msgstr ""
-#: plinth/modules/security/forms.py:34
+#: plinth/modules/security/forms.py:19
msgid "Fail2Ban (recommended)"
msgstr ""
-#: plinth/modules/security/forms.py:35
+#: plinth/modules/security/forms.py:20
msgid ""
"When this option is enabled, Fail2Ban will limit brute force break-in "
"attempts to the SSH server and other enabled password protected internet-"
"services."
msgstr ""
-#: plinth/modules/security/templates/security.html:26
-#: plinth/modules/security/templates/security.html:28
+#: plinth/modules/security/templates/security.html:11
+#: plinth/modules/security/templates/security.html:13
msgid "Show security report"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:25
-#: plinth/modules/security/views.py:87
+#: plinth/modules/security/templates/security_report.html:10
+#: plinth/modules/security/views.py:71
msgid "Security Report"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:27
+#: plinth/modules/security/templates/security_report.html:12
#, python-format
msgid ""
"The installed version of FreedomBox has %(count)s reported security "
"vulnerabilities."
msgstr ""
-#: plinth/modules/security/templates/security_report.html:33
+#: plinth/modules/security/templates/security_report.html:18
msgid ""
"The following table lists the current reported number, and historical count, "
"of security vulnerabilities for each installed app."
msgstr ""
-#: plinth/modules/security/templates/security_report.html:39
+#: plinth/modules/security/templates/security_report.html:24
msgid ""
"For apps that provide services, the \"Sandboxed\" column shows whether "
"sandboxing features are in use. Sandboxing mitigates the impact of a "
"potentially compromised app to the rest of the system."
msgstr ""
-#: plinth/modules/security/templates/security_report.html:46
+#: plinth/modules/security/templates/security_report.html:31
msgid ""
"\"Sandbox Coverage\" is a score of how effectively the service is isolated "
"from the rest of the system. It is only displayed while the service is "
"running."
msgstr ""
-#: plinth/modules/security/templates/security_report.html:55
+#: plinth/modules/security/templates/security_report.html:40
msgid "App Name"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:56
+#: plinth/modules/security/templates/security_report.html:41
msgid "Current Vulnerabilities"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:57
+#: plinth/modules/security/templates/security_report.html:42
msgid "Past Vulnerabilities"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:58
+#: plinth/modules/security/templates/security_report.html:43
msgid "Sandboxed"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:59
+#: plinth/modules/security/templates/security_report.html:44
msgid "Sandbox Coverage"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:70
+#: plinth/modules/security/templates/security_report.html:55
msgid "N/A"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:72
+#: plinth/modules/security/templates/security_report.html:57
msgid "Yes"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:74
+#: plinth/modules/security/templates/security_report.html:59
msgid "No"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:81
+#: plinth/modules/security/templates/security_report.html:66
msgid "Not running"
msgstr ""
-#: plinth/modules/security/views.py:69
+#: plinth/modules/security/views.py:53
#, python-brace-format
msgid "Error setting restricted access: {exception}"
msgstr ""
-#: plinth/modules/security/views.py:72
+#: plinth/modules/security/views.py:56
msgid "Updated security configuration"
msgstr ""
-#: plinth/modules/shaarli/__init__.py:34 plinth/modules/shaarli/manifest.py:23
-msgid "Shaarli"
-msgstr ""
-
-#: plinth/modules/shaarli/__init__.py:36
-msgid "Bookmarks"
-msgstr ""
-
-#: plinth/modules/shaarli/__init__.py:39
+#: plinth/modules/shaarli/__init__.py:20
msgid "Shaarli allows you to save and share bookmarks."
msgstr ""
-#: plinth/modules/shaarli/__init__.py:40
+#: plinth/modules/shaarli/__init__.py:21
msgid ""
"When enabled, Shaarli will be available from /shaarli path on the web server. Note that Shaarli "
@@ -4381,22 +4474,22 @@ msgid ""
"initial visit."
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:35
-msgid "Shadowsocks"
+#: plinth/modules/shaarli/__init__.py:39 plinth/modules/shaarli/manifest.py:8
+msgid "Shaarli"
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:39
-msgid "Socks5 Proxy"
+#: plinth/modules/shaarli/__init__.py:40
+msgid "Bookmarks"
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:46
+#: plinth/modules/shadowsocks/__init__.py:25
msgid ""
"Shadowsocks is a lightweight and secure SOCKS5 proxy, designed to protect "
"your Internet traffic. It can be used to bypass Internet filtering and "
"censorship."
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:50
+#: plinth/modules/shadowsocks/__init__.py:29
#, python-brace-format
msgid ""
"Your {box_name} can run a Shadowsocks client, that can connect to a "
@@ -4405,149 +4498,153 @@ msgid ""
"the Shadowsocks server."
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:55
+#: plinth/modules/shadowsocks/__init__.py:34
msgid ""
"To use Shadowsocks after setup, set the SOCKS5 proxy URL in your device, "
"browser or application to http://freedombox_address:1080/"
msgstr ""
-#: plinth/modules/shadowsocks/forms.py:28
-#: plinth/modules/shadowsocks/forms.py:29
+#: plinth/modules/shadowsocks/__init__.py:50
+msgid "Shadowsocks"
+msgstr ""
+
+#: plinth/modules/shadowsocks/__init__.py:52
+msgid "Socks5 Proxy"
+msgstr ""
+
+#: plinth/modules/shadowsocks/forms.py:13
+#: plinth/modules/shadowsocks/forms.py:14
msgid "Recommended"
msgstr ""
-#: plinth/modules/shadowsocks/forms.py:52
+#: plinth/modules/shadowsocks/forms.py:37
msgid "Server"
msgstr ""
-#: plinth/modules/shadowsocks/forms.py:53
+#: plinth/modules/shadowsocks/forms.py:38
msgid "Server hostname or IP address"
msgstr ""
-#: plinth/modules/shadowsocks/forms.py:57
+#: plinth/modules/shadowsocks/forms.py:42
msgid "Server port number"
msgstr ""
-#: plinth/modules/shadowsocks/forms.py:60
+#: plinth/modules/shadowsocks/forms.py:45
msgid "Password used to encrypt data. Must match server password."
msgstr ""
-#: plinth/modules/shadowsocks/forms.py:65
+#: plinth/modules/shadowsocks/forms.py:50
msgid "Encryption method. Must match setting on server."
msgstr ""
-#: plinth/modules/sharing/__init__.py:34
-msgid "Sharing"
-msgstr ""
-
-#: plinth/modules/sharing/__init__.py:38
+#: plinth/modules/sharing/__init__.py:21
#, python-brace-format
msgid ""
"Sharing allows you to share files and folders on your {box_name} over the "
"web with chosen groups of users."
msgstr ""
-#: plinth/modules/sharing/forms.py:33
+#: plinth/modules/sharing/__init__.py:38
+msgid "Sharing"
+msgstr ""
+
+#: plinth/modules/sharing/forms.py:18
msgid "Name of the share"
msgstr ""
-#: plinth/modules/sharing/forms.py:35
+#: plinth/modules/sharing/forms.py:20
msgid ""
"A lowercase alpha-numeric string that uniquely identifies a share. Example: "
"media."
msgstr ""
-#: plinth/modules/sharing/forms.py:39
+#: plinth/modules/sharing/forms.py:24
msgid "Path to share"
msgstr ""
-#: plinth/modules/sharing/forms.py:40
+#: plinth/modules/sharing/forms.py:25
msgid "Disk path to a folder on this server that you intend to share."
msgstr ""
-#: plinth/modules/sharing/forms.py:43
+#: plinth/modules/sharing/forms.py:28
msgid "Public share"
msgstr ""
-#: plinth/modules/sharing/forms.py:44
+#: plinth/modules/sharing/forms.py:29
msgid "Make files in this folder available to anyone with the link."
msgstr ""
-#: plinth/modules/sharing/forms.py:48
+#: plinth/modules/sharing/forms.py:33
msgid "User groups that can read the files in the share"
msgstr ""
-#: plinth/modules/sharing/forms.py:50
+#: plinth/modules/sharing/forms.py:35
msgid ""
"Users of the selected user groups will be able to read the files in the "
"share."
msgstr ""
-#: plinth/modules/sharing/forms.py:67
+#: plinth/modules/sharing/forms.py:52
msgid "A share with this name already exists."
msgstr ""
-#: plinth/modules/sharing/forms.py:78
+#: plinth/modules/sharing/forms.py:63
msgid "Shares should be either public or shared with at least one group"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:39
-#: plinth/modules/sharing/templates/sharing.html:42
+#: plinth/modules/sharing/templates/sharing.html:24
+#: plinth/modules/sharing/templates/sharing.html:27
msgid "Add share"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:47
+#: plinth/modules/sharing/templates/sharing.html:32
msgid "No shares currently configured."
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:53
+#: plinth/modules/sharing/templates/sharing.html:38
msgid "Disk Path"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:54
+#: plinth/modules/sharing/templates/sharing.html:39
msgid "Shared Over"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:55
+#: plinth/modules/sharing/templates/sharing.html:40
msgid "With Groups"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:73
+#: plinth/modules/sharing/templates/sharing.html:58
msgid "public access"
msgstr ""
-#: plinth/modules/sharing/views.py:55
+#: plinth/modules/sharing/views.py:39
msgid "Share added."
msgstr ""
-#: plinth/modules/sharing/views.py:60
+#: plinth/modules/sharing/views.py:44
msgid "Add Share"
msgstr ""
-#: plinth/modules/sharing/views.py:75
+#: plinth/modules/sharing/views.py:59
msgid "Share edited."
msgstr ""
-#: plinth/modules/sharing/views.py:80
+#: plinth/modules/sharing/views.py:64
msgid "Edit Share"
msgstr ""
-#: plinth/modules/sharing/views.py:111
+#: plinth/modules/sharing/views.py:95
msgid "Share deleted."
msgstr ""
-#: plinth/modules/snapshot/__init__.py:37
-msgid "Storage Snapshots"
-msgstr ""
-
-#: plinth/modules/snapshot/__init__.py:40
+#: plinth/modules/snapshot/__init__.py:23
msgid ""
"Snapshots allows creating and managing btrfs file system snapshots. These "
"can be used to roll back the system to a previously known good state in case "
"of unwanted changes to the system."
msgstr ""
-#: plinth/modules/snapshot/__init__.py:44
+#: plinth/modules/snapshot/__init__.py:27
#, no-python-format
msgid ""
"Snapshots are taken periodically (called timeline snapshots) and also before "
@@ -4555,192 +4652,192 @@ msgid ""
"cleaned up according to the settings below."
msgstr ""
-#: plinth/modules/snapshot/__init__.py:47
+#: plinth/modules/snapshot/__init__.py:30
msgid ""
"Snapshots currently work on btrfs file systems only and on the root "
"partition only. Snapshots are not a replacement for backups since they can only be stored on the same partition. "
msgstr ""
-#: plinth/modules/snapshot/forms.py:27
+#: plinth/modules/snapshot/__init__.py:52
+msgid "Storage Snapshots"
+msgstr ""
+
+#: plinth/modules/snapshot/forms.py:12
msgid "Free Disk Space to Maintain"
msgstr ""
-#: plinth/modules/snapshot/forms.py:28
+#: plinth/modules/snapshot/forms.py:13
msgid ""
"Maintain this percentage of free space on the disk. If free space falls "
"below this value, older snapshots are removed until this much free space is "
"regained. The default value is 30%."
msgstr ""
-#: plinth/modules/snapshot/forms.py:35
+#: plinth/modules/snapshot/forms.py:20
msgid "Timeline Snapshots"
msgstr ""
-#: plinth/modules/snapshot/forms.py:36
+#: plinth/modules/snapshot/forms.py:21
msgid ""
"Enable or disable timeline snapshots (hourly, daily, monthly and yearly)."
msgstr ""
-#: plinth/modules/snapshot/forms.py:41
+#: plinth/modules/snapshot/forms.py:26
msgid "Software Installation Snapshots"
msgstr ""
-#: plinth/modules/snapshot/forms.py:42
+#: plinth/modules/snapshot/forms.py:27
msgid "Enable or disable snapshots before and after software installation"
msgstr ""
-#: plinth/modules/snapshot/forms.py:47
+#: plinth/modules/snapshot/forms.py:32
msgid "Hourly Snapshots Limit"
msgstr ""
-#: plinth/modules/snapshot/forms.py:48
+#: plinth/modules/snapshot/forms.py:33
msgid "Keep a maximum of this many hourly snapshots."
msgstr ""
-#: plinth/modules/snapshot/forms.py:51
+#: plinth/modules/snapshot/forms.py:36
msgid "Daily Snapshots Limit"
msgstr ""
-#: plinth/modules/snapshot/forms.py:52
+#: plinth/modules/snapshot/forms.py:37
msgid "Keep a maximum of this many daily snapshots."
msgstr ""
-#: plinth/modules/snapshot/forms.py:55
+#: plinth/modules/snapshot/forms.py:40
msgid "Weekly Snapshots Limit"
msgstr ""
-#: plinth/modules/snapshot/forms.py:56
+#: plinth/modules/snapshot/forms.py:41
msgid "Keep a maximum of this many weekly snapshots."
msgstr ""
-#: plinth/modules/snapshot/forms.py:59
+#: plinth/modules/snapshot/forms.py:44
msgid "Monthly Snapshots Limit"
msgstr ""
-#: plinth/modules/snapshot/forms.py:60
+#: plinth/modules/snapshot/forms.py:45
msgid "Keep a maximum of this many monthly snapshots."
msgstr ""
-#: plinth/modules/snapshot/forms.py:63
+#: plinth/modules/snapshot/forms.py:48
msgid "Yearly Snapshots Limit"
msgstr ""
-#: plinth/modules/snapshot/forms.py:64
+#: plinth/modules/snapshot/forms.py:49
msgid ""
"Keep a maximum of this many yearly snapshots. The default value is 0 "
"(disabled)."
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:27
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:12
msgid "Delete the following snapshots permanently?"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:31
-#: plinth/modules/snapshot/templates/snapshot_manage.html:43
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:39
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:16
+#: plinth/modules/snapshot/templates/snapshot_manage.html:28
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:24
msgid "Number"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:32
-#: plinth/modules/snapshot/templates/snapshot_manage.html:44
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:40
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:17
+#: plinth/modules/snapshot/templates/snapshot_manage.html:29
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:25
msgid "Date"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:52
-#: plinth/modules/snapshot/templates/snapshot_manage.html:37
-#: plinth/modules/snapshot/views.py:196
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:37
+#: plinth/modules/snapshot/templates/snapshot_manage.html:22
+#: plinth/modules/snapshot/views.py:175
msgid "Delete Snapshots"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_manage.html:33
+#: plinth/modules/snapshot/templates/snapshot_manage.html:18
msgid "Create Snapshot"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_manage.html:46
+#: plinth/modules/snapshot/templates/snapshot_manage.html:31
msgid "Rollback"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_manage.html:57
+#: plinth/modules/snapshot/templates/snapshot_manage.html:42
msgid "active"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_manage.html:66
+#: plinth/modules/snapshot/templates/snapshot_manage.html:51
#, python-format
msgid "Rollback to snapshot #%(number)s"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_not_supported.html:26
+#: plinth/modules/snapshot/templates/snapshot_not_supported.html:11
#, python-format
msgid ""
"Your have a filesystem of type %(fs_type)s. Snapshots are "
"currently only available on %(types_supported)s filesystems."
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:27
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:12
msgid "Roll back the system to this snapshot?"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:30
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:15
msgid ""
"A new snapshot with the current state of the file system will be "
"automatically created. You will be able to undo a rollback by reverting to "
"the newly created snapshot."
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:57
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:42
#, python-format
msgid "Rollback to Snapshot #%(number)s"
msgstr ""
-#: plinth/modules/snapshot/views.py:45
+#: plinth/modules/snapshot/views.py:30
msgid "Manage Snapshots"
msgstr ""
-#: plinth/modules/snapshot/views.py:98
+#: plinth/modules/snapshot/views.py:79
msgid "Created snapshot."
msgstr ""
-#: plinth/modules/snapshot/views.py:156
+#: plinth/modules/snapshot/views.py:135
msgid "Storage snapshots configuration updated"
msgstr ""
-#: plinth/modules/snapshot/views.py:160 plinth/modules/tor/views.py:79
+#: plinth/modules/snapshot/views.py:139 plinth/modules/tor/views.py:60
#, python-brace-format
msgid "Action error: {0} [{1}] [{2}]"
msgstr ""
-#: plinth/modules/snapshot/views.py:175
+#: plinth/modules/snapshot/views.py:154
msgid "Deleted all snapshots"
msgstr ""
-#: plinth/modules/snapshot/views.py:179
+#: plinth/modules/snapshot/views.py:158
msgid "Deleted selected snapshots"
msgstr ""
-#: plinth/modules/snapshot/views.py:184
+#: plinth/modules/snapshot/views.py:163
msgid "Snapshot is currently in use. Please try again later."
msgstr ""
-#: plinth/modules/snapshot/views.py:207
+#: plinth/modules/snapshot/views.py:186
#, python-brace-format
msgid "Rolled back to snapshot #{number}."
msgstr ""
-#: plinth/modules/snapshot/views.py:210
+#: plinth/modules/snapshot/views.py:189
msgid "The system must be restarted to complete the rollback."
msgstr ""
-#: plinth/modules/snapshot/views.py:222
+#: plinth/modules/snapshot/views.py:201
msgid "Rollback to Snapshot"
msgstr ""
-#: plinth/modules/ssh/__init__.py:43
-msgid "Secure Shell (SSH) Server"
-msgstr ""
-
-#: plinth/modules/ssh/__init__.py:46
+#: plinth/modules/ssh/__init__.py:29
msgid ""
"A Secure Shell server uses the secure shell protocol to accept connections "
"from remote computers. An authorized remote computer can perform "
@@ -4748,56 +4845,56 @@ msgid ""
"connections."
msgstr ""
-#: plinth/modules/ssh/forms.py:30
+#: plinth/modules/ssh/__init__.py:50
+msgid "Secure Shell (SSH) Server"
+msgstr ""
+
+#: plinth/modules/ssh/forms.py:15
msgid "Disable password authentication"
msgstr ""
-#: plinth/modules/ssh/forms.py:31
+#: plinth/modules/ssh/forms.py:16
msgid ""
"Improves security by preventing password guessing. Ensure that you have "
"setup SSH keys in your administrator user account before enabling this "
"option."
msgstr ""
-#: plinth/modules/ssh/templates/ssh.html:26
+#: plinth/modules/ssh/templates/ssh.html:11
msgid "Server Fingerprints"
msgstr ""
-#: plinth/modules/ssh/templates/ssh.html:29
+#: plinth/modules/ssh/templates/ssh.html:14
msgid ""
"When connecting to the server, ensure that the fingerprint shown by the SSH "
"client matches one of these fingerprints."
msgstr ""
-#: plinth/modules/ssh/templates/ssh.html:38
+#: plinth/modules/ssh/templates/ssh.html:23
msgid "Algorithm"
msgstr ""
-#: plinth/modules/ssh/templates/ssh.html:39
+#: plinth/modules/ssh/templates/ssh.html:24
msgid "Fingerprint"
msgstr ""
-#: plinth/modules/ssh/views.py:66
+#: plinth/modules/ssh/views.py:48
msgid "SSH authentication with password disabled."
msgstr ""
-#: plinth/modules/ssh/views.py:69
+#: plinth/modules/ssh/views.py:51
msgid "SSH authentication with password enabled."
msgstr ""
-#: plinth/modules/sso/__init__.py:30
+#: plinth/modules/sso/__init__.py:33
msgid "Single Sign On"
msgstr ""
-#: plinth/modules/sso/templates/login.html:35
+#: plinth/modules/sso/templates/login.html:20
msgid "Login"
msgstr ""
-#: plinth/modules/storage/__init__.py:39 plinth/modules/storage/__init__.py:331
-msgid "Storage"
-msgstr ""
-
-#: plinth/modules/storage/__init__.py:47
+#: plinth/modules/storage/__init__.py:30
#, python-brace-format
msgid ""
"This module allows you to manage storage media attached to your {box_name}. "
@@ -4805,145 +4902,149 @@ msgid ""
"media, expand the root partition etc."
msgstr ""
-#: plinth/modules/storage/__init__.py:224
+#: plinth/modules/storage/__init__.py:52 plinth/modules/storage/__init__.py:318
+msgid "Storage"
+msgstr ""
+
+#: plinth/modules/storage/__init__.py:211
#, python-brace-format
msgid "{disk_size:.1f} bytes"
msgstr ""
-#: plinth/modules/storage/__init__.py:228
+#: plinth/modules/storage/__init__.py:215
#, python-brace-format
msgid "{disk_size:.1f} KiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:232
+#: plinth/modules/storage/__init__.py:219
#, python-brace-format
msgid "{disk_size:.1f} MiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:236
+#: plinth/modules/storage/__init__.py:223
#, python-brace-format
msgid "{disk_size:.1f} GiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:239
+#: plinth/modules/storage/__init__.py:226
#, python-brace-format
msgid "{disk_size:.1f} TiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:246
+#: plinth/modules/storage/__init__.py:233
msgid "The operation failed."
msgstr ""
-#: plinth/modules/storage/__init__.py:248
+#: plinth/modules/storage/__init__.py:235
msgid "The operation was cancelled."
msgstr ""
-#: plinth/modules/storage/__init__.py:250
+#: plinth/modules/storage/__init__.py:237
msgid "The device is already unmounting."
msgstr ""
-#: plinth/modules/storage/__init__.py:252
+#: plinth/modules/storage/__init__.py:239
msgid "The operation is not supported due to missing driver/tool support."
msgstr ""
-#: plinth/modules/storage/__init__.py:255
+#: plinth/modules/storage/__init__.py:242
msgid "The operation timed out."
msgstr ""
-#: plinth/modules/storage/__init__.py:257
+#: plinth/modules/storage/__init__.py:244
msgid "The operation would wake up a disk that is in a deep-sleep state."
msgstr ""
-#: plinth/modules/storage/__init__.py:260
+#: plinth/modules/storage/__init__.py:247
msgid "Attempting to unmount a device that is busy."
msgstr ""
-#: plinth/modules/storage/__init__.py:262
+#: plinth/modules/storage/__init__.py:249
msgid "The operation has already been cancelled."
msgstr ""
-#: plinth/modules/storage/__init__.py:268
+#: plinth/modules/storage/__init__.py:255
msgid "Not authorized to perform the requested operation."
msgstr ""
-#: plinth/modules/storage/__init__.py:270
+#: plinth/modules/storage/__init__.py:257
msgid "The device is already mounted."
msgstr ""
-#: plinth/modules/storage/__init__.py:272
+#: plinth/modules/storage/__init__.py:259
msgid "The device is not mounted."
msgstr ""
-#: plinth/modules/storage/__init__.py:275
+#: plinth/modules/storage/__init__.py:262
msgid "Not permitted to use the requested option."
msgstr ""
-#: plinth/modules/storage/__init__.py:278
+#: plinth/modules/storage/__init__.py:265
msgid "The device is mounted by another user."
msgstr ""
-#: plinth/modules/storage/__init__.py:326
+#: plinth/modules/storage/__init__.py:313
#, no-python-format, python-brace-format
msgid "Low space on system partition: {percent_used}% used, {free_space} free."
msgstr ""
-#: plinth/modules/storage/__init__.py:328
+#: plinth/modules/storage/__init__.py:315
msgid "Low disk space"
msgstr ""
-#: plinth/modules/storage/forms.py:79
+#: plinth/modules/storage/forms.py:64
msgid "Invalid directory name."
msgstr ""
-#: plinth/modules/storage/forms.py:97
+#: plinth/modules/storage/forms.py:82
msgid "Directory does not exist."
msgstr ""
-#: plinth/modules/storage/forms.py:99
+#: plinth/modules/storage/forms.py:84
msgid "Path is not a directory."
msgstr ""
-#: plinth/modules/storage/forms.py:102
+#: plinth/modules/storage/forms.py:87
msgid "Directory is not readable by the user."
msgstr ""
-#: plinth/modules/storage/forms.py:105
+#: plinth/modules/storage/forms.py:90
msgid "Directory is not writable by the user."
msgstr ""
-#: plinth/modules/storage/forms.py:110
+#: plinth/modules/storage/forms.py:95
msgid "Directory"
msgstr ""
-#: plinth/modules/storage/forms.py:113
+#: plinth/modules/storage/forms.py:98
msgid "Subdirectory (optional)"
msgstr ""
-#: plinth/modules/storage/forms.py:160
+#: plinth/modules/storage/forms.py:145
msgid "Share"
msgstr ""
-#: plinth/modules/storage/forms.py:168
+#: plinth/modules/storage/forms.py:153
msgid "Other directory (specify below)"
msgstr ""
-#: plinth/modules/storage/templates/storage.html:35
+#: plinth/modules/storage/templates/storage.html:20
msgid "The following storage devices are in use:"
msgstr ""
-#: plinth/modules/storage/templates/storage.html:41
+#: plinth/modules/storage/templates/storage.html:26
msgid "Label"
msgstr ""
-#: plinth/modules/storage/templates/storage.html:42
+#: plinth/modules/storage/templates/storage.html:27
msgid "Mount Point"
msgstr ""
-#: plinth/modules/storage/templates/storage.html:90
+#: plinth/modules/storage/templates/storage.html:75
msgid "Partition Expansion"
msgstr ""
-#: plinth/modules/storage/templates/storage.html:92
+#: plinth/modules/storage/templates/storage.html:77
#, python-format
msgid ""
"There is %(expandable_root_size)s of unallocated space available after your "
@@ -4951,13 +5052,13 @@ msgid ""
"will provide you additional free space to store your files."
msgstr ""
-#: plinth/modules/storage/templates/storage.html:102
-#: plinth/modules/storage/templates/storage_expand.html:39
-#: plinth/modules/storage/views.py:76
+#: plinth/modules/storage/templates/storage.html:87
+#: plinth/modules/storage/templates/storage_expand.html:24
+#: plinth/modules/storage/views.py:58
msgid "Expand Root Partition"
msgstr ""
-#: plinth/modules/storage/templates/storage_expand.html:29
+#: plinth/modules/storage/templates/storage_expand.html:14
#, python-format
msgid ""
"Please backup your data before proceeding. After this operation, "
@@ -4965,39 +5066,30 @@ msgid ""
"root partition."
msgstr ""
-#: plinth/modules/storage/views.py:88
+#: plinth/modules/storage/views.py:70
#, python-brace-format
msgid "Error expanding partition: {exception}"
msgstr ""
-#: plinth/modules/storage/views.py:91
+#: plinth/modules/storage/views.py:73
msgid "Partition expanded successfully."
msgstr ""
-#: plinth/modules/storage/views.py:109
+#: plinth/modules/storage/views.py:91
#, python-brace-format
msgid "{drive_vendor} {drive_model} can be safely unplugged."
msgstr ""
-#: plinth/modules/storage/views.py:113
+#: plinth/modules/storage/views.py:95
msgid "Device can be safely unplugged."
msgstr ""
-#: plinth/modules/storage/views.py:123
+#: plinth/modules/storage/views.py:105
#, python-brace-format
msgid "Error ejecting device: {error_message}"
msgstr ""
-#: plinth/modules/syncthing/__init__.py:40
-#: plinth/modules/syncthing/manifest.py:28
-msgid "Syncthing"
-msgstr ""
-
-#: plinth/modules/syncthing/__init__.py:44
-msgid "File Synchronization"
-msgstr ""
-
-#: plinth/modules/syncthing/__init__.py:47
+#: plinth/modules/syncthing/__init__.py:26
msgid ""
"Syncthing is an application to synchronize files across multiple devices, e."
"g. your desktop computer and mobile phone. Creation, modification, or "
@@ -5005,7 +5097,7 @@ msgid ""
"other devices that also run Syncthing."
msgstr ""
-#: plinth/modules/syncthing/__init__.py:52
+#: plinth/modules/syncthing/__init__.py:31
#, python-brace-format
msgid ""
"Running Syncthing on {box_name} provides an extra synchronization point for "
@@ -5016,19 +5108,20 @@ msgid ""
"{box_name} is only available for users belonging to the \"admin\" group."
msgstr ""
-#: plinth/modules/syncthing/__init__.py:63
+#: plinth/modules/syncthing/__init__.py:40
msgid "Administer Syncthing application"
msgstr ""
-#: plinth/modules/tahoe/__init__.py:43
-msgid "Tahoe-LAFS"
+#: plinth/modules/syncthing/__init__.py:54
+#: plinth/modules/syncthing/manifest.py:13
+msgid "Syncthing"
msgstr ""
-#: plinth/modules/tahoe/__init__.py:47
-msgid "Distributed File Storage"
+#: plinth/modules/syncthing/__init__.py:55
+msgid "File Synchronization"
msgstr ""
-#: plinth/modules/tahoe/__init__.py:134
+#: plinth/modules/tahoe/__init__.py:30
msgid ""
"Tahoe-LAFS is a decentralized secure file storage system. It uses provider "
"independent security to store files over a distributed network of storage "
@@ -5036,7 +5129,7 @@ msgid ""
"remaining nodes."
msgstr ""
-#: plinth/modules/tahoe/__init__.py:139
+#: plinth/modules/tahoe/__init__.py:35
#, python-brace-format
msgid ""
"This {box_name} hosts a storage node and an introducer by default. "
@@ -5044,7 +5137,15 @@ msgid ""
"other storage nodes."
msgstr ""
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:33
+#: plinth/modules/tahoe/__init__.py:66
+msgid "Tahoe-LAFS"
+msgstr ""
+
+#: plinth/modules/tahoe/__init__.py:68
+msgid "Distributed File Storage"
+msgstr ""
+
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:17
#, python-format
msgid ""
"The Tahoe-LAFS server domain is set to %(domain_name)s. Changing the "
@@ -5053,37 +5154,33 @@ msgid ""
"%(domain_name)s:5678\">https://%(domain_name)s:5678."
msgstr ""
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:55
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:39
msgid "Local introducer"
msgstr ""
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:43
#: plinth/modules/tahoe/templates/tahoe-post-setup.html:59
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:75
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:92
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:76
msgid "Pet Name"
msgstr ""
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:72
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:56
msgid "Add new introducer"
msgstr ""
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:83
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:67
msgid "Add"
msgstr ""
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:88
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:72
msgid "Connected introducers"
msgstr ""
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:105
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:89
msgid "Remove"
msgstr ""
-#: plinth/modules/tor/__init__.py:47
-msgid "Tor"
-msgstr ""
-
-#: plinth/modules/tor/__init__.py:52
+#: plinth/modules/tor/__init__.py:33
msgid ""
"Tor is an anonymous communication system. You can learn more about it from "
"the Tor Project website. For "
@@ -5092,76 +5189,80 @@ msgid ""
"\">Tor Browser."
msgstr ""
-#: plinth/modules/tor/__init__.py:83
+#: plinth/modules/tor/__init__.py:55
+msgid "Tor"
+msgstr ""
+
+#: plinth/modules/tor/__init__.py:66
msgid "Tor Onion Service"
msgstr ""
-#: plinth/modules/tor/__init__.py:87
+#: plinth/modules/tor/__init__.py:70
msgid "Tor Socks Proxy"
msgstr ""
-#: plinth/modules/tor/__init__.py:91
+#: plinth/modules/tor/__init__.py:74
msgid "Tor Bridge Relay"
msgstr ""
-#: plinth/modules/tor/__init__.py:112
+#: plinth/modules/tor/__init__.py:95
msgid "Tor relay port available"
msgstr ""
-#: plinth/modules/tor/__init__.py:122
+#: plinth/modules/tor/__init__.py:105
msgid "Obfs3 transport registered"
msgstr ""
-#: plinth/modules/tor/__init__.py:132
+#: plinth/modules/tor/__init__.py:115
msgid "Obfs4 transport registered"
msgstr ""
-#: plinth/modules/tor/__init__.py:225
+#: plinth/modules/tor/__init__.py:208
#, python-brace-format
msgid "Access URL {url} on tcp{kind} via Tor"
msgstr ""
-#: plinth/modules/tor/__init__.py:236
+#: plinth/modules/tor/__init__.py:219
#, python-brace-format
msgid "Confirm Tor usage at {url} on tcp{kind}"
msgstr ""
-#: plinth/modules/tor/forms.py:46
+#: plinth/modules/tor/forms.py:31
msgid ""
"Enter a valid bridge with this format: [transport] IP:ORPort [fingerprint]"
msgstr ""
-#: plinth/modules/tor/forms.py:88
+#: plinth/modules/tor/forms.py:73
msgid "Enable Tor"
msgstr ""
-#: plinth/modules/tor/forms.py:90
+#: plinth/modules/tor/forms.py:75
msgid "Use upstream bridges to connect to Tor network"
msgstr ""
-#: plinth/modules/tor/forms.py:92
+#: plinth/modules/tor/forms.py:77
msgid ""
"When enabled, the bridges configured below will be used to connect to the "
"Tor network. Use this option if your Internet Service Provider (ISP) blocks "
"or censors connections to the Tor Network. This will disable relay modes."
msgstr ""
-#: plinth/modules/tor/forms.py:97
+#: plinth/modules/tor/forms.py:82
msgid "Upstream bridges"
msgstr ""
-#: plinth/modules/tor/forms.py:99
+#: plinth/modules/tor/forms.py:84
msgid ""
"You can get some bridges from https://bridges.torproject.org/ and copy/paste the bridge information "
"here. Currently supported transports are none, obfs3, obfs4 and scamblesuit."
msgstr ""
-#: plinth/modules/tor/forms.py:105
+#: plinth/modules/tor/forms.py:90
msgid "Enable Tor relay"
msgstr ""
-#: plinth/modules/tor/forms.py:106
+#: plinth/modules/tor/forms.py:91
#, python-brace-format
msgid ""
"When enabled, your {box_name} will run a Tor relay and donate bandwidth to "
@@ -5169,22 +5270,22 @@ msgid ""
"download bandwidth."
msgstr ""
-#: plinth/modules/tor/forms.py:111
+#: plinth/modules/tor/forms.py:96
msgid "Enable Tor bridge relay"
msgstr ""
-#: plinth/modules/tor/forms.py:113
+#: plinth/modules/tor/forms.py:98
msgid ""
"When enabled, relay information is published in the Tor bridge database "
"instead of public Tor relay database making it harder to censor this node. "
"This helps others circumvent censorship."
msgstr ""
-#: plinth/modules/tor/forms.py:118
+#: plinth/modules/tor/forms.py:103
msgid "Enable Tor Hidden Service"
msgstr ""
-#: plinth/modules/tor/forms.py:120
+#: plinth/modules/tor/forms.py:105
#, python-brace-format
msgid ""
"A hidden service will allow {box_name} to provide selected services (such as "
@@ -5192,208 +5293,204 @@ msgid ""
"anonymity yet."
msgstr ""
-#: plinth/modules/tor/forms.py:125
+#: plinth/modules/tor/forms.py:110
msgid "Download software packages over Tor"
msgstr ""
-#: plinth/modules/tor/forms.py:126
+#: plinth/modules/tor/forms.py:111
msgid ""
"When enabled, software will be downloaded over the Tor network for "
"installations and upgrades. This adds a degree of privacy and security "
"during software downloads."
msgstr ""
-#: plinth/modules/tor/forms.py:141
+#: plinth/modules/tor/forms.py:126
msgid "Specify at least one upstream bridge to use upstream bridges."
msgstr ""
-#: plinth/modules/tor/manifest.py:29
+#: plinth/modules/tor/manifest.py:14
msgid "Tor Browser"
msgstr ""
-#: plinth/modules/tor/manifest.py:45
+#: plinth/modules/tor/manifest.py:30
msgid "Orbot: Proxy with Tor"
msgstr ""
-#: plinth/modules/tor/templates/tor.html:41
+#: plinth/modules/tor/templates/tor.html:26
msgid "Tor configuration is being updated"
msgstr ""
-#: plinth/modules/tor/templates/tor.html:50
+#: plinth/modules/tor/templates/tor.html:35
msgid "Onion Service"
msgstr ""
-#: plinth/modules/tor/templates/tor.html:52
+#: plinth/modules/tor/templates/tor.html:37
msgid "Ports"
msgstr ""
-#: plinth/modules/tor/templates/tor.html:82
+#: plinth/modules/tor/templates/tor.html:67
msgid "Relay"
msgstr ""
-#: plinth/modules/tor/templates/tor.html:84
+#: plinth/modules/tor/templates/tor.html:69
#, python-format
msgid ""
"If your %(box_name)s is behind a router or firewall, you should make sure "
"the following ports are open, and port-forwarded, if necessary:"
msgstr ""
-#: plinth/modules/tor/templates/tor.html:112
+#: plinth/modules/tor/templates/tor.html:97
msgid "SOCKS"
msgstr ""
-#: plinth/modules/tor/templates/tor.html:115
+#: plinth/modules/tor/templates/tor.html:100
#, python-format
msgid "A Tor SOCKS port is available on your %(box_name)s on TCP port 9050."
msgstr ""
-#: plinth/modules/transmission/__init__.py:41
-#: plinth/modules/transmission/manifest.py:24
-msgid "Transmission"
-msgstr ""
-
-#: plinth/modules/transmission/__init__.py:48
+#: plinth/modules/transmission/__init__.py:27
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/ttrss/__init__.py:43 plinth/modules/ttrss/manifest.py:34
-msgid "Tiny Tiny RSS"
+#: plinth/modules/transmission/__init__.py:48
+#: plinth/modules/transmission/manifest.py:9
+msgid "Transmission"
msgstr ""
-#: plinth/modules/ttrss/__init__.py:47
-msgid "News Feed Reader"
-msgstr ""
-
-#: plinth/modules/ttrss/__init__.py:50
+#: plinth/modules/ttrss/__init__.py:29
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:54
+#: plinth/modules/ttrss/__init__.py:33
#, python-brace-format
msgid ""
"When enabled, Tiny Tiny RSS can be accessed by any user with a {box_name} login."
msgstr ""
-#: plinth/modules/ttrss/__init__.py:58
+#: plinth/modules/ttrss/__init__.py:37
msgid ""
"When using a mobile or desktop application for Tiny Tiny RSS, use the URL /tt-rss-app for "
"connecting."
msgstr ""
-#: plinth/modules/ttrss/__init__.py:65
+#: plinth/modules/ttrss/__init__.py:42
msgid "Read and subscribe to news feeds"
msgstr ""
-#: plinth/modules/ttrss/manifest.py:25
+#: plinth/modules/ttrss/__init__.py:56 plinth/modules/ttrss/manifest.py:19
+msgid "Tiny Tiny RSS"
+msgstr ""
+
+#: plinth/modules/ttrss/__init__.py:57
+msgid "News Feed Reader"
+msgstr ""
+
+#: plinth/modules/ttrss/manifest.py:10
msgid "Tiny Tiny RSS (Fork)"
msgstr ""
-#: plinth/modules/upgrades/__init__.py:37 plinth/templates/setup.html:89
-msgid "Update"
-msgstr ""
-
-#: plinth/modules/upgrades/__init__.py:40
+#: plinth/modules/upgrades/__init__.py:23
msgid "Check for and apply the latest software and security updates."
msgstr ""
-#: plinth/modules/upgrades/__init__.py:84
+#: plinth/modules/upgrades/__init__.py:38 plinth/templates/setup.html:74
+msgid "Update"
+msgstr ""
+
+#: plinth/modules/upgrades/__init__.py:71
msgid "FreedomBox Updated"
msgstr ""
-#: plinth/modules/upgrades/forms.py:28
+#: plinth/modules/upgrades/forms.py:13
msgid "Enable auto-update"
msgstr ""
-#: plinth/modules/upgrades/forms.py:29
+#: plinth/modules/upgrades/forms.py:14
msgid "When enabled, FreedomBox automatically updates once a day."
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades-new-release.html:24
+#: plinth/modules/upgrades/templates/upgrades-new-release.html:9
#, python-format
msgid "%(box_name)s Updated"
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades-new-release.html:28
+#: plinth/modules/upgrades/templates/upgrades-new-release.html:13
#, python-format
msgid ""
"%(box_name)s has been updated to version %(version)s. See the release announcement."
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades-new-release.html:37
-#: plinth/templates/notifications.html:59
+#: plinth/modules/upgrades/templates/upgrades-new-release.html:22
+#: plinth/templates/notifications.html:44
msgid "Dismiss"
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades.html:45
+#: plinth/modules/upgrades/templates/upgrades.html:30
msgid "Update now"
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades.html:54
+#: plinth/modules/upgrades/templates/upgrades.html:39
msgid "Updating..."
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades.html:59
+#: plinth/modules/upgrades/templates/upgrades.html:44
msgid ""
"This may take a long time to complete. During an update, "
"you cannot install apps. Also, this web interface may be temporarily "
"unavailable and show an error. In that case, refresh the page to continue."
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades.html:73
+#: plinth/modules/upgrades/templates/upgrades.html:58
msgid "Toggle recent update logs"
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades_configure.html:26
-#: plinth/modules/upgrades/templates/upgrades_configure.html:27
-#: plinth/modules/upgrades/views.py:107
+#: plinth/modules/upgrades/templates/upgrades_configure.html:11
+#: plinth/modules/upgrades/templates/upgrades_configure.html:12
+#: plinth/modules/upgrades/views.py:89
msgid "Manual update"
msgstr ""
-#: plinth/modules/upgrades/views.py:66
+#: plinth/modules/upgrades/views.py:48
#, python-brace-format
msgid "Error when configuring unattended-upgrades: {error}"
msgstr ""
-#: plinth/modules/upgrades/views.py:70
+#: plinth/modules/upgrades/views.py:52
msgid "Automatic upgrades enabled"
msgstr ""
-#: plinth/modules/upgrades/views.py:73
+#: plinth/modules/upgrades/views.py:55
msgid "Automatic upgrades disabled"
msgstr ""
-#: plinth/modules/upgrades/views.py:75
+#: plinth/modules/upgrades/views.py:57
msgid "Settings unchanged"
msgstr ""
-#: plinth/modules/upgrades/views.py:101
+#: plinth/modules/upgrades/views.py:83
msgid "Upgrade process started."
msgstr ""
-#: plinth/modules/upgrades/views.py:104
+#: plinth/modules/upgrades/views.py:86
msgid "Starting upgrade failed."
msgstr ""
-#: plinth/modules/users/__init__.py:51
-msgid "Users and Groups"
-msgstr ""
-
-#: plinth/modules/users/__init__.py:54
+#: plinth/modules/users/__init__.py:37
msgid ""
"Create and managed user accounts. These accounts serve as centralized "
"authentication mechanism for most apps. Some apps further require a user "
"account to be part of a group to authorize the user to access the app."
msgstr ""
-#: plinth/modules/users/__init__.py:59
+#: plinth/modules/users/__init__.py:42
#, python-brace-format
msgid ""
"Any user may login to {box_name} web interface to see a list of apps "
@@ -5401,33 +5498,37 @@ msgid ""
"group may alter apps or system settings."
msgstr ""
-#: plinth/modules/users/__init__.py:128
+#: plinth/modules/users/__init__.py:64
+msgid "Users and Groups"
+msgstr ""
+
+#: plinth/modules/users/__init__.py:115
#, python-brace-format
msgid "Check LDAP entry \"{search_item}\""
msgstr ""
-#: plinth/modules/users/forms.py:43
+#: plinth/modules/users/forms.py:28
msgid "Access to all services and system settings"
msgstr ""
-#: plinth/modules/users/forms.py:59
+#: plinth/modules/users/forms.py:44
msgid "Username is taken or is reserved."
msgstr ""
-#: plinth/modules/users/forms.py:87
+#: plinth/modules/users/forms.py:72
msgid "Enter a valid username."
msgstr ""
-#: plinth/modules/users/forms.py:93
+#: plinth/modules/users/forms.py:78
msgid ""
"Required. 150 characters or fewer. English letters, digits and @/./-/_ only."
msgstr ""
-#: plinth/modules/users/forms.py:106 plinth/modules/users/forms.py:222
+#: plinth/modules/users/forms.py:91 plinth/modules/users/forms.py:207
msgid "Permissions"
msgstr ""
-#: plinth/modules/users/forms.py:109
+#: plinth/modules/users/forms.py:94
msgid ""
"Select which services should be available to the new user. The user will be "
"able to log in to services that support single sign-on through LDAP, if they "
@@ -5436,187 +5537,182 @@ msgid ""
"SSH and have administrative privileges (sudo)."
msgstr ""
-#: plinth/modules/users/forms.py:148 plinth/modules/users/forms.py:372
+#: plinth/modules/users/forms.py:133 plinth/modules/users/forms.py:357
msgid "Creating LDAP user failed."
msgstr ""
-#: plinth/modules/users/forms.py:159
+#: plinth/modules/users/forms.py:144
#, python-brace-format
msgid "Failed to add new user to {group} group."
msgstr ""
-#: plinth/modules/users/forms.py:173
+#: plinth/modules/users/forms.py:158
msgid "Authorized SSH Keys"
msgstr ""
-#: plinth/modules/users/forms.py:175
+#: plinth/modules/users/forms.py:160
msgid ""
"Setting an SSH public key will allow this user to securely log in to the "
"system without using a password. You may enter multiple keys, one on each "
"line. Blank lines and lines starting with # will be ignored."
msgstr ""
-#: plinth/modules/users/forms.py:259
+#: plinth/modules/users/forms.py:244
msgid "Renaming LDAP user failed."
msgstr ""
-#: plinth/modules/users/forms.py:271
+#: plinth/modules/users/forms.py:256
msgid "Failed to remove user from group."
msgstr ""
-#: plinth/modules/users/forms.py:282
+#: plinth/modules/users/forms.py:267
msgid "Failed to add user to group."
msgstr ""
-#: plinth/modules/users/forms.py:291
+#: plinth/modules/users/forms.py:276
msgid "Unable to set SSH keys."
msgstr ""
-#: plinth/modules/users/forms.py:306
+#: plinth/modules/users/forms.py:291
msgid "Failed to change user status."
msgstr ""
-#: plinth/modules/users/forms.py:314
+#: plinth/modules/users/forms.py:299
msgid "Cannot delete the only administrator in the system."
msgstr ""
-#: plinth/modules/users/forms.py:346
+#: plinth/modules/users/forms.py:331
msgid "Changing LDAP user password failed."
msgstr ""
-#: plinth/modules/users/forms.py:381
+#: plinth/modules/users/forms.py:366
msgid "Failed to add new user to admin group."
msgstr ""
-#: plinth/modules/users/forms.py:398
+#: plinth/modules/users/forms.py:383
msgid "Failed to restrict console access."
msgstr ""
-#: plinth/modules/users/forms.py:410
+#: plinth/modules/users/forms.py:395
msgid "User account created, you are now logged in"
msgstr ""
-#: plinth/modules/users/templates/users_change_password.html:26
+#: plinth/modules/users/templates/users_change_password.html:11
#, python-format
msgid "Change Password for %(username)s"
msgstr ""
-#: plinth/modules/users/templates/users_change_password.html:36
+#: plinth/modules/users/templates/users_change_password.html:21
msgid "Save Password"
msgstr ""
-#: plinth/modules/users/templates/users_create.html:32
-#: plinth/modules/users/templates/users_list.html:42
-#: plinth/modules/users/templates/users_list.html:44
-#: plinth/modules/users/views.py:57
+#: plinth/modules/users/templates/users_create.html:17
+#: plinth/modules/users/templates/users_list.html:27
+#: plinth/modules/users/templates/users_list.html:29
+#: plinth/modules/users/views.py:42
msgid "Create User"
msgstr ""
-#: plinth/modules/users/templates/users_delete.html:26
-#: plinth/modules/users/views.py:139
+#: plinth/modules/users/templates/users_delete.html:11
+#: plinth/modules/users/views.py:121
msgid "Delete User"
msgstr ""
-#: plinth/modules/users/templates/users_delete.html:29
+#: plinth/modules/users/templates/users_delete.html:14
#, python-format
msgid "Delete user %(username)s permanently?"
msgstr ""
-#: plinth/modules/users/templates/users_delete.html:38
+#: plinth/modules/users/templates/users_delete.html:23
#, python-format
msgid "Delete %(username)s"
msgstr ""
-#: plinth/modules/users/templates/users_firstboot.html:26
+#: plinth/modules/users/templates/users_firstboot.html:11
msgid "Administrator Account"
msgstr ""
-#: plinth/modules/users/templates/users_firstboot.html:29
+#: plinth/modules/users/templates/users_firstboot.html:14
msgid ""
"Choose a username and password to access this web interface. The password "
"can be changed later. This user will be granted administrative privileges. "
"Other users can be added later."
msgstr ""
-#: plinth/modules/users/templates/users_firstboot.html:42
+#: plinth/modules/users/templates/users_firstboot.html:27
msgid "Create Account"
msgstr ""
-#: plinth/modules/users/templates/users_list.html:38
-#: plinth/modules/users/views.py:74
+#: plinth/modules/users/templates/users_list.html:23
+#: plinth/modules/users/views.py:59
msgid "Users"
msgstr ""
-#: plinth/modules/users/templates/users_list.html:57
+#: plinth/modules/users/templates/users_list.html:42
#, python-format
msgid "Delete user %(username)s"
msgstr ""
-#: plinth/modules/users/templates/users_list.html:65
+#: plinth/modules/users/templates/users_list.html:50
#, python-format
msgid "Edit user %(username)s"
msgstr ""
-#: plinth/modules/users/templates/users_update.html:30
+#: plinth/modules/users/templates/users_update.html:15
#, python-format
msgid ""
"Use the change password form to "
"change the password."
msgstr ""
-#: plinth/modules/users/templates/users_update.html:42
-#: plinth/templates/language-selection.html:32
+#: plinth/modules/users/templates/users_update.html:27
+#: plinth/templates/language-selection.html:17
msgid "Save Changes"
msgstr ""
-#: plinth/modules/users/views.py:55
+#: plinth/modules/users/views.py:40
#, python-format
msgid "User %(username)s created."
msgstr ""
-#: plinth/modules/users/views.py:93
+#: plinth/modules/users/views.py:75
#, python-format
msgid "User %(username)s updated."
msgstr ""
-#: plinth/modules/users/views.py:94
+#: plinth/modules/users/views.py:76
msgid "Edit User"
msgstr ""
-#: plinth/modules/users/views.py:149
+#: plinth/modules/users/views.py:131
#, python-brace-format
msgid "User {user} deleted."
msgstr ""
-#: plinth/modules/users/views.py:156
+#: plinth/modules/users/views.py:138
msgid "Deleting LDAP user failed."
msgstr ""
-#: plinth/modules/users/views.py:165
+#: plinth/modules/users/views.py:147
msgid "Change Password"
msgstr ""
-#: plinth/modules/users/views.py:166
+#: plinth/modules/users/views.py:148
msgid "Password changed successfully."
msgstr ""
-#: plinth/modules/wireguard/__init__.py:38
-#: plinth/modules/wireguard/manifest.py:29
-msgid "WireGuard"
-msgstr ""
-
-#: plinth/modules/wireguard/__init__.py:43
+#: plinth/modules/wireguard/__init__.py:24
msgid "WireGuard is a fast, modern, secure VPN tunnel."
msgstr ""
-#: plinth/modules/wireguard/__init__.py:45
+#: plinth/modules/wireguard/__init__.py:26
#, python-brace-format
msgid ""
"It can be used to connect to a VPN provider which supports WireGuard, and to "
"route all outgoing traffic from {box_name} through the VPN."
msgstr ""
-#: plinth/modules/wireguard/__init__.py:49
+#: plinth/modules/wireguard/__init__.py:30
#, python-brace-format
msgid ""
"A second use case is to connect a mobile device to {box_name} while "
@@ -5624,59 +5720,64 @@ msgid ""
"securely relayed through {box_name}."
msgstr ""
-#: plinth/modules/wireguard/forms.py:47
+#: plinth/modules/wireguard/__init__.py:52
+#: plinth/modules/wireguard/manifest.py:14
+msgid "WireGuard"
+msgstr ""
+
+#: plinth/modules/wireguard/forms.py:32
msgid "Invalid key."
msgstr ""
-#: plinth/modules/wireguard/forms.py:76
-#: plinth/modules/wireguard/templates/wireguard.html:32
-#: plinth/modules/wireguard/templates/wireguard.html:89
-#: plinth/modules/wireguard/templates/wireguard_delete_server.html:38
+#: plinth/modules/wireguard/forms.py:61
+#: plinth/modules/wireguard/templates/wireguard.html:17
+#: plinth/modules/wireguard/templates/wireguard.html:74
+#: plinth/modules/wireguard/templates/wireguard_delete_server.html:23
msgid "Public Key"
msgstr ""
-#: plinth/modules/wireguard/forms.py:77
+#: plinth/modules/wireguard/forms.py:62
msgid ""
"Public key of the peer. Example: "
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs= ."
msgstr ""
-#: plinth/modules/wireguard/forms.py:85
+#: plinth/modules/wireguard/forms.py:70
msgid "Endpoint of the server"
msgstr ""
-#: plinth/modules/wireguard/forms.py:86
+#: plinth/modules/wireguard/forms.py:71
msgid ""
"Domain name and port in the form \"ip:port\". Example: demo.wireguard."
"com:12912 ."
msgstr ""
-#: plinth/modules/wireguard/forms.py:91
+#: plinth/modules/wireguard/forms.py:76
msgid "Public key of the server"
msgstr ""
-#: plinth/modules/wireguard/forms.py:92
+#: plinth/modules/wireguard/forms.py:77
msgid ""
"Provided by the server operator, a long string of characters. Example: "
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs= ."
msgstr ""
-#: plinth/modules/wireguard/forms.py:97
+#: plinth/modules/wireguard/forms.py:82
msgid "Client IP address provided by server"
msgstr ""
-#: plinth/modules/wireguard/forms.py:98
+#: plinth/modules/wireguard/forms.py:83
msgid ""
"IP address assigned to this machine on the VPN after connecting to the "
"endpoint. This value is usually provided by the server operator. Example: "
"192.168.0.10."
msgstr ""
-#: plinth/modules/wireguard/forms.py:104
+#: plinth/modules/wireguard/forms.py:89
msgid "Private key of this machine"
msgstr ""
-#: plinth/modules/wireguard/forms.py:105
+#: plinth/modules/wireguard/forms.py:90
msgid ""
"Optional. New public/private keys are generated if left blank. Public key "
"can then be provided to the server. This is the recommended way. However, "
@@ -5684,157 +5785,157 @@ msgid ""
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs= ."
msgstr ""
-#: plinth/modules/wireguard/forms.py:113
+#: plinth/modules/wireguard/forms.py:98
msgid "Pre-shared key"
msgstr ""
-#: plinth/modules/wireguard/forms.py:114
+#: plinth/modules/wireguard/forms.py:99
msgid ""
"Optional. A shared secret key provided by the server to add an additional "
"layer of security. Fill in only if provided. Example: "
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs=."
msgstr ""
-#: plinth/modules/wireguard/forms.py:120
+#: plinth/modules/wireguard/forms.py:105
msgid "Use this connection to send all outgoing traffic"
msgstr ""
-#: plinth/modules/wireguard/forms.py:122
+#: plinth/modules/wireguard/forms.py:107
msgid "Typically checked for a VPN service though which all traffic is sent."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:25
+#: plinth/modules/wireguard/templates/wireguard.html:10
msgid "As a Server"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:27
+#: plinth/modules/wireguard/templates/wireguard.html:12
msgid "Peers allowed to connect to this server:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:33
+#: plinth/modules/wireguard/templates/wireguard.html:18
msgid "Allowed IPs"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:34
-#: plinth/modules/wireguard/templates/wireguard.html:90
+#: plinth/modules/wireguard/templates/wireguard.html:19
+#: plinth/modules/wireguard/templates/wireguard.html:75
msgid "Last Connected Time"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:53
+#: plinth/modules/wireguard/templates/wireguard.html:38
#, python-format
msgid "No peers configured to connect to this %(box_name)s yet."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:62
+#: plinth/modules/wireguard/templates/wireguard.html:47
#, python-format
msgid "Public key for this %(box_name)s:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:68
+#: plinth/modules/wireguard/templates/wireguard.html:53
msgid "Not configured yet."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:72
+#: plinth/modules/wireguard/templates/wireguard.html:57
msgid "Add a new peer"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:76
-#: plinth/modules/wireguard/views.py:69
+#: plinth/modules/wireguard/templates/wireguard.html:61
+#: plinth/modules/wireguard/views.py:51
msgid "Add Allowed Client"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:79
+#: plinth/modules/wireguard/templates/wireguard.html:64
msgid "As a Client"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:81
+#: plinth/modules/wireguard/templates/wireguard.html:66
#, python-format
msgid "Servers that %(box_name)s will connect to:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:88
-#: plinth/modules/wireguard/templates/wireguard_delete_server.html:34
+#: plinth/modules/wireguard/templates/wireguard.html:73
+#: plinth/modules/wireguard/templates/wireguard_delete_server.html:19
msgid "Endpoint"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:111
+#: plinth/modules/wireguard/templates/wireguard.html:96
msgid "No connections to remote servers are configured yet."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:119
+#: plinth/modules/wireguard/templates/wireguard.html:104
msgid "Add a new server"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:123
-#: plinth/modules/wireguard/views.py:178
+#: plinth/modules/wireguard/templates/wireguard.html:108
+#: plinth/modules/wireguard/views.py:160
msgid "Add Connection to Server"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_add_client.html:34
+#: plinth/modules/wireguard/templates/wireguard_add_client.html:19
msgid "Add Client"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_delete_client.html:29
+#: plinth/modules/wireguard/templates/wireguard_delete_client.html:14
msgid "Are you sure that you want to delete this client?"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_delete_server.html:29
+#: plinth/modules/wireguard/templates/wireguard_delete_server.html:14
msgid "Are you sure that you want to delete this server?"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_edit_client.html:34
+#: plinth/modules/wireguard/templates/wireguard_edit_client.html:19
msgid "Update Client"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_edit_server.html:34
+#: plinth/modules/wireguard/templates/wireguard_edit_server.html:19
msgid "Update Connection"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:27
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:12
#, python-format
msgid ""
"%(box_name)s will allow this client to connect to it. Ensure that the client "
"is configured with the following information."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:35
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:20
msgid "Client public key:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:39
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:24
msgid "IP address to use for client:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:43
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:46
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:28
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:31
msgid "Pre-shared key:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:47
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:32
msgid "Server endpoints:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:55
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:42
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:40
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:27
msgid "Server public key:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:65
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:64
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:50
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:49
msgid "Data transmitted:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:69
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:68
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:54
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:53
msgid "Data received:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:73
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:72
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:58
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:57
msgid "Latest handshake:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:29
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:14
#, python-format
msgid ""
"%(box_name)s will attempt to reach a WireGuard server with the following "
@@ -5842,133 +5943,133 @@ msgid ""
"public key and IP address."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:38
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:23
msgid "Server endpoint:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:50
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:35
msgid "Public key of this machine:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:54
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:39
msgid "IP address of this machine:"
msgstr ""
-#: plinth/modules/wireguard/views.py:64
+#: plinth/modules/wireguard/views.py:46
msgid "Added new client."
msgstr ""
-#: plinth/modules/wireguard/views.py:79 plinth/modules/wireguard/views.py:138
+#: plinth/modules/wireguard/views.py:61 plinth/modules/wireguard/views.py:120
msgid "Client with public key already exists"
msgstr ""
-#: plinth/modules/wireguard/views.py:92
+#: plinth/modules/wireguard/views.py:74
msgid "Allowed Client"
msgstr ""
-#: plinth/modules/wireguard/views.py:114
+#: plinth/modules/wireguard/views.py:96
msgid "Updated client."
msgstr ""
-#: plinth/modules/wireguard/views.py:119
+#: plinth/modules/wireguard/views.py:101
msgid "Modify Client"
msgstr ""
-#: plinth/modules/wireguard/views.py:152
+#: plinth/modules/wireguard/views.py:134
msgid "Delete Allowed Client"
msgstr ""
-#: plinth/modules/wireguard/views.py:161
+#: plinth/modules/wireguard/views.py:143
msgid "Client deleted."
msgstr ""
-#: plinth/modules/wireguard/views.py:163
+#: plinth/modules/wireguard/views.py:145
msgid "Client not found"
msgstr ""
-#: plinth/modules/wireguard/views.py:173
+#: plinth/modules/wireguard/views.py:155
msgid "Added new server."
msgstr ""
-#: plinth/modules/wireguard/views.py:194
+#: plinth/modules/wireguard/views.py:176
msgid "Connection to Server"
msgstr ""
-#: plinth/modules/wireguard/views.py:212
+#: plinth/modules/wireguard/views.py:194
msgid "Updated server."
msgstr ""
-#: plinth/modules/wireguard/views.py:217
+#: plinth/modules/wireguard/views.py:199
msgid "Modify Connection to Server"
msgstr ""
-#: plinth/modules/wireguard/views.py:254
+#: plinth/modules/wireguard/views.py:236
msgid "Delete Connection to Server"
msgstr ""
-#: plinth/modules/wireguard/views.py:274
+#: plinth/modules/wireguard/views.py:256
msgid "Server deleted."
msgstr ""
-#: plinth/network.py:42
+#: plinth/network.py:27
msgid "PPPoE"
msgstr ""
-#: plinth/network.py:43
+#: plinth/network.py:28
msgid "Generic"
msgstr ""
-#: plinth/package.py:137
+#: plinth/package.py:122
msgid "Error during installation"
msgstr ""
-#: plinth/package.py:159
+#: plinth/package.py:144
msgid "installing"
msgstr ""
-#: plinth/package.py:161
+#: plinth/package.py:146
msgid "downloading"
msgstr ""
-#: plinth/package.py:163
+#: plinth/package.py:148
msgid "media change"
msgstr ""
-#: plinth/package.py:165
+#: plinth/package.py:150
#, python-brace-format
msgid "configuration file: {file}"
msgstr ""
-#: plinth/templates/403.html:25
+#: plinth/templates/403.html:10
msgid "403 Forbidden"
msgstr ""
-#: plinth/templates/403.html:29
+#: plinth/templates/403.html:14
#, python-format
msgid "You don't have permission to access %(request_path)s on this server."
msgstr ""
-#: plinth/templates/404.html:25
+#: plinth/templates/404.html:10
msgid "404"
msgstr ""
-#: plinth/templates/404.html:28
+#: plinth/templates/404.html:13
#, python-format
msgid "Requested page %(request_path)s was not found."
msgstr ""
-#: plinth/templates/404.html:34
+#: plinth/templates/404.html:19
msgid ""
"If you believe this missing page should exist, please file a bug at the "
"FreedomBox Service (Plinth) project issue tracker."
msgstr ""
-#: plinth/templates/500.html:25
+#: plinth/templates/500.html:10
msgid "500"
msgstr ""
-#: plinth/templates/500.html:29
+#: plinth/templates/500.html:14
#, python-format
msgid ""
"This is an internal error and not something you caused or can fix. Please "
@@ -5977,137 +6078,137 @@ msgid ""
"href=\"%(status_log_url)s\">status log to the bug report."
msgstr ""
-#: plinth/templates/app.html:47
+#: plinth/templates/app-header.html:22
+msgid "Installation"
+msgstr ""
+
+#: plinth/templates/app.html:32
#, python-format
msgid "Service %(service_name)s is running."
msgstr ""
-#: plinth/templates/app.html:52
+#: plinth/templates/app.html:37
#, python-format
msgid "Service %(service_name)s is not running."
msgstr ""
-#: plinth/templates/base.html:50
+#: plinth/templates/base.html:35
#, python-format
msgid "Core functionality and web interface for %(box_name)s"
msgstr ""
-#: plinth/templates/base.html:96
+#: plinth/templates/base.html:81
msgid "Toggle navigation"
msgstr ""
-#: plinth/templates/base.html:120 plinth/templates/base.html:123
+#: plinth/templates/base.html:105 plinth/templates/base.html:108
msgid "Home"
msgstr ""
-#: plinth/templates/base.html:128 plinth/templates/base.html:132
+#: plinth/templates/base.html:113 plinth/templates/base.html:117
msgid "Apps"
msgstr ""
-#: plinth/templates/base.html:137 plinth/templates/base.html:141
+#: plinth/templates/base.html:122 plinth/templates/base.html:126
msgid "System"
msgstr ""
-#: plinth/templates/base.html:173 plinth/templates/base.html:174
+#: plinth/templates/base.html:158 plinth/templates/base.html:159
msgid "Change password"
msgstr ""
-#: plinth/templates/base.html:181 plinth/templates/base.html:182
+#: plinth/templates/base.html:166 plinth/templates/base.html:167
msgid "Restart"
msgstr ""
-#: plinth/templates/base.html:187 plinth/templates/base.html:188
+#: plinth/templates/base.html:172 plinth/templates/base.html:173
msgid "Shut down"
msgstr ""
-#: plinth/templates/base.html:195 plinth/templates/base.html:196
-#: plinth/templates/base.html:220 plinth/templates/base.html:222
+#: plinth/templates/base.html:180 plinth/templates/base.html:181
+#: plinth/templates/base.html:205 plinth/templates/base.html:207
msgid "Log out"
msgstr ""
-#: plinth/templates/base.html:204 plinth/templates/base.html:207
+#: plinth/templates/base.html:189 plinth/templates/base.html:192
msgid "Select language"
msgstr ""
-#: plinth/templates/base.html:212 plinth/templates/base.html:214
+#: plinth/templates/base.html:197 plinth/templates/base.html:199
msgid "Log in"
msgstr ""
-#: plinth/templates/clients.html:32
+#: plinth/templates/clients.html:17
msgid "Web"
msgstr ""
-#: plinth/templates/clients.html:57
+#: plinth/templates/clients.html:42
msgid "Desktop"
msgstr ""
-#: plinth/templates/clients.html:68
+#: plinth/templates/clients.html:53
msgid "GNU/Linux"
msgstr ""
-#: plinth/templates/clients.html:70
+#: plinth/templates/clients.html:55
msgid "Windows"
msgstr ""
-#: plinth/templates/clients.html:72
+#: plinth/templates/clients.html:57
msgid "macOS"
msgstr ""
-#: plinth/templates/clients.html:88
+#: plinth/templates/clients.html:73
msgid "Mobile"
msgstr ""
-#: plinth/templates/clients.html:99
+#: plinth/templates/clients.html:84
msgid "Play Store"
msgstr ""
-#: plinth/templates/clients.html:101
+#: plinth/templates/clients.html:86
msgid "F-Droid"
msgstr ""
-#: plinth/templates/clients.html:103
+#: plinth/templates/clients.html:88
msgid "App Store"
msgstr ""
-#: plinth/templates/clients.html:119
+#: plinth/templates/clients.html:104
msgid "Package"
msgstr ""
-#: plinth/templates/clients.html:126
+#: plinth/templates/clients.html:111
msgid "Debian:"
msgstr ""
-#: plinth/templates/clients.html:129
+#: plinth/templates/clients.html:114
msgid "Homebrew:"
msgstr ""
-#: plinth/templates/clients.html:132
+#: plinth/templates/clients.html:117
msgid "RPM:"
msgstr ""
-#: plinth/templates/first_setup.html:39
+#: plinth/templates/first_setup.html:24
#, python-format
msgid ""
"Please wait for %(box_name)s to finish installation. You can start using "
"your %(box_name)s once it is done."
msgstr ""
-#: plinth/templates/header.html:36
-msgid "Installation"
-msgstr ""
-
-#: plinth/templates/index.html:37
+#: plinth/templates/index.html:22
#, python-format
msgid ""
"Enable some applications to add shortcuts to "
"this page."
msgstr ""
-#: plinth/templates/index.html:59
+#: plinth/templates/index.html:44
msgid "Configure »"
msgstr ""
-#: plinth/templates/index.html:115
+#: plinth/templates/index.html:100
#, python-format
msgid ""
"%(box_name)s, a Debian pure blend, is a 100%% free software self-hosting web "
@@ -6115,7 +6216,7 @@ msgid ""
"communication tools respecting your privacy and data ownership."
msgstr ""
-#: plinth/templates/index.html:124
+#: plinth/templates/index.html:109
#, python-format
msgid ""
"This portal is a part of the %(box_name)s web interface. %(box_name)s is "
@@ -6123,55 +6224,55 @@ msgid ""
"Version 3 or later."
msgstr ""
-#: plinth/templates/index.html:144
+#: plinth/templates/index.html:129
msgid "Homepage"
msgstr ""
-#: plinth/templates/index.html:147
+#: plinth/templates/index.html:132
msgid "Source Code"
msgstr ""
-#: plinth/templates/index.html:150
+#: plinth/templates/index.html:135
msgid "Donate"
msgstr ""
-#: plinth/templates/index.html:154
+#: plinth/templates/index.html:139
msgid "FreedomBox Foundation"
msgstr ""
-#: plinth/templates/index.html:161
+#: plinth/templates/index.html:146
msgid "IRC Chatroom"
msgstr ""
-#: plinth/templates/index.html:166
+#: plinth/templates/index.html:151
msgid "Mailing list"
msgstr ""
-#: plinth/templates/internal-zone.html:26
+#: plinth/templates/internal-zone.html:11
#, python-format
msgid "%(service_name)s is available only on internal networks."
msgstr ""
-#: plinth/templates/internal-zone.html:32
+#: plinth/templates/internal-zone.html:17
msgid "Currently there are no network interfaces configured as internal."
msgstr ""
-#: plinth/templates/internal-zone.html:34
+#: plinth/templates/internal-zone.html:19
#, python-format
msgid ""
"Currently the following network interfaces are configured as internal: "
"%(interface_list)s"
msgstr ""
-#: plinth/templates/notifications-dropdown.html:26
+#: plinth/templates/notifications-dropdown.html:11
msgid "Notifications"
msgstr ""
-#: plinth/templates/port-forwarding-info.html:23
+#: plinth/templates/port-forwarding-info.html:8
msgid "Port Forwarding"
msgstr ""
-#: plinth/templates/port-forwarding-info.html:26
+#: plinth/templates/port-forwarding-info.html:11
#, python-format
msgid ""
"If your FreedomBox is behind a router, you will need to set up port "
@@ -6179,62 +6280,62 @@ msgid ""
"%(service_name)s:"
msgstr ""
-#: plinth/templates/setup.html:51
+#: plinth/templates/setup.html:36
msgid "Install this application?"
msgstr ""
-#: plinth/templates/setup.html:55
+#: plinth/templates/setup.html:40
msgid "This application needs an update. Update now?"
msgstr ""
-#: plinth/templates/setup.html:66
+#: plinth/templates/setup.html:51
msgid ""
"Another installation or upgrade is already running. Please wait for a few "
"moments before trying again."
msgstr ""
-#: plinth/templates/setup.html:73
+#: plinth/templates/setup.html:58
msgid "This application is currently not available in your distribution."
msgstr ""
-#: plinth/templates/setup.html:87
+#: plinth/templates/setup.html:72
msgid "Install"
msgstr ""
-#: plinth/templates/setup.html:98
+#: plinth/templates/setup.html:83
msgid "Performing pre-install operation"
msgstr ""
-#: plinth/templates/setup.html:102
+#: plinth/templates/setup.html:87
msgid "Performing post-install operation"
msgstr ""
-#: plinth/templates/setup.html:107
+#: plinth/templates/setup.html:92
#, python-format
msgid "Installing %(package_names)s: %(status)s"
msgstr ""
-#: plinth/templates/setup.html:117
+#: plinth/templates/setup.html:102
#, python-format
msgid "%(percentage)s%% complete"
msgstr ""
-#: plinth/templates/toolbar.html:38
+#: plinth/templates/toolbar.html:23
msgid "Launch web client"
msgstr ""
-#: plinth/templates/toolbar.html:47
+#: plinth/templates/toolbar.html:32
msgid "Client Apps"
msgstr ""
-#: plinth/views.py:179
+#: plinth/views.py:189
msgid "Application enabled"
msgstr ""
-#: plinth/views.py:182
+#: plinth/views.py:192
msgid "Application disabled"
msgstr ""
-#: plinth/web_framework.py:190
+#: plinth/web_framework.py:107
msgid "Gujarati"
msgstr ""
diff --git a/plinth/locale/cs/LC_MESSAGES/django.po b/plinth/locale/cs/LC_MESSAGES/django.po
index 7a18a6905..709762ef5 100644
--- a/plinth/locale/cs/LC_MESSAGES/django.po
+++ b/plinth/locale/cs/LC_MESSAGES/django.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2020-02-14 21:26+0200\n"
+"POT-Creation-Date: 2020-02-24 19:12-0500\n"
"PO-Revision-Date: 2019-10-26 17:53+0000\n"
"Last-Translator: Pavel Borecki
SSH key-based authentication is not yet "
"possible."
@@ -274,15 +274,15 @@ msgstr ""
"Heslo SSH serveru.
Na klíčích založené SSH ověřování totožnosti není "
"ještě možné."
-#: plinth/modules/backups/forms.py:224
+#: plinth/modules/backups/forms.py:209
msgid "Remote backup repository already exists."
msgstr "Repozitář se zálohou už na protějšku existuje."
-#: plinth/modules/backups/forms.py:230
+#: plinth/modules/backups/forms.py:215
msgid "Select verified SSH public key"
msgstr "Vyberte ověřený SSH veřejný klíč"
-#: plinth/modules/backups/repository.py:48
+#: plinth/modules/backups/repository.py:33
msgid ""
"Connection refused - make sure you provided correct credentials and the "
"server is running."
@@ -290,75 +290,75 @@ msgstr ""
"Spojení odmítnuto – ověřte, že jste zadali správné přihlašovací údaje a "
"server je spuštěný."
-#: plinth/modules/backups/repository.py:55
+#: plinth/modules/backups/repository.py:40
msgid "Connection refused"
msgstr "Připojení odmítnuto"
-#: plinth/modules/backups/repository.py:62
+#: plinth/modules/backups/repository.py:47
msgid "Repository not found"
msgstr "Repozitář nenalezen"
-#: plinth/modules/backups/repository.py:67
+#: plinth/modules/backups/repository.py:52
msgid "Incorrect encryption passphrase"
msgstr "Nesprávná šifrovací heslová fráze"
-#: plinth/modules/backups/repository.py:72
+#: plinth/modules/backups/repository.py:57
msgid "SSH access denied"
msgstr "SSH přístup odepřen"
-#: plinth/modules/backups/repository.py:78
+#: plinth/modules/backups/repository.py:63
msgid "Repository path is neither empty nor is an existing backups repository."
msgstr ""
"Popis umístění repozitáře buď není vyplněný nebo se nejedná o existující "
"repozitář záloh."
-#: plinth/modules/backups/repository.py:152
+#: plinth/modules/backups/repository.py:137
msgid "Existing repository is not encrypted."
msgstr "Existující repozitář není šifrován."
-#: plinth/modules/backups/repository.py:337
+#: plinth/modules/backups/repository.py:322
#, python-brace-format
msgid "{box_name} storage"
msgstr "Úložiště {box_name}"
-#: plinth/modules/backups/templates/backups.html:45
-#: plinth/modules/backups/views.py:77
+#: plinth/modules/backups/templates/backups.html:30
+#: plinth/modules/backups/views.py:60
msgid "Create a new backup"
msgstr "Vytvořit novou zálohu"
-#: plinth/modules/backups/templates/backups.html:49
+#: plinth/modules/backups/templates/backups.html:34
msgid "Create Backup"
msgstr "Vytvořit zálohu"
-#: plinth/modules/backups/templates/backups.html:52
+#: plinth/modules/backups/templates/backups.html:37
msgid "Upload and restore a backup archive"
msgstr "Nahrát archiv se zálohou a obnovit z něj"
-#: plinth/modules/backups/templates/backups.html:56
+#: plinth/modules/backups/templates/backups.html:41
msgid "Upload and Restore"
msgstr "Nahrát a obnovit"
-#: plinth/modules/backups/templates/backups.html:59
+#: plinth/modules/backups/templates/backups.html:44
msgid "Add a backup location"
msgstr "Přidat umístění pro zálohy"
-#: plinth/modules/backups/templates/backups.html:63
+#: plinth/modules/backups/templates/backups.html:48
msgid "Add Backup Location"
msgstr "Přidat umístění pro zálohy"
-#: plinth/modules/backups/templates/backups.html:66
+#: plinth/modules/backups/templates/backups.html:51
msgid "Add a remote backup location"
msgstr "Přidat umístění pro zálohy na protějšku"
-#: plinth/modules/backups/templates/backups.html:70
+#: plinth/modules/backups/templates/backups.html:55
msgid "Add Remote Backup Location"
msgstr "Přidat umístění pro zálohy na protějšku"
-#: plinth/modules/backups/templates/backups.html:73
+#: plinth/modules/backups/templates/backups.html:58
msgid "Existing Backups"
msgstr "Existující zálohy"
-#: plinth/modules/backups/templates/backups_add_remote_repository.html:34
+#: plinth/modules/backups/templates/backups_add_remote_repository.html:19
#, python-format
msgid ""
"The credentials for this repository are stored on your %(box_name)s.
"
@@ -369,48 +369,49 @@ msgstr ""
"
Pro obnovení zálohy na nový %(box_name)s je třeba ssh přihlašovacích "
"údajů a pokud byla zvolena, šifrovací heslové fráze."
-#: plinth/modules/backups/templates/backups_add_remote_repository.html:43
+#: plinth/modules/backups/templates/backups_add_remote_repository.html:28
msgid "Create Location"
msgstr "Vytvořit umístění"
-#: plinth/modules/backups/templates/backups_add_repository.html:34
-#: plinth/modules/gitweb/views.py:70
+#: plinth/modules/backups/templates/backups_add_repository.html:19
+#: plinth/modules/gitweb/views.py:50
msgid "Create Repository"
msgstr "Vytvořit repozitář"
-#: plinth/modules/backups/templates/backups_delete.html:27
+#: plinth/modules/backups/templates/backups_delete.html:12
msgid "Delete this archive permanently?"
msgstr "Nevratně smazat tento zachycený archiv?"
-#: plinth/modules/backups/templates/backups_delete.html:33
-#: plinth/modules/ikiwiki/forms.py:30
-#: plinth/modules/networks/templates/connection_show.html:78
-#: plinth/modules/sharing/templates/sharing.html:52
+#: plinth/modules/backups/templates/backups_delete.html:18
+#: plinth/modules/ikiwiki/forms.py:15
+#: plinth/modules/networks/templates/connection_show.html:63
+#: plinth/modules/sharing/templates/sharing.html:37
msgid "Name"
msgstr "Název"
-#: plinth/modules/backups/templates/backups_delete.html:34
+#: plinth/modules/backups/templates/backups_delete.html:19
msgid "Time"
msgstr "Čas"
-#: plinth/modules/backups/templates/backups_delete.html:51
+#: plinth/modules/backups/templates/backups_delete.html:36
#, python-format
msgid "Delete Archive %(name)s"
msgstr "Smazat archiv %(name)s"
-#: plinth/modules/backups/templates/backups_form.html:35
-#: plinth/modules/gitweb/templates/gitweb_create_edit.html:35
-#: plinth/modules/networks/templates/router_configuration_update.html:34
-#: plinth/modules/pagekite/templates/pagekite_custom_services.html:47
-#: plinth/modules/sharing/templates/sharing_add_edit.html:35
+#: plinth/modules/backups/templates/backups_form.html:20
+#: plinth/modules/gitweb/templates/gitweb_create_edit.html:20
+#: plinth/modules/networks/templates/internet_connectivity_type.html:18
+#: plinth/modules/networks/templates/router_configuration_update.html:19
+#: plinth/modules/pagekite/templates/pagekite_custom_services.html:32
+#: plinth/modules/sharing/templates/sharing_add_edit.html:20
msgid "Submit"
msgstr "Potvrdit"
-#: plinth/modules/backups/templates/backups_repository_remove.html:28
+#: plinth/modules/backups/templates/backups_repository_remove.html:13
msgid "Are you sure that you want to remove this repository?"
msgstr "Opravdu chcete tento repozitář odebrat?"
-#: plinth/modules/backups/templates/backups_repository_remove.html:34
+#: plinth/modules/backups/templates/backups_repository_remove.html:19
#, fuzzy
#| msgid ""
#| "\n"
@@ -429,24 +430,24 @@ msgstr ""
" je možné ho znovu přidat.\n"
" "
-#: plinth/modules/backups/templates/backups_repository_remove.html:46
+#: plinth/modules/backups/templates/backups_repository_remove.html:31
msgid "Remove Location"
msgstr "Odebrat umístění"
-#: plinth/modules/backups/templates/backups_restore.html:30
+#: plinth/modules/backups/templates/backups_restore.html:15
msgid "Restore data from"
msgstr "Obnovit data z"
-#: plinth/modules/backups/templates/backups_restore.html:43
-#: plinth/modules/backups/views.py:171
+#: plinth/modules/backups/templates/backups_restore.html:28
+#: plinth/modules/backups/views.py:154
msgid "Restore"
msgstr "Obnovit"
-#: plinth/modules/backups/templates/backups_restore.html:47
+#: plinth/modules/backups/templates/backups_restore.html:32
msgid "Restoring"
msgstr "Obnovuje se"
-#: plinth/modules/backups/templates/backups_upload.html:32
+#: plinth/modules/backups/templates/backups_upload.html:17
#, fuzzy, python-format
#| msgid ""
#| "\n"
@@ -472,12 +473,12 @@ msgstr ""
" obnovit.\n"
" "
-#: plinth/modules/backups/templates/backups_upload.html:42
-#: plinth/modules/help/templates/statuslog.html:38
+#: plinth/modules/backups/templates/backups_upload.html:27
+#: plinth/modules/help/templates/statuslog.html:23
msgid "Caution:"
msgstr "Upozornění:"
-#: plinth/modules/backups/templates/backups_upload.html:43
+#: plinth/modules/backups/templates/backups_upload.html:28
#, python-format
msgid ""
"You have %(max_filesize)s available to restore a backup. Exceeding this "
@@ -486,29 +487,29 @@ msgstr ""
"Máte k dispozici %(max_filesize)s pro obnovení zálohy. Překročení tohoto "
"limitu může vést k tomu, že váš %(box_name)s nebude použitelný."
-#: plinth/modules/backups/templates/backups_upload.html:56
+#: plinth/modules/backups/templates/backups_upload.html:41
msgid "Upload file"
msgstr "Nahrát soubor"
-#: plinth/modules/backups/templates/verify_ssh_hostkey.html:33
+#: plinth/modules/backups/templates/verify_ssh_hostkey.html:18
#, python-format
msgid ""
"Could not reach SSH host %(hostname)s. Please verify that the host is up and "
"accepting connections."
msgstr ""
-#: plinth/modules/backups/templates/verify_ssh_hostkey.html:43
+#: plinth/modules/backups/templates/verify_ssh_hostkey.html:28
#, python-format
msgid ""
"The authenticity of SSH host %(hostname)s could not be established. The host "
"advertises the following SSH public keys. Please verify any one of them."
msgstr ""
-#: plinth/modules/backups/templates/verify_ssh_hostkey.html:55
+#: plinth/modules/backups/templates/verify_ssh_hostkey.html:40
msgid "How to verify?"
msgstr "Jak ověřit?"
-#: plinth/modules/backups/templates/verify_ssh_hostkey.html:60
+#: plinth/modules/backups/templates/verify_ssh_hostkey.html:45
msgid ""
"Run the following command on the SSH host machine. The output should match "
"one of the provided options. You can also use dsa, ecdsa, ed25519 etc. "
@@ -518,107 +519,99 @@ msgstr ""
"jednou z poskytnutých možností. Zvolením příslušného souboru je také možné "
"použít dsa , ecdsa, ed25519 atp. namísto rsa."
-#: plinth/modules/backups/templates/verify_ssh_hostkey.html:75
+#: plinth/modules/backups/templates/verify_ssh_hostkey.html:60
msgid "Verify Host"
msgstr "Ověřit stroj"
-#: plinth/modules/backups/views.py:72
+#: plinth/modules/backups/views.py:55
msgid "Archive created."
msgstr "Archiv vytvořen."
-#: plinth/modules/backups/views.py:99
+#: plinth/modules/backups/views.py:82
msgid "Delete Archive"
msgstr "Smazat archiv"
-#: plinth/modules/backups/views.py:111
+#: plinth/modules/backups/views.py:94
msgid "Archive deleted."
msgstr "Archiv smazán."
-#: plinth/modules/backups/views.py:124
+#: plinth/modules/backups/views.py:107
msgid "Upload and restore a backup"
msgstr "Nahrát zálohu a obnovit z ní"
-#: plinth/modules/backups/views.py:159
+#: plinth/modules/backups/views.py:142
msgid "Restored files from backup."
msgstr "Soubory obnovené ze zálohy."
-#: plinth/modules/backups/views.py:186
+#: plinth/modules/backups/views.py:169
msgid "No backup file found."
msgstr "Nebyl nalezen žádný soubor se zálohou."
-#: plinth/modules/backups/views.py:194
+#: plinth/modules/backups/views.py:177
msgid "Restore from uploaded file"
msgstr "Obnovit z nahraného souboru"
-#: plinth/modules/backups/views.py:251
+#: plinth/modules/backups/views.py:234
msgid "No additional disks available to add a repository."
msgstr "Nejsou k dispozici žádná další úložiště pro přidání repozitáře."
-#: plinth/modules/backups/views.py:259
+#: plinth/modules/backups/views.py:242
msgid "Create backup repository"
msgstr "Vytvořit repozitář pro zálohy"
-#: plinth/modules/backups/views.py:286
+#: plinth/modules/backups/views.py:269
msgid "Create remote backup repository"
msgstr "Vytvořit repozitář pro zálohy na protějšku"
-#: plinth/modules/backups/views.py:305
+#: plinth/modules/backups/views.py:288
msgid "Added new remote SSH repository."
msgstr "Přidán nový vzdálený SSH repozitář."
-#: plinth/modules/backups/views.py:327
+#: plinth/modules/backups/views.py:310
msgid "Verify SSH hostkey"
msgstr "Ověřit SSH klíč stroje"
-#: plinth/modules/backups/views.py:353
+#: plinth/modules/backups/views.py:336
msgid "SSH host already verified."
msgstr "SSH stroj už je ověřen."
-#: plinth/modules/backups/views.py:363
+#: plinth/modules/backups/views.py:346
msgid "SSH host verified."
msgstr "SSH stroj ověřen."
-#: plinth/modules/backups/views.py:377
+#: plinth/modules/backups/views.py:360
msgid "SSH host public key could not be verified."
msgstr "Veřejný klíč SSH stroje se nepodařilo ověřit."
-#: plinth/modules/backups/views.py:379
+#: plinth/modules/backups/views.py:362
msgid "Authentication to remote server failed."
msgstr "Ověření vůči vzdálenému serveru se nezdařilo."
-#: plinth/modules/backups/views.py:381
+#: plinth/modules/backups/views.py:364
msgid "Error establishing connection to server: {}"
msgstr "Chyba při navazování spojení se serverem: {}"
-#: plinth/modules/backups/views.py:392
+#: plinth/modules/backups/views.py:375
msgid "Repository removed."
msgstr "Repozitář odstraněn."
-#: plinth/modules/backups/views.py:406
+#: plinth/modules/backups/views.py:389
msgid "Remove Repository"
msgstr "Odebrat repozitář"
-#: plinth/modules/backups/views.py:415
+#: plinth/modules/backups/views.py:398
msgid "Repository removed. Backups were not deleted."
msgstr "Repozitář odebrán. Zálohy jako takové smazány nebyly."
-#: plinth/modules/backups/views.py:425
+#: plinth/modules/backups/views.py:408
msgid "Unmounting failed!"
msgstr "Odpojení se nezdařilo!"
-#: plinth/modules/backups/views.py:440 plinth/modules/backups/views.py:444
+#: plinth/modules/backups/views.py:423 plinth/modules/backups/views.py:427
msgid "Mounting failed"
msgstr "Připojení (mount) se nezdařilo"
-#: plinth/modules/bind/__init__.py:36
-msgid "BIND"
-msgstr "BIND"
-
-#: plinth/modules/bind/__init__.py:38
-msgid "Domain Name Server"
-msgstr "Doménový jmenný server"
-
-#: plinth/modules/bind/__init__.py:45
+#: plinth/modules/bind/__init__.py:29
msgid ""
"BIND enables you to publish your Domain Name System (DNS) information on the "
"Internet, and to resolve DNS queries for your user devices on your network."
@@ -626,7 +619,7 @@ msgstr ""
"BIND umožňuje zveřejňovat vaše informace systému doménových názvů (DNS) na "
"Internet a překládat DNS dotazy pro uživatelská zařízení na vaší síti."
-#: plinth/modules/bind/__init__.py:49
+#: plinth/modules/bind/__init__.py:33
#, python-brace-format
msgid ""
"Currently, on {box_name}, BIND is only used to resolve DNS queries for other "
@@ -637,40 +630,76 @@ msgstr ""
"ostatních strojů na místní síti. Není také slučitelný se sdílením připojení "
"k Internetu přes {box_name}."
-#: plinth/modules/bind/forms.py:37
+#: plinth/modules/bind/__init__.py:82
+msgid "BIND"
+msgstr "BIND"
+
+#: plinth/modules/bind/__init__.py:83
+msgid "Domain Name Server"
+msgstr "Doménový jmenný server"
+
+#: plinth/modules/bind/forms.py:22
msgid "Forwarders"
msgstr "Přeposílat na"
-#: plinth/modules/bind/forms.py:38
+#: plinth/modules/bind/forms.py:23
msgid ""
"A list DNS servers, separated by space, to which requests will be forwarded"
msgstr ""
"Seznam DNS serverů (oddělovaných mezerou) na které přeposílat požadavky"
-#: plinth/modules/bind/forms.py:42
+#: plinth/modules/bind/forms.py:27
msgid "Enable DNSSEC"
msgstr "Zapnout DNSSEC"
-#: plinth/modules/bind/forms.py:43
+#: plinth/modules/bind/forms.py:28
msgid "Enable Domain Name System Security Extensions"
msgstr "Zapnout zabezpečovací rozšíření systému doménových názvů"
-#: plinth/modules/bind/views.py:58 plinth/modules/deluge/views.py:67
-#: plinth/modules/dynamicdns/views.py:171 plinth/modules/openvpn/views.py:153
-#: plinth/modules/shadowsocks/views.py:79
-#: plinth/modules/transmission/views.py:73
+#: plinth/modules/bind/templates/bind.html:11
+#, fuzzy
+#| msgid "Server domain"
+msgid "Serving Domains"
+msgstr "Doména serveru"
+
+#: plinth/modules/bind/templates/bind.html:16
+#: plinth/modules/ikiwiki/forms.py:12
+#: plinth/modules/networks/templates/connection_show.html:83
+#: plinth/modules/storage/templates/storage.html:28
+msgid "Type"
+msgstr "Typ"
+
+#: plinth/modules/bind/templates/bind.html:17
+#, fuzzy
+#| msgid "Domain Name"
+msgid "Domain Names"
+msgstr "Doménový název"
+
+#: plinth/modules/bind/templates/bind.html:18
+#, fuzzy
+#| msgid "Service"
+msgid "Serving"
+msgstr "Služba"
+
+#: plinth/modules/bind/templates/bind.html:19
+#, fuzzy
+#| msgid "IP address"
+msgid "IP addresses"
+msgstr "IP adresa"
+
+#: plinth/modules/bind/templates/bind.html:35
+#: plinth/modules/bind/templates/bind.html:37
+msgid "Refresh IP address and domains"
+msgstr ""
+
+#: plinth/modules/bind/views.py:73 plinth/modules/deluge/views.py:46
+#: plinth/modules/dynamicdns/views.py:150 plinth/modules/openvpn/views.py:134
+#: plinth/modules/shadowsocks/views.py:59
+#: plinth/modules/transmission/views.py:52
msgid "Configuration updated"
msgstr "Nastavení aktualizováno"
-#: plinth/modules/cockpit/__init__.py:45 plinth/modules/cockpit/manifest.py:27
-msgid "Cockpit"
-msgstr "Cockpit"
-
-#: plinth/modules/cockpit/__init__.py:49
-msgid "Server Administration"
-msgstr "Správa serveru"
-
-#: plinth/modules/cockpit/__init__.py:53
+#: plinth/modules/cockpit/__init__.py:32
#, python-brace-format
msgid ""
"Cockpit is a server manager that makes it easy to administer GNU/Linux "
@@ -683,7 +712,7 @@ msgstr ""
"pokročilých funkcí, které obvykle nejsou potřeba. Je také k dispozici webový "
"terminál pro operace na příkazovém řádku."
-#: plinth/modules/cockpit/__init__.py:59
+#: plinth/modules/cockpit/__init__.py:38
#, fuzzy, python-brace-format
#| msgid ""
#| "When enabled, Cockpit will be available from /"
@@ -698,63 +727,71 @@ msgstr ""
"\"{users_url}\">uživatele s účtem na {box_name}, náležejícím do skupiny "
"admin."
-#: plinth/modules/cockpit/__init__.py:63
+#: plinth/modules/cockpit/__init__.py:42
msgid ""
"Cockpit requires that you access it through a domain name. It will not work "
"when accessed using an IP address as part of the URL."
msgstr ""
-#: plinth/modules/cockpit/templates/cockpit.html:26
+#: plinth/modules/cockpit/__init__.py:59 plinth/modules/cockpit/manifest.py:12
+msgid "Cockpit"
+msgstr "Cockpit"
+
+#: plinth/modules/cockpit/__init__.py:61
+msgid "Server Administration"
+msgstr "Správa serveru"
+
+#: plinth/modules/cockpit/templates/cockpit.html:11
#, fuzzy
#| msgid "Access Point"
msgid "Access"
msgstr "Přístupový bod"
-#: plinth/modules/cockpit/templates/cockpit.html:29
+#: plinth/modules/cockpit/templates/cockpit.html:14
msgid "Cockpit will only work when accessed using the following URLs."
msgstr ""
-#: plinth/modules/config/__init__.py:37
-msgid "General Configuration"
-msgstr "Obecná nastavení"
-
-#: plinth/modules/config/__init__.py:40
+#: plinth/modules/config/__init__.py:23
msgid ""
"Here you can set some general configuration options like hostname, domain "
"name, webserver home page etc."
msgstr ""
-#: plinth/modules/config/__init__.py:67 plinth/modules/dynamicdns/views.py:44
-#: plinth/modules/i2p/views.py:31 plinth/modules/names/templates/names.html:44
-#: plinth/modules/names/templates/names.html:58
-#: plinth/modules/snapshot/views.py:41
-#: plinth/modules/tahoe/templates/tahoe-pre-setup.html:39
+#: plinth/modules/config/__init__.py:50
+msgid "General Configuration"
+msgstr "Obecná nastavení"
+
+#: plinth/modules/config/__init__.py:55 plinth/modules/dynamicdns/views.py:29
+#: plinth/modules/i2p/views.py:16 plinth/modules/names/templates/names.html:29
+#: plinth/modules/names/templates/names.html:43
+#: plinth/modules/snapshot/views.py:26
+#: plinth/modules/tahoe/templates/tahoe-pre-setup.html:24
msgid "Configure"
msgstr "Nastavit"
-#: plinth/modules/config/__init__.py:71 plinth/modules/config/forms.py:76
-#: plinth/modules/dynamicdns/forms.py:110
+#: plinth/modules/config/__init__.py:59 plinth/modules/config/forms.py:61
+#: plinth/modules/dynamicdns/forms.py:95
msgid "Domain Name"
msgstr "Doménový název"
-#: plinth/modules/config/forms.py:42 plinth/modules/config/forms.py:88
-#: plinth/modules/dynamicdns/forms.py:113
+#: plinth/modules/config/forms.py:27 plinth/modules/config/forms.py:73
+#: plinth/modules/dynamicdns/forms.py:98
msgid "Invalid domain name"
msgstr "Neplatný doménový název"
-#: plinth/modules/config/forms.py:50
+#: plinth/modules/config/forms.py:35
msgid "Apache Default"
msgstr "Výchozí pro Apache"
-#: plinth/modules/config/forms.py:51
+#: plinth/modules/config/forms.py:36
msgid "FreedomBox Service (Plinth)"
msgstr "Služba FreedomBox (Plinth)"
-#: plinth/modules/config/forms.py:63
+#: plinth/modules/config/forms.py:48
msgid "Hostname"
msgstr "Název stroje"
-#: plinth/modules/config/forms.py:65
+#: plinth/modules/config/forms.py:50
#, python-brace-format
msgid ""
"Hostname is the local name by which other devices on the local network can "
@@ -767,11 +804,11 @@ msgstr ""
"písmeno nebo číslici a obsahoval pouze písmena, číslice a spojovníky. "
"Celková délka může být nejvýše 63 znaků."
-#: plinth/modules/config/forms.py:72
+#: plinth/modules/config/forms.py:57
msgid "Invalid hostname"
msgstr "Neplatný název stroje"
-#: plinth/modules/config/forms.py:78
+#: plinth/modules/config/forms.py:63
#, python-brace-format
msgid ""
"Domain name is the global name by which other devices on the Internet can "
@@ -788,11 +825,11 @@ msgstr ""
"ze štítků může být nejvýše 63 znaků. Celková délka doménového názvu může být "
"nejvýše 253 znaků."
-#: plinth/modules/config/forms.py:93
+#: plinth/modules/config/forms.py:78
msgid "Webserver Home Page"
msgstr "Domovská stránka domovského serveru"
-#: plinth/modules/config/forms.py:95
+#: plinth/modules/config/forms.py:80
#, python-brace-format
msgid ""
"Choose the default page that must be served when someone visits your "
@@ -808,63 +845,55 @@ msgstr ""
"{box_name} (Plinth), uživatelé budou potřebovat výslovně zadávat /plinth "
"nebo /freedombox, aby se dostali na službu {box_name} (Plinth)."
-#: plinth/modules/config/forms.py:106
+#: plinth/modules/config/forms.py:91
msgid "Show advanced apps and features"
msgstr "Zobrazit pokročilé aplikace a funkce"
-#: plinth/modules/config/forms.py:107
+#: plinth/modules/config/forms.py:92
msgid "Show apps and features that require more technical knowledge."
msgstr "Zobrazit aplikace a funkce, které vyžadují techničtější znalosti."
-#: plinth/modules/config/views.py:65
+#: plinth/modules/config/views.py:47
#, python-brace-format
msgid "Error setting hostname: {exception}"
msgstr "Chyba při nastavování názvu stroje: {exception}"
-#: plinth/modules/config/views.py:68
+#: plinth/modules/config/views.py:50
msgid "Hostname set"
msgstr "Nastavení názvu stroje"
-#: plinth/modules/config/views.py:77
+#: plinth/modules/config/views.py:59
#, python-brace-format
msgid "Error setting domain name: {exception}"
msgstr "Chyba při nastavování doménového názvu: {exception}"
-#: plinth/modules/config/views.py:80
+#: plinth/modules/config/views.py:62
msgid "Domain name set"
msgstr "Nastavení doménového názvu"
-#: plinth/modules/config/views.py:88
+#: plinth/modules/config/views.py:70
#, python-brace-format
msgid "Error setting webserver home page: {exception}"
msgstr "Chyba při nastavování domovské stránky webového serveru: {exception}"
-#: plinth/modules/config/views.py:91
+#: plinth/modules/config/views.py:73
msgid "Webserver home page set"
msgstr "Nastavení domovské stránky webového serveru"
-#: plinth/modules/config/views.py:99
+#: plinth/modules/config/views.py:81
#, python-brace-format
msgid "Error changing advanced mode: {exception}"
msgstr "Chyba při změně pokročilého režimu: {exception}"
-#: plinth/modules/config/views.py:104
+#: plinth/modules/config/views.py:86
msgid "Showing advanced apps and features"
msgstr "Jsou zobrazovány pokročilé aplikace a funkce"
-#: plinth/modules/config/views.py:107
+#: plinth/modules/config/views.py:89
msgid "Hiding advanced apps and features"
msgstr "Jsou skryté pokročilé aplikace a funkce"
-#: plinth/modules/coquelicot/__init__.py:40
-msgid "Coquelicot"
-msgstr "Coquelicot"
-
-#: plinth/modules/coquelicot/__init__.py:42 plinth/modules/samba/__init__.py:50
-msgid "File Sharing"
-msgstr "Sdílení souborů"
-
-#: plinth/modules/coquelicot/__init__.py:45
+#: plinth/modules/coquelicot/__init__.py:24
#, fuzzy
#| msgid ""
#| "Coquelicot is a “one-click” file sharing web application with a focus on "
@@ -879,7 +908,7 @@ msgstr ""
"ochranu soukromí uživatelů. Nejlépe poslouží pro rychlé nasdílení "
"jednotlivých souborů. "
-#: plinth/modules/coquelicot/__init__.py:48
+#: plinth/modules/coquelicot/__init__.py:27
msgid ""
"This Coquelicot instance is exposed to the public but requires an upload "
"password to prevent unauthorized access. You can set a new upload password "
@@ -891,11 +920,19 @@ msgstr ""
"možné nastavit ve formuláři, který se objeví po instalaci. Výchozí heslo pro "
"nahrávání je „test“."
-#: plinth/modules/coquelicot/forms.py:30
+#: plinth/modules/coquelicot/__init__.py:45
+msgid "Coquelicot"
+msgstr "Coquelicot"
+
+#: plinth/modules/coquelicot/__init__.py:47 plinth/modules/samba/__init__.py:62
+msgid "File Sharing"
+msgstr "Sdílení souborů"
+
+#: plinth/modules/coquelicot/forms.py:15
msgid "Upload Password"
msgstr "Heslo pro nahrávání"
-#: plinth/modules/coquelicot/forms.py:31
+#: plinth/modules/coquelicot/forms.py:16
msgid ""
"Set a new upload password for Coquelicot. Leave this field blank to keep the "
"current password."
@@ -903,43 +940,39 @@ msgstr ""
"Nastavte nové heslo pro nahrávání na Coquelicot. Pro ponechání stávajícího "
"hesla tuto kolonku nevyplňujte."
-#: plinth/modules/coquelicot/forms.py:35
+#: plinth/modules/coquelicot/forms.py:20
msgid "Maximum File Size (in MiB)"
msgstr "Nejvyšší umožněná velikost souboru (v MiB)"
-#: plinth/modules/coquelicot/forms.py:36
+#: plinth/modules/coquelicot/forms.py:21
msgid "Set the maximum size of the files that can be uploaded to Coquelicot."
msgstr ""
"Nastavte nejvyšší umožněnou velikost jednotlivých souborů, jakou bude možné "
"na Coquelicot nahrát."
-#: plinth/modules/coquelicot/manifest.py:24
+#: plinth/modules/coquelicot/manifest.py:9
msgid "coquelicot"
msgstr "coquelicot"
-#: plinth/modules/coquelicot/views.py:58
+#: plinth/modules/coquelicot/views.py:37
msgid "Upload password updated"
msgstr "Heslo pro nahrávání aktualizováno"
-#: plinth/modules/coquelicot/views.py:61
+#: plinth/modules/coquelicot/views.py:40
msgid "Failed to update upload password"
msgstr "Heslo pro nahrávání se nepodařilo aktualizovat"
-#: plinth/modules/coquelicot/views.py:69
+#: plinth/modules/coquelicot/views.py:48
msgid "Maximum file size updated"
msgstr "Nastavení nejvyšší umožněné velikosti souboru aktualizováno"
-#: plinth/modules/coquelicot/views.py:72
+#: plinth/modules/coquelicot/views.py:51
msgid "Failed to update maximum file size"
msgstr ""
"Nastavení nejvyšší umožněné velikosti nahrávaného souboru se nepodařilo "
"aktualizovat"
-#: plinth/modules/datetime/__init__.py:39
-msgid "Date & Time"
-msgstr "Datum a čas"
-
-#: plinth/modules/datetime/__init__.py:42
+#: plinth/modules/datetime/__init__.py:25
msgid ""
"Network time server is a program that maintains the system time in "
"synchronization with servers on the Internet."
@@ -947,15 +980,19 @@ msgstr ""
"Server síťového času je program který udržuje systémový čas synchronní se "
"servery na Internetu."
-#: plinth/modules/datetime/__init__.py:97
+#: plinth/modules/datetime/__init__.py:42
+msgid "Date & Time"
+msgstr "Datum a čas"
+
+#: plinth/modules/datetime/__init__.py:85
msgid "Time synchronized to NTP server"
msgstr "Čas synchronizován s NTP serverem"
-#: plinth/modules/datetime/forms.py:35
+#: plinth/modules/datetime/forms.py:20
msgid "Time Zone"
msgstr "Časová zóna"
-#: plinth/modules/datetime/forms.py:36
+#: plinth/modules/datetime/forms.py:21
msgid ""
"Set your time zone to get accurate timestamps. This will set the system-wide "
"time zone."
@@ -963,34 +1000,25 @@ msgstr ""
"Pro získání přesných časových razítek nastavte svou časovou zónu. Toto "
"nastaví časovou zónu pro celý systém."
-#: plinth/modules/datetime/forms.py:47
+#: plinth/modules/datetime/forms.py:32
msgid "-- no time zone set --"
msgstr "-- není nastavena časová zóna --"
-#: plinth/modules/datetime/views.py:64
+#: plinth/modules/datetime/views.py:45
#, python-brace-format
msgid "Error setting time zone: {exception}"
msgstr "Chyba při nastavování časové zóny: {exception}"
-#: plinth/modules/datetime/views.py:67
+#: plinth/modules/datetime/views.py:48
msgid "Time zone set"
msgstr "Nastavení časové zóny"
-#: plinth/modules/deluge/__init__.py:39 plinth/modules/deluge/manifest.py:24
-msgid "Deluge"
-msgstr "Deluge"
-
-#: plinth/modules/deluge/__init__.py:43
-#: plinth/modules/transmission/__init__.py:45
-msgid "BitTorrent Web Client"
-msgstr "Webový klient sítě BitTorrent"
-
-#: plinth/modules/deluge/__init__.py:46
+#: plinth/modules/deluge/__init__.py:25
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:47
+#: plinth/modules/deluge/__init__.py:26
#, fuzzy
#| msgid ""
#| "When enabled, the Deluge web client will be available from /deluge umístění na webovém serveru. Výchozí heslo je „deluge“, ale "
"hned po zapnutí této služby se okamžitě přihlaste a změňte ho."
-#: plinth/modules/deluge/__init__.py:51
-#: plinth/modules/transmission/__init__.py:57
+#: plinth/modules/deluge/__init__.py:30
+#: plinth/modules/transmission/__init__.py:34
msgid "Download files using BitTorrent applications"
msgstr "Stahovat soubory pomocí BitTorrent aplikací"
-#: plinth/modules/deluge/forms.py:35 plinth/modules/transmission/forms.py:35
+#: plinth/modules/deluge/__init__.py:46 plinth/modules/deluge/manifest.py:9
+msgid "Deluge"
+msgstr "Deluge"
+
+#: plinth/modules/deluge/__init__.py:47
+#: plinth/modules/transmission/__init__.py:50
+msgid "BitTorrent Web Client"
+msgstr "Webový klient sítě BitTorrent"
+
+#: plinth/modules/deluge/forms.py:20 plinth/modules/transmission/forms.py:20
msgid "Download directory"
msgstr "Složka pro stahování"
-#: plinth/modules/deluge/manifest.py:25
+#: plinth/modules/deluge/manifest.py:10
msgid "Bittorrent client written in Python/PyGTK"
msgstr "Bittorent klient napsaný v Python/PyGTK"
-#: plinth/modules/diagnostics/__init__.py:33
-msgid "Diagnostics"
-msgstr "Diagnostika"
-
-#: plinth/modules/diagnostics/__init__.py:36
+#: plinth/modules/diagnostics/__init__.py:19
msgid ""
"The system diagnostic test will run a number of checks on your system to "
"confirm that applications and services are working as expected."
@@ -1030,58 +1063,53 @@ msgstr ""
"Diagnostický test systému spustí několik kontrol pro potvrzení, že aplikace "
"a služby fungují tak, jak mají."
-#: plinth/modules/diagnostics/diagnostics.py:65
+#: plinth/modules/diagnostics/__init__.py:37
+msgid "Diagnostics"
+msgstr "Diagnostika"
+
+#: plinth/modules/diagnostics/diagnostics.py:48
msgid "Diagnostic Test"
msgstr "Diagnostické testy"
-#: plinth/modules/diagnostics/templates/diagnostics.html:43
-#: plinth/modules/diagnostics/templates/diagnostics_button.html:28
-#: plinth/modules/diagnostics/templates/diagnostics_button.html:31
+#: plinth/modules/diagnostics/templates/diagnostics.html:28
+#: plinth/modules/diagnostics/templates/diagnostics_button.html:13
+#: plinth/modules/diagnostics/templates/diagnostics_button.html:16
msgid "Run Diagnostics"
msgstr "Spustit diagnostiku"
-#: plinth/modules/diagnostics/templates/diagnostics.html:46
+#: plinth/modules/diagnostics/templates/diagnostics.html:31
msgid "Diagnostics test is currently running"
msgstr "Diagnostické testy právě probíhají"
-#: plinth/modules/diagnostics/templates/diagnostics.html:59
+#: plinth/modules/diagnostics/templates/diagnostics.html:44
msgid "Results"
msgstr "Výsledky"
-#: plinth/modules/diagnostics/templates/diagnostics.html:67
-#: plinth/modules/diagnostics/templates/diagnostics_app.html:27
+#: plinth/modules/diagnostics/templates/diagnostics.html:52
+#: plinth/modules/diagnostics/templates/diagnostics_app.html:12
#, python-format
msgid "App: %(app_id)s"
msgstr ""
-#: plinth/modules/diagnostics/templates/diagnostics_app.html:25
+#: plinth/modules/diagnostics/templates/diagnostics_app.html:10
msgid "Diagnostic Results"
msgstr "Výsledky diagnostiky"
-#: plinth/modules/diagnostics/templates/diagnostics_app.html:32
+#: plinth/modules/diagnostics/templates/diagnostics_app.html:17
#, fuzzy
#| msgid "This module does not support diagnostics"
msgid "This app does not support diagnostics"
msgstr "Tento modul nepodporuje diagnostiku"
-#: plinth/modules/diagnostics/templates/diagnostics_results.html:25
+#: plinth/modules/diagnostics/templates/diagnostics_results.html:10
msgid "Test"
msgstr "Vyzkoušet"
-#: plinth/modules/diagnostics/templates/diagnostics_results.html:26
+#: plinth/modules/diagnostics/templates/diagnostics_results.html:11
msgid "Result"
msgstr "Výsledek"
-#: plinth/modules/diaspora/__init__.py:54
-#: plinth/modules/diaspora/manifest.py:38
-msgid "diaspora*"
-msgstr "diaspora*"
-
-#: plinth/modules/diaspora/__init__.py:56
-msgid "Federated Social Network"
-msgstr "Decentralizovaná společenská síť"
-
-#: plinth/modules/diaspora/__init__.py:63
+#: plinth/modules/diaspora/__init__.py:45
msgid ""
"diaspora* is a decentralized social network where you can store and control "
"your own data."
@@ -1089,15 +1117,24 @@ msgstr ""
"diaspora* je decentralizovaná společenská síť na které svá vlastní data "
"uchováváte a ovládáte vy."
-#: plinth/modules/diaspora/forms.py:30
+#: plinth/modules/diaspora/__init__.py:69
+#: plinth/modules/diaspora/manifest.py:23
+msgid "diaspora*"
+msgstr "diaspora*"
+
+#: plinth/modules/diaspora/__init__.py:70
+msgid "Federated Social Network"
+msgstr "Decentralizovaná společenská síť"
+
+#: plinth/modules/diaspora/forms.py:15
msgid "Enable new user registrations"
msgstr "Umožnit registrování nových uživatelů"
-#: plinth/modules/diaspora/manifest.py:26
+#: plinth/modules/diaspora/manifest.py:11
msgid "dandelion*"
msgstr "dandelion*"
-#: plinth/modules/diaspora/manifest.py:28
+#: plinth/modules/diaspora/manifest.py:13
msgid ""
"It is an unofficial webview based client for the community-run, distributed "
"social network diaspora*"
@@ -1105,7 +1142,7 @@ msgstr ""
"Je neoficiální klient založený na webview, pro komunitou provozovanou, "
"distribuovanou společenskou síť diaspora*"
-#: plinth/modules/diaspora/templates/diaspora-post-setup.html:32
+#: plinth/modules/diaspora/templates/diaspora-post-setup.html:16
#, python-format
msgid ""
"The diaspora* pod domain is set to %(domain_name)s. User IDs will "
@@ -1121,39 +1158,35 @@ msgstr ""
"pod je dostupný na diaspora."
"%(domain_name)s "
-#: plinth/modules/diaspora/templates/diaspora-pre-setup.html:58
-#: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:40
-#: plinth/modules/ejabberd/templates/ejabberd.html:58
-#: plinth/modules/i2p/templates/i2p.html:34
-#: plinth/modules/ikiwiki/templates/ikiwiki_create.html:33
-#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:62
-#: plinth/modules/snapshot/templates/snapshot.html:30
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:51
-#: plinth/modules/tahoe/templates/tahoe-pre-setup.html:58
-#: plinth/templates/app.html:77
+#: plinth/modules/diaspora/templates/diaspora-pre-setup.html:43
+#: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:25
+#: plinth/modules/ejabberd/templates/ejabberd.html:43
+#: plinth/modules/i2p/templates/i2p.html:19
+#: plinth/modules/ikiwiki/templates/ikiwiki_create.html:18
+#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:47
+#: plinth/modules/snapshot/templates/snapshot.html:15
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:35
+#: plinth/modules/tahoe/templates/tahoe-pre-setup.html:43
+#: plinth/templates/app.html:62
msgid "Update setup"
msgstr "Aktualizovat nastavení"
-#: plinth/modules/diaspora/views.py:93 plinth/modules/ejabberd/views.py:66
-#: plinth/modules/matrixsynapse/views.py:108
-#: plinth/modules/mediawiki/views.py:79 plinth/modules/openvpn/views.py:155
-#: plinth/modules/tor/views.py:156 plinth/views.py:175
+#: plinth/modules/diaspora/views.py:76 plinth/modules/ejabberd/views.py:46
+#: plinth/modules/matrixsynapse/views.py:85
+#: plinth/modules/mediawiki/views.py:59 plinth/modules/openvpn/views.py:136
+#: plinth/modules/tor/views.py:137 plinth/views.py:185
msgid "Setting unchanged"
msgstr "Nastavení se nezměnila"
-#: plinth/modules/diaspora/views.py:97
+#: plinth/modules/diaspora/views.py:80
msgid "User registrations enabled"
msgstr "Registrace uživatelů zapnuta"
-#: plinth/modules/diaspora/views.py:101
+#: plinth/modules/diaspora/views.py:84
msgid "User registrations disabled"
msgstr "Registrace uživatelů vypnuta"
-#: plinth/modules/dynamicdns/__init__.py:40
-msgid "Dynamic DNS Client"
-msgstr "Klient dynamické DNS"
-
-#: plinth/modules/dynamicdns/__init__.py:44
+#: plinth/modules/dynamicdns/__init__.py:27
#, python-brace-format
msgid ""
"If your Internet provider changes your IP address periodically (i.e. every "
@@ -1164,7 +1197,7 @@ msgstr ""
"(např. každých 24h), může pro ostatní být být těžké najít vás na Internetu. "
"Toto ostatním zabrání nalézt služby, které jsou poskytovány tímto {box_name}."
-#: plinth/modules/dynamicdns/__init__.py:48
+#: plinth/modules/dynamicdns/__init__.py:31
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 "
@@ -1182,11 +1215,15 @@ msgstr ""
"někdo z Internetu zeptá na váš DNS název, dostane odpověď s vaší současnou "
"IP adresou."
-#: plinth/modules/dynamicdns/__init__.py:78
+#: plinth/modules/dynamicdns/__init__.py:56
+msgid "Dynamic DNS Client"
+msgstr "Klient dynamické DNS"
+
+#: plinth/modules/dynamicdns/__init__.py:66
msgid "Dynamic Domain Name"
msgstr "Název dynamické domény"
-#: plinth/modules/dynamicdns/forms.py:42
+#: plinth/modules/dynamicdns/forms.py:27
msgid ""
"The Variables <User>, <Pass>, <Ip>, <Domain> may be "
"used within the URL. For details see the update URL templates of the example "
@@ -1197,7 +1234,7 @@ msgstr ""
"podrobnosti naleznete v šablonách aktualizačních URL adres některých "
"poskytovatelů, poskytovaných pro ukázku."
-#: plinth/modules/dynamicdns/forms.py:46
+#: plinth/modules/dynamicdns/forms.py:31
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 "
@@ -1207,7 +1244,7 @@ msgstr ""
"Pokud nepodporuje GnuDIP nebo není na seznamu, můžete použít URL adresu, "
"poskytnutou vaším poskytovatelem."
-#: plinth/modules/dynamicdns/forms.py:51
+#: plinth/modules/dynamicdns/forms.py:36
msgid ""
"Please do not enter a URL here (like \"https://example.com/\") but only the "
"hostname of the GnuDIP server (like \"example.com\")."
@@ -1215,20 +1252,20 @@ msgstr ""
"Nezadávejte sem 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/forms.py:55
+#: plinth/modules/dynamicdns/forms.py:40
#, 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/forms.py:58
+#: plinth/modules/dynamicdns/forms.py:43
msgid "Use this option if your provider uses self signed certificates."
msgstr ""
"Tuto předvolbu použijte pokud váš poskytovatel používá samy sebou podepsané "
"certifikáty."
-#: plinth/modules/dynamicdns/forms.py:61
+#: plinth/modules/dynamicdns/forms.py:46
msgid ""
"If this option is selected, your username and password will be used for HTTP "
"basic authentication."
@@ -1236,11 +1273,11 @@ msgstr ""
"Pokud je vybrána tato předvolba, pro základní HTTP ověření bude použito vaše "
"uživatelské jméno a heslo ."
-#: plinth/modules/dynamicdns/forms.py:64
+#: plinth/modules/dynamicdns/forms.py:49
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/forms.py:67
+#: plinth/modules/dynamicdns/forms.py:52
#, python-brace-format
msgid ""
"Optional Value. If your {box_name} is not connected directly to the Internet "
@@ -1253,72 +1290,72 @@ msgstr ""
"skutečné IP adresy. URL adresa by měla jen vrátit IP adresu, ze které "
"přichází klient (příklad: http://myip.datasystems24.de)."
-#: plinth/modules/dynamicdns/forms.py:75
+#: plinth/modules/dynamicdns/forms.py:60
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/forms.py:83
+#: plinth/modules/dynamicdns/forms.py:68
msgid "Enable Dynamic DNS"
msgstr "Zapnout dynamické DNS"
-#: plinth/modules/dynamicdns/forms.py:86
+#: plinth/modules/dynamicdns/forms.py:71
msgid "Service Type"
msgstr "Typ služby"
-#: plinth/modules/dynamicdns/forms.py:91
+#: plinth/modules/dynamicdns/forms.py:76
msgid "GnuDIP Server Address"
msgstr "Adresa GnuDIP serveru"
-#: plinth/modules/dynamicdns/forms.py:94
+#: plinth/modules/dynamicdns/forms.py:79
msgid "Invalid server name"
msgstr "Neplatný název serveru"
-#: plinth/modules/dynamicdns/forms.py:97
+#: plinth/modules/dynamicdns/forms.py:82
msgid "Update URL"
msgstr "URL adresa aktualizace"
-#: plinth/modules/dynamicdns/forms.py:102
+#: plinth/modules/dynamicdns/forms.py:87
msgid "Accept all SSL certificates"
msgstr "Přijímat veškeré SSL certifikáty"
-#: plinth/modules/dynamicdns/forms.py:106
+#: plinth/modules/dynamicdns/forms.py:91
msgid "Use HTTP basic authentication"
msgstr "Použít základní HTTP ověřování"
-#: plinth/modules/dynamicdns/forms.py:116 plinth/modules/networks/forms.py:217
+#: plinth/modules/dynamicdns/forms.py:101 plinth/modules/networks/forms.py:199
msgid "Username"
msgstr "Uživatelské jméno"
-#: plinth/modules/dynamicdns/forms.py:119 plinth/modules/networks/forms.py:218
-#: plinth/modules/shadowsocks/forms.py:60
+#: plinth/modules/dynamicdns/forms.py:104 plinth/modules/networks/forms.py:200
+#: plinth/modules/shadowsocks/forms.py:45
msgid "Password"
msgstr "Heslo"
-#: plinth/modules/dynamicdns/forms.py:123 plinth/modules/networks/forms.py:220
+#: plinth/modules/dynamicdns/forms.py:108 plinth/modules/networks/forms.py:202
msgid "Show password"
msgstr "Zobrazit heslo"
-#: plinth/modules/dynamicdns/forms.py:127
+#: plinth/modules/dynamicdns/forms.py:112
msgid "URL to look up public IP"
msgstr "URL adresa na které hledat veřejnou IP adresu"
-#: plinth/modules/dynamicdns/forms.py:151
+#: plinth/modules/dynamicdns/forms.py:136
msgid "Please provide an update URL or a GnuDIP server address"
msgstr "Zadejte URL adresu aktualizace nebo GNUDIP serveru"
-#: plinth/modules/dynamicdns/forms.py:156
+#: plinth/modules/dynamicdns/forms.py:141
msgid "Please provide a GnuDIP username"
msgstr "Zadejte GnuDIP uživatelské jméno"
-#: plinth/modules/dynamicdns/forms.py:160
+#: plinth/modules/dynamicdns/forms.py:145
msgid "Please provide a GnuDIP domain name"
msgstr "Zadejte doménový název GnuDIP"
-#: plinth/modules/dynamicdns/forms.py:165
+#: plinth/modules/dynamicdns/forms.py:150
msgid "Please provide a password"
msgstr "Zadejte heslo"
-#: plinth/modules/dynamicdns/templates/dynamicdns.html:27
+#: plinth/modules/dynamicdns/templates/dynamicdns.html:12
msgid ""
"If you are looking for a free dynamic DNS account, you may find a free "
"GnuDIP service at "
"freedns.afraid.org."
-#: plinth/modules/dynamicdns/templates/dynamicdns.html:38
+#: plinth/modules/dynamicdns/templates/dynamicdns.html:23
#, python-format
msgid ""
"If your %(box_name)s is connected behind a NAT router, don't forget to add "
@@ -1343,7 +1380,7 @@ msgstr ""
"nastavit předávání standardních portů, jako třeba TCP port 80 (HTTP) a TCP "
"port 443 (HTTPS)."
-#: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:30
+#: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:15
msgid ""
"You have disabled Javascript. Dynamic form mode is disabled and some helper "
"functions may not work (but the main functionality should work)."
@@ -1352,11 +1389,11 @@ msgstr ""
"vypnutý a některé pomocné funkce nemusí fungovat (ale hlavní funkčnost by "
"měla být zachována)."
-#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:24
+#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:9
msgid "NAT type"
msgstr "Typ NAT"
-#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:28
+#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:13
msgid ""
"NAT type was not detected yet. If you do not provide an \"IP Check URL\", we "
"will not detect a NAT type."
@@ -1364,11 +1401,11 @@ msgstr ""
"Doposud se nepodařilo zjistit typ NAT překladu. Dokud nezadáte „URL adresu "
"kontroly IP“, typ NAT překladu nebude možné zjistit."
-#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:34
+#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:19
msgid "Direct connection to the Internet."
msgstr "Přímé připojení do Internetu."
-#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:36
+#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:21
#, python-format
msgid ""
"Behind NAT. This means that Dynamic DNS service will poll the \"URL to look "
@@ -1383,48 +1420,39 @@ msgstr ""
"změn WAN IP adresy, může trvat až %(timer)s minut než bude DNS záznam "
"zaktualizován."
-#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:48
+#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:33
msgid "Last update"
msgstr "Minulá aktualizace"
-#: plinth/modules/dynamicdns/views.py:41 plinth/modules/help/__init__.py:59
-#: plinth/templates/help-menu.html:61 plinth/templates/help-menu.html:62
+#: plinth/modules/dynamicdns/views.py:26 plinth/modules/help/__init__.py:49
+#: plinth/templates/help-menu.html:46 plinth/templates/help-menu.html:47
msgid "About"
msgstr "O systému"
-#: plinth/modules/dynamicdns/views.py:47
-#: plinth/modules/firewall/templates/firewall.html:25
-#: plinth/modules/firewall/templates/firewall.html:45
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:38
-#: plinth/modules/networks/templates/connection_show.html:261
-#: plinth/modules/openvpn/templates/openvpn.html:39
-#: plinth/modules/openvpn/templates/openvpn.html:60
-#: plinth/modules/tor/templates/tor.html:37
-#: plinth/modules/tor/templates/tor.html:51
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:61
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:60
-#: plinth/templates/app.html:42
+#: plinth/modules/dynamicdns/views.py:32
+#: plinth/modules/firewall/templates/firewall.html:10
+#: plinth/modules/firewall/templates/firewall.html:30
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:23
+#: plinth/modules/networks/templates/connection_show.html:246
+#: plinth/modules/openvpn/templates/openvpn.html:24
+#: plinth/modules/openvpn/templates/openvpn.html:45
+#: plinth/modules/tor/templates/tor.html:22
+#: plinth/modules/tor/templates/tor.html:36
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:46
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:45
+#: plinth/templates/app.html:27
msgid "Status"
msgstr "Stav"
-#: plinth/modules/dynamicdns/views.py:79
+#: plinth/modules/dynamicdns/views.py:62
msgid "Configure Dynamic DNS"
msgstr "Nastavit dynamický DNS"
-#: plinth/modules/dynamicdns/views.py:105
+#: plinth/modules/dynamicdns/views.py:86
msgid "Dynamic DNS Status"
msgstr "Stav dynamického DNS"
-#: plinth/modules/ejabberd/__init__.py:50
-msgid "ejabberd"
-msgstr "ejabberd"
-
-#: plinth/modules/ejabberd/__init__.py:54
-#: plinth/modules/matrixsynapse/__init__.py:52
-msgid "Chat Server"
-msgstr "Chat server"
-
-#: plinth/modules/ejabberd/__init__.py:57
+#: plinth/modules/ejabberd/__init__.py:36
msgid ""
"XMPP is an open and standardized communication protocol. Here you can run "
"and configure your XMPP server, called ejabberd."
@@ -1432,7 +1460,7 @@ 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:60
+#: plinth/modules/ejabberd/__init__.py:39
#, python-brace-format
msgid ""
"To actually communicate, you can use the web client"
@@ -1445,11 +1473,20 @@ msgstr ""
"target='_blank'>XMPP klienta. Když je zapnutý, ejabberd je přístupný "
"libovolnému uživateli s účtem na {box_name}."
-#: plinth/modules/ejabberd/forms.py:32
+#: plinth/modules/ejabberd/__init__.py:70
+msgid "ejabberd"
+msgstr "ejabberd"
+
+#: plinth/modules/ejabberd/__init__.py:71
+#: plinth/modules/matrixsynapse/__init__.py:68
+msgid "Chat Server"
+msgstr "Chat server"
+
+#: plinth/modules/ejabberd/forms.py:17
msgid "Enable Message Archive Management"
msgstr "Zapnout správu archivu zpráv"
-#: plinth/modules/ejabberd/forms.py:34
+#: plinth/modules/ejabberd/forms.py:19
#, python-brace-format
msgid ""
"If enabled, your {box_name} will store chat message histories. This allows "
@@ -1462,15 +1499,15 @@ msgstr ""
"místnosti více uživatelů. Závisí na nastavení klienta, zda bude historie "
"ukládána jako čitelný text nebo zašifrovaně."
-#: plinth/modules/ejabberd/manifest.py:26
+#: plinth/modules/ejabberd/manifest.py:11
msgid "Conversations"
msgstr "Konverzace"
-#: plinth/modules/ejabberd/manifest.py:40
+#: plinth/modules/ejabberd/manifest.py:25
msgid "Xabber"
msgstr "Xabber"
-#: plinth/modules/ejabberd/manifest.py:42
+#: plinth/modules/ejabberd/manifest.py:27
msgid ""
"Open source Jabber (XMPP) client with multi-account support and clean and "
"simple interface. "
@@ -1478,15 +1515,15 @@ msgstr ""
"Jabber (XMPP) klient s podporou vícero účtů a čistým jednoduchým rozhraním – "
"a s otevřeným zdrojovým kódem. "
-#: plinth/modules/ejabberd/manifest.py:57
+#: plinth/modules/ejabberd/manifest.py:42
msgid "Yaxim"
msgstr "Yaxim"
-#: plinth/modules/ejabberd/manifest.py:71
+#: plinth/modules/ejabberd/manifest.py:56
msgid "ChatSecure"
msgstr "ChatSecure"
-#: plinth/modules/ejabberd/manifest.py:73
+#: plinth/modules/ejabberd/manifest.py:58
msgid ""
"ChatSecure is a free and open source messaging app that features OTR "
"encryption over XMPP. You can connect to an existing Google account, create "
@@ -1498,15 +1535,15 @@ msgstr ""
"Google účtu, vytvořit nový účet na některém z veřejných XMPP serverů (i přes "
"Tor), nebo se dokonce připojit ještě bezpečněji, ke svému vlastnímu serveru."
-#: plinth/modules/ejabberd/manifest.py:89
+#: plinth/modules/ejabberd/manifest.py:74
msgid "Dino"
msgstr "Dino"
-#: plinth/modules/ejabberd/manifest.py:101
+#: plinth/modules/ejabberd/manifest.py:86
msgid "Gajim"
msgstr "Gajim"
-#: plinth/modules/ejabberd/templates/ejabberd.html:33
+#: plinth/modules/ejabberd/templates/ejabberd.html:18
#, python-format
msgid ""
"Your XMPP server domain is set to %(domainname)s. User IDs will look "
@@ -1518,28 +1555,24 @@ msgstr ""
"%(domainname)s. Doménu je možné nastavit na stránce nastavení systému."
-#: plinth/modules/ejabberd/templates/ejabberd.html:50
-#: plinth/modules/i2p/templates/i2p.html:26
-#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:30
-#: plinth/modules/snapshot/templates/snapshot.html:27
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:43
-#: plinth/templates/app.html:70
+#: plinth/modules/ejabberd/templates/ejabberd.html:35
+#: plinth/modules/i2p/templates/i2p.html:11
+#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:15
+#: plinth/modules/snapshot/templates/snapshot.html:12
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:27
+#: plinth/templates/app.html:55
msgid "Configuration"
msgstr "Nastavení"
-#: plinth/modules/ejabberd/views.py:78
+#: plinth/modules/ejabberd/views.py:58
msgid "Message Archive Management enabled"
msgstr "Správa archivu zpráv zapnuta"
-#: plinth/modules/ejabberd/views.py:82
+#: plinth/modules/ejabberd/views.py:62
msgid "Message Archive Management disabled"
msgstr "Správa archivu zpráv vypnuta"
-#: plinth/modules/firewall/__init__.py:39
-msgid "Firewall"
-msgstr "Brána firewall"
-
-#: plinth/modules/firewall/__init__.py:43
+#: plinth/modules/firewall/__init__.py:32
#, python-brace-format
msgid ""
"Firewall is a security system that controls the incoming and outgoing "
@@ -1550,26 +1583,30 @@ msgstr ""
"provoz na vašem {box_name}. Zapnutá a správně nastavená brána firewall "
"snižuje riziko bezpečnostních hrozeb z Internetu."
-#: plinth/modules/firewall/components.py:130
+#: plinth/modules/firewall/__init__.py:63
+msgid "Firewall"
+msgstr "Brána firewall"
+
+#: plinth/modules/firewall/components.py:118
#, fuzzy, python-brace-format
#| msgid "%(service_name)s is available only on internal networks."
msgid "Port {name} ({details}) available for internal networks"
msgstr ""
"Služba %(service_name)s je k dispozici pouze na vnitřních sítích."
-#: plinth/modules/firewall/components.py:138
+#: plinth/modules/firewall/components.py:126
#, fuzzy, python-brace-format
#| msgid "%(service_name)s is available only on internal networks."
msgid "Port {name} ({details}) available for external networks"
msgstr ""
"Služba %(service_name)s je k dispozici pouze na vnitřních sítích."
-#: plinth/modules/firewall/components.py:143
+#: plinth/modules/firewall/components.py:131
#, python-brace-format
msgid "Port {name} ({details}) unavailable for external networks"
msgstr ""
-#: plinth/modules/firewall/templates/firewall.html:30
+#: plinth/modules/firewall/templates/firewall.html:15
#, python-format
msgid ""
"Firewall daemon is not running. Please run it. Firewall comes enabled by "
@@ -1583,42 +1620,42 @@ msgstr ""
"příkazem „service firewalld start“ nebo v případě systému se systemd pomocí "
"„systemctl start firewalld“."
-#: plinth/modules/firewall/templates/firewall.html:43
+#: plinth/modules/firewall/templates/firewall.html:28
msgid "Show Ports"
msgstr "Zobrazit porty"
-#: plinth/modules/firewall/templates/firewall.html:44
+#: plinth/modules/firewall/templates/firewall.html:29
msgid "Service/Port"
msgstr "Služba/port"
-#: plinth/modules/firewall/templates/firewall.html:63
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:89
+#: plinth/modules/firewall/templates/firewall.html:48
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:74
msgid "Enabled"
msgstr "Zapnuto"
-#: plinth/modules/firewall/templates/firewall.html:66
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:91
-#: plinth/modules/networks/forms.py:64 plinth/templates/cards.html:49
+#: plinth/modules/firewall/templates/firewall.html:51
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:76
+#: plinth/modules/networks/forms.py:47 plinth/templates/cards.html:34
msgid "Disabled"
msgstr "Vypnuto"
-#: plinth/modules/firewall/templates/firewall.html:78
+#: plinth/modules/firewall/templates/firewall.html:67
msgid "Permitted"
msgstr "Umožněno"
-#: plinth/modules/firewall/templates/firewall.html:81
+#: plinth/modules/firewall/templates/firewall.html:70
msgid "Permitted (internal only)"
msgstr "Umožněno (pouze vnitřní)"
-#: plinth/modules/firewall/templates/firewall.html:84
+#: plinth/modules/firewall/templates/firewall.html:73
msgid "Permitted (external only)"
msgstr "Umožněno (pouze vnější)"
-#: plinth/modules/firewall/templates/firewall.html:87
+#: plinth/modules/firewall/templates/firewall.html:76
msgid "Blocked"
msgstr "Blokováno"
-#: plinth/modules/firewall/templates/firewall.html:99
+#: plinth/modules/firewall/templates/firewall.html:88
msgid ""
"The operation of the firewall is automatic. When you enable a service it is "
"also permitted in the firewall and when you disable a service it is also "
@@ -1628,7 +1665,7 @@ msgstr ""
"také povolena na bráně firewall a když nějako službu vypnete, je také "
"zakázána na bráně firewall."
-#: plinth/modules/first_boot/forms.py:29
+#: plinth/modules/first_boot/forms.py:14
#, fuzzy, python-brace-format
#| msgid ""
#| "Enter the secret generated during FreedomBox installation. This secret "
@@ -1641,24 +1678,24 @@ msgstr ""
"Zadejte heslo vytvořené při instalaci FreedomBox. Toto heslo je možné získat "
"také ze souboru /var/lib/plinth/firstboot-wizard-secret"
-#: plinth/modules/first_boot/forms.py:34
+#: plinth/modules/first_boot/forms.py:19
msgid "Firstboot Wizard Secret"
msgstr ""
-#: plinth/modules/first_boot/templates/firstboot_complete.html:26
+#: plinth/modules/first_boot/templates/firstboot_complete.html:11
msgid "Setup Complete!"
msgstr "Nastavení dokončeno!"
-#: plinth/modules/first_boot/templates/firstboot_complete.html:29
+#: plinth/modules/first_boot/templates/firstboot_complete.html:14
#, python-format
msgid "Without any apps, your %(box_name)s cannot do very much."
msgstr "Bez aplikací váš %(box_name)s není moc užitečný."
-#: plinth/modules/first_boot/templates/firstboot_complete.html:36
+#: plinth/modules/first_boot/templates/firstboot_complete.html:21
msgid "Install Apps"
msgstr "Nainstalovat aplikace"
-#: plinth/modules/first_boot/templates/firstboot_complete.html:42
+#: plinth/modules/first_boot/templates/firstboot_complete.html:27
#, python-format
msgid ""
"You may want to check the network setup and "
@@ -1667,23 +1704,15 @@ msgstr ""
"Možná bude třeba zkontrolovat nastavení sítě"
"a> a případně upravit."
-#: plinth/modules/first_boot/templates/firstboot_welcome.html:52
+#: plinth/modules/first_boot/templates/firstboot_welcome.html:37
msgid "Start Setup"
msgstr "Spustit nastavení"
-#: plinth/modules/first_boot/views.py:64
+#: plinth/modules/first_boot/views.py:49
msgid "Setup Complete"
msgstr "Nastavení dokončeno"
-#: plinth/modules/gitweb/__init__.py:44 plinth/modules/gitweb/manifest.py:28
-msgid "Gitweb"
-msgstr "Gitweb"
-
-#: plinth/modules/gitweb/__init__.py:48
-msgid "Simple Git Hosting"
-msgstr "Jednoduché hostování Git"
-
-#: plinth/modules/gitweb/__init__.py:51
+#: plinth/modules/gitweb/__init__.py:28
msgid ""
"Git is a distributed version-control system for tracking changes in source "
"code during software development. Gitweb provides a web interface to Git "
@@ -1701,7 +1730,7 @@ msgstr ""
"grafických klientů. A svoje zdrojové kódy můžete sdílet s lidmi z celého "
"světa."
-#: plinth/modules/gitweb/__init__.py:58
+#: plinth/modules/gitweb/__init__.py:35
msgid ""
"To learn more on how to use Git visit Git tutorial."
@@ -1709,21 +1738,29 @@ msgstr ""
"Více o Git se dozvíte navštívením výuky Gitu."
-#: plinth/modules/gitweb/__init__.py:64
+#: plinth/modules/gitweb/__init__.py:39
msgid "Read-write access to Git repositories"
msgstr "Přístup do Git repozitářů pro čtení a zápis"
-#: plinth/modules/gitweb/forms.py:59
+#: plinth/modules/gitweb/__init__.py:56 plinth/modules/gitweb/manifest.py:13
+msgid "Gitweb"
+msgstr "Gitweb"
+
+#: plinth/modules/gitweb/__init__.py:57
+msgid "Simple Git Hosting"
+msgstr "Jednoduché hostování Git"
+
+#: plinth/modules/gitweb/forms.py:44
#, fuzzy
#| msgid "Invalid repository name."
msgid "Invalid repository URL."
msgstr "Neplatný název repozitáře."
-#: plinth/modules/gitweb/forms.py:69
+#: plinth/modules/gitweb/forms.py:54
msgid "Invalid repository name."
msgstr "Neplatný název repozitáře."
-#: plinth/modules/gitweb/forms.py:77
+#: plinth/modules/gitweb/forms.py:62
#, fuzzy
#| msgid ""
#| "Repository path is neither empty nor is an existing backups repository."
@@ -1732,160 +1769,160 @@ msgstr ""
"Popis umístění repozitáře buď není vyplněný nebo se nejedná o existující "
"repozitář záloh."
-#: plinth/modules/gitweb/forms.py:83
+#: plinth/modules/gitweb/forms.py:68
msgid "Description of the repository"
msgstr "Popis repozitáře"
-#: plinth/modules/gitweb/forms.py:84 plinth/modules/gitweb/forms.py:88
+#: plinth/modules/gitweb/forms.py:69 plinth/modules/gitweb/forms.py:73
msgid "Optional, for displaying on Gitweb."
msgstr "Volitelné, zobrazuje se na Gitweb"
-#: plinth/modules/gitweb/forms.py:86
+#: plinth/modules/gitweb/forms.py:71
msgid "Repository's owner name"
msgstr "Jméno vlastníka repozitáře"
-#: plinth/modules/gitweb/forms.py:91
+#: plinth/modules/gitweb/forms.py:76
msgid "Private repository"
msgstr "Neveřejný repozitář"
-#: plinth/modules/gitweb/forms.py:92
+#: plinth/modules/gitweb/forms.py:77
msgid "Allow only authorized users to access this repository."
msgstr "K tomuto repozitáři umožnit přístup pouze pověřeným uživatelům."
-#: plinth/modules/gitweb/forms.py:113 plinth/modules/gitweb/forms.py:145
+#: plinth/modules/gitweb/forms.py:98 plinth/modules/gitweb/forms.py:130
msgid "A repository with this name already exists."
msgstr "Repozitář s tímto názvem už existuje."
-#: plinth/modules/gitweb/forms.py:126
+#: plinth/modules/gitweb/forms.py:111
msgid "Name of the repository"
msgstr "Název repozitáře"
-#: plinth/modules/gitweb/forms.py:130
+#: plinth/modules/gitweb/forms.py:115
msgid "An alpha-numeric string that uniquely identifies a repository."
msgstr "Řetězec písmeny a číslicemi, který jednoznačně identifikuje repozitář."
-#: plinth/modules/gitweb/manifest.py:36
+#: plinth/modules/gitweb/manifest.py:21
msgid "Git"
msgstr "Git"
-#: plinth/modules/gitweb/templates/gitweb_configure.html:46
+#: plinth/modules/gitweb/templates/gitweb_configure.html:31
msgid "Manage Repositories"
msgstr "Spravovat repozitáře"
-#: plinth/modules/gitweb/templates/gitweb_configure.html:50
-#: plinth/modules/gitweb/templates/gitweb_configure.html:52
+#: plinth/modules/gitweb/templates/gitweb_configure.html:35
+#: plinth/modules/gitweb/templates/gitweb_configure.html:37
msgid "Create repository"
msgstr "Vytvořit repozitář"
-#: plinth/modules/gitweb/templates/gitweb_configure.html:59
+#: plinth/modules/gitweb/templates/gitweb_configure.html:44
msgid "No repositories available."
msgstr "Nejsou k dispozici žádné repozitáře."
-#: plinth/modules/gitweb/templates/gitweb_configure.html:67
+#: plinth/modules/gitweb/templates/gitweb_configure.html:52
#, python-format
msgid "Delete repository %(repo.name)s"
msgstr "Smazat repozitář %(repo.name)s"
-#: plinth/modules/gitweb/templates/gitweb_configure.html:83
+#: plinth/modules/gitweb/templates/gitweb_configure.html:68
msgid "Cloning..."
msgstr ""
-#: plinth/modules/gitweb/templates/gitweb_configure.html:89
+#: plinth/modules/gitweb/templates/gitweb_configure.html:74
#, python-format
msgid "Go to repository %(repo.name)s"
msgstr "Přejít do repozitáře %(repo.name)s"
-#: plinth/modules/gitweb/templates/gitweb_delete.html:27
+#: plinth/modules/gitweb/templates/gitweb_delete.html:12
#, python-format
msgid "Delete Git Repository %(name)s"
msgstr "Smazat Git repozitář %(name)s"
-#: plinth/modules/gitweb/templates/gitweb_delete.html:33
+#: plinth/modules/gitweb/templates/gitweb_delete.html:18
msgid "Delete this repository permanently?"
msgstr "Nevratně smazat tento repozitář?"
-#: plinth/modules/gitweb/templates/gitweb_delete.html:42
-#: plinth/modules/ikiwiki/templates/ikiwiki_delete.html:44
+#: plinth/modules/gitweb/templates/gitweb_delete.html:27
+#: plinth/modules/ikiwiki/templates/ikiwiki_delete.html:29
#, python-format
msgid "Delete %(name)s"
msgstr "Smazat %(name)s"
-#: plinth/modules/gitweb/views.py:65
+#: plinth/modules/gitweb/views.py:45
msgid "Repository created."
msgstr "Repozitář vytvořen."
-#: plinth/modules/gitweb/views.py:87
+#: plinth/modules/gitweb/views.py:67
#, fuzzy
#| msgid "An error occurred during configuration."
msgid "An error occurred while creating the repository."
msgstr "Při nastavování se vyskytla chyba."
-#: plinth/modules/gitweb/views.py:100
+#: plinth/modules/gitweb/views.py:80
msgid "Repository edited."
msgstr "Repozitář upraven."
-#: plinth/modules/gitweb/views.py:105
+#: plinth/modules/gitweb/views.py:85
msgid "Edit repository"
msgstr "Upravit repozitář"
-#: plinth/modules/gitweb/views.py:133 plinth/modules/searx/views.py:62
-#: plinth/modules/searx/views.py:73 plinth/modules/tor/views.py:178
+#: plinth/modules/gitweb/views.py:113 plinth/modules/searx/views.py:42
+#: plinth/modules/searx/views.py:53 plinth/modules/tor/views.py:159
msgid "An error occurred during configuration."
msgstr "Při nastavování se vyskytla chyba."
-#: plinth/modules/gitweb/views.py:154
+#: plinth/modules/gitweb/views.py:134
#, python-brace-format
msgid "{name} deleted."
msgstr "{name} smazáno."
-#: plinth/modules/gitweb/views.py:158
+#: plinth/modules/gitweb/views.py:138
#, python-brace-format
msgid "Could not delete {name}: {error}"
msgstr "{name} se nepodařilo smazat: {error}"
-#: plinth/modules/help/__init__.py:40
+#: plinth/modules/help/__init__.py:30
msgid "Documentation"
msgstr "Dokumentace"
-#: plinth/modules/help/__init__.py:43 plinth/modules/networks/forms.py:64
-#: plinth/modules/networks/forms.py:95 plinth/templates/help-menu.html:35
-#: plinth/templates/help-menu.html:36 plinth/templates/index.html:135
+#: plinth/modules/help/__init__.py:33 plinth/modules/networks/forms.py:47
+#: plinth/modules/networks/forms.py:77 plinth/templates/help-menu.html:20
+#: plinth/templates/help-menu.html:21 plinth/templates/index.html:120
msgid "Manual"
msgstr "Příručka"
-#: plinth/modules/help/__init__.py:47 plinth/modules/help/help.py:58
-#: plinth/modules/help/templates/help_support.html:24
-#: plinth/templates/help-menu.html:42 plinth/templates/help-menu.html:43
+#: plinth/modules/help/__init__.py:37 plinth/modules/help/help.py:43
+#: plinth/modules/help/templates/help_support.html:9
+#: plinth/templates/help-menu.html:27 plinth/templates/help-menu.html:28
msgid "Get Support"
msgstr "Získat podporu"
-#: plinth/modules/help/__init__.py:51 plinth/modules/help/help.py:52
-#: plinth/modules/help/templates/help_feedback.html:24
-#: plinth/templates/help-menu.html:48 plinth/templates/help-menu.html:49
+#: plinth/modules/help/__init__.py:41 plinth/modules/help/help.py:37
+#: plinth/modules/help/templates/help_feedback.html:9
+#: plinth/templates/help-menu.html:33 plinth/templates/help-menu.html:34
msgid "Submit Feedback"
msgstr "Odeslat zpětnou vazbu"
-#: plinth/modules/help/__init__.py:55 plinth/modules/help/help.py:46
-#: plinth/modules/help/templates/help_contribute.html:24
-#: plinth/templates/help-menu.html:54 plinth/templates/help-menu.html:55
+#: plinth/modules/help/__init__.py:45 plinth/modules/help/help.py:31
+#: plinth/modules/help/templates/help_contribute.html:9
+#: plinth/templates/help-menu.html:39 plinth/templates/help-menu.html:40
msgid "Contribute"
msgstr "Zapojit se"
-#: plinth/modules/help/help.py:40
+#: plinth/modules/help/help.py:25
msgid "Documentation and FAQ"
msgstr "Dokumentace a často kladené dotazy"
-#: plinth/modules/help/help.py:66
+#: plinth/modules/help/help.py:51
#, python-brace-format
msgid "About {box_name}"
msgstr "O {box_name}"
-#: plinth/modules/help/help.py:101
+#: plinth/modules/help/help.py:86
#, python-brace-format
msgid "{box_name} Manual"
msgstr "Příručka k {box_name}"
-#: plinth/modules/help/templates/help_about.html:32
+#: plinth/modules/help/templates/help_about.html:17
#, python-format
msgid ""
"%(box_name)s is a community project to develop, design and promote personal "
@@ -1904,7 +1941,7 @@ msgstr ""
"proxy a Tor předávání. To vše na zařízení, které může nahradit váš Wi-Fi "
"směrovač. Vaše data zůstávají u vás."
-#: plinth/modules/help/templates/help_about.html:45
+#: plinth/modules/help/templates/help_about.html:30
msgid ""
"We live in a world where our use of the network is mediated by those who "
"often do not have our best interests at heart. By building software that "
@@ -1920,7 +1957,7 @@ msgstr ""
"ochranu. Vrácením moci uživatelům nad jejich sítěmi a stroji, vracíme "
"Internet k jeho původně zamýšlené decentralizované architektuře."
-#: plinth/modules/help/templates/help_about.html:58
+#: plinth/modules/help/templates/help_about.html:43
#, python-format
msgid ""
"There are a number of projects working to realize a future of distributed "
@@ -1931,7 +1968,7 @@ msgstr ""
"distribuovaných služeb; %(box_name)s se snaží je všechny spojit dohromady v "
"pohodlně použitelné podobě."
-#: plinth/modules/help/templates/help_about.html:66
+#: plinth/modules/help/templates/help_about.html:51
#, python-format
msgid ""
"For more information about the %(box_name)s project, see the %(box_name)s Wiki."
-#: plinth/modules/help/templates/help_about.html:75
+#: plinth/modules/help/templates/help_about.html:60
msgid "Learn more »"
msgstr "Zjistit víc o »"
-#: plinth/modules/help/templates/help_about.html:78
+#: plinth/modules/help/templates/help_about.html:63
#, python-format
msgid "You are running %(os_release)s and %(box_name)s version %(version)s."
msgstr "Provozujete %(os_release)s a %(box_name)s verze %(version)s."
-#: plinth/modules/help/templates/help_about.html:83
+#: plinth/modules/help/templates/help_about.html:68
#, python-format
msgid "There is a new %(box_name)s version available."
msgstr "Je k dispozici nová verze %(box_name)s."
-#: plinth/modules/help/templates/help_about.html:87
+#: plinth/modules/help/templates/help_about.html:72
#, python-format
msgid "%(box_name)s is up to date."
msgstr "%(box_name)s je aktuální."
-#: plinth/modules/help/templates/help_about.html:94
+#: plinth/modules/help/templates/help_about.html:79
msgid "Security Notice"
msgstr "Výstraha ohledně zabezpečení"
-#: plinth/modules/help/templates/help_about.html:96
+#: plinth/modules/help/templates/help_about.html:81
msgid ""
"You are using packages from Debian backports. Please note that these "
"packages do not have security support from Debian. However, they are "
@@ -1975,17 +2012,17 @@ msgstr ""
"jsou spravovány na základě nejlepší snahy přispěvateli z komunit Debian a "
"FreedomBox."
-#: plinth/modules/help/templates/help_base.html:36
-#: plinth/modules/help/templates/help_index.html:76
+#: plinth/modules/help/templates/help_base.html:21
+#: plinth/modules/help/templates/help_index.html:61
#, python-format
msgid "%(box_name)s Setup"
msgstr "Nastavení %(box_name)s"
-#: plinth/modules/help/templates/help_contribute.html:27
+#: plinth/modules/help/templates/help_contribute.html:12
msgid "The FreedomBox project welcomes contributions of all kinds."
msgstr "Projekt FreedomBox vítá příspěvky jakéhokoli druhu."
-#: plinth/modules/help/templates/help_contribute.html:33
+#: plinth/modules/help/templates/help_contribute.html:18
msgid ""
"You can contribute by writing code, testing and reporting bugs, discussing "
"new use cases and applications, designing logos and artwork, providing "
@@ -1999,7 +2036,7 @@ msgstr ""
"do svého jazyka, hostování hackathonů nebo instalačních festivalů a "
"propagací."
-#: plinth/modules/help/templates/help_contribute.html:43
+#: plinth/modules/help/templates/help_contribute.html:28
msgid ""
"You can also help the project financially by donating to the non-profit FreedomBox "
@@ -2011,19 +2048,19 @@ msgid ""
"supporters."
msgstr ""
-#: plinth/modules/help/templates/help_contribute.html:57
-#: plinth/modules/power/templates/power_restart.html:42
-#: plinth/modules/power/templates/power_shutdown.html:41
-#: plinth/templates/header.html:59
+#: plinth/modules/help/templates/help_contribute.html:42
+#: plinth/modules/power/templates/power_restart.html:27
+#: plinth/modules/power/templates/power_shutdown.html:26
+#: plinth/templates/app-header.html:51
msgid "Learn more..."
msgstr "Zjistit více…"
-#: plinth/modules/help/templates/help_feedback.html:27
+#: plinth/modules/help/templates/help_feedback.html:12
#, python-format
msgid "Your feedback will help us improve %(box_name)s!"
msgstr "Vaše zpětná vazba nám pomůže vylepšit %(box_name)s!"
-#: plinth/modules/help/templates/help_feedback.html:33
+#: plinth/modules/help/templates/help_feedback.html:18
msgid ""
"Let us know about missing features, your favourite apps and how we can "
"improve them on our diskuzním fóru."
-#: plinth/modules/help/templates/help_feedback.html:41
+#: plinth/modules/help/templates/help_feedback.html:26
msgid ""
"If you find any bugs or issues, please use the issue tracker"
@@ -2046,16 +2083,16 @@ msgstr ""
"nahlášení, nejprve zkontrolujte, zda problém už nebyl nahlášen někým jiným a "
"pak použijte tlačítko „Nový problém“."
-#: plinth/modules/help/templates/help_feedback.html:51
+#: plinth/modules/help/templates/help_feedback.html:36
msgid "Thank you!"
msgstr "Děkujeme!"
-#: plinth/modules/help/templates/help_index.html:27
-#: plinth/templates/help-menu.html:23 plinth/templates/help-menu.html:28
+#: plinth/modules/help/templates/help_index.html:12
+#: plinth/templates/help-menu.html:8 plinth/templates/help-menu.html:13
msgid "Help"
msgstr "Nápověda"
-#: plinth/modules/help/templates/help_index.html:31
+#: plinth/modules/help/templates/help_index.html:16
#, python-format
msgid ""
"The %(box_name)s Manual is the best place to "
@@ -2064,7 +2101,7 @@ msgstr ""
"%(box_name)s Příručka je nejlepším úvodem do "
"%(box_name)s."
-#: plinth/modules/help/templates/help_index.html:38
+#: plinth/modules/help/templates/help_index.html:23
#, python-format
msgid ""
" "
@@ -2073,7 +2110,7 @@ msgstr ""
"Další informace jsou uvedeny na wiki stránkách projektu %(box_name)s ."
-#: plinth/modules/help/templates/help_index.html:45
+#: plinth/modules/help/templates/help_index.html:30
#, python-format
msgid ""
"To seek help from %(box_name)s community, queries may be posted on the . Archivy konferencí také obsahují popisy problémů, se "
"kterými se setkali ostatní uživatelé, a jejich možná řešení."
-#: plinth/modules/help/templates/help_index.html:55
+#: plinth/modules/help/templates/help_index.html:40
#, python-format
msgid ""
"Many %(box_name)s contributors and users are also available on the irc.oftc."
@@ -2099,11 +2136,11 @@ msgstr ""
"webchat.oftc.net/?randomnick=1&channels=freedombox&prompt=1\"> #freedombox"
"a> kanálu pomocí webového rozhraní k IRC."
-#: plinth/modules/help/templates/help_manual.html:40
+#: plinth/modules/help/templates/help_manual.html:25
msgid "Download as PDF"
msgstr "Stáhnout jako PDF"
-#: plinth/modules/help/templates/help_support.html:27
+#: plinth/modules/help/templates/help_support.html:12
#, python-format
msgid ""
"If you need help in getting something done or if you are facing problems "
@@ -2113,7 +2150,7 @@ msgstr ""
"Pokud potřebujete s něčím poradit nebo se potýkáte s problémy při používání "
"%(box_name)s, můžete se obrátit na naši komunitu uživatelů a přispěvatelů."
-#: plinth/modules/help/templates/help_support.html:35
+#: plinth/modules/help/templates/help_support.html:20
msgid ""
"Search for past discussions or post a new query on our discussion forum."
@@ -2121,7 +2158,7 @@ msgstr ""
"Hledejte v předchozích diskuzích nebo napište nový dotaz na našem diskuzním fóru."
-#: plinth/modules/help/templates/help_support.html:42
+#: plinth/modules/help/templates/help_support.html:27
msgid ""
"You can also chat with us on our IRC and Matrix channels (bridged): "
"
"
@@ -2129,11 +2166,11 @@ msgid ""
"debian.net\">mailing list."
msgstr ""
-#: plinth/modules/help/templates/statuslog.html:25
+#: plinth/modules/help/templates/statuslog.html:10
msgid "Status Log"
msgstr "Záznam (log) stavu"
-#: plinth/modules/help/templates/statuslog.html:28
+#: plinth/modules/help/templates/statuslog.html:13
#, python-format
msgid ""
"These are the last %(num_lines)s lines of the status log for this web "
@@ -2146,7 +2183,7 @@ msgstr ""
"\"https://salsa.debian.org/freedombox-team/plinth/issues\">systém správy "
"hlášení chyb a tyto řádky připojte k hlášení."
-#: plinth/modules/help/templates/statuslog.html:39
+#: plinth/modules/help/templates/statuslog.html:24
msgid ""
"Please remove any passwords or other personal information from the log "
"before submitting the bug report."
@@ -2154,15 +2191,7 @@ msgstr ""
"Před odesláním hlášení chyby odeberte ze záznamů událostí veškerá hesla a "
"ostatní osobní údaje."
-#: plinth/modules/i2p/__init__.py:42 plinth/modules/i2p/manifest.py:31
-msgid "I2P"
-msgstr "I2P"
-
-#: plinth/modules/i2p/__init__.py:46 plinth/modules/tor/__init__.py:49
-msgid "Anonymity Network"
-msgstr "Anonymní síť"
-
-#: plinth/modules/i2p/__init__.py:49
+#: plinth/modules/i2p/__init__.py:28
msgid ""
"The Invisible Internet Project is an anonymous network layer intended to "
"protect communication from censorship and surveillance. I2P provides "
@@ -2174,7 +2203,7 @@ msgstr ""
"anonymitu posíláním provozu zašifrovaně, skrze dobrovolníky provozovanou síť "
"rozprostřenou po celém světě."
-#: plinth/modules/i2p/__init__.py:53
+#: plinth/modules/i2p/__init__.py:32
msgid ""
"Find more information about I2P on their project homepage."
@@ -2182,39 +2211,47 @@ msgstr ""
"Více informací I2P naleznete na domovské stránce projektu."
-#: plinth/modules/i2p/__init__.py:55
+#: plinth/modules/i2p/__init__.py:34
msgid ""
"The first visit to the provided web interface will initiate the "
"configuration process."
msgstr ""
"První navštívení poskytovaného webového rozhraní spustí proces nastavení."
-#: plinth/modules/i2p/__init__.py:61
+#: plinth/modules/i2p/__init__.py:38
msgid "Manage I2P application"
msgstr "Spravovat aplikaci I2P"
-#: plinth/modules/i2p/__init__.py:103
+#: plinth/modules/i2p/__init__.py:64 plinth/modules/i2p/manifest.py:16
+msgid "I2P"
+msgstr "I2P"
+
+#: plinth/modules/i2p/__init__.py:65 plinth/modules/tor/__init__.py:56
+msgid "Anonymity Network"
+msgstr "Anonymní síť"
+
+#: plinth/modules/i2p/__init__.py:87
msgid "I2P Proxy"
msgstr "I2P proxy"
-#: plinth/modules/i2p/templates/i2p_service.html:31
-#: plinth/templates/clients.html:43
+#: plinth/modules/i2p/templates/i2p_service.html:16
+#: plinth/templates/clients.html:28
msgid "Launch"
msgstr "Spustit"
-#: plinth/modules/i2p/views.py:34
+#: plinth/modules/i2p/views.py:19
msgid "Proxies"
msgstr "Proxy servery"
-#: plinth/modules/i2p/views.py:37
+#: plinth/modules/i2p/views.py:22
msgid "Anonymous torrents"
msgstr "Anonymní torenty"
-#: plinth/modules/i2p/views.py:88
+#: plinth/modules/i2p/views.py:64
msgid "I2P Proxies and Tunnels"
msgstr "I2P proxy a tunely"
-#: plinth/modules/i2p/views.py:91
+#: plinth/modules/i2p/views.py:67
msgid ""
"I2P lets you browse the Internet and hidden services (eepsites) anonymously. "
"For this, your browser, preferably a Tor Browser, needs to be configured for "
@@ -2224,7 +2261,7 @@ msgstr ""
"je třeba, aby vámi používaný webový prohlížeč (nejlépe Tor Browser) byl "
"nastaven pro proxy."
-#: plinth/modules/i2p/views.py:94
+#: plinth/modules/i2p/views.py:70
msgid ""
"By default HTTP, HTTPS and IRC proxies are available. Additional proxies and "
"tunnels may be configured using the tunnel configuration interface."
@@ -2232,11 +2269,11 @@ msgstr ""
"Ve výchozím stavu jsou k dispozici proxy pro HTTP, HTTPS a IRC. Další proxy "
"a tunely je možné nastavit pomocí rozhraní pro nastavení tunelů."
-#: plinth/modules/i2p/views.py:103
+#: plinth/modules/i2p/views.py:79
msgid "Anonymous Torrents"
msgstr "Anonymní torrenty"
-#: plinth/modules/i2p/views.py:106
+#: plinth/modules/i2p/views.py:82
msgid ""
"I2P provides an application to download files anonymously in a peer-to-peer "
"network. Download files by adding torrents or create a new torrent to share "
@@ -2246,15 +2283,7 @@ msgstr ""
"Soubory stahujete přidáním torrentů nebo vytvořením nového torrentu a "
"sdílením souboru skrze něj."
-#: plinth/modules/ikiwiki/__init__.py:41 plinth/modules/ikiwiki/manifest.py:24
-msgid "ikiwiki"
-msgstr "ikiwiki"
-
-#: plinth/modules/ikiwiki/__init__.py:45
-msgid "Wiki and Blog"
-msgstr "wiki a blog"
-
-#: plinth/modules/ikiwiki/__init__.py:48
+#: plinth/modules/ikiwiki/__init__.py:27
#, fuzzy
#| msgid ""
#| "ikiwiki is a simple wiki and blog application. It supports several "
@@ -2272,7 +2301,7 @@ msgstr ""
"komentáře a RSS kanály. Když je zapnuté, blogy a wiki budou dostupné na /ikiwiki (po vytvoření)."
-#: plinth/modules/ikiwiki/__init__.py:52
+#: plinth/modules/ikiwiki/__init__.py:31
#, python-brace-format
msgid ""
"Only {box_name} users in the admin group can create and "
@@ -2285,54 +2314,56 @@ msgstr ""
"může upravovat ty stávající. V Nastavení "
"uživatele můžete tato oprávnění změnit nebo přidat nové uživatele."
-#: plinth/modules/ikiwiki/__init__.py:62
+#: plinth/modules/ikiwiki/__init__.py:39
msgid "View and edit wiki applications"
msgstr "Zobrazit a upravit wiki aplikace"
-#: plinth/modules/ikiwiki/forms.py:27
-#: plinth/modules/networks/templates/connection_show.html:98
-#: plinth/modules/storage/templates/storage.html:43
-msgid "Type"
-msgstr "Typ"
+#: plinth/modules/ikiwiki/__init__.py:53 plinth/modules/ikiwiki/manifest.py:9
+msgid "ikiwiki"
+msgstr "ikiwiki"
-#: plinth/modules/ikiwiki/forms.py:32
+#: plinth/modules/ikiwiki/__init__.py:54
+msgid "Wiki and Blog"
+msgstr "wiki a blog"
+
+#: plinth/modules/ikiwiki/forms.py:17
msgid "Admin Account Name"
msgstr "Název účtu správce"
-#: plinth/modules/ikiwiki/forms.py:34
+#: plinth/modules/ikiwiki/forms.py:19
msgid "Admin Account Password"
msgstr "Heslo k účtu správce"
-#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:27
+#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:12
msgid "Manage Wikis and Blogs"
msgstr "Spravovat wiki a blogy"
-#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:31
-#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:33
-#: plinth/modules/ikiwiki/templates/ikiwiki_create.html:25
+#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:16
+#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:18
+#: plinth/modules/ikiwiki/templates/ikiwiki_create.html:10
msgid "Create Wiki or Blog"
msgstr "Vytvořit wiki nebo blog"
-#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:40
+#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:25
msgid "No wikis or blogs available."
msgstr "Nejsou k dispozici žádné wiki nebo blogy."
-#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:48
+#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:33
#, python-format
msgid "Delete site %(site)s"
msgstr "Smazat stránku %(site)s"
-#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:55
+#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:40
#, python-format
msgid "Go to site %(site)s"
msgstr "Přejít na stránku %(site)s"
-#: plinth/modules/ikiwiki/templates/ikiwiki_delete.html:27
+#: plinth/modules/ikiwiki/templates/ikiwiki_delete.html:12
#, python-format
msgid "Delete Wiki or Blog %(name)s"
msgstr "Smazat wiki nebo blog %(name)s"
-#: plinth/modules/ikiwiki/templates/ikiwiki_delete.html:33
+#: plinth/modules/ikiwiki/templates/ikiwiki_delete.html:18
msgid ""
"This action will remove all the posts, pages and comments including revision "
"history. Delete this wiki or blog permanently?"
@@ -2340,50 +2371,42 @@ msgstr ""
"Tato akce odebere veškeré příspěvky, stránky a komentáře včetně historie "
"verzí. Opravdu chcete nenávratně smazat tuto wiki/blog?"
-#: plinth/modules/ikiwiki/views.py:96
+#: plinth/modules/ikiwiki/views.py:73
#, python-brace-format
msgid "Created wiki {name}."
msgstr "Wiki {name} vytvořena."
-#: plinth/modules/ikiwiki/views.py:99
+#: plinth/modules/ikiwiki/views.py:76
#, python-brace-format
msgid "Could not create wiki: {error}"
msgstr "Wiki se nepodařilo vytvořit: {error}"
-#: plinth/modules/ikiwiki/views.py:109
+#: plinth/modules/ikiwiki/views.py:86
#, python-brace-format
msgid "Created blog {name}."
msgstr "Blog {name} vytvořen."
-#: plinth/modules/ikiwiki/views.py:112
+#: plinth/modules/ikiwiki/views.py:89
#, python-brace-format
msgid "Could not create blog: {error}"
msgstr "Blog se nepodařilo vytvořit: {error}"
-#: plinth/modules/ikiwiki/views.py:127
+#: plinth/modules/ikiwiki/views.py:104
#, python-brace-format
msgid "{title} deleted."
msgstr "{title} dsmazáno."
-#: plinth/modules/ikiwiki/views.py:131
+#: plinth/modules/ikiwiki/views.py:108
#, python-brace-format
msgid "Could not delete {title}: {error}"
msgstr "{title} se nepodařilo smazat: {error}"
-#: plinth/modules/infinoted/__init__.py:42
-msgid "infinoted"
-msgstr "infinoted"
-
-#: plinth/modules/infinoted/__init__.py:46
-msgid "Gobby Server"
-msgstr "Gobby server"
-
-#: plinth/modules/infinoted/__init__.py:49
+#: plinth/modules/infinoted/__init__.py:26
msgid "infinoted is a server for Gobby, a collaborative text editor."
msgstr ""
"infinoted je server pro Gobby – textový editor pro spolupráci ve skupině."
-#: plinth/modules/infinoted/__init__.py:51
+#: plinth/modules/infinoted/__init__.py:28
#, python-brace-format
msgid ""
"To use it, download Gobby, desktop "
@@ -2394,15 +2417,23 @@ msgstr ""
"desktopového klienta a nainstalujte ho. Poté spusťte Gobby a zvolte "
"„Připojit k serveru“ a zadejte doménový název svého {box_name}."
-#: plinth/modules/infinoted/manifest.py:27
+#: plinth/modules/infinoted/__init__.py:48
+msgid "infinoted"
+msgstr "infinoted"
+
+#: plinth/modules/infinoted/__init__.py:49
+msgid "Gobby Server"
+msgstr "Gobby server"
+
+#: plinth/modules/infinoted/manifest.py:12
msgid "Gobby"
msgstr "Gobby"
-#: plinth/modules/infinoted/manifest.py:29
+#: plinth/modules/infinoted/manifest.py:14
msgid "Gobby is a collaborative text editor"
msgstr "Gobby je textový editor pro spolupráci ve skupině"
-#: plinth/modules/infinoted/manifest.py:32
+#: plinth/modules/infinoted/manifest.py:17
#, python-brace-format
msgid ""
"Start Gobby and select \"Connect to Server\" and enter your {box_name}'s "
@@ -2411,15 +2442,7 @@ msgstr ""
"Spusťte Goggy a zvolte „Připojit k serveru“ a zadejte doménový název svého "
"{box_name}."
-#: plinth/modules/jsxc/__init__.py:36 plinth/modules/jsxc/manifest.py:25
-msgid "JSXC"
-msgstr "JSXC"
-
-#: plinth/modules/jsxc/__init__.py:40
-msgid "Chat Client"
-msgstr "Chatovací klient"
-
-#: plinth/modules/jsxc/__init__.py:43
+#: plinth/modules/jsxc/__init__.py:22
msgid ""
"JSXC is a web client for XMPP. Typically it is used with an XMPP server "
"running locally."
@@ -2427,20 +2450,20 @@ msgstr ""
"JSXC je webový klient pro XMPP. Typicky je používaný s lokálně provozovaným "
"XMPP serverem."
-#: plinth/modules/jsxc/templates/jsxc_launch.html:140
-#: plinth/templates/base.html:253
+#: plinth/modules/jsxc/__init__.py:40 plinth/modules/jsxc/manifest.py:10
+msgid "JSXC"
+msgstr "JSXC"
+
+#: plinth/modules/jsxc/__init__.py:41
+msgid "Chat Client"
+msgstr "Chatovací klient"
+
+#: plinth/modules/jsxc/templates/jsxc_launch.html:125
+#: plinth/templates/base.html:238
msgid "JavaScript license information"
msgstr "Licenční informace o JavaScriptu"
-#: plinth/modules/letsencrypt/__init__.py:48
-msgid "Let's Encrypt"
-msgstr "Let's Encrypt"
-
-#: plinth/modules/letsencrypt/__init__.py:50
-msgid "Certificates"
-msgstr "Certifikáty"
-
-#: plinth/modules/letsencrypt/__init__.py:54
+#: plinth/modules/letsencrypt/__init__.py:35
#, python-brace-format
msgid ""
"A digital certificate allows users of a web service to verify the identity "
@@ -2455,7 +2478,7 @@ msgstr ""
"dokázáním, že je vlastníkem domény vůči Let's Encrypt, certifikační autoritě "
"(CA)."
-#: plinth/modules/letsencrypt/__init__.py:60
+#: plinth/modules/letsencrypt/__init__.py:41
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 "
@@ -2467,73 +2490,81 @@ msgstr ""
"(ISRG). Před použitím služby si přečtěte Podmínky používání Let's Encrypt."
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:44
+#: plinth/modules/letsencrypt/__init__.py:65
+msgid "Let's Encrypt"
+msgstr "Let's Encrypt"
+
+#: plinth/modules/letsencrypt/__init__.py:66
+msgid "Certificates"
+msgstr "Certifikáty"
+
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:29
msgid "Domain"
msgstr "Doména"
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:45
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:30
msgid "Certificate Status"
msgstr "Stav certifikátu"
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:46
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:31
msgid "Website Security"
msgstr "Zabezpečení webové stránky"
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:47
-#: plinth/modules/storage/templates/storage.html:45
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:32
+#: plinth/modules/storage/templates/storage.html:30
msgid "Actions"
msgstr "Akce"
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:57
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:42
#, python-format
msgid "Valid, expires on %(expiry_date)s"
msgstr "Platné, končí %(expiry_date)s"
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:64
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:49
msgid "Revoked"
msgstr "Platnost odvolána"
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:68
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:53
#, python-format
msgid "Expired on %(expiry_date)s"
msgstr "Platnost skončila %(expiry_date)s"
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:72
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:57
msgid "Invalid test certificate"
msgstr "Neplatný testovací certifikát"
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:76
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:61
#, python-format
msgid "Invalid (%(reason)s)"
msgstr "Neplatné (%(reason)s)"
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:83
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:68
msgid "No certificate"
msgstr "Žádný certifikát"
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:100
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:85
msgid "Re-obtain"
msgstr "Získat znovu"
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:106
-#: plinth/modules/networks/templates/connection_show.html:63
-#: plinth/modules/samba/templates/samba.html:142
-#: plinth/modules/wireguard/templates/wireguard_delete_client.html:39
-#: plinth/modules/wireguard/templates/wireguard_delete_server.html:48
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:88
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:89
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:91
+#: plinth/modules/networks/templates/connection_show.html:48
+#: plinth/modules/samba/templates/samba.html:127
+#: plinth/modules/wireguard/templates/wireguard_delete_client.html:24
+#: plinth/modules/wireguard/templates/wireguard_delete_server.html:33
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:73
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:74
msgid "Delete"
msgstr "Smazat"
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:113
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:98
msgid "Revoke"
msgstr "Odvolat platnost"
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:121
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:106
msgid "Obtain"
msgstr "Získat"
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:132
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:117
#, python-format
msgid ""
"No domains have been configured. Configure "
@@ -2542,7 +2573,7 @@ msgstr ""
"Nejsou nastavené žádné domény. Nastavte je, "
"aby bylo možné pro ně získat certifikát."
-#: plinth/modules/letsencrypt/views.py:58
+#: plinth/modules/letsencrypt/views.py:41
#, python-brace-format
msgid ""
"Certificate successfully revoked for domain {domain}.This may take a few "
@@ -2551,38 +2582,34 @@ 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:64
+#: plinth/modules/letsencrypt/views.py:47
#, 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:60
#: plinth/modules/letsencrypt/views.py:77
-#: plinth/modules/letsencrypt/views.py:94
#, python-brace-format
msgid "Certificate successfully obtained for domain {domain}"
msgstr "Úspěšně obdržen certifikát pro doménu {domain}"
+#: plinth/modules/letsencrypt/views.py:65
#: plinth/modules/letsencrypt/views.py:82
-#: plinth/modules/letsencrypt/views.py:99
#, 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:111
+#: plinth/modules/letsencrypt/views.py:94
#, 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:116
+#: plinth/modules/letsencrypt/views.py:99
#, 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:48
-msgid "Matrix Synapse"
-msgstr "Matrix Synapse"
-
-#: plinth/modules/matrixsynapse/__init__.py:55
+#: plinth/modules/matrixsynapse/__init__.py:34
msgid ""
"Matrix is an new "
"ecosystem for open, federated instant messaging and VoIP. Synapse is a "
@@ -2599,7 +2626,7 @@ msgstr ""
"čísla. Díky federování mohou uživatelé na daném Matrix serveru komunikovat "
"s uživateli všech ostatních Matrix serverů."
-#: plinth/modules/matrixsynapse/__init__.py:62
+#: plinth/modules/matrixsynapse/__init__.py:41
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:29
+#: plinth/modules/matrixsynapse/__init__.py:66
+msgid "Matrix Synapse"
+msgstr "Matrix Synapse"
+
+#: plinth/modules/matrixsynapse/forms.py:14
msgid "Enable Public Registration"
msgstr "Umožnit registraci veřejnosti"
-#: plinth/modules/matrixsynapse/forms.py:30
+#: plinth/modules/matrixsynapse/forms.py:15
msgid ""
"Enabling public registration means that anyone on the Internet can register "
"a new account on your Matrix server. Disable this if you only want existing "
@@ -2623,11 +2654,11 @@ msgstr ""
"vytvořit účet na vašem Matrix serveru. Pokud chcete, aby službu mohli "
"využívat pouze existující uživatelé systému, tuto funkci vypněte."
-#: plinth/modules/matrixsynapse/manifest.py:28
+#: plinth/modules/matrixsynapse/manifest.py:13
msgid "Riot"
msgstr "Riot"
-#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:33
+#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:18
msgid ""
"Matrix service needs to be configured for a domain. Users on other Matrix "
"servers will be able to reach users on this server using this domain name. "
@@ -2638,7 +2669,7 @@ msgstr ""
"doménového názvu. Matrix identifikátory uživatelů budou mít podobu "
"@uziv_jmeno:domenovy_nazev."
-#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:41
+#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:26
msgid ""
"\n"
" Warning! Changing the domain name after the initial\n"
@@ -2651,7 +2682,7 @@ msgstr ""
" není v tuto chvíli podporována.\n"
" "
-#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:50
+#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:35
#, python-format
msgid ""
"No domain(s) are available. Configure at "
@@ -2660,7 +2691,7 @@ msgstr ""
"Nejsou k dispozici žádné domény. Abyste mohli používat Matrix Synapse nastavte alespoň jednu doménu."
-#: plinth/modules/matrixsynapse/templates/matrix-synapse.html:29
+#: plinth/modules/matrixsynapse/templates/matrix-synapse.html:14
#, python-format
msgid ""
"The Matrix server domain is set to %(domain_name)s. User IDs will "
@@ -2672,7 +2703,7 @@ msgstr ""
"%(domain_name)s. Změna doménového názvu po úvodním nastavení není v "
"současnosti podporována."
-#: plinth/modules/matrixsynapse/templates/matrix-synapse.html:36
+#: plinth/modules/matrixsynapse/templates/matrix-synapse.html:21
msgid ""
"New users can be registered from any client if public registration is "
"enabled."
@@ -2680,7 +2711,7 @@ msgstr ""
"Když je zapnutá veřejná registrace, noví uživatelé mohou být registrování z "
"libovolného klienta."
-#: plinth/modules/matrixsynapse/templates/matrix-synapse.html:45
+#: plinth/modules/matrixsynapse/templates/matrix-synapse.html:30
#, fuzzy, python-format
#| msgid ""
#| "\n"
@@ -2703,24 +2734,15 @@ msgstr ""
" Encrypt a získejte takový.\n"
" "
-#: plinth/modules/matrixsynapse/views.py:121
+#: plinth/modules/matrixsynapse/views.py:98
msgid "Public registration enabled"
msgstr "Registrace pro veřejnost otevřena"
-#: plinth/modules/matrixsynapse/views.py:126
+#: plinth/modules/matrixsynapse/views.py:103
msgid "Public registration disabled"
msgstr "Registrace pro veřejnost zavřena"
-#: plinth/modules/mediawiki/__init__.py:40
-#: plinth/modules/mediawiki/manifest.py:24
-msgid "MediaWiki"
-msgstr "MediaWiki"
-
-#: plinth/modules/mediawiki/__init__.py:44 plinth/templates/index.html:139
-msgid "Wiki"
-msgstr "Wiki"
-
-#: plinth/modules/mediawiki/__init__.py:47
+#: plinth/modules/mediawiki/__init__.py:26
msgid ""
"MediaWiki is the wiki engine that powers Wikipedia and other WikiMedia "
"projects. A wiki engine is a program for creating a collaboratively edited "
@@ -2732,7 +2754,7 @@ msgstr ""
"skupině. Mediawiki je možné použít pro hostování wiki webových stránek, "
"poznámek nebo pro spolupráci s přáteli na projektech."
-#: plinth/modules/mediawiki/__init__.py:51
+#: plinth/modules/mediawiki/__init__.py:30
msgid ""
"This MediaWiki instance comes with a randomly generated administrator "
"password. You can set a new password in the \"Configuration\" section and "
@@ -2746,7 +2768,7 @@ msgstr ""
"stránce Special:"
"CreateAccount."
-#: plinth/modules/mediawiki/__init__.py:57
+#: plinth/modules/mediawiki/__init__.py:36
msgid ""
"Anyone with a link to this wiki can read it. Only users that are logged in "
"can make changes to the content."
@@ -2754,11 +2776,20 @@ msgstr ""
"Kdokoli kdo má odkaz na tuto wiki ji může číst. Měnit obsah mohou pouze "
"uživatelé, kteří jsou přihlášení."
-#: plinth/modules/mediawiki/forms.py:42
+#: plinth/modules/mediawiki/__init__.py:54
+#: plinth/modules/mediawiki/manifest.py:9
+msgid "MediaWiki"
+msgstr "MediaWiki"
+
+#: plinth/modules/mediawiki/__init__.py:55 plinth/templates/index.html:124
+msgid "Wiki"
+msgstr "Wiki"
+
+#: plinth/modules/mediawiki/forms.py:27
msgid "Administrator Password"
msgstr "Heslo k účtu správce"
-#: plinth/modules/mediawiki/forms.py:43
+#: plinth/modules/mediawiki/forms.py:28
msgid ""
"Set a new password for MediaWiki's administrator account (admin). Leave this "
"field blank to keep the current password."
@@ -2766,11 +2797,11 @@ msgstr ""
"Nastavte nové heslo pro účet správce (admin) MediaWiki. Pro ponechání "
"stávajícího hesla tuto kolonku nevyplňujte."
-#: plinth/modules/mediawiki/forms.py:48
+#: plinth/modules/mediawiki/forms.py:33
msgid "Enable public registrations"
msgstr "Umožnit registraci veřejnosti"
-#: plinth/modules/mediawiki/forms.py:49
+#: plinth/modules/mediawiki/forms.py:34
msgid ""
"If enabled, anyone on the internet will be able to create an account on your "
"MediaWiki instance."
@@ -2778,11 +2809,11 @@ msgstr ""
"Pokud je zapnuto, kdokoli z Internetu si bude moci vytvořit účet na vaší "
"instanci MediaWiki."
-#: plinth/modules/mediawiki/forms.py:53
+#: plinth/modules/mediawiki/forms.py:38
msgid "Enable private mode"
msgstr "Zapnout soukromý režim"
-#: plinth/modules/mediawiki/forms.py:54
+#: plinth/modules/mediawiki/forms.py:39
msgid ""
"If enabled, access will be restricted. Only people who have accounts can "
"read/write to the wiki. Public registrations will also be disabled."
@@ -2790,54 +2821,45 @@ msgstr ""
"Když je zapnuto, přístup bude omezen. Pouze lidé kteří zde mají uživatelské "
"účty mohou číst/psát do wiki. Registrace veřejnosti jsou také vypnuté."
-#: plinth/modules/mediawiki/forms.py:59
+#: plinth/modules/mediawiki/forms.py:44
#, fuzzy
#| msgid "Default"
msgid "Default Skin"
msgstr "Výchozí"
-#: plinth/modules/mediawiki/forms.py:60
+#: plinth/modules/mediawiki/forms.py:45
msgid ""
"Choose a default skin for your MediaWiki installation. Users have the option "
"to select their preferred skin."
msgstr ""
-#: plinth/modules/mediawiki/views.py:74
+#: plinth/modules/mediawiki/views.py:54
msgid "Password updated"
msgstr "Heslo aktualizováno"
-#: plinth/modules/mediawiki/views.py:93
+#: plinth/modules/mediawiki/views.py:73
msgid "Public registrations enabled"
msgstr "Registrace pro veřejnost otevřené"
-#: plinth/modules/mediawiki/views.py:102
+#: plinth/modules/mediawiki/views.py:82
msgid "Public registrations disabled"
msgstr "Registrace pro veřejnost zavřené"
-#: plinth/modules/mediawiki/views.py:107
+#: plinth/modules/mediawiki/views.py:87
msgid "Private mode enabled"
msgstr "Soukromý režim zapnut"
-#: plinth/modules/mediawiki/views.py:114
+#: plinth/modules/mediawiki/views.py:94
msgid "Private mode disabled"
msgstr "Soukromý režim vypnut"
-#: plinth/modules/mediawiki/views.py:122
+#: plinth/modules/mediawiki/views.py:102
#, fuzzy
#| msgid "Setting unchanged"
msgid "Default skin changed"
msgstr "Nastavení se nezměnila"
-#: plinth/modules/minetest/__init__.py:50
-#: plinth/modules/minetest/manifest.py:25
-msgid "Minetest"
-msgstr "Minetest"
-
-#: plinth/modules/minetest/__init__.py:54
-msgid "Block Sandbox"
-msgstr "Pískoviště s kostkami"
-
-#: plinth/modules/minetest/__init__.py:58
+#: plinth/modules/minetest/__init__.py:37
#, python-brace-format
msgid ""
"Minetest is a multiplayer infinite-world block sandbox. This module enables "
@@ -2850,11 +2872,20 @@ msgstr ""
"serveru je třeba Minetest "
"klient."
-#: plinth/modules/minetest/forms.py:30
+#: plinth/modules/minetest/__init__.py:63
+#: plinth/modules/minetest/manifest.py:10
+msgid "Minetest"
+msgstr "Minetest"
+
+#: plinth/modules/minetest/__init__.py:64
+msgid "Block Sandbox"
+msgstr "Pískoviště s kostkami"
+
+#: plinth/modules/minetest/forms.py:15
msgid "Maximum number of players"
msgstr "Nejvyšší umožněný počet hráčů"
-#: plinth/modules/minetest/forms.py:32
+#: plinth/modules/minetest/forms.py:17
msgid ""
"You can change the maximum number of players playing minetest at a single "
"instance of time."
@@ -2862,11 +2893,11 @@ msgstr ""
"Je možné změnit kolik hráčů naráz může hrát minetest na jedné instanci "
"serveru."
-#: plinth/modules/minetest/forms.py:36
+#: plinth/modules/minetest/forms.py:21
msgid "Enable creative mode"
msgstr "Zapnout tvořivý režim"
-#: plinth/modules/minetest/forms.py:37
+#: plinth/modules/minetest/forms.py:22
msgid ""
"Creative mode changes the rules of the game to make it more suitable for "
"creative gameplay, rather than challenging \"survival\" gameplay."
@@ -2874,53 +2905,49 @@ msgstr ""
"Tvořivý režim změní pravidla hry tak, aby byla použitelnější pro tvořivou "
"hru, namísto náročné hry na přežití."
-#: plinth/modules/minetest/forms.py:42
+#: plinth/modules/minetest/forms.py:27
msgid "Enable PVP"
msgstr "Zapnout PVP"
-#: plinth/modules/minetest/forms.py:43
+#: plinth/modules/minetest/forms.py:28
msgid "Enabling Player Vs Player will allow players to damage other players."
msgstr "Zapnutím režimu Hráč proti hráči umožní hráčům ubližovat ostatním."
-#: plinth/modules/minetest/forms.py:47
+#: plinth/modules/minetest/forms.py:32
msgid "Enable damage"
msgstr "Zapnout poškozování"
-#: plinth/modules/minetest/forms.py:48
+#: plinth/modules/minetest/forms.py:33
msgid "When disabled, players cannot die or receive damage of any kind."
msgstr "Pokud je vypnuto, postavy hráčů nemohou zemřít nebo se zranit."
-#: plinth/modules/minetest/templates/minetest.html:33
-#: plinth/modules/networks/forms.py:66 plinth/modules/networks/forms.py:97
+#: plinth/modules/minetest/templates/minetest.html:18
+#: plinth/modules/networks/forms.py:49 plinth/modules/networks/forms.py:79
msgid "Address"
msgstr "Adresa"
-#: plinth/modules/minetest/templates/minetest.html:34
-#: plinth/modules/tor/templates/tor.html:96
+#: plinth/modules/minetest/templates/minetest.html:19
+#: plinth/modules/tor/templates/tor.html:81
msgid "Port"
msgstr "Port"
-#: plinth/modules/minetest/views.py:70
+#: plinth/modules/minetest/views.py:50
msgid "Maximum players configuration updated"
msgstr "Nastavení nejvyššího umožněného počtu hráčů aktualizováno"
-#: plinth/modules/minetest/views.py:77
+#: plinth/modules/minetest/views.py:57
msgid "Creative mode configuration updated"
msgstr "Nastavení tvořivého režimu aktualizována"
-#: plinth/modules/minetest/views.py:83
+#: plinth/modules/minetest/views.py:63
msgid "PVP configuration updated"
msgstr "Nastavení PVP aktualizováno"
-#: plinth/modules/minetest/views.py:89
+#: plinth/modules/minetest/views.py:69
msgid "Damage configuration updated"
msgstr "Nastavení poškozování aktualizováno"
-#: plinth/modules/minidlna/__init__.py:41
-msgid "Simple Media Server"
-msgstr ""
-
-#: plinth/modules/minidlna/__init__.py:44
+#: plinth/modules/minidlna/__init__.py:23
msgid ""
"MiniDLNA is a simple media server software, with the aim of being fully "
"compliant with DLNA/UPnP-AV clients. The MiniDNLA daemon serves media files "
@@ -2931,15 +2958,19 @@ msgid ""
"Kodi."
msgstr ""
-#: plinth/modules/minidlna/__init__.py:56
+#: plinth/modules/minidlna/__init__.py:33
msgid "Media streaming server"
msgstr ""
-#: plinth/modules/minidlna/forms.py:30
+#: plinth/modules/minidlna/__init__.py:47
+msgid "Simple Media Server"
+msgstr ""
+
+#: plinth/modules/minidlna/forms.py:15
msgid "Media Files Directory"
msgstr ""
-#: plinth/modules/minidlna/forms.py:31
+#: plinth/modules/minidlna/forms.py:16
msgid ""
"Directory that MiniDLNA Server will read for content. All sub-directories of "
"this will be also scanned for media files. If you change the default ensure "
@@ -2947,40 +2978,31 @@ msgid ""
"user. Any user media directories (\"/home/username/\") will usually work."
msgstr ""
-#: plinth/modules/minidlna/manifest.py:25
+#: plinth/modules/minidlna/manifest.py:10
msgid "vlc"
msgstr ""
-#: plinth/modules/minidlna/manifest.py:64
+#: plinth/modules/minidlna/manifest.py:49
msgid "kodi"
msgstr ""
-#: plinth/modules/minidlna/manifest.py:103
+#: plinth/modules/minidlna/manifest.py:88
msgid "yaacc"
msgstr ""
-#: plinth/modules/minidlna/manifest.py:114
+#: plinth/modules/minidlna/manifest.py:99
msgid "totem"
msgstr ""
-#: plinth/modules/minidlna/views.py:57
+#: plinth/modules/minidlna/views.py:37
msgid "Specified directory does not exist."
msgstr ""
-#: plinth/modules/minidlna/views.py:62
+#: plinth/modules/minidlna/views.py:42
msgid "Updated media directory"
msgstr ""
-#: plinth/modules/mldonkey/__init__.py:40
-#: plinth/modules/mldonkey/manifest.py:27
-msgid "MLDonkey"
-msgstr "MLDonkey"
-
-#: plinth/modules/mldonkey/__init__.py:44
-msgid "Peer-to-peer File Sharing"
-msgstr "Pee-to-peer sdílení souborů"
-
-#: plinth/modules/mldonkey/__init__.py:47
+#: plinth/modules/mldonkey/__init__.py:26
msgid ""
"MLDonkey is a peer-to-peer file sharing application used to exchange large "
"files. It can participate in multiple peer-to-peer networks including "
@@ -2990,7 +3012,7 @@ msgstr ""
"velkých souborů. Může se účastnit vícero peer-to-peer sítí, včetně eDonkey, "
"Kademlia, Overnet, BitTorrent a DirectConnect."
-#: plinth/modules/mldonkey/__init__.py:50
+#: plinth/modules/mldonkey/__init__.py:29
msgid ""
"Users belonging to admin and ed2k group can control it through the web "
"interface. Users in the admin group can also control it through any of the "
@@ -3001,31 +3023,35 @@ msgstr ""
"ovládat prostřednictvím libovolné mobilní či desktopové nadstavby nebo přes "
"rozhraní telnet. Viz příručka."
-#: plinth/modules/mldonkey/__init__.py:55
+#: plinth/modules/mldonkey/__init__.py:34
#, python-brace-format
msgid ""
"On {box_name}, downloaded files can be found in /var/lib/mldonkey/ directory."
msgstr ""
"Na {box_name}, stažené soubory se nacházejí ve složce /var/lib/mldonkey/ ."
-#: plinth/modules/mldonkey/__init__.py:63
+#: plinth/modules/mldonkey/__init__.py:40
msgid "Download files using eDonkey applications"
msgstr "Stahovat soubory pomocí eDonkey aplikací"
-#: plinth/modules/mldonkey/manifest.py:34
+#: plinth/modules/mldonkey/__init__.py:54
+#: plinth/modules/mldonkey/manifest.py:12
+msgid "MLDonkey"
+msgstr "MLDonkey"
+
+#: plinth/modules/mldonkey/__init__.py:56
+msgid "Peer-to-peer File Sharing"
+msgstr "Pee-to-peer sdílení souborů"
+
+#: plinth/modules/mldonkey/manifest.py:19
msgid "KMLDonkey"
msgstr "KMLDonkey"
-#: plinth/modules/mldonkey/manifest.py:46
+#: plinth/modules/mldonkey/manifest.py:31
msgid "AMLDonkey"
msgstr "AMLDonkey"
-#: plinth/modules/monkeysphere/__init__.py:32
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:26
-msgid "Monkeysphere"
-msgstr "Monkeysphere"
-
-#: plinth/modules/monkeysphere/__init__.py:35
+#: plinth/modules/monkeysphere/__init__.py:18
msgid ""
"With Monkeysphere, an OpenPGP key can be generated for each configured "
"domain serving SSH. The OpenPGP public key can then be uploaded to the "
@@ -3045,7 +3071,7 @@ msgstr ""
"naleznete v SSH dokumentaci k Monkeysphere."
-#: plinth/modules/monkeysphere/__init__.py:43
+#: plinth/modules/monkeysphere/__init__.py:26
msgid ""
"Monkeysphere can also generate an OpenPGP key for each Secure Web Server "
"(HTTPS) certificate installed on this machine. The OpenPGP public key can "
@@ -3063,95 +3089,100 @@ msgstr ""
"nainstalovat nějaký software, který je k dispozici na webové stránce Monkeysphere."
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:60
+#: plinth/modules/monkeysphere/__init__.py:50
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:11
+msgid "Monkeysphere"
+msgstr "Monkeysphere"
+
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:45
msgid "Publishing key to keyserver..."
msgstr "Zveřejňování klíče na serveru s klíči…"
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:67
-#: plinth/modules/users/templates/users_delete.html:41
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:52
+#: plinth/modules/users/templates/users_delete.html:26
msgid "Cancel"
msgstr "Storno"
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:75
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:55
-#: plinth/modules/tor/templates/tor.html:95
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:60
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:40
+#: plinth/modules/tor/templates/tor.html:80
msgid "Service"
msgstr "Služba"
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:76
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:61
msgid "Domains"
msgstr "Domény"
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:77
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:31
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:62
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:16
msgid "OpenPGP Fingerprint"
msgstr "OpenPGP otisk"
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:86
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:58
-#: plinth/modules/names/components.py:39
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:71
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:43
+#: plinth/modules/names/components.py:24
msgid "Secure Shell"
msgstr "Zabezpečený shell"
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:90
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:62
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:75
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:47
msgid "Other"
msgstr "Ostatní"
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:127
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:112
#, python-format
msgid "Show details for key %(fingerprint)s"
msgstr "Zobrazit podrobnosti klíče %(fingerprint)s"
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:133
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:118
msgid "-"
msgstr "-"
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:143
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:128
msgid "Import Key"
msgstr "Importovat klíč"
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:152
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:137
msgid "Publish Key"
msgstr "Zveřejnit klíč"
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:161
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:146
msgid "Add Domains"
msgstr "Přidat domény"
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:35
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:20
msgid "OpenPGP User IDs"
msgstr "OpenPGP identifikátory uživatele"
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:39
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:24
msgid "Key Import Date"
msgstr "Datum importu klíče"
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:43
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:28
msgid "SSH Key Type"
msgstr "Typ SSH klíče"
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:47
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:32
msgid "SSH Key Size"
msgstr "Délka SSH klíče"
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:51
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:36
msgid "SSH Fingerprint"
msgstr "SSH otisk"
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:67
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:52
msgid "Key File"
msgstr "Soubor s klíčem"
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:71
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:56
msgid "Available Domains"
msgstr "Domény k dispozici"
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:75
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:60
msgid "Added Domains"
msgstr "Přidané domény"
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:82
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:67
msgid ""
"After this key is published to the keyservers, it can be signed using GnuPG with the following commands:"
@@ -3160,43 +3191,35 @@ msgstr ""
"nástroje GnuPG a to následujícími "
"příkazy:"
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:88
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:73
msgid "Download the key"
msgstr "Stáhnout si klíč"
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:91
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:76
msgid "Sign the key"
msgstr "Podepsat klíč"
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:94
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:79
msgid "Send the key back to the keyservers"
msgstr "Poslat klíč zpět na servery s klíči"
-#: plinth/modules/monkeysphere/views.py:60
+#: plinth/modules/monkeysphere/views.py:43
msgid "Imported key."
msgstr "Importovaný klíč."
-#: plinth/modules/monkeysphere/views.py:96
+#: plinth/modules/monkeysphere/views.py:79
msgid "Cancelled key publishing."
msgstr "Zveřejnění klíče zrušeno."
-#: plinth/modules/monkeysphere/views.py:147
+#: plinth/modules/monkeysphere/views.py:130
msgid "Published key to keyserver."
msgstr "Klíč zveřejněn na server s klíči."
-#: plinth/modules/monkeysphere/views.py:149
+#: plinth/modules/monkeysphere/views.py:132
msgid "Error occurred while publishing key."
msgstr "Při zveřejňování klíče došlo k chybě."
-#: plinth/modules/mumble/__init__.py:33 plinth/modules/mumble/manifest.py:27
-msgid "Mumble"
-msgstr "Mumble"
-
-#: plinth/modules/mumble/__init__.py:37
-msgid "Voice Chat"
-msgstr "Hlasový chat"
-
-#: plinth/modules/mumble/__init__.py:44
+#: plinth/modules/mumble/__init__.py:23
msgid ""
"Mumble is an open source, low-latency, encrypted, high quality voice chat "
"software."
@@ -3204,7 +3227,7 @@ msgstr ""
"Mumble je open source software pro šifrovanou, vysoce kvalitní hlasovou "
"komunikaci s nízkou prodlevou."
-#: plinth/modules/mumble/__init__.py:46
+#: plinth/modules/mumble/__init__.py:25
msgid ""
"You can connect to your Mumble server on the regular Mumble port 64738. Clients to connect to Mumble from your "
@@ -3214,37 +3237,41 @@ msgstr ""
"dispozici jsou klienti pro připojení z "
"desktopu a Android zařízení."
-#: plinth/modules/mumble/forms.py:31
+#: plinth/modules/mumble/__init__.py:49 plinth/modules/mumble/manifest.py:12
+msgid "Mumble"
+msgstr "Mumble"
+
+#: plinth/modules/mumble/__init__.py:50
+msgid "Voice Chat"
+msgstr "Hlasový chat"
+
+#: plinth/modules/mumble/forms.py:16
#, fuzzy
#| msgid "SSH server password"
msgid "Set SuperUser Password"
msgstr "Heslo SSH serveru"
-#: plinth/modules/mumble/forms.py:34
+#: plinth/modules/mumble/forms.py:19
msgid ""
"Optional. Leave this field blank to keep the current password. SuperUser "
"password can be used to manage permissions in Mumble."
msgstr ""
-#: plinth/modules/mumble/manifest.py:52
+#: plinth/modules/mumble/manifest.py:37
msgid "Plumble"
msgstr "Plumble"
-#: plinth/modules/mumble/manifest.py:66
+#: plinth/modules/mumble/manifest.py:51
msgid "Mumblefly"
msgstr "Mumblefly"
-#: plinth/modules/mumble/views.py:50
+#: plinth/modules/mumble/views.py:29
#, fuzzy
#| msgid "Password changed successfully."
msgid "SuperUser password successfully updated."
msgstr "Heslo úspěšně změněno."
-#: plinth/modules/names/__init__.py:37
-msgid "Name Services"
-msgstr "Jmenné služby"
-
-#: plinth/modules/names/__init__.py:45
+#: plinth/modules/names/__init__.py:26
#, fuzzy, python-brace-format
#| msgid ""
#| "Name Services provides an overview of the ways {box_name} can be reached "
@@ -3263,19 +3290,19 @@ msgstr ""
"typ názvu je zobrazeno, zda je pro příchozí spojení prostřednictvím daného "
"názvu zapnutá či vypnutá služba HTTP, HTTPS a SSH."
-#: plinth/modules/names/components.py:27
+#: plinth/modules/names/__init__.py:46
+msgid "Name Services"
+msgstr "Jmenné služby"
+
+#: plinth/modules/names/components.py:12
msgid "All"
msgstr "Vše"
-#: plinth/modules/names/components.py:31 plinth/modules/names/components.py:35
+#: plinth/modules/names/components.py:16 plinth/modules/names/components.py:20
msgid "All web apps"
msgstr "Všechny webové aplikace"
-#: plinth/modules/networks/__init__.py:42
-msgid "Networks"
-msgstr "Sítě"
-
-#: plinth/modules/networks/__init__.py:45
+#: plinth/modules/networks/__init__.py:35
msgid ""
"Configure network devices. Connect to the Internet via Ethernet, Wi-Fi or "
"PPPoE. Share that connection with other devices on the network."
@@ -3283,40 +3310,44 @@ msgstr ""
"Nastavit síťová zařízení. Připojit k Internetu přes ethernet, WiFi nebo "
"PPPoE. Sdílet toto připojení s ostatními zařízeními na síti."
-#: plinth/modules/networks/__init__.py:47
+#: plinth/modules/networks/__init__.py:37
msgid ""
"Devices administered through other methods may not be available for "
"configuration here."
msgstr ""
-#: plinth/modules/networks/__init__.py:156
+#: plinth/modules/networks/__init__.py:58
+msgid "Networks"
+msgstr "Sítě"
+
+#: plinth/modules/networks/__init__.py:151
#, python-brace-format
msgid "Using DNSSEC on IPv{kind}"
msgstr "S použitím DNSSEC na IPv{kind}"
-#: plinth/modules/networks/forms.py:32
+#: plinth/modules/networks/forms.py:16
msgid "Connection Type"
msgstr "Typ připojení"
-#: plinth/modules/networks/forms.py:44
+#: plinth/modules/networks/forms.py:28
msgid "Connection Name"
msgstr "Název připojení"
-#: plinth/modules/networks/forms.py:46
+#: plinth/modules/networks/forms.py:30
#, fuzzy
#| msgid "Interface"
msgid "Network Interface"
msgstr "Rozhraní"
-#: plinth/modules/networks/forms.py:47
+#: plinth/modules/networks/forms.py:31
msgid "The network device that this connection should be bound to."
msgstr "Síťové zařízení ke kterému má toto spojení být přidruženo."
-#: plinth/modules/networks/forms.py:50
+#: plinth/modules/networks/forms.py:34
msgid "Firewall Zone"
msgstr "Zóna brány firewall"
-#: plinth/modules/networks/forms.py:51
+#: plinth/modules/networks/forms.py:35
msgid ""
"The firewall zone will control which services are available over this "
"interfaces. Select Internal only for trusted networks."
@@ -3324,21 +3355,21 @@ msgstr ""
"Zóna brány firewall řídí které služby jsou přes tato rozhraní dostupné. Jako "
"Vnitřní vyberte pouze sítě, kterým důvěřujete."
-#: plinth/modules/networks/forms.py:54
-#: plinth/modules/networks/templates/connections_diagram.html:78
+#: plinth/modules/networks/forms.py:38
+#: plinth/modules/networks/templates/connections_diagram.html:63
msgid "External"
msgstr "Vnější"
-#: plinth/modules/networks/forms.py:54
-#: plinth/modules/networks/templates/connections_diagram.html:107
+#: plinth/modules/networks/forms.py:38
+#: plinth/modules/networks/templates/connections_diagram.html:92
msgid "Internal"
msgstr "Vnitřní"
-#: plinth/modules/networks/forms.py:56
+#: plinth/modules/networks/forms.py:40
msgid "IPv4 Addressing Method"
msgstr "Způsob IPv4 adresování"
-#: plinth/modules/networks/forms.py:58
+#: plinth/modules/networks/forms.py:41
#, python-brace-format
msgid ""
"\"Automatic\" method will make {box_name} acquire configuration from this "
@@ -3350,19 +3381,19 @@ msgstr ""
"bude vystupovat jako směrovač, poskytovat nastavení klientům na této síti a "
"sdílet jim připojení k Internetu."
-#: plinth/modules/networks/forms.py:63
+#: plinth/modules/networks/forms.py:46
msgid "Automatic (DHCP)"
msgstr "Automaticky (DHCP)"
-#: plinth/modules/networks/forms.py:63
+#: plinth/modules/networks/forms.py:46
msgid "Shared"
msgstr "Sdílené"
-#: plinth/modules/networks/forms.py:69
+#: plinth/modules/networks/forms.py:52
msgid "Netmask"
msgstr "Síťová maska"
-#: plinth/modules/networks/forms.py:70
+#: plinth/modules/networks/forms.py:53
msgid ""
"Optional value. If left blank, a default netmask based on the address will "
"be used."
@@ -3370,21 +3401,21 @@ msgstr ""
"Volitelná hodnota. Pokud není vyplněno, bude použita výchozí maska sítě dané "
"třídy IP adresy."
-#: plinth/modules/networks/forms.py:74 plinth/modules/networks/forms.py:104
-#: plinth/modules/networks/templates/connection_show.html:202
-#: plinth/modules/networks/templates/connection_show.html:241
+#: plinth/modules/networks/forms.py:57 plinth/modules/networks/forms.py:86
+#: plinth/modules/networks/templates/connection_show.html:187
+#: plinth/modules/networks/templates/connection_show.html:226
msgid "Gateway"
msgstr "Brána"
-#: plinth/modules/networks/forms.py:74 plinth/modules/networks/forms.py:104
+#: plinth/modules/networks/forms.py:57 plinth/modules/networks/forms.py:86
msgid "Optional value."
msgstr "Volitelná hodnota."
-#: plinth/modules/networks/forms.py:77 plinth/modules/networks/forms.py:107
+#: plinth/modules/networks/forms.py:60 plinth/modules/networks/forms.py:89
msgid "DNS Server"
msgstr "DNS server"
-#: plinth/modules/networks/forms.py:78
+#: plinth/modules/networks/forms.py:61
msgid ""
"Optional value. If this value is given and IPv4 addressing method is "
"\"Automatic\", the DNS Servers provided by a DHCP server will be ignored."
@@ -3392,11 +3423,11 @@ msgstr ""
"Nemusí být vyplněné. Pokud ale je a metoda IPv4 adresování je „Automaticky“, "
"budou ignorovány DNS servery poskytnuté DHCP serverem."
-#: plinth/modules/networks/forms.py:83 plinth/modules/networks/forms.py:113
+#: plinth/modules/networks/forms.py:66 plinth/modules/networks/forms.py:95
msgid "Second DNS Server"
msgstr "Pomocný DNS server"
-#: plinth/modules/networks/forms.py:84
+#: plinth/modules/networks/forms.py:67
msgid ""
"Optional value. If this value is given and IPv4 Addressing Method is "
"\"Automatic\", the DNS Servers provided by a DHCP server will be ignored."
@@ -3404,11 +3435,11 @@ msgstr ""
"Nemusí být vyplněné. Pokud ale je a metoda IPv4 adresování je „Automaticky“, "
"budou ignorovány DNS servery poskytnuté DHCP serverem."
-#: plinth/modules/networks/forms.py:89
+#: plinth/modules/networks/forms.py:72
msgid "IPv6 Addressing Method"
msgstr "Způsob IPv6 adresování"
-#: plinth/modules/networks/forms.py:91
+#: plinth/modules/networks/forms.py:73
#, python-brace-format
msgid ""
"\"Automatic\" methods will make {box_name} acquire configuration from this "
@@ -3417,27 +3448,27 @@ msgstr ""
"„Automatické“ metody způsobí, že {box_name} získá nastavení z této sítě a "
"bude na ní klientem."
-#: plinth/modules/networks/forms.py:94 plinth/modules/networks/forms.py:259
+#: plinth/modules/networks/forms.py:76 plinth/modules/networks/forms.py:241
msgid "Automatic"
msgstr "Automaticky"
-#: plinth/modules/networks/forms.py:94
+#: plinth/modules/networks/forms.py:76
msgid "Automatic, DHCP only"
msgstr "Automaticky, pouze DHCP"
-#: plinth/modules/networks/forms.py:95
+#: plinth/modules/networks/forms.py:77
msgid "Ignore"
msgstr "Ignorovat"
-#: plinth/modules/networks/forms.py:99
+#: plinth/modules/networks/forms.py:81
msgid "Prefix"
msgstr "Předpona"
-#: plinth/modules/networks/forms.py:100
+#: plinth/modules/networks/forms.py:82
msgid "Value between 1 and 128."
msgstr "Hodnota z rozmezí 1 až 128."
-#: plinth/modules/networks/forms.py:108
+#: plinth/modules/networks/forms.py:90
msgid ""
"Optional value. If this value is given and IPv6 addressing method is "
"\"Automatic\", the DNS Servers provided by a DHCP server will be ignored."
@@ -3445,7 +3476,7 @@ msgstr ""
"Nemusí být vyplněné. Pokud ale je a metoda získání IPv6 adresy je "
"„Automaticky“, budou ignorovány DNS servery poskytnuté DHCP serverem."
-#: plinth/modules/networks/forms.py:114
+#: plinth/modules/networks/forms.py:96
msgid ""
"Optional value. If this value is given and IPv6 Addressing Method is "
"\"Automatic\", the DNS Servers provided by a DHCP server will be ignored."
@@ -3453,54 +3484,54 @@ msgstr ""
"Nemusí být vyplněné. Pokud ale je a metoda získání IPv6 adresy je "
"„Automaticky“, budou ignorovány DNS servery poskytnuté DHCP serverem."
-#: plinth/modules/networks/forms.py:127
+#: plinth/modules/networks/forms.py:109
msgid "-- select --"
msgstr "-- vybrat --"
-#: plinth/modules/networks/forms.py:252
-#: plinth/modules/networks/templates/connection_show.html:144
+#: plinth/modules/networks/forms.py:234
+#: plinth/modules/networks/templates/connection_show.html:129
msgid "SSID"
msgstr "SSID"
-#: plinth/modules/networks/forms.py:253
+#: plinth/modules/networks/forms.py:235
msgid "The visible name of the network."
msgstr "Viditelný název sítě."
-#: plinth/modules/networks/forms.py:255
-#: plinth/modules/networks/templates/connection_show.html:157
+#: plinth/modules/networks/forms.py:237
+#: plinth/modules/networks/templates/connection_show.html:142
msgid "Mode"
msgstr "Režim"
-#: plinth/modules/networks/forms.py:255
+#: plinth/modules/networks/forms.py:237
msgid "Infrastructure"
msgstr "Infrastrukturní"
-#: plinth/modules/networks/forms.py:256
+#: plinth/modules/networks/forms.py:238
msgid "Access Point"
msgstr "Přístupový bod"
-#: plinth/modules/networks/forms.py:257
+#: plinth/modules/networks/forms.py:239
msgid "Ad-hoc"
msgstr "Dočasný"
-#: plinth/modules/networks/forms.py:259
+#: plinth/modules/networks/forms.py:241
msgid "Frequency Band"
msgstr "Frekvenční pásmo"
-#: plinth/modules/networks/forms.py:260
+#: plinth/modules/networks/forms.py:242
msgid "A (5 GHz)"
msgstr "A (5 GHz)"
-#: plinth/modules/networks/forms.py:261
+#: plinth/modules/networks/forms.py:243
msgid "B/G (2.4 GHz)"
msgstr "B/G (2,4 GHz)"
-#: plinth/modules/networks/forms.py:263
-#: plinth/modules/networks/templates/connection_show.html:173
+#: plinth/modules/networks/forms.py:245
+#: plinth/modules/networks/templates/connection_show.html:158
msgid "Channel"
msgstr "Kanál"
-#: plinth/modules/networks/forms.py:264
+#: plinth/modules/networks/forms.py:246
msgid ""
"Optional value. Wireless channel in the selected frequency band to restrict "
"to. Blank or 0 value means automatic selection."
@@ -3508,11 +3539,11 @@ msgstr ""
"Nemusí být vyplněné. Bezdrátový kanál ve vybraném frekvenčním pásmu na který "
"omezit. Nevyplněno nebo 0 (nula) znamená automatický výběr."
-#: plinth/modules/networks/forms.py:269
+#: plinth/modules/networks/forms.py:251
msgid "BSSID"
msgstr "BSSID"
-#: plinth/modules/networks/forms.py:270
+#: plinth/modules/networks/forms.py:252
msgid ""
"Optional value. Unique identifier for the access point. When connecting to "
"an access point, connect only if the BSSID of the access point matches the "
@@ -3522,11 +3553,11 @@ msgstr ""
"připojování k přístupovému bodu, připojit pouze pokud BSSID přístupového "
"bodu odpovídá tomu zadanému. Příklad: 00:11:22:aa:bb:cc."
-#: plinth/modules/networks/forms.py:276
+#: plinth/modules/networks/forms.py:258
msgid "Authentication Mode"
msgstr "Režim ověřování"
-#: plinth/modules/networks/forms.py:277
+#: plinth/modules/networks/forms.py:259
msgid ""
"Select WPA if the wireless network is secured and requires clients to have "
"the password to connect."
@@ -3534,34 +3565,74 @@ msgstr ""
"Pokud je bezdrátová síť zabezpečená a pro připojení vyžaduje heslo, vyberte "
"WPA."
-#: plinth/modules/networks/forms.py:279
+#: plinth/modules/networks/forms.py:261
msgid "WPA"
msgstr "WPA"
-#: plinth/modules/networks/forms.py:279
+#: plinth/modules/networks/forms.py:261
msgid "Open"
msgstr "Otevřené"
+#: plinth/modules/networks/forms.py:297
+msgid "Choose your internet connection type"
+msgstr ""
+
+#: plinth/modules/networks/forms.py:301
+msgid ""
+"I have a public IP address that may change over time
Your PageKite frontend server may not support all the "
"protocol/port combinations that you are able to define here. For example, "
@@ -4337,11 +4451,11 @@ msgstr ""
"kombinace protokol/port, které zde můžete určit. Například o HTTPS na portu "
"jiném, než 443 je známo, že způsobuje problémy."
-#: plinth/modules/pagekite/templates/pagekite_firstboot.html:26
+#: plinth/modules/pagekite/templates/pagekite_firstboot.html:11
msgid "Setup a freedombox.me subdomain with your voucher"
msgstr "Nastavit podřízenou doménu freedombox.me pomocí vašeho kuponu"
-#: plinth/modules/pagekite/templates/pagekite_firstboot.html:30
+#: plinth/modules/pagekite/templates/pagekite_firstboot.html:15
#, python-format
msgid ""
"Skip this step if you do not have a "
@@ -4352,7 +4466,7 @@ msgstr ""
"kupon nebo chcete nastavit PageKite později s jinou doménou nebo "
"přihlašovacími údaji."
-#: plinth/modules/pagekite/templates/pagekite_firstboot.html:38
+#: plinth/modules/pagekite/templates/pagekite_firstboot.html:23
msgid ""
"You can use an already redeemed voucher but it will only work with the "
"initially registered subdomain."
@@ -4360,51 +4474,51 @@ msgstr ""
"Je možné použít i už použitý kupon ale ten bude fungovat jen pro jím původně "
"zaregistrovanou podřízenou doménu."
-#: plinth/modules/pagekite/templates/pagekite_firstboot.html:52
+#: plinth/modules/pagekite/templates/pagekite_firstboot.html:37
msgid "Register"
msgstr "Zaregistrovat"
-#: plinth/modules/pagekite/templates/pagekite_firstboot.html:56
+#: plinth/modules/pagekite/templates/pagekite_firstboot.html:41
msgid "Skip Registration"
msgstr "Přeskočit registraci"
-#: plinth/modules/pagekite/templates/pagekite_standard_services.html:40
+#: plinth/modules/pagekite/templates/pagekite_standard_services.html:25
msgid "Warning:
"
msgstr "Varování:
"
-#: plinth/modules/pagekite/templates/pagekite_standard_services.html:43
+#: plinth/modules/pagekite/templates/pagekite_standard_services.html:28
msgid ""
"Published services are accessible and attackable from the evil Internet."
msgstr ""
"Zveřejněné služby jsou přístupné a ohrozitelné z nehostinného Internetu."
-#: plinth/modules/pagekite/templates/pagekite_standard_services.html:58
+#: plinth/modules/pagekite/templates/pagekite_standard_services.html:43
msgid "Save Services"
msgstr "Uložit služby"
-#: plinth/modules/pagekite/utils.py:57
+#: plinth/modules/pagekite/utils.py:42
msgid "Web Server (HTTP)"
msgstr "Webový server (HTTP)"
-#: plinth/modules/pagekite/utils.py:59
+#: plinth/modules/pagekite/utils.py:44
#, python-brace-format
msgid "Site will be available at http://{0}"
msgstr "Stránky budou k dispozici na http://{0}"
-#: plinth/modules/pagekite/utils.py:71
+#: plinth/modules/pagekite/utils.py:56
msgid "Web Server (HTTPS)"
msgstr "Webový server (HTTPS)"
-#: plinth/modules/pagekite/utils.py:73
+#: plinth/modules/pagekite/utils.py:58
#, python-brace-format
msgid "Site will be available at https://{0}"
msgstr "Stránky budou k dispozici na https://{0}"
-#: plinth/modules/pagekite/utils.py:85
+#: plinth/modules/pagekite/utils.py:70
msgid "Secure Shell (SSH)"
msgstr "Zabezpečený shell (SSH)"
-#: plinth/modules/pagekite/utils.py:87
+#: plinth/modules/pagekite/utils.py:72
msgid ""
"See SSH client setup instructions"
@@ -4412,16 +4526,15 @@ msgstr ""
"Viz instrukce"
"a> pro nastavení SSH klienta"
-#: plinth/modules/power/__init__.py:29 plinth/modules/power/views.py:55
-#: plinth/modules/power/views.py:74
-msgid "Power"
-msgstr "Napájení"
-
-#: plinth/modules/power/__init__.py:31
+#: plinth/modules/power/__init__.py:16
msgid "Restart or shut down the system."
msgstr "Restartovat nebo vypnout systém."
-#: plinth/modules/power/templates/power.html:28
+#: plinth/modules/power/__init__.py:31
+msgid "Power"
+msgstr "Napájení"
+
+#: plinth/modules/power/templates/power.html:13
msgid ""
"Currently an installation or upgrade is running. Consider waiting until it's "
"finished before shutting down or restarting."
@@ -4429,15 +4542,15 @@ msgstr ""
"Nyní je spuštěná instalace nebo přechod na novější verzi. Počkejte s vypínám "
"či restartem na dokončení této operace."
-#: plinth/modules/power/templates/power.html:37
+#: plinth/modules/power/templates/power.html:22
msgid "Restart »"
msgstr "Restartovat »"
-#: plinth/modules/power/templates/power.html:40
+#: plinth/modules/power/templates/power.html:25
msgid "Shut Down »"
msgstr "Vypnout »"
-#: plinth/modules/power/templates/power_restart.html:32
+#: plinth/modules/power/templates/power_restart.html:17
msgid ""
"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."
@@ -4445,7 +4558,7 @@ msgstr ""
"Opravdu chcete restartovat? Mějte na paměti, že po dobu restartu nebude "
"webové rozhraní na několik minut dostupné."
-#: plinth/modules/power/templates/power_restart.html:49
+#: plinth/modules/power/templates/power_restart.html:34
msgid ""
"Currently an installation or upgrade is running. Consider waiting until it's "
"finished before restarting."
@@ -4453,19 +4566,19 @@ msgstr ""
"Nyní je spuštěná instalace nebo přechod na novější verzi. Vyčkejte s "
"restartem na dokončení této operace."
-#: plinth/modules/power/templates/power_restart.html:63
-#: plinth/modules/power/templates/power_restart.html:66
+#: plinth/modules/power/templates/power_restart.html:48
+#: plinth/modules/power/templates/power_restart.html:51
msgid "Restart Now"
msgstr "Restartovat nyní"
-#: plinth/modules/power/templates/power_shutdown.html:32
+#: plinth/modules/power/templates/power_shutdown.html:17
msgid ""
"Are you sure you want to shut down? You will not be able to access this web "
"interface after shut down."
msgstr ""
"Opravdu chcete vypnout? Po vypnutí toto webové rozhraní nebude dostupné."
-#: plinth/modules/power/templates/power_shutdown.html:48
+#: plinth/modules/power/templates/power_shutdown.html:33
msgid ""
"Currently an installation or upgrade is running. Consider waiting until it's "
"finished before shutting down."
@@ -4473,20 +4586,12 @@ msgstr ""
"Nyní je spuštěná instalace nebo přechod na novější verzi. Vyčkejte s "
"vypínáním na dokončení této operace."
-#: plinth/modules/power/templates/power_shutdown.html:62
-#: plinth/modules/power/templates/power_shutdown.html:65
+#: plinth/modules/power/templates/power_shutdown.html:47
+#: plinth/modules/power/templates/power_shutdown.html:50
msgid "Shut Down Now"
msgstr "Vypnout nyní"
-#: plinth/modules/privoxy/__init__.py:43
-msgid "Privoxy"
-msgstr "Privoxy"
-
-#: plinth/modules/privoxy/__init__.py:47
-msgid "Web Proxy"
-msgstr "Webová proxy"
-
-#: plinth/modules/privoxy/__init__.py:50
+#: plinth/modules/privoxy/__init__.py:29
msgid ""
"Privoxy is a non-caching web proxy with advanced filtering capabilities for "
"enhancing privacy, modifying web page data and HTTP headers, controlling "
@@ -4496,7 +4601,7 @@ msgstr ""
"zlepšujícími soukromí, upravující data webových stánek a HTTP hlaviček, "
"řídící přístup a odebírající reklamy a ostatní otravné Internetové smetí. "
-#: plinth/modules/privoxy/__init__.py:55
+#: plinth/modules/privoxy/__init__.py:34
#, python-brace-format
msgid ""
"You can use Privoxy by modifying your browser proxy settings to your "
@@ -4511,20 +4616,20 @@ msgstr ""
"privoxy.org\">http://config.privoxy.org/ nebo http://p.p."
-#: plinth/modules/privoxy/__init__.py:141
+#: plinth/modules/privoxy/__init__.py:57
+msgid "Privoxy"
+msgstr "Privoxy"
+
+#: plinth/modules/privoxy/__init__.py:58
+msgid "Web Proxy"
+msgstr "Webová proxy"
+
+#: plinth/modules/privoxy/__init__.py:121
#, 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:45 plinth/modules/quassel/manifest.py:25
-msgid "Quassel"
-msgstr "Quassel"
-
-#: plinth/modules/quassel/__init__.py:49
-msgid "IRC Client"
-msgstr "IRC klient"
-
-#: plinth/modules/quassel/__init__.py:53
+#: plinth/modules/quassel/__init__.py:32
#, python-brace-format
msgid ""
"Quassel is an IRC application that is split into two parts, a \"core\" and a "
@@ -4541,7 +4646,7 @@ msgstr ""
"více Quassel klientů z desktopu nebo mobilu může být použito pro připojení "
"nebo odpojení od něj."
-#: plinth/modules/quassel/__init__.py:60
+#: plinth/modules/quassel/__init__.py:39
msgid ""
"You can connect to your Quassel core on the default Quassel port 4242. "
"Clients to connect to Quassel from your desktopu a mobilních zařízení."
-#: plinth/modules/quassel/forms.py:38
+#: plinth/modules/quassel/__init__.py:62 plinth/modules/quassel/manifest.py:10
+msgid "Quassel"
+msgstr "Quassel"
+
+#: plinth/modules/quassel/__init__.py:63
+msgid "IRC Client"
+msgstr "IRC klient"
+
+#: plinth/modules/quassel/forms.py:23
msgid "TLS domain"
msgstr "TLS doména"
-#: plinth/modules/quassel/forms.py:40
+#: plinth/modules/quassel/forms.py:25
msgid ""
"Select a domain to use TLS with. If the list is empty, please configure at "
"least one domain with certificates."
msgstr ""
-#: plinth/modules/quassel/manifest.py:49
+#: plinth/modules/quassel/manifest.py:34
msgid "Quasseldroid"
msgstr "Quasseldroid"
-#: plinth/modules/radicale/__init__.py:45
-#: plinth/modules/radicale/manifest.py:90
-msgid "Radicale"
-msgstr "Radicale"
-
-#: plinth/modules/radicale/__init__.py:49
-msgid "Calendar and Addressbook"
-msgstr "Kalendář a adresář kontaktů"
-
-#: plinth/modules/radicale/__init__.py:53
+#: plinth/modules/radicale/__init__.py:32
#, python-brace-format
msgid ""
"Radicale is a CalDAV and CardDAV server. It allows synchronization and "
@@ -4590,7 +4694,7 @@ msgstr ""
"a>. K Radicale je možné přistupovat pomocí libovolného uživatelského účtu na "
"{box_name}."
-#: plinth/modules/radicale/__init__.py:58
+#: plinth/modules/radicale/__init__.py:37
msgid ""
"Radicale provides a basic web interface, which only supports creating new "
"calendars and addressbooks. It does not support adding events or contacts, "
@@ -4600,13 +4704,22 @@ msgstr ""
"nových kalendářů a adresářů kontaktů. Nepodporuje přidávání událostí či "
"kontaktů, to je třeba dělat v tomu určeném klientovi."
-#: plinth/modules/radicale/forms.py:30
+#: plinth/modules/radicale/__init__.py:62
+#: plinth/modules/radicale/manifest.py:75
+msgid "Radicale"
+msgstr "Radicale"
+
+#: plinth/modules/radicale/__init__.py:63
+msgid "Calendar and Addressbook"
+msgstr "Kalendář a adresář kontaktů"
+
+#: plinth/modules/radicale/forms.py:15
msgid "Only the owner of a calendar/addressbook can view or make changes."
msgstr ""
"Pouze vlastník kalendáře / adresáře kontaktů může zobrazovat nebo dělat "
"změny."
-#: plinth/modules/radicale/forms.py:34
+#: plinth/modules/radicale/forms.py:19
#, python-brace-format
msgid ""
"Any user with a {box_name} login can view any calendar/addressbook, but only "
@@ -4615,7 +4728,7 @@ msgstr ""
"Jakýkoli uživatel s účtem na {box_name} může zobrazit libovolný kalendář / "
"adresář kontaktů, ale pouze vlastník může dělat změny."
-#: plinth/modules/radicale/forms.py:39
+#: plinth/modules/radicale/forms.py:24
#, python-brace-format
msgid ""
"Any user with a {box_name} login can view or make changes to any calendar/"
@@ -4624,11 +4737,11 @@ msgstr ""
"Jakýkoli uživatel s účtem na {box_name} může zobrazit nebo dělat změny v "
"libovolném kalendáři / adresáři kontaktů."
-#: plinth/modules/radicale/manifest.py:25
+#: plinth/modules/radicale/manifest.py:10
msgid "DAVx5"
msgstr "DAVx5"
-#: plinth/modules/radicale/manifest.py:27
+#: plinth/modules/radicale/manifest.py:12
msgid ""
"Enter the URL of the Radicale server (e.g. https://imap.example.com. Pro IMAP přes SSL (doporučeno), "
"vyplňte kolonku server jakoimaps://imap.example.com."
-#: plinth/modules/roundcube/__init__.py:53
+#: plinth/modules/roundcube/__init__.py:32
msgid ""
"For Gmail, username will be your Gmail address, password will be your Google "
"account password and server will be imaps://imap.gmail.com. "
@@ -4734,17 +4838,22 @@ msgstr ""
"lesssecureapps\">https://www.google.com/settings/security/lesssecureapps"
"a>)."
-#: plinth/modules/samba/__init__.py:46
-msgid "Samba"
-msgstr ""
+#: plinth/modules/roundcube/__init__.py:54
+#: plinth/modules/roundcube/manifest.py:9
+msgid "Roundcube"
+msgstr "Roundcube"
-#: plinth/modules/samba/__init__.py:53
+#: plinth/modules/roundcube/__init__.py:55
+msgid "Email Client"
+msgstr "E-mailový klient"
+
+#: plinth/modules/samba/__init__.py:32
msgid ""
"Samba allows to share files and folders between FreedomBox and other "
"computers in your local network."
msgstr ""
-#: plinth/modules/samba/__init__.py:56
+#: plinth/modules/samba/__init__.py:35
#, python-brace-format
msgid ""
"After installation, you can choose which disks to use for sharing. Enabled "
@@ -4753,55 +4862,59 @@ msgid ""
"There are three types of shares you can choose from: "
msgstr ""
-#: plinth/modules/samba/__init__.py:61
+#: plinth/modules/samba/__init__.py:40
msgid "Open share - accessible to everyone in your local network."
msgstr ""
-#: plinth/modules/samba/__init__.py:62
+#: plinth/modules/samba/__init__.py:41
msgid ""
"Group share - accessible only to FreedomBox users who are in the freedombox-"
"share group."
msgstr ""
-#: plinth/modules/samba/__init__.py:64
+#: plinth/modules/samba/__init__.py:43
msgid ""
"Home share - every user in the freedombox-share group can have their own "
"private space."
msgstr ""
-#: plinth/modules/samba/__init__.py:68
+#: plinth/modules/samba/__init__.py:47
msgid "Access to the private shares"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:39
-#: plinth/modules/samba/templates/samba.html:50
+#: plinth/modules/samba/__init__.py:61
+msgid "Samba"
+msgstr ""
+
+#: plinth/modules/samba/templates/samba.html:24
+#: plinth/modules/samba/templates/samba.html:35
#, fuzzy
#| msgid "Shared"
msgid "Shares"
msgstr "Sdílené"
-#: plinth/modules/samba/templates/samba.html:41
+#: plinth/modules/samba/templates/samba.html:26
msgid ""
"Note: Only specially created directories will be shared on selected disks, "
"not the whole disk."
msgstr ""
-#: plinth/modules/samba/templates/samba.html:49
+#: plinth/modules/samba/templates/samba.html:34
#, fuzzy
#| msgid "Domain Name"
msgid "Disk Name"
msgstr "Doménový název"
-#: plinth/modules/samba/templates/samba.html:51
-#: plinth/modules/storage/templates/storage.html:44
+#: plinth/modules/samba/templates/samba.html:36
+#: plinth/modules/storage/templates/storage.html:29
msgid "Used"
msgstr "Použito"
-#: plinth/modules/samba/templates/samba.html:72
+#: plinth/modules/samba/templates/samba.html:57
msgid "VFAT partitions are not supported"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:103
+#: plinth/modules/samba/templates/samba.html:88
#, python-format
msgid ""
"You can find additional information about disks on the users module page."
msgstr ""
-#: plinth/modules/samba/templates/samba.html:109
+#: plinth/modules/samba/templates/samba.html:94
msgid "Users who can currently access group and home shares"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:113
+#: plinth/modules/samba/templates/samba.html:98
msgid ""
"Users needing to re-enter their password on the password change page to "
"access group and home shares"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:118
+#: plinth/modules/samba/templates/samba.html:103
#, fuzzy
#| msgid "Available Domains"
msgid "Unavailable Shares"
msgstr "Domény k dispozici"
-#: plinth/modules/samba/templates/samba.html:120
+#: plinth/modules/samba/templates/samba.html:105
msgid ""
"Shares that are configured but the disk is not available. If the disk is "
"plugged back in, sharing will be automatically enabled."
msgstr ""
-#: plinth/modules/samba/templates/samba.html:128
+#: plinth/modules/samba/templates/samba.html:113
#, fuzzy
#| msgid "Share added."
msgid "Share name"
msgstr "Sdílení přidáno."
-#: plinth/modules/samba/templates/samba.html:129
+#: plinth/modules/samba/templates/samba.html:114
#, fuzzy
#| msgid "Actions"
msgid "Action"
msgstr "Akce"
-#: plinth/modules/samba/views.py:61 plinth/modules/storage/forms.py:164
+#: plinth/modules/samba/views.py:43 plinth/modules/storage/forms.py:149
#, fuzzy
#| msgid "Add Share"
msgid "Open Share"
msgstr "Přidat sdílení"
-#: plinth/modules/samba/views.py:62 plinth/modules/storage/forms.py:162
+#: plinth/modules/samba/views.py:44 plinth/modules/storage/forms.py:147
#, fuzzy
#| msgid "Add Share"
msgid "Group Share"
msgstr "Přidat sdílení"
-#: plinth/modules/samba/views.py:63
+#: plinth/modules/samba/views.py:45
#, fuzzy
#| msgid "Homepage"
msgid "Home Share"
msgstr "Domovská stránka"
-#: plinth/modules/samba/views.py:96
+#: plinth/modules/samba/views.py:78
#, fuzzy
#| msgid "Share deleted."
msgid "Share enabled."
msgstr "Sdílení smazáno."
-#: plinth/modules/samba/views.py:101
+#: plinth/modules/samba/views.py:83
#, fuzzy, python-brace-format
#| msgid "Error ejecting device: {error_message}"
msgid "Error enabling share: {error_message}"
msgstr "Chyba při vysouvání zařízení: {error_message}"
-#: plinth/modules/samba/views.py:106
+#: plinth/modules/samba/views.py:88
#, fuzzy
#| msgid "Share edited."
msgid "Share disabled."
msgstr "Sdílení upraveno."
-#: plinth/modules/samba/views.py:111
+#: plinth/modules/samba/views.py:93
#, fuzzy, python-brace-format
#| msgid "Error ejecting device: {error_message}"
msgid "Error disabling share: {error_message}"
msgstr "Chyba při vysouvání zařízení: {error_message}"
-#: plinth/modules/searx/__init__.py:41 plinth/modules/searx/manifest.py:24
-msgid "Searx"
-msgstr "Searx"
-
-#: plinth/modules/searx/__init__.py:45
-msgid "Web Search"
-msgstr "Vyhledávání na webu"
-
-#: plinth/modules/searx/__init__.py:48
+#: plinth/modules/searx/__init__.py:25
msgid ""
"Searx is a privacy-respecting Internet metasearch engine. It aggregrates and "
"displays results from multiple search engines."
@@ -4901,7 +5006,7 @@ msgstr ""
"Searx je soukromí respektující metavyhledavač na Internetu. Slučuje a "
"zobrazuje výsledky z vícero vyhledávačů."
-#: plinth/modules/searx/__init__.py:50
+#: plinth/modules/searx/__init__.py:27
msgid ""
"Searx can be used to avoid tracking and profiling by search engines. It "
"stores no cookies by default."
@@ -4909,49 +5014,57 @@ msgstr ""
"Použitím Searx je možné se vyhnout sledování a profilování vyhledávači. Ve "
"výchozím stavu neukládá žádné cookie."
-#: plinth/modules/searx/__init__.py:54
+#: plinth/modules/searx/__init__.py:31
msgid "Search the web"
msgstr "Hledat na webu"
-#: plinth/modules/searx/forms.py:30
+#: plinth/modules/searx/__init__.py:47 plinth/modules/searx/manifest.py:9
+msgid "Searx"
+msgstr "Searx"
+
+#: plinth/modules/searx/__init__.py:48
+msgid "Web Search"
+msgstr "Vyhledávání na webu"
+
+#: plinth/modules/searx/forms.py:15
msgid "Safe Search"
msgstr "Bezpečné vyhledávání"
-#: plinth/modules/searx/forms.py:31
+#: plinth/modules/searx/forms.py:16
msgid "Select the default family filter to apply to your search results."
msgstr "Vyberte výchozí dětský filtr který uplatnit na výsledky vyhledávání."
-#: plinth/modules/searx/forms.py:32
+#: plinth/modules/searx/forms.py:17
msgid "None"
msgstr "Žádný"
-#: plinth/modules/searx/forms.py:32
+#: plinth/modules/searx/forms.py:17
msgid "Moderate"
msgstr "Střední"
-#: plinth/modules/searx/forms.py:32
+#: plinth/modules/searx/forms.py:17
msgid "Strict"
msgstr "Přísný"
-#: plinth/modules/searx/forms.py:35
+#: plinth/modules/searx/forms.py:20
msgid "Allow Public Access"
msgstr "Umožnit veřejný přístup"
-#: plinth/modules/searx/forms.py:36
+#: plinth/modules/searx/forms.py:21
msgid "Allow this application to be used by anyone who can reach it."
msgstr ""
"Umožnit, aby tato aplikace byla používána kýmkoli, kdo se k ní může dostat."
-#: plinth/modules/searx/views.py:59 plinth/modules/searx/views.py:70
-#: plinth/modules/tor/views.py:149 plinth/modules/tor/views.py:176
+#: plinth/modules/searx/views.py:39 plinth/modules/searx/views.py:50
+#: plinth/modules/tor/views.py:130 plinth/modules/tor/views.py:157
msgid "Configuration updated."
msgstr "Nastavení aktualizována."
-#: plinth/modules/security/forms.py:28
+#: plinth/modules/security/forms.py:13
msgid "Restrict console logins (recommended)"
msgstr "Omezit přihlášení na konzoli (doporučeno)"
-#: plinth/modules/security/forms.py:29
+#: plinth/modules/security/forms.py:14
msgid ""
"When this option is enabled, only users in the \"admin\" group will be able "
"to log in to console or via SSH. Console users may be able to access some "
@@ -4962,11 +5075,11 @@ msgstr ""
"totiž mohou být schopní přistupovat k některým službám bez jakéhokoli "
"dalšího ověřování."
-#: plinth/modules/security/forms.py:34
+#: plinth/modules/security/forms.py:19
msgid "Fail2Ban (recommended)"
msgstr "Fail2Ban (doporučeno)"
-#: plinth/modules/security/forms.py:35
+#: plinth/modules/security/forms.py:20
msgid ""
"When this option is enabled, Fail2Ban will limit brute force break-in "
"attempts to the SSH server and other enabled password protected internet-"
@@ -4976,111 +5089,103 @@ msgstr ""
"hrubou silou na SSH server a ostatní zapnuté internetové služby, využívající "
"ověření heslem."
-#: plinth/modules/security/templates/security.html:26
-#: plinth/modules/security/templates/security.html:28
+#: plinth/modules/security/templates/security.html:11
+#: plinth/modules/security/templates/security.html:13
msgid "Show security report"
msgstr "Zobrazit výkaz o zabezpečení"
-#: plinth/modules/security/templates/security_report.html:25
-#: plinth/modules/security/views.py:87
+#: plinth/modules/security/templates/security_report.html:10
+#: plinth/modules/security/views.py:71
msgid "Security Report"
msgstr "Výkaz o zabezpečení"
-#: plinth/modules/security/templates/security_report.html:27
+#: plinth/modules/security/templates/security_report.html:12
#, python-format
msgid ""
"The installed version of FreedomBox has %(count)s reported security "
"vulnerabilities."
msgstr ""
-#: plinth/modules/security/templates/security_report.html:33
+#: plinth/modules/security/templates/security_report.html:18
msgid ""
"The following table lists the current reported number, and historical count, "
"of security vulnerabilities for each installed app."
msgstr ""
-#: plinth/modules/security/templates/security_report.html:39
+#: plinth/modules/security/templates/security_report.html:24
msgid ""
"For apps that provide services, the \"Sandboxed\" column shows whether "
"sandboxing features are in use. Sandboxing mitigates the impact of a "
"potentially compromised app to the rest of the system."
msgstr ""
-#: plinth/modules/security/templates/security_report.html:46
+#: plinth/modules/security/templates/security_report.html:31
msgid ""
"\"Sandbox Coverage\" is a score of how effectively the service is isolated "
"from the rest of the system. It is only displayed while the service is "
"running."
msgstr ""
-#: plinth/modules/security/templates/security_report.html:55
+#: plinth/modules/security/templates/security_report.html:40
msgid "App Name"
msgstr "Název aplikace"
-#: plinth/modules/security/templates/security_report.html:56
+#: plinth/modules/security/templates/security_report.html:41
msgid "Current Vulnerabilities"
msgstr "Stávající zranitelnosti zabezpečení"
-#: plinth/modules/security/templates/security_report.html:57
+#: plinth/modules/security/templates/security_report.html:42
msgid "Past Vulnerabilities"
msgstr "Minulé zranitelnosti zabezpečení"
-#: plinth/modules/security/templates/security_report.html:58
+#: plinth/modules/security/templates/security_report.html:43
#, fuzzy
#| msgid "Block Sandbox"
msgid "Sandboxed"
msgstr "Pískoviště s kostkami"
-#: plinth/modules/security/templates/security_report.html:59
+#: plinth/modules/security/templates/security_report.html:44
#, fuzzy
#| msgid "Block Sandbox"
msgid "Sandbox Coverage"
msgstr "Pískoviště s kostkami"
-#: plinth/modules/security/templates/security_report.html:70
+#: plinth/modules/security/templates/security_report.html:55
msgid "N/A"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:72
+#: plinth/modules/security/templates/security_report.html:57
#, fuzzy
#| msgid "yes"
msgid "Yes"
msgstr "ano"
-#: plinth/modules/security/templates/security_report.html:74
+#: plinth/modules/security/templates/security_report.html:59
#, fuzzy
#| msgid "None"
msgid "No"
msgstr "Žádný"
-#: plinth/modules/security/templates/security_report.html:81
+#: plinth/modules/security/templates/security_report.html:66
#, fuzzy
#| msgid "Tor is running"
msgid "Not running"
msgstr "Tor je spuštěné"
-#: plinth/modules/security/views.py:69
+#: plinth/modules/security/views.py:53
#, 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:72
+#: plinth/modules/security/views.py:56
msgid "Updated security configuration"
msgstr "Nastavení zabezpečení aktualizováno"
-#: plinth/modules/shaarli/__init__.py:34 plinth/modules/shaarli/manifest.py:23
-msgid "Shaarli"
-msgstr "Shaarli"
-
-#: plinth/modules/shaarli/__init__.py:36
-msgid "Bookmarks"
-msgstr "Záložky"
-
-#: plinth/modules/shaarli/__init__.py:39
+#: plinth/modules/shaarli/__init__.py:20
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:21
#, fuzzy
#| msgid ""
#| "When enabled, Shaarli will be available from /"
@@ -5096,15 +5201,15 @@ msgstr ""
"shaarli na webovém serveru. Poznamenejme, že Shaarli podporuje pouze "
"jeden uživatelský účet, který bude třeba nastavit při první návštěvě."
-#: plinth/modules/shadowsocks/__init__.py:35
-msgid "Shadowsocks"
-msgstr "Shadowsocks"
+#: plinth/modules/shaarli/__init__.py:39 plinth/modules/shaarli/manifest.py:8
+msgid "Shaarli"
+msgstr "Shaarli"
-#: plinth/modules/shadowsocks/__init__.py:39
-msgid "Socks5 Proxy"
-msgstr "Socks5 proxy"
+#: plinth/modules/shaarli/__init__.py:40
+msgid "Bookmarks"
+msgstr "Záložky"
-#: plinth/modules/shadowsocks/__init__.py:46
+#: plinth/modules/shadowsocks/__init__.py:25
msgid ""
"Shadowsocks is a lightweight and secure SOCKS5 proxy, designed to protect "
"your Internet traffic. It can be used to bypass Internet filtering and "
@@ -5114,7 +5219,7 @@ msgstr ""
"vašeho Internetového provozu. Je možné ji použít pro obejití filtrování "
"Internetu a cenzury."
-#: plinth/modules/shadowsocks/__init__.py:50
+#: plinth/modules/shadowsocks/__init__.py:29
#, python-brace-format
msgid ""
"Your {box_name} can run a Shadowsocks client, that can connect to a "
@@ -5127,7 +5232,7 @@ msgstr ""
"připojit k této proxy a jejich data budou šifrována a posílána "
"prostřednictvím Shadowsocks serveru."
-#: plinth/modules/shadowsocks/__init__.py:55
+#: plinth/modules/shadowsocks/__init__.py:34
msgid ""
"To use Shadowsocks after setup, set the SOCKS5 proxy URL in your device, "
"browser or application to http://freedombox_address:1080/"
@@ -5135,39 +5240,43 @@ msgstr ""
"Pro použití Shadowsocks po nastavení, nastavte SOCKS5 proxy URL adresu ve "
"svém zařízení, prohlížeči nebo aplikaci na http://adresa_freedombox:1080/"
-#: plinth/modules/shadowsocks/forms.py:28
-#: plinth/modules/shadowsocks/forms.py:29
+#: plinth/modules/shadowsocks/__init__.py:50
+msgid "Shadowsocks"
+msgstr "Shadowsocks"
+
+#: plinth/modules/shadowsocks/__init__.py:52
+msgid "Socks5 Proxy"
+msgstr "Socks5 proxy"
+
+#: plinth/modules/shadowsocks/forms.py:13
+#: plinth/modules/shadowsocks/forms.py:14
msgid "Recommended"
msgstr "Doporučeno"
-#: plinth/modules/shadowsocks/forms.py:52
+#: plinth/modules/shadowsocks/forms.py:37
msgid "Server"
msgstr "Server"
-#: plinth/modules/shadowsocks/forms.py:53
+#: plinth/modules/shadowsocks/forms.py:38
msgid "Server hostname or IP address"
msgstr "Název nebo IP adresa serveru"
-#: plinth/modules/shadowsocks/forms.py:57
+#: plinth/modules/shadowsocks/forms.py:42
msgid "Server port number"
msgstr "Číslo portu serveru"
-#: plinth/modules/shadowsocks/forms.py:60
+#: plinth/modules/shadowsocks/forms.py:45
msgid "Password used to encrypt data. Must match server password."
msgstr ""
"Heslo sloužící pro šifrování dat. Je třeba, aby se shodovalo s heslem "
"serveru."
-#: plinth/modules/shadowsocks/forms.py:65
+#: plinth/modules/shadowsocks/forms.py:50
msgid "Encryption method. Must match setting on server."
msgstr ""
"Metoda šifrování. Je třeba, aby byla stejná, jaká je nastavená na serveru."
-#: plinth/modules/sharing/__init__.py:34
-msgid "Sharing"
-msgstr "Sdílení"
-
-#: plinth/modules/sharing/__init__.py:38
+#: plinth/modules/sharing/__init__.py:21
#, python-brace-format
msgid ""
"Sharing allows you to share files and folders on your {box_name} over the "
@@ -5176,11 +5285,15 @@ msgstr ""
"Sdílení umožňuje sdílet soubory a složky na vašem {box_name} přes web se "
"zvolenou skupinou uživatelů."
-#: plinth/modules/sharing/forms.py:33
+#: plinth/modules/sharing/__init__.py:38
+msgid "Sharing"
+msgstr "Sdílení"
+
+#: plinth/modules/sharing/forms.py:18
msgid "Name of the share"
msgstr "Název sdílení"
-#: plinth/modules/sharing/forms.py:35
+#: plinth/modules/sharing/forms.py:20
msgid ""
"A lowercase alpha-numeric string that uniquely identifies a share. Example: "
"media."
@@ -5188,31 +5301,31 @@ msgstr ""
"Řetězec malými písmeny a číslicemi který jednoznačně identifikuje sdílení. "
"Příklad:média."
-#: plinth/modules/sharing/forms.py:39
+#: plinth/modules/sharing/forms.py:24
msgid "Path to share"
msgstr "Popis umístění které sdílet"
-#: plinth/modules/sharing/forms.py:40
+#: plinth/modules/sharing/forms.py:25
msgid "Disk path to a folder on this server that you intend to share."
msgstr ""
"Popis umístění složky na datovém úložišti tohoto serveru které zamýšlíte "
"sdílet."
-#: plinth/modules/sharing/forms.py:43
+#: plinth/modules/sharing/forms.py:28
msgid "Public share"
msgstr "Veřejné sdílení"
-#: plinth/modules/sharing/forms.py:44
+#: plinth/modules/sharing/forms.py:29
msgid "Make files in this folder available to anyone with the link."
msgstr "Zpřístupnit soubory v této složce všem, kteří mají odkaz."
-#: plinth/modules/sharing/forms.py:48
+#: plinth/modules/sharing/forms.py:33
#, fuzzy
#| msgid "User groups who can read the files in the share"
msgid "User groups that can read the files in the share"
msgstr "Skupina uživatelů která může číst soubory na sdílení"
-#: plinth/modules/sharing/forms.py:50
+#: plinth/modules/sharing/forms.py:35
#, fuzzy
#| msgid ""
#| "Users who have these permissions will also be able to read the files in "
@@ -5224,64 +5337,60 @@ msgstr ""
"Uživatelé kteří mají tato oprávnění budou také schopní číst soubory na "
"sdílení."
-#: plinth/modules/sharing/forms.py:67
+#: plinth/modules/sharing/forms.py:52
msgid "A share with this name already exists."
msgstr "Sdílení s tímto názvem už existuje."
-#: plinth/modules/sharing/forms.py:78
+#: plinth/modules/sharing/forms.py:63
msgid "Shares should be either public or shared with at least one group"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:39
-#: plinth/modules/sharing/templates/sharing.html:42
+#: plinth/modules/sharing/templates/sharing.html:24
+#: plinth/modules/sharing/templates/sharing.html:27
msgid "Add share"
msgstr "Přidat sdílení"
-#: plinth/modules/sharing/templates/sharing.html:47
+#: plinth/modules/sharing/templates/sharing.html:32
msgid "No shares currently configured."
msgstr "Nyní není nastavené žádné sdílení."
-#: plinth/modules/sharing/templates/sharing.html:53
+#: plinth/modules/sharing/templates/sharing.html:38
msgid "Disk Path"
msgstr "Popis umístění na datovém úložišti"
-#: plinth/modules/sharing/templates/sharing.html:54
+#: plinth/modules/sharing/templates/sharing.html:39
msgid "Shared Over"
msgstr "Sdíleno přes"
-#: plinth/modules/sharing/templates/sharing.html:55
+#: plinth/modules/sharing/templates/sharing.html:40
msgid "With Groups"
msgstr "Se skupinami"
-#: plinth/modules/sharing/templates/sharing.html:73
+#: plinth/modules/sharing/templates/sharing.html:58
msgid "public access"
msgstr "veřejný přístup"
-#: plinth/modules/sharing/views.py:55
+#: plinth/modules/sharing/views.py:39
msgid "Share added."
msgstr "Sdílení přidáno."
-#: plinth/modules/sharing/views.py:60
+#: plinth/modules/sharing/views.py:44
msgid "Add Share"
msgstr "Přidat sdílení"
-#: plinth/modules/sharing/views.py:75
+#: plinth/modules/sharing/views.py:59
msgid "Share edited."
msgstr "Sdílení upraveno."
-#: plinth/modules/sharing/views.py:80
+#: plinth/modules/sharing/views.py:64
msgid "Edit Share"
msgstr "Upravit sdílení"
-#: plinth/modules/sharing/views.py:111
+#: plinth/modules/sharing/views.py:95
msgid "Share deleted."
msgstr "Sdílení smazáno."
-#: plinth/modules/snapshot/__init__.py:37
-msgid "Storage Snapshots"
-msgstr "Zachycené stavy datového úložiště"
-
-#: plinth/modules/snapshot/__init__.py:40
+#: plinth/modules/snapshot/__init__.py:23
msgid ""
"Snapshots allows creating and managing btrfs file system snapshots. These "
"can be used to roll back the system to a previously known good state in case "
@@ -5291,7 +5400,7 @@ msgstr ""
"souborového systému btrfs. Ty je možné použít pro vrácení systému do "
"dřívějšího funkčního stavu v případě nechtěných změn."
-#: plinth/modules/snapshot/__init__.py:44
+#: plinth/modules/snapshot/__init__.py:27
#, no-python-format
msgid ""
"Snapshots are taken periodically (called timeline snapshots) and also before "
@@ -5302,7 +5411,7 @@ msgstr ""
"osy) a také před a po instalaci software. Nejstarší zachycené stavy budou "
"automaticky mazány podle níže uvedených nastavení."
-#: plinth/modules/snapshot/__init__.py:47
+#: plinth/modules/snapshot/__init__.py:30
msgid ""
"Snapshots currently work on btrfs file systems only and on the root "
"partition only. Snapshots are not a replacement for backups, protože mohou být ukládány pouze na stejném oddílu, "
"jako živá data. "
-#: plinth/modules/snapshot/forms.py:27
+#: plinth/modules/snapshot/__init__.py:52
+msgid "Storage Snapshots"
+msgstr "Zachycené stavy datového úložiště"
+
+#: plinth/modules/snapshot/forms.py:12
msgid "Free Disk Space to Maintain"
msgstr "Zachovávat volného prostoru"
-#: plinth/modules/snapshot/forms.py:28
+#: plinth/modules/snapshot/forms.py:13
msgid ""
"Maintain this percentage of free space on the disk. If free space falls "
"below this value, older snapshots are removed until this much free space is "
@@ -5327,64 +5440,64 @@ msgstr ""
"poklesne pod tuto hodnotu, budou odebírány nejstarší zachycené stavy dokud "
"není získáno dostatek volného místa. Výchozí hodnota je 30%."
-#: plinth/modules/snapshot/forms.py:35
+#: plinth/modules/snapshot/forms.py:20
msgid "Timeline Snapshots"
msgstr "Zachycené stavy časové osy"
-#: plinth/modules/snapshot/forms.py:36
+#: plinth/modules/snapshot/forms.py:21
msgid ""
"Enable or disable timeline snapshots (hourly, daily, monthly and yearly)."
msgstr ""
"Zapnout nebo vypnout pořizování zachycených stavů časové osy (denně, týdně, "
"měsíčně a ročně)."
-#: plinth/modules/snapshot/forms.py:41
+#: plinth/modules/snapshot/forms.py:26
msgid "Software Installation Snapshots"
msgstr "Zachycené stavy instalace software"
-#: plinth/modules/snapshot/forms.py:42
+#: plinth/modules/snapshot/forms.py:27
msgid "Enable or disable snapshots before and after software installation"
msgstr ""
"Zapnout nebo vypnout pořizování zachycených stavů před a po instalaci "
"software"
-#: plinth/modules/snapshot/forms.py:47
+#: plinth/modules/snapshot/forms.py:32
msgid "Hourly Snapshots Limit"
msgstr "Limit hodinových zachycených stavů"
-#: plinth/modules/snapshot/forms.py:48
+#: plinth/modules/snapshot/forms.py:33
msgid "Keep a maximum of this many hourly snapshots."
msgstr "Ponechat nejvýše tolik hodinových zachycených stavů."
-#: plinth/modules/snapshot/forms.py:51
+#: plinth/modules/snapshot/forms.py:36
msgid "Daily Snapshots Limit"
msgstr "Limit denních zachycených stavů"
-#: plinth/modules/snapshot/forms.py:52
+#: plinth/modules/snapshot/forms.py:37
msgid "Keep a maximum of this many daily snapshots."
msgstr "Ponechat nejvýše tolik denních zachycených stavů."
-#: plinth/modules/snapshot/forms.py:55
+#: plinth/modules/snapshot/forms.py:40
msgid "Weekly Snapshots Limit"
msgstr "Limit týdenních zachycených stavů"
-#: plinth/modules/snapshot/forms.py:56
+#: plinth/modules/snapshot/forms.py:41
msgid "Keep a maximum of this many weekly snapshots."
msgstr "Ponechat nejvýše tolik týdenních zachycených stavů."
-#: plinth/modules/snapshot/forms.py:59
+#: plinth/modules/snapshot/forms.py:44
msgid "Monthly Snapshots Limit"
msgstr "Limit měsíčních zachycených stavů"
-#: plinth/modules/snapshot/forms.py:60
+#: plinth/modules/snapshot/forms.py:45
msgid "Keep a maximum of this many monthly snapshots."
msgstr "Ponechat nejvýše tolik měsíčních zachycených stavů."
-#: plinth/modules/snapshot/forms.py:63
+#: plinth/modules/snapshot/forms.py:48
msgid "Yearly Snapshots Limit"
msgstr "Limit ročních zachycených stavů"
-#: plinth/modules/snapshot/forms.py:64
+#: plinth/modules/snapshot/forms.py:49
msgid ""
"Keep a maximum of this many yearly snapshots. The default value is 0 "
"(disabled)."
@@ -5392,46 +5505,46 @@ msgstr ""
"Ponechat nejvýše tolik ročních zachycených stavů. Výchozí hodnota je 0 "
"(ponechat všechny)."
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:27
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:12
msgid "Delete the following snapshots permanently?"
msgstr "Nevratně smazat tyto zachycené stavy?"
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:31
-#: plinth/modules/snapshot/templates/snapshot_manage.html:43
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:39
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:16
+#: plinth/modules/snapshot/templates/snapshot_manage.html:28
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:24
msgid "Number"
msgstr "Počet"
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:32
-#: plinth/modules/snapshot/templates/snapshot_manage.html:44
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:40
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:17
+#: plinth/modules/snapshot/templates/snapshot_manage.html:29
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:25
msgid "Date"
msgstr "Datum"
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:52
-#: plinth/modules/snapshot/templates/snapshot_manage.html:37
-#: plinth/modules/snapshot/views.py:196
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:37
+#: plinth/modules/snapshot/templates/snapshot_manage.html:22
+#: plinth/modules/snapshot/views.py:175
msgid "Delete Snapshots"
msgstr "Smazat zachycené stavy"
-#: plinth/modules/snapshot/templates/snapshot_manage.html:33
+#: plinth/modules/snapshot/templates/snapshot_manage.html:18
msgid "Create Snapshot"
msgstr "Pořídit zachycený stav"
-#: plinth/modules/snapshot/templates/snapshot_manage.html:46
+#: plinth/modules/snapshot/templates/snapshot_manage.html:31
msgid "Rollback"
msgstr "Obnovit ze zálohy"
-#: plinth/modules/snapshot/templates/snapshot_manage.html:57
+#: plinth/modules/snapshot/templates/snapshot_manage.html:42
msgid "active"
msgstr "aktivní"
-#: plinth/modules/snapshot/templates/snapshot_manage.html:66
+#: plinth/modules/snapshot/templates/snapshot_manage.html:51
#, python-format
msgid "Rollback to snapshot #%(number)s"
msgstr "Vrátit k zachycenému stavu č. %(number)s"
-#: plinth/modules/snapshot/templates/snapshot_not_supported.html:26
+#: plinth/modules/snapshot/templates/snapshot_not_supported.html:11
#, python-format
msgid ""
"Your have a filesystem of type %(fs_type)s. Snapshots are "
@@ -5441,11 +5554,11 @@ msgstr ""
"stavy jsou v tuto chvíli k dispozici pouze na souborových systémech "
"%(types_supported)s."
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:27
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:12
msgid "Roll back the system to this snapshot?"
msgstr "Vrátit systém do podoby tohoto zachyceného stavu?"
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:30
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:15
msgid ""
"A new snapshot with the current state of the file system will be "
"automatically created. You will be able to undo a rollback by reverting to "
@@ -5454,58 +5567,54 @@ msgstr ""
"Bude automaticky pořízen zachycený stav stávajícího stavu systému. Tak bude "
"možné se vrátit zpět do podoby nově zachyceného stavu."
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:57
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:42
#, python-format
msgid "Rollback to Snapshot #%(number)s"
msgstr "Vrátit k zachycenému stavu č. %(number)s"
-#: plinth/modules/snapshot/views.py:45
+#: plinth/modules/snapshot/views.py:30
msgid "Manage Snapshots"
msgstr "Spravovat zachycené stavy"
-#: plinth/modules/snapshot/views.py:98
+#: plinth/modules/snapshot/views.py:79
msgid "Created snapshot."
msgstr "Zachycený stav pořízen."
-#: plinth/modules/snapshot/views.py:156
+#: plinth/modules/snapshot/views.py:135
msgid "Storage snapshots configuration updated"
msgstr "Nastavení zachycování stavů úložiště aktualizováno"
-#: plinth/modules/snapshot/views.py:160 plinth/modules/tor/views.py:79
+#: plinth/modules/snapshot/views.py:139 plinth/modules/tor/views.py:60
#, python-brace-format
msgid "Action error: {0} [{1}] [{2}]"
msgstr "Chyba akce: {0} [{1}] [{2}]"
-#: plinth/modules/snapshot/views.py:175
+#: plinth/modules/snapshot/views.py:154
msgid "Deleted all snapshots"
msgstr "Všechny zachycené stavy smazány"
-#: plinth/modules/snapshot/views.py:179
+#: plinth/modules/snapshot/views.py:158
msgid "Deleted selected snapshots"
msgstr "Označené zachycené stavy smazány"
-#: plinth/modules/snapshot/views.py:184
+#: plinth/modules/snapshot/views.py:163
msgid "Snapshot is currently in use. Please try again later."
msgstr "Zachycený stav je používán. Zkuste to později."
-#: plinth/modules/snapshot/views.py:207
+#: plinth/modules/snapshot/views.py:186
#, python-brace-format
msgid "Rolled back to snapshot #{number}."
msgstr "Vráceno zpět do podoby zachyceného stavu č. {number}."
-#: plinth/modules/snapshot/views.py:210
+#: plinth/modules/snapshot/views.py:189
msgid "The system must be restarted to complete the rollback."
msgstr "Pro dokončení obnovy ze zálohy je třeba systém restartovat."
-#: plinth/modules/snapshot/views.py:222
+#: plinth/modules/snapshot/views.py:201
msgid "Rollback to Snapshot"
msgstr "Vrátit do podoby zachyceného stavu"
-#: plinth/modules/ssh/__init__.py:43
-msgid "Secure Shell (SSH) Server"
-msgstr "Server zabezpečeného shellu (SSH)"
-
-#: plinth/modules/ssh/__init__.py:46
+#: plinth/modules/ssh/__init__.py:29
msgid ""
"A Secure Shell server uses the secure shell protocol to accept connections "
"from remote computers. An authorized remote computer can perform "
@@ -5517,60 +5626,60 @@ msgstr ""
"spojení provádět úkoly správy, kopírovat soubory nebo spouštět ostatní "
"služby."
-#: plinth/modules/ssh/forms.py:30
+#: plinth/modules/ssh/__init__.py:50
+msgid "Secure Shell (SSH) Server"
+msgstr "Server zabezpečeného shellu (SSH)"
+
+#: plinth/modules/ssh/forms.py:15
#, fuzzy
#| msgid "Use HTTP basic authentication"
msgid "Disable password authentication"
msgstr "Použít základní HTTP ověřování"
-#: plinth/modules/ssh/forms.py:31
+#: plinth/modules/ssh/forms.py:16
msgid ""
"Improves security by preventing password guessing. Ensure that you have "
"setup SSH keys in your administrator user account before enabling this "
"option."
msgstr ""
-#: plinth/modules/ssh/templates/ssh.html:26
+#: plinth/modules/ssh/templates/ssh.html:11
msgid "Server Fingerprints"
msgstr "Otisky serveru"
-#: plinth/modules/ssh/templates/ssh.html:29
+#: plinth/modules/ssh/templates/ssh.html:14
msgid ""
"When connecting to the server, ensure that the fingerprint shown by the SSH "
"client matches one of these fingerprints."
msgstr ""
-#: plinth/modules/ssh/templates/ssh.html:38
+#: plinth/modules/ssh/templates/ssh.html:23
msgid "Algorithm"
msgstr "Algoritmus"
-#: plinth/modules/ssh/templates/ssh.html:39
+#: plinth/modules/ssh/templates/ssh.html:24
msgid "Fingerprint"
msgstr "Otisk (fingerprint)"
-#: plinth/modules/ssh/views.py:66
+#: plinth/modules/ssh/views.py:48
msgid "SSH authentication with password disabled."
msgstr ""
-#: plinth/modules/ssh/views.py:69
+#: plinth/modules/ssh/views.py:51
#, fuzzy
#| msgid "Authentication to remote server failed."
msgid "SSH authentication with password enabled."
msgstr "Ověření vůči vzdálenému serveru se nezdařilo."
-#: plinth/modules/sso/__init__.py:30
+#: plinth/modules/sso/__init__.py:33
msgid "Single Sign On"
msgstr "Sdružené přihlášení (SSO)"
-#: plinth/modules/sso/templates/login.html:35
+#: plinth/modules/sso/templates/login.html:20
msgid "Login"
msgstr "Přihlášení"
-#: plinth/modules/storage/__init__.py:39 plinth/modules/storage/__init__.py:331
-msgid "Storage"
-msgstr "Úložiště"
-
-#: plinth/modules/storage/__init__.py:47
+#: plinth/modules/storage/__init__.py:30
#, python-brace-format
msgid ""
"This module allows you to manage storage media attached to your {box_name}. "
@@ -5581,84 +5690,88 @@ msgstr ""
"{box_name}. Lze zobrazit úložná zařízení, která jsou využívána, připojovat a "
"odpojovat ta vyjímatelná."
-#: plinth/modules/storage/__init__.py:224
+#: plinth/modules/storage/__init__.py:52 plinth/modules/storage/__init__.py:318
+msgid "Storage"
+msgstr "Úložiště"
+
+#: plinth/modules/storage/__init__.py:211
#, python-brace-format
msgid "{disk_size:.1f} bytes"
msgstr "{disk_size:.1f} bajtů"
-#: plinth/modules/storage/__init__.py:228
+#: plinth/modules/storage/__init__.py:215
#, python-brace-format
msgid "{disk_size:.1f} KiB"
msgstr "{disk_size:.1f} KiB"
-#: plinth/modules/storage/__init__.py:232
+#: plinth/modules/storage/__init__.py:219
#, python-brace-format
msgid "{disk_size:.1f} MiB"
msgstr "{disk_size:.1f} MiB"
-#: plinth/modules/storage/__init__.py:236
+#: plinth/modules/storage/__init__.py:223
#, python-brace-format
msgid "{disk_size:.1f} GiB"
msgstr "{disk_size:.1f} GiB"
-#: plinth/modules/storage/__init__.py:239
+#: plinth/modules/storage/__init__.py:226
#, python-brace-format
msgid "{disk_size:.1f} TiB"
msgstr "{disk_size:.1f} TiB"
-#: plinth/modules/storage/__init__.py:246
+#: plinth/modules/storage/__init__.py:233
msgid "The operation failed."
msgstr "Operace se nezdařila."
-#: plinth/modules/storage/__init__.py:248
+#: plinth/modules/storage/__init__.py:235
msgid "The operation was cancelled."
msgstr "Operace byla zrušena."
-#: plinth/modules/storage/__init__.py:250
+#: plinth/modules/storage/__init__.py:237
msgid "The device is already unmounting."
msgstr "Toto zařízení už je odpojováno (umount)."
-#: plinth/modules/storage/__init__.py:252
+#: plinth/modules/storage/__init__.py:239
msgid "The operation is not supported due to missing driver/tool support."
msgstr "Operace není podporována z důvodu chybějící podpory ovladače/nástroje."
-#: plinth/modules/storage/__init__.py:255
+#: plinth/modules/storage/__init__.py:242
msgid "The operation timed out."
msgstr "Časový limit aplikace překročen."
-#: plinth/modules/storage/__init__.py:257
+#: plinth/modules/storage/__init__.py:244
msgid "The operation would wake up a disk that is in a deep-sleep state."
msgstr "Operace by probudila disk který je v režimu hlubokého spánku."
-#: plinth/modules/storage/__init__.py:260
+#: plinth/modules/storage/__init__.py:247
msgid "Attempting to unmount a device that is busy."
msgstr "Pokus o odpojení zařízení které je zaneprázdněno."
-#: plinth/modules/storage/__init__.py:262
+#: plinth/modules/storage/__init__.py:249
msgid "The operation has already been cancelled."
msgstr "Operace už byla zrušena."
-#: plinth/modules/storage/__init__.py:268
+#: plinth/modules/storage/__init__.py:255
msgid "Not authorized to perform the requested operation."
msgstr "Chybí oprávnění pro provedení požadované operace."
-#: plinth/modules/storage/__init__.py:270
+#: plinth/modules/storage/__init__.py:257
msgid "The device is already mounted."
msgstr "Toto zařízení je už připojeno (mount)."
-#: plinth/modules/storage/__init__.py:272
+#: plinth/modules/storage/__init__.py:259
msgid "The device is not mounted."
msgstr "Zařízení není připojeno."
-#: plinth/modules/storage/__init__.py:275
+#: plinth/modules/storage/__init__.py:262
msgid "Not permitted to use the requested option."
msgstr "Není umožněno použít požadovanou volbu."
-#: plinth/modules/storage/__init__.py:278
+#: plinth/modules/storage/__init__.py:265
msgid "The device is mounted by another user."
msgstr "Zařízení je připojeno jiným uživatelem."
-#: plinth/modules/storage/__init__.py:326
+#: plinth/modules/storage/__init__.py:313
#, fuzzy, no-python-format, python-brace-format
#| msgid ""
#| "Warning: Low space on system partition ({percent_used}% used, "
@@ -5668,73 +5781,73 @@ msgstr ""
"Varování: Dochází volné místo na systémovém oddílu ({percent_used}% využito, "
"{free_space} volné)."
-#: plinth/modules/storage/__init__.py:328
+#: plinth/modules/storage/__init__.py:315
msgid "Low disk space"
msgstr ""
-#: plinth/modules/storage/forms.py:79
+#: plinth/modules/storage/forms.py:64
#, fuzzy
#| msgid "Invalid repository name."
msgid "Invalid directory name."
msgstr "Neplatný název repozitáře."
-#: plinth/modules/storage/forms.py:97
+#: plinth/modules/storage/forms.py:82
msgid "Directory does not exist."
msgstr ""
-#: plinth/modules/storage/forms.py:99
+#: plinth/modules/storage/forms.py:84
#, fuzzy
#| msgid "Download directory"
msgid "Path is not a directory."
msgstr "Složka pro stahování"
-#: plinth/modules/storage/forms.py:102
+#: plinth/modules/storage/forms.py:87
#, fuzzy
#| msgid "The device is mounted by another user."
msgid "Directory is not readable by the user."
msgstr "Zařízení je připojeno jiným uživatelem."
-#: plinth/modules/storage/forms.py:105
+#: plinth/modules/storage/forms.py:90
msgid "Directory is not writable by the user."
msgstr ""
-#: plinth/modules/storage/forms.py:110
+#: plinth/modules/storage/forms.py:95
#, fuzzy
#| msgid "Download directory"
msgid "Directory"
msgstr "Složka pro stahování"
-#: plinth/modules/storage/forms.py:113
+#: plinth/modules/storage/forms.py:98
msgid "Subdirectory (optional)"
msgstr ""
-#: plinth/modules/storage/forms.py:160
+#: plinth/modules/storage/forms.py:145
#, fuzzy
#| msgid "Shared"
msgid "Share"
msgstr "Sdílené"
-#: plinth/modules/storage/forms.py:168
+#: plinth/modules/storage/forms.py:153
msgid "Other directory (specify below)"
msgstr ""
-#: plinth/modules/storage/templates/storage.html:35
+#: plinth/modules/storage/templates/storage.html:20
msgid "The following storage devices are in use:"
msgstr "Jsou používána následující úložná zařízení:"
-#: plinth/modules/storage/templates/storage.html:41
+#: plinth/modules/storage/templates/storage.html:26
msgid "Label"
msgstr "Štítek"
-#: plinth/modules/storage/templates/storage.html:42
+#: plinth/modules/storage/templates/storage.html:27
msgid "Mount Point"
msgstr "Přípojný bod"
-#: plinth/modules/storage/templates/storage.html:90
+#: plinth/modules/storage/templates/storage.html:75
msgid "Partition Expansion"
msgstr "Zvětšení oddílu"
-#: plinth/modules/storage/templates/storage.html:92
+#: plinth/modules/storage/templates/storage.html:77
#, python-format
msgid ""
"There is %(expandable_root_size)s of unallocated space available after your "
@@ -5745,13 +5858,13 @@ msgstr ""
"Kořenový oddíl je možné zvětšit a místo tak využít. Poskytne vám to další "
"prostor pro ukládání vašich souborů."
-#: plinth/modules/storage/templates/storage.html:102
-#: plinth/modules/storage/templates/storage_expand.html:39
-#: plinth/modules/storage/views.py:76
+#: plinth/modules/storage/templates/storage.html:87
+#: plinth/modules/storage/templates/storage_expand.html:24
+#: plinth/modules/storage/views.py:58
msgid "Expand Root Partition"
msgstr "Zvětšit kořenový oddíl"
-#: plinth/modules/storage/templates/storage_expand.html:29
+#: plinth/modules/storage/templates/storage_expand.html:14
#, python-format
msgid ""
"Please backup your data before proceeding. After this operation, "
@@ -5761,39 +5874,30 @@ msgstr ""
"Než budete pokračovat, zazálohujte svá data. Po provedení této operace na "
"kořenovém oddílu bude k dispozici %(expandable_root_size)s dalšího prostoru."
-#: plinth/modules/storage/views.py:88
+#: plinth/modules/storage/views.py:70
#, python-brace-format
msgid "Error expanding partition: {exception}"
msgstr "Chyba při zvětšování oddílu: {exception}"
-#: plinth/modules/storage/views.py:91
+#: plinth/modules/storage/views.py:73
msgid "Partition expanded successfully."
msgstr "Oddíl úspěšně zvětšen."
-#: plinth/modules/storage/views.py:109
+#: plinth/modules/storage/views.py:91
#, python-brace-format
msgid "{drive_vendor} {drive_model} can be safely unplugged."
msgstr "{drive_vendor} {drive_model} je možné bezpečně odebrat."
-#: plinth/modules/storage/views.py:113
+#: plinth/modules/storage/views.py:95
msgid "Device can be safely unplugged."
msgstr "Zařízení je možné bezpečně odebrat."
-#: plinth/modules/storage/views.py:123
+#: plinth/modules/storage/views.py:105
#, python-brace-format
msgid "Error ejecting device: {error_message}"
msgstr "Chyba při vysouvání zařízení: {error_message}"
-#: plinth/modules/syncthing/__init__.py:40
-#: plinth/modules/syncthing/manifest.py:28
-msgid "Syncthing"
-msgstr "Syncthing"
-
-#: plinth/modules/syncthing/__init__.py:44
-msgid "File Synchronization"
-msgstr "Synchronizace souborů"
-
-#: plinth/modules/syncthing/__init__.py:47
+#: plinth/modules/syncthing/__init__.py:26
msgid ""
"Syncthing is an application to synchronize files across multiple devices, e."
"g. your desktop computer and mobile phone. Creation, modification, or "
@@ -5805,7 +5909,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:52
+#: plinth/modules/syncthing/__init__.py:31
#, python-brace-format
msgid ""
"Running Syncthing on {box_name} provides an extra synchronization point for "
@@ -5822,19 +5926,20 @@ msgstr ""
"být synchronizována do odlišné sady složek. Webové rozhraní {box_name} je k "
"dispozici pouze pro uživatele náležející do skupiny „admin“."
-#: plinth/modules/syncthing/__init__.py:63
+#: plinth/modules/syncthing/__init__.py:40
msgid "Administer Syncthing application"
msgstr "Spravovat aplikaci Syncthing"
-#: plinth/modules/tahoe/__init__.py:43
-msgid "Tahoe-LAFS"
-msgstr "Tahoe-LAFS"
+#: plinth/modules/syncthing/__init__.py:54
+#: plinth/modules/syncthing/manifest.py:13
+msgid "Syncthing"
+msgstr "Syncthing"
-#: plinth/modules/tahoe/__init__.py:47
-msgid "Distributed File Storage"
-msgstr "Distribuované souborové úložiště"
+#: plinth/modules/syncthing/__init__.py:55
+msgid "File Synchronization"
+msgstr "Synchronizace souborů"
-#: plinth/modules/tahoe/__init__.py:134
+#: plinth/modules/tahoe/__init__.py:30
msgid ""
"Tahoe-LAFS is a decentralized secure file storage system. It uses provider "
"independent security to store files over a distributed network of storage "
@@ -5846,7 +5951,7 @@ msgstr ""
"poskytovateli nezávislé zabezpečení. I když některé z uzlů přestanou "
"fungovat, své soubory můžete získat ze zbývajících uzlů."
-#: plinth/modules/tahoe/__init__.py:139
+#: plinth/modules/tahoe/__init__.py:35
#, python-brace-format
msgid ""
"This {box_name} hosts a storage node and an introducer by default. "
@@ -5856,7 +5961,15 @@ msgstr ""
"Tento {box_name} nese ve výchozím stavu úložný uzel a uvaděč. Je možné "
"přidat další uvaděče, které představí tento uzel ostatním úložným uzlům."
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:33
+#: plinth/modules/tahoe/__init__.py:66
+msgid "Tahoe-LAFS"
+msgstr "Tahoe-LAFS"
+
+#: plinth/modules/tahoe/__init__.py:68
+msgid "Distributed File Storage"
+msgstr "Distribuované souborové úložiště"
+
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:17
#, python-format
msgid ""
"The Tahoe-LAFS server domain is set to %(domain_name)s. Changing the "
@@ -5869,37 +5982,33 @@ msgstr ""
"ZTRACENA. K Tahoe-LAFS můžete přistupovat na https://%(domain_name)s:5678."
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:55
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:39
msgid "Local introducer"
msgstr "Místní uvaděč"
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:43
#: plinth/modules/tahoe/templates/tahoe-post-setup.html:59
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:75
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:92
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:76
msgid "Pet Name"
msgstr "Jméno domácího mazlíčka"
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:72
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:56
msgid "Add new introducer"
msgstr "Přidat nový uvaděč"
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:83
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:67
msgid "Add"
msgstr "Přidat"
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:88
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:72
msgid "Connected introducers"
msgstr "Připojené uvaděče"
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:105
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:89
msgid "Remove"
msgstr "Odebrat"
-#: plinth/modules/tor/__init__.py:47
-msgid "Tor"
-msgstr "Tor"
-
-#: plinth/modules/tor/__init__.py:52
+#: plinth/modules/tor/__init__.py:33
msgid ""
"Tor is an anonymous communication system. You can learn more about it from "
"the Tor Project website. For "
@@ -5913,56 +6022,60 @@ msgstr ""
"prohlížeč Tor Browser."
-#: plinth/modules/tor/__init__.py:83
+#: plinth/modules/tor/__init__.py:55
+msgid "Tor"
+msgstr "Tor"
+
+#: plinth/modules/tor/__init__.py:66
#, fuzzy
#| msgid "Tor Hidden Service"
msgid "Tor Onion Service"
msgstr "Tor skrytá služba"
-#: plinth/modules/tor/__init__.py:87
+#: plinth/modules/tor/__init__.py:70
msgid "Tor Socks Proxy"
msgstr "Tor Socks proxy"
-#: plinth/modules/tor/__init__.py:91
+#: plinth/modules/tor/__init__.py:74
msgid "Tor Bridge Relay"
msgstr "Předávájící Tor most"
-#: plinth/modules/tor/__init__.py:112
+#: plinth/modules/tor/__init__.py:95
msgid "Tor relay port available"
msgstr "Port Tor předávání k dispozici"
-#: plinth/modules/tor/__init__.py:122
+#: plinth/modules/tor/__init__.py:105
msgid "Obfs3 transport registered"
msgstr "Obfs3 transport zaregistrován"
-#: plinth/modules/tor/__init__.py:132
+#: plinth/modules/tor/__init__.py:115
msgid "Obfs4 transport registered"
msgstr "Obfs4 transport zaregistrován"
-#: plinth/modules/tor/__init__.py:225
+#: plinth/modules/tor/__init__.py:208
#, 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:236
+#: plinth/modules/tor/__init__.py:219
#, python-brace-format
msgid "Confirm Tor usage at {url} on tcp{kind}"
msgstr "Potvrdit použití Tor na {url} na tcp{kind}"
-#: plinth/modules/tor/forms.py:46
+#: plinth/modules/tor/forms.py:31
msgid ""
"Enter a valid bridge with this format: [transport] IP:ORPort [fingerprint]"
msgstr "Zadejte platný most v tomto formátu: [přenos] IP:ORPort [otisk]"
-#: plinth/modules/tor/forms.py:88
+#: plinth/modules/tor/forms.py:73
msgid "Enable Tor"
msgstr "Zapnout Tor"
-#: plinth/modules/tor/forms.py:90
+#: plinth/modules/tor/forms.py:75
msgid "Use upstream bridges to connect to Tor network"
msgstr "Pro připojení k Tor síti použijte nadřazené mosty"
-#: plinth/modules/tor/forms.py:92
+#: plinth/modules/tor/forms.py:77
msgid ""
"When enabled, the bridges configured below will be used to connect to the "
"Tor network. Use this option if your Internet Service Provider (ISP) blocks "
@@ -5973,11 +6086,11 @@ msgstr ""
"(ISP) blokuje nebo cenzuruje připojení k Tor síti. Toto vypne předávací "
"režimy."
-#: plinth/modules/tor/forms.py:97
+#: plinth/modules/tor/forms.py:82
msgid "Upstream bridges"
msgstr "Nadřazené mosty"
-#: plinth/modules/tor/forms.py:99
+#: plinth/modules/tor/forms.py:84
msgid ""
"You can get some bridges from https://bridges.torproject.org/ and copy/paste the bridge information "
@@ -5987,11 +6100,11 @@ msgstr ""
"\">https://bridges.torproject.org/ a zkopírovat informace odtud. V "
"současnosti podporované transporty jsou none, obfs3, obfs4 a scamblesuit."
-#: plinth/modules/tor/forms.py:105
+#: plinth/modules/tor/forms.py:90
msgid "Enable Tor relay"
msgstr "Zapnout Tor předávání"
-#: plinth/modules/tor/forms.py:106
+#: plinth/modules/tor/forms.py:91
#, python-brace-format
msgid ""
"When enabled, your {box_name} will run a Tor relay and donate bandwidth to "
@@ -6002,11 +6115,11 @@ msgstr ""
"přenosové pásmo pro Tor síť. Toto udělejte pokud má přípojka rychlost více "
"než 2 megabity/s v obou směrech."
-#: plinth/modules/tor/forms.py:111
+#: plinth/modules/tor/forms.py:96
msgid "Enable Tor bridge relay"
msgstr "Zapnout předávání Tor mostu"
-#: plinth/modules/tor/forms.py:113
+#: plinth/modules/tor/forms.py:98
msgid ""
"When enabled, relay information is published in the Tor bridge database "
"instead of public Tor relay database making it harder to censor this node. "
@@ -6016,13 +6129,13 @@ msgstr ""
"namísto veřejné databázi Tor předávání, čímž je těžší tento uzel cenzurovat. "
"Toto ostatním pomůže obcházet cenzuru."
-#: plinth/modules/tor/forms.py:118
+#: plinth/modules/tor/forms.py:103
#, fuzzy
#| msgid "Enable Tor Hidden Service"
msgid "Enable Tor Hidden Service"
msgstr "Zapnout Tor skrytou službu"
-#: plinth/modules/tor/forms.py:120
+#: plinth/modules/tor/forms.py:105
#, fuzzy, python-brace-format
#| msgid ""
#| "A hidden service will allow {box_name} to provide selected services (such "
@@ -6037,11 +6150,11 @@ msgstr ""
"chat) bez odhalení jeho polohy. Toto prozatím nepoužívejte, pokud "
"potřebujete silnou anonymitu."
-#: plinth/modules/tor/forms.py:125
+#: plinth/modules/tor/forms.py:110
msgid "Download software packages over Tor"
msgstr "Stahovat balíčky software prostřednictvím sítě Tor"
-#: plinth/modules/tor/forms.py:126
+#: plinth/modules/tor/forms.py:111
msgid ""
"When enabled, software will be downloaded over the Tor network for "
"installations and upgrades. This adds a degree of privacy and security "
@@ -6051,37 +6164,37 @@ msgstr ""
"síť Tor. To zlepší soukromí a zabezpečení při stahování software (ale je "
"pomalejší)."
-#: plinth/modules/tor/forms.py:141
+#: plinth/modules/tor/forms.py:126
msgid "Specify at least one upstream bridge to use upstream bridges."
msgstr "Pro používání nadřazených mostů je třeba určit alespoň jeden takový."
-#: plinth/modules/tor/manifest.py:29
+#: plinth/modules/tor/manifest.py:14
msgid "Tor Browser"
msgstr "Tor prohlížeč"
-#: plinth/modules/tor/manifest.py:45
+#: plinth/modules/tor/manifest.py:30
msgid "Orbot: Proxy with Tor"
msgstr "Orbot: proxy s Tor"
-#: plinth/modules/tor/templates/tor.html:41
+#: plinth/modules/tor/templates/tor.html:26
msgid "Tor configuration is being updated"
msgstr "Nastavení Tor jsou aktualizována"
-#: plinth/modules/tor/templates/tor.html:50
+#: plinth/modules/tor/templates/tor.html:35
#, fuzzy
#| msgid "Hidden Service"
msgid "Onion Service"
msgstr "Skrytá služba"
-#: plinth/modules/tor/templates/tor.html:52
+#: plinth/modules/tor/templates/tor.html:37
msgid "Ports"
msgstr "Porty"
-#: plinth/modules/tor/templates/tor.html:82
+#: plinth/modules/tor/templates/tor.html:67
msgid "Relay"
msgstr "Předávání"
-#: plinth/modules/tor/templates/tor.html:84
+#: plinth/modules/tor/templates/tor.html:69
#, python-format
msgid ""
"If your %(box_name)s is behind a router or firewall, you should make sure "
@@ -6091,21 +6204,16 @@ msgstr ""
"byste ověřit, zda jsou otevřené a předávané následující porty (pokud je "
"třeba):"
-#: plinth/modules/tor/templates/tor.html:112
+#: plinth/modules/tor/templates/tor.html:97
msgid "SOCKS"
msgstr "SOCKS"
-#: plinth/modules/tor/templates/tor.html:115
+#: plinth/modules/tor/templates/tor.html:100
#, python-format
msgid "A Tor SOCKS port is available on your %(box_name)s on TCP port 9050."
msgstr "Tor SOCKS port je k dispozici na vašem %(box_name)s na TCP portu 9050."
-#: plinth/modules/transmission/__init__.py:41
-#: plinth/modules/transmission/manifest.py:24
-msgid "Transmission"
-msgstr "Transmission"
-
-#: plinth/modules/transmission/__init__.py:48
+#: plinth/modules/transmission/__init__.py:27
msgid ""
"BitTorrent is a peer-to-peer file sharing protocol. Transmission daemon "
"handles Bitorrent file sharing. Note that BitTorrent is not anonymous."
@@ -6114,15 +6222,12 @@ msgstr ""
"Transmision obsluhuje sdílení souborů Bitorrent. Poznamenejme, že BitTorrent "
"není anonymní."
-#: plinth/modules/ttrss/__init__.py:43 plinth/modules/ttrss/manifest.py:34
-msgid "Tiny Tiny RSS"
-msgstr "Tiny Tiny RSS"
+#: plinth/modules/transmission/__init__.py:48
+#: plinth/modules/transmission/manifest.py:9
+msgid "Transmission"
+msgstr "Transmission"
-#: plinth/modules/ttrss/__init__.py:47
-msgid "News Feed Reader"
-msgstr "Čtečka novinek"
-
-#: plinth/modules/ttrss/__init__.py:50
+#: plinth/modules/ttrss/__init__.py:29
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 "
@@ -6131,7 +6236,7 @@ msgstr ""
"Tiny Tiny RSS je čtečka a slučovač novinek (RSS/Atom), navržená pro čtení "
"odkudkoli, ale s pohodlím podobným desktopové aplikaci."
-#: plinth/modules/ttrss/__init__.py:54
+#: plinth/modules/ttrss/__init__.py:33
#, fuzzy, python-brace-format
#| msgid ""
#| "When enabled, Tiny Tiny RSS will be available from /"
@@ -6145,7 +6250,7 @@ msgstr ""
"\">/tt-rss umístění na webovém serveru. Je přístupné pro libovolného uživatele s účtem na {box_name}."
-#: plinth/modules/ttrss/__init__.py:58
+#: plinth/modules/ttrss/__init__.py:37
#, fuzzy
#| msgid ""
#| "When using a mobile or desktop application for Tiny Tiny RSS, use the URL "
@@ -6158,64 +6263,72 @@ msgstr ""
"Při používání mobilní nebo desktopové aplikace pro Tiny Tiny RSS použijte "
"pro připojování URL adresu /tt-rss-app."
-#: plinth/modules/ttrss/__init__.py:65
+#: plinth/modules/ttrss/__init__.py:42
msgid "Read and subscribe to news feeds"
msgstr "Číst a přihlásit se k odběru novinek"
-#: plinth/modules/ttrss/manifest.py:25
+#: plinth/modules/ttrss/__init__.py:56 plinth/modules/ttrss/manifest.py:19
+msgid "Tiny Tiny RSS"
+msgstr "Tiny Tiny RSS"
+
+#: plinth/modules/ttrss/__init__.py:57
+msgid "News Feed Reader"
+msgstr "Čtečka novinek"
+
+#: plinth/modules/ttrss/manifest.py:10
msgid "Tiny Tiny RSS (Fork)"
msgstr "Tiny Tiny RSS (fork)"
-#: plinth/modules/upgrades/__init__.py:37 plinth/templates/setup.html:89
-msgid "Update"
-msgstr "Aktualizovat"
-
-#: plinth/modules/upgrades/__init__.py:40
+#: plinth/modules/upgrades/__init__.py:23
msgid "Check for and apply the latest software and security updates."
msgstr ""
"Zjistit dostupnost a uplatnit nejnovější aktualizace a opravy zabezpečení."
-#: plinth/modules/upgrades/__init__.py:84
+#: plinth/modules/upgrades/__init__.py:38 plinth/templates/setup.html:74
+msgid "Update"
+msgstr "Aktualizovat"
+
+#: plinth/modules/upgrades/__init__.py:71
#, fuzzy
#| msgid "FreedomBox Foundation"
msgid "FreedomBox Updated"
msgstr "Nadace FreedomBox"
-#: plinth/modules/upgrades/forms.py:28
+#: plinth/modules/upgrades/forms.py:13
msgid "Enable auto-update"
msgstr "Zapnout automatické aktualizace"
-#: plinth/modules/upgrades/forms.py:29
+#: plinth/modules/upgrades/forms.py:14
msgid "When enabled, FreedomBox automatically updates once a day."
msgstr "Když je zapnuto, FreedomBox se jednou denně automaticky zaktualizuje."
-#: plinth/modules/upgrades/templates/upgrades-new-release.html:24
+#: plinth/modules/upgrades/templates/upgrades-new-release.html:9
#, fuzzy, python-format
#| msgid "%(box_name)s is up to date."
msgid "%(box_name)s Updated"
msgstr "%(box_name)s je aktuální."
-#: plinth/modules/upgrades/templates/upgrades-new-release.html:28
+#: plinth/modules/upgrades/templates/upgrades-new-release.html:13
#, python-format
msgid ""
"%(box_name)s has been updated to version %(version)s. See the release announcement."
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades-new-release.html:37
-#: plinth/templates/notifications.html:59
+#: plinth/modules/upgrades/templates/upgrades-new-release.html:22
+#: plinth/templates/notifications.html:44
msgid "Dismiss"
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades.html:45
+#: plinth/modules/upgrades/templates/upgrades.html:30
msgid "Update now"
msgstr "Aktualizovat nyní"
-#: plinth/modules/upgrades/templates/upgrades.html:54
+#: plinth/modules/upgrades/templates/upgrades.html:39
msgid "Updating..."
msgstr "Aktualizace…"
-#: plinth/modules/upgrades/templates/upgrades.html:59
+#: plinth/modules/upgrades/templates/upgrades.html:44
#, fuzzy
#| msgid ""
#| "This may take a long time to complete. During an update, "
@@ -6230,53 +6343,49 @@ msgstr ""
"aktualizace není možné instalovat aplikace. Také webové rozhraní může být "
"dočasně nedostupné a zobrazovat chybu. V takovém případě ho načtěte znovu."
-#: plinth/modules/upgrades/templates/upgrades.html:73
+#: plinth/modules/upgrades/templates/upgrades.html:58
msgid "Toggle recent update logs"
msgstr "Vyp/zap. záznamy událostí při nedávných aktualizacích"
-#: plinth/modules/upgrades/templates/upgrades_configure.html:26
-#: plinth/modules/upgrades/templates/upgrades_configure.html:27
-#: plinth/modules/upgrades/views.py:107
+#: plinth/modules/upgrades/templates/upgrades_configure.html:11
+#: plinth/modules/upgrades/templates/upgrades_configure.html:12
+#: plinth/modules/upgrades/views.py:89
msgid "Manual update"
msgstr "Ruční aktualizace"
-#: plinth/modules/upgrades/views.py:66
+#: plinth/modules/upgrades/views.py:48
#, python-brace-format
msgid "Error when configuring unattended-upgrades: {error}"
msgstr "Chyba při nastavování bezobslužných aktualizací: {error}"
-#: plinth/modules/upgrades/views.py:70
+#: plinth/modules/upgrades/views.py:52
msgid "Automatic upgrades enabled"
msgstr "Automatické aktualizace zapnuty"
-#: plinth/modules/upgrades/views.py:73
+#: plinth/modules/upgrades/views.py:55
msgid "Automatic upgrades disabled"
msgstr "Automatické aktualizace vypnuty"
-#: plinth/modules/upgrades/views.py:75
+#: plinth/modules/upgrades/views.py:57
msgid "Settings unchanged"
msgstr "Nastavení nezměněna"
-#: plinth/modules/upgrades/views.py:101
+#: plinth/modules/upgrades/views.py:83
msgid "Upgrade process started."
msgstr "Proces přechodu na novější verze zahájen."
-#: plinth/modules/upgrades/views.py:104
+#: plinth/modules/upgrades/views.py:86
msgid "Starting upgrade failed."
msgstr "Spouštění přechodu na novější verzi se nezdařilo."
-#: plinth/modules/users/__init__.py:51
-msgid "Users and Groups"
-msgstr "Uživatelé a skupiny"
-
-#: plinth/modules/users/__init__.py:54
+#: plinth/modules/users/__init__.py:37
msgid ""
"Create and managed user accounts. These accounts serve as centralized "
"authentication mechanism for most apps. Some apps further require a user "
"account to be part of a group to authorize the user to access the app."
msgstr ""
-#: plinth/modules/users/__init__.py:59
+#: plinth/modules/users/__init__.py:42
#, python-brace-format
msgid ""
"Any user may login to {box_name} web interface to see a list of apps "
@@ -6284,36 +6393,40 @@ msgid ""
"group may alter apps or system settings."
msgstr ""
-#: plinth/modules/users/__init__.py:128
+#: plinth/modules/users/__init__.py:64
+msgid "Users and Groups"
+msgstr "Uživatelé a skupiny"
+
+#: plinth/modules/users/__init__.py:115
#, python-brace-format
msgid "Check LDAP entry \"{search_item}\""
msgstr "Zkontrolujte LDAP položku „{search_item}“"
-#: plinth/modules/users/forms.py:43
+#: plinth/modules/users/forms.py:28
msgid "Access to all services and system settings"
msgstr "Přístup ke všem službám a nastavení systému"
-#: plinth/modules/users/forms.py:59
+#: plinth/modules/users/forms.py:44
msgid "Username is taken or is reserved."
msgstr ""
"Toto uživatelské jméno je už používáno někým jiným nebo vyhrazeno pro systém."
-#: plinth/modules/users/forms.py:87
+#: plinth/modules/users/forms.py:72
#, fuzzy
#| msgid "Invalid server name"
msgid "Enter a valid username."
msgstr "Neplatný název serveru"
-#: plinth/modules/users/forms.py:93
+#: plinth/modules/users/forms.py:78
msgid ""
"Required. 150 characters or fewer. English letters, digits and @/./-/_ only."
msgstr ""
-#: plinth/modules/users/forms.py:106 plinth/modules/users/forms.py:222
+#: plinth/modules/users/forms.py:91 plinth/modules/users/forms.py:207
msgid "Permissions"
msgstr "Oprávnění"
-#: plinth/modules/users/forms.py:109
+#: plinth/modules/users/forms.py:94
msgid ""
"Select which services should be available to the new user. The user will be "
"able to log in to services that support single sign-on through LDAP, if they "
@@ -6327,20 +6440,20 @@ msgstr ""
"skupině správců (admin) se budou moci přihlásit všude. Mohou se k systému "
"přihlásit také prostřednictvím SSH a mají práva správy (sudo)."
-#: plinth/modules/users/forms.py:148 plinth/modules/users/forms.py:372
+#: plinth/modules/users/forms.py:133 plinth/modules/users/forms.py:357
msgid "Creating LDAP user failed."
msgstr "Vytvoření LDAP uživatele se nezdařilo."
-#: plinth/modules/users/forms.py:159
+#: plinth/modules/users/forms.py:144
#, python-brace-format
msgid "Failed to add new user to {group} group."
msgstr "Přidání nového uživatele do skupiny {group} se nezdařilo."
-#: plinth/modules/users/forms.py:173
+#: plinth/modules/users/forms.py:158
msgid "Authorized SSH Keys"
msgstr "Pověřené SSH klíče"
-#: plinth/modules/users/forms.py:175
+#: plinth/modules/users/forms.py:160
msgid ""
"Setting an SSH public key will allow this user to securely log in to the "
"system without using a password. You may enter multiple keys, one on each "
@@ -6350,84 +6463,84 @@ msgstr ""
"systému i bez zadávání hesla. Klíčů je možné vložit vícero, každý na vlastní "
"řádek. Prázdné řádky a ty, které začínají na znak # budou ignorovány."
-#: plinth/modules/users/forms.py:259
+#: plinth/modules/users/forms.py:244
msgid "Renaming LDAP user failed."
msgstr "Přejmenování LDAP uživatele se nezdařilo."
-#: plinth/modules/users/forms.py:271
+#: plinth/modules/users/forms.py:256
msgid "Failed to remove user from group."
msgstr "Odebrání uživatele ze skupiny se nezdařilo."
-#: plinth/modules/users/forms.py:282
+#: plinth/modules/users/forms.py:267
msgid "Failed to add user to group."
msgstr "Přidání uživatele do skupiny se nezdařilo."
-#: plinth/modules/users/forms.py:291
+#: plinth/modules/users/forms.py:276
msgid "Unable to set SSH keys."
msgstr "Nepodařilo se vložit SSH klíče."
-#: plinth/modules/users/forms.py:306
+#: plinth/modules/users/forms.py:291
#, fuzzy
#| msgid "Failed to add user to group."
msgid "Failed to change user status."
msgstr "Přidání uživatele do skupiny se nezdařilo."
-#: plinth/modules/users/forms.py:314
+#: plinth/modules/users/forms.py:299
msgid "Cannot delete the only administrator in the system."
msgstr "Není možné smazat účet jediného zbývajícího správce systému."
-#: plinth/modules/users/forms.py:346
+#: plinth/modules/users/forms.py:331
msgid "Changing LDAP user password failed."
msgstr "Změna hesla LDAP uživatele se nezdařila."
-#: plinth/modules/users/forms.py:381
+#: plinth/modules/users/forms.py:366
msgid "Failed to add new user to admin group."
msgstr "Přidání nového uživatele do skupiny správců (admin) se nezdařilo."
-#: plinth/modules/users/forms.py:398
+#: plinth/modules/users/forms.py:383
msgid "Failed to restrict console access."
msgstr "Omezení přístupu ke konzoli se nezdařilo."
-#: plinth/modules/users/forms.py:410
+#: plinth/modules/users/forms.py:395
msgid "User account created, you are now logged in"
msgstr "Uživatelský účet vytvořen, není jste jím přihlášeni"
-#: plinth/modules/users/templates/users_change_password.html:26
+#: plinth/modules/users/templates/users_change_password.html:11
#, python-format
msgid "Change Password for %(username)s"
msgstr "Změna hesla pro %(username)s"
-#: plinth/modules/users/templates/users_change_password.html:36
+#: plinth/modules/users/templates/users_change_password.html:21
msgid "Save Password"
msgstr "Uložit heslo"
-#: plinth/modules/users/templates/users_create.html:32
-#: plinth/modules/users/templates/users_list.html:42
-#: plinth/modules/users/templates/users_list.html:44
-#: plinth/modules/users/views.py:57
+#: plinth/modules/users/templates/users_create.html:17
+#: plinth/modules/users/templates/users_list.html:27
+#: plinth/modules/users/templates/users_list.html:29
+#: plinth/modules/users/views.py:42
msgid "Create User"
msgstr "Vytvořit uživatele"
-#: plinth/modules/users/templates/users_delete.html:26
-#: plinth/modules/users/views.py:139
+#: plinth/modules/users/templates/users_delete.html:11
+#: plinth/modules/users/views.py:121
msgid "Delete User"
msgstr "Smazat uživatele"
-#: plinth/modules/users/templates/users_delete.html:29
+#: plinth/modules/users/templates/users_delete.html:14
#, python-format
msgid "Delete user %(username)s permanently?"
msgstr "Nevratně smazat uživatele %(username)s?"
-#: plinth/modules/users/templates/users_delete.html:38
+#: plinth/modules/users/templates/users_delete.html:23
#, python-format
msgid "Delete %(username)s"
msgstr "Smazat %(username)s"
-#: plinth/modules/users/templates/users_firstboot.html:26
+#: plinth/modules/users/templates/users_firstboot.html:11
msgid "Administrator Account"
msgstr "Účet správce"
-#: plinth/modules/users/templates/users_firstboot.html:29
+#: plinth/modules/users/templates/users_firstboot.html:14
msgid ""
"Choose a username and password to access this web interface. The password "
"can be changed later. This user will be granted administrative privileges. "
@@ -6437,26 +6550,26 @@ msgstr ""
"možné později změnit. Tomuto uživateli budou dána práva správy. Později je "
"možné přidat další uživatele."
-#: plinth/modules/users/templates/users_firstboot.html:42
+#: plinth/modules/users/templates/users_firstboot.html:27
msgid "Create Account"
msgstr "Vytvořit účet"
-#: plinth/modules/users/templates/users_list.html:38
-#: plinth/modules/users/views.py:74
+#: plinth/modules/users/templates/users_list.html:23
+#: plinth/modules/users/views.py:59
msgid "Users"
msgstr "Uživatelé"
-#: plinth/modules/users/templates/users_list.html:57
+#: plinth/modules/users/templates/users_list.html:42
#, python-format
msgid "Delete user %(username)s"
msgstr "Smazat uživatele %(username)s"
-#: plinth/modules/users/templates/users_list.html:65
+#: plinth/modules/users/templates/users_list.html:50
#, python-format
msgid "Edit user %(username)s"
msgstr "Upravit uživatele %(username)s"
-#: plinth/modules/users/templates/users_update.html:30
+#: plinth/modules/users/templates/users_update.html:15
#, python-format
msgid ""
"Use the change password form to "
@@ -6465,59 +6578,54 @@ msgstr ""
"Heslo změníte pomocí formuláře pro změnu "
"hesla."
-#: plinth/modules/users/templates/users_update.html:42
-#: plinth/templates/language-selection.html:32
+#: plinth/modules/users/templates/users_update.html:27
+#: plinth/templates/language-selection.html:17
msgid "Save Changes"
msgstr "Uložit změny"
-#: plinth/modules/users/views.py:55
+#: plinth/modules/users/views.py:40
#, python-format
msgid "User %(username)s created."
msgstr "Uživatel %(username)s vytvořen."
-#: plinth/modules/users/views.py:93
+#: plinth/modules/users/views.py:75
#, python-format
msgid "User %(username)s updated."
msgstr "Uživatel %(username)s aktualizován."
-#: plinth/modules/users/views.py:94
+#: plinth/modules/users/views.py:76
msgid "Edit User"
msgstr "Upravit uživatele"
-#: plinth/modules/users/views.py:149
+#: plinth/modules/users/views.py:131
#, python-brace-format
msgid "User {user} deleted."
msgstr "Uživatel {user} smazán."
-#: plinth/modules/users/views.py:156
+#: plinth/modules/users/views.py:138
msgid "Deleting LDAP user failed."
msgstr "Smazání LDAP uživatele se nezdařilo."
-#: plinth/modules/users/views.py:165
+#: plinth/modules/users/views.py:147
msgid "Change Password"
msgstr "Změnit heslo"
-#: plinth/modules/users/views.py:166
+#: plinth/modules/users/views.py:148
msgid "Password changed successfully."
msgstr "Heslo úspěšně změněno."
-#: plinth/modules/wireguard/__init__.py:38
-#: plinth/modules/wireguard/manifest.py:29
-msgid "WireGuard"
-msgstr ""
-
-#: plinth/modules/wireguard/__init__.py:43
+#: plinth/modules/wireguard/__init__.py:24
msgid "WireGuard is a fast, modern, secure VPN tunnel."
msgstr ""
-#: plinth/modules/wireguard/__init__.py:45
+#: plinth/modules/wireguard/__init__.py:26
#, python-brace-format
msgid ""
"It can be used to connect to a VPN provider which supports WireGuard, and to "
"route all outgoing traffic from {box_name} through the VPN."
msgstr ""
-#: plinth/modules/wireguard/__init__.py:49
+#: plinth/modules/wireguard/__init__.py:30
#, python-brace-format
msgid ""
"A second use case is to connect a mobile device to {box_name} while "
@@ -6525,67 +6633,72 @@ msgid ""
"securely relayed through {box_name}."
msgstr ""
-#: plinth/modules/wireguard/forms.py:47
+#: plinth/modules/wireguard/__init__.py:52
+#: plinth/modules/wireguard/manifest.py:14
+msgid "WireGuard"
+msgstr ""
+
+#: plinth/modules/wireguard/forms.py:32
#, fuzzy
#| msgid "Invalid kite name"
msgid "Invalid key."
msgstr "Neplatný kite název"
-#: plinth/modules/wireguard/forms.py:76
-#: plinth/modules/wireguard/templates/wireguard.html:32
-#: plinth/modules/wireguard/templates/wireguard.html:89
-#: plinth/modules/wireguard/templates/wireguard_delete_server.html:38
+#: plinth/modules/wireguard/forms.py:61
+#: plinth/modules/wireguard/templates/wireguard.html:17
+#: plinth/modules/wireguard/templates/wireguard.html:74
+#: plinth/modules/wireguard/templates/wireguard_delete_server.html:23
#, fuzzy
#| msgid "Publish Key"
msgid "Public Key"
msgstr "Zveřejnit klíč"
-#: plinth/modules/wireguard/forms.py:77
+#: plinth/modules/wireguard/forms.py:62
msgid ""
"Public key of the peer. Example: "
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs= ."
msgstr ""
-#: plinth/modules/wireguard/forms.py:85
+#: plinth/modules/wireguard/forms.py:70
msgid "Endpoint of the server"
msgstr ""
-#: plinth/modules/wireguard/forms.py:86
+#: plinth/modules/wireguard/forms.py:71
msgid ""
"Domain name and port in the form \"ip:port\". Example: demo.wireguard."
"com:12912 ."
msgstr ""
-#: plinth/modules/wireguard/forms.py:91
+#: plinth/modules/wireguard/forms.py:76
#, fuzzy
#| msgid "Published key to keyserver."
msgid "Public key of the server"
msgstr "Klíč zveřejněn na server s klíči."
-#: plinth/modules/wireguard/forms.py:92
+#: plinth/modules/wireguard/forms.py:77
msgid ""
"Provided by the server operator, a long string of characters. Example: "
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs= ."
msgstr ""
-#: plinth/modules/wireguard/forms.py:97
+#: plinth/modules/wireguard/forms.py:82
#, fuzzy
#| msgid "A list of IP addresses, separated by space"
msgid "Client IP address provided by server"
msgstr "Seznam IP adres, jednotlivé položky oddělujte mezerou"
-#: plinth/modules/wireguard/forms.py:98
+#: plinth/modules/wireguard/forms.py:83
msgid ""
"IP address assigned to this machine on the VPN after connecting to the "
"endpoint. This value is usually provided by the server operator. Example: "
"192.168.0.10."
msgstr ""
-#: plinth/modules/wireguard/forms.py:104
+#: plinth/modules/wireguard/forms.py:89
msgid "Private key of this machine"
msgstr ""
-#: plinth/modules/wireguard/forms.py:105
+#: plinth/modules/wireguard/forms.py:90
msgid ""
"Optional. New public/private keys are generated if left blank. Public key "
"can then be provided to the server. This is the recommended way. However, "
@@ -6593,187 +6706,187 @@ msgid ""
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs= ."
msgstr ""
-#: plinth/modules/wireguard/forms.py:113
+#: plinth/modules/wireguard/forms.py:98
msgid "Pre-shared key"
msgstr ""
-#: plinth/modules/wireguard/forms.py:114
+#: plinth/modules/wireguard/forms.py:99
msgid ""
"Optional. A shared secret key provided by the server to add an additional "
"layer of security. Fill in only if provided. Example: "
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs=."
msgstr ""
-#: plinth/modules/wireguard/forms.py:120
+#: plinth/modules/wireguard/forms.py:105
msgid "Use this connection to send all outgoing traffic"
msgstr ""
-#: plinth/modules/wireguard/forms.py:122
+#: plinth/modules/wireguard/forms.py:107
msgid "Typically checked for a VPN service though which all traffic is sent."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:25
+#: plinth/modules/wireguard/templates/wireguard.html:10
#, fuzzy
#| msgid "Chat Server"
msgid "As a Server"
msgstr "Chat server"
-#: plinth/modules/wireguard/templates/wireguard.html:27
+#: plinth/modules/wireguard/templates/wireguard.html:12
msgid "Peers allowed to connect to this server:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:33
+#: plinth/modules/wireguard/templates/wireguard.html:18
msgid "Allowed IPs"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:34
-#: plinth/modules/wireguard/templates/wireguard.html:90
+#: plinth/modules/wireguard/templates/wireguard.html:19
+#: plinth/modules/wireguard/templates/wireguard.html:75
#, fuzzy
#| msgid "Create Connection"
msgid "Last Connected Time"
msgstr "Vytvořit připojení"
-#: plinth/modules/wireguard/templates/wireguard.html:53
+#: plinth/modules/wireguard/templates/wireguard.html:38
#, python-format
msgid "No peers configured to connect to this %(box_name)s yet."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:62
+#: plinth/modules/wireguard/templates/wireguard.html:47
#, python-format
msgid "Public key for this %(box_name)s:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:68
+#: plinth/modules/wireguard/templates/wireguard.html:53
#, fuzzy
#| msgid "No shares currently configured."
msgid "Not configured yet."
msgstr "Nyní není nastavené žádné sdílení."
-#: plinth/modules/wireguard/templates/wireguard.html:72
+#: plinth/modules/wireguard/templates/wireguard.html:57
#, fuzzy
#| msgid "Add new introducer"
msgid "Add a new peer"
msgstr "Přidat nový uvaděč"
-#: plinth/modules/wireguard/templates/wireguard.html:76
-#: plinth/modules/wireguard/views.py:69
+#: plinth/modules/wireguard/templates/wireguard.html:61
+#: plinth/modules/wireguard/views.py:51
msgid "Add Allowed Client"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:79
+#: plinth/modules/wireguard/templates/wireguard.html:64
#, fuzzy
#| msgid "Chat Client"
msgid "As a Client"
msgstr "Chatovací klient"
-#: plinth/modules/wireguard/templates/wireguard.html:81
+#: plinth/modules/wireguard/templates/wireguard.html:66
#, python-format
msgid "Servers that %(box_name)s will connect to:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:88
-#: plinth/modules/wireguard/templates/wireguard_delete_server.html:34
+#: plinth/modules/wireguard/templates/wireguard.html:73
+#: plinth/modules/wireguard/templates/wireguard_delete_server.html:19
msgid "Endpoint"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:111
+#: plinth/modules/wireguard/templates/wireguard.html:96
#, fuzzy
#| msgid "Authentication to remote server failed."
msgid "No connections to remote servers are configured yet."
msgstr "Ověření vůči vzdálenému serveru se nezdařilo."
-#: plinth/modules/wireguard/templates/wireguard.html:119
+#: plinth/modules/wireguard/templates/wireguard.html:104
#, fuzzy
#| msgid "Add new introducer"
msgid "Add a new server"
msgstr "Přidat nový uvaděč"
-#: plinth/modules/wireguard/templates/wireguard.html:123
-#: plinth/modules/wireguard/views.py:178
+#: plinth/modules/wireguard/templates/wireguard.html:108
+#: plinth/modules/wireguard/views.py:160
#, fuzzy
#| msgid "Add Connection"
msgid "Add Connection to Server"
msgstr "Přidat připojení"
-#: plinth/modules/wireguard/templates/wireguard_add_client.html:34
+#: plinth/modules/wireguard/templates/wireguard_add_client.html:19
#, fuzzy
#| msgid "IRC Client"
msgid "Add Client"
msgstr "IRC klient"
-#: plinth/modules/wireguard/templates/wireguard_delete_client.html:29
+#: plinth/modules/wireguard/templates/wireguard_delete_client.html:14
#, fuzzy
#| msgid "Are you sure that you want to remove this repository?"
msgid "Are you sure that you want to delete this client?"
msgstr "Opravdu chcete tento repozitář odebrat?"
-#: plinth/modules/wireguard/templates/wireguard_delete_server.html:29
+#: plinth/modules/wireguard/templates/wireguard_delete_server.html:14
#, fuzzy
#| msgid "Are you sure that you want to remove this repository?"
msgid "Are you sure that you want to delete this server?"
msgstr "Opravdu chcete tento repozitář odebrat?"
-#: plinth/modules/wireguard/templates/wireguard_edit_client.html:34
+#: plinth/modules/wireguard/templates/wireguard_edit_client.html:19
#, fuzzy
#| msgid "Chat Client"
msgid "Update Client"
msgstr "Chatovací klient"
-#: plinth/modules/wireguard/templates/wireguard_edit_server.html:34
+#: plinth/modules/wireguard/templates/wireguard_edit_server.html:19
#, fuzzy
#| msgid "Create Connection"
msgid "Update Connection"
msgstr "Vytvořit připojení"
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:27
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:12
#, python-format
msgid ""
"%(box_name)s will allow this client to connect to it. Ensure that the client "
"is configured with the following information."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:35
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:20
msgid "Client public key:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:39
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:24
msgid "IP address to use for client:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:43
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:46
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:28
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:31
msgid "Pre-shared key:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:47
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:32
#, fuzzy
#| msgid "Server domain"
msgid "Server endpoints:"
msgstr "Doména serveru"
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:55
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:42
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:40
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:27
#, fuzzy
#| msgid "Select verified SSH public key"
msgid "Server public key:"
msgstr "Vyberte ověřený SSH veřejný klíč"
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:65
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:64
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:50
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:49
msgid "Data transmitted:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:69
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:68
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:54
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:53
msgid "Data received:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:73
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:72
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:58
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:57
msgid "Latest handshake:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:29
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:14
#, python-format
msgid ""
"%(box_name)s will attempt to reach a WireGuard server with the following "
@@ -6781,152 +6894,152 @@ msgid ""
"public key and IP address."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:38
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:23
#, fuzzy
#| msgid "Server domain"
msgid "Server endpoint:"
msgstr "Doména serveru"
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:50
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:35
msgid "Public key of this machine:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:54
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:39
msgid "IP address of this machine:"
msgstr ""
-#: plinth/modules/wireguard/views.py:64
+#: plinth/modules/wireguard/views.py:46
#, fuzzy
#| msgid "Add new introducer"
msgid "Added new client."
msgstr "Přidat nový uvaděč"
-#: plinth/modules/wireguard/views.py:79 plinth/modules/wireguard/views.py:138
+#: plinth/modules/wireguard/views.py:61 plinth/modules/wireguard/views.py:120
#, fuzzy
#| msgid "A share with this name already exists."
msgid "Client with public key already exists"
msgstr "Sdílení s tímto názvem už existuje."
-#: plinth/modules/wireguard/views.py:92
+#: plinth/modules/wireguard/views.py:74
#, fuzzy
#| msgid "Email Client"
msgid "Allowed Client"
msgstr "E-mailový klient"
-#: plinth/modules/wireguard/views.py:114
+#: plinth/modules/wireguard/views.py:96
#, fuzzy
#| msgid "Update setup"
msgid "Updated client."
msgstr "Aktualizovat nastavení"
-#: plinth/modules/wireguard/views.py:119
+#: plinth/modules/wireguard/views.py:101
#, fuzzy
#| msgid "Email Client"
msgid "Modify Client"
msgstr "E-mailový klient"
-#: plinth/modules/wireguard/views.py:152
+#: plinth/modules/wireguard/views.py:134
#, fuzzy
#| msgid "Delete All"
msgid "Delete Allowed Client"
msgstr "Smazat vše"
-#: plinth/modules/wireguard/views.py:161
+#: plinth/modules/wireguard/views.py:143
#, fuzzy
#| msgid "Archive deleted."
msgid "Client deleted."
msgstr "Archiv smazán."
-#: plinth/modules/wireguard/views.py:163
+#: plinth/modules/wireguard/views.py:145
#, fuzzy
#| msgid "Repository not found"
msgid "Client not found"
msgstr "Repozitář nenalezen"
-#: plinth/modules/wireguard/views.py:173
+#: plinth/modules/wireguard/views.py:155
#, fuzzy
#| msgid "Added custom service"
msgid "Added new server."
msgstr "Uživatelem určená služba přidána"
-#: plinth/modules/wireguard/views.py:194
+#: plinth/modules/wireguard/views.py:176
#, fuzzy
#| msgid "Connection Type"
msgid "Connection to Server"
msgstr "Typ připojení"
-#: plinth/modules/wireguard/views.py:212
+#: plinth/modules/wireguard/views.py:194
#, fuzzy
#| msgid "Update setup"
msgid "Updated server."
msgstr "Aktualizovat nastavení"
-#: plinth/modules/wireguard/views.py:217
+#: plinth/modules/wireguard/views.py:199
#, fuzzy
#| msgid "Edit Connection"
msgid "Modify Connection to Server"
msgstr "Upravit připojení"
-#: plinth/modules/wireguard/views.py:254
+#: plinth/modules/wireguard/views.py:236
#, fuzzy
#| msgid "Delete Connection"
msgid "Delete Connection to Server"
msgstr "Smazat připojení"
-#: plinth/modules/wireguard/views.py:274
+#: plinth/modules/wireguard/views.py:256
#, fuzzy
#| msgid "Share deleted."
msgid "Server deleted."
msgstr "Sdílení smazáno."
-#: plinth/network.py:42
+#: plinth/network.py:27
msgid "PPPoE"
msgstr "PPPoE"
-#: plinth/network.py:43
+#: plinth/network.py:28
msgid "Generic"
msgstr "Obecné"
-#: plinth/package.py:137
+#: plinth/package.py:122
msgid "Error during installation"
msgstr "Chyba při instalaci"
-#: plinth/package.py:159
+#: plinth/package.py:144
msgid "installing"
msgstr "Instalace"
-#: plinth/package.py:161
+#: plinth/package.py:146
msgid "downloading"
msgstr "stahování"
-#: plinth/package.py:163
+#: plinth/package.py:148
msgid "media change"
msgstr "změna média"
-#: plinth/package.py:165
+#: plinth/package.py:150
#, python-brace-format
msgid "configuration file: {file}"
msgstr "soubor s nastaveními: {file}"
-#: plinth/templates/403.html:25
+#: plinth/templates/403.html:10
msgid "403 Forbidden"
msgstr "403 odepřeno"
-#: plinth/templates/403.html:29
+#: plinth/templates/403.html:14
#, python-format
msgid "You don't have permission to access %(request_path)s on this server."
msgstr "Nemáte oprávnění pro přístup k %(request_path)s na tomto serveru."
-#: plinth/templates/404.html:25
+#: plinth/templates/404.html:10
msgid "404"
msgstr "404"
-#: plinth/templates/404.html:28
+#: plinth/templates/404.html:13
#, python-format
msgid "Requested page %(request_path)s was not found."
msgstr "Požadovaná stránka %(request_path)s nebyla nalezena."
-#: plinth/templates/404.html:34
+#: plinth/templates/404.html:19
msgid ""
"If you believe this missing page should exist, please file a bug at the "
"FreedomBox Service (Plinth) project systému "
"hlášení chyb projektu FreedomBox Service (Plinth)."
-#: plinth/templates/500.html:25
+#: plinth/templates/500.html:10
msgid "500"
msgstr "500"
-#: plinth/templates/500.html:29
+#: plinth/templates/500.html:14
#, python-format
msgid ""
"This is an internal error and not something you caused or can fix. Please "
@@ -6953,115 +7066,119 @@ msgstr ""
"issues\">systému hlášení chyb abychom to mohli opravit. K hlášení také "
"přiložte záznam (log) stavu."
-#: plinth/templates/app.html:47
+#: plinth/templates/app-header.html:22
+msgid "Installation"
+msgstr "Instalace"
+
+#: plinth/templates/app.html:32
#, python-format
msgid "Service %(service_name)s is running."
msgstr "Služba %(service_name)s je spuštěná."
-#: plinth/templates/app.html:52
+#: plinth/templates/app.html:37
#, python-format
msgid "Service %(service_name)s is not running."
msgstr "Služba %(service_name)s není spuštěná."
-#: plinth/templates/base.html:50
+#: plinth/templates/base.html:35
#, python-format
msgid "Core functionality and web interface for %(box_name)s"
msgstr "Základní funkce a webové rozhraní pro %(box_name)s"
-#: plinth/templates/base.html:96
+#: plinth/templates/base.html:81
msgid "Toggle navigation"
msgstr "Přepnout navigaci"
-#: plinth/templates/base.html:120 plinth/templates/base.html:123
+#: plinth/templates/base.html:105 plinth/templates/base.html:108
msgid "Home"
msgstr "Domů"
-#: plinth/templates/base.html:128 plinth/templates/base.html:132
+#: plinth/templates/base.html:113 plinth/templates/base.html:117
msgid "Apps"
msgstr "Aplikace"
-#: plinth/templates/base.html:137 plinth/templates/base.html:141
+#: plinth/templates/base.html:122 plinth/templates/base.html:126
msgid "System"
msgstr "Systém"
-#: plinth/templates/base.html:173 plinth/templates/base.html:174
+#: plinth/templates/base.html:158 plinth/templates/base.html:159
msgid "Change password"
msgstr "Změnit heslo"
-#: plinth/templates/base.html:181 plinth/templates/base.html:182
+#: plinth/templates/base.html:166 plinth/templates/base.html:167
msgid "Restart"
msgstr "Restartovat"
-#: plinth/templates/base.html:187 plinth/templates/base.html:188
+#: plinth/templates/base.html:172 plinth/templates/base.html:173
msgid "Shut down"
msgstr "Vypnout"
-#: plinth/templates/base.html:195 plinth/templates/base.html:196
-#: plinth/templates/base.html:220 plinth/templates/base.html:222
+#: plinth/templates/base.html:180 plinth/templates/base.html:181
+#: plinth/templates/base.html:205 plinth/templates/base.html:207
msgid "Log out"
msgstr "Odhlásit"
-#: plinth/templates/base.html:204 plinth/templates/base.html:207
+#: plinth/templates/base.html:189 plinth/templates/base.html:192
msgid "Select language"
msgstr "Vyberte jazyk"
-#: plinth/templates/base.html:212 plinth/templates/base.html:214
+#: plinth/templates/base.html:197 plinth/templates/base.html:199
msgid "Log in"
msgstr "Přihlásit"
-#: plinth/templates/clients.html:32
+#: plinth/templates/clients.html:17
msgid "Web"
msgstr "Web"
-#: plinth/templates/clients.html:57
+#: plinth/templates/clients.html:42
msgid "Desktop"
msgstr "Desktop"
-#: plinth/templates/clients.html:68
+#: plinth/templates/clients.html:53
msgid "GNU/Linux"
msgstr "GNU/Linux"
-#: plinth/templates/clients.html:70
+#: plinth/templates/clients.html:55
msgid "Windows"
msgstr "Windows"
-#: plinth/templates/clients.html:72
+#: plinth/templates/clients.html:57
msgid "macOS"
msgstr "macOS"
-#: plinth/templates/clients.html:88
+#: plinth/templates/clients.html:73
msgid "Mobile"
msgstr "Mobilní"
-#: plinth/templates/clients.html:99
+#: plinth/templates/clients.html:84
msgid "Play Store"
msgstr "Obchod Play"
-#: plinth/templates/clients.html:101
+#: plinth/templates/clients.html:86
msgid "F-Droid"
msgstr "F-Droid"
-#: plinth/templates/clients.html:103
+#: plinth/templates/clients.html:88
msgid "App Store"
msgstr "Zdroj aplikací"
-#: plinth/templates/clients.html:119
+#: plinth/templates/clients.html:104
msgid "Package"
msgstr "Balíček"
-#: plinth/templates/clients.html:126
+#: plinth/templates/clients.html:111
msgid "Debian:"
msgstr "Debian:"
-#: plinth/templates/clients.html:129
+#: plinth/templates/clients.html:114
msgid "Homebrew:"
msgstr "Homebrew:"
-#: plinth/templates/clients.html:132
+#: plinth/templates/clients.html:117
msgid "RPM:"
msgstr "RPM:"
-#: plinth/templates/first_setup.html:39
+#: plinth/templates/first_setup.html:24
#, python-format
msgid ""
"Please wait for %(box_name)s to finish installation. You can start using "
@@ -7070,11 +7187,7 @@ msgstr ""
"Vyčkejte až %(box_name)s dokončí instalaci. Jakmile bude hotová, budete moci "
"začít svůj %(box_name)s používat."
-#: plinth/templates/header.html:36
-msgid "Installation"
-msgstr "Instalace"
-
-#: plinth/templates/index.html:37
+#: plinth/templates/index.html:22
#, python-format
msgid ""
"Enable some applications to add shortcuts to "
@@ -7083,11 +7196,11 @@ msgstr ""
"Odkazy na této stránce se objeví až po zapnutí nějakých aplikací."
-#: plinth/templates/index.html:59
+#: plinth/templates/index.html:44
msgid "Configure »"
msgstr "Nastavit »"
-#: plinth/templates/index.html:115
+#: plinth/templates/index.html:100
#, python-format
msgid ""
"%(box_name)s, a Debian pure blend, is a 100%% free software self-hosting web "
@@ -7099,7 +7212,7 @@ msgstr ""
"aplikací na malých strojích. Poskytuje nástroje pro online komunikaci, "
"respektující vaše soukromí a vlastnictví dat."
-#: plinth/templates/index.html:124
+#: plinth/templates/index.html:109
#, python-format
msgid ""
"This portal is a part of the %(box_name)s web interface. %(box_name)s is "
@@ -7110,41 +7223,41 @@ msgstr ""
"svobodný software, šířený pod licencí GNU Affero General Public License, "
"verze 3 a novějších."
-#: plinth/templates/index.html:144
+#: plinth/templates/index.html:129
msgid "Homepage"
msgstr "Domovská stránka"
-#: plinth/templates/index.html:147
+#: plinth/templates/index.html:132
msgid "Source Code"
msgstr "Zdrojové kódy"
-#: plinth/templates/index.html:150
+#: plinth/templates/index.html:135
msgid "Donate"
msgstr "Podpořit darem"
-#: plinth/templates/index.html:154
+#: plinth/templates/index.html:139
msgid "FreedomBox Foundation"
msgstr "Nadace FreedomBox"
-#: plinth/templates/index.html:161
+#: plinth/templates/index.html:146
msgid "IRC Chatroom"
msgstr "Chatovací místnost na IRC"
-#: plinth/templates/index.html:166
+#: plinth/templates/index.html:151
msgid "Mailing list"
msgstr "Poštovní konference"
-#: plinth/templates/internal-zone.html:26
+#: plinth/templates/internal-zone.html:11
#, python-format
msgid "%(service_name)s is available only on internal networks."
msgstr ""
"Služba %(service_name)s je k dispozici pouze na vnitřních sítích."
-#: plinth/templates/internal-zone.html:32
+#: plinth/templates/internal-zone.html:17
msgid "Currently there are no network interfaces configured as internal."
msgstr "V tuto chvíli není žádné ze síťových rozhraní nastavené jako vnitřní."
-#: plinth/templates/internal-zone.html:34
+#: plinth/templates/internal-zone.html:19
#, python-format
msgid ""
"Currently the following network interfaces are configured as internal: "
@@ -7153,17 +7266,17 @@ msgstr ""
"Jako vnitřní jsou v tuto chvíli nastavená následující síťová rozhraní: "
"%(interface_list)s"
-#: plinth/templates/notifications-dropdown.html:26
+#: plinth/templates/notifications-dropdown.html:11
#, fuzzy
#| msgid "No certificate"
msgid "Notifications"
msgstr "Žádný certifikát"
-#: plinth/templates/port-forwarding-info.html:23
+#: plinth/templates/port-forwarding-info.html:8
msgid "Port Forwarding"
msgstr "Předávání portů"
-#: plinth/templates/port-forwarding-info.html:26
+#: plinth/templates/port-forwarding-info.html:11
#, python-format
msgid ""
"If your FreedomBox is behind a router, you will need to set up port "
@@ -7174,15 +7287,15 @@ msgstr ""
"nastavit předávání portů. Přesměrovávány by měly být následující porty pro "
"%(service_name)s:"
-#: plinth/templates/setup.html:51
+#: plinth/templates/setup.html:36
msgid "Install this application?"
msgstr "Nainstalovat tuto aplikaci?"
-#: plinth/templates/setup.html:55
+#: plinth/templates/setup.html:40
msgid "This application needs an update. Update now?"
msgstr "Tato aplikace potřebuje aktualizovat. Provést nyní?"
-#: plinth/templates/setup.html:66
+#: plinth/templates/setup.html:51
msgid ""
"Another installation or upgrade is already running. Please wait for a few "
"moments before trying again."
@@ -7190,51 +7303,51 @@ msgstr ""
"Už je spuštěná jiná instalace nebo přechod na novější verzi. Počkejte chvíli "
"a zkuste to znovu."
-#: plinth/templates/setup.html:73
+#: plinth/templates/setup.html:58
msgid "This application is currently not available in your distribution."
msgstr ""
"Tato aplikace v současnosti není dostupná v repozitářích vámi používané "
"distribuce."
-#: plinth/templates/setup.html:87
+#: plinth/templates/setup.html:72
msgid "Install"
msgstr "Nainstalovat"
-#: plinth/templates/setup.html:98
+#: plinth/templates/setup.html:83
msgid "Performing pre-install operation"
msgstr "Provádění úkonů před instalací"
-#: plinth/templates/setup.html:102
+#: plinth/templates/setup.html:87
msgid "Performing post-install operation"
msgstr "Provádění úkonů po instalaci"
-#: plinth/templates/setup.html:107
+#: plinth/templates/setup.html:92
#, python-format
msgid "Installing %(package_names)s: %(status)s"
msgstr "Instalace %(package_names)s: %(status)s"
-#: plinth/templates/setup.html:117
+#: plinth/templates/setup.html:102
#, python-format
msgid "%(percentage)s%% complete"
msgstr "%(percentage)s%% dokončeno"
-#: plinth/templates/toolbar.html:38
+#: plinth/templates/toolbar.html:23
msgid "Launch web client"
msgstr "Spustit webového klienta"
-#: plinth/templates/toolbar.html:47
+#: plinth/templates/toolbar.html:32
msgid "Client Apps"
msgstr "Klientské aplikace"
-#: plinth/views.py:179
+#: plinth/views.py:189
msgid "Application enabled"
msgstr "Aplikace zapnuta"
-#: plinth/views.py:182
+#: plinth/views.py:192
msgid "Application disabled"
msgstr "Aplikace vypnuta"
-#: plinth/web_framework.py:190
+#: plinth/web_framework.py:107
msgid "Gujarati"
msgstr "gudžarátština"
diff --git a/plinth/locale/da/LC_MESSAGES/django.po b/plinth/locale/da/LC_MESSAGES/django.po
index 24157fcd6..9927db0a7 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: 2020-02-14 21:26+0200\n"
+"POT-Creation-Date: 2020-02-24 19:12-0500\n"
"PO-Revision-Date: 2016-07-03 21:44+0000\n"
"Last-Translator: Mikkel Kirkgaard Nielsen
SSH key-based authentication is not yet "
"possible."
msgstr ""
-#: plinth/modules/backups/forms.py:224
+#: plinth/modules/backups/forms.py:209
msgid "Remote backup repository already exists."
msgstr ""
-#: plinth/modules/backups/forms.py:230
+#: plinth/modules/backups/forms.py:215
msgid "Select verified SSH public key"
msgstr ""
-#: plinth/modules/backups/repository.py:48
+#: plinth/modules/backups/repository.py:33
msgid ""
"Connection refused - make sure you provided correct credentials and the "
"server is running."
msgstr ""
-#: plinth/modules/backups/repository.py:55
+#: plinth/modules/backups/repository.py:40
#, fuzzy
#| msgid "Connection Type"
msgid "Connection refused"
msgstr "Forbindelsestype"
-#: plinth/modules/backups/repository.py:62
+#: plinth/modules/backups/repository.py:47
#, fuzzy
#| msgid "packages not found"
msgid "Repository not found"
msgstr "pakker ikke fundet"
-#: plinth/modules/backups/repository.py:67
+#: plinth/modules/backups/repository.py:52
msgid "Incorrect encryption passphrase"
msgstr ""
-#: plinth/modules/backups/repository.py:72
+#: plinth/modules/backups/repository.py:57
msgid "SSH access denied"
msgstr ""
-#: plinth/modules/backups/repository.py:78
+#: plinth/modules/backups/repository.py:63
msgid "Repository path is neither empty nor is an existing backups repository."
msgstr ""
-#: plinth/modules/backups/repository.py:152
+#: plinth/modules/backups/repository.py:137
msgid "Existing repository is not encrypted."
msgstr ""
-#: plinth/modules/backups/repository.py:337
+#: plinth/modules/backups/repository.py:322
#, fuzzy, python-brace-format
#| msgid "{box_name} Manual"
msgid "{box_name} storage"
msgstr "{box_name} Brugervejledning"
-#: plinth/modules/backups/templates/backups.html:45
-#: plinth/modules/backups/views.py:77
+#: plinth/modules/backups/templates/backups.html:30
+#: plinth/modules/backups/views.py:60
#, fuzzy
#| msgid "PageKite Account"
msgid "Create a new backup"
msgstr "PageKite-konto"
-#: plinth/modules/backups/templates/backups.html:49
+#: plinth/modules/backups/templates/backups.html:34
#, fuzzy
#| msgid "PageKite Account"
msgid "Create Backup"
msgstr "PageKite-konto"
-#: plinth/modules/backups/templates/backups.html:52
+#: plinth/modules/backups/templates/backups.html:37
msgid "Upload and restore a backup archive"
msgstr ""
-#: plinth/modules/backups/templates/backups.html:56
+#: plinth/modules/backups/templates/backups.html:41
#, fuzzy
#| msgid "Save Password"
msgid "Upload and Restore"
msgstr "Gem Kodeord"
-#: plinth/modules/backups/templates/backups.html:59
+#: plinth/modules/backups/templates/backups.html:44
#, fuzzy
#| msgid "Existing custom services"
msgid "Add a backup location"
msgstr "Eksisterende brugerdefinerede tjenester"
-#: plinth/modules/backups/templates/backups.html:63
+#: plinth/modules/backups/templates/backups.html:48
#, fuzzy
#| msgid "Existing custom services"
msgid "Add Backup Location"
msgstr "Eksisterende brugerdefinerede tjenester"
-#: plinth/modules/backups/templates/backups.html:66
+#: plinth/modules/backups/templates/backups.html:51
#, fuzzy
#| msgid "Existing custom services"
msgid "Add a remote backup location"
msgstr "Eksisterende brugerdefinerede tjenester"
-#: plinth/modules/backups/templates/backups.html:70
+#: plinth/modules/backups/templates/backups.html:55
#, fuzzy
#| msgid "Existing custom services"
msgid "Add Remote Backup Location"
msgstr "Eksisterende brugerdefinerede tjenester"
-#: plinth/modules/backups/templates/backups.html:73
+#: plinth/modules/backups/templates/backups.html:58
#, fuzzy
#| msgid "Existing custom services"
msgid "Existing Backups"
msgstr "Eksisterende brugerdefinerede tjenester"
-#: plinth/modules/backups/templates/backups_add_remote_repository.html:34
+#: plinth/modules/backups/templates/backups_add_remote_repository.html:19
#, python-format
msgid ""
"The credentials for this repository are stored on your %(box_name)s.
"
@@ -394,88 +394,89 @@ msgid ""
"if chosen, the encryption passphrase."
msgstr ""
-#: plinth/modules/backups/templates/backups_add_remote_repository.html:43
+#: plinth/modules/backups/templates/backups_add_remote_repository.html:28
#, fuzzy
#| msgid "Create Connection"
msgid "Create Location"
msgstr "Opret Forbindelse"
-#: plinth/modules/backups/templates/backups_add_repository.html:34
-#: plinth/modules/gitweb/views.py:70
+#: plinth/modules/backups/templates/backups_add_repository.html:19
+#: plinth/modules/gitweb/views.py:50
#, fuzzy
#| msgid "Create User"
msgid "Create Repository"
msgstr "Opret Bruger"
-#: plinth/modules/backups/templates/backups_delete.html:27
+#: plinth/modules/backups/templates/backups_delete.html:12
#, fuzzy
#| msgid "Delete user permanently?"
msgid "Delete this archive permanently?"
msgstr "Slet bruger permanent?"
-#: plinth/modules/backups/templates/backups_delete.html:33
-#: plinth/modules/ikiwiki/forms.py:30
-#: plinth/modules/networks/templates/connection_show.html:78
-#: plinth/modules/sharing/templates/sharing.html:52
+#: plinth/modules/backups/templates/backups_delete.html:18
+#: plinth/modules/ikiwiki/forms.py:15
+#: plinth/modules/networks/templates/connection_show.html:63
+#: plinth/modules/sharing/templates/sharing.html:37
msgid "Name"
msgstr "Navn"
-#: plinth/modules/backups/templates/backups_delete.html:34
+#: plinth/modules/backups/templates/backups_delete.html:19
#, fuzzy
#| msgid "Time Zone"
msgid "Time"
msgstr "Tidszone"
-#: plinth/modules/backups/templates/backups_delete.html:51
+#: plinth/modules/backups/templates/backups_delete.html:36
#, fuzzy, python-format
#| msgid "Delete %(name)s"
msgid "Delete Archive %(name)s"
msgstr "Slet %(name)s"
-#: plinth/modules/backups/templates/backups_form.html:35
-#: plinth/modules/gitweb/templates/gitweb_create_edit.html:35
-#: plinth/modules/networks/templates/router_configuration_update.html:34
-#: plinth/modules/pagekite/templates/pagekite_custom_services.html:47
-#: plinth/modules/sharing/templates/sharing_add_edit.html:35
+#: plinth/modules/backups/templates/backups_form.html:20
+#: plinth/modules/gitweb/templates/gitweb_create_edit.html:20
+#: plinth/modules/networks/templates/internet_connectivity_type.html:18
+#: plinth/modules/networks/templates/router_configuration_update.html:19
+#: plinth/modules/pagekite/templates/pagekite_custom_services.html:32
+#: plinth/modules/sharing/templates/sharing_add_edit.html:20
msgid "Submit"
msgstr "Indsend"
-#: plinth/modules/backups/templates/backups_repository_remove.html:28
+#: plinth/modules/backups/templates/backups_repository_remove.html:13
msgid "Are you sure that you want to remove this repository?"
msgstr ""
-#: plinth/modules/backups/templates/backups_repository_remove.html:34
+#: plinth/modules/backups/templates/backups_repository_remove.html:19
msgid ""
"The remote repository will not be deleted. This just removes the repository "
"from the listing on the backup page, you can add it again later on."
msgstr ""
-#: plinth/modules/backups/templates/backups_repository_remove.html:46
+#: plinth/modules/backups/templates/backups_repository_remove.html:31
#, fuzzy
#| msgid "Documentation"
msgid "Remove Location"
msgstr "Dokumentation"
-#: plinth/modules/backups/templates/backups_restore.html:30
+#: plinth/modules/backups/templates/backups_restore.html:15
#, fuzzy
#| msgid "Delete %(name)s"
msgid "Restore data from"
msgstr "Slet %(name)s"
-#: plinth/modules/backups/templates/backups_restore.html:43
-#: plinth/modules/backups/views.py:171
+#: plinth/modules/backups/templates/backups_restore.html:28
+#: plinth/modules/backups/views.py:154
#, fuzzy
#| msgid "reStore"
msgid "Restore"
msgstr "reStore"
-#: plinth/modules/backups/templates/backups_restore.html:47
+#: plinth/modules/backups/templates/backups_restore.html:32
#, fuzzy
#| msgid "reStore"
msgid "Restoring"
msgstr "reStore"
-#: plinth/modules/backups/templates/backups_upload.html:32
+#: plinth/modules/backups/templates/backups_upload.html:17
#, python-format
msgid ""
"\n"
@@ -487,170 +488,160 @@ msgid ""
" "
msgstr ""
-#: plinth/modules/backups/templates/backups_upload.html:42
-#: plinth/modules/help/templates/statuslog.html:38
+#: plinth/modules/backups/templates/backups_upload.html:27
+#: plinth/modules/help/templates/statuslog.html:23
msgid "Caution:"
msgstr ""
-#: plinth/modules/backups/templates/backups_upload.html:43
+#: plinth/modules/backups/templates/backups_upload.html:28
#, python-format
msgid ""
"You have %(max_filesize)s available to restore a backup. Exceeding this "
"limit can leave your %(box_name)s unusable."
msgstr ""
-#: plinth/modules/backups/templates/backups_upload.html:56
+#: plinth/modules/backups/templates/backups_upload.html:41
#, fuzzy
#| msgid "Download my profile"
msgid "Upload file"
msgstr "Hent min profil"
-#: plinth/modules/backups/templates/verify_ssh_hostkey.html:33
+#: plinth/modules/backups/templates/verify_ssh_hostkey.html:18
#, python-format
msgid ""
"Could not reach SSH host %(hostname)s. Please verify that the host is up and "
"accepting connections."
msgstr ""
-#: plinth/modules/backups/templates/verify_ssh_hostkey.html:43
+#: plinth/modules/backups/templates/verify_ssh_hostkey.html:28
#, python-format
msgid ""
"The authenticity of SSH host %(hostname)s could not be established. The host "
"advertises the following SSH public keys. Please verify any one of them."
msgstr ""
-#: plinth/modules/backups/templates/verify_ssh_hostkey.html:55
+#: plinth/modules/backups/templates/verify_ssh_hostkey.html:40
msgid "How to verify?"
msgstr ""
-#: plinth/modules/backups/templates/verify_ssh_hostkey.html:60
+#: plinth/modules/backups/templates/verify_ssh_hostkey.html:45
msgid ""
"Run the following command on the SSH host machine. The output should match "
"one of the provided options. You can also use dsa, ecdsa, ed25519 etc. "
"instead of rsa, by choosing the corresponding file."
msgstr ""
-#: plinth/modules/backups/templates/verify_ssh_hostkey.html:75
+#: plinth/modules/backups/templates/verify_ssh_hostkey.html:60
msgid "Verify Host"
msgstr ""
-#: plinth/modules/backups/views.py:72
+#: plinth/modules/backups/views.py:55
msgid "Archive created."
msgstr ""
-#: plinth/modules/backups/views.py:99
+#: plinth/modules/backups/views.py:82
#, fuzzy
#| msgid "Delete"
msgid "Delete Archive"
msgstr "Slet"
-#: plinth/modules/backups/views.py:111
+#: plinth/modules/backups/views.py:94
#, fuzzy
#| msgid "{name} deleted."
msgid "Archive deleted."
msgstr "{name} slettet."
-#: plinth/modules/backups/views.py:124
+#: plinth/modules/backups/views.py:107
msgid "Upload and restore a backup"
msgstr ""
-#: plinth/modules/backups/views.py:159
+#: plinth/modules/backups/views.py:142
msgid "Restored files from backup."
msgstr ""
-#: plinth/modules/backups/views.py:186
+#: plinth/modules/backups/views.py:169
msgid "No backup file found."
msgstr ""
-#: plinth/modules/backups/views.py:194
+#: plinth/modules/backups/views.py:177
msgid "Restore from uploaded file"
msgstr ""
-#: plinth/modules/backups/views.py:251
+#: plinth/modules/backups/views.py:234
msgid "No additional disks available to add a repository."
msgstr ""
-#: plinth/modules/backups/views.py:259
+#: plinth/modules/backups/views.py:242
#, fuzzy
#| msgid "Create User"
msgid "Create backup repository"
msgstr "Opret Bruger"
-#: plinth/modules/backups/views.py:286
+#: plinth/modules/backups/views.py:269
msgid "Create remote backup repository"
msgstr ""
-#: plinth/modules/backups/views.py:305
+#: plinth/modules/backups/views.py:288
#, fuzzy
#| msgid "Create User"
msgid "Added new remote SSH repository."
msgstr "Opret Bruger"
-#: plinth/modules/backups/views.py:327
+#: plinth/modules/backups/views.py:310
msgid "Verify SSH hostkey"
msgstr ""
-#: plinth/modules/backups/views.py:353
+#: plinth/modules/backups/views.py:336
msgid "SSH host already verified."
msgstr ""
-#: plinth/modules/backups/views.py:363
+#: plinth/modules/backups/views.py:346
msgid "SSH host verified."
msgstr ""
-#: plinth/modules/backups/views.py:377
+#: plinth/modules/backups/views.py:360
msgid "SSH host public key could not be verified."
msgstr ""
-#: plinth/modules/backups/views.py:379
+#: plinth/modules/backups/views.py:362
msgid "Authentication to remote server failed."
msgstr ""
-#: plinth/modules/backups/views.py:381
+#: plinth/modules/backups/views.py:364
#, fuzzy
#| msgid "Error installing application: {error}"
msgid "Error establishing connection to server: {}"
msgstr "Kunne ikke installere applikation: {error}"
-#: plinth/modules/backups/views.py:392
+#: plinth/modules/backups/views.py:375
#, fuzzy
#| msgid "packages not found"
msgid "Repository removed."
msgstr "pakker ikke fundet"
-#: plinth/modules/backups/views.py:406
+#: plinth/modules/backups/views.py:389
msgid "Remove Repository"
msgstr ""
-#: plinth/modules/backups/views.py:415
+#: plinth/modules/backups/views.py:398
msgid "Repository removed. Backups were not deleted."
msgstr ""
-#: plinth/modules/backups/views.py:425
+#: plinth/modules/backups/views.py:408
msgid "Unmounting failed!"
msgstr ""
-#: plinth/modules/backups/views.py:440 plinth/modules/backups/views.py:444
+#: plinth/modules/backups/views.py:423 plinth/modules/backups/views.py:427
msgid "Mounting failed"
msgstr ""
-#: plinth/modules/bind/__init__.py:36
-msgid "BIND"
-msgstr ""
-
-#: plinth/modules/bind/__init__.py:38
-#, fuzzy
-#| msgid "Domain Name"
-msgid "Domain Name Server"
-msgstr "Domænenavn"
-
-#: plinth/modules/bind/__init__.py:45
+#: plinth/modules/bind/__init__.py:29
msgid ""
"BIND enables you to publish your Domain Name System (DNS) information on the "
"Internet, and to resolve DNS queries for your user devices on your network."
msgstr ""
-#: plinth/modules/bind/__init__.py:49
+#: plinth/modules/bind/__init__.py:33
#, python-brace-format
msgid ""
"Currently, on {box_name}, BIND is only used to resolve DNS queries for other "
@@ -658,43 +649,79 @@ msgid ""
"connection from {box_name}."
msgstr ""
-#: plinth/modules/bind/forms.py:37
+#: plinth/modules/bind/__init__.py:82
+msgid "BIND"
+msgstr ""
+
+#: plinth/modules/bind/__init__.py:83
+#, fuzzy
+#| msgid "Domain Name"
+msgid "Domain Name Server"
+msgstr "Domænenavn"
+
+#: plinth/modules/bind/forms.py:22
msgid "Forwarders"
msgstr ""
-#: plinth/modules/bind/forms.py:38
+#: plinth/modules/bind/forms.py:23
msgid ""
"A list DNS servers, separated by space, to which requests will be forwarded"
msgstr ""
-#: plinth/modules/bind/forms.py:42
+#: plinth/modules/bind/forms.py:27
#, fuzzy
#| msgid "Enable Dynamic DNS"
msgid "Enable DNSSEC"
msgstr "Aktiver Dynamisk DNS"
-#: plinth/modules/bind/forms.py:43
+#: plinth/modules/bind/forms.py:28
msgid "Enable Domain Name System Security Extensions"
msgstr ""
-#: plinth/modules/bind/views.py:58 plinth/modules/deluge/views.py:67
-#: plinth/modules/dynamicdns/views.py:171 plinth/modules/openvpn/views.py:153
-#: plinth/modules/shadowsocks/views.py:79
-#: plinth/modules/transmission/views.py:73
+#: plinth/modules/bind/templates/bind.html:11
+#, fuzzy
+#| msgid "Server domain"
+msgid "Serving Domains"
+msgstr "Serverdomæne"
+
+#: plinth/modules/bind/templates/bind.html:16
+#: plinth/modules/ikiwiki/forms.py:12
+#: plinth/modules/networks/templates/connection_show.html:83
+#: plinth/modules/storage/templates/storage.html:28
+msgid "Type"
+msgstr "Type"
+
+#: plinth/modules/bind/templates/bind.html:17
+#, fuzzy
+#| msgid "Domain Name"
+msgid "Domain Names"
+msgstr "Domænenavn"
+
+#: plinth/modules/bind/templates/bind.html:18
+#, fuzzy
+#| msgid "Service"
+msgid "Serving"
+msgstr "Tjeneste"
+
+#: plinth/modules/bind/templates/bind.html:19
+#, fuzzy
+#| msgid "IP address"
+msgid "IP addresses"
+msgstr "IP-adresse"
+
+#: plinth/modules/bind/templates/bind.html:35
+#: plinth/modules/bind/templates/bind.html:37
+msgid "Refresh IP address and domains"
+msgstr ""
+
+#: plinth/modules/bind/views.py:73 plinth/modules/deluge/views.py:46
+#: plinth/modules/dynamicdns/views.py:150 plinth/modules/openvpn/views.py:134
+#: plinth/modules/shadowsocks/views.py:59
+#: plinth/modules/transmission/views.py:52
msgid "Configuration updated"
msgstr "Konfiguration opdateret"
-#: plinth/modules/cockpit/__init__.py:45 plinth/modules/cockpit/manifest.py:27
-msgid "Cockpit"
-msgstr ""
-
-#: plinth/modules/cockpit/__init__.py:49
-#, fuzzy
-#| msgid "Server domain"
-msgid "Server Administration"
-msgstr "Serverdomæne"
-
-#: plinth/modules/cockpit/__init__.py:53
+#: plinth/modules/cockpit/__init__.py:32
#, python-brace-format
msgid ""
"Cockpit is a server manager that makes it easy to administer GNU/Linux "
@@ -703,7 +730,7 @@ msgid ""
"console operations is also available."
msgstr ""
-#: plinth/modules/cockpit/__init__.py:59
+#: plinth/modules/cockpit/__init__.py:38
#, fuzzy, python-brace-format
#| msgid ""
#| "When enabled, Tiny Tiny RSS will be available from /"
@@ -715,63 +742,73 @@ msgstr ""
"Når aktiveret, vil Tiny Tiny RSS være tilgængelige på stien /tt-rss på webserveren."
-#: plinth/modules/cockpit/__init__.py:63
+#: plinth/modules/cockpit/__init__.py:42
msgid ""
"Cockpit requires that you access it through a domain name. It will not work "
"when accessed using an IP address as part of the URL."
msgstr ""
-#: plinth/modules/cockpit/templates/cockpit.html:26
+#: plinth/modules/cockpit/__init__.py:59 plinth/modules/cockpit/manifest.py:12
+msgid "Cockpit"
+msgstr ""
+
+#: plinth/modules/cockpit/__init__.py:61
+#, fuzzy
+#| msgid "Server domain"
+msgid "Server Administration"
+msgstr "Serverdomæne"
+
+#: plinth/modules/cockpit/templates/cockpit.html:11
msgid "Access"
msgstr ""
-#: plinth/modules/cockpit/templates/cockpit.html:29
+#: plinth/modules/cockpit/templates/cockpit.html:14
msgid "Cockpit will only work when accessed using the following URLs."
msgstr ""
-#: plinth/modules/config/__init__.py:37
-msgid "General Configuration"
-msgstr "Generel Konfiguration"
-
-#: plinth/modules/config/__init__.py:40
+#: plinth/modules/config/__init__.py:23
msgid ""
"Here you can set some general configuration options like hostname, domain "
"name, webserver home page etc."
msgstr ""
-#: plinth/modules/config/__init__.py:67 plinth/modules/dynamicdns/views.py:44
-#: plinth/modules/i2p/views.py:31 plinth/modules/names/templates/names.html:44
-#: plinth/modules/names/templates/names.html:58
-#: plinth/modules/snapshot/views.py:41
-#: plinth/modules/tahoe/templates/tahoe-pre-setup.html:39
+#: plinth/modules/config/__init__.py:50
+msgid "General Configuration"
+msgstr "Generel Konfiguration"
+
+#: plinth/modules/config/__init__.py:55 plinth/modules/dynamicdns/views.py:29
+#: plinth/modules/i2p/views.py:16 plinth/modules/names/templates/names.html:29
+#: plinth/modules/names/templates/names.html:43
+#: plinth/modules/snapshot/views.py:26
+#: plinth/modules/tahoe/templates/tahoe-pre-setup.html:24
msgid "Configure"
msgstr "Konfigurer"
-#: plinth/modules/config/__init__.py:71 plinth/modules/config/forms.py:76
-#: plinth/modules/dynamicdns/forms.py:110
+#: plinth/modules/config/__init__.py:59 plinth/modules/config/forms.py:61
+#: plinth/modules/dynamicdns/forms.py:95
msgid "Domain Name"
msgstr "Domænenavn"
-#: plinth/modules/config/forms.py:42 plinth/modules/config/forms.py:88
-#: plinth/modules/dynamicdns/forms.py:113
+#: plinth/modules/config/forms.py:27 plinth/modules/config/forms.py:73
+#: plinth/modules/dynamicdns/forms.py:98
msgid "Invalid domain name"
msgstr "Ugyldigt domænenavn"
-#: plinth/modules/config/forms.py:50
+#: plinth/modules/config/forms.py:35
#, fuzzy
#| msgid "Default"
msgid "Apache Default"
msgstr "Standard"
-#: plinth/modules/config/forms.py:51
+#: plinth/modules/config/forms.py:36
msgid "FreedomBox Service (Plinth)"
msgstr ""
-#: plinth/modules/config/forms.py:63
+#: plinth/modules/config/forms.py:48
msgid "Hostname"
msgstr "Værtsnavn"
-#: plinth/modules/config/forms.py:65
+#: plinth/modules/config/forms.py:50
#, python-brace-format
msgid ""
"Hostname is the local name by which other devices on the local network can "
@@ -784,11 +821,11 @@ msgstr ""
"derimellem må kun være bogstaver, tal og bindestreger. Den samlede længde "
"skal være 63 tegn eller derunder."
-#: plinth/modules/config/forms.py:72
+#: plinth/modules/config/forms.py:57
msgid "Invalid hostname"
msgstr "Ugyldigt værtsnavn"
-#: plinth/modules/config/forms.py:78
+#: plinth/modules/config/forms.py:63
#, python-brace-format
msgid ""
"Domain name is the global name by which other devices on the Internet can "
@@ -804,13 +841,13 @@ msgstr ""
"bogstaver, tal og bindestreger. Hvert ord skal være på 63 tegn eller "
"derunder. Den samlede længde skal være 253 tegn eller derunder."
-#: plinth/modules/config/forms.py:93
+#: plinth/modules/config/forms.py:78
#, fuzzy
#| msgid "Web Server (HTTP)"
msgid "Webserver Home Page"
msgstr "Webserver (HTTP)"
-#: plinth/modules/config/forms.py:95
+#: plinth/modules/config/forms.py:80
#, python-brace-format
msgid ""
"Choose the default page that must be served when someone visits your "
@@ -820,74 +857,64 @@ msgid ""
"explicitly type /plinth or /freedombox to reach {box_name} Service (Plinth)."
msgstr ""
-#: plinth/modules/config/forms.py:106
+#: plinth/modules/config/forms.py:91
msgid "Show advanced apps and features"
msgstr ""
-#: plinth/modules/config/forms.py:107
+#: plinth/modules/config/forms.py:92
msgid "Show apps and features that require more technical knowledge."
msgstr ""
-#: plinth/modules/config/views.py:65
+#: plinth/modules/config/views.py:47
#, python-brace-format
msgid "Error setting hostname: {exception}"
msgstr "Kunne ikke sætte værtsnavn: {exception}"
-#: plinth/modules/config/views.py:68
+#: plinth/modules/config/views.py:50
msgid "Hostname set"
msgstr "Værtsnavn gemt"
-#: plinth/modules/config/views.py:77
+#: plinth/modules/config/views.py:59
#, python-brace-format
msgid "Error setting domain name: {exception}"
msgstr "Kunne ikke sætte domænenavn: {exception}"
-#: plinth/modules/config/views.py:80
+#: plinth/modules/config/views.py:62
msgid "Domain name set"
msgstr "Domænenavn gemt"
-#: plinth/modules/config/views.py:88
+#: plinth/modules/config/views.py:70
#, fuzzy, python-brace-format
#| msgid "Error setting hostname: {exception}"
msgid "Error setting webserver home page: {exception}"
msgstr "Kunne ikke sætte værtsnavn: {exception}"
-#: plinth/modules/config/views.py:91
+#: plinth/modules/config/views.py:73
msgid "Webserver home page set"
msgstr ""
-#: plinth/modules/config/views.py:99
+#: plinth/modules/config/views.py:81
#, fuzzy, python-brace-format
#| msgid "Error setting domain name: {exception}"
msgid "Error changing advanced mode: {exception}"
msgstr "Kunne ikke sætte domænenavn: {exception}"
-#: plinth/modules/config/views.py:104
+#: plinth/modules/config/views.py:86
msgid "Showing advanced apps and features"
msgstr ""
-#: plinth/modules/config/views.py:107
+#: plinth/modules/config/views.py:89
msgid "Hiding advanced apps and features"
msgstr ""
-#: plinth/modules/coquelicot/__init__.py:40
-msgid "Coquelicot"
-msgstr ""
-
-#: plinth/modules/coquelicot/__init__.py:42 plinth/modules/samba/__init__.py:50
-#, fuzzy
-#| msgid "Enable Shaarli"
-msgid "File Sharing"
-msgstr "Aktiver Shaarli"
-
-#: plinth/modules/coquelicot/__init__.py:45
+#: plinth/modules/coquelicot/__init__.py:24
msgid ""
"Coquelicot is a \"one-click\" file sharing web application with a focus on "
"protecting users' privacy. It is best used for quickly sharing a single "
"file. "
msgstr ""
-#: plinth/modules/coquelicot/__init__.py:48
+#: plinth/modules/coquelicot/__init__.py:27
msgid ""
"This Coquelicot instance is exposed to the public but requires an upload "
"password to prevent unauthorized access. You can set a new upload password "
@@ -895,55 +922,61 @@ msgid ""
"password is \"test\"."
msgstr ""
-#: plinth/modules/coquelicot/forms.py:30
+#: plinth/modules/coquelicot/__init__.py:45
+msgid "Coquelicot"
+msgstr ""
+
+#: plinth/modules/coquelicot/__init__.py:47 plinth/modules/samba/__init__.py:62
+#, fuzzy
+#| msgid "Enable Shaarli"
+msgid "File Sharing"
+msgstr "Aktiver Shaarli"
+
+#: plinth/modules/coquelicot/forms.py:15
#, fuzzy
#| msgid "Save Password"
msgid "Upload Password"
msgstr "Gem Kodeord"
-#: plinth/modules/coquelicot/forms.py:31
+#: plinth/modules/coquelicot/forms.py:16
msgid ""
"Set a new upload password for Coquelicot. Leave this field blank to keep the "
"current password."
msgstr ""
-#: plinth/modules/coquelicot/forms.py:35
+#: plinth/modules/coquelicot/forms.py:20
msgid "Maximum File Size (in MiB)"
msgstr ""
-#: plinth/modules/coquelicot/forms.py:36
+#: plinth/modules/coquelicot/forms.py:21
msgid "Set the maximum size of the files that can be uploaded to Coquelicot."
msgstr ""
-#: plinth/modules/coquelicot/manifest.py:24
+#: plinth/modules/coquelicot/manifest.py:9
msgid "coquelicot"
msgstr ""
-#: plinth/modules/coquelicot/views.py:58
+#: plinth/modules/coquelicot/views.py:37
#, fuzzy
#| msgid "Password"
msgid "Upload password updated"
msgstr "Kodeord"
-#: plinth/modules/coquelicot/views.py:61
+#: plinth/modules/coquelicot/views.py:40
msgid "Failed to update upload password"
msgstr ""
-#: plinth/modules/coquelicot/views.py:69
+#: plinth/modules/coquelicot/views.py:48
#, fuzzy
#| msgid "Configuration updated"
msgid "Maximum file size updated"
msgstr "Konfiguration opdateret"
-#: plinth/modules/coquelicot/views.py:72
+#: plinth/modules/coquelicot/views.py:51
msgid "Failed to update maximum file size"
msgstr ""
-#: plinth/modules/datetime/__init__.py:39
-msgid "Date & Time"
-msgstr "Dato & Tid"
-
-#: plinth/modules/datetime/__init__.py:42
+#: plinth/modules/datetime/__init__.py:25
#, fuzzy
#| msgid ""
#| "Network time server is a program that maintians the system time in "
@@ -955,15 +988,19 @@ msgstr ""
"Netværkstidsserver er et program der holder systemets tid synkroniseret med "
"servere på internettet."
-#: plinth/modules/datetime/__init__.py:97
+#: plinth/modules/datetime/__init__.py:42
+msgid "Date & Time"
+msgstr "Dato & Tid"
+
+#: plinth/modules/datetime/__init__.py:85
msgid "Time synchronized to NTP server"
msgstr ""
-#: plinth/modules/datetime/forms.py:35
+#: plinth/modules/datetime/forms.py:20
msgid "Time Zone"
msgstr "Tidszone"
-#: plinth/modules/datetime/forms.py:36
+#: plinth/modules/datetime/forms.py:21
#, fuzzy
#| msgid ""
#| "Set your time zone to get accurate timestamps. This will set the "
@@ -975,37 +1012,24 @@ msgstr ""
"Sæt din tidszone for at få præcise tidsstempler. Dette vil ændre hele "
"systemets tidszone."
-#: plinth/modules/datetime/forms.py:47
+#: plinth/modules/datetime/forms.py:32
msgid "-- no time zone set --"
msgstr "-- ingen tidszone valgt --"
-#: plinth/modules/datetime/views.py:64
+#: plinth/modules/datetime/views.py:45
#, python-brace-format
msgid "Error setting time zone: {exception}"
msgstr "Kunne ikke sætte tidszone: {exception}"
-#: plinth/modules/datetime/views.py:67
+#: plinth/modules/datetime/views.py:48
msgid "Time zone set"
msgstr "Tidszone gemt"
-#: plinth/modules/deluge/__init__.py:39 plinth/modules/deluge/manifest.py:24
-#, fuzzy
-#| msgid "Enable Deluge"
-msgid "Deluge"
-msgstr "Aktiver Deluge"
-
-#: plinth/modules/deluge/__init__.py:43
-#: plinth/modules/transmission/__init__.py:45
-#, fuzzy
-#| msgid "BitTorrent Web Client (Deluge)"
-msgid "BitTorrent Web Client"
-msgstr "BitTorrent Webklient (Deluge)"
-
-#: plinth/modules/deluge/__init__.py:46
+#: plinth/modules/deluge/__init__.py:25
msgid "Deluge is a BitTorrent client that features a Web UI."
msgstr "Deluge er en BitTorrent-klient som har et webbaseret brugerinterface."
-#: plinth/modules/deluge/__init__.py:47
+#: plinth/modules/deluge/__init__.py:26
#, fuzzy
#| msgid ""
#| "When enabled, the Deluge web client will be available from /deluge på webserveren. Standardkodeordet er 'deluge', men du "
"bør logge ind og ændre det med det samme du har aktiveret denne tjeneste."
-#: plinth/modules/deluge/__init__.py:51
-#: plinth/modules/transmission/__init__.py:57
+#: plinth/modules/deluge/__init__.py:30
+#: plinth/modules/transmission/__init__.py:34
msgid "Download files using BitTorrent applications"
msgstr ""
-#: plinth/modules/deluge/forms.py:35 plinth/modules/transmission/forms.py:35
+#: plinth/modules/deluge/__init__.py:46 plinth/modules/deluge/manifest.py:9
+#, fuzzy
+#| msgid "Enable Deluge"
+msgid "Deluge"
+msgstr "Aktiver Deluge"
+
+#: plinth/modules/deluge/__init__.py:47
+#: plinth/modules/transmission/__init__.py:50
+#, fuzzy
+#| msgid "BitTorrent Web Client (Deluge)"
+msgid "BitTorrent Web Client"
+msgstr "BitTorrent Webklient (Deluge)"
+
+#: plinth/modules/deluge/forms.py:20 plinth/modules/transmission/forms.py:20
msgid "Download directory"
msgstr "Download-mappe"
-#: plinth/modules/deluge/manifest.py:25
+#: plinth/modules/deluge/manifest.py:10
msgid "Bittorrent client written in Python/PyGTK"
msgstr ""
-#: plinth/modules/diagnostics/__init__.py:33
-msgid "Diagnostics"
-msgstr "Diagnosticering"
-
-#: plinth/modules/diagnostics/__init__.py:36
+#: plinth/modules/diagnostics/__init__.py:19
msgid ""
"The system diagnostic test will run a number of checks on your system to "
"confirm that applications and services are working as expected."
@@ -1045,78 +1078,82 @@ msgstr ""
"Systemets diagnostiske test vil udføre en række tjek af dit system for at "
"afgøre om applikationer og tjenester virker som forventet."
-#: plinth/modules/diagnostics/diagnostics.py:65
+#: plinth/modules/diagnostics/__init__.py:37
+msgid "Diagnostics"
+msgstr "Diagnosticering"
+
+#: plinth/modules/diagnostics/diagnostics.py:48
msgid "Diagnostic Test"
msgstr "Diagnostisk Test"
-#: plinth/modules/diagnostics/templates/diagnostics.html:43
-#: plinth/modules/diagnostics/templates/diagnostics_button.html:28
-#: plinth/modules/diagnostics/templates/diagnostics_button.html:31
+#: plinth/modules/diagnostics/templates/diagnostics.html:28
+#: plinth/modules/diagnostics/templates/diagnostics_button.html:13
+#: plinth/modules/diagnostics/templates/diagnostics_button.html:16
msgid "Run Diagnostics"
msgstr "Kør Diagnostik"
-#: plinth/modules/diagnostics/templates/diagnostics.html:46
+#: plinth/modules/diagnostics/templates/diagnostics.html:31
msgid "Diagnostics test is currently running"
msgstr "Diagnostisk test kører"
-#: plinth/modules/diagnostics/templates/diagnostics.html:59
+#: plinth/modules/diagnostics/templates/diagnostics.html:44
msgid "Results"
msgstr "Resultater"
-#: plinth/modules/diagnostics/templates/diagnostics.html:67
-#: plinth/modules/diagnostics/templates/diagnostics_app.html:27
+#: plinth/modules/diagnostics/templates/diagnostics.html:52
+#: plinth/modules/diagnostics/templates/diagnostics_app.html:12
#, python-format
msgid "App: %(app_id)s"
msgstr ""
-#: plinth/modules/diagnostics/templates/diagnostics_app.html:25
+#: plinth/modules/diagnostics/templates/diagnostics_app.html:10
msgid "Diagnostic Results"
msgstr "Diagnostiske Resultater"
-#: plinth/modules/diagnostics/templates/diagnostics_app.html:32
+#: plinth/modules/diagnostics/templates/diagnostics_app.html:17
#, fuzzy
#| msgid "This module does not support diagnostics"
msgid "This app does not support diagnostics"
msgstr "Dette modul understøtter ikke diagnostik"
-#: plinth/modules/diagnostics/templates/diagnostics_results.html:25
+#: plinth/modules/diagnostics/templates/diagnostics_results.html:10
msgid "Test"
msgstr "Test"
-#: plinth/modules/diagnostics/templates/diagnostics_results.html:26
+#: plinth/modules/diagnostics/templates/diagnostics_results.html:11
msgid "Result"
msgstr "Resultat"
-#: plinth/modules/diaspora/__init__.py:54
-#: plinth/modules/diaspora/manifest.py:38
-msgid "diaspora*"
-msgstr ""
-
-#: plinth/modules/diaspora/__init__.py:56
-msgid "Federated Social Network"
-msgstr ""
-
-#: plinth/modules/diaspora/__init__.py:63
+#: plinth/modules/diaspora/__init__.py:45
msgid ""
"diaspora* is a decentralized social network where you can store and control "
"your own data."
msgstr ""
-#: plinth/modules/diaspora/forms.py:30
+#: plinth/modules/diaspora/__init__.py:69
+#: plinth/modules/diaspora/manifest.py:23
+msgid "diaspora*"
+msgstr ""
+
+#: plinth/modules/diaspora/__init__.py:70
+msgid "Federated Social Network"
+msgstr ""
+
+#: plinth/modules/diaspora/forms.py:15
msgid "Enable new user registrations"
msgstr ""
-#: plinth/modules/diaspora/manifest.py:26
+#: plinth/modules/diaspora/manifest.py:11
msgid "dandelion*"
msgstr ""
-#: plinth/modules/diaspora/manifest.py:28
+#: plinth/modules/diaspora/manifest.py:13
msgid ""
"It is an unofficial webview based client for the community-run, distributed "
"social network diaspora*"
msgstr ""
-#: plinth/modules/diaspora/templates/diaspora-post-setup.html:32
+#: plinth/modules/diaspora/templates/diaspora-post-setup.html:16
#, python-format
msgid ""
"The diaspora* pod domain is set to %(domain_name)s. User IDs will "
@@ -1126,43 +1163,39 @@ msgid ""
"href=\"https://diaspora.%(domain_name)s\"> diaspora.%(domain_name)s "
msgstr ""
-#: plinth/modules/diaspora/templates/diaspora-pre-setup.html:58
-#: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:40
-#: plinth/modules/ejabberd/templates/ejabberd.html:58
-#: plinth/modules/i2p/templates/i2p.html:34
-#: plinth/modules/ikiwiki/templates/ikiwiki_create.html:33
-#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:62
-#: plinth/modules/snapshot/templates/snapshot.html:30
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:51
-#: plinth/modules/tahoe/templates/tahoe-pre-setup.html:58
-#: plinth/templates/app.html:77
+#: plinth/modules/diaspora/templates/diaspora-pre-setup.html:43
+#: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:25
+#: plinth/modules/ejabberd/templates/ejabberd.html:43
+#: plinth/modules/i2p/templates/i2p.html:19
+#: plinth/modules/ikiwiki/templates/ikiwiki_create.html:18
+#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:47
+#: plinth/modules/snapshot/templates/snapshot.html:15
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:35
+#: plinth/modules/tahoe/templates/tahoe-pre-setup.html:43
+#: plinth/templates/app.html:62
msgid "Update setup"
msgstr "Opdater indstillinger"
-#: plinth/modules/diaspora/views.py:93 plinth/modules/ejabberd/views.py:66
-#: plinth/modules/matrixsynapse/views.py:108
-#: plinth/modules/mediawiki/views.py:79 plinth/modules/openvpn/views.py:155
-#: plinth/modules/tor/views.py:156 plinth/views.py:175
+#: plinth/modules/diaspora/views.py:76 plinth/modules/ejabberd/views.py:46
+#: plinth/modules/matrixsynapse/views.py:85
+#: plinth/modules/mediawiki/views.py:59 plinth/modules/openvpn/views.py:136
+#: plinth/modules/tor/views.py:137 plinth/views.py:185
msgid "Setting unchanged"
msgstr "Indstilling uændret"
-#: plinth/modules/diaspora/views.py:97
+#: plinth/modules/diaspora/views.py:80
#, fuzzy
#| msgid "Application enabled"
msgid "User registrations enabled"
msgstr "Applikation aktiveret"
-#: plinth/modules/diaspora/views.py:101
+#: plinth/modules/diaspora/views.py:84
#, fuzzy
#| msgid "Application disabled"
msgid "User registrations disabled"
msgstr "Applikation deaktiveret"
-#: plinth/modules/dynamicdns/__init__.py:40
-msgid "Dynamic DNS Client"
-msgstr "Dynamisk DNS Klient"
-
-#: plinth/modules/dynamicdns/__init__.py:44
+#: plinth/modules/dynamicdns/__init__.py:27
#, python-brace-format
msgid ""
"If your Internet provider changes your IP address periodically (i.e. every "
@@ -1173,7 +1206,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:48
+#: plinth/modules/dynamicdns/__init__.py:31
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 "
@@ -1190,13 +1223,17 @@ 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/__init__.py:78
+#: plinth/modules/dynamicdns/__init__.py:56
+msgid "Dynamic DNS Client"
+msgstr "Dynamisk DNS Klient"
+
+#: plinth/modules/dynamicdns/__init__.py:66
#, fuzzy
#| msgid "Domain Name"
msgid "Dynamic Domain Name"
msgstr "Domænenavn"
-#: plinth/modules/dynamicdns/forms.py:42
+#: plinth/modules/dynamicdns/forms.py:27
msgid ""
"The Variables <User>, <Pass>, <Ip>, <Domain> may be "
"used within the URL. For details see the update URL templates of the example "
@@ -1206,7 +1243,7 @@ msgstr ""
"bruges i URL'en. For flere detaljer se skabelonerne for opdaterings-URL'er i "
"eksemplernes tjenester."
-#: plinth/modules/dynamicdns/forms.py:46
+#: plinth/modules/dynamicdns/forms.py:31
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 "
@@ -1216,7 +1253,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/forms.py:51
+#: plinth/modules/dynamicdns/forms.py:36
msgid ""
"Please do not enter a URL here (like \"https://example.com/\") but only the "
"hostname of the GnuDIP server (like \"example.com\")."
@@ -1224,16 +1261,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/forms.py:55
+#: plinth/modules/dynamicdns/forms.py:40
#, 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/forms.py:58
+#: plinth/modules/dynamicdns/forms.py:43
msgid "Use this option if your provider uses self signed certificates."
msgstr "Aktiver dette hvis din udbyder bruger selvunderskrevne certifikater."
-#: plinth/modules/dynamicdns/forms.py:61
+#: plinth/modules/dynamicdns/forms.py:46
msgid ""
"If this option is selected, your username and password will be used for HTTP "
"basic authentication."
@@ -1241,11 +1278,11 @@ msgstr ""
"Hvis denne option er aktiveret vil dit brugernavn og kodeord blive anvendt "
"til basal (\"basic\") HTTP-autentifikation."
-#: plinth/modules/dynamicdns/forms.py:64
+#: plinth/modules/dynamicdns/forms.py:49
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/forms.py:67
+#: plinth/modules/dynamicdns/forms.py:52
#, python-brace-format
msgid ""
"Optional Value. If your {box_name} is not connected directly to the Internet "
@@ -1259,72 +1296,72 @@ msgstr ""
"hvorfra klientens forespørgsel kommer (eksempelvis: http://myip."
"datasystems24.de)."
-#: plinth/modules/dynamicdns/forms.py:75
+#: plinth/modules/dynamicdns/forms.py:60
msgid "The username that was used when the account was created."
msgstr "Brugernavnet der blev brugt ved kontooprettelse."
-#: plinth/modules/dynamicdns/forms.py:83
+#: plinth/modules/dynamicdns/forms.py:68
msgid "Enable Dynamic DNS"
msgstr "Aktiver Dynamisk DNS"
-#: plinth/modules/dynamicdns/forms.py:86
+#: plinth/modules/dynamicdns/forms.py:71
msgid "Service Type"
msgstr "Servicetype"
-#: plinth/modules/dynamicdns/forms.py:91
+#: plinth/modules/dynamicdns/forms.py:76
msgid "GnuDIP Server Address"
msgstr "GnuDIP Serveradresse"
-#: plinth/modules/dynamicdns/forms.py:94
+#: plinth/modules/dynamicdns/forms.py:79
msgid "Invalid server name"
msgstr "Ugyldigt servernavn"
-#: plinth/modules/dynamicdns/forms.py:97
+#: plinth/modules/dynamicdns/forms.py:82
msgid "Update URL"
msgstr "Opdaterings-URL"
-#: plinth/modules/dynamicdns/forms.py:102
+#: plinth/modules/dynamicdns/forms.py:87
msgid "Accept all SSL certificates"
msgstr "Accepter alle SSL-certifikater"
-#: plinth/modules/dynamicdns/forms.py:106
+#: plinth/modules/dynamicdns/forms.py:91
msgid "Use HTTP basic authentication"
msgstr "Brug basal (\"basic\") HTTP-autentifikation"
-#: plinth/modules/dynamicdns/forms.py:116 plinth/modules/networks/forms.py:217
+#: plinth/modules/dynamicdns/forms.py:101 plinth/modules/networks/forms.py:199
msgid "Username"
msgstr "Brugernavn"
-#: plinth/modules/dynamicdns/forms.py:119 plinth/modules/networks/forms.py:218
-#: plinth/modules/shadowsocks/forms.py:60
+#: plinth/modules/dynamicdns/forms.py:104 plinth/modules/networks/forms.py:200
+#: plinth/modules/shadowsocks/forms.py:45
msgid "Password"
msgstr "Kodeord"
-#: plinth/modules/dynamicdns/forms.py:123 plinth/modules/networks/forms.py:220
+#: plinth/modules/dynamicdns/forms.py:108 plinth/modules/networks/forms.py:202
msgid "Show password"
msgstr "Vis kodeord"
-#: plinth/modules/dynamicdns/forms.py:127
+#: plinth/modules/dynamicdns/forms.py:112
msgid "URL to look up public IP"
msgstr ""
-#: plinth/modules/dynamicdns/forms.py:151
+#: plinth/modules/dynamicdns/forms.py:136
msgid "Please provide an update URL or a GnuDIP server address"
msgstr "Angiv venligst opdaterings-URL eller GnuDIP serveradresse"
-#: plinth/modules/dynamicdns/forms.py:156
+#: plinth/modules/dynamicdns/forms.py:141
msgid "Please provide a GnuDIP username"
msgstr "Angiv venligst et brugernavn til GnuDIP"
-#: plinth/modules/dynamicdns/forms.py:160
+#: plinth/modules/dynamicdns/forms.py:145
msgid "Please provide a GnuDIP domain name"
msgstr "Angiv venligst et domæne til GnuDIP-server"
-#: plinth/modules/dynamicdns/forms.py:165
+#: plinth/modules/dynamicdns/forms.py:150
msgid "Please provide a password"
msgstr "Angiv venligst et kodeord"
-#: plinth/modules/dynamicdns/templates/dynamicdns.html:27
+#: plinth/modules/dynamicdns/templates/dynamicdns.html:12
msgid ""
"If you are looking for a free dynamic DNS account, you may find a free "
"GnuDIP service at eller du kan få en gratis URL-baseret tjeneste på freedns.afraid.org."
-#: plinth/modules/dynamicdns/templates/dynamicdns.html:38
+#: plinth/modules/dynamicdns/templates/dynamicdns.html:23
#, python-format
msgid ""
"If your %(box_name)s is connected behind a NAT router, don't forget to add "
@@ -1347,7 +1384,7 @@ msgstr ""
"Hvis din %(box_name)s er tilsluttet bag en NAT-router, så glem ikke at "
"viderestille standardporte såsom TCP-port 80 (HTTP) og TCP-port 443 (HTTPS)."
-#: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:30
+#: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:15
msgid ""
"You have disabled Javascript. Dynamic form mode is disabled and some helper "
"functions may not work (but the main functionality should work)."
@@ -1356,11 +1393,11 @@ msgstr ""
"hjælpefunktionalitet virker formentlig ikke (men grundfunktionaliteten burde "
"fungere)."
-#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:24
+#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:9
msgid "NAT type"
msgstr "NAT-type"
-#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:28
+#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:13
msgid ""
"NAT type was not detected yet. If you do not provide an \"IP Check URL\", we "
"will not detect a NAT type."
@@ -1368,11 +1405,11 @@ msgstr ""
"NAT-typen er endnu ikke detekteret. Hvis du ikke har indtastet en \"URL for "
"IP-kontrol\" kan den ikke detekteres."
-#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:34
+#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:19
msgid "Direct connection to the Internet."
msgstr "Direkte forbindelse til internettet."
-#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:36
+#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:21
#, fuzzy, python-format
#| msgid ""
#| "Behind NAT. This means that Dynamic DNS service will poll the \"IP Check "
@@ -1391,50 +1428,39 @@ msgstr ""
"(WAN) IP-adresse ændres, kan det tage op til %(timer)s minutter inden din "
"registrering i DNS opdateres."
-#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:48
+#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:33
msgid "Last update"
msgstr "Seneste opdatering"
-#: plinth/modules/dynamicdns/views.py:41 plinth/modules/help/__init__.py:59
-#: plinth/templates/help-menu.html:61 plinth/templates/help-menu.html:62
+#: plinth/modules/dynamicdns/views.py:26 plinth/modules/help/__init__.py:49
+#: plinth/templates/help-menu.html:46 plinth/templates/help-menu.html:47
msgid "About"
msgstr "Om"
-#: plinth/modules/dynamicdns/views.py:47
-#: plinth/modules/firewall/templates/firewall.html:25
-#: plinth/modules/firewall/templates/firewall.html:45
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:38
-#: plinth/modules/networks/templates/connection_show.html:261
-#: plinth/modules/openvpn/templates/openvpn.html:39
-#: plinth/modules/openvpn/templates/openvpn.html:60
-#: plinth/modules/tor/templates/tor.html:37
-#: plinth/modules/tor/templates/tor.html:51
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:61
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:60
-#: plinth/templates/app.html:42
+#: plinth/modules/dynamicdns/views.py:32
+#: plinth/modules/firewall/templates/firewall.html:10
+#: plinth/modules/firewall/templates/firewall.html:30
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:23
+#: plinth/modules/networks/templates/connection_show.html:246
+#: plinth/modules/openvpn/templates/openvpn.html:24
+#: plinth/modules/openvpn/templates/openvpn.html:45
+#: plinth/modules/tor/templates/tor.html:22
+#: plinth/modules/tor/templates/tor.html:36
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:46
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:45
+#: plinth/templates/app.html:27
msgid "Status"
msgstr "Status"
-#: plinth/modules/dynamicdns/views.py:79
+#: plinth/modules/dynamicdns/views.py:62
msgid "Configure Dynamic DNS"
msgstr "Konfigurer Dynamisk DNS"
-#: plinth/modules/dynamicdns/views.py:105
+#: plinth/modules/dynamicdns/views.py:86
msgid "Dynamic DNS Status"
msgstr "Dynamisk DNS Status"
-#: plinth/modules/ejabberd/__init__.py:50
-msgid "ejabberd"
-msgstr ""
-
-#: plinth/modules/ejabberd/__init__.py:54
-#: plinth/modules/matrixsynapse/__init__.py:52
-#, fuzzy
-#| msgid "Web Server"
-msgid "Chat Server"
-msgstr "Webserver"
-
-#: plinth/modules/ejabberd/__init__.py:57
+#: plinth/modules/ejabberd/__init__.py:36
msgid ""
"XMPP is an open and standardized communication protocol. Here you can run "
"and configure your XMPP server, called ejabberd."
@@ -1442,7 +1468,7 @@ msgstr ""
"XMPP er en åben og standardiseret kommunikationsprotokol. Her kan du "
"aktivere og konfigurere din XMPP-server, kaldet ejabberd."
-#: plinth/modules/ejabberd/__init__.py:60
+#: plinth/modules/ejabberd/__init__.py:39
#, fuzzy, python-brace-format
#| msgid ""
#| "To actually communicate, you can use the web client "
@@ -1458,11 +1484,22 @@ msgstr ""
"klienten eller enhver anden XMPP-klient."
-#: plinth/modules/ejabberd/forms.py:32
+#: plinth/modules/ejabberd/__init__.py:70
+msgid "ejabberd"
+msgstr ""
+
+#: plinth/modules/ejabberd/__init__.py:71
+#: plinth/modules/matrixsynapse/__init__.py:68
+#, fuzzy
+#| msgid "Web Server"
+msgid "Chat Server"
+msgstr "Webserver"
+
+#: plinth/modules/ejabberd/forms.py:17
msgid "Enable Message Archive Management"
msgstr ""
-#: plinth/modules/ejabberd/forms.py:34
+#: plinth/modules/ejabberd/forms.py:19
#, python-brace-format
msgid ""
"If enabled, your {box_name} will store chat message histories. This allows "
@@ -1471,33 +1508,33 @@ msgid ""
"the histories are stored as plain text or encrypted."
msgstr ""
-#: plinth/modules/ejabberd/manifest.py:26
+#: plinth/modules/ejabberd/manifest.py:11
#, fuzzy
#| msgid "Connection"
msgid "Conversations"
msgstr "Forbindelse"
-#: plinth/modules/ejabberd/manifest.py:40
+#: plinth/modules/ejabberd/manifest.py:25
msgid "Xabber"
msgstr ""
-#: plinth/modules/ejabberd/manifest.py:42
+#: plinth/modules/ejabberd/manifest.py:27
msgid ""
"Open source Jabber (XMPP) client with multi-account support and clean and "
"simple interface. "
msgstr ""
-#: plinth/modules/ejabberd/manifest.py:57
+#: plinth/modules/ejabberd/manifest.py:42
msgid "Yaxim"
msgstr ""
-#: plinth/modules/ejabberd/manifest.py:71
+#: plinth/modules/ejabberd/manifest.py:56
#, fuzzy
#| msgid "Web Server"
msgid "ChatSecure"
msgstr "Webserver"
-#: plinth/modules/ejabberd/manifest.py:73
+#: plinth/modules/ejabberd/manifest.py:58
msgid ""
"ChatSecure is a free and open source messaging app that features OTR "
"encryption over XMPP. You can connect to an existing Google account, create "
@@ -1505,15 +1542,15 @@ msgid ""
"your own server for extra security."
msgstr ""
-#: plinth/modules/ejabberd/manifest.py:89
+#: plinth/modules/ejabberd/manifest.py:74
msgid "Dino"
msgstr ""
-#: plinth/modules/ejabberd/manifest.py:101
+#: plinth/modules/ejabberd/manifest.py:86
msgid "Gajim"
msgstr ""
-#: plinth/modules/ejabberd/templates/ejabberd.html:33
+#: plinth/modules/ejabberd/templates/ejabberd.html:18
#, python-format
msgid ""
"Your XMPP server domain is set to %(domainname)s. User IDs will look "
@@ -1524,28 +1561,24 @@ msgstr ""
"vil se ud som brugernavn@%(domainname)s. Du kan konfigurere systemets "
"domæne på Konfigurer siden."
-#: plinth/modules/ejabberd/templates/ejabberd.html:50
-#: plinth/modules/i2p/templates/i2p.html:26
-#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:30
-#: plinth/modules/snapshot/templates/snapshot.html:27
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:43
-#: plinth/templates/app.html:70
+#: plinth/modules/ejabberd/templates/ejabberd.html:35
+#: plinth/modules/i2p/templates/i2p.html:11
+#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:15
+#: plinth/modules/snapshot/templates/snapshot.html:12
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:27
+#: plinth/templates/app.html:55
msgid "Configuration"
msgstr "Konfiguration"
-#: plinth/modules/ejabberd/views.py:78
+#: plinth/modules/ejabberd/views.py:58
msgid "Message Archive Management enabled"
msgstr ""
-#: plinth/modules/ejabberd/views.py:82
+#: plinth/modules/ejabberd/views.py:62
msgid "Message Archive Management disabled"
msgstr ""
-#: plinth/modules/firewall/__init__.py:39
-msgid "Firewall"
-msgstr "Firewall"
-
-#: plinth/modules/firewall/__init__.py:43
+#: plinth/modules/firewall/__init__.py:32
#, python-brace-format
msgid ""
"Firewall is a security system that controls the incoming and outgoing "
@@ -1556,24 +1589,28 @@ msgstr ""
"på din{box_name}. At holde en firewall aktiveret og velkonfigureret "
"reducerer risikoen for sikkerhedstrusler fra internettet."
-#: plinth/modules/firewall/components.py:130
+#: plinth/modules/firewall/__init__.py:63
+msgid "Firewall"
+msgstr "Firewall"
+
+#: plinth/modules/firewall/components.py:118
#, fuzzy, python-brace-format
#| msgid "Service discovery server is not running"
msgid "Port {name} ({details}) available for internal networks"
msgstr "Tjenestesøgningstjenesten er ikke aktiv"
-#: plinth/modules/firewall/components.py:138
+#: plinth/modules/firewall/components.py:126
#, fuzzy, python-brace-format
#| msgid "Service discovery server is not running"
msgid "Port {name} ({details}) available for external networks"
msgstr "Tjenestesøgningstjenesten er ikke aktiv"
-#: plinth/modules/firewall/components.py:143
+#: plinth/modules/firewall/components.py:131
#, python-brace-format
msgid "Port {name} ({details}) unavailable for external networks"
msgstr ""
-#: plinth/modules/firewall/templates/firewall.html:30
+#: plinth/modules/firewall/templates/firewall.html:15
#, python-format
msgid ""
"Firewall daemon is not running. Please run it. Firewall comes enabled by "
@@ -1586,44 +1623,44 @@ msgstr ""
"%(box_name)s er) kan den startes med kommandoen 'service firewalld start' "
"eller hvis systemet bruger systemd 'systemctl start firewalld'."
-#: plinth/modules/firewall/templates/firewall.html:43
+#: plinth/modules/firewall/templates/firewall.html:28
#, fuzzy
#| msgid "Ports"
msgid "Show Ports"
msgstr "Porte"
-#: plinth/modules/firewall/templates/firewall.html:44
+#: plinth/modules/firewall/templates/firewall.html:29
msgid "Service/Port"
msgstr "Tjeneste/Port"
-#: plinth/modules/firewall/templates/firewall.html:63
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:89
+#: plinth/modules/firewall/templates/firewall.html:48
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:74
msgid "Enabled"
msgstr "Aktiveret"
-#: plinth/modules/firewall/templates/firewall.html:66
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:91
-#: plinth/modules/networks/forms.py:64 plinth/templates/cards.html:49
+#: plinth/modules/firewall/templates/firewall.html:51
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:76
+#: plinth/modules/networks/forms.py:47 plinth/templates/cards.html:34
msgid "Disabled"
msgstr "Deaktiveret"
-#: plinth/modules/firewall/templates/firewall.html:78
+#: plinth/modules/firewall/templates/firewall.html:67
msgid "Permitted"
msgstr "Tilladt"
-#: plinth/modules/firewall/templates/firewall.html:81
+#: plinth/modules/firewall/templates/firewall.html:70
msgid "Permitted (internal only)"
msgstr "Tilladt (kun internt)"
-#: plinth/modules/firewall/templates/firewall.html:84
+#: plinth/modules/firewall/templates/firewall.html:73
msgid "Permitted (external only)"
msgstr "Tilladt (kun eksternt)"
-#: plinth/modules/firewall/templates/firewall.html:87
+#: plinth/modules/firewall/templates/firewall.html:76
msgid "Blocked"
msgstr "Blokeret"
-#: plinth/modules/firewall/templates/firewall.html:99
+#: plinth/modules/firewall/templates/firewall.html:88
msgid ""
"The operation of the firewall is automatic. When you enable a service it is "
"also permitted in the firewall and when you disable a service it is also "
@@ -1633,7 +1670,7 @@ msgstr ""
"også blive åbnet i firewallen, og når du deaktiverer en tjeneste blokeres "
"den igen."
-#: plinth/modules/first_boot/forms.py:29
+#: plinth/modules/first_boot/forms.py:14
#, python-brace-format
msgid ""
"Enter the secret generated during FreedomBox installation. This secret can "
@@ -1641,49 +1678,41 @@ msgid ""
"wizard-secret\" on your {box_name}"
msgstr ""
-#: plinth/modules/first_boot/forms.py:34
+#: plinth/modules/first_boot/forms.py:19
msgid "Firstboot Wizard Secret"
msgstr ""
-#: plinth/modules/first_boot/templates/firstboot_complete.html:26
+#: plinth/modules/first_boot/templates/firstboot_complete.html:11
msgid "Setup Complete!"
msgstr "Konfiguration er færdig!"
-#: plinth/modules/first_boot/templates/firstboot_complete.html:29
+#: plinth/modules/first_boot/templates/firstboot_complete.html:14
#, python-format
msgid "Without any apps, your %(box_name)s cannot do very much."
msgstr ""
-#: plinth/modules/first_boot/templates/firstboot_complete.html:36
+#: plinth/modules/first_boot/templates/firstboot_complete.html:21
#, fuzzy
#| msgid "Install"
msgid "Install Apps"
msgstr "Installer"
-#: plinth/modules/first_boot/templates/firstboot_complete.html:42
+#: plinth/modules/first_boot/templates/firstboot_complete.html:27
#, python-format
msgid ""
"You may want to check the network setup and "
"modify it if necessary."
msgstr ""
-#: plinth/modules/first_boot/templates/firstboot_welcome.html:52
+#: plinth/modules/first_boot/templates/firstboot_welcome.html:37
msgid "Start Setup"
msgstr "Start Konfiguration"
-#: plinth/modules/first_boot/views.py:64
+#: plinth/modules/first_boot/views.py:49
msgid "Setup Complete"
msgstr "Konfiguration Færdig"
-#: plinth/modules/gitweb/__init__.py:44 plinth/modules/gitweb/manifest.py:28
-msgid "Gitweb"
-msgstr ""
-
-#: plinth/modules/gitweb/__init__.py:48
-msgid "Simple Git Hosting"
-msgstr ""
-
-#: plinth/modules/gitweb/__init__.py:51
+#: plinth/modules/gitweb/__init__.py:28
msgid ""
"Git is a distributed version-control system for tracking changes in source "
"code during software development. Gitweb provides a web interface to Git "
@@ -1694,211 +1723,219 @@ msgid ""
"the world."
msgstr ""
-#: plinth/modules/gitweb/__init__.py:58
+#: plinth/modules/gitweb/__init__.py:35
msgid ""
"To learn more on how to use Git visit Git tutorial."
msgstr ""
-#: plinth/modules/gitweb/__init__.py:64
+#: plinth/modules/gitweb/__init__.py:39
msgid "Read-write access to Git repositories"
msgstr ""
-#: plinth/modules/gitweb/forms.py:59
+#: plinth/modules/gitweb/__init__.py:56 plinth/modules/gitweb/manifest.py:13
+msgid "Gitweb"
+msgstr ""
+
+#: plinth/modules/gitweb/__init__.py:57
+msgid "Simple Git Hosting"
+msgstr ""
+
+#: plinth/modules/gitweb/forms.py:44
#, fuzzy
#| msgid "Invalid hostname"
msgid "Invalid repository URL."
msgstr "Ugyldigt værtsnavn"
-#: plinth/modules/gitweb/forms.py:69
+#: plinth/modules/gitweb/forms.py:54
#, fuzzy
#| msgid "Invalid hostname"
msgid "Invalid repository name."
msgstr "Ugyldigt værtsnavn"
-#: plinth/modules/gitweb/forms.py:77
+#: plinth/modules/gitweb/forms.py:62
msgid "Name of a new repository or URL to import an existing repository."
msgstr ""
-#: plinth/modules/gitweb/forms.py:83
+#: plinth/modules/gitweb/forms.py:68
msgid "Description of the repository"
msgstr ""
-#: plinth/modules/gitweb/forms.py:84 plinth/modules/gitweb/forms.py:88
+#: plinth/modules/gitweb/forms.py:69 plinth/modules/gitweb/forms.py:73
msgid "Optional, for displaying on Gitweb."
msgstr ""
-#: plinth/modules/gitweb/forms.py:86
+#: plinth/modules/gitweb/forms.py:71
#, fuzzy
#| msgid "packages not found"
msgid "Repository's owner name"
msgstr "pakker ikke fundet"
-#: plinth/modules/gitweb/forms.py:91
+#: plinth/modules/gitweb/forms.py:76
#, fuzzy
#| msgid "Create User"
msgid "Private repository"
msgstr "Opret Bruger"
-#: plinth/modules/gitweb/forms.py:92
+#: plinth/modules/gitweb/forms.py:77
msgid "Allow only authorized users to access this repository."
msgstr ""
-#: plinth/modules/gitweb/forms.py:113 plinth/modules/gitweb/forms.py:145
+#: plinth/modules/gitweb/forms.py:98 plinth/modules/gitweb/forms.py:130
#, fuzzy
#| msgid "This service already exists"
msgid "A repository with this name already exists."
msgstr "Denne tjeneste eksisterer allerede"
-#: plinth/modules/gitweb/forms.py:126
+#: plinth/modules/gitweb/forms.py:111
#, fuzzy
#| msgid "Create User"
msgid "Name of the repository"
msgstr "Opret Bruger"
-#: plinth/modules/gitweb/forms.py:130
+#: plinth/modules/gitweb/forms.py:115
msgid "An alpha-numeric string that uniquely identifies a repository."
msgstr ""
-#: plinth/modules/gitweb/manifest.py:36
+#: plinth/modules/gitweb/manifest.py:21
msgid "Git"
msgstr ""
-#: plinth/modules/gitweb/templates/gitweb_configure.html:46
+#: plinth/modules/gitweb/templates/gitweb_configure.html:31
#, fuzzy
#| msgid "Create User"
msgid "Manage Repositories"
msgstr "Opret Bruger"
-#: plinth/modules/gitweb/templates/gitweb_configure.html:50
-#: plinth/modules/gitweb/templates/gitweb_configure.html:52
+#: plinth/modules/gitweb/templates/gitweb_configure.html:35
+#: plinth/modules/gitweb/templates/gitweb_configure.html:37
#, fuzzy
#| msgid "Create User"
msgid "Create repository"
msgstr "Opret Bruger"
-#: plinth/modules/gitweb/templates/gitweb_configure.html:59
+#: plinth/modules/gitweb/templates/gitweb_configure.html:44
#, fuzzy
#| msgid "Tor relay port available"
msgid "No repositories available."
msgstr "Tor videresendelsesport tilgængelig"
-#: plinth/modules/gitweb/templates/gitweb_configure.html:67
+#: plinth/modules/gitweb/templates/gitweb_configure.html:52
#, fuzzy, python-format
#| msgid "Delete user %(username)s"
msgid "Delete repository %(repo.name)s"
msgstr "Slet bruger %(username)s"
-#: plinth/modules/gitweb/templates/gitweb_configure.html:83
+#: plinth/modules/gitweb/templates/gitweb_configure.html:68
msgid "Cloning..."
msgstr ""
-#: plinth/modules/gitweb/templates/gitweb_configure.html:89
+#: plinth/modules/gitweb/templates/gitweb_configure.html:74
#, fuzzy, python-format
#| msgid "Go to site %(site)s"
msgid "Go to repository %(repo.name)s"
msgstr "Gå til sitet %(site)s"
-#: plinth/modules/gitweb/templates/gitweb_delete.html:27
+#: plinth/modules/gitweb/templates/gitweb_delete.html:12
#, fuzzy, python-format
#| msgid "Delete Wiki or Blog %(name)s"
msgid "Delete Git Repository %(name)s"
msgstr "Slet Wiki eller Blog %(name)s"
-#: plinth/modules/gitweb/templates/gitweb_delete.html:33
+#: plinth/modules/gitweb/templates/gitweb_delete.html:18
#, fuzzy
#| msgid "Delete user permanently?"
msgid "Delete this repository permanently?"
msgstr "Slet bruger permanent?"
-#: plinth/modules/gitweb/templates/gitweb_delete.html:42
-#: plinth/modules/ikiwiki/templates/ikiwiki_delete.html:44
+#: plinth/modules/gitweb/templates/gitweb_delete.html:27
+#: plinth/modules/ikiwiki/templates/ikiwiki_delete.html:29
#, python-format
msgid "Delete %(name)s"
msgstr "Slet %(name)s"
-#: plinth/modules/gitweb/views.py:65
+#: plinth/modules/gitweb/views.py:45
#, fuzzy
#| msgid "packages not found"
msgid "Repository created."
msgstr "pakker ikke fundet"
-#: plinth/modules/gitweb/views.py:87
+#: plinth/modules/gitweb/views.py:67
#, fuzzy
#| msgid "An error occurred during configuration."
msgid "An error occurred while creating the repository."
msgstr "Der opstod en fejl under konfigurationen."
-#: plinth/modules/gitweb/views.py:100
+#: plinth/modules/gitweb/views.py:80
#, fuzzy
#| msgid "packages not found"
msgid "Repository edited."
msgstr "pakker ikke fundet"
-#: plinth/modules/gitweb/views.py:105
+#: plinth/modules/gitweb/views.py:85
#, fuzzy
#| msgid "Create User"
msgid "Edit repository"
msgstr "Opret Bruger"
-#: plinth/modules/gitweb/views.py:133 plinth/modules/searx/views.py:62
-#: plinth/modules/searx/views.py:73 plinth/modules/tor/views.py:178
+#: plinth/modules/gitweb/views.py:113 plinth/modules/searx/views.py:42
+#: plinth/modules/searx/views.py:53 plinth/modules/tor/views.py:159
msgid "An error occurred during configuration."
msgstr "Der opstod en fejl under konfigurationen."
-#: plinth/modules/gitweb/views.py:154
+#: plinth/modules/gitweb/views.py:134
#, python-brace-format
msgid "{name} deleted."
msgstr "{name} slettet."
-#: plinth/modules/gitweb/views.py:158
+#: plinth/modules/gitweb/views.py:138
#, python-brace-format
msgid "Could not delete {name}: {error}"
msgstr "Kunne ikke slette {name}: {error}"
-#: plinth/modules/help/__init__.py:40
+#: plinth/modules/help/__init__.py:30
msgid "Documentation"
msgstr "Dokumentation"
-#: plinth/modules/help/__init__.py:43 plinth/modules/networks/forms.py:64
-#: plinth/modules/networks/forms.py:95 plinth/templates/help-menu.html:35
-#: plinth/templates/help-menu.html:36 plinth/templates/index.html:135
+#: plinth/modules/help/__init__.py:33 plinth/modules/networks/forms.py:47
+#: plinth/modules/networks/forms.py:77 plinth/templates/help-menu.html:20
+#: plinth/templates/help-menu.html:21 plinth/templates/index.html:120
msgid "Manual"
msgstr "Brugermanual"
-#: plinth/modules/help/__init__.py:47 plinth/modules/help/help.py:58
-#: plinth/modules/help/templates/help_support.html:24
-#: plinth/templates/help-menu.html:42 plinth/templates/help-menu.html:43
+#: plinth/modules/help/__init__.py:37 plinth/modules/help/help.py:43
+#: plinth/modules/help/templates/help_support.html:9
+#: plinth/templates/help-menu.html:27 plinth/templates/help-menu.html:28
msgid "Get Support"
msgstr ""
-#: plinth/modules/help/__init__.py:51 plinth/modules/help/help.py:52
-#: plinth/modules/help/templates/help_feedback.html:24
-#: plinth/templates/help-menu.html:48 plinth/templates/help-menu.html:49
+#: plinth/modules/help/__init__.py:41 plinth/modules/help/help.py:37
+#: plinth/modules/help/templates/help_feedback.html:9
+#: plinth/templates/help-menu.html:33 plinth/templates/help-menu.html:34
msgid "Submit Feedback"
msgstr ""
-#: plinth/modules/help/__init__.py:55 plinth/modules/help/help.py:46
-#: plinth/modules/help/templates/help_contribute.html:24
-#: plinth/templates/help-menu.html:54 plinth/templates/help-menu.html:55
+#: plinth/modules/help/__init__.py:45 plinth/modules/help/help.py:31
+#: plinth/modules/help/templates/help_contribute.html:9
+#: plinth/templates/help-menu.html:39 plinth/templates/help-menu.html:40
msgid "Contribute"
msgstr ""
-#: plinth/modules/help/help.py:40
+#: plinth/modules/help/help.py:25
msgid "Documentation and FAQ"
msgstr "Dokumentation og OSS"
-#: plinth/modules/help/help.py:66
+#: plinth/modules/help/help.py:51
#, python-brace-format
msgid "About {box_name}"
msgstr "Om {box_name}"
-#: plinth/modules/help/help.py:101
+#: plinth/modules/help/help.py:86
#, python-brace-format
msgid "{box_name} Manual"
msgstr "{box_name} Brugervejledning"
-#: plinth/modules/help/templates/help_about.html:32
+#: plinth/modules/help/templates/help_about.html:17
#, python-format
msgid ""
"%(box_name)s is a community project to develop, design and promote personal "
@@ -1917,7 +1954,7 @@ msgstr ""
"sociale netværk, email, webproxy-filter og Tor-relæ, på en enhed der kan "
"erstatte din Wi-Fi-router således at dine data bliver hos dig."
-#: plinth/modules/help/templates/help_about.html:45
+#: plinth/modules/help/templates/help_about.html:30
msgid ""
"We live in a world where our use of the network is mediated by those who "
"often do not have our best interests at heart. By building software that "
@@ -1934,7 +1971,7 @@ msgstr ""
"over netværk og maskiner tilbage til brugerne, bringer vi internettet "
"tilbage til dets påtænkte peer-to-peer arkitektur."
-#: plinth/modules/help/templates/help_about.html:58
+#: plinth/modules/help/templates/help_about.html:43
#, python-format
msgid ""
"There are a number of projects working to realize a future of distributed "
@@ -1945,7 +1982,7 @@ msgstr ""
"distribuerede tjenester er mere udbredte end i dag; %(box_name)s har som mål "
"at kombinere alle disse i én letanvendelig pakke."
-#: plinth/modules/help/templates/help_about.html:66
+#: plinth/modules/help/templates/help_about.html:51
#, python-format
msgid ""
"For more information about the %(box_name)s project, see the %(box_name)s Wiki-siden."
-#: plinth/modules/help/templates/help_about.html:75
+#: plinth/modules/help/templates/help_about.html:60
msgid "Learn more »"
msgstr "Lær mere »"
-#: plinth/modules/help/templates/help_about.html:78
+#: plinth/modules/help/templates/help_about.html:63
#, fuzzy, python-format
#| msgid "You are running Plinth version %(version)s."
msgid "You are running %(os_release)s and %(box_name)s version %(version)s."
msgstr "Du kører Plinth version %(version)s."
-#: plinth/modules/help/templates/help_about.html:83
+#: plinth/modules/help/templates/help_about.html:68
#, python-format
msgid "There is a new %(box_name)s version available."
msgstr ""
-#: plinth/modules/help/templates/help_about.html:87
+#: plinth/modules/help/templates/help_about.html:72
#, fuzzy, python-format
#| msgid "%(box_name)s Setup"
msgid "%(box_name)s is up to date."
msgstr "%(box_name)s Konfiguration"
-#: plinth/modules/help/templates/help_about.html:94
+#: plinth/modules/help/templates/help_about.html:79
#, fuzzy
#| msgid "Security"
msgid "Security Notice"
msgstr "Sikkerhed"
-#: plinth/modules/help/templates/help_about.html:96
+#: plinth/modules/help/templates/help_about.html:81
msgid ""
"You are using packages from Debian backports. Please note that these "
"packages do not have security support from Debian. However, they are "
@@ -1989,17 +2026,17 @@ msgid ""
"community."
msgstr ""
-#: plinth/modules/help/templates/help_base.html:36
-#: plinth/modules/help/templates/help_index.html:76
+#: plinth/modules/help/templates/help_base.html:21
+#: plinth/modules/help/templates/help_index.html:61
#, python-format
msgid "%(box_name)s Setup"
msgstr "%(box_name)s Konfiguration"
-#: plinth/modules/help/templates/help_contribute.html:27
+#: plinth/modules/help/templates/help_contribute.html:12
msgid "The FreedomBox project welcomes contributions of all kinds."
msgstr ""
-#: plinth/modules/help/templates/help_contribute.html:33
+#: plinth/modules/help/templates/help_contribute.html:18
msgid ""
"You can contribute by writing code, testing and reporting bugs, discussing "
"new use cases and applications, designing logos and artwork, providing "
@@ -2008,7 +2045,7 @@ msgid ""
"the word."
msgstr ""
-#: plinth/modules/help/templates/help_contribute.html:43
+#: plinth/modules/help/templates/help_contribute.html:28
msgid ""
"You can also help the project financially by donating to the non-profit FreedomBox "
@@ -2020,28 +2057,28 @@ msgid ""
"supporters."
msgstr ""
-#: plinth/modules/help/templates/help_contribute.html:57
-#: plinth/modules/power/templates/power_restart.html:42
-#: plinth/modules/power/templates/power_shutdown.html:41
-#: plinth/templates/header.html:59
+#: plinth/modules/help/templates/help_contribute.html:42
+#: plinth/modules/power/templates/power_restart.html:27
+#: plinth/modules/power/templates/power_shutdown.html:26
+#: plinth/templates/app-header.html:51
#, fuzzy
#| msgid "Learn more »"
msgid "Learn more..."
msgstr "Lær mere »"
-#: plinth/modules/help/templates/help_feedback.html:27
+#: plinth/modules/help/templates/help_feedback.html:12
#, python-format
msgid "Your feedback will help us improve %(box_name)s!"
msgstr ""
-#: plinth/modules/help/templates/help_feedback.html:33
+#: plinth/modules/help/templates/help_feedback.html:18
msgid ""
"Let us know about missing features, your favourite apps and how we can "
"improve them on our discussion forum."
msgstr ""
-#: plinth/modules/help/templates/help_feedback.html:41
+#: plinth/modules/help/templates/help_feedback.html:26
msgid ""
"If you find any bugs or issues, please use the issue tracker"
@@ -2049,16 +2086,16 @@ msgid ""
"already reported and then use the \"New issue\" button."
msgstr ""
-#: plinth/modules/help/templates/help_feedback.html:51
+#: plinth/modules/help/templates/help_feedback.html:36
msgid "Thank you!"
msgstr ""
-#: plinth/modules/help/templates/help_index.html:27
-#: plinth/templates/help-menu.html:23 plinth/templates/help-menu.html:28
+#: plinth/modules/help/templates/help_index.html:12
+#: plinth/templates/help-menu.html:8 plinth/templates/help-menu.html:13
msgid "Help"
msgstr "Hjælp"
-#: plinth/modules/help/templates/help_index.html:31
+#: plinth/modules/help/templates/help_index.html:16
#, python-format
msgid ""
"The %(box_name)s Manual is the best place to "
@@ -2067,7 +2104,7 @@ msgstr ""
"%(box_name)s Brugervejledningen er det bedste "
"sted at starte når du har brug for information om %(box_name)s."
-#: plinth/modules/help/templates/help_index.html:38
+#: plinth/modules/help/templates/help_index.html:23
#, python-format
msgid ""
" "
@@ -2076,7 +2113,7 @@ msgstr ""
"%(box_name)s "
"wiki-siden indeholder yderligere information."
-#: plinth/modules/help/templates/help_index.html:45
+#: plinth/modules/help/templates/help_index.html:30
#, python-format
msgid ""
"To seek help from %(box_name)s community, queries may be posted on the postlisten. I listens arkiv kan du også finde information om "
"problemer andre brugere har oplevet og mulige løsninger på dem."
-#: plinth/modules/help/templates/help_index.html:55
+#: plinth/modules/help/templates/help_index.html:40
#, python-format
msgid ""
"Many %(box_name)s contributors and users are also available on the irc.oftc."
@@ -2102,13 +2139,13 @@ msgstr ""
"\"https://webchat.oftc.net/?randomnick=1&channels=freedombox&prompt=1\"> "
"#freedombox med IRC web-brugerfladen."
-#: plinth/modules/help/templates/help_manual.html:40
+#: plinth/modules/help/templates/help_manual.html:25
#, fuzzy
#| msgid "downloading"
msgid "Download as PDF"
msgstr "downloader"
-#: plinth/modules/help/templates/help_support.html:27
+#: plinth/modules/help/templates/help_support.html:12
#, python-format
msgid ""
"If you need help in getting something done or if you are facing problems "
@@ -2116,13 +2153,13 @@ msgid ""
"contributors."
msgstr ""
-#: plinth/modules/help/templates/help_support.html:35
+#: plinth/modules/help/templates/help_support.html:20
msgid ""
"Search for past discussions or post a new query on our discussion forum."
msgstr ""
-#: plinth/modules/help/templates/help_support.html:42
+#: plinth/modules/help/templates/help_support.html:27
msgid ""
"You can also chat with us on our IRC and Matrix channels (bridged): "
"
"
@@ -2130,13 +2167,13 @@ msgid ""
"debian.net\">mailing list."
msgstr ""
-#: plinth/modules/help/templates/statuslog.html:25
+#: plinth/modules/help/templates/statuslog.html:10
#, fuzzy
#| msgid "Status"
msgid "Status Log"
msgstr "Status"
-#: plinth/modules/help/templates/statuslog.html:28
+#: plinth/modules/help/templates/statuslog.html:13
#, fuzzy, python-format
#| msgid ""
#| "This is an internal error and not something you caused or can fix. "
@@ -2152,23 +2189,13 @@ msgstr ""
"Rapporter venligst fejlen i fejlhåndteringsvørktøjet så vi kan rette den."
-#: plinth/modules/help/templates/statuslog.html:39
+#: plinth/modules/help/templates/statuslog.html:24
msgid ""
"Please remove any passwords or other personal information from the log "
"before submitting the bug report."
msgstr ""
-#: plinth/modules/i2p/__init__.py:42 plinth/modules/i2p/manifest.py:31
-msgid "I2P"
-msgstr ""
-
-#: plinth/modules/i2p/__init__.py:46 plinth/modules/tor/__init__.py:49
-#, fuzzy
-#| msgid "Tor Anonymity Network"
-msgid "Anonymity Network"
-msgstr "Tor Anonymiseringstjeneste"
-
-#: plinth/modules/i2p/__init__.py:49
+#: plinth/modules/i2p/__init__.py:28
msgid ""
"The Invisible Internet Project is an anonymous network layer intended to "
"protect communication from censorship and surveillance. I2P provides "
@@ -2176,7 +2203,7 @@ msgid ""
"distributed around the world."
msgstr ""
-#: plinth/modules/i2p/__init__.py:53
+#: plinth/modules/i2p/__init__.py:32
#, fuzzy
#| msgid ""
#| "For more information about the %(box_name)s project, see the %(box_name)s Wiki-siden."
-#: plinth/modules/i2p/__init__.py:55
+#: plinth/modules/i2p/__init__.py:34
msgid ""
"The first visit to the provided web interface will initiate the "
"configuration process."
msgstr ""
-#: plinth/modules/i2p/__init__.py:61
+#: plinth/modules/i2p/__init__.py:38
#, fuzzy
#| msgid "Enable application"
msgid "Manage I2P application"
msgstr "Aktiver applikation"
-#: plinth/modules/i2p/__init__.py:103
+#: plinth/modules/i2p/__init__.py:64 plinth/modules/i2p/manifest.py:16
+msgid "I2P"
+msgstr ""
+
+#: plinth/modules/i2p/__init__.py:65 plinth/modules/tor/__init__.py:56
+#, fuzzy
+#| msgid "Tor Anonymity Network"
+msgid "Anonymity Network"
+msgstr "Tor Anonymiseringstjeneste"
+
+#: plinth/modules/i2p/__init__.py:87
#, fuzzy
#| msgid "Privoxy Web Proxy"
msgid "I2P Proxy"
msgstr "Privoxy Webproxy"
-#: plinth/modules/i2p/templates/i2p_service.html:31
-#: plinth/templates/clients.html:43
+#: plinth/modules/i2p/templates/i2p_service.html:16
+#: plinth/templates/clients.html:28
msgid "Launch"
msgstr ""
-#: plinth/modules/i2p/views.py:34
+#: plinth/modules/i2p/views.py:19
msgid "Proxies"
msgstr ""
-#: plinth/modules/i2p/views.py:37
+#: plinth/modules/i2p/views.py:22
msgid "Anonymous torrents"
msgstr ""
-#: plinth/modules/i2p/views.py:88
+#: plinth/modules/i2p/views.py:64
msgid "I2P Proxies and Tunnels"
msgstr ""
-#: plinth/modules/i2p/views.py:91
+#: plinth/modules/i2p/views.py:67
msgid ""
"I2P lets you browse the Internet and hidden services (eepsites) anonymously. "
"For this, your browser, preferably a Tor Browser, needs to be configured for "
"a proxy."
msgstr ""
-#: plinth/modules/i2p/views.py:94
+#: plinth/modules/i2p/views.py:70
msgid ""
"By default HTTP, HTTPS and IRC proxies are available. Additional proxies and "
"tunnels may be configured using the tunnel configuration interface."
msgstr ""
-#: plinth/modules/i2p/views.py:103
+#: plinth/modules/i2p/views.py:79
msgid "Anonymous Torrents"
msgstr ""
-#: plinth/modules/i2p/views.py:106
+#: plinth/modules/i2p/views.py:82
msgid ""
"I2P provides an application to download files anonymously in a peer-to-peer "
"network. Download files by adding torrents or create a new torrent to share "
"a file."
msgstr ""
-#: plinth/modules/ikiwiki/__init__.py:41 plinth/modules/ikiwiki/manifest.py:24
-#, fuzzy
-#| msgid "wiki"
-msgid "ikiwiki"
-msgstr "wiki"
-
-#: plinth/modules/ikiwiki/__init__.py:45
-#, fuzzy
-#| msgid "Wiki & Blog"
-msgid "Wiki and Blog"
-msgstr "Wiki & Blog"
-
-#: plinth/modules/ikiwiki/__init__.py:48
+#: plinth/modules/ikiwiki/__init__.py:27
#, fuzzy
#| msgid ""
#| "ikiwiki is a simple wiki and blog application. It supports several "
@@ -2276,7 +2301,7 @@ msgstr ""
"kommentarer og RSS-feeds. Når aktiveret, vil blogge og wikier være "
"tilgængelige på /ikiwiki."
-#: plinth/modules/ikiwiki/__init__.py:52
+#: plinth/modules/ikiwiki/__init__.py:31
#, python-brace-format
msgid ""
"Only {box_name} users in the admin group can create and "
@@ -2285,56 +2310,62 @@ msgid ""
"Configuration you can change these permissions or add new users."
msgstr ""
-#: plinth/modules/ikiwiki/__init__.py:62
+#: plinth/modules/ikiwiki/__init__.py:39
#, fuzzy
#| msgid "Services and Applications"
msgid "View and edit wiki applications"
msgstr "Tjenester og Applikationer"
-#: plinth/modules/ikiwiki/forms.py:27
-#: plinth/modules/networks/templates/connection_show.html:98
-#: plinth/modules/storage/templates/storage.html:43
-msgid "Type"
-msgstr "Type"
+#: plinth/modules/ikiwiki/__init__.py:53 plinth/modules/ikiwiki/manifest.py:9
+#, fuzzy
+#| msgid "wiki"
+msgid "ikiwiki"
+msgstr "wiki"
-#: plinth/modules/ikiwiki/forms.py:32
+#: plinth/modules/ikiwiki/__init__.py:54
+#, fuzzy
+#| msgid "Wiki & Blog"
+msgid "Wiki and Blog"
+msgstr "Wiki & Blog"
+
+#: plinth/modules/ikiwiki/forms.py:17
msgid "Admin Account Name"
msgstr "Administratorkontonavn"
-#: plinth/modules/ikiwiki/forms.py:34
+#: plinth/modules/ikiwiki/forms.py:19
msgid "Admin Account Password"
msgstr "Administratorkontokodeord"
-#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:27
+#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:12
msgid "Manage Wikis and Blogs"
msgstr "Administrer Wikier og Blogs"
-#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:31
-#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:33
-#: plinth/modules/ikiwiki/templates/ikiwiki_create.html:25
+#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:16
+#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:18
+#: plinth/modules/ikiwiki/templates/ikiwiki_create.html:10
msgid "Create Wiki or Blog"
msgstr "Opret Wiki eller Blog"
-#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:40
+#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:25
msgid "No wikis or blogs available."
msgstr "Ingen wikier eller blogs tilgængelig."
-#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:48
+#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:33
#, python-format
msgid "Delete site %(site)s"
msgstr "Slet sitet %(site)s"
-#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:55
+#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:40
#, python-format
msgid "Go to site %(site)s"
msgstr "Gå til sitet %(site)s"
-#: plinth/modules/ikiwiki/templates/ikiwiki_delete.html:27
+#: plinth/modules/ikiwiki/templates/ikiwiki_delete.html:12
#, python-format
msgid "Delete Wiki or Blog %(name)s"
msgstr "Slet Wiki eller Blog %(name)s"
-#: plinth/modules/ikiwiki/templates/ikiwiki_delete.html:33
+#: plinth/modules/ikiwiki/templates/ikiwiki_delete.html:18
msgid ""
"This action will remove all the posts, pages and comments including revision "
"history. Delete this wiki or blog permanently?"
@@ -2342,53 +2373,43 @@ msgstr ""
"Denne handling fjerner alle artikler, sider og kommentater inklusiv al "
"historik. Slet denne wiki eller blog permanent?"
-#: plinth/modules/ikiwiki/views.py:96
+#: plinth/modules/ikiwiki/views.py:73
#, python-brace-format
msgid "Created wiki {name}."
msgstr "Wiki {name} oprettet."
-#: plinth/modules/ikiwiki/views.py:99
+#: plinth/modules/ikiwiki/views.py:76
#, python-brace-format
msgid "Could not create wiki: {error}"
msgstr "Kunne ikke oprette wiki: {error}"
-#: plinth/modules/ikiwiki/views.py:109
+#: plinth/modules/ikiwiki/views.py:86
#, python-brace-format
msgid "Created blog {name}."
msgstr "Blog {name} oprettet."
-#: plinth/modules/ikiwiki/views.py:112
+#: plinth/modules/ikiwiki/views.py:89
#, python-brace-format
msgid "Could not create blog: {error}"
msgstr "Kunne ikke oprette blog: {error}"
-#: plinth/modules/ikiwiki/views.py:127
+#: plinth/modules/ikiwiki/views.py:104
#, fuzzy, python-brace-format
#| msgid "{name} deleted."
msgid "{title} deleted."
msgstr "{name} slettet."
-#: plinth/modules/ikiwiki/views.py:131
+#: plinth/modules/ikiwiki/views.py:108
#, fuzzy, python-brace-format
#| msgid "Could not delete {name}: {error}"
msgid "Could not delete {title}: {error}"
msgstr "Kunne ikke slette {name}: {error}"
-#: plinth/modules/infinoted/__init__.py:42
-msgid "infinoted"
-msgstr ""
-
-#: plinth/modules/infinoted/__init__.py:46
-#, fuzzy
-#| msgid "Web Server"
-msgid "Gobby Server"
-msgstr "Webserver"
-
-#: plinth/modules/infinoted/__init__.py:49
+#: plinth/modules/infinoted/__init__.py:26
msgid "infinoted is a server for Gobby, a collaborative text editor."
msgstr ""
-#: plinth/modules/infinoted/__init__.py:51
+#: plinth/modules/infinoted/__init__.py:28
#, python-brace-format
msgid ""
"To use it, download Gobby, desktop "
@@ -2396,55 +2417,53 @@ msgid ""
"enter your {box_name}'s domain name."
msgstr ""
-#: plinth/modules/infinoted/manifest.py:27
+#: plinth/modules/infinoted/__init__.py:48
+msgid "infinoted"
+msgstr ""
+
+#: plinth/modules/infinoted/__init__.py:49
+#, fuzzy
+#| msgid "Web Server"
+msgid "Gobby Server"
+msgstr "Webserver"
+
+#: plinth/modules/infinoted/manifest.py:12
msgid "Gobby"
msgstr ""
-#: plinth/modules/infinoted/manifest.py:29
+#: plinth/modules/infinoted/manifest.py:14
msgid "Gobby is a collaborative text editor"
msgstr ""
-#: plinth/modules/infinoted/manifest.py:32
+#: plinth/modules/infinoted/manifest.py:17
#, python-brace-format
msgid ""
"Start Gobby and select \"Connect to Server\" and enter your {box_name}'s "
"domain name."
msgstr ""
-#: plinth/modules/jsxc/__init__.py:36 plinth/modules/jsxc/manifest.py:25
-msgid "JSXC"
-msgstr ""
-
-#: plinth/modules/jsxc/__init__.py:40
-#, fuzzy
-#| msgid "IRC Client (Quassel)"
-msgid "Chat Client"
-msgstr "IRC-klient (Quassel)"
-
-#: plinth/modules/jsxc/__init__.py:43
+#: plinth/modules/jsxc/__init__.py:22
msgid ""
"JSXC is a web client for XMPP. Typically it is used with an XMPP server "
"running locally."
msgstr ""
-#: plinth/modules/jsxc/templates/jsxc_launch.html:140
-#: plinth/templates/base.html:253
+#: plinth/modules/jsxc/__init__.py:40 plinth/modules/jsxc/manifest.py:10
+msgid "JSXC"
+msgstr ""
+
+#: plinth/modules/jsxc/__init__.py:41
+#, fuzzy
+#| msgid "IRC Client (Quassel)"
+msgid "Chat Client"
+msgstr "IRC-klient (Quassel)"
+
+#: plinth/modules/jsxc/templates/jsxc_launch.html:125
+#: plinth/templates/base.html:238
msgid "JavaScript license information"
msgstr ""
-#: plinth/modules/letsencrypt/__init__.py:48
-#, fuzzy
-#| msgid "Certificates (Let's Encrypt)"
-msgid "Let's Encrypt"
-msgstr "Certifikater (Let's Encrypt)"
-
-#: plinth/modules/letsencrypt/__init__.py:50
-#, fuzzy
-#| msgid "Certificate Status"
-msgid "Certificates"
-msgstr "Certifikat Status"
-
-#: plinth/modules/letsencrypt/__init__.py:54
+#: plinth/modules/letsencrypt/__init__.py:35
#, fuzzy, python-brace-format
#| msgid ""
#| "A digital certficate allows users of a web service to verify the identity "
@@ -2465,7 +2484,7 @@ msgstr ""
"Dette gøres ved at bekræfte overfor Let's Encrypt, en certifikat-autoritet "
"(CA), at den har ejerskab over domænet."
-#: plinth/modules/letsencrypt/__init__.py:60
+#: plinth/modules/letsencrypt/__init__.py:41
#, fuzzy
#| msgid ""
#| "Let's Encrypt is a free, automated, and open certificate authority, run "
@@ -2485,88 +2504,100 @@ msgstr ""
"org/repository/\">Let's Encrypts abonnementsbetingelser inden tjenesten "
"tages i anvendelse."
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:44
+#: plinth/modules/letsencrypt/__init__.py:65
+#, fuzzy
+#| msgid "Certificates (Let's Encrypt)"
+msgid "Let's Encrypt"
+msgstr "Certifikater (Let's Encrypt)"
+
+#: plinth/modules/letsencrypt/__init__.py:66
+#, fuzzy
+#| msgid "Certificate Status"
+msgid "Certificates"
+msgstr "Certifikat Status"
+
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:29
msgid "Domain"
msgstr "Domæne"
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:45
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:30
msgid "Certificate Status"
msgstr "Certifikat Status"
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:46
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:31
msgid "Website Security"
msgstr "Webside-sikkerhed"
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:47
-#: plinth/modules/storage/templates/storage.html:45
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:32
+#: plinth/modules/storage/templates/storage.html:30
msgid "Actions"
msgstr "Handlinger"
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:57
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:42
#, fuzzy, python-format
#| msgid "Expires on %(expiry_date)s"
msgid "Valid, expires on %(expiry_date)s"
msgstr "Udløbsdato %(expiry_date)s"
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:64
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:49
#, fuzzy
#| msgid "Revoke"
msgid "Revoked"
msgstr "Træk Tilbage"
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:68
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:53
#, fuzzy, python-format
#| msgid "Expires on %(expiry_date)s"
msgid "Expired on %(expiry_date)s"
msgstr "Udløbsdato %(expiry_date)s"
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:72
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:57
#, fuzzy
#| msgid "Invalid kite name"
msgid "Invalid test certificate"
msgstr "Ugyldigt kite-name"
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:76
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:61
#, python-format
msgid "Invalid (%(reason)s)"
msgstr ""
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:83
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:68
#, fuzzy
#| msgid "No certficate"
msgid "No certificate"
msgstr "Intet certifikat"
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:100
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:85
msgid "Re-obtain"
msgstr "Generhverv"
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:106
-#: plinth/modules/networks/templates/connection_show.html:63
-#: plinth/modules/samba/templates/samba.html:142
-#: plinth/modules/wireguard/templates/wireguard_delete_client.html:39
-#: plinth/modules/wireguard/templates/wireguard_delete_server.html:48
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:88
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:89
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:91
+#: plinth/modules/networks/templates/connection_show.html:48
+#: plinth/modules/samba/templates/samba.html:127
+#: plinth/modules/wireguard/templates/wireguard_delete_client.html:24
+#: plinth/modules/wireguard/templates/wireguard_delete_server.html:33
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:73
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:74
msgid "Delete"
msgstr "Slet"
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:113
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:98
msgid "Revoke"
msgstr "Træk Tilbage"
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:121
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:106
msgid "Obtain"
msgstr "Erhverv"
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:132
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:117
#, python-format
msgid ""
"No domains have been configured. Configure "
"domains to be able to obtain certificates for them."
msgstr ""
-#: plinth/modules/letsencrypt/views.py:58
+#: plinth/modules/letsencrypt/views.py:41
#, fuzzy, python-brace-format
#| msgid "Certificate successfully revoked for domain {domain}"
msgid ""
@@ -2574,43 +2605,37 @@ msgid ""
"moments to take effect."
msgstr "Certifikatet for domænet {domain} blev trukket tilbage"
-#: plinth/modules/letsencrypt/views.py:64
+#: plinth/modules/letsencrypt/views.py:47
#, 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:60
#: plinth/modules/letsencrypt/views.py:77
-#: plinth/modules/letsencrypt/views.py:94
#, python-brace-format
msgid "Certificate successfully obtained for domain {domain}"
msgstr "Certifikatet for domænet {domain} blev erhvervet"
+#: plinth/modules/letsencrypt/views.py:65
#: plinth/modules/letsencrypt/views.py:82
-#: plinth/modules/letsencrypt/views.py:99
#, 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:111
+#: plinth/modules/letsencrypt/views.py:94
#, 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:116
+#: plinth/modules/letsencrypt/views.py:99
#, fuzzy, python-brace-format
#| msgid "Failed to revoke certificate for domain {domain}: {error}"
msgid "Failed to delete certificate for domain {domain}: {error}"
msgstr "Fejl ved tilbagetrækning af certifikatet for domænet {domain}: {error}"
-#: plinth/modules/matrixsynapse/__init__.py:48
-#, fuzzy
-#| msgid "Chat Server (XMPP)"
-msgid "Matrix Synapse"
-msgstr "Chat-server (XMPP)"
-
-#: plinth/modules/matrixsynapse/__init__.py:55
+#: plinth/modules/matrixsynapse/__init__.py:34
msgid ""
"Matrix is an new "
"ecosystem for open, federated instant messaging and VoIP. Synapse is a "
@@ -2620,38 +2645,44 @@ msgid ""
"converse with users on all other Matrix servers via federation."
msgstr ""
-#: plinth/modules/matrixsynapse/__init__.py:62
+#: plinth/modules/matrixsynapse/__init__.py:41
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:29
+#: plinth/modules/matrixsynapse/__init__.py:66
+#, fuzzy
+#| msgid "Chat Server (XMPP)"
+msgid "Matrix Synapse"
+msgstr "Chat-server (XMPP)"
+
+#: plinth/modules/matrixsynapse/forms.py:14
#, fuzzy
#| msgid "Enable application"
msgid "Enable Public Registration"
msgstr "Aktiver applikation"
-#: plinth/modules/matrixsynapse/forms.py:30
+#: plinth/modules/matrixsynapse/forms.py:15
msgid ""
"Enabling public registration means that anyone on the Internet can register "
"a new account on your Matrix server. Disable this if you only want existing "
"users to be able to use it."
msgstr ""
-#: plinth/modules/matrixsynapse/manifest.py:28
+#: plinth/modules/matrixsynapse/manifest.py:13
msgid "Riot"
msgstr ""
-#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:33
+#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:18
msgid ""
"Matrix service needs to be configured for a domain. Users on other Matrix "
"servers will be able to reach users on this server using this domain name. "
"Matrix user IDs will look like @username:domainname."
msgstr ""
-#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:41
+#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:26
msgid ""
"\n"
" Warning! Changing the domain name after the initial\n"
@@ -2659,14 +2690,14 @@ msgid ""
" "
msgstr ""
-#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:50
+#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:35
#, python-format
msgid ""
"No domain(s) are available. Configure at "
"least one domain to be able to use Matrix Synapse."
msgstr ""
-#: plinth/modules/matrixsynapse/templates/matrix-synapse.html:29
+#: plinth/modules/matrixsynapse/templates/matrix-synapse.html:14
#, fuzzy, python-format
#| msgid ""
#| "Your XMPP server domain is set to %(domainname)s. User IDs will "
@@ -2681,13 +2712,13 @@ msgstr ""
"vil se ud som brugernavn@%(domainname)s. Du kan konfigurere systemets "
"domæne på Konfigurer siden."
-#: plinth/modules/matrixsynapse/templates/matrix-synapse.html:36
+#: plinth/modules/matrixsynapse/templates/matrix-synapse.html:21
msgid ""
"New users can be registered from any client if public registration is "
"enabled."
msgstr ""
-#: plinth/modules/matrixsynapse/templates/matrix-synapse.html:45
+#: plinth/modules/matrixsynapse/templates/matrix-synapse.html:30
#, python-format
msgid ""
"The configured domain name is using a self-signed certificate. Federation "
@@ -2695,28 +2726,19 @@ msgid ""
"go to Let's Encrypt to obtain one."
msgstr ""
-#: plinth/modules/matrixsynapse/views.py:121
+#: plinth/modules/matrixsynapse/views.py:98
#, fuzzy
#| msgid "Application enabled"
msgid "Public registration enabled"
msgstr "Applikation aktiveret"
-#: plinth/modules/matrixsynapse/views.py:126
+#: plinth/modules/matrixsynapse/views.py:103
#, fuzzy
#| msgid "Application disabled"
msgid "Public registration disabled"
msgstr "Applikation deaktiveret"
-#: plinth/modules/mediawiki/__init__.py:40
-#: plinth/modules/mediawiki/manifest.py:24
-msgid "MediaWiki"
-msgstr ""
-
-#: plinth/modules/mediawiki/__init__.py:44 plinth/templates/index.html:139
-msgid "Wiki"
-msgstr ""
-
-#: plinth/modules/mediawiki/__init__.py:47
+#: plinth/modules/mediawiki/__init__.py:26
msgid ""
"MediaWiki is the wiki engine that powers Wikipedia and other WikiMedia "
"projects. A wiki engine is a program for creating a collaboratively edited "
@@ -2724,7 +2746,7 @@ msgid ""
"collaborate with friends on projects."
msgstr ""
-#: plinth/modules/mediawiki/__init__.py:51
+#: plinth/modules/mediawiki/__init__.py:30
msgid ""
"This MediaWiki instance comes with a randomly generated administrator "
"password. You can set a new password in the \"Configuration\" section and "
@@ -2733,108 +2755,106 @@ msgid ""
"CreateAccount\">Special:CreateAccount page."
msgstr ""
-#: plinth/modules/mediawiki/__init__.py:57
+#: plinth/modules/mediawiki/__init__.py:36
msgid ""
"Anyone with a link to this wiki can read it. Only users that are logged in "
"can make changes to the content."
msgstr ""
-#: plinth/modules/mediawiki/forms.py:42
+#: plinth/modules/mediawiki/__init__.py:54
+#: plinth/modules/mediawiki/manifest.py:9
+msgid "MediaWiki"
+msgstr ""
+
+#: plinth/modules/mediawiki/__init__.py:55 plinth/templates/index.html:124
+msgid "Wiki"
+msgstr ""
+
+#: plinth/modules/mediawiki/forms.py:27
#, fuzzy
#| msgid "Administrator Account"
msgid "Administrator Password"
msgstr "Administratorkonto"
-#: plinth/modules/mediawiki/forms.py:43
+#: plinth/modules/mediawiki/forms.py:28
msgid ""
"Set a new password for MediaWiki's administrator account (admin). Leave this "
"field blank to keep the current password."
msgstr ""
-#: plinth/modules/mediawiki/forms.py:48
+#: plinth/modules/mediawiki/forms.py:33
#, fuzzy
#| msgid "Enable application"
msgid "Enable public registrations"
msgstr "Aktiver applikation"
-#: plinth/modules/mediawiki/forms.py:49
+#: plinth/modules/mediawiki/forms.py:34
msgid ""
"If enabled, anyone on the internet will be able to create an account on your "
"MediaWiki instance."
msgstr ""
-#: plinth/modules/mediawiki/forms.py:53
+#: plinth/modules/mediawiki/forms.py:38
#, fuzzy
#| msgid "Enable reStore"
msgid "Enable private mode"
msgstr "Aktiver reStore"
-#: plinth/modules/mediawiki/forms.py:54
+#: plinth/modules/mediawiki/forms.py:39
msgid ""
"If enabled, access will be restricted. Only people who have accounts can "
"read/write to the wiki. Public registrations will also be disabled."
msgstr ""
-#: plinth/modules/mediawiki/forms.py:59
+#: plinth/modules/mediawiki/forms.py:44
#, fuzzy
#| msgid "Default"
msgid "Default Skin"
msgstr "Standard"
-#: plinth/modules/mediawiki/forms.py:60
+#: plinth/modules/mediawiki/forms.py:45
msgid ""
"Choose a default skin for your MediaWiki installation. Users have the option "
"to select their preferred skin."
msgstr ""
-#: plinth/modules/mediawiki/views.py:74
+#: plinth/modules/mediawiki/views.py:54
#, fuzzy
#| msgid "Password"
msgid "Password updated"
msgstr "Kodeord"
-#: plinth/modules/mediawiki/views.py:93
+#: plinth/modules/mediawiki/views.py:73
#, fuzzy
#| msgid "Application enabled"
msgid "Public registrations enabled"
msgstr "Applikation aktiveret"
-#: plinth/modules/mediawiki/views.py:102
+#: plinth/modules/mediawiki/views.py:82
#, fuzzy
#| msgid "Application disabled"
msgid "Public registrations disabled"
msgstr "Applikation deaktiveret"
-#: plinth/modules/mediawiki/views.py:107
+#: plinth/modules/mediawiki/views.py:87
#, fuzzy
#| msgid "PageKite enabled"
msgid "Private mode enabled"
msgstr "PageKite aktiveret"
-#: plinth/modules/mediawiki/views.py:114
+#: plinth/modules/mediawiki/views.py:94
#, fuzzy
#| msgid "PageKite disabled"
msgid "Private mode disabled"
msgstr "PageKite deaktiveret"
-#: plinth/modules/mediawiki/views.py:122
+#: plinth/modules/mediawiki/views.py:102
#, fuzzy
#| msgid "Setting unchanged"
msgid "Default skin changed"
msgstr "Indstilling uændret"
-#: plinth/modules/minetest/__init__.py:50
-#: plinth/modules/minetest/manifest.py:25
-msgid "Minetest"
-msgstr ""
-
-#: plinth/modules/minetest/__init__.py:54
-#, fuzzy
-#| msgid "Block Sandbox (Minetest)"
-msgid "Block Sandbox"
-msgstr "Block Testområde (Minetest)"
-
-#: plinth/modules/minetest/__init__.py:58
+#: plinth/modules/minetest/__init__.py:37
#, python-brace-format
msgid ""
"Minetest is a multiplayer infinite-world block sandbox. This module enables "
@@ -2847,89 +2867,94 @@ msgstr ""
"For at forbinde til serveren skal der bruges en Minetest klient."
-#: plinth/modules/minetest/forms.py:30
+#: plinth/modules/minetest/__init__.py:63
+#: plinth/modules/minetest/manifest.py:10
+msgid "Minetest"
+msgstr ""
+
+#: plinth/modules/minetest/__init__.py:64
+#, fuzzy
+#| msgid "Block Sandbox (Minetest)"
+msgid "Block Sandbox"
+msgstr "Block Testområde (Minetest)"
+
+#: plinth/modules/minetest/forms.py:15
msgid "Maximum number of players"
msgstr ""
-#: plinth/modules/minetest/forms.py:32
+#: plinth/modules/minetest/forms.py:17
msgid ""
"You can change the maximum number of players playing minetest at a single "
"instance of time."
msgstr ""
-#: plinth/modules/minetest/forms.py:36
+#: plinth/modules/minetest/forms.py:21
#, fuzzy
#| msgid "Enable reStore"
msgid "Enable creative mode"
msgstr "Aktiver reStore"
-#: plinth/modules/minetest/forms.py:37
+#: plinth/modules/minetest/forms.py:22
msgid ""
"Creative mode changes the rules of the game to make it more suitable for "
"creative gameplay, rather than challenging \"survival\" gameplay."
msgstr ""
-#: plinth/modules/minetest/forms.py:42
+#: plinth/modules/minetest/forms.py:27
#, fuzzy
#| msgid "Enable XMPP"
msgid "Enable PVP"
msgstr "Aktiver XMPP"
-#: plinth/modules/minetest/forms.py:43
+#: plinth/modules/minetest/forms.py:28
msgid "Enabling Player Vs Player will allow players to damage other players."
msgstr ""
-#: plinth/modules/minetest/forms.py:47
+#: plinth/modules/minetest/forms.py:32
#, fuzzy
#| msgid "Enable PageKite"
msgid "Enable damage"
msgstr "Aktiver PageKite"
-#: plinth/modules/minetest/forms.py:48
+#: plinth/modules/minetest/forms.py:33
msgid "When disabled, players cannot die or receive damage of any kind."
msgstr ""
-#: plinth/modules/minetest/templates/minetest.html:33
-#: plinth/modules/networks/forms.py:66 plinth/modules/networks/forms.py:97
+#: plinth/modules/minetest/templates/minetest.html:18
+#: plinth/modules/networks/forms.py:49 plinth/modules/networks/forms.py:79
msgid "Address"
msgstr "Adresse"
-#: plinth/modules/minetest/templates/minetest.html:34
-#: plinth/modules/tor/templates/tor.html:96
+#: plinth/modules/minetest/templates/minetest.html:19
+#: plinth/modules/tor/templates/tor.html:81
msgid "Port"
msgstr "Port"
-#: plinth/modules/minetest/views.py:70
+#: plinth/modules/minetest/views.py:50
#, fuzzy
#| msgid "Configuration updated"
msgid "Maximum players configuration updated"
msgstr "Konfiguration opdateret"
-#: plinth/modules/minetest/views.py:77
+#: plinth/modules/minetest/views.py:57
#, fuzzy
#| msgid "Configuration updated"
msgid "Creative mode configuration updated"
msgstr "Konfiguration opdateret"
-#: plinth/modules/minetest/views.py:83
+#: plinth/modules/minetest/views.py:63
#, fuzzy
#| msgid "Configuration updated"
msgid "PVP configuration updated"
msgstr "Konfiguration opdateret"
-#: plinth/modules/minetest/views.py:89
+#: plinth/modules/minetest/views.py:69
#, fuzzy
#| msgid "Configuration updated"
msgid "Damage configuration updated"
msgstr "Konfiguration opdateret"
-#: plinth/modules/minidlna/__init__.py:41
-#, fuzzy
-#| msgid "Mumble Voice Chat Server"
-msgid "Simple Media Server"
-msgstr "Mumble Tale-tjenesteserver"
-
-#: plinth/modules/minidlna/__init__.py:44
+#: plinth/modules/minidlna/__init__.py:23
msgid ""
"MiniDLNA is a simple media server software, with the aim of being fully "
"compliant with DLNA/UPnP-AV clients. The MiniDNLA daemon serves media files "
@@ -2940,15 +2965,21 @@ msgid ""
"Kodi."
msgstr ""
-#: plinth/modules/minidlna/__init__.py:56
+#: plinth/modules/minidlna/__init__.py:33
msgid "Media streaming server"
msgstr ""
-#: plinth/modules/minidlna/forms.py:30
+#: plinth/modules/minidlna/__init__.py:47
+#, fuzzy
+#| msgid "Mumble Voice Chat Server"
+msgid "Simple Media Server"
+msgstr "Mumble Tale-tjenesteserver"
+
+#: plinth/modules/minidlna/forms.py:15
msgid "Media Files Directory"
msgstr ""
-#: plinth/modules/minidlna/forms.py:31
+#: plinth/modules/minidlna/forms.py:16
msgid ""
"Directory that MiniDLNA Server will read for content. All sub-directories of "
"this will be also scanned for media files. If you change the default ensure "
@@ -2956,85 +2987,80 @@ msgid ""
"user. Any user media directories (\"/home/username/\") will usually work."
msgstr ""
-#: plinth/modules/minidlna/manifest.py:25
+#: plinth/modules/minidlna/manifest.py:10
msgid "vlc"
msgstr ""
-#: plinth/modules/minidlna/manifest.py:64
+#: plinth/modules/minidlna/manifest.py:49
msgid "kodi"
msgstr ""
-#: plinth/modules/minidlna/manifest.py:103
+#: plinth/modules/minidlna/manifest.py:88
msgid "yaacc"
msgstr ""
-#: plinth/modules/minidlna/manifest.py:114
+#: plinth/modules/minidlna/manifest.py:99
msgid "totem"
msgstr ""
-#: plinth/modules/minidlna/views.py:57
+#: plinth/modules/minidlna/views.py:37
msgid "Specified directory does not exist."
msgstr ""
-#: plinth/modules/minidlna/views.py:62
+#: plinth/modules/minidlna/views.py:42
msgid "Updated media directory"
msgstr ""
-#: plinth/modules/mldonkey/__init__.py:40
-#: plinth/modules/mldonkey/manifest.py:27
-#, fuzzy
-#| msgid "Monkeysphere"
-msgid "MLDonkey"
-msgstr "Monkeysphere"
-
-#: plinth/modules/mldonkey/__init__.py:44
-#, fuzzy
-#| msgid "Enable Shaarli"
-msgid "Peer-to-peer File Sharing"
-msgstr "Aktiver Shaarli"
-
-#: plinth/modules/mldonkey/__init__.py:47
+#: plinth/modules/mldonkey/__init__.py:26
msgid ""
"MLDonkey is a peer-to-peer file sharing application used to exchange large "
"files. It can participate in multiple peer-to-peer networks including "
"eDonkey, Kademlia, Overnet, BitTorrent and DirectConnect."
msgstr ""
-#: plinth/modules/mldonkey/__init__.py:50
+#: plinth/modules/mldonkey/__init__.py:29
msgid ""
"Users belonging to admin and ed2k group can control it through the web "
"interface. Users in the admin group can also control it through any of the "
"separate mobile or desktop front-ends or a telnet interface. See manual."
msgstr ""
-#: plinth/modules/mldonkey/__init__.py:55
+#: plinth/modules/mldonkey/__init__.py:34
#, python-brace-format
msgid ""
"On {box_name}, downloaded files can be found in /var/lib/mldonkey/ directory."
msgstr ""
-#: plinth/modules/mldonkey/__init__.py:63
+#: plinth/modules/mldonkey/__init__.py:40
msgid "Download files using eDonkey applications"
msgstr ""
-#: plinth/modules/mldonkey/manifest.py:34
+#: plinth/modules/mldonkey/__init__.py:54
+#: plinth/modules/mldonkey/manifest.py:12
+#, fuzzy
+#| msgid "Monkeysphere"
+msgid "MLDonkey"
+msgstr "Monkeysphere"
+
+#: plinth/modules/mldonkey/__init__.py:56
+#, fuzzy
+#| msgid "Enable Shaarli"
+msgid "Peer-to-peer File Sharing"
+msgstr "Aktiver Shaarli"
+
+#: plinth/modules/mldonkey/manifest.py:19
#, fuzzy
#| msgid "Monkeysphere"
msgid "KMLDonkey"
msgstr "Monkeysphere"
-#: plinth/modules/mldonkey/manifest.py:46
+#: plinth/modules/mldonkey/manifest.py:31
#, fuzzy
#| msgid "Monkeysphere"
msgid "AMLDonkey"
msgstr "Monkeysphere"
-#: plinth/modules/monkeysphere/__init__.py:32
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:26
-msgid "Monkeysphere"
-msgstr "Monkeysphere"
-
-#: plinth/modules/monkeysphere/__init__.py:35
+#: plinth/modules/monkeysphere/__init__.py:18
msgid ""
"With Monkeysphere, an OpenPGP key can be generated for each configured "
"domain serving SSH. The OpenPGP public key can then be uploaded to the "
@@ -3055,7 +3081,7 @@ msgstr ""
"info/getting-started-ssh/\">Monkeysphere SSH-dokumentationen for flere "
"detaljer."
-#: plinth/modules/monkeysphere/__init__.py:43
+#: plinth/modules/monkeysphere/__init__.py:26
msgid ""
"Monkeysphere can also generate an OpenPGP key for each Secure Web Server "
"(HTTPS) certificate installed on this machine. The OpenPGP public key can "
@@ -3074,95 +3100,100 @@ msgstr ""
"href=\"https://web.monkeysphere.info/download/\">Monkeysphere hjemmesiden"
"a>."
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:60
+#: plinth/modules/monkeysphere/__init__.py:50
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:11
+msgid "Monkeysphere"
+msgstr "Monkeysphere"
+
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:45
msgid "Publishing key to keyserver..."
msgstr "Distribuerer nøgle til nøgleserver..."
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:67
-#: plinth/modules/users/templates/users_delete.html:41
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:52
+#: plinth/modules/users/templates/users_delete.html:26
msgid "Cancel"
msgstr "Annuller"
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:75
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:55
-#: plinth/modules/tor/templates/tor.html:95
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:60
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:40
+#: plinth/modules/tor/templates/tor.html:80
msgid "Service"
msgstr "Tjeneste"
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:76
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:61
msgid "Domains"
msgstr "Domæner"
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:77
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:31
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:62
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:16
msgid "OpenPGP Fingerprint"
msgstr "OpenPGP-fingeraftryk"
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:86
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:58
-#: plinth/modules/names/components.py:39
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:71
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:43
+#: plinth/modules/names/components.py:24
msgid "Secure Shell"
msgstr "Secure Shell"
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:90
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:62
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:75
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:47
msgid "Other"
msgstr "Andet"
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:127
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:112
#, python-format
msgid "Show details for key %(fingerprint)s"
msgstr "Vis detaljer for nøgle %(fingerprint)s"
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:133
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:118
msgid "-"
msgstr "-"
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:143
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:128
msgid "Import Key"
msgstr "Importer Nøgle"
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:152
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:137
msgid "Publish Key"
msgstr "Distribuer Nøgle"
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:161
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:146
msgid "Add Domains"
msgstr "Tilføj Domæner"
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:35
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:20
msgid "OpenPGP User IDs"
msgstr "OpenPGP-bruger-id'er"
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:39
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:24
msgid "Key Import Date"
msgstr "Nøgleimportdato"
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:43
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:28
msgid "SSH Key Type"
msgstr "SSH-nøgletype"
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:47
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:32
msgid "SSH Key Size"
msgstr "SSH-nøglestørrelse"
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:51
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:36
msgid "SSH Fingerprint"
msgstr "SSH-fingeraftryk"
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:67
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:52
msgid "Key File"
msgstr "Nøglefil"
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:71
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:56
msgid "Available Domains"
msgstr "Tilgængelige Domæner"
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:75
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:60
msgid "Added Domains"
msgstr "Tilføjede Domæner"
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:82
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:67
msgid ""
"After this key is published to the keyservers, it can be signed using GnuPG with the following commands:"
@@ -3170,45 +3201,35 @@ msgstr ""
"Når denne nøgle er distribueret til nøgleserverne, kan den underskrives med "
"GnuPG ved brug af følgende kommandoer:"
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:88
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:73
msgid "Download the key"
msgstr "Hent nøglen"
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:91
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:76
msgid "Sign the key"
msgstr "Underskriv nøglen"
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:94
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:79
msgid "Send the key back to the keyservers"
msgstr "Send nøglen tilbage til nøgleserverne"
-#: plinth/modules/monkeysphere/views.py:60
+#: plinth/modules/monkeysphere/views.py:43
msgid "Imported key."
msgstr "Nøglen blev importeret."
-#: plinth/modules/monkeysphere/views.py:96
+#: plinth/modules/monkeysphere/views.py:79
msgid "Cancelled key publishing."
msgstr "Distribution af nøglen annulleret."
-#: plinth/modules/monkeysphere/views.py:147
+#: plinth/modules/monkeysphere/views.py:130
msgid "Published key to keyserver."
msgstr "Nøgle distribueret til nøgleserver."
-#: plinth/modules/monkeysphere/views.py:149
+#: plinth/modules/monkeysphere/views.py:132
msgid "Error occurred while publishing key."
msgstr "Fejl under distribuering af nøgle."
-#: plinth/modules/mumble/__init__.py:33 plinth/modules/mumble/manifest.py:27
-msgid "Mumble"
-msgstr ""
-
-#: plinth/modules/mumble/__init__.py:37
-#, fuzzy
-#| msgid "Voice Chat (Mumble)"
-msgid "Voice Chat"
-msgstr "Tale-tjeneste (Mumble)"
-
-#: plinth/modules/mumble/__init__.py:44
+#: plinth/modules/mumble/__init__.py:23
msgid ""
"Mumble is an open source, low-latency, encrypted, high quality voice chat "
"software."
@@ -3216,7 +3237,7 @@ msgstr ""
"Mumble er open source software der tilbyder en højkvalitets tale-tjeneste "
"med lav forsinkelse og kryptering."
-#: plinth/modules/mumble/__init__.py:46
+#: plinth/modules/mumble/__init__.py:25
msgid ""
"You can connect to your Mumble server on the regular Mumble port 64738. Clients to connect to Mumble from your "
@@ -3226,37 +3247,43 @@ msgstr ""
"Klienter til computere og Android-enheder "
"er tilgængelige."
-#: plinth/modules/mumble/forms.py:31
+#: plinth/modules/mumble/__init__.py:49 plinth/modules/mumble/manifest.py:12
+msgid "Mumble"
+msgstr ""
+
+#: plinth/modules/mumble/__init__.py:50
+#, fuzzy
+#| msgid "Voice Chat (Mumble)"
+msgid "Voice Chat"
+msgstr "Tale-tjeneste (Mumble)"
+
+#: plinth/modules/mumble/forms.py:16
#, fuzzy
#| msgid "Save Password"
msgid "Set SuperUser Password"
msgstr "Gem Kodeord"
-#: plinth/modules/mumble/forms.py:34
+#: plinth/modules/mumble/forms.py:19
msgid ""
"Optional. Leave this field blank to keep the current password. SuperUser "
"password can be used to manage permissions in Mumble."
msgstr ""
-#: plinth/modules/mumble/manifest.py:52
+#: plinth/modules/mumble/manifest.py:37
msgid "Plumble"
msgstr ""
-#: plinth/modules/mumble/manifest.py:66
+#: plinth/modules/mumble/manifest.py:51
msgid "Mumblefly"
msgstr ""
-#: plinth/modules/mumble/views.py:50
+#: plinth/modules/mumble/views.py:29
#, fuzzy
#| msgid "Password changed successfully."
msgid "SuperUser password successfully updated."
msgstr "Kodeord blev ændret."
-#: plinth/modules/names/__init__.py:37
-msgid "Name Services"
-msgstr "Navnetjenester"
-
-#: plinth/modules/names/__init__.py:45
+#: plinth/modules/names/__init__.py:26
#, python-brace-format
msgid ""
"Name Services provides an overview of the ways {box_name} can be reached "
@@ -3265,58 +3292,62 @@ msgid ""
"enabled or disabled for incoming connections through the given name."
msgstr ""
-#: plinth/modules/names/components.py:27
+#: plinth/modules/names/__init__.py:46
+msgid "Name Services"
+msgstr "Navnetjenester"
+
+#: plinth/modules/names/components.py:12
msgid "All"
msgstr ""
-#: plinth/modules/names/components.py:31 plinth/modules/names/components.py:35
+#: plinth/modules/names/components.py:16 plinth/modules/names/components.py:20
msgid "All web apps"
msgstr ""
-#: plinth/modules/networks/__init__.py:42
-msgid "Networks"
-msgstr "Netværk"
-
-#: plinth/modules/networks/__init__.py:45
+#: plinth/modules/networks/__init__.py:35
msgid ""
"Configure network devices. Connect to the Internet via Ethernet, Wi-Fi or "
"PPPoE. Share that connection with other devices on the network."
msgstr ""
-#: plinth/modules/networks/__init__.py:47
+#: plinth/modules/networks/__init__.py:37
msgid ""
"Devices administered through other methods may not be available for "
"configuration here."
msgstr ""
-#: plinth/modules/networks/__init__.py:156
+#: plinth/modules/networks/__init__.py:58
+msgid "Networks"
+msgstr "Netværk"
+
+#: plinth/modules/networks/__init__.py:151
#, python-brace-format
msgid "Using DNSSEC on IPv{kind}"
msgstr "Bruger DNSSEC på IPv{kind}"
-#: plinth/modules/networks/forms.py:32
+#: plinth/modules/networks/forms.py:16
msgid "Connection Type"
msgstr "Forbindelsestype"
-#: plinth/modules/networks/forms.py:44
+#: plinth/modules/networks/forms.py:28
msgid "Connection Name"
msgstr "Forbindelsesnavn"
-#: plinth/modules/networks/forms.py:46
+#: plinth/modules/networks/forms.py:30
#, fuzzy
#| msgid "Interface"
msgid "Network Interface"
msgstr "Interface"
-#: plinth/modules/networks/forms.py:47
+#: plinth/modules/networks/forms.py:31
msgid "The network device that this connection should be bound to."
msgstr "Netværksenheden som denne forbindelse skal bindes til."
-#: plinth/modules/networks/forms.py:50
+#: plinth/modules/networks/forms.py:34
msgid "Firewall Zone"
msgstr "Firewall-zone"
-#: plinth/modules/networks/forms.py:51
+#: plinth/modules/networks/forms.py:35
msgid ""
"The firewall zone will control which services are available over this "
"interfaces. Select Internal only for trusted networks."
@@ -3324,21 +3355,21 @@ msgstr ""
"Firewall-zonen bestemmer hvilke tjenester der er tilgængelige fra dette "
"interface. Vælg Kun internt for netværk du har tillid til."
-#: plinth/modules/networks/forms.py:54
-#: plinth/modules/networks/templates/connections_diagram.html:78
+#: plinth/modules/networks/forms.py:38
+#: plinth/modules/networks/templates/connections_diagram.html:63
msgid "External"
msgstr "Ekstern"
-#: plinth/modules/networks/forms.py:54
-#: plinth/modules/networks/templates/connections_diagram.html:107
+#: plinth/modules/networks/forms.py:38
+#: plinth/modules/networks/templates/connections_diagram.html:92
msgid "Internal"
msgstr "Intern"
-#: plinth/modules/networks/forms.py:56
+#: plinth/modules/networks/forms.py:40
msgid "IPv4 Addressing Method"
msgstr "IPv4 Adresseringsmetode"
-#: plinth/modules/networks/forms.py:58
+#: plinth/modules/networks/forms.py:41
#, python-brace-format
msgid ""
"\"Automatic\" method will make {box_name} acquire configuration from this "
@@ -3350,19 +3381,19 @@ msgstr ""
"\" vil få {box_name} til at opføre sig som en router, der kan konfigurere "
"klienter på dette netværk og dele sin internet-forbindelse."
-#: plinth/modules/networks/forms.py:63
+#: plinth/modules/networks/forms.py:46
msgid "Automatic (DHCP)"
msgstr ""
-#: plinth/modules/networks/forms.py:63
+#: plinth/modules/networks/forms.py:46
msgid "Shared"
msgstr ""
-#: plinth/modules/networks/forms.py:69
+#: plinth/modules/networks/forms.py:52
msgid "Netmask"
msgstr "Netmaske"
-#: plinth/modules/networks/forms.py:70
+#: plinth/modules/networks/forms.py:53
msgid ""
"Optional value. If left blank, a default netmask based on the address will "
"be used."
@@ -3370,21 +3401,21 @@ msgstr ""
"Ikke obligatorisk. Hvis ikke angivet, vil en standardværdi for netmasken "
"baseret på adressen anvendes."
-#: plinth/modules/networks/forms.py:74 plinth/modules/networks/forms.py:104
-#: plinth/modules/networks/templates/connection_show.html:202
-#: plinth/modules/networks/templates/connection_show.html:241
+#: plinth/modules/networks/forms.py:57 plinth/modules/networks/forms.py:86
+#: plinth/modules/networks/templates/connection_show.html:187
+#: plinth/modules/networks/templates/connection_show.html:226
msgid "Gateway"
msgstr "Gateway"
-#: plinth/modules/networks/forms.py:74 plinth/modules/networks/forms.py:104
+#: plinth/modules/networks/forms.py:57 plinth/modules/networks/forms.py:86
msgid "Optional value."
msgstr "Ikke obligatorisk."
-#: plinth/modules/networks/forms.py:77 plinth/modules/networks/forms.py:107
+#: plinth/modules/networks/forms.py:60 plinth/modules/networks/forms.py:89
msgid "DNS Server"
msgstr "DNS-server"
-#: plinth/modules/networks/forms.py:78
+#: plinth/modules/networks/forms.py:61
msgid ""
"Optional value. If this value is given and IPv4 addressing method is "
"\"Automatic\", the DNS Servers provided by a DHCP server will be ignored."
@@ -3393,11 +3424,11 @@ msgstr ""
"\"Automatisk\", vil DNS-serverne der konfigureres af en DHCP-server blive "
"ignoreret."
-#: plinth/modules/networks/forms.py:83 plinth/modules/networks/forms.py:113
+#: plinth/modules/networks/forms.py:66 plinth/modules/networks/forms.py:95
msgid "Second DNS Server"
msgstr "Sekundær DNS-server"
-#: plinth/modules/networks/forms.py:84
+#: plinth/modules/networks/forms.py:67
msgid ""
"Optional value. If this value is given and IPv4 Addressing Method is "
"\"Automatic\", the DNS Servers provided by a DHCP server will be ignored."
@@ -3406,13 +3437,13 @@ msgstr ""
"\"Automatisk\", vil DNS-serverne der konfigureres af en DHCP-server blive "
"ignoreret."
-#: plinth/modules/networks/forms.py:89
+#: plinth/modules/networks/forms.py:72
#, fuzzy
#| msgid "IPv4 Addressing Method"
msgid "IPv6 Addressing Method"
msgstr "IPv4 Adresseringsmetode"
-#: plinth/modules/networks/forms.py:91
+#: plinth/modules/networks/forms.py:73
#, fuzzy, python-brace-format
#| msgid ""
#| "\"Automatic\" method will make {box_name} acquire configuration from this "
@@ -3428,31 +3459,31 @@ msgstr ""
"\" vil få {box_name} til at opføre sig som en router, der kan konfigurere "
"klienter på dette netværk og dele sin internet-forbindelse."
-#: plinth/modules/networks/forms.py:94 plinth/modules/networks/forms.py:259
+#: plinth/modules/networks/forms.py:76 plinth/modules/networks/forms.py:241
#, fuzzy
#| msgid "Automatic Upgrades"
msgid "Automatic"
msgstr "Automatisk Opdatering"
-#: plinth/modules/networks/forms.py:94
+#: plinth/modules/networks/forms.py:76
#, fuzzy
#| msgid "Automatic Upgrades"
msgid "Automatic, DHCP only"
msgstr "Automatisk Opdatering"
-#: plinth/modules/networks/forms.py:95
+#: plinth/modules/networks/forms.py:77
msgid "Ignore"
msgstr ""
-#: plinth/modules/networks/forms.py:99
+#: plinth/modules/networks/forms.py:81
msgid "Prefix"
msgstr ""
-#: plinth/modules/networks/forms.py:100
+#: plinth/modules/networks/forms.py:82
msgid "Value between 1 and 128."
msgstr ""
-#: plinth/modules/networks/forms.py:108
+#: plinth/modules/networks/forms.py:90
#, fuzzy
#| msgid ""
#| "Optional value. If this value is given and IPv4 addressing method is "
@@ -3465,7 +3496,7 @@ msgstr ""
"\"Automatisk\", vil DNS-serverne der konfigureres af en DHCP-server blive "
"ignoreret."
-#: plinth/modules/networks/forms.py:114
+#: plinth/modules/networks/forms.py:96
#, fuzzy
#| msgid ""
#| "Optional value. If this value is given and IPv4 Addressing Method is "
@@ -3478,77 +3509,77 @@ msgstr ""
"\"Automatisk\", vil DNS-serverne der konfigureres af en DHCP-server blive "
"ignoreret."
-#: plinth/modules/networks/forms.py:127
+#: plinth/modules/networks/forms.py:109
msgid "-- select --"
msgstr "-- vælg --"
-#: plinth/modules/networks/forms.py:252
-#: plinth/modules/networks/templates/connection_show.html:144
+#: plinth/modules/networks/forms.py:234
+#: plinth/modules/networks/templates/connection_show.html:129
msgid "SSID"
msgstr "SSID"
-#: plinth/modules/networks/forms.py:253
+#: plinth/modules/networks/forms.py:235
msgid "The visible name of the network."
msgstr "Netværkets synlige navn."
-#: plinth/modules/networks/forms.py:255
-#: plinth/modules/networks/templates/connection_show.html:157
+#: plinth/modules/networks/forms.py:237
+#: plinth/modules/networks/templates/connection_show.html:142
msgid "Mode"
msgstr "Tilstand"
-#: plinth/modules/networks/forms.py:255
+#: plinth/modules/networks/forms.py:237
msgid "Infrastructure"
msgstr ""
-#: plinth/modules/networks/forms.py:256
+#: plinth/modules/networks/forms.py:238
msgid "Access Point"
msgstr ""
-#: plinth/modules/networks/forms.py:257
+#: plinth/modules/networks/forms.py:239
msgid "Ad-hoc"
msgstr ""
-#: plinth/modules/networks/forms.py:259
+#: plinth/modules/networks/forms.py:241
msgid "Frequency Band"
msgstr ""
-#: plinth/modules/networks/forms.py:260
+#: plinth/modules/networks/forms.py:242
msgid "A (5 GHz)"
msgstr ""
-#: plinth/modules/networks/forms.py:261
+#: plinth/modules/networks/forms.py:243
msgid "B/G (2.4 GHz)"
msgstr ""
-#: plinth/modules/networks/forms.py:263
-#: plinth/modules/networks/templates/connection_show.html:173
+#: plinth/modules/networks/forms.py:245
+#: plinth/modules/networks/templates/connection_show.html:158
msgid "Channel"
msgstr "Kanal"
-#: plinth/modules/networks/forms.py:264
+#: plinth/modules/networks/forms.py:246
msgid ""
"Optional value. Wireless channel in the selected frequency band to restrict "
"to. Blank or 0 value means automatic selection."
msgstr ""
-#: plinth/modules/networks/forms.py:269
+#: plinth/modules/networks/forms.py:251
#, fuzzy
#| msgid "SSID"
msgid "BSSID"
msgstr "SSID"
-#: plinth/modules/networks/forms.py:270
+#: plinth/modules/networks/forms.py:252
msgid ""
"Optional value. Unique identifier for the access point. When connecting to "
"an access point, connect only if the BSSID of the access point matches the "
"one provided. Example: 00:11:22:aa:bb:cc."
msgstr ""
-#: plinth/modules/networks/forms.py:276
+#: plinth/modules/networks/forms.py:258
msgid "Authentication Mode"
msgstr "Autentificeringstilstand"
-#: plinth/modules/networks/forms.py:277
+#: plinth/modules/networks/forms.py:259
msgid ""
"Select WPA if the wireless network is secured and requires clients to have "
"the password to connect."
@@ -3556,36 +3587,76 @@ msgstr ""
"Vælg WPA hvis det trådløse netværk er sikret og kræver at klienter kender "
"kodeordet for at oprette forbindelse."
-#: plinth/modules/networks/forms.py:279
+#: plinth/modules/networks/forms.py:261
msgid "WPA"
msgstr ""
-#: plinth/modules/networks/forms.py:279
+#: plinth/modules/networks/forms.py:261
#, fuzzy
#| msgid "OpenVPN"
msgid "Open"
msgstr "OpenVPN"
+#: plinth/modules/networks/forms.py:297
+msgid "Choose your internet connection type"
+msgstr ""
+
+#: plinth/modules/networks/forms.py:301
+msgid ""
+"I have a public IP address that may change over time
Your PageKite frontend server may not support all the "
"protocol/port combinations that you are able to define here. For example, "
@@ -4382,11 +4496,11 @@ msgstr ""
"her. For eksempel er HTTPS på andre porte end 443 kendt for at give "
"problemer."
-#: plinth/modules/pagekite/templates/pagekite_firstboot.html:26
+#: plinth/modules/pagekite/templates/pagekite_firstboot.html:11
msgid "Setup a freedombox.me subdomain with your voucher"
msgstr "Konfigurer et freedombox.me subdomæne med din rabatkupon"
-#: plinth/modules/pagekite/templates/pagekite_firstboot.html:30
+#: plinth/modules/pagekite/templates/pagekite_firstboot.html:15
#, python-format
msgid ""
"Skip this step if you do not have a "
@@ -4397,7 +4511,7 @@ msgstr ""
"en rabatkupon, eller vil konfigurere PageKite senere med et andet domænet "
"eller konto."
-#: plinth/modules/pagekite/templates/pagekite_firstboot.html:38
+#: plinth/modules/pagekite/templates/pagekite_firstboot.html:23
msgid ""
"You can use an already redeemed voucher but it will only work with the "
"initially registered subdomain."
@@ -4405,52 +4519,52 @@ msgstr ""
"Du vil kunne anvende en allerede indløst rabatkupon, men den vil kun fungere "
"med det subdomæne den oprindeligt med registreret med."
-#: plinth/modules/pagekite/templates/pagekite_firstboot.html:52
+#: plinth/modules/pagekite/templates/pagekite_firstboot.html:37
msgid "Register"
msgstr "Registrer"
-#: plinth/modules/pagekite/templates/pagekite_firstboot.html:56
+#: plinth/modules/pagekite/templates/pagekite_firstboot.html:41
msgid "Skip Registration"
msgstr "Udsæt Registrering"
-#: plinth/modules/pagekite/templates/pagekite_standard_services.html:40
+#: plinth/modules/pagekite/templates/pagekite_standard_services.html:25
msgid "Warning:
"
msgstr "Advarsel:
"
-#: plinth/modules/pagekite/templates/pagekite_standard_services.html:43
+#: plinth/modules/pagekite/templates/pagekite_standard_services.html:28
msgid ""
"Published services are accessible and attackable from the evil Internet."
msgstr ""
"Tjenester du gør tilgængelige vil kunne tilgås og angribes fra det store "
"onde internet."
-#: plinth/modules/pagekite/templates/pagekite_standard_services.html:58
+#: plinth/modules/pagekite/templates/pagekite_standard_services.html:43
msgid "Save Services"
msgstr "Gem Tjenester"
-#: plinth/modules/pagekite/utils.py:57
+#: plinth/modules/pagekite/utils.py:42
msgid "Web Server (HTTP)"
msgstr "Webserver (HTTP)"
-#: plinth/modules/pagekite/utils.py:59
+#: plinth/modules/pagekite/utils.py:44
#, python-brace-format
msgid "Site will be available at http://{0}"
msgstr "Siden vil være tilgængelig på http://{0}"
-#: plinth/modules/pagekite/utils.py:71
+#: plinth/modules/pagekite/utils.py:56
msgid "Web Server (HTTPS)"
msgstr "Webserver (HTTPS)"
-#: plinth/modules/pagekite/utils.py:73
+#: plinth/modules/pagekite/utils.py:58
#, python-brace-format
msgid "Site will be available at https://{0}"
msgstr "Siden vil være tilgængelig på https://{0}"
-#: plinth/modules/pagekite/utils.py:85
+#: plinth/modules/pagekite/utils.py:70
msgid "Secure Shell (SSH)"
msgstr "Secure Shell (SSH)"
-#: plinth/modules/pagekite/utils.py:87
+#: plinth/modules/pagekite/utils.py:72
msgid ""
"See SSH client setup instructions"
@@ -4458,30 +4572,29 @@ msgstr ""
"Se instruktioner for opsætning af SSH-klient"
-#: plinth/modules/power/__init__.py:29 plinth/modules/power/views.py:55
-#: plinth/modules/power/views.py:74
-msgid "Power"
-msgstr "Strøm"
-
-#: plinth/modules/power/__init__.py:31
+#: plinth/modules/power/__init__.py:16
msgid "Restart or shut down the system."
msgstr "Genstart eller luk systemet."
-#: plinth/modules/power/templates/power.html:28
+#: plinth/modules/power/__init__.py:31
+msgid "Power"
+msgstr "Strøm"
+
+#: plinth/modules/power/templates/power.html:13
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
+#: plinth/modules/power/templates/power.html:22
msgid "Restart »"
msgstr "Genstart »"
-#: plinth/modules/power/templates/power.html:40
+#: plinth/modules/power/templates/power.html:25
msgid "Shut Down »"
msgstr "Sluk »"
-#: plinth/modules/power/templates/power_restart.html:32
+#: plinth/modules/power/templates/power_restart.html:17
msgid ""
"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."
@@ -4489,18 +4602,18 @@ 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:49
+#: plinth/modules/power/templates/power_restart.html:34
msgid ""
"Currently an installation or upgrade is running. Consider waiting until it's "
"finished before restarting."
msgstr ""
-#: plinth/modules/power/templates/power_restart.html:63
-#: plinth/modules/power/templates/power_restart.html:66
+#: plinth/modules/power/templates/power_restart.html:48
+#: plinth/modules/power/templates/power_restart.html:51
msgid "Restart Now"
msgstr "Genstart Nu"
-#: plinth/modules/power/templates/power_shutdown.html:32
+#: plinth/modules/power/templates/power_shutdown.html:17
msgid ""
"Are you sure you want to shut down? You will not be able to access this web "
"interface after shut down."
@@ -4508,30 +4621,18 @@ 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:48
+#: plinth/modules/power/templates/power_shutdown.html:33
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:62
-#: plinth/modules/power/templates/power_shutdown.html:65
+#: plinth/modules/power/templates/power_shutdown.html:47
+#: plinth/modules/power/templates/power_shutdown.html:50
msgid "Shut Down Now"
msgstr "Sluk Nu"
-#: plinth/modules/privoxy/__init__.py:43
-#, fuzzy
-#| msgid "Enable Privoxy"
-msgid "Privoxy"
-msgstr "Aktiver Privoxy"
-
-#: plinth/modules/privoxy/__init__.py:47
-#, fuzzy
-#| msgid "Privoxy Web Proxy"
-msgid "Web Proxy"
-msgstr "Privoxy Webproxy"
-
-#: plinth/modules/privoxy/__init__.py:50
+#: plinth/modules/privoxy/__init__.py:29
msgid ""
"Privoxy is a non-caching web proxy with advanced filtering capabilities for "
"enhancing privacy, modifying web page data and HTTP headers, controlling "
@@ -4542,7 +4643,7 @@ msgstr ""
"HTTP-headers, styre adgang og fjerne reklamer og andet vedderstyggeligt "
"internetskrald. "
-#: plinth/modules/privoxy/__init__.py:55
+#: plinth/modules/privoxy/__init__.py:34
#, python-brace-format
msgid ""
"You can use Privoxy by modifying your browser proxy settings to your "
@@ -4557,22 +4658,24 @@ msgstr ""
"på http://config.privoxy.org/ "
"eller http://p.p."
-#: plinth/modules/privoxy/__init__.py:141
+#: plinth/modules/privoxy/__init__.py:57
+#, fuzzy
+#| msgid "Enable Privoxy"
+msgid "Privoxy"
+msgstr "Aktiver Privoxy"
+
+#: plinth/modules/privoxy/__init__.py:58
+#, fuzzy
+#| msgid "Privoxy Web Proxy"
+msgid "Web Proxy"
+msgstr "Privoxy Webproxy"
+
+#: plinth/modules/privoxy/__init__.py:121
#, 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:45 plinth/modules/quassel/manifest.py:25
-msgid "Quassel"
-msgstr ""
-
-#: plinth/modules/quassel/__init__.py:49
-#, fuzzy
-#| msgid "Quassel IRC Client"
-msgid "IRC Client"
-msgstr "Quassel IRC-klient"
-
-#: plinth/modules/quassel/__init__.py:53
+#: plinth/modules/quassel/__init__.py:32
#, python-brace-format
msgid ""
"Quassel is an IRC application that is split into two parts, a \"core\" and a "
@@ -4589,7 +4692,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:60
+#: plinth/modules/quassel/__init__.py:39
msgid ""
"You can connect to your Quassel core on the default Quassel port 4242. "
"Clients to connect to Quassel from your computer og mobile"
"a> enhed er tilgængelige."
-#: plinth/modules/quassel/forms.py:38
+#: plinth/modules/quassel/__init__.py:62 plinth/modules/quassel/manifest.py:10
+msgid "Quassel"
+msgstr ""
+
+#: plinth/modules/quassel/__init__.py:63
+#, fuzzy
+#| msgid "Quassel IRC Client"
+msgid "IRC Client"
+msgstr "Quassel IRC-klient"
+
+#: plinth/modules/quassel/forms.py:23
#, fuzzy
#| msgid "Subdomain"
msgid "TLS domain"
msgstr "Subdomæne"
-#: plinth/modules/quassel/forms.py:40
+#: plinth/modules/quassel/forms.py:25
msgid ""
"Select a domain to use TLS with. If the list is empty, please configure at "
"least one domain with certificates."
msgstr ""
-#: plinth/modules/quassel/manifest.py:49
+#: plinth/modules/quassel/manifest.py:34
msgid "Quasseldroid"
msgstr ""
-#: plinth/modules/radicale/__init__.py:45
-#: plinth/modules/radicale/manifest.py:90
-msgid "Radicale"
-msgstr ""
-
-#: plinth/modules/radicale/__init__.py:49
-#, fuzzy
-#| msgid "Calendar and Addressbook (Radicale)"
-msgid "Calendar and Addressbook"
-msgstr "Kalender og Adressebog (Radicale)"
-
-#: plinth/modules/radicale/__init__.py:53
+#: plinth/modules/radicale/__init__.py:32
#, fuzzy, python-brace-format
#| msgid ""
#| "Radicale is a CalDAV and CardDAV server. It allows synchronization and "
@@ -4648,61 +4750,72 @@ msgstr ""
"carddav-clients\">understøttet klient-applikation. Radicale kan tilgås "
"af enhver bruger der har et log ind til {box_name}."
-#: plinth/modules/radicale/__init__.py:58
+#: plinth/modules/radicale/__init__.py:37
msgid ""
"Radicale provides a basic web interface, which only supports creating new "
"calendars and addressbooks. It does not support adding events or contacts, "
"which must be done using a separate client."
msgstr ""
-#: plinth/modules/radicale/forms.py:30
+#: plinth/modules/radicale/__init__.py:62
+#: plinth/modules/radicale/manifest.py:75
+msgid "Radicale"
+msgstr ""
+
+#: plinth/modules/radicale/__init__.py:63
+#, fuzzy
+#| msgid "Calendar and Addressbook (Radicale)"
+msgid "Calendar and Addressbook"
+msgstr "Kalender og Adressebog (Radicale)"
+
+#: plinth/modules/radicale/forms.py:15
msgid "Only the owner of a calendar/addressbook can view or make changes."
msgstr ""
-#: plinth/modules/radicale/forms.py:34
+#: plinth/modules/radicale/forms.py:19
#, python-brace-format
msgid ""
"Any user with a {box_name} login can view any calendar/addressbook, but only "
"the owner can make changes."
msgstr ""
-#: plinth/modules/radicale/forms.py:39
+#: plinth/modules/radicale/forms.py:24
#, python-brace-format
msgid ""
"Any user with a {box_name} login can view or make changes to any calendar/"
"addressbook."
msgstr ""
-#: plinth/modules/radicale/manifest.py:25
+#: plinth/modules/radicale/manifest.py:10
msgid "DAVx5"
msgstr ""
-#: plinth/modules/radicale/manifest.py:27
+#: plinth/modules/radicale/manifest.py:12
msgid ""
"Enter the URL of the Radicale server (e.g. https://imaps://imap.example.com."
-#: plinth/modules/roundcube/__init__.py:53
+#: plinth/modules/roundcube/__init__.py:32
msgid ""
"For Gmail, username will be your Gmail address, password will be your Google "
"account password and server will be imaps://imap.gmail.com. "
@@ -4780,17 +4880,26 @@ msgstr ""
"lesssecureapps\">https://www.google.com/settings/security/lesssecureapps"
"a>)."
-#: plinth/modules/samba/__init__.py:46
-msgid "Samba"
-msgstr ""
+#: plinth/modules/roundcube/__init__.py:54
+#: plinth/modules/roundcube/manifest.py:9
+#, fuzzy
+#| msgid "Enable Roundcube"
+msgid "Roundcube"
+msgstr "Aktiver Roundcube"
-#: plinth/modules/samba/__init__.py:53
+#: plinth/modules/roundcube/__init__.py:55
+#, fuzzy
+#| msgid "Email Client (Roundcube)"
+msgid "Email Client"
+msgstr "Emailklient (Roundcube)"
+
+#: plinth/modules/samba/__init__.py:32
msgid ""
"Samba allows to share files and folders between FreedomBox and other "
"computers in your local network."
msgstr ""
-#: plinth/modules/samba/__init__.py:56
+#: plinth/modules/samba/__init__.py:35
#, python-brace-format
msgid ""
"After installation, you can choose which disks to use for sharing. Enabled "
@@ -4799,55 +4908,59 @@ msgid ""
"There are three types of shares you can choose from: "
msgstr ""
-#: plinth/modules/samba/__init__.py:61
+#: plinth/modules/samba/__init__.py:40
msgid "Open share - accessible to everyone in your local network."
msgstr ""
-#: plinth/modules/samba/__init__.py:62
+#: plinth/modules/samba/__init__.py:41
msgid ""
"Group share - accessible only to FreedomBox users who are in the freedombox-"
"share group."
msgstr ""
-#: plinth/modules/samba/__init__.py:64
+#: plinth/modules/samba/__init__.py:43
msgid ""
"Home share - every user in the freedombox-share group can have their own "
"private space."
msgstr ""
-#: plinth/modules/samba/__init__.py:68
+#: plinth/modules/samba/__init__.py:47
msgid "Access to the private shares"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:39
-#: plinth/modules/samba/templates/samba.html:50
+#: plinth/modules/samba/__init__.py:61
+msgid "Samba"
+msgstr ""
+
+#: plinth/modules/samba/templates/samba.html:24
+#: plinth/modules/samba/templates/samba.html:35
#, fuzzy
#| msgid "Add Service"
msgid "Shares"
msgstr "Tilføj Service"
-#: plinth/modules/samba/templates/samba.html:41
+#: plinth/modules/samba/templates/samba.html:26
msgid ""
"Note: Only specially created directories will be shared on selected disks, "
"not the whole disk."
msgstr ""
-#: plinth/modules/samba/templates/samba.html:49
+#: plinth/modules/samba/templates/samba.html:34
#, fuzzy
#| msgid "Domain Name"
msgid "Disk Name"
msgstr "Domænenavn"
-#: plinth/modules/samba/templates/samba.html:51
-#: plinth/modules/storage/templates/storage.html:44
+#: plinth/modules/samba/templates/samba.html:36
+#: plinth/modules/storage/templates/storage.html:29
msgid "Used"
msgstr "Brugt"
-#: plinth/modules/samba/templates/samba.html:72
+#: plinth/modules/samba/templates/samba.html:57
msgid "VFAT partitions are not supported"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:103
+#: plinth/modules/samba/templates/samba.html:88
#, python-format
msgid ""
"You can find additional information about disks on the users module page."
msgstr ""
-#: plinth/modules/samba/templates/samba.html:109
+#: plinth/modules/samba/templates/samba.html:94
msgid "Users who can currently access group and home shares"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:113
+#: plinth/modules/samba/templates/samba.html:98
msgid ""
"Users needing to re-enter their password on the password change page to "
"access group and home shares"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:118
+#: plinth/modules/samba/templates/samba.html:103
#, fuzzy
#| msgid "Available Domains"
msgid "Unavailable Shares"
msgstr "Tilgængelige Domæner"
-#: plinth/modules/samba/templates/samba.html:120
+#: plinth/modules/samba/templates/samba.html:105
msgid ""
"Shares that are configured but the disk is not available. If the disk is "
"plugged back in, sharing will be automatically enabled."
msgstr ""
-#: plinth/modules/samba/templates/samba.html:128
+#: plinth/modules/samba/templates/samba.html:113
#, fuzzy
#| msgid "Kite name"
msgid "Share name"
msgstr "Kite-navn"
-#: plinth/modules/samba/templates/samba.html:129
+#: plinth/modules/samba/templates/samba.html:114
#, fuzzy
#| msgid "Actions"
msgid "Action"
msgstr "Handlinger"
-#: plinth/modules/samba/views.py:61 plinth/modules/storage/forms.py:164
+#: plinth/modules/samba/views.py:43 plinth/modules/storage/forms.py:149
#, fuzzy
#| msgid "Add Service"
msgid "Open Share"
msgstr "Tilføj Service"
-#: plinth/modules/samba/views.py:62 plinth/modules/storage/forms.py:162
+#: plinth/modules/samba/views.py:44 plinth/modules/storage/forms.py:147
#, fuzzy
#| msgid "Add Service"
msgid "Group Share"
msgstr "Tilføj Service"
-#: plinth/modules/samba/views.py:63
+#: plinth/modules/samba/views.py:45
#, fuzzy
#| msgid "Add Service"
msgid "Home Share"
msgstr "Tilføj Service"
-#: plinth/modules/samba/views.py:96
+#: plinth/modules/samba/views.py:78
#, fuzzy
#| msgid "{name} deleted."
msgid "Share enabled."
msgstr "{name} slettet."
-#: plinth/modules/samba/views.py:101
+#: plinth/modules/samba/views.py:83
#, fuzzy, python-brace-format
#| msgid "Error installing application: {error}"
msgid "Error enabling share: {error_message}"
msgstr "Kunne ikke installere applikation: {error}"
-#: plinth/modules/samba/views.py:106
+#: plinth/modules/samba/views.py:88
#, fuzzy
#| msgid "{name} deleted."
msgid "Share disabled."
msgstr "{name} slettet."
-#: plinth/modules/samba/views.py:111
+#: plinth/modules/samba/views.py:93
#, fuzzy, python-brace-format
#| msgid "Error installing application: {error}"
msgid "Error disabling share: {error_message}"
msgstr "Kunne ikke installere applikation: {error}"
-#: plinth/modules/searx/__init__.py:41 plinth/modules/searx/manifest.py:24
-msgid "Searx"
-msgstr ""
-
-#: plinth/modules/searx/__init__.py:45
-#, fuzzy
-#| msgid "Web Server"
-msgid "Web Search"
-msgstr "Webserver"
-
-#: plinth/modules/searx/__init__.py:48
+#: plinth/modules/searx/__init__.py:25
msgid ""
"Searx is a privacy-respecting Internet metasearch engine. It aggregrates and "
"displays results from multiple search engines."
msgstr ""
-#: plinth/modules/searx/__init__.py:50
+#: plinth/modules/searx/__init__.py:27
msgid ""
"Searx can be used to avoid tracking and profiling by search engines. It "
"stores no cookies by default."
msgstr ""
-#: plinth/modules/searx/__init__.py:54
+#: plinth/modules/searx/__init__.py:31
msgid "Search the web"
msgstr ""
-#: plinth/modules/searx/forms.py:30
+#: plinth/modules/searx/__init__.py:47 plinth/modules/searx/manifest.py:9
+msgid "Searx"
+msgstr ""
+
+#: plinth/modules/searx/__init__.py:48
+#, fuzzy
+#| msgid "Web Server"
+msgid "Web Search"
+msgstr "Webserver"
+
+#: plinth/modules/searx/forms.py:15
#, fuzzy
#| msgid "Save Services"
msgid "Safe Search"
msgstr "Gem Tjenester"
-#: plinth/modules/searx/forms.py:31
+#: plinth/modules/searx/forms.py:16
msgid "Select the default family filter to apply to your search results."
msgstr ""
-#: plinth/modules/searx/forms.py:32
+#: plinth/modules/searx/forms.py:17
msgid "None"
msgstr ""
-#: plinth/modules/searx/forms.py:32
+#: plinth/modules/searx/forms.py:17
#, fuzzy
#| msgid "Mode"
msgid "Moderate"
msgstr "Tilstand"
-#: plinth/modules/searx/forms.py:32
+#: plinth/modules/searx/forms.py:17
msgid "Strict"
msgstr ""
-#: plinth/modules/searx/forms.py:35
+#: plinth/modules/searx/forms.py:20
msgid "Allow Public Access"
msgstr ""
-#: plinth/modules/searx/forms.py:36
+#: plinth/modules/searx/forms.py:21
msgid "Allow this application to be used by anyone who can reach it."
msgstr ""
-#: plinth/modules/searx/views.py:59 plinth/modules/searx/views.py:70
-#: plinth/modules/tor/views.py:149 plinth/modules/tor/views.py:176
+#: plinth/modules/searx/views.py:39 plinth/modules/searx/views.py:50
+#: plinth/modules/tor/views.py:130 plinth/modules/tor/views.py:157
msgid "Configuration updated."
msgstr "Konfiguration opdateret."
-#: plinth/modules/security/forms.py:28
+#: plinth/modules/security/forms.py:13
msgid "Restrict console logins (recommended)"
msgstr ""
-#: plinth/modules/security/forms.py:29
+#: plinth/modules/security/forms.py:14
msgid ""
"When this option is enabled, only users in the \"admin\" group will be able "
"to log in to console or via SSH. Console users may be able to access some "
"services without further authorization."
msgstr ""
-#: plinth/modules/security/forms.py:34
+#: plinth/modules/security/forms.py:19
msgid "Fail2Ban (recommended)"
msgstr ""
-#: plinth/modules/security/forms.py:35
+#: plinth/modules/security/forms.py:20
msgid ""
"When this option is enabled, Fail2Ban will limit brute force break-in "
"attempts to the SSH server and other enabled password protected internet-"
"services."
msgstr ""
-#: plinth/modules/security/templates/security.html:26
-#: plinth/modules/security/templates/security.html:28
+#: plinth/modules/security/templates/security.html:11
+#: plinth/modules/security/templates/security.html:13
#, fuzzy
#| msgid "Security"
msgid "Show security report"
msgstr "Sikkerhed"
-#: plinth/modules/security/templates/security_report.html:25
-#: plinth/modules/security/views.py:87
+#: plinth/modules/security/templates/security_report.html:10
+#: plinth/modules/security/views.py:71
#, fuzzy
#| msgid "Security"
msgid "Security Report"
msgstr "Sikkerhed"
-#: plinth/modules/security/templates/security_report.html:27
+#: plinth/modules/security/templates/security_report.html:12
#, python-format
msgid ""
"The installed version of FreedomBox has %(count)s reported security "
"vulnerabilities."
msgstr ""
-#: plinth/modules/security/templates/security_report.html:33
+#: plinth/modules/security/templates/security_report.html:18
msgid ""
"The following table lists the current reported number, and historical count, "
"of security vulnerabilities for each installed app."
msgstr ""
-#: plinth/modules/security/templates/security_report.html:39
+#: plinth/modules/security/templates/security_report.html:24
msgid ""
"For apps that provide services, the \"Sandboxed\" column shows whether "
"sandboxing features are in use. Sandboxing mitigates the impact of a "
"potentially compromised app to the rest of the system."
msgstr ""
-#: plinth/modules/security/templates/security_report.html:46
+#: plinth/modules/security/templates/security_report.html:31
msgid ""
"\"Sandbox Coverage\" is a score of how effectively the service is isolated "
"from the rest of the system. It is only displayed while the service is "
"running."
msgstr ""
-#: plinth/modules/security/templates/security_report.html:55
+#: plinth/modules/security/templates/security_report.html:40
#, fuzzy
#| msgid "Name"
msgid "App Name"
msgstr "Navn"
-#: plinth/modules/security/templates/security_report.html:56
+#: plinth/modules/security/templates/security_report.html:41
msgid "Current Vulnerabilities"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:57
+#: plinth/modules/security/templates/security_report.html:42
msgid "Past Vulnerabilities"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:58
+#: plinth/modules/security/templates/security_report.html:43
#, fuzzy
#| msgid "Block Sandbox (Minetest)"
msgid "Sandboxed"
msgstr "Block Testområde (Minetest)"
-#: plinth/modules/security/templates/security_report.html:59
+#: plinth/modules/security/templates/security_report.html:44
#, fuzzy
#| msgid "Block Sandbox (Minetest)"
msgid "Sandbox Coverage"
msgstr "Block Testområde (Minetest)"
-#: plinth/modules/security/templates/security_report.html:70
+#: plinth/modules/security/templates/security_report.html:55
msgid "N/A"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:72
+#: plinth/modules/security/templates/security_report.html:57
#, fuzzy
#| msgid "yes"
msgid "Yes"
msgstr "ja"
-#: plinth/modules/security/templates/security_report.html:74
+#: plinth/modules/security/templates/security_report.html:59
msgid "No"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:81
+#: plinth/modules/security/templates/security_report.html:66
#, fuzzy
#| msgid "is not running"
msgid "Not running"
msgstr "er ikke aktiv"
-#: plinth/modules/security/views.py:69
+#: plinth/modules/security/views.py:53
#, 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:72
+#: plinth/modules/security/views.py:56
#, fuzzy
#| msgid "General Configuration"
msgid "Updated security configuration"
msgstr "Generel Konfiguration"
-#: plinth/modules/shaarli/__init__.py:34 plinth/modules/shaarli/manifest.py:23
-msgid "Shaarli"
-msgstr "Shaarli"
-
-#: plinth/modules/shaarli/__init__.py:36
-#, fuzzy
-#| msgid "Bookmarks (Shaarli)"
-msgid "Bookmarks"
-msgstr "Bogmærker (Shaarli)"
-
-#: plinth/modules/shaarli/__init__.py:39
+#: plinth/modules/shaarli/__init__.py:20
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:21
#, fuzzy
#| msgid ""
#| "When enabled, Shaarli will be available from /"
@@ -5145,22 +5248,24 @@ msgstr ""
"shaarli på webserveren. Bemærk at Shaarli kun understøtter en enkelt "
"brugerkonto, som skal sættes op ved det første besøg."
-#: plinth/modules/shadowsocks/__init__.py:35
-msgid "Shadowsocks"
-msgstr ""
+#: plinth/modules/shaarli/__init__.py:39 plinth/modules/shaarli/manifest.py:8
+msgid "Shaarli"
+msgstr "Shaarli"
-#: plinth/modules/shadowsocks/__init__.py:39
-msgid "Socks5 Proxy"
-msgstr ""
+#: plinth/modules/shaarli/__init__.py:40
+#, fuzzy
+#| msgid "Bookmarks (Shaarli)"
+msgid "Bookmarks"
+msgstr "Bogmærker (Shaarli)"
-#: plinth/modules/shadowsocks/__init__.py:46
+#: plinth/modules/shadowsocks/__init__.py:25
msgid ""
"Shadowsocks is a lightweight and secure SOCKS5 proxy, designed to protect "
"your Internet traffic. It can be used to bypass Internet filtering and "
"censorship."
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:50
+#: plinth/modules/shadowsocks/__init__.py:29
#, python-brace-format
msgid ""
"Your {box_name} can run a Shadowsocks client, that can connect to a "
@@ -5169,171 +5274,173 @@ msgid ""
"the Shadowsocks server."
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:55
+#: plinth/modules/shadowsocks/__init__.py:34
msgid ""
"To use Shadowsocks after setup, set the SOCKS5 proxy URL in your device, "
"browser or application to http://freedombox_address:1080/"
msgstr ""
-#: plinth/modules/shadowsocks/forms.py:28
-#: plinth/modules/shadowsocks/forms.py:29
+#: plinth/modules/shadowsocks/__init__.py:50
+msgid "Shadowsocks"
+msgstr ""
+
+#: plinth/modules/shadowsocks/__init__.py:52
+msgid "Socks5 Proxy"
+msgstr ""
+
+#: plinth/modules/shadowsocks/forms.py:13
+#: plinth/modules/shadowsocks/forms.py:14
msgid "Recommended"
msgstr ""
-#: plinth/modules/shadowsocks/forms.py:52
+#: plinth/modules/shadowsocks/forms.py:37
#, fuzzy
#| msgid "Service"
msgid "Server"
msgstr "Tjeneste"
-#: plinth/modules/shadowsocks/forms.py:53
+#: plinth/modules/shadowsocks/forms.py:38
msgid "Server hostname or IP address"
msgstr ""
-#: plinth/modules/shadowsocks/forms.py:57
+#: plinth/modules/shadowsocks/forms.py:42
#, fuzzy
#| msgid "Server port"
msgid "Server port number"
msgstr "Serverport"
-#: plinth/modules/shadowsocks/forms.py:60
+#: plinth/modules/shadowsocks/forms.py:45
msgid "Password used to encrypt data. Must match server password."
msgstr ""
-#: plinth/modules/shadowsocks/forms.py:65
+#: plinth/modules/shadowsocks/forms.py:50
msgid "Encryption method. Must match setting on server."
msgstr ""
-#: plinth/modules/sharing/__init__.py:34
-#, fuzzy
-#| msgid "Enable Shaarli"
-msgid "Sharing"
-msgstr "Aktiver Shaarli"
-
-#: plinth/modules/sharing/__init__.py:38
+#: plinth/modules/sharing/__init__.py:21
#, python-brace-format
msgid ""
"Sharing allows you to share files and folders on your {box_name} over the "
"web with chosen groups of users."
msgstr ""
-#: plinth/modules/sharing/forms.py:33
+#: plinth/modules/sharing/__init__.py:38
+#, fuzzy
+#| msgid "Enable Shaarli"
+msgid "Sharing"
+msgstr "Aktiver Shaarli"
+
+#: plinth/modules/sharing/forms.py:18
msgid "Name of the share"
msgstr ""
-#: plinth/modules/sharing/forms.py:35
+#: plinth/modules/sharing/forms.py:20
msgid ""
"A lowercase alpha-numeric string that uniquely identifies a share. Example: "
"media."
msgstr ""
-#: plinth/modules/sharing/forms.py:39
+#: plinth/modules/sharing/forms.py:24
msgid "Path to share"
msgstr ""
-#: plinth/modules/sharing/forms.py:40
+#: plinth/modules/sharing/forms.py:25
msgid "Disk path to a folder on this server that you intend to share."
msgstr ""
-#: plinth/modules/sharing/forms.py:43
+#: plinth/modules/sharing/forms.py:28
#, fuzzy
#| msgid "Publish Key"
msgid "Public share"
msgstr "Distribuer Nøgle"
-#: plinth/modules/sharing/forms.py:44
+#: plinth/modules/sharing/forms.py:29
msgid "Make files in this folder available to anyone with the link."
msgstr ""
-#: plinth/modules/sharing/forms.py:48
+#: plinth/modules/sharing/forms.py:33
msgid "User groups that can read the files in the share"
msgstr ""
-#: plinth/modules/sharing/forms.py:50
+#: plinth/modules/sharing/forms.py:35
msgid ""
"Users of the selected user groups will be able to read the files in the "
"share."
msgstr ""
-#: plinth/modules/sharing/forms.py:67
+#: plinth/modules/sharing/forms.py:52
#, fuzzy
#| msgid "This service already exists"
msgid "A share with this name already exists."
msgstr "Denne tjeneste eksisterer allerede"
-#: plinth/modules/sharing/forms.py:78
+#: plinth/modules/sharing/forms.py:63
msgid "Shares should be either public or shared with at least one group"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:39
-#: plinth/modules/sharing/templates/sharing.html:42
+#: plinth/modules/sharing/templates/sharing.html:24
+#: plinth/modules/sharing/templates/sharing.html:27
#, fuzzy
#| msgid "Add Service"
msgid "Add share"
msgstr "Tilføj Service"
-#: plinth/modules/sharing/templates/sharing.html:47
+#: plinth/modules/sharing/templates/sharing.html:32
msgid "No shares currently configured."
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:53
+#: plinth/modules/sharing/templates/sharing.html:38
msgid "Disk Path"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:54
+#: plinth/modules/sharing/templates/sharing.html:39
msgid "Shared Over"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:55
+#: plinth/modules/sharing/templates/sharing.html:40
#, fuzzy
#| msgid "Groups"
msgid "With Groups"
msgstr "Grupper"
-#: plinth/modules/sharing/templates/sharing.html:73
+#: plinth/modules/sharing/templates/sharing.html:58
msgid "public access"
msgstr ""
-#: plinth/modules/sharing/views.py:55
+#: plinth/modules/sharing/views.py:39
msgid "Share added."
msgstr ""
-#: plinth/modules/sharing/views.py:60
+#: plinth/modules/sharing/views.py:44
#, fuzzy
#| msgid "Add Service"
msgid "Add Share"
msgstr "Tilføj Service"
-#: plinth/modules/sharing/views.py:75
+#: plinth/modules/sharing/views.py:59
msgid "Share edited."
msgstr ""
-#: plinth/modules/sharing/views.py:80
+#: plinth/modules/sharing/views.py:64
#, fuzzy
#| msgid "Edit User"
msgid "Edit Share"
msgstr "Rediger Bruger"
-#: plinth/modules/sharing/views.py:111
+#: plinth/modules/sharing/views.py:95
#, fuzzy
#| msgid "{name} deleted."
msgid "Share deleted."
msgstr "{name} slettet."
-#: plinth/modules/snapshot/__init__.py:37
-#, fuzzy
-#| msgid "Create User"
-msgid "Storage Snapshots"
-msgstr "Opret Bruger"
-
-#: plinth/modules/snapshot/__init__.py:40
+#: plinth/modules/snapshot/__init__.py:23
msgid ""
"Snapshots allows creating and managing btrfs file system snapshots. These "
"can be used to roll back the system to a previously known good state in case "
"of unwanted changes to the system."
msgstr ""
-#: plinth/modules/snapshot/__init__.py:44
+#: plinth/modules/snapshot/__init__.py:27
#, no-python-format
msgid ""
"Snapshots are taken periodically (called timeline snapshots) and also before "
@@ -5341,218 +5448,220 @@ msgid ""
"cleaned up according to the settings below."
msgstr ""
-#: plinth/modules/snapshot/__init__.py:47
+#: plinth/modules/snapshot/__init__.py:30
msgid ""
"Snapshots currently work on btrfs file systems only and on the root "
"partition only. Snapshots are not a replacement for backups since they can only be stored on the same partition. "
msgstr ""
-#: plinth/modules/snapshot/forms.py:27
+#: plinth/modules/snapshot/__init__.py:52
+#, fuzzy
+#| msgid "Create User"
+msgid "Storage Snapshots"
+msgstr "Opret Bruger"
+
+#: plinth/modules/snapshot/forms.py:12
msgid "Free Disk Space to Maintain"
msgstr ""
-#: plinth/modules/snapshot/forms.py:28
+#: plinth/modules/snapshot/forms.py:13
msgid ""
"Maintain this percentage of free space on the disk. If free space falls "
"below this value, older snapshots are removed until this much free space is "
"regained. The default value is 30%."
msgstr ""
-#: plinth/modules/snapshot/forms.py:35
+#: plinth/modules/snapshot/forms.py:20
#, fuzzy
#| msgid "Delete %(name)s"
msgid "Timeline Snapshots"
msgstr "Slet %(name)s"
-#: plinth/modules/snapshot/forms.py:36
+#: plinth/modules/snapshot/forms.py:21
msgid ""
"Enable or disable timeline snapshots (hourly, daily, monthly and yearly)."
msgstr ""
-#: plinth/modules/snapshot/forms.py:41
+#: plinth/modules/snapshot/forms.py:26
msgid "Software Installation Snapshots"
msgstr ""
-#: plinth/modules/snapshot/forms.py:42
+#: plinth/modules/snapshot/forms.py:27
msgid "Enable or disable snapshots before and after software installation"
msgstr ""
-#: plinth/modules/snapshot/forms.py:47
+#: plinth/modules/snapshot/forms.py:32
#, fuzzy
#| msgid "Create User"
msgid "Hourly Snapshots Limit"
msgstr "Opret Bruger"
-#: plinth/modules/snapshot/forms.py:48
+#: plinth/modules/snapshot/forms.py:33
msgid "Keep a maximum of this many hourly snapshots."
msgstr ""
-#: plinth/modules/snapshot/forms.py:51
+#: plinth/modules/snapshot/forms.py:36
#, fuzzy
#| msgid "Delete %(name)s"
msgid "Daily Snapshots Limit"
msgstr "Slet %(name)s"
-#: plinth/modules/snapshot/forms.py:52
+#: plinth/modules/snapshot/forms.py:37
msgid "Keep a maximum of this many daily snapshots."
msgstr ""
-#: plinth/modules/snapshot/forms.py:55
+#: plinth/modules/snapshot/forms.py:40
#, fuzzy
#| msgid "Delete %(name)s"
msgid "Weekly Snapshots Limit"
msgstr "Slet %(name)s"
-#: plinth/modules/snapshot/forms.py:56
+#: plinth/modules/snapshot/forms.py:41
msgid "Keep a maximum of this many weekly snapshots."
msgstr ""
-#: plinth/modules/snapshot/forms.py:59
+#: plinth/modules/snapshot/forms.py:44
msgid "Monthly Snapshots Limit"
msgstr ""
-#: plinth/modules/snapshot/forms.py:60
+#: plinth/modules/snapshot/forms.py:45
msgid "Keep a maximum of this many monthly snapshots."
msgstr ""
-#: plinth/modules/snapshot/forms.py:63
+#: plinth/modules/snapshot/forms.py:48
#, fuzzy
#| msgid "Delete %(name)s"
msgid "Yearly Snapshots Limit"
msgstr "Slet %(name)s"
-#: plinth/modules/snapshot/forms.py:64
+#: plinth/modules/snapshot/forms.py:49
msgid ""
"Keep a maximum of this many yearly snapshots. The default value is 0 "
"(disabled)."
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:27
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:12
#, fuzzy
#| msgid "Delete user permanently?"
msgid "Delete the following snapshots permanently?"
msgstr "Slet bruger permanent?"
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:31
-#: plinth/modules/snapshot/templates/snapshot_manage.html:43
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:39
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:16
+#: plinth/modules/snapshot/templates/snapshot_manage.html:28
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:24
msgid "Number"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:32
-#: plinth/modules/snapshot/templates/snapshot_manage.html:44
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:40
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:17
+#: plinth/modules/snapshot/templates/snapshot_manage.html:29
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:25
msgid "Date"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:52
-#: plinth/modules/snapshot/templates/snapshot_manage.html:37
-#: plinth/modules/snapshot/views.py:196
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:37
+#: plinth/modules/snapshot/templates/snapshot_manage.html:22
+#: plinth/modules/snapshot/views.py:175
#, fuzzy
#| msgid "Delete %(name)s"
msgid "Delete Snapshots"
msgstr "Slet %(name)s"
-#: plinth/modules/snapshot/templates/snapshot_manage.html:33
+#: plinth/modules/snapshot/templates/snapshot_manage.html:18
#, fuzzy
#| msgid "Create User"
msgid "Create Snapshot"
msgstr "Opret Bruger"
-#: plinth/modules/snapshot/templates/snapshot_manage.html:46
+#: plinth/modules/snapshot/templates/snapshot_manage.html:31
msgid "Rollback"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_manage.html:57
+#: plinth/modules/snapshot/templates/snapshot_manage.html:42
#, fuzzy
#| msgid "Inactive"
msgid "active"
msgstr "Inaktiv"
-#: plinth/modules/snapshot/templates/snapshot_manage.html:66
+#: plinth/modules/snapshot/templates/snapshot_manage.html:51
#, python-format
msgid "Rollback to snapshot #%(number)s"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_not_supported.html:26
+#: plinth/modules/snapshot/templates/snapshot_not_supported.html:11
#, python-format
msgid ""
"Your have a filesystem of type %(fs_type)s. Snapshots are "
"currently only available on %(types_supported)s filesystems."
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:27
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:12
msgid "Roll back the system to this snapshot?"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:30
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:15
msgid ""
"A new snapshot with the current state of the file system will be "
"automatically created. You will be able to undo a rollback by reverting to "
"the newly created snapshot."
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:57
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:42
#, python-format
msgid "Rollback to Snapshot #%(number)s"
msgstr ""
-#: plinth/modules/snapshot/views.py:45
+#: plinth/modules/snapshot/views.py:30
#, fuzzy
#| msgid "Create User"
msgid "Manage Snapshots"
msgstr "Opret Bruger"
-#: plinth/modules/snapshot/views.py:98
+#: plinth/modules/snapshot/views.py:79
msgid "Created snapshot."
msgstr ""
-#: plinth/modules/snapshot/views.py:156
+#: plinth/modules/snapshot/views.py:135
#, fuzzy
#| msgid "Configuration updated"
msgid "Storage snapshots configuration updated"
msgstr "Konfiguration opdateret"
-#: plinth/modules/snapshot/views.py:160 plinth/modules/tor/views.py:79
+#: plinth/modules/snapshot/views.py:139 plinth/modules/tor/views.py:60
#, python-brace-format
msgid "Action error: {0} [{1}] [{2}]"
msgstr "Fejl under handling: {0} [{1}] [{2}]"
-#: plinth/modules/snapshot/views.py:175
+#: plinth/modules/snapshot/views.py:154
#, fuzzy
#| msgid "Delete %(name)s"
msgid "Deleted all snapshots"
msgstr "Slet %(name)s"
-#: plinth/modules/snapshot/views.py:179
+#: plinth/modules/snapshot/views.py:158
#, fuzzy
#| msgid "Delete %(name)s"
msgid "Deleted selected snapshots"
msgstr "Slet %(name)s"
-#: plinth/modules/snapshot/views.py:184
+#: plinth/modules/snapshot/views.py:163
msgid "Snapshot is currently in use. Please try again later."
msgstr ""
-#: plinth/modules/snapshot/views.py:207
+#: plinth/modules/snapshot/views.py:186
#, python-brace-format
msgid "Rolled back to snapshot #{number}."
msgstr ""
-#: plinth/modules/snapshot/views.py:210
+#: plinth/modules/snapshot/views.py:189
msgid "The system must be restarted to complete the rollback."
msgstr ""
-#: plinth/modules/snapshot/views.py:222
+#: plinth/modules/snapshot/views.py:201
msgid "Rollback to Snapshot"
msgstr ""
-#: plinth/modules/ssh/__init__.py:43
-msgid "Secure Shell (SSH) Server"
-msgstr "Secure Shell (SSH) Server"
-
-#: plinth/modules/ssh/__init__.py:46
+#: plinth/modules/ssh/__init__.py:29
msgid ""
"A Secure Shell server uses the secure shell protocol to accept connections "
"from remote computers. An authorized remote computer can perform "
@@ -5560,64 +5669,62 @@ msgid ""
"connections."
msgstr ""
-#: plinth/modules/ssh/forms.py:30
+#: plinth/modules/ssh/__init__.py:50
+msgid "Secure Shell (SSH) Server"
+msgstr "Secure Shell (SSH) Server"
+
+#: plinth/modules/ssh/forms.py:15
#, fuzzy
#| msgid "Use HTTP basic authentication"
msgid "Disable password authentication"
msgstr "Brug basal (\"basic\") HTTP-autentifikation"
-#: plinth/modules/ssh/forms.py:31
+#: plinth/modules/ssh/forms.py:16
msgid ""
"Improves security by preventing password guessing. Ensure that you have "
"setup SSH keys in your administrator user account before enabling this "
"option."
msgstr ""
-#: plinth/modules/ssh/templates/ssh.html:26
+#: plinth/modules/ssh/templates/ssh.html:11
#, fuzzy
#| msgid "SSH Fingerprint"
msgid "Server Fingerprints"
msgstr "SSH-fingeraftryk"
-#: plinth/modules/ssh/templates/ssh.html:29
+#: plinth/modules/ssh/templates/ssh.html:14
msgid ""
"When connecting to the server, ensure that the fingerprint shown by the SSH "
"client matches one of these fingerprints."
msgstr ""
-#: plinth/modules/ssh/templates/ssh.html:38
+#: plinth/modules/ssh/templates/ssh.html:23
msgid "Algorithm"
msgstr ""
-#: plinth/modules/ssh/templates/ssh.html:39
+#: plinth/modules/ssh/templates/ssh.html:24
#, fuzzy
#| msgid "SSH Fingerprint"
msgid "Fingerprint"
msgstr "SSH-fingeraftryk"
-#: plinth/modules/ssh/views.py:66
+#: plinth/modules/ssh/views.py:48
msgid "SSH authentication with password disabled."
msgstr ""
-#: plinth/modules/ssh/views.py:69
+#: plinth/modules/ssh/views.py:51
msgid "SSH authentication with password enabled."
msgstr ""
-#: plinth/modules/sso/__init__.py:30
+#: plinth/modules/sso/__init__.py:33
msgid "Single Sign On"
msgstr ""
-#: plinth/modules/sso/templates/login.html:35
+#: plinth/modules/sso/templates/login.html:20
msgid "Login"
msgstr "Log ind"
-#: plinth/modules/storage/__init__.py:39 plinth/modules/storage/__init__.py:331
-#, fuzzy
-#| msgid "reStore"
-msgid "Storage"
-msgstr "reStore"
-
-#: plinth/modules/storage/__init__.py:47
+#: plinth/modules/storage/__init__.py:30
#, python-brace-format
msgid ""
"This module allows you to manage storage media attached to your {box_name}. "
@@ -5625,166 +5732,172 @@ msgid ""
"media, expand the root partition etc."
msgstr ""
-#: plinth/modules/storage/__init__.py:224
+#: plinth/modules/storage/__init__.py:52 plinth/modules/storage/__init__.py:318
+#, fuzzy
+#| msgid "reStore"
+msgid "Storage"
+msgstr "reStore"
+
+#: plinth/modules/storage/__init__.py:211
#, fuzzy, python-brace-format
#| msgid "{disk_size} bytes"
msgid "{disk_size:.1f} bytes"
msgstr "{disk_size} bytes"
-#: plinth/modules/storage/__init__.py:228
+#: plinth/modules/storage/__init__.py:215
#, fuzzy, python-brace-format
#| msgid "{disk_size} KiB"
msgid "{disk_size:.1f} KiB"
msgstr "{disk_size} KiB"
-#: plinth/modules/storage/__init__.py:232
+#: plinth/modules/storage/__init__.py:219
#, fuzzy, python-brace-format
#| msgid "{disk_size} MiB"
msgid "{disk_size:.1f} MiB"
msgstr "{disk_size} MiB"
-#: plinth/modules/storage/__init__.py:236
+#: plinth/modules/storage/__init__.py:223
#, fuzzy, python-brace-format
#| msgid "{disk_size} GiB"
msgid "{disk_size:.1f} GiB"
msgstr "{disk_size} GiB"
-#: plinth/modules/storage/__init__.py:239
+#: plinth/modules/storage/__init__.py:226
#, fuzzy, python-brace-format
#| msgid "{disk_size} TiB"
msgid "{disk_size:.1f} TiB"
msgstr "{disk_size} TiB"
-#: plinth/modules/storage/__init__.py:246
+#: plinth/modules/storage/__init__.py:233
msgid "The operation failed."
msgstr ""
-#: plinth/modules/storage/__init__.py:248
+#: plinth/modules/storage/__init__.py:235
msgid "The operation was cancelled."
msgstr ""
-#: plinth/modules/storage/__init__.py:250
+#: plinth/modules/storage/__init__.py:237
#, fuzzy
#| msgid "repro service is running"
msgid "The device is already unmounting."
msgstr "repro-tjenesten er aktiv"
-#: plinth/modules/storage/__init__.py:252
+#: plinth/modules/storage/__init__.py:239
msgid "The operation is not supported due to missing driver/tool support."
msgstr ""
-#: plinth/modules/storage/__init__.py:255
+#: plinth/modules/storage/__init__.py:242
msgid "The operation timed out."
msgstr ""
-#: plinth/modules/storage/__init__.py:257
+#: plinth/modules/storage/__init__.py:244
msgid "The operation would wake up a disk that is in a deep-sleep state."
msgstr ""
-#: plinth/modules/storage/__init__.py:260
+#: plinth/modules/storage/__init__.py:247
msgid "Attempting to unmount a device that is busy."
msgstr ""
-#: plinth/modules/storage/__init__.py:262
+#: plinth/modules/storage/__init__.py:249
msgid "The operation has already been cancelled."
msgstr ""
-#: plinth/modules/storage/__init__.py:268
+#: plinth/modules/storage/__init__.py:255
msgid "Not authorized to perform the requested operation."
msgstr ""
-#: plinth/modules/storage/__init__.py:270
+#: plinth/modules/storage/__init__.py:257
#, fuzzy
#| msgid "This service already exists"
msgid "The device is already mounted."
msgstr "Denne tjeneste eksisterer allerede"
-#: plinth/modules/storage/__init__.py:272
+#: plinth/modules/storage/__init__.py:259
#, fuzzy
#| msgid "repro service is not running"
msgid "The device is not mounted."
msgstr "repro-tjenesten er ikke aktiv"
-#: plinth/modules/storage/__init__.py:275
+#: plinth/modules/storage/__init__.py:262
msgid "Not permitted to use the requested option."
msgstr ""
-#: plinth/modules/storage/__init__.py:278
+#: plinth/modules/storage/__init__.py:265
msgid "The device is mounted by another user."
msgstr ""
-#: plinth/modules/storage/__init__.py:326
+#: plinth/modules/storage/__init__.py:313
#, no-python-format, python-brace-format
msgid "Low space on system partition: {percent_used}% used, {free_space} free."
msgstr ""
-#: plinth/modules/storage/__init__.py:328
+#: plinth/modules/storage/__init__.py:315
msgid "Low disk space"
msgstr ""
-#: plinth/modules/storage/forms.py:79
+#: plinth/modules/storage/forms.py:64
#, fuzzy
#| msgid "Invalid hostname"
msgid "Invalid directory name."
msgstr "Ugyldigt værtsnavn"
-#: plinth/modules/storage/forms.py:97
+#: plinth/modules/storage/forms.py:82
msgid "Directory does not exist."
msgstr ""
-#: plinth/modules/storage/forms.py:99
+#: plinth/modules/storage/forms.py:84
#, fuzzy
#| msgid "Download directory"
msgid "Path is not a directory."
msgstr "Download-mappe"
-#: plinth/modules/storage/forms.py:102
+#: plinth/modules/storage/forms.py:87
msgid "Directory is not readable by the user."
msgstr ""
-#: plinth/modules/storage/forms.py:105
+#: plinth/modules/storage/forms.py:90
msgid "Directory is not writable by the user."
msgstr ""
-#: plinth/modules/storage/forms.py:110
+#: plinth/modules/storage/forms.py:95
#, fuzzy
#| msgid "Download directory"
msgid "Directory"
msgstr "Download-mappe"
-#: plinth/modules/storage/forms.py:113
+#: plinth/modules/storage/forms.py:98
msgid "Subdirectory (optional)"
msgstr ""
-#: plinth/modules/storage/forms.py:160
+#: plinth/modules/storage/forms.py:145
#, fuzzy
#| msgid "Add Service"
msgid "Share"
msgstr "Tilføj Service"
-#: plinth/modules/storage/forms.py:168
+#: plinth/modules/storage/forms.py:153
msgid "Other directory (specify below)"
msgstr ""
-#: plinth/modules/storage/templates/storage.html:35
+#: plinth/modules/storage/templates/storage.html:20
#, fuzzy
#| msgid "The following disks are in use:"
msgid "The following storage devices are in use:"
msgstr "Følgende diske er i brug:"
-#: plinth/modules/storage/templates/storage.html:41
+#: plinth/modules/storage/templates/storage.html:26
msgid "Label"
msgstr ""
-#: plinth/modules/storage/templates/storage.html:42
+#: plinth/modules/storage/templates/storage.html:27
msgid "Mount Point"
msgstr "Monteringspunkt"
-#: plinth/modules/storage/templates/storage.html:90
+#: plinth/modules/storage/templates/storage.html:75
msgid "Partition Expansion"
msgstr ""
-#: plinth/modules/storage/templates/storage.html:92
+#: plinth/modules/storage/templates/storage.html:77
#, python-format
msgid ""
"There is %(expandable_root_size)s of unallocated space available after your "
@@ -5795,13 +5908,13 @@ msgstr ""
"Rod-partitionen kan udvides til også at inkludere denne plads. Dette vil "
"give dig yderligere fri plads til at gemme filer i."
-#: plinth/modules/storage/templates/storage.html:102
-#: plinth/modules/storage/templates/storage_expand.html:39
-#: plinth/modules/storage/views.py:76
+#: plinth/modules/storage/templates/storage.html:87
+#: plinth/modules/storage/templates/storage_expand.html:24
+#: plinth/modules/storage/views.py:58
msgid "Expand Root Partition"
msgstr "Udvid Rod-partition"
-#: plinth/modules/storage/templates/storage_expand.html:29
+#: plinth/modules/storage/templates/storage_expand.html:14
#, python-format
msgid ""
"Please backup your data before proceeding. After this operation, "
@@ -5812,39 +5925,30 @@ msgstr ""
"Efter denne operation, vil der være yderligere %(expandable_root_size)s fri "
"diskplads på din rod-partition."
-#: plinth/modules/storage/views.py:88
+#: plinth/modules/storage/views.py:70
#, python-brace-format
msgid "Error expanding partition: {exception}"
msgstr "Kunne ikke udvidde partition: {exception}"
-#: plinth/modules/storage/views.py:91
+#: plinth/modules/storage/views.py:73
msgid "Partition expanded successfully."
msgstr "Partition blev udviddet."
-#: plinth/modules/storage/views.py:109
+#: plinth/modules/storage/views.py:91
#, python-brace-format
msgid "{drive_vendor} {drive_model} can be safely unplugged."
msgstr ""
-#: plinth/modules/storage/views.py:113
+#: plinth/modules/storage/views.py:95
msgid "Device can be safely unplugged."
msgstr ""
-#: plinth/modules/storage/views.py:123
+#: plinth/modules/storage/views.py:105
#, python-brace-format
msgid "Error ejecting device: {error_message}"
msgstr ""
-#: plinth/modules/syncthing/__init__.py:40
-#: plinth/modules/syncthing/manifest.py:28
-msgid "Syncthing"
-msgstr ""
-
-#: plinth/modules/syncthing/__init__.py:44
-msgid "File Synchronization"
-msgstr ""
-
-#: plinth/modules/syncthing/__init__.py:47
+#: plinth/modules/syncthing/__init__.py:26
msgid ""
"Syncthing is an application to synchronize files across multiple devices, e."
"g. your desktop computer and mobile phone. Creation, modification, or "
@@ -5852,7 +5956,7 @@ msgid ""
"other devices that also run Syncthing."
msgstr ""
-#: plinth/modules/syncthing/__init__.py:52
+#: plinth/modules/syncthing/__init__.py:31
#, python-brace-format
msgid ""
"Running Syncthing on {box_name} provides an extra synchronization point for "
@@ -5863,21 +5967,22 @@ msgid ""
"{box_name} is only available for users belonging to the \"admin\" group."
msgstr ""
-#: plinth/modules/syncthing/__init__.py:63
+#: plinth/modules/syncthing/__init__.py:40
#, fuzzy
#| msgid "Install this application?"
msgid "Administer Syncthing application"
msgstr "Installer denne applikation?"
-#: plinth/modules/tahoe/__init__.py:43
-msgid "Tahoe-LAFS"
+#: plinth/modules/syncthing/__init__.py:54
+#: plinth/modules/syncthing/manifest.py:13
+msgid "Syncthing"
msgstr ""
-#: plinth/modules/tahoe/__init__.py:47
-msgid "Distributed File Storage"
+#: plinth/modules/syncthing/__init__.py:55
+msgid "File Synchronization"
msgstr ""
-#: plinth/modules/tahoe/__init__.py:134
+#: plinth/modules/tahoe/__init__.py:30
msgid ""
"Tahoe-LAFS is a decentralized secure file storage system. It uses provider "
"independent security to store files over a distributed network of storage "
@@ -5885,7 +5990,7 @@ msgid ""
"remaining nodes."
msgstr ""
-#: plinth/modules/tahoe/__init__.py:139
+#: plinth/modules/tahoe/__init__.py:35
#, python-brace-format
msgid ""
"This {box_name} hosts a storage node and an introducer by default. "
@@ -5893,7 +5998,15 @@ msgid ""
"other storage nodes."
msgstr ""
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:33
+#: plinth/modules/tahoe/__init__.py:66
+msgid "Tahoe-LAFS"
+msgstr ""
+
+#: plinth/modules/tahoe/__init__.py:68
+msgid "Distributed File Storage"
+msgstr ""
+
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:17
#, python-format
msgid ""
"The Tahoe-LAFS server domain is set to %(domain_name)s. Changing the "
@@ -5902,41 +6015,37 @@ msgid ""
"%(domain_name)s:5678\">https://%(domain_name)s:5678."
msgstr ""
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:55
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:39
msgid "Local introducer"
msgstr ""
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:43
#: plinth/modules/tahoe/templates/tahoe-post-setup.html:59
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:75
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:92
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:76
#, fuzzy
#| msgid "Name"
msgid "Pet Name"
msgstr "Navn"
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:72
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:56
msgid "Add new introducer"
msgstr ""
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:83
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:67
#, fuzzy
#| msgid "Address"
msgid "Add"
msgstr "Adresse"
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:88
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:72
msgid "Connected introducers"
msgstr ""
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:105
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:89
msgid "Remove"
msgstr ""
-#: plinth/modules/tor/__init__.py:47
-msgid "Tor"
-msgstr ""
-
-#: plinth/modules/tor/__init__.py:52
+#: plinth/modules/tor/__init__.py:33
msgid ""
"Tor is an anonymous communication system. You can learn more about it from "
"the Tor Project website. For "
@@ -5950,81 +6059,85 @@ msgstr ""
"du bruger Tor-browseren."
-#: plinth/modules/tor/__init__.py:83
+#: plinth/modules/tor/__init__.py:55
+msgid "Tor"
+msgstr ""
+
+#: plinth/modules/tor/__init__.py:66
#, fuzzy
#| msgid "Tor Hidden Service"
msgid "Tor Onion Service"
msgstr "Tor Skjult Tjeneste"
-#: plinth/modules/tor/__init__.py:87
+#: plinth/modules/tor/__init__.py:70
msgid "Tor Socks Proxy"
msgstr ""
-#: plinth/modules/tor/__init__.py:91
+#: plinth/modules/tor/__init__.py:74
#, fuzzy
msgid "Tor Bridge Relay"
msgstr "Tor Bridge Relay"
-#: plinth/modules/tor/__init__.py:112
+#: plinth/modules/tor/__init__.py:95
msgid "Tor relay port available"
msgstr "Tor videresendelsesport tilgængelig"
-#: plinth/modules/tor/__init__.py:122
+#: plinth/modules/tor/__init__.py:105
msgid "Obfs3 transport registered"
msgstr "Obfs3 transport registreret"
-#: plinth/modules/tor/__init__.py:132
+#: plinth/modules/tor/__init__.py:115
msgid "Obfs4 transport registered"
msgstr "Obfs4 transport registreret"
-#: plinth/modules/tor/__init__.py:225
+#: plinth/modules/tor/__init__.py:208
#, 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:236
+#: plinth/modules/tor/__init__.py:219
#, 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}"
-#: plinth/modules/tor/forms.py:46
+#: plinth/modules/tor/forms.py:31
msgid ""
"Enter a valid bridge with this format: [transport] IP:ORPort [fingerprint]"
msgstr ""
-#: plinth/modules/tor/forms.py:88
+#: plinth/modules/tor/forms.py:73
msgid "Enable Tor"
msgstr "Aktiver Tor"
-#: plinth/modules/tor/forms.py:90
+#: plinth/modules/tor/forms.py:75
msgid "Use upstream bridges to connect to Tor network"
msgstr ""
-#: plinth/modules/tor/forms.py:92
+#: plinth/modules/tor/forms.py:77
msgid ""
"When enabled, the bridges configured below will be used to connect to the "
"Tor network. Use this option if your Internet Service Provider (ISP) blocks "
"or censors connections to the Tor Network. This will disable relay modes."
msgstr ""
-#: plinth/modules/tor/forms.py:97
+#: plinth/modules/tor/forms.py:82
msgid "Upstream bridges"
msgstr ""
-#: plinth/modules/tor/forms.py:99
+#: plinth/modules/tor/forms.py:84
msgid ""
"You can get some bridges from https://bridges.torproject.org/ and copy/paste the bridge information "
"here. Currently supported transports are none, obfs3, obfs4 and scamblesuit."
msgstr ""
-#: plinth/modules/tor/forms.py:105
+#: plinth/modules/tor/forms.py:90
#, fuzzy
#| msgid "Enable Tor"
msgid "Enable Tor relay"
msgstr "Aktiver Tor"
-#: plinth/modules/tor/forms.py:106
+#: plinth/modules/tor/forms.py:91
#, python-brace-format
msgid ""
"When enabled, your {box_name} will run a Tor relay and donate bandwidth to "
@@ -6032,25 +6145,25 @@ msgid ""
"download bandwidth."
msgstr ""
-#: plinth/modules/tor/forms.py:111
+#: plinth/modules/tor/forms.py:96
#, fuzzy
msgid "Enable Tor bridge relay"
msgstr "Tor Bridge Relay"
-#: plinth/modules/tor/forms.py:113
+#: plinth/modules/tor/forms.py:98
msgid ""
"When enabled, relay information is published in the Tor bridge database "
"instead of public Tor relay database making it harder to censor this node. "
"This helps others circumvent censorship."
msgstr ""
-#: plinth/modules/tor/forms.py:118
+#: plinth/modules/tor/forms.py:103
#, fuzzy
#| msgid "Enable Tor Hidden Service"
msgid "Enable Tor Hidden Service"
msgstr "Aktiver Tor Skjult Tjeneste"
-#: plinth/modules/tor/forms.py:120
+#: plinth/modules/tor/forms.py:105
#, fuzzy, python-brace-format
#| msgid ""
#| "A hidden service will allow {box_name} to provide selected services (such "
@@ -6063,11 +6176,11 @@ msgstr ""
"En skjult tjeneste tillader {box_name} at levere udvalgte tjenester (såsom "
"ownCloud og chat) uden at afsløre sin lokation."
-#: plinth/modules/tor/forms.py:125
+#: plinth/modules/tor/forms.py:110
msgid "Download software packages over Tor"
msgstr "Hent softwarepakker over Tor"
-#: plinth/modules/tor/forms.py:126
+#: plinth/modules/tor/forms.py:111
msgid ""
"When enabled, software will be downloaded over the Tor network for "
"installations and upgrades. This adds a degree of privacy and security "
@@ -6077,37 +6190,37 @@ msgstr ""
"Tor-netværket. Dette giver en vis grad af privatlivsbeskyttelse og sikkerhed "
"under hentningen."
-#: plinth/modules/tor/forms.py:141
+#: plinth/modules/tor/forms.py:126
msgid "Specify at least one upstream bridge to use upstream bridges."
msgstr ""
-#: plinth/modules/tor/manifest.py:29
+#: plinth/modules/tor/manifest.py:14
msgid "Tor Browser"
msgstr ""
-#: plinth/modules/tor/manifest.py:45
+#: plinth/modules/tor/manifest.py:30
msgid "Orbot: Proxy with Tor"
msgstr ""
-#: plinth/modules/tor/templates/tor.html:41
+#: plinth/modules/tor/templates/tor.html:26
msgid "Tor configuration is being updated"
msgstr "Tor-konfiguration opdateres"
-#: plinth/modules/tor/templates/tor.html:50
+#: plinth/modules/tor/templates/tor.html:35
#, fuzzy
#| msgid "Hidden Service"
msgid "Onion Service"
msgstr "Skjult Tjeneste"
-#: plinth/modules/tor/templates/tor.html:52
+#: plinth/modules/tor/templates/tor.html:37
msgid "Ports"
msgstr "Porte"
-#: plinth/modules/tor/templates/tor.html:82
+#: plinth/modules/tor/templates/tor.html:67
msgid "Relay"
msgstr ""
-#: plinth/modules/tor/templates/tor.html:84
+#: plinth/modules/tor/templates/tor.html:69
#, fuzzy, python-format
#| msgid ""
#| "Your %(box_name)s is configured as a Tor bridge with obfsproxy, so it can "
@@ -6123,23 +6236,16 @@ msgstr ""
"router eller firewall, bør du sikre at de følgende porte er åbne, eller "
"viderestillede, hvis nødvendigt:"
-#: plinth/modules/tor/templates/tor.html:112
+#: plinth/modules/tor/templates/tor.html:97
msgid "SOCKS"
msgstr "SOCKS"
-#: plinth/modules/tor/templates/tor.html:115
+#: plinth/modules/tor/templates/tor.html:100
#, python-format
msgid "A Tor SOCKS port is available on your %(box_name)s on TCP port 9050."
msgstr "En Tor SOCKS-port er tilgængelig på din %(box_name)s TCP-port 9050."
-#: plinth/modules/transmission/__init__.py:41
-#: plinth/modules/transmission/manifest.py:24
-#, fuzzy
-#| msgid "Transmission BitTorrent"
-msgid "Transmission"
-msgstr "Transmission BitTorrent"
-
-#: plinth/modules/transmission/__init__.py:48
+#: plinth/modules/transmission/__init__.py:27
msgid ""
"BitTorrent is a peer-to-peer file sharing protocol. Transmission daemon "
"handles Bitorrent file sharing. Note that BitTorrent is not anonymous."
@@ -6148,17 +6254,14 @@ msgstr ""
"Transmission håndterer BitTorrent fildeling. Bemærk at BitTorrent ikke "
"anonymiserer trafik."
-#: plinth/modules/ttrss/__init__.py:43 plinth/modules/ttrss/manifest.py:34
-msgid "Tiny Tiny RSS"
-msgstr ""
-
-#: plinth/modules/ttrss/__init__.py:47
+#: plinth/modules/transmission/__init__.py:48
+#: plinth/modules/transmission/manifest.py:9
#, fuzzy
-#| msgid "News Feed Reader (Tiny Tiny RSS)"
-msgid "News Feed Reader"
-msgstr "Nyhedsstrømlæser (Tiny Tiny RSS)"
+#| msgid "Transmission BitTorrent"
+msgid "Transmission"
+msgstr "Transmission BitTorrent"
-#: plinth/modules/ttrss/__init__.py:50
+#: plinth/modules/ttrss/__init__.py:29
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 "
@@ -6168,7 +6271,7 @@ 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:54
+#: plinth/modules/ttrss/__init__.py:33
#, fuzzy, python-brace-format
#| msgid ""
#| "When enabled, Tiny Tiny RSS will be available from /"
@@ -6180,74 +6283,84 @@ msgstr ""
"Når aktiveret, vil Tiny Tiny RSS være tilgængelige på stien /tt-rss på webserveren."
-#: plinth/modules/ttrss/__init__.py:58
+#: plinth/modules/ttrss/__init__.py:37
msgid ""
"When using a mobile or desktop application for Tiny Tiny RSS, use the URL /tt-rss-app for "
"connecting."
msgstr ""
-#: plinth/modules/ttrss/__init__.py:65
+#: plinth/modules/ttrss/__init__.py:42
msgid "Read and subscribe to news feeds"
msgstr ""
-#: plinth/modules/ttrss/manifest.py:25
+#: plinth/modules/ttrss/__init__.py:56 plinth/modules/ttrss/manifest.py:19
+msgid "Tiny Tiny RSS"
+msgstr ""
+
+#: plinth/modules/ttrss/__init__.py:57
+#, fuzzy
+#| msgid "News Feed Reader (Tiny Tiny RSS)"
+msgid "News Feed Reader"
+msgstr "Nyhedsstrømlæser (Tiny Tiny RSS)"
+
+#: plinth/modules/ttrss/manifest.py:10
msgid "Tiny Tiny RSS (Fork)"
msgstr ""
-#: plinth/modules/upgrades/__init__.py:37 plinth/templates/setup.html:89
-msgid "Update"
-msgstr "Opdater"
-
-#: plinth/modules/upgrades/__init__.py:40
+#: plinth/modules/upgrades/__init__.py:23
msgid "Check for and apply the latest software and security updates."
msgstr ""
-#: plinth/modules/upgrades/__init__.py:84
+#: plinth/modules/upgrades/__init__.py:38 plinth/templates/setup.html:74
+msgid "Update"
+msgstr "Opdater"
+
+#: plinth/modules/upgrades/__init__.py:71
#, fuzzy
#| msgid "FreedomBox Manual"
msgid "FreedomBox Updated"
msgstr "FreedomBox Brugervejledning"
-#: plinth/modules/upgrades/forms.py:28
+#: plinth/modules/upgrades/forms.py:13
#, fuzzy
#| msgid "Enable automatic upgrades"
msgid "Enable auto-update"
msgstr "Aktiver automatiske opdateringer"
-#: plinth/modules/upgrades/forms.py:29
+#: plinth/modules/upgrades/forms.py:14
msgid "When enabled, FreedomBox automatically updates once a day."
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades-new-release.html:24
+#: plinth/modules/upgrades/templates/upgrades-new-release.html:9
#, fuzzy, python-format
#| msgid "%(box_name)s Setup"
msgid "%(box_name)s Updated"
msgstr "%(box_name)s Konfiguration"
-#: plinth/modules/upgrades/templates/upgrades-new-release.html:28
+#: plinth/modules/upgrades/templates/upgrades-new-release.html:13
#, python-format
msgid ""
"%(box_name)s has been updated to version %(version)s. See the release announcement."
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades-new-release.html:37
-#: plinth/templates/notifications.html:59
+#: plinth/modules/upgrades/templates/upgrades-new-release.html:22
+#: plinth/templates/notifications.html:44
msgid "Dismiss"
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades.html:45
+#: plinth/modules/upgrades/templates/upgrades.html:30
#, fuzzy
#| msgid "Update"
msgid "Update now"
msgstr "Opdater"
-#: plinth/modules/upgrades/templates/upgrades.html:54
+#: plinth/modules/upgrades/templates/upgrades.html:39
msgid "Updating..."
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades.html:59
+#: plinth/modules/upgrades/templates/upgrades.html:44
#, fuzzy
#| msgid ""
#| "Depending on the number of packages to install, this may take a long time "
@@ -6265,56 +6378,52 @@ msgstr ""
"blive midlertidigt utilgængeligt og vise en fejl. Genindlæs siden for at "
"fortsætte."
-#: plinth/modules/upgrades/templates/upgrades.html:73
+#: plinth/modules/upgrades/templates/upgrades.html:58
msgid "Toggle recent update logs"
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades_configure.html:26
-#: plinth/modules/upgrades/templates/upgrades_configure.html:27
-#: plinth/modules/upgrades/views.py:107
+#: plinth/modules/upgrades/templates/upgrades_configure.html:11
+#: plinth/modules/upgrades/templates/upgrades_configure.html:12
+#: plinth/modules/upgrades/views.py:89
#, fuzzy
#| msgid "Last update"
msgid "Manual update"
msgstr "Seneste opdatering"
-#: plinth/modules/upgrades/views.py:66
+#: plinth/modules/upgrades/views.py:48
#, python-brace-format
msgid "Error when configuring unattended-upgrades: {error}"
msgstr ""
"Kunne ikke konfigurere automatisk opdatering (unattended-upgrades): {error}"
-#: plinth/modules/upgrades/views.py:70
+#: plinth/modules/upgrades/views.py:52
msgid "Automatic upgrades enabled"
msgstr "Automatisk opdatering aktiveret"
-#: plinth/modules/upgrades/views.py:73
+#: plinth/modules/upgrades/views.py:55
msgid "Automatic upgrades disabled"
msgstr "Automatisk opdatering deaktiveret"
-#: plinth/modules/upgrades/views.py:75
+#: plinth/modules/upgrades/views.py:57
msgid "Settings unchanged"
msgstr "Indstillinger uændret"
-#: plinth/modules/upgrades/views.py:101
+#: plinth/modules/upgrades/views.py:83
msgid "Upgrade process started."
msgstr "Opdateringsprocessen er startet."
-#: plinth/modules/upgrades/views.py:104
+#: plinth/modules/upgrades/views.py:86
msgid "Starting upgrade failed."
msgstr "Kunne ikke starte opdatering."
-#: plinth/modules/users/__init__.py:51
-msgid "Users and Groups"
-msgstr "Brugere og Grupper"
-
-#: plinth/modules/users/__init__.py:54
+#: plinth/modules/users/__init__.py:37
msgid ""
"Create and managed user accounts. These accounts serve as centralized "
"authentication mechanism for most apps. Some apps further require a user "
"account to be part of a group to authorize the user to access the app."
msgstr ""
-#: plinth/modules/users/__init__.py:59
+#: plinth/modules/users/__init__.py:42
#, python-brace-format
msgid ""
"Any user may login to {box_name} web interface to see a list of apps "
@@ -6322,37 +6431,41 @@ msgid ""
"group may alter apps or system settings."
msgstr ""
-#: plinth/modules/users/__init__.py:128
+#: plinth/modules/users/__init__.py:64
+msgid "Users and Groups"
+msgstr "Brugere og Grupper"
+
+#: plinth/modules/users/__init__.py:115
#, python-brace-format
msgid "Check LDAP entry \"{search_item}\""
msgstr "Kontrol af LDAP-konfiguration \"{search_item}\""
-#: plinth/modules/users/forms.py:43
+#: plinth/modules/users/forms.py:28
msgid "Access to all services and system settings"
msgstr ""
-#: plinth/modules/users/forms.py:59
+#: plinth/modules/users/forms.py:44
msgid "Username is taken or is reserved."
msgstr ""
-#: plinth/modules/users/forms.py:87
+#: plinth/modules/users/forms.py:72
#, fuzzy
#| msgid "Invalid server name"
msgid "Enter a valid username."
msgstr "Ugyldigt servernavn"
-#: plinth/modules/users/forms.py:93
+#: plinth/modules/users/forms.py:78
msgid ""
"Required. 150 characters or fewer. English letters, digits and @/./-/_ only."
msgstr ""
-#: plinth/modules/users/forms.py:106 plinth/modules/users/forms.py:222
+#: plinth/modules/users/forms.py:91 plinth/modules/users/forms.py:207
#, fuzzy
#| msgid "Transmission BitTorrent"
msgid "Permissions"
msgstr "Transmission BitTorrent"
-#: plinth/modules/users/forms.py:109
+#: plinth/modules/users/forms.py:94
msgid ""
"Select which services should be available to the new user. The user will be "
"able to log in to services that support single sign-on through LDAP, if they "
@@ -6367,20 +6480,20 @@ msgstr ""
"tjenester. De kan også logge ind på systemet gennem SSH og har "
"administratorprivilegier (sudo)."
-#: plinth/modules/users/forms.py:148 plinth/modules/users/forms.py:372
+#: plinth/modules/users/forms.py:133 plinth/modules/users/forms.py:357
msgid "Creating LDAP user failed."
msgstr "Kunne ikke oprette LDAP-bruger."
-#: plinth/modules/users/forms.py:159
+#: plinth/modules/users/forms.py:144
#, python-brace-format
msgid "Failed to add new user to {group} group."
msgstr "Kunne ikke tilføje ny bruger til gruppen {group}."
-#: plinth/modules/users/forms.py:173
+#: plinth/modules/users/forms.py:158
msgid "Authorized SSH Keys"
msgstr ""
-#: plinth/modules/users/forms.py:175
+#: plinth/modules/users/forms.py:160
msgid ""
"Setting an SSH public key will allow this user to securely log in to the "
"system without using a password. You may enter multiple keys, one on each "
@@ -6390,84 +6503,84 @@ msgstr ""
"sikkert ind på systemet uden et kodeord. Der kan defineres flere nøgler, en "
"på hver linje. Tomme linjer og linjer som starter med # bliver ignoreret."
-#: plinth/modules/users/forms.py:259
+#: plinth/modules/users/forms.py:244
msgid "Renaming LDAP user failed."
msgstr "Kunne ikke omdøbe LDAP-bruger."
-#: plinth/modules/users/forms.py:271
+#: plinth/modules/users/forms.py:256
msgid "Failed to remove user from group."
msgstr "Kunne ikke fjerne bruger fra gruppe."
-#: plinth/modules/users/forms.py:282
+#: plinth/modules/users/forms.py:267
msgid "Failed to add user to group."
msgstr "Kunne ikke tilføje bruger til gruppe."
-#: plinth/modules/users/forms.py:291
+#: plinth/modules/users/forms.py:276
msgid "Unable to set SSH keys."
msgstr ""
-#: plinth/modules/users/forms.py:306
+#: plinth/modules/users/forms.py:291
#, fuzzy
#| msgid "Failed to add user to group."
msgid "Failed to change user status."
msgstr "Kunne ikke tilføje bruger til gruppe."
-#: plinth/modules/users/forms.py:314
+#: plinth/modules/users/forms.py:299
msgid "Cannot delete the only administrator in the system."
msgstr ""
-#: plinth/modules/users/forms.py:346
+#: plinth/modules/users/forms.py:331
msgid "Changing LDAP user password failed."
msgstr "Kunne ikke ændre LDAP-kodeord."
-#: plinth/modules/users/forms.py:381
+#: plinth/modules/users/forms.py:366
msgid "Failed to add new user to admin group."
msgstr "Kunne ikke tilføje ny bruger til admin-gruppen."
-#: plinth/modules/users/forms.py:398
+#: plinth/modules/users/forms.py:383
msgid "Failed to restrict console access."
msgstr ""
-#: plinth/modules/users/forms.py:410
+#: plinth/modules/users/forms.py:395
msgid "User account created, you are now logged in"
msgstr "Brugerkonto oprettet, du er nu logget ind"
-#: plinth/modules/users/templates/users_change_password.html:26
+#: plinth/modules/users/templates/users_change_password.html:11
#, python-format
msgid "Change Password for %(username)s"
msgstr "Ændr Kodeord for %(username)s"
-#: plinth/modules/users/templates/users_change_password.html:36
+#: plinth/modules/users/templates/users_change_password.html:21
msgid "Save Password"
msgstr "Gem Kodeord"
-#: plinth/modules/users/templates/users_create.html:32
-#: plinth/modules/users/templates/users_list.html:42
-#: plinth/modules/users/templates/users_list.html:44
-#: plinth/modules/users/views.py:57
+#: plinth/modules/users/templates/users_create.html:17
+#: plinth/modules/users/templates/users_list.html:27
+#: plinth/modules/users/templates/users_list.html:29
+#: plinth/modules/users/views.py:42
msgid "Create User"
msgstr "Opret Bruger"
-#: plinth/modules/users/templates/users_delete.html:26
-#: plinth/modules/users/views.py:139
+#: plinth/modules/users/templates/users_delete.html:11
+#: plinth/modules/users/views.py:121
msgid "Delete User"
msgstr "Slet Bruger"
-#: plinth/modules/users/templates/users_delete.html:29
+#: plinth/modules/users/templates/users_delete.html:14
#, python-format
msgid "Delete user %(username)s permanently?"
msgstr "Slet bruger %(username)s permanent?"
-#: plinth/modules/users/templates/users_delete.html:38
+#: plinth/modules/users/templates/users_delete.html:23
#, python-format
msgid "Delete %(username)s"
msgstr "Slet %(username)s"
-#: plinth/modules/users/templates/users_firstboot.html:26
+#: plinth/modules/users/templates/users_firstboot.html:11
msgid "Administrator Account"
msgstr "Administratorkonto"
-#: plinth/modules/users/templates/users_firstboot.html:29
+#: plinth/modules/users/templates/users_firstboot.html:14
msgid ""
"Choose a username and password to access this web interface. The password "
"can be changed later. This user will be granted administrative privileges. "
@@ -6477,28 +6590,28 @@ msgstr ""
"Kodeordet kan ændres senere. Brugeren vil få tildelt "
"administratorrettigheder. Andre brugere kan tilføjes senere."
-#: plinth/modules/users/templates/users_firstboot.html:42
+#: plinth/modules/users/templates/users_firstboot.html:27
#, fuzzy
#| msgid "PageKite Account"
msgid "Create Account"
msgstr "PageKite-konto"
-#: plinth/modules/users/templates/users_list.html:38
-#: plinth/modules/users/views.py:74
+#: plinth/modules/users/templates/users_list.html:23
+#: plinth/modules/users/views.py:59
msgid "Users"
msgstr "Brugere"
-#: plinth/modules/users/templates/users_list.html:57
+#: plinth/modules/users/templates/users_list.html:42
#, python-format
msgid "Delete user %(username)s"
msgstr "Slet bruger %(username)s"
-#: plinth/modules/users/templates/users_list.html:65
+#: plinth/modules/users/templates/users_list.html:50
#, python-format
msgid "Edit user %(username)s"
msgstr "Rediger Bruger %(username)s"
-#: plinth/modules/users/templates/users_update.html:30
+#: plinth/modules/users/templates/users_update.html:15
#, python-format
msgid ""
"Use the change password form to "
@@ -6507,59 +6620,54 @@ msgstr ""
"Brug siden til kodeordsændring for at "
"ændre kodeord."
-#: plinth/modules/users/templates/users_update.html:42
-#: plinth/templates/language-selection.html:32
+#: plinth/modules/users/templates/users_update.html:27
+#: plinth/templates/language-selection.html:17
msgid "Save Changes"
msgstr "Gem Ændringer"
-#: plinth/modules/users/views.py:55
+#: plinth/modules/users/views.py:40
#, python-format
msgid "User %(username)s created."
msgstr "Bruger %(username)s oprettet."
-#: plinth/modules/users/views.py:93
+#: plinth/modules/users/views.py:75
#, python-format
msgid "User %(username)s updated."
msgstr "Bruger %(username)s opdateret."
-#: plinth/modules/users/views.py:94
+#: plinth/modules/users/views.py:76
msgid "Edit User"
msgstr "Rediger Bruger"
-#: plinth/modules/users/views.py:149
+#: plinth/modules/users/views.py:131
#, python-brace-format
msgid "User {user} deleted."
msgstr "Brugeren {user} slettet."
-#: plinth/modules/users/views.py:156
+#: plinth/modules/users/views.py:138
msgid "Deleting LDAP user failed."
msgstr "Kunne ikke slette LDAP-bruger."
-#: plinth/modules/users/views.py:165
+#: plinth/modules/users/views.py:147
msgid "Change Password"
msgstr "Ændr kodeord"
-#: plinth/modules/users/views.py:166
+#: plinth/modules/users/views.py:148
msgid "Password changed successfully."
msgstr "Kodeord blev ændret."
-#: plinth/modules/wireguard/__init__.py:38
-#: plinth/modules/wireguard/manifest.py:29
-msgid "WireGuard"
-msgstr ""
-
-#: plinth/modules/wireguard/__init__.py:43
+#: plinth/modules/wireguard/__init__.py:24
msgid "WireGuard is a fast, modern, secure VPN tunnel."
msgstr ""
-#: plinth/modules/wireguard/__init__.py:45
+#: plinth/modules/wireguard/__init__.py:26
#, python-brace-format
msgid ""
"It can be used to connect to a VPN provider which supports WireGuard, and to "
"route all outgoing traffic from {box_name} through the VPN."
msgstr ""
-#: plinth/modules/wireguard/__init__.py:49
+#: plinth/modules/wireguard/__init__.py:30
#, python-brace-format
msgid ""
"A second use case is to connect a mobile device to {box_name} while "
@@ -6567,65 +6675,70 @@ msgid ""
"securely relayed through {box_name}."
msgstr ""
-#: plinth/modules/wireguard/forms.py:47
+#: plinth/modules/wireguard/__init__.py:52
+#: plinth/modules/wireguard/manifest.py:14
+msgid "WireGuard"
+msgstr ""
+
+#: plinth/modules/wireguard/forms.py:32
#, fuzzy
#| msgid "Invalid kite name"
msgid "Invalid key."
msgstr "Ugyldigt kite-name"
-#: plinth/modules/wireguard/forms.py:76
-#: plinth/modules/wireguard/templates/wireguard.html:32
-#: plinth/modules/wireguard/templates/wireguard.html:89
-#: plinth/modules/wireguard/templates/wireguard_delete_server.html:38
+#: plinth/modules/wireguard/forms.py:61
+#: plinth/modules/wireguard/templates/wireguard.html:17
+#: plinth/modules/wireguard/templates/wireguard.html:74
+#: plinth/modules/wireguard/templates/wireguard_delete_server.html:23
#, fuzzy
#| msgid "Publish Key"
msgid "Public Key"
msgstr "Distribuer Nøgle"
-#: plinth/modules/wireguard/forms.py:77
+#: plinth/modules/wireguard/forms.py:62
msgid ""
"Public key of the peer. Example: "
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs= ."
msgstr ""
-#: plinth/modules/wireguard/forms.py:85
+#: plinth/modules/wireguard/forms.py:70
msgid "Endpoint of the server"
msgstr ""
-#: plinth/modules/wireguard/forms.py:86
+#: plinth/modules/wireguard/forms.py:71
msgid ""
"Domain name and port in the form \"ip:port\". Example: demo.wireguard."
"com:12912 ."
msgstr ""
-#: plinth/modules/wireguard/forms.py:91
+#: plinth/modules/wireguard/forms.py:76
#, fuzzy
#| msgid "Published key to keyserver."
msgid "Public key of the server"
msgstr "Nøgle distribueret til nøgleserver."
-#: plinth/modules/wireguard/forms.py:92
+#: plinth/modules/wireguard/forms.py:77
msgid ""
"Provided by the server operator, a long string of characters. Example: "
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs= ."
msgstr ""
-#: plinth/modules/wireguard/forms.py:97
+#: plinth/modules/wireguard/forms.py:82
msgid "Client IP address provided by server"
msgstr ""
-#: plinth/modules/wireguard/forms.py:98
+#: plinth/modules/wireguard/forms.py:83
msgid ""
"IP address assigned to this machine on the VPN after connecting to the "
"endpoint. This value is usually provided by the server operator. Example: "
"192.168.0.10."
msgstr ""
-#: plinth/modules/wireguard/forms.py:104
+#: plinth/modules/wireguard/forms.py:89
msgid "Private key of this machine"
msgstr ""
-#: plinth/modules/wireguard/forms.py:105
+#: plinth/modules/wireguard/forms.py:90
msgid ""
"Optional. New public/private keys are generated if left blank. Public key "
"can then be provided to the server. This is the recommended way. However, "
@@ -6633,175 +6746,175 @@ msgid ""
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs= ."
msgstr ""
-#: plinth/modules/wireguard/forms.py:113
+#: plinth/modules/wireguard/forms.py:98
msgid "Pre-shared key"
msgstr ""
-#: plinth/modules/wireguard/forms.py:114
+#: plinth/modules/wireguard/forms.py:99
msgid ""
"Optional. A shared secret key provided by the server to add an additional "
"layer of security. Fill in only if provided. Example: "
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs=."
msgstr ""
-#: plinth/modules/wireguard/forms.py:120
+#: plinth/modules/wireguard/forms.py:105
msgid "Use this connection to send all outgoing traffic"
msgstr ""
-#: plinth/modules/wireguard/forms.py:122
+#: plinth/modules/wireguard/forms.py:107
msgid "Typically checked for a VPN service though which all traffic is sent."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:25
+#: plinth/modules/wireguard/templates/wireguard.html:10
#, fuzzy
#| msgid "Web Server"
msgid "As a Server"
msgstr "Webserver"
-#: plinth/modules/wireguard/templates/wireguard.html:27
+#: plinth/modules/wireguard/templates/wireguard.html:12
msgid "Peers allowed to connect to this server:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:33
+#: plinth/modules/wireguard/templates/wireguard.html:18
msgid "Allowed IPs"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:34
-#: plinth/modules/wireguard/templates/wireguard.html:90
+#: plinth/modules/wireguard/templates/wireguard.html:19
+#: plinth/modules/wireguard/templates/wireguard.html:75
#, fuzzy
#| msgid "Create Connection"
msgid "Last Connected Time"
msgstr "Opret Forbindelse"
-#: plinth/modules/wireguard/templates/wireguard.html:53
+#: plinth/modules/wireguard/templates/wireguard.html:38
#, python-format
msgid "No peers configured to connect to this %(box_name)s yet."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:62
+#: plinth/modules/wireguard/templates/wireguard.html:47
#, python-format
msgid "Public key for this %(box_name)s:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:68
+#: plinth/modules/wireguard/templates/wireguard.html:53
msgid "Not configured yet."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:72
+#: plinth/modules/wireguard/templates/wireguard.html:57
msgid "Add a new peer"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:76
-#: plinth/modules/wireguard/views.py:69
+#: plinth/modules/wireguard/templates/wireguard.html:61
+#: plinth/modules/wireguard/views.py:51
msgid "Add Allowed Client"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:79
+#: plinth/modules/wireguard/templates/wireguard.html:64
#, fuzzy
#| msgid "IRC Client (Quassel)"
msgid "As a Client"
msgstr "IRC-klient (Quassel)"
-#: plinth/modules/wireguard/templates/wireguard.html:81
+#: plinth/modules/wireguard/templates/wireguard.html:66
#, python-format
msgid "Servers that %(box_name)s will connect to:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:88
-#: plinth/modules/wireguard/templates/wireguard_delete_server.html:34
+#: plinth/modules/wireguard/templates/wireguard.html:73
+#: plinth/modules/wireguard/templates/wireguard_delete_server.html:19
msgid "Endpoint"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:111
+#: plinth/modules/wireguard/templates/wireguard.html:96
msgid "No connections to remote servers are configured yet."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:119
+#: plinth/modules/wireguard/templates/wireguard.html:104
msgid "Add a new server"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:123
-#: plinth/modules/wireguard/views.py:178
+#: plinth/modules/wireguard/templates/wireguard.html:108
+#: plinth/modules/wireguard/views.py:160
#, fuzzy
#| msgid "Add Connection"
msgid "Add Connection to Server"
msgstr "Tilføj forbindelse"
-#: plinth/modules/wireguard/templates/wireguard_add_client.html:34
+#: plinth/modules/wireguard/templates/wireguard_add_client.html:19
#, fuzzy
#| msgid "Quassel IRC Client"
msgid "Add Client"
msgstr "Quassel IRC-klient"
-#: plinth/modules/wireguard/templates/wireguard_delete_client.html:29
+#: plinth/modules/wireguard/templates/wireguard_delete_client.html:14
msgid "Are you sure that you want to delete this client?"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_delete_server.html:29
+#: plinth/modules/wireguard/templates/wireguard_delete_server.html:14
msgid "Are you sure that you want to delete this server?"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_edit_client.html:34
+#: plinth/modules/wireguard/templates/wireguard_edit_client.html:19
#, fuzzy
#| msgid "IRC Client (Quassel)"
msgid "Update Client"
msgstr "IRC-klient (Quassel)"
-#: plinth/modules/wireguard/templates/wireguard_edit_server.html:34
+#: plinth/modules/wireguard/templates/wireguard_edit_server.html:19
#, fuzzy
#| msgid "Create Connection"
msgid "Update Connection"
msgstr "Opret Forbindelse"
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:27
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:12
#, python-format
msgid ""
"%(box_name)s will allow this client to connect to it. Ensure that the client "
"is configured with the following information."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:35
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:20
msgid "Client public key:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:39
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:24
msgid "IP address to use for client:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:43
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:46
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:28
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:31
msgid "Pre-shared key:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:47
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:32
#, fuzzy
#| msgid "Server domain"
msgid "Server endpoints:"
msgstr "Serverdomæne"
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:55
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:42
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:40
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:27
#, fuzzy
#| msgid "Server port"
msgid "Server public key:"
msgstr "Serverport"
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:65
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:64
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:50
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:49
msgid "Data transmitted:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:69
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:68
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:54
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:53
msgid "Data received:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:73
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:72
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:58
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:57
msgid "Latest handshake:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:29
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:14
#, python-format
msgid ""
"%(box_name)s will attempt to reach a WireGuard server with the following "
@@ -6809,150 +6922,150 @@ msgid ""
"public key and IP address."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:38
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:23
#, fuzzy
#| msgid "Server domain"
msgid "Server endpoint:"
msgstr "Serverdomæne"
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:50
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:35
msgid "Public key of this machine:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:54
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:39
msgid "IP address of this machine:"
msgstr ""
-#: plinth/modules/wireguard/views.py:64
+#: plinth/modules/wireguard/views.py:46
msgid "Added new client."
msgstr ""
-#: plinth/modules/wireguard/views.py:79 plinth/modules/wireguard/views.py:138
+#: plinth/modules/wireguard/views.py:61 plinth/modules/wireguard/views.py:120
#, fuzzy
#| msgid "This service already exists"
msgid "Client with public key already exists"
msgstr "Denne tjeneste eksisterer allerede"
-#: plinth/modules/wireguard/views.py:92
+#: plinth/modules/wireguard/views.py:74
#, fuzzy
#| msgid "Email Client (Roundcube)"
msgid "Allowed Client"
msgstr "Emailklient (Roundcube)"
-#: plinth/modules/wireguard/views.py:114
+#: plinth/modules/wireguard/views.py:96
#, fuzzy
#| msgid "Update setup"
msgid "Updated client."
msgstr "Opdater indstillinger"
-#: plinth/modules/wireguard/views.py:119
+#: plinth/modules/wireguard/views.py:101
#, fuzzy
#| msgid "Email Client (Roundcube)"
msgid "Modify Client"
msgstr "Emailklient (Roundcube)"
-#: plinth/modules/wireguard/views.py:152
+#: plinth/modules/wireguard/views.py:134
#, fuzzy
#| msgid "Delete"
msgid "Delete Allowed Client"
msgstr "Slet"
-#: plinth/modules/wireguard/views.py:161
+#: plinth/modules/wireguard/views.py:143
#, fuzzy
#| msgid "{name} deleted."
msgid "Client deleted."
msgstr "{name} slettet."
-#: plinth/modules/wireguard/views.py:163
+#: plinth/modules/wireguard/views.py:145
#, fuzzy
#| msgid "packages not found"
msgid "Client not found"
msgstr "pakker ikke fundet"
-#: plinth/modules/wireguard/views.py:173
+#: plinth/modules/wireguard/views.py:155
#, fuzzy
#| msgid "Added custom service"
msgid "Added new server."
msgstr "Tilføjet brugerdefineret tjeneste"
-#: plinth/modules/wireguard/views.py:194
+#: plinth/modules/wireguard/views.py:176
#, fuzzy
#| msgid "Connection Type"
msgid "Connection to Server"
msgstr "Forbindelsestype"
-#: plinth/modules/wireguard/views.py:212
+#: plinth/modules/wireguard/views.py:194
#, fuzzy
#| msgid "Update setup"
msgid "Updated server."
msgstr "Opdater indstillinger"
-#: plinth/modules/wireguard/views.py:217
+#: plinth/modules/wireguard/views.py:199
#, fuzzy
#| msgid "Edit Connection"
msgid "Modify Connection to Server"
msgstr "Rediger Forbindelse"
-#: plinth/modules/wireguard/views.py:254
+#: plinth/modules/wireguard/views.py:236
#, fuzzy
#| msgid "Delete Connection"
msgid "Delete Connection to Server"
msgstr "Slet Forbindelse"
-#: plinth/modules/wireguard/views.py:274
+#: plinth/modules/wireguard/views.py:256
#, fuzzy
#| msgid "{name} deleted."
msgid "Server deleted."
msgstr "{name} slettet."
-#: plinth/network.py:42
+#: plinth/network.py:27
msgid "PPPoE"
msgstr "PPPoE"
-#: plinth/network.py:43
+#: plinth/network.py:28
msgid "Generic"
msgstr ""
-#: plinth/package.py:137
+#: plinth/package.py:122
msgid "Error during installation"
msgstr "Fejl under installation"
-#: plinth/package.py:159
+#: plinth/package.py:144
msgid "installing"
msgstr "Installerer"
-#: plinth/package.py:161
+#: plinth/package.py:146
msgid "downloading"
msgstr "downloader"
-#: plinth/package.py:163
+#: plinth/package.py:148
msgid "media change"
msgstr "medie-ændring"
-#: plinth/package.py:165
+#: plinth/package.py:150
#, python-brace-format
msgid "configuration file: {file}"
msgstr "konfigurationsfil: {file}"
-#: plinth/templates/403.html:25
+#: plinth/templates/403.html:10
msgid "403 Forbidden"
msgstr ""
-#: plinth/templates/403.html:29
+#: plinth/templates/403.html:14
#, python-format
msgid "You don't have permission to access %(request_path)s on this server."
msgstr ""
-#: plinth/templates/404.html:25
+#: plinth/templates/404.html:10
msgid "404"
msgstr "404"
-#: plinth/templates/404.html:28
+#: plinth/templates/404.html:13
#, python-format
msgid "Requested page %(request_path)s was not found."
msgstr "Den forespurgte side %(request_path)s blev ikke fundet."
-#: plinth/templates/404.html:34
+#: plinth/templates/404.html:19
#, fuzzy
#| msgid ""
#| "If you believe this missing page should exist, please file a bug at the "
@@ -6967,11 +7080,11 @@ msgstr ""
"som en fejl i Plinth-projektets fejlhåndteringsværktøj."
-#: plinth/templates/500.html:25
+#: plinth/templates/500.html:10
msgid "500"
msgstr "500"
-#: plinth/templates/500.html:29
+#: plinth/templates/500.html:14
#, fuzzy, python-format
#| msgid ""
#| "This is an internal error and not something you caused or can fix. "
@@ -6987,154 +7100,154 @@ msgstr ""
"Rapporter venligst fejlen i fejlhåndteringsvørktøjet så vi kan rette den."
-#: plinth/templates/app.html:47
+#: plinth/templates/app-header.html:22
+msgid "Installation"
+msgstr "Installation"
+
+#: plinth/templates/app.html:32
#, fuzzy, python-format
#| msgid "Service discovery server is running"
msgid "Service %(service_name)s is running."
msgstr "Tjenestesøgningstjenesten er aktiv"
-#: plinth/templates/app.html:52
+#: plinth/templates/app.html:37
#, fuzzy, python-format
#| msgid "Service discovery server is not running"
msgid "Service %(service_name)s is not running."
msgstr "Tjenestesøgningstjenesten er ikke aktiv"
-#: plinth/templates/base.html:50
+#: plinth/templates/base.html:35
#, fuzzy, python-format
#| msgid "Plinth administrative interface for the %(box_name)s"
msgid "Core functionality and web interface for %(box_name)s"
msgstr "Plinth administrationsværktøj til %(box_name)s"
-#: plinth/templates/base.html:96
+#: plinth/templates/base.html:81
msgid "Toggle navigation"
msgstr "Åbn/luk navigation"
-#: plinth/templates/base.html:120 plinth/templates/base.html:123
+#: plinth/templates/base.html:105 plinth/templates/base.html:108
msgid "Home"
msgstr ""
-#: plinth/templates/base.html:128 plinth/templates/base.html:132
+#: plinth/templates/base.html:113 plinth/templates/base.html:117
msgid "Apps"
msgstr "Apps"
-#: plinth/templates/base.html:137 plinth/templates/base.html:141
+#: plinth/templates/base.html:122 plinth/templates/base.html:126
msgid "System"
msgstr "System"
-#: plinth/templates/base.html:173 plinth/templates/base.html:174
+#: plinth/templates/base.html:158 plinth/templates/base.html:159
msgid "Change password"
msgstr "Ændr kodeord"
-#: plinth/templates/base.html:181 plinth/templates/base.html:182
+#: plinth/templates/base.html:166 plinth/templates/base.html:167
#, fuzzy
#| msgid "Restart Now"
msgid "Restart"
msgstr "Genstart Nu"
-#: plinth/templates/base.html:187 plinth/templates/base.html:188
+#: plinth/templates/base.html:172 plinth/templates/base.html:173
#, fuzzy
#| msgid "Shut Down Now"
msgid "Shut down"
msgstr "Sluk Nu"
-#: plinth/templates/base.html:195 plinth/templates/base.html:196
-#: plinth/templates/base.html:220 plinth/templates/base.html:222
+#: plinth/templates/base.html:180 plinth/templates/base.html:181
+#: plinth/templates/base.html:205 plinth/templates/base.html:207
msgid "Log out"
msgstr "Log ud"
-#: plinth/templates/base.html:204 plinth/templates/base.html:207
+#: plinth/templates/base.html:189 plinth/templates/base.html:192
#, fuzzy
#| msgid "Language"
msgid "Select language"
msgstr "Sprog"
-#: plinth/templates/base.html:212 plinth/templates/base.html:214
+#: plinth/templates/base.html:197 plinth/templates/base.html:199
msgid "Log in"
msgstr "Log ind"
-#: plinth/templates/clients.html:32
+#: plinth/templates/clients.html:17
msgid "Web"
msgstr ""
-#: plinth/templates/clients.html:57
+#: plinth/templates/clients.html:42
#, fuzzy
#| msgid "IRC Client (Quassel)"
msgid "Desktop"
msgstr "IRC-klient (Quassel)"
-#: plinth/templates/clients.html:68
+#: plinth/templates/clients.html:53
msgid "GNU/Linux"
msgstr ""
-#: plinth/templates/clients.html:70
+#: plinth/templates/clients.html:55
msgid "Windows"
msgstr ""
-#: plinth/templates/clients.html:72
+#: plinth/templates/clients.html:57
msgid "macOS"
msgstr ""
-#: plinth/templates/clients.html:88
+#: plinth/templates/clients.html:73
#, fuzzy
#| msgid "Email Client (Roundcube)"
msgid "Mobile"
msgstr "Emailklient (Roundcube)"
-#: plinth/templates/clients.html:99
+#: plinth/templates/clients.html:84
msgid "Play Store"
msgstr ""
-#: plinth/templates/clients.html:101
+#: plinth/templates/clients.html:86
msgid "F-Droid"
msgstr ""
-#: plinth/templates/clients.html:103
+#: plinth/templates/clients.html:88
#, fuzzy
#| msgid "reStore"
msgid "App Store"
msgstr "reStore"
-#: plinth/templates/clients.html:119
+#: plinth/templates/clients.html:104
msgid "Package"
msgstr "Pakkenavn"
-#: plinth/templates/clients.html:126
+#: plinth/templates/clients.html:111
msgid "Debian:"
msgstr ""
-#: plinth/templates/clients.html:129
+#: plinth/templates/clients.html:114
msgid "Homebrew:"
msgstr ""
-#: plinth/templates/clients.html:132
+#: plinth/templates/clients.html:117
msgid "RPM:"
msgstr ""
-#: plinth/templates/first_setup.html:39
+#: plinth/templates/first_setup.html:24
#, python-format
msgid ""
"Please wait for %(box_name)s to finish installation. You can start using "
"your %(box_name)s once it is done."
msgstr ""
-#: plinth/templates/header.html:36
-msgid "Installation"
-msgstr "Installation"
-
-#: plinth/templates/index.html:37
+#: plinth/templates/index.html:22
#, python-format
msgid ""
"Enable some applications to add shortcuts to "
"this page."
msgstr ""
-#: plinth/templates/index.html:59
+#: plinth/templates/index.html:44
#, fuzzy
#| msgid "Configure"
msgid "Configure »"
msgstr "Konfigurer"
-#: plinth/templates/index.html:115
+#: plinth/templates/index.html:100
#, python-format
msgid ""
"%(box_name)s, a Debian pure blend, is a 100%% free software self-hosting web "
@@ -7142,7 +7255,7 @@ msgid ""
"communication tools respecting your privacy and data ownership."
msgstr ""
-#: plinth/templates/index.html:124
+#: plinth/templates/index.html:109
#, python-format
msgid ""
"This portal is a part of the %(box_name)s web interface. %(box_name)s is "
@@ -7150,62 +7263,62 @@ msgid ""
"Version 3 or later."
msgstr ""
-#: plinth/templates/index.html:144
+#: plinth/templates/index.html:129
msgid "Homepage"
msgstr ""
-#: plinth/templates/index.html:147
+#: plinth/templates/index.html:132
msgid "Source Code"
msgstr ""
-#: plinth/templates/index.html:150
+#: plinth/templates/index.html:135
msgid "Donate"
msgstr ""
-#: plinth/templates/index.html:154
+#: plinth/templates/index.html:139
#, fuzzy
#| msgid "FreedomBox Manual"
msgid "FreedomBox Foundation"
msgstr "FreedomBox Brugervejledning"
-#: plinth/templates/index.html:161
+#: plinth/templates/index.html:146
msgid "IRC Chatroom"
msgstr ""
-#: plinth/templates/index.html:166
+#: plinth/templates/index.html:151
msgid "Mailing list"
msgstr ""
-#: plinth/templates/internal-zone.html:26
+#: plinth/templates/internal-zone.html:11
#, fuzzy, python-format
#| msgid "Service discovery server is not running"
msgid "%(service_name)s is available only on internal networks."
msgstr "Tjenestesøgningstjenesten er ikke aktiv"
-#: plinth/templates/internal-zone.html:32
+#: plinth/templates/internal-zone.html:17
msgid "Currently there are no network interfaces configured as internal."
msgstr ""
-#: plinth/templates/internal-zone.html:34
+#: plinth/templates/internal-zone.html:19
#, python-format
msgid ""
"Currently the following network interfaces are configured as internal: "
"%(interface_list)s"
msgstr ""
-#: plinth/templates/notifications-dropdown.html:26
+#: plinth/templates/notifications-dropdown.html:11
#, fuzzy
#| msgid "No certficate"
msgid "Notifications"
msgstr "Intet certifikat"
-#: plinth/templates/port-forwarding-info.html:23
+#: plinth/templates/port-forwarding-info.html:8
#, fuzzy
#| msgid "Enable Tor"
msgid "Port Forwarding"
msgstr "Aktiver Tor"
-#: plinth/templates/port-forwarding-info.html:26
+#: plinth/templates/port-forwarding-info.html:11
#, python-format
msgid ""
"If your FreedomBox is behind a router, you will need to set up port "
@@ -7213,65 +7326,65 @@ msgid ""
"%(service_name)s:"
msgstr ""
-#: plinth/templates/setup.html:51
+#: plinth/templates/setup.html:36
msgid "Install this application?"
msgstr "Installer denne applikation?"
-#: plinth/templates/setup.html:55
+#: plinth/templates/setup.html:40
msgid "This application needs an update. Update now?"
msgstr "Denne applikation har brug for en opdatering. Opdater nu?"
-#: plinth/templates/setup.html:66
+#: plinth/templates/setup.html:51
msgid ""
"Another installation or upgrade is already running. Please wait for a few "
"moments before trying again."
msgstr ""
-#: plinth/templates/setup.html:73
+#: plinth/templates/setup.html:58
msgid "This application is currently not available in your distribution."
msgstr ""
-#: plinth/templates/setup.html:87
+#: plinth/templates/setup.html:72
msgid "Install"
msgstr "Installer"
-#: plinth/templates/setup.html:98
+#: plinth/templates/setup.html:83
msgid "Performing pre-install operation"
msgstr "Udfører før-installationshandlinger"
-#: plinth/templates/setup.html:102
+#: plinth/templates/setup.html:87
msgid "Performing post-install operation"
msgstr "Udfører efter-installationshandlinger"
-#: plinth/templates/setup.html:107
+#: plinth/templates/setup.html:92
#, python-format
msgid "Installing %(package_names)s: %(status)s"
msgstr "Installerer %(package_names)s: %(status)s"
-#: plinth/templates/setup.html:117
+#: plinth/templates/setup.html:102
#, python-format
msgid "%(percentage)s%% complete"
msgstr "%(percentage)s%% færdig"
-#: plinth/templates/toolbar.html:38
+#: plinth/templates/toolbar.html:23
msgid "Launch web client"
msgstr "Kør webklient"
-#: plinth/templates/toolbar.html:47
+#: plinth/templates/toolbar.html:32
#, fuzzy
#| msgid "Quassel IRC Client"
msgid "Client Apps"
msgstr "Quassel IRC-klient"
-#: plinth/views.py:179
+#: plinth/views.py:189
msgid "Application enabled"
msgstr "Applikation aktiveret"
-#: plinth/views.py:182
+#: plinth/views.py:192
msgid "Application disabled"
msgstr "Applikation deaktiveret"
-#: plinth/web_framework.py:190
+#: plinth/web_framework.py:107
msgid "Gujarati"
msgstr ""
diff --git a/plinth/locale/de/LC_MESSAGES/django.po b/plinth/locale/de/LC_MESSAGES/django.po
index a9ee997d9..fac277333 100644
--- a/plinth/locale/de/LC_MESSAGES/django.po
+++ b/plinth/locale/de/LC_MESSAGES/django.po
@@ -9,7 +9,7 @@ msgid ""
msgstr ""
"Project-Id-Version: FreedomBox UI\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2020-02-14 21:26+0200\n"
+"POT-Creation-Date: 2020-02-24 19:12-0500\n"
"PO-Revision-Date: 2020-02-24 21:32+0000\n"
"Last-Translator: Michael Breidenbach
SSH key-based authentication is not yet "
"possible."
@@ -274,15 +274,15 @@ msgstr ""
"Passwort des SSH-Hostrechners.
SSH-Schlüssel-basierte Authentifizierung "
"ist noch nicht möglich."
-#: plinth/modules/backups/forms.py:224
+#: plinth/modules/backups/forms.py:209
msgid "Remote backup repository already exists."
msgstr "Remote-Backup-Archiv existiert bereits."
-#: plinth/modules/backups/forms.py:230
+#: plinth/modules/backups/forms.py:215
msgid "Select verified SSH public key"
msgstr "Wähle verifizierten öffentlichen SSH-Schlüssel"
-#: plinth/modules/backups/repository.py:48
+#: plinth/modules/backups/repository.py:33
msgid ""
"Connection refused - make sure you provided correct credentials and the "
"server is running."
@@ -290,74 +290,74 @@ msgstr ""
"Verbindung verweigert - vergewissern Sie sich, dass die Anmeldeinformationen "
"korrekt sind und dass der Hostrechner läuft."
-#: plinth/modules/backups/repository.py:55
+#: plinth/modules/backups/repository.py:40
msgid "Connection refused"
msgstr "Verbindung verweigert"
-#: plinth/modules/backups/repository.py:62
+#: plinth/modules/backups/repository.py:47
msgid "Repository not found"
msgstr "Archiv nicht gefunden"
-#: plinth/modules/backups/repository.py:67
+#: plinth/modules/backups/repository.py:52
msgid "Incorrect encryption passphrase"
msgstr "Falsche Verschlüsselungs-Passphrase"
-#: plinth/modules/backups/repository.py:72
+#: plinth/modules/backups/repository.py:57
msgid "SSH access denied"
msgstr "SSH-Zugriff verweigert"
-#: plinth/modules/backups/repository.py:78
+#: plinth/modules/backups/repository.py:63
msgid "Repository path is neither empty nor is an existing backups repository."
msgstr ""
"Pfad zum Archiv ist weder leer, noch ist ein existierendes Backup-Archiv."
-#: plinth/modules/backups/repository.py:152
+#: plinth/modules/backups/repository.py:137
msgid "Existing repository is not encrypted."
msgstr "Vorhandenes Repository ist nicht verschlüsselt."
-#: plinth/modules/backups/repository.py:337
+#: plinth/modules/backups/repository.py:322
#, python-brace-format
msgid "{box_name} storage"
msgstr "{box_name}-Speichermedien"
-#: plinth/modules/backups/templates/backups.html:45
-#: plinth/modules/backups/views.py:77
+#: plinth/modules/backups/templates/backups.html:30
+#: plinth/modules/backups/views.py:60
msgid "Create a new backup"
msgstr "Neue Sicherung erstellen"
-#: plinth/modules/backups/templates/backups.html:49
+#: plinth/modules/backups/templates/backups.html:34
msgid "Create Backup"
msgstr "Sicherung erstellen"
-#: plinth/modules/backups/templates/backups.html:52
+#: plinth/modules/backups/templates/backups.html:37
msgid "Upload and restore a backup archive"
msgstr "Hochladen und Wiederherstellen eines Sicherungsarchives"
-#: plinth/modules/backups/templates/backups.html:56
+#: plinth/modules/backups/templates/backups.html:41
msgid "Upload and Restore"
msgstr "Hochladen und Wiederherstellen"
-#: plinth/modules/backups/templates/backups.html:59
+#: plinth/modules/backups/templates/backups.html:44
msgid "Add a backup location"
msgstr "Einen Backup-Speicherort hinzufügen"
-#: plinth/modules/backups/templates/backups.html:63
+#: plinth/modules/backups/templates/backups.html:48
msgid "Add Backup Location"
msgstr "Backup-Speicherort hinzufügen"
-#: plinth/modules/backups/templates/backups.html:66
+#: plinth/modules/backups/templates/backups.html:51
msgid "Add a remote backup location"
msgstr "Hinzufügen eines entfernten Backup-Standorts"
-#: plinth/modules/backups/templates/backups.html:70
+#: plinth/modules/backups/templates/backups.html:55
msgid "Add Remote Backup Location"
msgstr "Hinzufügen eines entfernten Backup-Standorts"
-#: plinth/modules/backups/templates/backups.html:73
+#: plinth/modules/backups/templates/backups.html:58
msgid "Existing Backups"
msgstr "Vorhandene Sicherungen"
-#: plinth/modules/backups/templates/backups_add_remote_repository.html:34
+#: plinth/modules/backups/templates/backups_add_remote_repository.html:19
#, python-format
msgid ""
"The credentials for this repository are stored on your %(box_name)s.
"
@@ -369,48 +369,49 @@ msgstr ""
"wiederherzustellen, benötigen Sie die SSH-Anmeldeinformationen und, sofern "
"ausgewählt, die Verschlüsselungs-Passphrase."
-#: plinth/modules/backups/templates/backups_add_remote_repository.html:43
+#: plinth/modules/backups/templates/backups_add_remote_repository.html:28
msgid "Create Location"
msgstr "Standort anlegen"
-#: plinth/modules/backups/templates/backups_add_repository.html:34
-#: plinth/modules/gitweb/views.py:70
+#: plinth/modules/backups/templates/backups_add_repository.html:19
+#: plinth/modules/gitweb/views.py:50
msgid "Create Repository"
msgstr "Archiv anlegen"
-#: plinth/modules/backups/templates/backups_delete.html:27
+#: plinth/modules/backups/templates/backups_delete.html:12
msgid "Delete this archive permanently?"
msgstr "Archiv endgültig löschen?"
-#: plinth/modules/backups/templates/backups_delete.html:33
-#: plinth/modules/ikiwiki/forms.py:30
-#: plinth/modules/networks/templates/connection_show.html:78
-#: plinth/modules/sharing/templates/sharing.html:52
+#: plinth/modules/backups/templates/backups_delete.html:18
+#: plinth/modules/ikiwiki/forms.py:15
+#: plinth/modules/networks/templates/connection_show.html:63
+#: plinth/modules/sharing/templates/sharing.html:37
msgid "Name"
msgstr "Name"
-#: plinth/modules/backups/templates/backups_delete.html:34
+#: plinth/modules/backups/templates/backups_delete.html:19
msgid "Time"
msgstr "Zeit"
-#: plinth/modules/backups/templates/backups_delete.html:51
+#: plinth/modules/backups/templates/backups_delete.html:36
#, python-format
msgid "Delete Archive %(name)s"
msgstr "Archiv %(name)s löschen"
-#: plinth/modules/backups/templates/backups_form.html:35
-#: plinth/modules/gitweb/templates/gitweb_create_edit.html:35
-#: plinth/modules/networks/templates/router_configuration_update.html:34
-#: plinth/modules/pagekite/templates/pagekite_custom_services.html:47
-#: plinth/modules/sharing/templates/sharing_add_edit.html:35
+#: plinth/modules/backups/templates/backups_form.html:20
+#: plinth/modules/gitweb/templates/gitweb_create_edit.html:20
+#: plinth/modules/networks/templates/internet_connectivity_type.html:18
+#: plinth/modules/networks/templates/router_configuration_update.html:19
+#: plinth/modules/pagekite/templates/pagekite_custom_services.html:32
+#: plinth/modules/sharing/templates/sharing_add_edit.html:20
msgid "Submit"
msgstr "Absenden"
-#: plinth/modules/backups/templates/backups_repository_remove.html:28
+#: plinth/modules/backups/templates/backups_repository_remove.html:13
msgid "Are you sure that you want to remove this repository?"
msgstr "Sind Sie sicher, dass Sie dieses Archiv löschen wollen?"
-#: plinth/modules/backups/templates/backups_repository_remove.html:34
+#: plinth/modules/backups/templates/backups_repository_remove.html:19
msgid ""
"The remote repository will not be deleted. This just removes the repository "
"from the listing on the backup page, you can add it again later on."
@@ -419,24 +420,24 @@ msgstr ""
"lediglich aus der Liste auf der Backup-Seite, Sie\n"
"können es später erneut hinzufügen."
-#: plinth/modules/backups/templates/backups_repository_remove.html:46
+#: plinth/modules/backups/templates/backups_repository_remove.html:31
msgid "Remove Location"
msgstr "Standort entfernen"
-#: plinth/modules/backups/templates/backups_restore.html:30
+#: plinth/modules/backups/templates/backups_restore.html:15
msgid "Restore data from"
msgstr "Wiederherstellen von Daten aus"
-#: plinth/modules/backups/templates/backups_restore.html:43
-#: plinth/modules/backups/views.py:171
+#: plinth/modules/backups/templates/backups_restore.html:28
+#: plinth/modules/backups/views.py:154
msgid "Restore"
msgstr "Wiederherstellen"
-#: plinth/modules/backups/templates/backups_restore.html:47
+#: plinth/modules/backups/templates/backups_restore.html:32
msgid "Restoring"
msgstr "Wiederherstellen"
-#: plinth/modules/backups/templates/backups_upload.html:32
+#: plinth/modules/backups/templates/backups_upload.html:17
#, python-format
msgid ""
"\n"
@@ -455,12 +456,12 @@ msgstr ""
" Backup-Datei wiederherstellen möchten.\n"
" "
-#: plinth/modules/backups/templates/backups_upload.html:42
-#: plinth/modules/help/templates/statuslog.html:38
+#: plinth/modules/backups/templates/backups_upload.html:27
+#: plinth/modules/help/templates/statuslog.html:23
msgid "Caution:"
msgstr "Achtung:"
-#: plinth/modules/backups/templates/backups_upload.html:43
+#: plinth/modules/backups/templates/backups_upload.html:28
#, python-format
msgid ""
"You have %(max_filesize)s available to restore a backup. Exceeding this "
@@ -470,11 +471,11 @@ msgstr ""
"Eine Überschreitung dieser Grenze kann dazu führen, dass Ihre %(box_name)s "
"unbrauchbar wird."
-#: plinth/modules/backups/templates/backups_upload.html:56
+#: plinth/modules/backups/templates/backups_upload.html:41
msgid "Upload file"
msgstr "Datei hochladen"
-#: plinth/modules/backups/templates/verify_ssh_hostkey.html:33
+#: plinth/modules/backups/templates/verify_ssh_hostkey.html:18
#, python-format
msgid ""
"Could not reach SSH host %(hostname)s. Please verify that the host is up and "
@@ -483,7 +484,7 @@ msgstr ""
"SSH-Host %(hostname)s konnte nicht erreicht werden. Bitte vergewissern Sie "
"sich, dass der Host eingeschaltet ist und Verbindungen akzeptiert."
-#: plinth/modules/backups/templates/verify_ssh_hostkey.html:43
+#: plinth/modules/backups/templates/verify_ssh_hostkey.html:28
#, python-format
msgid ""
"The authenticity of SSH host %(hostname)s could not be established. The host "
@@ -493,11 +494,11 @@ msgstr ""
"Der Host kündigt die folgenden öffentlichen SSH-Schlüssel an. Bitte "
"überprüfen Sie einen von ihnen."
-#: plinth/modules/backups/templates/verify_ssh_hostkey.html:55
+#: plinth/modules/backups/templates/verify_ssh_hostkey.html:40
msgid "How to verify?"
msgstr "Wie kann man verifizieren?"
-#: plinth/modules/backups/templates/verify_ssh_hostkey.html:60
+#: plinth/modules/backups/templates/verify_ssh_hostkey.html:45
msgid ""
"Run the following command on the SSH host machine. The output should match "
"one of the provided options. You can also use dsa, ecdsa, ed25519 etc. "
@@ -507,110 +508,102 @@ msgstr ""
"einer der angegebenen Optionen übereinstimmen. Sie können anstatt RSA auch "
"DSA, ECDSA, ED25519, usw. auswählen, indem Sie die jeweilige Datei auswählen."
-#: plinth/modules/backups/templates/verify_ssh_hostkey.html:75
+#: plinth/modules/backups/templates/verify_ssh_hostkey.html:60
msgid "Verify Host"
msgstr "Host verifizieren"
-#: plinth/modules/backups/views.py:72
+#: plinth/modules/backups/views.py:55
msgid "Archive created."
msgstr "Archiv angelegt."
-#: plinth/modules/backups/views.py:99
+#: plinth/modules/backups/views.py:82
msgid "Delete Archive"
msgstr "Archiv löschen"
-#: plinth/modules/backups/views.py:111
+#: plinth/modules/backups/views.py:94
msgid "Archive deleted."
msgstr "Archiv gelöscht."
-#: plinth/modules/backups/views.py:124
+#: plinth/modules/backups/views.py:107
msgid "Upload and restore a backup"
msgstr "Hochladen und Wiederherstellen einer Sicherung"
-#: plinth/modules/backups/views.py:159
+#: plinth/modules/backups/views.py:142
msgid "Restored files from backup."
msgstr "Dateien aus Backup wiederhergestellt."
-#: plinth/modules/backups/views.py:186
+#: plinth/modules/backups/views.py:169
msgid "No backup file found."
msgstr "Keine Sicherungsdatei gefunden."
-#: plinth/modules/backups/views.py:194
+#: plinth/modules/backups/views.py:177
msgid "Restore from uploaded file"
msgstr "Wiederherstellen aus hochgeladener Datei"
-#: plinth/modules/backups/views.py:251
+#: plinth/modules/backups/views.py:234
msgid "No additional disks available to add a repository."
msgstr ""
"Es sind keine zusätzlichen Festplatten verfügbar, um ein Repository "
"hinzuzufügen."
-#: plinth/modules/backups/views.py:259
+#: plinth/modules/backups/views.py:242
msgid "Create backup repository"
msgstr "Backup-Repository erstellen"
-#: plinth/modules/backups/views.py:286
+#: plinth/modules/backups/views.py:269
msgid "Create remote backup repository"
msgstr "Remote-Backup-Archiv anlegen"
-#: plinth/modules/backups/views.py:305
+#: plinth/modules/backups/views.py:288
msgid "Added new remote SSH repository."
msgstr "Neue Remote-SSH-Archiv hinzugefügt."
-#: plinth/modules/backups/views.py:327
+#: plinth/modules/backups/views.py:310
msgid "Verify SSH hostkey"
msgstr "Verifiziere SSH-Schlüssel des Hosts"
-#: plinth/modules/backups/views.py:353
+#: plinth/modules/backups/views.py:336
msgid "SSH host already verified."
msgstr "SSH-Host bereits verifiziert."
-#: plinth/modules/backups/views.py:363
+#: plinth/modules/backups/views.py:346
msgid "SSH host verified."
msgstr "SSH-Host verifiziert."
-#: plinth/modules/backups/views.py:377
+#: plinth/modules/backups/views.py:360
msgid "SSH host public key could not be verified."
msgstr ""
"Der öffentliche SSH-Schlüssel des Hosts konnte nicht verifiziert werden."
-#: plinth/modules/backups/views.py:379
+#: plinth/modules/backups/views.py:362
msgid "Authentication to remote server failed."
msgstr "Authentifizierung am Server fehlgeschlagen."
-#: plinth/modules/backups/views.py:381
+#: plinth/modules/backups/views.py:364
msgid "Error establishing connection to server: {}"
msgstr "Fehler beim Verbinden mit Server: {}"
-#: plinth/modules/backups/views.py:392
+#: plinth/modules/backups/views.py:375
msgid "Repository removed."
msgstr "Archiv gelöscht."
-#: plinth/modules/backups/views.py:406
+#: plinth/modules/backups/views.py:389
msgid "Remove Repository"
msgstr "Archiv entfernen"
-#: plinth/modules/backups/views.py:415
+#: plinth/modules/backups/views.py:398
msgid "Repository removed. Backups were not deleted."
msgstr "Repository entfernt. Backups wurden nicht gelöscht."
-#: plinth/modules/backups/views.py:425
+#: plinth/modules/backups/views.py:408
msgid "Unmounting failed!"
msgstr "Aushängen fehlgeschlagen!"
-#: plinth/modules/backups/views.py:440 plinth/modules/backups/views.py:444
+#: plinth/modules/backups/views.py:423 plinth/modules/backups/views.py:427
msgid "Mounting failed"
msgstr "Einhängen fehlgeschlagen"
-#: plinth/modules/bind/__init__.py:36
-msgid "BIND"
-msgstr "BIND"
-
-#: plinth/modules/bind/__init__.py:38
-msgid "Domain Name Server"
-msgstr "DNS-Server"
-
-#: plinth/modules/bind/__init__.py:45
+#: plinth/modules/bind/__init__.py:29
msgid ""
"BIND enables you to publish your Domain Name System (DNS) information on the "
"Internet, and to resolve DNS queries for your user devices on your network."
@@ -619,7 +612,7 @@ msgstr ""
"Internet veröffentlichen, und DNS-Abfragen Ihrer Geräte im Heimnetz "
"beantworten."
-#: plinth/modules/bind/__init__.py:49
+#: plinth/modules/bind/__init__.py:33
#, python-brace-format
msgid ""
"Currently, on {box_name}, BIND is only used to resolve DNS queries for other "
@@ -630,41 +623,77 @@ msgstr ""
"Geräte im lokalen Netzwerk zu beantworten. Dies ist außerdem inkompatibel "
"mit dem Teilen der Internetverbindung durch die {box_name}."
-#: plinth/modules/bind/forms.py:37
+#: plinth/modules/bind/__init__.py:82
+msgid "BIND"
+msgstr "BIND"
+
+#: plinth/modules/bind/__init__.py:83
+msgid "Domain Name Server"
+msgstr "DNS-Server"
+
+#: plinth/modules/bind/forms.py:22
msgid "Forwarders"
msgstr "Weiterleiter"
-#: plinth/modules/bind/forms.py:38
+#: plinth/modules/bind/forms.py:23
msgid ""
"A list DNS servers, separated by space, to which requests will be forwarded"
msgstr ""
"Eine Liste von DNS-Servern, getrennt durch Leerzeichen, an welche die "
"Anfragen weitergeleitet werden"
-#: plinth/modules/bind/forms.py:42
+#: plinth/modules/bind/forms.py:27
msgid "Enable DNSSEC"
msgstr "DNSSEC einschalten"
-#: plinth/modules/bind/forms.py:43
+#: plinth/modules/bind/forms.py:28
msgid "Enable Domain Name System Security Extensions"
msgstr "Domain-Name-System-Sicherheitserweiterungen (DNSSEC) aktivieren"
-#: plinth/modules/bind/views.py:58 plinth/modules/deluge/views.py:67
-#: plinth/modules/dynamicdns/views.py:171 plinth/modules/openvpn/views.py:153
-#: plinth/modules/shadowsocks/views.py:79
-#: plinth/modules/transmission/views.py:73
+#: plinth/modules/bind/templates/bind.html:11
+#, fuzzy
+#| msgid "Server domain"
+msgid "Serving Domains"
+msgstr "Serverdomain"
+
+#: plinth/modules/bind/templates/bind.html:16
+#: plinth/modules/ikiwiki/forms.py:12
+#: plinth/modules/networks/templates/connection_show.html:83
+#: plinth/modules/storage/templates/storage.html:28
+msgid "Type"
+msgstr "Typ"
+
+#: plinth/modules/bind/templates/bind.html:17
+#, fuzzy
+#| msgid "Domain Name"
+msgid "Domain Names"
+msgstr "Domain-Name"
+
+#: plinth/modules/bind/templates/bind.html:18
+#, fuzzy
+#| msgid "Service"
+msgid "Serving"
+msgstr "Dienst"
+
+#: plinth/modules/bind/templates/bind.html:19
+#, fuzzy
+#| msgid "IP address"
+msgid "IP addresses"
+msgstr "IP-Adresse"
+
+#: plinth/modules/bind/templates/bind.html:35
+#: plinth/modules/bind/templates/bind.html:37
+msgid "Refresh IP address and domains"
+msgstr ""
+
+#: plinth/modules/bind/views.py:73 plinth/modules/deluge/views.py:46
+#: plinth/modules/dynamicdns/views.py:150 plinth/modules/openvpn/views.py:134
+#: plinth/modules/shadowsocks/views.py:59
+#: plinth/modules/transmission/views.py:52
msgid "Configuration updated"
msgstr "Konfiguration aktualisiert"
-#: plinth/modules/cockpit/__init__.py:45 plinth/modules/cockpit/manifest.py:27
-msgid "Cockpit"
-msgstr "Cockpit"
-
-#: plinth/modules/cockpit/__init__.py:49
-msgid "Server Administration"
-msgstr "Serververwaltung"
-
-#: plinth/modules/cockpit/__init__.py:53
+#: plinth/modules/cockpit/__init__.py:32
#, python-brace-format
msgid ""
"Cockpit is a server manager that makes it easy to administer GNU/Linux "
@@ -678,7 +707,7 @@ msgstr ""
"Zusätzlich ist eine Kommandozeile im Webbrowser enthalten, um direkt Befehle "
"einzugeben."
-#: plinth/modules/cockpit/__init__.py:59
+#: plinth/modules/cockpit/__init__.py:38
#, python-brace-format
msgid ""
"It can be accessed by any user on {box_name} "
@@ -687,7 +716,7 @@ msgstr ""
"Auf sie kann von jedem Benutzer auf der "
"{box_name} zugegriffen werden, der zur Administratorgruppe gehören."
-#: plinth/modules/cockpit/__init__.py:63
+#: plinth/modules/cockpit/__init__.py:42
msgid ""
"Cockpit requires that you access it through a domain name. It will not work "
"when accessed using an IP address as part of the URL."
@@ -696,21 +725,25 @@ msgstr ""
"funktioniert nicht, wenn auf eine IP-Adresse als Teil der URL zugegriffen "
"wird."
-#: plinth/modules/cockpit/templates/cockpit.html:26
+#: plinth/modules/cockpit/__init__.py:59 plinth/modules/cockpit/manifest.py:12
+msgid "Cockpit"
+msgstr "Cockpit"
+
+#: plinth/modules/cockpit/__init__.py:61
+msgid "Server Administration"
+msgstr "Serververwaltung"
+
+#: plinth/modules/cockpit/templates/cockpit.html:11
msgid "Access"
msgstr "Zugriff"
-#: plinth/modules/cockpit/templates/cockpit.html:29
+#: plinth/modules/cockpit/templates/cockpit.html:14
msgid "Cockpit will only work when accessed using the following URLs."
msgstr ""
"Das Cockpit funktioniert nur, wenn es über die folgenden URLs aufgerufen "
"wird."
-#: plinth/modules/config/__init__.py:37
-msgid "General Configuration"
-msgstr "Allgemeine Konfiguration"
-
-#: plinth/modules/config/__init__.py:40
+#: plinth/modules/config/__init__.py:23
msgid ""
"Here you can set some general configuration options like hostname, domain "
"name, webserver home page etc."
@@ -718,37 +751,41 @@ msgstr ""
"Hier können Sie einige allgemeine Konfigurationsoptionen wie Hostname, "
"Domainname, Webserver-Homepage usw. festlegen."
-#: plinth/modules/config/__init__.py:67 plinth/modules/dynamicdns/views.py:44
-#: plinth/modules/i2p/views.py:31 plinth/modules/names/templates/names.html:44
-#: plinth/modules/names/templates/names.html:58
-#: plinth/modules/snapshot/views.py:41
-#: plinth/modules/tahoe/templates/tahoe-pre-setup.html:39
+#: plinth/modules/config/__init__.py:50
+msgid "General Configuration"
+msgstr "Allgemeine Konfiguration"
+
+#: plinth/modules/config/__init__.py:55 plinth/modules/dynamicdns/views.py:29
+#: plinth/modules/i2p/views.py:16 plinth/modules/names/templates/names.html:29
+#: plinth/modules/names/templates/names.html:43
+#: plinth/modules/snapshot/views.py:26
+#: plinth/modules/tahoe/templates/tahoe-pre-setup.html:24
msgid "Configure"
msgstr "Konfigurieren"
-#: plinth/modules/config/__init__.py:71 plinth/modules/config/forms.py:76
-#: plinth/modules/dynamicdns/forms.py:110
+#: plinth/modules/config/__init__.py:59 plinth/modules/config/forms.py:61
+#: plinth/modules/dynamicdns/forms.py:95
msgid "Domain Name"
msgstr "Domain-Name"
-#: plinth/modules/config/forms.py:42 plinth/modules/config/forms.py:88
-#: plinth/modules/dynamicdns/forms.py:113
+#: plinth/modules/config/forms.py:27 plinth/modules/config/forms.py:73
+#: plinth/modules/dynamicdns/forms.py:98
msgid "Invalid domain name"
msgstr "Ungültiger Domain-Name"
-#: plinth/modules/config/forms.py:50
+#: plinth/modules/config/forms.py:35
msgid "Apache Default"
msgstr "Apache-Standard"
-#: plinth/modules/config/forms.py:51
+#: plinth/modules/config/forms.py:36
msgid "FreedomBox Service (Plinth)"
msgstr "FreedomBox-Dienst (Plinth)"
-#: plinth/modules/config/forms.py:63
+#: plinth/modules/config/forms.py:48
msgid "Hostname"
msgstr "Hostname"
-#: plinth/modules/config/forms.py:65
+#: plinth/modules/config/forms.py:50
#, python-brace-format
msgid ""
"Hostname is the local name by which other devices on the local network can "
@@ -761,11 +798,11 @@ msgstr ""
"darf als einziges Sonderzeichen das Minuszeichen enthalten. Die Gesamtlänge "
"darf 63 Zeichen nicht überschreiten."
-#: plinth/modules/config/forms.py:72
+#: plinth/modules/config/forms.py:57
msgid "Invalid hostname"
msgstr "Ungültiger Hostname"
-#: plinth/modules/config/forms.py:78
+#: plinth/modules/config/forms.py:63
#, python-brace-format
msgid ""
"Domain name is the global name by which other devices on the Internet can "
@@ -781,11 +818,11 @@ msgstr ""
"alphanumerischen Zeichen und Bindestrichen bestehen. Jede Kennung darf "
"maximal 63 Zeichen lang sein, die Gesamtlänge des Domainnamen 253 Zeichen."
-#: plinth/modules/config/forms.py:93
+#: plinth/modules/config/forms.py:78
msgid "Webserver Home Page"
msgstr "Webserver-Startseite"
-#: plinth/modules/config/forms.py:95
+#: plinth/modules/config/forms.py:80
#, python-brace-format
msgid ""
"Choose the default page that must be served when someone visits your "
@@ -801,64 +838,56 @@ msgstr ""
"(Plinth) eingestellt ist, die Benutzer explizit /plinth oder /freedombox "
"eingeben müssen um den {box_name}-Dienst (Plinth) zu erreichen."
-#: plinth/modules/config/forms.py:106
+#: plinth/modules/config/forms.py:91
msgid "Show advanced apps and features"
msgstr "Erweiterte Apps und Funktionen anzeigen"
-#: plinth/modules/config/forms.py:107
+#: plinth/modules/config/forms.py:92
msgid "Show apps and features that require more technical knowledge."
msgstr ""
"Anwendungen und Funktionen, die mehr technisches Wissen erfordern, anzeigen."
-#: plinth/modules/config/views.py:65
+#: plinth/modules/config/views.py:47
#, python-brace-format
msgid "Error setting hostname: {exception}"
msgstr "Fehler beim Setzen des Hostnamens: {exception}"
-#: plinth/modules/config/views.py:68
+#: plinth/modules/config/views.py:50
msgid "Hostname set"
msgstr "Hostname gesetzt"
-#: plinth/modules/config/views.py:77
+#: plinth/modules/config/views.py:59
#, python-brace-format
msgid "Error setting domain name: {exception}"
msgstr "Fehler beim Setzen des Domainnamens: {exception}"
-#: plinth/modules/config/views.py:80
+#: plinth/modules/config/views.py:62
msgid "Domain name set"
msgstr "Domainname gesetzt"
-#: plinth/modules/config/views.py:88
+#: plinth/modules/config/views.py:70
#, python-brace-format
msgid "Error setting webserver home page: {exception}"
msgstr "Fehler beim Setzen des Hostnamens: {exception}"
-#: plinth/modules/config/views.py:91
+#: plinth/modules/config/views.py:73
msgid "Webserver home page set"
msgstr "Webserver-Startseite wurde definiert"
-#: plinth/modules/config/views.py:99
+#: plinth/modules/config/views.py:81
#, python-brace-format
msgid "Error changing advanced mode: {exception}"
msgstr "Fehler beim Ändern des erweiterten Modus: {exception}"
-#: plinth/modules/config/views.py:104
+#: plinth/modules/config/views.py:86
msgid "Showing advanced apps and features"
msgstr "Zeige erweiterte Anwendungen und Funktionen an"
-#: plinth/modules/config/views.py:107
+#: plinth/modules/config/views.py:89
msgid "Hiding advanced apps and features"
msgstr "Ausblenden von erweiterten Apps und Funktionen"
-#: plinth/modules/coquelicot/__init__.py:40
-msgid "Coquelicot"
-msgstr "Coquelicot"
-
-#: plinth/modules/coquelicot/__init__.py:42 plinth/modules/samba/__init__.py:50
-msgid "File Sharing"
-msgstr "Filesharing/Dateien teilen"
-
-#: plinth/modules/coquelicot/__init__.py:45
+#: plinth/modules/coquelicot/__init__.py:24
msgid ""
"Coquelicot is a \"one-click\" file sharing web application with a focus on "
"protecting users' privacy. It is best used for quickly sharing a single "
@@ -869,7 +898,7 @@ msgstr ""
"Benutzer liegt. Es wird am besten verwendet, um eine einzelne Datei schnell "
"zu teilen. "
-#: plinth/modules/coquelicot/__init__.py:48
+#: plinth/modules/coquelicot/__init__.py:27
msgid ""
"This Coquelicot instance is exposed to the public but requires an upload "
"password to prevent unauthorized access. You can set a new upload password "
@@ -881,11 +910,19 @@ msgstr ""
"Upload-Passwort in dem Formular festlegen, das nach der Installation unten "
"angezeigt wird. Das voreingestellte Upload-Passwort ist \"test\"."
-#: plinth/modules/coquelicot/forms.py:30
+#: plinth/modules/coquelicot/__init__.py:45
+msgid "Coquelicot"
+msgstr "Coquelicot"
+
+#: plinth/modules/coquelicot/__init__.py:47 plinth/modules/samba/__init__.py:62
+msgid "File Sharing"
+msgstr "Filesharing/Dateien teilen"
+
+#: plinth/modules/coquelicot/forms.py:15
msgid "Upload Password"
msgstr "Upload-Passwort"
-#: plinth/modules/coquelicot/forms.py:31
+#: plinth/modules/coquelicot/forms.py:16
msgid ""
"Set a new upload password for Coquelicot. Leave this field blank to keep the "
"current password."
@@ -893,41 +930,37 @@ msgstr ""
"Ein neues Upload-Passwort für Coquelicot eingeben. Dieses Feld leerlassen, "
"um das derzeitige Passwort beizubehalten."
-#: plinth/modules/coquelicot/forms.py:35
+#: plinth/modules/coquelicot/forms.py:20
msgid "Maximum File Size (in MiB)"
msgstr "Maximale Dateigröße (in MiB)"
-#: plinth/modules/coquelicot/forms.py:36
+#: plinth/modules/coquelicot/forms.py:21
msgid "Set the maximum size of the files that can be uploaded to Coquelicot."
msgstr ""
"Die maximale Größe der Dateien festlegen, die per Coquelicot hochgeladen "
"werden können."
-#: plinth/modules/coquelicot/manifest.py:24
+#: plinth/modules/coquelicot/manifest.py:9
msgid "coquelicot"
msgstr "Coquelicot"
-#: plinth/modules/coquelicot/views.py:58
+#: plinth/modules/coquelicot/views.py:37
msgid "Upload password updated"
msgstr "Upload-Passwort geändert"
-#: plinth/modules/coquelicot/views.py:61
+#: plinth/modules/coquelicot/views.py:40
msgid "Failed to update upload password"
msgstr "Upload-Passwort konnte nicht aktualisiert werden"
-#: plinth/modules/coquelicot/views.py:69
+#: plinth/modules/coquelicot/views.py:48
msgid "Maximum file size updated"
msgstr "Maximale Dateigröße aktualisiert"
-#: plinth/modules/coquelicot/views.py:72
+#: plinth/modules/coquelicot/views.py:51
msgid "Failed to update maximum file size"
msgstr "Die maximale Dateigröße konnte nicht aktualisiert werden"
-#: plinth/modules/datetime/__init__.py:39
-msgid "Date & Time"
-msgstr "Datum und Uhrzeit"
-
-#: plinth/modules/datetime/__init__.py:42
+#: plinth/modules/datetime/__init__.py:25
msgid ""
"Network time server is a program that maintains the system time in "
"synchronization with servers on the Internet."
@@ -935,15 +968,19 @@ msgstr ""
"Der Netzwerk-Zeitserver hält Ihre Systemzeit synchron mit Servern im "
"Internet."
-#: plinth/modules/datetime/__init__.py:97
+#: plinth/modules/datetime/__init__.py:42
+msgid "Date & Time"
+msgstr "Datum und Uhrzeit"
+
+#: plinth/modules/datetime/__init__.py:85
msgid "Time synchronized to NTP server"
msgstr "Zeit synchronisiert mit NTP-Server"
-#: plinth/modules/datetime/forms.py:35
+#: plinth/modules/datetime/forms.py:20
msgid "Time Zone"
msgstr "Zeitzone"
-#: plinth/modules/datetime/forms.py:36
+#: plinth/modules/datetime/forms.py:21
msgid ""
"Set your time zone to get accurate timestamps. This will set the system-wide "
"time zone."
@@ -951,33 +988,24 @@ msgstr ""
"Die Zeitzone festlegen, um korrekte Zeitstempel erhalten. Sie als "
"systemweite Zeitzone festgelegt."
-#: plinth/modules/datetime/forms.py:47
+#: plinth/modules/datetime/forms.py:32
msgid "-- no time zone set --"
msgstr "-- keine Zeitzone gesetzt --"
-#: plinth/modules/datetime/views.py:64
+#: plinth/modules/datetime/views.py:45
#, python-brace-format
msgid "Error setting time zone: {exception}"
msgstr "Fehler beim Setzen der Zeitzone: {exception}"
-#: plinth/modules/datetime/views.py:67
+#: plinth/modules/datetime/views.py:48
msgid "Time zone set"
msgstr "Zeitzone gesetzt"
-#: plinth/modules/deluge/__init__.py:39 plinth/modules/deluge/manifest.py:24
-msgid "Deluge"
-msgstr "Deluge"
-
-#: plinth/modules/deluge/__init__.py:43
-#: plinth/modules/transmission/__init__.py:45
-msgid "BitTorrent Web Client"
-msgstr "BitTorrent-Webclient"
-
-#: plinth/modules/deluge/__init__.py:46
+#: plinth/modules/deluge/__init__.py:25
msgid "Deluge is a BitTorrent client that features a Web UI."
msgstr "Deluge ist ein BitTorrent-Client mit einer Weboberfläche."
-#: plinth/modules/deluge/__init__.py:47
+#: plinth/modules/deluge/__init__.py:26
msgid ""
"The default password is 'deluge', but you should log in and change it "
"immediately after enabling this service."
@@ -985,24 +1013,29 @@ msgstr ""
"Das Standardkennwort ist 'deluge', aber Sie sollten sich anmelden und es "
"sofort ändern, nachdem Sie diesen Dienst aktiviert haben."
-#: plinth/modules/deluge/__init__.py:51
-#: plinth/modules/transmission/__init__.py:57
+#: plinth/modules/deluge/__init__.py:30
+#: plinth/modules/transmission/__init__.py:34
msgid "Download files using BitTorrent applications"
msgstr "Dateien mit BitTorrent herunterladen"
-#: plinth/modules/deluge/forms.py:35 plinth/modules/transmission/forms.py:35
+#: plinth/modules/deluge/__init__.py:46 plinth/modules/deluge/manifest.py:9
+msgid "Deluge"
+msgstr "Deluge"
+
+#: plinth/modules/deluge/__init__.py:47
+#: plinth/modules/transmission/__init__.py:50
+msgid "BitTorrent Web Client"
+msgstr "BitTorrent-Webclient"
+
+#: plinth/modules/deluge/forms.py:20 plinth/modules/transmission/forms.py:20
msgid "Download directory"
msgstr "Download-Ordner"
-#: plinth/modules/deluge/manifest.py:25
+#: plinth/modules/deluge/manifest.py:10
msgid "Bittorrent client written in Python/PyGTK"
msgstr "Bittorrent Client geschrieben in Python/PyGTK"
-#: plinth/modules/diagnostics/__init__.py:33
-msgid "Diagnostics"
-msgstr "Diagnose"
-
-#: plinth/modules/diagnostics/__init__.py:36
+#: plinth/modules/diagnostics/__init__.py:19
msgid ""
"The system diagnostic test will run a number of checks on your system to "
"confirm that applications and services are working as expected."
@@ -1010,56 +1043,51 @@ msgstr ""
"Der Systemdiagnosetest wird eine Reihe von Tests auf dem System durchführen, "
"um zu überprüfen, ob alle Anwendungen und Dienste funktionieren."
-#: plinth/modules/diagnostics/diagnostics.py:65
+#: plinth/modules/diagnostics/__init__.py:37
+msgid "Diagnostics"
+msgstr "Diagnose"
+
+#: plinth/modules/diagnostics/diagnostics.py:48
msgid "Diagnostic Test"
msgstr "Diagnose"
-#: plinth/modules/diagnostics/templates/diagnostics.html:43
-#: plinth/modules/diagnostics/templates/diagnostics_button.html:28
-#: plinth/modules/diagnostics/templates/diagnostics_button.html:31
+#: plinth/modules/diagnostics/templates/diagnostics.html:28
+#: plinth/modules/diagnostics/templates/diagnostics_button.html:13
+#: plinth/modules/diagnostics/templates/diagnostics_button.html:16
msgid "Run Diagnostics"
msgstr "Diagnose starten"
-#: plinth/modules/diagnostics/templates/diagnostics.html:46
+#: plinth/modules/diagnostics/templates/diagnostics.html:31
msgid "Diagnostics test is currently running"
msgstr "Diagnose läuft"
-#: plinth/modules/diagnostics/templates/diagnostics.html:59
+#: plinth/modules/diagnostics/templates/diagnostics.html:44
msgid "Results"
msgstr "Ergebnis"
-#: plinth/modules/diagnostics/templates/diagnostics.html:67
-#: plinth/modules/diagnostics/templates/diagnostics_app.html:27
+#: plinth/modules/diagnostics/templates/diagnostics.html:52
+#: plinth/modules/diagnostics/templates/diagnostics_app.html:12
#, python-format
msgid "App: %(app_id)s"
msgstr "App: %(app_id)s"
-#: plinth/modules/diagnostics/templates/diagnostics_app.html:25
+#: plinth/modules/diagnostics/templates/diagnostics_app.html:10
msgid "Diagnostic Results"
msgstr "Diagnose-Ergebnisse"
-#: plinth/modules/diagnostics/templates/diagnostics_app.html:32
+#: plinth/modules/diagnostics/templates/diagnostics_app.html:17
msgid "This app does not support diagnostics"
msgstr "Diese App unterstützt keine Diagnose"
-#: plinth/modules/diagnostics/templates/diagnostics_results.html:25
+#: plinth/modules/diagnostics/templates/diagnostics_results.html:10
msgid "Test"
msgstr "Testen"
-#: plinth/modules/diagnostics/templates/diagnostics_results.html:26
+#: plinth/modules/diagnostics/templates/diagnostics_results.html:11
msgid "Result"
msgstr "Ergebnis"
-#: plinth/modules/diaspora/__init__.py:54
-#: plinth/modules/diaspora/manifest.py:38
-msgid "diaspora*"
-msgstr "diaspora*"
-
-#: plinth/modules/diaspora/__init__.py:56
-msgid "Federated Social Network"
-msgstr "Verteiltes Soziales Netzwerk"
-
-#: plinth/modules/diaspora/__init__.py:63
+#: plinth/modules/diaspora/__init__.py:45
msgid ""
"diaspora* is a decentralized social network where you can store and control "
"your own data."
@@ -1067,15 +1095,24 @@ msgstr ""
"diaspora* ist ein dezentrales soziales Netzwerk, in dem Sie Ihre Daten "
"selbst speichern und kontrollieren können."
-#: plinth/modules/diaspora/forms.py:30
+#: plinth/modules/diaspora/__init__.py:69
+#: plinth/modules/diaspora/manifest.py:23
+msgid "diaspora*"
+msgstr "diaspora*"
+
+#: plinth/modules/diaspora/__init__.py:70
+msgid "Federated Social Network"
+msgstr "Verteiltes Soziales Netzwerk"
+
+#: plinth/modules/diaspora/forms.py:15
msgid "Enable new user registrations"
msgstr "Registrierung neuer Benutzer aktivieren"
-#: plinth/modules/diaspora/manifest.py:26
+#: plinth/modules/diaspora/manifest.py:11
msgid "dandelion*"
msgstr "dandelion*"
-#: plinth/modules/diaspora/manifest.py:28
+#: plinth/modules/diaspora/manifest.py:13
msgid ""
"It is an unofficial webview based client for the community-run, distributed "
"social network diaspora*"
@@ -1083,7 +1120,7 @@ msgstr ""
"Es ist ein inoffizieller Webclient für das gemeinschaftlich betriebene "
"soziale Netzwerk diaspora*"
-#: plinth/modules/diaspora/templates/diaspora-post-setup.html:32
+#: plinth/modules/diaspora/templates/diaspora-post-setup.html:16
#, python-format
msgid ""
"The diaspora* pod domain is set to %(domain_name)s. User IDs will "
@@ -1099,39 +1136,35 @@ msgstr ""
"diaspora*-Pod unter diaspora."
"%(domain_name)s"
-#: plinth/modules/diaspora/templates/diaspora-pre-setup.html:58
-#: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:40
-#: plinth/modules/ejabberd/templates/ejabberd.html:58
-#: plinth/modules/i2p/templates/i2p.html:34
-#: plinth/modules/ikiwiki/templates/ikiwiki_create.html:33
-#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:62
-#: plinth/modules/snapshot/templates/snapshot.html:30
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:51
-#: plinth/modules/tahoe/templates/tahoe-pre-setup.html:58
-#: plinth/templates/app.html:77
+#: plinth/modules/diaspora/templates/diaspora-pre-setup.html:43
+#: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:25
+#: plinth/modules/ejabberd/templates/ejabberd.html:43
+#: plinth/modules/i2p/templates/i2p.html:19
+#: plinth/modules/ikiwiki/templates/ikiwiki_create.html:18
+#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:47
+#: plinth/modules/snapshot/templates/snapshot.html:15
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:35
+#: plinth/modules/tahoe/templates/tahoe-pre-setup.html:43
+#: plinth/templates/app.html:62
msgid "Update setup"
msgstr "Update-Einstellungen"
-#: plinth/modules/diaspora/views.py:93 plinth/modules/ejabberd/views.py:66
-#: plinth/modules/matrixsynapse/views.py:108
-#: plinth/modules/mediawiki/views.py:79 plinth/modules/openvpn/views.py:155
-#: plinth/modules/tor/views.py:156 plinth/views.py:175
+#: plinth/modules/diaspora/views.py:76 plinth/modules/ejabberd/views.py:46
+#: plinth/modules/matrixsynapse/views.py:85
+#: plinth/modules/mediawiki/views.py:59 plinth/modules/openvpn/views.py:136
+#: plinth/modules/tor/views.py:137 plinth/views.py:185
msgid "Setting unchanged"
msgstr "Einstellung unverändert"
-#: plinth/modules/diaspora/views.py:97
+#: plinth/modules/diaspora/views.py:80
msgid "User registrations enabled"
msgstr "Registrierung neuer Benutzer aktiviert"
-#: plinth/modules/diaspora/views.py:101
+#: plinth/modules/diaspora/views.py:84
msgid "User registrations disabled"
msgstr "Registrierung neuer Benutzer deaktiviert"
-#: plinth/modules/dynamicdns/__init__.py:40
-msgid "Dynamic DNS Client"
-msgstr "Dynamischer DNS-Client"
-
-#: plinth/modules/dynamicdns/__init__.py:44
+#: plinth/modules/dynamicdns/__init__.py:27
#, python-brace-format
msgid ""
"If your Internet provider changes your IP address periodically (i.e. every "
@@ -1143,7 +1176,7 @@ msgstr ""
"zu finden. Dadurch werden andere daran gehindert, jene Dienste zu finden, "
"die von Ihrer {box_name} angeboten werden."
-#: plinth/modules/dynamicdns/__init__.py:48
+#: plinth/modules/dynamicdns/__init__.py:31
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 "
@@ -1161,11 +1194,15 @@ msgstr ""
"der neuen IP zuweisen, und wenn jemand aus dem Internet nach Ihrem DNS-Namen "
"fragt, erhält er eine Antwort mit Ihrer aktuellen IP-Adresse."
-#: plinth/modules/dynamicdns/__init__.py:78
+#: plinth/modules/dynamicdns/__init__.py:56
+msgid "Dynamic DNS Client"
+msgstr "Dynamischer DNS-Client"
+
+#: plinth/modules/dynamicdns/__init__.py:66
msgid "Dynamic Domain Name"
msgstr "Dynamischer Domain-Name"
-#: plinth/modules/dynamicdns/forms.py:42
+#: plinth/modules/dynamicdns/forms.py:27
msgid ""
"The Variables <User>, <Pass>, <Ip>, <Domain> may be "
"used within the URL. For details see the update URL templates of the example "
@@ -1175,7 +1212,7 @@ msgstr ""
"können in der URL verwendet werden. Details finden Sie in den Update-URL-"
"Vorlagen der Beispielanbieter."
-#: plinth/modules/dynamicdns/forms.py:46
+#: plinth/modules/dynamicdns/forms.py:31
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 "
@@ -1185,7 +1222,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/forms.py:51
+#: plinth/modules/dynamicdns/forms.py:36
msgid ""
"Please do not enter a URL here (like \"https://example.com/\") but only the "
"hostname of the GnuDIP server (like \"example.com\")."
@@ -1193,20 +1230,20 @@ msgstr ""
"Bitte hier keine URL (wie „https://example.com/“) eingeben, sondern nur den "
"Hostnamen des GnuDIP-Servers (wie „example.com“)."
-#: plinth/modules/dynamicdns/forms.py:55
+#: plinth/modules/dynamicdns/forms.py:40
#, python-brace-format
msgid "The public domain name you want to use to reach your {box_name}."
msgstr ""
"Der öffentliche Domainname, den Sie verwenden möchten, um Ihre FredomBox "
"{box_name} zu erreichen."
-#: plinth/modules/dynamicdns/forms.py:58
+#: plinth/modules/dynamicdns/forms.py:43
msgid "Use this option if your provider uses self signed certificates."
msgstr ""
"Verwenden Sie diese Option, wenn Ihr Anbieter eigensignierte Zertifikate "
"verwendet."
-#: plinth/modules/dynamicdns/forms.py:61
+#: plinth/modules/dynamicdns/forms.py:46
msgid ""
"If this option is selected, your username and password will be used for HTTP "
"basic authentication."
@@ -1214,12 +1251,12 @@ msgstr ""
"Ist diese Option ausgewählt, werden der Benutzername und das Passwort des "
"Dynamic-DNS-Kontos auch zur HTTP-Authentifizierung verwendet."
-#: plinth/modules/dynamicdns/forms.py:64
+#: plinth/modules/dynamicdns/forms.py:49
msgid "Leave this field empty if you want to keep your current password."
msgstr ""
"Dieses Feld leerlassen, wenn Sie das Passwort unverändert lassen möchten."
-#: plinth/modules/dynamicdns/forms.py:67
+#: plinth/modules/dynamicdns/forms.py:52
#, python-brace-format
msgid ""
"Optional Value. If your {box_name} is not connected directly to the Internet "
@@ -1232,72 +1269,72 @@ msgstr ""
"URL verwendet, um die wahre IP-Adresse zu bestimmen. Die URL sollte nur die "
"IP-Adresse des Clients liefern (Beispiel: http://myip.datasystems24.de)."
-#: plinth/modules/dynamicdns/forms.py:75
+#: plinth/modules/dynamicdns/forms.py:60
msgid "The username that was used when the account was created."
msgstr "Benutzername, der beim Erstellen des Kontos gewählt wurde."
-#: plinth/modules/dynamicdns/forms.py:83
+#: plinth/modules/dynamicdns/forms.py:68
msgid "Enable Dynamic DNS"
msgstr "Dynamisches DNS einschalten"
-#: plinth/modules/dynamicdns/forms.py:86
+#: plinth/modules/dynamicdns/forms.py:71
msgid "Service Type"
msgstr "Typ des Dienstes"
-#: plinth/modules/dynamicdns/forms.py:91
+#: plinth/modules/dynamicdns/forms.py:76
msgid "GnuDIP Server Address"
msgstr "GnuDIP-Server-Adresse"
-#: plinth/modules/dynamicdns/forms.py:94
+#: plinth/modules/dynamicdns/forms.py:79
msgid "Invalid server name"
msgstr "Ungültiger Servername"
-#: plinth/modules/dynamicdns/forms.py:97
+#: plinth/modules/dynamicdns/forms.py:82
msgid "Update URL"
msgstr "URL aktualisieren"
-#: plinth/modules/dynamicdns/forms.py:102
+#: plinth/modules/dynamicdns/forms.py:87
msgid "Accept all SSL certificates"
msgstr "Alle SSL-Zertifikate akzeptieren"
-#: plinth/modules/dynamicdns/forms.py:106
+#: plinth/modules/dynamicdns/forms.py:91
msgid "Use HTTP basic authentication"
msgstr "HTTP-Basisauthentifizierung verwenden"
-#: plinth/modules/dynamicdns/forms.py:116 plinth/modules/networks/forms.py:217
+#: plinth/modules/dynamicdns/forms.py:101 plinth/modules/networks/forms.py:199
msgid "Username"
msgstr "Benutzername"
-#: plinth/modules/dynamicdns/forms.py:119 plinth/modules/networks/forms.py:218
-#: plinth/modules/shadowsocks/forms.py:60
+#: plinth/modules/dynamicdns/forms.py:104 plinth/modules/networks/forms.py:200
+#: plinth/modules/shadowsocks/forms.py:45
msgid "Password"
msgstr "Passwort"
-#: plinth/modules/dynamicdns/forms.py:123 plinth/modules/networks/forms.py:220
+#: plinth/modules/dynamicdns/forms.py:108 plinth/modules/networks/forms.py:202
msgid "Show password"
msgstr "Passwort anzeigen"
-#: plinth/modules/dynamicdns/forms.py:127
+#: plinth/modules/dynamicdns/forms.py:112
msgid "URL to look up public IP"
msgstr "Auf die öffentliche IP-Adresse verweisende URL"
-#: plinth/modules/dynamicdns/forms.py:151
+#: plinth/modules/dynamicdns/forms.py:136
msgid "Please provide an update URL or a GnuDIP server address"
msgstr "Bitte eine Update-URL oder eine GnuDIP-Serveradresse angeben"
-#: plinth/modules/dynamicdns/forms.py:156
+#: plinth/modules/dynamicdns/forms.py:141
msgid "Please provide a GnuDIP username"
msgstr "Bitte einen GnuDIP-Benutzernamen angeben"
-#: plinth/modules/dynamicdns/forms.py:160
+#: plinth/modules/dynamicdns/forms.py:145
msgid "Please provide a GnuDIP domain name"
msgstr "Bitte einen GnuDIP-Domainnamen angeben"
-#: plinth/modules/dynamicdns/forms.py:165
+#: plinth/modules/dynamicdns/forms.py:150
msgid "Please provide a password"
msgstr "Bitte ein Passwort angeben"
-#: plinth/modules/dynamicdns/templates/dynamicdns.html:27
+#: plinth/modules/dynamicdns/templates/dynamicdns.html:12
msgid ""
"If you are looking for a free dynamic DNS account, you may find a free "
"GnuDIP service at freedns.afraid.org "
"können mittels Update-URL genutzt werden."
-#: plinth/modules/dynamicdns/templates/dynamicdns.html:38
+#: plinth/modules/dynamicdns/templates/dynamicdns.html:23
#, python-format
msgid ""
"If your %(box_name)s is connected behind a NAT router, don't forget to add "
@@ -1323,7 +1360,7 @@ msgstr ""
"einschließlich TCP-Port 80 (HTTP) und TCP-Port 443 (HTTPS), eingerichtet "
"werden."
-#: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:30
+#: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:15
msgid ""
"You have disabled Javascript. Dynamic form mode is disabled and some helper "
"functions may not work (but the main functionality should work)."
@@ -1332,11 +1369,11 @@ msgstr ""
"möglich und einige Hilfsfunktionen werden möglicherweise nicht funktionieren "
"(aber die Hauptfunktionalität sollte gegeben sein)."
-#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:24
+#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:9
msgid "NAT type"
msgstr "NAT-Typ"
-#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:28
+#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:13
msgid ""
"NAT type was not detected yet. If you do not provide an \"IP Check URL\", we "
"will not detect a NAT type."
@@ -1344,11 +1381,11 @@ msgstr ""
"Der NAT-Typ konnte noch nicht erkannt werden. Wenn keine „IP-Check-URL“ "
"angegeben wurde, kann der NAT-Typ nicht erkannt werden."
-#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:34
+#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:19
msgid "Direct connection to the Internet."
msgstr "Direkte Verbindung zum Internet."
-#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:36
+#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:21
#, python-format
msgid ""
"Behind NAT. This means that Dynamic DNS service will poll the \"URL to look "
@@ -1362,48 +1399,39 @@ msgstr ""
"Falle einer Änderung Ihrer WAN-IP-Adresse kann es möglicherweise bis zu "
"%(timer)s Minuten dauern bis der DNS-Eintrag aktualisiert ist."
-#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:48
+#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:33
msgid "Last update"
msgstr "Letztes Update"
-#: plinth/modules/dynamicdns/views.py:41 plinth/modules/help/__init__.py:59
-#: plinth/templates/help-menu.html:61 plinth/templates/help-menu.html:62
+#: plinth/modules/dynamicdns/views.py:26 plinth/modules/help/__init__.py:49
+#: plinth/templates/help-menu.html:46 plinth/templates/help-menu.html:47
msgid "About"
msgstr "Über"
-#: plinth/modules/dynamicdns/views.py:47
-#: plinth/modules/firewall/templates/firewall.html:25
-#: plinth/modules/firewall/templates/firewall.html:45
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:38
-#: plinth/modules/networks/templates/connection_show.html:261
-#: plinth/modules/openvpn/templates/openvpn.html:39
-#: plinth/modules/openvpn/templates/openvpn.html:60
-#: plinth/modules/tor/templates/tor.html:37
-#: plinth/modules/tor/templates/tor.html:51
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:61
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:60
-#: plinth/templates/app.html:42
+#: plinth/modules/dynamicdns/views.py:32
+#: plinth/modules/firewall/templates/firewall.html:10
+#: plinth/modules/firewall/templates/firewall.html:30
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:23
+#: plinth/modules/networks/templates/connection_show.html:246
+#: plinth/modules/openvpn/templates/openvpn.html:24
+#: plinth/modules/openvpn/templates/openvpn.html:45
+#: plinth/modules/tor/templates/tor.html:22
+#: plinth/modules/tor/templates/tor.html:36
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:46
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:45
+#: plinth/templates/app.html:27
msgid "Status"
msgstr "Status"
-#: plinth/modules/dynamicdns/views.py:79
+#: plinth/modules/dynamicdns/views.py:62
msgid "Configure Dynamic DNS"
msgstr "Dynamisches DNS konfigurieren"
-#: plinth/modules/dynamicdns/views.py:105
+#: plinth/modules/dynamicdns/views.py:86
msgid "Dynamic DNS Status"
msgstr "Status für Dynamisches DNS"
-#: plinth/modules/ejabberd/__init__.py:50
-msgid "ejabberd"
-msgstr "ejabberd"
-
-#: plinth/modules/ejabberd/__init__.py:54
-#: plinth/modules/matrixsynapse/__init__.py:52
-msgid "Chat Server"
-msgstr "Chatserver"
-
-#: plinth/modules/ejabberd/__init__.py:57
+#: plinth/modules/ejabberd/__init__.py:36
msgid ""
"XMPP is an open and standardized communication protocol. Here you can run "
"and configure your XMPP server, called ejabberd."
@@ -1411,7 +1439,7 @@ 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:60
+#: plinth/modules/ejabberd/__init__.py:39
#, python-brace-format
msgid ""
"To actually communicate, you can use the web client"
@@ -1425,11 +1453,20 @@ msgstr ""
"kann ejabberd von jedem Benutzer mit einem "
"{box_name} Login aufgerufen werden."
-#: plinth/modules/ejabberd/forms.py:32
+#: plinth/modules/ejabberd/__init__.py:70
+msgid "ejabberd"
+msgstr "ejabberd"
+
+#: plinth/modules/ejabberd/__init__.py:71
+#: plinth/modules/matrixsynapse/__init__.py:68
+msgid "Chat Server"
+msgstr "Chatserver"
+
+#: plinth/modules/ejabberd/forms.py:17
msgid "Enable Message Archive Management"
msgstr "Nachrichten-Archiv-Management aktivieren"
-#: plinth/modules/ejabberd/forms.py:34
+#: plinth/modules/ejabberd/forms.py:19
#, python-brace-format
msgid ""
"If enabled, your {box_name} will store chat message histories. This allows "
@@ -1443,15 +1480,15 @@ msgstr ""
"den Client-Einstellungen ab, ob die Nachrichten als Klartext oder "
"verschlüsselt gespeichert werden."
-#: plinth/modules/ejabberd/manifest.py:26
+#: plinth/modules/ejabberd/manifest.py:11
msgid "Conversations"
msgstr "Konversationen"
-#: plinth/modules/ejabberd/manifest.py:40
+#: plinth/modules/ejabberd/manifest.py:25
msgid "Xabber"
msgstr "Xabber"
-#: plinth/modules/ejabberd/manifest.py:42
+#: plinth/modules/ejabberd/manifest.py:27
msgid ""
"Open source Jabber (XMPP) client with multi-account support and clean and "
"simple interface. "
@@ -1459,15 +1496,15 @@ msgstr ""
"Open Source Jabber (XMPP) Client mit Multi-Account-Unterstützung und "
"sauberer und einfacher Schnittstelle. "
-#: plinth/modules/ejabberd/manifest.py:57
+#: plinth/modules/ejabberd/manifest.py:42
msgid "Yaxim"
msgstr "Yaxim"
-#: plinth/modules/ejabberd/manifest.py:71
+#: plinth/modules/ejabberd/manifest.py:56
msgid "ChatSecure"
msgstr "ChatSecure"
-#: plinth/modules/ejabberd/manifest.py:73
+#: plinth/modules/ejabberd/manifest.py:58
msgid ""
"ChatSecure is a free and open source messaging app that features OTR "
"encryption over XMPP. You can connect to an existing Google account, create "
@@ -1480,15 +1517,15 @@ msgstr ""
"anlegen (auch über Tor) oder sogar Ihren eigenen Server zur zusätzlichen "
"Sicherheit nutzen."
-#: plinth/modules/ejabberd/manifest.py:89
+#: plinth/modules/ejabberd/manifest.py:74
msgid "Dino"
msgstr "Dino"
-#: plinth/modules/ejabberd/manifest.py:101
+#: plinth/modules/ejabberd/manifest.py:86
msgid "Gajim"
msgstr "Gajim"
-#: plinth/modules/ejabberd/templates/ejabberd.html:33
+#: plinth/modules/ejabberd/templates/ejabberd.html:18
#, python-format
msgid ""
"Your XMPP server domain is set to %(domainname)s. User IDs will look "
@@ -1500,28 +1537,24 @@ msgstr ""
"auf der Seite Systemeinstellungen "
"konfigurieren."
-#: plinth/modules/ejabberd/templates/ejabberd.html:50
-#: plinth/modules/i2p/templates/i2p.html:26
-#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:30
-#: plinth/modules/snapshot/templates/snapshot.html:27
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:43
-#: plinth/templates/app.html:70
+#: plinth/modules/ejabberd/templates/ejabberd.html:35
+#: plinth/modules/i2p/templates/i2p.html:11
+#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:15
+#: plinth/modules/snapshot/templates/snapshot.html:12
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:27
+#: plinth/templates/app.html:55
msgid "Configuration"
msgstr "Konfiguration"
-#: plinth/modules/ejabberd/views.py:78
+#: plinth/modules/ejabberd/views.py:58
msgid "Message Archive Management enabled"
msgstr "Nachrichten-Archiv-Verwaltung aktiviert"
-#: plinth/modules/ejabberd/views.py:82
+#: plinth/modules/ejabberd/views.py:62
msgid "Message Archive Management disabled"
msgstr "Nachrichten-Archiv-Verwaltung deaktiviert"
-#: plinth/modules/firewall/__init__.py:39
-msgid "Firewall"
-msgstr "Firewall"
-
-#: plinth/modules/firewall/__init__.py:43
+#: plinth/modules/firewall/__init__.py:32
#, python-brace-format
msgid ""
"Firewall is a security system that controls the incoming and outgoing "
@@ -1533,22 +1566,26 @@ msgstr ""
"korrekt konfiguriert zu halten, reduziert Sicherheitsrisiken aus dem "
"Internet."
-#: plinth/modules/firewall/components.py:130
+#: plinth/modules/firewall/__init__.py:63
+msgid "Firewall"
+msgstr "Firewall"
+
+#: plinth/modules/firewall/components.py:118
#, python-brace-format
msgid "Port {name} ({details}) available for internal networks"
msgstr "Port -Name {name}({details}) für interne Netzwerke verfügbar"
-#: plinth/modules/firewall/components.py:138
+#: plinth/modules/firewall/components.py:126
#, python-brace-format
msgid "Port {name} ({details}) available for external networks"
msgstr "Port -Name {name} ({details}) für externe Netzwerke verfügbar"
-#: plinth/modules/firewall/components.py:143
+#: plinth/modules/firewall/components.py:131
#, python-brace-format
msgid "Port {name} ({details}) unavailable for external networks"
msgstr "Port -Name {name} ({details}) für externe Netzwerke nicht verfügbar"
-#: plinth/modules/firewall/templates/firewall.html:30
+#: plinth/modules/firewall/templates/firewall.html:15
#, python-format
msgid ""
"Firewall daemon is not running. Please run it. Firewall comes enabled by "
@@ -1561,42 +1598,42 @@ msgstr ""
"%(box_name)s) kann sie über das Kommando „service firewalld start“ oder bei "
"einem System mit systemd mit „systemctl start firewalld“ gestartet werden."
-#: plinth/modules/firewall/templates/firewall.html:43
+#: plinth/modules/firewall/templates/firewall.html:28
msgid "Show Ports"
msgstr "Ports anzeigen"
-#: plinth/modules/firewall/templates/firewall.html:44
+#: plinth/modules/firewall/templates/firewall.html:29
msgid "Service/Port"
msgstr "Dienst/Port"
-#: plinth/modules/firewall/templates/firewall.html:63
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:89
+#: plinth/modules/firewall/templates/firewall.html:48
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:74
msgid "Enabled"
msgstr "Aktiviert"
-#: plinth/modules/firewall/templates/firewall.html:66
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:91
-#: plinth/modules/networks/forms.py:64 plinth/templates/cards.html:49
+#: plinth/modules/firewall/templates/firewall.html:51
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:76
+#: plinth/modules/networks/forms.py:47 plinth/templates/cards.html:34
msgid "Disabled"
msgstr "Deaktiviert"
-#: plinth/modules/firewall/templates/firewall.html:78
+#: plinth/modules/firewall/templates/firewall.html:67
msgid "Permitted"
msgstr "Erlaubt"
-#: plinth/modules/firewall/templates/firewall.html:81
+#: plinth/modules/firewall/templates/firewall.html:70
msgid "Permitted (internal only)"
msgstr "Erlaubt (nur intern)"
-#: plinth/modules/firewall/templates/firewall.html:84
+#: plinth/modules/firewall/templates/firewall.html:73
msgid "Permitted (external only)"
msgstr "Erlaubt (nur extern)"
-#: plinth/modules/firewall/templates/firewall.html:87
+#: plinth/modules/firewall/templates/firewall.html:76
msgid "Blocked"
msgstr "Geblockt"
-#: plinth/modules/firewall/templates/firewall.html:99
+#: plinth/modules/firewall/templates/firewall.html:88
msgid ""
"The operation of the firewall is automatic. When you enable a service it is "
"also permitted in the firewall and when you disable a service it is also "
@@ -1606,7 +1643,7 @@ msgstr ""
"aktivieren, wird dieser in der Firewall ebenfalls aktiviert und wenn Sie "
"einen Dienst deaktivieren, wird dieser ebenso in der Firewall deaktiviert."
-#: plinth/modules/first_boot/forms.py:29
+#: plinth/modules/first_boot/forms.py:14
#, python-brace-format
msgid ""
"Enter the secret generated during FreedomBox installation. This secret can "
@@ -1618,25 +1655,25 @@ msgstr ""
"Befehls \"sudo cat /var/lib/plinth/firstboot-wizard-secret\" auf Ihrer "
"{box_name}"
-#: plinth/modules/first_boot/forms.py:34
+#: plinth/modules/first_boot/forms.py:19
msgid "Firstboot Wizard Secret"
msgstr "Assistent beim ersten Start"
-#: plinth/modules/first_boot/templates/firstboot_complete.html:26
+#: plinth/modules/first_boot/templates/firstboot_complete.html:11
msgid "Setup Complete!"
msgstr "Installation abgeschlossen!"
-#: plinth/modules/first_boot/templates/firstboot_complete.html:29
+#: plinth/modules/first_boot/templates/firstboot_complete.html:14
#, python-format
msgid "Without any apps, your %(box_name)s cannot do very much."
msgstr ""
"Ohne Anwendungen (Apps) kann Ihre FreedomBox %(box_name)s nicht viel machen."
-#: plinth/modules/first_boot/templates/firstboot_complete.html:36
+#: plinth/modules/first_boot/templates/firstboot_complete.html:21
msgid "Install Apps"
msgstr "Apps installieren"
-#: plinth/modules/first_boot/templates/firstboot_complete.html:42
+#: plinth/modules/first_boot/templates/firstboot_complete.html:27
#, python-format
msgid ""
"You may want to check the network setup and "
@@ -1645,23 +1682,15 @@ msgstr ""
"Möglicherweise wollen Sie die Netzwerkeinstellungen prüfen und falls nötig anpassen."
-#: plinth/modules/first_boot/templates/firstboot_welcome.html:52
+#: plinth/modules/first_boot/templates/firstboot_welcome.html:37
msgid "Start Setup"
msgstr "Einrichten beginnen"
-#: plinth/modules/first_boot/views.py:64
+#: plinth/modules/first_boot/views.py:49
msgid "Setup Complete"
msgstr "Installation abgeschlossen"
-#: plinth/modules/gitweb/__init__.py:44 plinth/modules/gitweb/manifest.py:28
-msgid "Gitweb"
-msgstr "Gitweb"
-
-#: plinth/modules/gitweb/__init__.py:48
-msgid "Simple Git Hosting"
-msgstr "Einfaches Git Hosting"
-
-#: plinth/modules/gitweb/__init__.py:51
+#: plinth/modules/gitweb/__init__.py:28
msgid ""
"Git is a distributed version-control system for tracking changes in source "
"code during software development. Gitweb provides a web interface to Git "
@@ -1680,7 +1709,7 @@ msgstr ""
"Git-Befehlszeilenclient oder mit mehreren verfügbaren Grafikclients "
"hochladen. Und Sie können Ihren Code mit Menschen auf der ganzen Welt teilen."
-#: plinth/modules/gitweb/__init__.py:58
+#: plinth/modules/gitweb/__init__.py:35
msgid ""
"To learn more on how to use Git visit Git tutorial."
@@ -1688,178 +1717,186 @@ msgstr ""
"Um weiter über Git Betrieb zu lernen, schauen Sie sich die Gitanleitung an."
-#: plinth/modules/gitweb/__init__.py:64
+#: plinth/modules/gitweb/__init__.py:39
msgid "Read-write access to Git repositories"
msgstr "Lese- und Schreibberechtigung auf Git respositories"
-#: plinth/modules/gitweb/forms.py:59
+#: plinth/modules/gitweb/__init__.py:56 plinth/modules/gitweb/manifest.py:13
+msgid "Gitweb"
+msgstr "Gitweb"
+
+#: plinth/modules/gitweb/__init__.py:57
+msgid "Simple Git Hosting"
+msgstr "Einfaches Git Hosting"
+
+#: plinth/modules/gitweb/forms.py:44
msgid "Invalid repository URL."
msgstr "Ungültige Repository-URL."
-#: plinth/modules/gitweb/forms.py:69
+#: plinth/modules/gitweb/forms.py:54
msgid "Invalid repository name."
msgstr "Ungültiger Respositoryname."
-#: plinth/modules/gitweb/forms.py:77
+#: plinth/modules/gitweb/forms.py:62
msgid "Name of a new repository or URL to import an existing repository."
msgstr ""
"Name eines neuen Repositorys oder einer neuen URL zum Importieren eines "
"vorhandenen Repositorys."
-#: plinth/modules/gitweb/forms.py:83
+#: plinth/modules/gitweb/forms.py:68
msgid "Description of the repository"
msgstr "Beschreibung des Archivs"
-#: plinth/modules/gitweb/forms.py:84 plinth/modules/gitweb/forms.py:88
+#: plinth/modules/gitweb/forms.py:69 plinth/modules/gitweb/forms.py:73
msgid "Optional, for displaying on Gitweb."
msgstr "Optional, zur Anzeige auf Gitweb."
-#: plinth/modules/gitweb/forms.py:86
+#: plinth/modules/gitweb/forms.py:71
msgid "Repository's owner name"
msgstr "Name des Resposity Besitzers"
-#: plinth/modules/gitweb/forms.py:91
+#: plinth/modules/gitweb/forms.py:76
msgid "Private repository"
msgstr "Privates Archiv"
-#: plinth/modules/gitweb/forms.py:92
+#: plinth/modules/gitweb/forms.py:77
msgid "Allow only authorized users to access this repository."
msgstr "Zugriff auf diesem Repository nur bevollmächtigte Benutzer erlauben."
-#: plinth/modules/gitweb/forms.py:113 plinth/modules/gitweb/forms.py:145
+#: plinth/modules/gitweb/forms.py:98 plinth/modules/gitweb/forms.py:130
msgid "A repository with this name already exists."
msgstr "Eine Archiv mit diesem Namen existiert bereits."
-#: plinth/modules/gitweb/forms.py:126
+#: plinth/modules/gitweb/forms.py:111
msgid "Name of the repository"
msgstr "Name des resositorys"
-#: plinth/modules/gitweb/forms.py:130
+#: plinth/modules/gitweb/forms.py:115
msgid "An alpha-numeric string that uniquely identifies a repository."
msgstr ""
"Eine alphanumerische Zeichenfolge in Kleinbuchstaben, die ein Resposity "
"eindeutig identifiziert. Beispiel: media."
-#: plinth/modules/gitweb/manifest.py:36
+#: plinth/modules/gitweb/manifest.py:21
msgid "Git"
msgstr "Git"
-#: plinth/modules/gitweb/templates/gitweb_configure.html:46
+#: plinth/modules/gitweb/templates/gitweb_configure.html:31
msgid "Manage Repositories"
msgstr "Archive verwalten"
-#: plinth/modules/gitweb/templates/gitweb_configure.html:50
-#: plinth/modules/gitweb/templates/gitweb_configure.html:52
+#: plinth/modules/gitweb/templates/gitweb_configure.html:35
+#: plinth/modules/gitweb/templates/gitweb_configure.html:37
msgid "Create repository"
msgstr "Respository anlegen"
-#: plinth/modules/gitweb/templates/gitweb_configure.html:59
+#: plinth/modules/gitweb/templates/gitweb_configure.html:44
msgid "No repositories available."
msgstr "Keine Archive verfügbar."
-#: plinth/modules/gitweb/templates/gitweb_configure.html:67
+#: plinth/modules/gitweb/templates/gitweb_configure.html:52
#, python-format
msgid "Delete repository %(repo.name)s"
msgstr "Archiv %(repo.name)s löschen"
-#: plinth/modules/gitweb/templates/gitweb_configure.html:83
+#: plinth/modules/gitweb/templates/gitweb_configure.html:68
msgid "Cloning..."
msgstr "Klonen..."
-#: plinth/modules/gitweb/templates/gitweb_configure.html:89
+#: plinth/modules/gitweb/templates/gitweb_configure.html:74
#, python-format
msgid "Go to repository %(repo.name)s"
msgstr "Gehe zum Archiv %(repo.name)s"
-#: plinth/modules/gitweb/templates/gitweb_delete.html:27
+#: plinth/modules/gitweb/templates/gitweb_delete.html:12
#, python-format
msgid "Delete Git Repository %(name)s"
msgstr "Git Repository %(name)s löschen"
-#: plinth/modules/gitweb/templates/gitweb_delete.html:33
+#: plinth/modules/gitweb/templates/gitweb_delete.html:18
msgid "Delete this repository permanently?"
msgstr "Dieses respository permanent löschen?"
-#: plinth/modules/gitweb/templates/gitweb_delete.html:42
-#: plinth/modules/ikiwiki/templates/ikiwiki_delete.html:44
+#: plinth/modules/gitweb/templates/gitweb_delete.html:27
+#: plinth/modules/ikiwiki/templates/ikiwiki_delete.html:29
#, python-format
msgid "Delete %(name)s"
msgstr "%(name)s löschen"
-#: plinth/modules/gitweb/views.py:65
+#: plinth/modules/gitweb/views.py:45
msgid "Repository created."
msgstr "Archiv erstellt."
-#: plinth/modules/gitweb/views.py:87
+#: plinth/modules/gitweb/views.py:67
msgid "An error occurred while creating the repository."
msgstr "Beim Erstellen des Repository ist ein Fehler aufgetreten."
-#: plinth/modules/gitweb/views.py:100
+#: plinth/modules/gitweb/views.py:80
msgid "Repository edited."
msgstr "Archiv bearbeitet."
-#: plinth/modules/gitweb/views.py:105
+#: plinth/modules/gitweb/views.py:85
msgid "Edit repository"
msgstr "Archiv bearbeiten"
-#: plinth/modules/gitweb/views.py:133 plinth/modules/searx/views.py:62
-#: plinth/modules/searx/views.py:73 plinth/modules/tor/views.py:178
+#: plinth/modules/gitweb/views.py:113 plinth/modules/searx/views.py:42
+#: plinth/modules/searx/views.py:53 plinth/modules/tor/views.py:159
msgid "An error occurred during configuration."
msgstr "Ein Fehler ist bei der Konfiguration aufgetreten."
-#: plinth/modules/gitweb/views.py:154
+#: plinth/modules/gitweb/views.py:134
#, python-brace-format
msgid "{name} deleted."
msgstr "{name} gelöscht."
-#: plinth/modules/gitweb/views.py:158
+#: plinth/modules/gitweb/views.py:138
#, python-brace-format
msgid "Could not delete {name}: {error}"
msgstr "{name} konnte nicht gelöscht werden: {error}"
-#: plinth/modules/help/__init__.py:40
+#: plinth/modules/help/__init__.py:30
msgid "Documentation"
msgstr "Dokumentation"
-#: plinth/modules/help/__init__.py:43 plinth/modules/networks/forms.py:64
-#: plinth/modules/networks/forms.py:95 plinth/templates/help-menu.html:35
-#: plinth/templates/help-menu.html:36 plinth/templates/index.html:135
+#: plinth/modules/help/__init__.py:33 plinth/modules/networks/forms.py:47
+#: plinth/modules/networks/forms.py:77 plinth/templates/help-menu.html:20
+#: plinth/templates/help-menu.html:21 plinth/templates/index.html:120
msgid "Manual"
msgstr "Handbuch"
-#: plinth/modules/help/__init__.py:47 plinth/modules/help/help.py:58
-#: plinth/modules/help/templates/help_support.html:24
-#: plinth/templates/help-menu.html:42 plinth/templates/help-menu.html:43
+#: plinth/modules/help/__init__.py:37 plinth/modules/help/help.py:43
+#: plinth/modules/help/templates/help_support.html:9
+#: plinth/templates/help-menu.html:27 plinth/templates/help-menu.html:28
msgid "Get Support"
msgstr "Unterstützung erhalten"
-#: plinth/modules/help/__init__.py:51 plinth/modules/help/help.py:52
-#: plinth/modules/help/templates/help_feedback.html:24
-#: plinth/templates/help-menu.html:48 plinth/templates/help-menu.html:49
+#: plinth/modules/help/__init__.py:41 plinth/modules/help/help.py:37
+#: plinth/modules/help/templates/help_feedback.html:9
+#: plinth/templates/help-menu.html:33 plinth/templates/help-menu.html:34
msgid "Submit Feedback"
msgstr "Feedback abgeben"
-#: plinth/modules/help/__init__.py:55 plinth/modules/help/help.py:46
-#: plinth/modules/help/templates/help_contribute.html:24
-#: plinth/templates/help-menu.html:54 plinth/templates/help-menu.html:55
+#: plinth/modules/help/__init__.py:45 plinth/modules/help/help.py:31
+#: plinth/modules/help/templates/help_contribute.html:9
+#: plinth/templates/help-menu.html:39 plinth/templates/help-menu.html:40
msgid "Contribute"
msgstr "Mitwirken"
-#: plinth/modules/help/help.py:40
+#: plinth/modules/help/help.py:25
msgid "Documentation and FAQ"
msgstr "Dokumentation und FAQ"
-#: plinth/modules/help/help.py:66
+#: plinth/modules/help/help.py:51
#, python-brace-format
msgid "About {box_name}"
msgstr "Über Ihre FreedomBox {box_name}"
-#: plinth/modules/help/help.py:101
+#: plinth/modules/help/help.py:86
#, python-brace-format
msgid "{box_name} Manual"
msgstr "{box_name}-Handbuch"
-#: plinth/modules/help/templates/help_about.html:32
+#: plinth/modules/help/templates/help_about.html:17
#, python-format
msgid ""
"%(box_name)s is a community project to develop, design and promote personal "
@@ -1879,7 +1916,7 @@ msgstr ""
"Netzwerke, E-Mail, Web-Proxy und einen Tor-Relay, so dass Sie für die "
"Nutzung dieser Anwendungen Ihre Daten nicht aus der Hand zu geben brauchen."
-#: plinth/modules/help/templates/help_about.html:45
+#: plinth/modules/help/templates/help_about.html:30
msgid ""
"We live in a world where our use of the network is mediated by those who "
"often do not have our best interests at heart. By building software that "
@@ -1897,7 +1934,7 @@ msgstr ""
"bringen wir das Internet wieder in seine ursprünglich vorgesehenen Peer-to-"
"Peer-Architektur (Gleiche mit Gleichen) zurück."
-#: plinth/modules/help/templates/help_about.html:58
+#: plinth/modules/help/templates/help_about.html:43
#, python-format
msgid ""
"There are a number of projects working to realize a future of distributed "
@@ -1908,7 +1945,7 @@ msgstr ""
"verteilter Dienste arbeiten; %(box_name)s hat das Ziel, sie alle in einem "
"praktischen Paket zusammenzubringen."
-#: plinth/modules/help/templates/help_about.html:66
+#: plinth/modules/help/templates/help_about.html:51
#, python-format
msgid ""
"For more information about the %(box_name)s project, see the %(box_name)s-Wiki."
-#: plinth/modules/help/templates/help_about.html:75
+#: plinth/modules/help/templates/help_about.html:60
msgid "Learn more »"
msgstr "Mehr lernen"
-#: plinth/modules/help/templates/help_about.html:78
+#: plinth/modules/help/templates/help_about.html:63
#, python-format
msgid "You are running %(os_release)s and %(box_name)s version %(version)s."
msgstr "Es läuft %(os_release)s und %(box_name)s Version %(version)s."
-#: plinth/modules/help/templates/help_about.html:83
+#: plinth/modules/help/templates/help_about.html:68
#, python-format
msgid "There is a new %(box_name)s version available."
msgstr "Eine neue %(box_name)s Version ist verfügbar."
-#: plinth/modules/help/templates/help_about.html:87
+#: plinth/modules/help/templates/help_about.html:72
#, python-format
msgid "%(box_name)s is up to date."
msgstr "%(box_name)s ist auf dem neuesten Stand."
-#: plinth/modules/help/templates/help_about.html:94
+#: plinth/modules/help/templates/help_about.html:79
msgid "Security Notice"
msgstr "Sicherheitshinweis"
-#: plinth/modules/help/templates/help_about.html:96
+#: plinth/modules/help/templates/help_about.html:81
msgid ""
"You are using packages from Debian backports. Please note that these "
"packages do not have security support from Debian. However, they are "
@@ -1952,17 +1989,17 @@ msgstr ""
"von Mitwirkenden in der Debian- und FreedomBox-Community bestmöglich "
"gepflegt."
-#: plinth/modules/help/templates/help_base.html:36
-#: plinth/modules/help/templates/help_index.html:76
+#: plinth/modules/help/templates/help_base.html:21
+#: plinth/modules/help/templates/help_index.html:61
#, python-format
msgid "%(box_name)s Setup"
msgstr "%(box_name)s Installation"
-#: plinth/modules/help/templates/help_contribute.html:27
+#: plinth/modules/help/templates/help_contribute.html:12
msgid "The FreedomBox project welcomes contributions of all kinds."
msgstr "Das FreedomBox-Projekt begrüßt Beiträge jedweder Art."
-#: plinth/modules/help/templates/help_contribute.html:33
+#: plinth/modules/help/templates/help_contribute.html:18
msgid ""
"You can contribute by writing code, testing and reporting bugs, discussing "
"new use cases and applications, designing logos and artwork, providing "
@@ -1976,7 +2013,7 @@ msgstr ""
"Anwendungen in Ihre Sprache übersetzen, Hackathons hosten oder Installations-"
"Parties und indem Sie das Projekt weiter verbreiten."
-#: plinth/modules/help/templates/help_contribute.html:43
+#: plinth/modules/help/templates/help_contribute.html:28
msgid ""
"You can also help the project financially by donating to the non-profit FreedomBox "
@@ -1996,19 +2033,19 @@ msgstr ""
"pflegt Partnerschaften und setzt sich weltweit für die FreedomBox ein. Die "
"FreedomBox Foundation würde ohne ihre Unterstützer nicht existieren."
-#: plinth/modules/help/templates/help_contribute.html:57
-#: plinth/modules/power/templates/power_restart.html:42
-#: plinth/modules/power/templates/power_shutdown.html:41
-#: plinth/templates/header.html:59
+#: plinth/modules/help/templates/help_contribute.html:42
+#: plinth/modules/power/templates/power_restart.html:27
+#: plinth/modules/power/templates/power_shutdown.html:26
+#: plinth/templates/app-header.html:51
msgid "Learn more..."
msgstr "Mehr erfahren …"
-#: plinth/modules/help/templates/help_feedback.html:27
+#: plinth/modules/help/templates/help_feedback.html:12
#, python-format
msgid "Your feedback will help us improve %(box_name)s!"
msgstr "Ihr Feedback wird uns helfen, %(box_name)s zu verbessern!"
-#: plinth/modules/help/templates/help_feedback.html:33
+#: plinth/modules/help/templates/help_feedback.html:18
msgid ""
"Let us know about missing features, your favourite apps and how we can "
"improve them on our Diskussionsforum."
-#: plinth/modules/help/templates/help_feedback.html:41
+#: plinth/modules/help/templates/help_feedback.html:26
msgid ""
"If you find any bugs or issues, please use the issue tracker"
@@ -2031,16 +2068,16 @@ msgstr ""
"Bericht zu erstellen, überprüfen Sie zunächst, ob das Problem bereits "
"gemeldet wurde und klicken Sie dann auf die Schaltfläche \"Neues Problem\"."
-#: plinth/modules/help/templates/help_feedback.html:51
+#: plinth/modules/help/templates/help_feedback.html:36
msgid "Thank you!"
msgstr "Danke!"
-#: plinth/modules/help/templates/help_index.html:27
-#: plinth/templates/help-menu.html:23 plinth/templates/help-menu.html:28
+#: plinth/modules/help/templates/help_index.html:12
+#: plinth/templates/help-menu.html:8 plinth/templates/help-menu.html:13
msgid "Help"
msgstr "Hilfe"
-#: plinth/modules/help/templates/help_index.html:31
+#: plinth/modules/help/templates/help_index.html:16
#, python-format
msgid ""
"The %(box_name)s Manual is the best place to "
@@ -2049,7 +2086,7 @@ msgstr ""
"Das %(box_name)s Handbuch ist der beste Ort "
"für erste Informationen über %(box_name)s."
-#: plinth/modules/help/templates/help_index.html:38
+#: plinth/modules/help/templates/help_index.html:23
#, python-format
msgid ""
" "
@@ -2058,7 +2095,7 @@ msgstr ""
"Das "
"%(box_name)s Projekt-Wiki enthält weitere Informationen."
-#: plinth/modules/help/templates/help_index.html:45
+#: plinth/modules/help/templates/help_index.html:30
#, python-format
msgid ""
"To seek help from %(box_name)s community, queries may be posted on the Mailingliste gestellt werden. Das Listenarchiv enthält auch "
"Informationen über Probleme anderer Benutzer*innen und mögliche Lösungen."
-#: plinth/modules/help/templates/help_index.html:55
+#: plinth/modules/help/templates/help_index.html:40
#, python-format
msgid ""
"Many %(box_name)s contributors and users are also available on the irc.oftc."
@@ -2084,11 +2121,11 @@ msgstr ""
"\"https://webchat.oftc.net/?randomnick=1&channels=freedombox&prompt=1\"> "
"#freedombox-Kanal der IRC-Weboberfläche."
-#: plinth/modules/help/templates/help_manual.html:40
+#: plinth/modules/help/templates/help_manual.html:25
msgid "Download as PDF"
msgstr "Als PDF herunterladen"
-#: plinth/modules/help/templates/help_support.html:27
+#: plinth/modules/help/templates/help_support.html:12
#, python-format
msgid ""
"If you need help in getting something done or if you are facing problems "
@@ -2099,7 +2136,7 @@ msgstr ""
"haben, können Sie unsere Gemeinschaft von Benutzern und Mitwirkenden um "
"Hilfe bitten."
-#: plinth/modules/help/templates/help_support.html:35
+#: plinth/modules/help/templates/help_support.html:20
msgid ""
"Search for past discussions or post a new query on our discussion forum."
@@ -2108,7 +2145,7 @@ msgstr ""
"auf unserem Diskussionsforum."
-#: plinth/modules/help/templates/help_support.html:42
+#: plinth/modules/help/templates/help_support.html:27
msgid ""
"You can also chat with us on our IRC and Matrix channels (bridged): "
"
"
@@ -2120,11 +2157,11 @@ msgstr ""
"org Oder senden Sie eine E-Mail an unsere Mailingliste."
-#: plinth/modules/help/templates/statuslog.html:25
+#: plinth/modules/help/templates/statuslog.html:10
msgid "Status Log"
msgstr "Statusprotokoll"
-#: plinth/modules/help/templates/statuslog.html:28
+#: plinth/modules/help/templates/statuslog.html:13
#, python-format
msgid ""
"These are the last %(num_lines)s lines of the status log for this web "
@@ -2137,7 +2174,7 @@ msgstr ""
"org/freedombox-team/plinth/issues\">online Fehlerverfolger und fügen "
"diese Ausgabe hinzu."
-#: plinth/modules/help/templates/statuslog.html:39
+#: plinth/modules/help/templates/statuslog.html:24
msgid ""
"Please remove any passwords or other personal information from the log "
"before submitting the bug report."
@@ -2145,15 +2182,7 @@ msgstr ""
"Bitte vor dem Abschicken des Fehlerberichts, alle Passwörter und andere "
"persönliche Informationen aus der Statusausgabe entfernen."
-#: plinth/modules/i2p/__init__.py:42 plinth/modules/i2p/manifest.py:31
-msgid "I2P"
-msgstr "I2P"
-
-#: plinth/modules/i2p/__init__.py:46 plinth/modules/tor/__init__.py:49
-msgid "Anonymity Network"
-msgstr "Anonymisierungsnetzwerk"
-
-#: plinth/modules/i2p/__init__.py:49
+#: plinth/modules/i2p/__init__.py:28
msgid ""
"The Invisible Internet Project is an anonymous network layer intended to "
"protect communication from censorship and surveillance. I2P provides "
@@ -2165,7 +2194,7 @@ msgstr ""
"Anonymität, indem es verschlüsselten Datenverkehr über ein von Freiwilligen "
"betriebenes, weltweit verteiltes Netzwerk sendet."
-#: plinth/modules/i2p/__init__.py:53
+#: plinth/modules/i2p/__init__.py:32
msgid ""
"Find more information about I2P on their project homepage."
@@ -2173,7 +2202,7 @@ msgstr ""
"Mehr Informationen über I2P finden Sie auf deren Projekt-Webseite."
-#: plinth/modules/i2p/__init__.py:55
+#: plinth/modules/i2p/__init__.py:34
msgid ""
"The first visit to the provided web interface will initiate the "
"configuration process."
@@ -2181,32 +2210,40 @@ msgstr ""
"Der erste Besuch der bereitgestellten Weboberfläche leitet den "
"Konfigurationsprozess ein."
-#: plinth/modules/i2p/__init__.py:61
+#: plinth/modules/i2p/__init__.py:38
msgid "Manage I2P application"
msgstr "I2P-Anwendung verwalten"
-#: plinth/modules/i2p/__init__.py:103
+#: plinth/modules/i2p/__init__.py:64 plinth/modules/i2p/manifest.py:16
+msgid "I2P"
+msgstr "I2P"
+
+#: plinth/modules/i2p/__init__.py:65 plinth/modules/tor/__init__.py:56
+msgid "Anonymity Network"
+msgstr "Anonymisierungsnetzwerk"
+
+#: plinth/modules/i2p/__init__.py:87
msgid "I2P Proxy"
msgstr "I2P Proxy"
-#: plinth/modules/i2p/templates/i2p_service.html:31
-#: plinth/templates/clients.html:43
+#: plinth/modules/i2p/templates/i2p_service.html:16
+#: plinth/templates/clients.html:28
msgid "Launch"
msgstr "Starten"
-#: plinth/modules/i2p/views.py:34
+#: plinth/modules/i2p/views.py:19
msgid "Proxies"
msgstr "Proxys"
-#: plinth/modules/i2p/views.py:37
+#: plinth/modules/i2p/views.py:22
msgid "Anonymous torrents"
msgstr "Anonyme Torrents"
-#: plinth/modules/i2p/views.py:88
+#: plinth/modules/i2p/views.py:64
msgid "I2P Proxies and Tunnels"
msgstr "I2P-Proxys und Tunnel"
-#: plinth/modules/i2p/views.py:91
+#: plinth/modules/i2p/views.py:67
msgid ""
"I2P lets you browse the Internet and hidden services (eepsites) anonymously. "
"For this, your browser, preferably a Tor Browser, needs to be configured for "
@@ -2216,7 +2253,7 @@ msgstr ""
"surfen. Dazu muss Ihr Browser, vorzugsweise ein Tor-Browser, für einen Proxy "
"konfiguriert sein."
-#: plinth/modules/i2p/views.py:94
+#: plinth/modules/i2p/views.py:70
msgid ""
"By default HTTP, HTTPS and IRC proxies are available. Additional proxies and "
"tunnels may be configured using the tunnel configuration interface."
@@ -2225,11 +2262,11 @@ msgstr ""
"Proxys und Tunnel können über die Tunnelkonfigurationsoberfläche "
"konfiguriert werden."
-#: plinth/modules/i2p/views.py:103
+#: plinth/modules/i2p/views.py:79
msgid "Anonymous Torrents"
msgstr "Anonyme Torrents"
-#: plinth/modules/i2p/views.py:106
+#: plinth/modules/i2p/views.py:82
msgid ""
"I2P provides an application to download files anonymously in a peer-to-peer "
"network. Download files by adding torrents or create a new torrent to share "
@@ -2239,15 +2276,7 @@ msgstr ""
"einem Peer-to-Peer-Netzwerk. Laden Sie Dateien herunter, indem Sie Torrents "
"hinzufügen, oder erstellen Sie einen neuen Torrent, um eine Datei zu teilen."
-#: plinth/modules/ikiwiki/__init__.py:41 plinth/modules/ikiwiki/manifest.py:24
-msgid "ikiwiki"
-msgstr "ikiwiki"
-
-#: plinth/modules/ikiwiki/__init__.py:45
-msgid "Wiki and Blog"
-msgstr "Wiki und Blog"
-
-#: plinth/modules/ikiwiki/__init__.py:48
+#: plinth/modules/ikiwiki/__init__.py:27
msgid ""
"ikiwiki is a simple wiki and blog application. It supports several "
"lightweight markup languages, including Markdown, and common blogging "
@@ -2257,7 +2286,7 @@ msgstr ""
"einfache Markup-Sprachen, einschließlich Markdown, und gemeinsame Blogging-"
"Funktionalität wie Kommentare und RSS-Feeds."
-#: plinth/modules/ikiwiki/__init__.py:52
+#: plinth/modules/ikiwiki/__init__.py:31
#, python-brace-format
msgid ""
"Only {box_name} users in the admin group can create and "
@@ -2271,54 +2300,56 @@ msgstr ""
"\"{users_url}\">Benutzerkonfiguration können diese Rechte geändert oder "
"neue Benutzer angelegt werden."
-#: plinth/modules/ikiwiki/__init__.py:62
+#: plinth/modules/ikiwiki/__init__.py:39
msgid "View and edit wiki applications"
msgstr "Wiki-Anwendungen ansehen und bearbeiten"
-#: plinth/modules/ikiwiki/forms.py:27
-#: plinth/modules/networks/templates/connection_show.html:98
-#: plinth/modules/storage/templates/storage.html:43
-msgid "Type"
-msgstr "Typ"
+#: plinth/modules/ikiwiki/__init__.py:53 plinth/modules/ikiwiki/manifest.py:9
+msgid "ikiwiki"
+msgstr "ikiwiki"
-#: plinth/modules/ikiwiki/forms.py:32
+#: plinth/modules/ikiwiki/__init__.py:54
+msgid "Wiki and Blog"
+msgstr "Wiki und Blog"
+
+#: plinth/modules/ikiwiki/forms.py:17
msgid "Admin Account Name"
msgstr "Admin-Konto-Name"
-#: plinth/modules/ikiwiki/forms.py:34
+#: plinth/modules/ikiwiki/forms.py:19
msgid "Admin Account Password"
msgstr "Admin-Konto-Passwort"
-#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:27
+#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:12
msgid "Manage Wikis and Blogs"
msgstr "Wikis und Blogs verwalten"
-#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:31
-#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:33
-#: plinth/modules/ikiwiki/templates/ikiwiki_create.html:25
+#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:16
+#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:18
+#: plinth/modules/ikiwiki/templates/ikiwiki_create.html:10
msgid "Create Wiki or Blog"
msgstr "Wiki oder Blog anlegen"
-#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:40
+#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:25
msgid "No wikis or blogs available."
msgstr "Keine Wikis oder Blogs verfügbar."
-#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:48
+#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:33
#, python-format
msgid "Delete site %(site)s"
msgstr "Seite %(site)s löschen"
-#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:55
+#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:40
#, python-format
msgid "Go to site %(site)s"
msgstr "Gehe zu Seite %(site)s"
-#: plinth/modules/ikiwiki/templates/ikiwiki_delete.html:27
+#: plinth/modules/ikiwiki/templates/ikiwiki_delete.html:12
#, python-format
msgid "Delete Wiki or Blog %(name)s"
msgstr "Wiki oder Blog %(name)s löschen"
-#: plinth/modules/ikiwiki/templates/ikiwiki_delete.html:33
+#: plinth/modules/ikiwiki/templates/ikiwiki_delete.html:18
msgid ""
"This action will remove all the posts, pages and comments including revision "
"history. Delete this wiki or blog permanently?"
@@ -2326,49 +2357,41 @@ msgstr ""
"Diese Aktion wird alle Posts, Seiten und Kommentare einschließlich der "
"Historie löschen. Dieses Wiki oder den Blog dauerhaft löschen?"
-#: plinth/modules/ikiwiki/views.py:96
+#: plinth/modules/ikiwiki/views.py:73
#, python-brace-format
msgid "Created wiki {name}."
msgstr "Wiki {name} angelegt."
-#: plinth/modules/ikiwiki/views.py:99
+#: plinth/modules/ikiwiki/views.py:76
#, python-brace-format
msgid "Could not create wiki: {error}"
msgstr "Wiki konnte nicht angelegt werden: {error}"
-#: plinth/modules/ikiwiki/views.py:109
+#: plinth/modules/ikiwiki/views.py:86
#, python-brace-format
msgid "Created blog {name}."
msgstr "Blog {name} angelegt."
-#: plinth/modules/ikiwiki/views.py:112
+#: plinth/modules/ikiwiki/views.py:89
#, python-brace-format
msgid "Could not create blog: {error}"
msgstr "Blog konnte nicht angelegt werden: {error}"
-#: plinth/modules/ikiwiki/views.py:127
+#: plinth/modules/ikiwiki/views.py:104
#, python-brace-format
msgid "{title} deleted."
msgstr "{title} gelöscht."
-#: plinth/modules/ikiwiki/views.py:131
+#: plinth/modules/ikiwiki/views.py:108
#, python-brace-format
msgid "Could not delete {title}: {error}"
msgstr "{title} konnte nicht gelöscht werden: {error}"
-#: plinth/modules/infinoted/__init__.py:42
-msgid "infinoted"
-msgstr "infinoted"
-
-#: plinth/modules/infinoted/__init__.py:46
-msgid "Gobby Server"
-msgstr "Gobby-Server"
-
-#: plinth/modules/infinoted/__init__.py:49
+#: plinth/modules/infinoted/__init__.py:26
msgid "infinoted is a server for Gobby, a collaborative text editor."
msgstr "infinoted ist ein Server für Gobby, den kollaborativen Text-Editor."
-#: plinth/modules/infinoted/__init__.py:51
+#: plinth/modules/infinoted/__init__.py:28
#, python-brace-format
msgid ""
"To use it, download Gobby, desktop "
@@ -2379,15 +2402,23 @@ msgstr ""
"Client herunterladen und installieren. Dann Gobby starten und „Mit "
"Server verbinden“ auswählen und den Domainnamen Ihrer {box_name} eingeben."
-#: plinth/modules/infinoted/manifest.py:27
+#: plinth/modules/infinoted/__init__.py:48
+msgid "infinoted"
+msgstr "infinoted"
+
+#: plinth/modules/infinoted/__init__.py:49
+msgid "Gobby Server"
+msgstr "Gobby-Server"
+
+#: plinth/modules/infinoted/manifest.py:12
msgid "Gobby"
msgstr "Gobby"
-#: plinth/modules/infinoted/manifest.py:29
+#: plinth/modules/infinoted/manifest.py:14
msgid "Gobby is a collaborative text editor"
msgstr "Gobby ist ein kollaborativer Texteditor"
-#: plinth/modules/infinoted/manifest.py:32
+#: plinth/modules/infinoted/manifest.py:17
#, python-brace-format
msgid ""
"Start Gobby and select \"Connect to Server\" and enter your {box_name}'s "
@@ -2396,15 +2427,7 @@ msgstr ""
"Gobby starten und „Mit Server verbinden“ auswählen und den Domainnamen Ihrer "
"FreedomBox {box_name} eingeben."
-#: plinth/modules/jsxc/__init__.py:36 plinth/modules/jsxc/manifest.py:25
-msgid "JSXC"
-msgstr "JSXC"
-
-#: plinth/modules/jsxc/__init__.py:40
-msgid "Chat Client"
-msgstr "Chatclient"
-
-#: plinth/modules/jsxc/__init__.py:43
+#: plinth/modules/jsxc/__init__.py:22
msgid ""
"JSXC is a web client for XMPP. Typically it is used with an XMPP server "
"running locally."
@@ -2412,20 +2435,20 @@ msgstr ""
"JSXC ist ein XMPP-Webclient. Er wird meist mit einem lokalen XMPP-Server "
"genutzt."
-#: plinth/modules/jsxc/templates/jsxc_launch.html:140
-#: plinth/templates/base.html:253
+#: plinth/modules/jsxc/__init__.py:40 plinth/modules/jsxc/manifest.py:10
+msgid "JSXC"
+msgstr "JSXC"
+
+#: plinth/modules/jsxc/__init__.py:41
+msgid "Chat Client"
+msgstr "Chatclient"
+
+#: plinth/modules/jsxc/templates/jsxc_launch.html:125
+#: plinth/templates/base.html:238
msgid "JavaScript license information"
msgstr "JavaScript-Lizenzinformation"
-#: plinth/modules/letsencrypt/__init__.py:48
-msgid "Let's Encrypt"
-msgstr "Let's Encrypt"
-
-#: plinth/modules/letsencrypt/__init__.py:50
-msgid "Certificates"
-msgstr "Zertifikate"
-
-#: plinth/modules/letsencrypt/__init__.py:54
+#: plinth/modules/letsencrypt/__init__.py:35
#, python-brace-format
msgid ""
"A digital certificate allows users of a web service to verify the identity "
@@ -2441,7 +2464,7 @@ msgstr ""
"Zertifizierungsstelle Let's Encrypt nachweist, der Inhaber einer Domain zu "
"sein."
-#: plinth/modules/letsencrypt/__init__.py:60
+#: plinth/modules/letsencrypt/__init__.py:41
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 "
@@ -2455,73 +2478,81 @@ msgstr ""
"akzeptieren Sie die Let's "
"Encrypt Vetragsvereinbarungen vor der Verwendung dieses Dienstes."
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:44
+#: plinth/modules/letsencrypt/__init__.py:65
+msgid "Let's Encrypt"
+msgstr "Let's Encrypt"
+
+#: plinth/modules/letsencrypt/__init__.py:66
+msgid "Certificates"
+msgstr "Zertifikate"
+
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:29
msgid "Domain"
msgstr "Domain"
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:45
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:30
msgid "Certificate Status"
msgstr "Zertifikatstatus"
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:46
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:31
msgid "Website Security"
msgstr "Webseiten-Sicherheit"
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:47
-#: plinth/modules/storage/templates/storage.html:45
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:32
+#: plinth/modules/storage/templates/storage.html:30
msgid "Actions"
msgstr "Aktionen"
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:57
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:42
#, python-format
msgid "Valid, expires on %(expiry_date)s"
msgstr "Gültig, verfällt am %(expiry_date)s"
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:64
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:49
msgid "Revoked"
msgstr "Widerrufen"
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:68
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:53
#, python-format
msgid "Expired on %(expiry_date)s"
msgstr "Verfallen am %(expiry_date)s"
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:72
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:57
msgid "Invalid test certificate"
msgstr "Ungültiges Testzertifikat"
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:76
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:61
#, python-format
msgid "Invalid (%(reason)s)"
msgstr "Ungültig (%(reason)s)"
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:83
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:68
msgid "No certificate"
msgstr "Kein Zertifikat"
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:100
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:85
msgid "Re-obtain"
msgstr "Wieder beziehen"
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:106
-#: plinth/modules/networks/templates/connection_show.html:63
-#: plinth/modules/samba/templates/samba.html:142
-#: plinth/modules/wireguard/templates/wireguard_delete_client.html:39
-#: plinth/modules/wireguard/templates/wireguard_delete_server.html:48
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:88
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:89
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:91
+#: plinth/modules/networks/templates/connection_show.html:48
+#: plinth/modules/samba/templates/samba.html:127
+#: plinth/modules/wireguard/templates/wireguard_delete_client.html:24
+#: plinth/modules/wireguard/templates/wireguard_delete_server.html:33
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:73
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:74
msgid "Delete"
msgstr "Löschen"
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:113
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:98
msgid "Revoke"
msgstr "Widerrufen"
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:121
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:106
msgid "Obtain"
msgstr "Beziehen"
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:132
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:117
#, python-format
msgid ""
"No domains have been configured. Configure "
@@ -2530,7 +2561,7 @@ msgstr ""
"Es wurden keine Domains konfiguriert. Um Zertifikate erhalten zu können, "
"müssen Domains konfiguriert werden."
-#: plinth/modules/letsencrypt/views.py:58
+#: plinth/modules/letsencrypt/views.py:41
#, python-brace-format
msgid ""
"Certificate successfully revoked for domain {domain}.This may take a few "
@@ -2539,38 +2570,34 @@ msgstr ""
"Zertifikat erfolgreich widerrufen für Domain {domain}. Es kann einige "
"Momente dauern, bis dies in Kraft tritt."
-#: plinth/modules/letsencrypt/views.py:64
+#: plinth/modules/letsencrypt/views.py:47
#, 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:60
#: plinth/modules/letsencrypt/views.py:77
-#: plinth/modules/letsencrypt/views.py:94
#, python-brace-format
msgid "Certificate successfully obtained for domain {domain}"
msgstr "Zertifikat erfolgreich bezogen für Domain {domain}"
+#: plinth/modules/letsencrypt/views.py:65
#: plinth/modules/letsencrypt/views.py:82
-#: plinth/modules/letsencrypt/views.py:99
#, 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:111
+#: plinth/modules/letsencrypt/views.py:94
#, python-brace-format
msgid "Certificate successfully deleted for domain {domain}"
msgstr "Zertifikat erfolgreich widerrufen für Domain {domain}"
-#: plinth/modules/letsencrypt/views.py:116
+#: plinth/modules/letsencrypt/views.py:99
#, 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:48
-msgid "Matrix Synapse"
-msgstr "Matrix Synapse"
-
-#: plinth/modules/matrixsynapse/__init__.py:55
+#: plinth/modules/matrixsynapse/__init__.py:34
msgid ""
"Matrix is an new "
"ecosystem for open, federated instant messaging and VoIP. Synapse is a "
@@ -2588,7 +2615,7 @@ msgstr ""
"zwischen den Servern mit Nutzerkonten auf einem beliebigen anderen Server "
"kommunizieren."
-#: plinth/modules/matrixsynapse/__init__.py:62
+#: plinth/modules/matrixsynapse/__init__.py:41
msgid ""
"To communicate, you can use the available clients for mobile, desktop and the web. Riot wird "
"empfohlen."
-#: plinth/modules/matrixsynapse/forms.py:29
+#: plinth/modules/matrixsynapse/__init__.py:66
+msgid "Matrix Synapse"
+msgstr "Matrix Synapse"
+
+#: plinth/modules/matrixsynapse/forms.py:14
msgid "Enable Public Registration"
msgstr "Öffentliche Registrierung aktivieren"
-#: plinth/modules/matrixsynapse/forms.py:30
+#: plinth/modules/matrixsynapse/forms.py:15
msgid ""
"Enabling public registration means that anyone on the Internet can register "
"a new account on your Matrix server. Disable this if you only want existing "
@@ -2614,11 +2645,11 @@ msgstr ""
"Deaktivieren Sie diese Option, wenn Sie ausschließlich bereits existierende "
"Benutzer zulassen möchten."
-#: plinth/modules/matrixsynapse/manifest.py:28
+#: plinth/modules/matrixsynapse/manifest.py:13
msgid "Riot"
msgstr "Riot"
-#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:33
+#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:18
msgid ""
"Matrix service needs to be configured for a domain. Users on other Matrix "
"servers will be able to reach users on this server using this domain name. "
@@ -2629,7 +2660,7 @@ msgstr ""
"erreichen. Matrix-Nutzer-IDs erscheinen als @Benutzername:Domainname"
"em>."
-#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:41
+#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:26
msgid ""
"\n"
" Warning! Changing the domain name after the initial\n"
@@ -2641,7 +2672,7 @@ msgstr ""
"Konfiguration wird nicht unterstützt.\n"
" "
-#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:50
+#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:35
#, python-format
msgid ""
"No domain(s) are available. Configure at "
@@ -2651,7 +2682,7 @@ msgstr ""
"\">Konfigurieren Sie mindestens eine Domain, um Matrix Synapse nutzen zu "
"können."
-#: plinth/modules/matrixsynapse/templates/matrix-synapse.html:29
+#: plinth/modules/matrixsynapse/templates/matrix-synapse.html:14
#, python-format
msgid ""
"The Matrix server domain is set to %(domain_name)s. User IDs will "
@@ -2662,7 +2693,7 @@ msgstr ""
"IDs erscheinen als Nutzername:%(domain_name)s. Änderungen der "
"Domain nach der ersten Konfiguration werden derzeit nicht unterstützt."
-#: plinth/modules/matrixsynapse/templates/matrix-synapse.html:36
+#: plinth/modules/matrixsynapse/templates/matrix-synapse.html:21
msgid ""
"New users can be registered from any client if public registration is "
"enabled."
@@ -2670,7 +2701,7 @@ msgstr ""
"Neue Nutzer können von beliebigen Geräten registriert werden, wenn "
"öffentliche Registrierung aktiviert ist."
-#: plinth/modules/matrixsynapse/templates/matrix-synapse.html:45
+#: plinth/modules/matrixsynapse/templates/matrix-synapse.html:30
#, python-format
msgid ""
"The configured domain name is using a self-signed certificate. Federation "
@@ -2682,24 +2713,15 @@ msgstr ""
"Zertifikat. Bitte gehen Sie zu Let's "
"Encrypt, um eines zu beziehen."
-#: plinth/modules/matrixsynapse/views.py:121
+#: plinth/modules/matrixsynapse/views.py:98
msgid "Public registration enabled"
msgstr "Öffentliche Registrierung aktiviert"
-#: plinth/modules/matrixsynapse/views.py:126
+#: plinth/modules/matrixsynapse/views.py:103
msgid "Public registration disabled"
msgstr "Öffentliche Registrierung deaktiviert"
-#: plinth/modules/mediawiki/__init__.py:40
-#: plinth/modules/mediawiki/manifest.py:24
-msgid "MediaWiki"
-msgstr "MediaWiki"
-
-#: plinth/modules/mediawiki/__init__.py:44 plinth/templates/index.html:139
-msgid "Wiki"
-msgstr "Wiki"
-
-#: plinth/modules/mediawiki/__init__.py:47
+#: plinth/modules/mediawiki/__init__.py:26
msgid ""
"MediaWiki is the wiki engine that powers Wikipedia and other WikiMedia "
"projects. A wiki engine is a program for creating a collaboratively edited "
@@ -2712,7 +2734,7 @@ msgstr ""
"nutzen, um eine Wiki-Webseite anzubieten, um Notizen zu schreiben oder um "
"mit Freunden an einem Projekt zusammen zu arbeiten."
-#: plinth/modules/mediawiki/__init__.py:51
+#: plinth/modules/mediawiki/__init__.py:30
msgid ""
"This MediaWiki instance comes with a randomly generated administrator "
"password. You can set a new password in the \"Configuration\" section and "
@@ -2727,7 +2749,7 @@ msgstr ""
"Seite Spezial: Konto-"
"Erstellen nutzen."
-#: plinth/modules/mediawiki/__init__.py:57
+#: plinth/modules/mediawiki/__init__.py:36
msgid ""
"Anyone with a link to this wiki can read it. Only users that are logged in "
"can make changes to the content."
@@ -2735,11 +2757,20 @@ msgstr ""
"Alle mit einem Link zu diesem Wiki können es lesen. Ausschließlich "
"angemeldete Nutzer können den Inhalt verändern."
-#: plinth/modules/mediawiki/forms.py:42
+#: plinth/modules/mediawiki/__init__.py:54
+#: plinth/modules/mediawiki/manifest.py:9
+msgid "MediaWiki"
+msgstr "MediaWiki"
+
+#: plinth/modules/mediawiki/__init__.py:55 plinth/templates/index.html:124
+msgid "Wiki"
+msgstr "Wiki"
+
+#: plinth/modules/mediawiki/forms.py:27
msgid "Administrator Password"
msgstr "Administrator-Passwort"
-#: plinth/modules/mediawiki/forms.py:43
+#: plinth/modules/mediawiki/forms.py:28
msgid ""
"Set a new password for MediaWiki's administrator account (admin). Leave this "
"field blank to keep the current password."
@@ -2747,11 +2778,11 @@ msgstr ""
"Geben Sie ein neues Passwort für den MediaWiki-Administrator ein (admin). "
"Lassen Sie das Feld leer, bleibt das derzeitige Passwort bestehen."
-#: plinth/modules/mediawiki/forms.py:48
+#: plinth/modules/mediawiki/forms.py:33
msgid "Enable public registrations"
msgstr "Öffentliche Registrierung aktivieren"
-#: plinth/modules/mediawiki/forms.py:49
+#: plinth/modules/mediawiki/forms.py:34
msgid ""
"If enabled, anyone on the internet will be able to create an account on your "
"MediaWiki instance."
@@ -2759,11 +2790,11 @@ msgstr ""
"Falls aktiviert, kann jeder im Internet ein Nutzerkonto für Ihre MediaWiki-"
"Instanz anlegen."
-#: plinth/modules/mediawiki/forms.py:53
+#: plinth/modules/mediawiki/forms.py:38
msgid "Enable private mode"
msgstr "Privaten Modus einschalten"
-#: plinth/modules/mediawiki/forms.py:54
+#: plinth/modules/mediawiki/forms.py:39
msgid ""
"If enabled, access will be restricted. Only people who have accounts can "
"read/write to the wiki. Public registrations will also be disabled."
@@ -2772,11 +2803,11 @@ msgstr ""
"können das Wiki lesen oder ändern. Außerdem wird die öffentliche "
"Registrierung deaktiviert."
-#: plinth/modules/mediawiki/forms.py:59
+#: plinth/modules/mediawiki/forms.py:44
msgid "Default Skin"
msgstr "Standard Thema"
-#: plinth/modules/mediawiki/forms.py:60
+#: plinth/modules/mediawiki/forms.py:45
msgid ""
"Choose a default skin for your MediaWiki installation. Users have the option "
"to select their preferred skin."
@@ -2784,40 +2815,31 @@ msgstr ""
"Wählen Sie eine Standard-Thema für Ihre MediaWiki-Installation. Benutzer "
"haben die Möglichkeit, ihr bevorzugtes Thema auszuwählen."
-#: plinth/modules/mediawiki/views.py:74
+#: plinth/modules/mediawiki/views.py:54
msgid "Password updated"
msgstr "Passwort geändert"
-#: plinth/modules/mediawiki/views.py:93
+#: plinth/modules/mediawiki/views.py:73
msgid "Public registrations enabled"
msgstr "Öffentliche Registrierung aktiviert"
-#: plinth/modules/mediawiki/views.py:102
+#: plinth/modules/mediawiki/views.py:82
msgid "Public registrations disabled"
msgstr "Öffentliche Registrierung deaktiviert"
-#: plinth/modules/mediawiki/views.py:107
+#: plinth/modules/mediawiki/views.py:87
msgid "Private mode enabled"
msgstr "Privater Modus aktiviert"
-#: plinth/modules/mediawiki/views.py:114
+#: plinth/modules/mediawiki/views.py:94
msgid "Private mode disabled"
msgstr "Privater Modus ausgeschaltet"
-#: plinth/modules/mediawiki/views.py:122
+#: plinth/modules/mediawiki/views.py:102
msgid "Default skin changed"
msgstr "Standard-Thema geändert"
-#: plinth/modules/minetest/__init__.py:50
-#: plinth/modules/minetest/manifest.py:25
-msgid "Minetest"
-msgstr "Minetest"
-
-#: plinth/modules/minetest/__init__.py:54
-msgid "Block Sandbox"
-msgstr "Block-Sandkasten"
-
-#: plinth/modules/minetest/__init__.py:58
+#: plinth/modules/minetest/__init__.py:37
#, python-brace-format
msgid ""
"Minetest is a multiplayer infinite-world block sandbox. This module enables "
@@ -2830,11 +2852,20 @@ msgstr ""
"Standardport (30000). Um auf dem Server zu spielen, wird ein Minetest-Client benötigt."
-#: plinth/modules/minetest/forms.py:30
+#: plinth/modules/minetest/__init__.py:63
+#: plinth/modules/minetest/manifest.py:10
+msgid "Minetest"
+msgstr "Minetest"
+
+#: plinth/modules/minetest/__init__.py:64
+msgid "Block Sandbox"
+msgstr "Block-Sandkasten"
+
+#: plinth/modules/minetest/forms.py:15
msgid "Maximum number of players"
msgstr "Maximale Spielerzahl"
-#: plinth/modules/minetest/forms.py:32
+#: plinth/modules/minetest/forms.py:17
msgid ""
"You can change the maximum number of players playing minetest at a single "
"instance of time."
@@ -2842,11 +2873,11 @@ msgstr ""
"Sie können die maximale Anzahl der Spieler ändern, die Minetest gleichzeitig "
"spielen können."
-#: plinth/modules/minetest/forms.py:36
+#: plinth/modules/minetest/forms.py:21
msgid "Enable creative mode"
msgstr "Kreativ-Modus einschalten"
-#: plinth/modules/minetest/forms.py:37
+#: plinth/modules/minetest/forms.py:22
msgid ""
"Creative mode changes the rules of the game to make it more suitable for "
"creative gameplay, rather than challenging \"survival\" gameplay."
@@ -2854,57 +2885,53 @@ msgstr ""
"Kreativ-Modus ändert die Regeln des Spiels, um es besser geeignet für "
"kreatives Spielen zu machen, anstatt anspruchsvolles \"Survival\"-Spielen."
-#: plinth/modules/minetest/forms.py:42
+#: plinth/modules/minetest/forms.py:27
msgid "Enable PVP"
msgstr "Spieler-gegen-Spieler einschalten"
-#: plinth/modules/minetest/forms.py:43
+#: plinth/modules/minetest/forms.py:28
msgid "Enabling Player Vs Player will allow players to damage other players."
msgstr ""
"Wenn Sie Spieler-gegen-Spieler aktivieren, können sich Spieler gegenseitig "
"schaden."
-#: plinth/modules/minetest/forms.py:47
+#: plinth/modules/minetest/forms.py:32
msgid "Enable damage"
msgstr "Schaden einschalten"
-#: plinth/modules/minetest/forms.py:48
+#: plinth/modules/minetest/forms.py:33
msgid "When disabled, players cannot die or receive damage of any kind."
msgstr ""
"Wenn deaktiviert, können Spieler weder sterben noch irgendwelche Schäden "
"erleiden."
-#: plinth/modules/minetest/templates/minetest.html:33
-#: plinth/modules/networks/forms.py:66 plinth/modules/networks/forms.py:97
+#: plinth/modules/minetest/templates/minetest.html:18
+#: plinth/modules/networks/forms.py:49 plinth/modules/networks/forms.py:79
msgid "Address"
msgstr "Adresse"
-#: plinth/modules/minetest/templates/minetest.html:34
-#: plinth/modules/tor/templates/tor.html:96
+#: plinth/modules/minetest/templates/minetest.html:19
+#: plinth/modules/tor/templates/tor.html:81
msgid "Port"
msgstr "Port"
-#: plinth/modules/minetest/views.py:70
+#: plinth/modules/minetest/views.py:50
msgid "Maximum players configuration updated"
msgstr "Einstellung für Maximale Spielerzahl aktualisiert"
-#: plinth/modules/minetest/views.py:77
+#: plinth/modules/minetest/views.py:57
msgid "Creative mode configuration updated"
msgstr "Kreativ-Modus-Konfiguration aktualisiert"
-#: plinth/modules/minetest/views.py:83
+#: plinth/modules/minetest/views.py:63
msgid "PVP configuration updated"
msgstr "Spieler-gegen-Spieler-Konfiguration aktualisiert"
-#: plinth/modules/minetest/views.py:89
+#: plinth/modules/minetest/views.py:69
msgid "Damage configuration updated"
msgstr "Schaden-Konfiguration aktualisiert"
-#: plinth/modules/minidlna/__init__.py:41
-msgid "Simple Media Server"
-msgstr "Einfacher Medienserver"
-
-#: plinth/modules/minidlna/__init__.py:44
+#: plinth/modules/minidlna/__init__.py:23
msgid ""
"MiniDLNA is a simple media server software, with the aim of being fully "
"compliant with DLNA/UPnP-AV clients. The MiniDNLA daemon serves media files "
@@ -2922,15 +2949,19 @@ msgstr ""
"Smartphones, Fernseher und Gaming-Systeme (wie PS3 und Xbox 360) oder "
"Anwendungen wie Totem und Kodi."
-#: plinth/modules/minidlna/__init__.py:56
+#: plinth/modules/minidlna/__init__.py:33
msgid "Media streaming server"
msgstr "Medien-Streaming-Server"
-#: plinth/modules/minidlna/forms.py:30
+#: plinth/modules/minidlna/__init__.py:47
+msgid "Simple Media Server"
+msgstr "Einfacher Medienserver"
+
+#: plinth/modules/minidlna/forms.py:15
msgid "Media Files Directory"
msgstr "Verzeichnis für Mediendateien"
-#: plinth/modules/minidlna/forms.py:31
+#: plinth/modules/minidlna/forms.py:16
msgid ""
"Directory that MiniDLNA Server will read for content. All sub-directories of "
"this will be also scanned for media files. If you change the default ensure "
@@ -2944,40 +2975,31 @@ msgstr ""
"Benutzermedienverzeichnisse (\"/ home / username /\") funktionieren "
"normalerweise."
-#: plinth/modules/minidlna/manifest.py:25
+#: plinth/modules/minidlna/manifest.py:10
msgid "vlc"
msgstr "VLC"
-#: plinth/modules/minidlna/manifest.py:64
+#: plinth/modules/minidlna/manifest.py:49
msgid "kodi"
msgstr "Kodi"
-#: plinth/modules/minidlna/manifest.py:103
+#: plinth/modules/minidlna/manifest.py:88
msgid "yaacc"
msgstr "Yaacc"
-#: plinth/modules/minidlna/manifest.py:114
+#: plinth/modules/minidlna/manifest.py:99
msgid "totem"
msgstr "Totem"
-#: plinth/modules/minidlna/views.py:57
+#: plinth/modules/minidlna/views.py:37
msgid "Specified directory does not exist."
msgstr "Das angegebene Verzeichnis ist nicht vorhanden."
-#: plinth/modules/minidlna/views.py:62
+#: plinth/modules/minidlna/views.py:42
msgid "Updated media directory"
msgstr "Aktualisiertes Medienverzeichnis"
-#: plinth/modules/mldonkey/__init__.py:40
-#: plinth/modules/mldonkey/manifest.py:27
-msgid "MLDonkey"
-msgstr "MLDonkey"
-
-#: plinth/modules/mldonkey/__init__.py:44
-msgid "Peer-to-peer File Sharing"
-msgstr "Peer-to-Peer-Datenaustausch"
-
-#: plinth/modules/mldonkey/__init__.py:47
+#: plinth/modules/mldonkey/__init__.py:26
msgid ""
"MLDonkey is a peer-to-peer file sharing application used to exchange large "
"files. It can participate in multiple peer-to-peer networks including "
@@ -2987,7 +3009,7 @@ msgstr ""
"auszutauschen. Es kann in mehreren Peer-to-Peer-Netzwerken teilnehmen, unter "
"anderem eDonkey, Kademlia, Overnet, BitTorrent und DirectConnect."
-#: plinth/modules/mldonkey/__init__.py:50
+#: plinth/modules/mldonkey/__init__.py:29
msgid ""
"Users belonging to admin and ed2k group can control it through the web "
"interface. Users in the admin group can also control it through any of the "
@@ -2998,7 +3020,7 @@ msgstr ""
"der separaten mobilen oder Desktop-Oberflächen oder über Telnet steuern. "
"Siehe Benutzerhandbuch."
-#: plinth/modules/mldonkey/__init__.py:55
+#: plinth/modules/mldonkey/__init__.py:34
#, python-brace-format
msgid ""
"On {box_name}, downloaded files can be found in /var/lib/mldonkey/ directory."
@@ -3006,24 +3028,28 @@ msgstr ""
"Auf {box_name} können heruntergeladene Dateien im Verzeichnis /var/lib/"
"mldonkey/ gefunden werden."
-#: plinth/modules/mldonkey/__init__.py:63
+#: plinth/modules/mldonkey/__init__.py:40
msgid "Download files using eDonkey applications"
msgstr "Dateien mit eDonkey herunterladen"
-#: plinth/modules/mldonkey/manifest.py:34
+#: plinth/modules/mldonkey/__init__.py:54
+#: plinth/modules/mldonkey/manifest.py:12
+msgid "MLDonkey"
+msgstr "MLDonkey"
+
+#: plinth/modules/mldonkey/__init__.py:56
+msgid "Peer-to-peer File Sharing"
+msgstr "Peer-to-Peer-Datenaustausch"
+
+#: plinth/modules/mldonkey/manifest.py:19
msgid "KMLDonkey"
msgstr "KMLDonkey"
-#: plinth/modules/mldonkey/manifest.py:46
+#: plinth/modules/mldonkey/manifest.py:31
msgid "AMLDonkey"
msgstr "AMLDonkey"
-#: plinth/modules/monkeysphere/__init__.py:32
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:26
-msgid "Monkeysphere"
-msgstr "Monkeysphere"
-
-#: plinth/modules/monkeysphere/__init__.py:35
+#: plinth/modules/monkeysphere/__init__.py:18
msgid ""
"With Monkeysphere, an OpenPGP key can be generated for each configured "
"domain serving SSH. The OpenPGP public key can then be uploaded to the "
@@ -3044,7 +3070,7 @@ msgstr ""
"die Monkeysphere-SSH-Dokumentation für weitere Details."
-#: plinth/modules/monkeysphere/__init__.py:43
+#: plinth/modules/monkeysphere/__init__.py:26
msgid ""
"Monkeysphere can also generate an OpenPGP key for each Secure Web Server "
"(HTTPS) certificate installed on this machine. The OpenPGP public key can "
@@ -3063,95 +3089,100 @@ msgstr ""
"monkeysphere.info/download/\">Monkeysphere-Webseite zur Verfügung steht, "
"installieren."
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:60
+#: plinth/modules/monkeysphere/__init__.py:50
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:11
+msgid "Monkeysphere"
+msgstr "Monkeysphere"
+
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:45
msgid "Publishing key to keyserver..."
msgstr "Schlüssel werden auf Schlüsselserver veröffentlicht …"
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:67
-#: plinth/modules/users/templates/users_delete.html:41
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:52
+#: plinth/modules/users/templates/users_delete.html:26
msgid "Cancel"
msgstr "Abbrechen"
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:75
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:55
-#: plinth/modules/tor/templates/tor.html:95
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:60
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:40
+#: plinth/modules/tor/templates/tor.html:80
msgid "Service"
msgstr "Dienst"
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:76
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:61
msgid "Domains"
msgstr "Domains"
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:77
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:31
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:62
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:16
msgid "OpenPGP Fingerprint"
msgstr "OpenPGP-Fingerabdruck"
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:86
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:58
-#: plinth/modules/names/components.py:39
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:71
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:43
+#: plinth/modules/names/components.py:24
msgid "Secure Shell"
msgstr "Secure Shell"
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:90
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:62
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:75
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:47
msgid "Other"
msgstr "Sonstiges"
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:127
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:112
#, python-format
msgid "Show details for key %(fingerprint)s"
msgstr "Details von Schlüssel %(fingerprint)s anzeigen"
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:133
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:118
msgid "-"
msgstr "-"
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:143
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:128
msgid "Import Key"
msgstr "Schlüssel importieren"
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:152
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:137
msgid "Publish Key"
msgstr "Schlüssel veröffentlichen"
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:161
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:146
msgid "Add Domains"
msgstr "Domains hinzufügen"
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:35
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:20
msgid "OpenPGP User IDs"
msgstr "OpenPGP-Benutzer-IDs"
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:39
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:24
msgid "Key Import Date"
msgstr "Schlüssel-Importdatum"
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:43
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:28
msgid "SSH Key Type"
msgstr "SSH-Schlüsseltyp"
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:47
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:32
msgid "SSH Key Size"
msgstr "SSH-Schlüssellänge"
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:51
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:36
msgid "SSH Fingerprint"
msgstr "SSH-Fingerabdruck"
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:67
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:52
msgid "Key File"
msgstr "Schlüsseldatei"
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:71
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:56
msgid "Available Domains"
msgstr "Verfügbare Domains"
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:75
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:60
msgid "Added Domains"
msgstr "Domains hinzugefügt"
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:82
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:67
msgid ""
"After this key is published to the keyservers, it can be signed using GnuPG with the following commands:"
@@ -3160,43 +3191,35 @@ msgstr ""
"GnuPG über folgende Eingaben signiert "
"werden:"
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:88
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:73
msgid "Download the key"
msgstr "Download des Schlüssels"
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:91
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:76
msgid "Sign the key"
msgstr "Schlüssel signieren"
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:94
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:79
msgid "Send the key back to the keyservers"
msgstr "Den Schlüssel zum Server zurücksenden"
-#: plinth/modules/monkeysphere/views.py:60
+#: plinth/modules/monkeysphere/views.py:43
msgid "Imported key."
msgstr "Schlüssel importiert."
-#: plinth/modules/monkeysphere/views.py:96
+#: plinth/modules/monkeysphere/views.py:79
msgid "Cancelled key publishing."
msgstr "Schlüsselveröffentlichung abgebrochen."
-#: plinth/modules/monkeysphere/views.py:147
+#: plinth/modules/monkeysphere/views.py:130
msgid "Published key to keyserver."
msgstr "Veröffentlichte Schlüssel auf dem Server."
-#: plinth/modules/monkeysphere/views.py:149
+#: plinth/modules/monkeysphere/views.py:132
msgid "Error occurred while publishing key."
msgstr "Fehler beim Veröffentlichen des Schlüssels."
-#: plinth/modules/mumble/__init__.py:33 plinth/modules/mumble/manifest.py:27
-msgid "Mumble"
-msgstr "Mumble"
-
-#: plinth/modules/mumble/__init__.py:37
-msgid "Voice Chat"
-msgstr "Sprachkonferenz"
-
-#: plinth/modules/mumble/__init__.py:44
+#: plinth/modules/mumble/__init__.py:23
msgid ""
"Mumble is an open source, low-latency, encrypted, high quality voice chat "
"software."
@@ -3204,7 +3227,7 @@ msgstr ""
"Mumble ist eine hochwertige quelloffene Software für Telefonie und Chat, mit "
"Verschlüsselung und geringer Latenz."
-#: plinth/modules/mumble/__init__.py:46
+#: plinth/modules/mumble/__init__.py:25
msgid ""
"You can connect to your Mumble server on the regular Mumble port 64738. Clients to connect to Mumble from your "
@@ -3214,11 +3237,19 @@ msgstr ""
"verbinden. Auf Mumble finden Sie "
"Anwendungen, um sich vom Desktop oder Android-Gerät mit Mumble zu verbinden."
-#: plinth/modules/mumble/forms.py:31
+#: plinth/modules/mumble/__init__.py:49 plinth/modules/mumble/manifest.py:12
+msgid "Mumble"
+msgstr "Mumble"
+
+#: plinth/modules/mumble/__init__.py:50
+msgid "Voice Chat"
+msgstr "Sprachkonferenz"
+
+#: plinth/modules/mumble/forms.py:16
msgid "Set SuperUser Password"
msgstr "SuperUser-Kennwort festlegen"
-#: plinth/modules/mumble/forms.py:34
+#: plinth/modules/mumble/forms.py:19
msgid ""
"Optional. Leave this field blank to keep the current password. SuperUser "
"password can be used to manage permissions in Mumble."
@@ -3227,23 +3258,19 @@ msgstr ""
"beizubehalten. SuperUser-Kennwort kann verwendet werden, um Berechtigungen "
"in Mumble zu verwalten."
-#: plinth/modules/mumble/manifest.py:52
+#: plinth/modules/mumble/manifest.py:37
msgid "Plumble"
msgstr "Plumble"
-#: plinth/modules/mumble/manifest.py:66
+#: plinth/modules/mumble/manifest.py:51
msgid "Mumblefly"
msgstr "Mumblefly"
-#: plinth/modules/mumble/views.py:50
+#: plinth/modules/mumble/views.py:29
msgid "SuperUser password successfully updated."
msgstr "SuperUser-Kennwort wurde erfolgreich aktualisiert."
-#: plinth/modules/names/__init__.py:37
-msgid "Name Services"
-msgstr "Namen-Dienste"
-
-#: plinth/modules/names/__init__.py:45
+#: plinth/modules/names/__init__.py:26
#, python-brace-format
msgid ""
"Name Services provides an overview of the ways {box_name} can be reached "
@@ -3256,19 +3283,19 @@ msgstr ""
"jeden Namens-Typ wird angezeigt, ob die HTTP-, HTTPS- und SSH-Dienste für "
"eingehende Verbindungen eingeschaltet oder ausgeschaltet ist."
-#: plinth/modules/names/components.py:27
+#: plinth/modules/names/__init__.py:46
+msgid "Name Services"
+msgstr "Namen-Dienste"
+
+#: plinth/modules/names/components.py:12
msgid "All"
msgstr "Alle"
-#: plinth/modules/names/components.py:31 plinth/modules/names/components.py:35
+#: plinth/modules/names/components.py:16 plinth/modules/names/components.py:20
msgid "All web apps"
msgstr "Alle Webanwendungen"
-#: plinth/modules/networks/__init__.py:42
-msgid "Networks"
-msgstr "Netzwerke"
-
-#: plinth/modules/networks/__init__.py:45
+#: plinth/modules/networks/__init__.py:35
msgid ""
"Configure network devices. Connect to the Internet via Ethernet, Wi-Fi or "
"PPPoE. Share that connection with other devices on the network."
@@ -3277,7 +3304,7 @@ msgstr ""
"eine Verbindung zum Internet her. Teilen Sie diese Verbindung mit anderen "
"Geräten im Netzwerk."
-#: plinth/modules/networks/__init__.py:47
+#: plinth/modules/networks/__init__.py:37
msgid ""
"Devices administered through other methods may not be available for "
"configuration here."
@@ -3285,32 +3312,36 @@ msgstr ""
"Geräte die mit anderen Methoden verwaltet werden, können hier möglicherweise "
"nicht konfiguriert werden."
-#: plinth/modules/networks/__init__.py:156
+#: plinth/modules/networks/__init__.py:58
+msgid "Networks"
+msgstr "Netzwerke"
+
+#: plinth/modules/networks/__init__.py:151
#, python-brace-format
msgid "Using DNSSEC on IPv{kind}"
msgstr "DNSSEC wird auf IPv{kind} verwendet"
-#: plinth/modules/networks/forms.py:32
+#: plinth/modules/networks/forms.py:16
msgid "Connection Type"
msgstr "Verbindungstyp"
-#: plinth/modules/networks/forms.py:44
+#: plinth/modules/networks/forms.py:28
msgid "Connection Name"
msgstr "Verbindungsname"
-#: plinth/modules/networks/forms.py:46
+#: plinth/modules/networks/forms.py:30
msgid "Network Interface"
msgstr "Netzwerk-Schnittstelle"
-#: plinth/modules/networks/forms.py:47
+#: plinth/modules/networks/forms.py:31
msgid "The network device that this connection should be bound to."
msgstr "Das Netzwerkgerät, an das diese Verbindung gebunden sein sollte."
-#: plinth/modules/networks/forms.py:50
+#: plinth/modules/networks/forms.py:34
msgid "Firewall Zone"
msgstr "Firewall-Zone"
-#: plinth/modules/networks/forms.py:51
+#: plinth/modules/networks/forms.py:35
msgid ""
"The firewall zone will control which services are available over this "
"interfaces. Select Internal only for trusted networks."
@@ -3318,21 +3349,21 @@ msgstr ""
"Die Firewall-Zone entscheidet, welche Dienste über diese Schnittstellen zur "
"Verfügung stehen. Wählen Sie „Intern“ nur für vertrauenswürdige Netzwerke."
-#: plinth/modules/networks/forms.py:54
-#: plinth/modules/networks/templates/connections_diagram.html:78
+#: plinth/modules/networks/forms.py:38
+#: plinth/modules/networks/templates/connections_diagram.html:63
msgid "External"
msgstr "Extern"
-#: plinth/modules/networks/forms.py:54
-#: plinth/modules/networks/templates/connections_diagram.html:107
+#: plinth/modules/networks/forms.py:38
+#: plinth/modules/networks/templates/connections_diagram.html:92
msgid "Internal"
msgstr "Intern"
-#: plinth/modules/networks/forms.py:56
+#: plinth/modules/networks/forms.py:40
msgid "IPv4 Addressing Method"
msgstr "IPv4-Adressierungsmethode"
-#: plinth/modules/networks/forms.py:58
+#: plinth/modules/networks/forms.py:41
#, python-brace-format
msgid ""
"\"Automatic\" method will make {box_name} acquire configuration from this "
@@ -3344,19 +3375,19 @@ msgstr ""
"{box_name} wie einen Router arbeiten, die Clients dieses Netzwerks "
"konfigurieren und die Internetverbindung teilen."
-#: plinth/modules/networks/forms.py:63
+#: plinth/modules/networks/forms.py:46
msgid "Automatic (DHCP)"
msgstr "Automatisch (DHCP)"
-#: plinth/modules/networks/forms.py:63
+#: plinth/modules/networks/forms.py:46
msgid "Shared"
msgstr "Geteilt"
-#: plinth/modules/networks/forms.py:69
+#: plinth/modules/networks/forms.py:52
msgid "Netmask"
msgstr "Netzmaske"
-#: plinth/modules/networks/forms.py:70
+#: plinth/modules/networks/forms.py:53
msgid ""
"Optional value. If left blank, a default netmask based on the address will "
"be used."
@@ -3364,21 +3395,21 @@ msgstr ""
"Optionaler Wert. Bleibt dieser leer, wird eine Maske basierend auf der "
"Adresse verwendet."
-#: plinth/modules/networks/forms.py:74 plinth/modules/networks/forms.py:104
-#: plinth/modules/networks/templates/connection_show.html:202
-#: plinth/modules/networks/templates/connection_show.html:241
+#: plinth/modules/networks/forms.py:57 plinth/modules/networks/forms.py:86
+#: plinth/modules/networks/templates/connection_show.html:187
+#: plinth/modules/networks/templates/connection_show.html:226
msgid "Gateway"
msgstr "Gateway"
-#: plinth/modules/networks/forms.py:74 plinth/modules/networks/forms.py:104
+#: plinth/modules/networks/forms.py:57 plinth/modules/networks/forms.py:86
msgid "Optional value."
msgstr "Optionaler Wert."
-#: plinth/modules/networks/forms.py:77 plinth/modules/networks/forms.py:107
+#: plinth/modules/networks/forms.py:60 plinth/modules/networks/forms.py:89
msgid "DNS Server"
msgstr "DNS-Server"
-#: plinth/modules/networks/forms.py:78
+#: plinth/modules/networks/forms.py:61
msgid ""
"Optional value. If this value is given and IPv4 addressing method is "
"\"Automatic\", the DNS Servers provided by a DHCP server will be ignored."
@@ -3387,11 +3418,11 @@ msgstr ""
"„Automatisch“ ist, werden die DNS-Server ignoriert, die von einem DHCP-"
"Server bereitgestellt wurden."
-#: plinth/modules/networks/forms.py:83 plinth/modules/networks/forms.py:113
+#: plinth/modules/networks/forms.py:66 plinth/modules/networks/forms.py:95
msgid "Second DNS Server"
msgstr "Zweiter DNS-Server"
-#: plinth/modules/networks/forms.py:84
+#: plinth/modules/networks/forms.py:67
msgid ""
"Optional value. If this value is given and IPv4 Addressing Method is "
"\"Automatic\", the DNS Servers provided by a DHCP server will be ignored."
@@ -3400,11 +3431,11 @@ msgstr ""
"„Automatisch“ ist, werden die DNS-Server ignoriert, die von einem DHCP-"
"Server bereitgestellt wurden."
-#: plinth/modules/networks/forms.py:89
+#: plinth/modules/networks/forms.py:72
msgid "IPv6 Addressing Method"
msgstr "IPv6-Adressierungsmethode"
-#: plinth/modules/networks/forms.py:91
+#: plinth/modules/networks/forms.py:73
#, python-brace-format
msgid ""
"\"Automatic\" methods will make {box_name} acquire configuration from this "
@@ -3413,27 +3444,27 @@ msgstr ""
"Die Methode „Automatisch“ lässt {box_name} die Konfiguration von diesem "
"Netzwerk holen und macht es zu einem Client."
-#: plinth/modules/networks/forms.py:94 plinth/modules/networks/forms.py:259
+#: plinth/modules/networks/forms.py:76 plinth/modules/networks/forms.py:241
msgid "Automatic"
msgstr "Automatisch"
-#: plinth/modules/networks/forms.py:94
+#: plinth/modules/networks/forms.py:76
msgid "Automatic, DHCP only"
msgstr "Automatisch, nur DHCP"
-#: plinth/modules/networks/forms.py:95
+#: plinth/modules/networks/forms.py:77
msgid "Ignore"
msgstr "Ignorieren"
-#: plinth/modules/networks/forms.py:99
+#: plinth/modules/networks/forms.py:81
msgid "Prefix"
msgstr "Präfix"
-#: plinth/modules/networks/forms.py:100
+#: plinth/modules/networks/forms.py:82
msgid "Value between 1 and 128."
msgstr "Wert zwischen 1 und 128."
-#: plinth/modules/networks/forms.py:108
+#: plinth/modules/networks/forms.py:90
msgid ""
"Optional value. If this value is given and IPv6 addressing method is "
"\"Automatic\", the DNS Servers provided by a DHCP server will be ignored."
@@ -3442,7 +3473,7 @@ msgstr ""
"„Automatisch“ ist, werden die DNS-Server ignoriert, die von einem DHCP-"
"Server bereitgestellt wurden."
-#: plinth/modules/networks/forms.py:114
+#: plinth/modules/networks/forms.py:96
msgid ""
"Optional value. If this value is given and IPv6 Addressing Method is "
"\"Automatic\", the DNS Servers provided by a DHCP server will be ignored."
@@ -3451,54 +3482,54 @@ msgstr ""
"„Automatisch“ ist, werden die DNS Server ignoriert, die von einem DHCP-"
"Server bereitgestellt wurden."
-#: plinth/modules/networks/forms.py:127
+#: plinth/modules/networks/forms.py:109
msgid "-- select --"
msgstr "-- auswählen --"
-#: plinth/modules/networks/forms.py:252
-#: plinth/modules/networks/templates/connection_show.html:144
+#: plinth/modules/networks/forms.py:234
+#: plinth/modules/networks/templates/connection_show.html:129
msgid "SSID"
msgstr "SSID"
-#: plinth/modules/networks/forms.py:253
+#: plinth/modules/networks/forms.py:235
msgid "The visible name of the network."
msgstr "Der sichtbare Name des Netzwerks."
-#: plinth/modules/networks/forms.py:255
-#: plinth/modules/networks/templates/connection_show.html:157
+#: plinth/modules/networks/forms.py:237
+#: plinth/modules/networks/templates/connection_show.html:142
msgid "Mode"
msgstr "Modus"
-#: plinth/modules/networks/forms.py:255
+#: plinth/modules/networks/forms.py:237
msgid "Infrastructure"
msgstr "Infrastruktur"
-#: plinth/modules/networks/forms.py:256
+#: plinth/modules/networks/forms.py:238
msgid "Access Point"
msgstr "Zugangspunkt"
-#: plinth/modules/networks/forms.py:257
+#: plinth/modules/networks/forms.py:239
msgid "Ad-hoc"
msgstr "Ad-hoc"
-#: plinth/modules/networks/forms.py:259
+#: plinth/modules/networks/forms.py:241
msgid "Frequency Band"
msgstr "Frequenzband"
-#: plinth/modules/networks/forms.py:260
+#: plinth/modules/networks/forms.py:242
msgid "A (5 GHz)"
msgstr "A (5 GHz)"
-#: plinth/modules/networks/forms.py:261
+#: plinth/modules/networks/forms.py:243
msgid "B/G (2.4 GHz)"
msgstr "B/G (2,4 GHz)"
-#: plinth/modules/networks/forms.py:263
-#: plinth/modules/networks/templates/connection_show.html:173
+#: plinth/modules/networks/forms.py:245
+#: plinth/modules/networks/templates/connection_show.html:158
msgid "Channel"
msgstr "Kanal"
-#: plinth/modules/networks/forms.py:264
+#: plinth/modules/networks/forms.py:246
msgid ""
"Optional value. Wireless channel in the selected frequency band to restrict "
"to. Blank or 0 value means automatic selection."
@@ -3506,11 +3537,11 @@ msgstr ""
"Optionaler Wert. Beschränkung auf den WLAN-Kanal in dem ausgewählten "
"Frequenzband. Leer oder 0 bedeutet automatische Auswahl."
-#: plinth/modules/networks/forms.py:269
+#: plinth/modules/networks/forms.py:251
msgid "BSSID"
msgstr "BSSID"
-#: plinth/modules/networks/forms.py:270
+#: plinth/modules/networks/forms.py:252
msgid ""
"Optional value. Unique identifier for the access point. When connecting to "
"an access point, connect only if the BSSID of the access point matches the "
@@ -3520,11 +3551,11 @@ msgstr ""
"einem Zugangspunkt ist nur zugelassen, wenn die BSSID des Zugangspunkts mit "
"diesem Wert übereinstimmt. Beispiel: 00:11:22:aa:bb:cc."
-#: plinth/modules/networks/forms.py:276
+#: plinth/modules/networks/forms.py:258
msgid "Authentication Mode"
msgstr "Authentifizierungsmodus"
-#: plinth/modules/networks/forms.py:277
+#: plinth/modules/networks/forms.py:259
msgid ""
"Select WPA if the wireless network is secured and requires clients to have "
"the password to connect."
@@ -3532,26 +3563,73 @@ msgstr ""
"Wählen Sie WPA, wenn das WLAN-Netzwerk gesichert ist und ein Passwort für "
"die Benutzung erfordert."
-#: plinth/modules/networks/forms.py:279
+#: plinth/modules/networks/forms.py:261
msgid "WPA"
msgstr "WPA"
-#: plinth/modules/networks/forms.py:279
+#: plinth/modules/networks/forms.py:261
msgid "Open"
msgstr "Offen"
+#: plinth/modules/networks/forms.py:297
+msgid "Choose your internet connection type"
+msgstr ""
+
+#: plinth/modules/networks/forms.py:301
+msgid ""
+"I have a public IP address that may change over time
imap.example.com. Für IMAP über SSL (empfohlen) geben Sie "
"im Feld Server etwas ein wie imaps://imap.example.com."
-#: plinth/modules/roundcube/__init__.py:53
+#: plinth/modules/roundcube/__init__.py:32
msgid ""
"For Gmail, username will be your Gmail address, password will be your Google "
"account password and server will be imaps://imap.gmail.com. "
@@ -4761,11 +4915,16 @@ msgstr ""
"lesssecureapps\" >https://www.google.com/settings/security/lesssecureapps"
"a>)."
-#: plinth/modules/samba/__init__.py:46
-msgid "Samba"
-msgstr "Samba"
+#: plinth/modules/roundcube/__init__.py:54
+#: plinth/modules/roundcube/manifest.py:9
+msgid "Roundcube"
+msgstr "Roundcube"
-#: plinth/modules/samba/__init__.py:53
+#: plinth/modules/roundcube/__init__.py:55
+msgid "Email Client"
+msgstr "E-Mail-Client"
+
+#: plinth/modules/samba/__init__.py:32
msgid ""
"Samba allows to share files and folders between FreedomBox and other "
"computers in your local network."
@@ -4773,7 +4932,7 @@ msgstr ""
"Samba ermöglicht das Teilen von Dateien und Ordnern zwischen der FreedomBox "
"und anderen Rechnern im lokalen Netzwerk."
-#: plinth/modules/samba/__init__.py:56
+#: plinth/modules/samba/__init__.py:35
#, python-brace-format
msgid ""
"After installation, you can choose which disks to use for sharing. Enabled "
@@ -4787,11 +4946,11 @@ msgstr ""
"Windows) oder smb://{hostname}.local (unter Linux und Mac) zugegriffen "
"werden. Es gibt drei Arten von Shares, aus denen Sie wählen können: "
-#: plinth/modules/samba/__init__.py:61
+#: plinth/modules/samba/__init__.py:40
msgid "Open share - accessible to everyone in your local network."
msgstr "Offene Freigabe - für alle in Ihrem lokalen Netzwerk zugänglich."
-#: plinth/modules/samba/__init__.py:62
+#: plinth/modules/samba/__init__.py:41
msgid ""
"Group share - accessible only to FreedomBox users who are in the freedombox-"
"share group."
@@ -4799,7 +4958,7 @@ msgstr ""
"Gruppenfreigabe - nur für FreedomBox-Benutzer zugänglich, die sich in der "
"Freedombox-Freigabegruppe befinden."
-#: plinth/modules/samba/__init__.py:64
+#: plinth/modules/samba/__init__.py:43
msgid ""
"Home share - every user in the freedombox-share group can have their own "
"private space."
@@ -4807,16 +4966,20 @@ msgstr ""
"Home Share - jeder Benutzer in der freedombox-share-Gruppe kann seinen "
"eigenen privaten Raum haben."
-#: plinth/modules/samba/__init__.py:68
+#: plinth/modules/samba/__init__.py:47
msgid "Access to the private shares"
msgstr "Zugriff auf die privaten Freigaben"
-#: plinth/modules/samba/templates/samba.html:39
-#: plinth/modules/samba/templates/samba.html:50
+#: plinth/modules/samba/__init__.py:61
+msgid "Samba"
+msgstr "Samba"
+
+#: plinth/modules/samba/templates/samba.html:24
+#: plinth/modules/samba/templates/samba.html:35
msgid "Shares"
msgstr "Freigabenamen"
-#: plinth/modules/samba/templates/samba.html:41
+#: plinth/modules/samba/templates/samba.html:26
msgid ""
"Note: Only specially created directories will be shared on selected disks, "
"not the whole disk."
@@ -4824,20 +4987,20 @@ msgstr ""
"Hinweis: Nur speziell erstellte Verzeichnisse werden auf ausgewählten "
"Datenträgern freigegeben, nicht der gesamte Datenträger."
-#: plinth/modules/samba/templates/samba.html:49
+#: plinth/modules/samba/templates/samba.html:34
msgid "Disk Name"
msgstr "Datenträgername"
-#: plinth/modules/samba/templates/samba.html:51
-#: plinth/modules/storage/templates/storage.html:44
+#: plinth/modules/samba/templates/samba.html:36
+#: plinth/modules/storage/templates/storage.html:29
msgid "Used"
msgstr "Genutzt"
-#: plinth/modules/samba/templates/samba.html:72
+#: plinth/modules/samba/templates/samba.html:57
msgid "VFAT partitions are not supported"
msgstr "VFAT-Partitionen werden nicht unterstützt"
-#: plinth/modules/samba/templates/samba.html:103
+#: plinth/modules/samba/templates/samba.html:88
#, python-format
msgid ""
"You can find additional information about disks on the storage und konfigurieren Sie den Zugriff auf die "
"Freigaben auf der Modulseite \"users."
-#: plinth/modules/samba/templates/samba.html:109
+#: plinth/modules/samba/templates/samba.html:94
msgid "Users who can currently access group and home shares"
msgstr "Benutzer, die derzeit auf Gruppen- und Home-Freigaben zugreifen können"
-#: plinth/modules/samba/templates/samba.html:113
+#: plinth/modules/samba/templates/samba.html:98
msgid ""
"Users needing to re-enter their password on the password change page to "
"access group and home shares"
@@ -4860,11 +5023,11 @@ msgstr ""
"Benutzer, die ihr Kennwort auf der Seite Kennwortänderung erneut eingeben "
"müssen, um auf Gruppen- und Home-Freigaben zuzugreifen"
-#: plinth/modules/samba/templates/samba.html:118
+#: plinth/modules/samba/templates/samba.html:103
msgid "Unavailable Shares"
msgstr "Nicht verfügbare Shares"
-#: plinth/modules/samba/templates/samba.html:120
+#: plinth/modules/samba/templates/samba.html:105
msgid ""
"Shares that are configured but the disk is not available. If the disk is "
"plugged back in, sharing will be automatically enabled."
@@ -4873,53 +5036,45 @@ msgstr ""
"Wenn der Datenträger wieder angeschlossen ist, wird die Freigabe automatisch "
"aktiviert."
-#: plinth/modules/samba/templates/samba.html:128
+#: plinth/modules/samba/templates/samba.html:113
msgid "Share name"
msgstr "Freigabename"
-#: plinth/modules/samba/templates/samba.html:129
+#: plinth/modules/samba/templates/samba.html:114
msgid "Action"
msgstr "Aktion"
-#: plinth/modules/samba/views.py:61 plinth/modules/storage/forms.py:164
+#: plinth/modules/samba/views.py:43 plinth/modules/storage/forms.py:149
msgid "Open Share"
msgstr "Open Share"
-#: plinth/modules/samba/views.py:62 plinth/modules/storage/forms.py:162
+#: plinth/modules/samba/views.py:44 plinth/modules/storage/forms.py:147
msgid "Group Share"
msgstr "Group Share"
-#: plinth/modules/samba/views.py:63
+#: plinth/modules/samba/views.py:45
msgid "Home Share"
msgstr "Home Share"
-#: plinth/modules/samba/views.py:96
+#: plinth/modules/samba/views.py:78
msgid "Share enabled."
msgstr "Freigabe aktiviert."
-#: plinth/modules/samba/views.py:101
+#: plinth/modules/samba/views.py:83
#, python-brace-format
msgid "Error enabling share: {error_message}"
msgstr "Fehler beim Aktivieren der Freigabe: {error_message}"
-#: plinth/modules/samba/views.py:106
+#: plinth/modules/samba/views.py:88
msgid "Share disabled."
msgstr "Freigabe deaktiviert."
-#: plinth/modules/samba/views.py:111
+#: plinth/modules/samba/views.py:93
#, python-brace-format
msgid "Error disabling share: {error_message}"
msgstr "Fehler beim Deaktivieren der Freigabe: {error_message}"
-#: plinth/modules/searx/__init__.py:41 plinth/modules/searx/manifest.py:24
-msgid "Searx"
-msgstr "Searx"
-
-#: plinth/modules/searx/__init__.py:45
-msgid "Web Search"
-msgstr "Websuche"
-
-#: plinth/modules/searx/__init__.py:48
+#: plinth/modules/searx/__init__.py:25
msgid ""
"Searx is a privacy-respecting Internet metasearch engine. It aggregrates and "
"displays results from multiple search engines."
@@ -4927,7 +5082,7 @@ msgstr ""
"Searx ist eine Internet-Metasuchmaschine, die die Privatsphäre respektiert. "
"Sie sammelt und zeigt Ergebnisse von mehreren Suchmaschinen an."
-#: plinth/modules/searx/__init__.py:50
+#: plinth/modules/searx/__init__.py:27
msgid ""
"Searx can be used to avoid tracking and profiling by search engines. It "
"stores no cookies by default."
@@ -4935,51 +5090,59 @@ msgstr ""
"Searx kann verwendet werden, um Nachverfolgung und Profiling durch "
"Suchmaschinen zu vermeiden. Standardmäßig werden keine Cookies gespeichert."
-#: plinth/modules/searx/__init__.py:54
+#: plinth/modules/searx/__init__.py:31
msgid "Search the web"
msgstr "Suche im Web"
-#: plinth/modules/searx/forms.py:30
+#: plinth/modules/searx/__init__.py:47 plinth/modules/searx/manifest.py:9
+msgid "Searx"
+msgstr "Searx"
+
+#: plinth/modules/searx/__init__.py:48
+msgid "Web Search"
+msgstr "Websuche"
+
+#: plinth/modules/searx/forms.py:15
msgid "Safe Search"
msgstr "Sichere Suche"
-#: plinth/modules/searx/forms.py:31
+#: plinth/modules/searx/forms.py:16
msgid "Select the default family filter to apply to your search results."
msgstr ""
"Wählen Sie den standardmäßigen Familienfilter, der auf Ihre Suchergebnisse "
"angewendet werden soll."
-#: plinth/modules/searx/forms.py:32
+#: plinth/modules/searx/forms.py:17
msgid "None"
msgstr "Keiner"
-#: plinth/modules/searx/forms.py:32
+#: plinth/modules/searx/forms.py:17
msgid "Moderate"
msgstr "Moderat"
-#: plinth/modules/searx/forms.py:32
+#: plinth/modules/searx/forms.py:17
msgid "Strict"
msgstr "Streng"
-#: plinth/modules/searx/forms.py:35
+#: plinth/modules/searx/forms.py:20
msgid "Allow Public Access"
msgstr "Öffentlichen Zugang erlauben"
-#: plinth/modules/searx/forms.py:36
+#: plinth/modules/searx/forms.py:21
msgid "Allow this application to be used by anyone who can reach it."
msgstr ""
"Erlauben, diese Anwendung von jedem nutzen zu lassen, der sie erreichen kann."
-#: plinth/modules/searx/views.py:59 plinth/modules/searx/views.py:70
-#: plinth/modules/tor/views.py:149 plinth/modules/tor/views.py:176
+#: plinth/modules/searx/views.py:39 plinth/modules/searx/views.py:50
+#: plinth/modules/tor/views.py:130 plinth/modules/tor/views.py:157
msgid "Configuration updated."
msgstr "Konfiguration aktualisiert."
-#: plinth/modules/security/forms.py:28
+#: plinth/modules/security/forms.py:13
msgid "Restrict console logins (recommended)"
msgstr "Konsolen-Logins beschränken (empfohlen)"
-#: plinth/modules/security/forms.py:29
+#: plinth/modules/security/forms.py:14
msgid ""
"When this option is enabled, only users in the \"admin\" group will be able "
"to log in to console or via SSH. Console users may be able to access some "
@@ -4990,11 +5153,11 @@ msgstr ""
"könnten möglicherweise über die Konsole auf manche Dienste ohne weitere "
"Autorisierung zugreifen."
-#: plinth/modules/security/forms.py:34
+#: plinth/modules/security/forms.py:19
msgid "Fail2Ban (recommended)"
msgstr "Fail2Ban (empfohlen)"
-#: plinth/modules/security/forms.py:35
+#: plinth/modules/security/forms.py:20
msgid ""
"When this option is enabled, Fail2Ban will limit brute force break-in "
"attempts to the SSH server and other enabled password protected internet-"
@@ -5003,17 +5166,17 @@ msgstr ""
"Falls aktiviert, begrenzt Fail2Ban automatisierte Einbruchversuche in den "
"SSH-Server und andere aktivierte, passwortgeschützte Anwendungen."
-#: plinth/modules/security/templates/security.html:26
-#: plinth/modules/security/templates/security.html:28
+#: plinth/modules/security/templates/security.html:11
+#: plinth/modules/security/templates/security.html:13
msgid "Show security report"
msgstr "Berichte über Sicherheitslücken anzeigen"
-#: plinth/modules/security/templates/security_report.html:25
-#: plinth/modules/security/views.py:87
+#: plinth/modules/security/templates/security_report.html:10
+#: plinth/modules/security/views.py:71
msgid "Security Report"
msgstr "Sicherheits-Mitteilungsbericht"
-#: plinth/modules/security/templates/security_report.html:27
+#: plinth/modules/security/templates/security_report.html:12
#, python-format
msgid ""
"The installed version of FreedomBox has %(count)s reported security "
@@ -5022,7 +5185,7 @@ msgstr ""
"Die installierte Version von FreedomBox weist %(count)s gemeldete "
"Sicherheitslücken auf."
-#: plinth/modules/security/templates/security_report.html:33
+#: plinth/modules/security/templates/security_report.html:18
msgid ""
"The following table lists the current reported number, and historical count, "
"of security vulnerabilities for each installed app."
@@ -5030,7 +5193,7 @@ msgstr ""
"In der folgenden Tabelle sind die aktuell gemeldete Anzahl und der Verlauf "
"der Sicherheitsanfälligkeiten für jede installierte App aufgeführt."
-#: plinth/modules/security/templates/security_report.html:39
+#: plinth/modules/security/templates/security_report.html:24
msgid ""
"For apps that provide services, the \"Sandboxed\" column shows whether "
"sandboxing features are in use. Sandboxing mitigates the impact of a "
@@ -5040,7 +5203,7 @@ msgstr ""
"Sandboxing-Funktionen verwendet werden. Sandboxing mildert die Auswirkungen "
"einer potenziell beschädigten App auf das übrige System."
-#: plinth/modules/security/templates/security_report.html:46
+#: plinth/modules/security/templates/security_report.html:31
msgid ""
"\"Sandbox Coverage\" is a score of how effectively the service is isolated "
"from the rest of the system. It is only displayed while the service is "
@@ -5049,64 +5212,56 @@ msgstr ""
"Die \"Sandbox-Abdeckung\" ist ein Maß dafür, wie effektiv der Dienst vom "
"Rest des Systems isoliert ist. Sie wird nur angezeigt, wenn der Dienst läuft."
-#: plinth/modules/security/templates/security_report.html:55
+#: plinth/modules/security/templates/security_report.html:40
msgid "App Name"
msgstr "Anwendungsname"
-#: plinth/modules/security/templates/security_report.html:56
+#: plinth/modules/security/templates/security_report.html:41
msgid "Current Vulnerabilities"
msgstr "Aktuelle Sicherheitslücken anzeigen"
-#: plinth/modules/security/templates/security_report.html:57
+#: plinth/modules/security/templates/security_report.html:42
msgid "Past Vulnerabilities"
msgstr "Frühere Sicherheitslücken anzeigen"
-#: plinth/modules/security/templates/security_report.html:58
+#: plinth/modules/security/templates/security_report.html:43
msgid "Sandboxed"
msgstr "Sandboxed"
-#: plinth/modules/security/templates/security_report.html:59
+#: plinth/modules/security/templates/security_report.html:44
msgid "Sandbox Coverage"
msgstr "Sandbox-Abdeckung"
-#: plinth/modules/security/templates/security_report.html:70
+#: plinth/modules/security/templates/security_report.html:55
msgid "N/A"
msgstr "N/A"
-#: plinth/modules/security/templates/security_report.html:72
+#: plinth/modules/security/templates/security_report.html:57
msgid "Yes"
msgstr "Ja"
-#: plinth/modules/security/templates/security_report.html:74
+#: plinth/modules/security/templates/security_report.html:59
msgid "No"
msgstr "Nein"
-#: plinth/modules/security/templates/security_report.html:81
+#: plinth/modules/security/templates/security_report.html:66
msgid "Not running"
msgstr "Läuft nicht"
-#: plinth/modules/security/views.py:69
+#: plinth/modules/security/views.py:53
#, python-brace-format
msgid "Error setting restricted access: {exception}"
msgstr "Fehler beim Setzen des eingeschränkten Zugriffs: {exception}"
-#: plinth/modules/security/views.py:72
+#: plinth/modules/security/views.py:56
msgid "Updated security configuration"
msgstr "Sicherheitskonfiguration aktualisiert"
-#: plinth/modules/shaarli/__init__.py:34 plinth/modules/shaarli/manifest.py:23
-msgid "Shaarli"
-msgstr "Shaarli"
-
-#: plinth/modules/shaarli/__init__.py:36
-msgid "Bookmarks"
-msgstr "Lesezeichen"
-
-#: plinth/modules/shaarli/__init__.py:39
+#: plinth/modules/shaarli/__init__.py:20
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:21
msgid ""
"When enabled, Shaarli will be available from /shaarli path on the web server. Note that Shaarli "
@@ -5118,15 +5273,15 @@ msgstr ""
"nur ein Benutzerkonto; dieses muss beim ersten Besuch der Seite eingerichtet "
"werden."
-#: plinth/modules/shadowsocks/__init__.py:35
-msgid "Shadowsocks"
-msgstr "Shadowsocks"
+#: plinth/modules/shaarli/__init__.py:39 plinth/modules/shaarli/manifest.py:8
+msgid "Shaarli"
+msgstr "Shaarli"
-#: plinth/modules/shadowsocks/__init__.py:39
-msgid "Socks5 Proxy"
-msgstr "Socks5-Proxy"
+#: plinth/modules/shaarli/__init__.py:40
+msgid "Bookmarks"
+msgstr "Lesezeichen"
-#: plinth/modules/shadowsocks/__init__.py:46
+#: plinth/modules/shadowsocks/__init__.py:25
msgid ""
"Shadowsocks is a lightweight and secure SOCKS5 proxy, designed to protect "
"your Internet traffic. It can be used to bypass Internet filtering and "
@@ -5136,7 +5291,7 @@ msgstr ""
"Internetverkehr zu schützen. Er kann verwendet werden, um Internetfilterung "
"und -zensur zu umgehen."
-#: plinth/modules/shadowsocks/__init__.py:50
+#: plinth/modules/shadowsocks/__init__.py:29
#, python-brace-format
msgid ""
"Your {box_name} can run a Shadowsocks client, that can connect to a "
@@ -5149,7 +5304,7 @@ msgstr ""
"betrieben. Lokale Geräte können sich mit diesem Proxy verbinden, und deren "
"Daten werden verschlüsselt über den Shadowsocks-Server weitergeleitet."
-#: plinth/modules/shadowsocks/__init__.py:55
+#: plinth/modules/shadowsocks/__init__.py:34
msgid ""
"To use Shadowsocks after setup, set the SOCKS5 proxy URL in your device, "
"browser or application to http://freedombox_address:1080/"
@@ -5158,40 +5313,44 @@ msgstr ""
"SOCKS5-Proxy in ihrem Gerät, Browser, oder Anwendung auf http://"
"Freedombox_Adresse:1080/"
-#: plinth/modules/shadowsocks/forms.py:28
-#: plinth/modules/shadowsocks/forms.py:29
+#: plinth/modules/shadowsocks/__init__.py:50
+msgid "Shadowsocks"
+msgstr "Shadowsocks"
+
+#: plinth/modules/shadowsocks/__init__.py:52
+msgid "Socks5 Proxy"
+msgstr "Socks5-Proxy"
+
+#: plinth/modules/shadowsocks/forms.py:13
+#: plinth/modules/shadowsocks/forms.py:14
msgid "Recommended"
msgstr "Empfohlen"
-#: plinth/modules/shadowsocks/forms.py:52
+#: plinth/modules/shadowsocks/forms.py:37
msgid "Server"
msgstr "Server"
-#: plinth/modules/shadowsocks/forms.py:53
+#: plinth/modules/shadowsocks/forms.py:38
msgid "Server hostname or IP address"
msgstr "Servername oder IP-Adresse"
-#: plinth/modules/shadowsocks/forms.py:57
+#: plinth/modules/shadowsocks/forms.py:42
msgid "Server port number"
msgstr "Server-Portnummer"
-#: plinth/modules/shadowsocks/forms.py:60
+#: plinth/modules/shadowsocks/forms.py:45
msgid "Password used to encrypt data. Must match server password."
msgstr ""
"Passwort, um Daten zu verschlüsseln. Muss mit dem Server-Passwort "
"übereinstimmen."
-#: plinth/modules/shadowsocks/forms.py:65
+#: plinth/modules/shadowsocks/forms.py:50
msgid "Encryption method. Must match setting on server."
msgstr ""
"Verschlüsselungsverfahren. Muss mit der Einstellung des Servers "
"übereinstimmen."
-#: plinth/modules/sharing/__init__.py:34
-msgid "Sharing"
-msgstr "Sharing"
-
-#: plinth/modules/sharing/__init__.py:38
+#: plinth/modules/sharing/__init__.py:21
#, python-brace-format
msgid ""
"Sharing allows you to share files and folders on your {box_name} over the "
@@ -5200,11 +5359,15 @@ msgstr ""
"Sharing ermöglicht es Ihnen, Dateien und Ordner auf Ihrer {box_name} über "
"das Internet mit ausgewählten Benutzergruppen zu teilen."
-#: plinth/modules/sharing/forms.py:33
+#: plinth/modules/sharing/__init__.py:38
+msgid "Sharing"
+msgstr "Sharing"
+
+#: plinth/modules/sharing/forms.py:18
msgid "Name of the share"
msgstr "Name der Freigabe"
-#: plinth/modules/sharing/forms.py:35
+#: plinth/modules/sharing/forms.py:20
msgid ""
"A lowercase alpha-numeric string that uniquely identifies a share. Example: "
"media."
@@ -5212,28 +5375,28 @@ msgstr ""
"Eine alphanumerische Zeichenfolge in Kleinbuchstaben, die eine Freigabe "
"eindeutig identifiziert. Beispiel: media."
-#: plinth/modules/sharing/forms.py:39
+#: plinth/modules/sharing/forms.py:24
msgid "Path to share"
msgstr "Freizugebender Pfad"
-#: plinth/modules/sharing/forms.py:40
+#: plinth/modules/sharing/forms.py:25
msgid "Disk path to a folder on this server that you intend to share."
msgstr ""
"Plattenpfad zu einem Ordner auf diesem Server, den Sie freigeben möchten."
-#: plinth/modules/sharing/forms.py:43
+#: plinth/modules/sharing/forms.py:28
msgid "Public share"
msgstr "Öffentlich freigeben"
-#: plinth/modules/sharing/forms.py:44
+#: plinth/modules/sharing/forms.py:29
msgid "Make files in this folder available to anyone with the link."
msgstr "Dateien in diesem Ordner für jeden mit dem Link zur Verfügung stellen."
-#: plinth/modules/sharing/forms.py:48
+#: plinth/modules/sharing/forms.py:33
msgid "User groups that can read the files in the share"
msgstr "Benutzergruppen, die Dateien in der Freigabe lesen können"
-#: plinth/modules/sharing/forms.py:50
+#: plinth/modules/sharing/forms.py:35
msgid ""
"Users of the selected user groups will be able to read the files in the "
"share."
@@ -5241,64 +5404,60 @@ msgstr ""
"Benutzer der ausgewählten Benutzergruppen können die Dateien in der Freigabe "
"lesen."
-#: plinth/modules/sharing/forms.py:67
+#: plinth/modules/sharing/forms.py:52
msgid "A share with this name already exists."
msgstr "Eine Freigabe mit diesem Namen existiert bereits."
-#: plinth/modules/sharing/forms.py:78
+#: plinth/modules/sharing/forms.py:63
msgid "Shares should be either public or shared with at least one group"
msgstr "Freigaben sollten öffentlich sein oder mindestens einer Gruppe haben"
-#: plinth/modules/sharing/templates/sharing.html:39
-#: plinth/modules/sharing/templates/sharing.html:42
+#: plinth/modules/sharing/templates/sharing.html:24
+#: plinth/modules/sharing/templates/sharing.html:27
msgid "Add share"
msgstr "Freigabe hinzufügen"
-#: plinth/modules/sharing/templates/sharing.html:47
+#: plinth/modules/sharing/templates/sharing.html:32
msgid "No shares currently configured."
msgstr "Derzeit sind keine Freigaben konfiguriert."
-#: plinth/modules/sharing/templates/sharing.html:53
+#: plinth/modules/sharing/templates/sharing.html:38
msgid "Disk Path"
msgstr "Pfad der Festplatte"
-#: plinth/modules/sharing/templates/sharing.html:54
+#: plinth/modules/sharing/templates/sharing.html:39
msgid "Shared Over"
msgstr "Freigegeben über"
-#: plinth/modules/sharing/templates/sharing.html:55
+#: plinth/modules/sharing/templates/sharing.html:40
msgid "With Groups"
msgstr "Mit Gruppen"
-#: plinth/modules/sharing/templates/sharing.html:73
+#: plinth/modules/sharing/templates/sharing.html:58
msgid "public access"
msgstr "öffentlicher Zugang"
-#: plinth/modules/sharing/views.py:55
+#: plinth/modules/sharing/views.py:39
msgid "Share added."
msgstr "Freigabe hinzugefügt."
-#: plinth/modules/sharing/views.py:60
+#: plinth/modules/sharing/views.py:44
msgid "Add Share"
msgstr "Freigabe hinzufügen"
-#: plinth/modules/sharing/views.py:75
+#: plinth/modules/sharing/views.py:59
msgid "Share edited."
msgstr "Freigabe geändert."
-#: plinth/modules/sharing/views.py:80
+#: plinth/modules/sharing/views.py:64
msgid "Edit Share"
msgstr "Freigabe bearbeiten"
-#: plinth/modules/sharing/views.py:111
+#: plinth/modules/sharing/views.py:95
msgid "Share deleted."
msgstr "Freigabe gelöscht."
-#: plinth/modules/snapshot/__init__.py:37
-msgid "Storage Snapshots"
-msgstr "Speicherauszüge"
-
-#: plinth/modules/snapshot/__init__.py:40
+#: plinth/modules/snapshot/__init__.py:23
msgid ""
"Snapshots allows creating and managing btrfs file system snapshots. These "
"can be used to roll back the system to a previously known good state in case "
@@ -5309,7 +5468,7 @@ msgstr ""
"unerwünschte Änderungen in einen vorherigen bekannten guten Zustand zurück "
"zu versetzen."
-#: plinth/modules/snapshot/__init__.py:44
+#: plinth/modules/snapshot/__init__.py:27
#, no-python-format
msgid ""
"Snapshots are taken periodically (called timeline snapshots) and also before "
@@ -5321,7 +5480,7 @@ msgstr ""
"Software. Ältere Schnappschüsse werden gemäß den Einstellungen unten "
"automatisch bereinigt."
-#: plinth/modules/snapshot/__init__.py:47
+#: plinth/modules/snapshot/__init__.py:30
msgid ""
"Snapshots currently work on btrfs file systems only and on the root "
"partition only. Snapshots are not a replacement for Datensicherungen, da sie nur auf derselben "
"Partition gespeichert werden können. "
-#: plinth/modules/snapshot/forms.py:27
+#: plinth/modules/snapshot/__init__.py:52
+msgid "Storage Snapshots"
+msgstr "Speicherauszüge"
+
+#: plinth/modules/snapshot/forms.py:12
msgid "Free Disk Space to Maintain"
msgstr "Zu erhaltener freier Speicherplatz"
-#: plinth/modules/snapshot/forms.py:28
+#: plinth/modules/snapshot/forms.py:13
msgid ""
"Maintain this percentage of free space on the disk. If free space falls "
"below this value, older snapshots are removed until this much free space is "
@@ -5347,63 +5510,63 @@ msgstr ""
"bis wieder genügend freier Platz gewonnen ist. Die Standardeinstellung ist "
"30 %."
-#: plinth/modules/snapshot/forms.py:35
+#: plinth/modules/snapshot/forms.py:20
msgid "Timeline Snapshots"
msgstr "Zeitleiste der Schnappschüsse"
-#: plinth/modules/snapshot/forms.py:36
+#: plinth/modules/snapshot/forms.py:21
msgid ""
"Enable or disable timeline snapshots (hourly, daily, monthly and yearly)."
msgstr ""
"Aktivieren oder Deaktivieren der regelmäßigen Schnappschüsse (stündlich, "
"täglich, monatlich und jährlich)."
-#: plinth/modules/snapshot/forms.py:41
+#: plinth/modules/snapshot/forms.py:26
msgid "Software Installation Snapshots"
msgstr "Softwareinstallation-Schnappschüsse"
-#: plinth/modules/snapshot/forms.py:42
+#: plinth/modules/snapshot/forms.py:27
msgid "Enable or disable snapshots before and after software installation"
msgstr ""
"Schnappschüsse vor und nach Softwareinstallationen ein- oder auschalten"
-#: plinth/modules/snapshot/forms.py:47
+#: plinth/modules/snapshot/forms.py:32
msgid "Hourly Snapshots Limit"
msgstr "Grenze für stündliche Speicherauszüge"
-#: plinth/modules/snapshot/forms.py:48
+#: plinth/modules/snapshot/forms.py:33
msgid "Keep a maximum of this many hourly snapshots."
msgstr "Aufbewahren dieser maximalen Anzahl stündlicher Schnappschüsse."
-#: plinth/modules/snapshot/forms.py:51
+#: plinth/modules/snapshot/forms.py:36
msgid "Daily Snapshots Limit"
msgstr "Grenze für tägliche Speicherauszüge"
-#: plinth/modules/snapshot/forms.py:52
+#: plinth/modules/snapshot/forms.py:37
msgid "Keep a maximum of this many daily snapshots."
msgstr "Aufbewahren dieser maximalen Anzahl täglicher Schnappschüsse."
-#: plinth/modules/snapshot/forms.py:55
+#: plinth/modules/snapshot/forms.py:40
msgid "Weekly Snapshots Limit"
msgstr "Grenze für wöchentliche Speicherauszüge"
-#: plinth/modules/snapshot/forms.py:56
+#: plinth/modules/snapshot/forms.py:41
msgid "Keep a maximum of this many weekly snapshots."
msgstr "Aufbewahren dieser maximalen Anzahl wöchentlicher Schnappschüsse."
-#: plinth/modules/snapshot/forms.py:59
+#: plinth/modules/snapshot/forms.py:44
msgid "Monthly Snapshots Limit"
msgstr "Grenze für monatliche Speicherauszüge"
-#: plinth/modules/snapshot/forms.py:60
+#: plinth/modules/snapshot/forms.py:45
msgid "Keep a maximum of this many monthly snapshots."
msgstr "Aufbewahren dieser maximalen Anzahl monatlicher Schnappschüsse."
-#: plinth/modules/snapshot/forms.py:63
+#: plinth/modules/snapshot/forms.py:48
msgid "Yearly Snapshots Limit"
msgstr "Grenze für jährliche Speicherauszüge"
-#: plinth/modules/snapshot/forms.py:64
+#: plinth/modules/snapshot/forms.py:49
msgid ""
"Keep a maximum of this many yearly snapshots. The default value is 0 "
"(disabled)."
@@ -5411,46 +5574,46 @@ msgstr ""
"Aufbewahren dieser maximalen Anzahl jährlichen Schnappschüsse. Standardwert "
"ist 0 (deaktiviert)."
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:27
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:12
msgid "Delete the following snapshots permanently?"
msgstr "Folgenden Speicherauszug dauerhaft löschen?"
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:31
-#: plinth/modules/snapshot/templates/snapshot_manage.html:43
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:39
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:16
+#: plinth/modules/snapshot/templates/snapshot_manage.html:28
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:24
msgid "Number"
msgstr "Nummer"
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:32
-#: plinth/modules/snapshot/templates/snapshot_manage.html:44
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:40
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:17
+#: plinth/modules/snapshot/templates/snapshot_manage.html:29
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:25
msgid "Date"
msgstr "Datum"
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:52
-#: plinth/modules/snapshot/templates/snapshot_manage.html:37
-#: plinth/modules/snapshot/views.py:196
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:37
+#: plinth/modules/snapshot/templates/snapshot_manage.html:22
+#: plinth/modules/snapshot/views.py:175
msgid "Delete Snapshots"
msgstr "Speicherauszüge löschen"
-#: plinth/modules/snapshot/templates/snapshot_manage.html:33
+#: plinth/modules/snapshot/templates/snapshot_manage.html:18
msgid "Create Snapshot"
msgstr "Speicherauszug anlegen"
-#: plinth/modules/snapshot/templates/snapshot_manage.html:46
+#: plinth/modules/snapshot/templates/snapshot_manage.html:31
msgid "Rollback"
msgstr "Zurücksetzen"
-#: plinth/modules/snapshot/templates/snapshot_manage.html:57
+#: plinth/modules/snapshot/templates/snapshot_manage.html:42
msgid "active"
msgstr "aktiv"
-#: plinth/modules/snapshot/templates/snapshot_manage.html:66
+#: plinth/modules/snapshot/templates/snapshot_manage.html:51
#, python-format
msgid "Rollback to snapshot #%(number)s"
msgstr "Zurücksetzen auf Speicherauszug #%(number)s"
-#: plinth/modules/snapshot/templates/snapshot_not_supported.html:26
+#: plinth/modules/snapshot/templates/snapshot_not_supported.html:11
#, python-format
msgid ""
"Your have a filesystem of type %(fs_type)s. Snapshots are "
@@ -5460,11 +5623,11 @@ msgstr ""
"Schnappschüsse sind derzeit nur mit %(types_supported)s-"
"Dateisystemen verfügbar."
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:27
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:12
msgid "Roll back the system to this snapshot?"
msgstr "Zurücksetzen des Systems auf diesen Speicherauszug?"
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:30
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:15
msgid ""
"A new snapshot with the current state of the file system will be "
"automatically created. You will be able to undo a rollback by reverting to "
@@ -5474,61 +5637,57 @@ msgstr ""
"automatisch erstellt. Sie können durch Rückgriff auf den neu erstellten "
"Speicherauszug ein Zurücksetzen rückgängig zu machen."
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:57
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:42
#, python-format
msgid "Rollback to Snapshot #%(number)s"
msgstr "Zurücksetzen auf Speicherauszug #%(number)s"
-#: plinth/modules/snapshot/views.py:45
+#: plinth/modules/snapshot/views.py:30
msgid "Manage Snapshots"
msgstr "Verwalten der Speicherauszüge"
-#: plinth/modules/snapshot/views.py:98
+#: plinth/modules/snapshot/views.py:79
msgid "Created snapshot."
msgstr "Speicherauszug erstellt."
-#: plinth/modules/snapshot/views.py:156
+#: plinth/modules/snapshot/views.py:135
msgid "Storage snapshots configuration updated"
msgstr "Konfiguration der Speicherauszüge aktualisiert"
-#: plinth/modules/snapshot/views.py:160 plinth/modules/tor/views.py:79
+#: plinth/modules/snapshot/views.py:139 plinth/modules/tor/views.py:60
#, python-brace-format
msgid "Action error: {0} [{1}] [{2}]"
msgstr "Aktionsfehler: {0} [{1}] [{2}]"
-#: plinth/modules/snapshot/views.py:175
+#: plinth/modules/snapshot/views.py:154
msgid "Deleted all snapshots"
msgstr "Alle Schnappschüsse wurden gelöscht"
-#: plinth/modules/snapshot/views.py:179
+#: plinth/modules/snapshot/views.py:158
msgid "Deleted selected snapshots"
msgstr "Ausgewählte Schnappschüsse gelöscht"
-#: plinth/modules/snapshot/views.py:184
+#: plinth/modules/snapshot/views.py:163
msgid "Snapshot is currently in use. Please try again later."
msgstr ""
"Schnappschüsse ist derzeit im Gebrauch. Bitte versuchen Sie es später noch "
"einmal."
-#: plinth/modules/snapshot/views.py:207
+#: plinth/modules/snapshot/views.py:186
#, python-brace-format
msgid "Rolled back to snapshot #{number}."
msgstr "Zurückgesetzt auf Speicherauszug #{number}."
-#: plinth/modules/snapshot/views.py:210
+#: plinth/modules/snapshot/views.py:189
msgid "The system must be restarted to complete the rollback."
msgstr ""
"Das System muss neu gestartet werden, um das Zurücksetzen abzuschließen."
-#: plinth/modules/snapshot/views.py:222
+#: plinth/modules/snapshot/views.py:201
msgid "Rollback to Snapshot"
msgstr "Zurücksetzen auf Speicherauszug"
-#: plinth/modules/ssh/__init__.py:43
-msgid "Secure Shell (SSH) Server"
-msgstr "Secure Shell (SSH) Server"
-
-#: plinth/modules/ssh/__init__.py:46
+#: plinth/modules/ssh/__init__.py:29
msgid ""
"A Secure Shell server uses the secure shell protocol to accept connections "
"from remote computers. An authorized remote computer can perform "
@@ -5540,11 +5699,15 @@ msgstr ""
"verifizierter, entfernter Computer Verwaltungsaufgaben ausführen, Dateien "
"kopieren oder andere Anwendungen starten."
-#: plinth/modules/ssh/forms.py:30
+#: plinth/modules/ssh/__init__.py:50
+msgid "Secure Shell (SSH) Server"
+msgstr "Secure Shell (SSH) Server"
+
+#: plinth/modules/ssh/forms.py:15
msgid "Disable password authentication"
msgstr "Passwortauthentifizierung deaktivieren"
-#: plinth/modules/ssh/forms.py:31
+#: plinth/modules/ssh/forms.py:16
msgid ""
"Improves security by preventing password guessing. Ensure that you have "
"setup SSH keys in your administrator user account before enabling this "
@@ -5554,11 +5717,11 @@ msgstr ""
"Stellen Sie sicher, dass Sie den SSH-Schlüssel in ihrem Administrator-"
"Benutzerkonto eingerichtet haben, bevor Sie diese Option aktivieren."
-#: plinth/modules/ssh/templates/ssh.html:26
+#: plinth/modules/ssh/templates/ssh.html:11
msgid "Server Fingerprints"
msgstr "Server Fingerabdrücke"
-#: plinth/modules/ssh/templates/ssh.html:29
+#: plinth/modules/ssh/templates/ssh.html:14
msgid ""
"When connecting to the server, ensure that the fingerprint shown by the SSH "
"client matches one of these fingerprints."
@@ -5567,35 +5730,31 @@ msgstr ""
"vom SSH-Client angezeigte Fingerabdruck mit einem dieser Fingerabdrücke "
"übereinstimmt."
-#: plinth/modules/ssh/templates/ssh.html:38
+#: plinth/modules/ssh/templates/ssh.html:23
msgid "Algorithm"
msgstr "Algorithmus"
-#: plinth/modules/ssh/templates/ssh.html:39
+#: plinth/modules/ssh/templates/ssh.html:24
msgid "Fingerprint"
msgstr "Fingerabdruck"
-#: plinth/modules/ssh/views.py:66
+#: plinth/modules/ssh/views.py:48
msgid "SSH authentication with password disabled."
msgstr "SSH-Authentifizierung mit Passwort deaktiviert."
-#: plinth/modules/ssh/views.py:69
+#: plinth/modules/ssh/views.py:51
msgid "SSH authentication with password enabled."
msgstr "SSH-Authentifizierung mit Passwort aktiviert."
-#: plinth/modules/sso/__init__.py:30
+#: plinth/modules/sso/__init__.py:33
msgid "Single Sign On"
msgstr "Einmal-Anmeldung"
-#: plinth/modules/sso/templates/login.html:35
+#: plinth/modules/sso/templates/login.html:20
msgid "Login"
msgstr "Anmelden"
-#: plinth/modules/storage/__init__.py:39 plinth/modules/storage/__init__.py:331
-msgid "Storage"
-msgstr "Speicher"
-
-#: plinth/modules/storage/__init__.py:47
+#: plinth/modules/storage/__init__.py:30
#, python-brace-format
msgid ""
"This module allows you to manage storage media attached to your {box_name}. "
@@ -5607,150 +5766,154 @@ msgstr ""
"Speichermedien einsehen, Wechselmedien einbinden und aushängen, die Root-"
"Partition erweitern usw."
-#: plinth/modules/storage/__init__.py:224
+#: plinth/modules/storage/__init__.py:52 plinth/modules/storage/__init__.py:318
+msgid "Storage"
+msgstr "Speicher"
+
+#: plinth/modules/storage/__init__.py:211
#, python-brace-format
msgid "{disk_size:.1f} bytes"
msgstr "{disk_size:.1f} Bytes"
-#: plinth/modules/storage/__init__.py:228
+#: plinth/modules/storage/__init__.py:215
#, python-brace-format
msgid "{disk_size:.1f} KiB"
msgstr "{disk_size:.1f} KiB"
-#: plinth/modules/storage/__init__.py:232
+#: plinth/modules/storage/__init__.py:219
#, python-brace-format
msgid "{disk_size:.1f} MiB"
msgstr "{disk_size:.1f} MiB"
-#: plinth/modules/storage/__init__.py:236
+#: plinth/modules/storage/__init__.py:223
#, python-brace-format
msgid "{disk_size:.1f} GiB"
msgstr "{disk_size:.1f} GiB"
-#: plinth/modules/storage/__init__.py:239
+#: plinth/modules/storage/__init__.py:226
#, python-brace-format
msgid "{disk_size:.1f} TiB"
msgstr "{disk_size:.1f} TiB"
-#: plinth/modules/storage/__init__.py:246
+#: plinth/modules/storage/__init__.py:233
msgid "The operation failed."
msgstr "Der Vorgang schlug fehl."
-#: plinth/modules/storage/__init__.py:248
+#: plinth/modules/storage/__init__.py:235
msgid "The operation was cancelled."
msgstr "Der Vorgang wurde abgebrochen."
-#: plinth/modules/storage/__init__.py:250
+#: plinth/modules/storage/__init__.py:237
msgid "The device is already unmounting."
msgstr "Das Gerät wird bereits ausgehängt."
-#: plinth/modules/storage/__init__.py:252
+#: plinth/modules/storage/__init__.py:239
msgid "The operation is not supported due to missing driver/tool support."
msgstr ""
"Der Vorgang ist wegen fehlender Treiber-/Werkzeugunterstützung nicht möglich."
-#: plinth/modules/storage/__init__.py:255
+#: plinth/modules/storage/__init__.py:242
msgid "The operation timed out."
msgstr "Der Vorgang beendet wegen Zeitüberschreitung."
-#: plinth/modules/storage/__init__.py:257
+#: plinth/modules/storage/__init__.py:244
msgid "The operation would wake up a disk that is in a deep-sleep state."
msgstr ""
"Dieser Vorgang würde ein Gerät aufwecken, dass sich in einem Tiefschlaf-"
"Zustand befindet."
-#: plinth/modules/storage/__init__.py:260
+#: plinth/modules/storage/__init__.py:247
msgid "Attempting to unmount a device that is busy."
msgstr "Es wird versucht, ein Gerät auszuhängen, das beschäftigt ist."
-#: plinth/modules/storage/__init__.py:262
+#: plinth/modules/storage/__init__.py:249
msgid "The operation has already been cancelled."
msgstr "Dieser Vorgang wurde bereits abgebrochen."
-#: plinth/modules/storage/__init__.py:268
+#: plinth/modules/storage/__init__.py:255
msgid "Not authorized to perform the requested operation."
msgstr "Nicht autorisiert, um den gewünschten Vorgang auszuführen."
-#: plinth/modules/storage/__init__.py:270
+#: plinth/modules/storage/__init__.py:257
msgid "The device is already mounted."
msgstr "Dieses Gerät ist bereits eingebunden."
-#: plinth/modules/storage/__init__.py:272
+#: plinth/modules/storage/__init__.py:259
msgid "The device is not mounted."
msgstr "Das Gerät ist nicht eingebunden."
-#: plinth/modules/storage/__init__.py:275
+#: plinth/modules/storage/__init__.py:262
msgid "Not permitted to use the requested option."
msgstr "Die gewünschte Option ist nicht gestattet."
-#: plinth/modules/storage/__init__.py:278
+#: plinth/modules/storage/__init__.py:265
msgid "The device is mounted by another user."
msgstr "Das Gerät ist von einem anderen Benutzer eingebunden."
-#: plinth/modules/storage/__init__.py:326
+#: plinth/modules/storage/__init__.py:313
#, no-python-format, python-brace-format
msgid "Low space on system partition: {percent_used}% used, {free_space} free."
msgstr ""
"Geringer Speicherplatz auf der Systempartition: {percent_used}% belegt, "
"{free_space} verfügbar."
-#: plinth/modules/storage/__init__.py:328
+#: plinth/modules/storage/__init__.py:315
msgid "Low disk space"
msgstr "Wenig Plattenspeicherplatz"
-#: plinth/modules/storage/forms.py:79
+#: plinth/modules/storage/forms.py:64
msgid "Invalid directory name."
msgstr "Ungültiger Verzeichnisname."
-#: plinth/modules/storage/forms.py:97
+#: plinth/modules/storage/forms.py:82
msgid "Directory does not exist."
msgstr "Verzeichnis ist nicht vorhanden."
-#: plinth/modules/storage/forms.py:99
+#: plinth/modules/storage/forms.py:84
msgid "Path is not a directory."
msgstr "Pfad ist kein Verzeichnis."
-#: plinth/modules/storage/forms.py:102
+#: plinth/modules/storage/forms.py:87
msgid "Directory is not readable by the user."
msgstr "Verzeichnis ist für den Benutzer nicht lesbar."
-#: plinth/modules/storage/forms.py:105
+#: plinth/modules/storage/forms.py:90
msgid "Directory is not writable by the user."
msgstr "Das Verzeichnis ist für den Benutzer nicht beschreibbar."
-#: plinth/modules/storage/forms.py:110
+#: plinth/modules/storage/forms.py:95
msgid "Directory"
msgstr "Verzeichnis"
-#: plinth/modules/storage/forms.py:113
+#: plinth/modules/storage/forms.py:98
msgid "Subdirectory (optional)"
msgstr "Unterverzeichnis (optional)"
-#: plinth/modules/storage/forms.py:160
+#: plinth/modules/storage/forms.py:145
msgid "Share"
msgstr "Freigeben"
-#: plinth/modules/storage/forms.py:168
+#: plinth/modules/storage/forms.py:153
msgid "Other directory (specify below)"
msgstr "Anderes Verzeichnis (unten angeben)"
-#: plinth/modules/storage/templates/storage.html:35
+#: plinth/modules/storage/templates/storage.html:20
msgid "The following storage devices are in use:"
msgstr "Die folgenden Speichermedien werden verwendet:"
-#: plinth/modules/storage/templates/storage.html:41
+#: plinth/modules/storage/templates/storage.html:26
msgid "Label"
msgstr "Bezeichnung"
-#: plinth/modules/storage/templates/storage.html:42
+#: plinth/modules/storage/templates/storage.html:27
msgid "Mount Point"
msgstr "Einhängepunkt"
-#: plinth/modules/storage/templates/storage.html:90
+#: plinth/modules/storage/templates/storage.html:75
msgid "Partition Expansion"
msgstr "Partitions-Erweiterung"
-#: plinth/modules/storage/templates/storage.html:92
+#: plinth/modules/storage/templates/storage.html:77
#, python-format
msgid ""
"There is %(expandable_root_size)s of unallocated space available after your "
@@ -5762,13 +5925,13 @@ msgstr ""
"Speicherplatz zu nutzen. Die Erweiterung stellt mehr Speicherplatz für Ihre "
"Dateien bereit."
-#: plinth/modules/storage/templates/storage.html:102
-#: plinth/modules/storage/templates/storage_expand.html:39
-#: plinth/modules/storage/views.py:76
+#: plinth/modules/storage/templates/storage.html:87
+#: plinth/modules/storage/templates/storage_expand.html:24
+#: plinth/modules/storage/views.py:58
msgid "Expand Root Partition"
msgstr "Erweitern der Root-Partition"
-#: plinth/modules/storage/templates/storage_expand.html:29
+#: plinth/modules/storage/templates/storage_expand.html:14
#, python-format
msgid ""
"Please backup your data before proceeding. After this operation, "
@@ -5779,39 +5942,30 @@ msgstr ""
"Nach dieser Aktion werden %(expandable_root_size)s zusätzlicher "
"Speicherplatz auf der Root-Partition verfügbar."
-#: plinth/modules/storage/views.py:88
+#: plinth/modules/storage/views.py:70
#, python-brace-format
msgid "Error expanding partition: {exception}"
msgstr "Fehler beim Erweitern des Dateisystems: {exception}"
-#: plinth/modules/storage/views.py:91
+#: plinth/modules/storage/views.py:73
msgid "Partition expanded successfully."
msgstr "Partition erfolgreich vergrößert."
-#: plinth/modules/storage/views.py:109
+#: plinth/modules/storage/views.py:91
#, python-brace-format
msgid "{drive_vendor} {drive_model} can be safely unplugged."
msgstr "{drive_vendor} {drive_model} kann sicher entfernt werden."
-#: plinth/modules/storage/views.py:113
+#: plinth/modules/storage/views.py:95
msgid "Device can be safely unplugged."
msgstr "Gerät kann sicher entfernt werden."
-#: plinth/modules/storage/views.py:123
+#: plinth/modules/storage/views.py:105
#, python-brace-format
msgid "Error ejecting device: {error_message}"
msgstr "Fehler beim Auswerfen des Geräts: {error_message}"
-#: plinth/modules/syncthing/__init__.py:40
-#: plinth/modules/syncthing/manifest.py:28
-msgid "Syncthing"
-msgstr "Syncthing"
-
-#: plinth/modules/syncthing/__init__.py:44
-msgid "File Synchronization"
-msgstr "Dateisynchronisation"
-
-#: plinth/modules/syncthing/__init__.py:47
+#: plinth/modules/syncthing/__init__.py:26
msgid ""
"Syncthing is an application to synchronize files across multiple devices, e."
"g. your desktop computer and mobile phone. Creation, modification, or "
@@ -5823,7 +5977,7 @@ msgstr ""
"Modifikation oder 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:52
+#: plinth/modules/syncthing/__init__.py:31
#, python-brace-format
msgid ""
"Running Syncthing on {box_name} provides an extra synchronization point for "
@@ -5841,19 +5995,20 @@ msgstr ""
"mit unterschiedlichen Ordnern synchronisiert werden. Die Weboberfläche auf "
"{box_name} ist nur für Benutzer der „admin“-Gruppe zugänglich."
-#: plinth/modules/syncthing/__init__.py:63
+#: plinth/modules/syncthing/__init__.py:40
msgid "Administer Syncthing application"
msgstr "Syncthing-Anwendung einstellen"
-#: plinth/modules/tahoe/__init__.py:43
-msgid "Tahoe-LAFS"
-msgstr "Tahoe-LAFS"
+#: plinth/modules/syncthing/__init__.py:54
+#: plinth/modules/syncthing/manifest.py:13
+msgid "Syncthing"
+msgstr "Syncthing"
-#: plinth/modules/tahoe/__init__.py:47
-msgid "Distributed File Storage"
-msgstr "Verteilter Dateispeicher"
+#: plinth/modules/syncthing/__init__.py:55
+msgid "File Synchronization"
+msgstr "Dateisynchronisation"
-#: plinth/modules/tahoe/__init__.py:134
+#: plinth/modules/tahoe/__init__.py:30
msgid ""
"Tahoe-LAFS is a decentralized secure file storage system. It uses provider "
"independent security to store files over a distributed network of storage "
@@ -5866,7 +6021,7 @@ msgstr ""
"Knoten ausfallen, können Ihre Dateien von den restlichen Knoten "
"wiederhergestellt werden."
-#: plinth/modules/tahoe/__init__.py:139
+#: plinth/modules/tahoe/__init__.py:35
#, python-brace-format
msgid ""
"This {box_name} hosts a storage node and an introducer by default. "
@@ -5877,7 +6032,15 @@ msgstr ""
"LAFS Introducer. Sie können zusätzliche Introducer einstellen, welche diesen "
"Speicherknoten bei weiteren Speicherknoten anmelden können."
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:33
+#: plinth/modules/tahoe/__init__.py:66
+msgid "Tahoe-LAFS"
+msgstr "Tahoe-LAFS"
+
+#: plinth/modules/tahoe/__init__.py:68
+msgid "Distributed File Storage"
+msgstr "Verteilter Dateispeicher"
+
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:17
#, python-format
msgid ""
"The Tahoe-LAFS server domain is set to %(domain_name)s. Changing the "
@@ -5891,37 +6054,33 @@ msgstr ""
"Sie können Tahoe-LAFS auf https://"
"%(domain_name)s:5678 erreichen."
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:55
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:39
msgid "Local introducer"
msgstr "Lokaler Vermittler"
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:43
#: plinth/modules/tahoe/templates/tahoe-post-setup.html:59
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:75
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:92
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:76
msgid "Pet Name"
msgstr "Pet-Name"
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:72
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:56
msgid "Add new introducer"
msgstr "Neuen Vermittler hinzufügen"
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:83
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:67
msgid "Add"
msgstr "Hinzufügen"
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:88
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:72
msgid "Connected introducers"
msgstr "Verbundene Vermittler"
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:105
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:89
msgid "Remove"
msgstr "Entfernen"
-#: plinth/modules/tor/__init__.py:47
-msgid "Tor"
-msgstr "Tor"
-
-#: plinth/modules/tor/__init__.py:52
+#: plinth/modules/tor/__init__.py:33
msgid ""
"Tor is an anonymous communication system. You can learn more about it from "
"the Tor Project website. For "
@@ -5935,56 +6094,60 @@ msgstr ""
"Sie den Tor Browser verwenden."
-#: plinth/modules/tor/__init__.py:83
+#: plinth/modules/tor/__init__.py:55
+msgid "Tor"
+msgstr "Tor"
+
+#: plinth/modules/tor/__init__.py:66
msgid "Tor Onion Service"
msgstr "Tor-Onion-Dienste"
-#: plinth/modules/tor/__init__.py:87
+#: plinth/modules/tor/__init__.py:70
msgid "Tor Socks Proxy"
msgstr "Tor-Socks-Proxy"
-#: plinth/modules/tor/__init__.py:91
+#: plinth/modules/tor/__init__.py:74
msgid "Tor Bridge Relay"
msgstr "Tor-Bridge-Relay"
-#: plinth/modules/tor/__init__.py:112
+#: plinth/modules/tor/__init__.py:95
msgid "Tor relay port available"
msgstr "Tor-Relay-Port ist verfügbar"
-#: plinth/modules/tor/__init__.py:122
+#: plinth/modules/tor/__init__.py:105
msgid "Obfs3 transport registered"
msgstr "Obfs3-Transport registriert"
-#: plinth/modules/tor/__init__.py:132
+#: plinth/modules/tor/__init__.py:115
msgid "Obfs4 transport registered"
msgstr "Obfs4-Transport registriert"
-#: plinth/modules/tor/__init__.py:225
+#: plinth/modules/tor/__init__.py:208
#, 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:236
+#: plinth/modules/tor/__init__.py:219
#, python-brace-format
msgid "Confirm Tor usage at {url} on tcp{kind}"
msgstr "Tor-Nutzung auf {url} über TCP{kind} bestätigen"
-#: plinth/modules/tor/forms.py:46
+#: plinth/modules/tor/forms.py:31
msgid ""
"Enter a valid bridge with this format: [transport] IP:ORPort [fingerprint]"
msgstr ""
"Geben Sie eine gültige Tor-Bridge ein, in diesem Format: [transport] IP:"
"ORPort [fingerprint]"
-#: plinth/modules/tor/forms.py:88
+#: plinth/modules/tor/forms.py:73
msgid "Enable Tor"
msgstr "Tor einschalten"
-#: plinth/modules/tor/forms.py:90
+#: plinth/modules/tor/forms.py:75
msgid "Use upstream bridges to connect to Tor network"
msgstr "Upstream-Bridges zur Verbindung mit dem Tor-Netzwerk nutzen"
-#: plinth/modules/tor/forms.py:92
+#: plinth/modules/tor/forms.py:77
msgid ""
"When enabled, the bridges configured below will be used to connect to the "
"Tor network. Use this option if your Internet Service Provider (ISP) blocks "
@@ -5995,11 +6158,11 @@ msgstr ""
"Internetdienstanbieter ihre Verbindung mit dem Tor-Netzwerk zensiert oder "
"blockiert. Dies wird Relay-Modi deaktivieren."
-#: plinth/modules/tor/forms.py:97
+#: plinth/modules/tor/forms.py:82
msgid "Upstream bridges"
msgstr "Upstream-Bridges"
-#: plinth/modules/tor/forms.py:99
+#: plinth/modules/tor/forms.py:84
msgid ""
"You can get some bridges from https://bridges.torproject.org/ and copy/paste the bridge information "
@@ -6010,11 +6173,11 @@ msgstr ""
"Informationen von dort kopieren und hier einfügen. Derzeitig unterstützte "
"Transports sind „none“, „obfs3“, „obfs4“ und „scamblesuit“."
-#: plinth/modules/tor/forms.py:105
+#: plinth/modules/tor/forms.py:90
msgid "Enable Tor relay"
msgstr "Tor-Relay einschalten"
-#: plinth/modules/tor/forms.py:106
+#: plinth/modules/tor/forms.py:91
#, python-brace-format
msgid ""
"When enabled, your {box_name} will run a Tor relay and donate bandwidth to "
@@ -6026,11 +6189,11 @@ msgstr ""
"Upload-Bandbreite zur Verfügung haben, sollten Sie diese Funktion "
"aktivieren. (Es verbessert die Anonymisierung)."
-#: plinth/modules/tor/forms.py:111
+#: plinth/modules/tor/forms.py:96
msgid "Enable Tor bridge relay"
msgstr "Tor-Bridge-Relay aktivieren"
-#: plinth/modules/tor/forms.py:113
+#: plinth/modules/tor/forms.py:98
msgid ""
"When enabled, relay information is published in the Tor bridge database "
"instead of public Tor relay database making it harder to censor this node. "
@@ -6040,11 +6203,11 @@ msgstr ""
"Datenbank veröffentlicht, anstatt in einer öffentlichen Tor-Relay-Datenbank, "
"was die Zensur des Knotens erschwert. Dies hilft anderen, Zensur zu umgehen."
-#: plinth/modules/tor/forms.py:118
+#: plinth/modules/tor/forms.py:103
msgid "Enable Tor Hidden Service"
msgstr "Tor Hidden Service aktivieren"
-#: plinth/modules/tor/forms.py:120
+#: plinth/modules/tor/forms.py:105
#, python-brace-format
msgid ""
"A hidden service will allow {box_name} to provide selected services (such as "
@@ -6055,11 +6218,11 @@ msgstr ""
"B. Wiki oder Chat) bereitzustellen, ohne seinen Standort preiszugeben. "
"Verwenden Sie dies noch nicht für starke Anonymität."
-#: plinth/modules/tor/forms.py:125
+#: plinth/modules/tor/forms.py:110
msgid "Download software packages over Tor"
msgstr "Softwarepakete über das Tor-Netzwerk herunterladen"
-#: plinth/modules/tor/forms.py:126
+#: plinth/modules/tor/forms.py:111
msgid ""
"When enabled, software will be downloaded over the Tor network for "
"installations and upgrades. This adds a degree of privacy and security "
@@ -6069,37 +6232,37 @@ msgstr ""
"den Aktualisierungen über das Tor-Netzwerk heruntergeladen. Dies erhöht die "
"Privatsphäre und Sicherheit während die Software heruntergeladen wird."
-#: plinth/modules/tor/forms.py:141
+#: plinth/modules/tor/forms.py:126
msgid "Specify at least one upstream bridge to use upstream bridges."
msgstr ""
"Tragen Sie mindestens eine Upstream-Bridge ein, um Upstream-Bridges zu "
"nutzen."
-#: plinth/modules/tor/manifest.py:29
+#: plinth/modules/tor/manifest.py:14
msgid "Tor Browser"
msgstr "Tor Browser"
-#: plinth/modules/tor/manifest.py:45
+#: plinth/modules/tor/manifest.py:30
msgid "Orbot: Proxy with Tor"
msgstr "Orbot: Proxy mit Tor"
-#: plinth/modules/tor/templates/tor.html:41
+#: plinth/modules/tor/templates/tor.html:26
msgid "Tor configuration is being updated"
msgstr "Tor-Konfiguration wird aktualisiert"
-#: plinth/modules/tor/templates/tor.html:50
+#: plinth/modules/tor/templates/tor.html:35
msgid "Onion Service"
msgstr "Onion-Dienste"
-#: plinth/modules/tor/templates/tor.html:52
+#: plinth/modules/tor/templates/tor.html:37
msgid "Ports"
msgstr "Ports"
-#: plinth/modules/tor/templates/tor.html:82
+#: plinth/modules/tor/templates/tor.html:67
msgid "Relay"
msgstr "Relay"
-#: plinth/modules/tor/templates/tor.html:84
+#: plinth/modules/tor/templates/tor.html:69
#, python-format
msgid ""
"If your %(box_name)s is behind a router or firewall, you should make sure "
@@ -6109,21 +6272,16 @@ msgstr ""
"Sie sicherstellen, dass die folgenden Ports geöffnet und weitergeleitet "
"werden, falls erforderlich:"
-#: plinth/modules/tor/templates/tor.html:112
+#: plinth/modules/tor/templates/tor.html:97
msgid "SOCKS"
msgstr "SOCKS"
-#: plinth/modules/tor/templates/tor.html:115
+#: plinth/modules/tor/templates/tor.html:100
#, python-format
msgid "A Tor SOCKS port is available on your %(box_name)s on TCP port 9050."
msgstr "Tor SOCKS-Port ist auf Ihrer %(box_name)s auf TCP port 9050 verfügbar."
-#: plinth/modules/transmission/__init__.py:41
-#: plinth/modules/transmission/manifest.py:24
-msgid "Transmission"
-msgstr "Transmission"
-
-#: plinth/modules/transmission/__init__.py:48
+#: plinth/modules/transmission/__init__.py:27
msgid ""
"BitTorrent is a peer-to-peer file sharing protocol. Transmission daemon "
"handles Bitorrent file sharing. Note that BitTorrent is not anonymous."
@@ -6132,15 +6290,12 @@ msgstr ""
"Transmission-Daemon verarbeitet BitTorrent-Dateien. Es gilt zu beachten: "
"BitTorrent ist nicht anonym!"
-#: plinth/modules/ttrss/__init__.py:43 plinth/modules/ttrss/manifest.py:34
-msgid "Tiny Tiny RSS"
-msgstr "Tiny Tiny RSS"
+#: plinth/modules/transmission/__init__.py:48
+#: plinth/modules/transmission/manifest.py:9
+msgid "Transmission"
+msgstr "Transmission"
-#: plinth/modules/ttrss/__init__.py:47
-msgid "News Feed Reader"
-msgstr "Feedreader"
-
-#: plinth/modules/ttrss/__init__.py:50
+#: plinth/modules/ttrss/__init__.py:29
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 "
@@ -6149,7 +6304,7 @@ msgstr ""
"Tiny Tiny RSS ist ein Feedreader (RSS/Atom), der von jedem Browser aus "
"genutzt werden kann, sich aber sehr wie eine normale Anwendung anfühlt."
-#: plinth/modules/ttrss/__init__.py:54
+#: plinth/modules/ttrss/__init__.py:33
#, python-brace-format
msgid ""
"When enabled, Tiny Tiny RSS can be accessed by any Benutzer mit einem {box_name} Login aufgerufen werden."
-#: plinth/modules/ttrss/__init__.py:58
+#: plinth/modules/ttrss/__init__.py:37
msgid ""
"When using a mobile or desktop application for Tiny Tiny RSS, use the URL /tt-rss-app for "
@@ -6168,43 +6323,51 @@ msgstr ""
"nutzen, tragen Sie die URL /tt-rss-app ein."
-#: plinth/modules/ttrss/__init__.py:65
+#: plinth/modules/ttrss/__init__.py:42
msgid "Read and subscribe to news feeds"
msgstr "Lesen und Abonnieren von Neuigkeiten-Feeds"
-#: plinth/modules/ttrss/manifest.py:25
+#: plinth/modules/ttrss/__init__.py:56 plinth/modules/ttrss/manifest.py:19
+msgid "Tiny Tiny RSS"
+msgstr "Tiny Tiny RSS"
+
+#: plinth/modules/ttrss/__init__.py:57
+msgid "News Feed Reader"
+msgstr "Feedreader"
+
+#: plinth/modules/ttrss/manifest.py:10
msgid "Tiny Tiny RSS (Fork)"
msgstr "Tiny Tiny RSS (Fork)"
-#: plinth/modules/upgrades/__init__.py:37 plinth/templates/setup.html:89
-msgid "Update"
-msgstr "Aktualisieren"
-
-#: plinth/modules/upgrades/__init__.py:40
+#: plinth/modules/upgrades/__init__.py:23
msgid "Check for and apply the latest software and security updates."
msgstr ""
"Prüfen Sie die neuesten Software- und Sicherheitsupdates und installieren "
"Sie diese."
-#: plinth/modules/upgrades/__init__.py:84
+#: plinth/modules/upgrades/__init__.py:38 plinth/templates/setup.html:74
+msgid "Update"
+msgstr "Aktualisieren"
+
+#: plinth/modules/upgrades/__init__.py:71
msgid "FreedomBox Updated"
msgstr "FreedomBox aktualisiert"
-#: plinth/modules/upgrades/forms.py:28
+#: plinth/modules/upgrades/forms.py:13
msgid "Enable auto-update"
msgstr "Auto-Aktualisierung aktivieren"
-#: plinth/modules/upgrades/forms.py:29
+#: plinth/modules/upgrades/forms.py:14
msgid "When enabled, FreedomBox automatically updates once a day."
msgstr ""
"Wenn aktiviert, aktualisiert sich FreedomBox automatisch einmal täglich."
-#: plinth/modules/upgrades/templates/upgrades-new-release.html:24
+#: plinth/modules/upgrades/templates/upgrades-new-release.html:9
#, python-format
msgid "%(box_name)s Updated"
msgstr "%(box_name)s aktualisiert"
-#: plinth/modules/upgrades/templates/upgrades-new-release.html:28
+#: plinth/modules/upgrades/templates/upgrades-new-release.html:13
#, python-format
msgid ""
"%(box_name)s has been updated to version %(version)s. See the Veröffentlichungsankündigung."
-#: plinth/modules/upgrades/templates/upgrades-new-release.html:37
-#: plinth/templates/notifications.html:59
+#: plinth/modules/upgrades/templates/upgrades-new-release.html:22
+#: plinth/templates/notifications.html:44
msgid "Dismiss"
msgstr "Verwerfen"
-#: plinth/modules/upgrades/templates/upgrades.html:45
+#: plinth/modules/upgrades/templates/upgrades.html:30
msgid "Update now"
msgstr "Jetzt aktualisieren"
-#: plinth/modules/upgrades/templates/upgrades.html:54
+#: plinth/modules/upgrades/templates/upgrades.html:39
msgid "Updating..."
msgstr "Aktualisierung läuft …"
-#: plinth/modules/upgrades/templates/upgrades.html:59
+#: plinth/modules/upgrades/templates/upgrades.html:44
msgid ""
"This may take a long time to complete. During an update, "
"you cannot install apps. Also, this web interface may be temporarily "
@@ -6237,46 +6400,42 @@ msgstr ""
"Weboberfläche möglicherweise vorübergehend nicht verfügbar und zeigt einen "
"Fehler an. In diesem Fall aktualisieren Sie die Seite, um fortzufahren."
-#: plinth/modules/upgrades/templates/upgrades.html:73
+#: plinth/modules/upgrades/templates/upgrades.html:58
msgid "Toggle recent update logs"
msgstr "Umschalten der letzten Update-Protokolle"
-#: plinth/modules/upgrades/templates/upgrades_configure.html:26
-#: plinth/modules/upgrades/templates/upgrades_configure.html:27
-#: plinth/modules/upgrades/views.py:107
+#: plinth/modules/upgrades/templates/upgrades_configure.html:11
+#: plinth/modules/upgrades/templates/upgrades_configure.html:12
+#: plinth/modules/upgrades/views.py:89
msgid "Manual update"
msgstr "Manuelles Update"
-#: plinth/modules/upgrades/views.py:66
+#: plinth/modules/upgrades/views.py:48
#, python-brace-format
msgid "Error when configuring unattended-upgrades: {error}"
msgstr "Fehler beim Konfigurieren von automatischen Aktualisierungen: {error}"
-#: plinth/modules/upgrades/views.py:70
+#: plinth/modules/upgrades/views.py:52
msgid "Automatic upgrades enabled"
msgstr "Automatische Systemaktualisierung aktivieren"
-#: plinth/modules/upgrades/views.py:73
+#: plinth/modules/upgrades/views.py:55
msgid "Automatic upgrades disabled"
msgstr "Automatische Aktualisierungen ausgeschaltet"
-#: plinth/modules/upgrades/views.py:75
+#: plinth/modules/upgrades/views.py:57
msgid "Settings unchanged"
msgstr "Einstellungen unverändert"
-#: plinth/modules/upgrades/views.py:101
+#: plinth/modules/upgrades/views.py:83
msgid "Upgrade process started."
msgstr "Aktualisierung gestartet."
-#: plinth/modules/upgrades/views.py:104
+#: plinth/modules/upgrades/views.py:86
msgid "Starting upgrade failed."
msgstr "Starten der Aktualisierung fehlgeschlagen."
-#: plinth/modules/users/__init__.py:51
-msgid "Users and Groups"
-msgstr "Benutzer und Gruppen"
-
-#: plinth/modules/users/__init__.py:54
+#: plinth/modules/users/__init__.py:37
msgid ""
"Create and managed user accounts. These accounts serve as centralized "
"authentication mechanism for most apps. Some apps further require a user "
@@ -6287,7 +6446,7 @@ msgstr ""
"muss ein Benutzerkonto Teil einer Gruppe sein, damit ein Benutzer auf die "
"App zugreifen kann."
-#: plinth/modules/users/__init__.py:59
+#: plinth/modules/users/__init__.py:42
#, python-brace-format
msgid ""
"Any user may login to {box_name} web interface to see a list of apps "
@@ -6299,35 +6458,39 @@ msgstr ""
"dürfen nur Mitglieder der Gruppe admin Apps oder "
"Systemeinstellungen ändern."
-#: plinth/modules/users/__init__.py:128
+#: plinth/modules/users/__init__.py:64
+msgid "Users and Groups"
+msgstr "Benutzer und Gruppen"
+
+#: plinth/modules/users/__init__.py:115
#, python-brace-format
msgid "Check LDAP entry \"{search_item}\""
msgstr "LDAP-Eintrag „{search_item}“ prüfen"
-#: plinth/modules/users/forms.py:43
+#: plinth/modules/users/forms.py:28
msgid "Access to all services and system settings"
msgstr "Zugriff auf alle Anwendungen und Systemeinstellungen"
-#: plinth/modules/users/forms.py:59
+#: plinth/modules/users/forms.py:44
msgid "Username is taken or is reserved."
msgstr "Benutzername wird bereits verwendet oder ist reserviert."
-#: plinth/modules/users/forms.py:87
+#: plinth/modules/users/forms.py:72
msgid "Enter a valid username."
msgstr "Einen gültigen Benutzernamen eingeben."
-#: plinth/modules/users/forms.py:93
+#: plinth/modules/users/forms.py:78
msgid ""
"Required. 150 characters or fewer. English letters, digits and @/./-/_ only."
msgstr ""
"Erforderlich. 150 Zeichen oder weniger. Nur englische Buchstaben, Ziffern "
"und @/./-/_."
-#: plinth/modules/users/forms.py:106 plinth/modules/users/forms.py:222
+#: plinth/modules/users/forms.py:91 plinth/modules/users/forms.py:207
msgid "Permissions"
msgstr "Berechtigungen"
-#: plinth/modules/users/forms.py:109
+#: plinth/modules/users/forms.py:94
msgid ""
"Select which services should be available to the new user. The user will be "
"able to log in to services that support single sign-on through LDAP, if they "
@@ -6342,20 +6505,20 @@ msgstr ""
"allen Diensten anmelden und sie können sich auch über SSH im System anmelden "
"und besitzen Administratorrechte (sudo)."
-#: plinth/modules/users/forms.py:148 plinth/modules/users/forms.py:372
+#: plinth/modules/users/forms.py:133 plinth/modules/users/forms.py:357
msgid "Creating LDAP user failed."
msgstr "Erstellen des LDAP-Benutzers ist fehlgeschlagen."
-#: plinth/modules/users/forms.py:159
+#: plinth/modules/users/forms.py:144
#, python-brace-format
msgid "Failed to add new user to {group} group."
msgstr "Der Benutzer konnte nicht der Gruppe {group} hinzugefügt werden."
-#: plinth/modules/users/forms.py:173
+#: plinth/modules/users/forms.py:158
msgid "Authorized SSH Keys"
msgstr "Autorisierte SSH-Schlüssel"
-#: plinth/modules/users/forms.py:175
+#: plinth/modules/users/forms.py:160
msgid ""
"Setting an SSH public key will allow this user to securely log in to the "
"system without using a password. You may enter multiple keys, one on each "
@@ -6366,82 +6529,82 @@ msgstr ""
"eingeben, einen pro Zeile. Leerzeilen und Zeilen, die mit # beginnen, werden "
"ignoriert."
-#: plinth/modules/users/forms.py:259
+#: plinth/modules/users/forms.py:244
msgid "Renaming LDAP user failed."
msgstr "Umbenennen des LDAP-Benutzers fehlgeschlagen."
-#: plinth/modules/users/forms.py:271
+#: plinth/modules/users/forms.py:256
msgid "Failed to remove user from group."
msgstr "Entfernen des Benutzers von der Gruppe fehlgeschlagen."
-#: plinth/modules/users/forms.py:282
+#: plinth/modules/users/forms.py:267
msgid "Failed to add user to group."
msgstr "Hinzufügen eines Benutzers zur Gruppe ist fehlgeschlagen."
-#: plinth/modules/users/forms.py:291
+#: plinth/modules/users/forms.py:276
msgid "Unable to set SSH keys."
msgstr "SSH-Schlüssel kann nicht gesetzt werden."
-#: plinth/modules/users/forms.py:306
+#: plinth/modules/users/forms.py:291
msgid "Failed to change user status."
msgstr "Fehler beim Ändern des Benutzerstatus."
-#: plinth/modules/users/forms.py:314
+#: plinth/modules/users/forms.py:299
msgid "Cannot delete the only administrator in the system."
msgstr "Der einzige Administrator des Systems kann nicht gelöscht werden."
-#: plinth/modules/users/forms.py:346
+#: plinth/modules/users/forms.py:331
msgid "Changing LDAP user password failed."
msgstr "Ändern des LDAP-Benutzerpassworts ist fehlgeschlagen."
-#: plinth/modules/users/forms.py:381
+#: plinth/modules/users/forms.py:366
msgid "Failed to add new user to admin group."
msgstr "Hinzufügen eines neuen Benutzers zur admin-Gruppe ist fehlgeschlagen."
-#: plinth/modules/users/forms.py:398
+#: plinth/modules/users/forms.py:383
msgid "Failed to restrict console access."
msgstr "Einschränken des Konsolenzugriffs fehlgeschlagen."
-#: plinth/modules/users/forms.py:410
+#: plinth/modules/users/forms.py:395
msgid "User account created, you are now logged in"
msgstr "Benutzerkonto wurde erstellt, Sie sind jetzt angemeldet"
-#: plinth/modules/users/templates/users_change_password.html:26
+#: plinth/modules/users/templates/users_change_password.html:11
#, python-format
msgid "Change Password for %(username)s"
msgstr "Passwort für %(username)s ändern"
-#: plinth/modules/users/templates/users_change_password.html:36
+#: plinth/modules/users/templates/users_change_password.html:21
msgid "Save Password"
msgstr "Passwort speichern"
-#: plinth/modules/users/templates/users_create.html:32
-#: plinth/modules/users/templates/users_list.html:42
-#: plinth/modules/users/templates/users_list.html:44
-#: plinth/modules/users/views.py:57
+#: plinth/modules/users/templates/users_create.html:17
+#: plinth/modules/users/templates/users_list.html:27
+#: plinth/modules/users/templates/users_list.html:29
+#: plinth/modules/users/views.py:42
msgid "Create User"
msgstr "Benutzer anlegen"
-#: plinth/modules/users/templates/users_delete.html:26
-#: plinth/modules/users/views.py:139
+#: plinth/modules/users/templates/users_delete.html:11
+#: plinth/modules/users/views.py:121
msgid "Delete User"
msgstr "Benutzer löschen"
-#: plinth/modules/users/templates/users_delete.html:29
+#: plinth/modules/users/templates/users_delete.html:14
#, python-format
msgid "Delete user %(username)s permanently?"
msgstr "Benutzer %(username)s dauerhaft löschen?"
-#: plinth/modules/users/templates/users_delete.html:38
+#: plinth/modules/users/templates/users_delete.html:23
#, python-format
msgid "Delete %(username)s"
msgstr "%(username)s löschen"
-#: plinth/modules/users/templates/users_firstboot.html:26
+#: plinth/modules/users/templates/users_firstboot.html:11
msgid "Administrator Account"
msgstr "Administratorkonto"
-#: plinth/modules/users/templates/users_firstboot.html:29
+#: plinth/modules/users/templates/users_firstboot.html:14
msgid ""
"Choose a username and password to access this web interface. The password "
"can be changed later. This user will be granted administrative privileges. "
@@ -6451,26 +6614,26 @@ msgstr ""
"zugreifen. Das Passwort kann später geändert werden. Dieser Benutzer erhält "
"Administrator-Rechte. Weitere Benutzer können später hinzugefügt werden."
-#: plinth/modules/users/templates/users_firstboot.html:42
+#: plinth/modules/users/templates/users_firstboot.html:27
msgid "Create Account"
msgstr "Konto erstellen"
-#: plinth/modules/users/templates/users_list.html:38
-#: plinth/modules/users/views.py:74
+#: plinth/modules/users/templates/users_list.html:23
+#: plinth/modules/users/views.py:59
msgid "Users"
msgstr "Benutzer"
-#: plinth/modules/users/templates/users_list.html:57
+#: plinth/modules/users/templates/users_list.html:42
#, python-format
msgid "Delete user %(username)s"
msgstr "Benutzer %(username)s löschen"
-#: plinth/modules/users/templates/users_list.html:65
+#: plinth/modules/users/templates/users_list.html:50
#, python-format
msgid "Edit user %(username)s"
msgstr "Benutzer %(username)s bearbeiten"
-#: plinth/modules/users/templates/users_update.html:30
+#: plinth/modules/users/templates/users_update.html:15
#, python-format
msgid ""
"Use the change password form to "
@@ -6480,52 +6643,47 @@ msgstr ""
"href='%(change_password_url)s'>Passwortänderungsformular, um das "
"Passwort zu ändern."
-#: plinth/modules/users/templates/users_update.html:42
-#: plinth/templates/language-selection.html:32
+#: plinth/modules/users/templates/users_update.html:27
+#: plinth/templates/language-selection.html:17
msgid "Save Changes"
msgstr "Änderungen speichern"
-#: plinth/modules/users/views.py:55
+#: plinth/modules/users/views.py:40
#, python-format
msgid "User %(username)s created."
msgstr "Benutzer %(username)s angelegt."
-#: plinth/modules/users/views.py:93
+#: plinth/modules/users/views.py:75
#, python-format
msgid "User %(username)s updated."
msgstr "Benutzer %(username)s geändert."
-#: plinth/modules/users/views.py:94
+#: plinth/modules/users/views.py:76
msgid "Edit User"
msgstr "Benutzer bearbeiten"
-#: plinth/modules/users/views.py:149
+#: plinth/modules/users/views.py:131
#, python-brace-format
msgid "User {user} deleted."
msgstr "Benutzer {user} gelöscht."
-#: plinth/modules/users/views.py:156
+#: plinth/modules/users/views.py:138
msgid "Deleting LDAP user failed."
msgstr "Löschen von LDAP-Benutzer fehlgeschlagen."
-#: plinth/modules/users/views.py:165
+#: plinth/modules/users/views.py:147
msgid "Change Password"
msgstr "Passwort ändern"
-#: plinth/modules/users/views.py:166
+#: plinth/modules/users/views.py:148
msgid "Password changed successfully."
msgstr "Passwort erfolgreich geändert."
-#: plinth/modules/wireguard/__init__.py:38
-#: plinth/modules/wireguard/manifest.py:29
-msgid "WireGuard"
-msgstr "WireGuard"
-
-#: plinth/modules/wireguard/__init__.py:43
+#: plinth/modules/wireguard/__init__.py:24
msgid "WireGuard is a fast, modern, secure VPN tunnel."
msgstr "WireGuard ist ein schneller, moderner, sicherer VPN-Tunnel."
-#: plinth/modules/wireguard/__init__.py:45
+#: plinth/modules/wireguard/__init__.py:26
#, python-brace-format
msgid ""
"It can be used to connect to a VPN provider which supports WireGuard, and to "
@@ -6535,7 +6693,7 @@ msgstr ""
"herzustellen, der WireGuard unterstützt, und um den gesamten ausgehenden "
"Datenverkehr von {box_name} über das VPN weiterzuleiten."
-#: plinth/modules/wireguard/__init__.py:49
+#: plinth/modules/wireguard/__init__.py:30
#, python-brace-format
msgid ""
"A second use case is to connect a mobile device to {box_name} while "
@@ -6547,18 +6705,23 @@ msgstr ""
"öffentlichen WLAN-Netzwerk kann der gesamte Datenverkehr sicher über die "
"{box_name} weitergeleitet werden."
-#: plinth/modules/wireguard/forms.py:47
+#: plinth/modules/wireguard/__init__.py:52
+#: plinth/modules/wireguard/manifest.py:14
+msgid "WireGuard"
+msgstr "WireGuard"
+
+#: plinth/modules/wireguard/forms.py:32
msgid "Invalid key."
msgstr "Ungültiger Schlüssel."
-#: plinth/modules/wireguard/forms.py:76
-#: plinth/modules/wireguard/templates/wireguard.html:32
-#: plinth/modules/wireguard/templates/wireguard.html:89
-#: plinth/modules/wireguard/templates/wireguard_delete_server.html:38
+#: plinth/modules/wireguard/forms.py:61
+#: plinth/modules/wireguard/templates/wireguard.html:17
+#: plinth/modules/wireguard/templates/wireguard.html:74
+#: plinth/modules/wireguard/templates/wireguard_delete_server.html:23
msgid "Public Key"
msgstr "Öffentlicher Schlüssel"
-#: plinth/modules/wireguard/forms.py:77
+#: plinth/modules/wireguard/forms.py:62
msgid ""
"Public key of the peer. Example: "
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs= ."
@@ -6566,11 +6729,11 @@ msgstr ""
"Öffentlicher Schlüssel des Peers. Beispiel: "
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs= ."
-#: plinth/modules/wireguard/forms.py:85
+#: plinth/modules/wireguard/forms.py:70
msgid "Endpoint of the server"
msgstr "Endpunkt des Servers"
-#: plinth/modules/wireguard/forms.py:86
+#: plinth/modules/wireguard/forms.py:71
msgid ""
"Domain name and port in the form \"ip:port\". Example: demo.wireguard."
"com:12912 ."
@@ -6578,11 +6741,11 @@ msgstr ""
"Domänenname und Port in der Form \"ip:port\". Beispiel: demo.wireguard."
"com:12912 ."
-#: plinth/modules/wireguard/forms.py:91
+#: plinth/modules/wireguard/forms.py:76
msgid "Public key of the server"
msgstr "Öffentlicher Schlüssel des Servers"
-#: plinth/modules/wireguard/forms.py:92
+#: plinth/modules/wireguard/forms.py:77
msgid ""
"Provided by the server operator, a long string of characters. Example: "
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs= ."
@@ -6590,11 +6753,11 @@ msgstr ""
"Vom Serveroperator bereitgestellt, eine lange Zeichenfolge. Beispiel: "
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs= ."
-#: plinth/modules/wireguard/forms.py:97
+#: plinth/modules/wireguard/forms.py:82
msgid "Client IP address provided by server"
msgstr "Vom Server bereitgestellte Client-IP-Adresse"
-#: plinth/modules/wireguard/forms.py:98
+#: plinth/modules/wireguard/forms.py:83
msgid ""
"IP address assigned to this machine on the VPN after connecting to the "
"endpoint. This value is usually provided by the server operator. Example: "
@@ -6604,11 +6767,11 @@ msgstr ""
"Verbindung mit dem Endpunkt hergestellt wurde. Dieser Wert wird in der Regel "
"vom Serverbetreiber bereitgestellt. Beispiel: 192.168.0.10."
-#: plinth/modules/wireguard/forms.py:104
+#: plinth/modules/wireguard/forms.py:89
msgid "Private key of this machine"
msgstr "Privater Schlüssel dieser Maschine"
-#: plinth/modules/wireguard/forms.py:105
+#: plinth/modules/wireguard/forms.py:90
msgid ""
"Optional. New public/private keys are generated if left blank. Public key "
"can then be provided to the server. This is the recommended way. However, "
@@ -6621,11 +6784,11 @@ msgstr ""
"bestehen jedoch darauf, dies bereitzustellen. Beispiel: "
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs= ."
-#: plinth/modules/wireguard/forms.py:113
+#: plinth/modules/wireguard/forms.py:98
msgid "Pre-shared key"
msgstr "Vorher geteilter Schlüssel"
-#: plinth/modules/wireguard/forms.py:114
+#: plinth/modules/wireguard/forms.py:99
msgid ""
"Optional. A shared secret key provided by the server to add an additional "
"layer of security. Fill in only if provided. Example: "
@@ -6635,108 +6798,108 @@ msgstr ""
"eine zusätzliche Sicherheitsebene hinzuzufügen. Füllen Sie nur aus, wenn "
"dies vorgesehen ist. Beispiel: MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs=."
-#: plinth/modules/wireguard/forms.py:120
+#: plinth/modules/wireguard/forms.py:105
msgid "Use this connection to send all outgoing traffic"
msgstr ""
"Verwenden Sie diese Verbindung, um den gesamten ausgehenden Datenverkehr zu "
"senden"
-#: plinth/modules/wireguard/forms.py:122
+#: plinth/modules/wireguard/forms.py:107
msgid "Typically checked for a VPN service though which all traffic is sent."
msgstr ""
"In der Regel auf einem VPN-Dienst überprüft, über den der gesamte "
"Datenverkehr gesendet wird."
-#: plinth/modules/wireguard/templates/wireguard.html:25
+#: plinth/modules/wireguard/templates/wireguard.html:10
msgid "As a Server"
msgstr "Als Server"
-#: plinth/modules/wireguard/templates/wireguard.html:27
+#: plinth/modules/wireguard/templates/wireguard.html:12
msgid "Peers allowed to connect to this server:"
msgstr "Peers, die eine Verbindung zu diesem Server herstellen dürfen:"
-#: plinth/modules/wireguard/templates/wireguard.html:33
+#: plinth/modules/wireguard/templates/wireguard.html:18
msgid "Allowed IPs"
msgstr "Zulässige IPs"
-#: plinth/modules/wireguard/templates/wireguard.html:34
-#: plinth/modules/wireguard/templates/wireguard.html:90
+#: plinth/modules/wireguard/templates/wireguard.html:19
+#: plinth/modules/wireguard/templates/wireguard.html:75
msgid "Last Connected Time"
msgstr "Letzte verbundene Zeit"
-#: plinth/modules/wireguard/templates/wireguard.html:53
+#: plinth/modules/wireguard/templates/wireguard.html:38
#, python-format
msgid "No peers configured to connect to this %(box_name)s yet."
msgstr ""
"Noch sind keine Peers für eine Verbindung mit diesem %(box_name)s "
"konfiguriert."
-#: plinth/modules/wireguard/templates/wireguard.html:62
+#: plinth/modules/wireguard/templates/wireguard.html:47
#, python-format
msgid "Public key for this %(box_name)s:"
msgstr "Öffentlicher Schlüssel für diese %(box_name)s:"
-#: plinth/modules/wireguard/templates/wireguard.html:68
+#: plinth/modules/wireguard/templates/wireguard.html:53
msgid "Not configured yet."
msgstr "Noch nicht konfiguriert."
-#: plinth/modules/wireguard/templates/wireguard.html:72
+#: plinth/modules/wireguard/templates/wireguard.html:57
msgid "Add a new peer"
msgstr "Hinzufügen eines neuen Peers"
-#: plinth/modules/wireguard/templates/wireguard.html:76
-#: plinth/modules/wireguard/views.py:69
+#: plinth/modules/wireguard/templates/wireguard.html:61
+#: plinth/modules/wireguard/views.py:51
msgid "Add Allowed Client"
msgstr "Zulässige Clients hinzufügen"
-#: plinth/modules/wireguard/templates/wireguard.html:79
+#: plinth/modules/wireguard/templates/wireguard.html:64
msgid "As a Client"
msgstr "Als Client"
-#: plinth/modules/wireguard/templates/wireguard.html:81
+#: plinth/modules/wireguard/templates/wireguard.html:66
#, python-format
msgid "Servers that %(box_name)s will connect to:"
msgstr "Server, mit denen %(box_name)s eine Verbindung herstellen:"
-#: plinth/modules/wireguard/templates/wireguard.html:88
-#: plinth/modules/wireguard/templates/wireguard_delete_server.html:34
+#: plinth/modules/wireguard/templates/wireguard.html:73
+#: plinth/modules/wireguard/templates/wireguard_delete_server.html:19
msgid "Endpoint"
msgstr "Endpunkt"
-#: plinth/modules/wireguard/templates/wireguard.html:111
+#: plinth/modules/wireguard/templates/wireguard.html:96
msgid "No connections to remote servers are configured yet."
msgstr "Es sind noch keine Verbindungen zu entfernten Servern konfiguriert."
-#: plinth/modules/wireguard/templates/wireguard.html:119
+#: plinth/modules/wireguard/templates/wireguard.html:104
msgid "Add a new server"
msgstr "Neuen Server hinzufügen"
-#: plinth/modules/wireguard/templates/wireguard.html:123
-#: plinth/modules/wireguard/views.py:178
+#: plinth/modules/wireguard/templates/wireguard.html:108
+#: plinth/modules/wireguard/views.py:160
msgid "Add Connection to Server"
msgstr "Verbindung zum Server hinzufügen"
-#: plinth/modules/wireguard/templates/wireguard_add_client.html:34
+#: plinth/modules/wireguard/templates/wireguard_add_client.html:19
msgid "Add Client"
msgstr "Client hinzufügen"
-#: plinth/modules/wireguard/templates/wireguard_delete_client.html:29
+#: plinth/modules/wireguard/templates/wireguard_delete_client.html:14
msgid "Are you sure that you want to delete this client?"
msgstr "Möchten Sie diesen Client wirklich löschen?"
-#: plinth/modules/wireguard/templates/wireguard_delete_server.html:29
+#: plinth/modules/wireguard/templates/wireguard_delete_server.html:14
msgid "Are you sure that you want to delete this server?"
msgstr "Sind Sie sicher, dass Sie diesen Server löschen wollen?"
-#: plinth/modules/wireguard/templates/wireguard_edit_client.html:34
+#: plinth/modules/wireguard/templates/wireguard_edit_client.html:19
msgid "Update Client"
msgstr "Client aktualisieren"
-#: plinth/modules/wireguard/templates/wireguard_edit_server.html:34
+#: plinth/modules/wireguard/templates/wireguard_edit_server.html:19
msgid "Update Connection"
msgstr "Verbindung aktualisieren"
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:27
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:12
#, python-format
msgid ""
"%(box_name)s will allow this client to connect to it. Ensure that the client "
@@ -6745,44 +6908,44 @@ msgstr ""
"%(box_name)s ermöglicht diesem Client die Verbindung mit ihm. Stellen Sie "
"sicher, dass der Client mit den folgenden Informationen konfiguriert ist."
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:35
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:20
msgid "Client public key:"
msgstr "Öffentlicher Clientschlüssel:"
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:39
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:24
msgid "IP address to use for client:"
msgstr "IP-Adresse, die für den Client verwendet werden soll:"
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:43
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:46
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:28
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:31
msgid "Pre-shared key:"
msgstr "Vorher geteilter Schlüssel:"
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:47
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:32
msgid "Server endpoints:"
msgstr "Server-Endpunkte:"
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:55
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:42
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:40
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:27
msgid "Server public key:"
msgstr "Öffentlicher Schlüssel des Servers:"
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:65
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:64
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:50
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:49
msgid "Data transmitted:"
msgstr "Übermittelte Daten:"
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:69
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:68
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:54
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:53
msgid "Data received:"
msgstr "Erhaltene Daten:"
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:73
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:72
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:58
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:57
msgid "Latest handshake:"
msgstr "Letzter Handshake:"
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:29
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:14
#, python-format
msgid ""
"%(box_name)s will attempt to reach a WireGuard server with the following "
@@ -6794,124 +6957,124 @@ msgstr ""
"konfiguriert ist, dass der öffentliche Schlüssel und die IP-Adresse von "
"%(box_name)s zulässig sind."
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:38
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:23
msgid "Server endpoint:"
msgstr "Serverendpunkt:"
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:50
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:35
msgid "Public key of this machine:"
msgstr "Öffentlicher Schlüssel dieses Computers:"
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:54
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:39
msgid "IP address of this machine:"
msgstr "IP-Adresse dieses Rechners:"
-#: plinth/modules/wireguard/views.py:64
+#: plinth/modules/wireguard/views.py:46
msgid "Added new client."
msgstr "Neuer Client wurde hinzugefügt."
-#: plinth/modules/wireguard/views.py:79 plinth/modules/wireguard/views.py:138
+#: plinth/modules/wireguard/views.py:61 plinth/modules/wireguard/views.py:120
msgid "Client with public key already exists"
msgstr "Client mit öffentlichem Schlüssel ist bereits vorhanden"
-#: plinth/modules/wireguard/views.py:92
+#: plinth/modules/wireguard/views.py:74
msgid "Allowed Client"
msgstr "Zulässiger Client"
-#: plinth/modules/wireguard/views.py:114
+#: plinth/modules/wireguard/views.py:96
msgid "Updated client."
msgstr "Aktualisierter Client."
-#: plinth/modules/wireguard/views.py:119
+#: plinth/modules/wireguard/views.py:101
msgid "Modify Client"
msgstr "Client bearbeiten"
-#: plinth/modules/wireguard/views.py:152
+#: plinth/modules/wireguard/views.py:134
msgid "Delete Allowed Client"
msgstr "Zulässigen Client löschen"
-#: plinth/modules/wireguard/views.py:161
+#: plinth/modules/wireguard/views.py:143
msgid "Client deleted."
msgstr "Client gelöscht."
-#: plinth/modules/wireguard/views.py:163
+#: plinth/modules/wireguard/views.py:145
msgid "Client not found"
msgstr "Client nicht gefunden"
-#: plinth/modules/wireguard/views.py:173
+#: plinth/modules/wireguard/views.py:155
msgid "Added new server."
msgstr "Neuer Server wurde hinzugefügt."
-#: plinth/modules/wireguard/views.py:194
+#: plinth/modules/wireguard/views.py:176
msgid "Connection to Server"
msgstr "Verbindung zum Server"
-#: plinth/modules/wireguard/views.py:212
+#: plinth/modules/wireguard/views.py:194
msgid "Updated server."
msgstr "Aktualisierter Server."
-#: plinth/modules/wireguard/views.py:217
+#: plinth/modules/wireguard/views.py:199
msgid "Modify Connection to Server"
msgstr "Ändern der Verbindung zum Server"
-#: plinth/modules/wireguard/views.py:254
+#: plinth/modules/wireguard/views.py:236
msgid "Delete Connection to Server"
msgstr "Verbindung zum Server löschen"
-#: plinth/modules/wireguard/views.py:274
+#: plinth/modules/wireguard/views.py:256
msgid "Server deleted."
msgstr "Server gelöscht."
-#: plinth/network.py:42
+#: plinth/network.py:27
msgid "PPPoE"
msgstr "PPPoE"
-#: plinth/network.py:43
+#: plinth/network.py:28
msgid "Generic"
msgstr "Allgemein"
-#: plinth/package.py:137
+#: plinth/package.py:122
msgid "Error during installation"
msgstr "Fehler bei der Installation"
-#: plinth/package.py:159
+#: plinth/package.py:144
msgid "installing"
msgstr "Installation läuft"
-#: plinth/package.py:161
+#: plinth/package.py:146
msgid "downloading"
msgstr "herunterladen"
-#: plinth/package.py:163
+#: plinth/package.py:148
msgid "media change"
msgstr "Medienwechsel"
-#: plinth/package.py:165
+#: plinth/package.py:150
#, python-brace-format
msgid "configuration file: {file}"
msgstr "Konfigurationsdatei: {file}"
-#: plinth/templates/403.html:25
+#: plinth/templates/403.html:10
msgid "403 Forbidden"
msgstr "403 Unzulässig"
-#: plinth/templates/403.html:29
+#: plinth/templates/403.html:14
#, python-format
msgid "You don't have permission to access %(request_path)s on this server."
msgstr ""
"Sie haben unzureichende Rechte, um auf %(request_path)s auf diesem Server "
"zuzugreifen."
-#: plinth/templates/404.html:25
+#: plinth/templates/404.html:10
msgid "404"
msgstr "404"
-#: plinth/templates/404.html:28
+#: plinth/templates/404.html:13
#, python-format
msgid "Requested page %(request_path)s was not found."
msgstr "Die angeforderte Seite %(request_path)s wurde nicht gefunden."
-#: plinth/templates/404.html:34
+#: plinth/templates/404.html:19
msgid ""
"If you believe this missing page should exist, please file a bug at the "
"FreedomBox Service (Plinth) project online Problemverfolger des FreedomBox "
"(Plinth) Projektes."
-#: plinth/templates/500.html:25
+#: plinth/templates/500.html:10
msgid "500"
msgstr "500"
-#: plinth/templates/500.html:29
+#: plinth/templates/500.html:14
#, python-format
msgid ""
"This is an internal error and not something you caused or can fix. Please "
@@ -6940,115 +7103,119 @@ msgstr ""
"wir ihn beheben können. Fügen Sie auch das Statusprotokoll dem Fehlerbericht bei."
-#: plinth/templates/app.html:47
+#: plinth/templates/app-header.html:22
+msgid "Installation"
+msgstr "Installation"
+
+#: plinth/templates/app.html:32
#, python-format
msgid "Service %(service_name)s is running."
msgstr "Dienst %(service_name)s läuft."
-#: plinth/templates/app.html:52
+#: plinth/templates/app.html:37
#, python-format
msgid "Service %(service_name)s is not running."
msgstr "Dienst %(service_name)s läuft nicht."
-#: plinth/templates/base.html:50
+#: plinth/templates/base.html:35
#, python-format
msgid "Core functionality and web interface for %(box_name)s"
msgstr "Kernfunktionalität und Weboberfläche für %(box_name)s"
-#: plinth/templates/base.html:96
+#: plinth/templates/base.html:81
msgid "Toggle navigation"
msgstr "Navigation ein-/ausklappen"
-#: plinth/templates/base.html:120 plinth/templates/base.html:123
+#: plinth/templates/base.html:105 plinth/templates/base.html:108
msgid "Home"
msgstr "Startseite"
-#: plinth/templates/base.html:128 plinth/templates/base.html:132
+#: plinth/templates/base.html:113 plinth/templates/base.html:117
msgid "Apps"
msgstr "Apps"
-#: plinth/templates/base.html:137 plinth/templates/base.html:141
+#: plinth/templates/base.html:122 plinth/templates/base.html:126
msgid "System"
msgstr "System"
-#: plinth/templates/base.html:173 plinth/templates/base.html:174
+#: plinth/templates/base.html:158 plinth/templates/base.html:159
msgid "Change password"
msgstr "Passwort ändern"
-#: plinth/templates/base.html:181 plinth/templates/base.html:182
+#: plinth/templates/base.html:166 plinth/templates/base.html:167
msgid "Restart"
msgstr "Neu starten"
-#: plinth/templates/base.html:187 plinth/templates/base.html:188
+#: plinth/templates/base.html:172 plinth/templates/base.html:173
msgid "Shut down"
msgstr "Herunterfahren"
-#: plinth/templates/base.html:195 plinth/templates/base.html:196
-#: plinth/templates/base.html:220 plinth/templates/base.html:222
+#: plinth/templates/base.html:180 plinth/templates/base.html:181
+#: plinth/templates/base.html:205 plinth/templates/base.html:207
msgid "Log out"
msgstr "Abmelden"
-#: plinth/templates/base.html:204 plinth/templates/base.html:207
+#: plinth/templates/base.html:189 plinth/templates/base.html:192
msgid "Select language"
msgstr "Sprache wählen"
-#: plinth/templates/base.html:212 plinth/templates/base.html:214
+#: plinth/templates/base.html:197 plinth/templates/base.html:199
msgid "Log in"
msgstr "Anmelden"
-#: plinth/templates/clients.html:32
+#: plinth/templates/clients.html:17
msgid "Web"
msgstr "Web"
-#: plinth/templates/clients.html:57
+#: plinth/templates/clients.html:42
msgid "Desktop"
msgstr "Desktop"
-#: plinth/templates/clients.html:68
+#: plinth/templates/clients.html:53
msgid "GNU/Linux"
msgstr "GNU/Linux"
-#: plinth/templates/clients.html:70
+#: plinth/templates/clients.html:55
msgid "Windows"
msgstr "Windows"
-#: plinth/templates/clients.html:72
+#: plinth/templates/clients.html:57
msgid "macOS"
msgstr "macOS"
-#: plinth/templates/clients.html:88
+#: plinth/templates/clients.html:73
msgid "Mobile"
msgstr "Smartphone"
-#: plinth/templates/clients.html:99
+#: plinth/templates/clients.html:84
msgid "Play Store"
msgstr "Play Store"
-#: plinth/templates/clients.html:101
+#: plinth/templates/clients.html:86
msgid "F-Droid"
msgstr "F-Droid"
-#: plinth/templates/clients.html:103
+#: plinth/templates/clients.html:88
msgid "App Store"
msgstr "App-Store"
-#: plinth/templates/clients.html:119
+#: plinth/templates/clients.html:104
msgid "Package"
msgstr "Paket"
-#: plinth/templates/clients.html:126
+#: plinth/templates/clients.html:111
msgid "Debian:"
msgstr "Debian:"
-#: plinth/templates/clients.html:129
+#: plinth/templates/clients.html:114
msgid "Homebrew:"
msgstr "Homebrew:"
-#: plinth/templates/clients.html:132
+#: plinth/templates/clients.html:117
msgid "RPM:"
msgstr "RPM:"
-#: plinth/templates/first_setup.html:39
+#: plinth/templates/first_setup.html:24
#, python-format
msgid ""
"Please wait for %(box_name)s to finish installation. You can start using "
@@ -7057,11 +7224,7 @@ msgstr ""
"Bitte warten Sie, bis %(box_name)s fertig eingerichtet ist. Anschließend "
"können Sie Ihre %(box_name)s verwenden."
-#: plinth/templates/header.html:36
-msgid "Installation"
-msgstr "Installation"
-
-#: plinth/templates/index.html:37
+#: plinth/templates/index.html:22
#, python-format
msgid ""
"Enable some applications to add shortcuts to "
@@ -7070,11 +7233,11 @@ msgstr ""
"Einige Anwendungen aktivieren, um Verknüpfungen "
"zu dieser Seite hinzuzufügen."
-#: plinth/templates/index.html:59
+#: plinth/templates/index.html:44
msgid "Configure »"
msgstr "Konfigurieren »"
-#: plinth/templates/index.html:115
+#: plinth/templates/index.html:100
#, python-format
msgid ""
"%(box_name)s, a Debian pure blend, is a 100%% free software self-hosting web "
@@ -7088,7 +7251,7 @@ msgstr ""
"Es bietet Online-Kommunikationswerkzeuge, die Ihre Privatsphäre und Ihr "
"Eigentum an Ihren Daten respektieren."
-#: plinth/templates/index.html:124
+#: plinth/templates/index.html:109
#, python-format
msgid ""
"This portal is a part of the %(box_name)s web interface. %(box_name)s is "
@@ -7099,41 +7262,41 @@ msgstr ""
"freie Software, die unter der GNU Affero General Public License, Version 3 "
"oder höher, vertrieben wird."
-#: plinth/templates/index.html:144
+#: plinth/templates/index.html:129
msgid "Homepage"
msgstr "Homepage"
-#: plinth/templates/index.html:147
+#: plinth/templates/index.html:132
msgid "Source Code"
msgstr "Quellcode"
-#: plinth/templates/index.html:150
+#: plinth/templates/index.html:135
msgid "Donate"
msgstr "Spenden"
-#: plinth/templates/index.html:154
+#: plinth/templates/index.html:139
msgid "FreedomBox Foundation"
msgstr "FreedomBox Stiftung"
-#: plinth/templates/index.html:161
+#: plinth/templates/index.html:146
msgid "IRC Chatroom"
msgstr "IRC-Chatraum"
-#: plinth/templates/index.html:166
+#: plinth/templates/index.html:151
msgid "Mailing list"
msgstr "Mailingliste"
-#: plinth/templates/internal-zone.html:26
+#: plinth/templates/internal-zone.html:11
#, python-format
msgid "%(service_name)s is available only on internal networks."
msgstr ""
"Dienst %(service_name)s ist nur im internen Netzwerk erreichbar."
-#: plinth/templates/internal-zone.html:32
+#: plinth/templates/internal-zone.html:17
msgid "Currently there are no network interfaces configured as internal."
msgstr "Derzeit ist keine Netzwerkschnittstelle als intern konfiguriert."
-#: plinth/templates/internal-zone.html:34
+#: plinth/templates/internal-zone.html:19
#, python-format
msgid ""
"Currently the following network interfaces are configured as internal: "
@@ -7142,15 +7305,15 @@ msgstr ""
"Derzeit sind die folgenden Netzwerkschnittstellen als intern konfiguriert: "
"%(interface_list)s"
-#: plinth/templates/notifications-dropdown.html:26
+#: plinth/templates/notifications-dropdown.html:11
msgid "Notifications"
msgstr "Benachrichtigungen"
-#: plinth/templates/port-forwarding-info.html:23
+#: plinth/templates/port-forwarding-info.html:8
msgid "Port Forwarding"
msgstr "Port-Weiterleitung"
-#: plinth/templates/port-forwarding-info.html:26
+#: plinth/templates/port-forwarding-info.html:11
#, python-format
msgid ""
"If your FreedomBox is behind a router, you will need to set up port "
@@ -7161,15 +7324,15 @@ msgstr ""
"Portweiterleitung auf Ihrem Router einrichten. Sie sollten die folgenden "
"Ports für %(service_name)s weiterleiten:"
-#: plinth/templates/setup.html:51
+#: plinth/templates/setup.html:36
msgid "Install this application?"
msgstr "Diese Anwendung installieren?"
-#: plinth/templates/setup.html:55
+#: plinth/templates/setup.html:40
msgid "This application needs an update. Update now?"
msgstr "Die Anwendung muss aktualisiert werden! Jetzt aktualisieren?"
-#: plinth/templates/setup.html:66
+#: plinth/templates/setup.html:51
msgid ""
"Another installation or upgrade is already running. Please wait for a few "
"moments before trying again."
@@ -7177,49 +7340,49 @@ msgstr ""
"Es läuft bereits eine andere Installation oder Update. Bitte warten Sie "
"einen Moment, bevor Sie es erneut versuchen."
-#: plinth/templates/setup.html:73
+#: plinth/templates/setup.html:58
msgid "This application is currently not available in your distribution."
msgstr "Diese Anwendung ist in Ihrer Distribution derzeit nicht erhältlich."
-#: plinth/templates/setup.html:87
+#: plinth/templates/setup.html:72
msgid "Install"
msgstr "Installieren"
-#: plinth/templates/setup.html:98
+#: plinth/templates/setup.html:83
msgid "Performing pre-install operation"
msgstr "Installationsvorbereitungen werden ausgeführt"
-#: plinth/templates/setup.html:102
+#: plinth/templates/setup.html:87
msgid "Performing post-install operation"
msgstr "Installationsnachbereitungen werden ausgeführt"
-#: plinth/templates/setup.html:107
+#: plinth/templates/setup.html:92
#, python-format
msgid "Installing %(package_names)s: %(status)s"
msgstr "%(package_names)s wird installiert: %(status)s"
-#: plinth/templates/setup.html:117
+#: plinth/templates/setup.html:102
#, python-format
msgid "%(percentage)s%% complete"
msgstr "%(percentage)s %% abgeschlossen"
-#: plinth/templates/toolbar.html:38
+#: plinth/templates/toolbar.html:23
msgid "Launch web client"
msgstr "Webclient starten"
-#: plinth/templates/toolbar.html:47
+#: plinth/templates/toolbar.html:32
msgid "Client Apps"
msgstr "Client-Anwendungen"
-#: plinth/views.py:179
+#: plinth/views.py:189
msgid "Application enabled"
msgstr "Anwendung aktiviert"
-#: plinth/views.py:182
+#: plinth/views.py:192
msgid "Application disabled"
msgstr "Anwendung deaktiviert"
-#: plinth/web_framework.py:190
+#: plinth/web_framework.py:107
msgid "Gujarati"
msgstr "Gujarati"
diff --git a/plinth/locale/django.pot b/plinth/locale/django.pot
index e1cc81413..03780b339 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: 2020-02-14 21:26+0200\n"
+"POT-Creation-Date: 2020-02-24 19:12-0500\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME This means that devices on the Internet can reach you when you are " +"connected to the Internet. Every time you connect to the Internet with your " +"Internet Service Provider (ISP), you may get a different IP address, " +"especially after some offline time. Many ISPs offer this type of " +"connectivity. If you have a public IP address but are unsure if it changes " +"over time or not, it is safer to choose this option.
" +msgstr "" + #: plinth/modules/networks/forms.py:313 +#, python-brace-format +msgid "" +"I have a public IP address that does not change overtime (recommended)This means that devices on the Internet can reach you " +"when you are connected to the Internet. Every time you connect to the " +"Internet with your Internet Service Provider (ISP), you always get the same " +"IP address. This is the most trouble-free setup for many {box_name} services " +"but very few ISPs offer this. You may be able to get this service from your " +"ISP by making an additional payment.
" +msgstr "" + +#: plinth/modules/networks/forms.py:326 +#, python-brace-format +msgid "" +"I dont have a public IP addressThis means that " +"devices on the Internet can not reach you when you are connected to " +"the Internet. Every time you connect to the Internet with your Internet " +"Service Provider (ISP), you get an IP address that is only relevant for " +"local networks. Many ISPs offer this type of connectivity. This is the most " +"troublesome situation for hosting services at home. {box_name} provides many " +"workaround solutions but each solution has some limitations.
" +msgstr "" + +#: plinth/modules/networks/forms.py:351 msgid "Preferred router configuration" msgstr "" -#: plinth/modules/networks/forms.py:318 +#: plinth/modules/networks/forms.py:356 #, python-brace-format msgid "" -"Use DMZ feature to forward all trafficMost routers " -"provide a configuration setting called DMZ. This will allow the router to " -"forward all incoming traffic from the internet to a single IP address such " -"as the {box_name}'s address. First remember to configure a static local IP " -"address for your {box_name} in your router's configuration.
" +"Use DMZ feature to forward all traffic (recommended)Most routers provide a configuration setting called DMZ. This will allow " +"the router to forward all incoming traffic from the Internet to a single IP " +"address such as the {box_name}'s IP address. First remember to configure a " +"static local IP address for your {box_name} in your router's configuration." +"p>" msgstr "" -#: plinth/modules/networks/forms.py:332 +#: plinth/modules/networks/forms.py:368 #, python-brace-format msgid "" -"Forward Specific Traffic as needed by each application
You may alternatively choose to forward only specific traffic to your " "{box_name}. This is ideal if you have other servers like {box_name} in your " "network or if your router does not support DMZ feature. All applications " @@ -3063,276 +3126,280 @@ msgid "" "to be forwarded for that application to work.
" msgstr "" -#: plinth/modules/networks/forms.py:349 +#: plinth/modules/networks/forms.py:382 msgid "" -"Router is currently unconfiguredChoose this if you " +"Router is currently unconfigured
Choose this if you " "have not configured or are unable to configure the router currently and wish " "to be reminded later. Some of the other configuration steps may fail.
" msgstr "" -#: plinth/modules/networks/networks.py:43 +#: plinth/modules/networks/networks.py:32 msgid "Network Connections" msgstr "" -#: plinth/modules/networks/networks.py:59 +#: plinth/modules/networks/networks.py:46 msgid "Cannot show connection: Connection not found." msgstr "" -#: plinth/modules/networks/networks.py:94 +#: plinth/modules/networks/networks.py:81 msgid "Connection Information" msgstr "" -#: plinth/modules/networks/networks.py:108 +#: plinth/modules/networks/networks.py:95 msgid "Cannot edit connection: Connection not found." msgstr "" -#: plinth/modules/networks/networks.py:114 +#: plinth/modules/networks/networks.py:101 msgid "This type of connection is not yet understood." msgstr "" -#: plinth/modules/networks/networks.py:136 -#: plinth/modules/networks/networks.py:220 -#: plinth/modules/networks/templates/connections_edit.html:35 +#: plinth/modules/networks/networks.py:123 +#: plinth/modules/networks/networks.py:207 +#: plinth/modules/networks/templates/connections_edit.html:20 msgid "Edit Connection" msgstr "" -#: plinth/modules/networks/networks.py:232 +#: plinth/modules/networks/networks.py:219 #, python-brace-format msgid "Activated connection {name}." msgstr "" -#: plinth/modules/networks/networks.py:236 +#: plinth/modules/networks/networks.py:223 msgid "Failed to activate connection: Connection not found." msgstr "" -#: plinth/modules/networks/networks.py:242 +#: plinth/modules/networks/networks.py:229 #, python-brace-format msgid "Failed to activate connection {name}: No suitable device is available." msgstr "" -#: plinth/modules/networks/networks.py:255 +#: plinth/modules/networks/networks.py:242 #, python-brace-format msgid "Deactivated connection {name}." msgstr "" -#: plinth/modules/networks/networks.py:259 +#: plinth/modules/networks/networks.py:246 msgid "Failed to de-activate connection: Connection not found." msgstr "" -#: plinth/modules/networks/networks.py:269 -#: plinth/modules/networks/templates/connections_list.html:62 -#: plinth/modules/networks/templates/connections_list.html:64 +#: plinth/modules/networks/networks.py:256 +#: plinth/modules/networks/templates/connections_list.html:12 +#: plinth/modules/networks/templates/connections_list.html:14 msgid "Nearby Wi-Fi Networks" msgstr "" -#: plinth/modules/networks/networks.py:293 -#: plinth/modules/networks/templates/connections_list.html:67 -#: plinth/modules/networks/templates/connections_list.html:69 -#: plinth/modules/wireguard/templates/wireguard_add_server.html:34 +#: plinth/modules/networks/networks.py:280 +#: plinth/modules/networks/templates/connections_list.html:17 +#: plinth/modules/networks/templates/connections_list.html:19 +#: plinth/modules/wireguard/templates/wireguard_add_server.html:19 msgid "Add Connection" msgstr "" -#: plinth/modules/networks/networks.py:311 +#: plinth/modules/networks/networks.py:298 msgid "Adding New Generic Connection" msgstr "" -#: plinth/modules/networks/networks.py:329 +#: plinth/modules/networks/networks.py:316 msgid "Adding New Ethernet Connection" msgstr "" -#: plinth/modules/networks/networks.py:347 +#: plinth/modules/networks/networks.py:334 msgid "Adding New PPPoE Connection" msgstr "" -#: plinth/modules/networks/networks.py:382 +#: plinth/modules/networks/networks.py:369 msgid "Adding New Wi-Fi Connection" msgstr "" -#: plinth/modules/networks/networks.py:397 +#: plinth/modules/networks/networks.py:384 #, python-brace-format msgid "Connection {name} deleted." msgstr "" -#: plinth/modules/networks/networks.py:401 -#: plinth/modules/networks/networks.py:411 +#: plinth/modules/networks/networks.py:388 +#: plinth/modules/networks/networks.py:398 msgid "Failed to delete connection: Connection not found." msgstr "" -#: plinth/modules/networks/networks.py:416 -#: plinth/modules/networks/templates/connections_delete.html:26 +#: plinth/modules/networks/networks.py:403 +#: plinth/modules/networks/templates/connections_delete.html:11 msgid "Delete Connection" msgstr "" -#: plinth/modules/networks/networks.py:442 +#: plinth/modules/networks/networks.py:428 msgid "Router configuration type saved." msgstr "" -#: plinth/modules/networks/templates/connection_show.html:43 +#: plinth/modules/networks/networks.py:474 +msgid "Internet connection type saved." +msgstr "" + +#: plinth/modules/networks/templates/connection_show.html:28 msgid "Edit connection" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:43 -#: plinth/modules/wireguard/templates/wireguard_show_client.html:83 -#: plinth/modules/wireguard/templates/wireguard_show_server.html:84 -#: plinth/templates/base.html:167 plinth/templates/base.html:168 +#: plinth/modules/networks/templates/connection_show.html:28 +#: plinth/modules/wireguard/templates/wireguard_show_client.html:68 +#: plinth/modules/wireguard/templates/wireguard_show_server.html:69 +#: plinth/templates/base.html:152 plinth/templates/base.html:153 msgid "Edit" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:50 -#: plinth/modules/networks/templates/connections_list.html:90 +#: plinth/modules/networks/templates/connection_show.html:35 +#: plinth/modules/networks/templates/connections_list.html:40 msgid "Deactivate" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:57 -#: plinth/modules/networks/templates/connections_list.html:98 +#: plinth/modules/networks/templates/connection_show.html:42 +#: plinth/modules/networks/templates/connections_list.html:48 msgid "Activate" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:63 +#: plinth/modules/networks/templates/connection_show.html:48 msgid "Delete connection" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:66 -#: plinth/modules/networks/templates/connections_diagram.html:73 -#: plinth/modules/networks/templates/connections_diagram.html:76 -#: plinth/modules/networks/templates/connections_diagram.html:105 -#: plinth/modules/networks/templates/connections_diagram.html:127 +#: plinth/modules/networks/templates/connection_show.html:51 +#: plinth/modules/networks/templates/connections_diagram.html:58 +#: plinth/modules/networks/templates/connections_diagram.html:61 +#: plinth/modules/networks/templates/connections_diagram.html:90 +#: plinth/modules/networks/templates/connections_diagram.html:112 msgid "Connection" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:71 +#: plinth/modules/networks/templates/connection_show.html:56 msgid "Primary connection" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:73 -#: plinth/modules/networks/templates/connection_show.html:217 -#: plinth/modules/networks/templates/connection_show.html:256 +#: plinth/modules/networks/templates/connection_show.html:58 +#: plinth/modules/networks/templates/connection_show.html:202 +#: plinth/modules/networks/templates/connection_show.html:241 msgid "yes" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:84 -#: plinth/modules/storage/templates/storage.html:40 +#: plinth/modules/networks/templates/connection_show.html:69 +#: plinth/modules/storage/templates/storage.html:25 msgid "Device" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:88 +#: plinth/modules/networks/templates/connection_show.html:73 msgid "State" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:93 +#: plinth/modules/networks/templates/connection_show.html:78 msgid "State reason" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:102 +#: plinth/modules/networks/templates/connection_show.html:87 msgid "MAC address" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:106 +#: plinth/modules/networks/templates/connection_show.html:91 msgid "Interface" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:110 -#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:33 -#: plinth/modules/snapshot/templates/snapshot_manage.html:45 -#: plinth/modules/snapshot/templates/snapshot_rollback.html:41 +#: plinth/modules/networks/templates/connection_show.html:95 +#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:18 +#: plinth/modules/snapshot/templates/snapshot_manage.html:30 +#: plinth/modules/snapshot/templates/snapshot_rollback.html:26 msgid "Description" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:116 +#: plinth/modules/networks/templates/connection_show.html:101 msgid "Physical Link" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:121 +#: plinth/modules/networks/templates/connection_show.html:106 msgid "Link state" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:125 +#: plinth/modules/networks/templates/connection_show.html:110 msgid "cable is connected" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:128 +#: plinth/modules/networks/templates/connection_show.html:113 msgid "please check cable" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:133 -#: plinth/modules/networks/templates/connection_show.html:149 +#: plinth/modules/networks/templates/connection_show.html:118 +#: plinth/modules/networks/templates/connection_show.html:134 msgid "Speed" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:135 +#: plinth/modules/networks/templates/connection_show.html:120 #, python-format msgid "%(ethernet_speed)s Mbit/s" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:151 +#: plinth/modules/networks/templates/connection_show.html:136 #, python-format msgid "%(wireless_bitrate)s Mbit/s" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:163 +#: plinth/modules/networks/templates/connection_show.html:148 msgid "Signal strength" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:181 +#: plinth/modules/networks/templates/connection_show.html:166 msgid "IPv4" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:186 -#: plinth/modules/networks/templates/connection_show.html:227 -#: plinth/modules/shadowsocks/forms.py:64 +#: plinth/modules/networks/templates/connection_show.html:171 +#: plinth/modules/networks/templates/connection_show.html:212 +#: plinth/modules/shadowsocks/forms.py:49 msgid "Method" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:193 -#: plinth/modules/networks/templates/connection_show.html:234 +#: plinth/modules/networks/templates/connection_show.html:178 +#: plinth/modules/networks/templates/connection_show.html:219 msgid "IP address" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:209 -#: plinth/modules/networks/templates/connection_show.html:248 +#: plinth/modules/networks/templates/connection_show.html:194 +#: plinth/modules/networks/templates/connection_show.html:233 msgid "DNS server" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:216 -#: plinth/modules/networks/templates/connection_show.html:255 -#: plinth/modules/storage/forms.py:156 +#: plinth/modules/networks/templates/connection_show.html:201 +#: plinth/modules/networks/templates/connection_show.html:240 +#: plinth/modules/storage/forms.py:141 msgid "Default" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:222 +#: plinth/modules/networks/templates/connection_show.html:207 msgid "IPv6" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:263 +#: plinth/modules/networks/templates/connection_show.html:248 msgid "This connection is not active." msgstr "" -#: plinth/modules/networks/templates/connection_show.html:266 -#: plinth/modules/security/__init__.py:38 plinth/modules/security/views.py:47 +#: plinth/modules/networks/templates/connection_show.html:251 +#: plinth/modules/security/__init__.py:45 msgid "Security" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:271 -#: plinth/modules/networks/templates/connection_show.html:291 -#: plinth/modules/networks/templates/connection_show.html:310 +#: plinth/modules/networks/templates/connection_show.html:256 +#: plinth/modules/networks/templates/connection_show.html:276 +#: plinth/modules/networks/templates/connection_show.html:295 msgid "Firewall zone" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:280 +#: plinth/modules/networks/templates/connection_show.html:265 msgid "" "This interface should be connected to a local network/machine. If you " "connect this interface to a public network, services meant to be available " "only internally will become available externally. This is a security risk." msgstr "" -#: plinth/modules/networks/templates/connection_show.html:300 +#: plinth/modules/networks/templates/connection_show.html:285 msgid "" "This interface should receive your Internet connection. If you connect it to " "a local network/machine, many services meant to available only internally " "will not be available." msgstr "" -#: plinth/modules/networks/templates/connection_show.html:319 +#: plinth/modules/networks/templates/connection_show.html:304 #, python-format msgid "" "This interface is not maintained by %(box_name)s. Its security status is " @@ -3341,109 +3408,132 @@ msgid "" "connection and re-configure it." msgstr "" -#: plinth/modules/networks/templates/connections_create.html:34 +#: plinth/modules/networks/templates/connections_create.html:19 msgid "Create Connection" msgstr "" -#: plinth/modules/networks/templates/connections_delete.html:29 +#: plinth/modules/networks/templates/connections_delete.html:14 #, python-format msgid "Delete connection %(name)s permanently?" msgstr "" -#: plinth/modules/networks/templates/connections_diagram.html:65 +#: plinth/modules/networks/templates/connections_diagram.html:50 msgid "Internet" msgstr "" -#: plinth/modules/networks/templates/connections_diagram.html:70 -#: plinth/modules/networks/templates/connections_diagram.html:102 +#: plinth/modules/networks/templates/connections_diagram.html:55 +#: plinth/modules/networks/templates/connections_diagram.html:87 msgid "Spacing" msgstr "" -#: plinth/modules/networks/templates/connections_diagram.html:83 -#: plinth/modules/networks/templates/connections_diagram.html:113 -#: plinth/network.py:40 +#: plinth/modules/networks/templates/connections_diagram.html:68 +#: plinth/modules/networks/templates/connections_diagram.html:98 +#: plinth/network.py:25 msgid "Ethernet" msgstr "" -#: plinth/modules/networks/templates/connections_diagram.html:86 -#: plinth/modules/networks/templates/connections_diagram.html:116 -#: plinth/network.py:41 +#: plinth/modules/networks/templates/connections_diagram.html:71 +#: plinth/modules/networks/templates/connections_diagram.html:101 +#: plinth/network.py:26 msgid "Wi-Fi" msgstr "" -#: plinth/modules/networks/templates/connections_diagram.html:89 +#: plinth/modules/networks/templates/connections_diagram.html:74 #, python-format msgid "Show connection %(connection.name)s" msgstr "" -#: plinth/modules/networks/templates/connections_diagram.html:119 +#: plinth/modules/networks/templates/connections_diagram.html:104 #, python-format msgid "Show connection %(name)s" msgstr "" -#: plinth/modules/networks/templates/connections_diagram.html:131 +#: plinth/modules/networks/templates/connections_diagram.html:116 msgid "Computer" msgstr "" -#: plinth/modules/networks/templates/connections_list.html:58 +#: plinth/modules/networks/templates/connections_list.html:8 msgid "Connections" msgstr "" -#: plinth/modules/networks/templates/connections_list.html:79 +#: plinth/modules/networks/templates/connections_list.html:29 #, python-format msgid "Delete connection %(name)s" msgstr "" -#: plinth/modules/networks/templates/connections_list.html:104 +#: plinth/modules/networks/templates/connections_list.html:54 msgid "Active" msgstr "" -#: plinth/modules/networks/templates/connections_list.html:107 +#: plinth/modules/networks/templates/connections_list.html:57 msgid "Inactive" msgstr "" -#: plinth/modules/networks/templates/connections_list.html:124 -#, python-format -msgid "%(box_name)s Internet Connectivity" -msgstr "" - -#: plinth/modules/networks/templates/connections_list.html:129 -#, python-format -msgid "" -"The following best describes how your %(box_name)s is connected in your " -"network. This information is used only to suggest necessary configuration " -"actions." -msgstr "" - -#: plinth/modules/networks/templates/connections_list.html:137 -#, python-format -msgid "" -"Your %(box_name)s gets its internet from your Router via WiFi or Ethernet " -"cable. This is a typical home setup." -msgstr "" - -#: plinth/modules/networks/templates/connections_list.html:145 -#: plinth/modules/networks/templates/connections_list.html:147 -msgid "Update..." -msgstr "" - -#: plinth/modules/networks/templates/connections_type_select.html:34 +#: plinth/modules/networks/templates/connections_type_select.html:19 msgid "Create..." msgstr "" -#: plinth/modules/networks/templates/router_configuration_content.html:25 +#: plinth/modules/networks/templates/internet_connectivity_content.html:10 +msgid "What Type Of Internet Connection Do You Have?" +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_content.html:16 +msgid "" +"Select an option that best describes the type of Internet connection. This " +"information is used only to guide you with further setup." +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_firstboot.html:18 +#: plinth/modules/networks/templates/router_configuration_firstboot.html:18 +msgid "Skip this step" +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_firstboot.html:19 +#: plinth/modules/networks/templates/router_configuration_firstboot.html:19 +msgid "Next" +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:9 +msgid "Your Internet Connection Type" +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:14 +msgid "" +"The following best describes the type of Internet connection provided by " +"your ISP. This information is only used to suggest you necessary " +"configuration actions." +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:23 +msgid "My ISP provides a public IP address that does not change over time." +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:27 +msgid "My ISP provides a public IP address that may change over time." +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:31 +msgid "My ISP does not provide a public IP address." +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:37 +#: plinth/modules/networks/templates/router_configuration_main.html:29 +msgid "Update..." +msgstr "" + +#: plinth/modules/networks/templates/router_configuration_content.html:10 #, python-format msgid "Setup %(box_name)s Behind a Router" msgstr "" -#: plinth/modules/networks/templates/router_configuration_content.html:31 +#: plinth/modules/networks/templates/router_configuration_content.html:16 #, python-format msgid "" "Your %(box_name)s gets its internet connection from your router via Wi-Fi or " "Ethernet cable. This is a typical home setup." msgstr "" -#: plinth/modules/networks/templates/router_configuration_content.html:38 +#: plinth/modules/networks/templates/router_configuration_content.html:23 #, python-format msgid "" "With this setup, any device on the internet trying to reach your " @@ -3452,24 +3542,24 @@ msgid "" "the services." msgstr "" -#: plinth/modules/networks/templates/router_configuration_content.html:47 +#: plinth/modules/networks/templates/router_configuration_content.html:32 msgid "" "If you don't have control over your router, choose not to configure it. To " -"see options, to overcome this limitation, choose 'no public address' option " +"see options to overcome this limitation, choose 'no public address' option " "in Internet connection type selection." msgstr "" -#: plinth/modules/networks/templates/router_configuration_content.html:54 +#: plinth/modules/networks/templates/router_configuration_content.html:39 msgid "Choose How You Wish to Configure Your Router" msgstr "" -#: plinth/modules/networks/templates/router_configuration_content.html:57 +#: plinth/modules/networks/templates/router_configuration_content.html:42 msgid "" "You will need to login to your router's administration console provided by " "the router. This may look like one of the following:" msgstr "" -#: plinth/modules/networks/templates/router_configuration_content.html:69 +#: plinth/modules/networks/templates/router_configuration_content.html:54 msgid "" "The username and password is configured by you when you first setup the " "router. For many routers, this information is printed at the back of the " @@ -3479,24 +3569,27 @@ msgid "" "full instructions on how to perform this task." msgstr "" -#: plinth/modules/networks/templates/router_configuration_firstboot.html:33 -msgid "skip this step" +#: plinth/modules/networks/templates/router_configuration_main.html:9 +#, python-format +msgid "%(box_name)s Internet Connectivity" msgstr "" -#: plinth/modules/networks/templates/router_configuration_firstboot.html:35 -msgid "Next" +#: plinth/modules/networks/templates/router_configuration_main.html:15 +#, python-format +msgid "" +"The following best describes how your %(box_name)s is connected in your " +"network. This information is used only to suggest necessary configuration " +"actions." msgstr "" -#: plinth/modules/openvpn/__init__.py:39 plinth/modules/openvpn/manifest.py:33 -msgid "OpenVPN" +#: plinth/modules/networks/templates/router_configuration_main.html:23 +#, python-format +msgid "" +"Your %(box_name)s gets its Internet from your Router via Wi-Fi or Ethernet " +"cable. This is a typical home setup." msgstr "" -#: plinth/modules/openvpn/__init__.py:43 -#: plinth/modules/wireguard/__init__.py:40 -msgid "Virtual Private Network" -msgstr "" - -#: plinth/modules/openvpn/__init__.py:47 +#: plinth/modules/openvpn/__init__.py:26 #, python-brace-format msgid "" "Virtual Private Network (VPN) is a technique for securely connecting two " @@ -3507,21 +3600,30 @@ msgid "" "security and anonymity." msgstr "" -#: plinth/modules/openvpn/__init__.py:79 +#: plinth/modules/openvpn/__init__.py:49 plinth/modules/openvpn/manifest.py:18 +msgid "OpenVPN" +msgstr "" + +#: plinth/modules/openvpn/__init__.py:50 +#: plinth/modules/wireguard/__init__.py:53 +msgid "Virtual Private Network" +msgstr "" + +#: plinth/modules/openvpn/__init__.py:61 #, python-brace-format msgid "" "Download Profile" msgstr "" -#: plinth/modules/openvpn/forms.py:27 +#: plinth/modules/openvpn/forms.py:12 msgid "Enable OpenVPN server" msgstr "" -#: plinth/modules/openvpn/manifest.py:63 -msgid "TunnelBlick" +#: plinth/modules/openvpn/manifest.py:48 +msgid "Tunnelblick" msgstr "" -#: plinth/modules/openvpn/templates/openvpn.html:42 +#: plinth/modules/openvpn/templates/openvpn.html:27 #, python-format msgid "" "OpenVPN has not yet been setup. Performing a secure setup takes a very long " @@ -3529,15 +3631,15 @@ msgid "" "If the setup is interrupted, you may start it again." msgstr "" -#: plinth/modules/openvpn/templates/openvpn.html:55 +#: plinth/modules/openvpn/templates/openvpn.html:40 msgid "Start setup" msgstr "" -#: plinth/modules/openvpn/templates/openvpn.html:64 +#: plinth/modules/openvpn/templates/openvpn.html:49 msgid "OpenVPN setup is running" msgstr "" -#: plinth/modules/openvpn/templates/openvpn.html:68 +#: plinth/modules/openvpn/templates/openvpn.html:53 #, python-format msgid "" "To perform a secure setup, this process takes a very long time. Depending " @@ -3545,11 +3647,11 @@ msgid "" "interrupted, you may start it again." msgstr "" -#: plinth/modules/openvpn/templates/openvpn.html:87 +#: plinth/modules/openvpn/templates/openvpn.html:72 msgid "Profile" msgstr "" -#: plinth/modules/openvpn/templates/openvpn.html:90 +#: plinth/modules/openvpn/templates/openvpn.html:75 #, python-format msgid "" "To connect to %(box_name)s's VPN, you need to download a profile and feed it " @@ -3558,32 +3660,24 @@ msgid "" "clients and instructions on how to configure them." msgstr "" -#: plinth/modules/openvpn/templates/openvpn.html:100 +#: plinth/modules/openvpn/templates/openvpn.html:85 #, python-format msgid "Profile is specific to each user of %(box_name)s. Keep it a secret." msgstr "" -#: plinth/modules/openvpn/templates/openvpn.html:111 +#: plinth/modules/openvpn/templates/openvpn.html:96 msgid "Download my profile" msgstr "" -#: plinth/modules/openvpn/views.py:133 +#: plinth/modules/openvpn/views.py:114 msgid "Setup completed." msgstr "" -#: plinth/modules/openvpn/views.py:135 +#: plinth/modules/openvpn/views.py:116 msgid "Setup failed." msgstr "" -#: plinth/modules/pagekite/__init__.py:39 -msgid "PageKite" -msgstr "" - -#: plinth/modules/pagekite/__init__.py:41 -msgid "Public Visibility" -msgstr "" - -#: plinth/modules/pagekite/__init__.py:45 +#: plinth/modules/pagekite/__init__.py:26 #, python-brace-format msgid "" "PageKite is a system for exposing {box_name} services when you don't have a " @@ -3592,33 +3686,33 @@ msgid "" "following situations:" msgstr "" -#: plinth/modules/pagekite/__init__.py:50 +#: plinth/modules/pagekite/__init__.py:31 #, python-brace-format msgid "{box_name} is behind a restricted firewall." msgstr "" -#: plinth/modules/pagekite/__init__.py:53 +#: plinth/modules/pagekite/__init__.py:34 #, python-brace-format msgid "{box_name} is connected to a (wireless) router which you don't control." msgstr "" -#: plinth/modules/pagekite/__init__.py:55 +#: plinth/modules/pagekite/__init__.py:36 msgid "" "Your ISP does not provide you an external IP address and instead provides " "Internet connection through NAT." msgstr "" -#: plinth/modules/pagekite/__init__.py:57 +#: plinth/modules/pagekite/__init__.py:38 msgid "" "Your ISP does not provide you a static IP address and your IP address " "changes every time you connect to Internet." msgstr "" -#: plinth/modules/pagekite/__init__.py:59 +#: plinth/modules/pagekite/__init__.py:40 msgid "Your ISP limits incoming connections." msgstr "" -#: plinth/modules/pagekite/__init__.py:61 +#: plinth/modules/pagekite/__init__.py:42 #, python-brace-format msgid "" "PageKite works around NAT, firewalls and IP address limitations by using a " @@ -3627,138 +3721,146 @@ msgid "" "the future it might be possible to use your buddy's {box_name} for this." msgstr "" -#: plinth/modules/pagekite/__init__.py:87 +#: plinth/modules/pagekite/__init__.py:62 +msgid "PageKite" +msgstr "" + +#: plinth/modules/pagekite/__init__.py:64 +msgid "Public Visibility" +msgstr "" + +#: plinth/modules/pagekite/__init__.py:74 msgid "PageKite Domain" msgstr "" -#: plinth/modules/pagekite/forms.py:66 +#: plinth/modules/pagekite/forms.py:51 msgid "Server domain" msgstr "" -#: plinth/modules/pagekite/forms.py:68 +#: plinth/modules/pagekite/forms.py:53 msgid "" "Select your pagekite server. Set \"pagekite.net\" to use the default " "pagekite.net server." msgstr "" -#: plinth/modules/pagekite/forms.py:71 plinth/modules/shadowsocks/forms.py:55 +#: plinth/modules/pagekite/forms.py:56 plinth/modules/shadowsocks/forms.py:40 msgid "Server port" msgstr "" -#: plinth/modules/pagekite/forms.py:72 +#: plinth/modules/pagekite/forms.py:57 msgid "Port of your pagekite server (default: 80)" msgstr "" -#: plinth/modules/pagekite/forms.py:74 +#: plinth/modules/pagekite/forms.py:59 msgid "Kite name" msgstr "" -#: plinth/modules/pagekite/forms.py:75 +#: plinth/modules/pagekite/forms.py:60 msgid "Example: mybox.pagekite.me" msgstr "" -#: plinth/modules/pagekite/forms.py:77 +#: plinth/modules/pagekite/forms.py:62 msgid "Invalid kite name" msgstr "" -#: plinth/modules/pagekite/forms.py:81 +#: plinth/modules/pagekite/forms.py:66 msgid "Kite secret" msgstr "" -#: plinth/modules/pagekite/forms.py:82 +#: plinth/modules/pagekite/forms.py:67 msgid "" "A secret associated with the kite or the default secret for your account if " "no secret is set on the kite." msgstr "" -#: plinth/modules/pagekite/forms.py:98 +#: plinth/modules/pagekite/forms.py:83 msgid "Kite details set" msgstr "" -#: plinth/modules/pagekite/forms.py:105 +#: plinth/modules/pagekite/forms.py:90 msgid "Pagekite server set" msgstr "" -#: plinth/modules/pagekite/forms.py:129 +#: plinth/modules/pagekite/forms.py:114 msgid "PageKite enabled" msgstr "" -#: plinth/modules/pagekite/forms.py:132 +#: plinth/modules/pagekite/forms.py:117 msgid "PageKite disabled" msgstr "" -#: plinth/modules/pagekite/forms.py:148 +#: plinth/modules/pagekite/forms.py:133 msgid "protocol" msgstr "" -#: plinth/modules/pagekite/forms.py:151 +#: plinth/modules/pagekite/forms.py:136 msgid "external (frontend) port" msgstr "" -#: plinth/modules/pagekite/forms.py:154 +#: plinth/modules/pagekite/forms.py:139 msgid "internal (freedombox) port" msgstr "" -#: plinth/modules/pagekite/forms.py:155 +#: plinth/modules/pagekite/forms.py:140 msgid "Enable Subdomains" msgstr "" -#: plinth/modules/pagekite/forms.py:189 +#: plinth/modules/pagekite/forms.py:174 msgid "Deleted custom service" msgstr "" -#: plinth/modules/pagekite/forms.py:222 +#: plinth/modules/pagekite/forms.py:207 msgid "" "This service is available as a standard service. Please use the \"Standard " "Services\" page to enable it." msgstr "" -#: plinth/modules/pagekite/forms.py:231 +#: plinth/modules/pagekite/forms.py:216 msgid "Added custom service" msgstr "" -#: plinth/modules/pagekite/forms.py:234 +#: plinth/modules/pagekite/forms.py:219 msgid "This service already exists" msgstr "" -#: plinth/modules/pagekite/templates/pagekite_configure.html:47 +#: plinth/modules/pagekite/templates/pagekite_configure.html:32 msgid "Custom Services" msgstr "" -#: plinth/modules/pagekite/templates/pagekite_configure.html:50 -#: plinth/modules/pagekite/templates/pagekite_configure.html:52 +#: plinth/modules/pagekite/templates/pagekite_configure.html:35 +#: plinth/modules/pagekite/templates/pagekite_configure.html:37 msgid "Add Custom Service" msgstr "" -#: plinth/modules/pagekite/templates/pagekite_configure.html:57 +#: plinth/modules/pagekite/templates/pagekite_configure.html:42 msgid "Existing custom services" msgstr "" -#: plinth/modules/pagekite/templates/pagekite_configure.html:71 +#: plinth/modules/pagekite/templates/pagekite_configure.html:56 #, python-format msgid "connected to %(backend_host)s:%(backend_port)s" msgstr "" -#: plinth/modules/pagekite/templates/pagekite_configure.html:83 +#: plinth/modules/pagekite/templates/pagekite_configure.html:68 msgid "Delete this service" msgstr "" -#: plinth/modules/pagekite/templates/pagekite_custom_services.html:30 +#: plinth/modules/pagekite/templates/pagekite_custom_services.html:15 msgid "Add custom PageKite service" msgstr "" -#: plinth/modules/pagekite/templates/pagekite_custom_services.html:32 +#: plinth/modules/pagekite/templates/pagekite_custom_services.html:17 msgid "" "Warning:imaps://imap.gmail.com. "
@@ -4070,17 +4162,22 @@ msgid ""
"a>)."
msgstr ""
-#: plinth/modules/samba/__init__.py:46
-msgid "Samba"
+#: plinth/modules/roundcube/__init__.py:54
+#: plinth/modules/roundcube/manifest.py:9
+msgid "Roundcube"
msgstr ""
-#: plinth/modules/samba/__init__.py:53
+#: plinth/modules/roundcube/__init__.py:55
+msgid "Email Client"
+msgstr ""
+
+#: plinth/modules/samba/__init__.py:32
msgid ""
"Samba allows to share files and folders between FreedomBox and other "
"computers in your local network."
msgstr ""
-#: plinth/modules/samba/__init__.py:56
+#: plinth/modules/samba/__init__.py:35
#, python-brace-format
msgid ""
"After installation, you can choose which disks to use for sharing. Enabled "
@@ -4089,51 +4186,55 @@ msgid ""
"There are three types of shares you can choose from: "
msgstr ""
-#: plinth/modules/samba/__init__.py:61
+#: plinth/modules/samba/__init__.py:40
msgid "Open share - accessible to everyone in your local network."
msgstr ""
-#: plinth/modules/samba/__init__.py:62
+#: plinth/modules/samba/__init__.py:41
msgid ""
"Group share - accessible only to FreedomBox users who are in the freedombox-"
"share group."
msgstr ""
-#: plinth/modules/samba/__init__.py:64
+#: plinth/modules/samba/__init__.py:43
msgid ""
"Home share - every user in the freedombox-share group can have their own "
"private space."
msgstr ""
-#: plinth/modules/samba/__init__.py:68
+#: plinth/modules/samba/__init__.py:47
msgid "Access to the private shares"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:39
-#: plinth/modules/samba/templates/samba.html:50
+#: plinth/modules/samba/__init__.py:61
+msgid "Samba"
+msgstr ""
+
+#: plinth/modules/samba/templates/samba.html:24
+#: plinth/modules/samba/templates/samba.html:35
msgid "Shares"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:41
+#: plinth/modules/samba/templates/samba.html:26
msgid ""
"Note: Only specially created directories will be shared on selected disks, "
"not the whole disk."
msgstr ""
-#: plinth/modules/samba/templates/samba.html:49
+#: plinth/modules/samba/templates/samba.html:34
msgid "Disk Name"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:51
-#: plinth/modules/storage/templates/storage.html:44
+#: plinth/modules/samba/templates/samba.html:36
+#: plinth/modules/storage/templates/storage.html:29
msgid "Used"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:72
+#: plinth/modules/samba/templates/samba.html:57
msgid "VFAT partitions are not supported"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:103
+#: plinth/modules/samba/templates/samba.html:88
#, python-format
msgid ""
"You can find additional information about disks on the users module page."
msgstr ""
-#: plinth/modules/samba/templates/samba.html:109
+#: plinth/modules/samba/templates/samba.html:94
msgid "Users who can currently access group and home shares"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:113
+#: plinth/modules/samba/templates/samba.html:98
msgid ""
"Users needing to re-enter their password on the password change page to "
"access group and home shares"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:118
+#: plinth/modules/samba/templates/samba.html:103
msgid "Unavailable Shares"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:120
+#: plinth/modules/samba/templates/samba.html:105
msgid ""
"Shares that are configured but the disk is not available. If the disk is "
"plugged back in, sharing will be automatically enabled."
msgstr ""
-#: plinth/modules/samba/templates/samba.html:128
+#: plinth/modules/samba/templates/samba.html:113
msgid "Share name"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:129
+#: plinth/modules/samba/templates/samba.html:114
msgid "Action"
msgstr ""
-#: plinth/modules/samba/views.py:61 plinth/modules/storage/forms.py:164
+#: plinth/modules/samba/views.py:43 plinth/modules/storage/forms.py:149
msgid "Open Share"
msgstr ""
-#: plinth/modules/samba/views.py:62 plinth/modules/storage/forms.py:162
+#: plinth/modules/samba/views.py:44 plinth/modules/storage/forms.py:147
msgid "Group Share"
msgstr ""
-#: plinth/modules/samba/views.py:63
+#: plinth/modules/samba/views.py:45
msgid "Home Share"
msgstr ""
-#: plinth/modules/samba/views.py:96
+#: plinth/modules/samba/views.py:78
msgid "Share enabled."
msgstr ""
-#: plinth/modules/samba/views.py:101
+#: plinth/modules/samba/views.py:83
#, python-brace-format
msgid "Error enabling share: {error_message}"
msgstr ""
-#: plinth/modules/samba/views.py:106
+#: plinth/modules/samba/views.py:88
msgid "Share disabled."
msgstr ""
-#: plinth/modules/samba/views.py:111
+#: plinth/modules/samba/views.py:93
#, python-brace-format
msgid "Error disabling share: {error_message}"
msgstr ""
-#: plinth/modules/searx/__init__.py:41 plinth/modules/searx/manifest.py:24
-msgid "Searx"
-msgstr ""
-
-#: plinth/modules/searx/__init__.py:45
-msgid "Web Search"
-msgstr ""
-
-#: plinth/modules/searx/__init__.py:48
+#: plinth/modules/searx/__init__.py:25
msgid ""
"Searx is a privacy-respecting Internet metasearch engine. It aggregrates and "
"displays results from multiple search engines."
msgstr ""
-#: plinth/modules/searx/__init__.py:50
+#: plinth/modules/searx/__init__.py:27
msgid ""
"Searx can be used to avoid tracking and profiling by search engines. It "
"stores no cookies by default."
msgstr ""
-#: plinth/modules/searx/__init__.py:54
+#: plinth/modules/searx/__init__.py:31
msgid "Search the web"
msgstr ""
-#: plinth/modules/searx/forms.py:30
+#: plinth/modules/searx/__init__.py:47 plinth/modules/searx/manifest.py:9
+msgid "Searx"
+msgstr ""
+
+#: plinth/modules/searx/__init__.py:48
+msgid "Web Search"
+msgstr ""
+
+#: plinth/modules/searx/forms.py:15
msgid "Safe Search"
msgstr ""
-#: plinth/modules/searx/forms.py:31
+#: plinth/modules/searx/forms.py:16
msgid "Select the default family filter to apply to your search results."
msgstr ""
-#: plinth/modules/searx/forms.py:32
+#: plinth/modules/searx/forms.py:17
msgid "None"
msgstr ""
-#: plinth/modules/searx/forms.py:32
+#: plinth/modules/searx/forms.py:17
msgid "Moderate"
msgstr ""
-#: plinth/modules/searx/forms.py:32
+#: plinth/modules/searx/forms.py:17
msgid "Strict"
msgstr ""
-#: plinth/modules/searx/forms.py:35
+#: plinth/modules/searx/forms.py:20
msgid "Allow Public Access"
msgstr ""
-#: plinth/modules/searx/forms.py:36
+#: plinth/modules/searx/forms.py:21
msgid "Allow this application to be used by anyone who can reach it."
msgstr ""
-#: plinth/modules/searx/views.py:59 plinth/modules/searx/views.py:70
-#: plinth/modules/tor/views.py:149 plinth/modules/tor/views.py:176
+#: plinth/modules/searx/views.py:39 plinth/modules/searx/views.py:50
+#: plinth/modules/tor/views.py:130 plinth/modules/tor/views.py:157
msgid "Configuration updated."
msgstr ""
-#: plinth/modules/security/forms.py:28
+#: plinth/modules/security/forms.py:13
msgid "Restrict console logins (recommended)"
msgstr ""
-#: plinth/modules/security/forms.py:29
+#: plinth/modules/security/forms.py:14
msgid ""
"When this option is enabled, only users in the \"admin\" group will be able "
"to log in to console or via SSH. Console users may be able to access some "
"services without further authorization."
msgstr ""
-#: plinth/modules/security/forms.py:34
+#: plinth/modules/security/forms.py:19
msgid "Fail2Ban (recommended)"
msgstr ""
-#: plinth/modules/security/forms.py:35
+#: plinth/modules/security/forms.py:20
msgid ""
"When this option is enabled, Fail2Ban will limit brute force break-in "
"attempts to the SSH server and other enabled password protected internet-"
"services."
msgstr ""
-#: plinth/modules/security/templates/security.html:26
-#: plinth/modules/security/templates/security.html:28
+#: plinth/modules/security/templates/security.html:11
+#: plinth/modules/security/templates/security.html:13
msgid "Show security report"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:25
-#: plinth/modules/security/views.py:87
+#: plinth/modules/security/templates/security_report.html:10
+#: plinth/modules/security/views.py:71
msgid "Security Report"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:27
+#: plinth/modules/security/templates/security_report.html:12
#, python-format
msgid ""
"The installed version of FreedomBox has %(count)s reported security "
"vulnerabilities."
msgstr ""
-#: plinth/modules/security/templates/security_report.html:33
+#: plinth/modules/security/templates/security_report.html:18
msgid ""
"The following table lists the current reported number, and historical count, "
"of security vulnerabilities for each installed app."
msgstr ""
-#: plinth/modules/security/templates/security_report.html:39
+#: plinth/modules/security/templates/security_report.html:24
msgid ""
"For apps that provide services, the \"Sandboxed\" column shows whether "
"sandboxing features are in use. Sandboxing mitigates the impact of a "
"potentially compromised app to the rest of the system."
msgstr ""
-#: plinth/modules/security/templates/security_report.html:46
+#: plinth/modules/security/templates/security_report.html:31
msgid ""
"\"Sandbox Coverage\" is a score of how effectively the service is isolated "
"from the rest of the system. It is only displayed while the service is "
"running."
msgstr ""
-#: plinth/modules/security/templates/security_report.html:55
+#: plinth/modules/security/templates/security_report.html:40
msgid "App Name"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:56
+#: plinth/modules/security/templates/security_report.html:41
msgid "Current Vulnerabilities"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:57
+#: plinth/modules/security/templates/security_report.html:42
msgid "Past Vulnerabilities"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:58
+#: plinth/modules/security/templates/security_report.html:43
msgid "Sandboxed"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:59
+#: plinth/modules/security/templates/security_report.html:44
msgid "Sandbox Coverage"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:70
+#: plinth/modules/security/templates/security_report.html:55
msgid "N/A"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:72
+#: plinth/modules/security/templates/security_report.html:57
msgid "Yes"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:74
+#: plinth/modules/security/templates/security_report.html:59
msgid "No"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:81
+#: plinth/modules/security/templates/security_report.html:66
msgid "Not running"
msgstr ""
-#: plinth/modules/security/views.py:69
+#: plinth/modules/security/views.py:53
#, python-brace-format
msgid "Error setting restricted access: {exception}"
msgstr ""
-#: plinth/modules/security/views.py:72
+#: plinth/modules/security/views.py:56
msgid "Updated security configuration"
msgstr ""
-#: plinth/modules/shaarli/__init__.py:34 plinth/modules/shaarli/manifest.py:23
-msgid "Shaarli"
-msgstr ""
-
-#: plinth/modules/shaarli/__init__.py:36
-msgid "Bookmarks"
-msgstr ""
-
-#: plinth/modules/shaarli/__init__.py:39
+#: plinth/modules/shaarli/__init__.py:20
msgid "Shaarli allows you to save and share bookmarks."
msgstr ""
-#: plinth/modules/shaarli/__init__.py:40
+#: plinth/modules/shaarli/__init__.py:21
msgid ""
"When enabled, Shaarli will be available from /shaarli path on the web server. Note that Shaarli "
@@ -4380,22 +4473,22 @@ msgid ""
"initial visit."
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:35
-msgid "Shadowsocks"
+#: plinth/modules/shaarli/__init__.py:39 plinth/modules/shaarli/manifest.py:8
+msgid "Shaarli"
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:39
-msgid "Socks5 Proxy"
+#: plinth/modules/shaarli/__init__.py:40
+msgid "Bookmarks"
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:46
+#: plinth/modules/shadowsocks/__init__.py:25
msgid ""
"Shadowsocks is a lightweight and secure SOCKS5 proxy, designed to protect "
"your Internet traffic. It can be used to bypass Internet filtering and "
"censorship."
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:50
+#: plinth/modules/shadowsocks/__init__.py:29
#, python-brace-format
msgid ""
"Your {box_name} can run a Shadowsocks client, that can connect to a "
@@ -4404,149 +4497,153 @@ msgid ""
"the Shadowsocks server."
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:55
+#: plinth/modules/shadowsocks/__init__.py:34
msgid ""
"To use Shadowsocks after setup, set the SOCKS5 proxy URL in your device, "
"browser or application to http://freedombox_address:1080/"
msgstr ""
-#: plinth/modules/shadowsocks/forms.py:28
-#: plinth/modules/shadowsocks/forms.py:29
+#: plinth/modules/shadowsocks/__init__.py:50
+msgid "Shadowsocks"
+msgstr ""
+
+#: plinth/modules/shadowsocks/__init__.py:52
+msgid "Socks5 Proxy"
+msgstr ""
+
+#: plinth/modules/shadowsocks/forms.py:13
+#: plinth/modules/shadowsocks/forms.py:14
msgid "Recommended"
msgstr ""
-#: plinth/modules/shadowsocks/forms.py:52
+#: plinth/modules/shadowsocks/forms.py:37
msgid "Server"
msgstr ""
-#: plinth/modules/shadowsocks/forms.py:53
+#: plinth/modules/shadowsocks/forms.py:38
msgid "Server hostname or IP address"
msgstr ""
-#: plinth/modules/shadowsocks/forms.py:57
+#: plinth/modules/shadowsocks/forms.py:42
msgid "Server port number"
msgstr ""
-#: plinth/modules/shadowsocks/forms.py:60
+#: plinth/modules/shadowsocks/forms.py:45
msgid "Password used to encrypt data. Must match server password."
msgstr ""
-#: plinth/modules/shadowsocks/forms.py:65
+#: plinth/modules/shadowsocks/forms.py:50
msgid "Encryption method. Must match setting on server."
msgstr ""
-#: plinth/modules/sharing/__init__.py:34
-msgid "Sharing"
-msgstr ""
-
-#: plinth/modules/sharing/__init__.py:38
+#: plinth/modules/sharing/__init__.py:21
#, python-brace-format
msgid ""
"Sharing allows you to share files and folders on your {box_name} over the "
"web with chosen groups of users."
msgstr ""
-#: plinth/modules/sharing/forms.py:33
+#: plinth/modules/sharing/__init__.py:38
+msgid "Sharing"
+msgstr ""
+
+#: plinth/modules/sharing/forms.py:18
msgid "Name of the share"
msgstr ""
-#: plinth/modules/sharing/forms.py:35
+#: plinth/modules/sharing/forms.py:20
msgid ""
"A lowercase alpha-numeric string that uniquely identifies a share. Example: "
"media."
msgstr ""
-#: plinth/modules/sharing/forms.py:39
+#: plinth/modules/sharing/forms.py:24
msgid "Path to share"
msgstr ""
-#: plinth/modules/sharing/forms.py:40
+#: plinth/modules/sharing/forms.py:25
msgid "Disk path to a folder on this server that you intend to share."
msgstr ""
-#: plinth/modules/sharing/forms.py:43
+#: plinth/modules/sharing/forms.py:28
msgid "Public share"
msgstr ""
-#: plinth/modules/sharing/forms.py:44
+#: plinth/modules/sharing/forms.py:29
msgid "Make files in this folder available to anyone with the link."
msgstr ""
-#: plinth/modules/sharing/forms.py:48
+#: plinth/modules/sharing/forms.py:33
msgid "User groups that can read the files in the share"
msgstr ""
-#: plinth/modules/sharing/forms.py:50
+#: plinth/modules/sharing/forms.py:35
msgid ""
"Users of the selected user groups will be able to read the files in the "
"share."
msgstr ""
-#: plinth/modules/sharing/forms.py:67
+#: plinth/modules/sharing/forms.py:52
msgid "A share with this name already exists."
msgstr ""
-#: plinth/modules/sharing/forms.py:78
+#: plinth/modules/sharing/forms.py:63
msgid "Shares should be either public or shared with at least one group"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:39
-#: plinth/modules/sharing/templates/sharing.html:42
+#: plinth/modules/sharing/templates/sharing.html:24
+#: plinth/modules/sharing/templates/sharing.html:27
msgid "Add share"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:47
+#: plinth/modules/sharing/templates/sharing.html:32
msgid "No shares currently configured."
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:53
+#: plinth/modules/sharing/templates/sharing.html:38
msgid "Disk Path"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:54
+#: plinth/modules/sharing/templates/sharing.html:39
msgid "Shared Over"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:55
+#: plinth/modules/sharing/templates/sharing.html:40
msgid "With Groups"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:73
+#: plinth/modules/sharing/templates/sharing.html:58
msgid "public access"
msgstr ""
-#: plinth/modules/sharing/views.py:55
+#: plinth/modules/sharing/views.py:39
msgid "Share added."
msgstr ""
-#: plinth/modules/sharing/views.py:60
+#: plinth/modules/sharing/views.py:44
msgid "Add Share"
msgstr ""
-#: plinth/modules/sharing/views.py:75
+#: plinth/modules/sharing/views.py:59
msgid "Share edited."
msgstr ""
-#: plinth/modules/sharing/views.py:80
+#: plinth/modules/sharing/views.py:64
msgid "Edit Share"
msgstr ""
-#: plinth/modules/sharing/views.py:111
+#: plinth/modules/sharing/views.py:95
msgid "Share deleted."
msgstr ""
-#: plinth/modules/snapshot/__init__.py:37
-msgid "Storage Snapshots"
-msgstr ""
-
-#: plinth/modules/snapshot/__init__.py:40
+#: plinth/modules/snapshot/__init__.py:23
msgid ""
"Snapshots allows creating and managing btrfs file system snapshots. These "
"can be used to roll back the system to a previously known good state in case "
"of unwanted changes to the system."
msgstr ""
-#: plinth/modules/snapshot/__init__.py:44
+#: plinth/modules/snapshot/__init__.py:27
#, no-python-format
msgid ""
"Snapshots are taken periodically (called timeline snapshots) and also before "
@@ -4554,192 +4651,192 @@ msgid ""
"cleaned up according to the settings below."
msgstr ""
-#: plinth/modules/snapshot/__init__.py:47
+#: plinth/modules/snapshot/__init__.py:30
msgid ""
"Snapshots currently work on btrfs file systems only and on the root "
"partition only. Snapshots are not a replacement for backups since they can only be stored on the same partition. "
msgstr ""
-#: plinth/modules/snapshot/forms.py:27
+#: plinth/modules/snapshot/__init__.py:52
+msgid "Storage Snapshots"
+msgstr ""
+
+#: plinth/modules/snapshot/forms.py:12
msgid "Free Disk Space to Maintain"
msgstr ""
-#: plinth/modules/snapshot/forms.py:28
+#: plinth/modules/snapshot/forms.py:13
msgid ""
"Maintain this percentage of free space on the disk. If free space falls "
"below this value, older snapshots are removed until this much free space is "
"regained. The default value is 30%."
msgstr ""
-#: plinth/modules/snapshot/forms.py:35
+#: plinth/modules/snapshot/forms.py:20
msgid "Timeline Snapshots"
msgstr ""
-#: plinth/modules/snapshot/forms.py:36
+#: plinth/modules/snapshot/forms.py:21
msgid ""
"Enable or disable timeline snapshots (hourly, daily, monthly and yearly)."
msgstr ""
-#: plinth/modules/snapshot/forms.py:41
+#: plinth/modules/snapshot/forms.py:26
msgid "Software Installation Snapshots"
msgstr ""
-#: plinth/modules/snapshot/forms.py:42
+#: plinth/modules/snapshot/forms.py:27
msgid "Enable or disable snapshots before and after software installation"
msgstr ""
-#: plinth/modules/snapshot/forms.py:47
+#: plinth/modules/snapshot/forms.py:32
msgid "Hourly Snapshots Limit"
msgstr ""
-#: plinth/modules/snapshot/forms.py:48
+#: plinth/modules/snapshot/forms.py:33
msgid "Keep a maximum of this many hourly snapshots."
msgstr ""
-#: plinth/modules/snapshot/forms.py:51
+#: plinth/modules/snapshot/forms.py:36
msgid "Daily Snapshots Limit"
msgstr ""
-#: plinth/modules/snapshot/forms.py:52
+#: plinth/modules/snapshot/forms.py:37
msgid "Keep a maximum of this many daily snapshots."
msgstr ""
-#: plinth/modules/snapshot/forms.py:55
+#: plinth/modules/snapshot/forms.py:40
msgid "Weekly Snapshots Limit"
msgstr ""
-#: plinth/modules/snapshot/forms.py:56
+#: plinth/modules/snapshot/forms.py:41
msgid "Keep a maximum of this many weekly snapshots."
msgstr ""
-#: plinth/modules/snapshot/forms.py:59
+#: plinth/modules/snapshot/forms.py:44
msgid "Monthly Snapshots Limit"
msgstr ""
-#: plinth/modules/snapshot/forms.py:60
+#: plinth/modules/snapshot/forms.py:45
msgid "Keep a maximum of this many monthly snapshots."
msgstr ""
-#: plinth/modules/snapshot/forms.py:63
+#: plinth/modules/snapshot/forms.py:48
msgid "Yearly Snapshots Limit"
msgstr ""
-#: plinth/modules/snapshot/forms.py:64
+#: plinth/modules/snapshot/forms.py:49
msgid ""
"Keep a maximum of this many yearly snapshots. The default value is 0 "
"(disabled)."
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:27
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:12
msgid "Delete the following snapshots permanently?"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:31
-#: plinth/modules/snapshot/templates/snapshot_manage.html:43
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:39
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:16
+#: plinth/modules/snapshot/templates/snapshot_manage.html:28
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:24
msgid "Number"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:32
-#: plinth/modules/snapshot/templates/snapshot_manage.html:44
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:40
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:17
+#: plinth/modules/snapshot/templates/snapshot_manage.html:29
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:25
msgid "Date"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:52
-#: plinth/modules/snapshot/templates/snapshot_manage.html:37
-#: plinth/modules/snapshot/views.py:196
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:37
+#: plinth/modules/snapshot/templates/snapshot_manage.html:22
+#: plinth/modules/snapshot/views.py:175
msgid "Delete Snapshots"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_manage.html:33
+#: plinth/modules/snapshot/templates/snapshot_manage.html:18
msgid "Create Snapshot"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_manage.html:46
+#: plinth/modules/snapshot/templates/snapshot_manage.html:31
msgid "Rollback"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_manage.html:57
+#: plinth/modules/snapshot/templates/snapshot_manage.html:42
msgid "active"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_manage.html:66
+#: plinth/modules/snapshot/templates/snapshot_manage.html:51
#, python-format
msgid "Rollback to snapshot #%(number)s"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_not_supported.html:26
+#: plinth/modules/snapshot/templates/snapshot_not_supported.html:11
#, python-format
msgid ""
"Your have a filesystem of type %(fs_type)s. Snapshots are "
"currently only available on %(types_supported)s filesystems."
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:27
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:12
msgid "Roll back the system to this snapshot?"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:30
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:15
msgid ""
"A new snapshot with the current state of the file system will be "
"automatically created. You will be able to undo a rollback by reverting to "
"the newly created snapshot."
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:57
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:42
#, python-format
msgid "Rollback to Snapshot #%(number)s"
msgstr ""
-#: plinth/modules/snapshot/views.py:45
+#: plinth/modules/snapshot/views.py:30
msgid "Manage Snapshots"
msgstr ""
-#: plinth/modules/snapshot/views.py:98
+#: plinth/modules/snapshot/views.py:79
msgid "Created snapshot."
msgstr ""
-#: plinth/modules/snapshot/views.py:156
+#: plinth/modules/snapshot/views.py:135
msgid "Storage snapshots configuration updated"
msgstr ""
-#: plinth/modules/snapshot/views.py:160 plinth/modules/tor/views.py:79
+#: plinth/modules/snapshot/views.py:139 plinth/modules/tor/views.py:60
#, python-brace-format
msgid "Action error: {0} [{1}] [{2}]"
msgstr ""
-#: plinth/modules/snapshot/views.py:175
+#: plinth/modules/snapshot/views.py:154
msgid "Deleted all snapshots"
msgstr ""
-#: plinth/modules/snapshot/views.py:179
+#: plinth/modules/snapshot/views.py:158
msgid "Deleted selected snapshots"
msgstr ""
-#: plinth/modules/snapshot/views.py:184
+#: plinth/modules/snapshot/views.py:163
msgid "Snapshot is currently in use. Please try again later."
msgstr ""
-#: plinth/modules/snapshot/views.py:207
+#: plinth/modules/snapshot/views.py:186
#, python-brace-format
msgid "Rolled back to snapshot #{number}."
msgstr ""
-#: plinth/modules/snapshot/views.py:210
+#: plinth/modules/snapshot/views.py:189
msgid "The system must be restarted to complete the rollback."
msgstr ""
-#: plinth/modules/snapshot/views.py:222
+#: plinth/modules/snapshot/views.py:201
msgid "Rollback to Snapshot"
msgstr ""
-#: plinth/modules/ssh/__init__.py:43
-msgid "Secure Shell (SSH) Server"
-msgstr ""
-
-#: plinth/modules/ssh/__init__.py:46
+#: plinth/modules/ssh/__init__.py:29
msgid ""
"A Secure Shell server uses the secure shell protocol to accept connections "
"from remote computers. An authorized remote computer can perform "
@@ -4747,56 +4844,56 @@ msgid ""
"connections."
msgstr ""
-#: plinth/modules/ssh/forms.py:30
+#: plinth/modules/ssh/__init__.py:50
+msgid "Secure Shell (SSH) Server"
+msgstr ""
+
+#: plinth/modules/ssh/forms.py:15
msgid "Disable password authentication"
msgstr ""
-#: plinth/modules/ssh/forms.py:31
+#: plinth/modules/ssh/forms.py:16
msgid ""
"Improves security by preventing password guessing. Ensure that you have "
"setup SSH keys in your administrator user account before enabling this "
"option."
msgstr ""
-#: plinth/modules/ssh/templates/ssh.html:26
+#: plinth/modules/ssh/templates/ssh.html:11
msgid "Server Fingerprints"
msgstr ""
-#: plinth/modules/ssh/templates/ssh.html:29
+#: plinth/modules/ssh/templates/ssh.html:14
msgid ""
"When connecting to the server, ensure that the fingerprint shown by the SSH "
"client matches one of these fingerprints."
msgstr ""
-#: plinth/modules/ssh/templates/ssh.html:38
+#: plinth/modules/ssh/templates/ssh.html:23
msgid "Algorithm"
msgstr ""
-#: plinth/modules/ssh/templates/ssh.html:39
+#: plinth/modules/ssh/templates/ssh.html:24
msgid "Fingerprint"
msgstr ""
-#: plinth/modules/ssh/views.py:66
+#: plinth/modules/ssh/views.py:48
msgid "SSH authentication with password disabled."
msgstr ""
-#: plinth/modules/ssh/views.py:69
+#: plinth/modules/ssh/views.py:51
msgid "SSH authentication with password enabled."
msgstr ""
-#: plinth/modules/sso/__init__.py:30
+#: plinth/modules/sso/__init__.py:33
msgid "Single Sign On"
msgstr ""
-#: plinth/modules/sso/templates/login.html:35
+#: plinth/modules/sso/templates/login.html:20
msgid "Login"
msgstr ""
-#: plinth/modules/storage/__init__.py:39 plinth/modules/storage/__init__.py:331
-msgid "Storage"
-msgstr ""
-
-#: plinth/modules/storage/__init__.py:47
+#: plinth/modules/storage/__init__.py:30
#, python-brace-format
msgid ""
"This module allows you to manage storage media attached to your {box_name}. "
@@ -4804,145 +4901,149 @@ msgid ""
"media, expand the root partition etc."
msgstr ""
-#: plinth/modules/storage/__init__.py:224
+#: plinth/modules/storage/__init__.py:52 plinth/modules/storage/__init__.py:318
+msgid "Storage"
+msgstr ""
+
+#: plinth/modules/storage/__init__.py:211
#, python-brace-format
msgid "{disk_size:.1f} bytes"
msgstr ""
-#: plinth/modules/storage/__init__.py:228
+#: plinth/modules/storage/__init__.py:215
#, python-brace-format
msgid "{disk_size:.1f} KiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:232
+#: plinth/modules/storage/__init__.py:219
#, python-brace-format
msgid "{disk_size:.1f} MiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:236
+#: plinth/modules/storage/__init__.py:223
#, python-brace-format
msgid "{disk_size:.1f} GiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:239
+#: plinth/modules/storage/__init__.py:226
#, python-brace-format
msgid "{disk_size:.1f} TiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:246
+#: plinth/modules/storage/__init__.py:233
msgid "The operation failed."
msgstr ""
-#: plinth/modules/storage/__init__.py:248
+#: plinth/modules/storage/__init__.py:235
msgid "The operation was cancelled."
msgstr ""
-#: plinth/modules/storage/__init__.py:250
+#: plinth/modules/storage/__init__.py:237
msgid "The device is already unmounting."
msgstr ""
-#: plinth/modules/storage/__init__.py:252
+#: plinth/modules/storage/__init__.py:239
msgid "The operation is not supported due to missing driver/tool support."
msgstr ""
-#: plinth/modules/storage/__init__.py:255
+#: plinth/modules/storage/__init__.py:242
msgid "The operation timed out."
msgstr ""
-#: plinth/modules/storage/__init__.py:257
+#: plinth/modules/storage/__init__.py:244
msgid "The operation would wake up a disk that is in a deep-sleep state."
msgstr ""
-#: plinth/modules/storage/__init__.py:260
+#: plinth/modules/storage/__init__.py:247
msgid "Attempting to unmount a device that is busy."
msgstr ""
-#: plinth/modules/storage/__init__.py:262
+#: plinth/modules/storage/__init__.py:249
msgid "The operation has already been cancelled."
msgstr ""
-#: plinth/modules/storage/__init__.py:268
+#: plinth/modules/storage/__init__.py:255
msgid "Not authorized to perform the requested operation."
msgstr ""
-#: plinth/modules/storage/__init__.py:270
+#: plinth/modules/storage/__init__.py:257
msgid "The device is already mounted."
msgstr ""
-#: plinth/modules/storage/__init__.py:272
+#: plinth/modules/storage/__init__.py:259
msgid "The device is not mounted."
msgstr ""
-#: plinth/modules/storage/__init__.py:275
+#: plinth/modules/storage/__init__.py:262
msgid "Not permitted to use the requested option."
msgstr ""
-#: plinth/modules/storage/__init__.py:278
+#: plinth/modules/storage/__init__.py:265
msgid "The device is mounted by another user."
msgstr ""
-#: plinth/modules/storage/__init__.py:326
+#: plinth/modules/storage/__init__.py:313
#, no-python-format, python-brace-format
msgid "Low space on system partition: {percent_used}% used, {free_space} free."
msgstr ""
-#: plinth/modules/storage/__init__.py:328
+#: plinth/modules/storage/__init__.py:315
msgid "Low disk space"
msgstr ""
-#: plinth/modules/storage/forms.py:79
+#: plinth/modules/storage/forms.py:64
msgid "Invalid directory name."
msgstr ""
-#: plinth/modules/storage/forms.py:97
+#: plinth/modules/storage/forms.py:82
msgid "Directory does not exist."
msgstr ""
-#: plinth/modules/storage/forms.py:99
+#: plinth/modules/storage/forms.py:84
msgid "Path is not a directory."
msgstr ""
-#: plinth/modules/storage/forms.py:102
+#: plinth/modules/storage/forms.py:87
msgid "Directory is not readable by the user."
msgstr ""
-#: plinth/modules/storage/forms.py:105
+#: plinth/modules/storage/forms.py:90
msgid "Directory is not writable by the user."
msgstr ""
-#: plinth/modules/storage/forms.py:110
+#: plinth/modules/storage/forms.py:95
msgid "Directory"
msgstr ""
-#: plinth/modules/storage/forms.py:113
+#: plinth/modules/storage/forms.py:98
msgid "Subdirectory (optional)"
msgstr ""
-#: plinth/modules/storage/forms.py:160
+#: plinth/modules/storage/forms.py:145
msgid "Share"
msgstr ""
-#: plinth/modules/storage/forms.py:168
+#: plinth/modules/storage/forms.py:153
msgid "Other directory (specify below)"
msgstr ""
-#: plinth/modules/storage/templates/storage.html:35
+#: plinth/modules/storage/templates/storage.html:20
msgid "The following storage devices are in use:"
msgstr ""
-#: plinth/modules/storage/templates/storage.html:41
+#: plinth/modules/storage/templates/storage.html:26
msgid "Label"
msgstr ""
-#: plinth/modules/storage/templates/storage.html:42
+#: plinth/modules/storage/templates/storage.html:27
msgid "Mount Point"
msgstr ""
-#: plinth/modules/storage/templates/storage.html:90
+#: plinth/modules/storage/templates/storage.html:75
msgid "Partition Expansion"
msgstr ""
-#: plinth/modules/storage/templates/storage.html:92
+#: plinth/modules/storage/templates/storage.html:77
#, python-format
msgid ""
"There is %(expandable_root_size)s of unallocated space available after your "
@@ -4950,13 +5051,13 @@ msgid ""
"will provide you additional free space to store your files."
msgstr ""
-#: plinth/modules/storage/templates/storage.html:102
-#: plinth/modules/storage/templates/storage_expand.html:39
-#: plinth/modules/storage/views.py:76
+#: plinth/modules/storage/templates/storage.html:87
+#: plinth/modules/storage/templates/storage_expand.html:24
+#: plinth/modules/storage/views.py:58
msgid "Expand Root Partition"
msgstr ""
-#: plinth/modules/storage/templates/storage_expand.html:29
+#: plinth/modules/storage/templates/storage_expand.html:14
#, python-format
msgid ""
"Please backup your data before proceeding. After this operation, "
@@ -4964,39 +5065,30 @@ msgid ""
"root partition."
msgstr ""
-#: plinth/modules/storage/views.py:88
+#: plinth/modules/storage/views.py:70
#, python-brace-format
msgid "Error expanding partition: {exception}"
msgstr ""
-#: plinth/modules/storage/views.py:91
+#: plinth/modules/storage/views.py:73
msgid "Partition expanded successfully."
msgstr ""
-#: plinth/modules/storage/views.py:109
+#: plinth/modules/storage/views.py:91
#, python-brace-format
msgid "{drive_vendor} {drive_model} can be safely unplugged."
msgstr ""
-#: plinth/modules/storage/views.py:113
+#: plinth/modules/storage/views.py:95
msgid "Device can be safely unplugged."
msgstr ""
-#: plinth/modules/storage/views.py:123
+#: plinth/modules/storage/views.py:105
#, python-brace-format
msgid "Error ejecting device: {error_message}"
msgstr ""
-#: plinth/modules/syncthing/__init__.py:40
-#: plinth/modules/syncthing/manifest.py:28
-msgid "Syncthing"
-msgstr ""
-
-#: plinth/modules/syncthing/__init__.py:44
-msgid "File Synchronization"
-msgstr ""
-
-#: plinth/modules/syncthing/__init__.py:47
+#: plinth/modules/syncthing/__init__.py:26
msgid ""
"Syncthing is an application to synchronize files across multiple devices, e."
"g. your desktop computer and mobile phone. Creation, modification, or "
@@ -5004,7 +5096,7 @@ msgid ""
"other devices that also run Syncthing."
msgstr ""
-#: plinth/modules/syncthing/__init__.py:52
+#: plinth/modules/syncthing/__init__.py:31
#, python-brace-format
msgid ""
"Running Syncthing on {box_name} provides an extra synchronization point for "
@@ -5015,19 +5107,20 @@ msgid ""
"{box_name} is only available for users belonging to the \"admin\" group."
msgstr ""
-#: plinth/modules/syncthing/__init__.py:63
+#: plinth/modules/syncthing/__init__.py:40
msgid "Administer Syncthing application"
msgstr ""
-#: plinth/modules/tahoe/__init__.py:43
-msgid "Tahoe-LAFS"
+#: plinth/modules/syncthing/__init__.py:54
+#: plinth/modules/syncthing/manifest.py:13
+msgid "Syncthing"
msgstr ""
-#: plinth/modules/tahoe/__init__.py:47
-msgid "Distributed File Storage"
+#: plinth/modules/syncthing/__init__.py:55
+msgid "File Synchronization"
msgstr ""
-#: plinth/modules/tahoe/__init__.py:134
+#: plinth/modules/tahoe/__init__.py:30
msgid ""
"Tahoe-LAFS is a decentralized secure file storage system. It uses provider "
"independent security to store files over a distributed network of storage "
@@ -5035,7 +5128,7 @@ msgid ""
"remaining nodes."
msgstr ""
-#: plinth/modules/tahoe/__init__.py:139
+#: plinth/modules/tahoe/__init__.py:35
#, python-brace-format
msgid ""
"This {box_name} hosts a storage node and an introducer by default. "
@@ -5043,7 +5136,15 @@ msgid ""
"other storage nodes."
msgstr ""
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:33
+#: plinth/modules/tahoe/__init__.py:66
+msgid "Tahoe-LAFS"
+msgstr ""
+
+#: plinth/modules/tahoe/__init__.py:68
+msgid "Distributed File Storage"
+msgstr ""
+
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:17
#, python-format
msgid ""
"The Tahoe-LAFS server domain is set to %(domain_name)s. Changing the "
@@ -5052,37 +5153,33 @@ msgid ""
"%(domain_name)s:5678\">https://%(domain_name)s:5678."
msgstr ""
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:55
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:39
msgid "Local introducer"
msgstr ""
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:43
#: plinth/modules/tahoe/templates/tahoe-post-setup.html:59
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:75
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:92
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:76
msgid "Pet Name"
msgstr ""
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:72
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:56
msgid "Add new introducer"
msgstr ""
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:83
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:67
msgid "Add"
msgstr ""
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:88
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:72
msgid "Connected introducers"
msgstr ""
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:105
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:89
msgid "Remove"
msgstr ""
-#: plinth/modules/tor/__init__.py:47
-msgid "Tor"
-msgstr ""
-
-#: plinth/modules/tor/__init__.py:52
+#: plinth/modules/tor/__init__.py:33
msgid ""
"Tor is an anonymous communication system. You can learn more about it from "
"the Tor Project website. For "
@@ -5091,76 +5188,80 @@ msgid ""
"\">Tor Browser."
msgstr ""
-#: plinth/modules/tor/__init__.py:83
+#: plinth/modules/tor/__init__.py:55
+msgid "Tor"
+msgstr ""
+
+#: plinth/modules/tor/__init__.py:66
msgid "Tor Onion Service"
msgstr ""
-#: plinth/modules/tor/__init__.py:87
+#: plinth/modules/tor/__init__.py:70
msgid "Tor Socks Proxy"
msgstr ""
-#: plinth/modules/tor/__init__.py:91
+#: plinth/modules/tor/__init__.py:74
msgid "Tor Bridge Relay"
msgstr ""
-#: plinth/modules/tor/__init__.py:112
+#: plinth/modules/tor/__init__.py:95
msgid "Tor relay port available"
msgstr ""
-#: plinth/modules/tor/__init__.py:122
+#: plinth/modules/tor/__init__.py:105
msgid "Obfs3 transport registered"
msgstr ""
-#: plinth/modules/tor/__init__.py:132
+#: plinth/modules/tor/__init__.py:115
msgid "Obfs4 transport registered"
msgstr ""
-#: plinth/modules/tor/__init__.py:225
+#: plinth/modules/tor/__init__.py:208
#, python-brace-format
msgid "Access URL {url} on tcp{kind} via Tor"
msgstr ""
-#: plinth/modules/tor/__init__.py:236
+#: plinth/modules/tor/__init__.py:219
#, python-brace-format
msgid "Confirm Tor usage at {url} on tcp{kind}"
msgstr ""
-#: plinth/modules/tor/forms.py:46
+#: plinth/modules/tor/forms.py:31
msgid ""
"Enter a valid bridge with this format: [transport] IP:ORPort [fingerprint]"
msgstr ""
-#: plinth/modules/tor/forms.py:88
+#: plinth/modules/tor/forms.py:73
msgid "Enable Tor"
msgstr ""
-#: plinth/modules/tor/forms.py:90
+#: plinth/modules/tor/forms.py:75
msgid "Use upstream bridges to connect to Tor network"
msgstr ""
-#: plinth/modules/tor/forms.py:92
+#: plinth/modules/tor/forms.py:77
msgid ""
"When enabled, the bridges configured below will be used to connect to the "
"Tor network. Use this option if your Internet Service Provider (ISP) blocks "
"or censors connections to the Tor Network. This will disable relay modes."
msgstr ""
-#: plinth/modules/tor/forms.py:97
+#: plinth/modules/tor/forms.py:82
msgid "Upstream bridges"
msgstr ""
-#: plinth/modules/tor/forms.py:99
+#: plinth/modules/tor/forms.py:84
msgid ""
"You can get some bridges from https://bridges.torproject.org/ and copy/paste the bridge information "
"here. Currently supported transports are none, obfs3, obfs4 and scamblesuit."
msgstr ""
-#: plinth/modules/tor/forms.py:105
+#: plinth/modules/tor/forms.py:90
msgid "Enable Tor relay"
msgstr ""
-#: plinth/modules/tor/forms.py:106
+#: plinth/modules/tor/forms.py:91
#, python-brace-format
msgid ""
"When enabled, your {box_name} will run a Tor relay and donate bandwidth to "
@@ -5168,22 +5269,22 @@ msgid ""
"download bandwidth."
msgstr ""
-#: plinth/modules/tor/forms.py:111
+#: plinth/modules/tor/forms.py:96
msgid "Enable Tor bridge relay"
msgstr ""
-#: plinth/modules/tor/forms.py:113
+#: plinth/modules/tor/forms.py:98
msgid ""
"When enabled, relay information is published in the Tor bridge database "
"instead of public Tor relay database making it harder to censor this node. "
"This helps others circumvent censorship."
msgstr ""
-#: plinth/modules/tor/forms.py:118
+#: plinth/modules/tor/forms.py:103
msgid "Enable Tor Hidden Service"
msgstr ""
-#: plinth/modules/tor/forms.py:120
+#: plinth/modules/tor/forms.py:105
#, python-brace-format
msgid ""
"A hidden service will allow {box_name} to provide selected services (such as "
@@ -5191,208 +5292,204 @@ msgid ""
"anonymity yet."
msgstr ""
-#: plinth/modules/tor/forms.py:125
+#: plinth/modules/tor/forms.py:110
msgid "Download software packages over Tor"
msgstr ""
-#: plinth/modules/tor/forms.py:126
+#: plinth/modules/tor/forms.py:111
msgid ""
"When enabled, software will be downloaded over the Tor network for "
"installations and upgrades. This adds a degree of privacy and security "
"during software downloads."
msgstr ""
-#: plinth/modules/tor/forms.py:141
+#: plinth/modules/tor/forms.py:126
msgid "Specify at least one upstream bridge to use upstream bridges."
msgstr ""
-#: plinth/modules/tor/manifest.py:29
+#: plinth/modules/tor/manifest.py:14
msgid "Tor Browser"
msgstr ""
-#: plinth/modules/tor/manifest.py:45
+#: plinth/modules/tor/manifest.py:30
msgid "Orbot: Proxy with Tor"
msgstr ""
-#: plinth/modules/tor/templates/tor.html:41
+#: plinth/modules/tor/templates/tor.html:26
msgid "Tor configuration is being updated"
msgstr ""
-#: plinth/modules/tor/templates/tor.html:50
+#: plinth/modules/tor/templates/tor.html:35
msgid "Onion Service"
msgstr ""
-#: plinth/modules/tor/templates/tor.html:52
+#: plinth/modules/tor/templates/tor.html:37
msgid "Ports"
msgstr ""
-#: plinth/modules/tor/templates/tor.html:82
+#: plinth/modules/tor/templates/tor.html:67
msgid "Relay"
msgstr ""
-#: plinth/modules/tor/templates/tor.html:84
+#: plinth/modules/tor/templates/tor.html:69
#, python-format
msgid ""
"If your %(box_name)s is behind a router or firewall, you should make sure "
"the following ports are open, and port-forwarded, if necessary:"
msgstr ""
-#: plinth/modules/tor/templates/tor.html:112
+#: plinth/modules/tor/templates/tor.html:97
msgid "SOCKS"
msgstr ""
-#: plinth/modules/tor/templates/tor.html:115
+#: plinth/modules/tor/templates/tor.html:100
#, python-format
msgid "A Tor SOCKS port is available on your %(box_name)s on TCP port 9050."
msgstr ""
-#: plinth/modules/transmission/__init__.py:41
-#: plinth/modules/transmission/manifest.py:24
-msgid "Transmission"
-msgstr ""
-
-#: plinth/modules/transmission/__init__.py:48
+#: plinth/modules/transmission/__init__.py:27
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/ttrss/__init__.py:43 plinth/modules/ttrss/manifest.py:34
-msgid "Tiny Tiny RSS"
+#: plinth/modules/transmission/__init__.py:48
+#: plinth/modules/transmission/manifest.py:9
+msgid "Transmission"
msgstr ""
-#: plinth/modules/ttrss/__init__.py:47
-msgid "News Feed Reader"
-msgstr ""
-
-#: plinth/modules/ttrss/__init__.py:50
+#: plinth/modules/ttrss/__init__.py:29
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:54
+#: plinth/modules/ttrss/__init__.py:33
#, python-brace-format
msgid ""
"When enabled, Tiny Tiny RSS can be accessed by any user with a {box_name} login."
msgstr ""
-#: plinth/modules/ttrss/__init__.py:58
+#: plinth/modules/ttrss/__init__.py:37
msgid ""
"When using a mobile or desktop application for Tiny Tiny RSS, use the URL /tt-rss-app for "
"connecting."
msgstr ""
-#: plinth/modules/ttrss/__init__.py:65
+#: plinth/modules/ttrss/__init__.py:42
msgid "Read and subscribe to news feeds"
msgstr ""
-#: plinth/modules/ttrss/manifest.py:25
+#: plinth/modules/ttrss/__init__.py:56 plinth/modules/ttrss/manifest.py:19
+msgid "Tiny Tiny RSS"
+msgstr ""
+
+#: plinth/modules/ttrss/__init__.py:57
+msgid "News Feed Reader"
+msgstr ""
+
+#: plinth/modules/ttrss/manifest.py:10
msgid "Tiny Tiny RSS (Fork)"
msgstr ""
-#: plinth/modules/upgrades/__init__.py:37 plinth/templates/setup.html:89
-msgid "Update"
-msgstr ""
-
-#: plinth/modules/upgrades/__init__.py:40
+#: plinth/modules/upgrades/__init__.py:23
msgid "Check for and apply the latest software and security updates."
msgstr ""
-#: plinth/modules/upgrades/__init__.py:84
+#: plinth/modules/upgrades/__init__.py:38 plinth/templates/setup.html:74
+msgid "Update"
+msgstr ""
+
+#: plinth/modules/upgrades/__init__.py:71
msgid "FreedomBox Updated"
msgstr ""
-#: plinth/modules/upgrades/forms.py:28
+#: plinth/modules/upgrades/forms.py:13
msgid "Enable auto-update"
msgstr ""
-#: plinth/modules/upgrades/forms.py:29
+#: plinth/modules/upgrades/forms.py:14
msgid "When enabled, FreedomBox automatically updates once a day."
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades-new-release.html:24
+#: plinth/modules/upgrades/templates/upgrades-new-release.html:9
#, python-format
msgid "%(box_name)s Updated"
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades-new-release.html:28
+#: plinth/modules/upgrades/templates/upgrades-new-release.html:13
#, python-format
msgid ""
"%(box_name)s has been updated to version %(version)s. See the release announcement."
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades-new-release.html:37
-#: plinth/templates/notifications.html:59
+#: plinth/modules/upgrades/templates/upgrades-new-release.html:22
+#: plinth/templates/notifications.html:44
msgid "Dismiss"
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades.html:45
+#: plinth/modules/upgrades/templates/upgrades.html:30
msgid "Update now"
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades.html:54
+#: plinth/modules/upgrades/templates/upgrades.html:39
msgid "Updating..."
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades.html:59
+#: plinth/modules/upgrades/templates/upgrades.html:44
msgid ""
"This may take a long time to complete. During an update, "
"you cannot install apps. Also, this web interface may be temporarily "
"unavailable and show an error. In that case, refresh the page to continue."
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades.html:73
+#: plinth/modules/upgrades/templates/upgrades.html:58
msgid "Toggle recent update logs"
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades_configure.html:26
-#: plinth/modules/upgrades/templates/upgrades_configure.html:27
-#: plinth/modules/upgrades/views.py:107
+#: plinth/modules/upgrades/templates/upgrades_configure.html:11
+#: plinth/modules/upgrades/templates/upgrades_configure.html:12
+#: plinth/modules/upgrades/views.py:89
msgid "Manual update"
msgstr ""
-#: plinth/modules/upgrades/views.py:66
+#: plinth/modules/upgrades/views.py:48
#, python-brace-format
msgid "Error when configuring unattended-upgrades: {error}"
msgstr ""
-#: plinth/modules/upgrades/views.py:70
+#: plinth/modules/upgrades/views.py:52
msgid "Automatic upgrades enabled"
msgstr ""
-#: plinth/modules/upgrades/views.py:73
+#: plinth/modules/upgrades/views.py:55
msgid "Automatic upgrades disabled"
msgstr ""
-#: plinth/modules/upgrades/views.py:75
+#: plinth/modules/upgrades/views.py:57
msgid "Settings unchanged"
msgstr ""
-#: plinth/modules/upgrades/views.py:101
+#: plinth/modules/upgrades/views.py:83
msgid "Upgrade process started."
msgstr ""
-#: plinth/modules/upgrades/views.py:104
+#: plinth/modules/upgrades/views.py:86
msgid "Starting upgrade failed."
msgstr ""
-#: plinth/modules/users/__init__.py:51
-msgid "Users and Groups"
-msgstr ""
-
-#: plinth/modules/users/__init__.py:54
+#: plinth/modules/users/__init__.py:37
msgid ""
"Create and managed user accounts. These accounts serve as centralized "
"authentication mechanism for most apps. Some apps further require a user "
"account to be part of a group to authorize the user to access the app."
msgstr ""
-#: plinth/modules/users/__init__.py:59
+#: plinth/modules/users/__init__.py:42
#, python-brace-format
msgid ""
"Any user may login to {box_name} web interface to see a list of apps "
@@ -5400,33 +5497,37 @@ msgid ""
"group may alter apps or system settings."
msgstr ""
-#: plinth/modules/users/__init__.py:128
+#: plinth/modules/users/__init__.py:64
+msgid "Users and Groups"
+msgstr ""
+
+#: plinth/modules/users/__init__.py:115
#, python-brace-format
msgid "Check LDAP entry \"{search_item}\""
msgstr ""
-#: plinth/modules/users/forms.py:43
+#: plinth/modules/users/forms.py:28
msgid "Access to all services and system settings"
msgstr ""
-#: plinth/modules/users/forms.py:59
+#: plinth/modules/users/forms.py:44
msgid "Username is taken or is reserved."
msgstr ""
-#: plinth/modules/users/forms.py:87
+#: plinth/modules/users/forms.py:72
msgid "Enter a valid username."
msgstr ""
-#: plinth/modules/users/forms.py:93
+#: plinth/modules/users/forms.py:78
msgid ""
"Required. 150 characters or fewer. English letters, digits and @/./-/_ only."
msgstr ""
-#: plinth/modules/users/forms.py:106 plinth/modules/users/forms.py:222
+#: plinth/modules/users/forms.py:91 plinth/modules/users/forms.py:207
msgid "Permissions"
msgstr ""
-#: plinth/modules/users/forms.py:109
+#: plinth/modules/users/forms.py:94
msgid ""
"Select which services should be available to the new user. The user will be "
"able to log in to services that support single sign-on through LDAP, if they "
@@ -5435,187 +5536,182 @@ msgid ""
"SSH and have administrative privileges (sudo)."
msgstr ""
-#: plinth/modules/users/forms.py:148 plinth/modules/users/forms.py:372
+#: plinth/modules/users/forms.py:133 plinth/modules/users/forms.py:357
msgid "Creating LDAP user failed."
msgstr ""
-#: plinth/modules/users/forms.py:159
+#: plinth/modules/users/forms.py:144
#, python-brace-format
msgid "Failed to add new user to {group} group."
msgstr ""
-#: plinth/modules/users/forms.py:173
+#: plinth/modules/users/forms.py:158
msgid "Authorized SSH Keys"
msgstr ""
-#: plinth/modules/users/forms.py:175
+#: plinth/modules/users/forms.py:160
msgid ""
"Setting an SSH public key will allow this user to securely log in to the "
"system without using a password. You may enter multiple keys, one on each "
"line. Blank lines and lines starting with # will be ignored."
msgstr ""
-#: plinth/modules/users/forms.py:259
+#: plinth/modules/users/forms.py:244
msgid "Renaming LDAP user failed."
msgstr ""
-#: plinth/modules/users/forms.py:271
+#: plinth/modules/users/forms.py:256
msgid "Failed to remove user from group."
msgstr ""
-#: plinth/modules/users/forms.py:282
+#: plinth/modules/users/forms.py:267
msgid "Failed to add user to group."
msgstr ""
-#: plinth/modules/users/forms.py:291
+#: plinth/modules/users/forms.py:276
msgid "Unable to set SSH keys."
msgstr ""
-#: plinth/modules/users/forms.py:306
+#: plinth/modules/users/forms.py:291
msgid "Failed to change user status."
msgstr ""
-#: plinth/modules/users/forms.py:314
+#: plinth/modules/users/forms.py:299
msgid "Cannot delete the only administrator in the system."
msgstr ""
-#: plinth/modules/users/forms.py:346
+#: plinth/modules/users/forms.py:331
msgid "Changing LDAP user password failed."
msgstr ""
-#: plinth/modules/users/forms.py:381
+#: plinth/modules/users/forms.py:366
msgid "Failed to add new user to admin group."
msgstr ""
-#: plinth/modules/users/forms.py:398
+#: plinth/modules/users/forms.py:383
msgid "Failed to restrict console access."
msgstr ""
-#: plinth/modules/users/forms.py:410
+#: plinth/modules/users/forms.py:395
msgid "User account created, you are now logged in"
msgstr ""
-#: plinth/modules/users/templates/users_change_password.html:26
+#: plinth/modules/users/templates/users_change_password.html:11
#, python-format
msgid "Change Password for %(username)s"
msgstr ""
-#: plinth/modules/users/templates/users_change_password.html:36
+#: plinth/modules/users/templates/users_change_password.html:21
msgid "Save Password"
msgstr ""
-#: plinth/modules/users/templates/users_create.html:32
-#: plinth/modules/users/templates/users_list.html:42
-#: plinth/modules/users/templates/users_list.html:44
-#: plinth/modules/users/views.py:57
+#: plinth/modules/users/templates/users_create.html:17
+#: plinth/modules/users/templates/users_list.html:27
+#: plinth/modules/users/templates/users_list.html:29
+#: plinth/modules/users/views.py:42
msgid "Create User"
msgstr ""
-#: plinth/modules/users/templates/users_delete.html:26
-#: plinth/modules/users/views.py:139
+#: plinth/modules/users/templates/users_delete.html:11
+#: plinth/modules/users/views.py:121
msgid "Delete User"
msgstr ""
-#: plinth/modules/users/templates/users_delete.html:29
+#: plinth/modules/users/templates/users_delete.html:14
#, python-format
msgid "Delete user %(username)s permanently?"
msgstr ""
-#: plinth/modules/users/templates/users_delete.html:38
+#: plinth/modules/users/templates/users_delete.html:23
#, python-format
msgid "Delete %(username)s"
msgstr ""
-#: plinth/modules/users/templates/users_firstboot.html:26
+#: plinth/modules/users/templates/users_firstboot.html:11
msgid "Administrator Account"
msgstr ""
-#: plinth/modules/users/templates/users_firstboot.html:29
+#: plinth/modules/users/templates/users_firstboot.html:14
msgid ""
"Choose a username and password to access this web interface. The password "
"can be changed later. This user will be granted administrative privileges. "
"Other users can be added later."
msgstr ""
-#: plinth/modules/users/templates/users_firstboot.html:42
+#: plinth/modules/users/templates/users_firstboot.html:27
msgid "Create Account"
msgstr ""
-#: plinth/modules/users/templates/users_list.html:38
-#: plinth/modules/users/views.py:74
+#: plinth/modules/users/templates/users_list.html:23
+#: plinth/modules/users/views.py:59
msgid "Users"
msgstr ""
-#: plinth/modules/users/templates/users_list.html:57
+#: plinth/modules/users/templates/users_list.html:42
#, python-format
msgid "Delete user %(username)s"
msgstr ""
-#: plinth/modules/users/templates/users_list.html:65
+#: plinth/modules/users/templates/users_list.html:50
#, python-format
msgid "Edit user %(username)s"
msgstr ""
-#: plinth/modules/users/templates/users_update.html:30
+#: plinth/modules/users/templates/users_update.html:15
#, python-format
msgid ""
"Use the change password form to "
"change the password."
msgstr ""
-#: plinth/modules/users/templates/users_update.html:42
-#: plinth/templates/language-selection.html:32
+#: plinth/modules/users/templates/users_update.html:27
+#: plinth/templates/language-selection.html:17
msgid "Save Changes"
msgstr ""
-#: plinth/modules/users/views.py:55
+#: plinth/modules/users/views.py:40
#, python-format
msgid "User %(username)s created."
msgstr ""
-#: plinth/modules/users/views.py:93
+#: plinth/modules/users/views.py:75
#, python-format
msgid "User %(username)s updated."
msgstr ""
-#: plinth/modules/users/views.py:94
+#: plinth/modules/users/views.py:76
msgid "Edit User"
msgstr ""
-#: plinth/modules/users/views.py:149
+#: plinth/modules/users/views.py:131
#, python-brace-format
msgid "User {user} deleted."
msgstr ""
-#: plinth/modules/users/views.py:156
+#: plinth/modules/users/views.py:138
msgid "Deleting LDAP user failed."
msgstr ""
-#: plinth/modules/users/views.py:165
+#: plinth/modules/users/views.py:147
msgid "Change Password"
msgstr ""
-#: plinth/modules/users/views.py:166
+#: plinth/modules/users/views.py:148
msgid "Password changed successfully."
msgstr ""
-#: plinth/modules/wireguard/__init__.py:38
-#: plinth/modules/wireguard/manifest.py:29
-msgid "WireGuard"
-msgstr ""
-
-#: plinth/modules/wireguard/__init__.py:43
+#: plinth/modules/wireguard/__init__.py:24
msgid "WireGuard is a fast, modern, secure VPN tunnel."
msgstr ""
-#: plinth/modules/wireguard/__init__.py:45
+#: plinth/modules/wireguard/__init__.py:26
#, python-brace-format
msgid ""
"It can be used to connect to a VPN provider which supports WireGuard, and to "
"route all outgoing traffic from {box_name} through the VPN."
msgstr ""
-#: plinth/modules/wireguard/__init__.py:49
+#: plinth/modules/wireguard/__init__.py:30
#, python-brace-format
msgid ""
"A second use case is to connect a mobile device to {box_name} while "
@@ -5623,59 +5719,64 @@ msgid ""
"securely relayed through {box_name}."
msgstr ""
-#: plinth/modules/wireguard/forms.py:47
+#: plinth/modules/wireguard/__init__.py:52
+#: plinth/modules/wireguard/manifest.py:14
+msgid "WireGuard"
+msgstr ""
+
+#: plinth/modules/wireguard/forms.py:32
msgid "Invalid key."
msgstr ""
-#: plinth/modules/wireguard/forms.py:76
-#: plinth/modules/wireguard/templates/wireguard.html:32
-#: plinth/modules/wireguard/templates/wireguard.html:89
-#: plinth/modules/wireguard/templates/wireguard_delete_server.html:38
+#: plinth/modules/wireguard/forms.py:61
+#: plinth/modules/wireguard/templates/wireguard.html:17
+#: plinth/modules/wireguard/templates/wireguard.html:74
+#: plinth/modules/wireguard/templates/wireguard_delete_server.html:23
msgid "Public Key"
msgstr ""
-#: plinth/modules/wireguard/forms.py:77
+#: plinth/modules/wireguard/forms.py:62
msgid ""
"Public key of the peer. Example: "
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs= ."
msgstr ""
-#: plinth/modules/wireguard/forms.py:85
+#: plinth/modules/wireguard/forms.py:70
msgid "Endpoint of the server"
msgstr ""
-#: plinth/modules/wireguard/forms.py:86
+#: plinth/modules/wireguard/forms.py:71
msgid ""
"Domain name and port in the form \"ip:port\". Example: demo.wireguard."
"com:12912 ."
msgstr ""
-#: plinth/modules/wireguard/forms.py:91
+#: plinth/modules/wireguard/forms.py:76
msgid "Public key of the server"
msgstr ""
-#: plinth/modules/wireguard/forms.py:92
+#: plinth/modules/wireguard/forms.py:77
msgid ""
"Provided by the server operator, a long string of characters. Example: "
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs= ."
msgstr ""
-#: plinth/modules/wireguard/forms.py:97
+#: plinth/modules/wireguard/forms.py:82
msgid "Client IP address provided by server"
msgstr ""
-#: plinth/modules/wireguard/forms.py:98
+#: plinth/modules/wireguard/forms.py:83
msgid ""
"IP address assigned to this machine on the VPN after connecting to the "
"endpoint. This value is usually provided by the server operator. Example: "
"192.168.0.10."
msgstr ""
-#: plinth/modules/wireguard/forms.py:104
+#: plinth/modules/wireguard/forms.py:89
msgid "Private key of this machine"
msgstr ""
-#: plinth/modules/wireguard/forms.py:105
+#: plinth/modules/wireguard/forms.py:90
msgid ""
"Optional. New public/private keys are generated if left blank. Public key "
"can then be provided to the server. This is the recommended way. However, "
@@ -5683,157 +5784,157 @@ msgid ""
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs= ."
msgstr ""
-#: plinth/modules/wireguard/forms.py:113
+#: plinth/modules/wireguard/forms.py:98
msgid "Pre-shared key"
msgstr ""
-#: plinth/modules/wireguard/forms.py:114
+#: plinth/modules/wireguard/forms.py:99
msgid ""
"Optional. A shared secret key provided by the server to add an additional "
"layer of security. Fill in only if provided. Example: "
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs=."
msgstr ""
-#: plinth/modules/wireguard/forms.py:120
+#: plinth/modules/wireguard/forms.py:105
msgid "Use this connection to send all outgoing traffic"
msgstr ""
-#: plinth/modules/wireguard/forms.py:122
+#: plinth/modules/wireguard/forms.py:107
msgid "Typically checked for a VPN service though which all traffic is sent."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:25
+#: plinth/modules/wireguard/templates/wireguard.html:10
msgid "As a Server"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:27
+#: plinth/modules/wireguard/templates/wireguard.html:12
msgid "Peers allowed to connect to this server:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:33
+#: plinth/modules/wireguard/templates/wireguard.html:18
msgid "Allowed IPs"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:34
-#: plinth/modules/wireguard/templates/wireguard.html:90
+#: plinth/modules/wireguard/templates/wireguard.html:19
+#: plinth/modules/wireguard/templates/wireguard.html:75
msgid "Last Connected Time"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:53
+#: plinth/modules/wireguard/templates/wireguard.html:38
#, python-format
msgid "No peers configured to connect to this %(box_name)s yet."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:62
+#: plinth/modules/wireguard/templates/wireguard.html:47
#, python-format
msgid "Public key for this %(box_name)s:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:68
+#: plinth/modules/wireguard/templates/wireguard.html:53
msgid "Not configured yet."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:72
+#: plinth/modules/wireguard/templates/wireguard.html:57
msgid "Add a new peer"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:76
-#: plinth/modules/wireguard/views.py:69
+#: plinth/modules/wireguard/templates/wireguard.html:61
+#: plinth/modules/wireguard/views.py:51
msgid "Add Allowed Client"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:79
+#: plinth/modules/wireguard/templates/wireguard.html:64
msgid "As a Client"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:81
+#: plinth/modules/wireguard/templates/wireguard.html:66
#, python-format
msgid "Servers that %(box_name)s will connect to:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:88
-#: plinth/modules/wireguard/templates/wireguard_delete_server.html:34
+#: plinth/modules/wireguard/templates/wireguard.html:73
+#: plinth/modules/wireguard/templates/wireguard_delete_server.html:19
msgid "Endpoint"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:111
+#: plinth/modules/wireguard/templates/wireguard.html:96
msgid "No connections to remote servers are configured yet."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:119
+#: plinth/modules/wireguard/templates/wireguard.html:104
msgid "Add a new server"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:123
-#: plinth/modules/wireguard/views.py:178
+#: plinth/modules/wireguard/templates/wireguard.html:108
+#: plinth/modules/wireguard/views.py:160
msgid "Add Connection to Server"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_add_client.html:34
+#: plinth/modules/wireguard/templates/wireguard_add_client.html:19
msgid "Add Client"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_delete_client.html:29
+#: plinth/modules/wireguard/templates/wireguard_delete_client.html:14
msgid "Are you sure that you want to delete this client?"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_delete_server.html:29
+#: plinth/modules/wireguard/templates/wireguard_delete_server.html:14
msgid "Are you sure that you want to delete this server?"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_edit_client.html:34
+#: plinth/modules/wireguard/templates/wireguard_edit_client.html:19
msgid "Update Client"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_edit_server.html:34
+#: plinth/modules/wireguard/templates/wireguard_edit_server.html:19
msgid "Update Connection"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:27
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:12
#, python-format
msgid ""
"%(box_name)s will allow this client to connect to it. Ensure that the client "
"is configured with the following information."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:35
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:20
msgid "Client public key:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:39
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:24
msgid "IP address to use for client:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:43
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:46
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:28
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:31
msgid "Pre-shared key:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:47
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:32
msgid "Server endpoints:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:55
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:42
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:40
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:27
msgid "Server public key:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:65
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:64
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:50
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:49
msgid "Data transmitted:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:69
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:68
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:54
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:53
msgid "Data received:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:73
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:72
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:58
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:57
msgid "Latest handshake:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:29
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:14
#, python-format
msgid ""
"%(box_name)s will attempt to reach a WireGuard server with the following "
@@ -5841,133 +5942,133 @@ msgid ""
"public key and IP address."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:38
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:23
msgid "Server endpoint:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:50
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:35
msgid "Public key of this machine:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:54
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:39
msgid "IP address of this machine:"
msgstr ""
-#: plinth/modules/wireguard/views.py:64
+#: plinth/modules/wireguard/views.py:46
msgid "Added new client."
msgstr ""
-#: plinth/modules/wireguard/views.py:79 plinth/modules/wireguard/views.py:138
+#: plinth/modules/wireguard/views.py:61 plinth/modules/wireguard/views.py:120
msgid "Client with public key already exists"
msgstr ""
-#: plinth/modules/wireguard/views.py:92
+#: plinth/modules/wireguard/views.py:74
msgid "Allowed Client"
msgstr ""
-#: plinth/modules/wireguard/views.py:114
+#: plinth/modules/wireguard/views.py:96
msgid "Updated client."
msgstr ""
-#: plinth/modules/wireguard/views.py:119
+#: plinth/modules/wireguard/views.py:101
msgid "Modify Client"
msgstr ""
-#: plinth/modules/wireguard/views.py:152
+#: plinth/modules/wireguard/views.py:134
msgid "Delete Allowed Client"
msgstr ""
-#: plinth/modules/wireguard/views.py:161
+#: plinth/modules/wireguard/views.py:143
msgid "Client deleted."
msgstr ""
-#: plinth/modules/wireguard/views.py:163
+#: plinth/modules/wireguard/views.py:145
msgid "Client not found"
msgstr ""
-#: plinth/modules/wireguard/views.py:173
+#: plinth/modules/wireguard/views.py:155
msgid "Added new server."
msgstr ""
-#: plinth/modules/wireguard/views.py:194
+#: plinth/modules/wireguard/views.py:176
msgid "Connection to Server"
msgstr ""
-#: plinth/modules/wireguard/views.py:212
+#: plinth/modules/wireguard/views.py:194
msgid "Updated server."
msgstr ""
-#: plinth/modules/wireguard/views.py:217
+#: plinth/modules/wireguard/views.py:199
msgid "Modify Connection to Server"
msgstr ""
-#: plinth/modules/wireguard/views.py:254
+#: plinth/modules/wireguard/views.py:236
msgid "Delete Connection to Server"
msgstr ""
-#: plinth/modules/wireguard/views.py:274
+#: plinth/modules/wireguard/views.py:256
msgid "Server deleted."
msgstr ""
-#: plinth/network.py:42
+#: plinth/network.py:27
msgid "PPPoE"
msgstr ""
-#: plinth/network.py:43
+#: plinth/network.py:28
msgid "Generic"
msgstr ""
-#: plinth/package.py:137
+#: plinth/package.py:122
msgid "Error during installation"
msgstr ""
-#: plinth/package.py:159
+#: plinth/package.py:144
msgid "installing"
msgstr ""
-#: plinth/package.py:161
+#: plinth/package.py:146
msgid "downloading"
msgstr ""
-#: plinth/package.py:163
+#: plinth/package.py:148
msgid "media change"
msgstr ""
-#: plinth/package.py:165
+#: plinth/package.py:150
#, python-brace-format
msgid "configuration file: {file}"
msgstr ""
-#: plinth/templates/403.html:25
+#: plinth/templates/403.html:10
msgid "403 Forbidden"
msgstr ""
-#: plinth/templates/403.html:29
+#: plinth/templates/403.html:14
#, python-format
msgid "You don't have permission to access %(request_path)s on this server."
msgstr ""
-#: plinth/templates/404.html:25
+#: plinth/templates/404.html:10
msgid "404"
msgstr ""
-#: plinth/templates/404.html:28
+#: plinth/templates/404.html:13
#, python-format
msgid "Requested page %(request_path)s was not found."
msgstr ""
-#: plinth/templates/404.html:34
+#: plinth/templates/404.html:19
msgid ""
"If you believe this missing page should exist, please file a bug at the "
"FreedomBox Service (Plinth) project issue tracker."
msgstr ""
-#: plinth/templates/500.html:25
+#: plinth/templates/500.html:10
msgid "500"
msgstr ""
-#: plinth/templates/500.html:29
+#: plinth/templates/500.html:14
#, python-format
msgid ""
"This is an internal error and not something you caused or can fix. Please "
@@ -5976,137 +6077,137 @@ msgid ""
"href=\"%(status_log_url)s\">status log to the bug report."
msgstr ""
-#: plinth/templates/app.html:47
+#: plinth/templates/app-header.html:22
+msgid "Installation"
+msgstr ""
+
+#: plinth/templates/app.html:32
#, python-format
msgid "Service %(service_name)s is running."
msgstr ""
-#: plinth/templates/app.html:52
+#: plinth/templates/app.html:37
#, python-format
msgid "Service %(service_name)s is not running."
msgstr ""
-#: plinth/templates/base.html:50
+#: plinth/templates/base.html:35
#, python-format
msgid "Core functionality and web interface for %(box_name)s"
msgstr ""
-#: plinth/templates/base.html:96
+#: plinth/templates/base.html:81
msgid "Toggle navigation"
msgstr ""
-#: plinth/templates/base.html:120 plinth/templates/base.html:123
+#: plinth/templates/base.html:105 plinth/templates/base.html:108
msgid "Home"
msgstr ""
-#: plinth/templates/base.html:128 plinth/templates/base.html:132
+#: plinth/templates/base.html:113 plinth/templates/base.html:117
msgid "Apps"
msgstr ""
-#: plinth/templates/base.html:137 plinth/templates/base.html:141
+#: plinth/templates/base.html:122 plinth/templates/base.html:126
msgid "System"
msgstr ""
-#: plinth/templates/base.html:173 plinth/templates/base.html:174
+#: plinth/templates/base.html:158 plinth/templates/base.html:159
msgid "Change password"
msgstr ""
-#: plinth/templates/base.html:181 plinth/templates/base.html:182
+#: plinth/templates/base.html:166 plinth/templates/base.html:167
msgid "Restart"
msgstr ""
-#: plinth/templates/base.html:187 plinth/templates/base.html:188
+#: plinth/templates/base.html:172 plinth/templates/base.html:173
msgid "Shut down"
msgstr ""
-#: plinth/templates/base.html:195 plinth/templates/base.html:196
-#: plinth/templates/base.html:220 plinth/templates/base.html:222
+#: plinth/templates/base.html:180 plinth/templates/base.html:181
+#: plinth/templates/base.html:205 plinth/templates/base.html:207
msgid "Log out"
msgstr ""
-#: plinth/templates/base.html:204 plinth/templates/base.html:207
+#: plinth/templates/base.html:189 plinth/templates/base.html:192
msgid "Select language"
msgstr ""
-#: plinth/templates/base.html:212 plinth/templates/base.html:214
+#: plinth/templates/base.html:197 plinth/templates/base.html:199
msgid "Log in"
msgstr ""
-#: plinth/templates/clients.html:32
+#: plinth/templates/clients.html:17
msgid "Web"
msgstr ""
-#: plinth/templates/clients.html:57
+#: plinth/templates/clients.html:42
msgid "Desktop"
msgstr ""
-#: plinth/templates/clients.html:68
+#: plinth/templates/clients.html:53
msgid "GNU/Linux"
msgstr ""
-#: plinth/templates/clients.html:70
+#: plinth/templates/clients.html:55
msgid "Windows"
msgstr ""
-#: plinth/templates/clients.html:72
+#: plinth/templates/clients.html:57
msgid "macOS"
msgstr ""
-#: plinth/templates/clients.html:88
+#: plinth/templates/clients.html:73
msgid "Mobile"
msgstr ""
-#: plinth/templates/clients.html:99
+#: plinth/templates/clients.html:84
msgid "Play Store"
msgstr ""
-#: plinth/templates/clients.html:101
+#: plinth/templates/clients.html:86
msgid "F-Droid"
msgstr ""
-#: plinth/templates/clients.html:103
+#: plinth/templates/clients.html:88
msgid "App Store"
msgstr ""
-#: plinth/templates/clients.html:119
+#: plinth/templates/clients.html:104
msgid "Package"
msgstr ""
-#: plinth/templates/clients.html:126
+#: plinth/templates/clients.html:111
msgid "Debian:"
msgstr ""
-#: plinth/templates/clients.html:129
+#: plinth/templates/clients.html:114
msgid "Homebrew:"
msgstr ""
-#: plinth/templates/clients.html:132
+#: plinth/templates/clients.html:117
msgid "RPM:"
msgstr ""
-#: plinth/templates/first_setup.html:39
+#: plinth/templates/first_setup.html:24
#, python-format
msgid ""
"Please wait for %(box_name)s to finish installation. You can start using "
"your %(box_name)s once it is done."
msgstr ""
-#: plinth/templates/header.html:36
-msgid "Installation"
-msgstr ""
-
-#: plinth/templates/index.html:37
+#: plinth/templates/index.html:22
#, python-format
msgid ""
"Enable some applications to add shortcuts to "
"this page."
msgstr ""
-#: plinth/templates/index.html:59
+#: plinth/templates/index.html:44
msgid "Configure »"
msgstr ""
-#: plinth/templates/index.html:115
+#: plinth/templates/index.html:100
#, python-format
msgid ""
"%(box_name)s, a Debian pure blend, is a 100%% free software self-hosting web "
@@ -6114,7 +6215,7 @@ msgid ""
"communication tools respecting your privacy and data ownership."
msgstr ""
-#: plinth/templates/index.html:124
+#: plinth/templates/index.html:109
#, python-format
msgid ""
"This portal is a part of the %(box_name)s web interface. %(box_name)s is "
@@ -6122,55 +6223,55 @@ msgid ""
"Version 3 or later."
msgstr ""
-#: plinth/templates/index.html:144
+#: plinth/templates/index.html:129
msgid "Homepage"
msgstr ""
-#: plinth/templates/index.html:147
+#: plinth/templates/index.html:132
msgid "Source Code"
msgstr ""
-#: plinth/templates/index.html:150
+#: plinth/templates/index.html:135
msgid "Donate"
msgstr ""
-#: plinth/templates/index.html:154
+#: plinth/templates/index.html:139
msgid "FreedomBox Foundation"
msgstr ""
-#: plinth/templates/index.html:161
+#: plinth/templates/index.html:146
msgid "IRC Chatroom"
msgstr ""
-#: plinth/templates/index.html:166
+#: plinth/templates/index.html:151
msgid "Mailing list"
msgstr ""
-#: plinth/templates/internal-zone.html:26
+#: plinth/templates/internal-zone.html:11
#, python-format
msgid "%(service_name)s is available only on internal networks."
msgstr ""
-#: plinth/templates/internal-zone.html:32
+#: plinth/templates/internal-zone.html:17
msgid "Currently there are no network interfaces configured as internal."
msgstr ""
-#: plinth/templates/internal-zone.html:34
+#: plinth/templates/internal-zone.html:19
#, python-format
msgid ""
"Currently the following network interfaces are configured as internal: "
"%(interface_list)s"
msgstr ""
-#: plinth/templates/notifications-dropdown.html:26
+#: plinth/templates/notifications-dropdown.html:11
msgid "Notifications"
msgstr ""
-#: plinth/templates/port-forwarding-info.html:23
+#: plinth/templates/port-forwarding-info.html:8
msgid "Port Forwarding"
msgstr ""
-#: plinth/templates/port-forwarding-info.html:26
+#: plinth/templates/port-forwarding-info.html:11
#, python-format
msgid ""
"If your FreedomBox is behind a router, you will need to set up port "
@@ -6178,62 +6279,62 @@ msgid ""
"%(service_name)s:"
msgstr ""
-#: plinth/templates/setup.html:51
+#: plinth/templates/setup.html:36
msgid "Install this application?"
msgstr ""
-#: plinth/templates/setup.html:55
+#: plinth/templates/setup.html:40
msgid "This application needs an update. Update now?"
msgstr ""
-#: plinth/templates/setup.html:66
+#: plinth/templates/setup.html:51
msgid ""
"Another installation or upgrade is already running. Please wait for a few "
"moments before trying again."
msgstr ""
-#: plinth/templates/setup.html:73
+#: plinth/templates/setup.html:58
msgid "This application is currently not available in your distribution."
msgstr ""
-#: plinth/templates/setup.html:87
+#: plinth/templates/setup.html:72
msgid "Install"
msgstr ""
-#: plinth/templates/setup.html:98
+#: plinth/templates/setup.html:83
msgid "Performing pre-install operation"
msgstr ""
-#: plinth/templates/setup.html:102
+#: plinth/templates/setup.html:87
msgid "Performing post-install operation"
msgstr ""
-#: plinth/templates/setup.html:107
+#: plinth/templates/setup.html:92
#, python-format
msgid "Installing %(package_names)s: %(status)s"
msgstr ""
-#: plinth/templates/setup.html:117
+#: plinth/templates/setup.html:102
#, python-format
msgid "%(percentage)s%% complete"
msgstr ""
-#: plinth/templates/toolbar.html:38
+#: plinth/templates/toolbar.html:23
msgid "Launch web client"
msgstr ""
-#: plinth/templates/toolbar.html:47
+#: plinth/templates/toolbar.html:32
msgid "Client Apps"
msgstr ""
-#: plinth/views.py:179
+#: plinth/views.py:189
msgid "Application enabled"
msgstr ""
-#: plinth/views.py:182
+#: plinth/views.py:192
msgid "Application disabled"
msgstr ""
-#: plinth/web_framework.py:190
+#: plinth/web_framework.py:107
msgid "Gujarati"
msgstr ""
diff --git a/plinth/locale/el/LC_MESSAGES/django.po b/plinth/locale/el/LC_MESSAGES/django.po
index 7b7ea82fb..c44a738aa 100644
--- a/plinth/locale/el/LC_MESSAGES/django.po
+++ b/plinth/locale/el/LC_MESSAGES/django.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2020-02-14 21:26+0200\n"
+"POT-Creation-Date: 2020-02-24 19:12-0500\n"
"PO-Revision-Date: 2020-01-25 17:21+0000\n"
"Last-Translator: Nektarios Katakis This means that devices on the Internet can reach you when you are " +"connected to the Internet. Every time you connect to the Internet with your " +"Internet Service Provider (ISP), you may get a different IP address, " +"especially after some offline time. Many ISPs offer this type of " +"connectivity. If you have a public IP address but are unsure if it changes " +"over time or not, it is safer to choose this option.
" +msgstr "" + #: plinth/modules/networks/forms.py:313 +#, python-brace-format +msgid "" +"I have a public IP address that does not change overtime (recommended)This means that devices on the Internet can reach you " +"when you are connected to the Internet. Every time you connect to the " +"Internet with your Internet Service Provider (ISP), you always get the same " +"IP address. This is the most trouble-free setup for many {box_name} services " +"but very few ISPs offer this. You may be able to get this service from your " +"ISP by making an additional payment.
" +msgstr "" + +#: plinth/modules/networks/forms.py:326 +#, python-brace-format +msgid "" +"I dont have a public IP addressThis means that " +"devices on the Internet can not reach you when you are connected to " +"the Internet. Every time you connect to the Internet with your Internet " +"Service Provider (ISP), you get an IP address that is only relevant for " +"local networks. Many ISPs offer this type of connectivity. This is the most " +"troublesome situation for hosting services at home. {box_name} provides many " +"workaround solutions but each solution has some limitations.
" +msgstr "" + +#: plinth/modules/networks/forms.py:351 #, fuzzy #| msgid "An error occurred during configuration." msgid "Preferred router configuration" msgstr "Παρουσιάστηκε σφάλμα κατά τη ρύθμιση παραμέτρων." -#: plinth/modules/networks/forms.py:318 +#: plinth/modules/networks/forms.py:356 #, python-brace-format msgid "" -"Use DMZ feature to forward all trafficMost routers " -"provide a configuration setting called DMZ. This will allow the router to " -"forward all incoming traffic from the internet to a single IP address such " -"as the {box_name}'s address. First remember to configure a static local IP " -"address for your {box_name} in your router's configuration.
" +"Use DMZ feature to forward all traffic (recommended)Most routers provide a configuration setting called DMZ. This will allow " +"the router to forward all incoming traffic from the Internet to a single IP " +"address such as the {box_name}'s IP address. First remember to configure a " +"static local IP address for your {box_name} in your router's configuration." +"p>" msgstr "" -#: plinth/modules/networks/forms.py:332 +#: plinth/modules/networks/forms.py:368 #, python-brace-format msgid "" -"Forward Specific Traffic as needed by each application
You may alternatively choose to forward only specific traffic to your " "{box_name}. This is ideal if you have other servers like {box_name} in your " "network or if your router does not support DMZ feature. All applications " @@ -3638,266 +3709,272 @@ msgid "" "to be forwarded for that application to work.
" msgstr "" -#: plinth/modules/networks/forms.py:349 +#: plinth/modules/networks/forms.py:382 msgid "" -"Router is currently unconfiguredChoose this if you " +"Router is currently unconfigured
Choose this if you " "have not configured or are unable to configure the router currently and wish " "to be reminded later. Some of the other configuration steps may fail.
" msgstr "" -#: plinth/modules/networks/networks.py:43 +#: plinth/modules/networks/networks.py:32 msgid "Network Connections" msgstr "Συνδέσεις δικτύου" -#: plinth/modules/networks/networks.py:59 +#: plinth/modules/networks/networks.py:46 msgid "Cannot show connection: Connection not found." msgstr "Δεν είναι δυνατή η εμφάνιση της σύνδεσης: δεν βρέθηκε σύνδεση." -#: plinth/modules/networks/networks.py:94 +#: plinth/modules/networks/networks.py:81 msgid "Connection Information" msgstr "Πληροφορίες σύνδεσης" -#: plinth/modules/networks/networks.py:108 +#: plinth/modules/networks/networks.py:95 msgid "Cannot edit connection: Connection not found." msgstr "Δεν είναι δυνατή η επεξεργασία της σύνδεσης: δεν βρέθηκε σύνδεση." -#: plinth/modules/networks/networks.py:114 +#: plinth/modules/networks/networks.py:101 msgid "This type of connection is not yet understood." msgstr "Αυτός ο τύπος σύνδεσης δεν έχει κατανοηθεί ακόμα." -#: plinth/modules/networks/networks.py:136 -#: plinth/modules/networks/networks.py:220 -#: plinth/modules/networks/templates/connections_edit.html:35 +#: plinth/modules/networks/networks.py:123 +#: plinth/modules/networks/networks.py:207 +#: plinth/modules/networks/templates/connections_edit.html:20 msgid "Edit Connection" msgstr "Επεξεργασία σύνδεσης" -#: plinth/modules/networks/networks.py:232 +#: plinth/modules/networks/networks.py:219 #, python-brace-format msgid "Activated connection {name}." msgstr "H σύνδεση {name} ενεργοποιήθηκε." -#: plinth/modules/networks/networks.py:236 +#: plinth/modules/networks/networks.py:223 msgid "Failed to activate connection: Connection not found." msgstr "Απέτυχε η ενεργοποίηση της σύνδεσης: η σύνδεση δεν βρέθηκε." -#: plinth/modules/networks/networks.py:242 +#: plinth/modules/networks/networks.py:229 #, python-brace-format msgid "Failed to activate connection {name}: No suitable device is available." msgstr "" "Απέτυχε η ενεργοποίηση της σύνδεσης {name}: δεν υπάρχει διαθέσιμη κατάλληλη " "συσκευή." -#: plinth/modules/networks/networks.py:255 +#: plinth/modules/networks/networks.py:242 #, python-brace-format msgid "Deactivated connection {name}." msgstr "Aπενεργοποιήθηκε η σύνδεση {name}." -#: plinth/modules/networks/networks.py:259 +#: plinth/modules/networks/networks.py:246 msgid "Failed to de-activate connection: Connection not found." msgstr "Απέτυχε η απενεργοποίηση της σύνδεσης: η σύνδεση δεν βρέθηκε." -#: plinth/modules/networks/networks.py:269 -#: plinth/modules/networks/templates/connections_list.html:62 -#: plinth/modules/networks/templates/connections_list.html:64 +#: plinth/modules/networks/networks.py:256 +#: plinth/modules/networks/templates/connections_list.html:12 +#: plinth/modules/networks/templates/connections_list.html:14 msgid "Nearby Wi-Fi Networks" msgstr "Κοντινά δίκτυα Wi-Fi" -#: plinth/modules/networks/networks.py:293 -#: plinth/modules/networks/templates/connections_list.html:67 -#: plinth/modules/networks/templates/connections_list.html:69 -#: plinth/modules/wireguard/templates/wireguard_add_server.html:34 +#: plinth/modules/networks/networks.py:280 +#: plinth/modules/networks/templates/connections_list.html:17 +#: plinth/modules/networks/templates/connections_list.html:19 +#: plinth/modules/wireguard/templates/wireguard_add_server.html:19 msgid "Add Connection" msgstr "Προσθήκη σύνδεσης" -#: plinth/modules/networks/networks.py:311 +#: plinth/modules/networks/networks.py:298 msgid "Adding New Generic Connection" msgstr "Προσθήκη νέας γενικής σύνδεσης" -#: plinth/modules/networks/networks.py:329 +#: plinth/modules/networks/networks.py:316 msgid "Adding New Ethernet Connection" msgstr "Προσθήκη νέας σύνδεσης Ethernet" -#: plinth/modules/networks/networks.py:347 +#: plinth/modules/networks/networks.py:334 msgid "Adding New PPPoE Connection" msgstr "Προσθήκη νέας σύνδεσης PPPoE" -#: plinth/modules/networks/networks.py:382 +#: plinth/modules/networks/networks.py:369 msgid "Adding New Wi-Fi Connection" msgstr "Προσθήκη νέας σύνδεσης Wi-Fi" -#: plinth/modules/networks/networks.py:397 +#: plinth/modules/networks/networks.py:384 #, python-brace-format msgid "Connection {name} deleted." msgstr "Η σύνδεση {name} διαγράφηκε." -#: plinth/modules/networks/networks.py:401 -#: plinth/modules/networks/networks.py:411 +#: plinth/modules/networks/networks.py:388 +#: plinth/modules/networks/networks.py:398 msgid "Failed to delete connection: Connection not found." msgstr "Απέτυχε η διαγραφή της σύνδεσης: η σύνδεση δεν βρέθηκε." -#: plinth/modules/networks/networks.py:416 -#: plinth/modules/networks/templates/connections_delete.html:26 +#: plinth/modules/networks/networks.py:403 +#: plinth/modules/networks/templates/connections_delete.html:11 msgid "Delete Connection" msgstr "Διαγραφή σύνδεσης" -#: plinth/modules/networks/networks.py:442 +#: plinth/modules/networks/networks.py:428 #, fuzzy #| msgid "Tor configuration is being updated" msgid "Router configuration type saved." msgstr "Οι ρυθμίσεις Tor ενημερώνονται" -#: plinth/modules/networks/templates/connection_show.html:43 +#: plinth/modules/networks/networks.py:474 +#, fuzzy +#| msgid "Tor configuration is being updated" +msgid "Internet connection type saved." +msgstr "Οι ρυθμίσεις Tor ενημερώνονται" + +#: plinth/modules/networks/templates/connection_show.html:28 msgid "Edit connection" msgstr "Επεξεργασία σύνδεσης" -#: plinth/modules/networks/templates/connection_show.html:43 -#: plinth/modules/wireguard/templates/wireguard_show_client.html:83 -#: plinth/modules/wireguard/templates/wireguard_show_server.html:84 -#: plinth/templates/base.html:167 plinth/templates/base.html:168 +#: plinth/modules/networks/templates/connection_show.html:28 +#: plinth/modules/wireguard/templates/wireguard_show_client.html:68 +#: plinth/modules/wireguard/templates/wireguard_show_server.html:69 +#: plinth/templates/base.html:152 plinth/templates/base.html:153 msgid "Edit" msgstr "Επεξεργασία" -#: plinth/modules/networks/templates/connection_show.html:50 -#: plinth/modules/networks/templates/connections_list.html:90 +#: plinth/modules/networks/templates/connection_show.html:35 +#: plinth/modules/networks/templates/connections_list.html:40 msgid "Deactivate" msgstr "Απενεργοποίηση" -#: plinth/modules/networks/templates/connection_show.html:57 -#: plinth/modules/networks/templates/connections_list.html:98 +#: plinth/modules/networks/templates/connection_show.html:42 +#: plinth/modules/networks/templates/connections_list.html:48 msgid "Activate" msgstr "Ενεργοποίηση" -#: plinth/modules/networks/templates/connection_show.html:63 +#: plinth/modules/networks/templates/connection_show.html:48 msgid "Delete connection" msgstr "Διαγραφή σύνδεσης" -#: plinth/modules/networks/templates/connection_show.html:66 -#: plinth/modules/networks/templates/connections_diagram.html:73 -#: plinth/modules/networks/templates/connections_diagram.html:76 -#: plinth/modules/networks/templates/connections_diagram.html:105 -#: plinth/modules/networks/templates/connections_diagram.html:127 +#: plinth/modules/networks/templates/connection_show.html:51 +#: plinth/modules/networks/templates/connections_diagram.html:58 +#: plinth/modules/networks/templates/connections_diagram.html:61 +#: plinth/modules/networks/templates/connections_diagram.html:90 +#: plinth/modules/networks/templates/connections_diagram.html:112 msgid "Connection" msgstr "Σύνδεση" -#: plinth/modules/networks/templates/connection_show.html:71 +#: plinth/modules/networks/templates/connection_show.html:56 msgid "Primary connection" msgstr "Κύρια σύνδεση" -#: plinth/modules/networks/templates/connection_show.html:73 -#: plinth/modules/networks/templates/connection_show.html:217 -#: plinth/modules/networks/templates/connection_show.html:256 +#: plinth/modules/networks/templates/connection_show.html:58 +#: plinth/modules/networks/templates/connection_show.html:202 +#: plinth/modules/networks/templates/connection_show.html:241 msgid "yes" msgstr "Ναι" -#: plinth/modules/networks/templates/connection_show.html:84 -#: plinth/modules/storage/templates/storage.html:40 +#: plinth/modules/networks/templates/connection_show.html:69 +#: plinth/modules/storage/templates/storage.html:25 msgid "Device" msgstr "Συσκευή" -#: plinth/modules/networks/templates/connection_show.html:88 +#: plinth/modules/networks/templates/connection_show.html:73 msgid "State" msgstr "κατάσταση" -#: plinth/modules/networks/templates/connection_show.html:93 +#: plinth/modules/networks/templates/connection_show.html:78 msgid "State reason" msgstr "Kατάσταση" -#: plinth/modules/networks/templates/connection_show.html:102 +#: plinth/modules/networks/templates/connection_show.html:87 msgid "MAC address" msgstr "Διεύθυνση MAC" -#: plinth/modules/networks/templates/connection_show.html:106 +#: plinth/modules/networks/templates/connection_show.html:91 msgid "Interface" msgstr "Ιnterface" -#: plinth/modules/networks/templates/connection_show.html:110 -#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:33 -#: plinth/modules/snapshot/templates/snapshot_manage.html:45 -#: plinth/modules/snapshot/templates/snapshot_rollback.html:41 +#: plinth/modules/networks/templates/connection_show.html:95 +#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:18 +#: plinth/modules/snapshot/templates/snapshot_manage.html:30 +#: plinth/modules/snapshot/templates/snapshot_rollback.html:26 msgid "Description" msgstr "Περιγραφή" -#: plinth/modules/networks/templates/connection_show.html:116 +#: plinth/modules/networks/templates/connection_show.html:101 msgid "Physical Link" msgstr "Φυσική σύνδεση" -#: plinth/modules/networks/templates/connection_show.html:121 +#: plinth/modules/networks/templates/connection_show.html:106 msgid "Link state" msgstr "Κατάσταση σύνδεσης" -#: plinth/modules/networks/templates/connection_show.html:125 +#: plinth/modules/networks/templates/connection_show.html:110 msgid "cable is connected" msgstr "το καλώδιο είναι συνδεδεμένο" -#: plinth/modules/networks/templates/connection_show.html:128 +#: plinth/modules/networks/templates/connection_show.html:113 msgid "please check cable" msgstr "Παρακαλούμε ελέγξτε το καλώδιο" -#: plinth/modules/networks/templates/connection_show.html:133 -#: plinth/modules/networks/templates/connection_show.html:149 +#: plinth/modules/networks/templates/connection_show.html:118 +#: plinth/modules/networks/templates/connection_show.html:134 msgid "Speed" msgstr "Ταχύτητα" -#: plinth/modules/networks/templates/connection_show.html:135 +#: plinth/modules/networks/templates/connection_show.html:120 #, python-format msgid "%(ethernet_speed)s Mbit/s" msgstr "%(ethernet_speed)s Mbit/s" -#: plinth/modules/networks/templates/connection_show.html:151 +#: plinth/modules/networks/templates/connection_show.html:136 #, python-format msgid "%(wireless_bitrate)s Mbit/s" msgstr "%(wireless_bitrate)s Mbit/s" -#: plinth/modules/networks/templates/connection_show.html:163 +#: plinth/modules/networks/templates/connection_show.html:148 msgid "Signal strength" msgstr "Ισχύς σήματος" -#: plinth/modules/networks/templates/connection_show.html:181 +#: plinth/modules/networks/templates/connection_show.html:166 msgid "IPv4" msgstr "IPv4" -#: plinth/modules/networks/templates/connection_show.html:186 -#: plinth/modules/networks/templates/connection_show.html:227 -#: plinth/modules/shadowsocks/forms.py:64 +#: plinth/modules/networks/templates/connection_show.html:171 +#: plinth/modules/networks/templates/connection_show.html:212 +#: plinth/modules/shadowsocks/forms.py:49 msgid "Method" msgstr "Μέθοδος" -#: plinth/modules/networks/templates/connection_show.html:193 -#: plinth/modules/networks/templates/connection_show.html:234 +#: plinth/modules/networks/templates/connection_show.html:178 +#: plinth/modules/networks/templates/connection_show.html:219 msgid "IP address" msgstr "Διεύθυνση IP" -#: plinth/modules/networks/templates/connection_show.html:209 -#: plinth/modules/networks/templates/connection_show.html:248 +#: plinth/modules/networks/templates/connection_show.html:194 +#: plinth/modules/networks/templates/connection_show.html:233 msgid "DNS server" msgstr "Διακομιστής DNS" -#: plinth/modules/networks/templates/connection_show.html:216 -#: plinth/modules/networks/templates/connection_show.html:255 -#: plinth/modules/storage/forms.py:156 +#: plinth/modules/networks/templates/connection_show.html:201 +#: plinth/modules/networks/templates/connection_show.html:240 +#: plinth/modules/storage/forms.py:141 msgid "Default" msgstr "Προεπιλεγμένο" -#: plinth/modules/networks/templates/connection_show.html:222 +#: plinth/modules/networks/templates/connection_show.html:207 msgid "IPv6" msgstr "IPv6" -#: plinth/modules/networks/templates/connection_show.html:263 +#: plinth/modules/networks/templates/connection_show.html:248 msgid "This connection is not active." msgstr "Αυτή η σύνδεση δεν είναι ενεργή." -#: plinth/modules/networks/templates/connection_show.html:266 -#: plinth/modules/security/__init__.py:38 plinth/modules/security/views.py:47 +#: plinth/modules/networks/templates/connection_show.html:251 +#: plinth/modules/security/__init__.py:45 msgid "Security" msgstr "Ασφάλεια" -#: plinth/modules/networks/templates/connection_show.html:271 -#: plinth/modules/networks/templates/connection_show.html:291 -#: plinth/modules/networks/templates/connection_show.html:310 +#: plinth/modules/networks/templates/connection_show.html:256 +#: plinth/modules/networks/templates/connection_show.html:276 +#: plinth/modules/networks/templates/connection_show.html:295 msgid "Firewall zone" msgstr "Ζώνη τείχους προστασίας" -#: plinth/modules/networks/templates/connection_show.html:280 +#: plinth/modules/networks/templates/connection_show.html:265 msgid "" "This interface should be connected to a local network/machine. If you " "connect this interface to a public network, services meant to be available " @@ -3908,7 +3985,7 @@ msgstr "" "προορίζονται να είναι διαθέσιμες μόνο εσωτερικά θα καταστούν διαθέσιμες " "εξωτερικά. Αυτό είναι κίνδυνος για την ασφάλεια." -#: plinth/modules/networks/templates/connection_show.html:300 +#: plinth/modules/networks/templates/connection_show.html:285 msgid "" "This interface should receive your Internet connection. If you connect it to " "a local network/machine, many services meant to available only internally " @@ -3918,7 +3995,7 @@ msgstr "" "το συνδέσετε σε ένα τοπικό δίκτυο/μηχάνημα, πολλές υπηρεσίες που " "προορίζονται να είναι διαθέσιμες μόνο εσωτερικά δεν θα είναι διαθέσιμες." -#: plinth/modules/networks/templates/connection_show.html:319 +#: plinth/modules/networks/templates/connection_show.html:304 #, python-format msgid "" "This interface is not maintained by %(box_name)s. Its security status is " @@ -3932,112 +4009,137 @@ msgstr "" "απενεργοποιήσετε ή να διαγράψετε αυτήν τη σύνδεση και να την ρυθμίσετε εκ " "νέου." -#: plinth/modules/networks/templates/connections_create.html:34 +#: plinth/modules/networks/templates/connections_create.html:19 msgid "Create Connection" msgstr "Δημιουργία σύνδεσης" -#: plinth/modules/networks/templates/connections_delete.html:29 +#: plinth/modules/networks/templates/connections_delete.html:14 #, python-format msgid "Delete connection %(name)s permanently?" msgstr "Διαγραφή της σύνδεσης %(name)s μόνιμα;" -#: plinth/modules/networks/templates/connections_diagram.html:65 +#: plinth/modules/networks/templates/connections_diagram.html:50 msgid "Internet" msgstr "Διαδίκτυο" -#: plinth/modules/networks/templates/connections_diagram.html:70 -#: plinth/modules/networks/templates/connections_diagram.html:102 +#: plinth/modules/networks/templates/connections_diagram.html:55 +#: plinth/modules/networks/templates/connections_diagram.html:87 msgid "Spacing" msgstr "Διαχωρισμός" -#: plinth/modules/networks/templates/connections_diagram.html:83 -#: plinth/modules/networks/templates/connections_diagram.html:113 -#: plinth/network.py:40 +#: plinth/modules/networks/templates/connections_diagram.html:68 +#: plinth/modules/networks/templates/connections_diagram.html:98 +#: plinth/network.py:25 msgid "Ethernet" msgstr "Ethernet" -#: plinth/modules/networks/templates/connections_diagram.html:86 -#: plinth/modules/networks/templates/connections_diagram.html:116 -#: plinth/network.py:41 +#: plinth/modules/networks/templates/connections_diagram.html:71 +#: plinth/modules/networks/templates/connections_diagram.html:101 +#: plinth/network.py:26 msgid "Wi-Fi" msgstr "Wi-Fi" -#: plinth/modules/networks/templates/connections_diagram.html:89 +#: plinth/modules/networks/templates/connections_diagram.html:74 #, python-format msgid "Show connection %(connection.name)s" msgstr "Εμφάνιση σύνδεσης %(connection.name)s" -#: plinth/modules/networks/templates/connections_diagram.html:119 +#: plinth/modules/networks/templates/connections_diagram.html:104 #, python-format msgid "Show connection %(name)s" msgstr "Εμφάνιση σύνδεσης %(name)s" -#: plinth/modules/networks/templates/connections_diagram.html:131 +#: plinth/modules/networks/templates/connections_diagram.html:116 msgid "Computer" msgstr "Υπολογιστής" -#: plinth/modules/networks/templates/connections_list.html:58 +#: plinth/modules/networks/templates/connections_list.html:8 msgid "Connections" msgstr "Συνδέσεις" -#: plinth/modules/networks/templates/connections_list.html:79 +#: plinth/modules/networks/templates/connections_list.html:29 #, python-format msgid "Delete connection %(name)s" msgstr "Διαγραφή της σύνδεσης %(name)s" -#: plinth/modules/networks/templates/connections_list.html:104 +#: plinth/modules/networks/templates/connections_list.html:54 msgid "Active" msgstr "Ενεργό" -#: plinth/modules/networks/templates/connections_list.html:107 +#: plinth/modules/networks/templates/connections_list.html:57 msgid "Inactive" msgstr "Ανενεργό" -#: plinth/modules/networks/templates/connections_list.html:124 -#, python-format -msgid "%(box_name)s Internet Connectivity" +#: plinth/modules/networks/templates/connections_type_select.html:19 +msgid "Create..." +msgstr "Δημιουργήστε..." + +#: plinth/modules/networks/templates/internet_connectivity_content.html:10 +msgid "What Type Of Internet Connection Do You Have?" msgstr "" -#: plinth/modules/networks/templates/connections_list.html:129 -#, python-format +#: plinth/modules/networks/templates/internet_connectivity_content.html:16 msgid "" -"The following best describes how your %(box_name)s is connected in your " -"network. This information is used only to suggest necessary configuration " -"actions." +"Select an option that best describes the type of Internet connection. This " +"information is used only to guide you with further setup." msgstr "" -#: plinth/modules/networks/templates/connections_list.html:137 -#, python-format +#: plinth/modules/networks/templates/internet_connectivity_firstboot.html:18 +#: plinth/modules/networks/templates/router_configuration_firstboot.html:18 +msgid "Skip this step" +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_firstboot.html:19 +#: plinth/modules/networks/templates/router_configuration_firstboot.html:19 +msgid "Next" +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:9 +#, fuzzy +#| msgid "Connection Type" +msgid "Your Internet Connection Type" +msgstr "Τύπος σύνδεσης" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:14 msgid "" -"Your %(box_name)s gets its internet from your Router via WiFi or Ethernet " -"cable. This is a typical home setup." +"The following best describes the type of Internet connection provided by " +"your ISP. This information is only used to suggest you necessary " +"configuration actions." msgstr "" -#: plinth/modules/networks/templates/connections_list.html:145 -#: plinth/modules/networks/templates/connections_list.html:147 +#: plinth/modules/networks/templates/internet_connectivity_main.html:23 +msgid "My ISP provides a public IP address that does not change over time." +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:27 +msgid "My ISP provides a public IP address that may change over time." +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:31 +msgid "My ISP does not provide a public IP address." +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:37 +#: plinth/modules/networks/templates/router_configuration_main.html:29 #, fuzzy #| msgid "Update" msgid "Update..." msgstr "Ενημερωμένη έκδοση" -#: plinth/modules/networks/templates/connections_type_select.html:34 -msgid "Create..." -msgstr "Δημιουργήστε..." - -#: plinth/modules/networks/templates/router_configuration_content.html:25 +#: plinth/modules/networks/templates/router_configuration_content.html:10 #, fuzzy, python-format #| msgid "%(box_name)s is up to date." msgid "Setup %(box_name)s Behind a Router" msgstr "To %(box_name)s είναι ενημερωμένο." -#: plinth/modules/networks/templates/router_configuration_content.html:31 +#: plinth/modules/networks/templates/router_configuration_content.html:16 #, python-format msgid "" "Your %(box_name)s gets its internet connection from your router via Wi-Fi or " "Ethernet cable. This is a typical home setup." msgstr "" -#: plinth/modules/networks/templates/router_configuration_content.html:38 +#: plinth/modules/networks/templates/router_configuration_content.html:23 #, python-format msgid "" "With this setup, any device on the internet trying to reach your " @@ -4046,24 +4148,24 @@ msgid "" "the services." msgstr "" -#: plinth/modules/networks/templates/router_configuration_content.html:47 +#: plinth/modules/networks/templates/router_configuration_content.html:32 msgid "" "If you don't have control over your router, choose not to configure it. To " -"see options, to overcome this limitation, choose 'no public address' option " +"see options to overcome this limitation, choose 'no public address' option " "in Internet connection type selection." msgstr "" -#: plinth/modules/networks/templates/router_configuration_content.html:54 +#: plinth/modules/networks/templates/router_configuration_content.html:39 msgid "Choose How You Wish to Configure Your Router" msgstr "" -#: plinth/modules/networks/templates/router_configuration_content.html:57 +#: plinth/modules/networks/templates/router_configuration_content.html:42 msgid "" "You will need to login to your router's administration console provided by " "the router. This may look like one of the following:" msgstr "" -#: plinth/modules/networks/templates/router_configuration_content.html:69 +#: plinth/modules/networks/templates/router_configuration_content.html:54 msgid "" "The username and password is configured by you when you first setup the " "router. For many routers, this information is printed at the back of the " @@ -4073,24 +4175,27 @@ msgid "" "full instructions on how to perform this task." msgstr "" -#: plinth/modules/networks/templates/router_configuration_firstboot.html:33 -msgid "skip this step" +#: plinth/modules/networks/templates/router_configuration_main.html:9 +#, python-format +msgid "%(box_name)s Internet Connectivity" msgstr "" -#: plinth/modules/networks/templates/router_configuration_firstboot.html:35 -msgid "Next" +#: plinth/modules/networks/templates/router_configuration_main.html:15 +#, python-format +msgid "" +"The following best describes how your %(box_name)s is connected in your " +"network. This information is used only to suggest necessary configuration " +"actions." msgstr "" -#: plinth/modules/openvpn/__init__.py:39 plinth/modules/openvpn/manifest.py:33 -msgid "OpenVPN" -msgstr "OpenVPN" +#: plinth/modules/networks/templates/router_configuration_main.html:23 +#, python-format +msgid "" +"Your %(box_name)s gets its Internet from your Router via Wi-Fi or Ethernet " +"cable. This is a typical home setup." +msgstr "" -#: plinth/modules/openvpn/__init__.py:43 -#: plinth/modules/wireguard/__init__.py:40 -msgid "Virtual Private Network" -msgstr "Εικονικό ιδιωτικό δίκτυο" - -#: plinth/modules/openvpn/__init__.py:47 +#: plinth/modules/openvpn/__init__.py:26 #, python-brace-format msgid "" "Virtual Private Network (VPN) is a technique for securely connecting two " @@ -4108,21 +4213,32 @@ msgstr "" "επίσης να αποκτήσετε πρόσβαση στο υπόλοιπο Internet μέσω του {box_name} για " "πρόσθετη ασφάλεια και ανωνυμία." -#: plinth/modules/openvpn/__init__.py:79 +#: plinth/modules/openvpn/__init__.py:49 plinth/modules/openvpn/manifest.py:18 +msgid "OpenVPN" +msgstr "OpenVPN" + +#: plinth/modules/openvpn/__init__.py:50 +#: plinth/modules/wireguard/__init__.py:53 +msgid "Virtual Private Network" +msgstr "Εικονικό ιδιωτικό δίκτυο" + +#: plinth/modules/openvpn/__init__.py:61 #, python-brace-format msgid "" "Download Profile" msgstr " Λήψη προφίλ " -#: plinth/modules/openvpn/forms.py:27 +#: plinth/modules/openvpn/forms.py:12 msgid "Enable OpenVPN server" msgstr "Ενεργοποίηση διακομιστή OpenVPN" -#: plinth/modules/openvpn/manifest.py:63 -msgid "TunnelBlick" +#: plinth/modules/openvpn/manifest.py:48 +#, fuzzy +#| msgid "TunnelBlick" +msgid "Tunnelblick" msgstr "TunnelBlick" -#: plinth/modules/openvpn/templates/openvpn.html:42 +#: plinth/modules/openvpn/templates/openvpn.html:27 #, python-format msgid "" "OpenVPN has not yet been setup. Performing a secure setup takes a very long " @@ -4134,15 +4250,15 @@ msgstr "" "να χρειαστούν και ώρες. Εάν η ρύθμιση διακοπεί, μπορείτε να την ξεκινήσετε " "ξανά." -#: plinth/modules/openvpn/templates/openvpn.html:55 +#: plinth/modules/openvpn/templates/openvpn.html:40 msgid "Start setup" msgstr "Έναρξη εγκατάστασης" -#: plinth/modules/openvpn/templates/openvpn.html:64 +#: plinth/modules/openvpn/templates/openvpn.html:49 msgid "OpenVPN setup is running" msgstr "Η εγκατάσταση του OpenVPN εκτελείται" -#: plinth/modules/openvpn/templates/openvpn.html:68 +#: plinth/modules/openvpn/templates/openvpn.html:53 #, python-format msgid "" "To perform a secure setup, this process takes a very long time. Depending " @@ -4154,11 +4270,11 @@ msgstr "" "χρειαστούν και ώρες. Εάν η ρύθμιση διακοπεί, μπορείτε να την ξεκινήσετε " "ξανά." -#: plinth/modules/openvpn/templates/openvpn.html:87 +#: plinth/modules/openvpn/templates/openvpn.html:72 msgid "Profile" msgstr "Προφίλ" -#: plinth/modules/openvpn/templates/openvpn.html:90 +#: plinth/modules/openvpn/templates/openvpn.html:75 #, python-format msgid "" "To connect to %(box_name)s's VPN, you need to download a profile and feed it " @@ -4173,34 +4289,26 @@ msgstr "" "περισσότερα...\" Προτεινόμενα προγράμματα-πελάτες και οδηγίες σχετικά με τον " "τρόπο διαμόρφωσης τους." -#: plinth/modules/openvpn/templates/openvpn.html:100 +#: plinth/modules/openvpn/templates/openvpn.html:85 #, python-format msgid "Profile is specific to each user of %(box_name)s. Keep it a secret." msgstr "" "Το προφίλ είναι συγκεκριμένο για κάθε χρήστη του %(box_name)s. Κρατήστε το " "μυστικό." -#: plinth/modules/openvpn/templates/openvpn.html:111 +#: plinth/modules/openvpn/templates/openvpn.html:96 msgid "Download my profile" msgstr "Λήψη του προφίλ μου" -#: plinth/modules/openvpn/views.py:133 +#: plinth/modules/openvpn/views.py:114 msgid "Setup completed." msgstr "Η εγκατάσταση ολοκληρώθηκε." -#: plinth/modules/openvpn/views.py:135 +#: plinth/modules/openvpn/views.py:116 msgid "Setup failed." msgstr "Η εγκατάσταση απέτυχε." -#: plinth/modules/pagekite/__init__.py:39 -msgid "PageKite" -msgstr "PageKite" - -#: plinth/modules/pagekite/__init__.py:41 -msgid "Public Visibility" -msgstr "Δημόσια ορατότητα" - -#: plinth/modules/pagekite/__init__.py:45 +#: plinth/modules/pagekite/__init__.py:26 #, python-brace-format msgid "" "PageKite is a system for exposing {box_name} services when you don't have a " @@ -4213,19 +4321,19 @@ msgstr "" "υπηρεσίες δεν είναι προσβάσιμες από το υπόλοιπο Internet. Αυτό περιλαμβάνει " "τις ακόλουθες καταστάσεις:" -#: plinth/modules/pagekite/__init__.py:50 +#: plinth/modules/pagekite/__init__.py:31 #, python-brace-format msgid "{box_name} is behind a restricted firewall." msgstr "το {box_name} βρίσκεται πίσω από ένα περιορισμένο τείχος προστασίας." -#: plinth/modules/pagekite/__init__.py:53 +#: plinth/modules/pagekite/__init__.py:34 #, 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:55 +#: plinth/modules/pagekite/__init__.py:36 msgid "" "Your ISP does not provide you an external IP address and instead provides " "Internet connection through NAT." @@ -4233,7 +4341,7 @@ msgstr "" "Ο παροχέας ιντερνετ δεν σας παρέχει εξωτερική διεύθυνση IP και αντίθετα " "παρέχει σύνδεση στο Internet μέσω δικτύου NAT." -#: plinth/modules/pagekite/__init__.py:57 +#: plinth/modules/pagekite/__init__.py:38 msgid "" "Your ISP does not provide you a static IP address and your IP address " "changes every time you connect to Internet." @@ -4241,11 +4349,11 @@ msgstr "" "Ο παροχέας ιντερνετ δεν σας παρέχει μια στατική διεύθυνση IP και η διεύθυνση " "IP αλλάζει κάθε φορά που συνδέεστε στο Internet." -#: plinth/modules/pagekite/__init__.py:59 +#: plinth/modules/pagekite/__init__.py:40 msgid "Your ISP limits incoming connections." msgstr "Ο παροχέας ιντερνετ περιορίζει τις εισερχόμενες συνδέσεις." -#: plinth/modules/pagekite/__init__.py:61 +#: plinth/modules/pagekite/__init__.py:42 #, python-brace-format msgid "" "PageKite works around NAT, firewalls and IP address limitations by using a " @@ -4259,15 +4367,23 @@ msgstr "" "παράδειγμα pagekite.net . Στο μέλλον " "μπορεί να είναι δυνατή η χρήση του {box_name} ενός φίλου σας για αυτό." -#: plinth/modules/pagekite/__init__.py:87 +#: plinth/modules/pagekite/__init__.py:62 +msgid "PageKite" +msgstr "PageKite" + +#: plinth/modules/pagekite/__init__.py:64 +msgid "Public Visibility" +msgstr "Δημόσια ορατότητα" + +#: plinth/modules/pagekite/__init__.py:74 msgid "PageKite Domain" msgstr "Όνομα διαδικτύου Pagekite" -#: plinth/modules/pagekite/forms.py:66 +#: plinth/modules/pagekite/forms.py:51 msgid "Server domain" msgstr "Όνομα διαδικτύου διακομιστή" -#: plinth/modules/pagekite/forms.py:68 +#: plinth/modules/pagekite/forms.py:53 msgid "" "Select your pagekite server. Set \"pagekite.net\" to use the default " "pagekite.net server." @@ -4275,31 +4391,31 @@ msgstr "" "Επιλέξτε το διακομιστή pagekite. Ορίστε το \"pagekite.net\" για να " "χρησιμοποιήσετε τον προεπιλεγμένο διακομιστή pagekite.net." -#: plinth/modules/pagekite/forms.py:71 plinth/modules/shadowsocks/forms.py:55 +#: plinth/modules/pagekite/forms.py:56 plinth/modules/shadowsocks/forms.py:40 msgid "Server port" msgstr "Θύρα διακομιστή" -#: plinth/modules/pagekite/forms.py:72 +#: plinth/modules/pagekite/forms.py:57 msgid "Port of your pagekite server (default: 80)" msgstr "Θύρα του διακομιστή σελιδοποίησης (προεπιλογή: 80)" -#: plinth/modules/pagekite/forms.py:74 +#: plinth/modules/pagekite/forms.py:59 msgid "Kite name" msgstr "Kite όνομα" -#: plinth/modules/pagekite/forms.py:75 +#: plinth/modules/pagekite/forms.py:60 msgid "Example: mybox.pagekite.me" msgstr "Παράδειγμα: mybox.pagekite.me" -#: plinth/modules/pagekite/forms.py:77 +#: plinth/modules/pagekite/forms.py:62 msgid "Invalid kite name" msgstr "Μη έγκυρο όνομα kite" -#: plinth/modules/pagekite/forms.py:81 +#: plinth/modules/pagekite/forms.py:66 msgid "Kite secret" msgstr "Kite μυστικό" -#: plinth/modules/pagekite/forms.py:82 +#: plinth/modules/pagekite/forms.py:67 msgid "" "A secret associated with the kite or the default secret for your account if " "no secret is set on the kite." @@ -4307,43 +4423,43 @@ msgstr "" "Ένα μυστικό που σχετίζεται με το kite ή το προεπιλεγμένο μυστικό για το " "λογαριασμό σας, εάν δεν αναθέσετε καινούριο." -#: plinth/modules/pagekite/forms.py:98 +#: plinth/modules/pagekite/forms.py:83 msgid "Kite details set" msgstr "Οι λεπτομέρειες του kite ρυθμίστηκαν" -#: plinth/modules/pagekite/forms.py:105 +#: plinth/modules/pagekite/forms.py:90 msgid "Pagekite server set" msgstr "Ο διακομιστής pagekite ρυθμίστηκε" -#: plinth/modules/pagekite/forms.py:129 +#: plinth/modules/pagekite/forms.py:114 msgid "PageKite enabled" msgstr "Το PageKite είναι ενεργοποιημένο" -#: plinth/modules/pagekite/forms.py:132 +#: plinth/modules/pagekite/forms.py:117 msgid "PageKite disabled" msgstr "Το PageKite είναι απενεργοποιημένο" -#: plinth/modules/pagekite/forms.py:148 +#: plinth/modules/pagekite/forms.py:133 msgid "protocol" msgstr "Πρωτόκολλο" -#: plinth/modules/pagekite/forms.py:151 +#: plinth/modules/pagekite/forms.py:136 msgid "external (frontend) port" msgstr "εξωτερική (frontend) θύρα" -#: plinth/modules/pagekite/forms.py:154 +#: plinth/modules/pagekite/forms.py:139 msgid "internal (freedombox) port" msgstr "εσωτερική (freedombox) θύρα" -#: plinth/modules/pagekite/forms.py:155 +#: plinth/modules/pagekite/forms.py:140 msgid "Enable Subdomains" msgstr "Ενεργοποίηση δευτερευόντων ονομάτων διαδικτύου" -#: plinth/modules/pagekite/forms.py:189 +#: plinth/modules/pagekite/forms.py:174 msgid "Deleted custom service" msgstr "Διαγράφηκε η διαμορφωμένη υπηρεσία" -#: plinth/modules/pagekite/forms.py:222 +#: plinth/modules/pagekite/forms.py:207 msgid "" "This service is available as a standard service. Please use the \"Standard " "Services\" page to enable it." @@ -4351,41 +4467,41 @@ msgstr "" "Αυτή η υπηρεσία είναι διαθέσιμη ως πρότυπη υπηρεσία. Παρακαλούμε να " "χρησιμοποιήσετε την σελίδα \"Πρότυπες Υπηρεσίες\" για να το ενεργοποιήσετε." -#: plinth/modules/pagekite/forms.py:231 +#: plinth/modules/pagekite/forms.py:216 msgid "Added custom service" msgstr "Προστέθηκε τροποποιημένη υπηρεσία" -#: plinth/modules/pagekite/forms.py:234 +#: plinth/modules/pagekite/forms.py:219 msgid "This service already exists" msgstr "Αυτή η υπηρεσία υπάρχει ήδη" -#: plinth/modules/pagekite/templates/pagekite_configure.html:47 +#: plinth/modules/pagekite/templates/pagekite_configure.html:32 msgid "Custom Services" msgstr "Τροποποιημένες υπηρεσίες" -#: plinth/modules/pagekite/templates/pagekite_configure.html:50 -#: plinth/modules/pagekite/templates/pagekite_configure.html:52 +#: plinth/modules/pagekite/templates/pagekite_configure.html:35 +#: plinth/modules/pagekite/templates/pagekite_configure.html:37 msgid "Add Custom Service" msgstr "Προσθέστε τροποποιημένη υπηρεσία" -#: plinth/modules/pagekite/templates/pagekite_configure.html:57 +#: plinth/modules/pagekite/templates/pagekite_configure.html:42 msgid "Existing custom services" msgstr "Υπάρχουσες τροποποιημένες υπηρεσίες" -#: plinth/modules/pagekite/templates/pagekite_configure.html:71 +#: plinth/modules/pagekite/templates/pagekite_configure.html:56 #, python-format msgid "connected to %(backend_host)s:%(backend_port)s" msgstr "συνδεδεμένο στο %(backend_host)s:%(backend_port)s" -#: plinth/modules/pagekite/templates/pagekite_configure.html:83 +#: plinth/modules/pagekite/templates/pagekite_configure.html:68 msgid "Delete this service" msgstr "Διαγραφή αυτής της υπηρεσίας" -#: plinth/modules/pagekite/templates/pagekite_custom_services.html:30 +#: plinth/modules/pagekite/templates/pagekite_custom_services.html:15 msgid "Add custom PageKite service" msgstr "Προσθήκη διαμορφωμένης υπηρεσίας pagekite" -#: plinth/modules/pagekite/templates/pagekite_custom_services.html:32 +#: plinth/modules/pagekite/templates/pagekite_custom_services.html:17 msgid "" "Warning:imaps://imap."
"παράδειγμα.com."
-#: plinth/modules/roundcube/__init__.py:53
+#: plinth/modules/roundcube/__init__.py:32
msgid ""
"For Gmail, username will be your Gmail address, password will be your Google "
"account password and server will be imaps://imap.gmail.com. "
@@ -4810,11 +4916,16 @@ msgstr ""
"settings/security/lesssecureapps\">https://www.google.com/settings/security/"
"lesssecureapps )."
-#: plinth/modules/samba/__init__.py:46
-msgid "Samba"
-msgstr "Samba"
+#: plinth/modules/roundcube/__init__.py:54
+#: plinth/modules/roundcube/manifest.py:9
+msgid "Roundcube"
+msgstr "Roundcube"
-#: plinth/modules/samba/__init__.py:53
+#: plinth/modules/roundcube/__init__.py:55
+msgid "Email Client"
+msgstr "Πρόγραμμα-πελάτης ηλεκτρονικού ταχυδρομείου"
+
+#: plinth/modules/samba/__init__.py:32
msgid ""
"Samba allows to share files and folders between FreedomBox and other "
"computers in your local network."
@@ -4822,7 +4933,7 @@ msgstr ""
"Το Samba επιτρέπει την κοινή χρήση αρχείων και φακέλων μεταξύ του Freedombox "
"και άλλων υπολογιστών στο τοπικό σας δίκτυο."
-#: plinth/modules/samba/__init__.py:56
+#: plinth/modules/samba/__init__.py:35
#, python-brace-format
msgid ""
"After installation, you can choose which disks to use for sharing. Enabled "
@@ -4837,11 +4948,11 @@ msgstr ""
"Υπάρχουν τρεις τύποι κοινόχρηστων αρχείων από τα οποία μπορείτε να "
"επιλέξετε: "
-#: plinth/modules/samba/__init__.py:61
+#: plinth/modules/samba/__init__.py:40
msgid "Open share - accessible to everyone in your local network."
msgstr "Ανοιχτό μέρισμα - ορατό σε όλους τους χρήστες του τοπικού δικτύου."
-#: plinth/modules/samba/__init__.py:62
+#: plinth/modules/samba/__init__.py:41
msgid ""
"Group share - accessible only to FreedomBox users who are in the freedombox-"
"share group."
@@ -4849,7 +4960,7 @@ msgstr ""
"Ομαδικό μέρισμα - ορατό μόνο σε χρήστες του Freedombox που είναι στην ομάδα "
"Freedombox-share."
-#: plinth/modules/samba/__init__.py:64
+#: plinth/modules/samba/__init__.py:43
msgid ""
"Home share - every user in the freedombox-share group can have their own "
"private space."
@@ -4857,16 +4968,20 @@ msgstr ""
"Οικιακό μέρισμα - κάθε χρήστης στην ομάδα freedombox-share μπορεί να έχει το "
"δικό του προσωπικό διαμέρισμα στο δίσκο."
-#: plinth/modules/samba/__init__.py:68
+#: plinth/modules/samba/__init__.py:47
msgid "Access to the private shares"
msgstr "Πρόσβαση στα ιδιωτικά μερίσματα"
-#: plinth/modules/samba/templates/samba.html:39
-#: plinth/modules/samba/templates/samba.html:50
+#: plinth/modules/samba/__init__.py:61
+msgid "Samba"
+msgstr "Samba"
+
+#: plinth/modules/samba/templates/samba.html:24
+#: plinth/modules/samba/templates/samba.html:35
msgid "Shares"
msgstr "Μερίσματα"
-#: plinth/modules/samba/templates/samba.html:41
+#: plinth/modules/samba/templates/samba.html:26
#, fuzzy
#| msgid ""
#| "Note: only specially created directories will be shared on selected "
@@ -4878,22 +4993,22 @@ msgstr ""
"Σημείωση: μόνο οι ειδικά δημιουργημένοι κατάλογοι θα κοινοποιηθούν σε "
"επιλεγμένους δίσκους και όχι σε ολόκληρο το δίσκο."
-#: plinth/modules/samba/templates/samba.html:49
+#: plinth/modules/samba/templates/samba.html:34
msgid "Disk Name"
msgstr "Όνομα δίσκου"
-#: plinth/modules/samba/templates/samba.html:51
-#: plinth/modules/storage/templates/storage.html:44
+#: plinth/modules/samba/templates/samba.html:36
+#: plinth/modules/storage/templates/storage.html:29
msgid "Used"
msgstr "Χρησιμοποιείται"
-#: plinth/modules/samba/templates/samba.html:72
+#: plinth/modules/samba/templates/samba.html:57
#, fuzzy
#| msgid "vfat partitions are not supported"
msgid "VFAT partitions are not supported"
msgstr "τα διαμερίσματα VFAT δεν υποστηρίζονται"
-#: plinth/modules/samba/templates/samba.html:103
+#: plinth/modules/samba/templates/samba.html:88
#, python-format
msgid ""
"You can find additional information about disks on the χρηστών ."
-#: plinth/modules/samba/templates/samba.html:109
+#: plinth/modules/samba/templates/samba.html:94
msgid "Users who can currently access group and home shares"
msgstr ""
"Χρήστες που έχουν αυτήν τη στιγμή πρόσβαση σε ομαδικά και οικιακά μερίσματα"
-#: plinth/modules/samba/templates/samba.html:113
+#: plinth/modules/samba/templates/samba.html:98
#, fuzzy
#| msgid ""
#| "Users who need to re-enter their password on the password change page to "
@@ -4922,11 +5037,11 @@ msgstr ""
"Χρήστες που χρειάζεται να ξανα-εισάγουν τον κωδικό τους στη σελίδα αλλαγής "
"κωδικού για να αποκτήσουν πρόσβαση σε ομαδικά και οικιακά μερίσματα"
-#: plinth/modules/samba/templates/samba.html:118
+#: plinth/modules/samba/templates/samba.html:103
msgid "Unavailable Shares"
msgstr "Με διαθέσιμα μερίσματα"
-#: plinth/modules/samba/templates/samba.html:120
+#: plinth/modules/samba/templates/samba.html:105
msgid ""
"Shares that are configured but the disk is not available. If the disk is "
"plugged back in, sharing will be automatically enabled."
@@ -4934,53 +5049,45 @@ msgstr ""
"Μερίσματα που έχουν ρυθμιστεί αλλά o δίσκος δεν είναι διαθέσιμος. Εάν ο "
"δίσκος συνδεθεί ξανά, η κοινή χρήση θα ενεργοποιηθεί αυτόματα."
-#: plinth/modules/samba/templates/samba.html:128
+#: plinth/modules/samba/templates/samba.html:113
msgid "Share name"
msgstr "Όνομα μερίσματος"
-#: plinth/modules/samba/templates/samba.html:129
+#: plinth/modules/samba/templates/samba.html:114
msgid "Action"
msgstr "Ενέργεια"
-#: plinth/modules/samba/views.py:61 plinth/modules/storage/forms.py:164
+#: plinth/modules/samba/views.py:43 plinth/modules/storage/forms.py:149
msgid "Open Share"
msgstr "Aνοικτό μέρισμα"
-#: plinth/modules/samba/views.py:62 plinth/modules/storage/forms.py:162
+#: plinth/modules/samba/views.py:44 plinth/modules/storage/forms.py:147
msgid "Group Share"
msgstr "Ομαδικό μέρισμα"
-#: plinth/modules/samba/views.py:63
+#: plinth/modules/samba/views.py:45
msgid "Home Share"
msgstr "Οικιακό μέρισμα"
-#: plinth/modules/samba/views.py:96
+#: plinth/modules/samba/views.py:78
msgid "Share enabled."
msgstr "Το μέρισμα ενεργοποιήθηκε."
-#: plinth/modules/samba/views.py:101
+#: plinth/modules/samba/views.py:83
#, python-brace-format
msgid "Error enabling share: {error_message}"
msgstr "Σφάλμα κατά την ενεργοποίηση του μερίσματος: {error_message}"
-#: plinth/modules/samba/views.py:106
+#: plinth/modules/samba/views.py:88
msgid "Share disabled."
msgstr "Το μέρισμα απενεργοποιήθηκε."
-#: plinth/modules/samba/views.py:111
+#: plinth/modules/samba/views.py:93
#, python-brace-format
msgid "Error disabling share: {error_message}"
msgstr "Σφάλμα κατά την απενεργοποίηση του μερίσματος: {error_message}"
-#: plinth/modules/searx/__init__.py:41 plinth/modules/searx/manifest.py:24
-msgid "Searx"
-msgstr "Searx"
-
-#: plinth/modules/searx/__init__.py:45
-msgid "Web Search"
-msgstr "Διαδικτυακή αναζήτηση"
-
-#: plinth/modules/searx/__init__.py:48
+#: plinth/modules/searx/__init__.py:25
msgid ""
"Searx is a privacy-respecting Internet metasearch engine. It aggregrates and "
"displays results from multiple search engines."
@@ -4989,7 +5096,7 @@ msgstr ""
"ιδιωτικότητα. Μαζεύει και εμφανίζει αποτελέσματα από πολλαπλές μηχανές "
"αναζήτησης."
-#: plinth/modules/searx/__init__.py:50
+#: plinth/modules/searx/__init__.py:27
msgid ""
"Searx can be used to avoid tracking and profiling by search engines. It "
"stores no cookies by default."
@@ -4998,52 +5105,60 @@ msgstr ""
"δημιουργία προφίλ χρήστη από τις μηχανές αναζήτησης. Δεν αποθηκεύει cookies "
"από προεπιλογή."
-#: plinth/modules/searx/__init__.py:54
+#: plinth/modules/searx/__init__.py:31
msgid "Search the web"
msgstr "Αναζήτηση στο διαδίκτυο"
-#: plinth/modules/searx/forms.py:30
+#: plinth/modules/searx/__init__.py:47 plinth/modules/searx/manifest.py:9
+msgid "Searx"
+msgstr "Searx"
+
+#: plinth/modules/searx/__init__.py:48
+msgid "Web Search"
+msgstr "Διαδικτυακή αναζήτηση"
+
+#: plinth/modules/searx/forms.py:15
msgid "Safe Search"
msgstr "Ασφαλής αναζήτηση"
-#: plinth/modules/searx/forms.py:31
+#: plinth/modules/searx/forms.py:16
msgid "Select the default family filter to apply to your search results."
msgstr ""
"Επιλέξτε το οικογενειακό φίλτρο που θα εφαρμοστεί στα αποτελέσματα "
"αναζήτησης."
-#: plinth/modules/searx/forms.py:32
+#: plinth/modules/searx/forms.py:17
msgid "None"
msgstr "Κανένα"
-#: plinth/modules/searx/forms.py:32
+#: plinth/modules/searx/forms.py:17
msgid "Moderate"
msgstr "Μέτριο"
-#: plinth/modules/searx/forms.py:32
+#: plinth/modules/searx/forms.py:17
msgid "Strict"
msgstr "Αυστηρό"
-#: plinth/modules/searx/forms.py:35
+#: plinth/modules/searx/forms.py:20
msgid "Allow Public Access"
msgstr "Να επιτρέπεται δημόσια πρόσβαση"
-#: plinth/modules/searx/forms.py:36
+#: plinth/modules/searx/forms.py:21
msgid "Allow this application to be used by anyone who can reach it."
msgstr ""
"Να επιτρέπεται η χρήση αυτής της εφαρμογής από οποιονδήποτε μπορεί να την "
"προσεγγίσει."
-#: plinth/modules/searx/views.py:59 plinth/modules/searx/views.py:70
-#: plinth/modules/tor/views.py:149 plinth/modules/tor/views.py:176
+#: plinth/modules/searx/views.py:39 plinth/modules/searx/views.py:50
+#: plinth/modules/tor/views.py:130 plinth/modules/tor/views.py:157
msgid "Configuration updated."
msgstr "Η ρύθμιση παραμέτρων Ενημερώθηκε."
-#: plinth/modules/security/forms.py:28
+#: plinth/modules/security/forms.py:13
msgid "Restrict console logins (recommended)"
msgstr "Περιορισμός συνδέσεων κονσόλας (συνιστάται)"
-#: plinth/modules/security/forms.py:29
+#: plinth/modules/security/forms.py:14
msgid ""
"When this option is enabled, only users in the \"admin\" group will be able "
"to log in to console or via SSH. Console users may be able to access some "
@@ -5054,11 +5169,11 @@ msgstr ""
"ενδέχεται να μπορούν να έχουν πρόσβαση σε ορισμένες υπηρεσίες χωρίς "
"περαιτέρω εξουσιοδότηση."
-#: plinth/modules/security/forms.py:34
+#: plinth/modules/security/forms.py:19
msgid "Fail2Ban (recommended)"
msgstr "Fail2Ban (συνιστάται)"
-#: plinth/modules/security/forms.py:35
+#: plinth/modules/security/forms.py:20
msgid ""
"When this option is enabled, Fail2Ban will limit brute force break-in "
"attempts to the SSH server and other enabled password protected internet-"
@@ -5068,17 +5183,17 @@ msgstr ""
"αποτυχημένες απόπειρες εισαγωγής κωδικού στο διακομιστή SSH και σε άλλες "
"ενεργοποιημένες υπηρεσίες διαδικτύου που χρησιμοποιούν κωδικό πρόσβασης."
-#: plinth/modules/security/templates/security.html:26
-#: plinth/modules/security/templates/security.html:28
+#: plinth/modules/security/templates/security.html:11
+#: plinth/modules/security/templates/security.html:13
msgid "Show security report"
msgstr "Εμφάνιση αναφοράς ασφαλείας"
-#: plinth/modules/security/templates/security_report.html:25
-#: plinth/modules/security/views.py:87
+#: plinth/modules/security/templates/security_report.html:10
+#: plinth/modules/security/views.py:71
msgid "Security Report"
msgstr "Αναφορά ασφαλείας"
-#: plinth/modules/security/templates/security_report.html:27
+#: plinth/modules/security/templates/security_report.html:12
#, python-format
msgid ""
"The installed version of FreedomBox has %(count)s reported security "
@@ -5087,7 +5202,7 @@ msgstr ""
"Η εγκατεστημένη έκδοση του FreedomBox έχε ι %(count)s αναφερθέντα θέματα "
"ασφαλείας."
-#: plinth/modules/security/templates/security_report.html:33
+#: plinth/modules/security/templates/security_report.html:18
msgid ""
"The following table lists the current reported number, and historical count, "
"of security vulnerabilities for each installed app."
@@ -5095,7 +5210,7 @@ msgstr ""
"Ο ακόλουθος πίνακας παραθέτει τον τρέχοντα αριθμό και το ιστορικό αδυναμιών "
"ασφαλείας, για κάθε εγκατεστημένη εφαρμογή."
-#: plinth/modules/security/templates/security_report.html:39
+#: plinth/modules/security/templates/security_report.html:24
msgid ""
"For apps that provide services, the \"Sandboxed\" column shows whether "
"sandboxing features are in use. Sandboxing mitigates the impact of a "
@@ -5106,74 +5221,66 @@ msgstr ""
"φιλτραρίσματος μετριάζει την επίδραση μιας ενδεχομένως παραβιάσιμης "
"εφαρμογής στο υπόλοιπο σύστημα."
-#: plinth/modules/security/templates/security_report.html:46
+#: plinth/modules/security/templates/security_report.html:31
msgid ""
"\"Sandbox Coverage\" is a score of how effectively the service is isolated "
"from the rest of the system. It is only displayed while the service is "
"running."
msgstr ""
-#: plinth/modules/security/templates/security_report.html:55
+#: plinth/modules/security/templates/security_report.html:40
msgid "App Name"
msgstr "Όνομα εφαρμογής"
-#: plinth/modules/security/templates/security_report.html:56
+#: plinth/modules/security/templates/security_report.html:41
msgid "Current Vulnerabilities"
msgstr "Τρέχοντα θέματα ασφαλείας"
-#: plinth/modules/security/templates/security_report.html:57
+#: plinth/modules/security/templates/security_report.html:42
msgid "Past Vulnerabilities"
msgstr "Προηγούμενα θέματα ασφαλείας"
-#: plinth/modules/security/templates/security_report.html:58
+#: plinth/modules/security/templates/security_report.html:43
msgid "Sandboxed"
msgstr "Φιλτραρισμένα"
-#: plinth/modules/security/templates/security_report.html:59
+#: plinth/modules/security/templates/security_report.html:44
#, fuzzy
#| msgid "Sandboxed"
msgid "Sandbox Coverage"
msgstr "Φιλτραρισμένα"
-#: plinth/modules/security/templates/security_report.html:70
+#: plinth/modules/security/templates/security_report.html:55
msgid "N/A"
msgstr "Μη εφαρμόσιμα"
-#: plinth/modules/security/templates/security_report.html:72
+#: plinth/modules/security/templates/security_report.html:57
msgid "Yes"
msgstr "Ναι"
-#: plinth/modules/security/templates/security_report.html:74
+#: plinth/modules/security/templates/security_report.html:59
msgid "No"
msgstr "Όχι"
-#: plinth/modules/security/templates/security_report.html:81
+#: plinth/modules/security/templates/security_report.html:66
msgid "Not running"
msgstr ""
-#: plinth/modules/security/views.py:69
+#: plinth/modules/security/views.py:53
#, python-brace-format
msgid "Error setting restricted access: {exception}"
msgstr "Σφάλμα κατά τη ρύθμιση περιορισμένης πρόσβασης: {exception}"
-#: plinth/modules/security/views.py:72
+#: plinth/modules/security/views.py:56
msgid "Updated security configuration"
msgstr "Ενημερώθηκαν οι ρυθμίσεις παραμέτρων ασφαλείας"
-#: plinth/modules/shaarli/__init__.py:34 plinth/modules/shaarli/manifest.py:23
-msgid "Shaarli"
-msgstr "Shaarli"
-
-#: plinth/modules/shaarli/__init__.py:36
-msgid "Bookmarks"
-msgstr "Σελιδοδείκτες"
-
-#: plinth/modules/shaarli/__init__.py:39
+#: plinth/modules/shaarli/__init__.py:20
msgid "Shaarli allows you to save and share bookmarks."
msgstr ""
"To Shaarli σας επιτρέπει να αποθηκεύσετε και να μοιραστείτε σελιδοδείκτες."
-#: plinth/modules/shaarli/__init__.py:40
+#: plinth/modules/shaarli/__init__.py:21
msgid ""
"When enabled, Shaarli will be available from /shaarli path on the web server. Note that Shaarli "
@@ -5185,15 +5292,15 @@ msgstr ""
"Σημειώστε ότι το Shaarli υποστηρίζει μόνο ένα λογαριασμό χρήστη, το οποίο θα "
"πρέπει να ρυθμίσετε την αρχική επίσκεψη."
-#: plinth/modules/shadowsocks/__init__.py:35
-msgid "Shadowsocks"
-msgstr "Shadowsocks"
+#: plinth/modules/shaarli/__init__.py:39 plinth/modules/shaarli/manifest.py:8
+msgid "Shaarli"
+msgstr "Shaarli"
-#: plinth/modules/shadowsocks/__init__.py:39
-msgid "Socks5 Proxy"
-msgstr "Διακομιστής μεσολάβησης τύπου socks5"
+#: plinth/modules/shaarli/__init__.py:40
+msgid "Bookmarks"
+msgstr "Σελιδοδείκτες"
-#: plinth/modules/shadowsocks/__init__.py:46
+#: plinth/modules/shadowsocks/__init__.py:25
msgid ""
"Shadowsocks is a lightweight and secure SOCKS5 proxy, designed to protect "
"your Internet traffic. It can be used to bypass Internet filtering and "
@@ -5203,7 +5310,7 @@ msgstr ""
"σκοπό να προστατεύσει την κίνησή σας στο διαδίκτυο. Μπορεί να χρησιμοποιηθεί "
"για να παρακάμψει το φιλτράρισμα στο Διαδίκτυο και τη λογοκρισία."
-#: plinth/modules/shadowsocks/__init__.py:50
+#: plinth/modules/shadowsocks/__init__.py:29
#, python-brace-format
msgid ""
"Your {box_name} can run a Shadowsocks client, that can connect to a "
@@ -5217,7 +5324,7 @@ msgstr ""
"διακομιστή μεσολάβησης και τα δεδομένα τους θα κρυπτογραφηθούν και θα "
"αποσταλούν μέσω του διακομιστή shadowsocks."
-#: plinth/modules/shadowsocks/__init__.py:55
+#: plinth/modules/shadowsocks/__init__.py:34
msgid ""
"To use Shadowsocks after setup, set the SOCKS5 proxy URL in your device, "
"browser or application to http://freedombox_address:1080/"
@@ -5227,39 +5334,43 @@ msgstr ""
"την εφαρμογή που επιθυμείτε στη διεύθυνση του freedomox http: // "
"freedombox_address: 1080 /"
-#: plinth/modules/shadowsocks/forms.py:28
-#: plinth/modules/shadowsocks/forms.py:29
+#: plinth/modules/shadowsocks/__init__.py:50
+msgid "Shadowsocks"
+msgstr "Shadowsocks"
+
+#: plinth/modules/shadowsocks/__init__.py:52
+msgid "Socks5 Proxy"
+msgstr "Διακομιστής μεσολάβησης τύπου socks5"
+
+#: plinth/modules/shadowsocks/forms.py:13
+#: plinth/modules/shadowsocks/forms.py:14
msgid "Recommended"
msgstr "Συνιστάται"
-#: plinth/modules/shadowsocks/forms.py:52
+#: plinth/modules/shadowsocks/forms.py:37
msgid "Server"
msgstr "Διακομιστής"
-#: plinth/modules/shadowsocks/forms.py:53
+#: plinth/modules/shadowsocks/forms.py:38
msgid "Server hostname or IP address"
msgstr "Όνομα διακομιστή ή διεύθυνση IP"
-#: plinth/modules/shadowsocks/forms.py:57
+#: plinth/modules/shadowsocks/forms.py:42
msgid "Server port number"
msgstr "Αριθμός θύρας διακομιστή"
-#: plinth/modules/shadowsocks/forms.py:60
+#: plinth/modules/shadowsocks/forms.py:45
msgid "Password used to encrypt data. Must match server password."
msgstr ""
"Κωδικός πρόσβασης που χρησιμοποιείται για την κρυπτογράφηση δεδομένων. "
"Πρέπει να ταιριάζει με τον κωδικό πρόσβασης του διακομιστή."
-#: plinth/modules/shadowsocks/forms.py:65
+#: plinth/modules/shadowsocks/forms.py:50
msgid "Encryption method. Must match setting on server."
msgstr ""
"Μέθοδος κρυπτογράφησης. Πρέπει να ταιριάζει με τη ρύθμιση στο διακομιστή."
-#: plinth/modules/sharing/__init__.py:34
-msgid "Sharing"
-msgstr "Sharing"
-
-#: plinth/modules/sharing/__init__.py:38
+#: plinth/modules/sharing/__init__.py:21
#, python-brace-format
msgid ""
"Sharing allows you to share files and folders on your {box_name} over the "
@@ -5268,11 +5379,15 @@ msgstr ""
"To Sharing σάς επιτρέπει να μοιράζεστε αρχεία και φακέλους στο {box_name} "
"μέσω του διαδικτύου με επιλεγμένες ομάδες χρηστών."
-#: plinth/modules/sharing/forms.py:33
+#: plinth/modules/sharing/__init__.py:38
+msgid "Sharing"
+msgstr "Sharing"
+
+#: plinth/modules/sharing/forms.py:18
msgid "Name of the share"
msgstr "Όνομα του κοινόχρηστου στοιχείου"
-#: plinth/modules/sharing/forms.py:35
+#: plinth/modules/sharing/forms.py:20
msgid ""
"A lowercase alpha-numeric string that uniquely identifies a share. Example: "
"media."
@@ -5280,29 +5395,29 @@ msgstr ""
"Μια αλφαριθμητική συμβολοσειρά (μικρά γράμματα) που προσδιορίζει με μοναδικό "
"τρόπο ένα κοινόχρηστο στοιχείο. Παράδειγμα: πολυμέσα ."
-#: plinth/modules/sharing/forms.py:39
+#: plinth/modules/sharing/forms.py:24
msgid "Path to share"
msgstr "Μονοπάτι που θα μοιραστείτε"
-#: plinth/modules/sharing/forms.py:40
+#: plinth/modules/sharing/forms.py:25
msgid "Disk path to a folder on this server that you intend to share."
msgstr "Μονοπάτι δίσκου σε αυτό το διακομιστή που σκοπέυετε να μοιραστείτε."
-#: plinth/modules/sharing/forms.py:43
+#: plinth/modules/sharing/forms.py:28
msgid "Public share"
msgstr "Μοιραστείτε δημόσια"
-#: plinth/modules/sharing/forms.py:44
+#: plinth/modules/sharing/forms.py:29
msgid "Make files in this folder available to anyone with the link."
msgstr ""
"Κάνουν τα αρχεία σε αυτόν το φάκελο διαθέσιμα σε οποιονδήποτε διαθέτει το "
"σύνδεσμο."
-#: plinth/modules/sharing/forms.py:48
+#: plinth/modules/sharing/forms.py:33
msgid "User groups that can read the files in the share"
msgstr "Ομάδες χρηστών που μπορούν να διαβάσουν τα αρχεία στο μέρισμα"
-#: plinth/modules/sharing/forms.py:50
+#: plinth/modules/sharing/forms.py:35
msgid ""
"Users of the selected user groups will be able to read the files in the "
"share."
@@ -5310,66 +5425,62 @@ msgstr ""
"Οι χρήστες των επιλεγμένων ομάδων χρηστών θα μπορούν να διαβάσουν τα αρχεία "
"στο μέρισμα."
-#: plinth/modules/sharing/forms.py:67
+#: plinth/modules/sharing/forms.py:52
msgid "A share with this name already exists."
msgstr "Υπάρχει ήδη ένα μέρισμα με αυτό το όνομα."
-#: plinth/modules/sharing/forms.py:78
+#: plinth/modules/sharing/forms.py:63
msgid "Shares should be either public or shared with at least one group"
msgstr ""
"Τα μερίσματα θα πρέπει να είναι είτε δημόσια είτε να μοιράζονται με "
"τουλάχιστον μία ομάδα"
-#: plinth/modules/sharing/templates/sharing.html:39
-#: plinth/modules/sharing/templates/sharing.html:42
+#: plinth/modules/sharing/templates/sharing.html:24
+#: plinth/modules/sharing/templates/sharing.html:27
msgid "Add share"
msgstr "Προσθήκη μερίσματος"
-#: plinth/modules/sharing/templates/sharing.html:47
+#: plinth/modules/sharing/templates/sharing.html:32
msgid "No shares currently configured."
msgstr "Δεν έχουν ρυθμιστεί μερίσματα."
-#: plinth/modules/sharing/templates/sharing.html:53
+#: plinth/modules/sharing/templates/sharing.html:38
msgid "Disk Path"
msgstr "Moνοπάτι Δίσκου"
-#: plinth/modules/sharing/templates/sharing.html:54
+#: plinth/modules/sharing/templates/sharing.html:39
msgid "Shared Over"
msgstr "Μοιράζεται με"
-#: plinth/modules/sharing/templates/sharing.html:55
+#: plinth/modules/sharing/templates/sharing.html:40
msgid "With Groups"
msgstr "Με ομάδες"
-#: plinth/modules/sharing/templates/sharing.html:73
+#: plinth/modules/sharing/templates/sharing.html:58
msgid "public access"
msgstr "δημόσια πρόσβαση"
-#: plinth/modules/sharing/views.py:55
+#: plinth/modules/sharing/views.py:39
msgid "Share added."
msgstr "Το μέρισμα προστέθηκε."
-#: plinth/modules/sharing/views.py:60
+#: plinth/modules/sharing/views.py:44
msgid "Add Share"
msgstr "Προσθήκη μερίσματος"
-#: plinth/modules/sharing/views.py:75
+#: plinth/modules/sharing/views.py:59
msgid "Share edited."
msgstr "Το μέρισμα ρυθμίστηκε."
-#: plinth/modules/sharing/views.py:80
+#: plinth/modules/sharing/views.py:64
msgid "Edit Share"
msgstr "Επεξεργασία μερίσματος"
-#: plinth/modules/sharing/views.py:111
+#: plinth/modules/sharing/views.py:95
msgid "Share deleted."
msgstr "Το μέρισμα διαγράφηκε."
-#: plinth/modules/snapshot/__init__.py:37
-msgid "Storage Snapshots"
-msgstr "Στιγμιότυπα συστήματος αρχείων"
-
-#: plinth/modules/snapshot/__init__.py:40
+#: plinth/modules/snapshot/__init__.py:23
msgid ""
"Snapshots allows creating and managing btrfs file system snapshots. These "
"can be used to roll back the system to a previously known good state in case "
@@ -5380,7 +5491,7 @@ msgstr ""
"σε μια προηγουμένως γνωστή καλή κατάσταση σε περίπτωση ανεπιθύμητων αλλαγών "
"στο σύστημα."
-#: plinth/modules/snapshot/__init__.py:44
+#: plinth/modules/snapshot/__init__.py:27
#, no-python-format
msgid ""
"Snapshots are taken periodically (called timeline snapshots) and also before "
@@ -5391,7 +5502,7 @@ msgstr ""
"και επίσης πριν και μετά από μια εγκατάσταση λογισμικού. Τα παλαιότερα "
"στιγμιότυπα θα καθαρίζονται αυτόματα σύμφωνα με τις παρακάτω ρυθμίσεις."
-#: plinth/modules/snapshot/__init__.py:47
+#: plinth/modules/snapshot/__init__.py:30
msgid ""
"Snapshots currently work on btrfs file systems only and on the root "
"partition only. Snapshots are not a replacement for αντίγραφα ασφαλείας επειδή "
"μπορούν να αποθηκευτούν μόνο στο ίδιο διαμέρισμα του δίσκου. "
-#: plinth/modules/snapshot/forms.py:27
+#: plinth/modules/snapshot/__init__.py:52
+msgid "Storage Snapshots"
+msgstr "Στιγμιότυπα συστήματος αρχείων"
+
+#: plinth/modules/snapshot/forms.py:12
msgid "Free Disk Space to Maintain"
msgstr "Ελεύθερος χώρος στο δίσκο που επιθυμείτε να διατηρηθεί"
-#: plinth/modules/snapshot/forms.py:28
+#: plinth/modules/snapshot/forms.py:13
msgid ""
"Maintain this percentage of free space on the disk. If free space falls "
"below this value, older snapshots are removed until this much free space is "
@@ -5416,64 +5531,64 @@ msgstr ""
"πέσει κάτω από αυτή την τιμή, τα παλαιότερα στιγμιότυπα καταργούνται μέχρι "
"να ανακτηθεί αυτός ο ελεύθερος χώρος. Η προεπιλεγμένη τιμή είναι 30%."
-#: plinth/modules/snapshot/forms.py:35
+#: plinth/modules/snapshot/forms.py:20
msgid "Timeline Snapshots"
msgstr "Ιστορικά στιγμιότυπα"
-#: plinth/modules/snapshot/forms.py:36
+#: plinth/modules/snapshot/forms.py:21
msgid ""
"Enable or disable timeline snapshots (hourly, daily, monthly and yearly)."
msgstr ""
"Ενεργοποίηση ή απενεργοποίηση ιστορικών στιγμιότυπων (ωριαία, ημερήσια, "
"μηνιαία και ετήσια)."
-#: plinth/modules/snapshot/forms.py:41
+#: plinth/modules/snapshot/forms.py:26
msgid "Software Installation Snapshots"
msgstr "Στιγμιότυπα εγκατάστασης λογισμικού"
-#: plinth/modules/snapshot/forms.py:42
+#: plinth/modules/snapshot/forms.py:27
msgid "Enable or disable snapshots before and after software installation"
msgstr ""
"Ενεργοποιήστε ή απενεργοποιήστε τα στιγμιότυπα πριν και μετά την εγκατάσταση "
"του λογισμικού"
-#: plinth/modules/snapshot/forms.py:47
+#: plinth/modules/snapshot/forms.py:32
msgid "Hourly Snapshots Limit"
msgstr "Όριο ωριαίων στιγμιότυπων"
-#: plinth/modules/snapshot/forms.py:48
+#: plinth/modules/snapshot/forms.py:33
msgid "Keep a maximum of this many hourly snapshots."
msgstr "Κρατήστε αυτό το μέγιστο αριθμό ωριαίων στιγμιοτύπων."
-#: plinth/modules/snapshot/forms.py:51
+#: plinth/modules/snapshot/forms.py:36
msgid "Daily Snapshots Limit"
msgstr "Όριο ημερήσιων στιγμιότυπων"
-#: plinth/modules/snapshot/forms.py:52
+#: plinth/modules/snapshot/forms.py:37
msgid "Keep a maximum of this many daily snapshots."
msgstr "Διατηρήστε αυτό το μέγιστο αριθμό ημερισίων στιγμιοτύπων."
-#: plinth/modules/snapshot/forms.py:55
+#: plinth/modules/snapshot/forms.py:40
msgid "Weekly Snapshots Limit"
msgstr "Όριο εβδομαδιαίων στιγμιότυπων"
-#: plinth/modules/snapshot/forms.py:56
+#: plinth/modules/snapshot/forms.py:41
msgid "Keep a maximum of this many weekly snapshots."
msgstr "Διατηρήστε αυτό το μέγιστο αριθμό εβδομαδιαίων στιγμιοτύπων."
-#: plinth/modules/snapshot/forms.py:59
+#: plinth/modules/snapshot/forms.py:44
msgid "Monthly Snapshots Limit"
msgstr "Όριο μηνιαίων στιγμιότυπων"
-#: plinth/modules/snapshot/forms.py:60
+#: plinth/modules/snapshot/forms.py:45
msgid "Keep a maximum of this many monthly snapshots."
msgstr "Κρατήστε αυτο μέγιστο αριρμό μηνιαίων στιγμιότυπων."
-#: plinth/modules/snapshot/forms.py:63
+#: plinth/modules/snapshot/forms.py:48
msgid "Yearly Snapshots Limit"
msgstr "Όριο ετήσιων στιγμιότυπων"
-#: plinth/modules/snapshot/forms.py:64
+#: plinth/modules/snapshot/forms.py:49
msgid ""
"Keep a maximum of this many yearly snapshots. The default value is 0 "
"(disabled)."
@@ -5481,46 +5596,46 @@ msgstr ""
"Κρατήστε το μέγιστο αριθμό ετήσιων στιγμιότυπων. Η προεπιλεγμένη τιμή είναι "
"0 (απενεργοποιημένο)."
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:27
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:12
msgid "Delete the following snapshots permanently?"
msgstr "Να διαγραφούν οριστικά τα παρακάτω στιγμιότυπα;"
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:31
-#: plinth/modules/snapshot/templates/snapshot_manage.html:43
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:39
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:16
+#: plinth/modules/snapshot/templates/snapshot_manage.html:28
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:24
msgid "Number"
msgstr "Αριθμός"
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:32
-#: plinth/modules/snapshot/templates/snapshot_manage.html:44
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:40
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:17
+#: plinth/modules/snapshot/templates/snapshot_manage.html:29
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:25
msgid "Date"
msgstr "Ημερομηνία"
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:52
-#: plinth/modules/snapshot/templates/snapshot_manage.html:37
-#: plinth/modules/snapshot/views.py:196
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:37
+#: plinth/modules/snapshot/templates/snapshot_manage.html:22
+#: plinth/modules/snapshot/views.py:175
msgid "Delete Snapshots"
msgstr "Διαγραφή στιγμιότυπων"
-#: plinth/modules/snapshot/templates/snapshot_manage.html:33
+#: plinth/modules/snapshot/templates/snapshot_manage.html:18
msgid "Create Snapshot"
msgstr "Δημιουργία στιγμιότυπου"
-#: plinth/modules/snapshot/templates/snapshot_manage.html:46
+#: plinth/modules/snapshot/templates/snapshot_manage.html:31
msgid "Rollback"
msgstr "Επαναφορά"
-#: plinth/modules/snapshot/templates/snapshot_manage.html:57
+#: plinth/modules/snapshot/templates/snapshot_manage.html:42
msgid "active"
msgstr "Ενεργό"
-#: plinth/modules/snapshot/templates/snapshot_manage.html:66
+#: plinth/modules/snapshot/templates/snapshot_manage.html:51
#, python-format
msgid "Rollback to snapshot #%(number)s"
msgstr "Επαναφορά στο στιγμιότυπο #%(number)s"
-#: plinth/modules/snapshot/templates/snapshot_not_supported.html:26
+#: plinth/modules/snapshot/templates/snapshot_not_supported.html:11
#, python-format
msgid ""
"Your have a filesystem of type %(fs_type)s. Snapshots are "
@@ -5530,11 +5645,11 @@ msgstr ""
"στιγμιότυπα είναι διαθέσιμα αυτήν τη στιγμή μόνο σε συστήματα αρχείων "
"%(types_supported)s ."
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:27
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:12
msgid "Roll back the system to this snapshot?"
msgstr "Επαναφέρετε το σύστημα σε αυτό το στιγμιότυπο;"
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:30
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:15
msgid ""
"A new snapshot with the current state of the file system will be "
"automatically created. You will be able to undo a rollback by reverting to "
@@ -5544,61 +5659,57 @@ msgstr ""
"συστήματος αρχείων. Θα μπορείτε να αναιρέσετε μια επαναφορά, επιστρέφοντας "
"στο πρόσφατα δημιουργημένο στιγμιότυπο."
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:57
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:42
#, python-format
msgid "Rollback to Snapshot #%(number)s"
msgstr "Επαναφορά στο στιγμιότυπο #%(number)s"
-#: plinth/modules/snapshot/views.py:45
+#: plinth/modules/snapshot/views.py:30
msgid "Manage Snapshots"
msgstr "Διαχείριση στιγμιότυπων"
-#: plinth/modules/snapshot/views.py:98
+#: plinth/modules/snapshot/views.py:79
msgid "Created snapshot."
msgstr "Το στιγμιότυπο δημιουργήθηκε."
-#: plinth/modules/snapshot/views.py:156
+#: plinth/modules/snapshot/views.py:135
msgid "Storage snapshots configuration updated"
msgstr "Η ρύθμιση παραμέτρων των στιγμιότυπων αποθήκευσης Ενημερώθηκε"
-#: plinth/modules/snapshot/views.py:160 plinth/modules/tor/views.py:79
+#: plinth/modules/snapshot/views.py:139 plinth/modules/tor/views.py:60
#, python-brace-format
msgid "Action error: {0} [{1}] [{2}]"
msgstr "Σφάλμα ενέργειας: {0} [{1}] [{2}]"
-#: plinth/modules/snapshot/views.py:175
+#: plinth/modules/snapshot/views.py:154
msgid "Deleted all snapshots"
msgstr "Διαγραφή όλων των στιγμιότυπων"
-#: plinth/modules/snapshot/views.py:179
+#: plinth/modules/snapshot/views.py:158
msgid "Deleted selected snapshots"
msgstr "Διαγράφηκαν επιλεγμένα στιγμιότυπα"
-#: plinth/modules/snapshot/views.py:184
+#: plinth/modules/snapshot/views.py:163
msgid "Snapshot is currently in use. Please try again later."
msgstr ""
"Το στιγμιότυπο χρησιμοποιείται αυτήν τη στιγμή. Παρακαλώ προσπαθήστε ξανά "
"αργότερα."
-#: plinth/modules/snapshot/views.py:207
+#: plinth/modules/snapshot/views.py:186
#, python-brace-format
msgid "Rolled back to snapshot #{number}."
msgstr "Πραγματοποιήθηκε επαναφορά στο στιγμιότυπο #{number}."
-#: plinth/modules/snapshot/views.py:210
+#: plinth/modules/snapshot/views.py:189
msgid "The system must be restarted to complete the rollback."
msgstr ""
"Πρέπει να γίνει επανεκκίνηση του συστήματος για να ολοκληρωθεί η επαναφορά."
-#: plinth/modules/snapshot/views.py:222
+#: plinth/modules/snapshot/views.py:201
msgid "Rollback to Snapshot"
msgstr "Επαναφορά σε στιγμιότυπο"
-#: plinth/modules/ssh/__init__.py:43
-msgid "Secure Shell (SSH) Server"
-msgstr "Διακομιστής SSH"
-
-#: plinth/modules/ssh/__init__.py:46
+#: plinth/modules/ssh/__init__.py:29
msgid ""
"A Secure Shell server uses the secure shell protocol to accept connections "
"from remote computers. An authorized remote computer can perform "
@@ -5611,11 +5722,15 @@ msgstr ""
"αντιγράψει αρχεία ή να εκτελέσει άλλες υπηρεσίες χρησιμοποιώντας αυτές τις "
"συνδέσεις."
-#: plinth/modules/ssh/forms.py:30
+#: plinth/modules/ssh/__init__.py:50
+msgid "Secure Shell (SSH) Server"
+msgstr "Διακομιστής SSH"
+
+#: plinth/modules/ssh/forms.py:15
msgid "Disable password authentication"
msgstr "Απενεργοποίηση ελέγχου ταυτότητας με κωδικό πρόσβασης"
-#: plinth/modules/ssh/forms.py:31
+#: plinth/modules/ssh/forms.py:16
msgid ""
"Improves security by preventing password guessing. Ensure that you have "
"setup SSH keys in your administrator user account before enabling this "
@@ -5625,11 +5740,11 @@ msgstr ""
"Βεβαιωθείτε ότι έχετε εγκαταστήσει κλειδιά SSH στο λογαριασμό χρήστη "
"διαχειριστή, πριν να ενεργοποιήσετε αυτήν την επιλογή."
-#: plinth/modules/ssh/templates/ssh.html:26
+#: plinth/modules/ssh/templates/ssh.html:11
msgid "Server Fingerprints"
msgstr "Αποτυπώματα διακομιστή"
-#: plinth/modules/ssh/templates/ssh.html:29
+#: plinth/modules/ssh/templates/ssh.html:14
msgid ""
"When connecting to the server, ensure that the fingerprint shown by the SSH "
"client matches one of these fingerprints."
@@ -5638,35 +5753,31 @@ msgstr ""
"εμφανίζεται από το πρόγραμμα-πελάτη SSH ταιριάζει με ένα από αυτά τα "
"δακτυλικά αποτυπώματα."
-#: plinth/modules/ssh/templates/ssh.html:38
+#: plinth/modules/ssh/templates/ssh.html:23
msgid "Algorithm"
msgstr "Αλγόριθμος"
-#: plinth/modules/ssh/templates/ssh.html:39
+#: plinth/modules/ssh/templates/ssh.html:24
msgid "Fingerprint"
msgstr "Αποτύπωμα"
-#: plinth/modules/ssh/views.py:66
+#: plinth/modules/ssh/views.py:48
msgid "SSH authentication with password disabled."
msgstr "Έλεγχος ταυτότητας SSH με κωδικό πρόσβασης απενεργοποιήθηκε."
-#: plinth/modules/ssh/views.py:69
+#: plinth/modules/ssh/views.py:51
msgid "SSH authentication with password enabled."
msgstr "Έλεγχος ταυτότητας SSH με κωδικό πρόσβασης ενεργοποιήθηκε."
-#: plinth/modules/sso/__init__.py:30
+#: plinth/modules/sso/__init__.py:33
msgid "Single Sign On"
msgstr "Single Sign On"
-#: plinth/modules/sso/templates/login.html:35
+#: plinth/modules/sso/templates/login.html:20
msgid "Login"
msgstr "Είσοδος"
-#: plinth/modules/storage/__init__.py:39 plinth/modules/storage/__init__.py:331
-msgid "Storage"
-msgstr "Χώρος Αποθήκευσης"
-
-#: plinth/modules/storage/__init__.py:47
+#: plinth/modules/storage/__init__.py:30
#, python-brace-format
msgid ""
"This module allows you to manage storage media attached to your {box_name}. "
@@ -5678,85 +5789,89 @@ msgstr ""
"χρησιμοποιούνται προς το παρόν, να προσθέσετε και να αφαιρέσετε αφαιρούμενα "
"μέσα, επεκτείνετε το root διαμέρισμα κλπ."
-#: plinth/modules/storage/__init__.py:224
+#: plinth/modules/storage/__init__.py:52 plinth/modules/storage/__init__.py:318
+msgid "Storage"
+msgstr "Χώρος Αποθήκευσης"
+
+#: plinth/modules/storage/__init__.py:211
#, python-brace-format
msgid "{disk_size:.1f} bytes"
msgstr "{disk_size:.1f} bytes"
-#: plinth/modules/storage/__init__.py:228
+#: plinth/modules/storage/__init__.py:215
#, python-brace-format
msgid "{disk_size:.1f} KiB"
msgstr "{disk_size:.1f} KiB"
-#: plinth/modules/storage/__init__.py:232
+#: plinth/modules/storage/__init__.py:219
#, python-brace-format
msgid "{disk_size:.1f} MiB"
msgstr "{disk_size:.1f} MiB"
-#: plinth/modules/storage/__init__.py:236
+#: plinth/modules/storage/__init__.py:223
#, python-brace-format
msgid "{disk_size:.1f} GiB"
msgstr "{disk_size:.1f} GiB"
-#: plinth/modules/storage/__init__.py:239
+#: plinth/modules/storage/__init__.py:226
#, python-brace-format
msgid "{disk_size:.1f} TiB"
msgstr "{disk_size:.1f} TiB"
-#: plinth/modules/storage/__init__.py:246
+#: plinth/modules/storage/__init__.py:233
msgid "The operation failed."
msgstr "Η ενέργεια απέτυχε."
-#: plinth/modules/storage/__init__.py:248
+#: plinth/modules/storage/__init__.py:235
msgid "The operation was cancelled."
msgstr "Η ενέργεια ακυρώθηκε."
-#: plinth/modules/storage/__init__.py:250
+#: plinth/modules/storage/__init__.py:237
msgid "The device is already unmounting."
msgstr "Η συσκευή είναι ήδη προς αφαίρεση."
-#: plinth/modules/storage/__init__.py:252
+#: plinth/modules/storage/__init__.py:239
msgid "The operation is not supported due to missing driver/tool support."
msgstr "Η ενέργεια δεν υποστηρίζεται λόγω μη υποστήριξης προγραμματος οδηγού."
-#: plinth/modules/storage/__init__.py:255
+#: plinth/modules/storage/__init__.py:242
msgid "The operation timed out."
msgstr "Η ενέργεια απέτυχε επειδή διήρκησε πολύ χρόνο."
-#: plinth/modules/storage/__init__.py:257
+#: plinth/modules/storage/__init__.py:244
msgid "The operation would wake up a disk that is in a deep-sleep state."
msgstr ""
"Η ενέργεια θα ξυπνήσει ένα δίσκο που είναι σε μια βαθιά κατάσταση ύπνου."
-#: plinth/modules/storage/__init__.py:260
+#: plinth/modules/storage/__init__.py:247
msgid "Attempting to unmount a device that is busy."
msgstr "Γίνεται προσπάθεια αφαίρεσης μιας συσκευής που είναι απασχολημένη."
-#: plinth/modules/storage/__init__.py:262
+#: plinth/modules/storage/__init__.py:249
msgid "The operation has already been cancelled."
msgstr "Η ενέργια έχει ήδη ακυρωθεί."
-#: plinth/modules/storage/__init__.py:268
+#: plinth/modules/storage/__init__.py:255
msgid "Not authorized to perform the requested operation."
msgstr "Δεν έχετε εξουσιοδότηση για την εκτέλεση της συγκεκριμένης ενέργειας."
-#: plinth/modules/storage/__init__.py:270
+#: plinth/modules/storage/__init__.py:257
msgid "The device is already mounted."
msgstr "Η συσκευή έχει ήδη προστεθεί."
-#: plinth/modules/storage/__init__.py:272
+#: plinth/modules/storage/__init__.py:259
msgid "The device is not mounted."
msgstr "Η συσκευή δεν είναι τοποθετημένη."
-#: plinth/modules/storage/__init__.py:275
+#: plinth/modules/storage/__init__.py:262
msgid "Not permitted to use the requested option."
msgstr "Δεν έχετε εξουσιοδότηση για την εκτέλεση της συγκεκριμένης ενέργειας."
-#: plinth/modules/storage/__init__.py:278
+#: plinth/modules/storage/__init__.py:265
msgid "The device is mounted by another user."
msgstr "Η συσκευή έχει ήδη προστεθεί από άλλο χρήστη."
-#: plinth/modules/storage/__init__.py:326
+#: plinth/modules/storage/__init__.py:313
#, fuzzy, no-python-format, python-brace-format
#| msgid ""
#| "Warning: Low space on system partition ({percent_used}% used, "
@@ -5766,63 +5881,63 @@ msgstr ""
"Προειδοποίηση: χαμηλός χώρος στο διαμέρισμα του συστήματος ({percent_used}% "
"χρησιμοποιείται, {free_space} είναι ελεύθερος)."
-#: plinth/modules/storage/__init__.py:328
+#: plinth/modules/storage/__init__.py:315
msgid "Low disk space"
msgstr ""
-#: plinth/modules/storage/forms.py:79
+#: plinth/modules/storage/forms.py:64
msgid "Invalid directory name."
msgstr "Το όνομα καταλόγου δεν είναι έγκυρο."
-#: plinth/modules/storage/forms.py:97
+#: plinth/modules/storage/forms.py:82
msgid "Directory does not exist."
msgstr "Ο κατάλογος δεν υπάρχει."
-#: plinth/modules/storage/forms.py:99
+#: plinth/modules/storage/forms.py:84
msgid "Path is not a directory."
msgstr "Το μονοπάτι δεν είναι κατάλογος."
-#: plinth/modules/storage/forms.py:102
+#: plinth/modules/storage/forms.py:87
msgid "Directory is not readable by the user."
msgstr "Ο κατάλογος δεν είναι αναγνώσιμος από τον χρήστη."
-#: plinth/modules/storage/forms.py:105
+#: plinth/modules/storage/forms.py:90
msgid "Directory is not writable by the user."
msgstr "Ο κατάλογος δεν είναι εγγράψιμος από το χρήστη."
-#: plinth/modules/storage/forms.py:110
+#: plinth/modules/storage/forms.py:95
msgid "Directory"
msgstr "Κατάλογος"
-#: plinth/modules/storage/forms.py:113
+#: plinth/modules/storage/forms.py:98
msgid "Subdirectory (optional)"
msgstr "Υποκατάλογος (προαιρετικό)"
-#: plinth/modules/storage/forms.py:160
+#: plinth/modules/storage/forms.py:145
msgid "Share"
msgstr "Μέρισμα"
-#: plinth/modules/storage/forms.py:168
+#: plinth/modules/storage/forms.py:153
msgid "Other directory (specify below)"
msgstr "Άλλος κατάλογος (Καθορίστε παρακάτω)"
-#: plinth/modules/storage/templates/storage.html:35
+#: plinth/modules/storage/templates/storage.html:20
msgid "The following storage devices are in use:"
msgstr "Χρησιμοποιούνται ι ακόλουθες συσκευές αποθήκευσης χρησιμοποιούνται:"
-#: plinth/modules/storage/templates/storage.html:41
+#: plinth/modules/storage/templates/storage.html:26
msgid "Label"
msgstr "Ετικέτα"
-#: plinth/modules/storage/templates/storage.html:42
+#: plinth/modules/storage/templates/storage.html:27
msgid "Mount Point"
msgstr "Σημείο Προσάρτησης"
-#: plinth/modules/storage/templates/storage.html:90
+#: plinth/modules/storage/templates/storage.html:75
msgid "Partition Expansion"
msgstr "Επέκταση διαμερίσματος"
-#: plinth/modules/storage/templates/storage.html:92
+#: plinth/modules/storage/templates/storage.html:77
#, python-format
msgid ""
"There is %(expandable_root_size)s of unallocated space available after your "
@@ -5833,13 +5948,13 @@ msgstr ""
"Το Root διαμέρισμα πρέπει να επεκταθεί για να χρησιμοποιήσετε αυτό το χώρο. "
"Αυτό θα σας δώσει επιπλέον ελεύθερο χώρο για να αποθηκεύσετε τα αρχεία σας."
-#: plinth/modules/storage/templates/storage.html:102
-#: plinth/modules/storage/templates/storage_expand.html:39
-#: plinth/modules/storage/views.py:76
+#: plinth/modules/storage/templates/storage.html:87
+#: plinth/modules/storage/templates/storage_expand.html:24
+#: plinth/modules/storage/views.py:58
msgid "Expand Root Partition"
msgstr "Επεκτείνετε το διαμέρισμα root"
-#: plinth/modules/storage/templates/storage_expand.html:29
+#: plinth/modules/storage/templates/storage_expand.html:14
#, python-format
msgid ""
"Please backup your data before proceeding. After this operation, "
@@ -5850,39 +5965,30 @@ msgstr ""
"προχωρήσετε. Μετά από αυτήν τηv ενέργεια, %(expandable_root_size)s του "
"ελεύθερου χώρου θα είναι διαθέσιμο στο root διαμέρισμα."
-#: plinth/modules/storage/views.py:88
+#: plinth/modules/storage/views.py:70
#, python-brace-format
msgid "Error expanding partition: {exception}"
msgstr "Σφάλμα επέκτασης του διαμερίσματος: {exception}"
-#: plinth/modules/storage/views.py:91
+#: plinth/modules/storage/views.py:73
msgid "Partition expanded successfully."
msgstr "Το διαμέρισμα επεκτάθηκε με επιτυχία."
-#: plinth/modules/storage/views.py:109
+#: plinth/modules/storage/views.py:91
#, python-brace-format
msgid "{drive_vendor} {drive_model} can be safely unplugged."
msgstr "{drive_vendor} {drive_model} μπορεί να αποσυνδεθεί με ασφάλεια."
-#: plinth/modules/storage/views.py:113
+#: plinth/modules/storage/views.py:95
msgid "Device can be safely unplugged."
msgstr "Η συσκευή μπορεί να αποσυνδεθεί με ασφάλεια."
-#: plinth/modules/storage/views.py:123
+#: plinth/modules/storage/views.py:105
#, python-brace-format
msgid "Error ejecting device: {error_message}"
msgstr "Σφάλμα κατά την αφαίρεση της συσκευής: {error_message}"
-#: plinth/modules/syncthing/__init__.py:40
-#: plinth/modules/syncthing/manifest.py:28
-msgid "Syncthing"
-msgstr "Syncthing"
-
-#: plinth/modules/syncthing/__init__.py:44
-msgid "File Synchronization"
-msgstr "Συγχρονισμός αρχείων"
-
-#: plinth/modules/syncthing/__init__.py:47
+#: plinth/modules/syncthing/__init__.py:26
msgid ""
"Syncthing is an application to synchronize files across multiple devices, e."
"g. your desktop computer and mobile phone. Creation, modification, or "
@@ -5894,7 +6000,7 @@ msgstr ""
"δημιουργία, η τροποποίηση ή η διαγραφή αρχείων σε μία συσκευή θα αναπαραχθεί "
"αυτόματα σε όλες τις άλλες συσκευές που εκτελούν επίσης το Syncthing."
-#: plinth/modules/syncthing/__init__.py:52
+#: plinth/modules/syncthing/__init__.py:31
#, python-brace-format
msgid ""
"Running Syncthing on {box_name} provides an extra synchronization point for "
@@ -5913,19 +6019,20 @@ msgstr ""
"{box_name} είναι διαθέσιμη μόνο για χρήστες που ανήκουν στην ομάδα \"admin"
"\" (διαχειριστών)."
-#: plinth/modules/syncthing/__init__.py:63
+#: plinth/modules/syncthing/__init__.py:40
msgid "Administer Syncthing application"
msgstr "Διαχειριστείτε την εφαρμογή Syncthing"
-#: plinth/modules/tahoe/__init__.py:43
-msgid "Tahoe-LAFS"
-msgstr "Tahoe-LAFS"
+#: plinth/modules/syncthing/__init__.py:54
+#: plinth/modules/syncthing/manifest.py:13
+msgid "Syncthing"
+msgstr "Syncthing"
-#: plinth/modules/tahoe/__init__.py:47
-msgid "Distributed File Storage"
-msgstr "Διανεμημένος χώρος αποθήκευσης αρχείων"
+#: plinth/modules/syncthing/__init__.py:55
+msgid "File Synchronization"
+msgstr "Συγχρονισμός αρχείων"
-#: plinth/modules/tahoe/__init__.py:134
+#: plinth/modules/tahoe/__init__.py:30
msgid ""
"Tahoe-LAFS is a decentralized secure file storage system. It uses provider "
"independent security to store files over a distributed network of storage "
@@ -5938,7 +6045,7 @@ msgstr ""
"και αν κάποιοι κόμβοι αποτυγχάνουν, τα αρχεία μπορούν να ανακτηθούν από τους "
"υπόλοιπους κόμβους."
-#: plinth/modules/tahoe/__init__.py:139
+#: plinth/modules/tahoe/__init__.py:35
#, python-brace-format
msgid ""
"This {box_name} hosts a storage node and an introducer by default. "
@@ -5949,7 +6056,15 @@ msgstr ""
"από προεπιλογή. Πρόσθετοι \"εισαγωγείς\" μπορούν να προστεθούν, οι οποίοι θα "
"διαφημίσουν αυτόν τον κόμβο στους άλλους κόμβους αποθήκευσης."
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:33
+#: plinth/modules/tahoe/__init__.py:66
+msgid "Tahoe-LAFS"
+msgstr "Tahoe-LAFS"
+
+#: plinth/modules/tahoe/__init__.py:68
+msgid "Distributed File Storage"
+msgstr "Διανεμημένος χώρος αποθήκευσης αρχείων"
+
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:17
#, python-format
msgid ""
"The Tahoe-LAFS server domain is set to %(domain_name)s. Changing the "
@@ -5963,37 +6078,33 @@ msgstr ""
"Tahoe-LAFS στη διεύθυνση URL https://%(domain_name)s:5678."
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:55
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:39
msgid "Local introducer"
msgstr "Τοπικός εισαγωγέας"
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:43
#: plinth/modules/tahoe/templates/tahoe-post-setup.html:59
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:75
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:92
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:76
msgid "Pet Name"
msgstr "Όνομα \"κατοικίδιου\""
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:72
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:56
msgid "Add new introducer"
msgstr "Προσθέστε νέο εισαγωγέα"
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:83
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:67
msgid "Add"
msgstr "Προσθήκη"
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:88
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:72
msgid "Connected introducers"
msgstr "Συνδεδεμένοι εισαγωγείς"
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:105
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:89
msgid "Remove"
msgstr "Καταργήστε"
-#: plinth/modules/tor/__init__.py:47
-msgid "Tor"
-msgstr "Tor"
-
-#: plinth/modules/tor/__init__.py:52
+#: plinth/modules/tor/__init__.py:33
msgid ""
"Tor is an anonymous communication system. You can learn more about it from "
"the Tor Project website. For "
@@ -6007,56 +6118,60 @@ msgstr ""
"Project συνιστά να χρησιμοποιήσετε το πρόγραμμα περιήγησης διαδικτύου Tor."
-#: plinth/modules/tor/__init__.py:83
+#: plinth/modules/tor/__init__.py:55
+msgid "Tor"
+msgstr "Tor"
+
+#: plinth/modules/tor/__init__.py:66
msgid "Tor Onion Service"
msgstr "Υπηρεσία κρεμυδιού Tor"
-#: plinth/modules/tor/__init__.py:87
+#: plinth/modules/tor/__init__.py:70
msgid "Tor Socks Proxy"
msgstr "Tor διακομιστής μεσολάβησης τύπου socks5"
-#: plinth/modules/tor/__init__.py:91
+#: plinth/modules/tor/__init__.py:74
msgid "Tor Bridge Relay"
msgstr "Γέφυρα/μεσολαβητής Tor"
-#: plinth/modules/tor/__init__.py:112
+#: plinth/modules/tor/__init__.py:95
msgid "Tor relay port available"
msgstr "Θύρα μεσολαβητή Tor διαθέσιμη"
-#: plinth/modules/tor/__init__.py:122
+#: plinth/modules/tor/__init__.py:105
msgid "Obfs3 transport registered"
msgstr "Obfs3 μεταφορά καταχωρήθηκε"
-#: plinth/modules/tor/__init__.py:132
+#: plinth/modules/tor/__init__.py:115
msgid "Obfs4 transport registered"
msgstr "Obfs4 μεταφορά καταχωρήθηκε"
-#: plinth/modules/tor/__init__.py:225
+#: plinth/modules/tor/__init__.py:208
#, python-brace-format
msgid "Access URL {url} on tcp{kind} via Tor"
msgstr "Πρόσβαση στη διεύθυνση URL {url} με tcp {kind} μέσω του Tor"
-#: plinth/modules/tor/__init__.py:236
+#: plinth/modules/tor/__init__.py:219
#, python-brace-format
msgid "Confirm Tor usage at {url} on tcp{kind}"
msgstr "Επιβεβαίωση χρήσης του Tor στο {url} στο προτόκολλο TCP {kind}"
-#: plinth/modules/tor/forms.py:46
+#: plinth/modules/tor/forms.py:31
msgid ""
"Enter a valid bridge with this format: [transport] IP:ORPort [fingerprint]"
msgstr ""
"Εισαγάγετε μια έγκυρη γέφυρα με αυτήν τη μορφή: [μεταφορά] IP: ORPort "
"[αποτύπωμα]"
-#: plinth/modules/tor/forms.py:88
+#: plinth/modules/tor/forms.py:73
msgid "Enable Tor"
msgstr "Ενεργοποίηση Tor"
-#: plinth/modules/tor/forms.py:90
+#: plinth/modules/tor/forms.py:75
msgid "Use upstream bridges to connect to Tor network"
msgstr "Χρησιμοποιήστε εξωτερικές γέφυρες για να συνδεθείτε στο δίκτυο Tor"
-#: plinth/modules/tor/forms.py:92
+#: plinth/modules/tor/forms.py:77
msgid ""
"When enabled, the bridges configured below will be used to connect to the "
"Tor network. Use this option if your Internet Service Provider (ISP) blocks "
@@ -6067,11 +6182,11 @@ msgstr ""
"επιλογή εάν η υπηρεσία παροχής Internet (ISP) αποκλείει ή χρησιμοποιεί "
"συνδέσεις στο δίκτυο Tor. Αυτό θα απενεργοποιήσει τh λειτουργία μεσολαβητή."
-#: plinth/modules/tor/forms.py:97
+#: plinth/modules/tor/forms.py:82
msgid "Upstream bridges"
msgstr "Εξωτερικές γέφυρες"
-#: plinth/modules/tor/forms.py:99
+#: plinth/modules/tor/forms.py:84
msgid ""
"You can get some bridges from https://bridges.torproject.org/ and copy/paste the bridge information "
@@ -6082,11 +6197,11 @@ msgstr ""
"τις πληροφορίες της γέφυρας εδώ. Οι τρέχουσες υποστηριζόμενες μεταφορές "
"είναι 'καμία', obfs3, obfs4 και scamblesuit."
-#: plinth/modules/tor/forms.py:105
+#: plinth/modules/tor/forms.py:90
msgid "Enable Tor relay"
msgstr "Ενεργοποίηση μεσολαβητή Tor"
-#: plinth/modules/tor/forms.py:106
+#: plinth/modules/tor/forms.py:91
#, python-brace-format
msgid ""
"When enabled, your {box_name} will run a Tor relay and donate bandwidth to "
@@ -6097,11 +6212,11 @@ msgstr ""
"δωρίσει ένα μερος της ταχήτυτας της σύνδεσής σας στο δίκτυο Tor. Κάντε αυτό "
"αν έχετε περισσότερα από 2 Mbps ταχύτητα μεταφόρτωσης και λήψης."
-#: plinth/modules/tor/forms.py:111
+#: plinth/modules/tor/forms.py:96
msgid "Enable Tor bridge relay"
msgstr "Ενεργοποίηση γέφυρας μεσολαβητή Tor"
-#: plinth/modules/tor/forms.py:113
+#: plinth/modules/tor/forms.py:98
msgid ""
"When enabled, relay information is published in the Tor bridge database "
"instead of public Tor relay database making it harder to censor this node. "
@@ -6112,11 +6227,11 @@ msgstr ""
"Tor που καθιστά δυσκολότερη τη λογοκρισία αυτού του κόμβου. Αυτό βοηθά τους "
"άλλους να παρακάμψουν τη λογοκρισία."
-#: plinth/modules/tor/forms.py:118
+#: plinth/modules/tor/forms.py:103
msgid "Enable Tor Hidden Service"
msgstr "Ενεργοποίηση της κρυφής υπηρεσίας Tor"
-#: plinth/modules/tor/forms.py:120
+#: plinth/modules/tor/forms.py:105
#, python-brace-format
msgid ""
"A hidden service will allow {box_name} to provide selected services (such as "
@@ -6127,11 +6242,11 @@ msgstr ""
"υπηρεσίες (όπως wiki ή chat) χωρίς να αποκαλύψει τη θέση της. Να μην "
"χρησιμοποιείται για πληρη ανωνυμία παρόλαυτα."
-#: plinth/modules/tor/forms.py:125
+#: plinth/modules/tor/forms.py:110
msgid "Download software packages over Tor"
msgstr "Κατεβάστε πακέτα λογισμικού μέσω του Tor"
-#: plinth/modules/tor/forms.py:126
+#: plinth/modules/tor/forms.py:111
msgid ""
"When enabled, software will be downloaded over the Tor network for "
"installations and upgrades. This adds a degree of privacy and security "
@@ -6141,37 +6256,37 @@ msgstr ""
"εγκαταστάσεις και αναβαθμίσεις. Αυτό προσθέτει ένα βαθμό ιδιωτικότητας και "
"ασφάλειας κατά τη λήψη λογισμικού."
-#: plinth/modules/tor/forms.py:141
+#: plinth/modules/tor/forms.py:126
msgid "Specify at least one upstream bridge to use upstream bridges."
msgstr ""
"Καθορίστε τουλάχιστον μία εξωτερική γέφυρα για να χρησιμοποιήσετε εξωτερικές "
"γέφυρες."
-#: plinth/modules/tor/manifest.py:29
+#: plinth/modules/tor/manifest.py:14
msgid "Tor Browser"
msgstr "Tor πρόγραμμα περιήγησης"
-#: plinth/modules/tor/manifest.py:45
+#: plinth/modules/tor/manifest.py:30
msgid "Orbot: Proxy with Tor"
msgstr "Orbot: διακομιστής μεσολάβησης με Tor"
-#: plinth/modules/tor/templates/tor.html:41
+#: plinth/modules/tor/templates/tor.html:26
msgid "Tor configuration is being updated"
msgstr "Οι ρυθμίσεις Tor ενημερώνονται"
-#: plinth/modules/tor/templates/tor.html:50
+#: plinth/modules/tor/templates/tor.html:35
msgid "Onion Service"
msgstr "Υπηρεσία κρεμμυδιού"
-#: plinth/modules/tor/templates/tor.html:52
+#: plinth/modules/tor/templates/tor.html:37
msgid "Ports"
msgstr "Θύρες"
-#: plinth/modules/tor/templates/tor.html:82
+#: plinth/modules/tor/templates/tor.html:67
msgid "Relay"
msgstr "Μεσολαβητής"
-#: plinth/modules/tor/templates/tor.html:84
+#: plinth/modules/tor/templates/tor.html:69
#, python-format
msgid ""
"If your %(box_name)s is behind a router or firewall, you should make sure "
@@ -6181,21 +6296,16 @@ msgstr ""
"θα πρέπει να βεβαιωθείτε ότι οι ακόλουθες θύρες είναι ανοιχτές και ότι οι "
"θύρες προωθούνται, εάν είναι απαραίτητο:"
-#: plinth/modules/tor/templates/tor.html:112
+#: plinth/modules/tor/templates/tor.html:97
msgid "SOCKS"
msgstr "SOCKS"
-#: plinth/modules/tor/templates/tor.html:115
+#: plinth/modules/tor/templates/tor.html:100
#, python-format
msgid "A Tor SOCKS port is available on your %(box_name)s on TCP port 9050."
msgstr "Μια θύρα Tor SOCKS είναι διαθέσιμη στη θύρα 9050 του %(box_name)s σας."
-#: plinth/modules/transmission/__init__.py:41
-#: plinth/modules/transmission/manifest.py:24
-msgid "Transmission"
-msgstr "Transmission"
-
-#: plinth/modules/transmission/__init__.py:48
+#: plinth/modules/transmission/__init__.py:27
msgid ""
"BitTorrent is a peer-to-peer file sharing protocol. Transmission daemon "
"handles Bitorrent file sharing. Note that BitTorrent is not anonymous."
@@ -6204,15 +6314,12 @@ msgstr ""
"πρόγραμμα Transmission χειρίζεται την κοινή χρήση αρχείων bitorrent. "
"Σημειώστε ότι το BitTorrent δεν είναι ανώνυμο."
-#: plinth/modules/ttrss/__init__.py:43 plinth/modules/ttrss/manifest.py:34
-msgid "Tiny Tiny RSS"
-msgstr "Tiny Tiny RSS"
+#: plinth/modules/transmission/__init__.py:48
+#: plinth/modules/transmission/manifest.py:9
+msgid "Transmission"
+msgstr "Transmission"
-#: plinth/modules/ttrss/__init__.py:47
-msgid "News Feed Reader"
-msgstr "Αναγνώστης ειδήσεων"
-
-#: plinth/modules/ttrss/__init__.py:50
+#: plinth/modules/ttrss/__init__.py:29
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 "
@@ -6222,7 +6329,7 @@ msgstr ""
"σχεδιασμένος να επιτρέπει την ανάγνωση ειδήσεων από οποιαδήποτε τοποθεσία, "
"ενώ δίνει την εντύπωση μιας πραγματικής εφαρμογής επιφάνειας εργασίας."
-#: plinth/modules/ttrss/__init__.py:54
+#: plinth/modules/ttrss/__init__.py:33
#, python-brace-format
msgid ""
"When enabled, Tiny Tiny RSS can be accessed by any χρήστη με {box_name} πιστοποιητικά."
-#: plinth/modules/ttrss/__init__.py:58
+#: plinth/modules/ttrss/__init__.py:37
msgid ""
"When using a mobile or desktop application for Tiny Tiny RSS, use the URL /tt-rss-app for "
@@ -6241,66 +6348,74 @@ msgstr ""
"Tiny Tiny RSS, χρησιμοποιήστε τη διεύθυνση URL /tt-rss-app για τη σύνδεση."
-#: plinth/modules/ttrss/__init__.py:65
+#: plinth/modules/ttrss/__init__.py:42
msgid "Read and subscribe to news feeds"
msgstr "Διαβάστε και εγγραφείτε τροφοδοσίες ειδήσεων"
-#: plinth/modules/ttrss/manifest.py:25
+#: plinth/modules/ttrss/__init__.py:56 plinth/modules/ttrss/manifest.py:19
+msgid "Tiny Tiny RSS"
+msgstr "Tiny Tiny RSS"
+
+#: plinth/modules/ttrss/__init__.py:57
+msgid "News Feed Reader"
+msgstr "Αναγνώστης ειδήσεων"
+
+#: plinth/modules/ttrss/manifest.py:10
msgid "Tiny Tiny RSS (Fork)"
msgstr "Tiny Tiny RSS (Fork)"
-#: plinth/modules/upgrades/__init__.py:37 plinth/templates/setup.html:89
-msgid "Update"
-msgstr "Ενημερωμένη έκδοση"
-
-#: plinth/modules/upgrades/__init__.py:40
+#: plinth/modules/upgrades/__init__.py:23
msgid "Check for and apply the latest software and security updates."
msgstr ""
"Ελέγξτε και εφαρμόστε τις πιο πρόσφατες ενημερώσεις λογισμικού και ασφαλείας."
-#: plinth/modules/upgrades/__init__.py:84
+#: plinth/modules/upgrades/__init__.py:38 plinth/templates/setup.html:74
+msgid "Update"
+msgstr "Ενημερωμένη έκδοση"
+
+#: plinth/modules/upgrades/__init__.py:71
#, fuzzy
#| msgid "FreedomBox Foundation"
msgid "FreedomBox Updated"
msgstr "Ίδρυμα FreedomBox"
-#: plinth/modules/upgrades/forms.py:28
+#: plinth/modules/upgrades/forms.py:13
msgid "Enable auto-update"
msgstr "Ενεργοποίηση αυτόματων ενημερώσεων"
-#: plinth/modules/upgrades/forms.py:29
+#: plinth/modules/upgrades/forms.py:14
msgid "When enabled, FreedomBox automatically updates once a day."
msgstr ""
"Όταν είναι ενεργοποιημένες, το Freedombox ενημερώνεται αυτόματα μία φορά την "
"ημέρα."
-#: plinth/modules/upgrades/templates/upgrades-new-release.html:24
+#: plinth/modules/upgrades/templates/upgrades-new-release.html:9
#, fuzzy, python-format
#| msgid "%(box_name)s is up to date."
msgid "%(box_name)s Updated"
msgstr "To %(box_name)s είναι ενημερωμένο."
-#: plinth/modules/upgrades/templates/upgrades-new-release.html:28
+#: plinth/modules/upgrades/templates/upgrades-new-release.html:13
#, python-format
msgid ""
"%(box_name)s has been updated to version %(version)s. See the release announcement."
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades-new-release.html:37
-#: plinth/templates/notifications.html:59
+#: plinth/modules/upgrades/templates/upgrades-new-release.html:22
+#: plinth/templates/notifications.html:44
msgid "Dismiss"
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades.html:45
+#: plinth/modules/upgrades/templates/upgrades.html:30
msgid "Update now"
msgstr "Ενημέρωση τώρα"
-#: plinth/modules/upgrades/templates/upgrades.html:54
+#: plinth/modules/upgrades/templates/upgrades.html:39
msgid "Updating..."
msgstr "Eνημερώνεται..."
-#: plinth/modules/upgrades/templates/upgrades.html:59
+#: plinth/modules/upgrades/templates/upgrades.html:44
msgid ""
"This may take a long time to complete. During an update, "
"you cannot install apps. Also, this web interface may be temporarily "
@@ -6312,46 +6427,42 @@ msgstr ""
"εμφανίσει σφάλμα. Σε αυτήν την περίπτωση, ανανεώστε τη σελίδα για να "
"συνεχίσετε."
-#: plinth/modules/upgrades/templates/upgrades.html:73
+#: plinth/modules/upgrades/templates/upgrades.html:58
msgid "Toggle recent update logs"
msgstr "Ενεργοποίηση αρχείων καταγραφής πρόσφατων ενημερώσεων"
-#: plinth/modules/upgrades/templates/upgrades_configure.html:26
-#: plinth/modules/upgrades/templates/upgrades_configure.html:27
-#: plinth/modules/upgrades/views.py:107
+#: plinth/modules/upgrades/templates/upgrades_configure.html:11
+#: plinth/modules/upgrades/templates/upgrades_configure.html:12
+#: plinth/modules/upgrades/views.py:89
msgid "Manual update"
msgstr "Μη αυτόματη ενημέρωση"
-#: plinth/modules/upgrades/views.py:66
+#: plinth/modules/upgrades/views.py:48
#, python-brace-format
msgid "Error when configuring unattended-upgrades: {error}"
msgstr "Σφάλμα κατά τη ρύθμιση των αυτόματων ενημερώσεων: {error}"
-#: plinth/modules/upgrades/views.py:70
+#: plinth/modules/upgrades/views.py:52
msgid "Automatic upgrades enabled"
msgstr "Oι αυτόματες ενημερώσεις ενεργοποιήθηκαν"
-#: plinth/modules/upgrades/views.py:73
+#: plinth/modules/upgrades/views.py:55
msgid "Automatic upgrades disabled"
msgstr "Oι αυτόματες ενημερώσεις απενεργοποιήθηκαν"
-#: plinth/modules/upgrades/views.py:75
+#: plinth/modules/upgrades/views.py:57
msgid "Settings unchanged"
msgstr "Οι ρυθμίσεις δεν άλλαξαν"
-#: plinth/modules/upgrades/views.py:101
+#: plinth/modules/upgrades/views.py:83
msgid "Upgrade process started."
msgstr "Ξεκίνησε η διαδικασία αναβάθμισης."
-#: plinth/modules/upgrades/views.py:104
+#: plinth/modules/upgrades/views.py:86
msgid "Starting upgrade failed."
msgstr "Η εκκίνηση της αναβάθμισης απέτυχε."
-#: plinth/modules/users/__init__.py:51
-msgid "Users and Groups"
-msgstr "Χρήστες και ομάδες"
-
-#: plinth/modules/users/__init__.py:54
+#: plinth/modules/users/__init__.py:37
msgid ""
"Create and managed user accounts. These accounts serve as centralized "
"authentication mechanism for most apps. Some apps further require a user "
@@ -6363,7 +6474,7 @@ msgstr ""
"είναι μέρος μιας ομάδας για να εξουσιοδοτήσουν το χρήστη να αποκτήσει "
"πρόσβαση στην εφαρμογή."
-#: plinth/modules/users/__init__.py:59
+#: plinth/modules/users/__init__.py:42
#, python-brace-format
msgid ""
"Any user may login to {box_name} web interface to see a list of apps "
@@ -6375,35 +6486,39 @@ msgstr ""
"σελίδα. Ωστόσο, μόνο οι χρήστες της ομάδας admin μπορούν να "
"τροποποιήσουν τις εφαρμογές ή τις ρυθμίσεις του συστήματος."
-#: plinth/modules/users/__init__.py:128
+#: plinth/modules/users/__init__.py:64
+msgid "Users and Groups"
+msgstr "Χρήστες και ομάδες"
+
+#: plinth/modules/users/__init__.py:115
#, python-brace-format
msgid "Check LDAP entry \"{search_item}\""
msgstr "Ελέγξτε την καταχώρηση LDAP \"{search_item}\""
-#: plinth/modules/users/forms.py:43
+#: plinth/modules/users/forms.py:28
msgid "Access to all services and system settings"
msgstr "Πρόσβαση σε όλες τις υπηρεσίες και τις ρυθμίσεις συστήματος"
-#: plinth/modules/users/forms.py:59
+#: plinth/modules/users/forms.py:44
msgid "Username is taken or is reserved."
msgstr "Το όνομα χρήστη είναι δεσμευμένο."
-#: plinth/modules/users/forms.py:87
+#: plinth/modules/users/forms.py:72
#, fuzzy
#| msgid "Invalid server name"
msgid "Enter a valid username."
msgstr "Μη έγκυρο όνομα διακομιστή"
-#: plinth/modules/users/forms.py:93
+#: plinth/modules/users/forms.py:78
msgid ""
"Required. 150 characters or fewer. English letters, digits and @/./-/_ only."
msgstr ""
-#: plinth/modules/users/forms.py:106 plinth/modules/users/forms.py:222
+#: plinth/modules/users/forms.py:91 plinth/modules/users/forms.py:207
msgid "Permissions"
msgstr "Δικαιώματα"
-#: plinth/modules/users/forms.py:109
+#: plinth/modules/users/forms.py:94
msgid ""
"Select which services should be available to the new user. The user will be "
"able to log in to services that support single sign-on through LDAP, if they "
@@ -6418,20 +6533,20 @@ msgstr ""
"υπηρεσίες. Μπορούν επίσης να συνδεθούν στο σύστημα μέσω του SSH και να έχουν "
"δικαιώματα διαχειριστή (sudo)."
-#: plinth/modules/users/forms.py:148 plinth/modules/users/forms.py:372
+#: plinth/modules/users/forms.py:133 plinth/modules/users/forms.py:357
msgid "Creating LDAP user failed."
msgstr "Η δημιουργία χρήστη LDAP απέτυχε."
-#: plinth/modules/users/forms.py:159
+#: plinth/modules/users/forms.py:144
#, python-brace-format
msgid "Failed to add new user to {group} group."
msgstr "Απέτυχε η προσθήκη νέου χρήστη στην ομάδα {group}."
-#: plinth/modules/users/forms.py:173
+#: plinth/modules/users/forms.py:158
msgid "Authorized SSH Keys"
msgstr "Εξουσιοδοτημένα κλειδιά SSH"
-#: plinth/modules/users/forms.py:175
+#: plinth/modules/users/forms.py:160
msgid ""
"Setting an SSH public key will allow this user to securely log in to the "
"system without using a password. You may enter multiple keys, one on each "
@@ -6442,82 +6557,82 @@ msgstr ""
"Μπορείτε να εισαγάγετε πολλαπλά κλειδιά, ένα σε κάθε γραμμή. Οι κενές "
"γραμμές και οι γραμμές που ξεκινούν με # θα αγνοηθούν."
-#: plinth/modules/users/forms.py:259
+#: plinth/modules/users/forms.py:244
msgid "Renaming LDAP user failed."
msgstr "Η μετονομασία του χρήστη LDAP απέτυχε."
-#: plinth/modules/users/forms.py:271
+#: plinth/modules/users/forms.py:256
msgid "Failed to remove user from group."
msgstr "Απέτυχε η κατάργηση του χρήστη από την ομάδα."
-#: plinth/modules/users/forms.py:282
+#: plinth/modules/users/forms.py:267
msgid "Failed to add user to group."
msgstr "Απέτυχε η προσθήκη χρήστη στην ομάδα."
-#: plinth/modules/users/forms.py:291
+#: plinth/modules/users/forms.py:276
msgid "Unable to set SSH keys."
msgstr "Δεν ήταν δυνατό να προστεθούν τα κλειδιά SSH."
-#: plinth/modules/users/forms.py:306
+#: plinth/modules/users/forms.py:291
msgid "Failed to change user status."
msgstr "Απέτυχε η αλλαγή της κατάστασης χρήστη."
-#: plinth/modules/users/forms.py:314
+#: plinth/modules/users/forms.py:299
msgid "Cannot delete the only administrator in the system."
msgstr "Δεν είναι δυνατή η διαγραφή του μοναδικού διαχειριστή στο σύστημα."
-#: plinth/modules/users/forms.py:346
+#: plinth/modules/users/forms.py:331
msgid "Changing LDAP user password failed."
msgstr "Η αλλαγή του κωδικού πρόσβασης χρήστη LDAP απέτυχε."
-#: plinth/modules/users/forms.py:381
+#: plinth/modules/users/forms.py:366
msgid "Failed to add new user to admin group."
msgstr "Αποτυχία προσθήκης νέου χρήστη στην ομάδα διαχειριστών."
-#: plinth/modules/users/forms.py:398
+#: plinth/modules/users/forms.py:383
msgid "Failed to restrict console access."
msgstr "Απέτυχε ο περιορισμός της πρόσβασης στην κονσόλα."
-#: plinth/modules/users/forms.py:410
+#: plinth/modules/users/forms.py:395
msgid "User account created, you are now logged in"
msgstr "Ο λογαριασμός χρήστη δημιουργήθηκε, τώρα είστε συνδεδεμένοι"
-#: plinth/modules/users/templates/users_change_password.html:26
+#: plinth/modules/users/templates/users_change_password.html:11
#, python-format
msgid "Change Password for %(username)s"
msgstr "Αλλαγή κωδικού πρόσβασης για το %(username)s"
-#: plinth/modules/users/templates/users_change_password.html:36
+#: plinth/modules/users/templates/users_change_password.html:21
msgid "Save Password"
msgstr "Αποθήκευση κωδικού πρόσβασης"
-#: plinth/modules/users/templates/users_create.html:32
-#: plinth/modules/users/templates/users_list.html:42
-#: plinth/modules/users/templates/users_list.html:44
-#: plinth/modules/users/views.py:57
+#: plinth/modules/users/templates/users_create.html:17
+#: plinth/modules/users/templates/users_list.html:27
+#: plinth/modules/users/templates/users_list.html:29
+#: plinth/modules/users/views.py:42
msgid "Create User"
msgstr "Δημιουργία χρήστη"
-#: plinth/modules/users/templates/users_delete.html:26
-#: plinth/modules/users/views.py:139
+#: plinth/modules/users/templates/users_delete.html:11
+#: plinth/modules/users/views.py:121
msgid "Delete User"
msgstr "Διαγραφή χρήστη"
-#: plinth/modules/users/templates/users_delete.html:29
+#: plinth/modules/users/templates/users_delete.html:14
#, python-format
msgid "Delete user %(username)s permanently?"
msgstr "Να διαγραφεί οριστικά ο χρήστης %(username)s ;"
-#: plinth/modules/users/templates/users_delete.html:38
+#: plinth/modules/users/templates/users_delete.html:23
#, python-format
msgid "Delete %(username)s"
msgstr "Διαγραφή %(username)s"
-#: plinth/modules/users/templates/users_firstboot.html:26
+#: plinth/modules/users/templates/users_firstboot.html:11
msgid "Administrator Account"
msgstr "Λογαριασμός διαχειριστή"
-#: plinth/modules/users/templates/users_firstboot.html:29
+#: plinth/modules/users/templates/users_firstboot.html:14
msgid ""
"Choose a username and password to access this web interface. The password "
"can be changed later. This user will be granted administrative privileges. "
@@ -6528,26 +6643,26 @@ msgstr ""
"αυτόν το χρήστη θα εκχωρούνται δικαιώματα διαχείρισης. Άλλοι χρήστες μπορούν "
"να προστεθούν αργότερα."
-#: plinth/modules/users/templates/users_firstboot.html:42
+#: plinth/modules/users/templates/users_firstboot.html:27
msgid "Create Account"
msgstr "Δημιουργία λογαριασμού"
-#: plinth/modules/users/templates/users_list.html:38
-#: plinth/modules/users/views.py:74
+#: plinth/modules/users/templates/users_list.html:23
+#: plinth/modules/users/views.py:59
msgid "Users"
msgstr "Χρήστες"
-#: plinth/modules/users/templates/users_list.html:57
+#: plinth/modules/users/templates/users_list.html:42
#, python-format
msgid "Delete user %(username)s"
msgstr "Διαγραφή χρήστη %(username)s"
-#: plinth/modules/users/templates/users_list.html:65
+#: plinth/modules/users/templates/users_list.html:50
#, python-format
msgid "Edit user %(username)s"
msgstr "Επεξεργασία χρήστη %(username)s"
-#: plinth/modules/users/templates/users_update.html:30
+#: plinth/modules/users/templates/users_update.html:15
#, python-format
msgid ""
"Use the change password form to "
@@ -6556,59 +6671,54 @@ msgstr ""
"Χρησιμοποιήστε τη φόρμα αλλαγής κωδικού "
"πρόσβασης για να αλλάξετε τον κωδικό πρόσβασης."
-#: plinth/modules/users/templates/users_update.html:42
-#: plinth/templates/language-selection.html:32
+#: plinth/modules/users/templates/users_update.html:27
+#: plinth/templates/language-selection.html:17
msgid "Save Changes"
msgstr "Αποθήκευση αλλαγών"
-#: plinth/modules/users/views.py:55
+#: plinth/modules/users/views.py:40
#, python-format
msgid "User %(username)s created."
msgstr "Ο χρήστης %(username)s δημιουργήθηκε."
-#: plinth/modules/users/views.py:93
+#: plinth/modules/users/views.py:75
#, python-format
msgid "User %(username)s updated."
msgstr "O χρήστης %(username)s ενημερώθηκε."
-#: plinth/modules/users/views.py:94
+#: plinth/modules/users/views.py:76
msgid "Edit User"
msgstr "Επεξεργασία χρήστη"
-#: plinth/modules/users/views.py:149
+#: plinth/modules/users/views.py:131
#, python-brace-format
msgid "User {user} deleted."
msgstr "Ο χρήστης {user} διαγράφηκε."
-#: plinth/modules/users/views.py:156
+#: plinth/modules/users/views.py:138
msgid "Deleting LDAP user failed."
msgstr "Η διαγραφή του χρήστη LDAP απέτυχε."
-#: plinth/modules/users/views.py:165
+#: plinth/modules/users/views.py:147
msgid "Change Password"
msgstr "Αλλαγή κωδικού πρόσβασης"
-#: plinth/modules/users/views.py:166
+#: plinth/modules/users/views.py:148
msgid "Password changed successfully."
msgstr "Ο κωδικός πρόσβασης άλλαξε με επιτυχία."
-#: plinth/modules/wireguard/__init__.py:38
-#: plinth/modules/wireguard/manifest.py:29
-msgid "WireGuard"
-msgstr ""
-
-#: plinth/modules/wireguard/__init__.py:43
+#: plinth/modules/wireguard/__init__.py:24
msgid "WireGuard is a fast, modern, secure VPN tunnel."
msgstr ""
-#: plinth/modules/wireguard/__init__.py:45
+#: plinth/modules/wireguard/__init__.py:26
#, python-brace-format
msgid ""
"It can be used to connect to a VPN provider which supports WireGuard, and to "
"route all outgoing traffic from {box_name} through the VPN."
msgstr ""
-#: plinth/modules/wireguard/__init__.py:49
+#: plinth/modules/wireguard/__init__.py:30
#, python-brace-format
msgid ""
"A second use case is to connect a mobile device to {box_name} while "
@@ -6616,65 +6726,70 @@ msgid ""
"securely relayed through {box_name}."
msgstr ""
-#: plinth/modules/wireguard/forms.py:47
+#: plinth/modules/wireguard/__init__.py:52
+#: plinth/modules/wireguard/manifest.py:14
+msgid "WireGuard"
+msgstr ""
+
+#: plinth/modules/wireguard/forms.py:32
#, fuzzy
#| msgid "Invalid kite name"
msgid "Invalid key."
msgstr "Μη έγκυρο όνομα kite"
-#: plinth/modules/wireguard/forms.py:76
-#: plinth/modules/wireguard/templates/wireguard.html:32
-#: plinth/modules/wireguard/templates/wireguard.html:89
-#: plinth/modules/wireguard/templates/wireguard_delete_server.html:38
+#: plinth/modules/wireguard/forms.py:61
+#: plinth/modules/wireguard/templates/wireguard.html:17
+#: plinth/modules/wireguard/templates/wireguard.html:74
+#: plinth/modules/wireguard/templates/wireguard_delete_server.html:23
#, fuzzy
#| msgid "Publish Key"
msgid "Public Key"
msgstr "Δημοσίευση κλειδιού"
-#: plinth/modules/wireguard/forms.py:77
+#: plinth/modules/wireguard/forms.py:62
msgid ""
"Public key of the peer. Example: "
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs= ."
msgstr ""
-#: plinth/modules/wireguard/forms.py:85
+#: plinth/modules/wireguard/forms.py:70
msgid "Endpoint of the server"
msgstr ""
-#: plinth/modules/wireguard/forms.py:86
+#: plinth/modules/wireguard/forms.py:71
msgid ""
"Domain name and port in the form \"ip:port\". Example: demo.wireguard."
"com:12912 ."
msgstr ""
-#: plinth/modules/wireguard/forms.py:91
+#: plinth/modules/wireguard/forms.py:76
#, fuzzy
#| msgid "Published key to keyserver."
msgid "Public key of the server"
msgstr "Δημοσιεύθηκε το κλειδί στο διακομιστή κλειδιών."
-#: plinth/modules/wireguard/forms.py:92
+#: plinth/modules/wireguard/forms.py:77
msgid ""
"Provided by the server operator, a long string of characters. Example: "
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs= ."
msgstr ""
-#: plinth/modules/wireguard/forms.py:97
+#: plinth/modules/wireguard/forms.py:82
msgid "Client IP address provided by server"
msgstr ""
-#: plinth/modules/wireguard/forms.py:98
+#: plinth/modules/wireguard/forms.py:83
msgid ""
"IP address assigned to this machine on the VPN after connecting to the "
"endpoint. This value is usually provided by the server operator. Example: "
"192.168.0.10."
msgstr ""
-#: plinth/modules/wireguard/forms.py:104
+#: plinth/modules/wireguard/forms.py:89
msgid "Private key of this machine"
msgstr ""
-#: plinth/modules/wireguard/forms.py:105
+#: plinth/modules/wireguard/forms.py:90
msgid ""
"Optional. New public/private keys are generated if left blank. Public key "
"can then be provided to the server. This is the recommended way. However, "
@@ -6682,187 +6797,187 @@ msgid ""
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs= ."
msgstr ""
-#: plinth/modules/wireguard/forms.py:113
+#: plinth/modules/wireguard/forms.py:98
msgid "Pre-shared key"
msgstr ""
-#: plinth/modules/wireguard/forms.py:114
+#: plinth/modules/wireguard/forms.py:99
msgid ""
"Optional. A shared secret key provided by the server to add an additional "
"layer of security. Fill in only if provided. Example: "
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs=."
msgstr ""
-#: plinth/modules/wireguard/forms.py:120
+#: plinth/modules/wireguard/forms.py:105
msgid "Use this connection to send all outgoing traffic"
msgstr ""
-#: plinth/modules/wireguard/forms.py:122
+#: plinth/modules/wireguard/forms.py:107
msgid "Typically checked for a VPN service though which all traffic is sent."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:25
+#: plinth/modules/wireguard/templates/wireguard.html:10
#, fuzzy
#| msgid "Chat Server"
msgid "As a Server"
msgstr "Διακομιστής συνομιλίας"
-#: plinth/modules/wireguard/templates/wireguard.html:27
+#: plinth/modules/wireguard/templates/wireguard.html:12
msgid "Peers allowed to connect to this server:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:33
+#: plinth/modules/wireguard/templates/wireguard.html:18
msgid "Allowed IPs"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:34
-#: plinth/modules/wireguard/templates/wireguard.html:90
+#: plinth/modules/wireguard/templates/wireguard.html:19
+#: plinth/modules/wireguard/templates/wireguard.html:75
#, fuzzy
#| msgid "Create Connection"
msgid "Last Connected Time"
msgstr "Δημιουργία σύνδεσης"
-#: plinth/modules/wireguard/templates/wireguard.html:53
+#: plinth/modules/wireguard/templates/wireguard.html:38
#, python-format
msgid "No peers configured to connect to this %(box_name)s yet."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:62
+#: plinth/modules/wireguard/templates/wireguard.html:47
#, python-format
msgid "Public key for this %(box_name)s:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:68
+#: plinth/modules/wireguard/templates/wireguard.html:53
#, fuzzy
#| msgid "No shares currently configured."
msgid "Not configured yet."
msgstr "Δεν έχουν ρυθμιστεί μερίσματα."
-#: plinth/modules/wireguard/templates/wireguard.html:72
+#: plinth/modules/wireguard/templates/wireguard.html:57
#, fuzzy
#| msgid "Add new introducer"
msgid "Add a new peer"
msgstr "Προσθέστε νέο εισαγωγέα"
-#: plinth/modules/wireguard/templates/wireguard.html:76
-#: plinth/modules/wireguard/views.py:69
+#: plinth/modules/wireguard/templates/wireguard.html:61
+#: plinth/modules/wireguard/views.py:51
msgid "Add Allowed Client"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:79
+#: plinth/modules/wireguard/templates/wireguard.html:64
#, fuzzy
#| msgid "Chat Client"
msgid "As a Client"
msgstr "Πρόγραμμα-πελάτης συνομιλίας"
-#: plinth/modules/wireguard/templates/wireguard.html:81
+#: plinth/modules/wireguard/templates/wireguard.html:66
#, python-format
msgid "Servers that %(box_name)s will connect to:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:88
-#: plinth/modules/wireguard/templates/wireguard_delete_server.html:34
+#: plinth/modules/wireguard/templates/wireguard.html:73
+#: plinth/modules/wireguard/templates/wireguard_delete_server.html:19
msgid "Endpoint"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:111
+#: plinth/modules/wireguard/templates/wireguard.html:96
#, fuzzy
#| msgid "Authentication to remote server failed."
msgid "No connections to remote servers are configured yet."
msgstr "Ο έλεγχος ταυτότητας στον απομακρυσμένο διακομιστή απέτυχε."
-#: plinth/modules/wireguard/templates/wireguard.html:119
+#: plinth/modules/wireguard/templates/wireguard.html:104
#, fuzzy
#| msgid "Add new introducer"
msgid "Add a new server"
msgstr "Προσθέστε νέο εισαγωγέα"
-#: plinth/modules/wireguard/templates/wireguard.html:123
-#: plinth/modules/wireguard/views.py:178
+#: plinth/modules/wireguard/templates/wireguard.html:108
+#: plinth/modules/wireguard/views.py:160
#, fuzzy
#| msgid "Add Connection"
msgid "Add Connection to Server"
msgstr "Προσθήκη σύνδεσης"
-#: plinth/modules/wireguard/templates/wireguard_add_client.html:34
+#: plinth/modules/wireguard/templates/wireguard_add_client.html:19
#, fuzzy
#| msgid "IRC Client"
msgid "Add Client"
msgstr "Πελάτης IRC"
-#: plinth/modules/wireguard/templates/wireguard_delete_client.html:29
+#: plinth/modules/wireguard/templates/wireguard_delete_client.html:14
#, fuzzy
#| msgid "Are you sure that you want to remove this repository?"
msgid "Are you sure that you want to delete this client?"
msgstr "Είστε βέβαιοι ότι θέλετε να καταργήσετε αυτό το αποθετήριο;"
-#: plinth/modules/wireguard/templates/wireguard_delete_server.html:29
+#: plinth/modules/wireguard/templates/wireguard_delete_server.html:14
#, fuzzy
#| msgid "Are you sure that you want to remove this repository?"
msgid "Are you sure that you want to delete this server?"
msgstr "Είστε βέβαιοι ότι θέλετε να καταργήσετε αυτό το αποθετήριο;"
-#: plinth/modules/wireguard/templates/wireguard_edit_client.html:34
+#: plinth/modules/wireguard/templates/wireguard_edit_client.html:19
#, fuzzy
#| msgid "Chat Client"
msgid "Update Client"
msgstr "Πρόγραμμα-πελάτης συνομιλίας"
-#: plinth/modules/wireguard/templates/wireguard_edit_server.html:34
+#: plinth/modules/wireguard/templates/wireguard_edit_server.html:19
#, fuzzy
#| msgid "Create Connection"
msgid "Update Connection"
msgstr "Δημιουργία σύνδεσης"
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:27
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:12
#, python-format
msgid ""
"%(box_name)s will allow this client to connect to it. Ensure that the client "
"is configured with the following information."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:35
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:20
msgid "Client public key:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:39
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:24
msgid "IP address to use for client:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:43
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:46
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:28
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:31
msgid "Pre-shared key:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:47
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:32
#, fuzzy
#| msgid "Server domain"
msgid "Server endpoints:"
msgstr "Όνομα διαδικτύου διακομιστή"
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:55
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:42
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:40
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:27
#, fuzzy
#| msgid "Select verified SSH public key"
msgid "Server public key:"
msgstr "Επιλογή εξακριβωμένου δημόσιου κλειδιού SSH"
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:65
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:64
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:50
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:49
msgid "Data transmitted:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:69
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:68
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:54
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:53
msgid "Data received:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:73
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:72
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:58
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:57
msgid "Latest handshake:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:29
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:14
#, python-format
msgid ""
"%(box_name)s will attempt to reach a WireGuard server with the following "
@@ -6870,151 +6985,151 @@ msgid ""
"public key and IP address."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:38
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:23
#, fuzzy
#| msgid "Server domain"
msgid "Server endpoint:"
msgstr "Όνομα διαδικτύου διακομιστή"
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:50
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:35
msgid "Public key of this machine:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:54
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:39
msgid "IP address of this machine:"
msgstr ""
-#: plinth/modules/wireguard/views.py:64
+#: plinth/modules/wireguard/views.py:46
#, fuzzy
#| msgid "Add new introducer"
msgid "Added new client."
msgstr "Προσθέστε νέο εισαγωγέα"
-#: plinth/modules/wireguard/views.py:79 plinth/modules/wireguard/views.py:138
+#: plinth/modules/wireguard/views.py:61 plinth/modules/wireguard/views.py:120
#, fuzzy
#| msgid "A share with this name already exists."
msgid "Client with public key already exists"
msgstr "Υπάρχει ήδη ένα μέρισμα με αυτό το όνομα."
-#: plinth/modules/wireguard/views.py:92
+#: plinth/modules/wireguard/views.py:74
#, fuzzy
#| msgid "Email Client"
msgid "Allowed Client"
msgstr "Πρόγραμμα-πελάτης ηλεκτρονικού ταχυδρομείου"
-#: plinth/modules/wireguard/views.py:114
+#: plinth/modules/wireguard/views.py:96
#, fuzzy
#| msgid "Update setup"
msgid "Updated client."
msgstr "Ενημέρωση ρυθμίσεων"
-#: plinth/modules/wireguard/views.py:119
+#: plinth/modules/wireguard/views.py:101
#, fuzzy
#| msgid "Email Client"
msgid "Modify Client"
msgstr "Πρόγραμμα-πελάτης ηλεκτρονικού ταχυδρομείου"
-#: plinth/modules/wireguard/views.py:152
+#: plinth/modules/wireguard/views.py:134
msgid "Delete Allowed Client"
msgstr ""
-#: plinth/modules/wireguard/views.py:161
+#: plinth/modules/wireguard/views.py:143
#, fuzzy
#| msgid "Archive deleted."
msgid "Client deleted."
msgstr "Το αρχείο διαγράφηκε."
-#: plinth/modules/wireguard/views.py:163
+#: plinth/modules/wireguard/views.py:145
#, fuzzy
#| msgid "Repository not found"
msgid "Client not found"
msgstr "Το αποθετήριο δεν βρέθηκε"
-#: plinth/modules/wireguard/views.py:173
+#: plinth/modules/wireguard/views.py:155
#, fuzzy
#| msgid "Added custom service"
msgid "Added new server."
msgstr "Προστέθηκε τροποποιημένη υπηρεσία"
-#: plinth/modules/wireguard/views.py:194
+#: plinth/modules/wireguard/views.py:176
#, fuzzy
#| msgid "Connection Type"
msgid "Connection to Server"
msgstr "Τύπος σύνδεσης"
-#: plinth/modules/wireguard/views.py:212
+#: plinth/modules/wireguard/views.py:194
#, fuzzy
#| msgid "Update setup"
msgid "Updated server."
msgstr "Ενημέρωση ρυθμίσεων"
-#: plinth/modules/wireguard/views.py:217
+#: plinth/modules/wireguard/views.py:199
#, fuzzy
#| msgid "Edit Connection"
msgid "Modify Connection to Server"
msgstr "Επεξεργασία σύνδεσης"
-#: plinth/modules/wireguard/views.py:254
+#: plinth/modules/wireguard/views.py:236
#, fuzzy
#| msgid "Delete Connection"
msgid "Delete Connection to Server"
msgstr "Διαγραφή σύνδεσης"
-#: plinth/modules/wireguard/views.py:274
+#: plinth/modules/wireguard/views.py:256
#, fuzzy
#| msgid "Share deleted."
msgid "Server deleted."
msgstr "Το μέρισμα διαγράφηκε."
-#: plinth/network.py:42
+#: plinth/network.py:27
msgid "PPPoE"
msgstr "PPPoE"
-#: plinth/network.py:43
+#: plinth/network.py:28
msgid "Generic"
msgstr "Γενικός"
-#: plinth/package.py:137
+#: plinth/package.py:122
msgid "Error during installation"
msgstr "Σφάλμα κατά την εγκατάσταση"
-#: plinth/package.py:159
+#: plinth/package.py:144
msgid "installing"
msgstr "Εγκαθίσταται"
-#: plinth/package.py:161
+#: plinth/package.py:146
msgid "downloading"
msgstr "Λήψη"
-#: plinth/package.py:163
+#: plinth/package.py:148
msgid "media change"
msgstr "Αλλαγή μέσου"
-#: plinth/package.py:165
+#: plinth/package.py:150
#, python-brace-format
msgid "configuration file: {file}"
msgstr "αρχείο ρυθμίσεων: {file}"
-#: plinth/templates/403.html:25
+#: plinth/templates/403.html:10
msgid "403 Forbidden"
msgstr "403 Απαγορεύεται"
-#: plinth/templates/403.html:29
+#: plinth/templates/403.html:14
#, python-format
msgid "You don't have permission to access %(request_path)s on this server."
msgstr ""
"Δεν έχετε δικαίωμα πρόσβασης στο %(request_path)s σε αυτόν το διακομιστή."
-#: plinth/templates/404.html:25
+#: plinth/templates/404.html:10
msgid "404"
msgstr "404"
-#: plinth/templates/404.html:28
+#: plinth/templates/404.html:13
#, python-format
msgid "Requested page %(request_path)s was not found."
msgstr "Η σελίδα %(request_path)s που ζητήθηκε δεν βρέθηκε."
-#: plinth/templates/404.html:34
+#: plinth/templates/404.html:19
msgid ""
"If you believe this missing page should exist, please file a bug at the "
"FreedomBox Service (Plinth) project issue tracker"
"a>."
-#: plinth/templates/500.html:25
+#: plinth/templates/500.html:10
msgid "500"
msgstr "500"
-#: plinth/templates/500.html:29
+#: plinth/templates/500.html:14
#, python-format
msgid ""
"This is an internal error and not something you caused or can fix. Please "
@@ -7044,115 +7159,119 @@ msgstr ""
"\"%(status_log_url)s\">αρχείο καταγραφής κατάστασης στην αναφορά "
"σφάλματος."
-#: plinth/templates/app.html:47
+#: plinth/templates/app-header.html:22
+msgid "Installation"
+msgstr "Εγκατάσταση"
+
+#: plinth/templates/app.html:32
#, python-format
msgid "Service %(service_name)s is running."
msgstr "Η υπηρεσία %(service_name)s εκτελείται."
-#: plinth/templates/app.html:52
+#: plinth/templates/app.html:37
#, python-format
msgid "Service %(service_name)s is not running."
msgstr "Η υπηρεσία %(service_name)s δεν εκτελείται."
-#: plinth/templates/base.html:50
+#: plinth/templates/base.html:35
#, python-format
msgid "Core functionality and web interface for %(box_name)s"
msgstr "Βασική λειτουργικότητα και σελίδα ιστού για το %(box_name)s"
-#: plinth/templates/base.html:96
+#: plinth/templates/base.html:81
msgid "Toggle navigation"
msgstr "Αλλαγή πλοήγησης"
-#: plinth/templates/base.html:120 plinth/templates/base.html:123
+#: plinth/templates/base.html:105 plinth/templates/base.html:108
msgid "Home"
msgstr "Κεντρική σελίδα"
-#: plinth/templates/base.html:128 plinth/templates/base.html:132
+#: plinth/templates/base.html:113 plinth/templates/base.html:117
msgid "Apps"
msgstr "Εφαρμογές"
-#: plinth/templates/base.html:137 plinth/templates/base.html:141
+#: plinth/templates/base.html:122 plinth/templates/base.html:126
msgid "System"
msgstr "Σύστημα"
-#: plinth/templates/base.html:173 plinth/templates/base.html:174
+#: plinth/templates/base.html:158 plinth/templates/base.html:159
msgid "Change password"
msgstr "Αλλαγή κωδικού πρόσβασης"
-#: plinth/templates/base.html:181 plinth/templates/base.html:182
+#: plinth/templates/base.html:166 plinth/templates/base.html:167
msgid "Restart"
msgstr "Κάνετε επανεκκίνηση"
-#: plinth/templates/base.html:187 plinth/templates/base.html:188
+#: plinth/templates/base.html:172 plinth/templates/base.html:173
msgid "Shut down"
msgstr "ΤΕΡΜΑΤΙΣΜΟΣ ΛΕΙΤΟΥΡΓΙΑΣ"
-#: plinth/templates/base.html:195 plinth/templates/base.html:196
-#: plinth/templates/base.html:220 plinth/templates/base.html:222
+#: plinth/templates/base.html:180 plinth/templates/base.html:181
+#: plinth/templates/base.html:205 plinth/templates/base.html:207
msgid "Log out"
msgstr "Αποσύνδεση"
-#: plinth/templates/base.html:204 plinth/templates/base.html:207
+#: plinth/templates/base.html:189 plinth/templates/base.html:192
msgid "Select language"
msgstr "Επιλογή γλώσσας"
-#: plinth/templates/base.html:212 plinth/templates/base.html:214
+#: plinth/templates/base.html:197 plinth/templates/base.html:199
msgid "Log in"
msgstr "Σύνδεση"
-#: plinth/templates/clients.html:32
+#: plinth/templates/clients.html:17
msgid "Web"
msgstr "Ιστός"
-#: plinth/templates/clients.html:57
+#: plinth/templates/clients.html:42
msgid "Desktop"
msgstr "Επιφάνειας εργασίας"
-#: plinth/templates/clients.html:68
+#: plinth/templates/clients.html:53
msgid "GNU/Linux"
msgstr "GNU/Linux"
-#: plinth/templates/clients.html:70
+#: plinth/templates/clients.html:55
msgid "Windows"
msgstr "Windows"
-#: plinth/templates/clients.html:72
+#: plinth/templates/clients.html:57
msgid "macOS"
msgstr "macOS"
-#: plinth/templates/clients.html:88
+#: plinth/templates/clients.html:73
msgid "Mobile"
msgstr "Κινητό"
-#: plinth/templates/clients.html:99
+#: plinth/templates/clients.html:84
msgid "Play Store"
msgstr "Play Store"
-#: plinth/templates/clients.html:101
+#: plinth/templates/clients.html:86
msgid "F-Droid"
msgstr "F-Droid"
-#: plinth/templates/clients.html:103
+#: plinth/templates/clients.html:88
msgid "App Store"
msgstr "Κατάστημα εφαρμογών"
-#: plinth/templates/clients.html:119
+#: plinth/templates/clients.html:104
msgid "Package"
msgstr "Πακέτο"
-#: plinth/templates/clients.html:126
+#: plinth/templates/clients.html:111
msgid "Debian:"
msgstr "Debian:"
-#: plinth/templates/clients.html:129
+#: plinth/templates/clients.html:114
msgid "Homebrew:"
msgstr "Homebrew:"
-#: plinth/templates/clients.html:132
+#: plinth/templates/clients.html:117
msgid "RPM:"
msgstr "RPM:"
-#: plinth/templates/first_setup.html:39
+#: plinth/templates/first_setup.html:24
#, python-format
msgid ""
"Please wait for %(box_name)s to finish installation. You can start using "
@@ -7161,11 +7280,7 @@ msgstr ""
"Περιμένετε να ολοκληρωθεί η εγκατάσταση του %(box_name)s. Μπορείτε να "
"αρχίσετε να χρησιμοποιείτε το %(box_name)s μόλις ολοκληρωθεί."
-#: plinth/templates/header.html:36
-msgid "Installation"
-msgstr "Εγκατάσταση"
-
-#: plinth/templates/index.html:37
+#: plinth/templates/index.html:22
#, python-format
msgid ""
"Enable some applications to add shortcuts to "
@@ -7174,11 +7289,11 @@ msgstr ""
"Ενεργοποιήστε μερικές εφαρμογές για να "
"προσθέσετε συντομεύσεις σε αυτήν τη σελίδα."
-#: plinth/templates/index.html:59
+#: plinth/templates/index.html:44
msgid "Configure »"
msgstr "Ρύθμιση παραμέτρων »"
-#: plinth/templates/index.html:115
+#: plinth/templates/index.html:100
#, python-format
msgid ""
"%(box_name)s, a Debian pure blend, is a 100%% free software self-hosting web "
@@ -7190,7 +7305,7 @@ msgstr ""
"Παρέχει εργαλεία επικοινωνίας που σέβονται την ιδιωτική σας ζωή και τα "
"προσωπικά δεδομένα σας."
-#: plinth/templates/index.html:124
+#: plinth/templates/index.html:109
#, python-format
msgid ""
"This portal is a part of the %(box_name)s web interface. %(box_name)s is "
@@ -7201,44 +7316,44 @@ msgstr ""
"είναι ελεύθερο λογισμικό, που διανέμεται με τη γενική άδεια δημόσιας χρήσης "
"GNU Affero, έκδοση 3 ή νεότερη."
-#: plinth/templates/index.html:144
+#: plinth/templates/index.html:129
msgid "Homepage"
msgstr "Αρχική σελίδα"
-#: plinth/templates/index.html:147
+#: plinth/templates/index.html:132
msgid "Source Code"
msgstr "Πηγαίος Κώδικας"
-#: plinth/templates/index.html:150
+#: plinth/templates/index.html:135
msgid "Donate"
msgstr "Δωρεά"
-#: plinth/templates/index.html:154
+#: plinth/templates/index.html:139
msgid "FreedomBox Foundation"
msgstr "Ίδρυμα FreedomBox"
-#: plinth/templates/index.html:161
+#: plinth/templates/index.html:146
msgid "IRC Chatroom"
msgstr "Αίθουσα συνομιλίας IRC"
-#: plinth/templates/index.html:166
+#: plinth/templates/index.html:151
msgid "Mailing list"
msgstr "Λίστα ηλεκτρονικού ταχυδρομείου"
-#: plinth/templates/internal-zone.html:26
+#: plinth/templates/internal-zone.html:11
#, python-format
msgid "%(service_name)s is available only on internal networks."
msgstr ""
"Η υπηρεσία %(service_name)s είναι διαθέσιμη μόνο σε εσωτερικά "
"δίκτυα."
-#: plinth/templates/internal-zone.html:32
+#: plinth/templates/internal-zone.html:17
msgid "Currently there are no network interfaces configured as internal."
msgstr ""
"Αυτή τη στιγμή δεν υπάρχουν διασυνδέσεις δικτύου που έχουν ρυθμιστεί ως "
"εσωτερικές."
-#: plinth/templates/internal-zone.html:34
+#: plinth/templates/internal-zone.html:19
#, python-format
msgid ""
"Currently the following network interfaces are configured as internal: "
@@ -7247,17 +7362,17 @@ msgstr ""
"Προς το παρόν οι ακόλουθες διασυνδέσεις δικτύου έχουν ρυθμιστεί ως "
"εσωτερικές: %(interface_list)s"
-#: plinth/templates/notifications-dropdown.html:26
+#: plinth/templates/notifications-dropdown.html:11
#, fuzzy
#| msgid "No certificate"
msgid "Notifications"
msgstr "Δεν υπάρχει πιστοποιητικό"
-#: plinth/templates/port-forwarding-info.html:23
+#: plinth/templates/port-forwarding-info.html:8
msgid "Port Forwarding"
msgstr "Προώθηση θυρών"
-#: plinth/templates/port-forwarding-info.html:26
+#: plinth/templates/port-forwarding-info.html:11
#, python-format
msgid ""
"If your FreedomBox is behind a router, you will need to set up port "
@@ -7268,15 +7383,15 @@ msgstr ""
"προώθηση των θυρών στο δρομολογητή σας. Θα πρέπει να προωθήσετε τις "
"ακόλουθες θύρες για %(service_name)s:"
-#: plinth/templates/setup.html:51
+#: plinth/templates/setup.html:36
msgid "Install this application?"
msgstr "Να εγκατασταθεί αυτή η εφαρμογή;"
-#: plinth/templates/setup.html:55
+#: plinth/templates/setup.html:40
msgid "This application needs an update. Update now?"
msgstr "Αυτή η εφαρμογή χρειάζεται μια ενημέρωση. Ενημέρωση τώρα?"
-#: plinth/templates/setup.html:66
+#: plinth/templates/setup.html:51
msgid ""
"Another installation or upgrade is already running. Please wait for a few "
"moments before trying again."
@@ -7284,50 +7399,50 @@ msgstr ""
"Εκτελείται ήδη μια άλλη εγκατάσταση ή αναβάθμιση. Παρακαλώ περιμένετε λίγα "
"λεπτά πριν προσπαθήσετε ξανά."
-#: plinth/templates/setup.html:73
+#: plinth/templates/setup.html:58
msgid "This application is currently not available in your distribution."
msgstr ""
"Αυτή η εφαρμογή δεν είναι αυτή τη στιγμή διαθέσιμη στο λειτουργικό σας."
-#: plinth/templates/setup.html:87
+#: plinth/templates/setup.html:72
msgid "Install"
msgstr "Εγκατάσταση"
-#: plinth/templates/setup.html:98
+#: plinth/templates/setup.html:83
msgid "Performing pre-install operation"
msgstr "Εκτελείται διαδικασία πριν από την εγκατάσταση"
-#: plinth/templates/setup.html:102
+#: plinth/templates/setup.html:87
msgid "Performing post-install operation"
msgstr "Εκτέλεση διαδικασία μετά την εγκατάσταση"
-#: plinth/templates/setup.html:107
+#: plinth/templates/setup.html:92
#, python-format
msgid "Installing %(package_names)s: %(status)s"
msgstr "Εγκατάσταση του %(package_names)s: %(status)s"
-#: plinth/templates/setup.html:117
+#: plinth/templates/setup.html:102
#, python-format
msgid "%(percentage)s%% complete"
msgstr "ολοκληρώθηκε το %(percentage)s%%"
-#: plinth/templates/toolbar.html:38
+#: plinth/templates/toolbar.html:23
msgid "Launch web client"
msgstr "Εκτέλεση περιηγητή ιστού"
-#: plinth/templates/toolbar.html:47
+#: plinth/templates/toolbar.html:32
msgid "Client Apps"
msgstr "Πελάτες εφαρμογές"
-#: plinth/views.py:179
+#: plinth/views.py:189
msgid "Application enabled"
msgstr "Η εφαρμογή ενεργοποιήθηκε"
-#: plinth/views.py:182
+#: plinth/views.py:192
msgid "Application disabled"
msgstr "Η εφαρμογή απενεργοποιήθηκε"
-#: plinth/web_framework.py:190
+#: plinth/web_framework.py:107
msgid "Gujarati"
msgstr "Gujarati"
diff --git a/plinth/locale/es/LC_MESSAGES/django.po b/plinth/locale/es/LC_MESSAGES/django.po
index ad8d8498e..eff146421 100644
--- a/plinth/locale/es/LC_MESSAGES/django.po
+++ b/plinth/locale/es/LC_MESSAGES/django.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2020-02-14 21:26+0200\n"
+"POT-Creation-Date: 2020-02-24 19:12-0500\n"
"PO-Revision-Date: 2020-02-24 21:32+0000\n"
"Last-Translator: Luis A. Arizmendi This means that devices on the Internet can reach you when you are " +"connected to the Internet. Every time you connect to the Internet with your " +"Internet Service Provider (ISP), you may get a different IP address, " +"especially after some offline time. Many ISPs offer this type of " +"connectivity. If you have a public IP address but are unsure if it changes " +"over time or not, it is safer to choose this option.
" +msgstr "" + #: plinth/modules/networks/forms.py:313 +#, python-brace-format +msgid "" +"I have a public IP address that does not change overtime (recommended)This means that devices on the Internet can reach you " +"when you are connected to the Internet. Every time you connect to the " +"Internet with your Internet Service Provider (ISP), you always get the same " +"IP address. This is the most trouble-free setup for many {box_name} services " +"but very few ISPs offer this. You may be able to get this service from your " +"ISP by making an additional payment.
" +msgstr "" + +#: plinth/modules/networks/forms.py:326 +#, python-brace-format +msgid "" +"I dont have a public IP addressThis means that " +"devices on the Internet can not reach you when you are connected to " +"the Internet. Every time you connect to the Internet with your Internet " +"Service Provider (ISP), you get an IP address that is only relevant for " +"local networks. Many ISPs offer this type of connectivity. This is the most " +"troublesome situation for hosting services at home. {box_name} provides many " +"workaround solutions but each solution has some limitations.
" +msgstr "" + +#: plinth/modules/networks/forms.py:351 msgid "Preferred router configuration" msgstr "Configuración del router preferida" -#: plinth/modules/networks/forms.py:318 -#, python-brace-format +#: plinth/modules/networks/forms.py:356 +#, fuzzy, python-brace-format +#| msgid "" +#| "Use DMZ feature to forward all trafficMost " +#| "routers provide a configuration setting called DMZ. This will allow the " +#| "router to forward all incoming traffic from the internet to a single IP " +#| "address such as the {box_name}'s address. First remember to configure a " +#| "static local IP address for your {box_name} in your router's " +#| "configuration.
" msgid "" -"Use DMZ feature to forward all trafficMost routers " -"provide a configuration setting called DMZ. This will allow the router to " -"forward all incoming traffic from the internet to a single IP address such " -"as the {box_name}'s address. First remember to configure a static local IP " -"address for your {box_name} in your router's configuration.
" +"Use DMZ feature to forward all traffic (recommended)Most routers provide a configuration setting called DMZ. This will allow " +"the router to forward all incoming traffic from the Internet to a single IP " +"address such as the {box_name}'s IP address. First remember to configure a " +"static local IP address for your {box_name} in your router's configuration." +"p>" msgstr "" "Emplee DMZ para dirigir el tráfico de la red
. La " "mayoría de los routers proporcionan una función DMZ que permite dirigir el " @@ -3520,10 +3598,19 @@ msgstr "" "{box_name}. Recuerde configurar su {box_name} con una IP estática en su " "router.
" -#: plinth/modules/networks/forms.py:332 -#, python-brace-format +#: plinth/modules/networks/forms.py:368 +#, fuzzy, python-brace-format +#| msgid "" +#| "Forward Specific Traffic as needed by each applicationYou may alternatively choose to forward only specific traffic to " +#| "your {box_name}. This is ideal if you have other servers like {box_name} " +#| "in your network or if your router does not support DMZ feature. All " +#| "applications that provide a web interface need you to forward traffic " +#| "from ports 80 and 443 to work. Each of the other applications will " +#| "suggest which port(s) need to be forwarded for that application to work." +#| "p>" msgid "" -"Forward Specific Traffic as needed by each application
You may alternatively choose to forward only specific traffic to your " "{box_name}. This is ideal if you have other servers like {box_name} in your " "network or if your router does not support DMZ feature. All applications " @@ -3539,9 +3626,15 @@ msgstr "" "puertos 80 y 443 para funcionar. Otras aplicaciones sugerirán qué puertos es " "necesario redirigir para su funcionamiento.
" -#: plinth/modules/networks/forms.py:349 +#: plinth/modules/networks/forms.py:382 +#, fuzzy +#| msgid "" +#| "Router is currently unconfiguredChoose this if " +#| "you have not configured or are unable to configure the router currently " +#| "and wish to be reminded later. Some of the other configuration steps may " +#| "fail.
" msgid "" -"Router is currently unconfiguredChoose this if you " +"Router is currently unconfigured
Choose this if you " "have not configured or are unable to configure the router currently and wish " "to be reminded later. Some of the other configuration steps may fail.
" msgstr "" @@ -3550,257 +3643,263 @@ msgstr "" "que se le recuerde más tarde. Puede que alguno de los siguientes pasos de la " "configuración falle." -#: plinth/modules/networks/networks.py:43 +#: plinth/modules/networks/networks.py:32 msgid "Network Connections" msgstr "Conexiones de red" -#: plinth/modules/networks/networks.py:59 +#: plinth/modules/networks/networks.py:46 msgid "Cannot show connection: Connection not found." msgstr "No se puede mostrar la conexión: no se encontró." -#: plinth/modules/networks/networks.py:94 +#: plinth/modules/networks/networks.py:81 msgid "Connection Information" msgstr "Información de la conexión" -#: plinth/modules/networks/networks.py:108 +#: plinth/modules/networks/networks.py:95 msgid "Cannot edit connection: Connection not found." msgstr "No se puede editar la conexión: no se encontró." -#: plinth/modules/networks/networks.py:114 +#: plinth/modules/networks/networks.py:101 msgid "This type of connection is not yet understood." msgstr "Este tipo de conexión no está aún soportada." -#: plinth/modules/networks/networks.py:136 -#: plinth/modules/networks/networks.py:220 -#: plinth/modules/networks/templates/connections_edit.html:35 +#: plinth/modules/networks/networks.py:123 +#: plinth/modules/networks/networks.py:207 +#: plinth/modules/networks/templates/connections_edit.html:20 msgid "Edit Connection" msgstr "Editar conexión" -#: plinth/modules/networks/networks.py:232 +#: plinth/modules/networks/networks.py:219 #, python-brace-format msgid "Activated connection {name}." msgstr "Activar conexión {name}." -#: plinth/modules/networks/networks.py:236 +#: plinth/modules/networks/networks.py:223 msgid "Failed to activate connection: Connection not found." msgstr "Ha fallado la activación de la conexión: no se encontró." -#: plinth/modules/networks/networks.py:242 +#: plinth/modules/networks/networks.py:229 #, python-brace-format msgid "Failed to activate connection {name}: No suitable device is available." msgstr "" "Ha fallado la activación de la conexión {name}: no hay ningún dispositivo " "disponible." -#: plinth/modules/networks/networks.py:255 +#: plinth/modules/networks/networks.py:242 #, python-brace-format msgid "Deactivated connection {name}." msgstr "Conexión {name} desactivada." -#: plinth/modules/networks/networks.py:259 +#: plinth/modules/networks/networks.py:246 msgid "Failed to de-activate connection: Connection not found." msgstr "Ha fallado la desactivación de la conexión: no se encontró." -#: plinth/modules/networks/networks.py:269 -#: plinth/modules/networks/templates/connections_list.html:62 -#: plinth/modules/networks/templates/connections_list.html:64 +#: plinth/modules/networks/networks.py:256 +#: plinth/modules/networks/templates/connections_list.html:12 +#: plinth/modules/networks/templates/connections_list.html:14 msgid "Nearby Wi-Fi Networks" msgstr "Redes Wi-Fi cercanas" -#: plinth/modules/networks/networks.py:293 -#: plinth/modules/networks/templates/connections_list.html:67 -#: plinth/modules/networks/templates/connections_list.html:69 -#: plinth/modules/wireguard/templates/wireguard_add_server.html:34 +#: plinth/modules/networks/networks.py:280 +#: plinth/modules/networks/templates/connections_list.html:17 +#: plinth/modules/networks/templates/connections_list.html:19 +#: plinth/modules/wireguard/templates/wireguard_add_server.html:19 msgid "Add Connection" msgstr "Añadir conexión" -#: plinth/modules/networks/networks.py:311 +#: plinth/modules/networks/networks.py:298 msgid "Adding New Generic Connection" msgstr "Añadir nueva conexión genérica" -#: plinth/modules/networks/networks.py:329 +#: plinth/modules/networks/networks.py:316 msgid "Adding New Ethernet Connection" msgstr "Añadir nueva conexión Ethernet" -#: plinth/modules/networks/networks.py:347 +#: plinth/modules/networks/networks.py:334 msgid "Adding New PPPoE Connection" msgstr "Añadir nueva conexión PPPoE" -#: plinth/modules/networks/networks.py:382 +#: plinth/modules/networks/networks.py:369 msgid "Adding New Wi-Fi Connection" msgstr "Añadir nueva conexión Wi-Fi" -#: plinth/modules/networks/networks.py:397 +#: plinth/modules/networks/networks.py:384 #, python-brace-format msgid "Connection {name} deleted." msgstr "Conexión {name} eliminada." -#: plinth/modules/networks/networks.py:401 -#: plinth/modules/networks/networks.py:411 +#: plinth/modules/networks/networks.py:388 +#: plinth/modules/networks/networks.py:398 msgid "Failed to delete connection: Connection not found." msgstr "Ha fallado la eliminación de la conexión: no se encontró." -#: plinth/modules/networks/networks.py:416 -#: plinth/modules/networks/templates/connections_delete.html:26 +#: plinth/modules/networks/networks.py:403 +#: plinth/modules/networks/templates/connections_delete.html:11 msgid "Delete Connection" msgstr "Eliminar conexión" -#: plinth/modules/networks/networks.py:442 +#: plinth/modules/networks/networks.py:428 msgid "Router configuration type saved." msgstr "Se ha guardado la configuración del router." -#: plinth/modules/networks/templates/connection_show.html:43 +#: plinth/modules/networks/networks.py:474 +#, fuzzy +#| msgid "Router configuration type saved." +msgid "Internet connection type saved." +msgstr "Se ha guardado la configuración del router." + +#: plinth/modules/networks/templates/connection_show.html:28 msgid "Edit connection" msgstr "Editar conexión" -#: plinth/modules/networks/templates/connection_show.html:43 -#: plinth/modules/wireguard/templates/wireguard_show_client.html:83 -#: plinth/modules/wireguard/templates/wireguard_show_server.html:84 -#: plinth/templates/base.html:167 plinth/templates/base.html:168 +#: plinth/modules/networks/templates/connection_show.html:28 +#: plinth/modules/wireguard/templates/wireguard_show_client.html:68 +#: plinth/modules/wireguard/templates/wireguard_show_server.html:69 +#: plinth/templates/base.html:152 plinth/templates/base.html:153 msgid "Edit" msgstr "Editar" -#: plinth/modules/networks/templates/connection_show.html:50 -#: plinth/modules/networks/templates/connections_list.html:90 +#: plinth/modules/networks/templates/connection_show.html:35 +#: plinth/modules/networks/templates/connections_list.html:40 msgid "Deactivate" msgstr "Desactivar" -#: plinth/modules/networks/templates/connection_show.html:57 -#: plinth/modules/networks/templates/connections_list.html:98 +#: plinth/modules/networks/templates/connection_show.html:42 +#: plinth/modules/networks/templates/connections_list.html:48 msgid "Activate" msgstr "Activar" -#: plinth/modules/networks/templates/connection_show.html:63 +#: plinth/modules/networks/templates/connection_show.html:48 msgid "Delete connection" msgstr "Eliminar conexión" -#: plinth/modules/networks/templates/connection_show.html:66 -#: plinth/modules/networks/templates/connections_diagram.html:73 -#: plinth/modules/networks/templates/connections_diagram.html:76 -#: plinth/modules/networks/templates/connections_diagram.html:105 -#: plinth/modules/networks/templates/connections_diagram.html:127 +#: plinth/modules/networks/templates/connection_show.html:51 +#: plinth/modules/networks/templates/connections_diagram.html:58 +#: plinth/modules/networks/templates/connections_diagram.html:61 +#: plinth/modules/networks/templates/connections_diagram.html:90 +#: plinth/modules/networks/templates/connections_diagram.html:112 msgid "Connection" msgstr "Conexión" -#: plinth/modules/networks/templates/connection_show.html:71 +#: plinth/modules/networks/templates/connection_show.html:56 msgid "Primary connection" msgstr "Conexión principal" -#: plinth/modules/networks/templates/connection_show.html:73 -#: plinth/modules/networks/templates/connection_show.html:217 -#: plinth/modules/networks/templates/connection_show.html:256 +#: plinth/modules/networks/templates/connection_show.html:58 +#: plinth/modules/networks/templates/connection_show.html:202 +#: plinth/modules/networks/templates/connection_show.html:241 msgid "yes" msgstr "sí" -#: plinth/modules/networks/templates/connection_show.html:84 -#: plinth/modules/storage/templates/storage.html:40 +#: plinth/modules/networks/templates/connection_show.html:69 +#: plinth/modules/storage/templates/storage.html:25 msgid "Device" msgstr "Dispositivo" -#: plinth/modules/networks/templates/connection_show.html:88 +#: plinth/modules/networks/templates/connection_show.html:73 msgid "State" msgstr "Estado" -#: plinth/modules/networks/templates/connection_show.html:93 +#: plinth/modules/networks/templates/connection_show.html:78 msgid "State reason" msgstr "Motivo del estado" -#: plinth/modules/networks/templates/connection_show.html:102 +#: plinth/modules/networks/templates/connection_show.html:87 msgid "MAC address" msgstr "Dirección MAC" -#: plinth/modules/networks/templates/connection_show.html:106 +#: plinth/modules/networks/templates/connection_show.html:91 msgid "Interface" msgstr "Interfaz" -#: plinth/modules/networks/templates/connection_show.html:110 -#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:33 -#: plinth/modules/snapshot/templates/snapshot_manage.html:45 -#: plinth/modules/snapshot/templates/snapshot_rollback.html:41 +#: plinth/modules/networks/templates/connection_show.html:95 +#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:18 +#: plinth/modules/snapshot/templates/snapshot_manage.html:30 +#: plinth/modules/snapshot/templates/snapshot_rollback.html:26 msgid "Description" msgstr "Descripción" -#: plinth/modules/networks/templates/connection_show.html:116 +#: plinth/modules/networks/templates/connection_show.html:101 msgid "Physical Link" msgstr "Enlace físico" -#: plinth/modules/networks/templates/connection_show.html:121 +#: plinth/modules/networks/templates/connection_show.html:106 msgid "Link state" msgstr "Estado del enlace" -#: plinth/modules/networks/templates/connection_show.html:125 +#: plinth/modules/networks/templates/connection_show.html:110 msgid "cable is connected" msgstr "El cable está conectado" -#: plinth/modules/networks/templates/connection_show.html:128 +#: plinth/modules/networks/templates/connection_show.html:113 msgid "please check cable" msgstr "Por favor compruebe el cable" -#: plinth/modules/networks/templates/connection_show.html:133 -#: plinth/modules/networks/templates/connection_show.html:149 +#: plinth/modules/networks/templates/connection_show.html:118 +#: plinth/modules/networks/templates/connection_show.html:134 msgid "Speed" msgstr "Velocidad" -#: plinth/modules/networks/templates/connection_show.html:135 +#: plinth/modules/networks/templates/connection_show.html:120 #, python-format msgid "%(ethernet_speed)s Mbit/s" msgstr "%(ethernet_speed)s Mbit/s" -#: plinth/modules/networks/templates/connection_show.html:151 +#: plinth/modules/networks/templates/connection_show.html:136 #, python-format msgid "%(wireless_bitrate)s Mbit/s" msgstr "%(wireless_bitrate)s Mbit/s" -#: plinth/modules/networks/templates/connection_show.html:163 +#: plinth/modules/networks/templates/connection_show.html:148 msgid "Signal strength" msgstr "Potencia de la señal" -#: plinth/modules/networks/templates/connection_show.html:181 +#: plinth/modules/networks/templates/connection_show.html:166 msgid "IPv4" msgstr "IPv4" -#: plinth/modules/networks/templates/connection_show.html:186 -#: plinth/modules/networks/templates/connection_show.html:227 -#: plinth/modules/shadowsocks/forms.py:64 +#: plinth/modules/networks/templates/connection_show.html:171 +#: plinth/modules/networks/templates/connection_show.html:212 +#: plinth/modules/shadowsocks/forms.py:49 msgid "Method" msgstr "Método" -#: plinth/modules/networks/templates/connection_show.html:193 -#: plinth/modules/networks/templates/connection_show.html:234 +#: plinth/modules/networks/templates/connection_show.html:178 +#: plinth/modules/networks/templates/connection_show.html:219 msgid "IP address" msgstr "Dirección IP" -#: plinth/modules/networks/templates/connection_show.html:209 -#: plinth/modules/networks/templates/connection_show.html:248 +#: plinth/modules/networks/templates/connection_show.html:194 +#: plinth/modules/networks/templates/connection_show.html:233 msgid "DNS server" msgstr "Servidor DNS" -#: plinth/modules/networks/templates/connection_show.html:216 -#: plinth/modules/networks/templates/connection_show.html:255 -#: plinth/modules/storage/forms.py:156 +#: plinth/modules/networks/templates/connection_show.html:201 +#: plinth/modules/networks/templates/connection_show.html:240 +#: plinth/modules/storage/forms.py:141 msgid "Default" msgstr "Por defecto" -#: plinth/modules/networks/templates/connection_show.html:222 +#: plinth/modules/networks/templates/connection_show.html:207 msgid "IPv6" msgstr "IPv6" -#: plinth/modules/networks/templates/connection_show.html:263 +#: plinth/modules/networks/templates/connection_show.html:248 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:38 plinth/modules/security/views.py:47 +#: plinth/modules/networks/templates/connection_show.html:251 +#: plinth/modules/security/__init__.py:45 msgid "Security" msgstr "Protección" -#: plinth/modules/networks/templates/connection_show.html:271 -#: plinth/modules/networks/templates/connection_show.html:291 -#: plinth/modules/networks/templates/connection_show.html:310 +#: plinth/modules/networks/templates/connection_show.html:256 +#: plinth/modules/networks/templates/connection_show.html:276 +#: plinth/modules/networks/templates/connection_show.html:295 msgid "Firewall zone" msgstr "Zona de firewall" -#: plinth/modules/networks/templates/connection_show.html:280 +#: plinth/modules/networks/templates/connection_show.html:265 msgid "" "This interface should be connected to a local network/machine. If you " "connect this interface to a public network, services meant to be available " @@ -3810,7 +3909,7 @@ msgstr "" "a una red pública los servicios destinados a la red interna estarán también " "accesibles desde la red externa, lo que supone un riesgo de seguridad." -#: plinth/modules/networks/templates/connection_show.html:300 +#: plinth/modules/networks/templates/connection_show.html:285 msgid "" "This interface should receive your Internet connection. If you connect it to " "a local network/machine, many services meant to available only internally " @@ -3820,7 +3919,7 @@ msgstr "" "red/máquina local, muchos servicios destinados a funcionar internamente no " "estarán disponibles." -#: plinth/modules/networks/templates/connection_show.html:319 +#: plinth/modules/networks/templates/connection_show.html:304 #, python-format msgid "" "This interface is not maintained by %(box_name)s. Its security status is " @@ -3833,106 +3932,143 @@ msgstr "" "interfaz. Se recomienda que desactive o elimine esta conexión y la configure " "de nuevo." -#: plinth/modules/networks/templates/connections_create.html:34 +#: plinth/modules/networks/templates/connections_create.html:19 msgid "Create Connection" msgstr "Crear conexión" -#: plinth/modules/networks/templates/connections_delete.html:29 +#: plinth/modules/networks/templates/connections_delete.html:14 #, python-format msgid "Delete connection %(name)s permanently?" msgstr "¿Eliminar la conexión %(name)s definitivamente?" -#: plinth/modules/networks/templates/connections_diagram.html:65 +#: plinth/modules/networks/templates/connections_diagram.html:50 msgid "Internet" msgstr "Internet" -#: plinth/modules/networks/templates/connections_diagram.html:70 -#: plinth/modules/networks/templates/connections_diagram.html:102 +#: plinth/modules/networks/templates/connections_diagram.html:55 +#: plinth/modules/networks/templates/connections_diagram.html:87 msgid "Spacing" msgstr "Espaciado" -#: plinth/modules/networks/templates/connections_diagram.html:83 -#: plinth/modules/networks/templates/connections_diagram.html:113 -#: plinth/network.py:40 +#: plinth/modules/networks/templates/connections_diagram.html:68 +#: plinth/modules/networks/templates/connections_diagram.html:98 +#: plinth/network.py:25 msgid "Ethernet" msgstr "Ethernet" -#: plinth/modules/networks/templates/connections_diagram.html:86 -#: plinth/modules/networks/templates/connections_diagram.html:116 -#: plinth/network.py:41 +#: plinth/modules/networks/templates/connections_diagram.html:71 +#: plinth/modules/networks/templates/connections_diagram.html:101 +#: plinth/network.py:26 msgid "Wi-Fi" msgstr "Wi-Fi" -#: plinth/modules/networks/templates/connections_diagram.html:89 +#: plinth/modules/networks/templates/connections_diagram.html:74 #, python-format msgid "Show connection %(connection.name)s" msgstr "Mostrar la conexión %(connection.name)s" -#: plinth/modules/networks/templates/connections_diagram.html:119 +#: plinth/modules/networks/templates/connections_diagram.html:104 #, python-format msgid "Show connection %(name)s" msgstr "Mostrar la conexión %(name)s" -#: plinth/modules/networks/templates/connections_diagram.html:131 +#: plinth/modules/networks/templates/connections_diagram.html:116 msgid "Computer" msgstr "Ordenador" -#: plinth/modules/networks/templates/connections_list.html:58 +#: plinth/modules/networks/templates/connections_list.html:8 msgid "Connections" msgstr "Conexiones" -#: plinth/modules/networks/templates/connections_list.html:79 +#: plinth/modules/networks/templates/connections_list.html:29 #, python-format msgid "Delete connection %(name)s" msgstr "Eliminar la conexión %(name)s" -#: plinth/modules/networks/templates/connections_list.html:104 +#: plinth/modules/networks/templates/connections_list.html:54 msgid "Active" msgstr "Activa" -#: plinth/modules/networks/templates/connections_list.html:107 +#: plinth/modules/networks/templates/connections_list.html:57 msgid "Inactive" msgstr "Inactiva" -#: plinth/modules/networks/templates/connections_list.html:124 -#, python-format -msgid "%(box_name)s Internet Connectivity" -msgstr "Conexión a Internet de %(box_name)s" +#: plinth/modules/networks/templates/connections_type_select.html:19 +msgid "Create..." +msgstr "Crear…" -#: plinth/modules/networks/templates/connections_list.html:129 -#, python-format +#: plinth/modules/networks/templates/internet_connectivity_content.html:10 +msgid "What Type Of Internet Connection Do You Have?" +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_content.html:16 +#, fuzzy +#| msgid "" +#| "The following best describes how your %(box_name)s is connected in your " +#| "network. This information is used only to suggest necessary configuration " +#| "actions." msgid "" -"The following best describes how your %(box_name)s is connected in your " -"network. This information is used only to suggest necessary configuration " -"actions." +"Select an option that best describes the type of Internet connection. This " +"information is used only to guide you with further setup." msgstr "" "Lo siguiente describe cómo se conecta su %(box_name)s a su red. Esta " "información se emplea solo para sugerir otras configuraciones necesarias." -#: plinth/modules/networks/templates/connections_list.html:137 -#, python-format -msgid "" -"Your %(box_name)s gets its internet from your Router via WiFi or Ethernet " -"cable. This is a typical home setup." -msgstr "" -"Su %(box_name)s accede a Internet a través de su router vía Wi-Fi o cable " -"Ethernet. Es la configuración doméstica habitual." +#: plinth/modules/networks/templates/internet_connectivity_firstboot.html:18 +#: plinth/modules/networks/templates/router_configuration_firstboot.html:18 +#, fuzzy +#| msgid "skip this step" +msgid "Skip this step" +msgstr "Saltar este paso" -#: plinth/modules/networks/templates/connections_list.html:145 -#: plinth/modules/networks/templates/connections_list.html:147 +#: plinth/modules/networks/templates/internet_connectivity_firstboot.html:19 +#: plinth/modules/networks/templates/router_configuration_firstboot.html:19 +msgid "Next" +msgstr "Siguiente" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:9 +#, fuzzy +#| msgid "Connection Type" +msgid "Your Internet Connection Type" +msgstr "Tipo de conexión" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:14 +#, fuzzy +#| msgid "" +#| "The following best describes how your %(box_name)s is connected in your " +#| "network. This information is used only to suggest necessary configuration " +#| "actions." +msgid "" +"The following best describes the type of Internet connection provided by " +"your ISP. This information is only used to suggest you necessary " +"configuration actions." +msgstr "" +"Lo siguiente describe cómo se conecta su %(box_name)s a su red. Esta " +"información se emplea solo para sugerir otras configuraciones necesarias." + +#: plinth/modules/networks/templates/internet_connectivity_main.html:23 +msgid "My ISP provides a public IP address that does not change over time." +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:27 +msgid "My ISP provides a public IP address that may change over time." +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:31 +msgid "My ISP does not provide a public IP address." +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:37 +#: plinth/modules/networks/templates/router_configuration_main.html:29 msgid "Update..." msgstr "Actualización..." -#: plinth/modules/networks/templates/connections_type_select.html:34 -msgid "Create..." -msgstr "Crear…" - -#: plinth/modules/networks/templates/router_configuration_content.html:25 +#: plinth/modules/networks/templates/router_configuration_content.html:10 #, python-format msgid "Setup %(box_name)s Behind a Router" msgstr "Configuración de %(box_name)s tras un router" -#: plinth/modules/networks/templates/router_configuration_content.html:31 +#: plinth/modules/networks/templates/router_configuration_content.html:16 #, python-format msgid "" "Your %(box_name)s gets its internet connection from your router via Wi-Fi or " @@ -3941,7 +4077,7 @@ msgstr "" "Su %(box_name)s accede a Internet a través de su router vía Wi-Fi o cable " "Ethernet. Esta es la configuración doméstica habitual." -#: plinth/modules/networks/templates/router_configuration_content.html:38 +#: plinth/modules/networks/templates/router_configuration_content.html:23 #, python-format msgid "" "With this setup, any device on the internet trying to reach your " @@ -3954,21 +4090,26 @@ msgstr "" "configurar el router para dirigir el tráfico a su %(box_name)s, que es quien " "provee los servicios." -#: plinth/modules/networks/templates/router_configuration_content.html:47 +#: plinth/modules/networks/templates/router_configuration_content.html:32 +#, fuzzy +#| msgid "" +#| "If you don't have control over your router, choose not to configure it. " +#| "To see options, to overcome this limitation, choose 'no public address' " +#| "option in Internet connection type selection." msgid "" "If you don't have control over your router, choose not to configure it. To " -"see options, to overcome this limitation, choose 'no public address' option " +"see options to overcome this limitation, choose 'no public address' option " "in Internet connection type selection." msgstr "" "Si no tiene acceso a su router, elija la opción de no configurarlo. Para ver " "opciones para superar esta limitación, elija la opción \"sin dirección " "pública\" en los tipos de conexión a Internet." -#: plinth/modules/networks/templates/router_configuration_content.html:54 +#: plinth/modules/networks/templates/router_configuration_content.html:39 msgid "Choose How You Wish to Configure Your Router" msgstr "Elija cómo quiere configurar su router" -#: plinth/modules/networks/templates/router_configuration_content.html:57 +#: plinth/modules/networks/templates/router_configuration_content.html:42 msgid "" "You will need to login to your router's administration console provided by " "the router. This may look like one of the following:" @@ -3976,7 +4117,7 @@ msgstr "" "Necesitará acceder a la consola de administración de su router, que puede " "parecerse a alguna de las siguientes:" -#: plinth/modules/networks/templates/router_configuration_content.html:69 +#: plinth/modules/networks/templates/router_configuration_content.html:54 msgid "" "The username and password is configured by you when you first setup the " "router. For many routers, this information is printed at the back of the " @@ -3992,24 +4133,34 @@ msgstr "" "Internet el manual de su modelo de router, que le proporcionará las " "instrucciones necesarias sobre cómo hacerlo." -#: plinth/modules/networks/templates/router_configuration_firstboot.html:33 -msgid "skip this step" -msgstr "Saltar este paso" +#: plinth/modules/networks/templates/router_configuration_main.html:9 +#, python-format +msgid "%(box_name)s Internet Connectivity" +msgstr "Conexión a Internet de %(box_name)s" -#: plinth/modules/networks/templates/router_configuration_firstboot.html:35 -msgid "Next" -msgstr "Siguiente" +#: plinth/modules/networks/templates/router_configuration_main.html:15 +#, python-format +msgid "" +"The following best describes how your %(box_name)s is connected in your " +"network. This information is used only to suggest necessary configuration " +"actions." +msgstr "" +"Lo siguiente describe cómo se conecta su %(box_name)s a su red. Esta " +"información se emplea solo para sugerir otras configuraciones necesarias." -#: plinth/modules/openvpn/__init__.py:39 plinth/modules/openvpn/manifest.py:33 -msgid "OpenVPN" -msgstr "OpenVPN" +#: plinth/modules/networks/templates/router_configuration_main.html:23 +#, fuzzy, python-format +#| msgid "" +#| "Your %(box_name)s gets its internet from your Router via WiFi or Ethernet " +#| "cable. This is a typical home setup." +msgid "" +"Your %(box_name)s gets its Internet from your Router via Wi-Fi or Ethernet " +"cable. This is a typical home setup." +msgstr "" +"Su %(box_name)s accede a Internet a través de su router vía Wi-Fi o cable " +"Ethernet. Es la configuración doméstica habitual." -#: plinth/modules/openvpn/__init__.py:43 -#: plinth/modules/wireguard/__init__.py:40 -msgid "Virtual Private Network" -msgstr "Red privada virtual" - -#: plinth/modules/openvpn/__init__.py:47 +#: plinth/modules/openvpn/__init__.py:26 #, python-brace-format msgid "" "Virtual Private Network (VPN) is a technique for securely connecting two " @@ -4026,22 +4177,33 @@ 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:79 +#: plinth/modules/openvpn/__init__.py:49 plinth/modules/openvpn/manifest.py:18 +msgid "OpenVPN" +msgstr "OpenVPN" + +#: plinth/modules/openvpn/__init__.py:50 +#: plinth/modules/wireguard/__init__.py:53 +msgid "Virtual Private Network" +msgstr "Red privada virtual" + +#: plinth/modules/openvpn/__init__.py:61 #, python-brace-format msgid "" "Download Profile" msgstr "" "Descargar perfil" -#: plinth/modules/openvpn/forms.py:27 +#: plinth/modules/openvpn/forms.py:12 msgid "Enable OpenVPN server" msgstr "Activar servidor OpenVPN" -#: plinth/modules/openvpn/manifest.py:63 -msgid "TunnelBlick" +#: plinth/modules/openvpn/manifest.py:48 +#, fuzzy +#| msgid "TunnelBlick" +msgid "Tunnelblick" msgstr "TunnelBlick" -#: plinth/modules/openvpn/templates/openvpn.html:42 +#: plinth/modules/openvpn/templates/openvpn.html:27 #, python-format msgid "" "OpenVPN has not yet been setup. Performing a secure setup takes a very long " @@ -4053,15 +4215,15 @@ msgstr "" "llevar incluso horas terminarla. Si la configuración se interrumpe debería " "empezarla de nuevo." -#: plinth/modules/openvpn/templates/openvpn.html:55 +#: plinth/modules/openvpn/templates/openvpn.html:40 msgid "Start setup" msgstr "Iniciar configuración" -#: plinth/modules/openvpn/templates/openvpn.html:64 +#: plinth/modules/openvpn/templates/openvpn.html:49 msgid "OpenVPN setup is running" msgstr "Se está ejecutando la configuración de OpenVPN" -#: plinth/modules/openvpn/templates/openvpn.html:68 +#: plinth/modules/openvpn/templates/openvpn.html:53 #, python-format msgid "" "To perform a secure setup, this process takes a very long time. Depending " @@ -4072,11 +4234,11 @@ msgstr "" "cómo de rápida sea su %(box_name)s puede necesitar incluso horas. Si la " "configuración se interrumpe debería empezarla de nuevo." -#: plinth/modules/openvpn/templates/openvpn.html:87 +#: plinth/modules/openvpn/templates/openvpn.html:72 msgid "Profile" msgstr "Perfil" -#: plinth/modules/openvpn/templates/openvpn.html:90 +#: plinth/modules/openvpn/templates/openvpn.html:75 #, python-format msgid "" "To connect to %(box_name)s's VPN, you need to download a profile and feed it " @@ -4090,34 +4252,26 @@ msgstr "" "\"Aprender más...\" para información sobre los clientes recomendados y cómo " "configurarlos." -#: plinth/modules/openvpn/templates/openvpn.html:100 +#: plinth/modules/openvpn/templates/openvpn.html:85 #, python-format msgid "Profile is specific to each user of %(box_name)s. Keep it a secret." msgstr "" "El perfil es específico de cada usuaria/o de %(box_name)s. Manténgalo en " "secreto." -#: plinth/modules/openvpn/templates/openvpn.html:111 +#: plinth/modules/openvpn/templates/openvpn.html:96 msgid "Download my profile" msgstr "Descargar mi perfil" -#: plinth/modules/openvpn/views.py:133 +#: plinth/modules/openvpn/views.py:114 msgid "Setup completed." msgstr "Configuración completada." -#: plinth/modules/openvpn/views.py:135 +#: plinth/modules/openvpn/views.py:116 msgid "Setup failed." msgstr "Ha fallado la configuración." -#: plinth/modules/pagekite/__init__.py:39 -msgid "PageKite" -msgstr "PageKite" - -#: plinth/modules/pagekite/__init__.py:41 -msgid "Public Visibility" -msgstr "Visibilidad pública" - -#: plinth/modules/pagekite/__init__.py:45 +#: plinth/modules/pagekite/__init__.py:26 #, python-brace-format msgid "" "PageKite is a system for exposing {box_name} services when you don't have a " @@ -4130,18 +4284,18 @@ msgstr "" "servicios de su {box_name} no son accesibles desde Internet. Esto incluye " "las siguientes situaciones:" -#: plinth/modules/pagekite/__init__.py:50 +#: plinth/modules/pagekite/__init__.py:31 #, 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:53 +#: plinth/modules/pagekite/__init__.py:34 #, 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:55 +#: plinth/modules/pagekite/__init__.py:36 msgid "" "Your ISP does not provide you an external IP address and instead provides " "Internet connection through NAT." @@ -4149,7 +4303,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:57 +#: plinth/modules/pagekite/__init__.py:38 msgid "" "Your ISP does not provide you a static IP address and your IP address " "changes every time you connect to Internet." @@ -4157,11 +4311,11 @@ msgstr "" "Su proveedor de servicios no le da una dirección IP estática por lo que su " "IP cambia cada vez que se conecta a Internet." -#: plinth/modules/pagekite/__init__.py:59 +#: plinth/modules/pagekite/__init__.py:40 msgid "Your ISP limits incoming connections." msgstr "Su proveedor de servicios limita las conexiones entrantes." -#: plinth/modules/pagekite/__init__.py:61 +#: plinth/modules/pagekite/__init__.py:42 #, python-brace-format msgid "" "PageKite works around NAT, firewalls and IP address limitations by using a " @@ -4174,15 +4328,23 @@ msgstr "" "de servicios pagekite, por ejemplo pagekite." "net. En el futuro será posible usar su amigable {box_name} para esto." -#: plinth/modules/pagekite/__init__.py:87 +#: plinth/modules/pagekite/__init__.py:62 +msgid "PageKite" +msgstr "PageKite" + +#: plinth/modules/pagekite/__init__.py:64 +msgid "Public Visibility" +msgstr "Visibilidad pública" + +#: plinth/modules/pagekite/__init__.py:74 msgid "PageKite Domain" msgstr "Dominio PageKite" -#: plinth/modules/pagekite/forms.py:66 +#: plinth/modules/pagekite/forms.py:51 msgid "Server domain" msgstr "Dominio del servidor" -#: plinth/modules/pagekite/forms.py:68 +#: plinth/modules/pagekite/forms.py:53 msgid "" "Select your pagekite server. Set \"pagekite.net\" to use the default " "pagekite.net server." @@ -4190,31 +4352,31 @@ msgstr "" "Seleccione su servidor pagekite. Elija \"pagekite.net\" para usar el " "servidor pagekite por defecto." -#: plinth/modules/pagekite/forms.py:71 plinth/modules/shadowsocks/forms.py:55 +#: plinth/modules/pagekite/forms.py:56 plinth/modules/shadowsocks/forms.py:40 msgid "Server port" msgstr "Puerto del servidor" -#: plinth/modules/pagekite/forms.py:72 +#: plinth/modules/pagekite/forms.py:57 msgid "Port of your pagekite server (default: 80)" msgstr "Puerto de su servidor pagekite (por defecto es 80)" -#: plinth/modules/pagekite/forms.py:74 +#: plinth/modules/pagekite/forms.py:59 msgid "Kite name" msgstr "Nombre Kite" -#: plinth/modules/pagekite/forms.py:75 +#: plinth/modules/pagekite/forms.py:60 msgid "Example: mybox.pagekite.me" msgstr "Ejemplo: mybox.pagekite.me" -#: plinth/modules/pagekite/forms.py:77 +#: plinth/modules/pagekite/forms.py:62 msgid "Invalid kite name" msgstr "Nombre de kite inválido" -#: plinth/modules/pagekite/forms.py:81 +#: plinth/modules/pagekite/forms.py:66 msgid "Kite secret" msgstr "Clave para Kite" -#: plinth/modules/pagekite/forms.py:82 +#: plinth/modules/pagekite/forms.py:67 msgid "" "A secret associated with the kite or the default secret for your account if " "no secret is set on the kite." @@ -4222,43 +4384,43 @@ msgstr "" "Una clave asociada al Kite o la clave por defecto para su cuenta si no se " "especifica ninguna." -#: plinth/modules/pagekite/forms.py:98 +#: plinth/modules/pagekite/forms.py:83 msgid "Kite details set" msgstr "Ajustar detalles de Kite" -#: plinth/modules/pagekite/forms.py:105 +#: plinth/modules/pagekite/forms.py:90 msgid "Pagekite server set" msgstr "Ajustar el servidor PageKite" -#: plinth/modules/pagekite/forms.py:129 +#: plinth/modules/pagekite/forms.py:114 msgid "PageKite enabled" msgstr "PageKite activado" -#: plinth/modules/pagekite/forms.py:132 +#: plinth/modules/pagekite/forms.py:117 msgid "PageKite disabled" msgstr "PageKite desactivado" -#: plinth/modules/pagekite/forms.py:148 +#: plinth/modules/pagekite/forms.py:133 msgid "protocol" msgstr "protocolo" -#: plinth/modules/pagekite/forms.py:151 +#: plinth/modules/pagekite/forms.py:136 msgid "external (frontend) port" msgstr "puerto externo (frontend)" -#: plinth/modules/pagekite/forms.py:154 +#: plinth/modules/pagekite/forms.py:139 msgid "internal (freedombox) port" msgstr "puerto interno (freedombox)" -#: plinth/modules/pagekite/forms.py:155 +#: plinth/modules/pagekite/forms.py:140 msgid "Enable Subdomains" msgstr "Activar subdominios" -#: plinth/modules/pagekite/forms.py:189 +#: plinth/modules/pagekite/forms.py:174 msgid "Deleted custom service" msgstr "Servicio personalizado eliminado" -#: plinth/modules/pagekite/forms.py:222 +#: plinth/modules/pagekite/forms.py:207 msgid "" "This service is available as a standard service. Please use the \"Standard " "Services\" page to enable it." @@ -4266,41 +4428,41 @@ msgstr "" "Este servicio está disponible como servicio estándar. Por favor use los " "\"Servicios estándar\" para activarlo." -#: plinth/modules/pagekite/forms.py:231 +#: plinth/modules/pagekite/forms.py:216 msgid "Added custom service" msgstr "Servicio personalizado añadido" -#: plinth/modules/pagekite/forms.py:234 +#: plinth/modules/pagekite/forms.py:219 msgid "This service already exists" msgstr "Este servicio ya existe" -#: plinth/modules/pagekite/templates/pagekite_configure.html:47 +#: plinth/modules/pagekite/templates/pagekite_configure.html:32 msgid "Custom Services" msgstr "Servicios personalizados" -#: plinth/modules/pagekite/templates/pagekite_configure.html:50 -#: plinth/modules/pagekite/templates/pagekite_configure.html:52 +#: plinth/modules/pagekite/templates/pagekite_configure.html:35 +#: plinth/modules/pagekite/templates/pagekite_configure.html:37 msgid "Add Custom Service" msgstr "Añadir servicios personalizados" -#: plinth/modules/pagekite/templates/pagekite_configure.html:57 +#: plinth/modules/pagekite/templates/pagekite_configure.html:42 msgid "Existing custom services" msgstr "Servicios personalizados existentes" -#: plinth/modules/pagekite/templates/pagekite_configure.html:71 +#: plinth/modules/pagekite/templates/pagekite_configure.html:56 #, python-format msgid "connected to %(backend_host)s:%(backend_port)s" msgstr "conectado a %(backend_host)s:%(backend_port)s" -#: plinth/modules/pagekite/templates/pagekite_configure.html:83 +#: plinth/modules/pagekite/templates/pagekite_configure.html:68 msgid "Delete this service" msgstr "Eliminar este servicio" -#: plinth/modules/pagekite/templates/pagekite_custom_services.html:30 +#: plinth/modules/pagekite/templates/pagekite_custom_services.html:15 msgid "Add custom PageKite service" msgstr "Añadir servicio PageKite personalizado" -#: plinth/modules/pagekite/templates/pagekite_custom_services.html:32 +#: plinth/modules/pagekite/templates/pagekite_custom_services.html:17 msgid "" "Warning:imaps://imap.ejemplo.com."
-#: plinth/modules/roundcube/__init__.py:53
+#: plinth/modules/roundcube/__init__.py:32
msgid ""
"For Gmail, username will be your Gmail address, password will be your Google "
"account password and server will be imaps://imap.gmail.com. "
@@ -4703,11 +4855,16 @@ msgstr ""
"google.com/settings/security/lesssecureapps\">https://www.google.com/"
"settings/security/lesssecureapps)."
-#: plinth/modules/samba/__init__.py:46
-msgid "Samba"
-msgstr "Samba"
+#: plinth/modules/roundcube/__init__.py:54
+#: plinth/modules/roundcube/manifest.py:9
+msgid "Roundcube"
+msgstr "Roundcube"
-#: plinth/modules/samba/__init__.py:53
+#: plinth/modules/roundcube/__init__.py:55
+msgid "Email Client"
+msgstr "Cliente de correo"
+
+#: plinth/modules/samba/__init__.py:32
msgid ""
"Samba allows to share files and folders between FreedomBox and other "
"computers in your local network."
@@ -4715,7 +4872,7 @@ msgstr ""
"Samba permite compartir archivos y carpetas entre FreedomBox y otras "
"computadoras en su red local."
-#: plinth/modules/samba/__init__.py:56
+#: plinth/modules/samba/__init__.py:35
#, python-brace-format
msgid ""
"After installation, you can choose which disks to use for sharing. Enabled "
@@ -4728,11 +4885,11 @@ msgstr ""
"la dirección \\\\{hostname} (en Windows) o smb://{hostname}.local (en Linux "
"y Mac). Puede elegir entre tres tipos para compartir: "
-#: plinth/modules/samba/__init__.py:61
+#: plinth/modules/samba/__init__.py:40
msgid "Open share - accessible to everyone in your local network."
msgstr "Compartir en abierto - accesible para todo el mundo en su red local."
-#: plinth/modules/samba/__init__.py:62
+#: plinth/modules/samba/__init__.py:41
msgid ""
"Group share - accessible only to FreedomBox users who are in the freedombox-"
"share group."
@@ -4740,7 +4897,7 @@ msgstr ""
"Compartir en grupo - accesible solo para las personas que estén en el grupo "
"freedombox-share."
-#: plinth/modules/samba/__init__.py:64
+#: plinth/modules/samba/__init__.py:43
msgid ""
"Home share - every user in the freedombox-share group can have their own "
"private space."
@@ -4748,16 +4905,20 @@ msgstr ""
"Compartir en mi cuenta - todos los miembros del grupo freedombox-share "
"disponen de un espacio privado propio."
-#: plinth/modules/samba/__init__.py:68
+#: plinth/modules/samba/__init__.py:47
msgid "Access to the private shares"
msgstr "Acceso a los elementos compartidos privados"
-#: plinth/modules/samba/templates/samba.html:39
-#: plinth/modules/samba/templates/samba.html:50
+#: plinth/modules/samba/__init__.py:61
+msgid "Samba"
+msgstr "Samba"
+
+#: plinth/modules/samba/templates/samba.html:24
+#: plinth/modules/samba/templates/samba.html:35
msgid "Shares"
msgstr "Compartidos"
-#: plinth/modules/samba/templates/samba.html:41
+#: plinth/modules/samba/templates/samba.html:26
msgid ""
"Note: Only specially created directories will be shared on selected disks, "
"not the whole disk."
@@ -4765,20 +4926,20 @@ msgstr ""
"Nota: solo se compartirá las carpetas especialmente creadas para ello, no se "
"compartirá el disco completo."
-#: plinth/modules/samba/templates/samba.html:49
+#: plinth/modules/samba/templates/samba.html:34
msgid "Disk Name"
msgstr "Etiqueta de volumen"
-#: plinth/modules/samba/templates/samba.html:51
-#: plinth/modules/storage/templates/storage.html:44
+#: plinth/modules/samba/templates/samba.html:36
+#: plinth/modules/storage/templates/storage.html:29
msgid "Used"
msgstr "Usado"
-#: plinth/modules/samba/templates/samba.html:72
+#: plinth/modules/samba/templates/samba.html:57
msgid "VFAT partitions are not supported"
msgstr "Las particiones VFAT no están soportadas"
-#: plinth/modules/samba/templates/samba.html:103
+#: plinth/modules/samba/templates/samba.html:88
#, python-format
msgid ""
"You can find additional information about disks on the usuarios."
-#: plinth/modules/samba/templates/samba.html:109
+#: plinth/modules/samba/templates/samba.html:94
msgid "Users who can currently access group and home shares"
msgstr "Usuarios con acceso a las carpetas de grupo y de cuenta"
-#: plinth/modules/samba/templates/samba.html:113
+#: plinth/modules/samba/templates/samba.html:98
msgid ""
"Users needing to re-enter their password on the password change page to "
"access group and home shares"
@@ -4802,11 +4963,11 @@ msgstr ""
"Usuarios que necesitan re-introducir su clave para acceder a las carpetas "
"compartidas en grupo y en cuenta"
-#: plinth/modules/samba/templates/samba.html:118
+#: plinth/modules/samba/templates/samba.html:103
msgid "Unavailable Shares"
msgstr "Elementos compartidos no disponibles"
-#: plinth/modules/samba/templates/samba.html:120
+#: plinth/modules/samba/templates/samba.html:105
msgid ""
"Shares that are configured but the disk is not available. If the disk is "
"plugged back in, sharing will be automatically enabled."
@@ -4815,53 +4976,45 @@ msgstr ""
"disponible. Si el disco se conecta de nuevo estarán accesibles "
"automáticamente."
-#: plinth/modules/samba/templates/samba.html:128
+#: plinth/modules/samba/templates/samba.html:113
msgid "Share name"
msgstr "Nombre de compartición"
-#: plinth/modules/samba/templates/samba.html:129
+#: plinth/modules/samba/templates/samba.html:114
msgid "Action"
msgstr "Acción"
-#: plinth/modules/samba/views.py:61 plinth/modules/storage/forms.py:164
+#: plinth/modules/samba/views.py:43 plinth/modules/storage/forms.py:149
msgid "Open Share"
msgstr "Compartir en abierto"
-#: plinth/modules/samba/views.py:62 plinth/modules/storage/forms.py:162
+#: plinth/modules/samba/views.py:44 plinth/modules/storage/forms.py:147
msgid "Group Share"
msgstr "Compartir con grupo"
-#: plinth/modules/samba/views.py:63
+#: plinth/modules/samba/views.py:45
msgid "Home Share"
msgstr "Compartir con cuenta"
-#: plinth/modules/samba/views.py:96
+#: plinth/modules/samba/views.py:78
msgid "Share enabled."
msgstr "Compartición activada."
-#: plinth/modules/samba/views.py:101
+#: plinth/modules/samba/views.py:83
#, python-brace-format
msgid "Error enabling share: {error_message}"
msgstr "Error al activar compartición: {error_message}"
-#: plinth/modules/samba/views.py:106
+#: plinth/modules/samba/views.py:88
msgid "Share disabled."
msgstr "Compartición desactivada."
-#: plinth/modules/samba/views.py:111
+#: plinth/modules/samba/views.py:93
#, python-brace-format
msgid "Error disabling share: {error_message}"
msgstr "Error al desactivar compartición: {error_message}"
-#: plinth/modules/searx/__init__.py:41 plinth/modules/searx/manifest.py:24
-msgid "Searx"
-msgstr "Searx"
-
-#: plinth/modules/searx/__init__.py:45
-msgid "Web Search"
-msgstr "Buscador web"
-
-#: plinth/modules/searx/__init__.py:48
+#: plinth/modules/searx/__init__.py:25
msgid ""
"Searx is a privacy-respecting Internet metasearch engine. It aggregrates and "
"displays results from multiple search engines."
@@ -4869,7 +5022,7 @@ msgstr ""
"Searx es un motor de búsqueda en Internet que respeta la privacidad. Recoge "
"y muestra los resultados de múltiples buscadores."
-#: plinth/modules/searx/__init__.py:50
+#: plinth/modules/searx/__init__.py:27
msgid ""
"Searx can be used to avoid tracking and profiling by search engines. It "
"stores no cookies by default."
@@ -4877,51 +5030,59 @@ msgstr ""
"Searx se puede usar para evitar el rastreo y la creación de perfiles que "
"realizan los buscadores. Por defecto no almacena cookies."
-#: plinth/modules/searx/__init__.py:54
+#: plinth/modules/searx/__init__.py:31
msgid "Search the web"
msgstr "Buscar en la web"
-#: plinth/modules/searx/forms.py:30
+#: plinth/modules/searx/__init__.py:47 plinth/modules/searx/manifest.py:9
+msgid "Searx"
+msgstr "Searx"
+
+#: plinth/modules/searx/__init__.py:48
+msgid "Web Search"
+msgstr "Buscador web"
+
+#: plinth/modules/searx/forms.py:15
msgid "Safe Search"
msgstr "Búsqueda segura"
-#: plinth/modules/searx/forms.py:31
+#: plinth/modules/searx/forms.py:16
msgid "Select the default family filter to apply to your search results."
msgstr ""
"Seleccione la familia de filtros que se aplicarán por defecto a los "
"resultados de su búsqueda."
-#: plinth/modules/searx/forms.py:32
+#: plinth/modules/searx/forms.py:17
msgid "None"
msgstr "Ninguno"
-#: plinth/modules/searx/forms.py:32
+#: plinth/modules/searx/forms.py:17
msgid "Moderate"
msgstr "Moderado"
-#: plinth/modules/searx/forms.py:32
+#: plinth/modules/searx/forms.py:17
msgid "Strict"
msgstr "Estricto"
-#: plinth/modules/searx/forms.py:35
+#: plinth/modules/searx/forms.py:20
msgid "Allow Public Access"
msgstr "Permitir acceso público"
-#: plinth/modules/searx/forms.py:36
+#: plinth/modules/searx/forms.py:21
msgid "Allow this application to be used by anyone who can reach it."
msgstr ""
"Permitir que esta aplicación la use cualquiera que pueda acceder a ella."
-#: plinth/modules/searx/views.py:59 plinth/modules/searx/views.py:70
-#: plinth/modules/tor/views.py:149 plinth/modules/tor/views.py:176
+#: plinth/modules/searx/views.py:39 plinth/modules/searx/views.py:50
+#: plinth/modules/tor/views.py:130 plinth/modules/tor/views.py:157
msgid "Configuration updated."
msgstr "Configuración actualizada."
-#: plinth/modules/security/forms.py:28
+#: plinth/modules/security/forms.py:13
msgid "Restrict console logins (recommended)"
msgstr "Acceso a consola restringido (recomendada)"
-#: plinth/modules/security/forms.py:29
+#: plinth/modules/security/forms.py:14
msgid ""
"When this option is enabled, only users in the \"admin\" group will be able "
"to log in to console or via SSH. Console users may be able to access some "
@@ -4931,11 +5092,11 @@ msgstr ""
"pueden acceder a la consola por SSH. Desde la consola se podrá acceder a "
"ciertos servicios sin autenticación posterior."
-#: plinth/modules/security/forms.py:34
+#: plinth/modules/security/forms.py:19
msgid "Fail2Ban (recommended)"
msgstr "Fail2Ban (recomendado)"
-#: plinth/modules/security/forms.py:35
+#: plinth/modules/security/forms.py:20
msgid ""
"When this option is enabled, Fail2Ban will limit brute force break-in "
"attempts to the SSH server and other enabled password protected internet-"
@@ -4945,17 +5106,17 @@ msgstr ""
"servidor SSH como a otros servicios de Internet protegidos por contraseña "
"que estén activados."
-#: plinth/modules/security/templates/security.html:26
-#: plinth/modules/security/templates/security.html:28
+#: plinth/modules/security/templates/security.html:11
+#: plinth/modules/security/templates/security.html:13
msgid "Show security report"
msgstr "Mostrar informe de seguridad"
-#: plinth/modules/security/templates/security_report.html:25
-#: plinth/modules/security/views.py:87
+#: plinth/modules/security/templates/security_report.html:10
+#: plinth/modules/security/views.py:71
msgid "Security Report"
msgstr "Informe de Seguridad"
-#: plinth/modules/security/templates/security_report.html:27
+#: plinth/modules/security/templates/security_report.html:12
#, python-format
msgid ""
"The installed version of FreedomBox has %(count)s reported security "
@@ -4964,7 +5125,7 @@ msgstr ""
"La versión instalada de FreedomBox tiene informadas %(count)s "
"vulnerabilidades de seguridad."
-#: plinth/modules/security/templates/security_report.html:33
+#: plinth/modules/security/templates/security_report.html:18
msgid ""
"The following table lists the current reported number, and historical count, "
"of security vulnerabilities for each installed app."
@@ -4972,7 +5133,7 @@ msgstr ""
"Esta lista muestra las cantidades actuales e históricamente acumuladas de "
"vulnerabilidades de seguridad para cada aplicación instalada."
-#: plinth/modules/security/templates/security_report.html:39
+#: plinth/modules/security/templates/security_report.html:24
msgid ""
"For apps that provide services, the \"Sandboxed\" column shows whether "
"sandboxing features are in use. Sandboxing mitigates the impact of a "
@@ -4983,7 +5144,7 @@ msgstr ""
"aislamiento disminuye el impacto que una aplicación comprometida pueda tener "
"en el resto del sistema."
-#: plinth/modules/security/templates/security_report.html:46
+#: plinth/modules/security/templates/security_report.html:31
msgid ""
"\"Sandbox Coverage\" is a score of how effectively the service is isolated "
"from the rest of the system. It is only displayed while the service is "
@@ -4992,64 +5153,56 @@ msgstr ""
"\"Índice de aislamiento\" informa de cómo de efectivo es el aislamiento. "
"Solo se muestra cuando el servicio está en ejecución."
-#: plinth/modules/security/templates/security_report.html:55
+#: plinth/modules/security/templates/security_report.html:40
msgid "App Name"
msgstr "Nombre de la app"
-#: plinth/modules/security/templates/security_report.html:56
+#: plinth/modules/security/templates/security_report.html:41
msgid "Current Vulnerabilities"
msgstr "Vulnerabilidades Actuales"
-#: plinth/modules/security/templates/security_report.html:57
+#: plinth/modules/security/templates/security_report.html:42
msgid "Past Vulnerabilities"
msgstr "Vulnerabilidades Anteriores"
-#: plinth/modules/security/templates/security_report.html:58
+#: plinth/modules/security/templates/security_report.html:43
msgid "Sandboxed"
msgstr "Aisladas"
-#: plinth/modules/security/templates/security_report.html:59
+#: plinth/modules/security/templates/security_report.html:44
msgid "Sandbox Coverage"
msgstr "Índice de aislamiento"
-#: plinth/modules/security/templates/security_report.html:70
+#: plinth/modules/security/templates/security_report.html:55
msgid "N/A"
msgstr "N/A"
-#: plinth/modules/security/templates/security_report.html:72
+#: plinth/modules/security/templates/security_report.html:57
msgid "Yes"
msgstr "Sí"
-#: plinth/modules/security/templates/security_report.html:74
+#: plinth/modules/security/templates/security_report.html:59
msgid "No"
msgstr "No"
-#: plinth/modules/security/templates/security_report.html:81
+#: plinth/modules/security/templates/security_report.html:66
msgid "Not running"
msgstr "No se está ejecutando"
-#: plinth/modules/security/views.py:69
+#: plinth/modules/security/views.py:53
#, python-brace-format
msgid "Error setting restricted access: {exception}"
msgstr "Error al definir el acceso restringido: {exception}"
-#: plinth/modules/security/views.py:72
+#: plinth/modules/security/views.py:56
msgid "Updated security configuration"
msgstr "Configuración de seguridad actualizada"
-#: plinth/modules/shaarli/__init__.py:34 plinth/modules/shaarli/manifest.py:23
-msgid "Shaarli"
-msgstr "Shaarli"
-
-#: plinth/modules/shaarli/__init__.py:36
-msgid "Bookmarks"
-msgstr "Marcadores"
-
-#: plinth/modules/shaarli/__init__.py:39
+#: plinth/modules/shaarli/__init__.py:20
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:21
msgid ""
"When enabled, Shaarli will be available from /shaarli path on the web server. Note that Shaarli "
@@ -5061,15 +5214,15 @@ msgstr ""
"solo soporta una cuenta de usuaria/o, que debe configurar en el primer "
"acceso."
-#: plinth/modules/shadowsocks/__init__.py:35
-msgid "Shadowsocks"
-msgstr "Shadowsocks"
+#: plinth/modules/shaarli/__init__.py:39 plinth/modules/shaarli/manifest.py:8
+msgid "Shaarli"
+msgstr "Shaarli"
-#: plinth/modules/shadowsocks/__init__.py:39
-msgid "Socks5 Proxy"
-msgstr "Proxy Socks5"
+#: plinth/modules/shaarli/__init__.py:40
+msgid "Bookmarks"
+msgstr "Marcadores"
-#: plinth/modules/shadowsocks/__init__.py:46
+#: plinth/modules/shadowsocks/__init__.py:25
msgid ""
"Shadowsocks is a lightweight and secure SOCKS5 proxy, designed to protect "
"your Internet traffic. It can be used to bypass Internet filtering and "
@@ -5079,7 +5232,7 @@ msgstr ""
"tráfico en Internet. Se puede usar para eludir el filtrado o la censura de "
"Internet."
-#: plinth/modules/shadowsocks/__init__.py:50
+#: plinth/modules/shadowsocks/__init__.py:29
#, python-brace-format
msgid ""
"Your {box_name} can run a Shadowsocks client, that can connect to a "
@@ -5092,7 +5245,7 @@ msgstr ""
"Los dispositivos locales pueden conectarse a este proxy y la información se "
"enviará cifrada a través del servidor Shadowsocks."
-#: plinth/modules/shadowsocks/__init__.py:55
+#: plinth/modules/shadowsocks/__init__.py:34
msgid ""
"To use Shadowsocks after setup, set the SOCKS5 proxy URL in your device, "
"browser or application to http://freedombox_address:1080/"
@@ -5100,36 +5253,40 @@ msgstr ""
"Para usar Shadowsocks una vez configurado debe indicar la URL del proxy en "
"su dispositivo, navegador o aplicación como http://freedombox_address:1080/"
-#: plinth/modules/shadowsocks/forms.py:28
-#: plinth/modules/shadowsocks/forms.py:29
+#: plinth/modules/shadowsocks/__init__.py:50
+msgid "Shadowsocks"
+msgstr "Shadowsocks"
+
+#: plinth/modules/shadowsocks/__init__.py:52
+msgid "Socks5 Proxy"
+msgstr "Proxy Socks5"
+
+#: plinth/modules/shadowsocks/forms.py:13
+#: plinth/modules/shadowsocks/forms.py:14
msgid "Recommended"
msgstr "Recomendado"
-#: plinth/modules/shadowsocks/forms.py:52
+#: plinth/modules/shadowsocks/forms.py:37
msgid "Server"
msgstr "Servidor"
-#: plinth/modules/shadowsocks/forms.py:53
+#: plinth/modules/shadowsocks/forms.py:38
msgid "Server hostname or IP address"
msgstr "Nombre del servidor o dirección IP"
-#: plinth/modules/shadowsocks/forms.py:57
+#: plinth/modules/shadowsocks/forms.py:42
msgid "Server port number"
msgstr "Número de puerto del servidor"
-#: plinth/modules/shadowsocks/forms.py:60
+#: plinth/modules/shadowsocks/forms.py:45
msgid "Password used to encrypt data. Must match server password."
msgstr "Clave para cifrar los datos. Debe coincidir con la clave del servidor."
-#: plinth/modules/shadowsocks/forms.py:65
+#: plinth/modules/shadowsocks/forms.py:50
msgid "Encryption method. Must match setting on server."
msgstr "Método de cifrado. Debe coincidir con la configuración del servidor."
-#: plinth/modules/sharing/__init__.py:34
-msgid "Sharing"
-msgstr "Compartir"
-
-#: plinth/modules/sharing/__init__.py:38
+#: plinth/modules/sharing/__init__.py:21
#, python-brace-format
msgid ""
"Sharing allows you to share files and folders on your {box_name} over the "
@@ -5138,11 +5295,15 @@ msgstr ""
"Permite compartir a través de la web archivos y carpetas en su {box_name} "
"con otras personas."
-#: plinth/modules/sharing/forms.py:33
+#: plinth/modules/sharing/__init__.py:38
+msgid "Sharing"
+msgstr "Compartir"
+
+#: plinth/modules/sharing/forms.py:18
msgid "Name of the share"
msgstr "Nombre de la compartición"
-#: plinth/modules/sharing/forms.py:35
+#: plinth/modules/sharing/forms.py:20
msgid ""
"A lowercase alpha-numeric string that uniquely identifies a share. Example: "
"media."
@@ -5150,29 +5311,29 @@ msgstr ""
"Una cadena alfa-numérica en minúsculas que identifica de forma unívoca la "
"compartición. Ejemplo: media."
-#: plinth/modules/sharing/forms.py:39
+#: plinth/modules/sharing/forms.py:24
msgid "Path to share"
msgstr "Ruta de acceso a la compartición"
-#: plinth/modules/sharing/forms.py:40
+#: plinth/modules/sharing/forms.py:25
msgid "Disk path to a folder on this server that you intend to share."
msgstr ""
"Ruta de acceso en el disco de este servidor a la carpeta que pretende "
"compartir."
-#: plinth/modules/sharing/forms.py:43
+#: plinth/modules/sharing/forms.py:28
msgid "Public share"
msgstr "Carpeta pública"
-#: plinth/modules/sharing/forms.py:44
+#: plinth/modules/sharing/forms.py:29
msgid "Make files in this folder available to anyone with the link."
msgstr "Dar acceso a los archivos de esta carpeta a quien tenga el enlace."
-#: plinth/modules/sharing/forms.py:48
+#: plinth/modules/sharing/forms.py:33
msgid "User groups that can read the files in the share"
msgstr "Grupos de usuarias/os que pueden leer los archivos compartidos"
-#: plinth/modules/sharing/forms.py:50
+#: plinth/modules/sharing/forms.py:35
msgid ""
"Users of the selected user groups will be able to read the files in the "
"share."
@@ -5180,66 +5341,62 @@ msgstr ""
"Los usuarios de los grupos seleccionados podrán leer los archivos "
"compartidos."
-#: plinth/modules/sharing/forms.py:67
+#: plinth/modules/sharing/forms.py:52
msgid "A share with this name already exists."
msgstr "Ya existe una compartición con este nombre."
-#: plinth/modules/sharing/forms.py:78
+#: plinth/modules/sharing/forms.py:63
msgid "Shares should be either public or shared with at least one group"
msgstr ""
"Las carpetas compartidas deben ser públicas o estar compartidas con al menos "
"un grupo"
-#: plinth/modules/sharing/templates/sharing.html:39
-#: plinth/modules/sharing/templates/sharing.html:42
+#: plinth/modules/sharing/templates/sharing.html:24
+#: plinth/modules/sharing/templates/sharing.html:27
msgid "Add share"
msgstr "Añadir compartición"
-#: plinth/modules/sharing/templates/sharing.html:47
+#: plinth/modules/sharing/templates/sharing.html:32
msgid "No shares currently configured."
msgstr "Actualmente no hay comparticiones configuradas."
-#: plinth/modules/sharing/templates/sharing.html:53
+#: plinth/modules/sharing/templates/sharing.html:38
msgid "Disk Path"
msgstr "Ruta de acceso en disco"
-#: plinth/modules/sharing/templates/sharing.html:54
+#: plinth/modules/sharing/templates/sharing.html:39
msgid "Shared Over"
msgstr "Compartido por"
-#: plinth/modules/sharing/templates/sharing.html:55
+#: plinth/modules/sharing/templates/sharing.html:40
msgid "With Groups"
msgstr "Con los grupos"
-#: plinth/modules/sharing/templates/sharing.html:73
+#: plinth/modules/sharing/templates/sharing.html:58
msgid "public access"
msgstr "Acceso público"
-#: plinth/modules/sharing/views.py:55
+#: plinth/modules/sharing/views.py:39
msgid "Share added."
msgstr "Compartición añadida."
-#: plinth/modules/sharing/views.py:60
+#: plinth/modules/sharing/views.py:44
msgid "Add Share"
msgstr "Añadir compartición"
-#: plinth/modules/sharing/views.py:75
+#: plinth/modules/sharing/views.py:59
msgid "Share edited."
msgstr "Compartición editada."
-#: plinth/modules/sharing/views.py:80
+#: plinth/modules/sharing/views.py:64
msgid "Edit Share"
msgstr "Editar compartición"
-#: plinth/modules/sharing/views.py:111
+#: plinth/modules/sharing/views.py:95
msgid "Share deleted."
msgstr "Compartición eliminada."
-#: plinth/modules/snapshot/__init__.py:37
-msgid "Storage Snapshots"
-msgstr "Almacén de instantáneas"
-
-#: plinth/modules/snapshot/__init__.py:40
+#: plinth/modules/snapshot/__init__.py:23
msgid ""
"Snapshots allows creating and managing btrfs file system snapshots. These "
"can be used to roll back the system to a previously known good state in case "
@@ -5249,7 +5406,7 @@ msgstr ""
"btrfs. Éstas pueden emplearse para recuperar el sistema a un estado anterior "
"correcto en caso de cambios no deseados."
-#: plinth/modules/snapshot/__init__.py:44
+#: plinth/modules/snapshot/__init__.py:27
#, no-python-format
msgid ""
"Snapshots are taken periodically (called timeline snapshots) and also before "
@@ -5261,7 +5418,7 @@ msgstr ""
"instantáneas más antiguas se eliminarán automáticamente según la siguiente "
"configuración."
-#: plinth/modules/snapshot/__init__.py:47
+#: plinth/modules/snapshot/__init__.py:30
msgid ""
"Snapshots currently work on btrfs file systems only and on the root "
"partition only. Snapshots are not a replacement for las copias de seguridad ya que se almacenan en la "
"misma partición. "
-#: plinth/modules/snapshot/forms.py:27
+#: plinth/modules/snapshot/__init__.py:52
+msgid "Storage Snapshots"
+msgstr "Almacén de instantáneas"
+
+#: plinth/modules/snapshot/forms.py:12
msgid "Free Disk Space to Maintain"
msgstr "Espacio libre de disco para mantener"
-#: plinth/modules/snapshot/forms.py:28
+#: plinth/modules/snapshot/forms.py:13
msgid ""
"Maintain this percentage of free space on the disk. If free space falls "
"below this value, older snapshots are removed until this much free space is "
@@ -5287,64 +5448,64 @@ msgstr ""
"hasta que se recupere esta cantidad de espacio libre. El valor "
"predeterminado es 30%."
-#: plinth/modules/snapshot/forms.py:35
+#: plinth/modules/snapshot/forms.py:20
msgid "Timeline Snapshots"
msgstr "Cronograma de instantáneas"
-#: plinth/modules/snapshot/forms.py:36
+#: plinth/modules/snapshot/forms.py:21
msgid ""
"Enable or disable timeline snapshots (hourly, daily, monthly and yearly)."
msgstr ""
"Habilitar o deshabilitar el cronograma de instantáneas (cada hora, diario, "
"mensual, anual)."
-#: plinth/modules/snapshot/forms.py:41
+#: plinth/modules/snapshot/forms.py:26
msgid "Software Installation Snapshots"
msgstr "Instantáneas de instalación de software"
-#: plinth/modules/snapshot/forms.py:42
+#: plinth/modules/snapshot/forms.py:27
msgid "Enable or disable snapshots before and after software installation"
msgstr ""
"Active o desactive las instantáneas antes y después de la instalación del "
"software"
-#: plinth/modules/snapshot/forms.py:47
+#: plinth/modules/snapshot/forms.py:32
msgid "Hourly Snapshots Limit"
msgstr "Límite de instantáneas por hora"
-#: plinth/modules/snapshot/forms.py:48
+#: plinth/modules/snapshot/forms.py:33
msgid "Keep a maximum of this many hourly snapshots."
msgstr "Conservar el máximo número de instantáneas por hora."
-#: plinth/modules/snapshot/forms.py:51
+#: plinth/modules/snapshot/forms.py:36
msgid "Daily Snapshots Limit"
msgstr "Límite diario de instantáneas"
-#: plinth/modules/snapshot/forms.py:52
+#: plinth/modules/snapshot/forms.py:37
msgid "Keep a maximum of this many daily snapshots."
msgstr "Conservar el máximo número de instantáneas diarias."
-#: plinth/modules/snapshot/forms.py:55
+#: plinth/modules/snapshot/forms.py:40
msgid "Weekly Snapshots Limit"
msgstr "Límite semanal de instantáneas"
-#: plinth/modules/snapshot/forms.py:56
+#: plinth/modules/snapshot/forms.py:41
msgid "Keep a maximum of this many weekly snapshots."
msgstr "Conservar el máximo número de instantáneas semanales."
-#: plinth/modules/snapshot/forms.py:59
+#: plinth/modules/snapshot/forms.py:44
msgid "Monthly Snapshots Limit"
msgstr "Límite mensual de instantáneas"
-#: plinth/modules/snapshot/forms.py:60
+#: plinth/modules/snapshot/forms.py:45
msgid "Keep a maximum of this many monthly snapshots."
msgstr "Conservar el máximo número de instantáneas mensuales."
-#: plinth/modules/snapshot/forms.py:63
+#: plinth/modules/snapshot/forms.py:48
msgid "Yearly Snapshots Limit"
msgstr "Límite anual de instantáneas"
-#: plinth/modules/snapshot/forms.py:64
+#: plinth/modules/snapshot/forms.py:49
msgid ""
"Keep a maximum of this many yearly snapshots. The default value is 0 "
"(disabled)."
@@ -5352,46 +5513,46 @@ msgstr ""
"Conservar el máximo número de instantáneas anuales. El valor predeterminado "
"es 0 (desactivado)."
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:27
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:12
msgid "Delete the following snapshots permanently?"
msgstr "¿Eliminar las siguientes instantáneas definitivamente?"
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:31
-#: plinth/modules/snapshot/templates/snapshot_manage.html:43
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:39
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:16
+#: plinth/modules/snapshot/templates/snapshot_manage.html:28
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:24
msgid "Number"
msgstr "Número"
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:32
-#: plinth/modules/snapshot/templates/snapshot_manage.html:44
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:40
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:17
+#: plinth/modules/snapshot/templates/snapshot_manage.html:29
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:25
msgid "Date"
msgstr "Fecha"
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:52
-#: plinth/modules/snapshot/templates/snapshot_manage.html:37
-#: plinth/modules/snapshot/views.py:196
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:37
+#: plinth/modules/snapshot/templates/snapshot_manage.html:22
+#: plinth/modules/snapshot/views.py:175
msgid "Delete Snapshots"
msgstr "Eliminar instantáneas"
-#: plinth/modules/snapshot/templates/snapshot_manage.html:33
+#: plinth/modules/snapshot/templates/snapshot_manage.html:18
msgid "Create Snapshot"
msgstr "Crear instantánea"
-#: plinth/modules/snapshot/templates/snapshot_manage.html:46
+#: plinth/modules/snapshot/templates/snapshot_manage.html:31
msgid "Rollback"
msgstr "Restaurar"
-#: plinth/modules/snapshot/templates/snapshot_manage.html:57
+#: plinth/modules/snapshot/templates/snapshot_manage.html:42
msgid "active"
msgstr "Activa"
-#: plinth/modules/snapshot/templates/snapshot_manage.html:66
+#: plinth/modules/snapshot/templates/snapshot_manage.html:51
#, python-format
msgid "Rollback to snapshot #%(number)s"
msgstr "Restaurar a instantánea %(number)s"
-#: plinth/modules/snapshot/templates/snapshot_not_supported.html:26
+#: plinth/modules/snapshot/templates/snapshot_not_supported.html:11
#, python-format
msgid ""
"Your have a filesystem of type %(fs_type)s. Snapshots are "
@@ -5401,11 +5562,11 @@ msgstr ""
"instantáneas solo están disponibles actualmente en sistemas de archivos "
"%(types_supported)s."
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:27
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:12
msgid "Roll back the system to this snapshot?"
msgstr "¿Restaurar el sistema a esta instantánea?"
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:30
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:15
msgid ""
"A new snapshot with the current state of the file system will be "
"automatically created. You will be able to undo a rollback by reverting to "
@@ -5414,59 +5575,55 @@ msgstr ""
"Se creará una nueva instantánea del estado del sistema automáticamente. "
"Podrá deshacer una restauración revirtiendo a la nueva instantánea creada."
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:57
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:42
#, python-format
msgid "Rollback to Snapshot #%(number)s"
msgstr "Restaurar a instantánea %(number)s"
-#: plinth/modules/snapshot/views.py:45
+#: plinth/modules/snapshot/views.py:30
msgid "Manage Snapshots"
msgstr "Gestionar instantáneas"
-#: plinth/modules/snapshot/views.py:98
+#: plinth/modules/snapshot/views.py:79
msgid "Created snapshot."
msgstr "Instantánea creada."
-#: plinth/modules/snapshot/views.py:156
+#: plinth/modules/snapshot/views.py:135
msgid "Storage snapshots configuration updated"
msgstr "Configuración de almacenamiento de instantáneas actualizada"
-#: plinth/modules/snapshot/views.py:160 plinth/modules/tor/views.py:79
+#: plinth/modules/snapshot/views.py:139 plinth/modules/tor/views.py:60
#, python-brace-format
msgid "Action error: {0} [{1}] [{2}]"
msgstr "Acción de error: {0} [{1}] [{2}]"
-#: plinth/modules/snapshot/views.py:175
+#: plinth/modules/snapshot/views.py:154
msgid "Deleted all snapshots"
msgstr "Eliminar todas las instantáneas"
-#: plinth/modules/snapshot/views.py:179
+#: plinth/modules/snapshot/views.py:158
msgid "Deleted selected snapshots"
msgstr "Las instantáneas seleccionadas fueron eliminadas"
-#: plinth/modules/snapshot/views.py:184
+#: plinth/modules/snapshot/views.py:163
msgid "Snapshot is currently in use. Please try again later."
msgstr ""
"La instantánea se está usando actualmente. Inténtelo de nuevo más tarde."
-#: plinth/modules/snapshot/views.py:207
+#: plinth/modules/snapshot/views.py:186
#, python-brace-format
msgid "Rolled back to snapshot #{number}."
msgstr "Sistema restaurado a la instantánea {number}."
-#: plinth/modules/snapshot/views.py:210
+#: plinth/modules/snapshot/views.py:189
msgid "The system must be restarted to complete the rollback."
msgstr "Debe reiniciar el sistema para completar la restauración."
-#: plinth/modules/snapshot/views.py:222
+#: plinth/modules/snapshot/views.py:201
msgid "Rollback to Snapshot"
msgstr "Restaurar a instantánea"
-#: plinth/modules/ssh/__init__.py:43
-msgid "Secure Shell (SSH) Server"
-msgstr "Servidor de intérprete de órdenes seguro (SSH)"
-
-#: plinth/modules/ssh/__init__.py:46
+#: plinth/modules/ssh/__init__.py:29
msgid ""
"A Secure Shell server uses the secure shell protocol to accept connections "
"from remote computers. An authorized remote computer can perform "
@@ -5478,11 +5635,15 @@ msgstr ""
"realizar tareas de administración, copiar archivos o ejecutar otros "
"servicios a través de esas conexiones."
-#: plinth/modules/ssh/forms.py:30
+#: plinth/modules/ssh/__init__.py:50
+msgid "Secure Shell (SSH) Server"
+msgstr "Servidor de intérprete de órdenes seguro (SSH)"
+
+#: plinth/modules/ssh/forms.py:15
msgid "Disable password authentication"
msgstr "Desactivar autentificación de clave"
-#: plinth/modules/ssh/forms.py:31
+#: plinth/modules/ssh/forms.py:16
msgid ""
"Improves security by preventing password guessing. Ensure that you have "
"setup SSH keys in your administrator user account before enabling this "
@@ -5492,11 +5653,11 @@ msgstr ""
"configurado las claves SSH en su cuenta de administrador antes de activar "
"esta opción."
-#: plinth/modules/ssh/templates/ssh.html:26
+#: plinth/modules/ssh/templates/ssh.html:11
msgid "Server Fingerprints"
msgstr "Huellas Digitales de Servidor"
-#: plinth/modules/ssh/templates/ssh.html:29
+#: plinth/modules/ssh/templates/ssh.html:14
msgid ""
"When connecting to the server, ensure that the fingerprint shown by the SSH "
"client matches one of these fingerprints."
@@ -5504,35 +5665,31 @@ msgstr ""
"Al conectar con el servidor, asegúrate de que la huella digital mostrada por "
"el cliente SSH coincide con una de éstas."
-#: plinth/modules/ssh/templates/ssh.html:38
+#: plinth/modules/ssh/templates/ssh.html:23
msgid "Algorithm"
msgstr "Algoritmo"
-#: plinth/modules/ssh/templates/ssh.html:39
+#: plinth/modules/ssh/templates/ssh.html:24
msgid "Fingerprint"
msgstr "Huella digital"
-#: plinth/modules/ssh/views.py:66
+#: plinth/modules/ssh/views.py:48
msgid "SSH authentication with password disabled."
msgstr "Acceso SSH con clave desactivado."
-#: plinth/modules/ssh/views.py:69
+#: plinth/modules/ssh/views.py:51
msgid "SSH authentication with password enabled."
msgstr "Acceso SSH con clave activado."
-#: plinth/modules/sso/__init__.py:30
+#: plinth/modules/sso/__init__.py:33
msgid "Single Sign On"
msgstr "Inicio de sesión único"
-#: plinth/modules/sso/templates/login.html:35
+#: plinth/modules/sso/templates/login.html:20
msgid "Login"
msgstr "Inicio de sesión"
-#: plinth/modules/storage/__init__.py:39 plinth/modules/storage/__init__.py:331
-msgid "Storage"
-msgstr "Almacén"
-
-#: plinth/modules/storage/__init__.py:47
+#: plinth/modules/storage/__init__.py:30
#, python-brace-format
msgid ""
"This module allows you to manage storage media attached to your {box_name}. "
@@ -5543,147 +5700,151 @@ msgstr ""
"{box_name}. Puede ver el medio de almacenamiento que está usando, montar y "
"desmontar medios extraíbles, ampliar la partición raíz, etc."
-#: plinth/modules/storage/__init__.py:224
+#: plinth/modules/storage/__init__.py:52 plinth/modules/storage/__init__.py:318
+msgid "Storage"
+msgstr "Almacén"
+
+#: plinth/modules/storage/__init__.py:211
#, python-brace-format
msgid "{disk_size:.1f} bytes"
msgstr "{disk_size:.1f} bytes"
-#: plinth/modules/storage/__init__.py:228
+#: plinth/modules/storage/__init__.py:215
#, python-brace-format
msgid "{disk_size:.1f} KiB"
msgstr "{disk_size:.1f} KiB"
-#: plinth/modules/storage/__init__.py:232
+#: plinth/modules/storage/__init__.py:219
#, python-brace-format
msgid "{disk_size:.1f} MiB"
msgstr "{disk_size:.1f} MiB"
-#: plinth/modules/storage/__init__.py:236
+#: plinth/modules/storage/__init__.py:223
#, python-brace-format
msgid "{disk_size:.1f} GiB"
msgstr "{disk_size:.1f} GiB"
-#: plinth/modules/storage/__init__.py:239
+#: plinth/modules/storage/__init__.py:226
#, python-brace-format
msgid "{disk_size:.1f} TiB"
msgstr "{disk_size:.1f} TiB"
-#: plinth/modules/storage/__init__.py:246
+#: plinth/modules/storage/__init__.py:233
msgid "The operation failed."
msgstr "Falló la operación."
-#: plinth/modules/storage/__init__.py:248
+#: plinth/modules/storage/__init__.py:235
msgid "The operation was cancelled."
msgstr "Se ha cancelado la operación."
-#: plinth/modules/storage/__init__.py:250
+#: plinth/modules/storage/__init__.py:237
msgid "The device is already unmounting."
msgstr "El dispositivo ya se está desmontando."
-#: plinth/modules/storage/__init__.py:252
+#: plinth/modules/storage/__init__.py:239
msgid "The operation is not supported due to missing driver/tool support."
msgstr "No se soporta esta operación por falta de un driver o herramienta."
-#: plinth/modules/storage/__init__.py:255
+#: plinth/modules/storage/__init__.py:242
msgid "The operation timed out."
msgstr "La operación agotó el tiempo."
-#: plinth/modules/storage/__init__.py:257
+#: plinth/modules/storage/__init__.py:244
msgid "The operation would wake up a disk that is in a deep-sleep state."
msgstr "La operación podría activar un disco que está en estado de reposo."
-#: plinth/modules/storage/__init__.py:260
+#: plinth/modules/storage/__init__.py:247
msgid "Attempting to unmount a device that is busy."
msgstr "Tratando de desmontar un dispositivo ocupado."
-#: plinth/modules/storage/__init__.py:262
+#: plinth/modules/storage/__init__.py:249
msgid "The operation has already been cancelled."
msgstr "Ya se ha cancelado la operación."
-#: plinth/modules/storage/__init__.py:268
+#: plinth/modules/storage/__init__.py:255
msgid "Not authorized to perform the requested operation."
msgstr "No tiene autorización para la operación solicitada."
-#: plinth/modules/storage/__init__.py:270
+#: plinth/modules/storage/__init__.py:257
msgid "The device is already mounted."
msgstr "El dispositivo ya está montado."
-#: plinth/modules/storage/__init__.py:272
+#: plinth/modules/storage/__init__.py:259
msgid "The device is not mounted."
msgstr "El dispositivo no está montado."
-#: plinth/modules/storage/__init__.py:275
+#: plinth/modules/storage/__init__.py:262
msgid "Not permitted to use the requested option."
msgstr "La operación solicitada no está permitida."
-#: plinth/modules/storage/__init__.py:278
+#: plinth/modules/storage/__init__.py:265
msgid "The device is mounted by another user."
msgstr "El dispositivo está ya montado por otro usuario."
-#: plinth/modules/storage/__init__.py:326
+#: plinth/modules/storage/__init__.py:313
#, no-python-format, python-brace-format
msgid "Low space on system partition: {percent_used}% used, {free_space} free."
msgstr ""
-"Poco espacio en la partición del sistema: {percent_used}% usado, {free_space}"
-" libre."
+"Poco espacio en la partición del sistema: {percent_used}% usado, "
+"{free_space} libre."
-#: plinth/modules/storage/__init__.py:328
+#: plinth/modules/storage/__init__.py:315
msgid "Low disk space"
msgstr "Poco espacio en disco"
-#: plinth/modules/storage/forms.py:79
+#: plinth/modules/storage/forms.py:64
msgid "Invalid directory name."
msgstr "Nombre de carpeta no válido."
-#: plinth/modules/storage/forms.py:97
+#: plinth/modules/storage/forms.py:82
msgid "Directory does not exist."
msgstr "La carpeta no existe."
-#: plinth/modules/storage/forms.py:99
+#: plinth/modules/storage/forms.py:84
msgid "Path is not a directory."
msgstr "No es una carpeta."
-#: plinth/modules/storage/forms.py:102
+#: plinth/modules/storage/forms.py:87
msgid "Directory is not readable by the user."
msgstr "El usuario no tiene permiso de lectura en esta carpeta."
-#: plinth/modules/storage/forms.py:105
+#: plinth/modules/storage/forms.py:90
msgid "Directory is not writable by the user."
msgstr "El usuario no tiene permiso de escritura en esta carpeta."
-#: plinth/modules/storage/forms.py:110
+#: plinth/modules/storage/forms.py:95
msgid "Directory"
msgstr "Carpeta"
-#: plinth/modules/storage/forms.py:113
+#: plinth/modules/storage/forms.py:98
msgid "Subdirectory (optional)"
msgstr "Subcarpeta (opcional)"
-#: plinth/modules/storage/forms.py:160
+#: plinth/modules/storage/forms.py:145
msgid "Share"
msgstr "Compartir"
-#: plinth/modules/storage/forms.py:168
+#: plinth/modules/storage/forms.py:153
msgid "Other directory (specify below)"
msgstr "Otra carpeta (especifique más abajo)"
-#: plinth/modules/storage/templates/storage.html:35
+#: plinth/modules/storage/templates/storage.html:20
msgid "The following storage devices are in use:"
msgstr "Se están usando los siguientes dispositivos de almacenamiento:"
-#: plinth/modules/storage/templates/storage.html:41
+#: plinth/modules/storage/templates/storage.html:26
msgid "Label"
msgstr "Etiqueta"
-#: plinth/modules/storage/templates/storage.html:42
+#: plinth/modules/storage/templates/storage.html:27
msgid "Mount Point"
msgstr "Punto de montaje"
-#: plinth/modules/storage/templates/storage.html:90
+#: plinth/modules/storage/templates/storage.html:75
msgid "Partition Expansion"
msgstr "Expandir la partición"
-#: plinth/modules/storage/templates/storage.html:92
+#: plinth/modules/storage/templates/storage.html:77
#, python-format
msgid ""
"There is %(expandable_root_size)s of unallocated space available after your "
@@ -5694,13 +5855,13 @@ msgstr ""
"partición raíz. Se puede ampliar la partición raíz para usarlo y disponer de "
"espacio libre adicional para almacenar sus archivos."
-#: plinth/modules/storage/templates/storage.html:102
-#: plinth/modules/storage/templates/storage_expand.html:39
-#: plinth/modules/storage/views.py:76
+#: plinth/modules/storage/templates/storage.html:87
+#: plinth/modules/storage/templates/storage_expand.html:24
+#: plinth/modules/storage/views.py:58
msgid "Expand Root Partition"
msgstr "Ampliar partición raíz"
-#: plinth/modules/storage/templates/storage_expand.html:29
+#: plinth/modules/storage/templates/storage_expand.html:14
#, python-format
msgid ""
"Please backup your data before proceeding. After this operation, "
@@ -5711,39 +5872,30 @@ msgstr ""
"operación su partición raíz dispondrá de %(expandable_root_size)s espacio "
"libre adicional."
-#: plinth/modules/storage/views.py:88
+#: plinth/modules/storage/views.py:70
#, python-brace-format
msgid "Error expanding partition: {exception}"
msgstr "Error al ampliar partición: {exception}"
-#: plinth/modules/storage/views.py:91
+#: plinth/modules/storage/views.py:73
msgid "Partition expanded successfully."
msgstr "Partición ampliada con éxito."
-#: plinth/modules/storage/views.py:109
+#: plinth/modules/storage/views.py:91
#, python-brace-format
msgid "{drive_vendor} {drive_model} can be safely unplugged."
msgstr "Ya puede desconectar {drive_vendor} {drive_model} con seguridad."
-#: plinth/modules/storage/views.py:113
+#: plinth/modules/storage/views.py:95
msgid "Device can be safely unplugged."
msgstr "El dispositivo ya se puede desconectar con seguridad."
-#: plinth/modules/storage/views.py:123
+#: plinth/modules/storage/views.py:105
#, python-brace-format
msgid "Error ejecting device: {error_message}"
msgstr "Error al expulsar el dispositivo: {error_message}"
-#: plinth/modules/syncthing/__init__.py:40
-#: plinth/modules/syncthing/manifest.py:28
-msgid "Syncthing"
-msgstr "Syncthing"
-
-#: plinth/modules/syncthing/__init__.py:44
-msgid "File Synchronization"
-msgstr "Sincronización de archivos"
-
-#: plinth/modules/syncthing/__init__.py:47
+#: plinth/modules/syncthing/__init__.py:26
msgid ""
"Syncthing is an application to synchronize files across multiple devices, e."
"g. your desktop computer and mobile phone. Creation, modification, or "
@@ -5755,7 +5907,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:52
+#: plinth/modules/syncthing/__init__.py:31
#, python-brace-format
msgid ""
"Running Syncthing on {box_name} provides an extra synchronization point for "
@@ -5772,19 +5924,20 @@ msgstr ""
"sincronizarse con un conjunto distinto de carpetas. La interfaz web en "
"{box_name} solo está disponible para quienes pertenezcan al grupo \"admin\"."
-#: plinth/modules/syncthing/__init__.py:63
+#: plinth/modules/syncthing/__init__.py:40
msgid "Administer Syncthing application"
msgstr "Administrar Syncthing"
-#: plinth/modules/tahoe/__init__.py:43
-msgid "Tahoe-LAFS"
-msgstr "Tahoe-LAFS"
+#: plinth/modules/syncthing/__init__.py:54
+#: plinth/modules/syncthing/manifest.py:13
+msgid "Syncthing"
+msgstr "Syncthing"
-#: plinth/modules/tahoe/__init__.py:47
-msgid "Distributed File Storage"
-msgstr "Almacén de archivos distribuido"
+#: plinth/modules/syncthing/__init__.py:55
+msgid "File Synchronization"
+msgstr "Sincronización de archivos"
-#: plinth/modules/tahoe/__init__.py:134
+#: plinth/modules/tahoe/__init__.py:30
msgid ""
"Tahoe-LAFS is a decentralized secure file storage system. It uses provider "
"independent security to store files over a distributed network of storage "
@@ -5797,7 +5950,7 @@ msgstr ""
"de los nodos fallara, sus archivos seguirían estando disponibles a través "
"del resto de nodos."
-#: plinth/modules/tahoe/__init__.py:139
+#: plinth/modules/tahoe/__init__.py:35
#, python-brace-format
msgid ""
"This {box_name} hosts a storage node and an introducer by default. "
@@ -5808,7 +5961,15 @@ msgstr ""
"defecto. Se pueden añadir presentadores adicionales, los cuales presentarán "
"este nodo a los otros nodos de almacenamiento."
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:33
+#: plinth/modules/tahoe/__init__.py:66
+msgid "Tahoe-LAFS"
+msgstr "Tahoe-LAFS"
+
+#: plinth/modules/tahoe/__init__.py:68
+msgid "Distributed File Storage"
+msgstr "Almacén de archivos distribuido"
+
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:17
#, python-format
msgid ""
"The Tahoe-LAFS server domain is set to %(domain_name)s. Changing the "
@@ -5821,37 +5982,33 @@ msgstr ""
"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
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:39
msgid "Local introducer"
msgstr "Presentador local"
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:43
#: plinth/modules/tahoe/templates/tahoe-post-setup.html:59
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:75
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:92
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:76
msgid "Pet Name"
msgstr "Nombre de alias"
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:72
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:56
msgid "Add new introducer"
msgstr "Añadir nuevo presentador"
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:83
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:67
msgid "Add"
msgstr "Añadir"
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:88
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:72
msgid "Connected introducers"
msgstr "Presentadores conectados"
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:105
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:89
msgid "Remove"
msgstr "Eliminar"
-#: plinth/modules/tor/__init__.py:47
-msgid "Tor"
-msgstr "Tor"
-
-#: plinth/modules/tor/__init__.py:52
+#: plinth/modules/tor/__init__.py:33
msgid ""
"Tor is an anonymous communication system. You can learn more about it from "
"the Tor Project website. For "
@@ -5865,56 +6022,60 @@ msgstr ""
"download/download-easy.html.en\">Navegador Tor para tener la mejor "
"protección cuando navega por la red."
-#: plinth/modules/tor/__init__.py:83
+#: plinth/modules/tor/__init__.py:55
+msgid "Tor"
+msgstr "Tor"
+
+#: plinth/modules/tor/__init__.py:66
msgid "Tor Onion Service"
msgstr "Servicio Tor Onion"
-#: plinth/modules/tor/__init__.py:87
+#: plinth/modules/tor/__init__.py:70
msgid "Tor Socks Proxy"
msgstr "Proxy Socks para Tor"
-#: plinth/modules/tor/__init__.py:91
+#: plinth/modules/tor/__init__.py:74
msgid "Tor Bridge Relay"
msgstr "Puente de retransmisión Tor"
-#: plinth/modules/tor/__init__.py:112
+#: plinth/modules/tor/__init__.py:95
msgid "Tor relay port available"
msgstr "Puerto de servidor Tor disponible"
-#: plinth/modules/tor/__init__.py:122
+#: plinth/modules/tor/__init__.py:105
msgid "Obfs3 transport registered"
msgstr "Transporte Obfs3 registrado"
-#: plinth/modules/tor/__init__.py:132
+#: plinth/modules/tor/__init__.py:115
msgid "Obfs4 transport registered"
msgstr "Transporte Obfs4 registrado"
-#: plinth/modules/tor/__init__.py:225
+#: plinth/modules/tor/__init__.py:208
#, 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:236
+#: plinth/modules/tor/__init__.py:219
#, python-brace-format
msgid "Confirm Tor usage at {url} on tcp{kind}"
msgstr "Confirmar uso de Tor en {url} sobre tcp {kind}"
-#: plinth/modules/tor/forms.py:46
+#: plinth/modules/tor/forms.py:31
msgid ""
"Enter a valid bridge with this format: [transport] IP:ORPort [fingerprint]"
msgstr ""
"Especifique un puente válido con este formato: [transport] IP:ORPort "
"[fingerprint]"
-#: plinth/modules/tor/forms.py:88
+#: plinth/modules/tor/forms.py:73
msgid "Enable Tor"
msgstr "Activar Tor"
-#: plinth/modules/tor/forms.py:90
+#: plinth/modules/tor/forms.py:75
msgid "Use upstream bridges to connect to Tor network"
msgstr "Utilice puentes de subida para conectar a una red Tor"
-#: plinth/modules/tor/forms.py:92
+#: plinth/modules/tor/forms.py:77
msgid ""
"When enabled, the bridges configured below will be used to connect to the "
"Tor network. Use this option if your Internet Service Provider (ISP) blocks "
@@ -5925,11 +6086,11 @@ msgstr ""
"(ISP) bloquea o censura las conexiones a la red Tor. Esto desactivará los "
"modos de reenvío."
-#: plinth/modules/tor/forms.py:97
+#: plinth/modules/tor/forms.py:82
msgid "Upstream bridges"
msgstr "Puentes de subida"
-#: plinth/modules/tor/forms.py:99
+#: plinth/modules/tor/forms.py:84
msgid ""
"You can get some bridges from https://bridges.torproject.org/ and copy/paste the bridge information "
@@ -5940,11 +6101,11 @@ msgstr ""
"Los tipos de transporte actualmente soportados son ninguno, obfs3, obfs4 y "
"scamblesuit."
-#: plinth/modules/tor/forms.py:105
+#: plinth/modules/tor/forms.py:90
msgid "Enable Tor relay"
msgstr "Activar Tor"
-#: plinth/modules/tor/forms.py:106
+#: plinth/modules/tor/forms.py:91
#, python-brace-format
msgid ""
"When enabled, your {box_name} will run a Tor relay and donate bandwidth to "
@@ -5955,11 +6116,11 @@ msgstr ""
"ancho de banda a la red Tor. Actívelo si dispone de más de 2 megabits/s de "
"ancho de banda para descarga y subida."
-#: plinth/modules/tor/forms.py:111
+#: plinth/modules/tor/forms.py:96
msgid "Enable Tor bridge relay"
msgstr "Activar puente de retransmisión Tor"
-#: plinth/modules/tor/forms.py:113
+#: plinth/modules/tor/forms.py:98
msgid ""
"When enabled, relay information is published in the Tor bridge database "
"instead of public Tor relay database making it harder to censor this node. "
@@ -5969,11 +6130,11 @@ msgstr ""
"Tor en vez de en la base de datos pública de Tor, lo que dificulta censurar "
"este nodo. Ayuda a otros usuarios a esquivar la censura."
-#: plinth/modules/tor/forms.py:118
+#: plinth/modules/tor/forms.py:103
msgid "Enable Tor Hidden Service"
msgstr "Activar el servicio oculto Tor"
-#: plinth/modules/tor/forms.py:120
+#: plinth/modules/tor/forms.py:105
#, python-brace-format
msgid ""
"A hidden service will allow {box_name} to provide selected services (such as "
@@ -5984,11 +6145,11 @@ msgstr ""
"servicios (como wiki o chat) sin revelar su localización. No lo emplee para "
"un anonimato fuerte."
-#: plinth/modules/tor/forms.py:125
+#: plinth/modules/tor/forms.py:110
msgid "Download software packages over Tor"
msgstr "Descarga de paquetes de software con Tor"
-#: plinth/modules/tor/forms.py:126
+#: plinth/modules/tor/forms.py:111
msgid ""
"When enabled, software will be downloaded over the Tor network for "
"installations and upgrades. This adds a degree of privacy and security "
@@ -5998,36 +6159,36 @@ msgstr ""
"descargarán a través de la red Tor. De esta forma se añade un grado de "
"privacidad y seguridad durante la descarga."
-#: plinth/modules/tor/forms.py:141
+#: plinth/modules/tor/forms.py:126
msgid "Specify at least one upstream bridge to use upstream bridges."
msgstr ""
"Especifique al menos un puente de subida para usar los puentes de subida."
-#: plinth/modules/tor/manifest.py:29
+#: plinth/modules/tor/manifest.py:14
msgid "Tor Browser"
msgstr "Navegador Tor"
-#: plinth/modules/tor/manifest.py:45
+#: plinth/modules/tor/manifest.py:30
msgid "Orbot: Proxy with Tor"
msgstr "Orbot: Proxy con Tor"
-#: plinth/modules/tor/templates/tor.html:41
+#: plinth/modules/tor/templates/tor.html:26
msgid "Tor configuration is being updated"
msgstr "La configuración de Tor está actualizándose"
-#: plinth/modules/tor/templates/tor.html:50
+#: plinth/modules/tor/templates/tor.html:35
msgid "Onion Service"
msgstr "Servicio Onion"
-#: plinth/modules/tor/templates/tor.html:52
+#: plinth/modules/tor/templates/tor.html:37
msgid "Ports"
msgstr "Puertos"
-#: plinth/modules/tor/templates/tor.html:82
+#: plinth/modules/tor/templates/tor.html:67
msgid "Relay"
msgstr "Retransmisión"
-#: plinth/modules/tor/templates/tor.html:84
+#: plinth/modules/tor/templates/tor.html:69
#, python-format
msgid ""
"If your %(box_name)s is behind a router or firewall, you should make sure "
@@ -6037,23 +6198,18 @@ msgstr ""
"de que los siguientes puertos están abiertos, y redireccionados si es "
"necesario:"
-#: plinth/modules/tor/templates/tor.html:112
+#: plinth/modules/tor/templates/tor.html:97
msgid "SOCKS"
msgstr "SOCKS"
-#: plinth/modules/tor/templates/tor.html:115
+#: plinth/modules/tor/templates/tor.html:100
#, python-format
msgid "A Tor SOCKS port is available on your %(box_name)s on TCP port 9050."
msgstr ""
"Un puerto SOCKS de Tor está disponible en su %(box_name)s en el puerto TCP "
"9050."
-#: plinth/modules/transmission/__init__.py:41
-#: plinth/modules/transmission/manifest.py:24
-msgid "Transmission"
-msgstr "Transmission"
-
-#: plinth/modules/transmission/__init__.py:48
+#: plinth/modules/transmission/__init__.py:27
msgid ""
"BitTorrent is a peer-to-peer file sharing protocol. Transmission daemon "
"handles Bitorrent file sharing. Note that BitTorrent is not anonymous."
@@ -6062,15 +6218,12 @@ msgstr ""
"Transmission controla la compartición de archivos. Recuerde que BitTorrent "
"no es anónimo."
-#: plinth/modules/ttrss/__init__.py:43 plinth/modules/ttrss/manifest.py:34
-msgid "Tiny Tiny RSS"
-msgstr "Tiny Tiny RSS"
+#: plinth/modules/transmission/__init__.py:48
+#: plinth/modules/transmission/manifest.py:9
+msgid "Transmission"
+msgstr "Transmission"
-#: plinth/modules/ttrss/__init__.py:47
-msgid "News Feed Reader"
-msgstr "Lector de noticias"
-
-#: plinth/modules/ttrss/__init__.py:50
+#: plinth/modules/ttrss/__init__.py:29
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 "
@@ -6080,7 +6233,7 @@ 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:54
+#: plinth/modules/ttrss/__init__.py:33
#, python-brace-format
msgid ""
"When enabled, Tiny Tiny RSS can be accessed by any persona con una cuenta de acceso en {box_name}."
-#: plinth/modules/ttrss/__init__.py:58
+#: plinth/modules/ttrss/__init__.py:37
msgid ""
"When using a mobile or desktop application for Tiny Tiny RSS, use the URL /tt-rss-app for "
@@ -6099,42 +6252,50 @@ msgstr ""
"use la URL /tt-rss-app"
"a> para conectar."
-#: plinth/modules/ttrss/__init__.py:65
+#: plinth/modules/ttrss/__init__.py:42
msgid "Read and subscribe to news feeds"
msgstr "Leer y suscribirse a nuevos agregadores"
-#: plinth/modules/ttrss/manifest.py:25
+#: plinth/modules/ttrss/__init__.py:56 plinth/modules/ttrss/manifest.py:19
+msgid "Tiny Tiny RSS"
+msgstr "Tiny Tiny RSS"
+
+#: plinth/modules/ttrss/__init__.py:57
+msgid "News Feed Reader"
+msgstr "Lector de noticias"
+
+#: plinth/modules/ttrss/manifest.py:10
msgid "Tiny Tiny RSS (Fork)"
msgstr "Tiny Tiny RSS (Bifurcación)"
-#: plinth/modules/upgrades/__init__.py:37 plinth/templates/setup.html:89
-msgid "Update"
-msgstr "Actualización"
-
-#: plinth/modules/upgrades/__init__.py:40
+#: plinth/modules/upgrades/__init__.py:23
msgid "Check for and apply the latest software and security updates."
msgstr ""
"Buscar y aplicar las últimas actualizaciones del software y de seguridad."
-#: plinth/modules/upgrades/__init__.py:84
+#: plinth/modules/upgrades/__init__.py:38 plinth/templates/setup.html:74
+msgid "Update"
+msgstr "Actualización"
+
+#: plinth/modules/upgrades/__init__.py:71
msgid "FreedomBox Updated"
msgstr "FreedomBox actualizado"
-#: plinth/modules/upgrades/forms.py:28
+#: plinth/modules/upgrades/forms.py:13
msgid "Enable auto-update"
msgstr "Activar actualizaciones automáticas"
-#: plinth/modules/upgrades/forms.py:29
+#: plinth/modules/upgrades/forms.py:14
msgid "When enabled, FreedomBox automatically updates once a day."
msgstr ""
"Si está activado, FreedomBox se actualiza automáticamente una vez al día."
-#: plinth/modules/upgrades/templates/upgrades-new-release.html:24
+#: plinth/modules/upgrades/templates/upgrades-new-release.html:9
#, python-format
msgid "%(box_name)s Updated"
msgstr "%(box_name)s actualizado"
-#: plinth/modules/upgrades/templates/upgrades-new-release.html:28
+#: plinth/modules/upgrades/templates/upgrades-new-release.html:13
#, python-format
msgid ""
"%(box_name)s has been updated to version %(version)s. See the anuncio de lanzamiento."
-#: plinth/modules/upgrades/templates/upgrades-new-release.html:37
-#: plinth/templates/notifications.html:59
+#: plinth/modules/upgrades/templates/upgrades-new-release.html:22
+#: plinth/templates/notifications.html:44
msgid "Dismiss"
msgstr "Descartar"
-#: plinth/modules/upgrades/templates/upgrades.html:45
+#: plinth/modules/upgrades/templates/upgrades.html:30
msgid "Update now"
msgstr "Actualizar ahora"
-#: plinth/modules/upgrades/templates/upgrades.html:54
+#: plinth/modules/upgrades/templates/upgrades.html:39
msgid "Updating..."
msgstr "Actualizando..."
-#: plinth/modules/upgrades/templates/upgrades.html:59
+#: plinth/modules/upgrades/templates/upgrades.html:44
msgid ""
"This may take a long time to complete. During an update, "
"you cannot install apps. Also, this web interface may be temporarily "
@@ -6167,46 +6328,42 @@ msgstr ""
"puede estar temporalmente inaccesible y mostrar un error. En ese caso, "
"vuelva a cargar la página para continuar."
-#: plinth/modules/upgrades/templates/upgrades.html:73
+#: plinth/modules/upgrades/templates/upgrades.html:58
msgid "Toggle recent update logs"
msgstr "Alternar los registros de las actualizaciones recientes"
-#: plinth/modules/upgrades/templates/upgrades_configure.html:26
-#: plinth/modules/upgrades/templates/upgrades_configure.html:27
-#: plinth/modules/upgrades/views.py:107
+#: plinth/modules/upgrades/templates/upgrades_configure.html:11
+#: plinth/modules/upgrades/templates/upgrades_configure.html:12
+#: plinth/modules/upgrades/views.py:89
msgid "Manual update"
msgstr "Actualización manual"
-#: plinth/modules/upgrades/views.py:66
+#: plinth/modules/upgrades/views.py:48
#, python-brace-format
msgid "Error when configuring unattended-upgrades: {error}"
msgstr "Error al configurar las actualizaciones desatendidas: {error}"
-#: plinth/modules/upgrades/views.py:70
+#: plinth/modules/upgrades/views.py:52
msgid "Automatic upgrades enabled"
msgstr "Actualizaciones automáticas activadas"
-#: plinth/modules/upgrades/views.py:73
+#: plinth/modules/upgrades/views.py:55
msgid "Automatic upgrades disabled"
msgstr "Actualizaciones automáticas desactivadas"
-#: plinth/modules/upgrades/views.py:75
+#: plinth/modules/upgrades/views.py:57
msgid "Settings unchanged"
msgstr "Configuración sin cambio"
-#: plinth/modules/upgrades/views.py:101
+#: plinth/modules/upgrades/views.py:83
msgid "Upgrade process started."
msgstr "Proceso de actualización iniciado."
-#: plinth/modules/upgrades/views.py:104
+#: plinth/modules/upgrades/views.py:86
msgid "Starting upgrade failed."
msgstr "No se ha podido iniciar la actualización."
-#: plinth/modules/users/__init__.py:51
-msgid "Users and Groups"
-msgstr "Usuarias/os y grupos"
-
-#: plinth/modules/users/__init__.py:54
+#: plinth/modules/users/__init__.py:37
msgid ""
"Create and managed user accounts. These accounts serve as centralized "
"authentication mechanism for most apps. Some apps further require a user "
@@ -6217,7 +6374,7 @@ msgstr ""
"requieren que además la cuenta de usuario conste en un grupo para "
"autorizarles a acceder."
-#: plinth/modules/users/__init__.py:59
+#: plinth/modules/users/__init__.py:42
#, python-brace-format
msgid ""
"Any user may login to {box_name} web interface to see a list of apps "
@@ -6229,33 +6386,37 @@ msgstr ""
"sólo los usuarios del grupo admin pueden cambiar configuraciones de "
"apps o del sistema."
-#: plinth/modules/users/__init__.py:128
+#: plinth/modules/users/__init__.py:64
+msgid "Users and Groups"
+msgstr "Usuarias/os y grupos"
+
+#: plinth/modules/users/__init__.py:115
#, python-brace-format
msgid "Check LDAP entry \"{search_item}\""
msgstr "Comprobar la entrada LDAP \"{search_item}\""
-#: plinth/modules/users/forms.py:43
+#: plinth/modules/users/forms.py:28
msgid "Access to all services and system settings"
msgstr "Acceso a todos los servicios y configuraciones del sistema"
-#: plinth/modules/users/forms.py:59
+#: plinth/modules/users/forms.py:44
msgid "Username is taken or is reserved."
msgstr "El nombre de usuaria/o está en uso o reservado."
-#: plinth/modules/users/forms.py:87
+#: plinth/modules/users/forms.py:72
msgid "Enter a valid username."
msgstr "Indique un nombre de usuario válido."
-#: plinth/modules/users/forms.py:93
+#: plinth/modules/users/forms.py:78
msgid ""
"Required. 150 characters or fewer. English letters, digits and @/./-/_ only."
msgstr "Obligatorio. Hasta 150 caracteres. Solo letras, números y @/./-/_ ."
-#: plinth/modules/users/forms.py:106 plinth/modules/users/forms.py:222
+#: plinth/modules/users/forms.py:91 plinth/modules/users/forms.py:207
msgid "Permissions"
msgstr "Permisos"
-#: plinth/modules/users/forms.py:109
+#: plinth/modules/users/forms.py:94
msgid ""
"Select which services should be available to the new user. The user will be "
"able to log in to services that support single sign-on through LDAP, if they "
@@ -6270,20 +6431,20 @@ msgstr ""
"servicios, también podrán acceder al sistema por SSH con privilegios de "
"administración (sudo)."
-#: plinth/modules/users/forms.py:148 plinth/modules/users/forms.py:372
+#: plinth/modules/users/forms.py:133 plinth/modules/users/forms.py:357
msgid "Creating LDAP user failed."
msgstr "Ha fallado la creación de usuaria/o LDAP."
-#: plinth/modules/users/forms.py:159
+#: plinth/modules/users/forms.py:144
#, python-brace-format
msgid "Failed to add new user to {group} group."
msgstr "Ha fallado añadir usuaria/o nuevo al grupo {group}."
-#: plinth/modules/users/forms.py:173
+#: plinth/modules/users/forms.py:158
msgid "Authorized SSH Keys"
msgstr "Claves de SSH autorizadas"
-#: plinth/modules/users/forms.py:175
+#: plinth/modules/users/forms.py:160
msgid ""
"Setting an SSH public key will allow this user to securely log in to the "
"system without using a password. You may enter multiple keys, one on each "
@@ -6293,82 +6454,82 @@ msgstr ""
"de una clave. Puede introducir más de una clave, cada una en una línea. Las "
"líneas en blanco y las que empiecen por # se ignorarán."
-#: plinth/modules/users/forms.py:259
+#: plinth/modules/users/forms.py:244
msgid "Renaming LDAP user failed."
msgstr "Ha fallado renombrar al o la usuaria LDAP."
-#: plinth/modules/users/forms.py:271
+#: plinth/modules/users/forms.py:256
msgid "Failed to remove user from group."
msgstr "Ha fallado la eliminación del o de la usuaria del grupo."
-#: plinth/modules/users/forms.py:282
+#: plinth/modules/users/forms.py:267
msgid "Failed to add user to group."
msgstr "Ha fallado añadir al o la usuaria al grupo."
-#: plinth/modules/users/forms.py:291
+#: plinth/modules/users/forms.py:276
msgid "Unable to set SSH keys."
msgstr "No es posible configurar las claves SSH."
-#: plinth/modules/users/forms.py:306
+#: plinth/modules/users/forms.py:291
msgid "Failed to change user status."
msgstr "Ha fallado al cambiar el estado del usuario."
-#: plinth/modules/users/forms.py:314
+#: plinth/modules/users/forms.py:299
msgid "Cannot delete the only administrator in the system."
msgstr "No se puede eliminar la única cuenta de administración del sistema."
-#: plinth/modules/users/forms.py:346
+#: plinth/modules/users/forms.py:331
msgid "Changing LDAP user password failed."
msgstr "Ha fallado cambiar la clave del o de la usuaria LDAP."
-#: plinth/modules/users/forms.py:381
+#: plinth/modules/users/forms.py:366
msgid "Failed to add new user to admin group."
msgstr "Ha fallado añadir usuaria/o nueva/o al grupo admin."
-#: plinth/modules/users/forms.py:398
+#: plinth/modules/users/forms.py:383
msgid "Failed to restrict console access."
msgstr "Falló al restringir el acceso a la consola."
-#: plinth/modules/users/forms.py:410
+#: plinth/modules/users/forms.py:395
msgid "User account created, you are now logged in"
msgstr "Creada cuenta de usuaria/o, ya está usted en el sistema"
-#: plinth/modules/users/templates/users_change_password.html:26
+#: plinth/modules/users/templates/users_change_password.html:11
#, python-format
msgid "Change Password for %(username)s"
msgstr "Cambiar clave de acceso de %(username)s"
-#: plinth/modules/users/templates/users_change_password.html:36
+#: plinth/modules/users/templates/users_change_password.html:21
msgid "Save Password"
msgstr "Guardar clave de acceso"
-#: plinth/modules/users/templates/users_create.html:32
-#: plinth/modules/users/templates/users_list.html:42
-#: plinth/modules/users/templates/users_list.html:44
-#: plinth/modules/users/views.py:57
+#: plinth/modules/users/templates/users_create.html:17
+#: plinth/modules/users/templates/users_list.html:27
+#: plinth/modules/users/templates/users_list.html:29
+#: plinth/modules/users/views.py:42
msgid "Create User"
msgstr "Crear usuaria/o"
-#: plinth/modules/users/templates/users_delete.html:26
-#: plinth/modules/users/views.py:139
+#: plinth/modules/users/templates/users_delete.html:11
+#: plinth/modules/users/views.py:121
msgid "Delete User"
msgstr "Eliminar usuaria/o"
-#: plinth/modules/users/templates/users_delete.html:29
+#: plinth/modules/users/templates/users_delete.html:14
#, python-format
msgid "Delete user %(username)s permanently?"
msgstr "¿Eliminar usuaria/o %(username)s definitivamente?"
-#: plinth/modules/users/templates/users_delete.html:38
+#: plinth/modules/users/templates/users_delete.html:23
#, python-format
msgid "Delete %(username)s"
msgstr "Eliminar %(username)s"
-#: plinth/modules/users/templates/users_firstboot.html:26
+#: plinth/modules/users/templates/users_firstboot.html:11
msgid "Administrator Account"
msgstr "Cuenta de Administración"
-#: plinth/modules/users/templates/users_firstboot.html:29
+#: plinth/modules/users/templates/users_firstboot.html:14
msgid ""
"Choose a username and password to access this web interface. The password "
"can be changed later. This user will be granted administrative privileges. "
@@ -6378,26 +6539,26 @@ msgstr ""
"cambiarla después. Disfrutará de privilegios administrativos. Más adelante "
"se pueden añadir otros u otras usuarias."
-#: plinth/modules/users/templates/users_firstboot.html:42
+#: plinth/modules/users/templates/users_firstboot.html:27
msgid "Create Account"
msgstr "Crear cuenta"
-#: plinth/modules/users/templates/users_list.html:38
-#: plinth/modules/users/views.py:74
+#: plinth/modules/users/templates/users_list.html:23
+#: plinth/modules/users/views.py:59
msgid "Users"
msgstr "Usuarias/os"
-#: plinth/modules/users/templates/users_list.html:57
+#: plinth/modules/users/templates/users_list.html:42
#, python-format
msgid "Delete user %(username)s"
msgstr "Eliminar usuaria/o %(username)s"
-#: plinth/modules/users/templates/users_list.html:65
+#: plinth/modules/users/templates/users_list.html:50
#, python-format
msgid "Edit user %(username)s"
msgstr "Editar el usuario %(username)s"
-#: plinth/modules/users/templates/users_update.html:30
+#: plinth/modules/users/templates/users_update.html:15
#, python-format
msgid ""
"Use the change password form to "
@@ -6406,52 +6567,47 @@ msgstr ""
"Use el formulario para cambio de clave de "
"acceso para cambiarla."
-#: plinth/modules/users/templates/users_update.html:42
-#: plinth/templates/language-selection.html:32
+#: plinth/modules/users/templates/users_update.html:27
+#: plinth/templates/language-selection.html:17
msgid "Save Changes"
msgstr "Guardar cambios"
-#: plinth/modules/users/views.py:55
+#: plinth/modules/users/views.py:40
#, python-format
msgid "User %(username)s created."
msgstr "Se ha creado el o la usuaria %(username)s."
-#: plinth/modules/users/views.py:93
+#: plinth/modules/users/views.py:75
#, python-format
msgid "User %(username)s updated."
msgstr "El o la usuaria %(username)s se ha actualizado."
-#: plinth/modules/users/views.py:94
+#: plinth/modules/users/views.py:76
msgid "Edit User"
msgstr "Editar usuario"
-#: plinth/modules/users/views.py:149
+#: plinth/modules/users/views.py:131
#, python-brace-format
msgid "User {user} deleted."
msgstr "El o la usuaria {user} se ha eliminado."
-#: plinth/modules/users/views.py:156
+#: plinth/modules/users/views.py:138
msgid "Deleting LDAP user failed."
msgstr "Ha fallado la eliminación del o de la usuaria LDAP."
-#: plinth/modules/users/views.py:165
+#: plinth/modules/users/views.py:147
msgid "Change Password"
msgstr "Cambiar clave de acceso"
-#: plinth/modules/users/views.py:166
+#: plinth/modules/users/views.py:148
msgid "Password changed successfully."
msgstr "Clave de acceso cambiada con éxito."
-#: plinth/modules/wireguard/__init__.py:38
-#: plinth/modules/wireguard/manifest.py:29
-msgid "WireGuard"
-msgstr "WireGuard"
-
-#: plinth/modules/wireguard/__init__.py:43
+#: plinth/modules/wireguard/__init__.py:24
msgid "WireGuard is a fast, modern, secure VPN tunnel."
msgstr "WirGuard es un túnel VPN rápido, moderno y seguro."
-#: plinth/modules/wireguard/__init__.py:45
+#: plinth/modules/wireguard/__init__.py:26
#, python-brace-format
msgid ""
"It can be used to connect to a VPN provider which supports WireGuard, and to "
@@ -6460,7 +6616,7 @@ msgstr ""
"Se puede usar para conectar a un proveedor VPN que soporte WireGuard y "
"dirigir el tráfico saliente de su {box_name} a través de una VPN."
-#: plinth/modules/wireguard/__init__.py:49
+#: plinth/modules/wireguard/__init__.py:30
#, python-brace-format
msgid ""
"A second use case is to connect a mobile device to {box_name} while "
@@ -6471,18 +6627,23 @@ msgstr ""
"se viaja. Cuando se conecta a una red Wi-Fi pública se puede asegurar el "
"tráfico a través de {box_name}."
-#: plinth/modules/wireguard/forms.py:47
+#: plinth/modules/wireguard/__init__.py:52
+#: plinth/modules/wireguard/manifest.py:14
+msgid "WireGuard"
+msgstr "WireGuard"
+
+#: plinth/modules/wireguard/forms.py:32
msgid "Invalid key."
msgstr "Clave no válida."
-#: plinth/modules/wireguard/forms.py:76
-#: plinth/modules/wireguard/templates/wireguard.html:32
-#: plinth/modules/wireguard/templates/wireguard.html:89
-#: plinth/modules/wireguard/templates/wireguard_delete_server.html:38
+#: plinth/modules/wireguard/forms.py:61
+#: plinth/modules/wireguard/templates/wireguard.html:17
+#: plinth/modules/wireguard/templates/wireguard.html:74
+#: plinth/modules/wireguard/templates/wireguard_delete_server.html:23
msgid "Public Key"
msgstr "Clave pública"
-#: plinth/modules/wireguard/forms.py:77
+#: plinth/modules/wireguard/forms.py:62
msgid ""
"Public key of the peer. Example: "
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs= ."
@@ -6490,11 +6651,11 @@ msgstr ""
"Clave pública del par. Ejemplo: "
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs= ."
-#: plinth/modules/wireguard/forms.py:85
+#: plinth/modules/wireguard/forms.py:70
msgid "Endpoint of the server"
msgstr "Extremo final del servidor"
-#: plinth/modules/wireguard/forms.py:86
+#: plinth/modules/wireguard/forms.py:71
msgid ""
"Domain name and port in the form \"ip:port\". Example: demo.wireguard."
"com:12912 ."
@@ -6502,11 +6663,11 @@ msgstr ""
"Nombre de dominio y puerto de la forma: \"ip:port\". Ejemplo: demo.wireguard."
"com:12912."
-#: plinth/modules/wireguard/forms.py:91
+#: plinth/modules/wireguard/forms.py:76
msgid "Public key of the server"
msgstr "Clave pública del servidor"
-#: plinth/modules/wireguard/forms.py:92
+#: plinth/modules/wireguard/forms.py:77
msgid ""
"Provided by the server operator, a long string of characters. Example: "
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs= ."
@@ -6514,11 +6675,11 @@ msgstr ""
"Cadena larga de caracteres provista por el operador del servicio. Ejemplo: "
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs= ."
-#: plinth/modules/wireguard/forms.py:97
+#: plinth/modules/wireguard/forms.py:82
msgid "Client IP address provided by server"
msgstr "Dirección de cliente IP facilitada por el servidor"
-#: plinth/modules/wireguard/forms.py:98
+#: plinth/modules/wireguard/forms.py:83
msgid ""
"IP address assigned to this machine on the VPN after connecting to the "
"endpoint. This value is usually provided by the server operator. Example: "
@@ -6528,11 +6689,11 @@ msgstr ""
"final. Este valor por lo general lo facilita el operador del servidor. "
"Ejemplo: 192.168.0.10."
-#: plinth/modules/wireguard/forms.py:104
+#: plinth/modules/wireguard/forms.py:89
msgid "Private key of this machine"
msgstr "Clave privada en este dispositivo"
-#: plinth/modules/wireguard/forms.py:105
+#: plinth/modules/wireguard/forms.py:90
msgid ""
"Optional. New public/private keys are generated if left blank. Public key "
"can then be provided to the server. This is the recommended way. However, "
@@ -6544,11 +6705,11 @@ msgstr ""
"es la opción recomendada. Sin embargo, algunos operadores insisten en "
"facilitarle ellos. Ejemplo: MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs= ."
-#: plinth/modules/wireguard/forms.py:113
+#: plinth/modules/wireguard/forms.py:98
msgid "Pre-shared key"
msgstr "Clave pre-compartida"
-#: plinth/modules/wireguard/forms.py:114
+#: plinth/modules/wireguard/forms.py:99
msgid ""
"Optional. A shared secret key provided by the server to add an additional "
"layer of security. Fill in only if provided. Example: "
@@ -6558,104 +6719,104 @@ msgstr ""
"capa adicional de seguridad. Úselo solo si la tiene. Ejemplo: "
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs=."
-#: plinth/modules/wireguard/forms.py:120
+#: plinth/modules/wireguard/forms.py:105
msgid "Use this connection to send all outgoing traffic"
msgstr "Use esta conexión para todo el tráfico saliente"
-#: plinth/modules/wireguard/forms.py:122
+#: plinth/modules/wireguard/forms.py:107
msgid "Typically checked for a VPN service though which all traffic is sent."
msgstr ""
"Generalmente activado para el servicio VPN a través del que se envía el "
"tráfico."
-#: plinth/modules/wireguard/templates/wireguard.html:25
+#: plinth/modules/wireguard/templates/wireguard.html:10
msgid "As a Server"
msgstr "Como servidor"
-#: plinth/modules/wireguard/templates/wireguard.html:27
+#: plinth/modules/wireguard/templates/wireguard.html:12
msgid "Peers allowed to connect to this server:"
msgstr "Pares autorizados para conectarse a este servidor:"
-#: plinth/modules/wireguard/templates/wireguard.html:33
+#: plinth/modules/wireguard/templates/wireguard.html:18
msgid "Allowed IPs"
msgstr "IP permitidas"
-#: plinth/modules/wireguard/templates/wireguard.html:34
-#: plinth/modules/wireguard/templates/wireguard.html:90
+#: plinth/modules/wireguard/templates/wireguard.html:19
+#: plinth/modules/wireguard/templates/wireguard.html:75
msgid "Last Connected Time"
msgstr "Última conexión"
-#: plinth/modules/wireguard/templates/wireguard.html:53
+#: plinth/modules/wireguard/templates/wireguard.html:38
#, python-format
msgid "No peers configured to connect to this %(box_name)s yet."
msgstr "Todavía no hay pares configurados para conectarse a %(box_name)s."
-#: plinth/modules/wireguard/templates/wireguard.html:62
+#: plinth/modules/wireguard/templates/wireguard.html:47
#, python-format
msgid "Public key for this %(box_name)s:"
msgstr "Clave pública para esta %(box_name)s:"
-#: plinth/modules/wireguard/templates/wireguard.html:68
+#: plinth/modules/wireguard/templates/wireguard.html:53
msgid "Not configured yet."
msgstr "Sin configurar todavía."
-#: plinth/modules/wireguard/templates/wireguard.html:72
+#: plinth/modules/wireguard/templates/wireguard.html:57
msgid "Add a new peer"
msgstr "Añadir nuevo par"
-#: plinth/modules/wireguard/templates/wireguard.html:76
-#: plinth/modules/wireguard/views.py:69
+#: plinth/modules/wireguard/templates/wireguard.html:61
+#: plinth/modules/wireguard/views.py:51
msgid "Add Allowed Client"
msgstr "Añadir cliente autorizado"
-#: plinth/modules/wireguard/templates/wireguard.html:79
+#: plinth/modules/wireguard/templates/wireguard.html:64
msgid "As a Client"
msgstr "Como cliente"
-#: plinth/modules/wireguard/templates/wireguard.html:81
+#: plinth/modules/wireguard/templates/wireguard.html:66
#, python-format
msgid "Servers that %(box_name)s will connect to:"
msgstr "Servidores a los que se conectará %(box_name)s:"
-#: plinth/modules/wireguard/templates/wireguard.html:88
-#: plinth/modules/wireguard/templates/wireguard_delete_server.html:34
+#: plinth/modules/wireguard/templates/wireguard.html:73
+#: plinth/modules/wireguard/templates/wireguard_delete_server.html:19
msgid "Endpoint"
msgstr "Extremo"
-#: plinth/modules/wireguard/templates/wireguard.html:111
+#: plinth/modules/wireguard/templates/wireguard.html:96
msgid "No connections to remote servers are configured yet."
msgstr "Todavía no se han configurado conexiones a servidores remotos."
-#: plinth/modules/wireguard/templates/wireguard.html:119
+#: plinth/modules/wireguard/templates/wireguard.html:104
msgid "Add a new server"
msgstr "Añadir nuevo servidor"
-#: plinth/modules/wireguard/templates/wireguard.html:123
-#: plinth/modules/wireguard/views.py:178
+#: plinth/modules/wireguard/templates/wireguard.html:108
+#: plinth/modules/wireguard/views.py:160
msgid "Add Connection to Server"
msgstr "Añadir conexión a servidor"
-#: plinth/modules/wireguard/templates/wireguard_add_client.html:34
+#: plinth/modules/wireguard/templates/wireguard_add_client.html:19
msgid "Add Client"
msgstr "Añadir cliente"
-#: plinth/modules/wireguard/templates/wireguard_delete_client.html:29
+#: plinth/modules/wireguard/templates/wireguard_delete_client.html:14
msgid "Are you sure that you want to delete this client?"
msgstr "¿Seguro que desea eliminar este cliente?"
-#: plinth/modules/wireguard/templates/wireguard_delete_server.html:29
+#: plinth/modules/wireguard/templates/wireguard_delete_server.html:14
msgid "Are you sure that you want to delete this server?"
msgstr "¿Seguro que desea eliminar este servidor?"
-#: plinth/modules/wireguard/templates/wireguard_edit_client.html:34
+#: plinth/modules/wireguard/templates/wireguard_edit_client.html:19
msgid "Update Client"
msgstr "Actualizar cliente"
-#: plinth/modules/wireguard/templates/wireguard_edit_server.html:34
+#: plinth/modules/wireguard/templates/wireguard_edit_server.html:19
msgid "Update Connection"
msgstr "Actualizar conexión"
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:27
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:12
#, python-format
msgid ""
"%(box_name)s will allow this client to connect to it. Ensure that the client "
@@ -6664,44 +6825,44 @@ msgstr ""
"%(box_name)s permitirá la conexión a este cliente. Asegúrese de que el "
"cliente está configurado con la siguiente información."
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:35
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:20
msgid "Client public key:"
msgstr "Clave pública del cliente:"
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:39
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:24
msgid "IP address to use for client:"
msgstr "Dirección IP para el cliente:"
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:43
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:46
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:28
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:31
msgid "Pre-shared key:"
msgstr "Clave pre-compartida:"
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:47
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:32
msgid "Server endpoints:"
msgstr "Extremos del servidor:"
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:55
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:42
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:40
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:27
msgid "Server public key:"
msgstr "Clave pública del servidor:"
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:65
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:64
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:50
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:49
msgid "Data transmitted:"
msgstr "Datos transmitidos:"
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:69
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:68
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:54
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:53
msgid "Data received:"
msgstr "Datos recibidos:"
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:73
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:72
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:58
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:57
msgid "Latest handshake:"
msgstr "Última comunicación establecida:"
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:29
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:14
#, python-format
msgid ""
"%(box_name)s will attempt to reach a WireGuard server with the following "
@@ -6712,123 +6873,123 @@ msgstr ""
"información. Asegúrese de que el servidor está configurado para aceptar la "
"clave pública y la dirección IP de %(box_name)s."
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:38
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:23
msgid "Server endpoint:"
msgstr "Extremo del servidor:"
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:50
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:35
msgid "Public key of this machine:"
msgstr "Clave pública para este dispositivo:"
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:54
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:39
msgid "IP address of this machine:"
msgstr "Dirección IP para este dispositivo:"
-#: plinth/modules/wireguard/views.py:64
+#: plinth/modules/wireguard/views.py:46
msgid "Added new client."
msgstr "Nuevo cliente añadido."
-#: plinth/modules/wireguard/views.py:79 plinth/modules/wireguard/views.py:138
+#: plinth/modules/wireguard/views.py:61 plinth/modules/wireguard/views.py:120
msgid "Client with public key already exists"
msgstr "Ya existe un cliente con esa clave pública"
-#: plinth/modules/wireguard/views.py:92
+#: plinth/modules/wireguard/views.py:74
msgid "Allowed Client"
msgstr "Cliente autorizado"
-#: plinth/modules/wireguard/views.py:114
+#: plinth/modules/wireguard/views.py:96
msgid "Updated client."
msgstr "Cliente actualizado."
-#: plinth/modules/wireguard/views.py:119
+#: plinth/modules/wireguard/views.py:101
msgid "Modify Client"
msgstr "Modificar cliente"
-#: plinth/modules/wireguard/views.py:152
+#: plinth/modules/wireguard/views.py:134
msgid "Delete Allowed Client"
msgstr "Eliminar cliente autorizado"
-#: plinth/modules/wireguard/views.py:161
+#: plinth/modules/wireguard/views.py:143
msgid "Client deleted."
msgstr "Cliente eliminado."
-#: plinth/modules/wireguard/views.py:163
+#: plinth/modules/wireguard/views.py:145
msgid "Client not found"
msgstr "Cliente no encontrado"
-#: plinth/modules/wireguard/views.py:173
+#: plinth/modules/wireguard/views.py:155
msgid "Added new server."
msgstr "Nuevo servidor añadido."
-#: plinth/modules/wireguard/views.py:194
+#: plinth/modules/wireguard/views.py:176
msgid "Connection to Server"
msgstr "Conexión al servidor"
-#: plinth/modules/wireguard/views.py:212
+#: plinth/modules/wireguard/views.py:194
msgid "Updated server."
msgstr "Servidor actualizado."
-#: plinth/modules/wireguard/views.py:217
+#: plinth/modules/wireguard/views.py:199
msgid "Modify Connection to Server"
msgstr "Cambiar conexión al servidor"
-#: plinth/modules/wireguard/views.py:254
+#: plinth/modules/wireguard/views.py:236
msgid "Delete Connection to Server"
msgstr "Eliminar conexión al servidor"
-#: plinth/modules/wireguard/views.py:274
+#: plinth/modules/wireguard/views.py:256
msgid "Server deleted."
msgstr "Servidor eliminado."
-#: plinth/network.py:42
+#: plinth/network.py:27
msgid "PPPoE"
msgstr "PPPoE"
-#: plinth/network.py:43
+#: plinth/network.py:28
msgid "Generic"
msgstr "Genérica"
-#: plinth/package.py:137
+#: plinth/package.py:122
msgid "Error during installation"
msgstr "Error durante la instalación"
-#: plinth/package.py:159
+#: plinth/package.py:144
msgid "installing"
msgstr "instalando"
-#: plinth/package.py:161
+#: plinth/package.py:146
msgid "downloading"
msgstr "descargando"
-#: plinth/package.py:163
+#: plinth/package.py:148
msgid "media change"
msgstr "cambio de medio"
-#: plinth/package.py:165
+#: plinth/package.py:150
#, python-brace-format
msgid "configuration file: {file}"
msgstr "archivo de configuración: {file}"
-#: plinth/templates/403.html:25
+#: plinth/templates/403.html:10
msgid "403 Forbidden"
msgstr "403 Prohibido"
-#: plinth/templates/403.html:29
+#: plinth/templates/403.html:14
#, python-format
msgid "You don't have permission to access %(request_path)s on this server."
msgstr ""
"Usted no tiene permiso para acceder a %(request_path)s en este servidor."
-#: plinth/templates/404.html:25
+#: plinth/templates/404.html:10
msgid "404"
msgstr "404"
-#: plinth/templates/404.html:28
+#: plinth/templates/404.html:13
#, python-format
msgid "Requested page %(request_path)s was not found."
msgstr "No se encontró la página %(request_path)s solicitada."
-#: plinth/templates/404.html:34
+#: plinth/templates/404.html:19
msgid ""
"If you believe this missing page should exist, please file a bug at the "
"FreedomBox Service (Plinth) project sistema "
"de seguimiento de incidentes de FredoomBox."
-#: plinth/templates/500.html:25
+#: plinth/templates/500.html:10
msgid "500"
msgstr "500"
-#: plinth/templates/500.html:29
+#: plinth/templates/500.html:14
#, python-format
msgid ""
"This is an internal error and not something you caused or can fix. Please "
@@ -6856,115 +7017,119 @@ msgstr ""
"para que podamos solucionarlo. Por favor, adjunte al informe de error el resgistro de estado."
-#: plinth/templates/app.html:47
+#: plinth/templates/app-header.html:22
+msgid "Installation"
+msgstr "Instalación"
+
+#: plinth/templates/app.html:32
#, python-format
msgid "Service %(service_name)s is running."
msgstr "El servidor %(service_name)s se está ejecutando."
-#: plinth/templates/app.html:52
+#: plinth/templates/app.html:37
#, python-format
msgid "Service %(service_name)s is not running."
msgstr "El servidor %(service_name)s no se está ejecutando."
-#: plinth/templates/base.html:50
+#: plinth/templates/base.html:35
#, python-format
msgid "Core functionality and web interface for %(box_name)s"
msgstr "Funcionalidad central e interfaz web para %(box_name)s"
-#: plinth/templates/base.html:96
+#: plinth/templates/base.html:81
msgid "Toggle navigation"
msgstr "Cambiar modo de navegación"
-#: plinth/templates/base.html:120 plinth/templates/base.html:123
+#: plinth/templates/base.html:105 plinth/templates/base.html:108
msgid "Home"
msgstr "Inicio"
-#: plinth/templates/base.html:128 plinth/templates/base.html:132
+#: plinth/templates/base.html:113 plinth/templates/base.html:117
msgid "Apps"
msgstr "Aplicaciones"
-#: plinth/templates/base.html:137 plinth/templates/base.html:141
+#: plinth/templates/base.html:122 plinth/templates/base.html:126
msgid "System"
msgstr "Sistema"
-#: plinth/templates/base.html:173 plinth/templates/base.html:174
+#: plinth/templates/base.html:158 plinth/templates/base.html:159
msgid "Change password"
msgstr "Cambiar clave de acceso"
-#: plinth/templates/base.html:181 plinth/templates/base.html:182
+#: plinth/templates/base.html:166 plinth/templates/base.html:167
msgid "Restart"
msgstr "Reiniciar"
-#: plinth/templates/base.html:187 plinth/templates/base.html:188
+#: plinth/templates/base.html:172 plinth/templates/base.html:173
msgid "Shut down"
msgstr "Apagar"
-#: plinth/templates/base.html:195 plinth/templates/base.html:196
-#: plinth/templates/base.html:220 plinth/templates/base.html:222
+#: plinth/templates/base.html:180 plinth/templates/base.html:181
+#: plinth/templates/base.html:205 plinth/templates/base.html:207
msgid "Log out"
msgstr "Cerrar sesión"
-#: plinth/templates/base.html:204 plinth/templates/base.html:207
+#: plinth/templates/base.html:189 plinth/templates/base.html:192
msgid "Select language"
msgstr "Seleccionar idioma"
-#: plinth/templates/base.html:212 plinth/templates/base.html:214
+#: plinth/templates/base.html:197 plinth/templates/base.html:199
msgid "Log in"
msgstr "Iniciar sesión"
-#: plinth/templates/clients.html:32
+#: plinth/templates/clients.html:17
msgid "Web"
msgstr "Web"
-#: plinth/templates/clients.html:57
+#: plinth/templates/clients.html:42
msgid "Desktop"
msgstr "Escritorio"
-#: plinth/templates/clients.html:68
+#: plinth/templates/clients.html:53
msgid "GNU/Linux"
msgstr "GNU/Linux"
-#: plinth/templates/clients.html:70
+#: plinth/templates/clients.html:55
msgid "Windows"
msgstr "Windows"
-#: plinth/templates/clients.html:72
+#: plinth/templates/clients.html:57
msgid "macOS"
msgstr "macOS"
-#: plinth/templates/clients.html:88
+#: plinth/templates/clients.html:73
msgid "Mobile"
msgstr "Móvil"
-#: plinth/templates/clients.html:99
+#: plinth/templates/clients.html:84
msgid "Play Store"
msgstr "Play Store"
-#: plinth/templates/clients.html:101
+#: plinth/templates/clients.html:86
msgid "F-Droid"
msgstr "F-Droid"
-#: plinth/templates/clients.html:103
+#: plinth/templates/clients.html:88
msgid "App Store"
msgstr "App Store"
-#: plinth/templates/clients.html:119
+#: plinth/templates/clients.html:104
msgid "Package"
msgstr "Paquete"
-#: plinth/templates/clients.html:126
+#: plinth/templates/clients.html:111
msgid "Debian:"
msgstr "Debian:"
-#: plinth/templates/clients.html:129
+#: plinth/templates/clients.html:114
msgid "Homebrew:"
msgstr "Homebrew:"
-#: plinth/templates/clients.html:132
+#: plinth/templates/clients.html:117
msgid "RPM:"
msgstr "RPM:"
-#: plinth/templates/first_setup.html:39
+#: plinth/templates/first_setup.html:24
#, python-format
msgid ""
"Please wait for %(box_name)s to finish installation. You can start using "
@@ -6973,11 +7138,7 @@ msgstr ""
"Por favor espere a que %(box_name)s termine la instalación. Podrá empezar a "
"usar su %(box_name)s una vez finalice."
-#: plinth/templates/header.html:36
-msgid "Installation"
-msgstr "Instalación"
-
-#: plinth/templates/index.html:37
+#: plinth/templates/index.html:22
#, python-format
msgid ""
"Enable some applications to add shortcuts to "
@@ -6986,11 +7147,11 @@ msgstr ""
"Active algunas aplicaciones para añadir enlaces "
"a esta página."
-#: plinth/templates/index.html:59
+#: plinth/templates/index.html:44
msgid "Configure »"
msgstr "Configurar »"
-#: plinth/templates/index.html:115
+#: plinth/templates/index.html:100
#, python-format
msgid ""
"%(box_name)s, a Debian pure blend, is a 100%% free software self-hosting web "
@@ -7002,7 +7163,7 @@ msgstr ""
"Proporciona herramientas de comunicación online que respetan su privacidad y "
"la propiedad de sus datos."
-#: plinth/templates/index.html:124
+#: plinth/templates/index.html:109
#, python-format
msgid ""
"This portal is a part of the %(box_name)s web interface. %(box_name)s is "
@@ -7013,40 +7174,40 @@ msgstr ""
"software libre, distribuido bajo la Licencia Pública General de GNU Affero, "
"versión 3 o posterior."
-#: plinth/templates/index.html:144
+#: plinth/templates/index.html:129
msgid "Homepage"
msgstr "Página inicio"
-#: plinth/templates/index.html:147
+#: plinth/templates/index.html:132
msgid "Source Code"
msgstr "Código fuente"
-#: plinth/templates/index.html:150
+#: plinth/templates/index.html:135
msgid "Donate"
msgstr "Donar"
-#: plinth/templates/index.html:154
+#: plinth/templates/index.html:139
msgid "FreedomBox Foundation"
msgstr "Fundación FreedomBox"
-#: plinth/templates/index.html:161
+#: plinth/templates/index.html:146
msgid "IRC Chatroom"
msgstr "Sala de chat IRC"
-#: plinth/templates/index.html:166
+#: plinth/templates/index.html:151
msgid "Mailing list"
msgstr "Lista de correo"
-#: plinth/templates/internal-zone.html:26
+#: plinth/templates/internal-zone.html:11
#, python-format
msgid "%(service_name)s is available only on internal networks."
msgstr "%(service_name)s solo está disponible en redes internas."
-#: plinth/templates/internal-zone.html:32
+#: plinth/templates/internal-zone.html:17
msgid "Currently there are no network interfaces configured as internal."
msgstr "No hay ninguna interfaz de red configurada como interna actualmente."
-#: plinth/templates/internal-zone.html:34
+#: plinth/templates/internal-zone.html:19
#, python-format
msgid ""
"Currently the following network interfaces are configured as internal: "
@@ -7055,15 +7216,15 @@ msgstr ""
"Las siguientes interfaces de red están configuradas como internas "
"actualmente: %(interface_list)s"
-#: plinth/templates/notifications-dropdown.html:26
+#: plinth/templates/notifications-dropdown.html:11
msgid "Notifications"
msgstr "Notificaciones"
-#: plinth/templates/port-forwarding-info.html:23
+#: plinth/templates/port-forwarding-info.html:8
msgid "Port Forwarding"
msgstr "Redirección de Puertos"
-#: plinth/templates/port-forwarding-info.html:26
+#: plinth/templates/port-forwarding-info.html:11
#, python-format
msgid ""
"If your FreedomBox is behind a router, you will need to set up port "
@@ -7074,15 +7235,15 @@ msgstr ""
"de puertos de tu router. Deberás redireccionar los siguientes puertos para "
"%(service_name)s:"
-#: plinth/templates/setup.html:51
+#: plinth/templates/setup.html:36
msgid "Install this application?"
msgstr "¿Instalar esta aplicación?"
-#: plinth/templates/setup.html:55
+#: plinth/templates/setup.html:40
msgid "This application needs an update. Update now?"
msgstr "Esta aplicación necesita actualizarse. ¿Actualizar ahora?"
-#: plinth/templates/setup.html:66
+#: plinth/templates/setup.html:51
msgid ""
"Another installation or upgrade is already running. Please wait for a few "
"moments before trying again."
@@ -7090,49 +7251,49 @@ msgstr ""
"Otra instalación o actualización está actualmente en ejecución. Por favor "
"espere unos momentos antes de intentarlo de nuevo."
-#: plinth/templates/setup.html:73
+#: plinth/templates/setup.html:58
msgid "This application is currently not available in your distribution."
msgstr "Esta aplicación no está disponible actualmente en su distribución."
-#: plinth/templates/setup.html:87
+#: plinth/templates/setup.html:72
msgid "Install"
msgstr "Instalar"
-#: plinth/templates/setup.html:98
+#: plinth/templates/setup.html:83
msgid "Performing pre-install operation"
msgstr "Realizando operaciones previas a la instalación"
-#: plinth/templates/setup.html:102
+#: plinth/templates/setup.html:87
msgid "Performing post-install operation"
msgstr "Realizando operaciones posteriores a la instalación"
-#: plinth/templates/setup.html:107
+#: plinth/templates/setup.html:92
#, python-format
msgid "Installing %(package_names)s: %(status)s"
msgstr "Instalando %(package_names)s: %(status)s"
-#: plinth/templates/setup.html:117
+#: plinth/templates/setup.html:102
#, python-format
msgid "%(percentage)s%% complete"
msgstr "%(percentage)s%% completado"
-#: plinth/templates/toolbar.html:38
+#: plinth/templates/toolbar.html:23
msgid "Launch web client"
msgstr "Lanzar cliente web"
-#: plinth/templates/toolbar.html:47
+#: plinth/templates/toolbar.html:32
msgid "Client Apps"
msgstr "Aplicaciones de cliente"
-#: plinth/views.py:179
+#: plinth/views.py:189
msgid "Application enabled"
msgstr "Aplicación activada"
-#: plinth/views.py:182
+#: plinth/views.py:192
msgid "Application disabled"
msgstr "Aplicación desactivada"
-#: plinth/web_framework.py:190
+#: plinth/web_framework.py:107
msgid "Gujarati"
msgstr "Gujarati"
diff --git a/plinth/locale/fa/LC_MESSAGES/django.po b/plinth/locale/fa/LC_MESSAGES/django.po
index 699051852..1196cace6 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: 2020-02-14 21:26+0200\n"
+"POT-Creation-Date: 2020-02-24 19:12-0500\n"
"PO-Revision-Date: 2016-08-12 15:51+0000\n"
"Last-Translator: Masoud Abkenar This means that devices on the Internet can reach you when you are " +"connected to the Internet. Every time you connect to the Internet with your " +"Internet Service Provider (ISP), you may get a different IP address, " +"especially after some offline time. Many ISPs offer this type of " +"connectivity. If you have a public IP address but are unsure if it changes " +"over time or not, it is safer to choose this option.
" +msgstr "" + #: plinth/modules/networks/forms.py:313 +#, python-brace-format +msgid "" +"I have a public IP address that does not change overtime (recommended)This means that devices on the Internet can reach you " +"when you are connected to the Internet. Every time you connect to the " +"Internet with your Internet Service Provider (ISP), you always get the same " +"IP address. This is the most trouble-free setup for many {box_name} services " +"but very few ISPs offer this. You may be able to get this service from your " +"ISP by making an additional payment.
" +msgstr "" + +#: plinth/modules/networks/forms.py:326 +#, python-brace-format +msgid "" +"I dont have a public IP addressThis means that " +"devices on the Internet can not reach you when you are connected to " +"the Internet. Every time you connect to the Internet with your Internet " +"Service Provider (ISP), you get an IP address that is only relevant for " +"local networks. Many ISPs offer this type of connectivity. This is the most " +"troublesome situation for hosting services at home. {box_name} provides many " +"workaround solutions but each solution has some limitations.
" +msgstr "" + +#: plinth/modules/networks/forms.py:351 #, fuzzy #| msgid "Current Network Configuration" msgid "Preferred router configuration" msgstr "پیکربندی فعلی شبکه" -#: plinth/modules/networks/forms.py:318 +#: plinth/modules/networks/forms.py:356 #, python-brace-format msgid "" -"Use DMZ feature to forward all trafficMost routers " -"provide a configuration setting called DMZ. This will allow the router to " -"forward all incoming traffic from the internet to a single IP address such " -"as the {box_name}'s address. First remember to configure a static local IP " -"address for your {box_name} in your router's configuration.
" +"Use DMZ feature to forward all traffic (recommended)Most routers provide a configuration setting called DMZ. This will allow " +"the router to forward all incoming traffic from the Internet to a single IP " +"address such as the {box_name}'s IP address. First remember to configure a " +"static local IP address for your {box_name} in your router's configuration." +"p>" msgstr "" -#: plinth/modules/networks/forms.py:332 +#: plinth/modules/networks/forms.py:368 #, python-brace-format msgid "" -"Forward Specific Traffic as needed by each application
You may alternatively choose to forward only specific traffic to your " "{box_name}. This is ideal if you have other servers like {box_name} in your " "network or if your router does not support DMZ feature. All applications " @@ -3474,264 +3545,270 @@ msgid "" "to be forwarded for that application to work.
" msgstr "" -#: plinth/modules/networks/forms.py:349 +#: plinth/modules/networks/forms.py:382 msgid "" -"Router is currently unconfiguredChoose this if you " +"Router is currently unconfigured
Choose this if you " "have not configured or are unable to configure the router currently and wish " "to be reminded later. Some of the other configuration steps may fail.
" msgstr "" -#: plinth/modules/networks/networks.py:43 +#: plinth/modules/networks/networks.py:32 msgid "Network Connections" msgstr "اتصالهای شبکه" -#: plinth/modules/networks/networks.py:59 +#: plinth/modules/networks/networks.py:46 msgid "Cannot show connection: Connection not found." msgstr "نمیتوان اتصال را نشان داد: اتصالی پیدا نشد." -#: plinth/modules/networks/networks.py:94 +#: plinth/modules/networks/networks.py:81 msgid "Connection Information" msgstr "اطلاعات اتصال" -#: plinth/modules/networks/networks.py:108 +#: plinth/modules/networks/networks.py:95 msgid "Cannot edit connection: Connection not found." msgstr "نمیتوان اتصال را ویراست: اتصالی پیدا نشد." -#: plinth/modules/networks/networks.py:114 +#: plinth/modules/networks/networks.py:101 msgid "This type of connection is not yet understood." msgstr "از این نوع اتصال هنوز پشتیبانی نمیشود." -#: plinth/modules/networks/networks.py:136 -#: plinth/modules/networks/networks.py:220 -#: plinth/modules/networks/templates/connections_edit.html:35 +#: plinth/modules/networks/networks.py:123 +#: plinth/modules/networks/networks.py:207 +#: plinth/modules/networks/templates/connections_edit.html:20 msgid "Edit Connection" msgstr "ویرایش اتصال" -#: plinth/modules/networks/networks.py:232 +#: plinth/modules/networks/networks.py:219 #, python-brace-format msgid "Activated connection {name}." msgstr "اتصال {name} فعال شد." -#: plinth/modules/networks/networks.py:236 +#: plinth/modules/networks/networks.py:223 msgid "Failed to activate connection: Connection not found." msgstr "فعالسازی اتصال شکست خورد: اتصالی پیدا نشد." -#: plinth/modules/networks/networks.py:242 +#: plinth/modules/networks/networks.py:229 #, python-brace-format msgid "Failed to activate connection {name}: No suitable device is available." msgstr "فعالسازی اتصال {name} شکست خورد: دستگاه مناسبی موجود نیست." -#: plinth/modules/networks/networks.py:255 +#: plinth/modules/networks/networks.py:242 #, python-brace-format msgid "Deactivated connection {name}." msgstr "اتصال {name} غیرفعال شد." -#: plinth/modules/networks/networks.py:259 +#: plinth/modules/networks/networks.py:246 msgid "Failed to de-activate connection: Connection not found." msgstr "غیرفعالسازی اتصال شکست خورد: اتصالی پیدا نشد." -#: plinth/modules/networks/networks.py:269 -#: plinth/modules/networks/templates/connections_list.html:62 -#: plinth/modules/networks/templates/connections_list.html:64 +#: plinth/modules/networks/networks.py:256 +#: plinth/modules/networks/templates/connections_list.html:12 +#: plinth/modules/networks/templates/connections_list.html:14 msgid "Nearby Wi-Fi Networks" msgstr "شبکههای بیسیم در نزدیکی" -#: plinth/modules/networks/networks.py:293 -#: plinth/modules/networks/templates/connections_list.html:67 -#: plinth/modules/networks/templates/connections_list.html:69 -#: plinth/modules/wireguard/templates/wireguard_add_server.html:34 +#: plinth/modules/networks/networks.py:280 +#: plinth/modules/networks/templates/connections_list.html:17 +#: plinth/modules/networks/templates/connections_list.html:19 +#: plinth/modules/wireguard/templates/wireguard_add_server.html:19 msgid "Add Connection" msgstr "افزودن اتصال" -#: plinth/modules/networks/networks.py:311 +#: plinth/modules/networks/networks.py:298 msgid "Adding New Generic Connection" msgstr "افزودن یک اتصال عام تازه" -#: plinth/modules/networks/networks.py:329 +#: plinth/modules/networks/networks.py:316 msgid "Adding New Ethernet Connection" msgstr "افزودن اتصال اترنت تازه" -#: plinth/modules/networks/networks.py:347 +#: plinth/modules/networks/networks.py:334 msgid "Adding New PPPoE Connection" msgstr "افزودن اتصال PPPoE تازه" -#: plinth/modules/networks/networks.py:382 +#: plinth/modules/networks/networks.py:369 msgid "Adding New Wi-Fi Connection" msgstr "افزودن اتصال Wi-Fi تازه" -#: plinth/modules/networks/networks.py:397 +#: plinth/modules/networks/networks.py:384 #, python-brace-format msgid "Connection {name} deleted." msgstr "اتصال {name} پاک شد." -#: plinth/modules/networks/networks.py:401 -#: plinth/modules/networks/networks.py:411 +#: plinth/modules/networks/networks.py:388 +#: plinth/modules/networks/networks.py:398 msgid "Failed to delete connection: Connection not found." msgstr "پاککردن اتصال شکست خورد: اتصال پیدا نشد." -#: plinth/modules/networks/networks.py:416 -#: plinth/modules/networks/templates/connections_delete.html:26 +#: plinth/modules/networks/networks.py:403 +#: plinth/modules/networks/templates/connections_delete.html:11 msgid "Delete Connection" msgstr "پاککردن اتصال" -#: plinth/modules/networks/networks.py:442 +#: plinth/modules/networks/networks.py:428 #, fuzzy #| msgid "Configuration updated" msgid "Router configuration type saved." msgstr "پیکربندی بهروز شد" -#: plinth/modules/networks/templates/connection_show.html:43 +#: plinth/modules/networks/networks.py:474 +#, fuzzy +#| msgid "Configuration updated" +msgid "Internet connection type saved." +msgstr "پیکربندی بهروز شد" + +#: plinth/modules/networks/templates/connection_show.html:28 msgid "Edit connection" msgstr "ویرایش اتصال" -#: plinth/modules/networks/templates/connection_show.html:43 -#: plinth/modules/wireguard/templates/wireguard_show_client.html:83 -#: plinth/modules/wireguard/templates/wireguard_show_server.html:84 -#: plinth/templates/base.html:167 plinth/templates/base.html:168 +#: plinth/modules/networks/templates/connection_show.html:28 +#: plinth/modules/wireguard/templates/wireguard_show_client.html:68 +#: plinth/modules/wireguard/templates/wireguard_show_server.html:69 +#: plinth/templates/base.html:152 plinth/templates/base.html:153 msgid "Edit" msgstr "ویرایش" -#: plinth/modules/networks/templates/connection_show.html:50 -#: plinth/modules/networks/templates/connections_list.html:90 +#: plinth/modules/networks/templates/connection_show.html:35 +#: plinth/modules/networks/templates/connections_list.html:40 msgid "Deactivate" msgstr "غیرفعالسازی" -#: plinth/modules/networks/templates/connection_show.html:57 -#: plinth/modules/networks/templates/connections_list.html:98 +#: plinth/modules/networks/templates/connection_show.html:42 +#: plinth/modules/networks/templates/connections_list.html:48 msgid "Activate" msgstr "فعالسازی" -#: plinth/modules/networks/templates/connection_show.html:63 +#: plinth/modules/networks/templates/connection_show.html:48 msgid "Delete connection" msgstr "پاککردن اتصال" -#: plinth/modules/networks/templates/connection_show.html:66 -#: plinth/modules/networks/templates/connections_diagram.html:73 -#: plinth/modules/networks/templates/connections_diagram.html:76 -#: plinth/modules/networks/templates/connections_diagram.html:105 -#: plinth/modules/networks/templates/connections_diagram.html:127 +#: plinth/modules/networks/templates/connection_show.html:51 +#: plinth/modules/networks/templates/connections_diagram.html:58 +#: plinth/modules/networks/templates/connections_diagram.html:61 +#: plinth/modules/networks/templates/connections_diagram.html:90 +#: plinth/modules/networks/templates/connections_diagram.html:112 msgid "Connection" msgstr "اتصال" -#: plinth/modules/networks/templates/connection_show.html:71 +#: plinth/modules/networks/templates/connection_show.html:56 msgid "Primary connection" msgstr "اتصال اصلی" -#: plinth/modules/networks/templates/connection_show.html:73 -#: plinth/modules/networks/templates/connection_show.html:217 -#: plinth/modules/networks/templates/connection_show.html:256 +#: plinth/modules/networks/templates/connection_show.html:58 +#: plinth/modules/networks/templates/connection_show.html:202 +#: plinth/modules/networks/templates/connection_show.html:241 msgid "yes" msgstr "بله" -#: plinth/modules/networks/templates/connection_show.html:84 -#: plinth/modules/storage/templates/storage.html:40 +#: plinth/modules/networks/templates/connection_show.html:69 +#: plinth/modules/storage/templates/storage.html:25 msgid "Device" msgstr "وسیله" -#: plinth/modules/networks/templates/connection_show.html:88 +#: plinth/modules/networks/templates/connection_show.html:73 msgid "State" msgstr "وضعیت" -#: plinth/modules/networks/templates/connection_show.html:93 +#: plinth/modules/networks/templates/connection_show.html:78 msgid "State reason" msgstr "دلیل وضعیت" -#: plinth/modules/networks/templates/connection_show.html:102 +#: plinth/modules/networks/templates/connection_show.html:87 msgid "MAC address" msgstr "نشانی MAC" -#: plinth/modules/networks/templates/connection_show.html:106 +#: plinth/modules/networks/templates/connection_show.html:91 msgid "Interface" msgstr "واسط" -#: plinth/modules/networks/templates/connection_show.html:110 -#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:33 -#: plinth/modules/snapshot/templates/snapshot_manage.html:45 -#: plinth/modules/snapshot/templates/snapshot_rollback.html:41 +#: plinth/modules/networks/templates/connection_show.html:95 +#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:18 +#: plinth/modules/snapshot/templates/snapshot_manage.html:30 +#: plinth/modules/snapshot/templates/snapshot_rollback.html:26 msgid "Description" msgstr "شرح" -#: plinth/modules/networks/templates/connection_show.html:116 +#: plinth/modules/networks/templates/connection_show.html:101 msgid "Physical Link" msgstr "پیوند فیزیکی" -#: plinth/modules/networks/templates/connection_show.html:121 +#: plinth/modules/networks/templates/connection_show.html:106 msgid "Link state" msgstr "وضعیت پیوند" -#: plinth/modules/networks/templates/connection_show.html:125 +#: plinth/modules/networks/templates/connection_show.html:110 msgid "cable is connected" msgstr "سیم وصل است" -#: plinth/modules/networks/templates/connection_show.html:128 +#: plinth/modules/networks/templates/connection_show.html:113 msgid "please check cable" msgstr "لطفاً سیم را بررسی کنید" -#: plinth/modules/networks/templates/connection_show.html:133 -#: plinth/modules/networks/templates/connection_show.html:149 +#: plinth/modules/networks/templates/connection_show.html:118 +#: plinth/modules/networks/templates/connection_show.html:134 msgid "Speed" msgstr "سرعت" -#: plinth/modules/networks/templates/connection_show.html:135 +#: plinth/modules/networks/templates/connection_show.html:120 #, python-format msgid "%(ethernet_speed)s Mbit/s" msgstr "%(ethernet_speed)s مگابیت/ثانیه" -#: plinth/modules/networks/templates/connection_show.html:151 +#: plinth/modules/networks/templates/connection_show.html:136 #, python-format msgid "%(wireless_bitrate)s Mbit/s" msgstr "%(wireless_bitrate)s مگابیت/ثانیه" -#: plinth/modules/networks/templates/connection_show.html:163 +#: plinth/modules/networks/templates/connection_show.html:148 msgid "Signal strength" msgstr "شدت سیگنال" -#: plinth/modules/networks/templates/connection_show.html:181 +#: plinth/modules/networks/templates/connection_show.html:166 msgid "IPv4" msgstr "آیپی ن۴" -#: plinth/modules/networks/templates/connection_show.html:186 -#: plinth/modules/networks/templates/connection_show.html:227 -#: plinth/modules/shadowsocks/forms.py:64 +#: plinth/modules/networks/templates/connection_show.html:171 +#: plinth/modules/networks/templates/connection_show.html:212 +#: plinth/modules/shadowsocks/forms.py:49 msgid "Method" msgstr "روش" -#: plinth/modules/networks/templates/connection_show.html:193 -#: plinth/modules/networks/templates/connection_show.html:234 +#: plinth/modules/networks/templates/connection_show.html:178 +#: plinth/modules/networks/templates/connection_show.html:219 msgid "IP address" msgstr "نشانی آیپی" -#: plinth/modules/networks/templates/connection_show.html:209 -#: plinth/modules/networks/templates/connection_show.html:248 +#: plinth/modules/networks/templates/connection_show.html:194 +#: plinth/modules/networks/templates/connection_show.html:233 msgid "DNS server" msgstr "دیاناس" -#: plinth/modules/networks/templates/connection_show.html:216 -#: plinth/modules/networks/templates/connection_show.html:255 -#: plinth/modules/storage/forms.py:156 +#: plinth/modules/networks/templates/connection_show.html:201 +#: plinth/modules/networks/templates/connection_show.html:240 +#: plinth/modules/storage/forms.py:141 msgid "Default" msgstr "پیشفرض" -#: plinth/modules/networks/templates/connection_show.html:222 +#: plinth/modules/networks/templates/connection_show.html:207 msgid "IPv6" msgstr "آیپی ن۶" -#: plinth/modules/networks/templates/connection_show.html:263 +#: plinth/modules/networks/templates/connection_show.html:248 msgid "This connection is not active." msgstr "این اتصال فعال نیست." -#: plinth/modules/networks/templates/connection_show.html:266 -#: plinth/modules/security/__init__.py:38 plinth/modules/security/views.py:47 +#: plinth/modules/networks/templates/connection_show.html:251 +#: plinth/modules/security/__init__.py:45 msgid "Security" msgstr "امنیت" -#: plinth/modules/networks/templates/connection_show.html:271 -#: plinth/modules/networks/templates/connection_show.html:291 -#: plinth/modules/networks/templates/connection_show.html:310 +#: plinth/modules/networks/templates/connection_show.html:256 +#: plinth/modules/networks/templates/connection_show.html:276 +#: plinth/modules/networks/templates/connection_show.html:295 msgid "Firewall zone" msgstr "محدودهٔ فایروال" -#: plinth/modules/networks/templates/connection_show.html:280 +#: plinth/modules/networks/templates/connection_show.html:265 msgid "" "This interface should be connected to a local network/machine. If you " "connect this interface to a public network, services meant to be available " @@ -3741,7 +3818,7 @@ msgstr "" "وصل کنید، سرویسهایی که قرار بوده محلی باشند از خارج نیز قابلاستفاده میشوند. " "این میتواند یک خطر امنیتی باشد." -#: plinth/modules/networks/templates/connection_show.html:300 +#: plinth/modules/networks/templates/connection_show.html:285 msgid "" "This interface should receive your Internet connection. If you connect it to " "a local network/machine, many services meant to available only internally " @@ -3751,7 +3828,7 @@ msgstr "" "شبکهٔ محلی وصل کنید، بسیاری از سرویسهایی که قرار بوده به طور محلی در دسترس " "باشند غیرقابل دسترسی میشوند." -#: plinth/modules/networks/templates/connection_show.html:319 +#: plinth/modules/networks/templates/connection_show.html:304 #, python-format msgid "" "This interface is not maintained by %(box_name)s. Its security status is " @@ -3763,115 +3840,140 @@ msgstr "" "ناشناخته است. بسیاری از سرویسهای %(box_name)s شاید با این واسط کار نکنند. " "بهتر است که این اتصال را پاک یا غیرفعال کرده و آن را دوباره تنظیم کنید." -#: plinth/modules/networks/templates/connections_create.html:34 +#: plinth/modules/networks/templates/connections_create.html:19 msgid "Create Connection" msgstr "ساختن اتصال" -#: plinth/modules/networks/templates/connections_delete.html:29 +#: plinth/modules/networks/templates/connections_delete.html:14 #, python-format msgid "Delete connection %(name)s permanently?" msgstr "اتصال %(name)s را برای همیشه پاک میکنید؟" -#: plinth/modules/networks/templates/connections_diagram.html:65 +#: plinth/modules/networks/templates/connections_diagram.html:50 msgid "Internet" msgstr "اینترنت" -#: plinth/modules/networks/templates/connections_diagram.html:70 -#: plinth/modules/networks/templates/connections_diagram.html:102 +#: plinth/modules/networks/templates/connections_diagram.html:55 +#: plinth/modules/networks/templates/connections_diagram.html:87 #, fuzzy msgid "Spacing" msgstr "Spacing" -#: plinth/modules/networks/templates/connections_diagram.html:83 -#: plinth/modules/networks/templates/connections_diagram.html:113 -#: plinth/network.py:40 +#: plinth/modules/networks/templates/connections_diagram.html:68 +#: plinth/modules/networks/templates/connections_diagram.html:98 +#: plinth/network.py:25 msgid "Ethernet" msgstr "اترنت" -#: plinth/modules/networks/templates/connections_diagram.html:86 -#: plinth/modules/networks/templates/connections_diagram.html:116 -#: plinth/network.py:41 +#: plinth/modules/networks/templates/connections_diagram.html:71 +#: plinth/modules/networks/templates/connections_diagram.html:101 +#: plinth/network.py:26 msgid "Wi-Fi" msgstr "Wi-Fi" -#: plinth/modules/networks/templates/connections_diagram.html:89 +#: plinth/modules/networks/templates/connections_diagram.html:74 #, python-format msgid "Show connection %(connection.name)s" msgstr "اتصال 1%(connection.name)s را نشان بده" -#: plinth/modules/networks/templates/connections_diagram.html:119 +#: plinth/modules/networks/templates/connections_diagram.html:104 #, python-format msgid "Show connection %(name)s" msgstr "اتصال %(name)s را نشان بده" -#: plinth/modules/networks/templates/connections_diagram.html:131 +#: plinth/modules/networks/templates/connections_diagram.html:116 msgid "Computer" msgstr "کامپیوتر" -#: plinth/modules/networks/templates/connections_list.html:58 +#: plinth/modules/networks/templates/connections_list.html:8 #, fuzzy #| msgid "Connection" msgid "Connections" msgstr "اتصال" -#: plinth/modules/networks/templates/connections_list.html:79 +#: plinth/modules/networks/templates/connections_list.html:29 #, python-format msgid "Delete connection %(name)s" msgstr "اتصال %(name)s را پاک کن" -#: plinth/modules/networks/templates/connections_list.html:104 +#: plinth/modules/networks/templates/connections_list.html:54 msgid "Active" msgstr "فعال" -#: plinth/modules/networks/templates/connections_list.html:107 +#: plinth/modules/networks/templates/connections_list.html:57 msgid "Inactive" msgstr "غیرفعال" -#: plinth/modules/networks/templates/connections_list.html:124 -#, python-format -msgid "%(box_name)s Internet Connectivity" +#: plinth/modules/networks/templates/connections_type_select.html:19 +msgid "Create..." +msgstr "ساختن..." + +#: plinth/modules/networks/templates/internet_connectivity_content.html:10 +msgid "What Type Of Internet Connection Do You Have?" msgstr "" -#: plinth/modules/networks/templates/connections_list.html:129 -#, python-format +#: plinth/modules/networks/templates/internet_connectivity_content.html:16 msgid "" -"The following best describes how your %(box_name)s is connected in your " -"network. This information is used only to suggest necessary configuration " -"actions." +"Select an option that best describes the type of Internet connection. This " +"information is used only to guide you with further setup." msgstr "" -#: plinth/modules/networks/templates/connections_list.html:137 -#, python-format +#: plinth/modules/networks/templates/internet_connectivity_firstboot.html:18 +#: plinth/modules/networks/templates/router_configuration_firstboot.html:18 +msgid "Skip this step" +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_firstboot.html:19 +#: plinth/modules/networks/templates/router_configuration_firstboot.html:19 +msgid "Next" +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:9 +#, fuzzy +#| msgid "Connection Type" +msgid "Your Internet Connection Type" +msgstr "نوع اتصال" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:14 msgid "" -"Your %(box_name)s gets its internet from your Router via WiFi or Ethernet " -"cable. This is a typical home setup." +"The following best describes the type of Internet connection provided by " +"your ISP. This information is only used to suggest you necessary " +"configuration actions." msgstr "" -#: plinth/modules/networks/templates/connections_list.html:145 -#: plinth/modules/networks/templates/connections_list.html:147 +#: plinth/modules/networks/templates/internet_connectivity_main.html:23 +msgid "My ISP provides a public IP address that does not change over time." +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:27 +msgid "My ISP provides a public IP address that may change over time." +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:31 +msgid "My ISP does not provide a public IP address." +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:37 +#: plinth/modules/networks/templates/router_configuration_main.html:29 #, fuzzy #| msgid "Create..." msgid "Update..." msgstr "ساختن..." -#: plinth/modules/networks/templates/connections_type_select.html:34 -msgid "Create..." -msgstr "ساختن..." - -#: plinth/modules/networks/templates/router_configuration_content.html:25 +#: plinth/modules/networks/templates/router_configuration_content.html:10 #, fuzzy, python-format #| msgid "%(box_name)s Setup" msgid "Setup %(box_name)s Behind a Router" msgstr "راهاندازی %(box_name)s" -#: plinth/modules/networks/templates/router_configuration_content.html:31 +#: plinth/modules/networks/templates/router_configuration_content.html:16 #, python-format msgid "" "Your %(box_name)s gets its internet connection from your router via Wi-Fi or " "Ethernet cable. This is a typical home setup." msgstr "" -#: plinth/modules/networks/templates/router_configuration_content.html:38 +#: plinth/modules/networks/templates/router_configuration_content.html:23 #, python-format msgid "" "With this setup, any device on the internet trying to reach your " @@ -3880,24 +3982,24 @@ msgid "" "the services." msgstr "" -#: plinth/modules/networks/templates/router_configuration_content.html:47 +#: plinth/modules/networks/templates/router_configuration_content.html:32 msgid "" "If you don't have control over your router, choose not to configure it. To " -"see options, to overcome this limitation, choose 'no public address' option " +"see options to overcome this limitation, choose 'no public address' option " "in Internet connection type selection." msgstr "" -#: plinth/modules/networks/templates/router_configuration_content.html:54 +#: plinth/modules/networks/templates/router_configuration_content.html:39 msgid "Choose How You Wish to Configure Your Router" msgstr "" -#: plinth/modules/networks/templates/router_configuration_content.html:57 +#: plinth/modules/networks/templates/router_configuration_content.html:42 msgid "" "You will need to login to your router's administration console provided by " "the router. This may look like one of the following:" msgstr "" -#: plinth/modules/networks/templates/router_configuration_content.html:69 +#: plinth/modules/networks/templates/router_configuration_content.html:54 msgid "" "The username and password is configured by you when you first setup the " "router. For many routers, this information is printed at the back of the " @@ -3907,26 +4009,27 @@ msgid "" "full instructions on how to perform this task." msgstr "" -#: plinth/modules/networks/templates/router_configuration_firstboot.html:33 -msgid "skip this step" +#: plinth/modules/networks/templates/router_configuration_main.html:9 +#, python-format +msgid "%(box_name)s Internet Connectivity" msgstr "" -#: plinth/modules/networks/templates/router_configuration_firstboot.html:35 -msgid "Next" +#: plinth/modules/networks/templates/router_configuration_main.html:15 +#, python-format +msgid "" +"The following best describes how your %(box_name)s is connected in your " +"network. This information is used only to suggest necessary configuration " +"actions." msgstr "" -#: plinth/modules/openvpn/__init__.py:39 plinth/modules/openvpn/manifest.py:33 -#, fuzzy -#| msgid "Open" -msgid "OpenVPN" -msgstr "باز" - -#: plinth/modules/openvpn/__init__.py:43 -#: plinth/modules/wireguard/__init__.py:40 -msgid "Virtual Private Network" +#: plinth/modules/networks/templates/router_configuration_main.html:23 +#, python-format +msgid "" +"Your %(box_name)s gets its Internet from your Router via Wi-Fi or Ethernet " +"cable. This is a typical home setup." msgstr "" -#: plinth/modules/openvpn/__init__.py:47 +#: plinth/modules/openvpn/__init__.py:26 #, python-brace-format msgid "" "Virtual Private Network (VPN) is a technique for securely connecting two " @@ -3937,21 +4040,32 @@ msgid "" "security and anonymity." msgstr "" -#: plinth/modules/openvpn/__init__.py:79 +#: plinth/modules/openvpn/__init__.py:49 plinth/modules/openvpn/manifest.py:18 +#, fuzzy +#| msgid "Open" +msgid "OpenVPN" +msgstr "باز" + +#: plinth/modules/openvpn/__init__.py:50 +#: plinth/modules/wireguard/__init__.py:53 +msgid "Virtual Private Network" +msgstr "" + +#: plinth/modules/openvpn/__init__.py:61 #, python-brace-format msgid "" "Download Profile" msgstr "" -#: plinth/modules/openvpn/forms.py:27 +#: plinth/modules/openvpn/forms.py:12 msgid "Enable OpenVPN server" msgstr "" -#: plinth/modules/openvpn/manifest.py:63 -msgid "TunnelBlick" +#: plinth/modules/openvpn/manifest.py:48 +msgid "Tunnelblick" msgstr "" -#: plinth/modules/openvpn/templates/openvpn.html:42 +#: plinth/modules/openvpn/templates/openvpn.html:27 #, python-format msgid "" "OpenVPN has not yet been setup. Performing a secure setup takes a very long " @@ -3959,15 +4073,15 @@ msgid "" "If the setup is interrupted, you may start it again." msgstr "" -#: plinth/modules/openvpn/templates/openvpn.html:55 +#: plinth/modules/openvpn/templates/openvpn.html:40 msgid "Start setup" msgstr "" -#: plinth/modules/openvpn/templates/openvpn.html:64 +#: plinth/modules/openvpn/templates/openvpn.html:49 msgid "OpenVPN setup is running" msgstr "" -#: plinth/modules/openvpn/templates/openvpn.html:68 +#: plinth/modules/openvpn/templates/openvpn.html:53 #, python-format msgid "" "To perform a secure setup, this process takes a very long time. Depending " @@ -3975,11 +4089,11 @@ msgid "" "interrupted, you may start it again." msgstr "" -#: plinth/modules/openvpn/templates/openvpn.html:87 +#: plinth/modules/openvpn/templates/openvpn.html:72 msgid "Profile" msgstr "" -#: plinth/modules/openvpn/templates/openvpn.html:90 +#: plinth/modules/openvpn/templates/openvpn.html:75 #, python-format msgid "" "To connect to %(box_name)s's VPN, you need to download a profile and feed it " @@ -3988,32 +4102,24 @@ msgid "" "clients and instructions on how to configure them." msgstr "" -#: plinth/modules/openvpn/templates/openvpn.html:100 +#: plinth/modules/openvpn/templates/openvpn.html:85 #, python-format msgid "Profile is specific to each user of %(box_name)s. Keep it a secret." msgstr "" -#: plinth/modules/openvpn/templates/openvpn.html:111 +#: plinth/modules/openvpn/templates/openvpn.html:96 msgid "Download my profile" msgstr "" -#: plinth/modules/openvpn/views.py:133 +#: plinth/modules/openvpn/views.py:114 msgid "Setup completed." msgstr "" -#: plinth/modules/openvpn/views.py:135 +#: plinth/modules/openvpn/views.py:116 msgid "Setup failed." msgstr "" -#: plinth/modules/pagekite/__init__.py:39 -msgid "PageKite" -msgstr "" - -#: plinth/modules/pagekite/__init__.py:41 -msgid "Public Visibility" -msgstr "" - -#: plinth/modules/pagekite/__init__.py:45 +#: plinth/modules/pagekite/__init__.py:26 #, python-brace-format msgid "" "PageKite is a system for exposing {box_name} services when you don't have a " @@ -4022,33 +4128,33 @@ msgid "" "following situations:" msgstr "" -#: plinth/modules/pagekite/__init__.py:50 +#: plinth/modules/pagekite/__init__.py:31 #, python-brace-format msgid "{box_name} is behind a restricted firewall." msgstr "" -#: plinth/modules/pagekite/__init__.py:53 +#: plinth/modules/pagekite/__init__.py:34 #, python-brace-format msgid "{box_name} is connected to a (wireless) router which you don't control." msgstr "" -#: plinth/modules/pagekite/__init__.py:55 +#: plinth/modules/pagekite/__init__.py:36 msgid "" "Your ISP does not provide you an external IP address and instead provides " "Internet connection through NAT." msgstr "" -#: plinth/modules/pagekite/__init__.py:57 +#: plinth/modules/pagekite/__init__.py:38 msgid "" "Your ISP does not provide you a static IP address and your IP address " "changes every time you connect to Internet." msgstr "" -#: plinth/modules/pagekite/__init__.py:59 +#: plinth/modules/pagekite/__init__.py:40 msgid "Your ISP limits incoming connections." msgstr "" -#: plinth/modules/pagekite/__init__.py:61 +#: plinth/modules/pagekite/__init__.py:42 #, python-brace-format msgid "" "PageKite works around NAT, firewalls and IP address limitations by using a " @@ -4057,140 +4163,148 @@ msgid "" "the future it might be possible to use your buddy's {box_name} for this." msgstr "" -#: plinth/modules/pagekite/__init__.py:87 +#: plinth/modules/pagekite/__init__.py:62 +msgid "PageKite" +msgstr "" + +#: plinth/modules/pagekite/__init__.py:64 +msgid "Public Visibility" +msgstr "" + +#: plinth/modules/pagekite/__init__.py:74 #, fuzzy #| msgid "Available Domains" msgid "PageKite Domain" msgstr "دامنههای موجود" -#: plinth/modules/pagekite/forms.py:66 +#: plinth/modules/pagekite/forms.py:51 msgid "Server domain" msgstr "" -#: plinth/modules/pagekite/forms.py:68 +#: plinth/modules/pagekite/forms.py:53 msgid "" "Select your pagekite server. Set \"pagekite.net\" to use the default " "pagekite.net server." msgstr "" -#: plinth/modules/pagekite/forms.py:71 plinth/modules/shadowsocks/forms.py:55 +#: plinth/modules/pagekite/forms.py:56 plinth/modules/shadowsocks/forms.py:40 msgid "Server port" msgstr "" -#: plinth/modules/pagekite/forms.py:72 +#: plinth/modules/pagekite/forms.py:57 msgid "Port of your pagekite server (default: 80)" msgstr "" -#: plinth/modules/pagekite/forms.py:74 +#: plinth/modules/pagekite/forms.py:59 msgid "Kite name" msgstr "" -#: plinth/modules/pagekite/forms.py:75 +#: plinth/modules/pagekite/forms.py:60 msgid "Example: mybox.pagekite.me" msgstr "" -#: plinth/modules/pagekite/forms.py:77 +#: plinth/modules/pagekite/forms.py:62 msgid "Invalid kite name" msgstr "" -#: plinth/modules/pagekite/forms.py:81 +#: plinth/modules/pagekite/forms.py:66 msgid "Kite secret" msgstr "" -#: plinth/modules/pagekite/forms.py:82 +#: plinth/modules/pagekite/forms.py:67 msgid "" "A secret associated with the kite or the default secret for your account if " "no secret is set on the kite." msgstr "" -#: plinth/modules/pagekite/forms.py:98 +#: plinth/modules/pagekite/forms.py:83 msgid "Kite details set" msgstr "" -#: plinth/modules/pagekite/forms.py:105 +#: plinth/modules/pagekite/forms.py:90 msgid "Pagekite server set" msgstr "" -#: plinth/modules/pagekite/forms.py:129 +#: plinth/modules/pagekite/forms.py:114 msgid "PageKite enabled" msgstr "" -#: plinth/modules/pagekite/forms.py:132 +#: plinth/modules/pagekite/forms.py:117 msgid "PageKite disabled" msgstr "" -#: plinth/modules/pagekite/forms.py:148 +#: plinth/modules/pagekite/forms.py:133 msgid "protocol" msgstr "" -#: plinth/modules/pagekite/forms.py:151 +#: plinth/modules/pagekite/forms.py:136 msgid "external (frontend) port" msgstr "" -#: plinth/modules/pagekite/forms.py:154 +#: plinth/modules/pagekite/forms.py:139 msgid "internal (freedombox) port" msgstr "" -#: plinth/modules/pagekite/forms.py:155 +#: plinth/modules/pagekite/forms.py:140 msgid "Enable Subdomains" msgstr "" -#: plinth/modules/pagekite/forms.py:189 +#: plinth/modules/pagekite/forms.py:174 msgid "Deleted custom service" msgstr "" -#: plinth/modules/pagekite/forms.py:222 +#: plinth/modules/pagekite/forms.py:207 msgid "" "This service is available as a standard service. Please use the \"Standard " "Services\" page to enable it." msgstr "" -#: plinth/modules/pagekite/forms.py:231 +#: plinth/modules/pagekite/forms.py:216 msgid "Added custom service" msgstr "" -#: plinth/modules/pagekite/forms.py:234 +#: plinth/modules/pagekite/forms.py:219 msgid "This service already exists" msgstr "" -#: plinth/modules/pagekite/templates/pagekite_configure.html:47 +#: plinth/modules/pagekite/templates/pagekite_configure.html:32 msgid "Custom Services" msgstr "" -#: plinth/modules/pagekite/templates/pagekite_configure.html:50 -#: plinth/modules/pagekite/templates/pagekite_configure.html:52 +#: plinth/modules/pagekite/templates/pagekite_configure.html:35 +#: plinth/modules/pagekite/templates/pagekite_configure.html:37 msgid "Add Custom Service" msgstr "" -#: plinth/modules/pagekite/templates/pagekite_configure.html:57 +#: plinth/modules/pagekite/templates/pagekite_configure.html:42 msgid "Existing custom services" msgstr "" -#: plinth/modules/pagekite/templates/pagekite_configure.html:71 +#: plinth/modules/pagekite/templates/pagekite_configure.html:56 #, python-format msgid "connected to %(backend_host)s:%(backend_port)s" msgstr "" -#: plinth/modules/pagekite/templates/pagekite_configure.html:83 +#: plinth/modules/pagekite/templates/pagekite_configure.html:68 msgid "Delete this service" msgstr "" -#: plinth/modules/pagekite/templates/pagekite_custom_services.html:30 +#: plinth/modules/pagekite/templates/pagekite_custom_services.html:15 msgid "Add custom PageKite service" msgstr "" -#: plinth/modules/pagekite/templates/pagekite_custom_services.html:32 +#: plinth/modules/pagekite/templates/pagekite_custom_services.html:17 msgid "" "Warning:imaps://imap.gmail.com. "
@@ -4512,17 +4615,23 @@ msgid ""
"a>)."
msgstr ""
-#: plinth/modules/samba/__init__.py:46
-msgid "Samba"
+#: plinth/modules/roundcube/__init__.py:54
+#: plinth/modules/roundcube/manifest.py:9
+msgid "Roundcube"
msgstr ""
-#: plinth/modules/samba/__init__.py:53
+#: plinth/modules/roundcube/__init__.py:55
+#, fuzzy
+msgid "Email Client"
+msgstr "برنامهٔ DNS متغیر (Dynamic DNS Client)"
+
+#: plinth/modules/samba/__init__.py:32
msgid ""
"Samba allows to share files and folders between FreedomBox and other "
"computers in your local network."
msgstr ""
-#: plinth/modules/samba/__init__.py:56
+#: plinth/modules/samba/__init__.py:35
#, python-brace-format
msgid ""
"After installation, you can choose which disks to use for sharing. Enabled "
@@ -4531,56 +4640,60 @@ msgid ""
"There are three types of shares you can choose from: "
msgstr ""
-#: plinth/modules/samba/__init__.py:61
+#: plinth/modules/samba/__init__.py:40
msgid "Open share - accessible to everyone in your local network."
msgstr ""
-#: plinth/modules/samba/__init__.py:62
+#: plinth/modules/samba/__init__.py:41
msgid ""
"Group share - accessible only to FreedomBox users who are in the freedombox-"
"share group."
msgstr ""
-#: plinth/modules/samba/__init__.py:64
+#: plinth/modules/samba/__init__.py:43
msgid ""
"Home share - every user in the freedombox-share group can have their own "
"private space."
msgstr ""
-#: plinth/modules/samba/__init__.py:68
+#: plinth/modules/samba/__init__.py:47
msgid "Access to the private shares"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:39
-#: plinth/modules/samba/templates/samba.html:50
+#: plinth/modules/samba/__init__.py:61
+msgid "Samba"
+msgstr ""
+
+#: plinth/modules/samba/templates/samba.html:24
+#: plinth/modules/samba/templates/samba.html:35
#, fuzzy
#| msgid "Shared"
msgid "Shares"
msgstr "مشترک"
-#: plinth/modules/samba/templates/samba.html:41
+#: plinth/modules/samba/templates/samba.html:26
msgid ""
"Note: Only specially created directories will be shared on selected disks, "
"not the whole disk."
msgstr ""
-#: plinth/modules/samba/templates/samba.html:49
+#: plinth/modules/samba/templates/samba.html:34
#, fuzzy
#| msgid "Domain Name"
msgid "Disk Name"
msgstr "نام دامنه"
-#: plinth/modules/samba/templates/samba.html:51
-#: plinth/modules/storage/templates/storage.html:44
+#: plinth/modules/samba/templates/samba.html:36
+#: plinth/modules/storage/templates/storage.html:29
#, fuzzy
msgid "Used"
msgstr "بهکاربرده"
-#: plinth/modules/samba/templates/samba.html:72
+#: plinth/modules/samba/templates/samba.html:57
msgid "VFAT partitions are not supported"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:103
+#: plinth/modules/samba/templates/samba.html:88
#, python-format
msgid ""
"You can find additional information about disks on the users module page."
msgstr ""
-#: plinth/modules/samba/templates/samba.html:109
+#: plinth/modules/samba/templates/samba.html:94
msgid "Users who can currently access group and home shares"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:113
+#: plinth/modules/samba/templates/samba.html:98
msgid ""
"Users needing to re-enter their password on the password change page to "
"access group and home shares"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:118
+#: plinth/modules/samba/templates/samba.html:103
#, fuzzy
#| msgid "Available Domains"
msgid "Unavailable Shares"
msgstr "دامنههای موجود"
-#: plinth/modules/samba/templates/samba.html:120
+#: plinth/modules/samba/templates/samba.html:105
msgid ""
"Shares that are configured but the disk is not available. If the disk is "
"plugged back in, sharing will be automatically enabled."
msgstr ""
-#: plinth/modules/samba/templates/samba.html:128
+#: plinth/modules/samba/templates/samba.html:113
#, fuzzy
#| msgid "Shared"
msgid "Share name"
msgstr "مشترک"
-#: plinth/modules/samba/templates/samba.html:129
+#: plinth/modules/samba/templates/samba.html:114
#, fuzzy
#| msgid "Actions"
msgid "Action"
msgstr "کنشها"
-#: plinth/modules/samba/views.py:61 plinth/modules/storage/forms.py:164
+#: plinth/modules/samba/views.py:43 plinth/modules/storage/forms.py:149
#, fuzzy
#| msgid "Shared"
msgid "Open Share"
msgstr "مشترک"
-#: plinth/modules/samba/views.py:62 plinth/modules/storage/forms.py:162
+#: plinth/modules/samba/views.py:44 plinth/modules/storage/forms.py:147
#, fuzzy
#| msgid "Shared"
msgid "Group Share"
msgstr "مشترک"
-#: plinth/modules/samba/views.py:63
+#: plinth/modules/samba/views.py:45
#, fuzzy
#| msgid "Shared"
msgid "Home Share"
msgstr "مشترک"
-#: plinth/modules/samba/views.py:96
+#: plinth/modules/samba/views.py:78
#, fuzzy
#| msgid "{name} deleted."
msgid "Share enabled."
msgstr "{name} پاک شد."
-#: plinth/modules/samba/views.py:101
+#: plinth/modules/samba/views.py:83
#, fuzzy, python-brace-format
#| msgid "Error installing application: {error}"
msgid "Error enabling share: {error_message}"
msgstr "خطا هنگام نصب برنامه: {error}"
-#: plinth/modules/samba/views.py:106
+#: plinth/modules/samba/views.py:88
#, fuzzy
#| msgid "Shared"
msgid "Share disabled."
msgstr "مشترک"
-#: plinth/modules/samba/views.py:111
+#: plinth/modules/samba/views.py:93
#, fuzzy, python-brace-format
#| msgid "Error installing application: {error}"
msgid "Error disabling share: {error_message}"
msgstr "خطا هنگام نصب برنامه: {error}"
-#: plinth/modules/searx/__init__.py:41 plinth/modules/searx/manifest.py:24
-msgid "Searx"
-msgstr ""
-
-#: plinth/modules/searx/__init__.py:45
-#, fuzzy
-#| msgid "Web Server"
-msgid "Web Search"
-msgstr "سرور وب"
-
-#: plinth/modules/searx/__init__.py:48
+#: plinth/modules/searx/__init__.py:25
msgid ""
"Searx is a privacy-respecting Internet metasearch engine. It aggregrates and "
"displays results from multiple search engines."
msgstr ""
-#: plinth/modules/searx/__init__.py:50
+#: plinth/modules/searx/__init__.py:27
msgid ""
"Searx can be used to avoid tracking and profiling by search engines. It "
"stores no cookies by default."
msgstr ""
-#: plinth/modules/searx/__init__.py:54
+#: plinth/modules/searx/__init__.py:31
msgid "Search the web"
msgstr ""
-#: plinth/modules/searx/forms.py:30
+#: plinth/modules/searx/__init__.py:47 plinth/modules/searx/manifest.py:9
+msgid "Searx"
+msgstr ""
+
+#: plinth/modules/searx/__init__.py:48
+#, fuzzy
+#| msgid "Web Server"
+msgid "Web Search"
+msgstr "سرور وب"
+
+#: plinth/modules/searx/forms.py:15
msgid "Safe Search"
msgstr ""
-#: plinth/modules/searx/forms.py:31
+#: plinth/modules/searx/forms.py:16
msgid "Select the default family filter to apply to your search results."
msgstr ""
-#: plinth/modules/searx/forms.py:32
+#: plinth/modules/searx/forms.py:17
msgid "None"
msgstr ""
-#: plinth/modules/searx/forms.py:32
+#: plinth/modules/searx/forms.py:17
#, fuzzy
#| msgid "Mode"
msgid "Moderate"
msgstr "حالت"
-#: plinth/modules/searx/forms.py:32
+#: plinth/modules/searx/forms.py:17
msgid "Strict"
msgstr ""
-#: plinth/modules/searx/forms.py:35
+#: plinth/modules/searx/forms.py:20
msgid "Allow Public Access"
msgstr ""
-#: plinth/modules/searx/forms.py:36
+#: plinth/modules/searx/forms.py:21
msgid "Allow this application to be used by anyone who can reach it."
msgstr ""
-#: plinth/modules/searx/views.py:59 plinth/modules/searx/views.py:70
-#: plinth/modules/tor/views.py:149 plinth/modules/tor/views.py:176
+#: plinth/modules/searx/views.py:39 plinth/modules/searx/views.py:50
+#: plinth/modules/tor/views.py:130 plinth/modules/tor/views.py:157
msgid "Configuration updated."
msgstr ""
-#: plinth/modules/security/forms.py:28
+#: plinth/modules/security/forms.py:13
msgid "Restrict console logins (recommended)"
msgstr ""
-#: plinth/modules/security/forms.py:29
+#: plinth/modules/security/forms.py:14
msgid ""
"When this option is enabled, only users in the \"admin\" group will be able "
"to log in to console or via SSH. Console users may be able to access some "
"services without further authorization."
msgstr ""
-#: plinth/modules/security/forms.py:34
+#: plinth/modules/security/forms.py:19
msgid "Fail2Ban (recommended)"
msgstr ""
-#: plinth/modules/security/forms.py:35
+#: plinth/modules/security/forms.py:20
msgid ""
"When this option is enabled, Fail2Ban will limit brute force break-in "
"attempts to the SSH server and other enabled password protected internet-"
"services."
msgstr ""
-#: plinth/modules/security/templates/security.html:26
-#: plinth/modules/security/templates/security.html:28
+#: plinth/modules/security/templates/security.html:11
+#: plinth/modules/security/templates/security.html:13
#, fuzzy
#| msgid "Security"
msgid "Show security report"
msgstr "امنیت"
-#: plinth/modules/security/templates/security_report.html:25
-#: plinth/modules/security/views.py:87
+#: plinth/modules/security/templates/security_report.html:10
+#: plinth/modules/security/views.py:71
#, fuzzy
#| msgid "Security"
msgid "Security Report"
msgstr "امنیت"
-#: plinth/modules/security/templates/security_report.html:27
+#: plinth/modules/security/templates/security_report.html:12
#, python-format
msgid ""
"The installed version of FreedomBox has %(count)s reported security "
"vulnerabilities."
msgstr ""
-#: plinth/modules/security/templates/security_report.html:33
+#: plinth/modules/security/templates/security_report.html:18
msgid ""
"The following table lists the current reported number, and historical count, "
"of security vulnerabilities for each installed app."
msgstr ""
-#: plinth/modules/security/templates/security_report.html:39
+#: plinth/modules/security/templates/security_report.html:24
msgid ""
"For apps that provide services, the \"Sandboxed\" column shows whether "
"sandboxing features are in use. Sandboxing mitigates the impact of a "
"potentially compromised app to the rest of the system."
msgstr ""
-#: plinth/modules/security/templates/security_report.html:46
+#: plinth/modules/security/templates/security_report.html:31
msgid ""
"\"Sandbox Coverage\" is a score of how effectively the service is isolated "
"from the rest of the system. It is only displayed while the service is "
"running."
msgstr ""
-#: plinth/modules/security/templates/security_report.html:55
+#: plinth/modules/security/templates/security_report.html:40
#, fuzzy
#| msgid "Name"
msgid "App Name"
msgstr "نام"
-#: plinth/modules/security/templates/security_report.html:56
+#: plinth/modules/security/templates/security_report.html:41
msgid "Current Vulnerabilities"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:57
+#: plinth/modules/security/templates/security_report.html:42
msgid "Past Vulnerabilities"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:58
+#: plinth/modules/security/templates/security_report.html:43
#, fuzzy
msgid "Sandboxed"
msgstr "بازی مکعبها (Minetest)"
-#: plinth/modules/security/templates/security_report.html:59
+#: plinth/modules/security/templates/security_report.html:44
#, fuzzy
msgid "Sandbox Coverage"
msgstr "بازی مکعبها (Minetest)"
-#: plinth/modules/security/templates/security_report.html:70
+#: plinth/modules/security/templates/security_report.html:55
msgid "N/A"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:72
+#: plinth/modules/security/templates/security_report.html:57
#, fuzzy
#| msgid "yes"
msgid "Yes"
msgstr "بله"
-#: plinth/modules/security/templates/security_report.html:74
+#: plinth/modules/security/templates/security_report.html:59
msgid "No"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:81
+#: plinth/modules/security/templates/security_report.html:66
msgid "Not running"
msgstr ""
-#: plinth/modules/security/views.py:69
+#: plinth/modules/security/views.py:53
#, fuzzy, python-brace-format
#| msgid "Error setting time zone: {exception}"
msgid "Error setting restricted access: {exception}"
msgstr "خطا در هنگام تنظیم منطقهٔ زمانی: {exception}"
-#: plinth/modules/security/views.py:72
+#: plinth/modules/security/views.py:56
#, fuzzy
#| msgid "General Configuration"
msgid "Updated security configuration"
msgstr "پیکربندی عمومی"
-#: plinth/modules/shaarli/__init__.py:34 plinth/modules/shaarli/manifest.py:23
-msgid "Shaarli"
-msgstr ""
-
-#: plinth/modules/shaarli/__init__.py:36
-msgid "Bookmarks"
-msgstr ""
-
-#: plinth/modules/shaarli/__init__.py:39
+#: plinth/modules/shaarli/__init__.py:20
msgid "Shaarli allows you to save and share bookmarks."
msgstr ""
-#: plinth/modules/shaarli/__init__.py:40
+#: plinth/modules/shaarli/__init__.py:21
msgid ""
"When enabled, Shaarli will be available from /shaarli path on the web server. Note that Shaarli "
@@ -4862,22 +4967,22 @@ msgid ""
"initial visit."
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:35
-msgid "Shadowsocks"
+#: plinth/modules/shaarli/__init__.py:39 plinth/modules/shaarli/manifest.py:8
+msgid "Shaarli"
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:39
-msgid "Socks5 Proxy"
+#: plinth/modules/shaarli/__init__.py:40
+msgid "Bookmarks"
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:46
+#: plinth/modules/shadowsocks/__init__.py:25
msgid ""
"Shadowsocks is a lightweight and secure SOCKS5 proxy, designed to protect "
"your Internet traffic. It can be used to bypass Internet filtering and "
"censorship."
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:50
+#: plinth/modules/shadowsocks/__init__.py:29
#, python-brace-format
msgid ""
"Your {box_name} can run a Shadowsocks client, that can connect to a "
@@ -4886,169 +4991,171 @@ msgid ""
"the Shadowsocks server."
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:55
+#: plinth/modules/shadowsocks/__init__.py:34
msgid ""
"To use Shadowsocks after setup, set the SOCKS5 proxy URL in your device, "
"browser or application to http://freedombox_address:1080/"
msgstr ""
-#: plinth/modules/shadowsocks/forms.py:28
-#: plinth/modules/shadowsocks/forms.py:29
+#: plinth/modules/shadowsocks/__init__.py:50
+msgid "Shadowsocks"
+msgstr ""
+
+#: plinth/modules/shadowsocks/__init__.py:52
+msgid "Socks5 Proxy"
+msgstr ""
+
+#: plinth/modules/shadowsocks/forms.py:13
+#: plinth/modules/shadowsocks/forms.py:14
msgid "Recommended"
msgstr ""
-#: plinth/modules/shadowsocks/forms.py:52
+#: plinth/modules/shadowsocks/forms.py:37
#, fuzzy
#| msgid "Service"
msgid "Server"
msgstr "سرویس"
-#: plinth/modules/shadowsocks/forms.py:53
+#: plinth/modules/shadowsocks/forms.py:38
msgid "Server hostname or IP address"
msgstr ""
-#: plinth/modules/shadowsocks/forms.py:57
+#: plinth/modules/shadowsocks/forms.py:42
msgid "Server port number"
msgstr ""
-#: plinth/modules/shadowsocks/forms.py:60
+#: plinth/modules/shadowsocks/forms.py:45
msgid "Password used to encrypt data. Must match server password."
msgstr ""
-#: plinth/modules/shadowsocks/forms.py:65
+#: plinth/modules/shadowsocks/forms.py:50
msgid "Encryption method. Must match setting on server."
msgstr ""
-#: plinth/modules/sharing/__init__.py:34
-#, fuzzy
-#| msgid "Shared"
-msgid "Sharing"
-msgstr "مشترک"
-
-#: plinth/modules/sharing/__init__.py:38
+#: plinth/modules/sharing/__init__.py:21
#, python-brace-format
msgid ""
"Sharing allows you to share files and folders on your {box_name} over the "
"web with chosen groups of users."
msgstr ""
-#: plinth/modules/sharing/forms.py:33
+#: plinth/modules/sharing/__init__.py:38
+#, fuzzy
+#| msgid "Shared"
+msgid "Sharing"
+msgstr "مشترک"
+
+#: plinth/modules/sharing/forms.py:18
msgid "Name of the share"
msgstr ""
-#: plinth/modules/sharing/forms.py:35
+#: plinth/modules/sharing/forms.py:20
msgid ""
"A lowercase alpha-numeric string that uniquely identifies a share. Example: "
"media."
msgstr ""
-#: plinth/modules/sharing/forms.py:39
+#: plinth/modules/sharing/forms.py:24
msgid "Path to share"
msgstr ""
-#: plinth/modules/sharing/forms.py:40
+#: plinth/modules/sharing/forms.py:25
msgid "Disk path to a folder on this server that you intend to share."
msgstr ""
-#: plinth/modules/sharing/forms.py:43
+#: plinth/modules/sharing/forms.py:28
#, fuzzy
#| msgid "Publish Key"
msgid "Public share"
msgstr "انتشار کلید"
-#: plinth/modules/sharing/forms.py:44
+#: plinth/modules/sharing/forms.py:29
msgid "Make files in this folder available to anyone with the link."
msgstr ""
-#: plinth/modules/sharing/forms.py:48
+#: plinth/modules/sharing/forms.py:33
msgid "User groups that can read the files in the share"
msgstr ""
-#: plinth/modules/sharing/forms.py:50
+#: plinth/modules/sharing/forms.py:35
msgid ""
"Users of the selected user groups will be able to read the files in the "
"share."
msgstr ""
-#: plinth/modules/sharing/forms.py:67
+#: plinth/modules/sharing/forms.py:52
msgid "A share with this name already exists."
msgstr ""
-#: plinth/modules/sharing/forms.py:78
+#: plinth/modules/sharing/forms.py:63
msgid "Shares should be either public or shared with at least one group"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:39
-#: plinth/modules/sharing/templates/sharing.html:42
+#: plinth/modules/sharing/templates/sharing.html:24
+#: plinth/modules/sharing/templates/sharing.html:27
msgid "Add share"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:47
+#: plinth/modules/sharing/templates/sharing.html:32
msgid "No shares currently configured."
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:53
+#: plinth/modules/sharing/templates/sharing.html:38
msgid "Disk Path"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:54
+#: plinth/modules/sharing/templates/sharing.html:39
#, fuzzy
#| msgid "Shared"
msgid "Shared Over"
msgstr "مشترک"
-#: plinth/modules/sharing/templates/sharing.html:55
+#: plinth/modules/sharing/templates/sharing.html:40
msgid "With Groups"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:73
+#: plinth/modules/sharing/templates/sharing.html:58
msgid "public access"
msgstr ""
-#: plinth/modules/sharing/views.py:55
+#: plinth/modules/sharing/views.py:39
#, fuzzy
#| msgid "Shared"
msgid "Share added."
msgstr "مشترک"
-#: plinth/modules/sharing/views.py:60
+#: plinth/modules/sharing/views.py:44
#, fuzzy
#| msgid "Shared"
msgid "Add Share"
msgstr "مشترک"
-#: plinth/modules/sharing/views.py:75
+#: plinth/modules/sharing/views.py:59
#, fuzzy
#| msgid "Shared"
msgid "Share edited."
msgstr "مشترک"
-#: plinth/modules/sharing/views.py:80
+#: plinth/modules/sharing/views.py:64
#, fuzzy
#| msgid "Shared"
msgid "Edit Share"
msgstr "مشترک"
-#: plinth/modules/sharing/views.py:111
+#: plinth/modules/sharing/views.py:95
#, fuzzy
#| msgid "{name} deleted."
msgid "Share deleted."
msgstr "{name} پاک شد."
-#: plinth/modules/snapshot/__init__.py:37
-#, fuzzy
-#| msgid "Delete %(name)s"
-msgid "Storage Snapshots"
-msgstr "پاککردن %(name)s"
-
-#: plinth/modules/snapshot/__init__.py:40
+#: plinth/modules/snapshot/__init__.py:23
msgid ""
"Snapshots allows creating and managing btrfs file system snapshots. These "
"can be used to roll back the system to a previously known good state in case "
"of unwanted changes to the system."
msgstr ""
-#: plinth/modules/snapshot/__init__.py:44
+#: plinth/modules/snapshot/__init__.py:27
#, no-python-format
msgid ""
"Snapshots are taken periodically (called timeline snapshots) and also before "
@@ -5056,212 +5163,214 @@ msgid ""
"cleaned up according to the settings below."
msgstr ""
-#: plinth/modules/snapshot/__init__.py:47
+#: plinth/modules/snapshot/__init__.py:30
msgid ""
"Snapshots currently work on btrfs file systems only and on the root "
"partition only. Snapshots are not a replacement for backups since they can only be stored on the same partition. "
msgstr ""
-#: plinth/modules/snapshot/forms.py:27
+#: plinth/modules/snapshot/__init__.py:52
+#, fuzzy
+#| msgid "Delete %(name)s"
+msgid "Storage Snapshots"
+msgstr "پاککردن %(name)s"
+
+#: plinth/modules/snapshot/forms.py:12
msgid "Free Disk Space to Maintain"
msgstr ""
-#: plinth/modules/snapshot/forms.py:28
+#: plinth/modules/snapshot/forms.py:13
msgid ""
"Maintain this percentage of free space on the disk. If free space falls "
"below this value, older snapshots are removed until this much free space is "
"regained. The default value is 30%."
msgstr ""
-#: plinth/modules/snapshot/forms.py:35
+#: plinth/modules/snapshot/forms.py:20
#, fuzzy
#| msgid "Delete %(name)s"
msgid "Timeline Snapshots"
msgstr "پاککردن %(name)s"
-#: plinth/modules/snapshot/forms.py:36
+#: plinth/modules/snapshot/forms.py:21
msgid ""
"Enable or disable timeline snapshots (hourly, daily, monthly and yearly)."
msgstr ""
-#: plinth/modules/snapshot/forms.py:41
+#: plinth/modules/snapshot/forms.py:26
msgid "Software Installation Snapshots"
msgstr ""
-#: plinth/modules/snapshot/forms.py:42
+#: plinth/modules/snapshot/forms.py:27
msgid "Enable or disable snapshots before and after software installation"
msgstr ""
-#: plinth/modules/snapshot/forms.py:47
+#: plinth/modules/snapshot/forms.py:32
#, fuzzy
#| msgid "Delete %(name)s"
msgid "Hourly Snapshots Limit"
msgstr "پاککردن %(name)s"
-#: plinth/modules/snapshot/forms.py:48
+#: plinth/modules/snapshot/forms.py:33
msgid "Keep a maximum of this many hourly snapshots."
msgstr ""
-#: plinth/modules/snapshot/forms.py:51
+#: plinth/modules/snapshot/forms.py:36
#, fuzzy
#| msgid "Delete %(name)s"
msgid "Daily Snapshots Limit"
msgstr "پاککردن %(name)s"
-#: plinth/modules/snapshot/forms.py:52
+#: plinth/modules/snapshot/forms.py:37
msgid "Keep a maximum of this many daily snapshots."
msgstr ""
-#: plinth/modules/snapshot/forms.py:55
+#: plinth/modules/snapshot/forms.py:40
#, fuzzy
#| msgid "Delete %(name)s"
msgid "Weekly Snapshots Limit"
msgstr "پاککردن %(name)s"
-#: plinth/modules/snapshot/forms.py:56
+#: plinth/modules/snapshot/forms.py:41
msgid "Keep a maximum of this many weekly snapshots."
msgstr ""
-#: plinth/modules/snapshot/forms.py:59
+#: plinth/modules/snapshot/forms.py:44
msgid "Monthly Snapshots Limit"
msgstr ""
-#: plinth/modules/snapshot/forms.py:60
+#: plinth/modules/snapshot/forms.py:45
msgid "Keep a maximum of this many monthly snapshots."
msgstr ""
-#: plinth/modules/snapshot/forms.py:63
+#: plinth/modules/snapshot/forms.py:48
#, fuzzy
#| msgid "Delete %(name)s"
msgid "Yearly Snapshots Limit"
msgstr "پاککردن %(name)s"
-#: plinth/modules/snapshot/forms.py:64
+#: plinth/modules/snapshot/forms.py:49
msgid ""
"Keep a maximum of this many yearly snapshots. The default value is 0 "
"(disabled)."
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:27
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:12
msgid "Delete the following snapshots permanently?"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:31
-#: plinth/modules/snapshot/templates/snapshot_manage.html:43
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:39
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:16
+#: plinth/modules/snapshot/templates/snapshot_manage.html:28
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:24
msgid "Number"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:32
-#: plinth/modules/snapshot/templates/snapshot_manage.html:44
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:40
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:17
+#: plinth/modules/snapshot/templates/snapshot_manage.html:29
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:25
msgid "Date"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:52
-#: plinth/modules/snapshot/templates/snapshot_manage.html:37
-#: plinth/modules/snapshot/views.py:196
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:37
+#: plinth/modules/snapshot/templates/snapshot_manage.html:22
+#: plinth/modules/snapshot/views.py:175
#, fuzzy
#| msgid "Delete %(name)s"
msgid "Delete Snapshots"
msgstr "پاککردن %(name)s"
-#: plinth/modules/snapshot/templates/snapshot_manage.html:33
+#: plinth/modules/snapshot/templates/snapshot_manage.html:18
msgid "Create Snapshot"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_manage.html:46
+#: plinth/modules/snapshot/templates/snapshot_manage.html:31
msgid "Rollback"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_manage.html:57
+#: plinth/modules/snapshot/templates/snapshot_manage.html:42
msgid "active"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_manage.html:66
+#: plinth/modules/snapshot/templates/snapshot_manage.html:51
#, python-format
msgid "Rollback to snapshot #%(number)s"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_not_supported.html:26
+#: plinth/modules/snapshot/templates/snapshot_not_supported.html:11
#, python-format
msgid ""
"Your have a filesystem of type %(fs_type)s. Snapshots are "
"currently only available on %(types_supported)s filesystems."
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:27
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:12
msgid "Roll back the system to this snapshot?"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:30
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:15
msgid ""
"A new snapshot with the current state of the file system will be "
"automatically created. You will be able to undo a rollback by reverting to "
"the newly created snapshot."
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:57
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:42
#, python-format
msgid "Rollback to Snapshot #%(number)s"
msgstr ""
-#: plinth/modules/snapshot/views.py:45
+#: plinth/modules/snapshot/views.py:30
#, fuzzy
#| msgid "Delete %(name)s"
msgid "Manage Snapshots"
msgstr "پاککردن %(name)s"
-#: plinth/modules/snapshot/views.py:98
+#: plinth/modules/snapshot/views.py:79
msgid "Created snapshot."
msgstr ""
-#: plinth/modules/snapshot/views.py:156
+#: plinth/modules/snapshot/views.py:135
#, fuzzy
#| msgid "Configuration updated"
msgid "Storage snapshots configuration updated"
msgstr "پیکربندی بهروز شد"
-#: plinth/modules/snapshot/views.py:160 plinth/modules/tor/views.py:79
+#: plinth/modules/snapshot/views.py:139 plinth/modules/tor/views.py:60
#, python-brace-format
msgid "Action error: {0} [{1}] [{2}]"
msgstr ""
-#: plinth/modules/snapshot/views.py:175
+#: plinth/modules/snapshot/views.py:154
#, fuzzy
#| msgid "Delete %(name)s"
msgid "Deleted all snapshots"
msgstr "پاککردن %(name)s"
-#: plinth/modules/snapshot/views.py:179
+#: plinth/modules/snapshot/views.py:158
#, fuzzy
#| msgid "Delete %(name)s"
msgid "Deleted selected snapshots"
msgstr "پاککردن %(name)s"
-#: plinth/modules/snapshot/views.py:184
+#: plinth/modules/snapshot/views.py:163
msgid "Snapshot is currently in use. Please try again later."
msgstr ""
-#: plinth/modules/snapshot/views.py:207
+#: plinth/modules/snapshot/views.py:186
#, python-brace-format
msgid "Rolled back to snapshot #{number}."
msgstr ""
-#: plinth/modules/snapshot/views.py:210
+#: plinth/modules/snapshot/views.py:189
msgid "The system must be restarted to complete the rollback."
msgstr ""
-#: plinth/modules/snapshot/views.py:222
+#: plinth/modules/snapshot/views.py:201
msgid "Rollback to Snapshot"
msgstr ""
-#: plinth/modules/ssh/__init__.py:43
-msgid "Secure Shell (SSH) Server"
-msgstr ""
-
-#: plinth/modules/ssh/__init__.py:46
+#: plinth/modules/ssh/__init__.py:29
msgid ""
"A Secure Shell server uses the secure shell protocol to accept connections "
"from remote computers. An authorized remote computer can perform "
@@ -5269,62 +5378,62 @@ msgid ""
"connections."
msgstr ""
-#: plinth/modules/ssh/forms.py:30
+#: plinth/modules/ssh/__init__.py:50
+msgid "Secure Shell (SSH) Server"
+msgstr ""
+
+#: plinth/modules/ssh/forms.py:15
#, fuzzy
#| msgid "Use HTTP basic authentication"
msgid "Disable password authentication"
msgstr "بهکاربردن تأیید هویت سادهٔ تحت وب"
-#: plinth/modules/ssh/forms.py:31
+#: plinth/modules/ssh/forms.py:16
msgid ""
"Improves security by preventing password guessing. Ensure that you have "
"setup SSH keys in your administrator user account before enabling this "
"option."
msgstr ""
-#: plinth/modules/ssh/templates/ssh.html:26
+#: plinth/modules/ssh/templates/ssh.html:11
#, fuzzy
#| msgid "SSH Fingerprint"
msgid "Server Fingerprints"
msgstr "اثر انگشت SSH"
-#: plinth/modules/ssh/templates/ssh.html:29
+#: plinth/modules/ssh/templates/ssh.html:14
msgid ""
"When connecting to the server, ensure that the fingerprint shown by the SSH "
"client matches one of these fingerprints."
msgstr ""
-#: plinth/modules/ssh/templates/ssh.html:38
+#: plinth/modules/ssh/templates/ssh.html:23
msgid "Algorithm"
msgstr ""
-#: plinth/modules/ssh/templates/ssh.html:39
+#: plinth/modules/ssh/templates/ssh.html:24
#, fuzzy
#| msgid "SSH Fingerprint"
msgid "Fingerprint"
msgstr "اثر انگشت SSH"
-#: plinth/modules/ssh/views.py:66
+#: plinth/modules/ssh/views.py:48
msgid "SSH authentication with password disabled."
msgstr ""
-#: plinth/modules/ssh/views.py:69
+#: plinth/modules/ssh/views.py:51
msgid "SSH authentication with password enabled."
msgstr ""
-#: plinth/modules/sso/__init__.py:30
+#: plinth/modules/sso/__init__.py:33
msgid "Single Sign On"
msgstr ""
-#: plinth/modules/sso/templates/login.html:35
+#: plinth/modules/sso/templates/login.html:20
msgid "Login"
msgstr ""
-#: plinth/modules/storage/__init__.py:39 plinth/modules/storage/__init__.py:331
-msgid "Storage"
-msgstr ""
-
-#: plinth/modules/storage/__init__.py:47
+#: plinth/modules/storage/__init__.py:30
#, python-brace-format
msgid ""
"This module allows you to manage storage media attached to your {box_name}. "
@@ -5332,157 +5441,161 @@ msgid ""
"media, expand the root partition etc."
msgstr ""
-#: plinth/modules/storage/__init__.py:224
+#: plinth/modules/storage/__init__.py:52 plinth/modules/storage/__init__.py:318
+msgid "Storage"
+msgstr ""
+
+#: plinth/modules/storage/__init__.py:211
#, fuzzy, python-brace-format
msgid "{disk_size:.1f} bytes"
msgstr "{disk_size} بایت"
-#: plinth/modules/storage/__init__.py:228
+#: plinth/modules/storage/__init__.py:215
#, fuzzy, python-brace-format
#| msgid "{disk_size} KiB"
msgid "{disk_size:.1f} KiB"
msgstr "{disk_size} KiB"
-#: plinth/modules/storage/__init__.py:232
+#: plinth/modules/storage/__init__.py:219
#, fuzzy, python-brace-format
#| msgid "{disk_size} MiB"
msgid "{disk_size:.1f} MiB"
msgstr "{disk_size} MiB"
-#: plinth/modules/storage/__init__.py:236
+#: plinth/modules/storage/__init__.py:223
#, fuzzy, python-brace-format
#| msgid "{disk_size} GiB"
msgid "{disk_size:.1f} GiB"
msgstr "{disk_size} GiB"
-#: plinth/modules/storage/__init__.py:239
+#: plinth/modules/storage/__init__.py:226
#, fuzzy, python-brace-format
#| msgid "{disk_size} TiB"
msgid "{disk_size:.1f} TiB"
msgstr "{disk_size} TiB"
-#: plinth/modules/storage/__init__.py:246
+#: plinth/modules/storage/__init__.py:233
msgid "The operation failed."
msgstr ""
-#: plinth/modules/storage/__init__.py:248
+#: plinth/modules/storage/__init__.py:235
msgid "The operation was cancelled."
msgstr ""
-#: plinth/modules/storage/__init__.py:250
+#: plinth/modules/storage/__init__.py:237
msgid "The device is already unmounting."
msgstr ""
-#: plinth/modules/storage/__init__.py:252
+#: plinth/modules/storage/__init__.py:239
msgid "The operation is not supported due to missing driver/tool support."
msgstr ""
-#: plinth/modules/storage/__init__.py:255
+#: plinth/modules/storage/__init__.py:242
msgid "The operation timed out."
msgstr ""
-#: plinth/modules/storage/__init__.py:257
+#: plinth/modules/storage/__init__.py:244
msgid "The operation would wake up a disk that is in a deep-sleep state."
msgstr ""
-#: plinth/modules/storage/__init__.py:260
+#: plinth/modules/storage/__init__.py:247
msgid "Attempting to unmount a device that is busy."
msgstr ""
-#: plinth/modules/storage/__init__.py:262
+#: plinth/modules/storage/__init__.py:249
msgid "The operation has already been cancelled."
msgstr ""
-#: plinth/modules/storage/__init__.py:268
+#: plinth/modules/storage/__init__.py:255
msgid "Not authorized to perform the requested operation."
msgstr ""
-#: plinth/modules/storage/__init__.py:270
+#: plinth/modules/storage/__init__.py:257
#, fuzzy
#| msgid "The requested domain is already registered."
msgid "The device is already mounted."
msgstr "دامنهٔ درخواستی از قبل ثبت شده است."
-#: plinth/modules/storage/__init__.py:272
+#: plinth/modules/storage/__init__.py:259
msgid "The device is not mounted."
msgstr ""
-#: plinth/modules/storage/__init__.py:275
+#: plinth/modules/storage/__init__.py:262
msgid "Not permitted to use the requested option."
msgstr ""
-#: plinth/modules/storage/__init__.py:278
+#: plinth/modules/storage/__init__.py:265
msgid "The device is mounted by another user."
msgstr ""
-#: plinth/modules/storage/__init__.py:326
+#: plinth/modules/storage/__init__.py:313
#, no-python-format, python-brace-format
msgid "Low space on system partition: {percent_used}% used, {free_space} free."
msgstr ""
-#: plinth/modules/storage/__init__.py:328
+#: plinth/modules/storage/__init__.py:315
msgid "Low disk space"
msgstr ""
-#: plinth/modules/storage/forms.py:79
+#: plinth/modules/storage/forms.py:64
#, fuzzy
#| msgid "Invalid hostname"
msgid "Invalid directory name."
msgstr "نام میزبان معتبر نیست"
-#: plinth/modules/storage/forms.py:97
+#: plinth/modules/storage/forms.py:82
msgid "Directory does not exist."
msgstr ""
-#: plinth/modules/storage/forms.py:99
+#: plinth/modules/storage/forms.py:84
msgid "Path is not a directory."
msgstr ""
-#: plinth/modules/storage/forms.py:102
+#: plinth/modules/storage/forms.py:87
msgid "Directory is not readable by the user."
msgstr ""
-#: plinth/modules/storage/forms.py:105
+#: plinth/modules/storage/forms.py:90
msgid "Directory is not writable by the user."
msgstr ""
-#: plinth/modules/storage/forms.py:110
+#: plinth/modules/storage/forms.py:95
msgid "Directory"
msgstr ""
-#: plinth/modules/storage/forms.py:113
+#: plinth/modules/storage/forms.py:98
msgid "Subdirectory (optional)"
msgstr ""
-#: plinth/modules/storage/forms.py:160
+#: plinth/modules/storage/forms.py:145
#, fuzzy
#| msgid "Shared"
msgid "Share"
msgstr "مشترک"
-#: plinth/modules/storage/forms.py:168
+#: plinth/modules/storage/forms.py:153
msgid "Other directory (specify below)"
msgstr ""
-#: plinth/modules/storage/templates/storage.html:35
+#: plinth/modules/storage/templates/storage.html:20
#, fuzzy
#| msgid "The following disks are in use:"
msgid "The following storage devices are in use:"
msgstr "دیسکهای زیر در حال استفاده هستند:"
-#: plinth/modules/storage/templates/storage.html:41
+#: plinth/modules/storage/templates/storage.html:26
msgid "Label"
msgstr ""
-#: plinth/modules/storage/templates/storage.html:42
+#: plinth/modules/storage/templates/storage.html:27
msgid "Mount Point"
msgstr "نشانی سوارشدن (mount point)"
-#: plinth/modules/storage/templates/storage.html:90
+#: plinth/modules/storage/templates/storage.html:75
msgid "Partition Expansion"
msgstr ""
-#: plinth/modules/storage/templates/storage.html:92
+#: plinth/modules/storage/templates/storage.html:77
#, python-format
msgid ""
"There is %(expandable_root_size)s of unallocated space available after your "
@@ -5493,13 +5606,13 @@ msgstr ""
"پارتیشن ریشهٔ شما میتواند بزرگ شود تا این فضای بهکارنرفته را به کار ببرد. این "
"کار فضای بیشتری برای ذخیرهٔ پروندهها به شما خواهد داد."
-#: plinth/modules/storage/templates/storage.html:102
-#: plinth/modules/storage/templates/storage_expand.html:39
-#: plinth/modules/storage/views.py:76
+#: plinth/modules/storage/templates/storage.html:87
+#: plinth/modules/storage/templates/storage_expand.html:24
+#: plinth/modules/storage/views.py:58
msgid "Expand Root Partition"
msgstr "بزرگکردن پارتیشن ریشه"
-#: plinth/modules/storage/templates/storage_expand.html:29
+#: plinth/modules/storage/templates/storage_expand.html:14
#, python-format
msgid ""
"Please backup your data before proceeding. After this operation, "
@@ -5510,39 +5623,30 @@ msgstr ""
"%(expandable_root_size)s فضای خالی در اختیار پارتیشن ریشهٔ شما قرار خواهد "
"گرفت."
-#: plinth/modules/storage/views.py:88
+#: plinth/modules/storage/views.py:70
#, python-brace-format
msgid "Error expanding partition: {exception}"
msgstr "خطا در هنگام بزرگکردن پارتیشن: {exception}"
-#: plinth/modules/storage/views.py:91
+#: plinth/modules/storage/views.py:73
msgid "Partition expanded successfully."
msgstr "پارتیشن با موفقیت بزرگ شد."
-#: plinth/modules/storage/views.py:109
+#: plinth/modules/storage/views.py:91
#, python-brace-format
msgid "{drive_vendor} {drive_model} can be safely unplugged."
msgstr ""
-#: plinth/modules/storage/views.py:113
+#: plinth/modules/storage/views.py:95
msgid "Device can be safely unplugged."
msgstr ""
-#: plinth/modules/storage/views.py:123
+#: plinth/modules/storage/views.py:105
#, python-brace-format
msgid "Error ejecting device: {error_message}"
msgstr ""
-#: plinth/modules/syncthing/__init__.py:40
-#: plinth/modules/syncthing/manifest.py:28
-msgid "Syncthing"
-msgstr ""
-
-#: plinth/modules/syncthing/__init__.py:44
-msgid "File Synchronization"
-msgstr ""
-
-#: plinth/modules/syncthing/__init__.py:47
+#: plinth/modules/syncthing/__init__.py:26
msgid ""
"Syncthing is an application to synchronize files across multiple devices, e."
"g. your desktop computer and mobile phone. Creation, modification, or "
@@ -5550,7 +5654,7 @@ msgid ""
"other devices that also run Syncthing."
msgstr ""
-#: plinth/modules/syncthing/__init__.py:52
+#: plinth/modules/syncthing/__init__.py:31
#, python-brace-format
msgid ""
"Running Syncthing on {box_name} provides an extra synchronization point for "
@@ -5561,19 +5665,20 @@ msgid ""
"{box_name} is only available for users belonging to the \"admin\" group."
msgstr ""
-#: plinth/modules/syncthing/__init__.py:63
+#: plinth/modules/syncthing/__init__.py:40
msgid "Administer Syncthing application"
msgstr ""
-#: plinth/modules/tahoe/__init__.py:43
-msgid "Tahoe-LAFS"
+#: plinth/modules/syncthing/__init__.py:54
+#: plinth/modules/syncthing/manifest.py:13
+msgid "Syncthing"
msgstr ""
-#: plinth/modules/tahoe/__init__.py:47
-msgid "Distributed File Storage"
+#: plinth/modules/syncthing/__init__.py:55
+msgid "File Synchronization"
msgstr ""
-#: plinth/modules/tahoe/__init__.py:134
+#: plinth/modules/tahoe/__init__.py:30
msgid ""
"Tahoe-LAFS is a decentralized secure file storage system. It uses provider "
"independent security to store files over a distributed network of storage "
@@ -5581,7 +5686,7 @@ msgid ""
"remaining nodes."
msgstr ""
-#: plinth/modules/tahoe/__init__.py:139
+#: plinth/modules/tahoe/__init__.py:35
#, python-brace-format
msgid ""
"This {box_name} hosts a storage node and an introducer by default. "
@@ -5589,7 +5694,15 @@ msgid ""
"other storage nodes."
msgstr ""
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:33
+#: plinth/modules/tahoe/__init__.py:66
+msgid "Tahoe-LAFS"
+msgstr ""
+
+#: plinth/modules/tahoe/__init__.py:68
+msgid "Distributed File Storage"
+msgstr ""
+
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:17
#, python-format
msgid ""
"The Tahoe-LAFS server domain is set to %(domain_name)s. Changing the "
@@ -5598,41 +5711,37 @@ msgid ""
"%(domain_name)s:5678\">https://%(domain_name)s:5678."
msgstr ""
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:55
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:39
msgid "Local introducer"
msgstr ""
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:43
#: plinth/modules/tahoe/templates/tahoe-post-setup.html:59
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:75
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:92
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:76
#, fuzzy
#| msgid "Name"
msgid "Pet Name"
msgstr "نام"
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:72
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:56
msgid "Add new introducer"
msgstr ""
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:83
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:67
#, fuzzy
#| msgid "Address"
msgid "Add"
msgstr "نشانی"
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:88
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:72
msgid "Connected introducers"
msgstr ""
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:105
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:89
msgid "Remove"
msgstr ""
-#: plinth/modules/tor/__init__.py:47
-msgid "Tor"
-msgstr ""
-
-#: plinth/modules/tor/__init__.py:52
+#: plinth/modules/tor/__init__.py:33
msgid ""
"Tor is an anonymous communication system. You can learn more about it from "
"the Tor Project website. For "
@@ -5641,76 +5750,80 @@ msgid ""
"\">Tor Browser."
msgstr ""
-#: plinth/modules/tor/__init__.py:83
+#: plinth/modules/tor/__init__.py:55
+msgid "Tor"
+msgstr ""
+
+#: plinth/modules/tor/__init__.py:66
msgid "Tor Onion Service"
msgstr ""
-#: plinth/modules/tor/__init__.py:87
+#: plinth/modules/tor/__init__.py:70
msgid "Tor Socks Proxy"
msgstr ""
-#: plinth/modules/tor/__init__.py:91
+#: plinth/modules/tor/__init__.py:74
msgid "Tor Bridge Relay"
msgstr ""
-#: plinth/modules/tor/__init__.py:112
+#: plinth/modules/tor/__init__.py:95
msgid "Tor relay port available"
msgstr ""
-#: plinth/modules/tor/__init__.py:122
+#: plinth/modules/tor/__init__.py:105
msgid "Obfs3 transport registered"
msgstr ""
-#: plinth/modules/tor/__init__.py:132
+#: plinth/modules/tor/__init__.py:115
msgid "Obfs4 transport registered"
msgstr ""
-#: plinth/modules/tor/__init__.py:225
+#: plinth/modules/tor/__init__.py:208
#, python-brace-format
msgid "Access URL {url} on tcp{kind} via Tor"
msgstr ""
-#: plinth/modules/tor/__init__.py:236
+#: plinth/modules/tor/__init__.py:219
#, python-brace-format
msgid "Confirm Tor usage at {url} on tcp{kind}"
msgstr ""
-#: plinth/modules/tor/forms.py:46
+#: plinth/modules/tor/forms.py:31
msgid ""
"Enter a valid bridge with this format: [transport] IP:ORPort [fingerprint]"
msgstr ""
-#: plinth/modules/tor/forms.py:88
+#: plinth/modules/tor/forms.py:73
msgid "Enable Tor"
msgstr ""
-#: plinth/modules/tor/forms.py:90
+#: plinth/modules/tor/forms.py:75
msgid "Use upstream bridges to connect to Tor network"
msgstr ""
-#: plinth/modules/tor/forms.py:92
+#: plinth/modules/tor/forms.py:77
msgid ""
"When enabled, the bridges configured below will be used to connect to the "
"Tor network. Use this option if your Internet Service Provider (ISP) blocks "
"or censors connections to the Tor Network. This will disable relay modes."
msgstr ""
-#: plinth/modules/tor/forms.py:97
+#: plinth/modules/tor/forms.py:82
msgid "Upstream bridges"
msgstr ""
-#: plinth/modules/tor/forms.py:99
+#: plinth/modules/tor/forms.py:84
msgid ""
"You can get some bridges from https://bridges.torproject.org/ and copy/paste the bridge information "
"here. Currently supported transports are none, obfs3, obfs4 and scamblesuit."
msgstr ""
-#: plinth/modules/tor/forms.py:105
+#: plinth/modules/tor/forms.py:90
msgid "Enable Tor relay"
msgstr ""
-#: plinth/modules/tor/forms.py:106
+#: plinth/modules/tor/forms.py:91
#, python-brace-format
msgid ""
"When enabled, your {box_name} will run a Tor relay and donate bandwidth to "
@@ -5718,22 +5831,22 @@ msgid ""
"download bandwidth."
msgstr ""
-#: plinth/modules/tor/forms.py:111
+#: plinth/modules/tor/forms.py:96
msgid "Enable Tor bridge relay"
msgstr ""
-#: plinth/modules/tor/forms.py:113
+#: plinth/modules/tor/forms.py:98
msgid ""
"When enabled, relay information is published in the Tor bridge database "
"instead of public Tor relay database making it harder to censor this node. "
"This helps others circumvent censorship."
msgstr ""
-#: plinth/modules/tor/forms.py:118
+#: plinth/modules/tor/forms.py:103
msgid "Enable Tor Hidden Service"
msgstr ""
-#: plinth/modules/tor/forms.py:120
+#: plinth/modules/tor/forms.py:105
#, python-brace-format
msgid ""
"A hidden service will allow {box_name} to provide selected services (such as "
@@ -5741,217 +5854,213 @@ msgid ""
"anonymity yet."
msgstr ""
-#: plinth/modules/tor/forms.py:125
+#: plinth/modules/tor/forms.py:110
msgid "Download software packages over Tor"
msgstr ""
-#: plinth/modules/tor/forms.py:126
+#: plinth/modules/tor/forms.py:111
msgid ""
"When enabled, software will be downloaded over the Tor network for "
"installations and upgrades. This adds a degree of privacy and security "
"during software downloads."
msgstr ""
-#: plinth/modules/tor/forms.py:141
+#: plinth/modules/tor/forms.py:126
msgid "Specify at least one upstream bridge to use upstream bridges."
msgstr ""
-#: plinth/modules/tor/manifest.py:29
+#: plinth/modules/tor/manifest.py:14
msgid "Tor Browser"
msgstr ""
-#: plinth/modules/tor/manifest.py:45
+#: plinth/modules/tor/manifest.py:30
msgid "Orbot: Proxy with Tor"
msgstr ""
-#: plinth/modules/tor/templates/tor.html:41
+#: plinth/modules/tor/templates/tor.html:26
msgid "Tor configuration is being updated"
msgstr ""
-#: plinth/modules/tor/templates/tor.html:50
+#: plinth/modules/tor/templates/tor.html:35
#, fuzzy
#| msgid "Service"
msgid "Onion Service"
msgstr "سرویس"
-#: plinth/modules/tor/templates/tor.html:52
+#: plinth/modules/tor/templates/tor.html:37
msgid "Ports"
msgstr ""
-#: plinth/modules/tor/templates/tor.html:82
+#: plinth/modules/tor/templates/tor.html:67
msgid "Relay"
msgstr ""
-#: plinth/modules/tor/templates/tor.html:84
+#: plinth/modules/tor/templates/tor.html:69
#, python-format
msgid ""
"If your %(box_name)s is behind a router or firewall, you should make sure "
"the following ports are open, and port-forwarded, if necessary:"
msgstr ""
-#: plinth/modules/tor/templates/tor.html:112
+#: plinth/modules/tor/templates/tor.html:97
msgid "SOCKS"
msgstr ""
-#: plinth/modules/tor/templates/tor.html:115
+#: plinth/modules/tor/templates/tor.html:100
#, python-format
msgid "A Tor SOCKS port is available on your %(box_name)s on TCP port 9050."
msgstr ""
-#: plinth/modules/transmission/__init__.py:41
-#: plinth/modules/transmission/manifest.py:24
-msgid "Transmission"
-msgstr ""
-
-#: plinth/modules/transmission/__init__.py:48
+#: plinth/modules/transmission/__init__.py:27
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/ttrss/__init__.py:43 plinth/modules/ttrss/manifest.py:34
-msgid "Tiny Tiny RSS"
+#: plinth/modules/transmission/__init__.py:48
+#: plinth/modules/transmission/manifest.py:9
+msgid "Transmission"
msgstr ""
-#: plinth/modules/ttrss/__init__.py:47
-msgid "News Feed Reader"
-msgstr ""
-
-#: plinth/modules/ttrss/__init__.py:50
+#: plinth/modules/ttrss/__init__.py:29
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:54
+#: plinth/modules/ttrss/__init__.py:33
#, python-brace-format
msgid ""
"When enabled, Tiny Tiny RSS can be accessed by any user with a {box_name} login."
msgstr ""
-#: plinth/modules/ttrss/__init__.py:58
+#: plinth/modules/ttrss/__init__.py:37
msgid ""
"When using a mobile or desktop application for Tiny Tiny RSS, use the URL /tt-rss-app for "
"connecting."
msgstr ""
-#: plinth/modules/ttrss/__init__.py:65
+#: plinth/modules/ttrss/__init__.py:42
msgid "Read and subscribe to news feeds"
msgstr ""
-#: plinth/modules/ttrss/manifest.py:25
+#: plinth/modules/ttrss/__init__.py:56 plinth/modules/ttrss/manifest.py:19
+msgid "Tiny Tiny RSS"
+msgstr ""
+
+#: plinth/modules/ttrss/__init__.py:57
+msgid "News Feed Reader"
+msgstr ""
+
+#: plinth/modules/ttrss/manifest.py:10
msgid "Tiny Tiny RSS (Fork)"
msgstr ""
-#: plinth/modules/upgrades/__init__.py:37 plinth/templates/setup.html:89
-msgid "Update"
-msgstr ""
-
-#: plinth/modules/upgrades/__init__.py:40
+#: plinth/modules/upgrades/__init__.py:23
msgid "Check for and apply the latest software and security updates."
msgstr ""
-#: plinth/modules/upgrades/__init__.py:84
+#: plinth/modules/upgrades/__init__.py:38 plinth/templates/setup.html:74
+msgid "Update"
+msgstr ""
+
+#: plinth/modules/upgrades/__init__.py:71
#, fuzzy
msgid "FreedomBox Updated"
msgstr "FreedomBox"
-#: plinth/modules/upgrades/forms.py:28
+#: plinth/modules/upgrades/forms.py:13
#, fuzzy
msgid "Enable auto-update"
msgstr "فعالسازی برنامه"
-#: plinth/modules/upgrades/forms.py:29
+#: plinth/modules/upgrades/forms.py:14
msgid "When enabled, FreedomBox automatically updates once a day."
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades-new-release.html:24
+#: plinth/modules/upgrades/templates/upgrades-new-release.html:9
#, fuzzy, python-format
#| msgid "%(box_name)s Setup"
msgid "%(box_name)s Updated"
msgstr "راهاندازی %(box_name)s"
-#: plinth/modules/upgrades/templates/upgrades-new-release.html:28
+#: plinth/modules/upgrades/templates/upgrades-new-release.html:13
#, python-format
msgid ""
"%(box_name)s has been updated to version %(version)s. See the release announcement."
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades-new-release.html:37
-#: plinth/templates/notifications.html:59
+#: plinth/modules/upgrades/templates/upgrades-new-release.html:22
+#: plinth/templates/notifications.html:44
msgid "Dismiss"
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades.html:45
+#: plinth/modules/upgrades/templates/upgrades.html:30
#, fuzzy
#| msgid "Update URL"
msgid "Update now"
msgstr "نشانی بهروزرسانی"
-#: plinth/modules/upgrades/templates/upgrades.html:54
+#: plinth/modules/upgrades/templates/upgrades.html:39
msgid "Updating..."
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades.html:59
+#: plinth/modules/upgrades/templates/upgrades.html:44
msgid ""
"This may take a long time to complete. During an update, "
"you cannot install apps. Also, this web interface may be temporarily "
"unavailable and show an error. In that case, refresh the page to continue."
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades.html:73
+#: plinth/modules/upgrades/templates/upgrades.html:58
msgid "Toggle recent update logs"
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades_configure.html:26
-#: plinth/modules/upgrades/templates/upgrades_configure.html:27
-#: plinth/modules/upgrades/views.py:107
+#: plinth/modules/upgrades/templates/upgrades_configure.html:11
+#: plinth/modules/upgrades/templates/upgrades_configure.html:12
+#: plinth/modules/upgrades/views.py:89
#, fuzzy
#| msgid "Last update"
msgid "Manual update"
msgstr "آخرین بهروزرسانی"
-#: plinth/modules/upgrades/views.py:66
+#: plinth/modules/upgrades/views.py:48
#, python-brace-format
msgid "Error when configuring unattended-upgrades: {error}"
msgstr ""
-#: plinth/modules/upgrades/views.py:70
+#: plinth/modules/upgrades/views.py:52
msgid "Automatic upgrades enabled"
msgstr ""
-#: plinth/modules/upgrades/views.py:73
+#: plinth/modules/upgrades/views.py:55
msgid "Automatic upgrades disabled"
msgstr ""
-#: plinth/modules/upgrades/views.py:75
+#: plinth/modules/upgrades/views.py:57
msgid "Settings unchanged"
msgstr ""
-#: plinth/modules/upgrades/views.py:101
+#: plinth/modules/upgrades/views.py:83
msgid "Upgrade process started."
msgstr ""
-#: plinth/modules/upgrades/views.py:104
+#: plinth/modules/upgrades/views.py:86
msgid "Starting upgrade failed."
msgstr ""
-#: plinth/modules/users/__init__.py:51
-msgid "Users and Groups"
-msgstr ""
-
-#: plinth/modules/users/__init__.py:54
+#: plinth/modules/users/__init__.py:37
msgid ""
"Create and managed user accounts. These accounts serve as centralized "
"authentication mechanism for most apps. Some apps further require a user "
"account to be part of a group to authorize the user to access the app."
msgstr ""
-#: plinth/modules/users/__init__.py:59
+#: plinth/modules/users/__init__.py:42
#, python-brace-format
msgid ""
"Any user may login to {box_name} web interface to see a list of apps "
@@ -5959,35 +6068,39 @@ msgid ""
"group may alter apps or system settings."
msgstr ""
-#: plinth/modules/users/__init__.py:128
+#: plinth/modules/users/__init__.py:64
+msgid "Users and Groups"
+msgstr ""
+
+#: plinth/modules/users/__init__.py:115
#, python-brace-format
msgid "Check LDAP entry \"{search_item}\""
msgstr ""
-#: plinth/modules/users/forms.py:43
+#: plinth/modules/users/forms.py:28
msgid "Access to all services and system settings"
msgstr ""
-#: plinth/modules/users/forms.py:59
+#: plinth/modules/users/forms.py:44
msgid "Username is taken or is reserved."
msgstr ""
-#: plinth/modules/users/forms.py:87
+#: plinth/modules/users/forms.py:72
#, fuzzy
#| msgid "Invalid server name"
msgid "Enter a valid username."
msgstr "نام کاربری معتبر نیست"
-#: plinth/modules/users/forms.py:93
+#: plinth/modules/users/forms.py:78
msgid ""
"Required. 150 characters or fewer. English letters, digits and @/./-/_ only."
msgstr ""
-#: plinth/modules/users/forms.py:106 plinth/modules/users/forms.py:222
+#: plinth/modules/users/forms.py:91 plinth/modules/users/forms.py:207
msgid "Permissions"
msgstr ""
-#: plinth/modules/users/forms.py:109
+#: plinth/modules/users/forms.py:94
msgid ""
"Select which services should be available to the new user. The user will be "
"able to log in to services that support single sign-on through LDAP, if they "
@@ -5996,104 +6109,104 @@ msgid ""
"SSH and have administrative privileges (sudo)."
msgstr ""
-#: plinth/modules/users/forms.py:148 plinth/modules/users/forms.py:372
+#: plinth/modules/users/forms.py:133 plinth/modules/users/forms.py:357
msgid "Creating LDAP user failed."
msgstr "ساختن کاربر LDAP شکست خورد."
-#: plinth/modules/users/forms.py:159
+#: plinth/modules/users/forms.py:144
#, python-brace-format
msgid "Failed to add new user to {group} group."
msgstr ""
-#: plinth/modules/users/forms.py:173
+#: plinth/modules/users/forms.py:158
msgid "Authorized SSH Keys"
msgstr ""
-#: plinth/modules/users/forms.py:175
+#: plinth/modules/users/forms.py:160
msgid ""
"Setting an SSH public key will allow this user to securely log in to the "
"system without using a password. You may enter multiple keys, one on each "
"line. Blank lines and lines starting with # will be ignored."
msgstr ""
-#: plinth/modules/users/forms.py:259
+#: plinth/modules/users/forms.py:244
msgid "Renaming LDAP user failed."
msgstr ""
-#: plinth/modules/users/forms.py:271
+#: plinth/modules/users/forms.py:256
msgid "Failed to remove user from group."
msgstr ""
-#: plinth/modules/users/forms.py:282
+#: plinth/modules/users/forms.py:267
msgid "Failed to add user to group."
msgstr ""
-#: plinth/modules/users/forms.py:291
+#: plinth/modules/users/forms.py:276
msgid "Unable to set SSH keys."
msgstr ""
-#: plinth/modules/users/forms.py:306
+#: plinth/modules/users/forms.py:291
#, fuzzy
#| msgid "Failed to add new user to admin group."
msgid "Failed to change user status."
msgstr "افزودن کاربر به گروه مدیران شکست خورد."
-#: plinth/modules/users/forms.py:314
+#: plinth/modules/users/forms.py:299
msgid "Cannot delete the only administrator in the system."
msgstr ""
-#: plinth/modules/users/forms.py:346
+#: plinth/modules/users/forms.py:331
msgid "Changing LDAP user password failed."
msgstr ""
-#: plinth/modules/users/forms.py:381
+#: plinth/modules/users/forms.py:366
msgid "Failed to add new user to admin group."
msgstr "افزودن کاربر به گروه مدیران شکست خورد."
-#: plinth/modules/users/forms.py:398
+#: plinth/modules/users/forms.py:383
msgid "Failed to restrict console access."
msgstr ""
-#: plinth/modules/users/forms.py:410
+#: plinth/modules/users/forms.py:395
msgid "User account created, you are now logged in"
msgstr "حساب کاربری ساخته شد، شما الان وارد سیستم هستید"
-#: plinth/modules/users/templates/users_change_password.html:26
+#: plinth/modules/users/templates/users_change_password.html:11
#, python-format
msgid "Change Password for %(username)s"
msgstr ""
-#: plinth/modules/users/templates/users_change_password.html:36
+#: plinth/modules/users/templates/users_change_password.html:21
msgid "Save Password"
msgstr ""
-#: plinth/modules/users/templates/users_create.html:32
-#: plinth/modules/users/templates/users_list.html:42
-#: plinth/modules/users/templates/users_list.html:44
-#: plinth/modules/users/views.py:57
+#: plinth/modules/users/templates/users_create.html:17
+#: plinth/modules/users/templates/users_list.html:27
+#: plinth/modules/users/templates/users_list.html:29
+#: plinth/modules/users/views.py:42
msgid "Create User"
msgstr ""
-#: plinth/modules/users/templates/users_delete.html:26
-#: plinth/modules/users/views.py:139
+#: plinth/modules/users/templates/users_delete.html:11
+#: plinth/modules/users/views.py:121
msgid "Delete User"
msgstr ""
-#: plinth/modules/users/templates/users_delete.html:29
+#: plinth/modules/users/templates/users_delete.html:14
#, python-format
msgid "Delete user %(username)s permanently?"
msgstr ""
-#: plinth/modules/users/templates/users_delete.html:38
+#: plinth/modules/users/templates/users_delete.html:23
#, python-format
msgid "Delete %(username)s"
msgstr ""
-#: plinth/modules/users/templates/users_firstboot.html:26
+#: plinth/modules/users/templates/users_firstboot.html:11
msgid "Administrator Account"
msgstr "حساب مدیر"
-#: plinth/modules/users/templates/users_firstboot.html:29
+#: plinth/modules/users/templates/users_firstboot.html:14
msgid ""
"Choose a username and password to access this web interface. The password "
"can be changed later. This user will be granted administrative privileges. "
@@ -6103,87 +6216,82 @@ msgstr ""
"میتوانید تغییر دهید. این نام کاربری دسترسی مدیریتی خواهد داشت. کاربران دیگر "
"را بعداً میتوانید اضافه کنید."
-#: plinth/modules/users/templates/users_firstboot.html:42
+#: plinth/modules/users/templates/users_firstboot.html:27
#, fuzzy
#| msgid "Create Connection"
msgid "Create Account"
msgstr "ساختن اتصال"
-#: plinth/modules/users/templates/users_list.html:38
-#: plinth/modules/users/views.py:74
+#: plinth/modules/users/templates/users_list.html:23
+#: plinth/modules/users/views.py:59
msgid "Users"
msgstr ""
-#: plinth/modules/users/templates/users_list.html:57
+#: plinth/modules/users/templates/users_list.html:42
#, python-format
msgid "Delete user %(username)s"
msgstr ""
-#: plinth/modules/users/templates/users_list.html:65
+#: plinth/modules/users/templates/users_list.html:50
#, python-format
msgid "Edit user %(username)s"
msgstr ""
-#: plinth/modules/users/templates/users_update.html:30
+#: plinth/modules/users/templates/users_update.html:15
#, python-format
msgid ""
"Use the change password form to "
"change the password."
msgstr ""
-#: plinth/modules/users/templates/users_update.html:42
-#: plinth/templates/language-selection.html:32
+#: plinth/modules/users/templates/users_update.html:27
+#: plinth/templates/language-selection.html:17
msgid "Save Changes"
msgstr ""
-#: plinth/modules/users/views.py:55
+#: plinth/modules/users/views.py:40
#, python-format
msgid "User %(username)s created."
msgstr ""
-#: plinth/modules/users/views.py:93
+#: plinth/modules/users/views.py:75
#, python-format
msgid "User %(username)s updated."
msgstr ""
-#: plinth/modules/users/views.py:94
+#: plinth/modules/users/views.py:76
msgid "Edit User"
msgstr ""
-#: plinth/modules/users/views.py:149
+#: plinth/modules/users/views.py:131
#, python-brace-format
msgid "User {user} deleted."
msgstr ""
-#: plinth/modules/users/views.py:156
+#: plinth/modules/users/views.py:138
msgid "Deleting LDAP user failed."
msgstr ""
-#: plinth/modules/users/views.py:165
+#: plinth/modules/users/views.py:147
msgid "Change Password"
msgstr ""
-#: plinth/modules/users/views.py:166
+#: plinth/modules/users/views.py:148
msgid "Password changed successfully."
msgstr ""
-#: plinth/modules/wireguard/__init__.py:38
-#: plinth/modules/wireguard/manifest.py:29
-msgid "WireGuard"
-msgstr ""
-
-#: plinth/modules/wireguard/__init__.py:43
+#: plinth/modules/wireguard/__init__.py:24
msgid "WireGuard is a fast, modern, secure VPN tunnel."
msgstr ""
-#: plinth/modules/wireguard/__init__.py:45
+#: plinth/modules/wireguard/__init__.py:26
#, python-brace-format
msgid ""
"It can be used to connect to a VPN provider which supports WireGuard, and to "
"route all outgoing traffic from {box_name} through the VPN."
msgstr ""
-#: plinth/modules/wireguard/__init__.py:49
+#: plinth/modules/wireguard/__init__.py:30
#, python-brace-format
msgid ""
"A second use case is to connect a mobile device to {box_name} while "
@@ -6191,65 +6299,70 @@ msgid ""
"securely relayed through {box_name}."
msgstr ""
-#: plinth/modules/wireguard/forms.py:47
+#: plinth/modules/wireguard/__init__.py:52
+#: plinth/modules/wireguard/manifest.py:14
+msgid "WireGuard"
+msgstr ""
+
+#: plinth/modules/wireguard/forms.py:32
#, fuzzy
#| msgid "Invalid hostname"
msgid "Invalid key."
msgstr "نام میزبان معتبر نیست"
-#: plinth/modules/wireguard/forms.py:76
-#: plinth/modules/wireguard/templates/wireguard.html:32
-#: plinth/modules/wireguard/templates/wireguard.html:89
-#: plinth/modules/wireguard/templates/wireguard_delete_server.html:38
+#: plinth/modules/wireguard/forms.py:61
+#: plinth/modules/wireguard/templates/wireguard.html:17
+#: plinth/modules/wireguard/templates/wireguard.html:74
+#: plinth/modules/wireguard/templates/wireguard_delete_server.html:23
#, fuzzy
#| msgid "Publish Key"
msgid "Public Key"
msgstr "انتشار کلید"
-#: plinth/modules/wireguard/forms.py:77
+#: plinth/modules/wireguard/forms.py:62
msgid ""
"Public key of the peer. Example: "
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs= ."
msgstr ""
-#: plinth/modules/wireguard/forms.py:85
+#: plinth/modules/wireguard/forms.py:70
msgid "Endpoint of the server"
msgstr ""
-#: plinth/modules/wireguard/forms.py:86
+#: plinth/modules/wireguard/forms.py:71
msgid ""
"Domain name and port in the form \"ip:port\". Example: demo.wireguard."
"com:12912 ."
msgstr ""
-#: plinth/modules/wireguard/forms.py:91
+#: plinth/modules/wireguard/forms.py:76
#, fuzzy
#| msgid "Published key to keyserver."
msgid "Public key of the server"
msgstr "کلید در پایگاه کلیدها منتشر شد."
-#: plinth/modules/wireguard/forms.py:92
+#: plinth/modules/wireguard/forms.py:77
msgid ""
"Provided by the server operator, a long string of characters. Example: "
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs= ."
msgstr ""
-#: plinth/modules/wireguard/forms.py:97
+#: plinth/modules/wireguard/forms.py:82
msgid "Client IP address provided by server"
msgstr ""
-#: plinth/modules/wireguard/forms.py:98
+#: plinth/modules/wireguard/forms.py:83
msgid ""
"IP address assigned to this machine on the VPN after connecting to the "
"endpoint. This value is usually provided by the server operator. Example: "
"192.168.0.10."
msgstr ""
-#: plinth/modules/wireguard/forms.py:104
+#: plinth/modules/wireguard/forms.py:89
msgid "Private key of this machine"
msgstr ""
-#: plinth/modules/wireguard/forms.py:105
+#: plinth/modules/wireguard/forms.py:90
msgid ""
"Optional. New public/private keys are generated if left blank. Public key "
"can then be provided to the server. This is the recommended way. However, "
@@ -6257,171 +6370,171 @@ msgid ""
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs= ."
msgstr ""
-#: plinth/modules/wireguard/forms.py:113
+#: plinth/modules/wireguard/forms.py:98
msgid "Pre-shared key"
msgstr ""
-#: plinth/modules/wireguard/forms.py:114
+#: plinth/modules/wireguard/forms.py:99
msgid ""
"Optional. A shared secret key provided by the server to add an additional "
"layer of security. Fill in only if provided. Example: "
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs=."
msgstr ""
-#: plinth/modules/wireguard/forms.py:120
+#: plinth/modules/wireguard/forms.py:105
msgid "Use this connection to send all outgoing traffic"
msgstr ""
-#: plinth/modules/wireguard/forms.py:122
+#: plinth/modules/wireguard/forms.py:107
msgid "Typically checked for a VPN service though which all traffic is sent."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:25
+#: plinth/modules/wireguard/templates/wireguard.html:10
#, fuzzy
#| msgid "Web Server"
msgid "As a Server"
msgstr "سرور وب"
-#: plinth/modules/wireguard/templates/wireguard.html:27
+#: plinth/modules/wireguard/templates/wireguard.html:12
msgid "Peers allowed to connect to this server:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:33
+#: plinth/modules/wireguard/templates/wireguard.html:18
msgid "Allowed IPs"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:34
-#: plinth/modules/wireguard/templates/wireguard.html:90
+#: plinth/modules/wireguard/templates/wireguard.html:19
+#: plinth/modules/wireguard/templates/wireguard.html:75
#, fuzzy
#| msgid "Create Connection"
msgid "Last Connected Time"
msgstr "ساختن اتصال"
-#: plinth/modules/wireguard/templates/wireguard.html:53
+#: plinth/modules/wireguard/templates/wireguard.html:38
#, python-format
msgid "No peers configured to connect to this %(box_name)s yet."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:62
+#: plinth/modules/wireguard/templates/wireguard.html:47
#, python-format
msgid "Public key for this %(box_name)s:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:68
+#: plinth/modules/wireguard/templates/wireguard.html:53
msgid "Not configured yet."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:72
+#: plinth/modules/wireguard/templates/wireguard.html:57
msgid "Add a new peer"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:76
-#: plinth/modules/wireguard/views.py:69
+#: plinth/modules/wireguard/templates/wireguard.html:61
+#: plinth/modules/wireguard/views.py:51
msgid "Add Allowed Client"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:79
+#: plinth/modules/wireguard/templates/wireguard.html:64
#, fuzzy
msgid "As a Client"
msgstr "برنامهٔ DNS متغیر (Dynamic DNS Client)"
-#: plinth/modules/wireguard/templates/wireguard.html:81
+#: plinth/modules/wireguard/templates/wireguard.html:66
#, python-format
msgid "Servers that %(box_name)s will connect to:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:88
-#: plinth/modules/wireguard/templates/wireguard_delete_server.html:34
+#: plinth/modules/wireguard/templates/wireguard.html:73
+#: plinth/modules/wireguard/templates/wireguard_delete_server.html:19
msgid "Endpoint"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:111
+#: plinth/modules/wireguard/templates/wireguard.html:96
msgid "No connections to remote servers are configured yet."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:119
+#: plinth/modules/wireguard/templates/wireguard.html:104
msgid "Add a new server"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:123
-#: plinth/modules/wireguard/views.py:178
+#: plinth/modules/wireguard/templates/wireguard.html:108
+#: plinth/modules/wireguard/views.py:160
#, fuzzy
#| msgid "Add Connection"
msgid "Add Connection to Server"
msgstr "افزودن اتصال"
-#: plinth/modules/wireguard/templates/wireguard_add_client.html:34
+#: plinth/modules/wireguard/templates/wireguard_add_client.html:19
#, fuzzy
msgid "Add Client"
msgstr "برنامهٔ DNS متغیر (Dynamic DNS Client)"
-#: plinth/modules/wireguard/templates/wireguard_delete_client.html:29
+#: plinth/modules/wireguard/templates/wireguard_delete_client.html:14
msgid "Are you sure that you want to delete this client?"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_delete_server.html:29
+#: plinth/modules/wireguard/templates/wireguard_delete_server.html:14
msgid "Are you sure that you want to delete this server?"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_edit_client.html:34
+#: plinth/modules/wireguard/templates/wireguard_edit_client.html:19
#, fuzzy
#| msgid "Update setup"
msgid "Update Client"
msgstr "بهروزرسانی وضعیت"
-#: plinth/modules/wireguard/templates/wireguard_edit_server.html:34
+#: plinth/modules/wireguard/templates/wireguard_edit_server.html:19
#, fuzzy
#| msgid "Create Connection"
msgid "Update Connection"
msgstr "ساختن اتصال"
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:27
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:12
#, python-format
msgid ""
"%(box_name)s will allow this client to connect to it. Ensure that the client "
"is configured with the following information."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:35
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:20
msgid "Client public key:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:39
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:24
msgid "IP address to use for client:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:43
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:46
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:28
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:31
msgid "Pre-shared key:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:47
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:32
#, fuzzy
#| msgid "SSH Fingerprint"
msgid "Server endpoints:"
msgstr "اثر انگشت SSH"
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:55
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:42
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:40
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:27
msgid "Server public key:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:65
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:64
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:50
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:49
msgid "Data transmitted:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:69
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:68
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:54
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:53
msgid "Data received:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:73
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:72
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:58
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:57
msgid "Latest handshake:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:29
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:14
#, python-format
msgid ""
"%(box_name)s will attempt to reach a WireGuard server with the following "
@@ -6429,153 +6542,153 @@ msgid ""
"public key and IP address."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:38
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:23
#, fuzzy
#| msgid "SSH Fingerprint"
msgid "Server endpoint:"
msgstr "اثر انگشت SSH"
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:50
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:35
msgid "Public key of this machine:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:54
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:39
msgid "IP address of this machine:"
msgstr ""
-#: plinth/modules/wireguard/views.py:64
+#: plinth/modules/wireguard/views.py:46
msgid "Added new client."
msgstr ""
-#: plinth/modules/wireguard/views.py:79 plinth/modules/wireguard/views.py:138
+#: plinth/modules/wireguard/views.py:61 plinth/modules/wireguard/views.py:120
msgid "Client with public key already exists"
msgstr ""
-#: plinth/modules/wireguard/views.py:92
+#: plinth/modules/wireguard/views.py:74
#, fuzzy
msgid "Allowed Client"
msgstr "برنامهٔ DNS متغیر (Dynamic DNS Client)"
-#: plinth/modules/wireguard/views.py:114
+#: plinth/modules/wireguard/views.py:96
#, fuzzy
#| msgid "Update setup"
msgid "Updated client."
msgstr "بهروزرسانی وضعیت"
-#: plinth/modules/wireguard/views.py:119
+#: plinth/modules/wireguard/views.py:101
#, fuzzy
msgid "Modify Client"
msgstr "برنامهٔ DNS متغیر (Dynamic DNS Client)"
-#: plinth/modules/wireguard/views.py:152
+#: plinth/modules/wireguard/views.py:134
#, fuzzy
#| msgid "Delete"
msgid "Delete Allowed Client"
msgstr "پاککردن"
-#: plinth/modules/wireguard/views.py:161
+#: plinth/modules/wireguard/views.py:143
#, fuzzy
#| msgid "{name} deleted."
msgid "Client deleted."
msgstr "{name} پاک شد."
-#: plinth/modules/wireguard/views.py:163
+#: plinth/modules/wireguard/views.py:145
msgid "Client not found"
msgstr ""
-#: plinth/modules/wireguard/views.py:173
+#: plinth/modules/wireguard/views.py:155
msgid "Added new server."
msgstr ""
-#: plinth/modules/wireguard/views.py:194
+#: plinth/modules/wireguard/views.py:176
#, fuzzy
#| msgid "Connection Type"
msgid "Connection to Server"
msgstr "نوع اتصال"
-#: plinth/modules/wireguard/views.py:212
+#: plinth/modules/wireguard/views.py:194
#, fuzzy
#| msgid "Update setup"
msgid "Updated server."
msgstr "بهروزرسانی وضعیت"
-#: plinth/modules/wireguard/views.py:217
+#: plinth/modules/wireguard/views.py:199
#, fuzzy
#| msgid "Edit Connection"
msgid "Modify Connection to Server"
msgstr "ویرایش اتصال"
-#: plinth/modules/wireguard/views.py:254
+#: plinth/modules/wireguard/views.py:236
#, fuzzy
#| msgid "Delete Connection"
msgid "Delete Connection to Server"
msgstr "پاککردن اتصال"
-#: plinth/modules/wireguard/views.py:274
+#: plinth/modules/wireguard/views.py:256
#, fuzzy
#| msgid "{name} deleted."
msgid "Server deleted."
msgstr "{name} پاک شد."
-#: plinth/network.py:42
+#: plinth/network.py:27
msgid "PPPoE"
msgstr ""
-#: plinth/network.py:43
+#: plinth/network.py:28
msgid "Generic"
msgstr ""
-#: plinth/package.py:137
+#: plinth/package.py:122
msgid "Error during installation"
msgstr ""
-#: plinth/package.py:159
+#: plinth/package.py:144
msgid "installing"
msgstr ""
-#: plinth/package.py:161
+#: plinth/package.py:146
msgid "downloading"
msgstr ""
-#: plinth/package.py:163
+#: plinth/package.py:148
msgid "media change"
msgstr ""
-#: plinth/package.py:165
+#: plinth/package.py:150
#, python-brace-format
msgid "configuration file: {file}"
msgstr ""
-#: plinth/templates/403.html:25
+#: plinth/templates/403.html:10
msgid "403 Forbidden"
msgstr ""
-#: plinth/templates/403.html:29
+#: plinth/templates/403.html:14
#, python-format
msgid "You don't have permission to access %(request_path)s on this server."
msgstr ""
-#: plinth/templates/404.html:25
+#: plinth/templates/404.html:10
msgid "404"
msgstr ""
-#: plinth/templates/404.html:28
+#: plinth/templates/404.html:13
#, python-format
msgid "Requested page %(request_path)s was not found."
msgstr ""
-#: plinth/templates/404.html:34
+#: plinth/templates/404.html:19
msgid ""
"If you believe this missing page should exist, please file a bug at the "
"FreedomBox Service (Plinth) project issue tracker."
msgstr ""
-#: plinth/templates/500.html:25
+#: plinth/templates/500.html:10
msgid "500"
msgstr ""
-#: plinth/templates/500.html:29
+#: plinth/templates/500.html:14
#, python-format
msgid ""
"This is an internal error and not something you caused or can fix. Please "
@@ -6584,142 +6697,142 @@ msgid ""
"href=\"%(status_log_url)s\">status log to the bug report."
msgstr ""
-#: plinth/templates/app.html:47
+#: plinth/templates/app-header.html:22
+msgid "Installation"
+msgstr ""
+
+#: plinth/templates/app.html:32
#, python-format
msgid "Service %(service_name)s is running."
msgstr ""
-#: plinth/templates/app.html:52
+#: plinth/templates/app.html:37
#, python-format
msgid "Service %(service_name)s is not running."
msgstr ""
-#: plinth/templates/base.html:50
+#: plinth/templates/base.html:35
#, python-format
msgid "Core functionality and web interface for %(box_name)s"
msgstr ""
-#: plinth/templates/base.html:96
+#: plinth/templates/base.html:81
msgid "Toggle navigation"
msgstr ""
-#: plinth/templates/base.html:120 plinth/templates/base.html:123
+#: plinth/templates/base.html:105 plinth/templates/base.html:108
msgid "Home"
msgstr ""
-#: plinth/templates/base.html:128 plinth/templates/base.html:132
+#: plinth/templates/base.html:113 plinth/templates/base.html:117
#, fuzzy
msgid "Apps"
msgstr "برنامهها"
-#: plinth/templates/base.html:137 plinth/templates/base.html:141
+#: plinth/templates/base.html:122 plinth/templates/base.html:126
msgid "System"
msgstr ""
-#: plinth/templates/base.html:173 plinth/templates/base.html:174
+#: plinth/templates/base.html:158 plinth/templates/base.html:159
msgid "Change password"
msgstr ""
-#: plinth/templates/base.html:181 plinth/templates/base.html:182
+#: plinth/templates/base.html:166 plinth/templates/base.html:167
msgid "Restart"
msgstr ""
-#: plinth/templates/base.html:187 plinth/templates/base.html:188
+#: plinth/templates/base.html:172 plinth/templates/base.html:173
msgid "Shut down"
msgstr ""
-#: plinth/templates/base.html:195 plinth/templates/base.html:196
-#: plinth/templates/base.html:220 plinth/templates/base.html:222
+#: plinth/templates/base.html:180 plinth/templates/base.html:181
+#: plinth/templates/base.html:205 plinth/templates/base.html:207
msgid "Log out"
msgstr ""
-#: plinth/templates/base.html:204 plinth/templates/base.html:207
+#: plinth/templates/base.html:189 plinth/templates/base.html:192
#, fuzzy
#| msgid "Language"
msgid "Select language"
msgstr "زبان"
-#: plinth/templates/base.html:212 plinth/templates/base.html:214
+#: plinth/templates/base.html:197 plinth/templates/base.html:199
msgid "Log in"
msgstr ""
-#: plinth/templates/clients.html:32
+#: plinth/templates/clients.html:17
msgid "Web"
msgstr ""
-#: plinth/templates/clients.html:57
+#: plinth/templates/clients.html:42
msgid "Desktop"
msgstr ""
-#: plinth/templates/clients.html:68
+#: plinth/templates/clients.html:53
msgid "GNU/Linux"
msgstr ""
-#: plinth/templates/clients.html:70
+#: plinth/templates/clients.html:55
msgid "Windows"
msgstr ""
-#: plinth/templates/clients.html:72
+#: plinth/templates/clients.html:57
msgid "macOS"
msgstr ""
-#: plinth/templates/clients.html:88
+#: plinth/templates/clients.html:73
#, fuzzy
msgid "Mobile"
msgstr "برنامهٔ DNS متغیر (Dynamic DNS Client)"
-#: plinth/templates/clients.html:99
+#: plinth/templates/clients.html:84
msgid "Play Store"
msgstr ""
-#: plinth/templates/clients.html:101
+#: plinth/templates/clients.html:86
msgid "F-Droid"
msgstr ""
-#: plinth/templates/clients.html:103
+#: plinth/templates/clients.html:88
msgid "App Store"
msgstr ""
-#: plinth/templates/clients.html:119
+#: plinth/templates/clients.html:104
msgid "Package"
msgstr ""
-#: plinth/templates/clients.html:126
+#: plinth/templates/clients.html:111
msgid "Debian:"
msgstr ""
-#: plinth/templates/clients.html:129
+#: plinth/templates/clients.html:114
msgid "Homebrew:"
msgstr ""
-#: plinth/templates/clients.html:132
+#: plinth/templates/clients.html:117
msgid "RPM:"
msgstr ""
-#: plinth/templates/first_setup.html:39
+#: plinth/templates/first_setup.html:24
#, python-format
msgid ""
"Please wait for %(box_name)s to finish installation. You can start using "
"your %(box_name)s once it is done."
msgstr ""
-#: plinth/templates/header.html:36
-msgid "Installation"
-msgstr ""
-
-#: plinth/templates/index.html:37
+#: plinth/templates/index.html:22
#, python-format
msgid ""
"Enable some applications to add shortcuts to "
"this page."
msgstr ""
-#: plinth/templates/index.html:59
+#: plinth/templates/index.html:44
#, fuzzy
msgid "Configure »"
msgstr "پیکربندی"
-#: plinth/templates/index.html:115
+#: plinth/templates/index.html:100
#, python-format
msgid ""
"%(box_name)s, a Debian pure blend, is a 100%% free software self-hosting web "
@@ -6727,7 +6840,7 @@ msgid ""
"communication tools respecting your privacy and data ownership."
msgstr ""
-#: plinth/templates/index.html:124
+#: plinth/templates/index.html:109
#, python-format
msgid ""
"This portal is a part of the %(box_name)s web interface. %(box_name)s is "
@@ -6735,58 +6848,58 @@ msgid ""
"Version 3 or later."
msgstr ""
-#: plinth/templates/index.html:144
+#: plinth/templates/index.html:129
msgid "Homepage"
msgstr ""
-#: plinth/templates/index.html:147
+#: plinth/templates/index.html:132
msgid "Source Code"
msgstr ""
-#: plinth/templates/index.html:150
+#: plinth/templates/index.html:135
msgid "Donate"
msgstr ""
-#: plinth/templates/index.html:154
+#: plinth/templates/index.html:139
#, fuzzy
msgid "FreedomBox Foundation"
msgstr "FreedomBox"
-#: plinth/templates/index.html:161
+#: plinth/templates/index.html:146
msgid "IRC Chatroom"
msgstr ""
-#: plinth/templates/index.html:166
+#: plinth/templates/index.html:151
msgid "Mailing list"
msgstr ""
-#: plinth/templates/internal-zone.html:26
+#: plinth/templates/internal-zone.html:11
#, python-format
msgid "%(service_name)s is available only on internal networks."
msgstr ""
-#: plinth/templates/internal-zone.html:32
+#: plinth/templates/internal-zone.html:17
msgid "Currently there are no network interfaces configured as internal."
msgstr ""
-#: plinth/templates/internal-zone.html:34
+#: plinth/templates/internal-zone.html:19
#, python-format
msgid ""
"Currently the following network interfaces are configured as internal: "
"%(interface_list)s"
msgstr ""
-#: plinth/templates/notifications-dropdown.html:26
+#: plinth/templates/notifications-dropdown.html:11
#, fuzzy
#| msgid "No certficate"
msgid "Notifications"
msgstr "بدون گواهی دیجیتال"
-#: plinth/templates/port-forwarding-info.html:23
+#: plinth/templates/port-forwarding-info.html:8
msgid "Port Forwarding"
msgstr ""
-#: plinth/templates/port-forwarding-info.html:26
+#: plinth/templates/port-forwarding-info.html:11
#, python-format
msgid ""
"If your FreedomBox is behind a router, you will need to set up port "
@@ -6794,65 +6907,65 @@ msgid ""
"%(service_name)s:"
msgstr ""
-#: plinth/templates/setup.html:51
+#: plinth/templates/setup.html:36
msgid "Install this application?"
msgstr ""
-#: plinth/templates/setup.html:55
+#: plinth/templates/setup.html:40
msgid "This application needs an update. Update now?"
msgstr ""
-#: plinth/templates/setup.html:66
+#: plinth/templates/setup.html:51
msgid ""
"Another installation or upgrade is already running. Please wait for a few "
"moments before trying again."
msgstr ""
-#: plinth/templates/setup.html:73
+#: plinth/templates/setup.html:58
msgid "This application is currently not available in your distribution."
msgstr ""
-#: plinth/templates/setup.html:87
+#: plinth/templates/setup.html:72
msgid "Install"
msgstr ""
-#: plinth/templates/setup.html:98
+#: plinth/templates/setup.html:83
msgid "Performing pre-install operation"
msgstr ""
-#: plinth/templates/setup.html:102
+#: plinth/templates/setup.html:87
msgid "Performing post-install operation"
msgstr ""
-#: plinth/templates/setup.html:107
+#: plinth/templates/setup.html:92
#, python-format
msgid "Installing %(package_names)s: %(status)s"
msgstr ""
-#: plinth/templates/setup.html:117
+#: plinth/templates/setup.html:102
#, python-format
msgid "%(percentage)s%% complete"
msgstr ""
-#: plinth/templates/toolbar.html:38
+#: plinth/templates/toolbar.html:23
msgid "Launch web client"
msgstr ""
-#: plinth/templates/toolbar.html:47
+#: plinth/templates/toolbar.html:32
#, fuzzy
#| msgid "BitTorrent Web Client (Deluge)"
msgid "Client Apps"
msgstr "برنامهٔ تحت وب بیتتورنت (Deluge)"
-#: plinth/views.py:179
+#: plinth/views.py:189
msgid "Application enabled"
msgstr ""
-#: plinth/views.py:182
+#: plinth/views.py:192
msgid "Application disabled"
msgstr ""
-#: plinth/web_framework.py:190
+#: plinth/web_framework.py:107
msgid "Gujarati"
msgstr ""
diff --git a/plinth/locale/fake/LC_MESSAGES/django.po b/plinth/locale/fake/LC_MESSAGES/django.po
index 537a11417..43cd69849 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: 2020-02-14 21:26+0200\n"
+"POT-Creation-Date: 2020-02-24 19:12-0500\n"
"PO-Revision-Date: 2016-01-31 22:24+0530\n"
"Last-Translator: Sunil Mohan Adapa This means that devices on the Internet can reach you when you are " +"connected to the Internet. Every time you connect to the Internet with your " +"Internet Service Provider (ISP), you may get a different IP address, " +"especially after some offline time. Many ISPs offer this type of " +"connectivity. If you have a public IP address but are unsure if it changes " +"over time or not, it is safer to choose this option.
" +msgstr "" + #: plinth/modules/networks/forms.py:313 +#, python-brace-format +msgid "" +"I have a public IP address that does not change overtime (recommended)This means that devices on the Internet can reach you " +"when you are connected to the Internet. Every time you connect to the " +"Internet with your Internet Service Provider (ISP), you always get the same " +"IP address. This is the most trouble-free setup for many {box_name} services " +"but very few ISPs offer this. You may be able to get this service from your " +"ISP by making an additional payment.
" +msgstr "" + +#: plinth/modules/networks/forms.py:326 +#, python-brace-format +msgid "" +"I dont have a public IP addressThis means that " +"devices on the Internet can not reach you when you are connected to " +"the Internet. Every time you connect to the Internet with your Internet " +"Service Provider (ISP), you get an IP address that is only relevant for " +"local networks. Many ISPs offer this type of connectivity. This is the most " +"troublesome situation for hosting services at home. {box_name} provides many " +"workaround solutions but each solution has some limitations.
" +msgstr "" + +#: plinth/modules/networks/forms.py:351 #, fuzzy #| msgid "Current Network Configuration" msgid "Preferred router configuration" msgstr "CURRENT NETWORK CONFIGURATION" -#: plinth/modules/networks/forms.py:318 +#: plinth/modules/networks/forms.py:356 #, python-brace-format msgid "" -"Use DMZ feature to forward all trafficMost routers " -"provide a configuration setting called DMZ. This will allow the router to " -"forward all incoming traffic from the internet to a single IP address such " -"as the {box_name}'s address. First remember to configure a static local IP " -"address for your {box_name} in your router's configuration.
" +"Use DMZ feature to forward all traffic (recommended)Most routers provide a configuration setting called DMZ. This will allow " +"the router to forward all incoming traffic from the Internet to a single IP " +"address such as the {box_name}'s IP address. First remember to configure a " +"static local IP address for your {box_name} in your router's configuration." +"p>" msgstr "" -#: plinth/modules/networks/forms.py:332 +#: plinth/modules/networks/forms.py:368 #, python-brace-format msgid "" -"Forward Specific Traffic as needed by each application
You may alternatively choose to forward only specific traffic to your " "{box_name}. This is ideal if you have other servers like {box_name} in your " "network or if your router does not support DMZ feature. All applications " @@ -3668,268 +3739,274 @@ msgid "" "to be forwarded for that application to work.
" msgstr "" -#: plinth/modules/networks/forms.py:349 +#: plinth/modules/networks/forms.py:382 msgid "" -"Router is currently unconfiguredChoose this if you " +"Router is currently unconfigured
Choose this if you " "have not configured or are unable to configure the router currently and wish " "to be reminded later. Some of the other configuration steps may fail.
" msgstr "" -#: plinth/modules/networks/networks.py:43 +#: plinth/modules/networks/networks.py:32 msgid "Network Connections" msgstr "NETWORK CONNECTIONS" -#: plinth/modules/networks/networks.py:59 +#: plinth/modules/networks/networks.py:46 msgid "Cannot show connection: Connection not found." msgstr "CANNOT SHOW CONNECTION: CONNECTION NOT FOUND." -#: plinth/modules/networks/networks.py:94 +#: plinth/modules/networks/networks.py:81 #, fuzzy #| msgid "Show Connection information" msgid "Connection Information" msgstr "SHOW CONNECTION INFORMATION" -#: plinth/modules/networks/networks.py:108 +#: plinth/modules/networks/networks.py:95 msgid "Cannot edit connection: Connection not found." msgstr "CANNOT EDIT CONNECTION: CONNECTION NOT FOUND." -#: plinth/modules/networks/networks.py:114 +#: plinth/modules/networks/networks.py:101 msgid "This type of connection is not yet understood." msgstr "THIS TYPE OF CONNECTION IS NOT YET UNDERSTOOD." -#: plinth/modules/networks/networks.py:136 -#: plinth/modules/networks/networks.py:220 -#: plinth/modules/networks/templates/connections_edit.html:35 +#: plinth/modules/networks/networks.py:123 +#: plinth/modules/networks/networks.py:207 +#: plinth/modules/networks/templates/connections_edit.html:20 msgid "Edit Connection" msgstr "EDIT CONNECTION" -#: plinth/modules/networks/networks.py:232 +#: plinth/modules/networks/networks.py:219 #, python-brace-format msgid "Activated connection {name}." msgstr "ACTIVATED CONNECTION {name}." -#: plinth/modules/networks/networks.py:236 +#: plinth/modules/networks/networks.py:223 msgid "Failed to activate connection: Connection not found." msgstr "FAILED TO ACTIVATE CONNECTION: CONNECTION NOT FOUND." -#: plinth/modules/networks/networks.py:242 +#: plinth/modules/networks/networks.py:229 #, python-brace-format msgid "Failed to activate connection {name}: No suitable device is available." msgstr "FAILED TO ACTIVATE CONNECTION {name}: NO SUITABLE DEVICE IS AVAILABLE." -#: plinth/modules/networks/networks.py:255 +#: plinth/modules/networks/networks.py:242 #, python-brace-format msgid "Deactivated connection {name}." msgstr "DEACTIVATED CONNECTION {name}." -#: plinth/modules/networks/networks.py:259 +#: plinth/modules/networks/networks.py:246 msgid "Failed to de-activate connection: Connection not found." msgstr "FAILED TO DE-ACTIVATE CONNECTION: CONNECTION NOT FOUND." -#: plinth/modules/networks/networks.py:269 -#: plinth/modules/networks/templates/connections_list.html:62 -#: plinth/modules/networks/templates/connections_list.html:64 +#: plinth/modules/networks/networks.py:256 +#: plinth/modules/networks/templates/connections_list.html:12 +#: plinth/modules/networks/templates/connections_list.html:14 msgid "Nearby Wi-Fi Networks" msgstr "NEARBY WI-FI NETWORKS" -#: plinth/modules/networks/networks.py:293 -#: plinth/modules/networks/templates/connections_list.html:67 -#: plinth/modules/networks/templates/connections_list.html:69 -#: plinth/modules/wireguard/templates/wireguard_add_server.html:34 +#: plinth/modules/networks/networks.py:280 +#: plinth/modules/networks/templates/connections_list.html:17 +#: plinth/modules/networks/templates/connections_list.html:19 +#: plinth/modules/wireguard/templates/wireguard_add_server.html:19 msgid "Add Connection" msgstr "ADD CONNECTION" -#: plinth/modules/networks/networks.py:311 +#: plinth/modules/networks/networks.py:298 #, fuzzy #| msgid "Adding New Ethernet Connection" msgid "Adding New Generic Connection" msgstr "ADDING NEW ETHERNET CONNECTION" -#: plinth/modules/networks/networks.py:329 +#: plinth/modules/networks/networks.py:316 msgid "Adding New Ethernet Connection" msgstr "ADDING NEW ETHERNET CONNECTION" -#: plinth/modules/networks/networks.py:347 +#: plinth/modules/networks/networks.py:334 msgid "Adding New PPPoE Connection" msgstr "ADDING NEW PPPOE CONNECTION" -#: plinth/modules/networks/networks.py:382 +#: plinth/modules/networks/networks.py:369 msgid "Adding New Wi-Fi Connection" msgstr "ADDING NEW WI-FI CONNECTION" -#: plinth/modules/networks/networks.py:397 +#: plinth/modules/networks/networks.py:384 #, python-brace-format msgid "Connection {name} deleted." msgstr "CONNECTION {name} DELETED." -#: plinth/modules/networks/networks.py:401 -#: plinth/modules/networks/networks.py:411 +#: plinth/modules/networks/networks.py:388 +#: plinth/modules/networks/networks.py:398 msgid "Failed to delete connection: Connection not found." msgstr "FAILED TO DELETE CONNECTION: CONNECTION NOT FOUND." -#: plinth/modules/networks/networks.py:416 -#: plinth/modules/networks/templates/connections_delete.html:26 +#: plinth/modules/networks/networks.py:403 +#: plinth/modules/networks/templates/connections_delete.html:11 msgid "Delete Connection" msgstr "DELETE CONNECTION" -#: plinth/modules/networks/networks.py:442 +#: plinth/modules/networks/networks.py:428 #, fuzzy #| msgid "Tor configuration is being updated" msgid "Router configuration type saved." msgstr "TOR CONFIGURATION IS BEING UPDATED" -#: plinth/modules/networks/templates/connection_show.html:43 +#: plinth/modules/networks/networks.py:474 +#, fuzzy +#| msgid "Tor configuration is being updated" +msgid "Internet connection type saved." +msgstr "TOR CONFIGURATION IS BEING UPDATED" + +#: plinth/modules/networks/templates/connection_show.html:28 msgid "Edit connection" msgstr "EDIT CONNECTION" -#: plinth/modules/networks/templates/connection_show.html:43 -#: plinth/modules/wireguard/templates/wireguard_show_client.html:83 -#: plinth/modules/wireguard/templates/wireguard_show_server.html:84 -#: plinth/templates/base.html:167 plinth/templates/base.html:168 +#: plinth/modules/networks/templates/connection_show.html:28 +#: plinth/modules/wireguard/templates/wireguard_show_client.html:68 +#: plinth/modules/wireguard/templates/wireguard_show_server.html:69 +#: plinth/templates/base.html:152 plinth/templates/base.html:153 msgid "Edit" msgstr "EDIT" -#: plinth/modules/networks/templates/connection_show.html:50 -#: plinth/modules/networks/templates/connections_list.html:90 +#: plinth/modules/networks/templates/connection_show.html:35 +#: plinth/modules/networks/templates/connections_list.html:40 msgid "Deactivate" msgstr "DEACTIVATE" -#: plinth/modules/networks/templates/connection_show.html:57 -#: plinth/modules/networks/templates/connections_list.html:98 +#: plinth/modules/networks/templates/connection_show.html:42 +#: plinth/modules/networks/templates/connections_list.html:48 msgid "Activate" msgstr "ACTIVATE" -#: plinth/modules/networks/templates/connection_show.html:63 +#: plinth/modules/networks/templates/connection_show.html:48 msgid "Delete connection" msgstr "DELETE CONNECTION" -#: plinth/modules/networks/templates/connection_show.html:66 -#: plinth/modules/networks/templates/connections_diagram.html:73 -#: plinth/modules/networks/templates/connections_diagram.html:76 -#: plinth/modules/networks/templates/connections_diagram.html:105 -#: plinth/modules/networks/templates/connections_diagram.html:127 +#: plinth/modules/networks/templates/connection_show.html:51 +#: plinth/modules/networks/templates/connections_diagram.html:58 +#: plinth/modules/networks/templates/connections_diagram.html:61 +#: plinth/modules/networks/templates/connections_diagram.html:90 +#: plinth/modules/networks/templates/connections_diagram.html:112 msgid "Connection" msgstr "CONNECTION" -#: plinth/modules/networks/templates/connection_show.html:71 +#: plinth/modules/networks/templates/connection_show.html:56 msgid "Primary connection" msgstr "PRIMARY CONNECTION" -#: plinth/modules/networks/templates/connection_show.html:73 -#: plinth/modules/networks/templates/connection_show.html:217 -#: plinth/modules/networks/templates/connection_show.html:256 +#: plinth/modules/networks/templates/connection_show.html:58 +#: plinth/modules/networks/templates/connection_show.html:202 +#: plinth/modules/networks/templates/connection_show.html:241 msgid "yes" msgstr "YES" -#: plinth/modules/networks/templates/connection_show.html:84 -#: plinth/modules/storage/templates/storage.html:40 +#: plinth/modules/networks/templates/connection_show.html:69 +#: plinth/modules/storage/templates/storage.html:25 msgid "Device" msgstr "DEVICE" -#: plinth/modules/networks/templates/connection_show.html:88 +#: plinth/modules/networks/templates/connection_show.html:73 msgid "State" msgstr "STATE" -#: plinth/modules/networks/templates/connection_show.html:93 +#: plinth/modules/networks/templates/connection_show.html:78 msgid "State reason" msgstr "STATE REASON" -#: plinth/modules/networks/templates/connection_show.html:102 +#: plinth/modules/networks/templates/connection_show.html:87 msgid "MAC address" msgstr "MAC ADDRESS" -#: plinth/modules/networks/templates/connection_show.html:106 +#: plinth/modules/networks/templates/connection_show.html:91 msgid "Interface" msgstr "INTERFACE" -#: plinth/modules/networks/templates/connection_show.html:110 -#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:33 -#: plinth/modules/snapshot/templates/snapshot_manage.html:45 -#: plinth/modules/snapshot/templates/snapshot_rollback.html:41 +#: plinth/modules/networks/templates/connection_show.html:95 +#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:18 +#: plinth/modules/snapshot/templates/snapshot_manage.html:30 +#: plinth/modules/snapshot/templates/snapshot_rollback.html:26 msgid "Description" msgstr "DESCRIPTION" -#: plinth/modules/networks/templates/connection_show.html:116 +#: plinth/modules/networks/templates/connection_show.html:101 msgid "Physical Link" msgstr "PHYSICAL LINK" -#: plinth/modules/networks/templates/connection_show.html:121 +#: plinth/modules/networks/templates/connection_show.html:106 msgid "Link state" msgstr "LINK STATE" -#: plinth/modules/networks/templates/connection_show.html:125 +#: plinth/modules/networks/templates/connection_show.html:110 msgid "cable is connected" msgstr "CABLE IS CONNECTED" -#: plinth/modules/networks/templates/connection_show.html:128 +#: plinth/modules/networks/templates/connection_show.html:113 msgid "please check cable" msgstr "PLEASE CHECK CABLE" -#: plinth/modules/networks/templates/connection_show.html:133 -#: plinth/modules/networks/templates/connection_show.html:149 +#: plinth/modules/networks/templates/connection_show.html:118 +#: plinth/modules/networks/templates/connection_show.html:134 msgid "Speed" msgstr "SPEED" -#: plinth/modules/networks/templates/connection_show.html:135 +#: plinth/modules/networks/templates/connection_show.html:120 #, python-format msgid "%(ethernet_speed)s Mbit/s" msgstr "%(ethernet_speed)s MBIT/s" -#: plinth/modules/networks/templates/connection_show.html:151 +#: plinth/modules/networks/templates/connection_show.html:136 #, python-format msgid "%(wireless_bitrate)s Mbit/s" msgstr "%(wireless_bitrate)s MBIT/s" -#: plinth/modules/networks/templates/connection_show.html:163 +#: plinth/modules/networks/templates/connection_show.html:148 msgid "Signal strength" msgstr "SIGNAL STRENGTH" -#: plinth/modules/networks/templates/connection_show.html:181 +#: plinth/modules/networks/templates/connection_show.html:166 msgid "IPv4" msgstr "IPV4" -#: plinth/modules/networks/templates/connection_show.html:186 -#: plinth/modules/networks/templates/connection_show.html:227 -#: plinth/modules/shadowsocks/forms.py:64 +#: plinth/modules/networks/templates/connection_show.html:171 +#: plinth/modules/networks/templates/connection_show.html:212 +#: plinth/modules/shadowsocks/forms.py:49 msgid "Method" msgstr "METHOD" -#: plinth/modules/networks/templates/connection_show.html:193 -#: plinth/modules/networks/templates/connection_show.html:234 +#: plinth/modules/networks/templates/connection_show.html:178 +#: plinth/modules/networks/templates/connection_show.html:219 msgid "IP address" msgstr "IP ADDRESS" -#: plinth/modules/networks/templates/connection_show.html:209 -#: plinth/modules/networks/templates/connection_show.html:248 +#: plinth/modules/networks/templates/connection_show.html:194 +#: plinth/modules/networks/templates/connection_show.html:233 msgid "DNS server" msgstr "DNS SERVER" -#: plinth/modules/networks/templates/connection_show.html:216 -#: plinth/modules/networks/templates/connection_show.html:255 -#: plinth/modules/storage/forms.py:156 +#: plinth/modules/networks/templates/connection_show.html:201 +#: plinth/modules/networks/templates/connection_show.html:240 +#: plinth/modules/storage/forms.py:141 msgid "Default" msgstr "DEFAULT" -#: plinth/modules/networks/templates/connection_show.html:222 +#: plinth/modules/networks/templates/connection_show.html:207 msgid "IPv6" msgstr "IPV6" -#: plinth/modules/networks/templates/connection_show.html:263 +#: plinth/modules/networks/templates/connection_show.html:248 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:38 plinth/modules/security/views.py:47 +#: plinth/modules/networks/templates/connection_show.html:251 +#: plinth/modules/security/__init__.py:45 msgid "Security" msgstr "SECURITY" -#: plinth/modules/networks/templates/connection_show.html:271 -#: plinth/modules/networks/templates/connection_show.html:291 -#: plinth/modules/networks/templates/connection_show.html:310 +#: plinth/modules/networks/templates/connection_show.html:256 +#: plinth/modules/networks/templates/connection_show.html:276 +#: plinth/modules/networks/templates/connection_show.html:295 msgid "Firewall zone" msgstr "FIREWALL ZONE" -#: plinth/modules/networks/templates/connection_show.html:280 +#: plinth/modules/networks/templates/connection_show.html:265 msgid "" "This interface should be connected to a local network/machine. If you " "connect this interface to a public network, services meant to be available " @@ -3939,7 +4016,7 @@ msgstr "" "CONNECT THIS INTERFACE TO A PUBLIC NETWORK, SERVICES MEANT TO BE AVAILABLE " "ONLY INTERNALLY WILL BECOME AVAILABLE EXTERNALLY. THIS IS A SECURITY RISK." -#: plinth/modules/networks/templates/connection_show.html:300 +#: plinth/modules/networks/templates/connection_show.html:285 msgid "" "This interface should receive your Internet connection. If you connect it to " "a local network/machine, many services meant to available only internally " @@ -3949,7 +4026,7 @@ msgstr "" "YOUR A LOCAL NETWORK/MACHINE, MANY SERVICES MEANT TO AVAILABLE ONLY " "INTERNALLY WILL NOT BE AVAILABLE." -#: plinth/modules/networks/templates/connection_show.html:319 +#: plinth/modules/networks/templates/connection_show.html:304 #, python-format msgid "" "This interface is not maintained by %(box_name)s. Its security status is " @@ -3962,114 +4039,139 @@ msgstr "" "THIS INTERFACE. IT IS RECOMMENDED THAT YOU DEACTIVATE OR DELETE THIS " "CONNECTION AND RE-CONFIGURE IT." -#: plinth/modules/networks/templates/connections_create.html:34 +#: plinth/modules/networks/templates/connections_create.html:19 msgid "Create Connection" msgstr "CREATE CONNECTION" -#: plinth/modules/networks/templates/connections_delete.html:29 +#: plinth/modules/networks/templates/connections_delete.html:14 #, python-format msgid "Delete connection %(name)s permanently?" msgstr "DELETE CONNECTION %(name)s PERMANENTLY?" -#: plinth/modules/networks/templates/connections_diagram.html:65 +#: plinth/modules/networks/templates/connections_diagram.html:50 msgid "Internet" msgstr "INTERNET" -#: plinth/modules/networks/templates/connections_diagram.html:70 -#: plinth/modules/networks/templates/connections_diagram.html:102 +#: plinth/modules/networks/templates/connections_diagram.html:55 +#: plinth/modules/networks/templates/connections_diagram.html:87 msgid "Spacing" msgstr "SPACING" -#: plinth/modules/networks/templates/connections_diagram.html:83 -#: plinth/modules/networks/templates/connections_diagram.html:113 -#: plinth/network.py:40 +#: plinth/modules/networks/templates/connections_diagram.html:68 +#: plinth/modules/networks/templates/connections_diagram.html:98 +#: plinth/network.py:25 msgid "Ethernet" msgstr "ETHERNET" -#: plinth/modules/networks/templates/connections_diagram.html:86 -#: plinth/modules/networks/templates/connections_diagram.html:116 -#: plinth/network.py:41 +#: plinth/modules/networks/templates/connections_diagram.html:71 +#: plinth/modules/networks/templates/connections_diagram.html:101 +#: plinth/network.py:26 msgid "Wi-Fi" msgstr "WI-FI" -#: plinth/modules/networks/templates/connections_diagram.html:89 +#: plinth/modules/networks/templates/connections_diagram.html:74 #, python-format msgid "Show connection %(connection.name)s" msgstr "SHOW CONNECTION %(connection.name)s" -#: plinth/modules/networks/templates/connections_diagram.html:119 +#: plinth/modules/networks/templates/connections_diagram.html:104 #, python-format msgid "Show connection %(name)s" msgstr "SHOW CONNECTION %(name)s" -#: plinth/modules/networks/templates/connections_diagram.html:131 +#: plinth/modules/networks/templates/connections_diagram.html:116 msgid "Computer" msgstr "COMPUTER" -#: plinth/modules/networks/templates/connections_list.html:58 +#: plinth/modules/networks/templates/connections_list.html:8 #, fuzzy #| msgid "Connection" msgid "Connections" msgstr "CONNECTION" -#: plinth/modules/networks/templates/connections_list.html:79 +#: plinth/modules/networks/templates/connections_list.html:29 #, python-format msgid "Delete connection %(name)s" msgstr "DELETE CONNECTION %(name)s" -#: plinth/modules/networks/templates/connections_list.html:104 +#: plinth/modules/networks/templates/connections_list.html:54 msgid "Active" msgstr "ACTIVE" -#: plinth/modules/networks/templates/connections_list.html:107 +#: plinth/modules/networks/templates/connections_list.html:57 msgid "Inactive" msgstr "INACTIVE" -#: plinth/modules/networks/templates/connections_list.html:124 -#, python-format -msgid "%(box_name)s Internet Connectivity" +#: plinth/modules/networks/templates/connections_type_select.html:19 +msgid "Create..." +msgstr "CREATE..." + +#: plinth/modules/networks/templates/internet_connectivity_content.html:10 +msgid "What Type Of Internet Connection Do You Have?" msgstr "" -#: plinth/modules/networks/templates/connections_list.html:129 -#, python-format +#: plinth/modules/networks/templates/internet_connectivity_content.html:16 msgid "" -"The following best describes how your %(box_name)s is connected in your " -"network. This information is used only to suggest necessary configuration " -"actions." +"Select an option that best describes the type of Internet connection. This " +"information is used only to guide you with further setup." msgstr "" -#: plinth/modules/networks/templates/connections_list.html:137 -#, python-format +#: plinth/modules/networks/templates/internet_connectivity_firstboot.html:18 +#: plinth/modules/networks/templates/router_configuration_firstboot.html:18 +msgid "Skip this step" +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_firstboot.html:19 +#: plinth/modules/networks/templates/router_configuration_firstboot.html:19 +msgid "Next" +msgstr "NEXT" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:9 +#, fuzzy +#| msgid "Connection Type" +msgid "Your Internet Connection Type" +msgstr "CONNECTION TYPE" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:14 msgid "" -"Your %(box_name)s gets its internet from your Router via WiFi or Ethernet " -"cable. This is a typical home setup." +"The following best describes the type of Internet connection provided by " +"your ISP. This information is only used to suggest you necessary " +"configuration actions." msgstr "" -#: plinth/modules/networks/templates/connections_list.html:145 -#: plinth/modules/networks/templates/connections_list.html:147 +#: plinth/modules/networks/templates/internet_connectivity_main.html:23 +msgid "My ISP provides a public IP address that does not change over time." +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:27 +msgid "My ISP provides a public IP address that may change over time." +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:31 +msgid "My ISP does not provide a public IP address." +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:37 +#: plinth/modules/networks/templates/router_configuration_main.html:29 #, fuzzy #| msgid "Update URL" msgid "Update..." msgstr "UPDATE URL" -#: plinth/modules/networks/templates/connections_type_select.html:34 -msgid "Create..." -msgstr "CREATE..." - -#: plinth/modules/networks/templates/router_configuration_content.html:25 +#: plinth/modules/networks/templates/router_configuration_content.html:10 #, fuzzy, python-format #| msgid "%(box_name)s Setup" msgid "Setup %(box_name)s Behind a Router" msgstr "%(box_name)s SETUP" -#: plinth/modules/networks/templates/router_configuration_content.html:31 +#: plinth/modules/networks/templates/router_configuration_content.html:16 #, python-format msgid "" "Your %(box_name)s gets its internet connection from your router via Wi-Fi or " "Ethernet cable. This is a typical home setup." msgstr "" -#: plinth/modules/networks/templates/router_configuration_content.html:38 +#: plinth/modules/networks/templates/router_configuration_content.html:23 #, python-format msgid "" "With this setup, any device on the internet trying to reach your " @@ -4078,24 +4180,24 @@ msgid "" "the services." msgstr "" -#: plinth/modules/networks/templates/router_configuration_content.html:47 +#: plinth/modules/networks/templates/router_configuration_content.html:32 msgid "" "If you don't have control over your router, choose not to configure it. To " -"see options, to overcome this limitation, choose 'no public address' option " +"see options to overcome this limitation, choose 'no public address' option " "in Internet connection type selection." msgstr "" -#: plinth/modules/networks/templates/router_configuration_content.html:54 +#: plinth/modules/networks/templates/router_configuration_content.html:39 msgid "Choose How You Wish to Configure Your Router" msgstr "" -#: plinth/modules/networks/templates/router_configuration_content.html:57 +#: plinth/modules/networks/templates/router_configuration_content.html:42 msgid "" "You will need to login to your router's administration console provided by " "the router. This may look like one of the following:" msgstr "" -#: plinth/modules/networks/templates/router_configuration_content.html:69 +#: plinth/modules/networks/templates/router_configuration_content.html:54 msgid "" "The username and password is configured by you when you first setup the " "router. For many routers, this information is printed at the back of the " @@ -4105,28 +4207,27 @@ msgid "" "full instructions on how to perform this task." msgstr "" -#: plinth/modules/networks/templates/router_configuration_firstboot.html:33 -msgid "skip this step" +#: plinth/modules/networks/templates/router_configuration_main.html:9 +#, python-format +msgid "%(box_name)s Internet Connectivity" msgstr "" -#: plinth/modules/networks/templates/router_configuration_firstboot.html:35 -msgid "Next" -msgstr "NEXT" +#: plinth/modules/networks/templates/router_configuration_main.html:15 +#, python-format +msgid "" +"The following best describes how your %(box_name)s is connected in your " +"network. This information is used only to suggest necessary configuration " +"actions." +msgstr "" -#: plinth/modules/openvpn/__init__.py:39 plinth/modules/openvpn/manifest.py:33 -#, fuzzy -#| msgid "OpenVPN" -msgid "OpenVPN" -msgstr "OPENVPN" +#: plinth/modules/networks/templates/router_configuration_main.html:23 +#, python-format +msgid "" +"Your %(box_name)s gets its Internet from your Router via Wi-Fi or Ethernet " +"cable. This is a typical home setup." +msgstr "" -#: plinth/modules/openvpn/__init__.py:43 -#: plinth/modules/wireguard/__init__.py:40 -#, fuzzy -#| msgid "Virtual Private Network (OpenVPN)" -msgid "Virtual Private Network" -msgstr "VIRTUAL PRIVATE NETWORK (OPENVPN)" - -#: plinth/modules/openvpn/__init__.py:47 +#: plinth/modules/openvpn/__init__.py:26 #, fuzzy, python-brace-format #| msgid "" #| "Virtual Private Network (VPN) is a technique for securely connecting two " @@ -4150,21 +4251,34 @@ msgstr "" "YOU CAN ALSO ACCESS THE REST OF THE INTERNET VIA %(box_name)s FOR ADDED " "SECURITY AND ANONYMITY." -#: plinth/modules/openvpn/__init__.py:79 +#: plinth/modules/openvpn/__init__.py:49 plinth/modules/openvpn/manifest.py:18 +#, fuzzy +#| msgid "OpenVPN" +msgid "OpenVPN" +msgstr "OPENVPN" + +#: plinth/modules/openvpn/__init__.py:50 +#: plinth/modules/wireguard/__init__.py:53 +#, fuzzy +#| msgid "Virtual Private Network (OpenVPN)" +msgid "Virtual Private Network" +msgstr "VIRTUAL PRIVATE NETWORK (OPENVPN)" + +#: plinth/modules/openvpn/__init__.py:61 #, python-brace-format msgid "" "Download Profile" msgstr "" -#: plinth/modules/openvpn/forms.py:27 +#: plinth/modules/openvpn/forms.py:12 msgid "Enable OpenVPN server" msgstr "ENABLE OPENVPN SERVER" -#: plinth/modules/openvpn/manifest.py:63 -msgid "TunnelBlick" +#: plinth/modules/openvpn/manifest.py:48 +msgid "Tunnelblick" msgstr "" -#: plinth/modules/openvpn/templates/openvpn.html:42 +#: plinth/modules/openvpn/templates/openvpn.html:27 #, python-format msgid "" "OpenVPN has not yet been setup. Performing a secure setup takes a very long " @@ -4175,15 +4289,15 @@ msgstr "" "TIME. DEPENDING ON HOW FAST YOUR %(box_name)s IS, IT MAY EVEN TAKE HOURS. " "IF THE SETUP IS INTERRUPTED, YOU MAY START IT AGAIN." -#: plinth/modules/openvpn/templates/openvpn.html:55 +#: plinth/modules/openvpn/templates/openvpn.html:40 msgid "Start setup" msgstr "START SETUP" -#: plinth/modules/openvpn/templates/openvpn.html:64 +#: plinth/modules/openvpn/templates/openvpn.html:49 msgid "OpenVPN setup is running" msgstr "OPENVPN SETUP IS RUNNING" -#: plinth/modules/openvpn/templates/openvpn.html:68 +#: plinth/modules/openvpn/templates/openvpn.html:53 #, python-format msgid "" "To perform a secure setup, this process takes a very long time. Depending " @@ -4194,11 +4308,11 @@ msgstr "" "ON HOW FAST YOUR %(box_name)s IS, IT MAY EVEN TAKE HOURS. IF THE SETUP IS " "INTERRUPTED, YOU MAY START IT AGAIN." -#: plinth/modules/openvpn/templates/openvpn.html:87 +#: plinth/modules/openvpn/templates/openvpn.html:72 msgid "Profile" msgstr "PROFILE" -#: plinth/modules/openvpn/templates/openvpn.html:90 +#: plinth/modules/openvpn/templates/openvpn.html:75 #, fuzzy, python-format #| msgid "" #| "To connect to %(box_name)s's VPN, you need to download a profile and feed " @@ -4220,36 +4334,24 @@ msgstr "" "\">DOCUMENTATION ON RECOMMENDED CLIENTS AND INSTRUCTIONS ON HOW TO " "CONFIGURE THEM." -#: plinth/modules/openvpn/templates/openvpn.html:100 +#: plinth/modules/openvpn/templates/openvpn.html:85 #, python-format msgid "Profile is specific to each user of %(box_name)s. Keep it a secret." msgstr "PROFILE IS SPECIFIC TO EACH USER OF %(box_name)s. KEEP IT A SECRET." -#: plinth/modules/openvpn/templates/openvpn.html:111 +#: plinth/modules/openvpn/templates/openvpn.html:96 msgid "Download my profile" msgstr "DOWNLOAD MY PROFILE" -#: plinth/modules/openvpn/views.py:133 +#: plinth/modules/openvpn/views.py:114 msgid "Setup completed." msgstr "SETUP COMPLETED." -#: plinth/modules/openvpn/views.py:135 +#: plinth/modules/openvpn/views.py:116 msgid "Setup failed." msgstr "SETUP FAILED." -#: plinth/modules/pagekite/__init__.py:39 -#, fuzzy -#| msgid "Pagekite" -msgid "PageKite" -msgstr "PAGEKITE" - -#: plinth/modules/pagekite/__init__.py:41 -#, fuzzy -#| msgid "Public Visibility (PageKite)" -msgid "Public Visibility" -msgstr "PUBLIC VISIBILITY (PAGEKITE)" - -#: plinth/modules/pagekite/__init__.py:45 +#: plinth/modules/pagekite/__init__.py:26 #, fuzzy, python-brace-format #| msgid "" #| "PageKite is a system for exposing %(box_name)s services when you don't " @@ -4267,13 +4369,13 @@ msgstr "" "SERVICES ARE UNREACHABLE FROM THE REST OF THE INTERNET. THIS INCLUDES THE " "FOLLOWING SITUATIONS:" -#: plinth/modules/pagekite/__init__.py:50 +#: plinth/modules/pagekite/__init__.py:31 #, 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:53 +#: plinth/modules/pagekite/__init__.py:34 #, fuzzy, python-brace-format #| msgid "" #| "%(box_name)s is connected to a (wireless) router which you don't control." @@ -4281,7 +4383,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:55 +#: plinth/modules/pagekite/__init__.py:36 msgid "" "Your ISP does not provide you an external IP address and instead provides " "Internet connection through NAT." @@ -4289,7 +4391,7 @@ msgstr "" "YOUR ISP DOES NOT PROVIDE YOU AN EXTERNAL IP ADDRESS AND INSTEAD PROVIDES " "INTERNET CONNECTION THROUGH NAT." -#: plinth/modules/pagekite/__init__.py:57 +#: plinth/modules/pagekite/__init__.py:38 #, fuzzy #| msgid "" #| "Your ISP does not provide you a static IP address and your IP address " @@ -4301,11 +4403,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:59 +#: plinth/modules/pagekite/__init__.py:40 msgid "Your ISP limits incoming connections." msgstr "YOUR ISP LIMITS INCOMING CONNECTIONS." -#: plinth/modules/pagekite/__init__.py:61 +#: plinth/modules/pagekite/__init__.py:42 #, fuzzy, python-brace-format #| msgid "" #| "PageKite works around NAT, firewalls and IP-address limitations by using " @@ -4324,17 +4426,29 @@ msgstr "" "PROVIDER, FOR EXAMPLE PAGEKITE.NET. IN " "FUTURE IT MIGHT BE POSSIBLE TO USE YOUR BUDDY'S %(box_name)s FOR THIS." -#: plinth/modules/pagekite/__init__.py:87 +#: plinth/modules/pagekite/__init__.py:62 +#, fuzzy +#| msgid "Pagekite" +msgid "PageKite" +msgstr "PAGEKITE" + +#: plinth/modules/pagekite/__init__.py:64 +#, fuzzy +#| msgid "Public Visibility (PageKite)" +msgid "Public Visibility" +msgstr "PUBLIC VISIBILITY (PAGEKITE)" + +#: plinth/modules/pagekite/__init__.py:74 #, fuzzy #| msgid "PageKite Account" msgid "PageKite Domain" msgstr "PAGEKITE ACCOUNT" -#: plinth/modules/pagekite/forms.py:66 +#: plinth/modules/pagekite/forms.py:51 msgid "Server domain" msgstr "SERVER DOMAIN" -#: plinth/modules/pagekite/forms.py:68 +#: plinth/modules/pagekite/forms.py:53 msgid "" "Select your pagekite server. Set \"pagekite.net\" to use the default " "pagekite.net server." @@ -4342,31 +4456,31 @@ msgstr "" "SELECT YOUR PAGEKITE SERVER. SET \"PAGEKITE.NET\" TO USE THE DEFAULT " "PAGEKITE.NET SERVER." -#: plinth/modules/pagekite/forms.py:71 plinth/modules/shadowsocks/forms.py:55 +#: plinth/modules/pagekite/forms.py:56 plinth/modules/shadowsocks/forms.py:40 msgid "Server port" msgstr "SERVER PORT" -#: plinth/modules/pagekite/forms.py:72 +#: plinth/modules/pagekite/forms.py:57 msgid "Port of your pagekite server (default: 80)" msgstr "PORT OF YOUR PAGEKITE SERVER (DEFAULT: 80)" -#: plinth/modules/pagekite/forms.py:74 +#: plinth/modules/pagekite/forms.py:59 msgid "Kite name" msgstr "KITE NAME" -#: plinth/modules/pagekite/forms.py:75 +#: plinth/modules/pagekite/forms.py:60 msgid "Example: mybox.pagekite.me" msgstr "EXAMPLE: MYBOX.PAGEKITE.ME" -#: plinth/modules/pagekite/forms.py:77 +#: plinth/modules/pagekite/forms.py:62 msgid "Invalid kite name" msgstr "INVALID KITE NAME" -#: plinth/modules/pagekite/forms.py:81 +#: plinth/modules/pagekite/forms.py:66 msgid "Kite secret" msgstr "KITE SECRET" -#: plinth/modules/pagekite/forms.py:82 +#: plinth/modules/pagekite/forms.py:67 msgid "" "A secret associated with the kite or the default secret for your account if " "no secret is set on the kite." @@ -4374,43 +4488,43 @@ msgstr "" "A SECRET ASSOCIATED WITH THE KITE OR THE DEFAULT SECRET FOR YOUR ACCOUNT IF " "NO SECRET IS SET ON THE KITE." -#: plinth/modules/pagekite/forms.py:98 +#: plinth/modules/pagekite/forms.py:83 msgid "Kite details set" msgstr "KITE DETAILS SET" -#: plinth/modules/pagekite/forms.py:105 +#: plinth/modules/pagekite/forms.py:90 msgid "Pagekite server set" msgstr "PAGEKITE SERVER SET" -#: plinth/modules/pagekite/forms.py:129 +#: plinth/modules/pagekite/forms.py:114 msgid "PageKite enabled" msgstr "PAGEKITE ENABLED" -#: plinth/modules/pagekite/forms.py:132 +#: plinth/modules/pagekite/forms.py:117 msgid "PageKite disabled" msgstr "PAGEKITE DISABLED" -#: plinth/modules/pagekite/forms.py:148 +#: plinth/modules/pagekite/forms.py:133 msgid "protocol" msgstr "PROTOCOL" -#: plinth/modules/pagekite/forms.py:151 +#: plinth/modules/pagekite/forms.py:136 msgid "external (frontend) port" msgstr "EXTERNAL (FRONTEND) PORT" -#: plinth/modules/pagekite/forms.py:154 +#: plinth/modules/pagekite/forms.py:139 msgid "internal (freedombox) port" msgstr "INTERNAL (FREEDOMBOX) PORT" -#: plinth/modules/pagekite/forms.py:155 +#: plinth/modules/pagekite/forms.py:140 msgid "Enable Subdomains" msgstr "ENABLE SUBDOMAINS" -#: plinth/modules/pagekite/forms.py:189 +#: plinth/modules/pagekite/forms.py:174 msgid "Deleted custom service" msgstr "DELETED CUSTOM SERVICE" -#: plinth/modules/pagekite/forms.py:222 +#: plinth/modules/pagekite/forms.py:207 msgid "" "This service is available as a standard service. Please use the \"Standard " "Services\" page to enable it." @@ -4418,45 +4532,45 @@ msgstr "" "THIS SERVICE IS AVAILABLE AS A STANDARD SERVICE. PLEASE USE THE \"STANDARD " "SERVICES\" PAGE TO ENABLE IT. " -#: plinth/modules/pagekite/forms.py:231 +#: plinth/modules/pagekite/forms.py:216 msgid "Added custom service" msgstr "ADDED CUSTOM SERVICE" -#: plinth/modules/pagekite/forms.py:234 +#: plinth/modules/pagekite/forms.py:219 msgid "This service already exists" msgstr "THIS SERVICE ALREADY EXISTS" -#: plinth/modules/pagekite/templates/pagekite_configure.html:47 +#: plinth/modules/pagekite/templates/pagekite_configure.html:32 msgid "Custom Services" msgstr "CUSTOM SERVICES" -#: plinth/modules/pagekite/templates/pagekite_configure.html:50 -#: plinth/modules/pagekite/templates/pagekite_configure.html:52 +#: plinth/modules/pagekite/templates/pagekite_configure.html:35 +#: plinth/modules/pagekite/templates/pagekite_configure.html:37 #, fuzzy #| msgid "Custom Services" msgid "Add Custom Service" msgstr "CUSTOM SERVICES" -#: plinth/modules/pagekite/templates/pagekite_configure.html:57 +#: plinth/modules/pagekite/templates/pagekite_configure.html:42 msgid "Existing custom services" msgstr "EXISTING CUSTOM SERVICES" -#: plinth/modules/pagekite/templates/pagekite_configure.html:71 +#: plinth/modules/pagekite/templates/pagekite_configure.html:56 #, python-format msgid "connected to %(backend_host)s:%(backend_port)s" msgstr "CONNECTED TO %(backend_host)s:%(backend_port)s" -#: plinth/modules/pagekite/templates/pagekite_configure.html:83 +#: plinth/modules/pagekite/templates/pagekite_configure.html:68 msgid "Delete this service" msgstr "DELETE THIS SERVICE" -#: plinth/modules/pagekite/templates/pagekite_custom_services.html:30 +#: plinth/modules/pagekite/templates/pagekite_custom_services.html:15 #, fuzzy #| msgid "Added custom service" msgid "Add custom PageKite service" msgstr "ADDED CUSTOM SERVICE" -#: plinth/modules/pagekite/templates/pagekite_custom_services.html:32 +#: plinth/modules/pagekite/templates/pagekite_custom_services.html:17 msgid "" "Warning:IMAP.EXAMPLE.COM. FOR IMAP OVER SSL (RECOMMENDED), FILL THE "
"SERVER FIELD LIKE IMAPS://IMAP.EXAMPLE.COM."
-#: plinth/modules/roundcube/__init__.py:53
+#: plinth/modules/roundcube/__init__.py:32
#, fuzzy
#| msgid ""
#| "For Gmail, username will be your Gmail address, password will be your "
@@ -4872,17 +4972,26 @@ msgstr ""
"lesssecureapps\" >HTTPS://WWW.GOOGLE.COM/SETTINGS/SECURITY/LESSSECUREAPPS"
"a>)."
-#: plinth/modules/samba/__init__.py:46
-msgid "Samba"
-msgstr ""
+#: plinth/modules/roundcube/__init__.py:54
+#: plinth/modules/roundcube/manifest.py:9
+#, fuzzy
+#| msgid "Enable Roundcube"
+msgid "Roundcube"
+msgstr "ENABLE ROUNDCUBE"
-#: plinth/modules/samba/__init__.py:53
+#: plinth/modules/roundcube/__init__.py:55
+#, fuzzy
+#| msgid "Email Client (Roundcube)"
+msgid "Email Client"
+msgstr "EMAIL CLIENT (ROUNDCUBE)"
+
+#: plinth/modules/samba/__init__.py:32
msgid ""
"Samba allows to share files and folders between FreedomBox and other "
"computers in your local network."
msgstr ""
-#: plinth/modules/samba/__init__.py:56
+#: plinth/modules/samba/__init__.py:35
#, python-brace-format
msgid ""
"After installation, you can choose which disks to use for sharing. Enabled "
@@ -4891,55 +5000,59 @@ msgid ""
"There are three types of shares you can choose from: "
msgstr ""
-#: plinth/modules/samba/__init__.py:61
+#: plinth/modules/samba/__init__.py:40
msgid "Open share - accessible to everyone in your local network."
msgstr ""
-#: plinth/modules/samba/__init__.py:62
+#: plinth/modules/samba/__init__.py:41
msgid ""
"Group share - accessible only to FreedomBox users who are in the freedombox-"
"share group."
msgstr ""
-#: plinth/modules/samba/__init__.py:64
+#: plinth/modules/samba/__init__.py:43
msgid ""
"Home share - every user in the freedombox-share group can have their own "
"private space."
msgstr ""
-#: plinth/modules/samba/__init__.py:68
+#: plinth/modules/samba/__init__.py:47
msgid "Access to the private shares"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:39
-#: plinth/modules/samba/templates/samba.html:50
+#: plinth/modules/samba/__init__.py:61
+msgid "Samba"
+msgstr ""
+
+#: plinth/modules/samba/templates/samba.html:24
+#: plinth/modules/samba/templates/samba.html:35
#, fuzzy
#| msgid "Add Service"
msgid "Shares"
msgstr "ADD SERVICE"
-#: plinth/modules/samba/templates/samba.html:41
+#: plinth/modules/samba/templates/samba.html:26
msgid ""
"Note: Only specially created directories will be shared on selected disks, "
"not the whole disk."
msgstr ""
-#: plinth/modules/samba/templates/samba.html:49
+#: plinth/modules/samba/templates/samba.html:34
#, fuzzy
#| msgid "Domain Name"
msgid "Disk Name"
msgstr "DOMAIN NAME"
-#: plinth/modules/samba/templates/samba.html:51
-#: plinth/modules/storage/templates/storage.html:44
+#: plinth/modules/samba/templates/samba.html:36
+#: plinth/modules/storage/templates/storage.html:29
msgid "Used"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:72
+#: plinth/modules/samba/templates/samba.html:57
msgid "VFAT partitions are not supported"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:103
+#: plinth/modules/samba/templates/samba.html:88
#, python-format
msgid ""
"You can find additional information about disks on the users module page."
msgstr ""
-#: plinth/modules/samba/templates/samba.html:109
+#: plinth/modules/samba/templates/samba.html:94
msgid "Users who can currently access group and home shares"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:113
+#: plinth/modules/samba/templates/samba.html:98
msgid ""
"Users needing to re-enter their password on the password change page to "
"access group and home shares"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:118
+#: plinth/modules/samba/templates/samba.html:103
#, fuzzy
#| msgid "Enable Subdomains"
msgid "Unavailable Shares"
msgstr "ENABLE SUBDOMAINS"
-#: plinth/modules/samba/templates/samba.html:120
+#: plinth/modules/samba/templates/samba.html:105
msgid ""
"Shares that are configured but the disk is not available. If the disk is "
"plugged back in, sharing will be automatically enabled."
msgstr ""
-#: plinth/modules/samba/templates/samba.html:128
+#: plinth/modules/samba/templates/samba.html:113
#, fuzzy
#| msgid "Kite name"
msgid "Share name"
msgstr "KITE NAME"
-#: plinth/modules/samba/templates/samba.html:129
+#: plinth/modules/samba/templates/samba.html:114
#, fuzzy
#| msgid "Actions"
msgid "Action"
msgstr "ACTIONS"
-#: plinth/modules/samba/views.py:61 plinth/modules/storage/forms.py:164
+#: plinth/modules/samba/views.py:43 plinth/modules/storage/forms.py:149
#, fuzzy
#| msgid "Add Service"
msgid "Open Share"
msgstr "ADD SERVICE"
-#: plinth/modules/samba/views.py:62 plinth/modules/storage/forms.py:162
+#: plinth/modules/samba/views.py:44 plinth/modules/storage/forms.py:147
#, fuzzy
#| msgid "Add Service"
msgid "Group Share"
msgstr "ADD SERVICE"
-#: plinth/modules/samba/views.py:63
+#: plinth/modules/samba/views.py:45
#, fuzzy
#| msgid "Add Service"
msgid "Home Share"
msgstr "ADD SERVICE"
-#: plinth/modules/samba/views.py:96
+#: plinth/modules/samba/views.py:78
#, fuzzy
#| msgid "{name} deleted."
msgid "Share enabled."
msgstr "{name} DELETED."
-#: plinth/modules/samba/views.py:101
+#: plinth/modules/samba/views.py:83
#, fuzzy, python-brace-format
#| msgid "Error installing packages: {string} {details}"
msgid "Error enabling share: {error_message}"
msgstr "ERROR INSTALLING PACKAGES: {string} {details}"
-#: plinth/modules/samba/views.py:106
+#: plinth/modules/samba/views.py:88
#, fuzzy
#| msgid "{name} deleted."
msgid "Share disabled."
msgstr "{name} DELETED."
-#: plinth/modules/samba/views.py:111
+#: plinth/modules/samba/views.py:93
#, fuzzy, python-brace-format
#| msgid "Error installing packages: {string} {details}"
msgid "Error disabling share: {error_message}"
msgstr "ERROR INSTALLING PACKAGES: {string} {details}"
-#: plinth/modules/searx/__init__.py:41 plinth/modules/searx/manifest.py:24
-msgid "Searx"
-msgstr ""
-
-#: plinth/modules/searx/__init__.py:45
-#, fuzzy
-#| msgid "Web Server"
-msgid "Web Search"
-msgstr "WEB SERVER"
-
-#: plinth/modules/searx/__init__.py:48
+#: plinth/modules/searx/__init__.py:25
msgid ""
"Searx is a privacy-respecting Internet metasearch engine. It aggregrates and "
"displays results from multiple search engines."
msgstr ""
-#: plinth/modules/searx/__init__.py:50
+#: plinth/modules/searx/__init__.py:27
msgid ""
"Searx can be used to avoid tracking and profiling by search engines. It "
"stores no cookies by default."
msgstr ""
-#: plinth/modules/searx/__init__.py:54
+#: plinth/modules/searx/__init__.py:31
msgid "Search the web"
msgstr ""
-#: plinth/modules/searx/forms.py:30
+#: plinth/modules/searx/__init__.py:47 plinth/modules/searx/manifest.py:9
+msgid "Searx"
+msgstr ""
+
+#: plinth/modules/searx/__init__.py:48
+#, fuzzy
+#| msgid "Web Server"
+msgid "Web Search"
+msgstr "WEB SERVER"
+
+#: plinth/modules/searx/forms.py:15
#, fuzzy
#| msgid "Save Services"
msgid "Safe Search"
msgstr "SAVE SERVICES"
-#: plinth/modules/searx/forms.py:31
+#: plinth/modules/searx/forms.py:16
msgid "Select the default family filter to apply to your search results."
msgstr ""
-#: plinth/modules/searx/forms.py:32
+#: plinth/modules/searx/forms.py:17
msgid "None"
msgstr ""
-#: plinth/modules/searx/forms.py:32
+#: plinth/modules/searx/forms.py:17
#, fuzzy
#| msgid "Mode"
msgid "Moderate"
msgstr "MODE"
-#: plinth/modules/searx/forms.py:32
+#: plinth/modules/searx/forms.py:17
msgid "Strict"
msgstr ""
-#: plinth/modules/searx/forms.py:35
+#: plinth/modules/searx/forms.py:20
msgid "Allow Public Access"
msgstr ""
-#: plinth/modules/searx/forms.py:36
+#: plinth/modules/searx/forms.py:21
msgid "Allow this application to be used by anyone who can reach it."
msgstr ""
-#: plinth/modules/searx/views.py:59 plinth/modules/searx/views.py:70
-#: plinth/modules/tor/views.py:149 plinth/modules/tor/views.py:176
+#: plinth/modules/searx/views.py:39 plinth/modules/searx/views.py:50
+#: plinth/modules/tor/views.py:130 plinth/modules/tor/views.py:157
msgid "Configuration updated."
msgstr "CONFIGURATION UPDATED."
-#: plinth/modules/security/forms.py:28
+#: plinth/modules/security/forms.py:13
msgid "Restrict console logins (recommended)"
msgstr ""
-#: plinth/modules/security/forms.py:29
+#: plinth/modules/security/forms.py:14
msgid ""
"When this option is enabled, only users in the \"admin\" group will be able "
"to log in to console or via SSH. Console users may be able to access some "
"services without further authorization."
msgstr ""
-#: plinth/modules/security/forms.py:34
+#: plinth/modules/security/forms.py:19
msgid "Fail2Ban (recommended)"
msgstr ""
-#: plinth/modules/security/forms.py:35
+#: plinth/modules/security/forms.py:20
msgid ""
"When this option is enabled, Fail2Ban will limit brute force break-in "
"attempts to the SSH server and other enabled password protected internet-"
"services."
msgstr ""
-#: plinth/modules/security/templates/security.html:26
-#: plinth/modules/security/templates/security.html:28
+#: plinth/modules/security/templates/security.html:11
+#: plinth/modules/security/templates/security.html:13
#, fuzzy
#| msgid "Security"
msgid "Show security report"
msgstr "SECURITY"
-#: plinth/modules/security/templates/security_report.html:25
-#: plinth/modules/security/views.py:87
+#: plinth/modules/security/templates/security_report.html:10
+#: plinth/modules/security/views.py:71
#, fuzzy
#| msgid "Security"
msgid "Security Report"
msgstr "SECURITY"
-#: plinth/modules/security/templates/security_report.html:27
+#: plinth/modules/security/templates/security_report.html:12
#, python-format
msgid ""
"The installed version of FreedomBox has %(count)s reported security "
"vulnerabilities."
msgstr ""
-#: plinth/modules/security/templates/security_report.html:33
+#: plinth/modules/security/templates/security_report.html:18
msgid ""
"The following table lists the current reported number, and historical count, "
"of security vulnerabilities for each installed app."
msgstr ""
-#: plinth/modules/security/templates/security_report.html:39
+#: plinth/modules/security/templates/security_report.html:24
msgid ""
"For apps that provide services, the \"Sandboxed\" column shows whether "
"sandboxing features are in use. Sandboxing mitigates the impact of a "
"potentially compromised app to the rest of the system."
msgstr ""
-#: plinth/modules/security/templates/security_report.html:46
+#: plinth/modules/security/templates/security_report.html:31
msgid ""
"\"Sandbox Coverage\" is a score of how effectively the service is isolated "
"from the rest of the system. It is only displayed while the service is "
"running."
msgstr ""
-#: plinth/modules/security/templates/security_report.html:55
+#: plinth/modules/security/templates/security_report.html:40
#, fuzzy
#| msgid "Name"
msgid "App Name"
msgstr "NAME"
-#: plinth/modules/security/templates/security_report.html:56
+#: plinth/modules/security/templates/security_report.html:41
msgid "Current Vulnerabilities"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:57
+#: plinth/modules/security/templates/security_report.html:42
msgid "Past Vulnerabilities"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:58
+#: plinth/modules/security/templates/security_report.html:43
#, fuzzy
#| msgid "Blocked"
msgid "Sandboxed"
msgstr "BLOCKED"
-#: plinth/modules/security/templates/security_report.html:59
+#: plinth/modules/security/templates/security_report.html:44
#, fuzzy
#| msgid "Blocked"
msgid "Sandbox Coverage"
msgstr "BLOCKED"
-#: plinth/modules/security/templates/security_report.html:70
+#: plinth/modules/security/templates/security_report.html:55
msgid "N/A"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:72
+#: plinth/modules/security/templates/security_report.html:57
#, fuzzy
#| msgid "yes"
msgid "Yes"
msgstr "YES"
-#: plinth/modules/security/templates/security_report.html:74
+#: plinth/modules/security/templates/security_report.html:59
msgid "No"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:81
+#: plinth/modules/security/templates/security_report.html:66
#, fuzzy
#| msgid "Tor is not running"
msgid "Not running"
msgstr "TOR IS NOT RUNNING"
-#: plinth/modules/security/views.py:69
+#: plinth/modules/security/views.py:53
#, 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:72
+#: plinth/modules/security/views.py:56
#, fuzzy
#| msgid "General Configuration"
msgid "Updated security configuration"
msgstr "GENERAL CONFIGURATION"
-#: plinth/modules/shaarli/__init__.py:34 plinth/modules/shaarli/manifest.py:23
-msgid "Shaarli"
-msgstr "SHAARLI"
-
-#: plinth/modules/shaarli/__init__.py:36
-#, fuzzy
-#| msgid "Bookmarks (Shaarli)"
-msgid "Bookmarks"
-msgstr "BOOKMARKS (SHAARLI)"
-
-#: plinth/modules/shaarli/__init__.py:39
+#: plinth/modules/shaarli/__init__.py:20
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:21
#, fuzzy
#| msgid ""
#| "When enabled, Shaarli will be available from /"
@@ -5237,22 +5340,24 @@ msgstr ""
"a> PATH ON THE WEB SERVER. NOTE THAT SHAARLI ONLY SUPPORTS A SINGLE USER "
"ACCOUNT, WHICH YOU WILL NEED TO SETUP ON THE INITIAL VISIT."
-#: plinth/modules/shadowsocks/__init__.py:35
-msgid "Shadowsocks"
-msgstr ""
+#: plinth/modules/shaarli/__init__.py:39 plinth/modules/shaarli/manifest.py:8
+msgid "Shaarli"
+msgstr "SHAARLI"
-#: plinth/modules/shadowsocks/__init__.py:39
-msgid "Socks5 Proxy"
-msgstr ""
+#: plinth/modules/shaarli/__init__.py:40
+#, fuzzy
+#| msgid "Bookmarks (Shaarli)"
+msgid "Bookmarks"
+msgstr "BOOKMARKS (SHAARLI)"
-#: plinth/modules/shadowsocks/__init__.py:46
+#: plinth/modules/shadowsocks/__init__.py:25
msgid ""
"Shadowsocks is a lightweight and secure SOCKS5 proxy, designed to protect "
"your Internet traffic. It can be used to bypass Internet filtering and "
"censorship."
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:50
+#: plinth/modules/shadowsocks/__init__.py:29
#, python-brace-format
msgid ""
"Your {box_name} can run a Shadowsocks client, that can connect to a "
@@ -5261,171 +5366,173 @@ msgid ""
"the Shadowsocks server."
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:55
+#: plinth/modules/shadowsocks/__init__.py:34
msgid ""
"To use Shadowsocks after setup, set the SOCKS5 proxy URL in your device, "
"browser or application to http://freedombox_address:1080/"
msgstr ""
-#: plinth/modules/shadowsocks/forms.py:28
-#: plinth/modules/shadowsocks/forms.py:29
+#: plinth/modules/shadowsocks/__init__.py:50
+msgid "Shadowsocks"
+msgstr ""
+
+#: plinth/modules/shadowsocks/__init__.py:52
+msgid "Socks5 Proxy"
+msgstr ""
+
+#: plinth/modules/shadowsocks/forms.py:13
+#: plinth/modules/shadowsocks/forms.py:14
msgid "Recommended"
msgstr ""
-#: plinth/modules/shadowsocks/forms.py:52
+#: plinth/modules/shadowsocks/forms.py:37
#, fuzzy
#| msgid "Service"
msgid "Server"
msgstr "SERVICE"
-#: plinth/modules/shadowsocks/forms.py:53
+#: plinth/modules/shadowsocks/forms.py:38
msgid "Server hostname or IP address"
msgstr ""
-#: plinth/modules/shadowsocks/forms.py:57
+#: plinth/modules/shadowsocks/forms.py:42
#, fuzzy
#| msgid "Server port"
msgid "Server port number"
msgstr "SERVER PORT"
-#: plinth/modules/shadowsocks/forms.py:60
+#: plinth/modules/shadowsocks/forms.py:45
msgid "Password used to encrypt data. Must match server password."
msgstr ""
-#: plinth/modules/shadowsocks/forms.py:65
+#: plinth/modules/shadowsocks/forms.py:50
msgid "Encryption method. Must match setting on server."
msgstr ""
-#: plinth/modules/sharing/__init__.py:34
-#, fuzzy
-#| msgid "Enable Shaarli"
-msgid "Sharing"
-msgstr "ENABLE SHAARLI"
-
-#: plinth/modules/sharing/__init__.py:38
+#: plinth/modules/sharing/__init__.py:21
#, python-brace-format
msgid ""
"Sharing allows you to share files and folders on your {box_name} over the "
"web with chosen groups of users."
msgstr ""
-#: plinth/modules/sharing/forms.py:33
+#: plinth/modules/sharing/__init__.py:38
+#, fuzzy
+#| msgid "Enable Shaarli"
+msgid "Sharing"
+msgstr "ENABLE SHAARLI"
+
+#: plinth/modules/sharing/forms.py:18
msgid "Name of the share"
msgstr ""
-#: plinth/modules/sharing/forms.py:35
+#: plinth/modules/sharing/forms.py:20
msgid ""
"A lowercase alpha-numeric string that uniquely identifies a share. Example: "
"media."
msgstr ""
-#: plinth/modules/sharing/forms.py:39
+#: plinth/modules/sharing/forms.py:24
msgid "Path to share"
msgstr ""
-#: plinth/modules/sharing/forms.py:40
+#: plinth/modules/sharing/forms.py:25
msgid "Disk path to a folder on this server that you intend to share."
msgstr ""
-#: plinth/modules/sharing/forms.py:43
+#: plinth/modules/sharing/forms.py:28
#, fuzzy
#| msgid "Publish Key"
msgid "Public share"
msgstr "PUBLISH KEY"
-#: plinth/modules/sharing/forms.py:44
+#: plinth/modules/sharing/forms.py:29
msgid "Make files in this folder available to anyone with the link."
msgstr ""
-#: plinth/modules/sharing/forms.py:48
+#: plinth/modules/sharing/forms.py:33
msgid "User groups that can read the files in the share"
msgstr ""
-#: plinth/modules/sharing/forms.py:50
+#: plinth/modules/sharing/forms.py:35
msgid ""
"Users of the selected user groups will be able to read the files in the "
"share."
msgstr ""
-#: plinth/modules/sharing/forms.py:67
+#: plinth/modules/sharing/forms.py:52
#, fuzzy
#| msgid "This service already exists"
msgid "A share with this name already exists."
msgstr "THIS SERVICE ALREADY EXISTS"
-#: plinth/modules/sharing/forms.py:78
+#: plinth/modules/sharing/forms.py:63
msgid "Shares should be either public or shared with at least one group"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:39
-#: plinth/modules/sharing/templates/sharing.html:42
+#: plinth/modules/sharing/templates/sharing.html:24
+#: plinth/modules/sharing/templates/sharing.html:27
#, fuzzy
#| msgid "Add Service"
msgid "Add share"
msgstr "ADD SERVICE"
-#: plinth/modules/sharing/templates/sharing.html:47
+#: plinth/modules/sharing/templates/sharing.html:32
msgid "No shares currently configured."
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:53
+#: plinth/modules/sharing/templates/sharing.html:38
msgid "Disk Path"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:54
+#: plinth/modules/sharing/templates/sharing.html:39
msgid "Shared Over"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:55
+#: plinth/modules/sharing/templates/sharing.html:40
#, fuzzy
#| msgid "Groups"
msgid "With Groups"
msgstr "GROUPS"
-#: plinth/modules/sharing/templates/sharing.html:73
+#: plinth/modules/sharing/templates/sharing.html:58
msgid "public access"
msgstr ""
-#: plinth/modules/sharing/views.py:55
+#: plinth/modules/sharing/views.py:39
msgid "Share added."
msgstr ""
-#: plinth/modules/sharing/views.py:60
+#: plinth/modules/sharing/views.py:44
#, fuzzy
#| msgid "Add Service"
msgid "Add Share"
msgstr "ADD SERVICE"
-#: plinth/modules/sharing/views.py:75
+#: plinth/modules/sharing/views.py:59
msgid "Share edited."
msgstr ""
-#: plinth/modules/sharing/views.py:80
+#: plinth/modules/sharing/views.py:64
#, fuzzy
#| msgid "Edit User"
msgid "Edit Share"
msgstr "EDIT USER"
-#: plinth/modules/sharing/views.py:111
+#: plinth/modules/sharing/views.py:95
#, fuzzy
#| msgid "{name} deleted."
msgid "Share deleted."
msgstr "{name} DELETED."
-#: plinth/modules/snapshot/__init__.py:37
-#, fuzzy
-#| msgid "Create User"
-msgid "Storage Snapshots"
-msgstr "CREATE USER"
-
-#: plinth/modules/snapshot/__init__.py:40
+#: plinth/modules/snapshot/__init__.py:23
msgid ""
"Snapshots allows creating and managing btrfs file system snapshots. These "
"can be used to roll back the system to a previously known good state in case "
"of unwanted changes to the system."
msgstr ""
-#: plinth/modules/snapshot/__init__.py:44
+#: plinth/modules/snapshot/__init__.py:27
#, no-python-format
msgid ""
"Snapshots are taken periodically (called timeline snapshots) and also before "
@@ -5433,218 +5540,220 @@ msgid ""
"cleaned up according to the settings below."
msgstr ""
-#: plinth/modules/snapshot/__init__.py:47
+#: plinth/modules/snapshot/__init__.py:30
msgid ""
"Snapshots currently work on btrfs file systems only and on the root "
"partition only. Snapshots are not a replacement for backups since they can only be stored on the same partition. "
msgstr ""
-#: plinth/modules/snapshot/forms.py:27
+#: plinth/modules/snapshot/__init__.py:52
+#, fuzzy
+#| msgid "Create User"
+msgid "Storage Snapshots"
+msgstr "CREATE USER"
+
+#: plinth/modules/snapshot/forms.py:12
msgid "Free Disk Space to Maintain"
msgstr ""
-#: plinth/modules/snapshot/forms.py:28
+#: plinth/modules/snapshot/forms.py:13
msgid ""
"Maintain this percentage of free space on the disk. If free space falls "
"below this value, older snapshots are removed until this much free space is "
"regained. The default value is 30%."
msgstr ""
-#: plinth/modules/snapshot/forms.py:35
+#: plinth/modules/snapshot/forms.py:20
#, fuzzy
#| msgid "Delete %(name)s"
msgid "Timeline Snapshots"
msgstr "DELETE %(name)s"
-#: plinth/modules/snapshot/forms.py:36
+#: plinth/modules/snapshot/forms.py:21
msgid ""
"Enable or disable timeline snapshots (hourly, daily, monthly and yearly)."
msgstr ""
-#: plinth/modules/snapshot/forms.py:41
+#: plinth/modules/snapshot/forms.py:26
msgid "Software Installation Snapshots"
msgstr ""
-#: plinth/modules/snapshot/forms.py:42
+#: plinth/modules/snapshot/forms.py:27
msgid "Enable or disable snapshots before and after software installation"
msgstr ""
-#: plinth/modules/snapshot/forms.py:47
+#: plinth/modules/snapshot/forms.py:32
#, fuzzy
#| msgid "Create User"
msgid "Hourly Snapshots Limit"
msgstr "CREATE USER"
-#: plinth/modules/snapshot/forms.py:48
+#: plinth/modules/snapshot/forms.py:33
msgid "Keep a maximum of this many hourly snapshots."
msgstr ""
-#: plinth/modules/snapshot/forms.py:51
+#: plinth/modules/snapshot/forms.py:36
#, fuzzy
#| msgid "Delete %(name)s"
msgid "Daily Snapshots Limit"
msgstr "DELETE %(name)s"
-#: plinth/modules/snapshot/forms.py:52
+#: plinth/modules/snapshot/forms.py:37
msgid "Keep a maximum of this many daily snapshots."
msgstr ""
-#: plinth/modules/snapshot/forms.py:55
+#: plinth/modules/snapshot/forms.py:40
#, fuzzy
#| msgid "Delete %(name)s"
msgid "Weekly Snapshots Limit"
msgstr "DELETE %(name)s"
-#: plinth/modules/snapshot/forms.py:56
+#: plinth/modules/snapshot/forms.py:41
msgid "Keep a maximum of this many weekly snapshots."
msgstr ""
-#: plinth/modules/snapshot/forms.py:59
+#: plinth/modules/snapshot/forms.py:44
msgid "Monthly Snapshots Limit"
msgstr ""
-#: plinth/modules/snapshot/forms.py:60
+#: plinth/modules/snapshot/forms.py:45
msgid "Keep a maximum of this many monthly snapshots."
msgstr ""
-#: plinth/modules/snapshot/forms.py:63
+#: plinth/modules/snapshot/forms.py:48
#, fuzzy
#| msgid "Delete %(name)s"
msgid "Yearly Snapshots Limit"
msgstr "DELETE %(name)s"
-#: plinth/modules/snapshot/forms.py:64
+#: plinth/modules/snapshot/forms.py:49
msgid ""
"Keep a maximum of this many yearly snapshots. The default value is 0 "
"(disabled)."
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:27
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:12
#, fuzzy
#| msgid "Delete user permanently?"
msgid "Delete the following snapshots permanently?"
msgstr "DELETE USER PERMANENTLY?"
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:31
-#: plinth/modules/snapshot/templates/snapshot_manage.html:43
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:39
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:16
+#: plinth/modules/snapshot/templates/snapshot_manage.html:28
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:24
msgid "Number"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:32
-#: plinth/modules/snapshot/templates/snapshot_manage.html:44
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:40
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:17
+#: plinth/modules/snapshot/templates/snapshot_manage.html:29
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:25
msgid "Date"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:52
-#: plinth/modules/snapshot/templates/snapshot_manage.html:37
-#: plinth/modules/snapshot/views.py:196
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:37
+#: plinth/modules/snapshot/templates/snapshot_manage.html:22
+#: plinth/modules/snapshot/views.py:175
#, fuzzy
#| msgid "Delete %(name)s"
msgid "Delete Snapshots"
msgstr "DELETE %(name)s"
-#: plinth/modules/snapshot/templates/snapshot_manage.html:33
+#: plinth/modules/snapshot/templates/snapshot_manage.html:18
#, fuzzy
#| msgid "Create User"
msgid "Create Snapshot"
msgstr "CREATE USER"
-#: plinth/modules/snapshot/templates/snapshot_manage.html:46
+#: plinth/modules/snapshot/templates/snapshot_manage.html:31
msgid "Rollback"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_manage.html:57
+#: plinth/modules/snapshot/templates/snapshot_manage.html:42
#, fuzzy
#| msgid "Inactive"
msgid "active"
msgstr "INACTIVE"
-#: plinth/modules/snapshot/templates/snapshot_manage.html:66
+#: plinth/modules/snapshot/templates/snapshot_manage.html:51
#, python-format
msgid "Rollback to snapshot #%(number)s"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_not_supported.html:26
+#: plinth/modules/snapshot/templates/snapshot_not_supported.html:11
#, python-format
msgid ""
"Your have a filesystem of type %(fs_type)s. Snapshots are "
"currently only available on %(types_supported)s filesystems."
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:27
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:12
msgid "Roll back the system to this snapshot?"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:30
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:15
msgid ""
"A new snapshot with the current state of the file system will be "
"automatically created. You will be able to undo a rollback by reverting to "
"the newly created snapshot."
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:57
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:42
#, python-format
msgid "Rollback to Snapshot #%(number)s"
msgstr ""
-#: plinth/modules/snapshot/views.py:45
+#: plinth/modules/snapshot/views.py:30
#, fuzzy
#| msgid "Create User"
msgid "Manage Snapshots"
msgstr "CREATE USER"
-#: plinth/modules/snapshot/views.py:98
+#: plinth/modules/snapshot/views.py:79
msgid "Created snapshot."
msgstr ""
-#: plinth/modules/snapshot/views.py:156
+#: plinth/modules/snapshot/views.py:135
#, fuzzy
#| msgid "Configuration updated"
msgid "Storage snapshots configuration updated"
msgstr "CONFIGURATION UPDATED"
-#: plinth/modules/snapshot/views.py:160 plinth/modules/tor/views.py:79
+#: plinth/modules/snapshot/views.py:139 plinth/modules/tor/views.py:60
#, python-brace-format
msgid "Action error: {0} [{1}] [{2}]"
msgstr "ACTION ERROR: {0} [{1}] [{2}]"
-#: plinth/modules/snapshot/views.py:175
+#: plinth/modules/snapshot/views.py:154
#, fuzzy
#| msgid "Delete %(name)s"
msgid "Deleted all snapshots"
msgstr "DELETE %(name)s"
-#: plinth/modules/snapshot/views.py:179
+#: plinth/modules/snapshot/views.py:158
#, fuzzy
#| msgid "Delete %(name)s"
msgid "Deleted selected snapshots"
msgstr "DELETE %(name)s"
-#: plinth/modules/snapshot/views.py:184
+#: plinth/modules/snapshot/views.py:163
msgid "Snapshot is currently in use. Please try again later."
msgstr ""
-#: plinth/modules/snapshot/views.py:207
+#: plinth/modules/snapshot/views.py:186
#, python-brace-format
msgid "Rolled back to snapshot #{number}."
msgstr ""
-#: plinth/modules/snapshot/views.py:210
+#: plinth/modules/snapshot/views.py:189
msgid "The system must be restarted to complete the rollback."
msgstr ""
-#: plinth/modules/snapshot/views.py:222
+#: plinth/modules/snapshot/views.py:201
msgid "Rollback to Snapshot"
msgstr ""
-#: plinth/modules/ssh/__init__.py:43
-msgid "Secure Shell (SSH) Server"
-msgstr "SECURE SHELL (SSH) SERVER"
-
-#: plinth/modules/ssh/__init__.py:46
+#: plinth/modules/ssh/__init__.py:29
msgid ""
"A Secure Shell server uses the secure shell protocol to accept connections "
"from remote computers. An authorized remote computer can perform "
@@ -5652,64 +5761,62 @@ msgid ""
"connections."
msgstr ""
-#: plinth/modules/ssh/forms.py:30
+#: plinth/modules/ssh/__init__.py:50
+msgid "Secure Shell (SSH) Server"
+msgstr "SECURE SHELL (SSH) SERVER"
+
+#: plinth/modules/ssh/forms.py:15
#, fuzzy
#| msgid "Use HTTP basic authentication"
msgid "Disable password authentication"
msgstr "USE HTTP BASIC AUTHENTICATION"
-#: plinth/modules/ssh/forms.py:31
+#: plinth/modules/ssh/forms.py:16
msgid ""
"Improves security by preventing password guessing. Ensure that you have "
"setup SSH keys in your administrator user account before enabling this "
"option."
msgstr ""
-#: plinth/modules/ssh/templates/ssh.html:26
+#: plinth/modules/ssh/templates/ssh.html:11
#, fuzzy
#| msgid "GPG Fingerprint"
msgid "Server Fingerprints"
msgstr "GPG FINGERPRINT"
-#: plinth/modules/ssh/templates/ssh.html:29
+#: plinth/modules/ssh/templates/ssh.html:14
msgid ""
"When connecting to the server, ensure that the fingerprint shown by the SSH "
"client matches one of these fingerprints."
msgstr ""
-#: plinth/modules/ssh/templates/ssh.html:38
+#: plinth/modules/ssh/templates/ssh.html:23
msgid "Algorithm"
msgstr ""
-#: plinth/modules/ssh/templates/ssh.html:39
+#: plinth/modules/ssh/templates/ssh.html:24
#, fuzzy
#| msgid "GPG Fingerprint"
msgid "Fingerprint"
msgstr "GPG FINGERPRINT"
-#: plinth/modules/ssh/views.py:66
+#: plinth/modules/ssh/views.py:48
msgid "SSH authentication with password disabled."
msgstr ""
-#: plinth/modules/ssh/views.py:69
+#: plinth/modules/ssh/views.py:51
msgid "SSH authentication with password enabled."
msgstr ""
-#: plinth/modules/sso/__init__.py:30
+#: plinth/modules/sso/__init__.py:33
msgid "Single Sign On"
msgstr ""
-#: plinth/modules/sso/templates/login.html:35
+#: plinth/modules/sso/templates/login.html:20
msgid "Login"
msgstr "LOGIN"
-#: plinth/modules/storage/__init__.py:39 plinth/modules/storage/__init__.py:331
-#, fuzzy
-#| msgid "reStore"
-msgid "Storage"
-msgstr "RESTORE"
-
-#: plinth/modules/storage/__init__.py:47
+#: plinth/modules/storage/__init__.py:30
#, python-brace-format
msgid ""
"This module allows you to manage storage media attached to your {box_name}. "
@@ -5717,161 +5824,167 @@ msgid ""
"media, expand the root partition etc."
msgstr ""
-#: plinth/modules/storage/__init__.py:224
+#: plinth/modules/storage/__init__.py:52 plinth/modules/storage/__init__.py:318
+#, fuzzy
+#| msgid "reStore"
+msgid "Storage"
+msgstr "RESTORE"
+
+#: plinth/modules/storage/__init__.py:211
#, python-brace-format
msgid "{disk_size:.1f} bytes"
msgstr ""
-#: plinth/modules/storage/__init__.py:228
+#: plinth/modules/storage/__init__.py:215
#, python-brace-format
msgid "{disk_size:.1f} KiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:232
+#: plinth/modules/storage/__init__.py:219
#, python-brace-format
msgid "{disk_size:.1f} MiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:236
+#: plinth/modules/storage/__init__.py:223
#, python-brace-format
msgid "{disk_size:.1f} GiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:239
+#: plinth/modules/storage/__init__.py:226
#, python-brace-format
msgid "{disk_size:.1f} TiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:246
+#: plinth/modules/storage/__init__.py:233
msgid "The operation failed."
msgstr ""
-#: plinth/modules/storage/__init__.py:248
+#: plinth/modules/storage/__init__.py:235
msgid "The operation was cancelled."
msgstr ""
-#: plinth/modules/storage/__init__.py:250
+#: plinth/modules/storage/__init__.py:237
#, fuzzy
#| msgid "repro service is running"
msgid "The device is already unmounting."
msgstr "REPRO SERVICE IS RUNNING"
-#: plinth/modules/storage/__init__.py:252
+#: plinth/modules/storage/__init__.py:239
msgid "The operation is not supported due to missing driver/tool support."
msgstr ""
-#: plinth/modules/storage/__init__.py:255
+#: plinth/modules/storage/__init__.py:242
msgid "The operation timed out."
msgstr ""
-#: plinth/modules/storage/__init__.py:257
+#: plinth/modules/storage/__init__.py:244
msgid "The operation would wake up a disk that is in a deep-sleep state."
msgstr ""
-#: plinth/modules/storage/__init__.py:260
+#: plinth/modules/storage/__init__.py:247
msgid "Attempting to unmount a device that is busy."
msgstr ""
-#: plinth/modules/storage/__init__.py:262
+#: plinth/modules/storage/__init__.py:249
msgid "The operation has already been cancelled."
msgstr ""
-#: plinth/modules/storage/__init__.py:268
+#: plinth/modules/storage/__init__.py:255
msgid "Not authorized to perform the requested operation."
msgstr ""
-#: plinth/modules/storage/__init__.py:270
+#: plinth/modules/storage/__init__.py:257
#, fuzzy
#| msgid "This service already exists"
msgid "The device is already mounted."
msgstr "THIS SERVICE ALREADY EXISTS"
-#: plinth/modules/storage/__init__.py:272
+#: plinth/modules/storage/__init__.py:259
#, fuzzy
#| msgid "repro service is not running"
msgid "The device is not mounted."
msgstr "REPRO SERVICE IS NOT RUNNING"
-#: plinth/modules/storage/__init__.py:275
+#: plinth/modules/storage/__init__.py:262
msgid "Not permitted to use the requested option."
msgstr ""
-#: plinth/modules/storage/__init__.py:278
+#: plinth/modules/storage/__init__.py:265
msgid "The device is mounted by another user."
msgstr ""
-#: plinth/modules/storage/__init__.py:326
+#: plinth/modules/storage/__init__.py:313
#, no-python-format, python-brace-format
msgid "Low space on system partition: {percent_used}% used, {free_space} free."
msgstr ""
-#: plinth/modules/storage/__init__.py:328
+#: plinth/modules/storage/__init__.py:315
msgid "Low disk space"
msgstr ""
-#: plinth/modules/storage/forms.py:79
+#: plinth/modules/storage/forms.py:64
#, fuzzy
#| msgid "Invalid hostname"
msgid "Invalid directory name."
msgstr "INVALID HOSTNAME"
-#: plinth/modules/storage/forms.py:97
+#: plinth/modules/storage/forms.py:82
msgid "Directory does not exist."
msgstr ""
-#: plinth/modules/storage/forms.py:99
+#: plinth/modules/storage/forms.py:84
#, fuzzy
#| msgid "Download directory"
msgid "Path is not a directory."
msgstr "DOWNLOAD DIRECTORY"
-#: plinth/modules/storage/forms.py:102
+#: plinth/modules/storage/forms.py:87
msgid "Directory is not readable by the user."
msgstr ""
-#: plinth/modules/storage/forms.py:105
+#: plinth/modules/storage/forms.py:90
msgid "Directory is not writable by the user."
msgstr ""
-#: plinth/modules/storage/forms.py:110
+#: plinth/modules/storage/forms.py:95
#, fuzzy
#| msgid "Download directory"
msgid "Directory"
msgstr "DOWNLOAD DIRECTORY"
-#: plinth/modules/storage/forms.py:113
+#: plinth/modules/storage/forms.py:98
msgid "Subdirectory (optional)"
msgstr ""
-#: plinth/modules/storage/forms.py:160
+#: plinth/modules/storage/forms.py:145
#, fuzzy
#| msgid "Add Service"
msgid "Share"
msgstr "ADD SERVICE"
-#: plinth/modules/storage/forms.py:168
+#: plinth/modules/storage/forms.py:153
msgid "Other directory (specify below)"
msgstr ""
-#: plinth/modules/storage/templates/storage.html:35
+#: plinth/modules/storage/templates/storage.html:20
#, fuzzy
#| msgid "The following is the current status:"
msgid "The following storage devices are in use:"
msgstr "THE FOLLOWING IS THE CURRENT STATUS:"
-#: plinth/modules/storage/templates/storage.html:41
+#: plinth/modules/storage/templates/storage.html:26
msgid "Label"
msgstr ""
-#: plinth/modules/storage/templates/storage.html:42
+#: plinth/modules/storage/templates/storage.html:27
msgid "Mount Point"
msgstr ""
-#: plinth/modules/storage/templates/storage.html:90
+#: plinth/modules/storage/templates/storage.html:75
msgid "Partition Expansion"
msgstr ""
-#: plinth/modules/storage/templates/storage.html:92
+#: plinth/modules/storage/templates/storage.html:77
#, python-format
msgid ""
"There is %(expandable_root_size)s of unallocated space available after your "
@@ -5879,13 +5992,13 @@ msgid ""
"will provide you additional free space to store your files."
msgstr ""
-#: plinth/modules/storage/templates/storage.html:102
-#: plinth/modules/storage/templates/storage_expand.html:39
-#: plinth/modules/storage/views.py:76
+#: plinth/modules/storage/templates/storage.html:87
+#: plinth/modules/storage/templates/storage_expand.html:24
+#: plinth/modules/storage/views.py:58
msgid "Expand Root Partition"
msgstr ""
-#: plinth/modules/storage/templates/storage_expand.html:29
+#: plinth/modules/storage/templates/storage_expand.html:14
#, python-format
msgid ""
"Please backup your data before proceeding. After this operation, "
@@ -5893,42 +6006,33 @@ msgid ""
"root partition."
msgstr ""
-#: plinth/modules/storage/views.py:88
+#: plinth/modules/storage/views.py:70
#, fuzzy, python-brace-format
#| msgid "Error setting time zone: {exception}"
msgid "Error expanding partition: {exception}"
msgstr "ERROR SETTING TIME ZONE: {exception}"
-#: plinth/modules/storage/views.py:91
+#: plinth/modules/storage/views.py:73
#, fuzzy
#| msgid "Password changed successfully."
msgid "Partition expanded successfully."
msgstr "PASSWORD CHANGED SUCCESSFULLY."
-#: plinth/modules/storage/views.py:109
+#: plinth/modules/storage/views.py:91
#, python-brace-format
msgid "{drive_vendor} {drive_model} can be safely unplugged."
msgstr ""
-#: plinth/modules/storage/views.py:113
+#: plinth/modules/storage/views.py:95
msgid "Device can be safely unplugged."
msgstr ""
-#: plinth/modules/storage/views.py:123
+#: plinth/modules/storage/views.py:105
#, python-brace-format
msgid "Error ejecting device: {error_message}"
msgstr ""
-#: plinth/modules/syncthing/__init__.py:40
-#: plinth/modules/syncthing/manifest.py:28
-msgid "Syncthing"
-msgstr ""
-
-#: plinth/modules/syncthing/__init__.py:44
-msgid "File Synchronization"
-msgstr ""
-
-#: plinth/modules/syncthing/__init__.py:47
+#: plinth/modules/syncthing/__init__.py:26
msgid ""
"Syncthing is an application to synchronize files across multiple devices, e."
"g. your desktop computer and mobile phone. Creation, modification, or "
@@ -5936,7 +6040,7 @@ msgid ""
"other devices that also run Syncthing."
msgstr ""
-#: plinth/modules/syncthing/__init__.py:52
+#: plinth/modules/syncthing/__init__.py:31
#, python-brace-format
msgid ""
"Running Syncthing on {box_name} provides an extra synchronization point for "
@@ -5947,21 +6051,22 @@ msgid ""
"{box_name} is only available for users belonging to the \"admin\" group."
msgstr ""
-#: plinth/modules/syncthing/__init__.py:63
+#: plinth/modules/syncthing/__init__.py:40
#, fuzzy
#| msgid "Installation"
msgid "Administer Syncthing application"
msgstr "INSTALLATION"
-#: plinth/modules/tahoe/__init__.py:43
-msgid "Tahoe-LAFS"
+#: plinth/modules/syncthing/__init__.py:54
+#: plinth/modules/syncthing/manifest.py:13
+msgid "Syncthing"
msgstr ""
-#: plinth/modules/tahoe/__init__.py:47
-msgid "Distributed File Storage"
+#: plinth/modules/syncthing/__init__.py:55
+msgid "File Synchronization"
msgstr ""
-#: plinth/modules/tahoe/__init__.py:134
+#: plinth/modules/tahoe/__init__.py:30
msgid ""
"Tahoe-LAFS is a decentralized secure file storage system. It uses provider "
"independent security to store files over a distributed network of storage "
@@ -5969,7 +6074,7 @@ msgid ""
"remaining nodes."
msgstr ""
-#: plinth/modules/tahoe/__init__.py:139
+#: plinth/modules/tahoe/__init__.py:35
#, python-brace-format
msgid ""
"This {box_name} hosts a storage node and an introducer by default. "
@@ -5977,7 +6082,15 @@ msgid ""
"other storage nodes."
msgstr ""
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:33
+#: plinth/modules/tahoe/__init__.py:66
+msgid "Tahoe-LAFS"
+msgstr ""
+
+#: plinth/modules/tahoe/__init__.py:68
+msgid "Distributed File Storage"
+msgstr ""
+
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:17
#, python-format
msgid ""
"The Tahoe-LAFS server domain is set to %(domain_name)s. Changing the "
@@ -5986,41 +6099,37 @@ msgid ""
"%(domain_name)s:5678\">https://%(domain_name)s:5678."
msgstr ""
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:55
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:39
msgid "Local introducer"
msgstr ""
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:43
#: plinth/modules/tahoe/templates/tahoe-post-setup.html:59
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:75
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:92
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:76
#, fuzzy
#| msgid "Name"
msgid "Pet Name"
msgstr "NAME"
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:72
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:56
msgid "Add new introducer"
msgstr ""
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:83
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:67
#, fuzzy
#| msgid "Address"
msgid "Add"
msgstr "ADDRESS"
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:88
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:72
msgid "Connected introducers"
msgstr ""
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:105
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:89
msgid "Remove"
msgstr ""
-#: plinth/modules/tor/__init__.py:47
-msgid "Tor"
-msgstr ""
-
-#: plinth/modules/tor/__init__.py:52
+#: plinth/modules/tor/__init__.py:33
#, fuzzy
#| msgid ""
#| "Tor is an anonymous communication system. You can learn more about it "
@@ -6041,80 +6150,84 @@ msgstr ""
"THE "
"TOR BROWSER."
-#: plinth/modules/tor/__init__.py:83
+#: plinth/modules/tor/__init__.py:55
+msgid "Tor"
+msgstr ""
+
+#: plinth/modules/tor/__init__.py:66
#, fuzzy
#| msgid "Tor Hidden Service"
msgid "Tor Onion Service"
msgstr "TOR HIDDEN SERVICE"
-#: plinth/modules/tor/__init__.py:87
+#: plinth/modules/tor/__init__.py:70
msgid "Tor Socks Proxy"
msgstr ""
-#: plinth/modules/tor/__init__.py:91
+#: plinth/modules/tor/__init__.py:74
msgid "Tor Bridge Relay"
msgstr "TOR BRIDGE RELAY"
-#: plinth/modules/tor/__init__.py:112
+#: plinth/modules/tor/__init__.py:95
msgid "Tor relay port available"
msgstr "TOR RELAY PORT AVAILABLE"
-#: plinth/modules/tor/__init__.py:122
+#: plinth/modules/tor/__init__.py:105
msgid "Obfs3 transport registered"
msgstr "OBFS3 TRANSPORT REGISTERED"
-#: plinth/modules/tor/__init__.py:132
+#: plinth/modules/tor/__init__.py:115
msgid "Obfs4 transport registered"
msgstr "OBFS4 TRANSPORT REGISTERED"
-#: plinth/modules/tor/__init__.py:225
+#: plinth/modules/tor/__init__.py:208
#, 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:236
+#: plinth/modules/tor/__init__.py:219
#, python-brace-format
msgid "Confirm Tor usage at {url} on tcp{kind}"
msgstr "CONFIRM TOR USAGE AT {url} ON TCP{kind}"
-#: plinth/modules/tor/forms.py:46
+#: plinth/modules/tor/forms.py:31
msgid ""
"Enter a valid bridge with this format: [transport] IP:ORPort [fingerprint]"
msgstr ""
-#: plinth/modules/tor/forms.py:88
+#: plinth/modules/tor/forms.py:73
msgid "Enable Tor"
msgstr "ENABLE TOR"
-#: plinth/modules/tor/forms.py:90
+#: plinth/modules/tor/forms.py:75
msgid "Use upstream bridges to connect to Tor network"
msgstr ""
-#: plinth/modules/tor/forms.py:92
+#: plinth/modules/tor/forms.py:77
msgid ""
"When enabled, the bridges configured below will be used to connect to the "
"Tor network. Use this option if your Internet Service Provider (ISP) blocks "
"or censors connections to the Tor Network. This will disable relay modes."
msgstr ""
-#: plinth/modules/tor/forms.py:97
+#: plinth/modules/tor/forms.py:82
msgid "Upstream bridges"
msgstr ""
-#: plinth/modules/tor/forms.py:99
+#: plinth/modules/tor/forms.py:84
msgid ""
"You can get some bridges from https://bridges.torproject.org/ and copy/paste the bridge information "
"here. Currently supported transports are none, obfs3, obfs4 and scamblesuit."
msgstr ""
-#: plinth/modules/tor/forms.py:105
+#: plinth/modules/tor/forms.py:90
#, fuzzy
#| msgid "Enable Tor"
msgid "Enable Tor relay"
msgstr "ENABLE TOR"
-#: plinth/modules/tor/forms.py:106
+#: plinth/modules/tor/forms.py:91
#, python-brace-format
msgid ""
"When enabled, your {box_name} will run a Tor relay and donate bandwidth to "
@@ -6122,26 +6235,26 @@ msgid ""
"download bandwidth."
msgstr ""
-#: plinth/modules/tor/forms.py:111
+#: plinth/modules/tor/forms.py:96
#, fuzzy
#| msgid "Tor Bridge Relay"
msgid "Enable Tor bridge relay"
msgstr "TOR BRIDGE RELAY"
-#: plinth/modules/tor/forms.py:113
+#: plinth/modules/tor/forms.py:98
msgid ""
"When enabled, relay information is published in the Tor bridge database "
"instead of public Tor relay database making it harder to censor this node. "
"This helps others circumvent censorship."
msgstr ""
-#: plinth/modules/tor/forms.py:118
+#: plinth/modules/tor/forms.py:103
#, fuzzy
#| msgid "Enable Tor Hidden Service"
msgid "Enable Tor Hidden Service"
msgstr "ENABLE TOR HIDDEN SERVICE"
-#: plinth/modules/tor/forms.py:120
+#: plinth/modules/tor/forms.py:105
#, fuzzy, python-brace-format
#| msgid ""
#| "A hidden service will allow {box_name} to provide selected services (such "
@@ -6154,11 +6267,11 @@ msgstr ""
"A HIDDEN SERVICE WILL ALLOW {box_name} TO PROVIDE SELECTED SERVICES (SUCH AS "
"OWNCLOUD OR CHAT) WITHOUT REVEALING ITS LOCATION."
-#: plinth/modules/tor/forms.py:125
+#: plinth/modules/tor/forms.py:110
msgid "Download software packages over Tor"
msgstr "DOWNLOAD SOFTWARE PACKAGES OVER TOR"
-#: plinth/modules/tor/forms.py:126
+#: plinth/modules/tor/forms.py:111
msgid ""
"When enabled, software will be downloaded over the Tor network for "
"installations and upgrades. This adds a degree of privacy and security "
@@ -6168,39 +6281,39 @@ msgstr ""
"INSTALLATIONS AND UPGRADES. THIS ADDS A DEGREE OF PRIVACY AND SECURITY "
"DURING SOFTWARE DOWNLOADS."
-#: plinth/modules/tor/forms.py:141
+#: plinth/modules/tor/forms.py:126
msgid "Specify at least one upstream bridge to use upstream bridges."
msgstr ""
-#: plinth/modules/tor/manifest.py:29
+#: plinth/modules/tor/manifest.py:14
msgid "Tor Browser"
msgstr ""
-#: plinth/modules/tor/manifest.py:45
+#: plinth/modules/tor/manifest.py:30
msgid "Orbot: Proxy with Tor"
msgstr ""
-#: plinth/modules/tor/templates/tor.html:41
+#: plinth/modules/tor/templates/tor.html:26
msgid "Tor configuration is being updated"
msgstr "TOR CONFIGURATION IS BEING UPDATED"
-#: plinth/modules/tor/templates/tor.html:50
+#: plinth/modules/tor/templates/tor.html:35
#, fuzzy
#| msgid "Hidden Service"
msgid "Onion Service"
msgstr "HIDDEN SERVICE"
-#: plinth/modules/tor/templates/tor.html:52
+#: plinth/modules/tor/templates/tor.html:37
#, fuzzy
#| msgid "Port"
msgid "Ports"
msgstr "PORT"
-#: plinth/modules/tor/templates/tor.html:82
+#: plinth/modules/tor/templates/tor.html:67
msgid "Relay"
msgstr ""
-#: plinth/modules/tor/templates/tor.html:84
+#: plinth/modules/tor/templates/tor.html:69
#, fuzzy, python-format
#| msgid ""
#| "Your %(box_name)s is configured as a Tor bridge with obfsproxy, so it can "
@@ -6216,23 +6329,16 @@ msgstr ""
"FIREWALL, YOU SHOULD MAKE SURE THE FOLLOWING PORTS ARE OPEN, AND PORT-"
"FORWARDED, IF NECESSARY:"
-#: plinth/modules/tor/templates/tor.html:112
+#: plinth/modules/tor/templates/tor.html:97
msgid "SOCKS"
msgstr "SOCKS"
-#: plinth/modules/tor/templates/tor.html:115
+#: plinth/modules/tor/templates/tor.html:100
#, python-format
msgid "A Tor SOCKS port is available on your %(box_name)s on TCP port 9050."
msgstr "A TOR SOCKS PORT IS AVAILABLE ON YOUR %(box_name)s ON TCP PORT 9050."
-#: plinth/modules/transmission/__init__.py:41
-#: plinth/modules/transmission/manifest.py:24
-#, fuzzy
-#| msgid "Transmission BitTorrent"
-msgid "Transmission"
-msgstr "TRANSMISSION BITTORRENT"
-
-#: plinth/modules/transmission/__init__.py:48
+#: plinth/modules/transmission/__init__.py:27
msgid ""
"BitTorrent is a peer-to-peer file sharing protocol. Transmission daemon "
"handles Bitorrent file sharing. Note that BitTorrent is not anonymous."
@@ -6240,22 +6346,21 @@ msgstr ""
"BITTORRENT IS A PEER-TO-PEER FILE SHARING PROTOCOL. TRANSMISSION DAEMON "
"HANDLES BITORRENT FILE SHARING. NOTE THAT BITTORRENT IS NOT ANONYMOUS."
-#: plinth/modules/ttrss/__init__.py:43 plinth/modules/ttrss/manifest.py:34
-msgid "Tiny Tiny RSS"
-msgstr ""
+#: plinth/modules/transmission/__init__.py:48
+#: plinth/modules/transmission/manifest.py:9
+#, fuzzy
+#| msgid "Transmission BitTorrent"
+msgid "Transmission"
+msgstr "TRANSMISSION BITTORRENT"
-#: plinth/modules/ttrss/__init__.py:47
-msgid "News Feed Reader"
-msgstr ""
-
-#: plinth/modules/ttrss/__init__.py:50
+#: plinth/modules/ttrss/__init__.py:29
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:54
+#: plinth/modules/ttrss/__init__.py:33
#, fuzzy, python-brace-format
#| msgid ""
#| "When enabled, the blogs and wikis will be available from /IKIWIKI."
-#: plinth/modules/ttrss/__init__.py:58
+#: plinth/modules/ttrss/__init__.py:37
msgid ""
"When using a mobile or desktop application for Tiny Tiny RSS, use the URL /tt-rss-app for "
"connecting."
msgstr ""
-#: plinth/modules/ttrss/__init__.py:65
+#: plinth/modules/ttrss/__init__.py:42
msgid "Read and subscribe to news feeds"
msgstr ""
-#: plinth/modules/ttrss/manifest.py:25
+#: plinth/modules/ttrss/__init__.py:56 plinth/modules/ttrss/manifest.py:19
+msgid "Tiny Tiny RSS"
+msgstr ""
+
+#: plinth/modules/ttrss/__init__.py:57
+msgid "News Feed Reader"
+msgstr ""
+
+#: plinth/modules/ttrss/manifest.py:10
msgid "Tiny Tiny RSS (Fork)"
msgstr ""
-#: plinth/modules/upgrades/__init__.py:37 plinth/templates/setup.html:89
+#: plinth/modules/upgrades/__init__.py:23
+msgid "Check for and apply the latest software and security updates."
+msgstr ""
+
+#: plinth/modules/upgrades/__init__.py:38 plinth/templates/setup.html:74
#, fuzzy
#| msgid "Update URL"
msgid "Update"
msgstr "UPDATE URL"
-#: plinth/modules/upgrades/__init__.py:40
-msgid "Check for and apply the latest software and security updates."
-msgstr ""
-
-#: plinth/modules/upgrades/__init__.py:84
+#: plinth/modules/upgrades/__init__.py:71
#, fuzzy
#| msgid "FreedomBox Manual"
msgid "FreedomBox Updated"
msgstr "FREEDOMBOX MANUAL"
-#: plinth/modules/upgrades/forms.py:28
+#: plinth/modules/upgrades/forms.py:13
#, fuzzy
#| msgid "Enable automatic upgrades"
msgid "Enable auto-update"
msgstr "ENABLE AUTOMATIC UPGRADES"
-#: plinth/modules/upgrades/forms.py:29
+#: plinth/modules/upgrades/forms.py:14
msgid "When enabled, FreedomBox automatically updates once a day."
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades-new-release.html:24
+#: plinth/modules/upgrades/templates/upgrades-new-release.html:9
#, fuzzy, python-format
#| msgid "%(box_name)s Setup"
msgid "%(box_name)s Updated"
msgstr "%(box_name)s SETUP"
-#: plinth/modules/upgrades/templates/upgrades-new-release.html:28
+#: plinth/modules/upgrades/templates/upgrades-new-release.html:13
#, python-format
msgid ""
"%(box_name)s has been updated to version %(version)s. See the release announcement."
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades-new-release.html:37
-#: plinth/templates/notifications.html:59
+#: plinth/modules/upgrades/templates/upgrades-new-release.html:22
+#: plinth/templates/notifications.html:44
msgid "Dismiss"
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades.html:45
+#: plinth/modules/upgrades/templates/upgrades.html:30
#, fuzzy
#| msgid "Update URL"
msgid "Update now"
msgstr "UPDATE URL"
-#: plinth/modules/upgrades/templates/upgrades.html:54
+#: plinth/modules/upgrades/templates/upgrades.html:39
msgid "Updating..."
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades.html:59
+#: plinth/modules/upgrades/templates/upgrades.html:44
#, fuzzy
#| msgid ""
#| "Depending on the number of packages to install, this may take a long time "
@@ -6353,57 +6466,53 @@ msgstr ""
"OTHER PACKAGES. DURING THE UPGRADE, THIS WEB INTERFACE MAY BE TEMPORARILY "
"UNAVAILABLE AND SHOW AN ERROR. REFRESH THE PAGE TO CONTINUE."
-#: plinth/modules/upgrades/templates/upgrades.html:73
+#: plinth/modules/upgrades/templates/upgrades.html:58
msgid "Toggle recent update logs"
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades_configure.html:26
-#: plinth/modules/upgrades/templates/upgrades_configure.html:27
-#: plinth/modules/upgrades/views.py:107
+#: plinth/modules/upgrades/templates/upgrades_configure.html:11
+#: plinth/modules/upgrades/templates/upgrades_configure.html:12
+#: plinth/modules/upgrades/views.py:89
#, fuzzy
#| msgid "Last update"
msgid "Manual update"
msgstr "LAST UPDATE"
-#: plinth/modules/upgrades/views.py:66
+#: plinth/modules/upgrades/views.py:48
#, python-brace-format
msgid "Error when configuring unattended-upgrades: {error}"
msgstr "ERROR WHEN CONFIGURING UNATTENDED-UPGRADES: {error}"
-#: plinth/modules/upgrades/views.py:70
+#: plinth/modules/upgrades/views.py:52
msgid "Automatic upgrades enabled"
msgstr "AUTOMATIC UPGRADES ENABLED"
-#: plinth/modules/upgrades/views.py:73
+#: plinth/modules/upgrades/views.py:55
msgid "Automatic upgrades disabled"
msgstr "AUTOMATIC UPGRADES DISABLED"
-#: plinth/modules/upgrades/views.py:75
+#: plinth/modules/upgrades/views.py:57
#, fuzzy
#| msgid "Setting unchanged"
msgid "Settings unchanged"
msgstr "SETTING UNCHANGED"
-#: plinth/modules/upgrades/views.py:101
+#: plinth/modules/upgrades/views.py:83
msgid "Upgrade process started."
msgstr "UPGRADE PROCESS STARTED."
-#: plinth/modules/upgrades/views.py:104
+#: plinth/modules/upgrades/views.py:86
msgid "Starting upgrade failed."
msgstr "STARTING UPGRADE FAILED."
-#: plinth/modules/users/__init__.py:51
-msgid "Users and Groups"
-msgstr "USERS AND GROUPS"
-
-#: plinth/modules/users/__init__.py:54
+#: plinth/modules/users/__init__.py:37
msgid ""
"Create and managed user accounts. These accounts serve as centralized "
"authentication mechanism for most apps. Some apps further require a user "
"account to be part of a group to authorize the user to access the app."
msgstr ""
-#: plinth/modules/users/__init__.py:59
+#: plinth/modules/users/__init__.py:42
#, python-brace-format
msgid ""
"Any user may login to {box_name} web interface to see a list of apps "
@@ -6411,37 +6520,41 @@ msgid ""
"group may alter apps or system settings."
msgstr ""
-#: plinth/modules/users/__init__.py:128
+#: plinth/modules/users/__init__.py:64
+msgid "Users and Groups"
+msgstr "USERS AND GROUPS"
+
+#: plinth/modules/users/__init__.py:115
#, python-brace-format
msgid "Check LDAP entry \"{search_item}\""
msgstr "CHECK LDAP ENTRY \"{search_item}\""
-#: plinth/modules/users/forms.py:43
+#: plinth/modules/users/forms.py:28
msgid "Access to all services and system settings"
msgstr ""
-#: plinth/modules/users/forms.py:59
+#: plinth/modules/users/forms.py:44
msgid "Username is taken or is reserved."
msgstr ""
-#: plinth/modules/users/forms.py:87
+#: plinth/modules/users/forms.py:72
#, fuzzy
#| msgid "Invalid server name"
msgid "Enter a valid username."
msgstr "INVALID SERVER NAME"
-#: plinth/modules/users/forms.py:93
+#: plinth/modules/users/forms.py:78
msgid ""
"Required. 150 characters or fewer. English letters, digits and @/./-/_ only."
msgstr ""
-#: plinth/modules/users/forms.py:106 plinth/modules/users/forms.py:222
+#: plinth/modules/users/forms.py:91 plinth/modules/users/forms.py:207
#, fuzzy
#| msgid "Transmission BitTorrent"
msgid "Permissions"
msgstr "TRANSMISSION BITTORRENT"
-#: plinth/modules/users/forms.py:109
+#: plinth/modules/users/forms.py:94
msgid ""
"Select which services should be available to the new user. The user will be "
"able to log in to services that support single sign-on through LDAP, if they "
@@ -6455,20 +6568,20 @@ msgstr ""
"ABLE TO LOG IN TO ALL SERVICES. THEY CAN ALSO LOG IN TO THE SYSTEM THROUGH "
"SSH AND HAVE ADMINISTRATIVE PRIVILEGES (SUDO)."
-#: plinth/modules/users/forms.py:148 plinth/modules/users/forms.py:372
+#: plinth/modules/users/forms.py:133 plinth/modules/users/forms.py:357
msgid "Creating LDAP user failed."
msgstr "CREATING LDAP USER FAILED."
-#: plinth/modules/users/forms.py:159
+#: plinth/modules/users/forms.py:144
#, python-brace-format
msgid "Failed to add new user to {group} group."
msgstr "FAILED TO ADD NEW USER TO {group} GROUP."
-#: plinth/modules/users/forms.py:173
+#: plinth/modules/users/forms.py:158
msgid "Authorized SSH Keys"
msgstr ""
-#: plinth/modules/users/forms.py:175
+#: plinth/modules/users/forms.py:160
msgid ""
"Setting an SSH public key will allow this user to securely log in to the "
"system without using a password. You may enter multiple keys, one on each "
@@ -6478,84 +6591,84 @@ msgstr ""
"SYSTEM WITHOUT USING A PASSWORD. YOU MAY ENTER MULTIPLE KEYS, ONE ON EACH "
"LINE. BLANK LINES AND LINES STARTING WITH # WILL BE IGNORED."
-#: plinth/modules/users/forms.py:259
+#: plinth/modules/users/forms.py:244
msgid "Renaming LDAP user failed."
msgstr "RENAMING LDAP USER FAILED."
-#: plinth/modules/users/forms.py:271
+#: plinth/modules/users/forms.py:256
msgid "Failed to remove user from group."
msgstr "FAILED TO REMOVE USER FROM GROUP."
-#: plinth/modules/users/forms.py:282
+#: plinth/modules/users/forms.py:267
msgid "Failed to add user to group."
msgstr "FAILED TO ADD USER TO GROUP."
-#: plinth/modules/users/forms.py:291
+#: plinth/modules/users/forms.py:276
msgid "Unable to set SSH keys."
msgstr ""
-#: plinth/modules/users/forms.py:306
+#: plinth/modules/users/forms.py:291
#, fuzzy
#| msgid "Failed to add user to group."
msgid "Failed to change user status."
msgstr "FAILED TO ADD USER TO GROUP."
-#: plinth/modules/users/forms.py:314
+#: plinth/modules/users/forms.py:299
msgid "Cannot delete the only administrator in the system."
msgstr ""
-#: plinth/modules/users/forms.py:346
+#: plinth/modules/users/forms.py:331
msgid "Changing LDAP user password failed."
msgstr "CHANGING LDAP USER PASSWORD FAILED."
-#: plinth/modules/users/forms.py:381
+#: plinth/modules/users/forms.py:366
msgid "Failed to add new user to admin group."
msgstr "FAILED TO ADD NEW USER TO ADMIN GROUP."
-#: plinth/modules/users/forms.py:398
+#: plinth/modules/users/forms.py:383
msgid "Failed to restrict console access."
msgstr ""
-#: plinth/modules/users/forms.py:410
+#: plinth/modules/users/forms.py:395
msgid "User account created, you are now logged in"
msgstr "USER ACCOUNT CREATED, YOU ARE NOW LOGGED IN"
-#: plinth/modules/users/templates/users_change_password.html:26
+#: plinth/modules/users/templates/users_change_password.html:11
#, python-format
msgid "Change Password for %(username)s"
msgstr "CHANGE PASSWORD FOR %(username)s"
-#: plinth/modules/users/templates/users_change_password.html:36
+#: plinth/modules/users/templates/users_change_password.html:21
msgid "Save Password"
msgstr "SAVE PASSWORD"
-#: plinth/modules/users/templates/users_create.html:32
-#: plinth/modules/users/templates/users_list.html:42
-#: plinth/modules/users/templates/users_list.html:44
-#: plinth/modules/users/views.py:57
+#: plinth/modules/users/templates/users_create.html:17
+#: plinth/modules/users/templates/users_list.html:27
+#: plinth/modules/users/templates/users_list.html:29
+#: plinth/modules/users/views.py:42
msgid "Create User"
msgstr "CREATE USER"
-#: plinth/modules/users/templates/users_delete.html:26
-#: plinth/modules/users/views.py:139
+#: plinth/modules/users/templates/users_delete.html:11
+#: plinth/modules/users/views.py:121
msgid "Delete User"
msgstr "DELETE USER"
-#: plinth/modules/users/templates/users_delete.html:29
+#: plinth/modules/users/templates/users_delete.html:14
#, python-format
msgid "Delete user %(username)s permanently?"
msgstr "DELETE USER %(username)s PERMANENTLY?"
-#: plinth/modules/users/templates/users_delete.html:38
+#: plinth/modules/users/templates/users_delete.html:23
#, python-format
msgid "Delete %(username)s"
msgstr "DELETE %(username)s"
-#: plinth/modules/users/templates/users_firstboot.html:26
+#: plinth/modules/users/templates/users_firstboot.html:11
msgid "Administrator Account"
msgstr "ADMINISTRATOR ACCOUNT"
-#: plinth/modules/users/templates/users_firstboot.html:29
+#: plinth/modules/users/templates/users_firstboot.html:14
msgid ""
"Choose a username and password to access this web interface. The password "
"can be changed later. This user will be granted administrative privileges. "
@@ -6565,28 +6678,28 @@ msgstr ""
"CAN BE CHANGED LATER. THIS USER WILL BE GRANTED ADMINISTRATIVE PRIVILEGES. "
"OTHER USERS CAN BE ADDED LATER."
-#: plinth/modules/users/templates/users_firstboot.html:42
+#: plinth/modules/users/templates/users_firstboot.html:27
#, fuzzy
#| msgid "PageKite Account"
msgid "Create Account"
msgstr "PAGEKITE ACCOUNT"
-#: plinth/modules/users/templates/users_list.html:38
-#: plinth/modules/users/views.py:74
+#: plinth/modules/users/templates/users_list.html:23
+#: plinth/modules/users/views.py:59
msgid "Users"
msgstr "USERS"
-#: plinth/modules/users/templates/users_list.html:57
+#: plinth/modules/users/templates/users_list.html:42
#, python-format
msgid "Delete user %(username)s"
msgstr "DELETE USER %(username)s"
-#: plinth/modules/users/templates/users_list.html:65
+#: plinth/modules/users/templates/users_list.html:50
#, python-format
msgid "Edit user %(username)s"
msgstr "EDIT USER %(username)s"
-#: plinth/modules/users/templates/users_update.html:30
+#: plinth/modules/users/templates/users_update.html:15
#, python-format
msgid ""
"Use the change password form to "
@@ -6595,59 +6708,54 @@ msgstr ""
"USE THE CHANGE PASSWORD FORM TO "
"CHANGE THE PASSWORD."
-#: plinth/modules/users/templates/users_update.html:42
-#: plinth/templates/language-selection.html:32
+#: plinth/modules/users/templates/users_update.html:27
+#: plinth/templates/language-selection.html:17
msgid "Save Changes"
msgstr "SAVE CHANGES"
-#: plinth/modules/users/views.py:55
+#: plinth/modules/users/views.py:40
#, python-format
msgid "User %(username)s created."
msgstr "USER %(username)s CREATED."
-#: plinth/modules/users/views.py:93
+#: plinth/modules/users/views.py:75
#, python-format
msgid "User %(username)s updated."
msgstr "USER %(username)s UPDATED."
-#: plinth/modules/users/views.py:94
+#: plinth/modules/users/views.py:76
msgid "Edit User"
msgstr "EDIT USER"
-#: plinth/modules/users/views.py:149
+#: plinth/modules/users/views.py:131
#, python-brace-format
msgid "User {user} deleted."
msgstr "USER {user} DELETED."
-#: plinth/modules/users/views.py:156
+#: plinth/modules/users/views.py:138
msgid "Deleting LDAP user failed."
msgstr "DELETING LDAP USER FAILED."
-#: plinth/modules/users/views.py:165
+#: plinth/modules/users/views.py:147
msgid "Change Password"
msgstr "CHANGE PASSWORD"
-#: plinth/modules/users/views.py:166
+#: plinth/modules/users/views.py:148
msgid "Password changed successfully."
msgstr "PASSWORD CHANGED SUCCESSFULLY."
-#: plinth/modules/wireguard/__init__.py:38
-#: plinth/modules/wireguard/manifest.py:29
-msgid "WireGuard"
-msgstr ""
-
-#: plinth/modules/wireguard/__init__.py:43
+#: plinth/modules/wireguard/__init__.py:24
msgid "WireGuard is a fast, modern, secure VPN tunnel."
msgstr ""
-#: plinth/modules/wireguard/__init__.py:45
+#: plinth/modules/wireguard/__init__.py:26
#, python-brace-format
msgid ""
"It can be used to connect to a VPN provider which supports WireGuard, and to "
"route all outgoing traffic from {box_name} through the VPN."
msgstr ""
-#: plinth/modules/wireguard/__init__.py:49
+#: plinth/modules/wireguard/__init__.py:30
#, python-brace-format
msgid ""
"A second use case is to connect a mobile device to {box_name} while "
@@ -6655,65 +6763,70 @@ msgid ""
"securely relayed through {box_name}."
msgstr ""
-#: plinth/modules/wireguard/forms.py:47
+#: plinth/modules/wireguard/__init__.py:52
+#: plinth/modules/wireguard/manifest.py:14
+msgid "WireGuard"
+msgstr ""
+
+#: plinth/modules/wireguard/forms.py:32
#, fuzzy
#| msgid "Invalid kite name"
msgid "Invalid key."
msgstr "INVALID KITE NAME"
-#: plinth/modules/wireguard/forms.py:76
-#: plinth/modules/wireguard/templates/wireguard.html:32
-#: plinth/modules/wireguard/templates/wireguard.html:89
-#: plinth/modules/wireguard/templates/wireguard_delete_server.html:38
+#: plinth/modules/wireguard/forms.py:61
+#: plinth/modules/wireguard/templates/wireguard.html:17
+#: plinth/modules/wireguard/templates/wireguard.html:74
+#: plinth/modules/wireguard/templates/wireguard_delete_server.html:23
#, fuzzy
#| msgid "Publish Key"
msgid "Public Key"
msgstr "PUBLISH KEY"
-#: plinth/modules/wireguard/forms.py:77
+#: plinth/modules/wireguard/forms.py:62
msgid ""
"Public key of the peer. Example: "
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs= ."
msgstr ""
-#: plinth/modules/wireguard/forms.py:85
+#: plinth/modules/wireguard/forms.py:70
msgid "Endpoint of the server"
msgstr ""
-#: plinth/modules/wireguard/forms.py:86
+#: plinth/modules/wireguard/forms.py:71
msgid ""
"Domain name and port in the form \"ip:port\". Example: demo.wireguard."
"com:12912 ."
msgstr ""
-#: plinth/modules/wireguard/forms.py:91
+#: plinth/modules/wireguard/forms.py:76
#, fuzzy
#| msgid "Published key to keyserver."
msgid "Public key of the server"
msgstr "PUBLISHED KEY TO KEYSERVER."
-#: plinth/modules/wireguard/forms.py:92
+#: plinth/modules/wireguard/forms.py:77
msgid ""
"Provided by the server operator, a long string of characters. Example: "
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs= ."
msgstr ""
-#: plinth/modules/wireguard/forms.py:97
+#: plinth/modules/wireguard/forms.py:82
msgid "Client IP address provided by server"
msgstr ""
-#: plinth/modules/wireguard/forms.py:98
+#: plinth/modules/wireguard/forms.py:83
msgid ""
"IP address assigned to this machine on the VPN after connecting to the "
"endpoint. This value is usually provided by the server operator. Example: "
"192.168.0.10."
msgstr ""
-#: plinth/modules/wireguard/forms.py:104
+#: plinth/modules/wireguard/forms.py:89
msgid "Private key of this machine"
msgstr ""
-#: plinth/modules/wireguard/forms.py:105
+#: plinth/modules/wireguard/forms.py:90
msgid ""
"Optional. New public/private keys are generated if left blank. Public key "
"can then be provided to the server. This is the recommended way. However, "
@@ -6721,175 +6834,175 @@ msgid ""
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs= ."
msgstr ""
-#: plinth/modules/wireguard/forms.py:113
+#: plinth/modules/wireguard/forms.py:98
msgid "Pre-shared key"
msgstr ""
-#: plinth/modules/wireguard/forms.py:114
+#: plinth/modules/wireguard/forms.py:99
msgid ""
"Optional. A shared secret key provided by the server to add an additional "
"layer of security. Fill in only if provided. Example: "
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs=."
msgstr ""
-#: plinth/modules/wireguard/forms.py:120
+#: plinth/modules/wireguard/forms.py:105
msgid "Use this connection to send all outgoing traffic"
msgstr ""
-#: plinth/modules/wireguard/forms.py:122
+#: plinth/modules/wireguard/forms.py:107
msgid "Typically checked for a VPN service though which all traffic is sent."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:25
+#: plinth/modules/wireguard/templates/wireguard.html:10
#, fuzzy
#| msgid "Web Server"
msgid "As a Server"
msgstr "WEB SERVER"
-#: plinth/modules/wireguard/templates/wireguard.html:27
+#: plinth/modules/wireguard/templates/wireguard.html:12
msgid "Peers allowed to connect to this server:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:33
+#: plinth/modules/wireguard/templates/wireguard.html:18
msgid "Allowed IPs"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:34
-#: plinth/modules/wireguard/templates/wireguard.html:90
+#: plinth/modules/wireguard/templates/wireguard.html:19
+#: plinth/modules/wireguard/templates/wireguard.html:75
#, fuzzy
#| msgid "Create Connection"
msgid "Last Connected Time"
msgstr "CREATE CONNECTION"
-#: plinth/modules/wireguard/templates/wireguard.html:53
+#: plinth/modules/wireguard/templates/wireguard.html:38
#, python-format
msgid "No peers configured to connect to this %(box_name)s yet."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:62
+#: plinth/modules/wireguard/templates/wireguard.html:47
#, python-format
msgid "Public key for this %(box_name)s:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:68
+#: plinth/modules/wireguard/templates/wireguard.html:53
msgid "Not configured yet."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:72
+#: plinth/modules/wireguard/templates/wireguard.html:57
msgid "Add a new peer"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:76
-#: plinth/modules/wireguard/views.py:69
+#: plinth/modules/wireguard/templates/wireguard.html:61
+#: plinth/modules/wireguard/views.py:51
msgid "Add Allowed Client"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:79
+#: plinth/modules/wireguard/templates/wireguard.html:64
#, fuzzy
#| msgid "IRC Client (Quassel)"
msgid "As a Client"
msgstr "IRC CLIENT (QUASSEL)"
-#: plinth/modules/wireguard/templates/wireguard.html:81
+#: plinth/modules/wireguard/templates/wireguard.html:66
#, python-format
msgid "Servers that %(box_name)s will connect to:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:88
-#: plinth/modules/wireguard/templates/wireguard_delete_server.html:34
+#: plinth/modules/wireguard/templates/wireguard.html:73
+#: plinth/modules/wireguard/templates/wireguard_delete_server.html:19
msgid "Endpoint"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:111
+#: plinth/modules/wireguard/templates/wireguard.html:96
msgid "No connections to remote servers are configured yet."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:119
+#: plinth/modules/wireguard/templates/wireguard.html:104
msgid "Add a new server"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:123
-#: plinth/modules/wireguard/views.py:178
+#: plinth/modules/wireguard/templates/wireguard.html:108
+#: plinth/modules/wireguard/views.py:160
#, fuzzy
#| msgid "Add Connection"
msgid "Add Connection to Server"
msgstr "ADD CONNECTION"
-#: plinth/modules/wireguard/templates/wireguard_add_client.html:34
+#: plinth/modules/wireguard/templates/wireguard_add_client.html:19
#, fuzzy
#| msgid "Quassel IRC Client"
msgid "Add Client"
msgstr "QUASSEL IRC CLIENT"
-#: plinth/modules/wireguard/templates/wireguard_delete_client.html:29
+#: plinth/modules/wireguard/templates/wireguard_delete_client.html:14
msgid "Are you sure that you want to delete this client?"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_delete_server.html:29
+#: plinth/modules/wireguard/templates/wireguard_delete_server.html:14
msgid "Are you sure that you want to delete this server?"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_edit_client.html:34
+#: plinth/modules/wireguard/templates/wireguard_edit_client.html:19
#, fuzzy
#| msgid "IRC Client (Quassel)"
msgid "Update Client"
msgstr "IRC CLIENT (QUASSEL)"
-#: plinth/modules/wireguard/templates/wireguard_edit_server.html:34
+#: plinth/modules/wireguard/templates/wireguard_edit_server.html:19
#, fuzzy
#| msgid "Create Connection"
msgid "Update Connection"
msgstr "CREATE CONNECTION"
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:27
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:12
#, python-format
msgid ""
"%(box_name)s will allow this client to connect to it. Ensure that the client "
"is configured with the following information."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:35
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:20
msgid "Client public key:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:39
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:24
msgid "IP address to use for client:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:43
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:46
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:28
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:31
msgid "Pre-shared key:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:47
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:32
#, fuzzy
#| msgid "Server domain"
msgid "Server endpoints:"
msgstr "SERVER DOMAIN"
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:55
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:42
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:40
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:27
#, fuzzy
#| msgid "Server port"
msgid "Server public key:"
msgstr "SERVER PORT"
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:65
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:64
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:50
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:49
msgid "Data transmitted:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:69
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:68
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:54
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:53
msgid "Data received:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:73
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:72
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:58
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:57
msgid "Latest handshake:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:29
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:14
#, python-format
msgid ""
"%(box_name)s will attempt to reach a WireGuard server with the following "
@@ -6897,155 +7010,155 @@ msgid ""
"public key and IP address."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:38
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:23
#, fuzzy
#| msgid "Server domain"
msgid "Server endpoint:"
msgstr "SERVER DOMAIN"
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:50
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:35
msgid "Public key of this machine:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:54
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:39
msgid "IP address of this machine:"
msgstr ""
-#: plinth/modules/wireguard/views.py:64
+#: plinth/modules/wireguard/views.py:46
msgid "Added new client."
msgstr ""
-#: plinth/modules/wireguard/views.py:79 plinth/modules/wireguard/views.py:138
+#: plinth/modules/wireguard/views.py:61 plinth/modules/wireguard/views.py:120
#, fuzzy
#| msgid "This service already exists"
msgid "Client with public key already exists"
msgstr "THIS SERVICE ALREADY EXISTS"
-#: plinth/modules/wireguard/views.py:92
+#: plinth/modules/wireguard/views.py:74
#, fuzzy
#| msgid "Email Client (Roundcube)"
msgid "Allowed Client"
msgstr "EMAIL CLIENT (ROUNDCUBE)"
-#: plinth/modules/wireguard/views.py:114
+#: plinth/modules/wireguard/views.py:96
#, fuzzy
#| msgid "Update setup"
msgid "Updated client."
msgstr "UPDATE SETUP"
-#: plinth/modules/wireguard/views.py:119
+#: plinth/modules/wireguard/views.py:101
#, fuzzy
#| msgid "Email Client (Roundcube)"
msgid "Modify Client"
msgstr "EMAIL CLIENT (ROUNDCUBE)"
-#: plinth/modules/wireguard/views.py:152
+#: plinth/modules/wireguard/views.py:134
#, fuzzy
#| msgid "Delete"
msgid "Delete Allowed Client"
msgstr "DELETE"
-#: plinth/modules/wireguard/views.py:161
+#: plinth/modules/wireguard/views.py:143
#, fuzzy
#| msgid "{name} deleted."
msgid "Client deleted."
msgstr "{name} DELETED."
-#: plinth/modules/wireguard/views.py:163
+#: plinth/modules/wireguard/views.py:145
#, fuzzy
#| msgid "packages not found"
msgid "Client not found"
msgstr "PACKAGES NOT FOUND"
-#: plinth/modules/wireguard/views.py:173
+#: plinth/modules/wireguard/views.py:155
#, fuzzy
#| msgid "Added custom service"
msgid "Added new server."
msgstr "ADDED CUSTOM SERVICE"
-#: plinth/modules/wireguard/views.py:194
+#: plinth/modules/wireguard/views.py:176
#, fuzzy
#| msgid "Connection Type"
msgid "Connection to Server"
msgstr "CONNECTION TYPE"
-#: plinth/modules/wireguard/views.py:212
+#: plinth/modules/wireguard/views.py:194
#, fuzzy
#| msgid "Update setup"
msgid "Updated server."
msgstr "UPDATE SETUP"
-#: plinth/modules/wireguard/views.py:217
+#: plinth/modules/wireguard/views.py:199
#, fuzzy
#| msgid "Edit Connection"
msgid "Modify Connection to Server"
msgstr "EDIT CONNECTION"
-#: plinth/modules/wireguard/views.py:254
+#: plinth/modules/wireguard/views.py:236
#, fuzzy
#| msgid "Delete Connection"
msgid "Delete Connection to Server"
msgstr "DELETE CONNECTION"
-#: plinth/modules/wireguard/views.py:274
+#: plinth/modules/wireguard/views.py:256
#, fuzzy
#| msgid "{name} deleted."
msgid "Server deleted."
msgstr "{name} DELETED."
-#: plinth/network.py:42
+#: plinth/network.py:27
msgid "PPPoE"
msgstr "PPPOE"
-#: plinth/network.py:43
+#: plinth/network.py:28
msgid "Generic"
msgstr ""
-#: plinth/package.py:137
+#: plinth/package.py:122
msgid "Error during installation"
msgstr ""
-#: plinth/package.py:159
+#: plinth/package.py:144
#, fuzzy
#| msgid "Installation"
msgid "installing"
msgstr "INSTALLATION"
-#: plinth/package.py:161
+#: plinth/package.py:146
msgid "downloading"
msgstr ""
-#: plinth/package.py:163
+#: plinth/package.py:148
#, fuzzy
#| msgid "Setting unchanged"
msgid "media change"
msgstr "SETTING UNCHANGED"
-#: plinth/package.py:165
+#: plinth/package.py:150
#, fuzzy, python-brace-format
#| msgid "Configuration"
msgid "configuration file: {file}"
msgstr "CONFIGURATION"
-#: plinth/templates/403.html:25
+#: plinth/templates/403.html:10
msgid "403 Forbidden"
msgstr ""
-#: plinth/templates/403.html:29
+#: plinth/templates/403.html:14
#, python-format
msgid "You don't have permission to access %(request_path)s on this server."
msgstr ""
-#: plinth/templates/404.html:25
+#: plinth/templates/404.html:10
msgid "404"
msgstr "404"
-#: plinth/templates/404.html:28
+#: plinth/templates/404.html:13
#, python-format
msgid "Requested page %(request_path)s was not found."
msgstr "REQUESTED PAGE %(request_path)s WAS NOT FOUND."
-#: plinth/templates/404.html:34
+#: plinth/templates/404.html:19
#, fuzzy
#| msgid ""
#| "If you believe this missing page should exist, please file a bug at the "
@@ -7060,11 +7173,11 @@ msgstr ""
"PLINTH PROJECT ISSUE "
"TRACKER."
-#: plinth/templates/500.html:25
+#: plinth/templates/500.html:10
msgid "500"
msgstr "500"
-#: plinth/templates/500.html:29
+#: plinth/templates/500.html:14
#, fuzzy, python-format
#| msgid ""
#| "This is an internal error and not something you caused or can fix. "
@@ -7080,154 +7193,154 @@ msgstr ""
"REPORT THE ERROR ON THE BUG TRACKER SO WE CAN FIX IT."
-#: plinth/templates/app.html:47
+#: plinth/templates/app-header.html:22
+msgid "Installation"
+msgstr "INSTALLATION"
+
+#: plinth/templates/app.html:32
#, fuzzy, python-format
#| msgid "Service discovery server is running"
msgid "Service %(service_name)s is running."
msgstr "SERVICE DISCOVERY SERVER IS RUNNING"
-#: plinth/templates/app.html:52
+#: plinth/templates/app.html:37
#, fuzzy, python-format
#| msgid "Service discovery server is not running"
msgid "Service %(service_name)s is not running."
msgstr "SERVICE DISCOVERY SERVER IS NOT RUNNING"
-#: plinth/templates/base.html:50
+#: plinth/templates/base.html:35
#, fuzzy, python-format
#| msgid "Plinth administrative interface for the %(box_name)s"
msgid "Core functionality and web interface for %(box_name)s"
msgstr "PLINTH ADMINISTRATIVE INTERFACE FOR THE %(box_name)s"
-#: plinth/templates/base.html:96
+#: plinth/templates/base.html:81
msgid "Toggle navigation"
msgstr "TOGGLE NAVIGATION"
-#: plinth/templates/base.html:120 plinth/templates/base.html:123
+#: plinth/templates/base.html:105 plinth/templates/base.html:108
msgid "Home"
msgstr ""
-#: plinth/templates/base.html:128 plinth/templates/base.html:132
+#: plinth/templates/base.html:113 plinth/templates/base.html:117
msgid "Apps"
msgstr "APPS"
-#: plinth/templates/base.html:137 plinth/templates/base.html:141
+#: plinth/templates/base.html:122 plinth/templates/base.html:126
msgid "System"
msgstr "SYSTEM"
-#: plinth/templates/base.html:173 plinth/templates/base.html:174
+#: plinth/templates/base.html:158 plinth/templates/base.html:159
msgid "Change password"
msgstr "CHANGE PASSWORD"
-#: plinth/templates/base.html:181 plinth/templates/base.html:182
+#: plinth/templates/base.html:166 plinth/templates/base.html:167
#, fuzzy
#| msgid "Restart Now"
msgid "Restart"
msgstr "RESTART NOW"
-#: plinth/templates/base.html:187 plinth/templates/base.html:188
+#: plinth/templates/base.html:172 plinth/templates/base.html:173
#, fuzzy
#| msgid "Shut Down Now"
msgid "Shut down"
msgstr "SHUT DOWN NOW"
-#: plinth/templates/base.html:195 plinth/templates/base.html:196
-#: plinth/templates/base.html:220 plinth/templates/base.html:222
+#: plinth/templates/base.html:180 plinth/templates/base.html:181
+#: plinth/templates/base.html:205 plinth/templates/base.html:207
msgid "Log out"
msgstr "LOG OUT"
-#: plinth/templates/base.html:204 plinth/templates/base.html:207
+#: plinth/templates/base.html:189 plinth/templates/base.html:192
#, fuzzy
#| msgid "Language"
msgid "Select language"
msgstr "LANGUAGE"
-#: plinth/templates/base.html:212 plinth/templates/base.html:214
+#: plinth/templates/base.html:197 plinth/templates/base.html:199
msgid "Log in"
msgstr "LOG IN"
-#: plinth/templates/clients.html:32
+#: plinth/templates/clients.html:17
msgid "Web"
msgstr ""
-#: plinth/templates/clients.html:57
+#: plinth/templates/clients.html:42
#, fuzzy
#| msgid "IRC Client (Quassel)"
msgid "Desktop"
msgstr "IRC CLIENT (QUASSEL)"
-#: plinth/templates/clients.html:68
+#: plinth/templates/clients.html:53
msgid "GNU/Linux"
msgstr ""
-#: plinth/templates/clients.html:70
+#: plinth/templates/clients.html:55
msgid "Windows"
msgstr ""
-#: plinth/templates/clients.html:72
+#: plinth/templates/clients.html:57
msgid "macOS"
msgstr ""
-#: plinth/templates/clients.html:88
+#: plinth/templates/clients.html:73
#, fuzzy
#| msgid "Email Client (Roundcube)"
msgid "Mobile"
msgstr "EMAIL CLIENT (ROUNDCUBE)"
-#: plinth/templates/clients.html:99
+#: plinth/templates/clients.html:84
msgid "Play Store"
msgstr ""
-#: plinth/templates/clients.html:101
+#: plinth/templates/clients.html:86
msgid "F-Droid"
msgstr ""
-#: plinth/templates/clients.html:103
+#: plinth/templates/clients.html:88
#, fuzzy
#| msgid "reStore"
msgid "App Store"
msgstr "RESTORE"
-#: plinth/templates/clients.html:119
+#: plinth/templates/clients.html:104
msgid "Package"
msgstr "PACKAGE"
-#: plinth/templates/clients.html:126
+#: plinth/templates/clients.html:111
msgid "Debian:"
msgstr ""
-#: plinth/templates/clients.html:129
+#: plinth/templates/clients.html:114
msgid "Homebrew:"
msgstr ""
-#: plinth/templates/clients.html:132
+#: plinth/templates/clients.html:117
msgid "RPM:"
msgstr ""
-#: plinth/templates/first_setup.html:39
+#: plinth/templates/first_setup.html:24
#, python-format
msgid ""
"Please wait for %(box_name)s to finish installation. You can start using "
"your %(box_name)s once it is done."
msgstr ""
-#: plinth/templates/header.html:36
-msgid "Installation"
-msgstr "INSTALLATION"
-
-#: plinth/templates/index.html:37
+#: plinth/templates/index.html:22
#, python-format
msgid ""
"Enable some applications to add shortcuts to "
"this page."
msgstr ""
-#: plinth/templates/index.html:59
+#: plinth/templates/index.html:44
#, fuzzy
#| msgid "Configure"
msgid "Configure »"
msgstr "CONFIGURE"
-#: plinth/templates/index.html:115
+#: plinth/templates/index.html:100
#, python-format
msgid ""
"%(box_name)s, a Debian pure blend, is a 100%% free software self-hosting web "
@@ -7235,7 +7348,7 @@ msgid ""
"communication tools respecting your privacy and data ownership."
msgstr ""
-#: plinth/templates/index.html:124
+#: plinth/templates/index.html:109
#, python-format
msgid ""
"This portal is a part of the %(box_name)s web interface. %(box_name)s is "
@@ -7243,62 +7356,62 @@ msgid ""
"Version 3 or later."
msgstr ""
-#: plinth/templates/index.html:144
+#: plinth/templates/index.html:129
msgid "Homepage"
msgstr ""
-#: plinth/templates/index.html:147
+#: plinth/templates/index.html:132
msgid "Source Code"
msgstr ""
-#: plinth/templates/index.html:150
+#: plinth/templates/index.html:135
msgid "Donate"
msgstr ""
-#: plinth/templates/index.html:154
+#: plinth/templates/index.html:139
#, fuzzy
#| msgid "FreedomBox Manual"
msgid "FreedomBox Foundation"
msgstr "FREEDOMBOX MANUAL"
-#: plinth/templates/index.html:161
+#: plinth/templates/index.html:146
msgid "IRC Chatroom"
msgstr ""
-#: plinth/templates/index.html:166
+#: plinth/templates/index.html:151
msgid "Mailing list"
msgstr ""
-#: plinth/templates/internal-zone.html:26
+#: plinth/templates/internal-zone.html:11
#, fuzzy, python-format
#| msgid "Service discovery server is not running"
msgid "%(service_name)s is available only on internal networks."
msgstr "SERVICE DISCOVERY SERVER IS NOT RUNNING"
-#: plinth/templates/internal-zone.html:32
+#: plinth/templates/internal-zone.html:17
msgid "Currently there are no network interfaces configured as internal."
msgstr ""
-#: plinth/templates/internal-zone.html:34
+#: plinth/templates/internal-zone.html:19
#, python-format
msgid ""
"Currently the following network interfaces are configured as internal: "
"%(interface_list)s"
msgstr ""
-#: plinth/templates/notifications-dropdown.html:26
+#: plinth/templates/notifications-dropdown.html:11
#, fuzzy
#| msgid "No certficate"
msgid "Notifications"
msgstr "NO CERTFICATE"
-#: plinth/templates/port-forwarding-info.html:23
+#: plinth/templates/port-forwarding-info.html:8
#, fuzzy
#| msgid "Enable Tor"
msgid "Port Forwarding"
msgstr "ENABLE TOR"
-#: plinth/templates/port-forwarding-info.html:26
+#: plinth/templates/port-forwarding-info.html:11
#, python-format
msgid ""
"If your FreedomBox is behind a router, you will need to set up port "
@@ -7306,71 +7419,71 @@ msgid ""
"%(service_name)s:"
msgstr ""
-#: plinth/templates/setup.html:51
+#: plinth/templates/setup.html:36
#, fuzzy
#| msgid "Installation"
msgid "Install this application?"
msgstr "INSTALLATION"
-#: plinth/templates/setup.html:55
+#: plinth/templates/setup.html:40
msgid "This application needs an update. Update now?"
msgstr ""
-#: plinth/templates/setup.html:66
+#: plinth/templates/setup.html:51
msgid ""
"Another installation or upgrade is already running. Please wait for a few "
"moments before trying again."
msgstr ""
-#: plinth/templates/setup.html:73
+#: plinth/templates/setup.html:58
msgid "This application is currently not available in your distribution."
msgstr ""
-#: plinth/templates/setup.html:87
+#: plinth/templates/setup.html:72
msgid "Install"
msgstr "INSTALL"
-#: plinth/templates/setup.html:98
+#: plinth/templates/setup.html:83
msgid "Performing pre-install operation"
msgstr ""
-#: plinth/templates/setup.html:102
+#: plinth/templates/setup.html:87
msgid "Performing post-install operation"
msgstr ""
-#: plinth/templates/setup.html:107
+#: plinth/templates/setup.html:92
#, python-format
msgid "Installing %(package_names)s: %(status)s"
msgstr "INSTALLING %(package_names)s: %(status)s"
-#: plinth/templates/setup.html:117
+#: plinth/templates/setup.html:102
#, python-format
msgid "%(percentage)s%% complete"
msgstr "%(percentage)s%% COMPLETE"
-#: plinth/templates/toolbar.html:38
+#: plinth/templates/toolbar.html:23
msgid "Launch web client"
msgstr "LAUNCH WEB CLIENT"
-#: plinth/templates/toolbar.html:47
+#: plinth/templates/toolbar.html:32
#, fuzzy
#| msgid "Quassel IRC Client"
msgid "Client Apps"
msgstr "QUASSEL IRC CLIENT"
-#: plinth/views.py:179
+#: plinth/views.py:189
#, fuzzy
#| msgid "Applications"
msgid "Application enabled"
msgstr "APPLICATIONS"
-#: plinth/views.py:182
+#: plinth/views.py:192
#, fuzzy
#| msgid "Applications"
msgid "Application disabled"
msgstr "APPLICATIONS"
-#: plinth/web_framework.py:190
+#: plinth/web_framework.py:107
msgid "Gujarati"
msgstr ""
diff --git a/plinth/locale/fr/LC_MESSAGES/django.po b/plinth/locale/fr/LC_MESSAGES/django.po
index 2f265931a..f67d612b2 100644
--- a/plinth/locale/fr/LC_MESSAGES/django.po
+++ b/plinth/locale/fr/LC_MESSAGES/django.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: FreedomBox UI\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2020-02-14 21:26+0200\n"
+"POT-Creation-Date: 2020-02-24 19:12-0500\n"
"PO-Revision-Date: 2020-02-21 23:32+0000\n"
"Last-Translator: Thomas Vincent This means that devices on the Internet can reach you when you are " +"connected to the Internet. Every time you connect to the Internet with your " +"Internet Service Provider (ISP), you may get a different IP address, " +"especially after some offline time. Many ISPs offer this type of " +"connectivity. If you have a public IP address but are unsure if it changes " +"over time or not, it is safer to choose this option.
" +msgstr "" + #: plinth/modules/networks/forms.py:313 +#, python-brace-format +msgid "" +"I have a public IP address that does not change overtime (recommended)This means that devices on the Internet can reach you " +"when you are connected to the Internet. Every time you connect to the " +"Internet with your Internet Service Provider (ISP), you always get the same " +"IP address. This is the most trouble-free setup for many {box_name} services " +"but very few ISPs offer this. You may be able to get this service from your " +"ISP by making an additional payment.
" +msgstr "" + +#: plinth/modules/networks/forms.py:326 +#, python-brace-format +msgid "" +"I dont have a public IP addressThis means that " +"devices on the Internet can not reach you when you are connected to " +"the Internet. Every time you connect to the Internet with your Internet " +"Service Provider (ISP), you get an IP address that is only relevant for " +"local networks. Many ISPs offer this type of connectivity. This is the most " +"troublesome situation for hosting services at home. {box_name} provides many " +"workaround solutions but each solution has some limitations.
" +msgstr "" + +#: plinth/modules/networks/forms.py:351 msgid "Preferred router configuration" msgstr "Configuration préférée de routeur" -#: plinth/modules/networks/forms.py:318 -#, python-brace-format +#: plinth/modules/networks/forms.py:356 +#, fuzzy, python-brace-format +#| msgid "" +#| "Use DMZ feature to forward all trafficMost " +#| "routers provide a configuration setting called DMZ. This will allow the " +#| "router to forward all incoming traffic from the internet to a single IP " +#| "address such as the {box_name}'s address. First remember to configure a " +#| "static local IP address for your {box_name} in your router's " +#| "configuration.
" msgid "" -"Use DMZ feature to forward all trafficMost routers " -"provide a configuration setting called DMZ. This will allow the router to " -"forward all incoming traffic from the internet to a single IP address such " -"as the {box_name}'s address. First remember to configure a static local IP " -"address for your {box_name} in your router's configuration.
" +"Use DMZ feature to forward all traffic (recommended)Most routers provide a configuration setting called DMZ. This will allow " +"the router to forward all incoming traffic from the Internet to a single IP " +"address such as the {box_name}'s IP address. First remember to configure a " +"static local IP address for your {box_name} in your router's configuration." +"p>" msgstr "" "Utilisez la fonction de réseau isolé (DMZ) pour transférer tout le trafic
La plupart des routeurs proposent une configuration " "appelée DMZ. Celle-ci vous permet de transférer tout le trafic entrant " -"depuis Internet vers une adresse IP unique telle que l’adresse de {box_name}" -". Pensez d’abord à configurer une adresse IP locale statique pour votre " -"{box_name} dans la configuration de votre router.
" +"depuis Internet vers une adresse IP unique telle que l’adresse de " +"{box_name}. Pensez d’abord à configurer une adresse IP locale statique pour " +"votre {box_name} dans la configuration de votre router." -#: plinth/modules/networks/forms.py:332 +#: plinth/modules/networks/forms.py:368 #, python-brace-format msgid "" -"Forward Specific Traffic as needed by each applicationYou may alternatively choose to forward only specific traffic to your " "{box_name}. This is ideal if you have other servers like {box_name} in your " "network or if your router does not support DMZ feature. All applications " @@ -3579,264 +3657,270 @@ msgid "" "to be forwarded for that application to work.
" msgstr "" -#: plinth/modules/networks/forms.py:349 +#: plinth/modules/networks/forms.py:382 msgid "" -"Router is currently unconfiguredChoose this if you " +"Router is currently unconfigured
Choose this if you " "have not configured or are unable to configure the router currently and wish " "to be reminded later. Some of the other configuration steps may fail.
" msgstr "" -#: plinth/modules/networks/networks.py:43 +#: plinth/modules/networks/networks.py:32 msgid "Network Connections" msgstr "Connexions Réseau" -#: plinth/modules/networks/networks.py:59 +#: plinth/modules/networks/networks.py:46 msgid "Cannot show connection: Connection not found." msgstr "Impossible de montrer la connexion : connexion introuvable." -#: plinth/modules/networks/networks.py:94 +#: plinth/modules/networks/networks.py:81 msgid "Connection Information" msgstr "Informations sur la connexion" -#: plinth/modules/networks/networks.py:108 +#: plinth/modules/networks/networks.py:95 msgid "Cannot edit connection: Connection not found." msgstr "Impossible de modifier la connexion : connexion introuvable." -#: plinth/modules/networks/networks.py:114 +#: plinth/modules/networks/networks.py:101 msgid "This type of connection is not yet understood." msgstr "Ce type de connexion n'est pas encore intelligible." -#: plinth/modules/networks/networks.py:136 -#: plinth/modules/networks/networks.py:220 -#: plinth/modules/networks/templates/connections_edit.html:35 +#: plinth/modules/networks/networks.py:123 +#: plinth/modules/networks/networks.py:207 +#: plinth/modules/networks/templates/connections_edit.html:20 msgid "Edit Connection" msgstr "Modifier connexion" -#: plinth/modules/networks/networks.py:232 +#: plinth/modules/networks/networks.py:219 #, python-brace-format msgid "Activated connection {name}." msgstr "Connexion {name} activée." -#: plinth/modules/networks/networks.py:236 +#: plinth/modules/networks/networks.py:223 msgid "Failed to activate connection: Connection not found." msgstr "Échec de l'activation de la connexion : connexion introuvable." -#: plinth/modules/networks/networks.py:242 +#: plinth/modules/networks/networks.py:229 #, python-brace-format msgid "Failed to activate connection {name}: No suitable device is available." msgstr "" "Échec de l'activation de la connexion {name} : pas d'appareil adéquat " "disponible." -#: plinth/modules/networks/networks.py:255 +#: plinth/modules/networks/networks.py:242 #, python-brace-format msgid "Deactivated connection {name}." msgstr "Connexion {name} désactivée." -#: plinth/modules/networks/networks.py:259 +#: plinth/modules/networks/networks.py:246 msgid "Failed to de-activate connection: Connection not found." msgstr "Échec de la désactivation de la connexion : connexion introuvable." -#: plinth/modules/networks/networks.py:269 -#: plinth/modules/networks/templates/connections_list.html:62 -#: plinth/modules/networks/templates/connections_list.html:64 +#: plinth/modules/networks/networks.py:256 +#: plinth/modules/networks/templates/connections_list.html:12 +#: plinth/modules/networks/templates/connections_list.html:14 msgid "Nearby Wi-Fi Networks" msgstr "Réseaux Wi-Fi à Proximité" -#: plinth/modules/networks/networks.py:293 -#: plinth/modules/networks/templates/connections_list.html:67 -#: plinth/modules/networks/templates/connections_list.html:69 -#: plinth/modules/wireguard/templates/wireguard_add_server.html:34 +#: plinth/modules/networks/networks.py:280 +#: plinth/modules/networks/templates/connections_list.html:17 +#: plinth/modules/networks/templates/connections_list.html:19 +#: plinth/modules/wireguard/templates/wireguard_add_server.html:19 msgid "Add Connection" msgstr "Ajouter connexion" -#: plinth/modules/networks/networks.py:311 +#: plinth/modules/networks/networks.py:298 msgid "Adding New Generic Connection" msgstr "Ajout d'une nouvelle connexion générique" -#: plinth/modules/networks/networks.py:329 +#: plinth/modules/networks/networks.py:316 msgid "Adding New Ethernet Connection" msgstr "Ajouter Nouvelle Connexion Ethernet" -#: plinth/modules/networks/networks.py:347 +#: plinth/modules/networks/networks.py:334 msgid "Adding New PPPoE Connection" msgstr "Ajouter Nouvelle Connexion PPPoE" -#: plinth/modules/networks/networks.py:382 +#: plinth/modules/networks/networks.py:369 msgid "Adding New Wi-Fi Connection" msgstr "Ajouter Nouvelle Connexion Wi-Fi" -#: plinth/modules/networks/networks.py:397 +#: plinth/modules/networks/networks.py:384 #, python-brace-format msgid "Connection {name} deleted." msgstr "Connexion {name} supprimée." -#: plinth/modules/networks/networks.py:401 -#: plinth/modules/networks/networks.py:411 +#: plinth/modules/networks/networks.py:388 +#: plinth/modules/networks/networks.py:398 msgid "Failed to delete connection: Connection not found." msgstr "Échec de la suppression de la connexion : connexion introuvable." -#: plinth/modules/networks/networks.py:416 -#: plinth/modules/networks/templates/connections_delete.html:26 +#: plinth/modules/networks/networks.py:403 +#: plinth/modules/networks/templates/connections_delete.html:11 msgid "Delete Connection" msgstr "Supprimer Connexion" -#: plinth/modules/networks/networks.py:442 +#: plinth/modules/networks/networks.py:428 msgid "Router configuration type saved." msgstr "Type de configuration de routeur enregistré." -#: plinth/modules/networks/templates/connection_show.html:43 +#: plinth/modules/networks/networks.py:474 +#, fuzzy +#| msgid "Router configuration type saved." +msgid "Internet connection type saved." +msgstr "Type de configuration de routeur enregistré." + +#: plinth/modules/networks/templates/connection_show.html:28 msgid "Edit connection" msgstr "Modifier Connexion" -#: plinth/modules/networks/templates/connection_show.html:43 -#: plinth/modules/wireguard/templates/wireguard_show_client.html:83 -#: plinth/modules/wireguard/templates/wireguard_show_server.html:84 -#: plinth/templates/base.html:167 plinth/templates/base.html:168 +#: plinth/modules/networks/templates/connection_show.html:28 +#: plinth/modules/wireguard/templates/wireguard_show_client.html:68 +#: plinth/modules/wireguard/templates/wireguard_show_server.html:69 +#: plinth/templates/base.html:152 plinth/templates/base.html:153 msgid "Edit" msgstr "Modifier" -#: plinth/modules/networks/templates/connection_show.html:50 -#: plinth/modules/networks/templates/connections_list.html:90 +#: plinth/modules/networks/templates/connection_show.html:35 +#: plinth/modules/networks/templates/connections_list.html:40 msgid "Deactivate" msgstr "Désactiver" -#: plinth/modules/networks/templates/connection_show.html:57 -#: plinth/modules/networks/templates/connections_list.html:98 +#: plinth/modules/networks/templates/connection_show.html:42 +#: plinth/modules/networks/templates/connections_list.html:48 msgid "Activate" msgstr "Activer" -#: plinth/modules/networks/templates/connection_show.html:63 +#: plinth/modules/networks/templates/connection_show.html:48 msgid "Delete connection" msgstr "Supprimer Connexion" -#: plinth/modules/networks/templates/connection_show.html:66 -#: plinth/modules/networks/templates/connections_diagram.html:73 -#: plinth/modules/networks/templates/connections_diagram.html:76 -#: plinth/modules/networks/templates/connections_diagram.html:105 -#: plinth/modules/networks/templates/connections_diagram.html:127 +#: plinth/modules/networks/templates/connection_show.html:51 +#: plinth/modules/networks/templates/connections_diagram.html:58 +#: plinth/modules/networks/templates/connections_diagram.html:61 +#: plinth/modules/networks/templates/connections_diagram.html:90 +#: plinth/modules/networks/templates/connections_diagram.html:112 msgid "Connection" msgstr "Connexion" -#: plinth/modules/networks/templates/connection_show.html:71 +#: plinth/modules/networks/templates/connection_show.html:56 msgid "Primary connection" msgstr "Connexion primaire" -#: plinth/modules/networks/templates/connection_show.html:73 -#: plinth/modules/networks/templates/connection_show.html:217 -#: plinth/modules/networks/templates/connection_show.html:256 +#: plinth/modules/networks/templates/connection_show.html:58 +#: plinth/modules/networks/templates/connection_show.html:202 +#: plinth/modules/networks/templates/connection_show.html:241 msgid "yes" msgstr "oui" -#: plinth/modules/networks/templates/connection_show.html:84 -#: plinth/modules/storage/templates/storage.html:40 +#: plinth/modules/networks/templates/connection_show.html:69 +#: plinth/modules/storage/templates/storage.html:25 msgid "Device" msgstr "Appareil" -#: plinth/modules/networks/templates/connection_show.html:88 +#: plinth/modules/networks/templates/connection_show.html:73 msgid "State" msgstr "État" -#: plinth/modules/networks/templates/connection_show.html:93 +#: plinth/modules/networks/templates/connection_show.html:78 msgid "State reason" msgstr "Explication sur l'état" -#: plinth/modules/networks/templates/connection_show.html:102 +#: plinth/modules/networks/templates/connection_show.html:87 msgid "MAC address" msgstr "Adresse MAC" -#: plinth/modules/networks/templates/connection_show.html:106 +#: plinth/modules/networks/templates/connection_show.html:91 msgid "Interface" msgstr "Interface" -#: plinth/modules/networks/templates/connection_show.html:110 -#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:33 -#: plinth/modules/snapshot/templates/snapshot_manage.html:45 -#: plinth/modules/snapshot/templates/snapshot_rollback.html:41 +#: plinth/modules/networks/templates/connection_show.html:95 +#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:18 +#: plinth/modules/snapshot/templates/snapshot_manage.html:30 +#: plinth/modules/snapshot/templates/snapshot_rollback.html:26 msgid "Description" msgstr "Description" -#: plinth/modules/networks/templates/connection_show.html:116 +#: plinth/modules/networks/templates/connection_show.html:101 msgid "Physical Link" msgstr "Lien Physique" -#: plinth/modules/networks/templates/connection_show.html:121 +#: plinth/modules/networks/templates/connection_show.html:106 msgid "Link state" msgstr "État du lien" -#: plinth/modules/networks/templates/connection_show.html:125 +#: plinth/modules/networks/templates/connection_show.html:110 msgid "cable is connected" msgstr "Le câble est connecté" -#: plinth/modules/networks/templates/connection_show.html:128 +#: plinth/modules/networks/templates/connection_show.html:113 msgid "please check cable" msgstr "Vérifier le câble" -#: plinth/modules/networks/templates/connection_show.html:133 -#: plinth/modules/networks/templates/connection_show.html:149 +#: plinth/modules/networks/templates/connection_show.html:118 +#: plinth/modules/networks/templates/connection_show.html:134 msgid "Speed" msgstr "Vitesse" -#: plinth/modules/networks/templates/connection_show.html:135 +#: plinth/modules/networks/templates/connection_show.html:120 #, python-format msgid "%(ethernet_speed)s Mbit/s" msgstr "%(ethernet_speed)s Mbit/s" -#: plinth/modules/networks/templates/connection_show.html:151 +#: plinth/modules/networks/templates/connection_show.html:136 #, python-format msgid "%(wireless_bitrate)s Mbit/s" msgstr "%(wireless_bitrate)s Mbit/s" -#: plinth/modules/networks/templates/connection_show.html:163 +#: plinth/modules/networks/templates/connection_show.html:148 msgid "Signal strength" msgstr "Force du Signal" -#: plinth/modules/networks/templates/connection_show.html:181 +#: plinth/modules/networks/templates/connection_show.html:166 msgid "IPv4" msgstr "IPv4" -#: plinth/modules/networks/templates/connection_show.html:186 -#: plinth/modules/networks/templates/connection_show.html:227 -#: plinth/modules/shadowsocks/forms.py:64 +#: plinth/modules/networks/templates/connection_show.html:171 +#: plinth/modules/networks/templates/connection_show.html:212 +#: plinth/modules/shadowsocks/forms.py:49 msgid "Method" msgstr "Méthode" -#: plinth/modules/networks/templates/connection_show.html:193 -#: plinth/modules/networks/templates/connection_show.html:234 +#: plinth/modules/networks/templates/connection_show.html:178 +#: plinth/modules/networks/templates/connection_show.html:219 msgid "IP address" msgstr "Adresse IP" -#: plinth/modules/networks/templates/connection_show.html:209 -#: plinth/modules/networks/templates/connection_show.html:248 +#: plinth/modules/networks/templates/connection_show.html:194 +#: plinth/modules/networks/templates/connection_show.html:233 msgid "DNS server" msgstr "Serveur DNS" -#: plinth/modules/networks/templates/connection_show.html:216 -#: plinth/modules/networks/templates/connection_show.html:255 -#: plinth/modules/storage/forms.py:156 +#: plinth/modules/networks/templates/connection_show.html:201 +#: plinth/modules/networks/templates/connection_show.html:240 +#: plinth/modules/storage/forms.py:141 msgid "Default" msgstr "Défaut" -#: plinth/modules/networks/templates/connection_show.html:222 +#: plinth/modules/networks/templates/connection_show.html:207 msgid "IPv6" msgstr "IPv6" -#: plinth/modules/networks/templates/connection_show.html:263 +#: plinth/modules/networks/templates/connection_show.html:248 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:38 plinth/modules/security/views.py:47 +#: plinth/modules/networks/templates/connection_show.html:251 +#: plinth/modules/security/__init__.py:45 msgid "Security" msgstr "Sécurité" -#: plinth/modules/networks/templates/connection_show.html:271 -#: plinth/modules/networks/templates/connection_show.html:291 -#: plinth/modules/networks/templates/connection_show.html:310 +#: plinth/modules/networks/templates/connection_show.html:256 +#: plinth/modules/networks/templates/connection_show.html:276 +#: plinth/modules/networks/templates/connection_show.html:295 msgid "Firewall zone" msgstr "Zone pare-feu" -#: plinth/modules/networks/templates/connection_show.html:280 +#: plinth/modules/networks/templates/connection_show.html:265 msgid "" "This interface should be connected to a local network/machine. If you " "connect this interface to a public network, services meant to be available " @@ -3847,7 +3931,7 @@ msgstr "" "accessibilité en interne deviendront accessible depuis l'extérieur. C'est " "une faille de sécurité." -#: plinth/modules/networks/templates/connection_show.html:300 +#: plinth/modules/networks/templates/connection_show.html:285 msgid "" "This interface should receive your Internet connection. If you connect it to " "a local network/machine, many services meant to available only internally " @@ -3857,7 +3941,7 @@ msgstr "" "à une machine ou un réseau locaux, beaucoup de services conçus pour un usage " "interne ne seront pas disponibles." -#: plinth/modules/networks/templates/connection_show.html:319 +#: plinth/modules/networks/templates/connection_show.html:304 #, python-format msgid "" "This interface is not maintained by %(box_name)s. Its security status is " @@ -3870,73 +3954,193 @@ msgstr "" "seront pas disponibles sur cette interface. Il est recommandé de désactiver/" "supprimer cette connexion et de la reconfigurer." -#: plinth/modules/networks/templates/connections_create.html:34 +#: plinth/modules/networks/templates/connections_create.html:19 msgid "Create Connection" msgstr "Créer Connexion" -#: plinth/modules/networks/templates/connections_delete.html:29 +#: plinth/modules/networks/templates/connections_delete.html:14 #, python-format msgid "Delete connection %(name)s permanently?" msgstr "Supprimer la connexion %(name)s de façon permanente ?" -#: plinth/modules/networks/templates/connections_diagram.html:65 +#: plinth/modules/networks/templates/connections_diagram.html:50 msgid "Internet" msgstr "Internet" -#: plinth/modules/networks/templates/connections_diagram.html:70 -#: plinth/modules/networks/templates/connections_diagram.html:102 +#: plinth/modules/networks/templates/connections_diagram.html:55 +#: plinth/modules/networks/templates/connections_diagram.html:87 msgid "Spacing" msgstr "Espacement" -#: plinth/modules/networks/templates/connections_diagram.html:83 -#: plinth/modules/networks/templates/connections_diagram.html:113 -#: plinth/network.py:40 +#: plinth/modules/networks/templates/connections_diagram.html:68 +#: plinth/modules/networks/templates/connections_diagram.html:98 +#: plinth/network.py:25 msgid "Ethernet" msgstr "Ethernet" -#: plinth/modules/networks/templates/connections_diagram.html:86 -#: plinth/modules/networks/templates/connections_diagram.html:116 -#: plinth/network.py:41 +#: plinth/modules/networks/templates/connections_diagram.html:71 +#: plinth/modules/networks/templates/connections_diagram.html:101 +#: plinth/network.py:26 msgid "Wi-Fi" msgstr "Wi-Fi" -#: plinth/modules/networks/templates/connections_diagram.html:89 +#: plinth/modules/networks/templates/connections_diagram.html:74 #, python-format msgid "Show connection %(connection.name)s" msgstr "Montrer la connexion %(connection.name)s" -#: plinth/modules/networks/templates/connections_diagram.html:119 +#: plinth/modules/networks/templates/connections_diagram.html:104 #, python-format msgid "Show connection %(name)s" msgstr "Montrer la connexion %(name)s" -#: plinth/modules/networks/templates/connections_diagram.html:131 +#: plinth/modules/networks/templates/connections_diagram.html:116 msgid "Computer" msgstr "Machine" -#: plinth/modules/networks/templates/connections_list.html:58 +#: plinth/modules/networks/templates/connections_list.html:8 msgid "Connections" msgstr "Connexions" -#: plinth/modules/networks/templates/connections_list.html:79 +#: plinth/modules/networks/templates/connections_list.html:29 #, python-format msgid "Delete connection %(name)s" msgstr "Supprimer la connexion %(name)s" -#: plinth/modules/networks/templates/connections_list.html:104 +#: plinth/modules/networks/templates/connections_list.html:54 msgid "Active" msgstr "Actif" -#: plinth/modules/networks/templates/connections_list.html:107 +#: plinth/modules/networks/templates/connections_list.html:57 msgid "Inactive" msgstr "Inactif" -#: plinth/modules/networks/templates/connections_list.html:124 +#: plinth/modules/networks/templates/connections_type_select.html:19 +msgid "Create..." +msgstr "Créer..." + +#: plinth/modules/networks/templates/internet_connectivity_content.html:10 +msgid "What Type Of Internet Connection Do You Have?" +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_content.html:16 +#, fuzzy +#| msgid "" +#| "The following best describes how your %(box_name)s is connected in your " +#| "network. This information is used only to suggest necessary configuration " +#| "actions." +msgid "" +"Select an option that best describes the type of Internet connection. This " +"information is used only to guide you with further setup." +msgstr "" +"Les informations suivantes décrivent au mieux comment votre %(box_name)s est " +"connectée à votre réseau. Ces informations ne sont utilisées que pour " +"suggérer des actions de configuration nécessaires." + +#: plinth/modules/networks/templates/internet_connectivity_firstboot.html:18 +#: plinth/modules/networks/templates/router_configuration_firstboot.html:18 +msgid "Skip this step" +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_firstboot.html:19 +#: plinth/modules/networks/templates/router_configuration_firstboot.html:19 +msgid "Next" +msgstr "Suivant" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:9 +#, fuzzy +#| msgid "Connection Type" +msgid "Your Internet Connection Type" +msgstr "Type de Connexion" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:14 +#, fuzzy +#| msgid "" +#| "The following best describes how your %(box_name)s is connected in your " +#| "network. This information is used only to suggest necessary configuration " +#| "actions." +msgid "" +"The following best describes the type of Internet connection provided by " +"your ISP. This information is only used to suggest you necessary " +"configuration actions." +msgstr "" +"Les informations suivantes décrivent au mieux comment votre %(box_name)s est " +"connectée à votre réseau. Ces informations ne sont utilisées que pour " +"suggérer des actions de configuration nécessaires." + +#: plinth/modules/networks/templates/internet_connectivity_main.html:23 +msgid "My ISP provides a public IP address that does not change over time." +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:27 +msgid "My ISP provides a public IP address that may change over time." +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:31 +msgid "My ISP does not provide a public IP address." +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:37 +#: plinth/modules/networks/templates/router_configuration_main.html:29 +msgid "Update..." +msgstr "Actualiser…" + +#: plinth/modules/networks/templates/router_configuration_content.html:10 +#, python-format +msgid "Setup %(box_name)s Behind a Router" +msgstr "Installer %(box_name)s derrière un routeur" + +#: plinth/modules/networks/templates/router_configuration_content.html:16 +#, python-format +msgid "" +"Your %(box_name)s gets its internet connection from your router via Wi-Fi or " +"Ethernet cable. This is a typical home setup." +msgstr "" +"Votre %(box_name)s tire son accès à Internet de votre routeur grâce au WiFi " +"ou à un câble Ethernet. Il s’agit de la configuration domestique classique." + +#: plinth/modules/networks/templates/router_configuration_content.html:23 +#, python-format +msgid "" +"With this setup, any device on the internet trying to reach your " +"%(box_name)s will have to go through your router. The router will need to be " +"configured to forward all traffic it receives so that %(box_name)s provides " +"the services." +msgstr "" + +#: plinth/modules/networks/templates/router_configuration_content.html:32 +msgid "" +"If you don't have control over your router, choose not to configure it. To " +"see options to overcome this limitation, choose 'no public address' option " +"in Internet connection type selection." +msgstr "" + +#: plinth/modules/networks/templates/router_configuration_content.html:39 +msgid "Choose How You Wish to Configure Your Router" +msgstr "" + +#: plinth/modules/networks/templates/router_configuration_content.html:42 +msgid "" +"You will need to login to your router's administration console provided by " +"the router. This may look like one of the following:" +msgstr "" + +#: plinth/modules/networks/templates/router_configuration_content.html:54 +msgid "" +"The username and password is configured by you when you first setup the " +"router. For many routers, this information is printed at the back of the " +"router. If you don't remember the credentials or the IP address of the " +"router, you may decide to reset it and set it up freshly. Lookup your router " +"model number and search online for the router's manual. This will provide " +"full instructions on how to perform this task." +msgstr "" + +#: plinth/modules/networks/templates/router_configuration_main.html:9 #, python-format msgid "%(box_name)s Internet Connectivity" msgstr "Connectivité à Internet de %(box_name)s" -#: plinth/modules/networks/templates/connections_list.html:129 +#: plinth/modules/networks/templates/router_configuration_main.html:15 #, python-format msgid "" "The following best describes how your %(box_name)s is connected in your " @@ -3947,92 +4151,19 @@ msgstr "" "connectée à votre réseau. Ces informations ne sont utilisées que pour " "suggérer des actions de configuration nécessaires." -#: plinth/modules/networks/templates/connections_list.html:137 -#, python-format +#: plinth/modules/networks/templates/router_configuration_main.html:23 +#, fuzzy, python-format +#| msgid "" +#| "Your %(box_name)s gets its internet from your Router via WiFi or Ethernet " +#| "cable. This is a typical home setup." msgid "" -"Your %(box_name)s gets its internet from your Router via WiFi or Ethernet " +"Your %(box_name)s gets its Internet from your Router via Wi-Fi or Ethernet " "cable. This is a typical home setup." msgstr "" "Votre %(box_name)s tire son accès à Internet de votre routeur grâce au WiFi " "ou à un câble Ethernet. Il s’agit de la configuration domestique classique." -#: plinth/modules/networks/templates/connections_list.html:145 -#: plinth/modules/networks/templates/connections_list.html:147 -msgid "Update..." -msgstr "Actualiser…" - -#: plinth/modules/networks/templates/connections_type_select.html:34 -msgid "Create..." -msgstr "Créer..." - -#: plinth/modules/networks/templates/router_configuration_content.html:25 -#, python-format -msgid "Setup %(box_name)s Behind a Router" -msgstr "Installer %(box_name)s derrière un routeur" - -#: plinth/modules/networks/templates/router_configuration_content.html:31 -#, python-format -msgid "" -"Your %(box_name)s gets its internet connection from your router via Wi-Fi or " -"Ethernet cable. This is a typical home setup." -msgstr "" -"Votre %(box_name)s tire son accès à Internet de votre routeur grâce au WiFi " -"ou à un câble Ethernet. Il s’agit de la configuration domestique classique." - -#: plinth/modules/networks/templates/router_configuration_content.html:38 -#, python-format -msgid "" -"With this setup, any device on the internet trying to reach your " -"%(box_name)s will have to go through your router. The router will need to be " -"configured to forward all traffic it receives so that %(box_name)s provides " -"the services." -msgstr "" - -#: plinth/modules/networks/templates/router_configuration_content.html:47 -msgid "" -"If you don't have control over your router, choose not to configure it. To " -"see options, to overcome this limitation, choose 'no public address' option " -"in Internet connection type selection." -msgstr "" - -#: plinth/modules/networks/templates/router_configuration_content.html:54 -msgid "Choose How You Wish to Configure Your Router" -msgstr "" - -#: plinth/modules/networks/templates/router_configuration_content.html:57 -msgid "" -"You will need to login to your router's administration console provided by " -"the router. This may look like one of the following:" -msgstr "" - -#: plinth/modules/networks/templates/router_configuration_content.html:69 -msgid "" -"The username and password is configured by you when you first setup the " -"router. For many routers, this information is printed at the back of the " -"router. If you don't remember the credentials or the IP address of the " -"router, you may decide to reset it and set it up freshly. Lookup your router " -"model number and search online for the router's manual. This will provide " -"full instructions on how to perform this task." -msgstr "" - -#: plinth/modules/networks/templates/router_configuration_firstboot.html:33 -msgid "skip this step" -msgstr "" - -#: plinth/modules/networks/templates/router_configuration_firstboot.html:35 -msgid "Next" -msgstr "Suivant" - -#: plinth/modules/openvpn/__init__.py:39 plinth/modules/openvpn/manifest.py:33 -msgid "OpenVPN" -msgstr "OpenVPN" - -#: plinth/modules/openvpn/__init__.py:43 -#: plinth/modules/wireguard/__init__.py:40 -msgid "Virtual Private Network" -msgstr "Réseau privé virtuel" - -#: plinth/modules/openvpn/__init__.py:47 +#: plinth/modules/openvpn/__init__.py:26 #, python-brace-format msgid "" "Virtual Private Network (VPN) is a technique for securely connecting two " @@ -4049,7 +4180,16 @@ 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:79 +#: plinth/modules/openvpn/__init__.py:49 plinth/modules/openvpn/manifest.py:18 +msgid "OpenVPN" +msgstr "OpenVPN" + +#: plinth/modules/openvpn/__init__.py:50 +#: plinth/modules/wireguard/__init__.py:53 +msgid "Virtual Private Network" +msgstr "Réseau privé virtuel" + +#: plinth/modules/openvpn/__init__.py:61 #, python-brace-format msgid "" "Download Profile" @@ -4057,15 +4197,17 @@ msgstr "" " Télécharger le profil" "a>" -#: plinth/modules/openvpn/forms.py:27 +#: plinth/modules/openvpn/forms.py:12 msgid "Enable OpenVPN server" msgstr "Activer le serveur OpenVPN" -#: plinth/modules/openvpn/manifest.py:63 -msgid "TunnelBlick" +#: plinth/modules/openvpn/manifest.py:48 +#, fuzzy +#| msgid "TunnelBlick" +msgid "Tunnelblick" msgstr "TunnelBlick" -#: plinth/modules/openvpn/templates/openvpn.html:42 +#: plinth/modules/openvpn/templates/openvpn.html:27 #, python-format msgid "" "OpenVPN has not yet been setup. Performing a secure setup takes a very long " @@ -4076,15 +4218,15 @@ msgstr "" "temps. En fonction de la vélocité de %(box_name)s, cela peut prendre des " "heures. Si l'installation est interrompue, vous devez recommencer." -#: plinth/modules/openvpn/templates/openvpn.html:55 +#: plinth/modules/openvpn/templates/openvpn.html:40 msgid "Start setup" msgstr "Démarrer l'Installation" -#: plinth/modules/openvpn/templates/openvpn.html:64 +#: plinth/modules/openvpn/templates/openvpn.html:49 msgid "OpenVPN setup is running" msgstr "L'installation d'OpenVPN est en cours" -#: plinth/modules/openvpn/templates/openvpn.html:68 +#: plinth/modules/openvpn/templates/openvpn.html:53 #, python-format msgid "" "To perform a secure setup, this process takes a very long time. Depending " @@ -4095,11 +4237,11 @@ msgstr "" "%(box_name)s, cela peut prendre des heures. Si l'installation est " "interrompue, vous devez recommencer." -#: plinth/modules/openvpn/templates/openvpn.html:87 +#: plinth/modules/openvpn/templates/openvpn.html:72 msgid "Profile" msgstr "Profil" -#: plinth/modules/openvpn/templates/openvpn.html:90 +#: plinth/modules/openvpn/templates/openvpn.html:75 #, python-format msgid "" "To connect to %(box_name)s's VPN, you need to download a profile and feed it " @@ -4113,33 +4255,25 @@ msgstr "" "formes. Cliquez sur « En savoir plus… » ci-dessus pour connaître les clients " "recommandés et les instructions liées à leur configuration." -#: plinth/modules/openvpn/templates/openvpn.html:100 +#: plinth/modules/openvpn/templates/openvpn.html:85 #, python-format msgid "Profile is specific to each user of %(box_name)s. Keep it a secret." msgstr "" "Un profil est propre à chaque utilisateur de %(box_name)s. Gardez le secret." -#: plinth/modules/openvpn/templates/openvpn.html:111 +#: plinth/modules/openvpn/templates/openvpn.html:96 msgid "Download my profile" msgstr "Télécharger mon profil" -#: plinth/modules/openvpn/views.py:133 +#: plinth/modules/openvpn/views.py:114 msgid "Setup completed." msgstr "Installation terminée." -#: plinth/modules/openvpn/views.py:135 +#: plinth/modules/openvpn/views.py:116 msgid "Setup failed." msgstr "Échec de l'installation." -#: plinth/modules/pagekite/__init__.py:39 -msgid "PageKite" -msgstr "PageKite" - -#: plinth/modules/pagekite/__init__.py:41 -msgid "Public Visibility" -msgstr "Visibilité publique" - -#: plinth/modules/pagekite/__init__.py:45 +#: plinth/modules/pagekite/__init__.py:26 #, python-brace-format msgid "" "PageKite is a system for exposing {box_name} services when you don't have a " @@ -4152,18 +4286,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:50 +#: plinth/modules/pagekite/__init__.py:31 #, 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:53 +#: plinth/modules/pagekite/__init__.py:34 #, 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:55 +#: plinth/modules/pagekite/__init__.py:36 msgid "" "Your ISP does not provide you an external IP address and instead provides " "Internet connection through NAT." @@ -4171,7 +4305,7 @@ msgstr "" "Votre FAI ne vous fournit pas une adresse IP externe, plutôt une connexion " "Internet via NAT." -#: plinth/modules/pagekite/__init__.py:57 +#: plinth/modules/pagekite/__init__.py:38 msgid "" "Your ISP does not provide you a static IP address and your IP address " "changes every time you connect to Internet." @@ -4179,11 +4313,11 @@ msgstr "" "Votre FAI ne vous fournit pas une adresse IP statique, elle change à chaque " "fois que vous vous connectez à l'Internet." -#: plinth/modules/pagekite/__init__.py:59 +#: plinth/modules/pagekite/__init__.py:40 msgid "Your ISP limits incoming connections." msgstr "Votre FAI limite les connexions entrantes." -#: plinth/modules/pagekite/__init__.py:61 +#: plinth/modules/pagekite/__init__.py:42 #, python-brace-format msgid "" "PageKite works around NAT, firewalls and IP address limitations by using a " @@ -4198,15 +4332,23 @@ msgstr "" "futur, il sera peut-être possible d'utiliser {box_name} d'un ami pour ce " "faire." -#: plinth/modules/pagekite/__init__.py:87 +#: plinth/modules/pagekite/__init__.py:62 +msgid "PageKite" +msgstr "PageKite" + +#: plinth/modules/pagekite/__init__.py:64 +msgid "Public Visibility" +msgstr "Visibilité publique" + +#: plinth/modules/pagekite/__init__.py:74 msgid "PageKite Domain" msgstr "Domaine PageKite" -#: plinth/modules/pagekite/forms.py:66 +#: plinth/modules/pagekite/forms.py:51 msgid "Server domain" msgstr "Domaine du serveur" -#: plinth/modules/pagekite/forms.py:68 +#: plinth/modules/pagekite/forms.py:53 msgid "" "Select your pagekite server. Set \"pagekite.net\" to use the default " "pagekite.net server." @@ -4214,31 +4356,31 @@ msgstr "" "Sélectionner votre serveur pagekite. Établir \"pagekite.net\" pour une " "utilisation par défaut du serveur pagekite.net." -#: plinth/modules/pagekite/forms.py:71 plinth/modules/shadowsocks/forms.py:55 +#: plinth/modules/pagekite/forms.py:56 plinth/modules/shadowsocks/forms.py:40 msgid "Server port" msgstr "Port serveur" -#: plinth/modules/pagekite/forms.py:72 +#: plinth/modules/pagekite/forms.py:57 msgid "Port of your pagekite server (default: 80)" msgstr "Port de votre serveur pagekite (par défaut : 80)" -#: plinth/modules/pagekite/forms.py:74 +#: plinth/modules/pagekite/forms.py:59 msgid "Kite name" msgstr "Nom Kite" -#: plinth/modules/pagekite/forms.py:75 +#: plinth/modules/pagekite/forms.py:60 msgid "Example: mybox.pagekite.me" msgstr "Exemple : monpc.pagekite.me" -#: plinth/modules/pagekite/forms.py:77 +#: plinth/modules/pagekite/forms.py:62 msgid "Invalid kite name" msgstr "Nom Kite invalide" -#: plinth/modules/pagekite/forms.py:81 +#: plinth/modules/pagekite/forms.py:66 msgid "Kite secret" msgstr "Kite secret" -#: plinth/modules/pagekite/forms.py:82 +#: plinth/modules/pagekite/forms.py:67 msgid "" "A secret associated with the kite or the default secret for your account if " "no secret is set on the kite." @@ -4246,43 +4388,43 @@ msgstr "" "Un secret associé à Kite ou un secret par défaut pour votre compte si aucun " "secret n'est établi sur kite." -#: plinth/modules/pagekite/forms.py:98 +#: plinth/modules/pagekite/forms.py:83 msgid "Kite details set" msgstr "Renseignements pour Kite établis" -#: plinth/modules/pagekite/forms.py:105 +#: plinth/modules/pagekite/forms.py:90 msgid "Pagekite server set" msgstr "Serveur PageKite établi" -#: plinth/modules/pagekite/forms.py:129 +#: plinth/modules/pagekite/forms.py:114 msgid "PageKite enabled" msgstr "PageKite activé" -#: plinth/modules/pagekite/forms.py:132 +#: plinth/modules/pagekite/forms.py:117 msgid "PageKite disabled" msgstr "PageKite désactivé" -#: plinth/modules/pagekite/forms.py:148 +#: plinth/modules/pagekite/forms.py:133 msgid "protocol" msgstr "protocole" -#: plinth/modules/pagekite/forms.py:151 +#: plinth/modules/pagekite/forms.py:136 msgid "external (frontend) port" msgstr "port externe (frontal)" -#: plinth/modules/pagekite/forms.py:154 +#: plinth/modules/pagekite/forms.py:139 msgid "internal (freedombox) port" msgstr "port interne (freedombox)" -#: plinth/modules/pagekite/forms.py:155 +#: plinth/modules/pagekite/forms.py:140 msgid "Enable Subdomains" msgstr "Activer les sous-domaines" -#: plinth/modules/pagekite/forms.py:189 +#: plinth/modules/pagekite/forms.py:174 msgid "Deleted custom service" msgstr "Service personnalisé supprimé" -#: plinth/modules/pagekite/forms.py:222 +#: plinth/modules/pagekite/forms.py:207 msgid "" "This service is available as a standard service. Please use the \"Standard " "Services\" page to enable it." @@ -4290,41 +4432,41 @@ msgstr "" "Ce service est disponible sous forme standard. Utiliser la page « Services " "Standards » pour l'activer." -#: plinth/modules/pagekite/forms.py:231 +#: plinth/modules/pagekite/forms.py:216 msgid "Added custom service" msgstr "Service personnalisé ajouté" -#: plinth/modules/pagekite/forms.py:234 +#: plinth/modules/pagekite/forms.py:219 msgid "This service already exists" msgstr "Ce service existe déjà" -#: plinth/modules/pagekite/templates/pagekite_configure.html:47 +#: plinth/modules/pagekite/templates/pagekite_configure.html:32 msgid "Custom Services" msgstr "Services Personnalisés" -#: plinth/modules/pagekite/templates/pagekite_configure.html:50 -#: plinth/modules/pagekite/templates/pagekite_configure.html:52 +#: plinth/modules/pagekite/templates/pagekite_configure.html:35 +#: plinth/modules/pagekite/templates/pagekite_configure.html:37 msgid "Add Custom Service" msgstr "Ajouter un service personnalisé" -#: plinth/modules/pagekite/templates/pagekite_configure.html:57 +#: plinth/modules/pagekite/templates/pagekite_configure.html:42 msgid "Existing custom services" msgstr "Services personnalisés existants" -#: plinth/modules/pagekite/templates/pagekite_configure.html:71 +#: plinth/modules/pagekite/templates/pagekite_configure.html:56 #, python-format msgid "connected to %(backend_host)s:%(backend_port)s" msgstr "connecté à %(backend_host)s:%(backend_port)s" -#: plinth/modules/pagekite/templates/pagekite_configure.html:83 +#: plinth/modules/pagekite/templates/pagekite_configure.html:68 msgid "Delete this service" msgstr "Supprimer ce service" -#: plinth/modules/pagekite/templates/pagekite_custom_services.html:30 +#: plinth/modules/pagekite/templates/pagekite_custom_services.html:15 msgid "Add custom PageKite service" msgstr "Ajouter un service PageKite personnalisé" -#: plinth/modules/pagekite/templates/pagekite_custom_services.html:32 +#: plinth/modules/pagekite/templates/pagekite_custom_services.html:17 msgid "" "Warning:imaps://imap.example.com."
-#: plinth/modules/roundcube/__init__.py:53
+#: plinth/modules/roundcube/__init__.py:32
msgid ""
"For Gmail, username will be your Gmail address, password will be your Google "
"account password and server will be imaps://imap.gmail.com. "
@@ -4739,11 +4871,16 @@ msgstr ""
"settings/security/lesssecureapps\">https://www.google.com/settings/security/"
"lesssecureapps)."
-#: plinth/modules/samba/__init__.py:46
-msgid "Samba"
-msgstr "Samba"
+#: plinth/modules/roundcube/__init__.py:54
+#: plinth/modules/roundcube/manifest.py:9
+msgid "Roundcube"
+msgstr "Roundcube"
-#: plinth/modules/samba/__init__.py:53
+#: plinth/modules/roundcube/__init__.py:55
+msgid "Email Client"
+msgstr "Client courriel"
+
+#: plinth/modules/samba/__init__.py:32
msgid ""
"Samba allows to share files and folders between FreedomBox and other "
"computers in your local network."
@@ -4751,7 +4888,7 @@ msgstr ""
"Samba permet de partager des fichiers et des répertoires entre FreedomBox et "
"d’autres machines de votre réseau local."
-#: plinth/modules/samba/__init__.py:56
+#: plinth/modules/samba/__init__.py:35
#, python-brace-format
msgid ""
"After installation, you can choose which disks to use for sharing. Enabled "
@@ -4765,11 +4902,11 @@ msgstr ""
"smb://{hostname}.local (sur Linux et Mac). Vous pouvez choisir parmi trois "
"types de partages : "
-#: plinth/modules/samba/__init__.py:61
+#: plinth/modules/samba/__init__.py:40
msgid "Open share - accessible to everyone in your local network."
msgstr "Partage ouvert : accessible par tout le monde dans votre réseau local."
-#: plinth/modules/samba/__init__.py:62
+#: plinth/modules/samba/__init__.py:41
msgid ""
"Group share - accessible only to FreedomBox users who are in the freedombox-"
"share group."
@@ -4777,7 +4914,7 @@ msgstr ""
"Partage de groupe : accessible uniquement aux utilisateurs FreedomBox qui "
"sont dans le groupe freedombox-share."
-#: plinth/modules/samba/__init__.py:64
+#: plinth/modules/samba/__init__.py:43
msgid ""
"Home share - every user in the freedombox-share group can have their own "
"private space."
@@ -4785,16 +4922,20 @@ msgstr ""
"Partage domestique : chaque utilisateur du groupe freedombox-share a son "
"propre espace privé."
-#: plinth/modules/samba/__init__.py:68
+#: plinth/modules/samba/__init__.py:47
msgid "Access to the private shares"
msgstr "Accès aux partages privés"
-#: plinth/modules/samba/templates/samba.html:39
-#: plinth/modules/samba/templates/samba.html:50
+#: plinth/modules/samba/__init__.py:61
+msgid "Samba"
+msgstr "Samba"
+
+#: plinth/modules/samba/templates/samba.html:24
+#: plinth/modules/samba/templates/samba.html:35
msgid "Shares"
msgstr "Partages"
-#: plinth/modules/samba/templates/samba.html:41
+#: plinth/modules/samba/templates/samba.html:26
msgid ""
"Note: Only specially created directories will be shared on selected disks, "
"not the whole disk."
@@ -4802,20 +4943,20 @@ msgstr ""
"Note : seuls les répertoires créés spécialement pour cela seront partagés "
"sur les disques sélectionnés, pas les disques en entier."
-#: plinth/modules/samba/templates/samba.html:49
+#: plinth/modules/samba/templates/samba.html:34
msgid "Disk Name"
msgstr "Nom de disque"
-#: plinth/modules/samba/templates/samba.html:51
-#: plinth/modules/storage/templates/storage.html:44
+#: plinth/modules/samba/templates/samba.html:36
+#: plinth/modules/storage/templates/storage.html:29
msgid "Used"
msgstr "Utilisé"
-#: plinth/modules/samba/templates/samba.html:72
+#: plinth/modules/samba/templates/samba.html:57
msgid "VFAT partitions are not supported"
msgstr "Les partitions formatées en VFAT ne sont pas gérées"
-#: plinth/modules/samba/templates/samba.html:103
+#: plinth/modules/samba/templates/samba.html:88
#, python-format
msgid ""
"You can find additional information about disks on the stockage et configurer l’accès aux "
"partages sur la page du module utilisateurs."
-#: plinth/modules/samba/templates/samba.html:109
+#: plinth/modules/samba/templates/samba.html:94
msgid "Users who can currently access group and home shares"
msgstr "Utilisateurs pouvant accéder aux partages de groupe et domestiques"
-#: plinth/modules/samba/templates/samba.html:113
+#: plinth/modules/samba/templates/samba.html:98
msgid ""
"Users needing to re-enter their password on the password change page to "
"access group and home shares"
@@ -4838,11 +4979,11 @@ msgstr ""
"Utilisateurs devant ré-entrer leur mot de passe sur la page de changement de "
"mot de passe pour accéder aux partages de groupe et domestiques"
-#: plinth/modules/samba/templates/samba.html:118
+#: plinth/modules/samba/templates/samba.html:103
msgid "Unavailable Shares"
msgstr "Partages indisponibles"
-#: plinth/modules/samba/templates/samba.html:120
+#: plinth/modules/samba/templates/samba.html:105
msgid ""
"Shares that are configured but the disk is not available. If the disk is "
"plugged back in, sharing will be automatically enabled."
@@ -4850,53 +4991,45 @@ msgstr ""
"Partages configurés mais dont le disque n’est pas disponible. Si le disque "
"est rebranché, le partage sera automatiquement activé."
-#: plinth/modules/samba/templates/samba.html:128
+#: plinth/modules/samba/templates/samba.html:113
msgid "Share name"
msgstr "Nom du partage"
-#: plinth/modules/samba/templates/samba.html:129
+#: plinth/modules/samba/templates/samba.html:114
msgid "Action"
msgstr "Action"
-#: plinth/modules/samba/views.py:61 plinth/modules/storage/forms.py:164
+#: plinth/modules/samba/views.py:43 plinth/modules/storage/forms.py:149
msgid "Open Share"
msgstr "Ouvrir un partage"
-#: plinth/modules/samba/views.py:62 plinth/modules/storage/forms.py:162
+#: plinth/modules/samba/views.py:44 plinth/modules/storage/forms.py:147
msgid "Group Share"
msgstr "Partage de groupe"
-#: plinth/modules/samba/views.py:63
+#: plinth/modules/samba/views.py:45
msgid "Home Share"
msgstr "Partage domestique"
-#: plinth/modules/samba/views.py:96
+#: plinth/modules/samba/views.py:78
msgid "Share enabled."
msgstr "Partage activé."
-#: plinth/modules/samba/views.py:101
+#: plinth/modules/samba/views.py:83
#, python-brace-format
msgid "Error enabling share: {error_message}"
msgstr "Erreur lors de l'activation du partage : {error_message}"
-#: plinth/modules/samba/views.py:106
+#: plinth/modules/samba/views.py:88
msgid "Share disabled."
msgstr "Partage désactivé."
-#: plinth/modules/samba/views.py:111
+#: plinth/modules/samba/views.py:93
#, python-brace-format
msgid "Error disabling share: {error_message}"
msgstr "Erreur lors de la désactivation du partage : {error_message}"
-#: plinth/modules/searx/__init__.py:41 plinth/modules/searx/manifest.py:24
-msgid "Searx"
-msgstr "Searx"
-
-#: plinth/modules/searx/__init__.py:45
-msgid "Web Search"
-msgstr "Recherche sur le Web"
-
-#: plinth/modules/searx/__init__.py:48
+#: plinth/modules/searx/__init__.py:25
msgid ""
"Searx is a privacy-respecting Internet metasearch engine. It aggregrates and "
"displays results from multiple search engines."
@@ -4905,7 +5038,7 @@ msgstr ""
"privée. Il rassemble et affiche les résultats de plusieurs moteurs de "
"recherche."
-#: plinth/modules/searx/__init__.py:50
+#: plinth/modules/searx/__init__.py:27
msgid ""
"Searx can be used to avoid tracking and profiling by search engines. It "
"stores no cookies by default."
@@ -4913,51 +5046,59 @@ msgstr ""
"Searx peut être utilisé pour éviter le pistage et le profilage fait par les "
"moteurs de recherche. Il ne stocke aucun cookie par défaut."
-#: plinth/modules/searx/__init__.py:54
+#: plinth/modules/searx/__init__.py:31
msgid "Search the web"
msgstr "Rechercher sur le web"
-#: plinth/modules/searx/forms.py:30
+#: plinth/modules/searx/__init__.py:47 plinth/modules/searx/manifest.py:9
+msgid "Searx"
+msgstr "Searx"
+
+#: plinth/modules/searx/__init__.py:48
+msgid "Web Search"
+msgstr "Recherche sur le Web"
+
+#: plinth/modules/searx/forms.py:15
msgid "Safe Search"
msgstr "Recherche sûre"
-#: plinth/modules/searx/forms.py:31
+#: plinth/modules/searx/forms.py:16
msgid "Select the default family filter to apply to your search results."
msgstr ""
"Choisissez le filtre de famille à appliquer par défaut à vos résultats de "
"recherche."
-#: plinth/modules/searx/forms.py:32
+#: plinth/modules/searx/forms.py:17
msgid "None"
msgstr "Aucun"
-#: plinth/modules/searx/forms.py:32
+#: plinth/modules/searx/forms.py:17
msgid "Moderate"
msgstr "Modéré"
-#: plinth/modules/searx/forms.py:32
+#: plinth/modules/searx/forms.py:17
msgid "Strict"
msgstr "Strict"
-#: plinth/modules/searx/forms.py:35
+#: plinth/modules/searx/forms.py:20
msgid "Allow Public Access"
msgstr "Permettre l'accès public"
-#: plinth/modules/searx/forms.py:36
+#: plinth/modules/searx/forms.py:21
msgid "Allow this application to be used by anyone who can reach it."
msgstr ""
"Permettre à tous ceux qui peuvent accéder à cette application de l'utiliser."
-#: plinth/modules/searx/views.py:59 plinth/modules/searx/views.py:70
-#: plinth/modules/tor/views.py:149 plinth/modules/tor/views.py:176
+#: plinth/modules/searx/views.py:39 plinth/modules/searx/views.py:50
+#: plinth/modules/tor/views.py:130 plinth/modules/tor/views.py:157
msgid "Configuration updated."
msgstr "Configuration actualisée."
-#: plinth/modules/security/forms.py:28
+#: plinth/modules/security/forms.py:13
msgid "Restrict console logins (recommended)"
msgstr "Restreindre les sessions console (recommandé)"
-#: plinth/modules/security/forms.py:29
+#: plinth/modules/security/forms.py:14
msgid ""
"When this option is enabled, only users in the \"admin\" group will be able "
"to log in to console or via SSH. Console users may be able to access some "
@@ -4968,11 +5109,11 @@ msgstr ""
"console pourraient avoir accès à certains services sans autorisation "
"supplémentaire."
-#: plinth/modules/security/forms.py:34
+#: plinth/modules/security/forms.py:19
msgid "Fail2Ban (recommended)"
msgstr "Fail2ban (recommandé)"
-#: plinth/modules/security/forms.py:35
+#: plinth/modules/security/forms.py:20
msgid ""
"When this option is enabled, Fail2Ban will limit brute force break-in "
"attempts to the SSH server and other enabled password protected internet-"
@@ -4982,17 +5123,17 @@ msgstr ""
"d'intrusion par force brute sur le serveur SSH ainsi que sur les autres "
"services Internet protégés par mot de passe et activés."
-#: plinth/modules/security/templates/security.html:26
-#: plinth/modules/security/templates/security.html:28
+#: plinth/modules/security/templates/security.html:11
+#: plinth/modules/security/templates/security.html:13
msgid "Show security report"
msgstr "Montrer le rapport de sécurité"
-#: plinth/modules/security/templates/security_report.html:25
-#: plinth/modules/security/views.py:87
+#: plinth/modules/security/templates/security_report.html:10
+#: plinth/modules/security/views.py:71
msgid "Security Report"
msgstr "Rapport de sécurité"
-#: plinth/modules/security/templates/security_report.html:27
+#: plinth/modules/security/templates/security_report.html:12
#, python-format
msgid ""
"The installed version of FreedomBox has %(count)s reported security "
@@ -5001,7 +5142,7 @@ msgstr ""
"La version installée de FreedomBox comporte %(count)s faille(s) de sécurité "
"connue(s)."
-#: plinth/modules/security/templates/security_report.html:33
+#: plinth/modules/security/templates/security_report.html:18
msgid ""
"The following table lists the current reported number, and historical count, "
"of security vulnerabilities for each installed app."
@@ -5009,7 +5150,7 @@ msgstr ""
"La table suivante liste le nombre de failles de sécurité actuelles et "
"passées de chaque application installée."
-#: plinth/modules/security/templates/security_report.html:39
+#: plinth/modules/security/templates/security_report.html:24
msgid ""
"For apps that provide services, the \"Sandboxed\" column shows whether "
"sandboxing features are in use. Sandboxing mitigates the impact of a "
@@ -5020,73 +5161,65 @@ msgstr ""
"L’isolation limite l’impact sur le reste du système d’une application "
"potentiellement compromise."
-#: plinth/modules/security/templates/security_report.html:46
+#: plinth/modules/security/templates/security_report.html:31
msgid ""
"\"Sandbox Coverage\" is a score of how effectively the service is isolated "
"from the rest of the system. It is only displayed while the service is "
"running."
msgstr ""
-#: plinth/modules/security/templates/security_report.html:55
+#: plinth/modules/security/templates/security_report.html:40
msgid "App Name"
msgstr "Application"
-#: plinth/modules/security/templates/security_report.html:56
+#: plinth/modules/security/templates/security_report.html:41
msgid "Current Vulnerabilities"
msgstr "failles actuelles"
-#: plinth/modules/security/templates/security_report.html:57
+#: plinth/modules/security/templates/security_report.html:42
msgid "Past Vulnerabilities"
msgstr "Anciennes failles"
-#: plinth/modules/security/templates/security_report.html:58
+#: plinth/modules/security/templates/security_report.html:43
msgid "Sandboxed"
msgstr "Bac à sable"
-#: plinth/modules/security/templates/security_report.html:59
+#: plinth/modules/security/templates/security_report.html:44
#, fuzzy
#| msgid "Sandboxed"
msgid "Sandbox Coverage"
msgstr "Bac à sable"
-#: plinth/modules/security/templates/security_report.html:70
+#: plinth/modules/security/templates/security_report.html:55
msgid "N/A"
msgstr "Non applicable"
-#: plinth/modules/security/templates/security_report.html:72
+#: plinth/modules/security/templates/security_report.html:57
msgid "Yes"
msgstr "Oui"
-#: plinth/modules/security/templates/security_report.html:74
+#: plinth/modules/security/templates/security_report.html:59
msgid "No"
msgstr "Non"
-#: plinth/modules/security/templates/security_report.html:81
+#: plinth/modules/security/templates/security_report.html:66
msgid "Not running"
msgstr "Inactif"
-#: plinth/modules/security/views.py:69
+#: plinth/modules/security/views.py:53
#, 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:72
+#: plinth/modules/security/views.py:56
msgid "Updated security configuration"
msgstr "Configuration de sécurité mise à jour"
-#: plinth/modules/shaarli/__init__.py:34 plinth/modules/shaarli/manifest.py:23
-msgid "Shaarli"
-msgstr "Shaarli"
-
-#: plinth/modules/shaarli/__init__.py:36
-msgid "Bookmarks"
-msgstr "Signets"
-
-#: plinth/modules/shaarli/__init__.py:39
+#: plinth/modules/shaarli/__init__.py:20
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:21
msgid ""
"When enabled, Shaarli will be available from /shaarli path on the web server. Note that Shaarli "
@@ -5098,15 +5231,15 @@ msgstr ""
"seulement compatible avec un compte utilisateur unique que vous configurerez "
"lors de votre première visite."
-#: plinth/modules/shadowsocks/__init__.py:35
-msgid "Shadowsocks"
-msgstr "Shadowsocks"
+#: plinth/modules/shaarli/__init__.py:39 plinth/modules/shaarli/manifest.py:8
+msgid "Shaarli"
+msgstr "Shaarli"
-#: plinth/modules/shadowsocks/__init__.py:39
-msgid "Socks5 Proxy"
-msgstr "Mandataire Socks5"
+#: plinth/modules/shaarli/__init__.py:40
+msgid "Bookmarks"
+msgstr "Signets"
-#: plinth/modules/shadowsocks/__init__.py:46
+#: plinth/modules/shadowsocks/__init__.py:25
msgid ""
"Shadowsocks is a lightweight and secure SOCKS5 proxy, designed to protect "
"your Internet traffic. It can be used to bypass Internet filtering and "
@@ -5116,7 +5249,7 @@ msgstr ""
"votre trafic Internet. Il peut servir à court-circuiter le filtrage et la "
"censure d'Internet."
-#: plinth/modules/shadowsocks/__init__.py:50
+#: plinth/modules/shadowsocks/__init__.py:29
#, python-brace-format
msgid ""
"Your {box_name} can run a Shadowsocks client, that can connect to a "
@@ -5130,7 +5263,7 @@ msgstr ""
"mandataire, et leurs flux de données seront chiffrés et transmis à travers "
"le serveur Shadowsocks."
-#: plinth/modules/shadowsocks/__init__.py:55
+#: plinth/modules/shadowsocks/__init__.py:34
msgid ""
"To use Shadowsocks after setup, set the SOCKS5 proxy URL in your device, "
"browser or application to http://freedombox_address:1080/"
@@ -5139,40 +5272,44 @@ msgstr ""
"l'URL du mandataire SOCKS5 sur votre périphérique, navigateur ou application "
"avec http://adresse_freedombox:1080/"
-#: plinth/modules/shadowsocks/forms.py:28
-#: plinth/modules/shadowsocks/forms.py:29
+#: plinth/modules/shadowsocks/__init__.py:50
+msgid "Shadowsocks"
+msgstr "Shadowsocks"
+
+#: plinth/modules/shadowsocks/__init__.py:52
+msgid "Socks5 Proxy"
+msgstr "Mandataire Socks5"
+
+#: plinth/modules/shadowsocks/forms.py:13
+#: plinth/modules/shadowsocks/forms.py:14
msgid "Recommended"
msgstr "Recommandé"
-#: plinth/modules/shadowsocks/forms.py:52
+#: plinth/modules/shadowsocks/forms.py:37
msgid "Server"
msgstr "Serveur"
-#: plinth/modules/shadowsocks/forms.py:53
+#: plinth/modules/shadowsocks/forms.py:38
msgid "Server hostname or IP address"
msgstr "Nom ou adresse IP du serveur"
-#: plinth/modules/shadowsocks/forms.py:57
+#: plinth/modules/shadowsocks/forms.py:42
msgid "Server port number"
msgstr "Numéro de port du serveur"
-#: plinth/modules/shadowsocks/forms.py:60
+#: plinth/modules/shadowsocks/forms.py:45
msgid "Password used to encrypt data. Must match server password."
msgstr ""
"Mot de passe utilisé pour chiffrer les données. Doit correspondre au mot de "
"passe du serveur."
-#: plinth/modules/shadowsocks/forms.py:65
+#: plinth/modules/shadowsocks/forms.py:50
msgid "Encryption method. Must match setting on server."
msgstr ""
"Méthode de chiffrage. Doit correspondre à ce qui a été configuré sur le "
"serveur."
-#: plinth/modules/sharing/__init__.py:34
-msgid "Sharing"
-msgstr "Sharing"
-
-#: plinth/modules/sharing/__init__.py:38
+#: plinth/modules/sharing/__init__.py:21
#, python-brace-format
msgid ""
"Sharing allows you to share files and folders on your {box_name} over the "
@@ -5181,11 +5318,15 @@ msgstr ""
"Sharing vous permet de partager des fichiers et répertoires de votre "
"{box_name} sur Internet avec un groupe d'utilisateurs choisis."
-#: plinth/modules/sharing/forms.py:33
+#: plinth/modules/sharing/__init__.py:38
+msgid "Sharing"
+msgstr "Sharing"
+
+#: plinth/modules/sharing/forms.py:18
msgid "Name of the share"
msgstr "Nom du partage"
-#: plinth/modules/sharing/forms.py:35
+#: plinth/modules/sharing/forms.py:20
msgid ""
"A lowercase alpha-numeric string that uniquely identifies a share. Example: "
"media."
@@ -5193,29 +5334,29 @@ msgstr ""
"Une chaîne alpha-numérique en minuscules qui identifie de manière unique un "
"partage. Par exemple : media."
-#: plinth/modules/sharing/forms.py:39
+#: plinth/modules/sharing/forms.py:24
msgid "Path to share"
msgstr "Chemin du partage"
-#: plinth/modules/sharing/forms.py:40
+#: plinth/modules/sharing/forms.py:25
msgid "Disk path to a folder on this server that you intend to share."
msgstr "Chemin d'un répertoire sur ce serveur que vous voulez partager."
-#: plinth/modules/sharing/forms.py:43
+#: plinth/modules/sharing/forms.py:28
msgid "Public share"
msgstr "Partage public"
-#: plinth/modules/sharing/forms.py:44
+#: plinth/modules/sharing/forms.py:29
msgid "Make files in this folder available to anyone with the link."
msgstr ""
"Les fichiers de ce répertoire seront disponibles à n'importe qui avec le "
"lien."
-#: plinth/modules/sharing/forms.py:48
+#: plinth/modules/sharing/forms.py:33
msgid "User groups that can read the files in the share"
msgstr "Groupe d'utilisateurs qui peuvent lire les fichiers du partage"
-#: plinth/modules/sharing/forms.py:50
+#: plinth/modules/sharing/forms.py:35
msgid ""
"Users of the selected user groups will be able to read the files in the "
"share."
@@ -5223,64 +5364,60 @@ msgstr ""
"Les utilisateurs des groupes sélectionnés pourront lire les fichiers du "
"partage."
-#: plinth/modules/sharing/forms.py:67
+#: plinth/modules/sharing/forms.py:52
msgid "A share with this name already exists."
msgstr "Un partage existe déjà avec ce nom."
-#: plinth/modules/sharing/forms.py:78
+#: plinth/modules/sharing/forms.py:63
msgid "Shares should be either public or shared with at least one group"
msgstr "Les partages peuvent être publics ou restreints à au moins un groupe"
-#: plinth/modules/sharing/templates/sharing.html:39
-#: plinth/modules/sharing/templates/sharing.html:42
+#: plinth/modules/sharing/templates/sharing.html:24
+#: plinth/modules/sharing/templates/sharing.html:27
msgid "Add share"
msgstr "Ajouter un partage"
-#: plinth/modules/sharing/templates/sharing.html:47
+#: plinth/modules/sharing/templates/sharing.html:32
msgid "No shares currently configured."
msgstr "Aucun partage actuellement configuré."
-#: plinth/modules/sharing/templates/sharing.html:53
+#: plinth/modules/sharing/templates/sharing.html:38
msgid "Disk Path"
msgstr "Chemin"
-#: plinth/modules/sharing/templates/sharing.html:54
+#: plinth/modules/sharing/templates/sharing.html:39
msgid "Shared Over"
msgstr "Partagé sur"
-#: plinth/modules/sharing/templates/sharing.html:55
+#: plinth/modules/sharing/templates/sharing.html:40
msgid "With Groups"
msgstr "Au moyen de groupes"
-#: plinth/modules/sharing/templates/sharing.html:73
+#: plinth/modules/sharing/templates/sharing.html:58
msgid "public access"
msgstr "Accès public"
-#: plinth/modules/sharing/views.py:55
+#: plinth/modules/sharing/views.py:39
msgid "Share added."
msgstr "Partage créé."
-#: plinth/modules/sharing/views.py:60
+#: plinth/modules/sharing/views.py:44
msgid "Add Share"
msgstr "Ajouter un partage"
-#: plinth/modules/sharing/views.py:75
+#: plinth/modules/sharing/views.py:59
msgid "Share edited."
msgstr "Partage modifié."
-#: plinth/modules/sharing/views.py:80
+#: plinth/modules/sharing/views.py:64
msgid "Edit Share"
msgstr "Modifier un partage"
-#: plinth/modules/sharing/views.py:111
+#: plinth/modules/sharing/views.py:95
msgid "Share deleted."
msgstr "Partage supprimé."
-#: plinth/modules/snapshot/__init__.py:37
-msgid "Storage Snapshots"
-msgstr "Instantanés de stockage"
-
-#: plinth/modules/snapshot/__init__.py:40
+#: plinth/modules/snapshot/__init__.py:23
msgid ""
"Snapshots allows creating and managing btrfs file system snapshots. These "
"can be used to roll back the system to a previously known good state in case "
@@ -5290,7 +5427,7 @@ msgstr ""
"système de fichiers btrfs. Ils peuvent être utilisés pour faire revenir le "
"système à un précédent état correct connu en cas de changements non désirés."
-#: plinth/modules/snapshot/__init__.py:44
+#: plinth/modules/snapshot/__init__.py:27
#, no-python-format
msgid ""
"Snapshots are taken periodically (called timeline snapshots) and also before "
@@ -5301,7 +5438,7 @@ msgstr ""
"également avant et après une installation de logiciels. Les anciens "
"instantanés seront automatiquement nettoyés suivant le paramétrage suivant."
-#: plinth/modules/snapshot/__init__.py:47
+#: plinth/modules/snapshot/__init__.py:30
msgid ""
"Snapshots currently work on btrfs file systems only and on the root "
"partition only. Snapshots are not a replacement for sauvegardes car ils "
"ne peuvent être enregistrés que sur la même partition. "
-#: plinth/modules/snapshot/forms.py:27
+#: plinth/modules/snapshot/__init__.py:52
+msgid "Storage Snapshots"
+msgstr "Instantanés de stockage"
+
+#: plinth/modules/snapshot/forms.py:12
msgid "Free Disk Space to Maintain"
msgstr "Place-disque libre à préserver"
-#: plinth/modules/snapshot/forms.py:28
+#: plinth/modules/snapshot/forms.py:13
msgid ""
"Maintain this percentage of free space on the disk. If free space falls "
"below this value, older snapshots are removed until this much free space is "
@@ -5326,64 +5467,64 @@ msgstr ""
"passe sous cette valeur, les anciens instantanés sont supprimés jusqu'à ce "
"que suffisamment de place soit récupérée. La valeur par défaut est 30 %."
-#: plinth/modules/snapshot/forms.py:35
+#: plinth/modules/snapshot/forms.py:20
msgid "Timeline Snapshots"
msgstr "Instantanés programmés"
-#: plinth/modules/snapshot/forms.py:36
+#: plinth/modules/snapshot/forms.py:21
msgid ""
"Enable or disable timeline snapshots (hourly, daily, monthly and yearly)."
msgstr ""
"Active ou désactive les instantanés programmés (à un rythme horaire, "
"journalier, mensuel ou annuel)."
-#: plinth/modules/snapshot/forms.py:41
+#: plinth/modules/snapshot/forms.py:26
msgid "Software Installation Snapshots"
msgstr "Instantanés d'installation de logiciels"
-#: plinth/modules/snapshot/forms.py:42
+#: plinth/modules/snapshot/forms.py:27
msgid "Enable or disable snapshots before and after software installation"
msgstr ""
"Active ou désactive la prise d'instantanés avant et après l'installation de "
"logiciels"
-#: plinth/modules/snapshot/forms.py:47
+#: plinth/modules/snapshot/forms.py:32
msgid "Hourly Snapshots Limit"
msgstr "Limite d'instantanés horaires"
-#: plinth/modules/snapshot/forms.py:48
+#: plinth/modules/snapshot/forms.py:33
msgid "Keep a maximum of this many hourly snapshots."
msgstr "Maximum d'instantanés pris chaque heure à conserver."
-#: plinth/modules/snapshot/forms.py:51
+#: plinth/modules/snapshot/forms.py:36
msgid "Daily Snapshots Limit"
msgstr "Limite d'instantanés quotidiens"
-#: plinth/modules/snapshot/forms.py:52
+#: plinth/modules/snapshot/forms.py:37
msgid "Keep a maximum of this many daily snapshots."
msgstr "Maximum d'instantanés pris chaque jour à conserver."
-#: plinth/modules/snapshot/forms.py:55
+#: plinth/modules/snapshot/forms.py:40
msgid "Weekly Snapshots Limit"
msgstr "Limite d'instantanés hebdomadaires"
-#: plinth/modules/snapshot/forms.py:56
+#: plinth/modules/snapshot/forms.py:41
msgid "Keep a maximum of this many weekly snapshots."
msgstr "Maximum d'instantanés pris chaque semaine à conserver."
-#: plinth/modules/snapshot/forms.py:59
+#: plinth/modules/snapshot/forms.py:44
msgid "Monthly Snapshots Limit"
msgstr "Limite d'instantanés mensuels"
-#: plinth/modules/snapshot/forms.py:60
+#: plinth/modules/snapshot/forms.py:45
msgid "Keep a maximum of this many monthly snapshots."
msgstr "Maximum d'instantanés pris chaque mois à conserver."
-#: plinth/modules/snapshot/forms.py:63
+#: plinth/modules/snapshot/forms.py:48
msgid "Yearly Snapshots Limit"
msgstr "Limite d'instantanés annuels"
-#: plinth/modules/snapshot/forms.py:64
+#: plinth/modules/snapshot/forms.py:49
msgid ""
"Keep a maximum of this many yearly snapshots. The default value is 0 "
"(disabled)."
@@ -5391,46 +5532,46 @@ msgstr ""
"Maximum d'instantanés pris chaque année à conserver. La valeur par défaut "
"est 0 (désactivé)."
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:27
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:12
msgid "Delete the following snapshots permanently?"
msgstr "Supprimer définitivement ces instantanés ?"
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:31
-#: plinth/modules/snapshot/templates/snapshot_manage.html:43
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:39
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:16
+#: plinth/modules/snapshot/templates/snapshot_manage.html:28
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:24
msgid "Number"
msgstr "Numéro"
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:32
-#: plinth/modules/snapshot/templates/snapshot_manage.html:44
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:40
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:17
+#: plinth/modules/snapshot/templates/snapshot_manage.html:29
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:25
msgid "Date"
msgstr "Date"
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:52
-#: plinth/modules/snapshot/templates/snapshot_manage.html:37
-#: plinth/modules/snapshot/views.py:196
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:37
+#: plinth/modules/snapshot/templates/snapshot_manage.html:22
+#: plinth/modules/snapshot/views.py:175
msgid "Delete Snapshots"
msgstr "Supprimer les instantanés"
-#: plinth/modules/snapshot/templates/snapshot_manage.html:33
+#: plinth/modules/snapshot/templates/snapshot_manage.html:18
msgid "Create Snapshot"
msgstr "Créer un instantané"
-#: plinth/modules/snapshot/templates/snapshot_manage.html:46
+#: plinth/modules/snapshot/templates/snapshot_manage.html:31
msgid "Rollback"
msgstr "Revenir en arrière"
-#: plinth/modules/snapshot/templates/snapshot_manage.html:57
+#: plinth/modules/snapshot/templates/snapshot_manage.html:42
msgid "active"
msgstr "actif"
-#: plinth/modules/snapshot/templates/snapshot_manage.html:66
+#: plinth/modules/snapshot/templates/snapshot_manage.html:51
#, python-format
msgid "Rollback to snapshot #%(number)s"
msgstr "Revenir à l'instantané #%(number)s"
-#: plinth/modules/snapshot/templates/snapshot_not_supported.html:26
+#: plinth/modules/snapshot/templates/snapshot_not_supported.html:11
#, python-format
msgid ""
"Your have a filesystem of type %(fs_type)s. Snapshots are "
@@ -5440,11 +5581,11 @@ msgstr ""
"instantanés ne sont pour l'instant gérés que sur les systèmes de fichiers "
"%(types_supported)s."
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:27
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:12
msgid "Roll back the system to this snapshot?"
msgstr "Faire revenir le système à cet instantané ?"
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:30
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:15
msgid ""
"A new snapshot with the current state of the file system will be "
"automatically created. You will be able to undo a rollback by reverting to "
@@ -5454,58 +5595,54 @@ msgstr ""
"automatiquement. Vous aurez la possibilité d'annuler un retour en arrière en "
"revenant à l'instantané nouvellement créé."
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:57
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:42
#, python-format
msgid "Rollback to Snapshot #%(number)s"
msgstr "Revenir à l'instantané #%(number)s"
-#: plinth/modules/snapshot/views.py:45
+#: plinth/modules/snapshot/views.py:30
msgid "Manage Snapshots"
msgstr "Gestion des instantanés"
-#: plinth/modules/snapshot/views.py:98
+#: plinth/modules/snapshot/views.py:79
msgid "Created snapshot."
msgstr "Instantané créé."
-#: plinth/modules/snapshot/views.py:156
+#: plinth/modules/snapshot/views.py:135
msgid "Storage snapshots configuration updated"
msgstr "Configuration du stockage des instantanés mise à jour"
-#: plinth/modules/snapshot/views.py:160 plinth/modules/tor/views.py:79
+#: plinth/modules/snapshot/views.py:139 plinth/modules/tor/views.py:60
#, python-brace-format
msgid "Action error: {0} [{1}] [{2}]"
msgstr "Erreur sur action : {0} [{1}] [{2}]"
-#: plinth/modules/snapshot/views.py:175
+#: plinth/modules/snapshot/views.py:154
msgid "Deleted all snapshots"
msgstr "Supprimer tous les instantanés"
-#: plinth/modules/snapshot/views.py:179
+#: plinth/modules/snapshot/views.py:158
msgid "Deleted selected snapshots"
msgstr "Supprimer les instantanés sélectionnés"
-#: plinth/modules/snapshot/views.py:184
+#: plinth/modules/snapshot/views.py:163
msgid "Snapshot is currently in use. Please try again later."
msgstr "L'instantané est utilisé actuellement. Veuillez ré-essayer plus tard."
-#: plinth/modules/snapshot/views.py:207
+#: plinth/modules/snapshot/views.py:186
#, python-brace-format
msgid "Rolled back to snapshot #{number}."
msgstr "Retour vers l'instantané #{number} effectué."
-#: plinth/modules/snapshot/views.py:210
+#: plinth/modules/snapshot/views.py:189
msgid "The system must be restarted to complete the rollback."
msgstr "Le système doit être redémarré pour terminer le retour en arrière."
-#: plinth/modules/snapshot/views.py:222
+#: plinth/modules/snapshot/views.py:201
msgid "Rollback to Snapshot"
msgstr "Revenir à l'instantané"
-#: plinth/modules/ssh/__init__.py:43
-msgid "Secure Shell (SSH) Server"
-msgstr "Serveur Secure Shell (SSH)"
-
-#: plinth/modules/ssh/__init__.py:46
+#: plinth/modules/ssh/__init__.py:29
msgid ""
"A Secure Shell server uses the secure shell protocol to accept connections "
"from remote computers. An authorized remote computer can perform "
@@ -5517,11 +5654,15 @@ msgstr ""
"effectuer des tâches d'administration, copier des fichiers ou bien faire "
"fonctionner d'autres services en utilisant de telles connexions."
-#: plinth/modules/ssh/forms.py:30
+#: plinth/modules/ssh/__init__.py:50
+msgid "Secure Shell (SSH) Server"
+msgstr "Serveur Secure Shell (SSH)"
+
+#: plinth/modules/ssh/forms.py:15
msgid "Disable password authentication"
msgstr "Désactiver l’authentification par mot de passe"
-#: plinth/modules/ssh/forms.py:31
+#: plinth/modules/ssh/forms.py:16
msgid ""
"Improves security by preventing password guessing. Ensure that you have "
"setup SSH keys in your administrator user account before enabling this "
@@ -5531,11 +5672,11 @@ msgstr ""
"d’avoir mis en place une clé SSH dans votre compte administrateur avant "
"d’activer cette option."
-#: plinth/modules/ssh/templates/ssh.html:26
+#: plinth/modules/ssh/templates/ssh.html:11
msgid "Server Fingerprints"
msgstr "Empreintes du serveur"
-#: plinth/modules/ssh/templates/ssh.html:29
+#: plinth/modules/ssh/templates/ssh.html:14
msgid ""
"When connecting to the server, ensure that the fingerprint shown by the SSH "
"client matches one of these fingerprints."
@@ -5543,35 +5684,31 @@ msgstr ""
"Lors de la connexion au serveur, assurez-vous que l'empreinte affichée par "
"le client SSH correspond bien à l'une de ces empreintes."
-#: plinth/modules/ssh/templates/ssh.html:38
+#: plinth/modules/ssh/templates/ssh.html:23
msgid "Algorithm"
msgstr "Algorithme"
-#: plinth/modules/ssh/templates/ssh.html:39
+#: plinth/modules/ssh/templates/ssh.html:24
msgid "Fingerprint"
msgstr "Empreinte"
-#: plinth/modules/ssh/views.py:66
+#: plinth/modules/ssh/views.py:48
msgid "SSH authentication with password disabled."
msgstr "Authentification SSH avec mot de passe désactivée."
-#: plinth/modules/ssh/views.py:69
+#: plinth/modules/ssh/views.py:51
msgid "SSH authentication with password enabled."
msgstr "Authentification SSH avec mot de passe activée."
-#: plinth/modules/sso/__init__.py:30
+#: plinth/modules/sso/__init__.py:33
msgid "Single Sign On"
msgstr "Authentification unique"
-#: plinth/modules/sso/templates/login.html:35
+#: plinth/modules/sso/templates/login.html:20
msgid "Login"
msgstr "S'identifier"
-#: plinth/modules/storage/__init__.py:39 plinth/modules/storage/__init__.py:331
-msgid "Storage"
-msgstr "Stockage"
-
-#: plinth/modules/storage/__init__.py:47
+#: plinth/modules/storage/__init__.py:30
#, python-brace-format
msgid ""
"This module allows you to manage storage media attached to your {box_name}. "
@@ -5582,151 +5719,155 @@ msgstr ""
"{box_name}. Vous pouvez vour les media de stockage utilisés actuellement, "
"monter et démonter les média amovibles , étendre la partition racine, etc."
-#: plinth/modules/storage/__init__.py:224
+#: plinth/modules/storage/__init__.py:52 plinth/modules/storage/__init__.py:318
+msgid "Storage"
+msgstr "Stockage"
+
+#: plinth/modules/storage/__init__.py:211
#, python-brace-format
msgid "{disk_size:.1f} bytes"
msgstr "{disk_size:.1f} octets"
-#: plinth/modules/storage/__init__.py:228
+#: plinth/modules/storage/__init__.py:215
#, python-brace-format
msgid "{disk_size:.1f} KiB"
msgstr "{disk_size:.1f} Kio"
-#: plinth/modules/storage/__init__.py:232
+#: plinth/modules/storage/__init__.py:219
#, python-brace-format
msgid "{disk_size:.1f} MiB"
msgstr "{disk_size:.1f} Mio"
-#: plinth/modules/storage/__init__.py:236
+#: plinth/modules/storage/__init__.py:223
#, python-brace-format
msgid "{disk_size:.1f} GiB"
msgstr "{disk_size:.1f} Gio"
-#: plinth/modules/storage/__init__.py:239
+#: plinth/modules/storage/__init__.py:226
#, python-brace-format
msgid "{disk_size:.1f} TiB"
msgstr "{disk_size:.1f} Tio"
-#: plinth/modules/storage/__init__.py:246
+#: plinth/modules/storage/__init__.py:233
msgid "The operation failed."
msgstr "L'opération a échoué."
-#: plinth/modules/storage/__init__.py:248
+#: plinth/modules/storage/__init__.py:235
msgid "The operation was cancelled."
msgstr "L'opération a été annulée."
-#: plinth/modules/storage/__init__.py:250
+#: plinth/modules/storage/__init__.py:237
msgid "The device is already unmounting."
msgstr "Le media est déjà en train d'être démonté."
-#: plinth/modules/storage/__init__.py:252
+#: plinth/modules/storage/__init__.py:239
msgid "The operation is not supported due to missing driver/tool support."
msgstr ""
"L'opération n'est pas gérée à cause du manque d'un pilote ou d'un outil "
"adapté."
-#: plinth/modules/storage/__init__.py:255
+#: plinth/modules/storage/__init__.py:242
msgid "The operation timed out."
msgstr "L'opération ne s'est pas terminée."
-#: plinth/modules/storage/__init__.py:257
+#: plinth/modules/storage/__init__.py:244
msgid "The operation would wake up a disk that is in a deep-sleep state."
msgstr ""
"L'opération devrait réveiller un disque qui se trouve dans un état "
"d'endormissement profond."
-#: plinth/modules/storage/__init__.py:260
+#: plinth/modules/storage/__init__.py:247
msgid "Attempting to unmount a device that is busy."
msgstr "Tentative de démonter un media qui a du travail en cours."
-#: plinth/modules/storage/__init__.py:262
+#: plinth/modules/storage/__init__.py:249
msgid "The operation has already been cancelled."
msgstr "L'opération a déjà été annulée."
-#: plinth/modules/storage/__init__.py:268
+#: plinth/modules/storage/__init__.py:255
msgid "Not authorized to perform the requested operation."
msgstr "Vous n'êtes pas autorisé à effectuer l'opération demandée."
-#: plinth/modules/storage/__init__.py:270
+#: plinth/modules/storage/__init__.py:257
msgid "The device is already mounted."
msgstr "Le media est déjà monté."
-#: plinth/modules/storage/__init__.py:272
+#: plinth/modules/storage/__init__.py:259
msgid "The device is not mounted."
msgstr "Le media n'est pas monté."
-#: plinth/modules/storage/__init__.py:275
+#: plinth/modules/storage/__init__.py:262
msgid "Not permitted to use the requested option."
msgstr "Vous n'êtes pas autorisé à utiliser l'option demandée."
-#: plinth/modules/storage/__init__.py:278
+#: plinth/modules/storage/__init__.py:265
msgid "The device is mounted by another user."
msgstr "Le media est monté par un autre utilisateur."
-#: plinth/modules/storage/__init__.py:326
+#: plinth/modules/storage/__init__.py:313
#, no-python-format, python-brace-format
msgid "Low space on system partition: {percent_used}% used, {free_space} free."
msgstr ""
"Espace faible sur la partition système : {percent_used}% utilisé, "
"{free_space} libre."
-#: plinth/modules/storage/__init__.py:328
+#: plinth/modules/storage/__init__.py:315
msgid "Low disk space"
msgstr "Espace disque faible"
-#: plinth/modules/storage/forms.py:79
+#: plinth/modules/storage/forms.py:64
msgid "Invalid directory name."
msgstr "Nom de répertoire invalide."
-#: plinth/modules/storage/forms.py:97
+#: plinth/modules/storage/forms.py:82
msgid "Directory does not exist."
msgstr "Le répertoire n’existe pas."
-#: plinth/modules/storage/forms.py:99
+#: plinth/modules/storage/forms.py:84
msgid "Path is not a directory."
msgstr "Le chemin n’est pas un répertoire."
-#: plinth/modules/storage/forms.py:102
+#: plinth/modules/storage/forms.py:87
msgid "Directory is not readable by the user."
msgstr "Le répertoire n’est pas lisible par l’utilisateur."
-#: plinth/modules/storage/forms.py:105
+#: plinth/modules/storage/forms.py:90
msgid "Directory is not writable by the user."
msgstr "L’utilisateur ne peut pas écrire dans le répertoire."
-#: plinth/modules/storage/forms.py:110
+#: plinth/modules/storage/forms.py:95
msgid "Directory"
msgstr "Répertoire"
-#: plinth/modules/storage/forms.py:113
+#: plinth/modules/storage/forms.py:98
msgid "Subdirectory (optional)"
msgstr "Sous-répertoire (optionnel)"
-#: plinth/modules/storage/forms.py:160
+#: plinth/modules/storage/forms.py:145
msgid "Share"
msgstr "Partage"
-#: plinth/modules/storage/forms.py:168
+#: plinth/modules/storage/forms.py:153
msgid "Other directory (specify below)"
msgstr "Autre répertoire (indiquer ci-dessous)"
-#: plinth/modules/storage/templates/storage.html:35
+#: plinth/modules/storage/templates/storage.html:20
msgid "The following storage devices are in use:"
msgstr "Les media de stockage suivants sont en cours d'utilisation :"
-#: plinth/modules/storage/templates/storage.html:41
+#: plinth/modules/storage/templates/storage.html:26
msgid "Label"
msgstr "Étiquette"
-#: plinth/modules/storage/templates/storage.html:42
+#: plinth/modules/storage/templates/storage.html:27
msgid "Mount Point"
msgstr "Point de montage"
-#: plinth/modules/storage/templates/storage.html:90
+#: plinth/modules/storage/templates/storage.html:75
msgid "Partition Expansion"
msgstr "Extension de la partition"
-#: plinth/modules/storage/templates/storage.html:92
+#: plinth/modules/storage/templates/storage.html:77
#, python-format
msgid ""
"There is %(expandable_root_size)s of unallocated space available after your "
@@ -5737,13 +5878,13 @@ msgstr ""
"partition root. La partition root peut être étendue pour l'utiliser. Cela "
"vous donnera de l'espace supplémentaire pour stocker vos fichiers."
-#: plinth/modules/storage/templates/storage.html:102
-#: plinth/modules/storage/templates/storage_expand.html:39
-#: plinth/modules/storage/views.py:76
+#: plinth/modules/storage/templates/storage.html:87
+#: plinth/modules/storage/templates/storage_expand.html:24
+#: plinth/modules/storage/views.py:58
msgid "Expand Root Partition"
msgstr "Étendre la partition root"
-#: plinth/modules/storage/templates/storage_expand.html:29
+#: plinth/modules/storage/templates/storage_expand.html:14
#, python-format
msgid ""
"Please backup your data before proceeding. After this operation, "
@@ -5754,39 +5895,30 @@ msgstr ""
"%(expandable_root_size)s d'espace en plus sera disponible pour votre "
"partition root."
-#: plinth/modules/storage/views.py:88
+#: plinth/modules/storage/views.py:70
#, python-brace-format
msgid "Error expanding partition: {exception}"
msgstr "Erreur lors de l'expansion de la partition : {exception}"
-#: plinth/modules/storage/views.py:91
+#: plinth/modules/storage/views.py:73
msgid "Partition expanded successfully."
msgstr "Partition étendue avec succès."
-#: plinth/modules/storage/views.py:109
+#: plinth/modules/storage/views.py:91
#, python-brace-format
msgid "{drive_vendor} {drive_model} can be safely unplugged."
msgstr "{drive_vendor} {drive_model} peut être débranché en toute sécurité."
-#: plinth/modules/storage/views.py:113
+#: plinth/modules/storage/views.py:95
msgid "Device can be safely unplugged."
msgstr "Le media peut être débranché en toute sécurité."
-#: plinth/modules/storage/views.py:123
+#: plinth/modules/storage/views.py:105
#, python-brace-format
msgid "Error ejecting device: {error_message}"
msgstr "Erreur lors de l'éjection du media : {error_message}"
-#: plinth/modules/syncthing/__init__.py:40
-#: plinth/modules/syncthing/manifest.py:28
-msgid "Syncthing"
-msgstr "Syncthing"
-
-#: plinth/modules/syncthing/__init__.py:44
-msgid "File Synchronization"
-msgstr "Synchronisation de fichiers"
-
-#: plinth/modules/syncthing/__init__.py:47
+#: plinth/modules/syncthing/__init__.py:26
msgid ""
"Syncthing is an application to synchronize files across multiple devices, e."
"g. your desktop computer and mobile phone. Creation, modification, or "
@@ -5799,7 +5931,7 @@ msgstr ""
"seront automatiquement répliquées aux autres appareils qui utilisent "
"Syncthing."
-#: plinth/modules/syncthing/__init__.py:52
+#: plinth/modules/syncthing/__init__.py:31
#, python-brace-format
msgid ""
"Running Syncthing on {box_name} provides an extra synchronization point for "
@@ -5817,19 +5949,20 @@ 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:63
+#: plinth/modules/syncthing/__init__.py:40
msgid "Administer Syncthing application"
msgstr "Administre l'application Syncthing"
-#: plinth/modules/tahoe/__init__.py:43
-msgid "Tahoe-LAFS"
-msgstr "Tahoe-LAFS"
+#: plinth/modules/syncthing/__init__.py:54
+#: plinth/modules/syncthing/manifest.py:13
+msgid "Syncthing"
+msgstr "Syncthing"
-#: plinth/modules/tahoe/__init__.py:47
-msgid "Distributed File Storage"
-msgstr "Stockage distribué de fichiers"
+#: plinth/modules/syncthing/__init__.py:55
+msgid "File Synchronization"
+msgstr "Synchronisation de fichiers"
-#: plinth/modules/tahoe/__init__.py:134
+#: plinth/modules/tahoe/__init__.py:30
msgid ""
"Tahoe-LAFS is a decentralized secure file storage system. It uses provider "
"independent security to store files over a distributed network of storage "
@@ -5841,7 +5974,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:139
+#: plinth/modules/tahoe/__init__.py:35
#, python-brace-format
msgid ""
"This {box_name} hosts a storage node and an introducer by default. "
@@ -5852,7 +5985,15 @@ msgstr ""
"Des introducteurs peuvent être ajoutés, ce qui introduira ce nœud dans les "
"autres nœuds de stockage."
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:33
+#: plinth/modules/tahoe/__init__.py:66
+msgid "Tahoe-LAFS"
+msgstr "Tahoe-LAFS"
+
+#: plinth/modules/tahoe/__init__.py:68
+msgid "Distributed File Storage"
+msgstr "Stockage distribué de fichiers"
+
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:17
#, python-format
msgid ""
"The Tahoe-LAFS server domain is set to %(domain_name)s. Changing the "
@@ -5865,37 +6006,33 @@ msgstr ""
"Tahoe-LAFS et vous PERDREZ DES DONNÉES. Vous pouvez accéder à Tahoe-LAFS à "
"https://%(domain_name)s:5678."
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:55
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:39
msgid "Local introducer"
msgstr "Introducteur local"
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:43
#: plinth/modules/tahoe/templates/tahoe-post-setup.html:59
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:75
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:92
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:76
msgid "Pet Name"
msgstr "Surnom"
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:72
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:56
msgid "Add new introducer"
msgstr "Ajouter un nouvel introducteur"
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:83
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:67
msgid "Add"
msgstr "Ajouter"
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:88
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:72
msgid "Connected introducers"
msgstr "Introducteurs connectés"
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:105
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:89
msgid "Remove"
msgstr "Supprimer"
-#: plinth/modules/tor/__init__.py:47
-msgid "Tor"
-msgstr "Tor"
-
-#: plinth/modules/tor/__init__.py:52
+#: plinth/modules/tor/__init__.py:33
msgid ""
"Tor is an anonymous communication system. You can learn more about it from "
"the Tor Project website. For "
@@ -5909,55 +6046,59 @@ msgstr ""
"recommande l'utilisation du navigateur Tor."
-#: plinth/modules/tor/__init__.py:83
+#: plinth/modules/tor/__init__.py:55
+msgid "Tor"
+msgstr "Tor"
+
+#: plinth/modules/tor/__init__.py:66
msgid "Tor Onion Service"
msgstr "Service Tor Onion"
-#: plinth/modules/tor/__init__.py:87
+#: plinth/modules/tor/__init__.py:70
msgid "Tor Socks Proxy"
msgstr "Mandataire Socks Tor"
-#: plinth/modules/tor/__init__.py:91
+#: plinth/modules/tor/__init__.py:74
msgid "Tor Bridge Relay"
msgstr "Relais pont Tor"
-#: plinth/modules/tor/__init__.py:112
+#: plinth/modules/tor/__init__.py:95
msgid "Tor relay port available"
msgstr "Port du relais Tor disponible"
-#: plinth/modules/tor/__init__.py:122
+#: plinth/modules/tor/__init__.py:105
msgid "Obfs3 transport registered"
msgstr "Transport Obfs3 enregistré"
-#: plinth/modules/tor/__init__.py:132
+#: plinth/modules/tor/__init__.py:115
msgid "Obfs4 transport registered"
msgstr "Transport Obfs4 enregistré"
-#: plinth/modules/tor/__init__.py:225
+#: plinth/modules/tor/__init__.py:208
#, 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:236
+#: plinth/modules/tor/__init__.py:219
#, python-brace-format
msgid "Confirm Tor usage at {url} on tcp{kind}"
msgstr "Confirmez l'utilisation de Tor pour {url} sur tcp{kind}"
-#: plinth/modules/tor/forms.py:46
+#: plinth/modules/tor/forms.py:31
msgid ""
"Enter a valid bridge with this format: [transport] IP:ORPort [fingerprint]"
msgstr ""
"Entrez un pont valide avec ce format : [transport] IP:ORPort [fingerprint]"
-#: plinth/modules/tor/forms.py:88
+#: plinth/modules/tor/forms.py:73
msgid "Enable Tor"
msgstr "Activer Tor"
-#: plinth/modules/tor/forms.py:90
+#: plinth/modules/tor/forms.py:75
msgid "Use upstream bridges to connect to Tor network"
msgstr "Utilisez des ponts upstream pour vous connecter au réseau Tor"
-#: plinth/modules/tor/forms.py:92
+#: plinth/modules/tor/forms.py:77
msgid ""
"When enabled, the bridges configured below will be used to connect to the "
"Tor network. Use this option if your Internet Service Provider (ISP) blocks "
@@ -5967,11 +6108,11 @@ msgstr ""
"réseau Tor. Utilisez cette option si votre FAI bloque ou censure les "
"connexions au réseau Tor. Cela désactivera les modes relais."
-#: plinth/modules/tor/forms.py:97
+#: plinth/modules/tor/forms.py:82
msgid "Upstream bridges"
msgstr "Ponts upstream"
-#: plinth/modules/tor/forms.py:99
+#: plinth/modules/tor/forms.py:84
msgid ""
"You can get some bridges from https://bridges.torproject.org/ and copy/paste the bridge information "
@@ -5982,11 +6123,11 @@ msgstr ""
"informations du pont ici. Les transports pris en charge actuellement sont "
"aucun, obfs3, obfs4 et scamblesuit."
-#: plinth/modules/tor/forms.py:105
+#: plinth/modules/tor/forms.py:90
msgid "Enable Tor relay"
msgstr "Activer le relais Tor"
-#: plinth/modules/tor/forms.py:106
+#: plinth/modules/tor/forms.py:91
#, python-brace-format
msgid ""
"When enabled, your {box_name} will run a Tor relay and donate bandwidth to "
@@ -5997,11 +6138,11 @@ msgstr ""
"don de bande passante au réseau Tor. Faites cela si vous avez plus de 2 "
"mégabits/s de bande passante de téléchargement et d'envoi."
-#: plinth/modules/tor/forms.py:111
+#: plinth/modules/tor/forms.py:96
msgid "Enable Tor bridge relay"
msgstr "Activer le relais pont Tor"
-#: plinth/modules/tor/forms.py:113
+#: plinth/modules/tor/forms.py:98
msgid ""
"When enabled, relay information is published in the Tor bridge database "
"instead of public Tor relay database making it harder to censor this node. "
@@ -6012,11 +6153,11 @@ msgstr ""
"rendant ainsi plus difficile de censurer ce nœud. Cela aide d'autres de "
"contourner la censure."
-#: plinth/modules/tor/forms.py:118
+#: plinth/modules/tor/forms.py:103
msgid "Enable Tor Hidden Service"
msgstr "Activer le service Tor caché"
-#: plinth/modules/tor/forms.py:120
+#: plinth/modules/tor/forms.py:105
#, python-brace-format
msgid ""
"A hidden service will allow {box_name} to provide selected services (such as "
@@ -6027,11 +6168,11 @@ msgstr ""
"sélectionnés (comme un wiki ou Chat) sans révéler votre emplacement. Ne pas "
"encore utiliser pour l'anonymat fort."
-#: plinth/modules/tor/forms.py:125
+#: plinth/modules/tor/forms.py:110
msgid "Download software packages over Tor"
msgstr "Téléchargez les logiciels via Tor"
-#: plinth/modules/tor/forms.py:126
+#: plinth/modules/tor/forms.py:111
msgid ""
"When enabled, software will be downloaded over the Tor network for "
"installations and upgrades. This adds a degree of privacy and security "
@@ -6041,35 +6182,35 @@ msgstr ""
"installation et mises à niveau. Ce processus ajoute un degré de sécurité et "
"de confidentialité durant le téléchargement des logiciels."
-#: plinth/modules/tor/forms.py:141
+#: plinth/modules/tor/forms.py:126
msgid "Specify at least one upstream bridge to use upstream bridges."
msgstr "Spécifiez au moins un pont upstream pour utiliser des ponts upstream."
-#: plinth/modules/tor/manifest.py:29
+#: plinth/modules/tor/manifest.py:14
msgid "Tor Browser"
msgstr "Navigateur Tor"
-#: plinth/modules/tor/manifest.py:45
+#: plinth/modules/tor/manifest.py:30
msgid "Orbot: Proxy with Tor"
msgstr "Orbot : Mandataire avec Tor"
-#: plinth/modules/tor/templates/tor.html:41
+#: plinth/modules/tor/templates/tor.html:26
msgid "Tor configuration is being updated"
msgstr "La configuration de Tor est en cours d'actualisation"
-#: plinth/modules/tor/templates/tor.html:50
+#: plinth/modules/tor/templates/tor.html:35
msgid "Onion Service"
msgstr "Service Onion"
-#: plinth/modules/tor/templates/tor.html:52
+#: plinth/modules/tor/templates/tor.html:37
msgid "Ports"
msgstr "Ports"
-#: plinth/modules/tor/templates/tor.html:82
+#: plinth/modules/tor/templates/tor.html:67
msgid "Relay"
msgstr "Relais"
-#: plinth/modules/tor/templates/tor.html:84
+#: plinth/modules/tor/templates/tor.html:69
#, python-format
msgid ""
"If your %(box_name)s is behind a router or firewall, you should make sure "
@@ -6079,22 +6220,17 @@ msgstr ""
"devez vous assurer que les ports suivants soient ouverts et réacheminés si "
"nécessaire :"
-#: plinth/modules/tor/templates/tor.html:112
+#: plinth/modules/tor/templates/tor.html:97
msgid "SOCKS"
msgstr "SOCKS"
-#: plinth/modules/tor/templates/tor.html:115
+#: plinth/modules/tor/templates/tor.html:100
#, python-format
msgid "A Tor SOCKS port is available on your %(box_name)s on TCP port 9050."
msgstr ""
"Un port SOCKS pour Tor est accessible pour %(box_name)s sur le port TCP 9050."
-#: plinth/modules/transmission/__init__.py:41
-#: plinth/modules/transmission/manifest.py:24
-msgid "Transmission"
-msgstr "Transmission"
-
-#: plinth/modules/transmission/__init__.py:48
+#: plinth/modules/transmission/__init__.py:27
msgid ""
"BitTorrent is a peer-to-peer file sharing protocol. Transmission daemon "
"handles Bitorrent file sharing. Note that BitTorrent is not anonymous."
@@ -6103,15 +6239,12 @@ msgstr ""
"Transmission permet le partage de fichiers Bitorrent. Noter que "
"l'utilisation de Bitorrent n'est pas anonyme."
-#: plinth/modules/ttrss/__init__.py:43 plinth/modules/ttrss/manifest.py:34
-msgid "Tiny Tiny RSS"
-msgstr "Tiny Tiny RSS"
+#: plinth/modules/transmission/__init__.py:48
+#: plinth/modules/transmission/manifest.py:9
+msgid "Transmission"
+msgstr "Transmission"
-#: plinth/modules/ttrss/__init__.py:47
-msgid "News Feed Reader"
-msgstr "Lecteur de flux d'informations"
-
-#: plinth/modules/ttrss/__init__.py:50
+#: plinth/modules/ttrss/__init__.py:29
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 "
@@ -6122,7 +6255,7 @@ msgstr ""
"restant au plus près du design d'une application utilisée sur le bureau d'un "
"ordinateur."
-#: plinth/modules/ttrss/__init__.py:54
+#: plinth/modules/ttrss/__init__.py:33
#, python-brace-format
msgid ""
"When enabled, Tiny Tiny RSS can be accessed by any utilisateur avec un compte {box_name}."
-#: plinth/modules/ttrss/__init__.py:58
+#: plinth/modules/ttrss/__init__.py:37
msgid ""
"When using a mobile or desktop application for Tiny Tiny RSS, use the URL /tt-rss-app for "
@@ -6141,64 +6274,72 @@ msgstr ""
"utilisez l'URL tt-rss-"
"app pour se connecter."
-#: plinth/modules/ttrss/__init__.py:65
+#: plinth/modules/ttrss/__init__.py:42
msgid "Read and subscribe to news feeds"
msgstr "Lire et souscrire à des abonnements d'infos"
-#: plinth/modules/ttrss/manifest.py:25
+#: plinth/modules/ttrss/__init__.py:56 plinth/modules/ttrss/manifest.py:19
+msgid "Tiny Tiny RSS"
+msgstr "Tiny Tiny RSS"
+
+#: plinth/modules/ttrss/__init__.py:57
+msgid "News Feed Reader"
+msgstr "Lecteur de flux d'informations"
+
+#: plinth/modules/ttrss/manifest.py:10
msgid "Tiny Tiny RSS (Fork)"
msgstr "Tiny Tiny RSS (Fork)"
-#: plinth/modules/upgrades/__init__.py:37 plinth/templates/setup.html:89
-msgid "Update"
-msgstr "Actualiser"
-
-#: plinth/modules/upgrades/__init__.py:40
+#: plinth/modules/upgrades/__init__.py:23
msgid "Check for and apply the latest software and security updates."
msgstr ""
"Rechercher et installer les dernières mises à jour logicielles et les "
"correctifs de sécurité."
-#: plinth/modules/upgrades/__init__.py:84
+#: plinth/modules/upgrades/__init__.py:38 plinth/templates/setup.html:74
+msgid "Update"
+msgstr "Actualiser"
+
+#: plinth/modules/upgrades/__init__.py:71
msgid "FreedomBox Updated"
msgstr "FreedomBox mise à jour"
-#: plinth/modules/upgrades/forms.py:28
+#: plinth/modules/upgrades/forms.py:13
msgid "Enable auto-update"
msgstr "Activer les mises à jour automatiques"
-#: plinth/modules/upgrades/forms.py:29
+#: plinth/modules/upgrades/forms.py:14
msgid "When enabled, FreedomBox automatically updates once a day."
msgstr ""
"Une fois activé, FreedomBox se mettra à jour automatiquement une fois par "
"jour."
-#: plinth/modules/upgrades/templates/upgrades-new-release.html:24
+#: plinth/modules/upgrades/templates/upgrades-new-release.html:9
#, python-format
msgid "%(box_name)s Updated"
msgstr "%(box_name)s mis à jour"
-#: plinth/modules/upgrades/templates/upgrades-new-release.html:28
+#: plinth/modules/upgrades/templates/upgrades-new-release.html:13
#, python-format
msgid ""
"%(box_name)s has been updated to version %(version)s. See the release announcement."
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades-new-release.html:37
-#: plinth/templates/notifications.html:59
+#: plinth/modules/upgrades/templates/upgrades-new-release.html:22
+#: plinth/templates/notifications.html:44
msgid "Dismiss"
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades.html:45
+#: plinth/modules/upgrades/templates/upgrades.html:30
msgid "Update now"
msgstr "Mettre à jour maintenant"
-#: plinth/modules/upgrades/templates/upgrades.html:54
+#: plinth/modules/upgrades/templates/upgrades.html:39
msgid "Updating..."
msgstr "Mise à jour…"
-#: plinth/modules/upgrades/templates/upgrades.html:59
+#: plinth/modules/upgrades/templates/upgrades.html:44
msgid ""
"This may take a long time to complete. During an update, "
"you cannot install apps. Also, this web interface may be temporarily "
@@ -6210,46 +6351,42 @@ msgstr ""
"temporairement indisponible et afficher une erreur. Dans ce cas, "
"rafraîchissez la page pour continuer."
-#: plinth/modules/upgrades/templates/upgrades.html:73
+#: plinth/modules/upgrades/templates/upgrades.html:58
msgid "Toggle recent update logs"
msgstr "Basculer les journaux de modification récents"
-#: plinth/modules/upgrades/templates/upgrades_configure.html:26
-#: plinth/modules/upgrades/templates/upgrades_configure.html:27
-#: plinth/modules/upgrades/views.py:107
+#: plinth/modules/upgrades/templates/upgrades_configure.html:11
+#: plinth/modules/upgrades/templates/upgrades_configure.html:12
+#: plinth/modules/upgrades/views.py:89
msgid "Manual update"
msgstr "Mise à jour manuelle"
-#: plinth/modules/upgrades/views.py:66
+#: plinth/modules/upgrades/views.py:48
#, python-brace-format
msgid "Error when configuring unattended-upgrades: {error}"
msgstr "Erreur lors de la configuration de unattended-upgrades : {error}"
-#: plinth/modules/upgrades/views.py:70
+#: plinth/modules/upgrades/views.py:52
msgid "Automatic upgrades enabled"
msgstr "Mises à niveau automatiques activées"
-#: plinth/modules/upgrades/views.py:73
+#: plinth/modules/upgrades/views.py:55
msgid "Automatic upgrades disabled"
msgstr "Mises à niveau automatiques désactivées"
-#: plinth/modules/upgrades/views.py:75
+#: plinth/modules/upgrades/views.py:57
msgid "Settings unchanged"
msgstr "Paramètres inchangés"
-#: plinth/modules/upgrades/views.py:101
+#: plinth/modules/upgrades/views.py:83
msgid "Upgrade process started."
msgstr "Mise à niveau démarrée."
-#: plinth/modules/upgrades/views.py:104
+#: plinth/modules/upgrades/views.py:86
msgid "Starting upgrade failed."
msgstr "Échec du démarrage de la mise à niveau."
-#: plinth/modules/users/__init__.py:51
-msgid "Users and Groups"
-msgstr "Utilisateurs et Groupes"
-
-#: plinth/modules/users/__init__.py:54
+#: plinth/modules/users/__init__.py:37
msgid ""
"Create and managed user accounts. These accounts serve as centralized "
"authentication mechanism for most apps. Some apps further require a user "
@@ -6260,7 +6397,7 @@ msgstr ""
"Certaines nécessitent en plus qu'un compte fasse partie d'un groupe pour "
"autoriser l'utilisateur à accéder à l'application."
-#: plinth/modules/users/__init__.py:59
+#: plinth/modules/users/__init__.py:42
#, python-brace-format
msgid ""
"Any user may login to {box_name} web interface to see a list of apps "
@@ -6272,35 +6409,39 @@ msgstr ""
"revanche, seuls les utilisateurs du groupe admin pourront modifier "
"ces applications ou les paramètres-système."
-#: plinth/modules/users/__init__.py:128
+#: plinth/modules/users/__init__.py:64
+msgid "Users and Groups"
+msgstr "Utilisateurs et Groupes"
+
+#: plinth/modules/users/__init__.py:115
#, python-brace-format
msgid "Check LDAP entry \"{search_item}\""
msgstr "Vérification de l'entrée LDAP \"{search_item}\""
-#: plinth/modules/users/forms.py:43
+#: plinth/modules/users/forms.py:28
msgid "Access to all services and system settings"
msgstr "Accès à tous les services et les configurations-système"
-#: plinth/modules/users/forms.py:59
+#: plinth/modules/users/forms.py:44
msgid "Username is taken or is reserved."
msgstr "Le nom d'utilisateur est déjà pris ou est réservé."
-#: plinth/modules/users/forms.py:87
+#: plinth/modules/users/forms.py:72
#, fuzzy
#| msgid "Invalid server name"
msgid "Enter a valid username."
msgstr "Nom de serveur invalide"
-#: plinth/modules/users/forms.py:93
+#: plinth/modules/users/forms.py:78
msgid ""
"Required. 150 characters or fewer. English letters, digits and @/./-/_ only."
msgstr ""
-#: plinth/modules/users/forms.py:106 plinth/modules/users/forms.py:222
+#: plinth/modules/users/forms.py:91 plinth/modules/users/forms.py:207
msgid "Permissions"
msgstr "Permissions"
-#: plinth/modules/users/forms.py:109
+#: plinth/modules/users/forms.py:94
msgid ""
"Select which services should be available to the new user. The user will be "
"able to log in to services that support single sign-on through LDAP, if they "
@@ -6315,20 +6456,20 @@ msgstr ""
"peuvent également se connecter au système avec Secure Shell (SSH) et se voir "
"accorder le mode superutilisateur (sudo)."
-#: plinth/modules/users/forms.py:148 plinth/modules/users/forms.py:372
+#: plinth/modules/users/forms.py:133 plinth/modules/users/forms.py:357
msgid "Creating LDAP user failed."
msgstr "La création de l'utilisateur LDAP n'a pas abouti."
-#: plinth/modules/users/forms.py:159
+#: plinth/modules/users/forms.py:144
#, python-brace-format
msgid "Failed to add new user to {group} group."
msgstr "Échec de l'ajout d'un nouvel utilisateur au groupe {group}."
-#: plinth/modules/users/forms.py:173
+#: plinth/modules/users/forms.py:158
msgid "Authorized SSH Keys"
msgstr "Clés SSH autorisées"
-#: plinth/modules/users/forms.py:175
+#: plinth/modules/users/forms.py:160
msgid ""
"Setting an SSH public key will allow this user to securely log in to the "
"system without using a password. You may enter multiple keys, one on each "
@@ -6339,82 +6480,82 @@ msgstr ""
"clefs multiples, une sur chaque ligne. Les lignes vides et celles commençant "
"par # seront ignorées."
-#: plinth/modules/users/forms.py:259
+#: plinth/modules/users/forms.py:244
msgid "Renaming LDAP user failed."
msgstr "Le changement du nom de l'utilisateur LDAP a échoué."
-#: plinth/modules/users/forms.py:271
+#: plinth/modules/users/forms.py:256
msgid "Failed to remove user from group."
msgstr "Échec du retrait de l'utilisateur du groupe."
-#: plinth/modules/users/forms.py:282
+#: plinth/modules/users/forms.py:267
msgid "Failed to add user to group."
msgstr "Échec de l'ajout de l'utilisateur au groupe."
-#: plinth/modules/users/forms.py:291
+#: plinth/modules/users/forms.py:276
msgid "Unable to set SSH keys."
msgstr "Impossible de définir les clés SSH."
-#: plinth/modules/users/forms.py:306
+#: plinth/modules/users/forms.py:291
msgid "Failed to change user status."
msgstr "Échec du changement de statut de l'utilisateur."
-#: plinth/modules/users/forms.py:314
+#: plinth/modules/users/forms.py:299
msgid "Cannot delete the only administrator in the system."
msgstr "Impossible de supprimer le seul administrateur de ce système."
-#: plinth/modules/users/forms.py:346
+#: plinth/modules/users/forms.py:331
msgid "Changing LDAP user password failed."
msgstr "Le changement de mot de passe pour l'utilisateur LDAP a échoué."
-#: plinth/modules/users/forms.py:381
+#: plinth/modules/users/forms.py:366
msgid "Failed to add new user to admin group."
msgstr "L'ajout du nouvel utilisateur au groupe administrateur n'a pas abouti."
-#: plinth/modules/users/forms.py:398
+#: plinth/modules/users/forms.py:383
msgid "Failed to restrict console access."
msgstr "Échec de la restriction de l'accès à la console."
-#: plinth/modules/users/forms.py:410
+#: plinth/modules/users/forms.py:395
msgid "User account created, you are now logged in"
msgstr "Compte utilisateur créé, vous êtes maintenant connecté."
-#: plinth/modules/users/templates/users_change_password.html:26
+#: plinth/modules/users/templates/users_change_password.html:11
#, python-format
msgid "Change Password for %(username)s"
msgstr "Changer le mot de passe pour %(username)s"
-#: plinth/modules/users/templates/users_change_password.html:36
+#: plinth/modules/users/templates/users_change_password.html:21
msgid "Save Password"
msgstr "Sauvegarder Mot de Passe"
-#: plinth/modules/users/templates/users_create.html:32
-#: plinth/modules/users/templates/users_list.html:42
-#: plinth/modules/users/templates/users_list.html:44
-#: plinth/modules/users/views.py:57
+#: plinth/modules/users/templates/users_create.html:17
+#: plinth/modules/users/templates/users_list.html:27
+#: plinth/modules/users/templates/users_list.html:29
+#: plinth/modules/users/views.py:42
msgid "Create User"
msgstr "Créer Utilisateur"
-#: plinth/modules/users/templates/users_delete.html:26
-#: plinth/modules/users/views.py:139
+#: plinth/modules/users/templates/users_delete.html:11
+#: plinth/modules/users/views.py:121
msgid "Delete User"
msgstr "Supprimer Utilisateur"
-#: plinth/modules/users/templates/users_delete.html:29
+#: plinth/modules/users/templates/users_delete.html:14
#, python-format
msgid "Delete user %(username)s permanently?"
msgstr "Supprimer définitivement l'utilisateur %(username)s ?"
-#: plinth/modules/users/templates/users_delete.html:38
+#: plinth/modules/users/templates/users_delete.html:23
#, python-format
msgid "Delete %(username)s"
msgstr "Supprimer %(username)s"
-#: plinth/modules/users/templates/users_firstboot.html:26
+#: plinth/modules/users/templates/users_firstboot.html:11
msgid "Administrator Account"
msgstr "Compte administrateur"
-#: plinth/modules/users/templates/users_firstboot.html:29
+#: plinth/modules/users/templates/users_firstboot.html:14
msgid ""
"Choose a username and password to access this web interface. The password "
"can be changed later. This user will be granted administrative privileges. "
@@ -6425,26 +6566,26 @@ msgstr ""
"de privilèges administrateur. Les autres utilisateurs peuvent être créés "
"plus tard."
-#: plinth/modules/users/templates/users_firstboot.html:42
+#: plinth/modules/users/templates/users_firstboot.html:27
msgid "Create Account"
msgstr "Créer le compte"
-#: plinth/modules/users/templates/users_list.html:38
-#: plinth/modules/users/views.py:74
+#: plinth/modules/users/templates/users_list.html:23
+#: plinth/modules/users/views.py:59
msgid "Users"
msgstr "Utilisateurs"
-#: plinth/modules/users/templates/users_list.html:57
+#: plinth/modules/users/templates/users_list.html:42
#, python-format
msgid "Delete user %(username)s"
msgstr "Supprimer l'utilisateur %(username)s"
-#: plinth/modules/users/templates/users_list.html:65
+#: plinth/modules/users/templates/users_list.html:50
#, python-format
msgid "Edit user %(username)s"
msgstr "Modifier l'utilisateur %(username)s"
-#: plinth/modules/users/templates/users_update.html:30
+#: plinth/modules/users/templates/users_update.html:15
#, python-format
msgid ""
"Use the change password form to "
@@ -6453,59 +6594,54 @@ msgstr ""
"Utiliser le formulaire de modification de "
"mot de passe pour changer votre mot de passe."
-#: plinth/modules/users/templates/users_update.html:42
-#: plinth/templates/language-selection.html:32
+#: plinth/modules/users/templates/users_update.html:27
+#: plinth/templates/language-selection.html:17
msgid "Save Changes"
msgstr "Sauvegarder Modifications"
-#: plinth/modules/users/views.py:55
+#: plinth/modules/users/views.py:40
#, python-format
msgid "User %(username)s created."
msgstr "Utilisateur %(username)s créé."
-#: plinth/modules/users/views.py:93
+#: plinth/modules/users/views.py:75
#, python-format
msgid "User %(username)s updated."
msgstr "Utilisateur %(username)s mis à jour."
-#: plinth/modules/users/views.py:94
+#: plinth/modules/users/views.py:76
msgid "Edit User"
msgstr "Modifier Utilisateur"
-#: plinth/modules/users/views.py:149
+#: plinth/modules/users/views.py:131
#, python-brace-format
msgid "User {user} deleted."
msgstr "Utilisateur {user} supprimé."
-#: plinth/modules/users/views.py:156
+#: plinth/modules/users/views.py:138
msgid "Deleting LDAP user failed."
msgstr "La suppression de l'utilisateur LDAP a échoué."
-#: plinth/modules/users/views.py:165
+#: plinth/modules/users/views.py:147
msgid "Change Password"
msgstr "Changer Mot de Passe"
-#: plinth/modules/users/views.py:166
+#: plinth/modules/users/views.py:148
msgid "Password changed successfully."
msgstr "Mot de passe changé avec succès."
-#: plinth/modules/wireguard/__init__.py:38
-#: plinth/modules/wireguard/manifest.py:29
-msgid "WireGuard"
-msgstr "WireGuard"
-
-#: plinth/modules/wireguard/__init__.py:43
+#: plinth/modules/wireguard/__init__.py:24
msgid "WireGuard is a fast, modern, secure VPN tunnel."
msgstr ""
-#: plinth/modules/wireguard/__init__.py:45
+#: plinth/modules/wireguard/__init__.py:26
#, python-brace-format
msgid ""
"It can be used to connect to a VPN provider which supports WireGuard, and to "
"route all outgoing traffic from {box_name} through the VPN."
msgstr ""
-#: plinth/modules/wireguard/__init__.py:49
+#: plinth/modules/wireguard/__init__.py:30
#, python-brace-format
msgid ""
"A second use case is to connect a mobile device to {box_name} while "
@@ -6513,61 +6649,66 @@ msgid ""
"securely relayed through {box_name}."
msgstr ""
-#: plinth/modules/wireguard/forms.py:47
+#: plinth/modules/wireguard/__init__.py:52
+#: plinth/modules/wireguard/manifest.py:14
+msgid "WireGuard"
+msgstr "WireGuard"
+
+#: plinth/modules/wireguard/forms.py:32
msgid "Invalid key."
msgstr "Clé invalide."
-#: plinth/modules/wireguard/forms.py:76
-#: plinth/modules/wireguard/templates/wireguard.html:32
-#: plinth/modules/wireguard/templates/wireguard.html:89
-#: plinth/modules/wireguard/templates/wireguard_delete_server.html:38
+#: plinth/modules/wireguard/forms.py:61
+#: plinth/modules/wireguard/templates/wireguard.html:17
+#: plinth/modules/wireguard/templates/wireguard.html:74
+#: plinth/modules/wireguard/templates/wireguard_delete_server.html:23
msgid "Public Key"
msgstr "Clé publique"
-#: plinth/modules/wireguard/forms.py:77
+#: plinth/modules/wireguard/forms.py:62
msgid ""
"Public key of the peer. Example: "
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs= ."
msgstr ""
-#: plinth/modules/wireguard/forms.py:85
+#: plinth/modules/wireguard/forms.py:70
msgid "Endpoint of the server"
msgstr ""
-#: plinth/modules/wireguard/forms.py:86
+#: plinth/modules/wireguard/forms.py:71
msgid ""
"Domain name and port in the form \"ip:port\". Example: demo.wireguard."
"com:12912 ."
msgstr ""
-#: plinth/modules/wireguard/forms.py:91
+#: plinth/modules/wireguard/forms.py:76
msgid "Public key of the server"
msgstr "Clé publique du serveur"
-#: plinth/modules/wireguard/forms.py:92
+#: plinth/modules/wireguard/forms.py:77
msgid ""
"Provided by the server operator, a long string of characters. Example: "
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs= ."
msgstr ""
-#: plinth/modules/wireguard/forms.py:97
+#: plinth/modules/wireguard/forms.py:82
#, fuzzy
#| msgid "A list of IP addresses, separated by space"
msgid "Client IP address provided by server"
msgstr "Une liste d'adresses IP séparées par des espaces"
-#: plinth/modules/wireguard/forms.py:98
+#: plinth/modules/wireguard/forms.py:83
msgid ""
"IP address assigned to this machine on the VPN after connecting to the "
"endpoint. This value is usually provided by the server operator. Example: "
"192.168.0.10."
msgstr ""
-#: plinth/modules/wireguard/forms.py:104
+#: plinth/modules/wireguard/forms.py:89
msgid "Private key of this machine"
msgstr "Clé privée de cette machine"
-#: plinth/modules/wireguard/forms.py:105
+#: plinth/modules/wireguard/forms.py:90
msgid ""
"Optional. New public/private keys are generated if left blank. Public key "
"can then be provided to the server. This is the recommended way. However, "
@@ -6575,187 +6716,187 @@ msgid ""
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs= ."
msgstr ""
-#: plinth/modules/wireguard/forms.py:113
+#: plinth/modules/wireguard/forms.py:98
msgid "Pre-shared key"
msgstr "Clé pré-partagée"
-#: plinth/modules/wireguard/forms.py:114
+#: plinth/modules/wireguard/forms.py:99
msgid ""
"Optional. A shared secret key provided by the server to add an additional "
"layer of security. Fill in only if provided. Example: "
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs=."
msgstr ""
-#: plinth/modules/wireguard/forms.py:120
+#: plinth/modules/wireguard/forms.py:105
msgid "Use this connection to send all outgoing traffic"
msgstr ""
-#: plinth/modules/wireguard/forms.py:122
+#: plinth/modules/wireguard/forms.py:107
msgid "Typically checked for a VPN service though which all traffic is sent."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:25
+#: plinth/modules/wireguard/templates/wireguard.html:10
#, fuzzy
#| msgid "Chat Server"
msgid "As a Server"
msgstr "Serveur de discussion"
-#: plinth/modules/wireguard/templates/wireguard.html:27
+#: plinth/modules/wireguard/templates/wireguard.html:12
msgid "Peers allowed to connect to this server:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:33
+#: plinth/modules/wireguard/templates/wireguard.html:18
msgid "Allowed IPs"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:34
-#: plinth/modules/wireguard/templates/wireguard.html:90
+#: plinth/modules/wireguard/templates/wireguard.html:19
+#: plinth/modules/wireguard/templates/wireguard.html:75
#, fuzzy
#| msgid "Create Connection"
msgid "Last Connected Time"
msgstr "Créer Connexion"
-#: plinth/modules/wireguard/templates/wireguard.html:53
+#: plinth/modules/wireguard/templates/wireguard.html:38
#, python-format
msgid "No peers configured to connect to this %(box_name)s yet."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:62
+#: plinth/modules/wireguard/templates/wireguard.html:47
#, python-format
msgid "Public key for this %(box_name)s:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:68
+#: plinth/modules/wireguard/templates/wireguard.html:53
#, fuzzy
#| msgid "No shares currently configured."
msgid "Not configured yet."
msgstr "Aucun partage actuellement configuré."
-#: plinth/modules/wireguard/templates/wireguard.html:72
+#: plinth/modules/wireguard/templates/wireguard.html:57
#, fuzzy
#| msgid "Add new introducer"
msgid "Add a new peer"
msgstr "Ajouter un nouvel introducteur"
-#: plinth/modules/wireguard/templates/wireguard.html:76
-#: plinth/modules/wireguard/views.py:69
+#: plinth/modules/wireguard/templates/wireguard.html:61
+#: plinth/modules/wireguard/views.py:51
msgid "Add Allowed Client"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:79
+#: plinth/modules/wireguard/templates/wireguard.html:64
#, fuzzy
#| msgid "Chat Client"
msgid "As a Client"
msgstr "Client de discussion"
-#: plinth/modules/wireguard/templates/wireguard.html:81
+#: plinth/modules/wireguard/templates/wireguard.html:66
#, python-format
msgid "Servers that %(box_name)s will connect to:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:88
-#: plinth/modules/wireguard/templates/wireguard_delete_server.html:34
+#: plinth/modules/wireguard/templates/wireguard.html:73
+#: plinth/modules/wireguard/templates/wireguard_delete_server.html:19
msgid "Endpoint"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:111
+#: plinth/modules/wireguard/templates/wireguard.html:96
#, fuzzy
#| msgid "Authentication to remote server failed."
msgid "No connections to remote servers are configured yet."
msgstr "Échec de l'authentification sur le serveur distant."
-#: plinth/modules/wireguard/templates/wireguard.html:119
+#: plinth/modules/wireguard/templates/wireguard.html:104
#, fuzzy
#| msgid "Add new introducer"
msgid "Add a new server"
msgstr "Ajouter un nouvel introducteur"
-#: plinth/modules/wireguard/templates/wireguard.html:123
-#: plinth/modules/wireguard/views.py:178
+#: plinth/modules/wireguard/templates/wireguard.html:108
+#: plinth/modules/wireguard/views.py:160
#, fuzzy
#| msgid "Add Connection"
msgid "Add Connection to Server"
msgstr "Ajouter connexion"
-#: plinth/modules/wireguard/templates/wireguard_add_client.html:34
+#: plinth/modules/wireguard/templates/wireguard_add_client.html:19
#, fuzzy
#| msgid "IRC Client"
msgid "Add Client"
msgstr "Client IRC"
-#: plinth/modules/wireguard/templates/wireguard_delete_client.html:29
+#: plinth/modules/wireguard/templates/wireguard_delete_client.html:14
#, fuzzy
#| msgid "Are you sure that you want to remove this repository?"
msgid "Are you sure that you want to delete this client?"
msgstr "Êtes-vous sûr de vouloir supprimer ce dépôt ?"
-#: plinth/modules/wireguard/templates/wireguard_delete_server.html:29
+#: plinth/modules/wireguard/templates/wireguard_delete_server.html:14
#, fuzzy
#| msgid "Are you sure that you want to remove this repository?"
msgid "Are you sure that you want to delete this server?"
msgstr "Êtes-vous sûr de vouloir supprimer ce dépôt ?"
-#: plinth/modules/wireguard/templates/wireguard_edit_client.html:34
+#: plinth/modules/wireguard/templates/wireguard_edit_client.html:19
#, fuzzy
#| msgid "Chat Client"
msgid "Update Client"
msgstr "Client de discussion"
-#: plinth/modules/wireguard/templates/wireguard_edit_server.html:34
+#: plinth/modules/wireguard/templates/wireguard_edit_server.html:19
#, fuzzy
#| msgid "Create Connection"
msgid "Update Connection"
msgstr "Créer Connexion"
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:27
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:12
#, python-format
msgid ""
"%(box_name)s will allow this client to connect to it. Ensure that the client "
"is configured with the following information."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:35
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:20
msgid "Client public key:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:39
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:24
msgid "IP address to use for client:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:43
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:46
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:28
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:31
msgid "Pre-shared key:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:47
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:32
#, fuzzy
#| msgid "Server domain"
msgid "Server endpoints:"
msgstr "Domaine du serveur"
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:55
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:42
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:40
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:27
#, fuzzy
#| msgid "Select verified SSH public key"
msgid "Server public key:"
msgstr "Sélectionnez une clé SS publique vérifiée"
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:65
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:64
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:50
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:49
msgid "Data transmitted:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:69
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:68
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:54
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:53
msgid "Data received:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:73
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:72
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:58
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:57
msgid "Latest handshake:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:29
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:14
#, python-format
msgid ""
"%(box_name)s will attempt to reach a WireGuard server with the following "
@@ -6763,153 +6904,153 @@ msgid ""
"public key and IP address."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:38
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:23
#, fuzzy
#| msgid "Server domain"
msgid "Server endpoint:"
msgstr "Domaine du serveur"
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:50
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:35
msgid "Public key of this machine:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:54
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:39
msgid "IP address of this machine:"
msgstr ""
-#: plinth/modules/wireguard/views.py:64
+#: plinth/modules/wireguard/views.py:46
#, fuzzy
#| msgid "Add new introducer"
msgid "Added new client."
msgstr "Ajouter un nouvel introducteur"
-#: plinth/modules/wireguard/views.py:79 plinth/modules/wireguard/views.py:138
+#: plinth/modules/wireguard/views.py:61 plinth/modules/wireguard/views.py:120
#, fuzzy
#| msgid "A share with this name already exists."
msgid "Client with public key already exists"
msgstr "Un partage existe déjà avec ce nom."
-#: plinth/modules/wireguard/views.py:92
+#: plinth/modules/wireguard/views.py:74
#, fuzzy
#| msgid "Email Client"
msgid "Allowed Client"
msgstr "Client courriel"
-#: plinth/modules/wireguard/views.py:114
+#: plinth/modules/wireguard/views.py:96
#, fuzzy
#| msgid "Update setup"
msgid "Updated client."
msgstr "Actualiser la configuration"
-#: plinth/modules/wireguard/views.py:119
+#: plinth/modules/wireguard/views.py:101
#, fuzzy
#| msgid "Email Client"
msgid "Modify Client"
msgstr "Client courriel"
-#: plinth/modules/wireguard/views.py:152
+#: plinth/modules/wireguard/views.py:134
#, fuzzy
#| msgid "Delete"
msgid "Delete Allowed Client"
msgstr "Supprimer"
-#: plinth/modules/wireguard/views.py:161
+#: plinth/modules/wireguard/views.py:143
#, fuzzy
#| msgid "Archive deleted."
msgid "Client deleted."
msgstr "Archive supprimée."
-#: plinth/modules/wireguard/views.py:163
+#: plinth/modules/wireguard/views.py:145
#, fuzzy
#| msgid "Repository not found"
msgid "Client not found"
msgstr "Dépôt introuvable"
-#: plinth/modules/wireguard/views.py:173
+#: plinth/modules/wireguard/views.py:155
#, fuzzy
#| msgid "Added custom service"
msgid "Added new server."
msgstr "Service personnalisé ajouté"
-#: plinth/modules/wireguard/views.py:194
+#: plinth/modules/wireguard/views.py:176
#, fuzzy
#| msgid "Connection Type"
msgid "Connection to Server"
msgstr "Type de Connexion"
-#: plinth/modules/wireguard/views.py:212
+#: plinth/modules/wireguard/views.py:194
#, fuzzy
#| msgid "Update setup"
msgid "Updated server."
msgstr "Actualiser la configuration"
-#: plinth/modules/wireguard/views.py:217
+#: plinth/modules/wireguard/views.py:199
#, fuzzy
#| msgid "Edit Connection"
msgid "Modify Connection to Server"
msgstr "Modifier connexion"
-#: plinth/modules/wireguard/views.py:254
+#: plinth/modules/wireguard/views.py:236
#, fuzzy
#| msgid "Delete Connection"
msgid "Delete Connection to Server"
msgstr "Supprimer Connexion"
-#: plinth/modules/wireguard/views.py:274
+#: plinth/modules/wireguard/views.py:256
#, fuzzy
#| msgid "Share deleted."
msgid "Server deleted."
msgstr "Partage supprimé."
-#: plinth/network.py:42
+#: plinth/network.py:27
msgid "PPPoE"
msgstr "PPPoE"
-#: plinth/network.py:43
+#: plinth/network.py:28
msgid "Generic"
msgstr "Générique"
-#: plinth/package.py:137
+#: plinth/package.py:122
msgid "Error during installation"
msgstr "Erreur pendant l'installation"
-#: plinth/package.py:159
+#: plinth/package.py:144
msgid "installing"
msgstr "installation"
-#: plinth/package.py:161
+#: plinth/package.py:146
msgid "downloading"
msgstr "téléchargement"
-#: plinth/package.py:163
+#: plinth/package.py:148
msgid "media change"
msgstr "Changement de support"
-#: plinth/package.py:165
+#: plinth/package.py:150
#, python-brace-format
msgid "configuration file: {file}"
msgstr "fichier de configuration : {file}"
-#: plinth/templates/403.html:25
+#: plinth/templates/403.html:10
msgid "403 Forbidden"
msgstr "403 Non autorisé"
-#: plinth/templates/403.html:29
+#: plinth/templates/403.html:14
#, python-format
msgid "You don't have permission to access %(request_path)s on this server."
msgstr ""
"Vous n'avez pas la permission d'accéder %(request_path)s sur ce serveur."
-#: plinth/templates/404.html:25
+#: plinth/templates/404.html:10
msgid "404"
msgstr "404"
-#: plinth/templates/404.html:28
+#: plinth/templates/404.html:13
#, python-format
msgid "Requested page %(request_path)s was not found."
msgstr "La page %(request_path)s n'a pas été trouvée."
-#: plinth/templates/404.html:34
+#: plinth/templates/404.html:19
msgid ""
"If you believe this missing page should exist, please file a bug at the "
"FreedomBox Service (Plinth) project un rapport de bogue à l'équipe du projet Plinth."
-#: plinth/templates/500.html:25
+#: plinth/templates/500.html:10
msgid "500"
msgstr "500"
-#: plinth/templates/500.html:29
+#: plinth/templates/500.html:14
#, python-format
msgid ""
"This is an internal error and not something you caused or can fix. Please "
@@ -6937,115 +7078,119 @@ msgstr ""
"a> pour traitement et réparation. Veuillez également attacher le journal d'état au rapport d'erreur."
-#: plinth/templates/app.html:47
+#: plinth/templates/app-header.html:22
+msgid "Installation"
+msgstr "Installation"
+
+#: plinth/templates/app.html:32
#, python-format
msgid "Service %(service_name)s is running."
msgstr "Le service %(service_name)s est en fonctionnement."
-#: plinth/templates/app.html:52
+#: plinth/templates/app.html:37
#, python-format
msgid "Service %(service_name)s is not running."
msgstr "Le service %(service_name)s n'est pas en fonctionnement."
-#: plinth/templates/base.html:50
+#: plinth/templates/base.html:35
#, python-format
msgid "Core functionality and web interface for %(box_name)s"
msgstr "Fonction centrale et interface web pour %(box_name)s"
-#: plinth/templates/base.html:96
+#: plinth/templates/base.html:81
msgid "Toggle navigation"
msgstr "Basculer Navigation"
-#: plinth/templates/base.html:120 plinth/templates/base.html:123
+#: plinth/templates/base.html:105 plinth/templates/base.html:108
msgid "Home"
msgstr "Accueil"
-#: plinth/templates/base.html:128 plinth/templates/base.html:132
+#: plinth/templates/base.html:113 plinth/templates/base.html:117
msgid "Apps"
msgstr "Applis"
-#: plinth/templates/base.html:137 plinth/templates/base.html:141
+#: plinth/templates/base.html:122 plinth/templates/base.html:126
msgid "System"
msgstr "Système"
-#: plinth/templates/base.html:173 plinth/templates/base.html:174
+#: plinth/templates/base.html:158 plinth/templates/base.html:159
msgid "Change password"
msgstr "Changer le mot de passe"
-#: plinth/templates/base.html:181 plinth/templates/base.html:182
+#: plinth/templates/base.html:166 plinth/templates/base.html:167
msgid "Restart"
msgstr "Redémarrer"
-#: plinth/templates/base.html:187 plinth/templates/base.html:188
+#: plinth/templates/base.html:172 plinth/templates/base.html:173
msgid "Shut down"
msgstr "Éteindre"
-#: plinth/templates/base.html:195 plinth/templates/base.html:196
-#: plinth/templates/base.html:220 plinth/templates/base.html:222
+#: plinth/templates/base.html:180 plinth/templates/base.html:181
+#: plinth/templates/base.html:205 plinth/templates/base.html:207
msgid "Log out"
msgstr "Se déconnecter"
-#: plinth/templates/base.html:204 plinth/templates/base.html:207
+#: plinth/templates/base.html:189 plinth/templates/base.html:192
msgid "Select language"
msgstr "Choisir la langue"
-#: plinth/templates/base.html:212 plinth/templates/base.html:214
+#: plinth/templates/base.html:197 plinth/templates/base.html:199
msgid "Log in"
msgstr "S'identifier"
-#: plinth/templates/clients.html:32
+#: plinth/templates/clients.html:17
msgid "Web"
msgstr "Web"
-#: plinth/templates/clients.html:57
+#: plinth/templates/clients.html:42
msgid "Desktop"
msgstr "Bureau"
-#: plinth/templates/clients.html:68
+#: plinth/templates/clients.html:53
msgid "GNU/Linux"
msgstr "GNU/Linux"
-#: plinth/templates/clients.html:70
+#: plinth/templates/clients.html:55
msgid "Windows"
msgstr "Windows"
-#: plinth/templates/clients.html:72
+#: plinth/templates/clients.html:57
msgid "macOS"
msgstr "macOS"
-#: plinth/templates/clients.html:88
+#: plinth/templates/clients.html:73
msgid "Mobile"
msgstr "Mobile"
-#: plinth/templates/clients.html:99
+#: plinth/templates/clients.html:84
msgid "Play Store"
msgstr "Play Store"
-#: plinth/templates/clients.html:101
+#: plinth/templates/clients.html:86
msgid "F-Droid"
msgstr "F-Droid"
-#: plinth/templates/clients.html:103
+#: plinth/templates/clients.html:88
msgid "App Store"
msgstr "App Store"
-#: plinth/templates/clients.html:119
+#: plinth/templates/clients.html:104
msgid "Package"
msgstr "Paquet"
-#: plinth/templates/clients.html:126
+#: plinth/templates/clients.html:111
msgid "Debian:"
msgstr "Debian :"
-#: plinth/templates/clients.html:129
+#: plinth/templates/clients.html:114
msgid "Homebrew:"
msgstr "Homebrew :"
-#: plinth/templates/clients.html:132
+#: plinth/templates/clients.html:117
msgid "RPM:"
msgstr "RPM :"
-#: plinth/templates/first_setup.html:39
+#: plinth/templates/first_setup.html:24
#, python-format
msgid ""
"Please wait for %(box_name)s to finish installation. You can start using "
@@ -7054,11 +7199,7 @@ msgstr ""
"Veuillez attendre que %(box_name)s termine l’installation. Vous pourrez "
"utiliser votre %(box_name)s quand ce sera fait."
-#: plinth/templates/header.html:36
-msgid "Installation"
-msgstr "Installation"
-
-#: plinth/templates/index.html:37
+#: plinth/templates/index.html:22
#, python-format
msgid ""
"Enable some applications to add shortcuts to "
@@ -7067,11 +7208,11 @@ msgstr ""
"Activez quelques applications pour ajouter des "
"raccourcis sur cette page."
-#: plinth/templates/index.html:59
+#: plinth/templates/index.html:44
msgid "Configure »"
msgstr "Configurer »"
-#: plinth/templates/index.html:115
+#: plinth/templates/index.html:100
#, python-format
msgid ""
"%(box_name)s, a Debian pure blend, is a 100%% free software self-hosting web "
@@ -7083,7 +7224,7 @@ msgstr ""
"applications sociales sur de petites machines. Les outils de communication "
"fournis respectent votre vie privée et vos données personnelles."
-#: plinth/templates/index.html:124
+#: plinth/templates/index.html:109
#, python-format
msgid ""
"This portal is a part of the %(box_name)s web interface. %(box_name)s is "
@@ -7094,42 +7235,42 @@ msgstr ""
"un logiciel libre, distribué sous la licence GNU Affero General Public "
"License, Version 3 ou ultérieure."
-#: plinth/templates/index.html:144
+#: plinth/templates/index.html:129
msgid "Homepage"
msgstr "Page d'accueil"
-#: plinth/templates/index.html:147
+#: plinth/templates/index.html:132
msgid "Source Code"
msgstr "Code source"
-#: plinth/templates/index.html:150
+#: plinth/templates/index.html:135
msgid "Donate"
msgstr "Faire un don"
-#: plinth/templates/index.html:154
+#: plinth/templates/index.html:139
msgid "FreedomBox Foundation"
msgstr "Fondation FreedomBox"
-#: plinth/templates/index.html:161
+#: plinth/templates/index.html:146
msgid "IRC Chatroom"
msgstr "Chat IRC"
-#: plinth/templates/index.html:166
+#: plinth/templates/index.html:151
msgid "Mailing list"
msgstr "Liste de diffusion mail"
-#: plinth/templates/internal-zone.html:26
+#: plinth/templates/internal-zone.html:11
#, python-format
msgid "%(service_name)s is available only on internal networks."
msgstr ""
"%(service_name)s n'est disponible que sur les réseaux internes."
-#: plinth/templates/internal-zone.html:32
+#: plinth/templates/internal-zone.html:17
msgid "Currently there are no network interfaces configured as internal."
msgstr ""
"Il n'y a actuellement aucune interface-réseau configurée comme interne."
-#: plinth/templates/internal-zone.html:34
+#: plinth/templates/internal-zone.html:19
#, python-format
msgid ""
"Currently the following network interfaces are configured as internal: "
@@ -7138,17 +7279,17 @@ msgstr ""
"Actuellement les interfaces-réseau suivantes sont configurées comme "
"internes : %(interface_list)s"
-#: plinth/templates/notifications-dropdown.html:26
+#: plinth/templates/notifications-dropdown.html:11
#, fuzzy
#| msgid "No certificate"
msgid "Notifications"
msgstr "Aucun certificat"
-#: plinth/templates/port-forwarding-info.html:23
+#: plinth/templates/port-forwarding-info.html:8
msgid "Port Forwarding"
msgstr "Redirection de port"
-#: plinth/templates/port-forwarding-info.html:26
+#: plinth/templates/port-forwarding-info.html:11
#, python-format
msgid ""
"If your FreedomBox is behind a router, you will need to set up port "
@@ -7159,16 +7300,16 @@ msgstr ""
"mettre en place une redirection de port sur votre routeur. Vous devriez "
"rediriger les ports suivants pour %(service_name)s :"
-#: plinth/templates/setup.html:51
+#: plinth/templates/setup.html:36
msgid "Install this application?"
msgstr "Installer cette application ?"
-#: plinth/templates/setup.html:55
+#: plinth/templates/setup.html:40
msgid "This application needs an update. Update now?"
msgstr ""
"Cette application a besoin d'une mise à jour. Mettre à jour maintenant ?"
-#: plinth/templates/setup.html:66
+#: plinth/templates/setup.html:51
msgid ""
"Another installation or upgrade is already running. Please wait for a few "
"moments before trying again."
@@ -7176,50 +7317,50 @@ msgstr ""
"Une autre installation ou mise à niveau est déjà en cours d’exécution. "
"Veuillez patienter quelques instants avant de réessayer."
-#: plinth/templates/setup.html:73
+#: plinth/templates/setup.html:58
msgid "This application is currently not available in your distribution."
msgstr ""
"Cette application n'est actuellement pas disponible dans votre distribution."
-#: plinth/templates/setup.html:87
+#: plinth/templates/setup.html:72
msgid "Install"
msgstr "Installer"
-#: plinth/templates/setup.html:98
+#: plinth/templates/setup.html:83
msgid "Performing pre-install operation"
msgstr "Pré-installation en cours"
-#: plinth/templates/setup.html:102
+#: plinth/templates/setup.html:87
msgid "Performing post-install operation"
msgstr "Post-installation en cours"
-#: plinth/templates/setup.html:107
+#: plinth/templates/setup.html:92
#, python-format
msgid "Installing %(package_names)s: %(status)s"
msgstr "Installation de %(package_names)s: %(status)s"
-#: plinth/templates/setup.html:117
+#: plinth/templates/setup.html:102
#, python-format
msgid "%(percentage)s%% complete"
msgstr "%(percentage)s%% effectué"
-#: plinth/templates/toolbar.html:38
+#: plinth/templates/toolbar.html:23
msgid "Launch web client"
msgstr "Lancer le client Web"
-#: plinth/templates/toolbar.html:47
+#: plinth/templates/toolbar.html:32
msgid "Client Apps"
msgstr "Applications clientes"
-#: plinth/views.py:179
+#: plinth/views.py:189
msgid "Application enabled"
msgstr "Application activée"
-#: plinth/views.py:182
+#: plinth/views.py:192
msgid "Application disabled"
msgstr "Application désactivée"
-#: plinth/web_framework.py:190
+#: plinth/web_framework.py:107
msgid "Gujarati"
msgstr "Gujarati"
diff --git a/plinth/locale/gl/LC_MESSAGES/django.po b/plinth/locale/gl/LC_MESSAGES/django.po
index 1ba72be2c..c6ab1ab64 100644
--- a/plinth/locale/gl/LC_MESSAGES/django.po
+++ b/plinth/locale/gl/LC_MESSAGES/django.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2020-02-14 21:26+0200\n"
+"POT-Creation-Date: 2020-02-24 19:12-0500\n"
"PO-Revision-Date: 2019-07-11 08:01+0000\n"
"Last-Translator: Miguel A. Bouzada This means that devices on the Internet can reach you when you are " +"connected to the Internet. Every time you connect to the Internet with your " +"Internet Service Provider (ISP), you may get a different IP address, " +"especially after some offline time. Many ISPs offer this type of " +"connectivity. If you have a public IP address but are unsure if it changes " +"over time or not, it is safer to choose this option.
" +msgstr "" + #: plinth/modules/networks/forms.py:313 +#, python-brace-format +msgid "" +"I have a public IP address that does not change overtime (recommended)This means that devices on the Internet can reach you " +"when you are connected to the Internet. Every time you connect to the " +"Internet with your Internet Service Provider (ISP), you always get the same " +"IP address. This is the most trouble-free setup for many {box_name} services " +"but very few ISPs offer this. You may be able to get this service from your " +"ISP by making an additional payment.
" +msgstr "" + +#: plinth/modules/networks/forms.py:326 +#, python-brace-format +msgid "" +"I dont have a public IP addressThis means that " +"devices on the Internet can not reach you when you are connected to " +"the Internet. Every time you connect to the Internet with your Internet " +"Service Provider (ISP), you get an IP address that is only relevant for " +"local networks. Many ISPs offer this type of connectivity. This is the most " +"troublesome situation for hosting services at home. {box_name} provides many " +"workaround solutions but each solution has some limitations.
" +msgstr "" + +#: plinth/modules/networks/forms.py:351 msgid "Preferred router configuration" msgstr "" -#: plinth/modules/networks/forms.py:318 +#: plinth/modules/networks/forms.py:356 #, python-brace-format msgid "" -"Use DMZ feature to forward all trafficMost routers " -"provide a configuration setting called DMZ. This will allow the router to " -"forward all incoming traffic from the internet to a single IP address such " -"as the {box_name}'s address. First remember to configure a static local IP " -"address for your {box_name} in your router's configuration.
" +"Use DMZ feature to forward all traffic (recommended)Most routers provide a configuration setting called DMZ. This will allow " +"the router to forward all incoming traffic from the Internet to a single IP " +"address such as the {box_name}'s IP address. First remember to configure a " +"static local IP address for your {box_name} in your router's configuration." +"p>" msgstr "" -#: plinth/modules/networks/forms.py:332 +#: plinth/modules/networks/forms.py:368 #, python-brace-format msgid "" -"Forward Specific Traffic as needed by each application
You may alternatively choose to forward only specific traffic to your " "{box_name}. This is ideal if you have other servers like {box_name} in your " "network or if your router does not support DMZ feature. All applications " @@ -3067,276 +3130,280 @@ msgid "" "to be forwarded for that application to work.
" msgstr "" -#: plinth/modules/networks/forms.py:349 +#: plinth/modules/networks/forms.py:382 msgid "" -"Router is currently unconfiguredChoose this if you " +"Router is currently unconfigured
Choose this if you " "have not configured or are unable to configure the router currently and wish " "to be reminded later. Some of the other configuration steps may fail.
" msgstr "" -#: plinth/modules/networks/networks.py:43 +#: plinth/modules/networks/networks.py:32 msgid "Network Connections" msgstr "" -#: plinth/modules/networks/networks.py:59 +#: plinth/modules/networks/networks.py:46 msgid "Cannot show connection: Connection not found." msgstr "" -#: plinth/modules/networks/networks.py:94 +#: plinth/modules/networks/networks.py:81 msgid "Connection Information" msgstr "" -#: plinth/modules/networks/networks.py:108 +#: plinth/modules/networks/networks.py:95 msgid "Cannot edit connection: Connection not found." msgstr "" -#: plinth/modules/networks/networks.py:114 +#: plinth/modules/networks/networks.py:101 msgid "This type of connection is not yet understood." msgstr "" -#: plinth/modules/networks/networks.py:136 -#: plinth/modules/networks/networks.py:220 -#: plinth/modules/networks/templates/connections_edit.html:35 +#: plinth/modules/networks/networks.py:123 +#: plinth/modules/networks/networks.py:207 +#: plinth/modules/networks/templates/connections_edit.html:20 msgid "Edit Connection" msgstr "" -#: plinth/modules/networks/networks.py:232 +#: plinth/modules/networks/networks.py:219 #, python-brace-format msgid "Activated connection {name}." msgstr "" -#: plinth/modules/networks/networks.py:236 +#: plinth/modules/networks/networks.py:223 msgid "Failed to activate connection: Connection not found." msgstr "" -#: plinth/modules/networks/networks.py:242 +#: plinth/modules/networks/networks.py:229 #, python-brace-format msgid "Failed to activate connection {name}: No suitable device is available." msgstr "" -#: plinth/modules/networks/networks.py:255 +#: plinth/modules/networks/networks.py:242 #, python-brace-format msgid "Deactivated connection {name}." msgstr "" -#: plinth/modules/networks/networks.py:259 +#: plinth/modules/networks/networks.py:246 msgid "Failed to de-activate connection: Connection not found." msgstr "" -#: plinth/modules/networks/networks.py:269 -#: plinth/modules/networks/templates/connections_list.html:62 -#: plinth/modules/networks/templates/connections_list.html:64 +#: plinth/modules/networks/networks.py:256 +#: plinth/modules/networks/templates/connections_list.html:12 +#: plinth/modules/networks/templates/connections_list.html:14 msgid "Nearby Wi-Fi Networks" msgstr "" -#: plinth/modules/networks/networks.py:293 -#: plinth/modules/networks/templates/connections_list.html:67 -#: plinth/modules/networks/templates/connections_list.html:69 -#: plinth/modules/wireguard/templates/wireguard_add_server.html:34 +#: plinth/modules/networks/networks.py:280 +#: plinth/modules/networks/templates/connections_list.html:17 +#: plinth/modules/networks/templates/connections_list.html:19 +#: plinth/modules/wireguard/templates/wireguard_add_server.html:19 msgid "Add Connection" msgstr "" -#: plinth/modules/networks/networks.py:311 +#: plinth/modules/networks/networks.py:298 msgid "Adding New Generic Connection" msgstr "" -#: plinth/modules/networks/networks.py:329 +#: plinth/modules/networks/networks.py:316 msgid "Adding New Ethernet Connection" msgstr "" -#: plinth/modules/networks/networks.py:347 +#: plinth/modules/networks/networks.py:334 msgid "Adding New PPPoE Connection" msgstr "" -#: plinth/modules/networks/networks.py:382 +#: plinth/modules/networks/networks.py:369 msgid "Adding New Wi-Fi Connection" msgstr "" -#: plinth/modules/networks/networks.py:397 +#: plinth/modules/networks/networks.py:384 #, python-brace-format msgid "Connection {name} deleted." msgstr "" -#: plinth/modules/networks/networks.py:401 -#: plinth/modules/networks/networks.py:411 +#: plinth/modules/networks/networks.py:388 +#: plinth/modules/networks/networks.py:398 msgid "Failed to delete connection: Connection not found." msgstr "" -#: plinth/modules/networks/networks.py:416 -#: plinth/modules/networks/templates/connections_delete.html:26 +#: plinth/modules/networks/networks.py:403 +#: plinth/modules/networks/templates/connections_delete.html:11 msgid "Delete Connection" msgstr "" -#: plinth/modules/networks/networks.py:442 +#: plinth/modules/networks/networks.py:428 msgid "Router configuration type saved." msgstr "" -#: plinth/modules/networks/templates/connection_show.html:43 +#: plinth/modules/networks/networks.py:474 +msgid "Internet connection type saved." +msgstr "" + +#: plinth/modules/networks/templates/connection_show.html:28 msgid "Edit connection" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:43 -#: plinth/modules/wireguard/templates/wireguard_show_client.html:83 -#: plinth/modules/wireguard/templates/wireguard_show_server.html:84 -#: plinth/templates/base.html:167 plinth/templates/base.html:168 +#: plinth/modules/networks/templates/connection_show.html:28 +#: plinth/modules/wireguard/templates/wireguard_show_client.html:68 +#: plinth/modules/wireguard/templates/wireguard_show_server.html:69 +#: plinth/templates/base.html:152 plinth/templates/base.html:153 msgid "Edit" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:50 -#: plinth/modules/networks/templates/connections_list.html:90 +#: plinth/modules/networks/templates/connection_show.html:35 +#: plinth/modules/networks/templates/connections_list.html:40 msgid "Deactivate" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:57 -#: plinth/modules/networks/templates/connections_list.html:98 +#: plinth/modules/networks/templates/connection_show.html:42 +#: plinth/modules/networks/templates/connections_list.html:48 msgid "Activate" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:63 +#: plinth/modules/networks/templates/connection_show.html:48 msgid "Delete connection" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:66 -#: plinth/modules/networks/templates/connections_diagram.html:73 -#: plinth/modules/networks/templates/connections_diagram.html:76 -#: plinth/modules/networks/templates/connections_diagram.html:105 -#: plinth/modules/networks/templates/connections_diagram.html:127 +#: plinth/modules/networks/templates/connection_show.html:51 +#: plinth/modules/networks/templates/connections_diagram.html:58 +#: plinth/modules/networks/templates/connections_diagram.html:61 +#: plinth/modules/networks/templates/connections_diagram.html:90 +#: plinth/modules/networks/templates/connections_diagram.html:112 msgid "Connection" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:71 +#: plinth/modules/networks/templates/connection_show.html:56 msgid "Primary connection" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:73 -#: plinth/modules/networks/templates/connection_show.html:217 -#: plinth/modules/networks/templates/connection_show.html:256 +#: plinth/modules/networks/templates/connection_show.html:58 +#: plinth/modules/networks/templates/connection_show.html:202 +#: plinth/modules/networks/templates/connection_show.html:241 msgid "yes" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:84 -#: plinth/modules/storage/templates/storage.html:40 +#: plinth/modules/networks/templates/connection_show.html:69 +#: plinth/modules/storage/templates/storage.html:25 msgid "Device" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:88 +#: plinth/modules/networks/templates/connection_show.html:73 msgid "State" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:93 +#: plinth/modules/networks/templates/connection_show.html:78 msgid "State reason" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:102 +#: plinth/modules/networks/templates/connection_show.html:87 msgid "MAC address" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:106 +#: plinth/modules/networks/templates/connection_show.html:91 msgid "Interface" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:110 -#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:33 -#: plinth/modules/snapshot/templates/snapshot_manage.html:45 -#: plinth/modules/snapshot/templates/snapshot_rollback.html:41 +#: plinth/modules/networks/templates/connection_show.html:95 +#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:18 +#: plinth/modules/snapshot/templates/snapshot_manage.html:30 +#: plinth/modules/snapshot/templates/snapshot_rollback.html:26 msgid "Description" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:116 +#: plinth/modules/networks/templates/connection_show.html:101 msgid "Physical Link" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:121 +#: plinth/modules/networks/templates/connection_show.html:106 msgid "Link state" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:125 +#: plinth/modules/networks/templates/connection_show.html:110 msgid "cable is connected" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:128 +#: plinth/modules/networks/templates/connection_show.html:113 msgid "please check cable" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:133 -#: plinth/modules/networks/templates/connection_show.html:149 +#: plinth/modules/networks/templates/connection_show.html:118 +#: plinth/modules/networks/templates/connection_show.html:134 msgid "Speed" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:135 +#: plinth/modules/networks/templates/connection_show.html:120 #, python-format msgid "%(ethernet_speed)s Mbit/s" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:151 +#: plinth/modules/networks/templates/connection_show.html:136 #, python-format msgid "%(wireless_bitrate)s Mbit/s" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:163 +#: plinth/modules/networks/templates/connection_show.html:148 msgid "Signal strength" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:181 +#: plinth/modules/networks/templates/connection_show.html:166 msgid "IPv4" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:186 -#: plinth/modules/networks/templates/connection_show.html:227 -#: plinth/modules/shadowsocks/forms.py:64 +#: plinth/modules/networks/templates/connection_show.html:171 +#: plinth/modules/networks/templates/connection_show.html:212 +#: plinth/modules/shadowsocks/forms.py:49 msgid "Method" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:193 -#: plinth/modules/networks/templates/connection_show.html:234 +#: plinth/modules/networks/templates/connection_show.html:178 +#: plinth/modules/networks/templates/connection_show.html:219 msgid "IP address" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:209 -#: plinth/modules/networks/templates/connection_show.html:248 +#: plinth/modules/networks/templates/connection_show.html:194 +#: plinth/modules/networks/templates/connection_show.html:233 msgid "DNS server" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:216 -#: plinth/modules/networks/templates/connection_show.html:255 -#: plinth/modules/storage/forms.py:156 +#: plinth/modules/networks/templates/connection_show.html:201 +#: plinth/modules/networks/templates/connection_show.html:240 +#: plinth/modules/storage/forms.py:141 msgid "Default" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:222 +#: plinth/modules/networks/templates/connection_show.html:207 msgid "IPv6" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:263 +#: plinth/modules/networks/templates/connection_show.html:248 msgid "This connection is not active." msgstr "" -#: plinth/modules/networks/templates/connection_show.html:266 -#: plinth/modules/security/__init__.py:38 plinth/modules/security/views.py:47 +#: plinth/modules/networks/templates/connection_show.html:251 +#: plinth/modules/security/__init__.py:45 msgid "Security" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:271 -#: plinth/modules/networks/templates/connection_show.html:291 -#: plinth/modules/networks/templates/connection_show.html:310 +#: plinth/modules/networks/templates/connection_show.html:256 +#: plinth/modules/networks/templates/connection_show.html:276 +#: plinth/modules/networks/templates/connection_show.html:295 msgid "Firewall zone" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:280 +#: plinth/modules/networks/templates/connection_show.html:265 msgid "" "This interface should be connected to a local network/machine. If you " "connect this interface to a public network, services meant to be available " "only internally will become available externally. This is a security risk." msgstr "" -#: plinth/modules/networks/templates/connection_show.html:300 +#: plinth/modules/networks/templates/connection_show.html:285 msgid "" "This interface should receive your Internet connection. If you connect it to " "a local network/machine, many services meant to available only internally " "will not be available." msgstr "" -#: plinth/modules/networks/templates/connection_show.html:319 +#: plinth/modules/networks/templates/connection_show.html:304 #, python-format msgid "" "This interface is not maintained by %(box_name)s. Its security status is " @@ -3345,109 +3412,132 @@ msgid "" "connection and re-configure it." msgstr "" -#: plinth/modules/networks/templates/connections_create.html:34 +#: plinth/modules/networks/templates/connections_create.html:19 msgid "Create Connection" msgstr "" -#: plinth/modules/networks/templates/connections_delete.html:29 +#: plinth/modules/networks/templates/connections_delete.html:14 #, python-format msgid "Delete connection %(name)s permanently?" msgstr "" -#: plinth/modules/networks/templates/connections_diagram.html:65 +#: plinth/modules/networks/templates/connections_diagram.html:50 msgid "Internet" msgstr "" -#: plinth/modules/networks/templates/connections_diagram.html:70 -#: plinth/modules/networks/templates/connections_diagram.html:102 +#: plinth/modules/networks/templates/connections_diagram.html:55 +#: plinth/modules/networks/templates/connections_diagram.html:87 msgid "Spacing" msgstr "" -#: plinth/modules/networks/templates/connections_diagram.html:83 -#: plinth/modules/networks/templates/connections_diagram.html:113 -#: plinth/network.py:40 +#: plinth/modules/networks/templates/connections_diagram.html:68 +#: plinth/modules/networks/templates/connections_diagram.html:98 +#: plinth/network.py:25 msgid "Ethernet" msgstr "" -#: plinth/modules/networks/templates/connections_diagram.html:86 -#: plinth/modules/networks/templates/connections_diagram.html:116 -#: plinth/network.py:41 +#: plinth/modules/networks/templates/connections_diagram.html:71 +#: plinth/modules/networks/templates/connections_diagram.html:101 +#: plinth/network.py:26 msgid "Wi-Fi" msgstr "" -#: plinth/modules/networks/templates/connections_diagram.html:89 +#: plinth/modules/networks/templates/connections_diagram.html:74 #, python-format msgid "Show connection %(connection.name)s" msgstr "" -#: plinth/modules/networks/templates/connections_diagram.html:119 +#: plinth/modules/networks/templates/connections_diagram.html:104 #, python-format msgid "Show connection %(name)s" msgstr "" -#: plinth/modules/networks/templates/connections_diagram.html:131 +#: plinth/modules/networks/templates/connections_diagram.html:116 msgid "Computer" msgstr "" -#: plinth/modules/networks/templates/connections_list.html:58 +#: plinth/modules/networks/templates/connections_list.html:8 msgid "Connections" msgstr "" -#: plinth/modules/networks/templates/connections_list.html:79 +#: plinth/modules/networks/templates/connections_list.html:29 #, python-format msgid "Delete connection %(name)s" msgstr "" -#: plinth/modules/networks/templates/connections_list.html:104 +#: plinth/modules/networks/templates/connections_list.html:54 msgid "Active" msgstr "" -#: plinth/modules/networks/templates/connections_list.html:107 +#: plinth/modules/networks/templates/connections_list.html:57 msgid "Inactive" msgstr "" -#: plinth/modules/networks/templates/connections_list.html:124 -#, python-format -msgid "%(box_name)s Internet Connectivity" -msgstr "" - -#: plinth/modules/networks/templates/connections_list.html:129 -#, python-format -msgid "" -"The following best describes how your %(box_name)s is connected in your " -"network. This information is used only to suggest necessary configuration " -"actions." -msgstr "" - -#: plinth/modules/networks/templates/connections_list.html:137 -#, python-format -msgid "" -"Your %(box_name)s gets its internet from your Router via WiFi or Ethernet " -"cable. This is a typical home setup." -msgstr "" - -#: plinth/modules/networks/templates/connections_list.html:145 -#: plinth/modules/networks/templates/connections_list.html:147 -msgid "Update..." -msgstr "" - -#: plinth/modules/networks/templates/connections_type_select.html:34 +#: plinth/modules/networks/templates/connections_type_select.html:19 msgid "Create..." msgstr "" -#: plinth/modules/networks/templates/router_configuration_content.html:25 +#: plinth/modules/networks/templates/internet_connectivity_content.html:10 +msgid "What Type Of Internet Connection Do You Have?" +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_content.html:16 +msgid "" +"Select an option that best describes the type of Internet connection. This " +"information is used only to guide you with further setup." +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_firstboot.html:18 +#: plinth/modules/networks/templates/router_configuration_firstboot.html:18 +msgid "Skip this step" +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_firstboot.html:19 +#: plinth/modules/networks/templates/router_configuration_firstboot.html:19 +msgid "Next" +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:9 +msgid "Your Internet Connection Type" +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:14 +msgid "" +"The following best describes the type of Internet connection provided by " +"your ISP. This information is only used to suggest you necessary " +"configuration actions." +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:23 +msgid "My ISP provides a public IP address that does not change over time." +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:27 +msgid "My ISP provides a public IP address that may change over time." +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:31 +msgid "My ISP does not provide a public IP address." +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:37 +#: plinth/modules/networks/templates/router_configuration_main.html:29 +msgid "Update..." +msgstr "" + +#: plinth/modules/networks/templates/router_configuration_content.html:10 #, python-format msgid "Setup %(box_name)s Behind a Router" msgstr "" -#: plinth/modules/networks/templates/router_configuration_content.html:31 +#: plinth/modules/networks/templates/router_configuration_content.html:16 #, python-format msgid "" "Your %(box_name)s gets its internet connection from your router via Wi-Fi or " "Ethernet cable. This is a typical home setup." msgstr "" -#: plinth/modules/networks/templates/router_configuration_content.html:38 +#: plinth/modules/networks/templates/router_configuration_content.html:23 #, python-format msgid "" "With this setup, any device on the internet trying to reach your " @@ -3456,24 +3546,24 @@ msgid "" "the services." msgstr "" -#: plinth/modules/networks/templates/router_configuration_content.html:47 +#: plinth/modules/networks/templates/router_configuration_content.html:32 msgid "" "If you don't have control over your router, choose not to configure it. To " -"see options, to overcome this limitation, choose 'no public address' option " +"see options to overcome this limitation, choose 'no public address' option " "in Internet connection type selection." msgstr "" -#: plinth/modules/networks/templates/router_configuration_content.html:54 +#: plinth/modules/networks/templates/router_configuration_content.html:39 msgid "Choose How You Wish to Configure Your Router" msgstr "" -#: plinth/modules/networks/templates/router_configuration_content.html:57 +#: plinth/modules/networks/templates/router_configuration_content.html:42 msgid "" "You will need to login to your router's administration console provided by " "the router. This may look like one of the following:" msgstr "" -#: plinth/modules/networks/templates/router_configuration_content.html:69 +#: plinth/modules/networks/templates/router_configuration_content.html:54 msgid "" "The username and password is configured by you when you first setup the " "router. For many routers, this information is printed at the back of the " @@ -3483,24 +3573,27 @@ msgid "" "full instructions on how to perform this task." msgstr "" -#: plinth/modules/networks/templates/router_configuration_firstboot.html:33 -msgid "skip this step" +#: plinth/modules/networks/templates/router_configuration_main.html:9 +#, python-format +msgid "%(box_name)s Internet Connectivity" msgstr "" -#: plinth/modules/networks/templates/router_configuration_firstboot.html:35 -msgid "Next" +#: plinth/modules/networks/templates/router_configuration_main.html:15 +#, python-format +msgid "" +"The following best describes how your %(box_name)s is connected in your " +"network. This information is used only to suggest necessary configuration " +"actions." msgstr "" -#: plinth/modules/openvpn/__init__.py:39 plinth/modules/openvpn/manifest.py:33 -msgid "OpenVPN" +#: plinth/modules/networks/templates/router_configuration_main.html:23 +#, python-format +msgid "" +"Your %(box_name)s gets its Internet from your Router via Wi-Fi or Ethernet " +"cable. This is a typical home setup." msgstr "" -#: plinth/modules/openvpn/__init__.py:43 -#: plinth/modules/wireguard/__init__.py:40 -msgid "Virtual Private Network" -msgstr "" - -#: plinth/modules/openvpn/__init__.py:47 +#: plinth/modules/openvpn/__init__.py:26 #, python-brace-format msgid "" "Virtual Private Network (VPN) is a technique for securely connecting two " @@ -3511,21 +3604,30 @@ msgid "" "security and anonymity." msgstr "" -#: plinth/modules/openvpn/__init__.py:79 +#: plinth/modules/openvpn/__init__.py:49 plinth/modules/openvpn/manifest.py:18 +msgid "OpenVPN" +msgstr "" + +#: plinth/modules/openvpn/__init__.py:50 +#: plinth/modules/wireguard/__init__.py:53 +msgid "Virtual Private Network" +msgstr "" + +#: plinth/modules/openvpn/__init__.py:61 #, python-brace-format msgid "" "Download Profile" msgstr "" -#: plinth/modules/openvpn/forms.py:27 +#: plinth/modules/openvpn/forms.py:12 msgid "Enable OpenVPN server" msgstr "" -#: plinth/modules/openvpn/manifest.py:63 -msgid "TunnelBlick" +#: plinth/modules/openvpn/manifest.py:48 +msgid "Tunnelblick" msgstr "" -#: plinth/modules/openvpn/templates/openvpn.html:42 +#: plinth/modules/openvpn/templates/openvpn.html:27 #, python-format msgid "" "OpenVPN has not yet been setup. Performing a secure setup takes a very long " @@ -3533,15 +3635,15 @@ msgid "" "If the setup is interrupted, you may start it again." msgstr "" -#: plinth/modules/openvpn/templates/openvpn.html:55 +#: plinth/modules/openvpn/templates/openvpn.html:40 msgid "Start setup" msgstr "" -#: plinth/modules/openvpn/templates/openvpn.html:64 +#: plinth/modules/openvpn/templates/openvpn.html:49 msgid "OpenVPN setup is running" msgstr "" -#: plinth/modules/openvpn/templates/openvpn.html:68 +#: plinth/modules/openvpn/templates/openvpn.html:53 #, python-format msgid "" "To perform a secure setup, this process takes a very long time. Depending " @@ -3549,11 +3651,11 @@ msgid "" "interrupted, you may start it again." msgstr "" -#: plinth/modules/openvpn/templates/openvpn.html:87 +#: plinth/modules/openvpn/templates/openvpn.html:72 msgid "Profile" msgstr "" -#: plinth/modules/openvpn/templates/openvpn.html:90 +#: plinth/modules/openvpn/templates/openvpn.html:75 #, python-format msgid "" "To connect to %(box_name)s's VPN, you need to download a profile and feed it " @@ -3562,32 +3664,24 @@ msgid "" "clients and instructions on how to configure them." msgstr "" -#: plinth/modules/openvpn/templates/openvpn.html:100 +#: plinth/modules/openvpn/templates/openvpn.html:85 #, python-format msgid "Profile is specific to each user of %(box_name)s. Keep it a secret." msgstr "" -#: plinth/modules/openvpn/templates/openvpn.html:111 +#: plinth/modules/openvpn/templates/openvpn.html:96 msgid "Download my profile" msgstr "" -#: plinth/modules/openvpn/views.py:133 +#: plinth/modules/openvpn/views.py:114 msgid "Setup completed." msgstr "" -#: plinth/modules/openvpn/views.py:135 +#: plinth/modules/openvpn/views.py:116 msgid "Setup failed." msgstr "" -#: plinth/modules/pagekite/__init__.py:39 -msgid "PageKite" -msgstr "" - -#: plinth/modules/pagekite/__init__.py:41 -msgid "Public Visibility" -msgstr "" - -#: plinth/modules/pagekite/__init__.py:45 +#: plinth/modules/pagekite/__init__.py:26 #, python-brace-format msgid "" "PageKite is a system for exposing {box_name} services when you don't have a " @@ -3596,33 +3690,33 @@ msgid "" "following situations:" msgstr "" -#: plinth/modules/pagekite/__init__.py:50 +#: plinth/modules/pagekite/__init__.py:31 #, python-brace-format msgid "{box_name} is behind a restricted firewall." msgstr "" -#: plinth/modules/pagekite/__init__.py:53 +#: plinth/modules/pagekite/__init__.py:34 #, python-brace-format msgid "{box_name} is connected to a (wireless) router which you don't control." msgstr "" -#: plinth/modules/pagekite/__init__.py:55 +#: plinth/modules/pagekite/__init__.py:36 msgid "" "Your ISP does not provide you an external IP address and instead provides " "Internet connection through NAT." msgstr "" -#: plinth/modules/pagekite/__init__.py:57 +#: plinth/modules/pagekite/__init__.py:38 msgid "" "Your ISP does not provide you a static IP address and your IP address " "changes every time you connect to Internet." msgstr "" -#: plinth/modules/pagekite/__init__.py:59 +#: plinth/modules/pagekite/__init__.py:40 msgid "Your ISP limits incoming connections." msgstr "" -#: plinth/modules/pagekite/__init__.py:61 +#: plinth/modules/pagekite/__init__.py:42 #, python-brace-format msgid "" "PageKite works around NAT, firewalls and IP address limitations by using a " @@ -3631,138 +3725,146 @@ msgid "" "the future it might be possible to use your buddy's {box_name} for this." msgstr "" -#: plinth/modules/pagekite/__init__.py:87 +#: plinth/modules/pagekite/__init__.py:62 +msgid "PageKite" +msgstr "" + +#: plinth/modules/pagekite/__init__.py:64 +msgid "Public Visibility" +msgstr "" + +#: plinth/modules/pagekite/__init__.py:74 msgid "PageKite Domain" msgstr "" -#: plinth/modules/pagekite/forms.py:66 +#: plinth/modules/pagekite/forms.py:51 msgid "Server domain" msgstr "" -#: plinth/modules/pagekite/forms.py:68 +#: plinth/modules/pagekite/forms.py:53 msgid "" "Select your pagekite server. Set \"pagekite.net\" to use the default " "pagekite.net server." msgstr "" -#: plinth/modules/pagekite/forms.py:71 plinth/modules/shadowsocks/forms.py:55 +#: plinth/modules/pagekite/forms.py:56 plinth/modules/shadowsocks/forms.py:40 msgid "Server port" msgstr "" -#: plinth/modules/pagekite/forms.py:72 +#: plinth/modules/pagekite/forms.py:57 msgid "Port of your pagekite server (default: 80)" msgstr "" -#: plinth/modules/pagekite/forms.py:74 +#: plinth/modules/pagekite/forms.py:59 msgid "Kite name" msgstr "" -#: plinth/modules/pagekite/forms.py:75 +#: plinth/modules/pagekite/forms.py:60 msgid "Example: mybox.pagekite.me" msgstr "" -#: plinth/modules/pagekite/forms.py:77 +#: plinth/modules/pagekite/forms.py:62 msgid "Invalid kite name" msgstr "" -#: plinth/modules/pagekite/forms.py:81 +#: plinth/modules/pagekite/forms.py:66 msgid "Kite secret" msgstr "" -#: plinth/modules/pagekite/forms.py:82 +#: plinth/modules/pagekite/forms.py:67 msgid "" "A secret associated with the kite or the default secret for your account if " "no secret is set on the kite." msgstr "" -#: plinth/modules/pagekite/forms.py:98 +#: plinth/modules/pagekite/forms.py:83 msgid "Kite details set" msgstr "" -#: plinth/modules/pagekite/forms.py:105 +#: plinth/modules/pagekite/forms.py:90 msgid "Pagekite server set" msgstr "" -#: plinth/modules/pagekite/forms.py:129 +#: plinth/modules/pagekite/forms.py:114 msgid "PageKite enabled" msgstr "" -#: plinth/modules/pagekite/forms.py:132 +#: plinth/modules/pagekite/forms.py:117 msgid "PageKite disabled" msgstr "" -#: plinth/modules/pagekite/forms.py:148 +#: plinth/modules/pagekite/forms.py:133 msgid "protocol" msgstr "" -#: plinth/modules/pagekite/forms.py:151 +#: plinth/modules/pagekite/forms.py:136 msgid "external (frontend) port" msgstr "" -#: plinth/modules/pagekite/forms.py:154 +#: plinth/modules/pagekite/forms.py:139 msgid "internal (freedombox) port" msgstr "" -#: plinth/modules/pagekite/forms.py:155 +#: plinth/modules/pagekite/forms.py:140 msgid "Enable Subdomains" msgstr "" -#: plinth/modules/pagekite/forms.py:189 +#: plinth/modules/pagekite/forms.py:174 msgid "Deleted custom service" msgstr "" -#: plinth/modules/pagekite/forms.py:222 +#: plinth/modules/pagekite/forms.py:207 msgid "" "This service is available as a standard service. Please use the \"Standard " "Services\" page to enable it." msgstr "" -#: plinth/modules/pagekite/forms.py:231 +#: plinth/modules/pagekite/forms.py:216 msgid "Added custom service" msgstr "" -#: plinth/modules/pagekite/forms.py:234 +#: plinth/modules/pagekite/forms.py:219 msgid "This service already exists" msgstr "" -#: plinth/modules/pagekite/templates/pagekite_configure.html:47 +#: plinth/modules/pagekite/templates/pagekite_configure.html:32 msgid "Custom Services" msgstr "" -#: plinth/modules/pagekite/templates/pagekite_configure.html:50 -#: plinth/modules/pagekite/templates/pagekite_configure.html:52 +#: plinth/modules/pagekite/templates/pagekite_configure.html:35 +#: plinth/modules/pagekite/templates/pagekite_configure.html:37 msgid "Add Custom Service" msgstr "" -#: plinth/modules/pagekite/templates/pagekite_configure.html:57 +#: plinth/modules/pagekite/templates/pagekite_configure.html:42 msgid "Existing custom services" msgstr "" -#: plinth/modules/pagekite/templates/pagekite_configure.html:71 +#: plinth/modules/pagekite/templates/pagekite_configure.html:56 #, python-format msgid "connected to %(backend_host)s:%(backend_port)s" msgstr "" -#: plinth/modules/pagekite/templates/pagekite_configure.html:83 +#: plinth/modules/pagekite/templates/pagekite_configure.html:68 msgid "Delete this service" msgstr "" -#: plinth/modules/pagekite/templates/pagekite_custom_services.html:30 +#: plinth/modules/pagekite/templates/pagekite_custom_services.html:15 msgid "Add custom PageKite service" msgstr "" -#: plinth/modules/pagekite/templates/pagekite_custom_services.html:32 +#: plinth/modules/pagekite/templates/pagekite_custom_services.html:17 msgid "" "Warning:imaps://imap.gmail.com. "
@@ -4074,17 +4166,22 @@ msgid ""
"a>)."
msgstr ""
-#: plinth/modules/samba/__init__.py:46
-msgid "Samba"
+#: plinth/modules/roundcube/__init__.py:54
+#: plinth/modules/roundcube/manifest.py:9
+msgid "Roundcube"
msgstr ""
-#: plinth/modules/samba/__init__.py:53
+#: plinth/modules/roundcube/__init__.py:55
+msgid "Email Client"
+msgstr ""
+
+#: plinth/modules/samba/__init__.py:32
msgid ""
"Samba allows to share files and folders between FreedomBox and other "
"computers in your local network."
msgstr ""
-#: plinth/modules/samba/__init__.py:56
+#: plinth/modules/samba/__init__.py:35
#, python-brace-format
msgid ""
"After installation, you can choose which disks to use for sharing. Enabled "
@@ -4093,51 +4190,55 @@ msgid ""
"There are three types of shares you can choose from: "
msgstr ""
-#: plinth/modules/samba/__init__.py:61
+#: plinth/modules/samba/__init__.py:40
msgid "Open share - accessible to everyone in your local network."
msgstr ""
-#: plinth/modules/samba/__init__.py:62
+#: plinth/modules/samba/__init__.py:41
msgid ""
"Group share - accessible only to FreedomBox users who are in the freedombox-"
"share group."
msgstr ""
-#: plinth/modules/samba/__init__.py:64
+#: plinth/modules/samba/__init__.py:43
msgid ""
"Home share - every user in the freedombox-share group can have their own "
"private space."
msgstr ""
-#: plinth/modules/samba/__init__.py:68
+#: plinth/modules/samba/__init__.py:47
msgid "Access to the private shares"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:39
-#: plinth/modules/samba/templates/samba.html:50
+#: plinth/modules/samba/__init__.py:61
+msgid "Samba"
+msgstr ""
+
+#: plinth/modules/samba/templates/samba.html:24
+#: plinth/modules/samba/templates/samba.html:35
msgid "Shares"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:41
+#: plinth/modules/samba/templates/samba.html:26
msgid ""
"Note: Only specially created directories will be shared on selected disks, "
"not the whole disk."
msgstr ""
-#: plinth/modules/samba/templates/samba.html:49
+#: plinth/modules/samba/templates/samba.html:34
msgid "Disk Name"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:51
-#: plinth/modules/storage/templates/storage.html:44
+#: plinth/modules/samba/templates/samba.html:36
+#: plinth/modules/storage/templates/storage.html:29
msgid "Used"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:72
+#: plinth/modules/samba/templates/samba.html:57
msgid "VFAT partitions are not supported"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:103
+#: plinth/modules/samba/templates/samba.html:88
#, python-format
msgid ""
"You can find additional information about disks on the users module page."
msgstr ""
-#: plinth/modules/samba/templates/samba.html:109
+#: plinth/modules/samba/templates/samba.html:94
msgid "Users who can currently access group and home shares"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:113
+#: plinth/modules/samba/templates/samba.html:98
msgid ""
"Users needing to re-enter their password on the password change page to "
"access group and home shares"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:118
+#: plinth/modules/samba/templates/samba.html:103
msgid "Unavailable Shares"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:120
+#: plinth/modules/samba/templates/samba.html:105
msgid ""
"Shares that are configured but the disk is not available. If the disk is "
"plugged back in, sharing will be automatically enabled."
msgstr ""
-#: plinth/modules/samba/templates/samba.html:128
+#: plinth/modules/samba/templates/samba.html:113
msgid "Share name"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:129
+#: plinth/modules/samba/templates/samba.html:114
msgid "Action"
msgstr ""
-#: plinth/modules/samba/views.py:61 plinth/modules/storage/forms.py:164
+#: plinth/modules/samba/views.py:43 plinth/modules/storage/forms.py:149
msgid "Open Share"
msgstr ""
-#: plinth/modules/samba/views.py:62 plinth/modules/storage/forms.py:162
+#: plinth/modules/samba/views.py:44 plinth/modules/storage/forms.py:147
msgid "Group Share"
msgstr ""
-#: plinth/modules/samba/views.py:63
+#: plinth/modules/samba/views.py:45
msgid "Home Share"
msgstr ""
-#: plinth/modules/samba/views.py:96
+#: plinth/modules/samba/views.py:78
msgid "Share enabled."
msgstr ""
-#: plinth/modules/samba/views.py:101
+#: plinth/modules/samba/views.py:83
#, fuzzy, python-brace-format
#| msgid "Error installing application: {error}"
msgid "Error enabling share: {error_message}"
msgstr "Produciuse un erro ao instalar o aplicativo: {error}"
-#: plinth/modules/samba/views.py:106
+#: plinth/modules/samba/views.py:88
msgid "Share disabled."
msgstr ""
-#: plinth/modules/samba/views.py:111
+#: plinth/modules/samba/views.py:93
#, fuzzy, python-brace-format
#| msgid "Error installing application: {error}"
msgid "Error disabling share: {error_message}"
msgstr "Produciuse un erro ao instalar o aplicativo: {error}"
-#: plinth/modules/searx/__init__.py:41 plinth/modules/searx/manifest.py:24
-msgid "Searx"
-msgstr ""
-
-#: plinth/modules/searx/__init__.py:45
-msgid "Web Search"
-msgstr ""
-
-#: plinth/modules/searx/__init__.py:48
+#: plinth/modules/searx/__init__.py:25
msgid ""
"Searx is a privacy-respecting Internet metasearch engine. It aggregrates and "
"displays results from multiple search engines."
msgstr ""
-#: plinth/modules/searx/__init__.py:50
+#: plinth/modules/searx/__init__.py:27
msgid ""
"Searx can be used to avoid tracking and profiling by search engines. It "
"stores no cookies by default."
msgstr ""
-#: plinth/modules/searx/__init__.py:54
+#: plinth/modules/searx/__init__.py:31
msgid "Search the web"
msgstr ""
-#: plinth/modules/searx/forms.py:30
+#: plinth/modules/searx/__init__.py:47 plinth/modules/searx/manifest.py:9
+msgid "Searx"
+msgstr ""
+
+#: plinth/modules/searx/__init__.py:48
+msgid "Web Search"
+msgstr ""
+
+#: plinth/modules/searx/forms.py:15
msgid "Safe Search"
msgstr ""
-#: plinth/modules/searx/forms.py:31
+#: plinth/modules/searx/forms.py:16
msgid "Select the default family filter to apply to your search results."
msgstr ""
-#: plinth/modules/searx/forms.py:32
+#: plinth/modules/searx/forms.py:17
msgid "None"
msgstr ""
-#: plinth/modules/searx/forms.py:32
+#: plinth/modules/searx/forms.py:17
msgid "Moderate"
msgstr ""
-#: plinth/modules/searx/forms.py:32
+#: plinth/modules/searx/forms.py:17
msgid "Strict"
msgstr ""
-#: plinth/modules/searx/forms.py:35
+#: plinth/modules/searx/forms.py:20
msgid "Allow Public Access"
msgstr ""
-#: plinth/modules/searx/forms.py:36
+#: plinth/modules/searx/forms.py:21
msgid "Allow this application to be used by anyone who can reach it."
msgstr ""
-#: plinth/modules/searx/views.py:59 plinth/modules/searx/views.py:70
-#: plinth/modules/tor/views.py:149 plinth/modules/tor/views.py:176
+#: plinth/modules/searx/views.py:39 plinth/modules/searx/views.py:50
+#: plinth/modules/tor/views.py:130 plinth/modules/tor/views.py:157
msgid "Configuration updated."
msgstr ""
-#: plinth/modules/security/forms.py:28
+#: plinth/modules/security/forms.py:13
msgid "Restrict console logins (recommended)"
msgstr ""
-#: plinth/modules/security/forms.py:29
+#: plinth/modules/security/forms.py:14
msgid ""
"When this option is enabled, only users in the \"admin\" group will be able "
"to log in to console or via SSH. Console users may be able to access some "
"services without further authorization."
msgstr ""
-#: plinth/modules/security/forms.py:34
+#: plinth/modules/security/forms.py:19
msgid "Fail2Ban (recommended)"
msgstr ""
-#: plinth/modules/security/forms.py:35
+#: plinth/modules/security/forms.py:20
msgid ""
"When this option is enabled, Fail2Ban will limit brute force break-in "
"attempts to the SSH server and other enabled password protected internet-"
"services."
msgstr ""
-#: plinth/modules/security/templates/security.html:26
-#: plinth/modules/security/templates/security.html:28
+#: plinth/modules/security/templates/security.html:11
+#: plinth/modules/security/templates/security.html:13
msgid "Show security report"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:25
-#: plinth/modules/security/views.py:87
+#: plinth/modules/security/templates/security_report.html:10
+#: plinth/modules/security/views.py:71
msgid "Security Report"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:27
+#: plinth/modules/security/templates/security_report.html:12
#, python-format
msgid ""
"The installed version of FreedomBox has %(count)s reported security "
"vulnerabilities."
msgstr ""
-#: plinth/modules/security/templates/security_report.html:33
+#: plinth/modules/security/templates/security_report.html:18
msgid ""
"The following table lists the current reported number, and historical count, "
"of security vulnerabilities for each installed app."
msgstr ""
-#: plinth/modules/security/templates/security_report.html:39
+#: plinth/modules/security/templates/security_report.html:24
msgid ""
"For apps that provide services, the \"Sandboxed\" column shows whether "
"sandboxing features are in use. Sandboxing mitigates the impact of a "
"potentially compromised app to the rest of the system."
msgstr ""
-#: plinth/modules/security/templates/security_report.html:46
+#: plinth/modules/security/templates/security_report.html:31
msgid ""
"\"Sandbox Coverage\" is a score of how effectively the service is isolated "
"from the rest of the system. It is only displayed while the service is "
"running."
msgstr ""
-#: plinth/modules/security/templates/security_report.html:55
+#: plinth/modules/security/templates/security_report.html:40
msgid "App Name"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:56
+#: plinth/modules/security/templates/security_report.html:41
msgid "Current Vulnerabilities"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:57
+#: plinth/modules/security/templates/security_report.html:42
msgid "Past Vulnerabilities"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:58
+#: plinth/modules/security/templates/security_report.html:43
msgid "Sandboxed"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:59
+#: plinth/modules/security/templates/security_report.html:44
msgid "Sandbox Coverage"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:70
+#: plinth/modules/security/templates/security_report.html:55
msgid "N/A"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:72
+#: plinth/modules/security/templates/security_report.html:57
msgid "Yes"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:74
+#: plinth/modules/security/templates/security_report.html:59
msgid "No"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:81
+#: plinth/modules/security/templates/security_report.html:66
msgid "Not running"
msgstr ""
-#: plinth/modules/security/views.py:69
+#: plinth/modules/security/views.py:53
#, python-brace-format
msgid "Error setting restricted access: {exception}"
msgstr ""
-#: plinth/modules/security/views.py:72
+#: plinth/modules/security/views.py:56
msgid "Updated security configuration"
msgstr ""
-#: plinth/modules/shaarli/__init__.py:34 plinth/modules/shaarli/manifest.py:23
-msgid "Shaarli"
-msgstr ""
-
-#: plinth/modules/shaarli/__init__.py:36
-msgid "Bookmarks"
-msgstr ""
-
-#: plinth/modules/shaarli/__init__.py:39
+#: plinth/modules/shaarli/__init__.py:20
msgid "Shaarli allows you to save and share bookmarks."
msgstr ""
-#: plinth/modules/shaarli/__init__.py:40
+#: plinth/modules/shaarli/__init__.py:21
msgid ""
"When enabled, Shaarli will be available from /shaarli path on the web server. Note that Shaarli "
@@ -4386,22 +4479,22 @@ msgid ""
"initial visit."
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:35
-msgid "Shadowsocks"
+#: plinth/modules/shaarli/__init__.py:39 plinth/modules/shaarli/manifest.py:8
+msgid "Shaarli"
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:39
-msgid "Socks5 Proxy"
+#: plinth/modules/shaarli/__init__.py:40
+msgid "Bookmarks"
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:46
+#: plinth/modules/shadowsocks/__init__.py:25
msgid ""
"Shadowsocks is a lightweight and secure SOCKS5 proxy, designed to protect "
"your Internet traffic. It can be used to bypass Internet filtering and "
"censorship."
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:50
+#: plinth/modules/shadowsocks/__init__.py:29
#, python-brace-format
msgid ""
"Your {box_name} can run a Shadowsocks client, that can connect to a "
@@ -4410,149 +4503,153 @@ msgid ""
"the Shadowsocks server."
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:55
+#: plinth/modules/shadowsocks/__init__.py:34
msgid ""
"To use Shadowsocks after setup, set the SOCKS5 proxy URL in your device, "
"browser or application to http://freedombox_address:1080/"
msgstr ""
-#: plinth/modules/shadowsocks/forms.py:28
-#: plinth/modules/shadowsocks/forms.py:29
+#: plinth/modules/shadowsocks/__init__.py:50
+msgid "Shadowsocks"
+msgstr ""
+
+#: plinth/modules/shadowsocks/__init__.py:52
+msgid "Socks5 Proxy"
+msgstr ""
+
+#: plinth/modules/shadowsocks/forms.py:13
+#: plinth/modules/shadowsocks/forms.py:14
msgid "Recommended"
msgstr ""
-#: plinth/modules/shadowsocks/forms.py:52
+#: plinth/modules/shadowsocks/forms.py:37
msgid "Server"
msgstr ""
-#: plinth/modules/shadowsocks/forms.py:53
+#: plinth/modules/shadowsocks/forms.py:38
msgid "Server hostname or IP address"
msgstr ""
-#: plinth/modules/shadowsocks/forms.py:57
+#: plinth/modules/shadowsocks/forms.py:42
msgid "Server port number"
msgstr ""
-#: plinth/modules/shadowsocks/forms.py:60
+#: plinth/modules/shadowsocks/forms.py:45
msgid "Password used to encrypt data. Must match server password."
msgstr ""
-#: plinth/modules/shadowsocks/forms.py:65
+#: plinth/modules/shadowsocks/forms.py:50
msgid "Encryption method. Must match setting on server."
msgstr ""
-#: plinth/modules/sharing/__init__.py:34
-msgid "Sharing"
-msgstr ""
-
-#: plinth/modules/sharing/__init__.py:38
+#: plinth/modules/sharing/__init__.py:21
#, python-brace-format
msgid ""
"Sharing allows you to share files and folders on your {box_name} over the "
"web with chosen groups of users."
msgstr ""
-#: plinth/modules/sharing/forms.py:33
+#: plinth/modules/sharing/__init__.py:38
+msgid "Sharing"
+msgstr ""
+
+#: plinth/modules/sharing/forms.py:18
msgid "Name of the share"
msgstr ""
-#: plinth/modules/sharing/forms.py:35
+#: plinth/modules/sharing/forms.py:20
msgid ""
"A lowercase alpha-numeric string that uniquely identifies a share. Example: "
"media."
msgstr ""
-#: plinth/modules/sharing/forms.py:39
+#: plinth/modules/sharing/forms.py:24
msgid "Path to share"
msgstr ""
-#: plinth/modules/sharing/forms.py:40
+#: plinth/modules/sharing/forms.py:25
msgid "Disk path to a folder on this server that you intend to share."
msgstr ""
-#: plinth/modules/sharing/forms.py:43
+#: plinth/modules/sharing/forms.py:28
msgid "Public share"
msgstr ""
-#: plinth/modules/sharing/forms.py:44
+#: plinth/modules/sharing/forms.py:29
msgid "Make files in this folder available to anyone with the link."
msgstr ""
-#: plinth/modules/sharing/forms.py:48
+#: plinth/modules/sharing/forms.py:33
msgid "User groups that can read the files in the share"
msgstr ""
-#: plinth/modules/sharing/forms.py:50
+#: plinth/modules/sharing/forms.py:35
msgid ""
"Users of the selected user groups will be able to read the files in the "
"share."
msgstr ""
-#: plinth/modules/sharing/forms.py:67
+#: plinth/modules/sharing/forms.py:52
msgid "A share with this name already exists."
msgstr ""
-#: plinth/modules/sharing/forms.py:78
+#: plinth/modules/sharing/forms.py:63
msgid "Shares should be either public or shared with at least one group"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:39
-#: plinth/modules/sharing/templates/sharing.html:42
+#: plinth/modules/sharing/templates/sharing.html:24
+#: plinth/modules/sharing/templates/sharing.html:27
msgid "Add share"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:47
+#: plinth/modules/sharing/templates/sharing.html:32
msgid "No shares currently configured."
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:53
+#: plinth/modules/sharing/templates/sharing.html:38
msgid "Disk Path"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:54
+#: plinth/modules/sharing/templates/sharing.html:39
msgid "Shared Over"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:55
+#: plinth/modules/sharing/templates/sharing.html:40
msgid "With Groups"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:73
+#: plinth/modules/sharing/templates/sharing.html:58
msgid "public access"
msgstr ""
-#: plinth/modules/sharing/views.py:55
+#: plinth/modules/sharing/views.py:39
msgid "Share added."
msgstr ""
-#: plinth/modules/sharing/views.py:60
+#: plinth/modules/sharing/views.py:44
msgid "Add Share"
msgstr ""
-#: plinth/modules/sharing/views.py:75
+#: plinth/modules/sharing/views.py:59
msgid "Share edited."
msgstr ""
-#: plinth/modules/sharing/views.py:80
+#: plinth/modules/sharing/views.py:64
msgid "Edit Share"
msgstr ""
-#: plinth/modules/sharing/views.py:111
+#: plinth/modules/sharing/views.py:95
msgid "Share deleted."
msgstr ""
-#: plinth/modules/snapshot/__init__.py:37
-msgid "Storage Snapshots"
-msgstr ""
-
-#: plinth/modules/snapshot/__init__.py:40
+#: plinth/modules/snapshot/__init__.py:23
msgid ""
"Snapshots allows creating and managing btrfs file system snapshots. These "
"can be used to roll back the system to a previously known good state in case "
"of unwanted changes to the system."
msgstr ""
-#: plinth/modules/snapshot/__init__.py:44
+#: plinth/modules/snapshot/__init__.py:27
#, no-python-format
msgid ""
"Snapshots are taken periodically (called timeline snapshots) and also before "
@@ -4560,192 +4657,192 @@ msgid ""
"cleaned up according to the settings below."
msgstr ""
-#: plinth/modules/snapshot/__init__.py:47
+#: plinth/modules/snapshot/__init__.py:30
msgid ""
"Snapshots currently work on btrfs file systems only and on the root "
"partition only. Snapshots are not a replacement for backups since they can only be stored on the same partition. "
msgstr ""
-#: plinth/modules/snapshot/forms.py:27
+#: plinth/modules/snapshot/__init__.py:52
+msgid "Storage Snapshots"
+msgstr ""
+
+#: plinth/modules/snapshot/forms.py:12
msgid "Free Disk Space to Maintain"
msgstr ""
-#: plinth/modules/snapshot/forms.py:28
+#: plinth/modules/snapshot/forms.py:13
msgid ""
"Maintain this percentage of free space on the disk. If free space falls "
"below this value, older snapshots are removed until this much free space is "
"regained. The default value is 30%."
msgstr ""
-#: plinth/modules/snapshot/forms.py:35
+#: plinth/modules/snapshot/forms.py:20
msgid "Timeline Snapshots"
msgstr ""
-#: plinth/modules/snapshot/forms.py:36
+#: plinth/modules/snapshot/forms.py:21
msgid ""
"Enable or disable timeline snapshots (hourly, daily, monthly and yearly)."
msgstr ""
-#: plinth/modules/snapshot/forms.py:41
+#: plinth/modules/snapshot/forms.py:26
msgid "Software Installation Snapshots"
msgstr ""
-#: plinth/modules/snapshot/forms.py:42
+#: plinth/modules/snapshot/forms.py:27
msgid "Enable or disable snapshots before and after software installation"
msgstr ""
-#: plinth/modules/snapshot/forms.py:47
+#: plinth/modules/snapshot/forms.py:32
msgid "Hourly Snapshots Limit"
msgstr ""
-#: plinth/modules/snapshot/forms.py:48
+#: plinth/modules/snapshot/forms.py:33
msgid "Keep a maximum of this many hourly snapshots."
msgstr ""
-#: plinth/modules/snapshot/forms.py:51
+#: plinth/modules/snapshot/forms.py:36
msgid "Daily Snapshots Limit"
msgstr ""
-#: plinth/modules/snapshot/forms.py:52
+#: plinth/modules/snapshot/forms.py:37
msgid "Keep a maximum of this many daily snapshots."
msgstr ""
-#: plinth/modules/snapshot/forms.py:55
+#: plinth/modules/snapshot/forms.py:40
msgid "Weekly Snapshots Limit"
msgstr ""
-#: plinth/modules/snapshot/forms.py:56
+#: plinth/modules/snapshot/forms.py:41
msgid "Keep a maximum of this many weekly snapshots."
msgstr ""
-#: plinth/modules/snapshot/forms.py:59
+#: plinth/modules/snapshot/forms.py:44
msgid "Monthly Snapshots Limit"
msgstr ""
-#: plinth/modules/snapshot/forms.py:60
+#: plinth/modules/snapshot/forms.py:45
msgid "Keep a maximum of this many monthly snapshots."
msgstr ""
-#: plinth/modules/snapshot/forms.py:63
+#: plinth/modules/snapshot/forms.py:48
msgid "Yearly Snapshots Limit"
msgstr ""
-#: plinth/modules/snapshot/forms.py:64
+#: plinth/modules/snapshot/forms.py:49
msgid ""
"Keep a maximum of this many yearly snapshots. The default value is 0 "
"(disabled)."
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:27
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:12
msgid "Delete the following snapshots permanently?"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:31
-#: plinth/modules/snapshot/templates/snapshot_manage.html:43
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:39
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:16
+#: plinth/modules/snapshot/templates/snapshot_manage.html:28
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:24
msgid "Number"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:32
-#: plinth/modules/snapshot/templates/snapshot_manage.html:44
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:40
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:17
+#: plinth/modules/snapshot/templates/snapshot_manage.html:29
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:25
msgid "Date"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:52
-#: plinth/modules/snapshot/templates/snapshot_manage.html:37
-#: plinth/modules/snapshot/views.py:196
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:37
+#: plinth/modules/snapshot/templates/snapshot_manage.html:22
+#: plinth/modules/snapshot/views.py:175
msgid "Delete Snapshots"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_manage.html:33
+#: plinth/modules/snapshot/templates/snapshot_manage.html:18
msgid "Create Snapshot"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_manage.html:46
+#: plinth/modules/snapshot/templates/snapshot_manage.html:31
msgid "Rollback"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_manage.html:57
+#: plinth/modules/snapshot/templates/snapshot_manage.html:42
msgid "active"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_manage.html:66
+#: plinth/modules/snapshot/templates/snapshot_manage.html:51
#, python-format
msgid "Rollback to snapshot #%(number)s"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_not_supported.html:26
+#: plinth/modules/snapshot/templates/snapshot_not_supported.html:11
#, python-format
msgid ""
"Your have a filesystem of type %(fs_type)s. Snapshots are "
"currently only available on %(types_supported)s filesystems."
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:27
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:12
msgid "Roll back the system to this snapshot?"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:30
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:15
msgid ""
"A new snapshot with the current state of the file system will be "
"automatically created. You will be able to undo a rollback by reverting to "
"the newly created snapshot."
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:57
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:42
#, python-format
msgid "Rollback to Snapshot #%(number)s"
msgstr ""
-#: plinth/modules/snapshot/views.py:45
+#: plinth/modules/snapshot/views.py:30
msgid "Manage Snapshots"
msgstr ""
-#: plinth/modules/snapshot/views.py:98
+#: plinth/modules/snapshot/views.py:79
msgid "Created snapshot."
msgstr ""
-#: plinth/modules/snapshot/views.py:156
+#: plinth/modules/snapshot/views.py:135
msgid "Storage snapshots configuration updated"
msgstr ""
-#: plinth/modules/snapshot/views.py:160 plinth/modules/tor/views.py:79
+#: plinth/modules/snapshot/views.py:139 plinth/modules/tor/views.py:60
#, python-brace-format
msgid "Action error: {0} [{1}] [{2}]"
msgstr ""
-#: plinth/modules/snapshot/views.py:175
+#: plinth/modules/snapshot/views.py:154
msgid "Deleted all snapshots"
msgstr ""
-#: plinth/modules/snapshot/views.py:179
+#: plinth/modules/snapshot/views.py:158
msgid "Deleted selected snapshots"
msgstr ""
-#: plinth/modules/snapshot/views.py:184
+#: plinth/modules/snapshot/views.py:163
msgid "Snapshot is currently in use. Please try again later."
msgstr ""
-#: plinth/modules/snapshot/views.py:207
+#: plinth/modules/snapshot/views.py:186
#, python-brace-format
msgid "Rolled back to snapshot #{number}."
msgstr ""
-#: plinth/modules/snapshot/views.py:210
+#: plinth/modules/snapshot/views.py:189
msgid "The system must be restarted to complete the rollback."
msgstr ""
-#: plinth/modules/snapshot/views.py:222
+#: plinth/modules/snapshot/views.py:201
msgid "Rollback to Snapshot"
msgstr ""
-#: plinth/modules/ssh/__init__.py:43
-msgid "Secure Shell (SSH) Server"
-msgstr ""
-
-#: plinth/modules/ssh/__init__.py:46
+#: plinth/modules/ssh/__init__.py:29
msgid ""
"A Secure Shell server uses the secure shell protocol to accept connections "
"from remote computers. An authorized remote computer can perform "
@@ -4753,56 +4850,56 @@ msgid ""
"connections."
msgstr ""
-#: plinth/modules/ssh/forms.py:30
+#: plinth/modules/ssh/__init__.py:50
+msgid "Secure Shell (SSH) Server"
+msgstr ""
+
+#: plinth/modules/ssh/forms.py:15
msgid "Disable password authentication"
msgstr ""
-#: plinth/modules/ssh/forms.py:31
+#: plinth/modules/ssh/forms.py:16
msgid ""
"Improves security by preventing password guessing. Ensure that you have "
"setup SSH keys in your administrator user account before enabling this "
"option."
msgstr ""
-#: plinth/modules/ssh/templates/ssh.html:26
+#: plinth/modules/ssh/templates/ssh.html:11
msgid "Server Fingerprints"
msgstr ""
-#: plinth/modules/ssh/templates/ssh.html:29
+#: plinth/modules/ssh/templates/ssh.html:14
msgid ""
"When connecting to the server, ensure that the fingerprint shown by the SSH "
"client matches one of these fingerprints."
msgstr ""
-#: plinth/modules/ssh/templates/ssh.html:38
+#: plinth/modules/ssh/templates/ssh.html:23
msgid "Algorithm"
msgstr ""
-#: plinth/modules/ssh/templates/ssh.html:39
+#: plinth/modules/ssh/templates/ssh.html:24
msgid "Fingerprint"
msgstr ""
-#: plinth/modules/ssh/views.py:66
+#: plinth/modules/ssh/views.py:48
msgid "SSH authentication with password disabled."
msgstr ""
-#: plinth/modules/ssh/views.py:69
+#: plinth/modules/ssh/views.py:51
msgid "SSH authentication with password enabled."
msgstr ""
-#: plinth/modules/sso/__init__.py:30
+#: plinth/modules/sso/__init__.py:33
msgid "Single Sign On"
msgstr ""
-#: plinth/modules/sso/templates/login.html:35
+#: plinth/modules/sso/templates/login.html:20
msgid "Login"
msgstr ""
-#: plinth/modules/storage/__init__.py:39 plinth/modules/storage/__init__.py:331
-msgid "Storage"
-msgstr ""
-
-#: plinth/modules/storage/__init__.py:47
+#: plinth/modules/storage/__init__.py:30
#, python-brace-format
msgid ""
"This module allows you to manage storage media attached to your {box_name}. "
@@ -4810,145 +4907,149 @@ msgid ""
"media, expand the root partition etc."
msgstr ""
-#: plinth/modules/storage/__init__.py:224
+#: plinth/modules/storage/__init__.py:52 plinth/modules/storage/__init__.py:318
+msgid "Storage"
+msgstr ""
+
+#: plinth/modules/storage/__init__.py:211
#, python-brace-format
msgid "{disk_size:.1f} bytes"
msgstr ""
-#: plinth/modules/storage/__init__.py:228
+#: plinth/modules/storage/__init__.py:215
#, python-brace-format
msgid "{disk_size:.1f} KiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:232
+#: plinth/modules/storage/__init__.py:219
#, python-brace-format
msgid "{disk_size:.1f} MiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:236
+#: plinth/modules/storage/__init__.py:223
#, python-brace-format
msgid "{disk_size:.1f} GiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:239
+#: plinth/modules/storage/__init__.py:226
#, python-brace-format
msgid "{disk_size:.1f} TiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:246
+#: plinth/modules/storage/__init__.py:233
msgid "The operation failed."
msgstr ""
-#: plinth/modules/storage/__init__.py:248
+#: plinth/modules/storage/__init__.py:235
msgid "The operation was cancelled."
msgstr ""
-#: plinth/modules/storage/__init__.py:250
+#: plinth/modules/storage/__init__.py:237
msgid "The device is already unmounting."
msgstr ""
-#: plinth/modules/storage/__init__.py:252
+#: plinth/modules/storage/__init__.py:239
msgid "The operation is not supported due to missing driver/tool support."
msgstr ""
-#: plinth/modules/storage/__init__.py:255
+#: plinth/modules/storage/__init__.py:242
msgid "The operation timed out."
msgstr ""
-#: plinth/modules/storage/__init__.py:257
+#: plinth/modules/storage/__init__.py:244
msgid "The operation would wake up a disk that is in a deep-sleep state."
msgstr ""
-#: plinth/modules/storage/__init__.py:260
+#: plinth/modules/storage/__init__.py:247
msgid "Attempting to unmount a device that is busy."
msgstr ""
-#: plinth/modules/storage/__init__.py:262
+#: plinth/modules/storage/__init__.py:249
msgid "The operation has already been cancelled."
msgstr ""
-#: plinth/modules/storage/__init__.py:268
+#: plinth/modules/storage/__init__.py:255
msgid "Not authorized to perform the requested operation."
msgstr ""
-#: plinth/modules/storage/__init__.py:270
+#: plinth/modules/storage/__init__.py:257
msgid "The device is already mounted."
msgstr ""
-#: plinth/modules/storage/__init__.py:272
+#: plinth/modules/storage/__init__.py:259
msgid "The device is not mounted."
msgstr ""
-#: plinth/modules/storage/__init__.py:275
+#: plinth/modules/storage/__init__.py:262
msgid "Not permitted to use the requested option."
msgstr ""
-#: plinth/modules/storage/__init__.py:278
+#: plinth/modules/storage/__init__.py:265
msgid "The device is mounted by another user."
msgstr ""
-#: plinth/modules/storage/__init__.py:326
+#: plinth/modules/storage/__init__.py:313
#, no-python-format, python-brace-format
msgid "Low space on system partition: {percent_used}% used, {free_space} free."
msgstr ""
-#: plinth/modules/storage/__init__.py:328
+#: plinth/modules/storage/__init__.py:315
msgid "Low disk space"
msgstr ""
-#: plinth/modules/storage/forms.py:79
+#: plinth/modules/storage/forms.py:64
msgid "Invalid directory name."
msgstr ""
-#: plinth/modules/storage/forms.py:97
+#: plinth/modules/storage/forms.py:82
msgid "Directory does not exist."
msgstr ""
-#: plinth/modules/storage/forms.py:99
+#: plinth/modules/storage/forms.py:84
msgid "Path is not a directory."
msgstr ""
-#: plinth/modules/storage/forms.py:102
+#: plinth/modules/storage/forms.py:87
msgid "Directory is not readable by the user."
msgstr ""
-#: plinth/modules/storage/forms.py:105
+#: plinth/modules/storage/forms.py:90
msgid "Directory is not writable by the user."
msgstr ""
-#: plinth/modules/storage/forms.py:110
+#: plinth/modules/storage/forms.py:95
msgid "Directory"
msgstr ""
-#: plinth/modules/storage/forms.py:113
+#: plinth/modules/storage/forms.py:98
msgid "Subdirectory (optional)"
msgstr ""
-#: plinth/modules/storage/forms.py:160
+#: plinth/modules/storage/forms.py:145
msgid "Share"
msgstr ""
-#: plinth/modules/storage/forms.py:168
+#: plinth/modules/storage/forms.py:153
msgid "Other directory (specify below)"
msgstr ""
-#: plinth/modules/storage/templates/storage.html:35
+#: plinth/modules/storage/templates/storage.html:20
msgid "The following storage devices are in use:"
msgstr ""
-#: plinth/modules/storage/templates/storage.html:41
+#: plinth/modules/storage/templates/storage.html:26
msgid "Label"
msgstr ""
-#: plinth/modules/storage/templates/storage.html:42
+#: plinth/modules/storage/templates/storage.html:27
msgid "Mount Point"
msgstr ""
-#: plinth/modules/storage/templates/storage.html:90
+#: plinth/modules/storage/templates/storage.html:75
msgid "Partition Expansion"
msgstr ""
-#: plinth/modules/storage/templates/storage.html:92
+#: plinth/modules/storage/templates/storage.html:77
#, python-format
msgid ""
"There is %(expandable_root_size)s of unallocated space available after your "
@@ -4956,13 +5057,13 @@ msgid ""
"will provide you additional free space to store your files."
msgstr ""
-#: plinth/modules/storage/templates/storage.html:102
-#: plinth/modules/storage/templates/storage_expand.html:39
-#: plinth/modules/storage/views.py:76
+#: plinth/modules/storage/templates/storage.html:87
+#: plinth/modules/storage/templates/storage_expand.html:24
+#: plinth/modules/storage/views.py:58
msgid "Expand Root Partition"
msgstr ""
-#: plinth/modules/storage/templates/storage_expand.html:29
+#: plinth/modules/storage/templates/storage_expand.html:14
#, python-format
msgid ""
"Please backup your data before proceeding. After this operation, "
@@ -4970,39 +5071,30 @@ msgid ""
"root partition."
msgstr ""
-#: plinth/modules/storage/views.py:88
+#: plinth/modules/storage/views.py:70
#, python-brace-format
msgid "Error expanding partition: {exception}"
msgstr ""
-#: plinth/modules/storage/views.py:91
+#: plinth/modules/storage/views.py:73
msgid "Partition expanded successfully."
msgstr ""
-#: plinth/modules/storage/views.py:109
+#: plinth/modules/storage/views.py:91
#, python-brace-format
msgid "{drive_vendor} {drive_model} can be safely unplugged."
msgstr ""
-#: plinth/modules/storage/views.py:113
+#: plinth/modules/storage/views.py:95
msgid "Device can be safely unplugged."
msgstr ""
-#: plinth/modules/storage/views.py:123
+#: plinth/modules/storage/views.py:105
#, python-brace-format
msgid "Error ejecting device: {error_message}"
msgstr ""
-#: plinth/modules/syncthing/__init__.py:40
-#: plinth/modules/syncthing/manifest.py:28
-msgid "Syncthing"
-msgstr ""
-
-#: plinth/modules/syncthing/__init__.py:44
-msgid "File Synchronization"
-msgstr ""
-
-#: plinth/modules/syncthing/__init__.py:47
+#: plinth/modules/syncthing/__init__.py:26
msgid ""
"Syncthing is an application to synchronize files across multiple devices, e."
"g. your desktop computer and mobile phone. Creation, modification, or "
@@ -5010,7 +5102,7 @@ msgid ""
"other devices that also run Syncthing."
msgstr ""
-#: plinth/modules/syncthing/__init__.py:52
+#: plinth/modules/syncthing/__init__.py:31
#, python-brace-format
msgid ""
"Running Syncthing on {box_name} provides an extra synchronization point for "
@@ -5021,19 +5113,20 @@ msgid ""
"{box_name} is only available for users belonging to the \"admin\" group."
msgstr ""
-#: plinth/modules/syncthing/__init__.py:63
+#: plinth/modules/syncthing/__init__.py:40
msgid "Administer Syncthing application"
msgstr ""
-#: plinth/modules/tahoe/__init__.py:43
-msgid "Tahoe-LAFS"
+#: plinth/modules/syncthing/__init__.py:54
+#: plinth/modules/syncthing/manifest.py:13
+msgid "Syncthing"
msgstr ""
-#: plinth/modules/tahoe/__init__.py:47
-msgid "Distributed File Storage"
+#: plinth/modules/syncthing/__init__.py:55
+msgid "File Synchronization"
msgstr ""
-#: plinth/modules/tahoe/__init__.py:134
+#: plinth/modules/tahoe/__init__.py:30
msgid ""
"Tahoe-LAFS is a decentralized secure file storage system. It uses provider "
"independent security to store files over a distributed network of storage "
@@ -5041,7 +5134,7 @@ msgid ""
"remaining nodes."
msgstr ""
-#: plinth/modules/tahoe/__init__.py:139
+#: plinth/modules/tahoe/__init__.py:35
#, python-brace-format
msgid ""
"This {box_name} hosts a storage node and an introducer by default. "
@@ -5049,7 +5142,15 @@ msgid ""
"other storage nodes."
msgstr ""
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:33
+#: plinth/modules/tahoe/__init__.py:66
+msgid "Tahoe-LAFS"
+msgstr ""
+
+#: plinth/modules/tahoe/__init__.py:68
+msgid "Distributed File Storage"
+msgstr ""
+
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:17
#, python-format
msgid ""
"The Tahoe-LAFS server domain is set to %(domain_name)s. Changing the "
@@ -5058,37 +5159,33 @@ msgid ""
"%(domain_name)s:5678\">https://%(domain_name)s:5678."
msgstr ""
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:55
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:39
msgid "Local introducer"
msgstr ""
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:43
#: plinth/modules/tahoe/templates/tahoe-post-setup.html:59
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:75
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:92
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:76
msgid "Pet Name"
msgstr ""
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:72
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:56
msgid "Add new introducer"
msgstr ""
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:83
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:67
msgid "Add"
msgstr ""
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:88
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:72
msgid "Connected introducers"
msgstr ""
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:105
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:89
msgid "Remove"
msgstr ""
-#: plinth/modules/tor/__init__.py:47
-msgid "Tor"
-msgstr ""
-
-#: plinth/modules/tor/__init__.py:52
+#: plinth/modules/tor/__init__.py:33
msgid ""
"Tor is an anonymous communication system. You can learn more about it from "
"the Tor Project website. For "
@@ -5097,76 +5194,80 @@ msgid ""
"\">Tor Browser."
msgstr ""
-#: plinth/modules/tor/__init__.py:83
+#: plinth/modules/tor/__init__.py:55
+msgid "Tor"
+msgstr ""
+
+#: plinth/modules/tor/__init__.py:66
msgid "Tor Onion Service"
msgstr ""
-#: plinth/modules/tor/__init__.py:87
+#: plinth/modules/tor/__init__.py:70
msgid "Tor Socks Proxy"
msgstr ""
-#: plinth/modules/tor/__init__.py:91
+#: plinth/modules/tor/__init__.py:74
msgid "Tor Bridge Relay"
msgstr ""
-#: plinth/modules/tor/__init__.py:112
+#: plinth/modules/tor/__init__.py:95
msgid "Tor relay port available"
msgstr ""
-#: plinth/modules/tor/__init__.py:122
+#: plinth/modules/tor/__init__.py:105
msgid "Obfs3 transport registered"
msgstr ""
-#: plinth/modules/tor/__init__.py:132
+#: plinth/modules/tor/__init__.py:115
msgid "Obfs4 transport registered"
msgstr ""
-#: plinth/modules/tor/__init__.py:225
+#: plinth/modules/tor/__init__.py:208
#, python-brace-format
msgid "Access URL {url} on tcp{kind} via Tor"
msgstr ""
-#: plinth/modules/tor/__init__.py:236
+#: plinth/modules/tor/__init__.py:219
#, python-brace-format
msgid "Confirm Tor usage at {url} on tcp{kind}"
msgstr ""
-#: plinth/modules/tor/forms.py:46
+#: plinth/modules/tor/forms.py:31
msgid ""
"Enter a valid bridge with this format: [transport] IP:ORPort [fingerprint]"
msgstr ""
-#: plinth/modules/tor/forms.py:88
+#: plinth/modules/tor/forms.py:73
msgid "Enable Tor"
msgstr ""
-#: plinth/modules/tor/forms.py:90
+#: plinth/modules/tor/forms.py:75
msgid "Use upstream bridges to connect to Tor network"
msgstr ""
-#: plinth/modules/tor/forms.py:92
+#: plinth/modules/tor/forms.py:77
msgid ""
"When enabled, the bridges configured below will be used to connect to the "
"Tor network. Use this option if your Internet Service Provider (ISP) blocks "
"or censors connections to the Tor Network. This will disable relay modes."
msgstr ""
-#: plinth/modules/tor/forms.py:97
+#: plinth/modules/tor/forms.py:82
msgid "Upstream bridges"
msgstr ""
-#: plinth/modules/tor/forms.py:99
+#: plinth/modules/tor/forms.py:84
msgid ""
"You can get some bridges from https://bridges.torproject.org/ and copy/paste the bridge information "
"here. Currently supported transports are none, obfs3, obfs4 and scamblesuit."
msgstr ""
-#: plinth/modules/tor/forms.py:105
+#: plinth/modules/tor/forms.py:90
msgid "Enable Tor relay"
msgstr ""
-#: plinth/modules/tor/forms.py:106
+#: plinth/modules/tor/forms.py:91
#, python-brace-format
msgid ""
"When enabled, your {box_name} will run a Tor relay and donate bandwidth to "
@@ -5174,22 +5275,22 @@ msgid ""
"download bandwidth."
msgstr ""
-#: plinth/modules/tor/forms.py:111
+#: plinth/modules/tor/forms.py:96
msgid "Enable Tor bridge relay"
msgstr ""
-#: plinth/modules/tor/forms.py:113
+#: plinth/modules/tor/forms.py:98
msgid ""
"When enabled, relay information is published in the Tor bridge database "
"instead of public Tor relay database making it harder to censor this node. "
"This helps others circumvent censorship."
msgstr ""
-#: plinth/modules/tor/forms.py:118
+#: plinth/modules/tor/forms.py:103
msgid "Enable Tor Hidden Service"
msgstr ""
-#: plinth/modules/tor/forms.py:120
+#: plinth/modules/tor/forms.py:105
#, python-brace-format
msgid ""
"A hidden service will allow {box_name} to provide selected services (such as "
@@ -5197,210 +5298,206 @@ msgid ""
"anonymity yet."
msgstr ""
-#: plinth/modules/tor/forms.py:125
+#: plinth/modules/tor/forms.py:110
msgid "Download software packages over Tor"
msgstr ""
-#: plinth/modules/tor/forms.py:126
+#: plinth/modules/tor/forms.py:111
msgid ""
"When enabled, software will be downloaded over the Tor network for "
"installations and upgrades. This adds a degree of privacy and security "
"during software downloads."
msgstr ""
-#: plinth/modules/tor/forms.py:141
+#: plinth/modules/tor/forms.py:126
msgid "Specify at least one upstream bridge to use upstream bridges."
msgstr ""
-#: plinth/modules/tor/manifest.py:29
+#: plinth/modules/tor/manifest.py:14
msgid "Tor Browser"
msgstr ""
-#: plinth/modules/tor/manifest.py:45
+#: plinth/modules/tor/manifest.py:30
msgid "Orbot: Proxy with Tor"
msgstr ""
-#: plinth/modules/tor/templates/tor.html:41
+#: plinth/modules/tor/templates/tor.html:26
msgid "Tor configuration is being updated"
msgstr ""
-#: plinth/modules/tor/templates/tor.html:50
+#: plinth/modules/tor/templates/tor.html:35
msgid "Onion Service"
msgstr ""
-#: plinth/modules/tor/templates/tor.html:52
+#: plinth/modules/tor/templates/tor.html:37
msgid "Ports"
msgstr ""
-#: plinth/modules/tor/templates/tor.html:82
+#: plinth/modules/tor/templates/tor.html:67
msgid "Relay"
msgstr ""
-#: plinth/modules/tor/templates/tor.html:84
+#: plinth/modules/tor/templates/tor.html:69
#, python-format
msgid ""
"If your %(box_name)s is behind a router or firewall, you should make sure "
"the following ports are open, and port-forwarded, if necessary:"
msgstr ""
-#: plinth/modules/tor/templates/tor.html:112
+#: plinth/modules/tor/templates/tor.html:97
msgid "SOCKS"
msgstr ""
-#: plinth/modules/tor/templates/tor.html:115
+#: plinth/modules/tor/templates/tor.html:100
#, python-format
msgid "A Tor SOCKS port is available on your %(box_name)s on TCP port 9050."
msgstr ""
-#: plinth/modules/transmission/__init__.py:41
-#: plinth/modules/transmission/manifest.py:24
-msgid "Transmission"
-msgstr ""
-
-#: plinth/modules/transmission/__init__.py:48
+#: plinth/modules/transmission/__init__.py:27
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/ttrss/__init__.py:43 plinth/modules/ttrss/manifest.py:34
-msgid "Tiny Tiny RSS"
+#: plinth/modules/transmission/__init__.py:48
+#: plinth/modules/transmission/manifest.py:9
+msgid "Transmission"
msgstr ""
-#: plinth/modules/ttrss/__init__.py:47
-msgid "News Feed Reader"
-msgstr ""
-
-#: plinth/modules/ttrss/__init__.py:50
+#: plinth/modules/ttrss/__init__.py:29
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:54
+#: plinth/modules/ttrss/__init__.py:33
#, python-brace-format
msgid ""
"When enabled, Tiny Tiny RSS can be accessed by any user with a {box_name} login."
msgstr ""
-#: plinth/modules/ttrss/__init__.py:58
+#: plinth/modules/ttrss/__init__.py:37
msgid ""
"When using a mobile or desktop application for Tiny Tiny RSS, use the URL /tt-rss-app for "
"connecting."
msgstr ""
-#: plinth/modules/ttrss/__init__.py:65
+#: plinth/modules/ttrss/__init__.py:42
msgid "Read and subscribe to news feeds"
msgstr ""
-#: plinth/modules/ttrss/manifest.py:25
+#: plinth/modules/ttrss/__init__.py:56 plinth/modules/ttrss/manifest.py:19
+msgid "Tiny Tiny RSS"
+msgstr ""
+
+#: plinth/modules/ttrss/__init__.py:57
+msgid "News Feed Reader"
+msgstr ""
+
+#: plinth/modules/ttrss/manifest.py:10
msgid "Tiny Tiny RSS (Fork)"
msgstr ""
-#: plinth/modules/upgrades/__init__.py:37 plinth/templates/setup.html:89
-msgid "Update"
-msgstr ""
-
-#: plinth/modules/upgrades/__init__.py:40
+#: plinth/modules/upgrades/__init__.py:23
msgid "Check for and apply the latest software and security updates."
msgstr ""
-#: plinth/modules/upgrades/__init__.py:84
+#: plinth/modules/upgrades/__init__.py:38 plinth/templates/setup.html:74
+msgid "Update"
+msgstr ""
+
+#: plinth/modules/upgrades/__init__.py:71
#, fuzzy
#| msgid "FreedomBox"
msgid "FreedomBox Updated"
msgstr "FreedomBox"
-#: plinth/modules/upgrades/forms.py:28
+#: plinth/modules/upgrades/forms.py:13
msgid "Enable auto-update"
msgstr ""
-#: plinth/modules/upgrades/forms.py:29
+#: plinth/modules/upgrades/forms.py:14
msgid "When enabled, FreedomBox automatically updates once a day."
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades-new-release.html:24
+#: plinth/modules/upgrades/templates/upgrades-new-release.html:9
#, python-format
msgid "%(box_name)s Updated"
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades-new-release.html:28
+#: plinth/modules/upgrades/templates/upgrades-new-release.html:13
#, python-format
msgid ""
"%(box_name)s has been updated to version %(version)s. See the release announcement."
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades-new-release.html:37
-#: plinth/templates/notifications.html:59
+#: plinth/modules/upgrades/templates/upgrades-new-release.html:22
+#: plinth/templates/notifications.html:44
msgid "Dismiss"
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades.html:45
+#: plinth/modules/upgrades/templates/upgrades.html:30
msgid "Update now"
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades.html:54
+#: plinth/modules/upgrades/templates/upgrades.html:39
msgid "Updating..."
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades.html:59
+#: plinth/modules/upgrades/templates/upgrades.html:44
msgid ""
"This may take a long time to complete. During an update, "
"you cannot install apps. Also, this web interface may be temporarily "
"unavailable and show an error. In that case, refresh the page to continue."
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades.html:73
+#: plinth/modules/upgrades/templates/upgrades.html:58
msgid "Toggle recent update logs"
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades_configure.html:26
-#: plinth/modules/upgrades/templates/upgrades_configure.html:27
-#: plinth/modules/upgrades/views.py:107
+#: plinth/modules/upgrades/templates/upgrades_configure.html:11
+#: plinth/modules/upgrades/templates/upgrades_configure.html:12
+#: plinth/modules/upgrades/views.py:89
msgid "Manual update"
msgstr ""
-#: plinth/modules/upgrades/views.py:66
+#: plinth/modules/upgrades/views.py:48
#, python-brace-format
msgid "Error when configuring unattended-upgrades: {error}"
msgstr ""
-#: plinth/modules/upgrades/views.py:70
+#: plinth/modules/upgrades/views.py:52
msgid "Automatic upgrades enabled"
msgstr ""
-#: plinth/modules/upgrades/views.py:73
+#: plinth/modules/upgrades/views.py:55
msgid "Automatic upgrades disabled"
msgstr ""
-#: plinth/modules/upgrades/views.py:75
+#: plinth/modules/upgrades/views.py:57
msgid "Settings unchanged"
msgstr ""
-#: plinth/modules/upgrades/views.py:101
+#: plinth/modules/upgrades/views.py:83
msgid "Upgrade process started."
msgstr ""
-#: plinth/modules/upgrades/views.py:104
+#: plinth/modules/upgrades/views.py:86
msgid "Starting upgrade failed."
msgstr ""
-#: plinth/modules/users/__init__.py:51
-msgid "Users and Groups"
-msgstr ""
-
-#: plinth/modules/users/__init__.py:54
+#: plinth/modules/users/__init__.py:37
msgid ""
"Create and managed user accounts. These accounts serve as centralized "
"authentication mechanism for most apps. Some apps further require a user "
"account to be part of a group to authorize the user to access the app."
msgstr ""
-#: plinth/modules/users/__init__.py:59
+#: plinth/modules/users/__init__.py:42
#, python-brace-format
msgid ""
"Any user may login to {box_name} web interface to see a list of apps "
@@ -5408,33 +5505,37 @@ msgid ""
"group may alter apps or system settings."
msgstr ""
-#: plinth/modules/users/__init__.py:128
+#: plinth/modules/users/__init__.py:64
+msgid "Users and Groups"
+msgstr ""
+
+#: plinth/modules/users/__init__.py:115
#, python-brace-format
msgid "Check LDAP entry \"{search_item}\""
msgstr ""
-#: plinth/modules/users/forms.py:43
+#: plinth/modules/users/forms.py:28
msgid "Access to all services and system settings"
msgstr ""
-#: plinth/modules/users/forms.py:59
+#: plinth/modules/users/forms.py:44
msgid "Username is taken or is reserved."
msgstr ""
-#: plinth/modules/users/forms.py:87
+#: plinth/modules/users/forms.py:72
msgid "Enter a valid username."
msgstr ""
-#: plinth/modules/users/forms.py:93
+#: plinth/modules/users/forms.py:78
msgid ""
"Required. 150 characters or fewer. English letters, digits and @/./-/_ only."
msgstr ""
-#: plinth/modules/users/forms.py:106 plinth/modules/users/forms.py:222
+#: plinth/modules/users/forms.py:91 plinth/modules/users/forms.py:207
msgid "Permissions"
msgstr ""
-#: plinth/modules/users/forms.py:109
+#: plinth/modules/users/forms.py:94
msgid ""
"Select which services should be available to the new user. The user will be "
"able to log in to services that support single sign-on through LDAP, if they "
@@ -5443,187 +5544,182 @@ msgid ""
"SSH and have administrative privileges (sudo)."
msgstr ""
-#: plinth/modules/users/forms.py:148 plinth/modules/users/forms.py:372
+#: plinth/modules/users/forms.py:133 plinth/modules/users/forms.py:357
msgid "Creating LDAP user failed."
msgstr ""
-#: plinth/modules/users/forms.py:159
+#: plinth/modules/users/forms.py:144
#, python-brace-format
msgid "Failed to add new user to {group} group."
msgstr ""
-#: plinth/modules/users/forms.py:173
+#: plinth/modules/users/forms.py:158
msgid "Authorized SSH Keys"
msgstr ""
-#: plinth/modules/users/forms.py:175
+#: plinth/modules/users/forms.py:160
msgid ""
"Setting an SSH public key will allow this user to securely log in to the "
"system without using a password. You may enter multiple keys, one on each "
"line. Blank lines and lines starting with # will be ignored."
msgstr ""
-#: plinth/modules/users/forms.py:259
+#: plinth/modules/users/forms.py:244
msgid "Renaming LDAP user failed."
msgstr ""
-#: plinth/modules/users/forms.py:271
+#: plinth/modules/users/forms.py:256
msgid "Failed to remove user from group."
msgstr ""
-#: plinth/modules/users/forms.py:282
+#: plinth/modules/users/forms.py:267
msgid "Failed to add user to group."
msgstr ""
-#: plinth/modules/users/forms.py:291
+#: plinth/modules/users/forms.py:276
msgid "Unable to set SSH keys."
msgstr ""
-#: plinth/modules/users/forms.py:306
+#: plinth/modules/users/forms.py:291
msgid "Failed to change user status."
msgstr ""
-#: plinth/modules/users/forms.py:314
+#: plinth/modules/users/forms.py:299
msgid "Cannot delete the only administrator in the system."
msgstr ""
-#: plinth/modules/users/forms.py:346
+#: plinth/modules/users/forms.py:331
msgid "Changing LDAP user password failed."
msgstr ""
-#: plinth/modules/users/forms.py:381
+#: plinth/modules/users/forms.py:366
msgid "Failed to add new user to admin group."
msgstr ""
-#: plinth/modules/users/forms.py:398
+#: plinth/modules/users/forms.py:383
msgid "Failed to restrict console access."
msgstr ""
-#: plinth/modules/users/forms.py:410
+#: plinth/modules/users/forms.py:395
msgid "User account created, you are now logged in"
msgstr ""
-#: plinth/modules/users/templates/users_change_password.html:26
+#: plinth/modules/users/templates/users_change_password.html:11
#, python-format
msgid "Change Password for %(username)s"
msgstr ""
-#: plinth/modules/users/templates/users_change_password.html:36
+#: plinth/modules/users/templates/users_change_password.html:21
msgid "Save Password"
msgstr ""
-#: plinth/modules/users/templates/users_create.html:32
-#: plinth/modules/users/templates/users_list.html:42
-#: plinth/modules/users/templates/users_list.html:44
-#: plinth/modules/users/views.py:57
+#: plinth/modules/users/templates/users_create.html:17
+#: plinth/modules/users/templates/users_list.html:27
+#: plinth/modules/users/templates/users_list.html:29
+#: plinth/modules/users/views.py:42
msgid "Create User"
msgstr ""
-#: plinth/modules/users/templates/users_delete.html:26
-#: plinth/modules/users/views.py:139
+#: plinth/modules/users/templates/users_delete.html:11
+#: plinth/modules/users/views.py:121
msgid "Delete User"
msgstr ""
-#: plinth/modules/users/templates/users_delete.html:29
+#: plinth/modules/users/templates/users_delete.html:14
#, python-format
msgid "Delete user %(username)s permanently?"
msgstr ""
-#: plinth/modules/users/templates/users_delete.html:38
+#: plinth/modules/users/templates/users_delete.html:23
#, python-format
msgid "Delete %(username)s"
msgstr ""
-#: plinth/modules/users/templates/users_firstboot.html:26
+#: plinth/modules/users/templates/users_firstboot.html:11
msgid "Administrator Account"
msgstr ""
-#: plinth/modules/users/templates/users_firstboot.html:29
+#: plinth/modules/users/templates/users_firstboot.html:14
msgid ""
"Choose a username and password to access this web interface. The password "
"can be changed later. This user will be granted administrative privileges. "
"Other users can be added later."
msgstr ""
-#: plinth/modules/users/templates/users_firstboot.html:42
+#: plinth/modules/users/templates/users_firstboot.html:27
msgid "Create Account"
msgstr ""
-#: plinth/modules/users/templates/users_list.html:38
-#: plinth/modules/users/views.py:74
+#: plinth/modules/users/templates/users_list.html:23
+#: plinth/modules/users/views.py:59
msgid "Users"
msgstr ""
-#: plinth/modules/users/templates/users_list.html:57
+#: plinth/modules/users/templates/users_list.html:42
#, python-format
msgid "Delete user %(username)s"
msgstr ""
-#: plinth/modules/users/templates/users_list.html:65
+#: plinth/modules/users/templates/users_list.html:50
#, python-format
msgid "Edit user %(username)s"
msgstr ""
-#: plinth/modules/users/templates/users_update.html:30
+#: plinth/modules/users/templates/users_update.html:15
#, python-format
msgid ""
"Use the change password form to "
"change the password."
msgstr ""
-#: plinth/modules/users/templates/users_update.html:42
-#: plinth/templates/language-selection.html:32
+#: plinth/modules/users/templates/users_update.html:27
+#: plinth/templates/language-selection.html:17
msgid "Save Changes"
msgstr ""
-#: plinth/modules/users/views.py:55
+#: plinth/modules/users/views.py:40
#, python-format
msgid "User %(username)s created."
msgstr ""
-#: plinth/modules/users/views.py:93
+#: plinth/modules/users/views.py:75
#, python-format
msgid "User %(username)s updated."
msgstr ""
-#: plinth/modules/users/views.py:94
+#: plinth/modules/users/views.py:76
msgid "Edit User"
msgstr ""
-#: plinth/modules/users/views.py:149
+#: plinth/modules/users/views.py:131
#, python-brace-format
msgid "User {user} deleted."
msgstr ""
-#: plinth/modules/users/views.py:156
+#: plinth/modules/users/views.py:138
msgid "Deleting LDAP user failed."
msgstr ""
-#: plinth/modules/users/views.py:165
+#: plinth/modules/users/views.py:147
msgid "Change Password"
msgstr ""
-#: plinth/modules/users/views.py:166
+#: plinth/modules/users/views.py:148
msgid "Password changed successfully."
msgstr ""
-#: plinth/modules/wireguard/__init__.py:38
-#: plinth/modules/wireguard/manifest.py:29
-msgid "WireGuard"
-msgstr ""
-
-#: plinth/modules/wireguard/__init__.py:43
+#: plinth/modules/wireguard/__init__.py:24
msgid "WireGuard is a fast, modern, secure VPN tunnel."
msgstr ""
-#: plinth/modules/wireguard/__init__.py:45
+#: plinth/modules/wireguard/__init__.py:26
#, python-brace-format
msgid ""
"It can be used to connect to a VPN provider which supports WireGuard, and to "
"route all outgoing traffic from {box_name} through the VPN."
msgstr ""
-#: plinth/modules/wireguard/__init__.py:49
+#: plinth/modules/wireguard/__init__.py:30
#, python-brace-format
msgid ""
"A second use case is to connect a mobile device to {box_name} while "
@@ -5631,59 +5727,64 @@ msgid ""
"securely relayed through {box_name}."
msgstr ""
-#: plinth/modules/wireguard/forms.py:47
+#: plinth/modules/wireguard/__init__.py:52
+#: plinth/modules/wireguard/manifest.py:14
+msgid "WireGuard"
+msgstr ""
+
+#: plinth/modules/wireguard/forms.py:32
msgid "Invalid key."
msgstr ""
-#: plinth/modules/wireguard/forms.py:76
-#: plinth/modules/wireguard/templates/wireguard.html:32
-#: plinth/modules/wireguard/templates/wireguard.html:89
-#: plinth/modules/wireguard/templates/wireguard_delete_server.html:38
+#: plinth/modules/wireguard/forms.py:61
+#: plinth/modules/wireguard/templates/wireguard.html:17
+#: plinth/modules/wireguard/templates/wireguard.html:74
+#: plinth/modules/wireguard/templates/wireguard_delete_server.html:23
msgid "Public Key"
msgstr ""
-#: plinth/modules/wireguard/forms.py:77
+#: plinth/modules/wireguard/forms.py:62
msgid ""
"Public key of the peer. Example: "
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs= ."
msgstr ""
-#: plinth/modules/wireguard/forms.py:85
+#: plinth/modules/wireguard/forms.py:70
msgid "Endpoint of the server"
msgstr ""
-#: plinth/modules/wireguard/forms.py:86
+#: plinth/modules/wireguard/forms.py:71
msgid ""
"Domain name and port in the form \"ip:port\". Example: demo.wireguard."
"com:12912 ."
msgstr ""
-#: plinth/modules/wireguard/forms.py:91
+#: plinth/modules/wireguard/forms.py:76
msgid "Public key of the server"
msgstr ""
-#: plinth/modules/wireguard/forms.py:92
+#: plinth/modules/wireguard/forms.py:77
msgid ""
"Provided by the server operator, a long string of characters. Example: "
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs= ."
msgstr ""
-#: plinth/modules/wireguard/forms.py:97
+#: plinth/modules/wireguard/forms.py:82
msgid "Client IP address provided by server"
msgstr ""
-#: plinth/modules/wireguard/forms.py:98
+#: plinth/modules/wireguard/forms.py:83
msgid ""
"IP address assigned to this machine on the VPN after connecting to the "
"endpoint. This value is usually provided by the server operator. Example: "
"192.168.0.10."
msgstr ""
-#: plinth/modules/wireguard/forms.py:104
+#: plinth/modules/wireguard/forms.py:89
msgid "Private key of this machine"
msgstr ""
-#: plinth/modules/wireguard/forms.py:105
+#: plinth/modules/wireguard/forms.py:90
msgid ""
"Optional. New public/private keys are generated if left blank. Public key "
"can then be provided to the server. This is the recommended way. However, "
@@ -5691,159 +5792,159 @@ msgid ""
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs= ."
msgstr ""
-#: plinth/modules/wireguard/forms.py:113
+#: plinth/modules/wireguard/forms.py:98
msgid "Pre-shared key"
msgstr ""
-#: plinth/modules/wireguard/forms.py:114
+#: plinth/modules/wireguard/forms.py:99
msgid ""
"Optional. A shared secret key provided by the server to add an additional "
"layer of security. Fill in only if provided. Example: "
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs=."
msgstr ""
-#: plinth/modules/wireguard/forms.py:120
+#: plinth/modules/wireguard/forms.py:105
msgid "Use this connection to send all outgoing traffic"
msgstr ""
-#: plinth/modules/wireguard/forms.py:122
+#: plinth/modules/wireguard/forms.py:107
msgid "Typically checked for a VPN service though which all traffic is sent."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:25
+#: plinth/modules/wireguard/templates/wireguard.html:10
#, fuzzy
#| msgid "Web Server"
msgid "As a Server"
msgstr "Servidor web"
-#: plinth/modules/wireguard/templates/wireguard.html:27
+#: plinth/modules/wireguard/templates/wireguard.html:12
msgid "Peers allowed to connect to this server:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:33
+#: plinth/modules/wireguard/templates/wireguard.html:18
msgid "Allowed IPs"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:34
-#: plinth/modules/wireguard/templates/wireguard.html:90
+#: plinth/modules/wireguard/templates/wireguard.html:19
+#: plinth/modules/wireguard/templates/wireguard.html:75
msgid "Last Connected Time"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:53
+#: plinth/modules/wireguard/templates/wireguard.html:38
#, python-format
msgid "No peers configured to connect to this %(box_name)s yet."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:62
+#: plinth/modules/wireguard/templates/wireguard.html:47
#, python-format
msgid "Public key for this %(box_name)s:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:68
+#: plinth/modules/wireguard/templates/wireguard.html:53
msgid "Not configured yet."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:72
+#: plinth/modules/wireguard/templates/wireguard.html:57
msgid "Add a new peer"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:76
-#: plinth/modules/wireguard/views.py:69
+#: plinth/modules/wireguard/templates/wireguard.html:61
+#: plinth/modules/wireguard/views.py:51
msgid "Add Allowed Client"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:79
+#: plinth/modules/wireguard/templates/wireguard.html:64
msgid "As a Client"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:81
+#: plinth/modules/wireguard/templates/wireguard.html:66
#, python-format
msgid "Servers that %(box_name)s will connect to:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:88
-#: plinth/modules/wireguard/templates/wireguard_delete_server.html:34
+#: plinth/modules/wireguard/templates/wireguard.html:73
+#: plinth/modules/wireguard/templates/wireguard_delete_server.html:19
msgid "Endpoint"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:111
+#: plinth/modules/wireguard/templates/wireguard.html:96
msgid "No connections to remote servers are configured yet."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:119
+#: plinth/modules/wireguard/templates/wireguard.html:104
msgid "Add a new server"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:123
-#: plinth/modules/wireguard/views.py:178
+#: plinth/modules/wireguard/templates/wireguard.html:108
+#: plinth/modules/wireguard/views.py:160
msgid "Add Connection to Server"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_add_client.html:34
+#: plinth/modules/wireguard/templates/wireguard_add_client.html:19
msgid "Add Client"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_delete_client.html:29
+#: plinth/modules/wireguard/templates/wireguard_delete_client.html:14
msgid "Are you sure that you want to delete this client?"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_delete_server.html:29
+#: plinth/modules/wireguard/templates/wireguard_delete_server.html:14
msgid "Are you sure that you want to delete this server?"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_edit_client.html:34
+#: plinth/modules/wireguard/templates/wireguard_edit_client.html:19
msgid "Update Client"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_edit_server.html:34
+#: plinth/modules/wireguard/templates/wireguard_edit_server.html:19
msgid "Update Connection"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:27
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:12
#, python-format
msgid ""
"%(box_name)s will allow this client to connect to it. Ensure that the client "
"is configured with the following information."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:35
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:20
msgid "Client public key:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:39
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:24
msgid "IP address to use for client:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:43
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:46
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:28
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:31
msgid "Pre-shared key:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:47
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:32
msgid "Server endpoints:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:55
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:42
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:40
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:27
msgid "Server public key:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:65
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:64
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:50
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:49
msgid "Data transmitted:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:69
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:68
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:54
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:53
msgid "Data received:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:73
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:72
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:58
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:57
msgid "Latest handshake:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:29
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:14
#, python-format
msgid ""
"%(box_name)s will attempt to reach a WireGuard server with the following "
@@ -5851,133 +5952,133 @@ msgid ""
"public key and IP address."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:38
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:23
msgid "Server endpoint:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:50
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:35
msgid "Public key of this machine:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:54
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:39
msgid "IP address of this machine:"
msgstr ""
-#: plinth/modules/wireguard/views.py:64
+#: plinth/modules/wireguard/views.py:46
msgid "Added new client."
msgstr ""
-#: plinth/modules/wireguard/views.py:79 plinth/modules/wireguard/views.py:138
+#: plinth/modules/wireguard/views.py:61 plinth/modules/wireguard/views.py:120
msgid "Client with public key already exists"
msgstr ""
-#: plinth/modules/wireguard/views.py:92
+#: plinth/modules/wireguard/views.py:74
msgid "Allowed Client"
msgstr ""
-#: plinth/modules/wireguard/views.py:114
+#: plinth/modules/wireguard/views.py:96
msgid "Updated client."
msgstr ""
-#: plinth/modules/wireguard/views.py:119
+#: plinth/modules/wireguard/views.py:101
msgid "Modify Client"
msgstr ""
-#: plinth/modules/wireguard/views.py:152
+#: plinth/modules/wireguard/views.py:134
msgid "Delete Allowed Client"
msgstr ""
-#: plinth/modules/wireguard/views.py:161
+#: plinth/modules/wireguard/views.py:143
msgid "Client deleted."
msgstr ""
-#: plinth/modules/wireguard/views.py:163
+#: plinth/modules/wireguard/views.py:145
msgid "Client not found"
msgstr ""
-#: plinth/modules/wireguard/views.py:173
+#: plinth/modules/wireguard/views.py:155
msgid "Added new server."
msgstr ""
-#: plinth/modules/wireguard/views.py:194
+#: plinth/modules/wireguard/views.py:176
msgid "Connection to Server"
msgstr ""
-#: plinth/modules/wireguard/views.py:212
+#: plinth/modules/wireguard/views.py:194
msgid "Updated server."
msgstr ""
-#: plinth/modules/wireguard/views.py:217
+#: plinth/modules/wireguard/views.py:199
msgid "Modify Connection to Server"
msgstr ""
-#: plinth/modules/wireguard/views.py:254
+#: plinth/modules/wireguard/views.py:236
msgid "Delete Connection to Server"
msgstr ""
-#: plinth/modules/wireguard/views.py:274
+#: plinth/modules/wireguard/views.py:256
msgid "Server deleted."
msgstr ""
-#: plinth/network.py:42
+#: plinth/network.py:27
msgid "PPPoE"
msgstr ""
-#: plinth/network.py:43
+#: plinth/network.py:28
msgid "Generic"
msgstr ""
-#: plinth/package.py:137
+#: plinth/package.py:122
msgid "Error during installation"
msgstr ""
-#: plinth/package.py:159
+#: plinth/package.py:144
msgid "installing"
msgstr ""
-#: plinth/package.py:161
+#: plinth/package.py:146
msgid "downloading"
msgstr ""
-#: plinth/package.py:163
+#: plinth/package.py:148
msgid "media change"
msgstr ""
-#: plinth/package.py:165
+#: plinth/package.py:150
#, python-brace-format
msgid "configuration file: {file}"
msgstr ""
-#: plinth/templates/403.html:25
+#: plinth/templates/403.html:10
msgid "403 Forbidden"
msgstr ""
-#: plinth/templates/403.html:29
+#: plinth/templates/403.html:14
#, python-format
msgid "You don't have permission to access %(request_path)s on this server."
msgstr ""
-#: plinth/templates/404.html:25
+#: plinth/templates/404.html:10
msgid "404"
msgstr ""
-#: plinth/templates/404.html:28
+#: plinth/templates/404.html:13
#, python-format
msgid "Requested page %(request_path)s was not found."
msgstr ""
-#: plinth/templates/404.html:34
+#: plinth/templates/404.html:19
msgid ""
"If you believe this missing page should exist, please file a bug at the "
"FreedomBox Service (Plinth) project issue tracker."
msgstr ""
-#: plinth/templates/500.html:25
+#: plinth/templates/500.html:10
msgid "500"
msgstr ""
-#: plinth/templates/500.html:29
+#: plinth/templates/500.html:14
#, python-format
msgid ""
"This is an internal error and not something you caused or can fix. Please "
@@ -5986,137 +6087,137 @@ msgid ""
"href=\"%(status_log_url)s\">status log to the bug report."
msgstr ""
-#: plinth/templates/app.html:47
+#: plinth/templates/app-header.html:22
+msgid "Installation"
+msgstr ""
+
+#: plinth/templates/app.html:32
#, python-format
msgid "Service %(service_name)s is running."
msgstr ""
-#: plinth/templates/app.html:52
+#: plinth/templates/app.html:37
#, python-format
msgid "Service %(service_name)s is not running."
msgstr ""
-#: plinth/templates/base.html:50
+#: plinth/templates/base.html:35
#, python-format
msgid "Core functionality and web interface for %(box_name)s"
msgstr ""
-#: plinth/templates/base.html:96
+#: plinth/templates/base.html:81
msgid "Toggle navigation"
msgstr ""
-#: plinth/templates/base.html:120 plinth/templates/base.html:123
+#: plinth/templates/base.html:105 plinth/templates/base.html:108
msgid "Home"
msgstr ""
-#: plinth/templates/base.html:128 plinth/templates/base.html:132
+#: plinth/templates/base.html:113 plinth/templates/base.html:117
msgid "Apps"
msgstr ""
-#: plinth/templates/base.html:137 plinth/templates/base.html:141
+#: plinth/templates/base.html:122 plinth/templates/base.html:126
msgid "System"
msgstr ""
-#: plinth/templates/base.html:173 plinth/templates/base.html:174
+#: plinth/templates/base.html:158 plinth/templates/base.html:159
msgid "Change password"
msgstr ""
-#: plinth/templates/base.html:181 plinth/templates/base.html:182
+#: plinth/templates/base.html:166 plinth/templates/base.html:167
msgid "Restart"
msgstr ""
-#: plinth/templates/base.html:187 plinth/templates/base.html:188
+#: plinth/templates/base.html:172 plinth/templates/base.html:173
msgid "Shut down"
msgstr ""
-#: plinth/templates/base.html:195 plinth/templates/base.html:196
-#: plinth/templates/base.html:220 plinth/templates/base.html:222
+#: plinth/templates/base.html:180 plinth/templates/base.html:181
+#: plinth/templates/base.html:205 plinth/templates/base.html:207
msgid "Log out"
msgstr ""
-#: plinth/templates/base.html:204 plinth/templates/base.html:207
+#: plinth/templates/base.html:189 plinth/templates/base.html:192
msgid "Select language"
msgstr ""
-#: plinth/templates/base.html:212 plinth/templates/base.html:214
+#: plinth/templates/base.html:197 plinth/templates/base.html:199
msgid "Log in"
msgstr ""
-#: plinth/templates/clients.html:32
+#: plinth/templates/clients.html:17
msgid "Web"
msgstr ""
-#: plinth/templates/clients.html:57
+#: plinth/templates/clients.html:42
msgid "Desktop"
msgstr ""
-#: plinth/templates/clients.html:68
+#: plinth/templates/clients.html:53
msgid "GNU/Linux"
msgstr ""
-#: plinth/templates/clients.html:70
+#: plinth/templates/clients.html:55
msgid "Windows"
msgstr ""
-#: plinth/templates/clients.html:72
+#: plinth/templates/clients.html:57
msgid "macOS"
msgstr ""
-#: plinth/templates/clients.html:88
+#: plinth/templates/clients.html:73
msgid "Mobile"
msgstr ""
-#: plinth/templates/clients.html:99
+#: plinth/templates/clients.html:84
msgid "Play Store"
msgstr ""
-#: plinth/templates/clients.html:101
+#: plinth/templates/clients.html:86
msgid "F-Droid"
msgstr ""
-#: plinth/templates/clients.html:103
+#: plinth/templates/clients.html:88
msgid "App Store"
msgstr ""
-#: plinth/templates/clients.html:119
+#: plinth/templates/clients.html:104
msgid "Package"
msgstr ""
-#: plinth/templates/clients.html:126
+#: plinth/templates/clients.html:111
msgid "Debian:"
msgstr ""
-#: plinth/templates/clients.html:129
+#: plinth/templates/clients.html:114
msgid "Homebrew:"
msgstr ""
-#: plinth/templates/clients.html:132
+#: plinth/templates/clients.html:117
msgid "RPM:"
msgstr ""
-#: plinth/templates/first_setup.html:39
+#: plinth/templates/first_setup.html:24
#, python-format
msgid ""
"Please wait for %(box_name)s to finish installation. You can start using "
"your %(box_name)s once it is done."
msgstr ""
-#: plinth/templates/header.html:36
-msgid "Installation"
-msgstr ""
-
-#: plinth/templates/index.html:37
+#: plinth/templates/index.html:22
#, python-format
msgid ""
"Enable some applications to add shortcuts to "
"this page."
msgstr ""
-#: plinth/templates/index.html:59
+#: plinth/templates/index.html:44
msgid "Configure »"
msgstr ""
-#: plinth/templates/index.html:115
+#: plinth/templates/index.html:100
#, python-format
msgid ""
"%(box_name)s, a Debian pure blend, is a 100%% free software self-hosting web "
@@ -6124,7 +6225,7 @@ msgid ""
"communication tools respecting your privacy and data ownership."
msgstr ""
-#: plinth/templates/index.html:124
+#: plinth/templates/index.html:109
#, python-format
msgid ""
"This portal is a part of the %(box_name)s web interface. %(box_name)s is "
@@ -6132,55 +6233,55 @@ msgid ""
"Version 3 or later."
msgstr ""
-#: plinth/templates/index.html:144
+#: plinth/templates/index.html:129
msgid "Homepage"
msgstr ""
-#: plinth/templates/index.html:147
+#: plinth/templates/index.html:132
msgid "Source Code"
msgstr ""
-#: plinth/templates/index.html:150
+#: plinth/templates/index.html:135
msgid "Donate"
msgstr ""
-#: plinth/templates/index.html:154
+#: plinth/templates/index.html:139
msgid "FreedomBox Foundation"
msgstr ""
-#: plinth/templates/index.html:161
+#: plinth/templates/index.html:146
msgid "IRC Chatroom"
msgstr ""
-#: plinth/templates/index.html:166
+#: plinth/templates/index.html:151
msgid "Mailing list"
msgstr ""
-#: plinth/templates/internal-zone.html:26
+#: plinth/templates/internal-zone.html:11
#, python-format
msgid "%(service_name)s is available only on internal networks."
msgstr ""
-#: plinth/templates/internal-zone.html:32
+#: plinth/templates/internal-zone.html:17
msgid "Currently there are no network interfaces configured as internal."
msgstr ""
-#: plinth/templates/internal-zone.html:34
+#: plinth/templates/internal-zone.html:19
#, python-format
msgid ""
"Currently the following network interfaces are configured as internal: "
"%(interface_list)s"
msgstr ""
-#: plinth/templates/notifications-dropdown.html:26
+#: plinth/templates/notifications-dropdown.html:11
msgid "Notifications"
msgstr ""
-#: plinth/templates/port-forwarding-info.html:23
+#: plinth/templates/port-forwarding-info.html:8
msgid "Port Forwarding"
msgstr ""
-#: plinth/templates/port-forwarding-info.html:26
+#: plinth/templates/port-forwarding-info.html:11
#, python-format
msgid ""
"If your FreedomBox is behind a router, you will need to set up port "
@@ -6188,62 +6289,62 @@ msgid ""
"%(service_name)s:"
msgstr ""
-#: plinth/templates/setup.html:51
+#: plinth/templates/setup.html:36
msgid "Install this application?"
msgstr ""
-#: plinth/templates/setup.html:55
+#: plinth/templates/setup.html:40
msgid "This application needs an update. Update now?"
msgstr ""
-#: plinth/templates/setup.html:66
+#: plinth/templates/setup.html:51
msgid ""
"Another installation or upgrade is already running. Please wait for a few "
"moments before trying again."
msgstr ""
-#: plinth/templates/setup.html:73
+#: plinth/templates/setup.html:58
msgid "This application is currently not available in your distribution."
msgstr ""
-#: plinth/templates/setup.html:87
+#: plinth/templates/setup.html:72
msgid "Install"
msgstr ""
-#: plinth/templates/setup.html:98
+#: plinth/templates/setup.html:83
msgid "Performing pre-install operation"
msgstr ""
-#: plinth/templates/setup.html:102
+#: plinth/templates/setup.html:87
msgid "Performing post-install operation"
msgstr ""
-#: plinth/templates/setup.html:107
+#: plinth/templates/setup.html:92
#, python-format
msgid "Installing %(package_names)s: %(status)s"
msgstr ""
-#: plinth/templates/setup.html:117
+#: plinth/templates/setup.html:102
#, python-format
msgid "%(percentage)s%% complete"
msgstr ""
-#: plinth/templates/toolbar.html:38
+#: plinth/templates/toolbar.html:23
msgid "Launch web client"
msgstr ""
-#: plinth/templates/toolbar.html:47
+#: plinth/templates/toolbar.html:32
msgid "Client Apps"
msgstr ""
-#: plinth/views.py:179
+#: plinth/views.py:189
msgid "Application enabled"
msgstr ""
-#: plinth/views.py:182
+#: plinth/views.py:192
msgid "Application disabled"
msgstr ""
-#: plinth/web_framework.py:190
+#: plinth/web_framework.py:107
msgid "Gujarati"
msgstr ""
diff --git a/plinth/locale/gu/LC_MESSAGES/django.po b/plinth/locale/gu/LC_MESSAGES/django.po
index 0ec0b8dac..01aace35c 100644
--- a/plinth/locale/gu/LC_MESSAGES/django.po
+++ b/plinth/locale/gu/LC_MESSAGES/django.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2020-02-14 21:26+0200\n"
+"POT-Creation-Date: 2020-02-24 19:12-0500\n"
"PO-Revision-Date: 2018-02-05 18:37+0000\n"
"Last-Translator: drashti kaushik This means that devices on the Internet can reach you when you are " +"connected to the Internet. Every time you connect to the Internet with your " +"Internet Service Provider (ISP), you may get a different IP address, " +"especially after some offline time. Many ISPs offer this type of " +"connectivity. If you have a public IP address but are unsure if it changes " +"over time or not, it is safer to choose this option.
" +msgstr "" + #: plinth/modules/networks/forms.py:313 +#, python-brace-format +msgid "" +"I have a public IP address that does not change overtime (recommended)This means that devices on the Internet can reach you " +"when you are connected to the Internet. Every time you connect to the " +"Internet with your Internet Service Provider (ISP), you always get the same " +"IP address. This is the most trouble-free setup for many {box_name} services " +"but very few ISPs offer this. You may be able to get this service from your " +"ISP by making an additional payment.
" +msgstr "" + +#: plinth/modules/networks/forms.py:326 +#, python-brace-format +msgid "" +"I dont have a public IP addressThis means that " +"devices on the Internet can not reach you when you are connected to " +"the Internet. Every time you connect to the Internet with your Internet " +"Service Provider (ISP), you get an IP address that is only relevant for " +"local networks. Many ISPs offer this type of connectivity. This is the most " +"troublesome situation for hosting services at home. {box_name} provides many " +"workaround solutions but each solution has some limitations.
" +msgstr "" + +#: plinth/modules/networks/forms.py:351 #, fuzzy #| msgid "General Configuration" msgid "Preferred router configuration" msgstr "સામાન્ય ગોઠવણી" -#: plinth/modules/networks/forms.py:318 +#: plinth/modules/networks/forms.py:356 #, python-brace-format msgid "" -"Use DMZ feature to forward all trafficMost routers " -"provide a configuration setting called DMZ. This will allow the router to " -"forward all incoming traffic from the internet to a single IP address such " -"as the {box_name}'s address. First remember to configure a static local IP " -"address for your {box_name} in your router's configuration.
" +"Use DMZ feature to forward all traffic (recommended)Most routers provide a configuration setting called DMZ. This will allow " +"the router to forward all incoming traffic from the Internet to a single IP " +"address such as the {box_name}'s IP address. First remember to configure a " +"static local IP address for your {box_name} in your router's configuration." +"p>" msgstr "" -#: plinth/modules/networks/forms.py:332 +#: plinth/modules/networks/forms.py:368 #, python-brace-format msgid "" -"Forward Specific Traffic as needed by each application
You may alternatively choose to forward only specific traffic to your " "{box_name}. This is ideal if you have other servers like {box_name} in your " "network or if your router does not support DMZ feature. All applications " @@ -3260,278 +3325,284 @@ msgid "" "to be forwarded for that application to work.
" msgstr "" -#: plinth/modules/networks/forms.py:349 +#: plinth/modules/networks/forms.py:382 msgid "" -"Router is currently unconfiguredChoose this if you " +"Router is currently unconfigured
Choose this if you " "have not configured or are unable to configure the router currently and wish " "to be reminded later. Some of the other configuration steps may fail.
" msgstr "" -#: plinth/modules/networks/networks.py:43 +#: plinth/modules/networks/networks.py:32 msgid "Network Connections" msgstr "" -#: plinth/modules/networks/networks.py:59 +#: plinth/modules/networks/networks.py:46 msgid "Cannot show connection: Connection not found." msgstr "" -#: plinth/modules/networks/networks.py:94 +#: plinth/modules/networks/networks.py:81 msgid "Connection Information" msgstr "" -#: plinth/modules/networks/networks.py:108 +#: plinth/modules/networks/networks.py:95 msgid "Cannot edit connection: Connection not found." msgstr "" -#: plinth/modules/networks/networks.py:114 +#: plinth/modules/networks/networks.py:101 msgid "This type of connection is not yet understood." msgstr "" -#: plinth/modules/networks/networks.py:136 -#: plinth/modules/networks/networks.py:220 -#: plinth/modules/networks/templates/connections_edit.html:35 +#: plinth/modules/networks/networks.py:123 +#: plinth/modules/networks/networks.py:207 +#: plinth/modules/networks/templates/connections_edit.html:20 msgid "Edit Connection" msgstr "" -#: plinth/modules/networks/networks.py:232 +#: plinth/modules/networks/networks.py:219 #, python-brace-format msgid "Activated connection {name}." msgstr "" -#: plinth/modules/networks/networks.py:236 +#: plinth/modules/networks/networks.py:223 msgid "Failed to activate connection: Connection not found." msgstr "" -#: plinth/modules/networks/networks.py:242 +#: plinth/modules/networks/networks.py:229 #, python-brace-format msgid "Failed to activate connection {name}: No suitable device is available." msgstr "" -#: plinth/modules/networks/networks.py:255 +#: plinth/modules/networks/networks.py:242 #, python-brace-format msgid "Deactivated connection {name}." msgstr "" -#: plinth/modules/networks/networks.py:259 +#: plinth/modules/networks/networks.py:246 msgid "Failed to de-activate connection: Connection not found." msgstr "" -#: plinth/modules/networks/networks.py:269 -#: plinth/modules/networks/templates/connections_list.html:62 -#: plinth/modules/networks/templates/connections_list.html:64 +#: plinth/modules/networks/networks.py:256 +#: plinth/modules/networks/templates/connections_list.html:12 +#: plinth/modules/networks/templates/connections_list.html:14 msgid "Nearby Wi-Fi Networks" msgstr "" -#: plinth/modules/networks/networks.py:293 -#: plinth/modules/networks/templates/connections_list.html:67 -#: plinth/modules/networks/templates/connections_list.html:69 -#: plinth/modules/wireguard/templates/wireguard_add_server.html:34 +#: plinth/modules/networks/networks.py:280 +#: plinth/modules/networks/templates/connections_list.html:17 +#: plinth/modules/networks/templates/connections_list.html:19 +#: plinth/modules/wireguard/templates/wireguard_add_server.html:19 msgid "Add Connection" msgstr "" -#: plinth/modules/networks/networks.py:311 +#: plinth/modules/networks/networks.py:298 msgid "Adding New Generic Connection" msgstr "" -#: plinth/modules/networks/networks.py:329 +#: plinth/modules/networks/networks.py:316 msgid "Adding New Ethernet Connection" msgstr "" -#: plinth/modules/networks/networks.py:347 +#: plinth/modules/networks/networks.py:334 msgid "Adding New PPPoE Connection" msgstr "" -#: plinth/modules/networks/networks.py:382 +#: plinth/modules/networks/networks.py:369 msgid "Adding New Wi-Fi Connection" msgstr "" -#: plinth/modules/networks/networks.py:397 +#: plinth/modules/networks/networks.py:384 #, python-brace-format msgid "Connection {name} deleted." msgstr "" -#: plinth/modules/networks/networks.py:401 -#: plinth/modules/networks/networks.py:411 +#: plinth/modules/networks/networks.py:388 +#: plinth/modules/networks/networks.py:398 msgid "Failed to delete connection: Connection not found." msgstr "" -#: plinth/modules/networks/networks.py:416 -#: plinth/modules/networks/templates/connections_delete.html:26 +#: plinth/modules/networks/networks.py:403 +#: plinth/modules/networks/templates/connections_delete.html:11 msgid "Delete Connection" msgstr "" -#: plinth/modules/networks/networks.py:442 +#: plinth/modules/networks/networks.py:428 #, fuzzy #| msgid "DNS server configuration updated" msgid "Router configuration type saved." msgstr "DNS સર્વર ગોઠવણી સુધરી" -#: plinth/modules/networks/templates/connection_show.html:43 +#: plinth/modules/networks/networks.py:474 +#, fuzzy +#| msgid "DNS server configuration updated" +msgid "Internet connection type saved." +msgstr "DNS સર્વર ગોઠવણી સુધરી" + +#: plinth/modules/networks/templates/connection_show.html:28 msgid "Edit connection" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:43 -#: plinth/modules/wireguard/templates/wireguard_show_client.html:83 -#: plinth/modules/wireguard/templates/wireguard_show_server.html:84 -#: plinth/templates/base.html:167 plinth/templates/base.html:168 +#: plinth/modules/networks/templates/connection_show.html:28 +#: plinth/modules/wireguard/templates/wireguard_show_client.html:68 +#: plinth/modules/wireguard/templates/wireguard_show_server.html:69 +#: plinth/templates/base.html:152 plinth/templates/base.html:153 msgid "Edit" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:50 -#: plinth/modules/networks/templates/connections_list.html:90 +#: plinth/modules/networks/templates/connection_show.html:35 +#: plinth/modules/networks/templates/connections_list.html:40 msgid "Deactivate" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:57 -#: plinth/modules/networks/templates/connections_list.html:98 +#: plinth/modules/networks/templates/connection_show.html:42 +#: plinth/modules/networks/templates/connections_list.html:48 msgid "Activate" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:63 +#: plinth/modules/networks/templates/connection_show.html:48 msgid "Delete connection" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:66 -#: plinth/modules/networks/templates/connections_diagram.html:73 -#: plinth/modules/networks/templates/connections_diagram.html:76 -#: plinth/modules/networks/templates/connections_diagram.html:105 -#: plinth/modules/networks/templates/connections_diagram.html:127 +#: plinth/modules/networks/templates/connection_show.html:51 +#: plinth/modules/networks/templates/connections_diagram.html:58 +#: plinth/modules/networks/templates/connections_diagram.html:61 +#: plinth/modules/networks/templates/connections_diagram.html:90 +#: plinth/modules/networks/templates/connections_diagram.html:112 msgid "Connection" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:71 +#: plinth/modules/networks/templates/connection_show.html:56 msgid "Primary connection" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:73 -#: plinth/modules/networks/templates/connection_show.html:217 -#: plinth/modules/networks/templates/connection_show.html:256 +#: plinth/modules/networks/templates/connection_show.html:58 +#: plinth/modules/networks/templates/connection_show.html:202 +#: plinth/modules/networks/templates/connection_show.html:241 msgid "yes" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:84 -#: plinth/modules/storage/templates/storage.html:40 +#: plinth/modules/networks/templates/connection_show.html:69 +#: plinth/modules/storage/templates/storage.html:25 msgid "Device" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:88 +#: plinth/modules/networks/templates/connection_show.html:73 msgid "State" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:93 +#: plinth/modules/networks/templates/connection_show.html:78 msgid "State reason" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:102 +#: plinth/modules/networks/templates/connection_show.html:87 msgid "MAC address" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:106 +#: plinth/modules/networks/templates/connection_show.html:91 msgid "Interface" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:110 -#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:33 -#: plinth/modules/snapshot/templates/snapshot_manage.html:45 -#: plinth/modules/snapshot/templates/snapshot_rollback.html:41 +#: plinth/modules/networks/templates/connection_show.html:95 +#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:18 +#: plinth/modules/snapshot/templates/snapshot_manage.html:30 +#: plinth/modules/snapshot/templates/snapshot_rollback.html:26 msgid "Description" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:116 +#: plinth/modules/networks/templates/connection_show.html:101 msgid "Physical Link" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:121 +#: plinth/modules/networks/templates/connection_show.html:106 msgid "Link state" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:125 +#: plinth/modules/networks/templates/connection_show.html:110 msgid "cable is connected" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:128 +#: plinth/modules/networks/templates/connection_show.html:113 msgid "please check cable" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:133 -#: plinth/modules/networks/templates/connection_show.html:149 +#: plinth/modules/networks/templates/connection_show.html:118 +#: plinth/modules/networks/templates/connection_show.html:134 msgid "Speed" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:135 +#: plinth/modules/networks/templates/connection_show.html:120 #, python-format msgid "%(ethernet_speed)s Mbit/s" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:151 +#: plinth/modules/networks/templates/connection_show.html:136 #, python-format msgid "%(wireless_bitrate)s Mbit/s" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:163 +#: plinth/modules/networks/templates/connection_show.html:148 msgid "Signal strength" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:181 +#: plinth/modules/networks/templates/connection_show.html:166 msgid "IPv4" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:186 -#: plinth/modules/networks/templates/connection_show.html:227 -#: plinth/modules/shadowsocks/forms.py:64 +#: plinth/modules/networks/templates/connection_show.html:171 +#: plinth/modules/networks/templates/connection_show.html:212 +#: plinth/modules/shadowsocks/forms.py:49 msgid "Method" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:193 -#: plinth/modules/networks/templates/connection_show.html:234 +#: plinth/modules/networks/templates/connection_show.html:178 +#: plinth/modules/networks/templates/connection_show.html:219 msgid "IP address" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:209 -#: plinth/modules/networks/templates/connection_show.html:248 +#: plinth/modules/networks/templates/connection_show.html:194 +#: plinth/modules/networks/templates/connection_show.html:233 msgid "DNS server" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:216 -#: plinth/modules/networks/templates/connection_show.html:255 -#: plinth/modules/storage/forms.py:156 +#: plinth/modules/networks/templates/connection_show.html:201 +#: plinth/modules/networks/templates/connection_show.html:240 +#: plinth/modules/storage/forms.py:141 msgid "Default" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:222 +#: plinth/modules/networks/templates/connection_show.html:207 msgid "IPv6" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:263 +#: plinth/modules/networks/templates/connection_show.html:248 msgid "This connection is not active." msgstr "" -#: plinth/modules/networks/templates/connection_show.html:266 -#: plinth/modules/security/__init__.py:38 plinth/modules/security/views.py:47 +#: plinth/modules/networks/templates/connection_show.html:251 +#: plinth/modules/security/__init__.py:45 msgid "Security" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:271 -#: plinth/modules/networks/templates/connection_show.html:291 -#: plinth/modules/networks/templates/connection_show.html:310 +#: plinth/modules/networks/templates/connection_show.html:256 +#: plinth/modules/networks/templates/connection_show.html:276 +#: plinth/modules/networks/templates/connection_show.html:295 msgid "Firewall zone" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:280 +#: plinth/modules/networks/templates/connection_show.html:265 msgid "" "This interface should be connected to a local network/machine. If you " "connect this interface to a public network, services meant to be available " "only internally will become available externally. This is a security risk." msgstr "" -#: plinth/modules/networks/templates/connection_show.html:300 +#: plinth/modules/networks/templates/connection_show.html:285 msgid "" "This interface should receive your Internet connection. If you connect it to " "a local network/machine, many services meant to available only internally " "will not be available." msgstr "" -#: plinth/modules/networks/templates/connection_show.html:319 +#: plinth/modules/networks/templates/connection_show.html:304 #, python-format msgid "" "This interface is not maintained by %(box_name)s. Its security status is " @@ -3540,113 +3611,136 @@ msgid "" "connection and re-configure it." msgstr "" -#: plinth/modules/networks/templates/connections_create.html:34 +#: plinth/modules/networks/templates/connections_create.html:19 msgid "Create Connection" msgstr "" -#: plinth/modules/networks/templates/connections_delete.html:29 +#: plinth/modules/networks/templates/connections_delete.html:14 #, python-format msgid "Delete connection %(name)s permanently?" msgstr "" -#: plinth/modules/networks/templates/connections_diagram.html:65 +#: plinth/modules/networks/templates/connections_diagram.html:50 msgid "Internet" msgstr "" -#: plinth/modules/networks/templates/connections_diagram.html:70 -#: plinth/modules/networks/templates/connections_diagram.html:102 +#: plinth/modules/networks/templates/connections_diagram.html:55 +#: plinth/modules/networks/templates/connections_diagram.html:87 msgid "Spacing" msgstr "" -#: plinth/modules/networks/templates/connections_diagram.html:83 -#: plinth/modules/networks/templates/connections_diagram.html:113 -#: plinth/network.py:40 +#: plinth/modules/networks/templates/connections_diagram.html:68 +#: plinth/modules/networks/templates/connections_diagram.html:98 +#: plinth/network.py:25 msgid "Ethernet" msgstr "" -#: plinth/modules/networks/templates/connections_diagram.html:86 -#: plinth/modules/networks/templates/connections_diagram.html:116 -#: plinth/network.py:41 +#: plinth/modules/networks/templates/connections_diagram.html:71 +#: plinth/modules/networks/templates/connections_diagram.html:101 +#: plinth/network.py:26 msgid "Wi-Fi" msgstr "" -#: plinth/modules/networks/templates/connections_diagram.html:89 +#: plinth/modules/networks/templates/connections_diagram.html:74 #, python-format msgid "Show connection %(connection.name)s" msgstr "" -#: plinth/modules/networks/templates/connections_diagram.html:119 +#: plinth/modules/networks/templates/connections_diagram.html:104 #, python-format msgid "Show connection %(name)s" msgstr "" -#: plinth/modules/networks/templates/connections_diagram.html:131 +#: plinth/modules/networks/templates/connections_diagram.html:116 msgid "Computer" msgstr "" -#: plinth/modules/networks/templates/connections_list.html:58 +#: plinth/modules/networks/templates/connections_list.html:8 #, fuzzy #| msgid "Conversations" msgid "Connections" msgstr "વાતચીત" -#: plinth/modules/networks/templates/connections_list.html:79 +#: plinth/modules/networks/templates/connections_list.html:29 #, python-format msgid "Delete connection %(name)s" msgstr "" -#: plinth/modules/networks/templates/connections_list.html:104 +#: plinth/modules/networks/templates/connections_list.html:54 msgid "Active" msgstr "" -#: plinth/modules/networks/templates/connections_list.html:107 +#: plinth/modules/networks/templates/connections_list.html:57 msgid "Inactive" msgstr "" -#: plinth/modules/networks/templates/connections_list.html:124 -#, python-format -msgid "%(box_name)s Internet Connectivity" +#: plinth/modules/networks/templates/connections_type_select.html:19 +msgid "Create..." msgstr "" -#: plinth/modules/networks/templates/connections_list.html:129 -#, python-format +#: plinth/modules/networks/templates/internet_connectivity_content.html:10 +msgid "What Type Of Internet Connection Do You Have?" +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_content.html:16 msgid "" -"The following best describes how your %(box_name)s is connected in your " -"network. This information is used only to suggest necessary configuration " -"actions." +"Select an option that best describes the type of Internet connection. This " +"information is used only to guide you with further setup." msgstr "" -#: plinth/modules/networks/templates/connections_list.html:137 -#, python-format +#: plinth/modules/networks/templates/internet_connectivity_firstboot.html:18 +#: plinth/modules/networks/templates/router_configuration_firstboot.html:18 +msgid "Skip this step" +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_firstboot.html:19 +#: plinth/modules/networks/templates/router_configuration_firstboot.html:19 +msgid "Next" +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:9 +msgid "Your Internet Connection Type" +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:14 msgid "" -"Your %(box_name)s gets its internet from your Router via WiFi or Ethernet " -"cable. This is a typical home setup." +"The following best describes the type of Internet connection provided by " +"your ISP. This information is only used to suggest you necessary " +"configuration actions." msgstr "" -#: plinth/modules/networks/templates/connections_list.html:145 -#: plinth/modules/networks/templates/connections_list.html:147 +#: plinth/modules/networks/templates/internet_connectivity_main.html:23 +msgid "My ISP provides a public IP address that does not change over time." +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:27 +msgid "My ISP provides a public IP address that may change over time." +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:31 +msgid "My ISP does not provide a public IP address." +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:37 +#: plinth/modules/networks/templates/router_configuration_main.html:29 #, fuzzy #| msgid "Update URL" msgid "Update..." msgstr "URL અપડેટ કરો" -#: plinth/modules/networks/templates/connections_type_select.html:34 -msgid "Create..." -msgstr "" - -#: plinth/modules/networks/templates/router_configuration_content.html:25 +#: plinth/modules/networks/templates/router_configuration_content.html:10 #, python-format msgid "Setup %(box_name)s Behind a Router" msgstr "" -#: plinth/modules/networks/templates/router_configuration_content.html:31 +#: plinth/modules/networks/templates/router_configuration_content.html:16 #, python-format msgid "" "Your %(box_name)s gets its internet connection from your router via Wi-Fi or " "Ethernet cable. This is a typical home setup." msgstr "" -#: plinth/modules/networks/templates/router_configuration_content.html:38 +#: plinth/modules/networks/templates/router_configuration_content.html:23 #, python-format msgid "" "With this setup, any device on the internet trying to reach your " @@ -3655,24 +3749,24 @@ msgid "" "the services." msgstr "" -#: plinth/modules/networks/templates/router_configuration_content.html:47 +#: plinth/modules/networks/templates/router_configuration_content.html:32 msgid "" "If you don't have control over your router, choose not to configure it. To " -"see options, to overcome this limitation, choose 'no public address' option " +"see options to overcome this limitation, choose 'no public address' option " "in Internet connection type selection." msgstr "" -#: plinth/modules/networks/templates/router_configuration_content.html:54 +#: plinth/modules/networks/templates/router_configuration_content.html:39 msgid "Choose How You Wish to Configure Your Router" msgstr "" -#: plinth/modules/networks/templates/router_configuration_content.html:57 +#: plinth/modules/networks/templates/router_configuration_content.html:42 msgid "" "You will need to login to your router's administration console provided by " "the router. This may look like one of the following:" msgstr "" -#: plinth/modules/networks/templates/router_configuration_content.html:69 +#: plinth/modules/networks/templates/router_configuration_content.html:54 msgid "" "The username and password is configured by you when you first setup the " "router. For many routers, this information is printed at the back of the " @@ -3682,24 +3776,27 @@ msgid "" "full instructions on how to perform this task." msgstr "" -#: plinth/modules/networks/templates/router_configuration_firstboot.html:33 -msgid "skip this step" +#: plinth/modules/networks/templates/router_configuration_main.html:9 +#, python-format +msgid "%(box_name)s Internet Connectivity" msgstr "" -#: plinth/modules/networks/templates/router_configuration_firstboot.html:35 -msgid "Next" +#: plinth/modules/networks/templates/router_configuration_main.html:15 +#, python-format +msgid "" +"The following best describes how your %(box_name)s is connected in your " +"network. This information is used only to suggest necessary configuration " +"actions." msgstr "" -#: plinth/modules/openvpn/__init__.py:39 plinth/modules/openvpn/manifest.py:33 -msgid "OpenVPN" +#: plinth/modules/networks/templates/router_configuration_main.html:23 +#, python-format +msgid "" +"Your %(box_name)s gets its Internet from your Router via Wi-Fi or Ethernet " +"cable. This is a typical home setup." msgstr "" -#: plinth/modules/openvpn/__init__.py:43 -#: plinth/modules/wireguard/__init__.py:40 -msgid "Virtual Private Network" -msgstr "" - -#: plinth/modules/openvpn/__init__.py:47 +#: plinth/modules/openvpn/__init__.py:26 #, python-brace-format msgid "" "Virtual Private Network (VPN) is a technique for securely connecting two " @@ -3710,21 +3807,30 @@ msgid "" "security and anonymity." msgstr "" -#: plinth/modules/openvpn/__init__.py:79 +#: plinth/modules/openvpn/__init__.py:49 plinth/modules/openvpn/manifest.py:18 +msgid "OpenVPN" +msgstr "" + +#: plinth/modules/openvpn/__init__.py:50 +#: plinth/modules/wireguard/__init__.py:53 +msgid "Virtual Private Network" +msgstr "" + +#: plinth/modules/openvpn/__init__.py:61 #, python-brace-format msgid "" "Download Profile" msgstr "" -#: plinth/modules/openvpn/forms.py:27 +#: plinth/modules/openvpn/forms.py:12 msgid "Enable OpenVPN server" msgstr "" -#: plinth/modules/openvpn/manifest.py:63 -msgid "TunnelBlick" +#: plinth/modules/openvpn/manifest.py:48 +msgid "Tunnelblick" msgstr "" -#: plinth/modules/openvpn/templates/openvpn.html:42 +#: plinth/modules/openvpn/templates/openvpn.html:27 #, python-format msgid "" "OpenVPN has not yet been setup. Performing a secure setup takes a very long " @@ -3732,15 +3838,15 @@ msgid "" "If the setup is interrupted, you may start it again." msgstr "" -#: plinth/modules/openvpn/templates/openvpn.html:55 +#: plinth/modules/openvpn/templates/openvpn.html:40 msgid "Start setup" msgstr "" -#: plinth/modules/openvpn/templates/openvpn.html:64 +#: plinth/modules/openvpn/templates/openvpn.html:49 msgid "OpenVPN setup is running" msgstr "" -#: plinth/modules/openvpn/templates/openvpn.html:68 +#: plinth/modules/openvpn/templates/openvpn.html:53 #, python-format msgid "" "To perform a secure setup, this process takes a very long time. Depending " @@ -3748,11 +3854,11 @@ msgid "" "interrupted, you may start it again." msgstr "" -#: plinth/modules/openvpn/templates/openvpn.html:87 +#: plinth/modules/openvpn/templates/openvpn.html:72 msgid "Profile" msgstr "" -#: plinth/modules/openvpn/templates/openvpn.html:90 +#: plinth/modules/openvpn/templates/openvpn.html:75 #, python-format msgid "" "To connect to %(box_name)s's VPN, you need to download a profile and feed it " @@ -3761,32 +3867,24 @@ msgid "" "clients and instructions on how to configure them." msgstr "" -#: plinth/modules/openvpn/templates/openvpn.html:100 +#: plinth/modules/openvpn/templates/openvpn.html:85 #, python-format msgid "Profile is specific to each user of %(box_name)s. Keep it a secret." msgstr "" -#: plinth/modules/openvpn/templates/openvpn.html:111 +#: plinth/modules/openvpn/templates/openvpn.html:96 msgid "Download my profile" msgstr "" -#: plinth/modules/openvpn/views.py:133 +#: plinth/modules/openvpn/views.py:114 msgid "Setup completed." msgstr "" -#: plinth/modules/openvpn/views.py:135 +#: plinth/modules/openvpn/views.py:116 msgid "Setup failed." msgstr "" -#: plinth/modules/pagekite/__init__.py:39 -msgid "PageKite" -msgstr "" - -#: plinth/modules/pagekite/__init__.py:41 -msgid "Public Visibility" -msgstr "" - -#: plinth/modules/pagekite/__init__.py:45 +#: plinth/modules/pagekite/__init__.py:26 #, python-brace-format msgid "" "PageKite is a system for exposing {box_name} services when you don't have a " @@ -3795,33 +3893,33 @@ msgid "" "following situations:" msgstr "" -#: plinth/modules/pagekite/__init__.py:50 +#: plinth/modules/pagekite/__init__.py:31 #, python-brace-format msgid "{box_name} is behind a restricted firewall." msgstr "" -#: plinth/modules/pagekite/__init__.py:53 +#: plinth/modules/pagekite/__init__.py:34 #, python-brace-format msgid "{box_name} is connected to a (wireless) router which you don't control." msgstr "" -#: plinth/modules/pagekite/__init__.py:55 +#: plinth/modules/pagekite/__init__.py:36 msgid "" "Your ISP does not provide you an external IP address and instead provides " "Internet connection through NAT." msgstr "" -#: plinth/modules/pagekite/__init__.py:57 +#: plinth/modules/pagekite/__init__.py:38 msgid "" "Your ISP does not provide you a static IP address and your IP address " "changes every time you connect to Internet." msgstr "" -#: plinth/modules/pagekite/__init__.py:59 +#: plinth/modules/pagekite/__init__.py:40 msgid "Your ISP limits incoming connections." msgstr "" -#: plinth/modules/pagekite/__init__.py:61 +#: plinth/modules/pagekite/__init__.py:42 #, python-brace-format msgid "" "PageKite works around NAT, firewalls and IP address limitations by using a " @@ -3830,138 +3928,146 @@ msgid "" "the future it might be possible to use your buddy's {box_name} for this." msgstr "" -#: plinth/modules/pagekite/__init__.py:87 +#: plinth/modules/pagekite/__init__.py:62 +msgid "PageKite" +msgstr "" + +#: plinth/modules/pagekite/__init__.py:64 +msgid "Public Visibility" +msgstr "" + +#: plinth/modules/pagekite/__init__.py:74 msgid "PageKite Domain" msgstr "" -#: plinth/modules/pagekite/forms.py:66 +#: plinth/modules/pagekite/forms.py:51 msgid "Server domain" msgstr "" -#: plinth/modules/pagekite/forms.py:68 +#: plinth/modules/pagekite/forms.py:53 msgid "" "Select your pagekite server. Set \"pagekite.net\" to use the default " "pagekite.net server." msgstr "" -#: plinth/modules/pagekite/forms.py:71 plinth/modules/shadowsocks/forms.py:55 +#: plinth/modules/pagekite/forms.py:56 plinth/modules/shadowsocks/forms.py:40 msgid "Server port" msgstr "" -#: plinth/modules/pagekite/forms.py:72 +#: plinth/modules/pagekite/forms.py:57 msgid "Port of your pagekite server (default: 80)" msgstr "" -#: plinth/modules/pagekite/forms.py:74 +#: plinth/modules/pagekite/forms.py:59 msgid "Kite name" msgstr "" -#: plinth/modules/pagekite/forms.py:75 +#: plinth/modules/pagekite/forms.py:60 msgid "Example: mybox.pagekite.me" msgstr "" -#: plinth/modules/pagekite/forms.py:77 +#: plinth/modules/pagekite/forms.py:62 msgid "Invalid kite name" msgstr "" -#: plinth/modules/pagekite/forms.py:81 +#: plinth/modules/pagekite/forms.py:66 msgid "Kite secret" msgstr "" -#: plinth/modules/pagekite/forms.py:82 +#: plinth/modules/pagekite/forms.py:67 msgid "" "A secret associated with the kite or the default secret for your account if " "no secret is set on the kite." msgstr "" -#: plinth/modules/pagekite/forms.py:98 +#: plinth/modules/pagekite/forms.py:83 msgid "Kite details set" msgstr "" -#: plinth/modules/pagekite/forms.py:105 +#: plinth/modules/pagekite/forms.py:90 msgid "Pagekite server set" msgstr "" -#: plinth/modules/pagekite/forms.py:129 +#: plinth/modules/pagekite/forms.py:114 msgid "PageKite enabled" msgstr "" -#: plinth/modules/pagekite/forms.py:132 +#: plinth/modules/pagekite/forms.py:117 msgid "PageKite disabled" msgstr "" -#: plinth/modules/pagekite/forms.py:148 +#: plinth/modules/pagekite/forms.py:133 msgid "protocol" msgstr "" -#: plinth/modules/pagekite/forms.py:151 +#: plinth/modules/pagekite/forms.py:136 msgid "external (frontend) port" msgstr "" -#: plinth/modules/pagekite/forms.py:154 +#: plinth/modules/pagekite/forms.py:139 msgid "internal (freedombox) port" msgstr "" -#: plinth/modules/pagekite/forms.py:155 +#: plinth/modules/pagekite/forms.py:140 msgid "Enable Subdomains" msgstr "" -#: plinth/modules/pagekite/forms.py:189 +#: plinth/modules/pagekite/forms.py:174 msgid "Deleted custom service" msgstr "" -#: plinth/modules/pagekite/forms.py:222 +#: plinth/modules/pagekite/forms.py:207 msgid "" "This service is available as a standard service. Please use the \"Standard " "Services\" page to enable it." msgstr "" -#: plinth/modules/pagekite/forms.py:231 +#: plinth/modules/pagekite/forms.py:216 msgid "Added custom service" msgstr "" -#: plinth/modules/pagekite/forms.py:234 +#: plinth/modules/pagekite/forms.py:219 msgid "This service already exists" msgstr "" -#: plinth/modules/pagekite/templates/pagekite_configure.html:47 +#: plinth/modules/pagekite/templates/pagekite_configure.html:32 msgid "Custom Services" msgstr "" -#: plinth/modules/pagekite/templates/pagekite_configure.html:50 -#: plinth/modules/pagekite/templates/pagekite_configure.html:52 +#: plinth/modules/pagekite/templates/pagekite_configure.html:35 +#: plinth/modules/pagekite/templates/pagekite_configure.html:37 msgid "Add Custom Service" msgstr "" -#: plinth/modules/pagekite/templates/pagekite_configure.html:57 +#: plinth/modules/pagekite/templates/pagekite_configure.html:42 msgid "Existing custom services" msgstr "" -#: plinth/modules/pagekite/templates/pagekite_configure.html:71 +#: plinth/modules/pagekite/templates/pagekite_configure.html:56 #, python-format msgid "connected to %(backend_host)s:%(backend_port)s" msgstr "" -#: plinth/modules/pagekite/templates/pagekite_configure.html:83 +#: plinth/modules/pagekite/templates/pagekite_configure.html:68 msgid "Delete this service" msgstr "" -#: plinth/modules/pagekite/templates/pagekite_custom_services.html:30 +#: plinth/modules/pagekite/templates/pagekite_custom_services.html:15 msgid "Add custom PageKite service" msgstr "" -#: plinth/modules/pagekite/templates/pagekite_custom_services.html:32 +#: plinth/modules/pagekite/templates/pagekite_custom_services.html:17 msgid "" "Warning:imaps://imap.gmail.com. "
@@ -4273,17 +4369,22 @@ msgid ""
"a>)."
msgstr ""
-#: plinth/modules/samba/__init__.py:46
-msgid "Samba"
+#: plinth/modules/roundcube/__init__.py:54
+#: plinth/modules/roundcube/manifest.py:9
+msgid "Roundcube"
msgstr ""
-#: plinth/modules/samba/__init__.py:53
+#: plinth/modules/roundcube/__init__.py:55
+msgid "Email Client"
+msgstr ""
+
+#: plinth/modules/samba/__init__.py:32
msgid ""
"Samba allows to share files and folders between FreedomBox and other "
"computers in your local network."
msgstr ""
-#: plinth/modules/samba/__init__.py:56
+#: plinth/modules/samba/__init__.py:35
#, python-brace-format
msgid ""
"After installation, you can choose which disks to use for sharing. Enabled "
@@ -4292,53 +4393,57 @@ msgid ""
"There are three types of shares you can choose from: "
msgstr ""
-#: plinth/modules/samba/__init__.py:61
+#: plinth/modules/samba/__init__.py:40
msgid "Open share - accessible to everyone in your local network."
msgstr ""
-#: plinth/modules/samba/__init__.py:62
+#: plinth/modules/samba/__init__.py:41
msgid ""
"Group share - accessible only to FreedomBox users who are in the freedombox-"
"share group."
msgstr ""
-#: plinth/modules/samba/__init__.py:64
+#: plinth/modules/samba/__init__.py:43
msgid ""
"Home share - every user in the freedombox-share group can have their own "
"private space."
msgstr ""
-#: plinth/modules/samba/__init__.py:68
+#: plinth/modules/samba/__init__.py:47
msgid "Access to the private shares"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:39
-#: plinth/modules/samba/templates/samba.html:50
+#: plinth/modules/samba/__init__.py:61
+msgid "Samba"
+msgstr ""
+
+#: plinth/modules/samba/templates/samba.html:24
+#: plinth/modules/samba/templates/samba.html:35
msgid "Shares"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:41
+#: plinth/modules/samba/templates/samba.html:26
msgid ""
"Note: Only specially created directories will be shared on selected disks, "
"not the whole disk."
msgstr ""
-#: plinth/modules/samba/templates/samba.html:49
+#: plinth/modules/samba/templates/samba.html:34
#, fuzzy
#| msgid "Domain Name"
msgid "Disk Name"
msgstr "ક્ષેત્રનું નામ"
-#: plinth/modules/samba/templates/samba.html:51
-#: plinth/modules/storage/templates/storage.html:44
+#: plinth/modules/samba/templates/samba.html:36
+#: plinth/modules/storage/templates/storage.html:29
msgid "Used"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:72
+#: plinth/modules/samba/templates/samba.html:57
msgid "VFAT partitions are not supported"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:103
+#: plinth/modules/samba/templates/samba.html:88
#, python-format
msgid ""
"You can find additional information about disks on the users module page."
msgstr ""
-#: plinth/modules/samba/templates/samba.html:109
+#: plinth/modules/samba/templates/samba.html:94
msgid "Users who can currently access group and home shares"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:113
+#: plinth/modules/samba/templates/samba.html:98
msgid ""
"Users needing to re-enter their password on the password change page to "
"access group and home shares"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:118
+#: plinth/modules/samba/templates/samba.html:103
msgid "Unavailable Shares"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:120
+#: plinth/modules/samba/templates/samba.html:105
msgid ""
"Shares that are configured but the disk is not available. If the disk is "
"plugged back in, sharing will be automatically enabled."
msgstr ""
-#: plinth/modules/samba/templates/samba.html:128
+#: plinth/modules/samba/templates/samba.html:113
msgid "Share name"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:129
+#: plinth/modules/samba/templates/samba.html:114
msgid "Action"
msgstr ""
-#: plinth/modules/samba/views.py:61 plinth/modules/storage/forms.py:164
+#: plinth/modules/samba/views.py:43 plinth/modules/storage/forms.py:149
msgid "Open Share"
msgstr ""
-#: plinth/modules/samba/views.py:62 plinth/modules/storage/forms.py:162
+#: plinth/modules/samba/views.py:44 plinth/modules/storage/forms.py:147
msgid "Group Share"
msgstr ""
-#: plinth/modules/samba/views.py:63
+#: plinth/modules/samba/views.py:45
msgid "Home Share"
msgstr ""
-#: plinth/modules/samba/views.py:96
+#: plinth/modules/samba/views.py:78
msgid "Share enabled."
msgstr ""
-#: plinth/modules/samba/views.py:101
+#: plinth/modules/samba/views.py:83
#, fuzzy, python-brace-format
#| msgid "Error installing application: {error}"
msgid "Error enabling share: {error_message}"
msgstr "એપ્લીકેશન પ્રસ્થાપિત કરતાં ભૂલ થઇ છે: {error}"
-#: plinth/modules/samba/views.py:106
+#: plinth/modules/samba/views.py:88
#, fuzzy
#| msgid "Application disabled"
msgid "Share disabled."
msgstr "એપ્લિકેશન અક્ષમ છે"
-#: plinth/modules/samba/views.py:111
+#: plinth/modules/samba/views.py:93
#, fuzzy, python-brace-format
#| msgid "Error installing application: {error}"
msgid "Error disabling share: {error_message}"
msgstr "એપ્લીકેશન પ્રસ્થાપિત કરતાં ભૂલ થઇ છે: {error}"
-#: plinth/modules/searx/__init__.py:41 plinth/modules/searx/manifest.py:24
-msgid "Searx"
-msgstr ""
-
-#: plinth/modules/searx/__init__.py:45
-msgid "Web Search"
-msgstr ""
-
-#: plinth/modules/searx/__init__.py:48
+#: plinth/modules/searx/__init__.py:25
msgid ""
"Searx is a privacy-respecting Internet metasearch engine. It aggregrates and "
"displays results from multiple search engines."
msgstr ""
-#: plinth/modules/searx/__init__.py:50
+#: plinth/modules/searx/__init__.py:27
msgid ""
"Searx can be used to avoid tracking and profiling by search engines. It "
"stores no cookies by default."
msgstr ""
-#: plinth/modules/searx/__init__.py:54
+#: plinth/modules/searx/__init__.py:31
msgid "Search the web"
msgstr ""
-#: plinth/modules/searx/forms.py:30
+#: plinth/modules/searx/__init__.py:47 plinth/modules/searx/manifest.py:9
+msgid "Searx"
+msgstr ""
+
+#: plinth/modules/searx/__init__.py:48
+msgid "Web Search"
+msgstr ""
+
+#: plinth/modules/searx/forms.py:15
msgid "Safe Search"
msgstr ""
-#: plinth/modules/searx/forms.py:31
+#: plinth/modules/searx/forms.py:16
msgid "Select the default family filter to apply to your search results."
msgstr ""
-#: plinth/modules/searx/forms.py:32
+#: plinth/modules/searx/forms.py:17
msgid "None"
msgstr ""
-#: plinth/modules/searx/forms.py:32
+#: plinth/modules/searx/forms.py:17
msgid "Moderate"
msgstr ""
-#: plinth/modules/searx/forms.py:32
+#: plinth/modules/searx/forms.py:17
msgid "Strict"
msgstr ""
-#: plinth/modules/searx/forms.py:35
+#: plinth/modules/searx/forms.py:20
msgid "Allow Public Access"
msgstr ""
-#: plinth/modules/searx/forms.py:36
+#: plinth/modules/searx/forms.py:21
msgid "Allow this application to be used by anyone who can reach it."
msgstr ""
-#: plinth/modules/searx/views.py:59 plinth/modules/searx/views.py:70
-#: plinth/modules/tor/views.py:149 plinth/modules/tor/views.py:176
+#: plinth/modules/searx/views.py:39 plinth/modules/searx/views.py:50
+#: plinth/modules/tor/views.py:130 plinth/modules/tor/views.py:157
msgid "Configuration updated."
msgstr ""
-#: plinth/modules/security/forms.py:28
+#: plinth/modules/security/forms.py:13
msgid "Restrict console logins (recommended)"
msgstr ""
-#: plinth/modules/security/forms.py:29
+#: plinth/modules/security/forms.py:14
msgid ""
"When this option is enabled, only users in the \"admin\" group will be able "
"to log in to console or via SSH. Console users may be able to access some "
"services without further authorization."
msgstr ""
-#: plinth/modules/security/forms.py:34
+#: plinth/modules/security/forms.py:19
msgid "Fail2Ban (recommended)"
msgstr ""
-#: plinth/modules/security/forms.py:35
+#: plinth/modules/security/forms.py:20
msgid ""
"When this option is enabled, Fail2Ban will limit brute force break-in "
"attempts to the SSH server and other enabled password protected internet-"
"services."
msgstr ""
-#: plinth/modules/security/templates/security.html:26
-#: plinth/modules/security/templates/security.html:28
+#: plinth/modules/security/templates/security.html:11
+#: plinth/modules/security/templates/security.html:13
msgid "Show security report"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:25
-#: plinth/modules/security/views.py:87
+#: plinth/modules/security/templates/security_report.html:10
+#: plinth/modules/security/views.py:71
msgid "Security Report"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:27
+#: plinth/modules/security/templates/security_report.html:12
#, python-format
msgid ""
"The installed version of FreedomBox has %(count)s reported security "
"vulnerabilities."
msgstr ""
-#: plinth/modules/security/templates/security_report.html:33
+#: plinth/modules/security/templates/security_report.html:18
msgid ""
"The following table lists the current reported number, and historical count, "
"of security vulnerabilities for each installed app."
msgstr ""
-#: plinth/modules/security/templates/security_report.html:39
+#: plinth/modules/security/templates/security_report.html:24
msgid ""
"For apps that provide services, the \"Sandboxed\" column shows whether "
"sandboxing features are in use. Sandboxing mitigates the impact of a "
"potentially compromised app to the rest of the system."
msgstr ""
-#: plinth/modules/security/templates/security_report.html:46
+#: plinth/modules/security/templates/security_report.html:31
msgid ""
"\"Sandbox Coverage\" is a score of how effectively the service is isolated "
"from the rest of the system. It is only displayed while the service is "
"running."
msgstr ""
-#: plinth/modules/security/templates/security_report.html:55
+#: plinth/modules/security/templates/security_report.html:40
msgid "App Name"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:56
+#: plinth/modules/security/templates/security_report.html:41
msgid "Current Vulnerabilities"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:57
+#: plinth/modules/security/templates/security_report.html:42
msgid "Past Vulnerabilities"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:58
+#: plinth/modules/security/templates/security_report.html:43
msgid "Sandboxed"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:59
+#: plinth/modules/security/templates/security_report.html:44
msgid "Sandbox Coverage"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:70
+#: plinth/modules/security/templates/security_report.html:55
msgid "N/A"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:72
+#: plinth/modules/security/templates/security_report.html:57
msgid "Yes"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:74
+#: plinth/modules/security/templates/security_report.html:59
msgid "No"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:81
+#: plinth/modules/security/templates/security_report.html:66
msgid "Not running"
msgstr ""
-#: plinth/modules/security/views.py:69
+#: plinth/modules/security/views.py:53
#, python-brace-format
msgid "Error setting restricted access: {exception}"
msgstr ""
-#: plinth/modules/security/views.py:72
+#: plinth/modules/security/views.py:56
msgid "Updated security configuration"
msgstr ""
-#: plinth/modules/shaarli/__init__.py:34 plinth/modules/shaarli/manifest.py:23
-msgid "Shaarli"
-msgstr ""
-
-#: plinth/modules/shaarli/__init__.py:36
-msgid "Bookmarks"
-msgstr ""
-
-#: plinth/modules/shaarli/__init__.py:39
+#: plinth/modules/shaarli/__init__.py:20
msgid "Shaarli allows you to save and share bookmarks."
msgstr ""
-#: plinth/modules/shaarli/__init__.py:40
+#: plinth/modules/shaarli/__init__.py:21
msgid ""
"When enabled, Shaarli will be available from /shaarli path on the web server. Note that Shaarli "
@@ -4589,22 +4686,22 @@ msgid ""
"initial visit."
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:35
-msgid "Shadowsocks"
+#: plinth/modules/shaarli/__init__.py:39 plinth/modules/shaarli/manifest.py:8
+msgid "Shaarli"
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:39
-msgid "Socks5 Proxy"
+#: plinth/modules/shaarli/__init__.py:40
+msgid "Bookmarks"
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:46
+#: plinth/modules/shadowsocks/__init__.py:25
msgid ""
"Shadowsocks is a lightweight and secure SOCKS5 proxy, designed to protect "
"your Internet traffic. It can be used to bypass Internet filtering and "
"censorship."
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:50
+#: plinth/modules/shadowsocks/__init__.py:29
#, python-brace-format
msgid ""
"Your {box_name} can run a Shadowsocks client, that can connect to a "
@@ -4613,149 +4710,153 @@ msgid ""
"the Shadowsocks server."
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:55
+#: plinth/modules/shadowsocks/__init__.py:34
msgid ""
"To use Shadowsocks after setup, set the SOCKS5 proxy URL in your device, "
"browser or application to http://freedombox_address:1080/"
msgstr ""
-#: plinth/modules/shadowsocks/forms.py:28
-#: plinth/modules/shadowsocks/forms.py:29
+#: plinth/modules/shadowsocks/__init__.py:50
+msgid "Shadowsocks"
+msgstr ""
+
+#: plinth/modules/shadowsocks/__init__.py:52
+msgid "Socks5 Proxy"
+msgstr ""
+
+#: plinth/modules/shadowsocks/forms.py:13
+#: plinth/modules/shadowsocks/forms.py:14
msgid "Recommended"
msgstr ""
-#: plinth/modules/shadowsocks/forms.py:52
+#: plinth/modules/shadowsocks/forms.py:37
msgid "Server"
msgstr ""
-#: plinth/modules/shadowsocks/forms.py:53
+#: plinth/modules/shadowsocks/forms.py:38
msgid "Server hostname or IP address"
msgstr ""
-#: plinth/modules/shadowsocks/forms.py:57
+#: plinth/modules/shadowsocks/forms.py:42
msgid "Server port number"
msgstr ""
-#: plinth/modules/shadowsocks/forms.py:60
+#: plinth/modules/shadowsocks/forms.py:45
msgid "Password used to encrypt data. Must match server password."
msgstr ""
-#: plinth/modules/shadowsocks/forms.py:65
+#: plinth/modules/shadowsocks/forms.py:50
msgid "Encryption method. Must match setting on server."
msgstr ""
-#: plinth/modules/sharing/__init__.py:34
-msgid "Sharing"
-msgstr ""
-
-#: plinth/modules/sharing/__init__.py:38
+#: plinth/modules/sharing/__init__.py:21
#, python-brace-format
msgid ""
"Sharing allows you to share files and folders on your {box_name} over the "
"web with chosen groups of users."
msgstr ""
-#: plinth/modules/sharing/forms.py:33
+#: plinth/modules/sharing/__init__.py:38
+msgid "Sharing"
+msgstr ""
+
+#: plinth/modules/sharing/forms.py:18
msgid "Name of the share"
msgstr ""
-#: plinth/modules/sharing/forms.py:35
+#: plinth/modules/sharing/forms.py:20
msgid ""
"A lowercase alpha-numeric string that uniquely identifies a share. Example: "
"media."
msgstr ""
-#: plinth/modules/sharing/forms.py:39
+#: plinth/modules/sharing/forms.py:24
msgid "Path to share"
msgstr ""
-#: plinth/modules/sharing/forms.py:40
+#: plinth/modules/sharing/forms.py:25
msgid "Disk path to a folder on this server that you intend to share."
msgstr ""
-#: plinth/modules/sharing/forms.py:43
+#: plinth/modules/sharing/forms.py:28
msgid "Public share"
msgstr ""
-#: plinth/modules/sharing/forms.py:44
+#: plinth/modules/sharing/forms.py:29
msgid "Make files in this folder available to anyone with the link."
msgstr ""
-#: plinth/modules/sharing/forms.py:48
+#: plinth/modules/sharing/forms.py:33
msgid "User groups that can read the files in the share"
msgstr ""
-#: plinth/modules/sharing/forms.py:50
+#: plinth/modules/sharing/forms.py:35
msgid ""
"Users of the selected user groups will be able to read the files in the "
"share."
msgstr ""
-#: plinth/modules/sharing/forms.py:67
+#: plinth/modules/sharing/forms.py:52
msgid "A share with this name already exists."
msgstr ""
-#: plinth/modules/sharing/forms.py:78
+#: plinth/modules/sharing/forms.py:63
msgid "Shares should be either public or shared with at least one group"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:39
-#: plinth/modules/sharing/templates/sharing.html:42
+#: plinth/modules/sharing/templates/sharing.html:24
+#: plinth/modules/sharing/templates/sharing.html:27
msgid "Add share"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:47
+#: plinth/modules/sharing/templates/sharing.html:32
msgid "No shares currently configured."
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:53
+#: plinth/modules/sharing/templates/sharing.html:38
msgid "Disk Path"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:54
+#: plinth/modules/sharing/templates/sharing.html:39
msgid "Shared Over"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:55
+#: plinth/modules/sharing/templates/sharing.html:40
msgid "With Groups"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:73
+#: plinth/modules/sharing/templates/sharing.html:58
msgid "public access"
msgstr ""
-#: plinth/modules/sharing/views.py:55
+#: plinth/modules/sharing/views.py:39
msgid "Share added."
msgstr ""
-#: plinth/modules/sharing/views.py:60
+#: plinth/modules/sharing/views.py:44
msgid "Add Share"
msgstr ""
-#: plinth/modules/sharing/views.py:75
+#: plinth/modules/sharing/views.py:59
msgid "Share edited."
msgstr ""
-#: plinth/modules/sharing/views.py:80
+#: plinth/modules/sharing/views.py:64
msgid "Edit Share"
msgstr ""
-#: plinth/modules/sharing/views.py:111
+#: plinth/modules/sharing/views.py:95
msgid "Share deleted."
msgstr ""
-#: plinth/modules/snapshot/__init__.py:37
-msgid "Storage Snapshots"
-msgstr ""
-
-#: plinth/modules/snapshot/__init__.py:40
+#: plinth/modules/snapshot/__init__.py:23
msgid ""
"Snapshots allows creating and managing btrfs file system snapshots. These "
"can be used to roll back the system to a previously known good state in case "
"of unwanted changes to the system."
msgstr ""
-#: plinth/modules/snapshot/__init__.py:44
+#: plinth/modules/snapshot/__init__.py:27
#, no-python-format
msgid ""
"Snapshots are taken periodically (called timeline snapshots) and also before "
@@ -4763,193 +4864,193 @@ msgid ""
"cleaned up according to the settings below."
msgstr ""
-#: plinth/modules/snapshot/__init__.py:47
+#: plinth/modules/snapshot/__init__.py:30
msgid ""
"Snapshots currently work on btrfs file systems only and on the root "
"partition only. Snapshots are not a replacement for backups since they can only be stored on the same partition. "
msgstr ""
-#: plinth/modules/snapshot/forms.py:27
+#: plinth/modules/snapshot/__init__.py:52
+msgid "Storage Snapshots"
+msgstr ""
+
+#: plinth/modules/snapshot/forms.py:12
msgid "Free Disk Space to Maintain"
msgstr ""
-#: plinth/modules/snapshot/forms.py:28
+#: plinth/modules/snapshot/forms.py:13
msgid ""
"Maintain this percentage of free space on the disk. If free space falls "
"below this value, older snapshots are removed until this much free space is "
"regained. The default value is 30%."
msgstr ""
-#: plinth/modules/snapshot/forms.py:35
+#: plinth/modules/snapshot/forms.py:20
msgid "Timeline Snapshots"
msgstr ""
-#: plinth/modules/snapshot/forms.py:36
+#: plinth/modules/snapshot/forms.py:21
msgid ""
"Enable or disable timeline snapshots (hourly, daily, monthly and yearly)."
msgstr ""
-#: plinth/modules/snapshot/forms.py:41
+#: plinth/modules/snapshot/forms.py:26
msgid "Software Installation Snapshots"
msgstr ""
-#: plinth/modules/snapshot/forms.py:42
+#: plinth/modules/snapshot/forms.py:27
msgid "Enable or disable snapshots before and after software installation"
msgstr ""
-#: plinth/modules/snapshot/forms.py:47
+#: plinth/modules/snapshot/forms.py:32
msgid "Hourly Snapshots Limit"
msgstr ""
-#: plinth/modules/snapshot/forms.py:48
+#: plinth/modules/snapshot/forms.py:33
msgid "Keep a maximum of this many hourly snapshots."
msgstr ""
-#: plinth/modules/snapshot/forms.py:51
+#: plinth/modules/snapshot/forms.py:36
msgid "Daily Snapshots Limit"
msgstr ""
-#: plinth/modules/snapshot/forms.py:52
+#: plinth/modules/snapshot/forms.py:37
msgid "Keep a maximum of this many daily snapshots."
msgstr ""
-#: plinth/modules/snapshot/forms.py:55
+#: plinth/modules/snapshot/forms.py:40
msgid "Weekly Snapshots Limit"
msgstr ""
-#: plinth/modules/snapshot/forms.py:56
+#: plinth/modules/snapshot/forms.py:41
msgid "Keep a maximum of this many weekly snapshots."
msgstr ""
-#: plinth/modules/snapshot/forms.py:59
+#: plinth/modules/snapshot/forms.py:44
msgid "Monthly Snapshots Limit"
msgstr ""
-#: plinth/modules/snapshot/forms.py:60
+#: plinth/modules/snapshot/forms.py:45
msgid "Keep a maximum of this many monthly snapshots."
msgstr ""
-#: plinth/modules/snapshot/forms.py:63
+#: plinth/modules/snapshot/forms.py:48
msgid "Yearly Snapshots Limit"
msgstr ""
-#: plinth/modules/snapshot/forms.py:64
+#: plinth/modules/snapshot/forms.py:49
msgid ""
"Keep a maximum of this many yearly snapshots. The default value is 0 "
"(disabled)."
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:27
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:12
msgid "Delete the following snapshots permanently?"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:31
-#: plinth/modules/snapshot/templates/snapshot_manage.html:43
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:39
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:16
+#: plinth/modules/snapshot/templates/snapshot_manage.html:28
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:24
msgid "Number"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:32
-#: plinth/modules/snapshot/templates/snapshot_manage.html:44
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:40
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:17
+#: plinth/modules/snapshot/templates/snapshot_manage.html:29
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:25
msgid "Date"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:52
-#: plinth/modules/snapshot/templates/snapshot_manage.html:37
-#: plinth/modules/snapshot/views.py:196
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:37
+#: plinth/modules/snapshot/templates/snapshot_manage.html:22
+#: plinth/modules/snapshot/views.py:175
msgid "Delete Snapshots"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_manage.html:33
+#: plinth/modules/snapshot/templates/snapshot_manage.html:18
msgid "Create Snapshot"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_manage.html:46
+#: plinth/modules/snapshot/templates/snapshot_manage.html:31
msgid "Rollback"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_manage.html:57
+#: plinth/modules/snapshot/templates/snapshot_manage.html:42
msgid "active"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_manage.html:66
+#: plinth/modules/snapshot/templates/snapshot_manage.html:51
#, python-format
msgid "Rollback to snapshot #%(number)s"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_not_supported.html:26
+#: plinth/modules/snapshot/templates/snapshot_not_supported.html:11
#, python-format
msgid ""
"Your have a filesystem of type %(fs_type)s. Snapshots are "
"currently only available on %(types_supported)s filesystems."
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:27
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:12
msgid "Roll back the system to this snapshot?"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:30
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:15
msgid ""
"A new snapshot with the current state of the file system will be "
"automatically created. You will be able to undo a rollback by reverting to "
"the newly created snapshot."
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:57
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:42
#, python-format
msgid "Rollback to Snapshot #%(number)s"
msgstr ""
-#: plinth/modules/snapshot/views.py:45
+#: plinth/modules/snapshot/views.py:30
msgid "Manage Snapshots"
msgstr ""
-#: plinth/modules/snapshot/views.py:98
+#: plinth/modules/snapshot/views.py:79
msgid "Created snapshot."
msgstr ""
-#: plinth/modules/snapshot/views.py:156
+#: plinth/modules/snapshot/views.py:135
#, fuzzy
msgid "Storage snapshots configuration updated"
msgstr "DNSSEC ગોઠવણીને સુધારેલી શરુ કરો"
-#: plinth/modules/snapshot/views.py:160 plinth/modules/tor/views.py:79
+#: plinth/modules/snapshot/views.py:139 plinth/modules/tor/views.py:60
#, python-brace-format
msgid "Action error: {0} [{1}] [{2}]"
msgstr ""
-#: plinth/modules/snapshot/views.py:175
+#: plinth/modules/snapshot/views.py:154
msgid "Deleted all snapshots"
msgstr ""
-#: plinth/modules/snapshot/views.py:179
+#: plinth/modules/snapshot/views.py:158
msgid "Deleted selected snapshots"
msgstr ""
-#: plinth/modules/snapshot/views.py:184
+#: plinth/modules/snapshot/views.py:163
msgid "Snapshot is currently in use. Please try again later."
msgstr ""
-#: plinth/modules/snapshot/views.py:207
+#: plinth/modules/snapshot/views.py:186
#, python-brace-format
msgid "Rolled back to snapshot #{number}."
msgstr ""
-#: plinth/modules/snapshot/views.py:210
+#: plinth/modules/snapshot/views.py:189
msgid "The system must be restarted to complete the rollback."
msgstr ""
-#: plinth/modules/snapshot/views.py:222
+#: plinth/modules/snapshot/views.py:201
msgid "Rollback to Snapshot"
msgstr ""
-#: plinth/modules/ssh/__init__.py:43
-msgid "Secure Shell (SSH) Server"
-msgstr ""
-
-#: plinth/modules/ssh/__init__.py:46
+#: plinth/modules/ssh/__init__.py:29
msgid ""
"A Secure Shell server uses the secure shell protocol to accept connections "
"from remote computers. An authorized remote computer can perform "
@@ -4957,60 +5058,60 @@ msgid ""
"connections."
msgstr ""
-#: plinth/modules/ssh/forms.py:30
+#: plinth/modules/ssh/__init__.py:50
+msgid "Secure Shell (SSH) Server"
+msgstr ""
+
+#: plinth/modules/ssh/forms.py:15
#, fuzzy
#| msgid "Use HTTP basic authentication"
msgid "Disable password authentication"
msgstr "HTTP મૂળભૂત પ્રમાણીકરણનો ઉપયોગ કરો"
-#: plinth/modules/ssh/forms.py:31
+#: plinth/modules/ssh/forms.py:16
msgid ""
"Improves security by preventing password guessing. Ensure that you have "
"setup SSH keys in your administrator user account before enabling this "
"option."
msgstr ""
-#: plinth/modules/ssh/templates/ssh.html:26
+#: plinth/modules/ssh/templates/ssh.html:11
#, fuzzy
#| msgid "Server Administration"
msgid "Server Fingerprints"
msgstr "સર્વર સંચાલન"
-#: plinth/modules/ssh/templates/ssh.html:29
+#: plinth/modules/ssh/templates/ssh.html:14
msgid ""
"When connecting to the server, ensure that the fingerprint shown by the SSH "
"client matches one of these fingerprints."
msgstr ""
-#: plinth/modules/ssh/templates/ssh.html:38
+#: plinth/modules/ssh/templates/ssh.html:23
msgid "Algorithm"
msgstr ""
-#: plinth/modules/ssh/templates/ssh.html:39
+#: plinth/modules/ssh/templates/ssh.html:24
msgid "Fingerprint"
msgstr ""
-#: plinth/modules/ssh/views.py:66
+#: plinth/modules/ssh/views.py:48
msgid "SSH authentication with password disabled."
msgstr ""
-#: plinth/modules/ssh/views.py:69
+#: plinth/modules/ssh/views.py:51
msgid "SSH authentication with password enabled."
msgstr ""
-#: plinth/modules/sso/__init__.py:30
+#: plinth/modules/sso/__init__.py:33
msgid "Single Sign On"
msgstr ""
-#: plinth/modules/sso/templates/login.html:35
+#: plinth/modules/sso/templates/login.html:20
msgid "Login"
msgstr ""
-#: plinth/modules/storage/__init__.py:39 plinth/modules/storage/__init__.py:331
-msgid "Storage"
-msgstr ""
-
-#: plinth/modules/storage/__init__.py:47
+#: plinth/modules/storage/__init__.py:30
#, python-brace-format
msgid ""
"This module allows you to manage storage media attached to your {box_name}. "
@@ -5018,147 +5119,151 @@ msgid ""
"media, expand the root partition etc."
msgstr ""
-#: plinth/modules/storage/__init__.py:224
+#: plinth/modules/storage/__init__.py:52 plinth/modules/storage/__init__.py:318
+msgid "Storage"
+msgstr ""
+
+#: plinth/modules/storage/__init__.py:211
#, python-brace-format
msgid "{disk_size:.1f} bytes"
msgstr ""
-#: plinth/modules/storage/__init__.py:228
+#: plinth/modules/storage/__init__.py:215
#, python-brace-format
msgid "{disk_size:.1f} KiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:232
+#: plinth/modules/storage/__init__.py:219
#, python-brace-format
msgid "{disk_size:.1f} MiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:236
+#: plinth/modules/storage/__init__.py:223
#, python-brace-format
msgid "{disk_size:.1f} GiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:239
+#: plinth/modules/storage/__init__.py:226
#, python-brace-format
msgid "{disk_size:.1f} TiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:246
+#: plinth/modules/storage/__init__.py:233
msgid "The operation failed."
msgstr ""
-#: plinth/modules/storage/__init__.py:248
+#: plinth/modules/storage/__init__.py:235
msgid "The operation was cancelled."
msgstr ""
-#: plinth/modules/storage/__init__.py:250
+#: plinth/modules/storage/__init__.py:237
msgid "The device is already unmounting."
msgstr ""
-#: plinth/modules/storage/__init__.py:252
+#: plinth/modules/storage/__init__.py:239
msgid "The operation is not supported due to missing driver/tool support."
msgstr ""
-#: plinth/modules/storage/__init__.py:255
+#: plinth/modules/storage/__init__.py:242
msgid "The operation timed out."
msgstr ""
-#: plinth/modules/storage/__init__.py:257
+#: plinth/modules/storage/__init__.py:244
msgid "The operation would wake up a disk that is in a deep-sleep state."
msgstr ""
-#: plinth/modules/storage/__init__.py:260
+#: plinth/modules/storage/__init__.py:247
msgid "Attempting to unmount a device that is busy."
msgstr ""
-#: plinth/modules/storage/__init__.py:262
+#: plinth/modules/storage/__init__.py:249
msgid "The operation has already been cancelled."
msgstr ""
-#: plinth/modules/storage/__init__.py:268
+#: plinth/modules/storage/__init__.py:255
msgid "Not authorized to perform the requested operation."
msgstr ""
-#: plinth/modules/storage/__init__.py:270
+#: plinth/modules/storage/__init__.py:257
msgid "The device is already mounted."
msgstr ""
-#: plinth/modules/storage/__init__.py:272
+#: plinth/modules/storage/__init__.py:259
msgid "The device is not mounted."
msgstr ""
-#: plinth/modules/storage/__init__.py:275
+#: plinth/modules/storage/__init__.py:262
msgid "Not permitted to use the requested option."
msgstr ""
-#: plinth/modules/storage/__init__.py:278
+#: plinth/modules/storage/__init__.py:265
msgid "The device is mounted by another user."
msgstr ""
-#: plinth/modules/storage/__init__.py:326
+#: plinth/modules/storage/__init__.py:313
#, no-python-format, python-brace-format
msgid "Low space on system partition: {percent_used}% used, {free_space} free."
msgstr ""
-#: plinth/modules/storage/__init__.py:328
+#: plinth/modules/storage/__init__.py:315
msgid "Low disk space"
msgstr ""
-#: plinth/modules/storage/forms.py:79
+#: plinth/modules/storage/forms.py:64
#, fuzzy
#| msgid "Invalid hostname"
msgid "Invalid directory name."
msgstr "અમાન્ય હોસ્ટનું નામ"
-#: plinth/modules/storage/forms.py:97
+#: plinth/modules/storage/forms.py:82
msgid "Directory does not exist."
msgstr ""
-#: plinth/modules/storage/forms.py:99
+#: plinth/modules/storage/forms.py:84
msgid "Path is not a directory."
msgstr ""
-#: plinth/modules/storage/forms.py:102
+#: plinth/modules/storage/forms.py:87
msgid "Directory is not readable by the user."
msgstr ""
-#: plinth/modules/storage/forms.py:105
+#: plinth/modules/storage/forms.py:90
msgid "Directory is not writable by the user."
msgstr ""
-#: plinth/modules/storage/forms.py:110
+#: plinth/modules/storage/forms.py:95
msgid "Directory"
msgstr ""
-#: plinth/modules/storage/forms.py:113
+#: plinth/modules/storage/forms.py:98
msgid "Subdirectory (optional)"
msgstr ""
-#: plinth/modules/storage/forms.py:160
+#: plinth/modules/storage/forms.py:145
msgid "Share"
msgstr ""
-#: plinth/modules/storage/forms.py:168
+#: plinth/modules/storage/forms.py:153
msgid "Other directory (specify below)"
msgstr ""
-#: plinth/modules/storage/templates/storage.html:35
+#: plinth/modules/storage/templates/storage.html:20
msgid "The following storage devices are in use:"
msgstr ""
-#: plinth/modules/storage/templates/storage.html:41
+#: plinth/modules/storage/templates/storage.html:26
msgid "Label"
msgstr ""
-#: plinth/modules/storage/templates/storage.html:42
+#: plinth/modules/storage/templates/storage.html:27
msgid "Mount Point"
msgstr ""
-#: plinth/modules/storage/templates/storage.html:90
+#: plinth/modules/storage/templates/storage.html:75
msgid "Partition Expansion"
msgstr ""
-#: plinth/modules/storage/templates/storage.html:92
+#: plinth/modules/storage/templates/storage.html:77
#, python-format
msgid ""
"There is %(expandable_root_size)s of unallocated space available after your "
@@ -5166,13 +5271,13 @@ msgid ""
"will provide you additional free space to store your files."
msgstr ""
-#: plinth/modules/storage/templates/storage.html:102
-#: plinth/modules/storage/templates/storage_expand.html:39
-#: plinth/modules/storage/views.py:76
+#: plinth/modules/storage/templates/storage.html:87
+#: plinth/modules/storage/templates/storage_expand.html:24
+#: plinth/modules/storage/views.py:58
msgid "Expand Root Partition"
msgstr ""
-#: plinth/modules/storage/templates/storage_expand.html:29
+#: plinth/modules/storage/templates/storage_expand.html:14
#, python-format
msgid ""
"Please backup your data before proceeding. After this operation, "
@@ -5180,39 +5285,30 @@ msgid ""
"root partition."
msgstr ""
-#: plinth/modules/storage/views.py:88
+#: plinth/modules/storage/views.py:70
#, python-brace-format
msgid "Error expanding partition: {exception}"
msgstr ""
-#: plinth/modules/storage/views.py:91
+#: plinth/modules/storage/views.py:73
msgid "Partition expanded successfully."
msgstr ""
-#: plinth/modules/storage/views.py:109
+#: plinth/modules/storage/views.py:91
#, python-brace-format
msgid "{drive_vendor} {drive_model} can be safely unplugged."
msgstr ""
-#: plinth/modules/storage/views.py:113
+#: plinth/modules/storage/views.py:95
msgid "Device can be safely unplugged."
msgstr ""
-#: plinth/modules/storage/views.py:123
+#: plinth/modules/storage/views.py:105
#, python-brace-format
msgid "Error ejecting device: {error_message}"
msgstr ""
-#: plinth/modules/syncthing/__init__.py:40
-#: plinth/modules/syncthing/manifest.py:28
-msgid "Syncthing"
-msgstr ""
-
-#: plinth/modules/syncthing/__init__.py:44
-msgid "File Synchronization"
-msgstr ""
-
-#: plinth/modules/syncthing/__init__.py:47
+#: plinth/modules/syncthing/__init__.py:26
msgid ""
"Syncthing is an application to synchronize files across multiple devices, e."
"g. your desktop computer and mobile phone. Creation, modification, or "
@@ -5220,7 +5316,7 @@ msgid ""
"other devices that also run Syncthing."
msgstr ""
-#: plinth/modules/syncthing/__init__.py:52
+#: plinth/modules/syncthing/__init__.py:31
#, python-brace-format
msgid ""
"Running Syncthing on {box_name} provides an extra synchronization point for "
@@ -5231,19 +5327,20 @@ msgid ""
"{box_name} is only available for users belonging to the \"admin\" group."
msgstr ""
-#: plinth/modules/syncthing/__init__.py:63
+#: plinth/modules/syncthing/__init__.py:40
msgid "Administer Syncthing application"
msgstr ""
-#: plinth/modules/tahoe/__init__.py:43
-msgid "Tahoe-LAFS"
+#: plinth/modules/syncthing/__init__.py:54
+#: plinth/modules/syncthing/manifest.py:13
+msgid "Syncthing"
msgstr ""
-#: plinth/modules/tahoe/__init__.py:47
-msgid "Distributed File Storage"
+#: plinth/modules/syncthing/__init__.py:55
+msgid "File Synchronization"
msgstr ""
-#: plinth/modules/tahoe/__init__.py:134
+#: plinth/modules/tahoe/__init__.py:30
msgid ""
"Tahoe-LAFS is a decentralized secure file storage system. It uses provider "
"independent security to store files over a distributed network of storage "
@@ -5251,7 +5348,7 @@ msgid ""
"remaining nodes."
msgstr ""
-#: plinth/modules/tahoe/__init__.py:139
+#: plinth/modules/tahoe/__init__.py:35
#, python-brace-format
msgid ""
"This {box_name} hosts a storage node and an introducer by default. "
@@ -5259,7 +5356,15 @@ msgid ""
"other storage nodes."
msgstr ""
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:33
+#: plinth/modules/tahoe/__init__.py:66
+msgid "Tahoe-LAFS"
+msgstr ""
+
+#: plinth/modules/tahoe/__init__.py:68
+msgid "Distributed File Storage"
+msgstr ""
+
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:17
#, python-format
msgid ""
"The Tahoe-LAFS server domain is set to %(domain_name)s. Changing the "
@@ -5268,37 +5373,33 @@ msgid ""
"%(domain_name)s:5678\">https://%(domain_name)s:5678."
msgstr ""
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:55
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:39
msgid "Local introducer"
msgstr ""
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:43
#: plinth/modules/tahoe/templates/tahoe-post-setup.html:59
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:75
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:92
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:76
msgid "Pet Name"
msgstr ""
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:72
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:56
msgid "Add new introducer"
msgstr ""
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:83
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:67
msgid "Add"
msgstr ""
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:88
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:72
msgid "Connected introducers"
msgstr ""
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:105
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:89
msgid "Remove"
msgstr ""
-#: plinth/modules/tor/__init__.py:47
-msgid "Tor"
-msgstr ""
-
-#: plinth/modules/tor/__init__.py:52
+#: plinth/modules/tor/__init__.py:33
msgid ""
"Tor is an anonymous communication system. You can learn more about it from "
"the Tor Project website. For "
@@ -5307,76 +5408,80 @@ msgid ""
"\">Tor Browser."
msgstr ""
-#: plinth/modules/tor/__init__.py:83
+#: plinth/modules/tor/__init__.py:55
+msgid "Tor"
+msgstr ""
+
+#: plinth/modules/tor/__init__.py:66
msgid "Tor Onion Service"
msgstr ""
-#: plinth/modules/tor/__init__.py:87
+#: plinth/modules/tor/__init__.py:70
msgid "Tor Socks Proxy"
msgstr ""
-#: plinth/modules/tor/__init__.py:91
+#: plinth/modules/tor/__init__.py:74
msgid "Tor Bridge Relay"
msgstr ""
-#: plinth/modules/tor/__init__.py:112
+#: plinth/modules/tor/__init__.py:95
msgid "Tor relay port available"
msgstr ""
-#: plinth/modules/tor/__init__.py:122
+#: plinth/modules/tor/__init__.py:105
msgid "Obfs3 transport registered"
msgstr ""
-#: plinth/modules/tor/__init__.py:132
+#: plinth/modules/tor/__init__.py:115
msgid "Obfs4 transport registered"
msgstr ""
-#: plinth/modules/tor/__init__.py:225
+#: plinth/modules/tor/__init__.py:208
#, python-brace-format
msgid "Access URL {url} on tcp{kind} via Tor"
msgstr ""
-#: plinth/modules/tor/__init__.py:236
+#: plinth/modules/tor/__init__.py:219
#, python-brace-format
msgid "Confirm Tor usage at {url} on tcp{kind}"
msgstr ""
-#: plinth/modules/tor/forms.py:46
+#: plinth/modules/tor/forms.py:31
msgid ""
"Enter a valid bridge with this format: [transport] IP:ORPort [fingerprint]"
msgstr ""
-#: plinth/modules/tor/forms.py:88
+#: plinth/modules/tor/forms.py:73
msgid "Enable Tor"
msgstr ""
-#: plinth/modules/tor/forms.py:90
+#: plinth/modules/tor/forms.py:75
msgid "Use upstream bridges to connect to Tor network"
msgstr ""
-#: plinth/modules/tor/forms.py:92
+#: plinth/modules/tor/forms.py:77
msgid ""
"When enabled, the bridges configured below will be used to connect to the "
"Tor network. Use this option if your Internet Service Provider (ISP) blocks "
"or censors connections to the Tor Network. This will disable relay modes."
msgstr ""
-#: plinth/modules/tor/forms.py:97
+#: plinth/modules/tor/forms.py:82
msgid "Upstream bridges"
msgstr ""
-#: plinth/modules/tor/forms.py:99
+#: plinth/modules/tor/forms.py:84
msgid ""
"You can get some bridges from https://bridges.torproject.org/ and copy/paste the bridge information "
"here. Currently supported transports are none, obfs3, obfs4 and scamblesuit."
msgstr ""
-#: plinth/modules/tor/forms.py:105
+#: plinth/modules/tor/forms.py:90
msgid "Enable Tor relay"
msgstr ""
-#: plinth/modules/tor/forms.py:106
+#: plinth/modules/tor/forms.py:91
#, python-brace-format
msgid ""
"When enabled, your {box_name} will run a Tor relay and donate bandwidth to "
@@ -5384,22 +5489,22 @@ msgid ""
"download bandwidth."
msgstr ""
-#: plinth/modules/tor/forms.py:111
+#: plinth/modules/tor/forms.py:96
msgid "Enable Tor bridge relay"
msgstr ""
-#: plinth/modules/tor/forms.py:113
+#: plinth/modules/tor/forms.py:98
msgid ""
"When enabled, relay information is published in the Tor bridge database "
"instead of public Tor relay database making it harder to censor this node. "
"This helps others circumvent censorship."
msgstr ""
-#: plinth/modules/tor/forms.py:118
+#: plinth/modules/tor/forms.py:103
msgid "Enable Tor Hidden Service"
msgstr ""
-#: plinth/modules/tor/forms.py:120
+#: plinth/modules/tor/forms.py:105
#, python-brace-format
msgid ""
"A hidden service will allow {box_name} to provide selected services (such as "
@@ -5407,90 +5512,82 @@ msgid ""
"anonymity yet."
msgstr ""
-#: plinth/modules/tor/forms.py:125
+#: plinth/modules/tor/forms.py:110
msgid "Download software packages over Tor"
msgstr ""
-#: plinth/modules/tor/forms.py:126
+#: plinth/modules/tor/forms.py:111
msgid ""
"When enabled, software will be downloaded over the Tor network for "
"installations and upgrades. This adds a degree of privacy and security "
"during software downloads."
msgstr ""
-#: plinth/modules/tor/forms.py:141
+#: plinth/modules/tor/forms.py:126
msgid "Specify at least one upstream bridge to use upstream bridges."
msgstr ""
-#: plinth/modules/tor/manifest.py:29
+#: plinth/modules/tor/manifest.py:14
msgid "Tor Browser"
msgstr ""
-#: plinth/modules/tor/manifest.py:45
+#: plinth/modules/tor/manifest.py:30
msgid "Orbot: Proxy with Tor"
msgstr ""
-#: plinth/modules/tor/templates/tor.html:41
+#: plinth/modules/tor/templates/tor.html:26
msgid "Tor configuration is being updated"
msgstr ""
-#: plinth/modules/tor/templates/tor.html:50
+#: plinth/modules/tor/templates/tor.html:35
#, fuzzy
#| msgid "Dynamic DNS Service"
msgid "Onion Service"
msgstr "ડાયનેમિક DNS સેવા"
-#: plinth/modules/tor/templates/tor.html:52
+#: plinth/modules/tor/templates/tor.html:37
msgid "Ports"
msgstr ""
-#: plinth/modules/tor/templates/tor.html:82
+#: plinth/modules/tor/templates/tor.html:67
msgid "Relay"
msgstr ""
-#: plinth/modules/tor/templates/tor.html:84
+#: plinth/modules/tor/templates/tor.html:69
#, python-format
msgid ""
"If your %(box_name)s is behind a router or firewall, you should make sure "
"the following ports are open, and port-forwarded, if necessary:"
msgstr ""
-#: plinth/modules/tor/templates/tor.html:112
+#: plinth/modules/tor/templates/tor.html:97
msgid "SOCKS"
msgstr ""
-#: plinth/modules/tor/templates/tor.html:115
+#: plinth/modules/tor/templates/tor.html:100
#, python-format
msgid "A Tor SOCKS port is available on your %(box_name)s on TCP port 9050."
msgstr ""
-#: plinth/modules/transmission/__init__.py:41
-#: plinth/modules/transmission/manifest.py:24
-msgid "Transmission"
-msgstr ""
-
-#: plinth/modules/transmission/__init__.py:48
+#: plinth/modules/transmission/__init__.py:27
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/ttrss/__init__.py:43 plinth/modules/ttrss/manifest.py:34
-msgid "Tiny Tiny RSS"
+#: plinth/modules/transmission/__init__.py:48
+#: plinth/modules/transmission/manifest.py:9
+msgid "Transmission"
msgstr ""
-#: plinth/modules/ttrss/__init__.py:47
-msgid "News Feed Reader"
-msgstr ""
-
-#: plinth/modules/ttrss/__init__.py:50
+#: plinth/modules/ttrss/__init__.py:29
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:54
+#: plinth/modules/ttrss/__init__.py:33
#, fuzzy, python-brace-format
msgid ""
"When enabled, Tiny Tiny RSS can be accessed by any /tt-rss-app for "
"connecting."
msgstr ""
-#: plinth/modules/ttrss/__init__.py:65
+#: plinth/modules/ttrss/__init__.py:42
msgid "Read and subscribe to news feeds"
msgstr ""
-#: plinth/modules/ttrss/manifest.py:25
+#: plinth/modules/ttrss/__init__.py:56 plinth/modules/ttrss/manifest.py:19
+msgid "Tiny Tiny RSS"
+msgstr ""
+
+#: plinth/modules/ttrss/__init__.py:57
+msgid "News Feed Reader"
+msgstr ""
+
+#: plinth/modules/ttrss/manifest.py:10
msgid "Tiny Tiny RSS (Fork)"
msgstr ""
-#: plinth/modules/upgrades/__init__.py:37 plinth/templates/setup.html:89
-msgid "Update"
-msgstr ""
-
-#: plinth/modules/upgrades/__init__.py:40
+#: plinth/modules/upgrades/__init__.py:23
msgid "Check for and apply the latest software and security updates."
msgstr ""
-#: plinth/modules/upgrades/__init__.py:84
+#: plinth/modules/upgrades/__init__.py:38 plinth/templates/setup.html:74
+msgid "Update"
+msgstr ""
+
+#: plinth/modules/upgrades/__init__.py:71
#, fuzzy
#| msgid "FreedomBox"
msgid "FreedomBox Updated"
msgstr "ફ્રિડમબોક્ષ"
-#: plinth/modules/upgrades/forms.py:28
+#: plinth/modules/upgrades/forms.py:13
#, fuzzy
#| msgid "Enable application"
msgid "Enable auto-update"
msgstr "એપ્લીકેશનને પ્રસ્થાપિત કરો"
-#: plinth/modules/upgrades/forms.py:29
+#: plinth/modules/upgrades/forms.py:14
msgid "When enabled, FreedomBox automatically updates once a day."
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades-new-release.html:24
+#: plinth/modules/upgrades/templates/upgrades-new-release.html:9
#, python-format
msgid "%(box_name)s Updated"
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades-new-release.html:28
+#: plinth/modules/upgrades/templates/upgrades-new-release.html:13
#, python-format
msgid ""
"%(box_name)s has been updated to version %(version)s. See the release announcement."
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades-new-release.html:37
-#: plinth/templates/notifications.html:59
+#: plinth/modules/upgrades/templates/upgrades-new-release.html:22
+#: plinth/templates/notifications.html:44
msgid "Dismiss"
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades.html:45
+#: plinth/modules/upgrades/templates/upgrades.html:30
#, fuzzy
#| msgid "Update URL"
msgid "Update now"
msgstr "URL અપડેટ કરો"
-#: plinth/modules/upgrades/templates/upgrades.html:54
+#: plinth/modules/upgrades/templates/upgrades.html:39
msgid "Updating..."
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades.html:59
+#: plinth/modules/upgrades/templates/upgrades.html:44
msgid ""
"This may take a long time to complete. During an update, "
"you cannot install apps. Also, this web interface may be temporarily "
"unavailable and show an error. In that case, refresh the page to continue."
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades.html:73
+#: plinth/modules/upgrades/templates/upgrades.html:58
msgid "Toggle recent update logs"
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades_configure.html:26
-#: plinth/modules/upgrades/templates/upgrades_configure.html:27
-#: plinth/modules/upgrades/views.py:107
+#: plinth/modules/upgrades/templates/upgrades_configure.html:11
+#: plinth/modules/upgrades/templates/upgrades_configure.html:12
+#: plinth/modules/upgrades/views.py:89
#, fuzzy
#| msgid "Last update"
msgid "Manual update"
msgstr "છેલ્લો સુધારો"
-#: plinth/modules/upgrades/views.py:66
+#: plinth/modules/upgrades/views.py:48
#, python-brace-format
msgid "Error when configuring unattended-upgrades: {error}"
msgstr ""
-#: plinth/modules/upgrades/views.py:70
+#: plinth/modules/upgrades/views.py:52
msgid "Automatic upgrades enabled"
msgstr ""
-#: plinth/modules/upgrades/views.py:73
+#: plinth/modules/upgrades/views.py:55
msgid "Automatic upgrades disabled"
msgstr ""
-#: plinth/modules/upgrades/views.py:75
+#: plinth/modules/upgrades/views.py:57
msgid "Settings unchanged"
msgstr ""
-#: plinth/modules/upgrades/views.py:101
+#: plinth/modules/upgrades/views.py:83
msgid "Upgrade process started."
msgstr ""
-#: plinth/modules/upgrades/views.py:104
+#: plinth/modules/upgrades/views.py:86
msgid "Starting upgrade failed."
msgstr ""
-#: plinth/modules/users/__init__.py:51
-msgid "Users and Groups"
-msgstr ""
-
-#: plinth/modules/users/__init__.py:54
+#: plinth/modules/users/__init__.py:37
msgid ""
"Create and managed user accounts. These accounts serve as centralized "
"authentication mechanism for most apps. Some apps further require a user "
"account to be part of a group to authorize the user to access the app."
msgstr ""
-#: plinth/modules/users/__init__.py:59
+#: plinth/modules/users/__init__.py:42
#, python-brace-format
msgid ""
"Any user may login to {box_name} web interface to see a list of apps "
@@ -5630,35 +5731,39 @@ msgid ""
"group may alter apps or system settings."
msgstr ""
-#: plinth/modules/users/__init__.py:128
+#: plinth/modules/users/__init__.py:64
+msgid "Users and Groups"
+msgstr ""
+
+#: plinth/modules/users/__init__.py:115
#, python-brace-format
msgid "Check LDAP entry \"{search_item}\""
msgstr ""
-#: plinth/modules/users/forms.py:43
+#: plinth/modules/users/forms.py:28
msgid "Access to all services and system settings"
msgstr ""
-#: plinth/modules/users/forms.py:59
+#: plinth/modules/users/forms.py:44
msgid "Username is taken or is reserved."
msgstr ""
-#: plinth/modules/users/forms.py:87
+#: plinth/modules/users/forms.py:72
#, fuzzy
#| msgid "Invalid server name"
msgid "Enter a valid username."
msgstr "અમાન્ય સર્વર નામ"
-#: plinth/modules/users/forms.py:93
+#: plinth/modules/users/forms.py:78
msgid ""
"Required. 150 characters or fewer. English letters, digits and @/./-/_ only."
msgstr ""
-#: plinth/modules/users/forms.py:106 plinth/modules/users/forms.py:222
+#: plinth/modules/users/forms.py:91 plinth/modules/users/forms.py:207
msgid "Permissions"
msgstr ""
-#: plinth/modules/users/forms.py:109
+#: plinth/modules/users/forms.py:94
msgid ""
"Select which services should be available to the new user. The user will be "
"able to log in to services that support single sign-on through LDAP, if they "
@@ -5667,187 +5772,182 @@ msgid ""
"SSH and have administrative privileges (sudo)."
msgstr ""
-#: plinth/modules/users/forms.py:148 plinth/modules/users/forms.py:372
+#: plinth/modules/users/forms.py:133 plinth/modules/users/forms.py:357
msgid "Creating LDAP user failed."
msgstr ""
-#: plinth/modules/users/forms.py:159
+#: plinth/modules/users/forms.py:144
#, python-brace-format
msgid "Failed to add new user to {group} group."
msgstr ""
-#: plinth/modules/users/forms.py:173
+#: plinth/modules/users/forms.py:158
msgid "Authorized SSH Keys"
msgstr ""
-#: plinth/modules/users/forms.py:175
+#: plinth/modules/users/forms.py:160
msgid ""
"Setting an SSH public key will allow this user to securely log in to the "
"system without using a password. You may enter multiple keys, one on each "
"line. Blank lines and lines starting with # will be ignored."
msgstr ""
-#: plinth/modules/users/forms.py:259
+#: plinth/modules/users/forms.py:244
msgid "Renaming LDAP user failed."
msgstr ""
-#: plinth/modules/users/forms.py:271
+#: plinth/modules/users/forms.py:256
msgid "Failed to remove user from group."
msgstr ""
-#: plinth/modules/users/forms.py:282
+#: plinth/modules/users/forms.py:267
msgid "Failed to add user to group."
msgstr ""
-#: plinth/modules/users/forms.py:291
+#: plinth/modules/users/forms.py:276
msgid "Unable to set SSH keys."
msgstr ""
-#: plinth/modules/users/forms.py:306
+#: plinth/modules/users/forms.py:291
msgid "Failed to change user status."
msgstr ""
-#: plinth/modules/users/forms.py:314
+#: plinth/modules/users/forms.py:299
msgid "Cannot delete the only administrator in the system."
msgstr ""
-#: plinth/modules/users/forms.py:346
+#: plinth/modules/users/forms.py:331
msgid "Changing LDAP user password failed."
msgstr ""
-#: plinth/modules/users/forms.py:381
+#: plinth/modules/users/forms.py:366
msgid "Failed to add new user to admin group."
msgstr ""
-#: plinth/modules/users/forms.py:398
+#: plinth/modules/users/forms.py:383
msgid "Failed to restrict console access."
msgstr ""
-#: plinth/modules/users/forms.py:410
+#: plinth/modules/users/forms.py:395
msgid "User account created, you are now logged in"
msgstr ""
-#: plinth/modules/users/templates/users_change_password.html:26
+#: plinth/modules/users/templates/users_change_password.html:11
#, python-format
msgid "Change Password for %(username)s"
msgstr ""
-#: plinth/modules/users/templates/users_change_password.html:36
+#: plinth/modules/users/templates/users_change_password.html:21
msgid "Save Password"
msgstr ""
-#: plinth/modules/users/templates/users_create.html:32
-#: plinth/modules/users/templates/users_list.html:42
-#: plinth/modules/users/templates/users_list.html:44
-#: plinth/modules/users/views.py:57
+#: plinth/modules/users/templates/users_create.html:17
+#: plinth/modules/users/templates/users_list.html:27
+#: plinth/modules/users/templates/users_list.html:29
+#: plinth/modules/users/views.py:42
msgid "Create User"
msgstr ""
-#: plinth/modules/users/templates/users_delete.html:26
-#: plinth/modules/users/views.py:139
+#: plinth/modules/users/templates/users_delete.html:11
+#: plinth/modules/users/views.py:121
msgid "Delete User"
msgstr ""
-#: plinth/modules/users/templates/users_delete.html:29
+#: plinth/modules/users/templates/users_delete.html:14
#, python-format
msgid "Delete user %(username)s permanently?"
msgstr ""
-#: plinth/modules/users/templates/users_delete.html:38
+#: plinth/modules/users/templates/users_delete.html:23
#, python-format
msgid "Delete %(username)s"
msgstr ""
-#: plinth/modules/users/templates/users_firstboot.html:26
+#: plinth/modules/users/templates/users_firstboot.html:11
msgid "Administrator Account"
msgstr ""
-#: plinth/modules/users/templates/users_firstboot.html:29
+#: plinth/modules/users/templates/users_firstboot.html:14
msgid ""
"Choose a username and password to access this web interface. The password "
"can be changed later. This user will be granted administrative privileges. "
"Other users can be added later."
msgstr ""
-#: plinth/modules/users/templates/users_firstboot.html:42
+#: plinth/modules/users/templates/users_firstboot.html:27
msgid "Create Account"
msgstr ""
-#: plinth/modules/users/templates/users_list.html:38
-#: plinth/modules/users/views.py:74
+#: plinth/modules/users/templates/users_list.html:23
+#: plinth/modules/users/views.py:59
msgid "Users"
msgstr ""
-#: plinth/modules/users/templates/users_list.html:57
+#: plinth/modules/users/templates/users_list.html:42
#, python-format
msgid "Delete user %(username)s"
msgstr ""
-#: plinth/modules/users/templates/users_list.html:65
+#: plinth/modules/users/templates/users_list.html:50
#, python-format
msgid "Edit user %(username)s"
msgstr ""
-#: plinth/modules/users/templates/users_update.html:30
+#: plinth/modules/users/templates/users_update.html:15
#, python-format
msgid ""
"Use the change password form to "
"change the password."
msgstr ""
-#: plinth/modules/users/templates/users_update.html:42
-#: plinth/templates/language-selection.html:32
+#: plinth/modules/users/templates/users_update.html:27
+#: plinth/templates/language-selection.html:17
msgid "Save Changes"
msgstr ""
-#: plinth/modules/users/views.py:55
+#: plinth/modules/users/views.py:40
#, python-format
msgid "User %(username)s created."
msgstr ""
-#: plinth/modules/users/views.py:93
+#: plinth/modules/users/views.py:75
#, python-format
msgid "User %(username)s updated."
msgstr ""
-#: plinth/modules/users/views.py:94
+#: plinth/modules/users/views.py:76
msgid "Edit User"
msgstr ""
-#: plinth/modules/users/views.py:149
+#: plinth/modules/users/views.py:131
#, python-brace-format
msgid "User {user} deleted."
msgstr ""
-#: plinth/modules/users/views.py:156
+#: plinth/modules/users/views.py:138
msgid "Deleting LDAP user failed."
msgstr ""
-#: plinth/modules/users/views.py:165
+#: plinth/modules/users/views.py:147
msgid "Change Password"
msgstr ""
-#: plinth/modules/users/views.py:166
+#: plinth/modules/users/views.py:148
msgid "Password changed successfully."
msgstr ""
-#: plinth/modules/wireguard/__init__.py:38
-#: plinth/modules/wireguard/manifest.py:29
-msgid "WireGuard"
-msgstr ""
-
-#: plinth/modules/wireguard/__init__.py:43
+#: plinth/modules/wireguard/__init__.py:24
msgid "WireGuard is a fast, modern, secure VPN tunnel."
msgstr ""
-#: plinth/modules/wireguard/__init__.py:45
+#: plinth/modules/wireguard/__init__.py:26
#, python-brace-format
msgid ""
"It can be used to connect to a VPN provider which supports WireGuard, and to "
"route all outgoing traffic from {box_name} through the VPN."
msgstr ""
-#: plinth/modules/wireguard/__init__.py:49
+#: plinth/modules/wireguard/__init__.py:30
#, python-brace-format
msgid ""
"A second use case is to connect a mobile device to {box_name} while "
@@ -5855,63 +5955,68 @@ msgid ""
"securely relayed through {box_name}."
msgstr ""
-#: plinth/modules/wireguard/forms.py:47
+#: plinth/modules/wireguard/__init__.py:52
+#: plinth/modules/wireguard/manifest.py:14
+msgid "WireGuard"
+msgstr ""
+
+#: plinth/modules/wireguard/forms.py:32
#, fuzzy
#| msgid "Invalid hostname"
msgid "Invalid key."
msgstr "અમાન્ય હોસ્ટનું નામ"
-#: plinth/modules/wireguard/forms.py:76
-#: plinth/modules/wireguard/templates/wireguard.html:32
-#: plinth/modules/wireguard/templates/wireguard.html:89
-#: plinth/modules/wireguard/templates/wireguard_delete_server.html:38
+#: plinth/modules/wireguard/forms.py:61
+#: plinth/modules/wireguard/templates/wireguard.html:17
+#: plinth/modules/wireguard/templates/wireguard.html:74
+#: plinth/modules/wireguard/templates/wireguard_delete_server.html:23
msgid "Public Key"
msgstr ""
-#: plinth/modules/wireguard/forms.py:77
+#: plinth/modules/wireguard/forms.py:62
msgid ""
"Public key of the peer. Example: "
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs= ."
msgstr ""
-#: plinth/modules/wireguard/forms.py:85
+#: plinth/modules/wireguard/forms.py:70
msgid "Endpoint of the server"
msgstr ""
-#: plinth/modules/wireguard/forms.py:86
+#: plinth/modules/wireguard/forms.py:71
msgid ""
"Domain name and port in the form \"ip:port\". Example: demo.wireguard."
"com:12912 ."
msgstr ""
-#: plinth/modules/wireguard/forms.py:91
+#: plinth/modules/wireguard/forms.py:76
msgid "Public key of the server"
msgstr ""
-#: plinth/modules/wireguard/forms.py:92
+#: plinth/modules/wireguard/forms.py:77
msgid ""
"Provided by the server operator, a long string of characters. Example: "
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs= ."
msgstr ""
-#: plinth/modules/wireguard/forms.py:97
+#: plinth/modules/wireguard/forms.py:82
#, fuzzy
#| msgid "A list of IP addresses, separated by space"
msgid "Client IP address provided by server"
msgstr "જગ્યા થી અલગ પાડેલ IP સરનામાઓ ની યાદી"
-#: plinth/modules/wireguard/forms.py:98
+#: plinth/modules/wireguard/forms.py:83
msgid ""
"IP address assigned to this machine on the VPN after connecting to the "
"endpoint. This value is usually provided by the server operator. Example: "
"192.168.0.10."
msgstr ""
-#: plinth/modules/wireguard/forms.py:104
+#: plinth/modules/wireguard/forms.py:89
msgid "Private key of this machine"
msgstr ""
-#: plinth/modules/wireguard/forms.py:105
+#: plinth/modules/wireguard/forms.py:90
msgid ""
"Optional. New public/private keys are generated if left blank. Public key "
"can then be provided to the server. This is the recommended way. However, "
@@ -5919,165 +6024,165 @@ msgid ""
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs= ."
msgstr ""
-#: plinth/modules/wireguard/forms.py:113
+#: plinth/modules/wireguard/forms.py:98
msgid "Pre-shared key"
msgstr ""
-#: plinth/modules/wireguard/forms.py:114
+#: plinth/modules/wireguard/forms.py:99
msgid ""
"Optional. A shared secret key provided by the server to add an additional "
"layer of security. Fill in only if provided. Example: "
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs=."
msgstr ""
-#: plinth/modules/wireguard/forms.py:120
+#: plinth/modules/wireguard/forms.py:105
msgid "Use this connection to send all outgoing traffic"
msgstr ""
-#: plinth/modules/wireguard/forms.py:122
+#: plinth/modules/wireguard/forms.py:107
msgid "Typically checked for a VPN service though which all traffic is sent."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:25
+#: plinth/modules/wireguard/templates/wireguard.html:10
#, fuzzy
#| msgid "Chat Server"
msgid "As a Server"
msgstr "ચેટ સર્વર"
-#: plinth/modules/wireguard/templates/wireguard.html:27
+#: plinth/modules/wireguard/templates/wireguard.html:12
msgid "Peers allowed to connect to this server:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:33
+#: plinth/modules/wireguard/templates/wireguard.html:18
msgid "Allowed IPs"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:34
-#: plinth/modules/wireguard/templates/wireguard.html:90
+#: plinth/modules/wireguard/templates/wireguard.html:19
+#: plinth/modules/wireguard/templates/wireguard.html:75
msgid "Last Connected Time"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:53
+#: plinth/modules/wireguard/templates/wireguard.html:38
#, python-format
msgid "No peers configured to connect to this %(box_name)s yet."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:62
+#: plinth/modules/wireguard/templates/wireguard.html:47
#, python-format
msgid "Public key for this %(box_name)s:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:68
+#: plinth/modules/wireguard/templates/wireguard.html:53
msgid "Not configured yet."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:72
+#: plinth/modules/wireguard/templates/wireguard.html:57
msgid "Add a new peer"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:76
-#: plinth/modules/wireguard/views.py:69
+#: plinth/modules/wireguard/templates/wireguard.html:61
+#: plinth/modules/wireguard/views.py:51
msgid "Add Allowed Client"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:79
+#: plinth/modules/wireguard/templates/wireguard.html:64
msgid "As a Client"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:81
+#: plinth/modules/wireguard/templates/wireguard.html:66
#, python-format
msgid "Servers that %(box_name)s will connect to:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:88
-#: plinth/modules/wireguard/templates/wireguard_delete_server.html:34
+#: plinth/modules/wireguard/templates/wireguard.html:73
+#: plinth/modules/wireguard/templates/wireguard_delete_server.html:19
msgid "Endpoint"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:111
+#: plinth/modules/wireguard/templates/wireguard.html:96
msgid "No connections to remote servers are configured yet."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:119
+#: plinth/modules/wireguard/templates/wireguard.html:104
msgid "Add a new server"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:123
-#: plinth/modules/wireguard/views.py:178
+#: plinth/modules/wireguard/templates/wireguard.html:108
+#: plinth/modules/wireguard/views.py:160
msgid "Add Connection to Server"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_add_client.html:34
+#: plinth/modules/wireguard/templates/wireguard_add_client.html:19
msgid "Add Client"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_delete_client.html:29
+#: plinth/modules/wireguard/templates/wireguard_delete_client.html:14
msgid "Are you sure that you want to delete this client?"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_delete_server.html:29
+#: plinth/modules/wireguard/templates/wireguard_delete_server.html:14
msgid "Are you sure that you want to delete this server?"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_edit_client.html:34
+#: plinth/modules/wireguard/templates/wireguard_edit_client.html:19
#, fuzzy
#| msgid "Update setup"
msgid "Update Client"
msgstr "સેટઅપ અપડેટ કરો"
-#: plinth/modules/wireguard/templates/wireguard_edit_server.html:34
+#: plinth/modules/wireguard/templates/wireguard_edit_server.html:19
#, fuzzy
#| msgid "Conversations"
msgid "Update Connection"
msgstr "વાતચીત"
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:27
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:12
#, python-format
msgid ""
"%(box_name)s will allow this client to connect to it. Ensure that the client "
"is configured with the following information."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:35
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:20
msgid "Client public key:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:39
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:24
msgid "IP address to use for client:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:43
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:46
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:28
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:31
msgid "Pre-shared key:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:47
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:32
#, fuzzy
#| msgid "Server Administration"
msgid "Server endpoints:"
msgstr "સર્વર સંચાલન"
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:55
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:42
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:40
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:27
msgid "Server public key:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:65
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:64
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:50
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:49
msgid "Data transmitted:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:69
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:68
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:54
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:53
msgid "Data received:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:73
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:72
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:58
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:57
msgid "Latest handshake:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:29
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:14
#, python-format
msgid ""
"%(box_name)s will attempt to reach a WireGuard server with the following "
@@ -6085,145 +6190,145 @@ msgid ""
"public key and IP address."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:38
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:23
#, fuzzy
#| msgid "Server Administration"
msgid "Server endpoint:"
msgstr "સર્વર સંચાલન"
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:50
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:35
msgid "Public key of this machine:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:54
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:39
msgid "IP address of this machine:"
msgstr ""
-#: plinth/modules/wireguard/views.py:64
+#: plinth/modules/wireguard/views.py:46
msgid "Added new client."
msgstr ""
-#: plinth/modules/wireguard/views.py:79 plinth/modules/wireguard/views.py:138
+#: plinth/modules/wireguard/views.py:61 plinth/modules/wireguard/views.py:120
msgid "Client with public key already exists"
msgstr ""
-#: plinth/modules/wireguard/views.py:92
+#: plinth/modules/wireguard/views.py:74
msgid "Allowed Client"
msgstr ""
-#: plinth/modules/wireguard/views.py:114
+#: plinth/modules/wireguard/views.py:96
#, fuzzy
#| msgid "Update setup"
msgid "Updated client."
msgstr "સેટઅપ અપડેટ કરો"
-#: plinth/modules/wireguard/views.py:119
+#: plinth/modules/wireguard/views.py:101
msgid "Modify Client"
msgstr ""
-#: plinth/modules/wireguard/views.py:152
+#: plinth/modules/wireguard/views.py:134
msgid "Delete Allowed Client"
msgstr ""
-#: plinth/modules/wireguard/views.py:161
+#: plinth/modules/wireguard/views.py:143
msgid "Client deleted."
msgstr ""
-#: plinth/modules/wireguard/views.py:163
+#: plinth/modules/wireguard/views.py:145
msgid "Client not found"
msgstr ""
-#: plinth/modules/wireguard/views.py:173
+#: plinth/modules/wireguard/views.py:155
msgid "Added new server."
msgstr ""
-#: plinth/modules/wireguard/views.py:194
+#: plinth/modules/wireguard/views.py:176
#, fuzzy
#| msgid "Conversations"
msgid "Connection to Server"
msgstr "વાતચીત"
-#: plinth/modules/wireguard/views.py:212
+#: plinth/modules/wireguard/views.py:194
#, fuzzy
#| msgid "Update setup"
msgid "Updated server."
msgstr "સેટઅપ અપડેટ કરો"
-#: plinth/modules/wireguard/views.py:217
+#: plinth/modules/wireguard/views.py:199
#, fuzzy
#| msgid "Error installing application: {error}"
msgid "Modify Connection to Server"
msgstr "એપ્લીકેશન પ્રસ્થાપિત કરતાં ભૂલ થઇ છે: {error}"
-#: plinth/modules/wireguard/views.py:254
+#: plinth/modules/wireguard/views.py:236
#, fuzzy
#| msgid "Direct connection to the Internet."
msgid "Delete Connection to Server"
msgstr "ઇન્ટરનેટ સાથે સીધો જોડાણ."
-#: plinth/modules/wireguard/views.py:274
+#: plinth/modules/wireguard/views.py:256
msgid "Server deleted."
msgstr ""
-#: plinth/network.py:42
+#: plinth/network.py:27
msgid "PPPoE"
msgstr ""
-#: plinth/network.py:43
+#: plinth/network.py:28
msgid "Generic"
msgstr ""
-#: plinth/package.py:137
+#: plinth/package.py:122
msgid "Error during installation"
msgstr ""
-#: plinth/package.py:159
+#: plinth/package.py:144
msgid "installing"
msgstr ""
-#: plinth/package.py:161
+#: plinth/package.py:146
msgid "downloading"
msgstr ""
-#: plinth/package.py:163
+#: plinth/package.py:148
msgid "media change"
msgstr ""
-#: plinth/package.py:165
+#: plinth/package.py:150
#, python-brace-format
msgid "configuration file: {file}"
msgstr ""
-#: plinth/templates/403.html:25
+#: plinth/templates/403.html:10
msgid "403 Forbidden"
msgstr ""
-#: plinth/templates/403.html:29
+#: plinth/templates/403.html:14
#, python-format
msgid "You don't have permission to access %(request_path)s on this server."
msgstr ""
-#: plinth/templates/404.html:25
+#: plinth/templates/404.html:10
msgid "404"
msgstr ""
-#: plinth/templates/404.html:28
+#: plinth/templates/404.html:13
#, python-format
msgid "Requested page %(request_path)s was not found."
msgstr ""
-#: plinth/templates/404.html:34
+#: plinth/templates/404.html:19
msgid ""
"If you believe this missing page should exist, please file a bug at the "
"FreedomBox Service (Plinth) project issue tracker."
msgstr ""
-#: plinth/templates/500.html:25
+#: plinth/templates/500.html:10
msgid "500"
msgstr ""
-#: plinth/templates/500.html:29
+#: plinth/templates/500.html:14
#, python-format
msgid ""
"This is an internal error and not something you caused or can fix. Please "
@@ -6232,139 +6337,139 @@ msgid ""
"href=\"%(status_log_url)s\">status log to the bug report."
msgstr ""
-#: plinth/templates/app.html:47
+#: plinth/templates/app-header.html:22
+msgid "Installation"
+msgstr ""
+
+#: plinth/templates/app.html:32
#, python-format
msgid "Service %(service_name)s is running."
msgstr ""
-#: plinth/templates/app.html:52
+#: plinth/templates/app.html:37
#, python-format
msgid "Service %(service_name)s is not running."
msgstr ""
-#: plinth/templates/base.html:50
+#: plinth/templates/base.html:35
#, python-format
msgid "Core functionality and web interface for %(box_name)s"
msgstr ""
-#: plinth/templates/base.html:96
+#: plinth/templates/base.html:81
msgid "Toggle navigation"
msgstr ""
-#: plinth/templates/base.html:120 plinth/templates/base.html:123
+#: plinth/templates/base.html:105 plinth/templates/base.html:108
msgid "Home"
msgstr ""
-#: plinth/templates/base.html:128 plinth/templates/base.html:132
+#: plinth/templates/base.html:113 plinth/templates/base.html:117
msgid "Apps"
msgstr ""
-#: plinth/templates/base.html:137 plinth/templates/base.html:141
+#: plinth/templates/base.html:122 plinth/templates/base.html:126
msgid "System"
msgstr ""
-#: plinth/templates/base.html:173 plinth/templates/base.html:174
+#: plinth/templates/base.html:158 plinth/templates/base.html:159
msgid "Change password"
msgstr ""
-#: plinth/templates/base.html:181 plinth/templates/base.html:182
+#: plinth/templates/base.html:166 plinth/templates/base.html:167
msgid "Restart"
msgstr ""
-#: plinth/templates/base.html:187 plinth/templates/base.html:188
+#: plinth/templates/base.html:172 plinth/templates/base.html:173
msgid "Shut down"
msgstr ""
-#: plinth/templates/base.html:195 plinth/templates/base.html:196
-#: plinth/templates/base.html:220 plinth/templates/base.html:222
+#: plinth/templates/base.html:180 plinth/templates/base.html:181
+#: plinth/templates/base.html:205 plinth/templates/base.html:207
msgid "Log out"
msgstr ""
-#: plinth/templates/base.html:204 plinth/templates/base.html:207
+#: plinth/templates/base.html:189 plinth/templates/base.html:192
#, fuzzy
#| msgid "Language"
msgid "Select language"
msgstr "ભાષા"
-#: plinth/templates/base.html:212 plinth/templates/base.html:214
+#: plinth/templates/base.html:197 plinth/templates/base.html:199
msgid "Log in"
msgstr ""
-#: plinth/templates/clients.html:32
+#: plinth/templates/clients.html:17
msgid "Web"
msgstr ""
-#: plinth/templates/clients.html:57
+#: plinth/templates/clients.html:42
msgid "Desktop"
msgstr ""
-#: plinth/templates/clients.html:68
+#: plinth/templates/clients.html:53
msgid "GNU/Linux"
msgstr ""
-#: plinth/templates/clients.html:70
+#: plinth/templates/clients.html:55
msgid "Windows"
msgstr ""
-#: plinth/templates/clients.html:72
+#: plinth/templates/clients.html:57
msgid "macOS"
msgstr ""
-#: plinth/templates/clients.html:88
+#: plinth/templates/clients.html:73
msgid "Mobile"
msgstr ""
-#: plinth/templates/clients.html:99
+#: plinth/templates/clients.html:84
msgid "Play Store"
msgstr ""
-#: plinth/templates/clients.html:101
+#: plinth/templates/clients.html:86
msgid "F-Droid"
msgstr ""
-#: plinth/templates/clients.html:103
+#: plinth/templates/clients.html:88
msgid "App Store"
msgstr ""
-#: plinth/templates/clients.html:119
+#: plinth/templates/clients.html:104
msgid "Package"
msgstr ""
-#: plinth/templates/clients.html:126
+#: plinth/templates/clients.html:111
msgid "Debian:"
msgstr ""
-#: plinth/templates/clients.html:129
+#: plinth/templates/clients.html:114
msgid "Homebrew:"
msgstr ""
-#: plinth/templates/clients.html:132
+#: plinth/templates/clients.html:117
msgid "RPM:"
msgstr ""
-#: plinth/templates/first_setup.html:39
+#: plinth/templates/first_setup.html:24
#, python-format
msgid ""
"Please wait for %(box_name)s to finish installation. You can start using "
"your %(box_name)s once it is done."
msgstr ""
-#: plinth/templates/header.html:36
-msgid "Installation"
-msgstr ""
-
-#: plinth/templates/index.html:37
+#: plinth/templates/index.html:22
#, python-format
msgid ""
"Enable some applications to add shortcuts to "
"this page."
msgstr ""
-#: plinth/templates/index.html:59
+#: plinth/templates/index.html:44
msgid "Configure »"
msgstr ""
-#: plinth/templates/index.html:115
+#: plinth/templates/index.html:100
#, python-format
msgid ""
"%(box_name)s, a Debian pure blend, is a 100%% free software self-hosting web "
@@ -6372,7 +6477,7 @@ msgid ""
"communication tools respecting your privacy and data ownership."
msgstr ""
-#: plinth/templates/index.html:124
+#: plinth/templates/index.html:109
#, python-format
msgid ""
"This portal is a part of the %(box_name)s web interface. %(box_name)s is "
@@ -6380,59 +6485,59 @@ msgid ""
"Version 3 or later."
msgstr ""
-#: plinth/templates/index.html:144
+#: plinth/templates/index.html:129
msgid "Homepage"
msgstr ""
-#: plinth/templates/index.html:147
+#: plinth/templates/index.html:132
msgid "Source Code"
msgstr ""
-#: plinth/templates/index.html:150
+#: plinth/templates/index.html:135
msgid "Donate"
msgstr ""
-#: plinth/templates/index.html:154
+#: plinth/templates/index.html:139
msgid "FreedomBox Foundation"
msgstr ""
-#: plinth/templates/index.html:161
+#: plinth/templates/index.html:146
msgid "IRC Chatroom"
msgstr ""
-#: plinth/templates/index.html:166
+#: plinth/templates/index.html:151
msgid "Mailing list"
msgstr ""
-#: plinth/templates/internal-zone.html:26
+#: plinth/templates/internal-zone.html:11
#, python-format
msgid "%(service_name)s is available only on internal networks."
msgstr ""
-#: plinth/templates/internal-zone.html:32
+#: plinth/templates/internal-zone.html:17
msgid "Currently there are no network interfaces configured as internal."
msgstr ""
-#: plinth/templates/internal-zone.html:34
+#: plinth/templates/internal-zone.html:19
#, python-format
msgid ""
"Currently the following network interfaces are configured as internal: "
"%(interface_list)s"
msgstr ""
-#: plinth/templates/notifications-dropdown.html:26
+#: plinth/templates/notifications-dropdown.html:11
#, fuzzy
#| msgid "Configuration"
msgid "Notifications"
msgstr "રૂપરેખાંકન"
-#: plinth/templates/port-forwarding-info.html:23
+#: plinth/templates/port-forwarding-info.html:8
#, fuzzy
#| msgid "Enable forwarding"
msgid "Port Forwarding"
msgstr "રવાના કરવાની પ્રક્રિયા શરુ કરો"
-#: plinth/templates/port-forwarding-info.html:26
+#: plinth/templates/port-forwarding-info.html:11
#, python-format
msgid ""
"If your FreedomBox is behind a router, you will need to set up port "
@@ -6440,65 +6545,65 @@ msgid ""
"%(service_name)s:"
msgstr ""
-#: plinth/templates/setup.html:51
+#: plinth/templates/setup.html:36
msgid "Install this application?"
msgstr ""
-#: plinth/templates/setup.html:55
+#: plinth/templates/setup.html:40
msgid "This application needs an update. Update now?"
msgstr ""
-#: plinth/templates/setup.html:66
+#: plinth/templates/setup.html:51
msgid ""
"Another installation or upgrade is already running. Please wait for a few "
"moments before trying again."
msgstr ""
-#: plinth/templates/setup.html:73
+#: plinth/templates/setup.html:58
msgid "This application is currently not available in your distribution."
msgstr ""
-#: plinth/templates/setup.html:87
+#: plinth/templates/setup.html:72
msgid "Install"
msgstr ""
-#: plinth/templates/setup.html:98
+#: plinth/templates/setup.html:83
msgid "Performing pre-install operation"
msgstr ""
-#: plinth/templates/setup.html:102
+#: plinth/templates/setup.html:87
msgid "Performing post-install operation"
msgstr ""
-#: plinth/templates/setup.html:107
+#: plinth/templates/setup.html:92
#, python-format
msgid "Installing %(package_names)s: %(status)s"
msgstr ""
-#: plinth/templates/setup.html:117
+#: plinth/templates/setup.html:102
#, python-format
msgid "%(percentage)s%% complete"
msgstr ""
-#: plinth/templates/toolbar.html:38
+#: plinth/templates/toolbar.html:23
msgid "Launch web client"
msgstr "વેબ ક્લાયન્ટ શરૂ કરો"
-#: plinth/templates/toolbar.html:47
+#: plinth/templates/toolbar.html:32
#, fuzzy
#| msgid "BitTorrent Web Client"
msgid "Client Apps"
msgstr "બીટ ટોરેન્ટ વેબ ક્લાયન્ટ"
-#: plinth/views.py:179
+#: plinth/views.py:189
msgid "Application enabled"
msgstr "એપ્લિકેશન સક્ષમ કરો"
-#: plinth/views.py:182
+#: plinth/views.py:192
msgid "Application disabled"
msgstr "એપ્લિકેશન અક્ષમ છે"
-#: plinth/web_framework.py:190
+#: plinth/web_framework.py:107
msgid "Gujarati"
msgstr ""
diff --git a/plinth/locale/hi/LC_MESSAGES/django.po b/plinth/locale/hi/LC_MESSAGES/django.po
index 7398cc1ce..6c5be51c2 100644
--- a/plinth/locale/hi/LC_MESSAGES/django.po
+++ b/plinth/locale/hi/LC_MESSAGES/django.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2020-02-14 21:26+0200\n"
+"POT-Creation-Date: 2020-02-24 19:12-0500\n"
"PO-Revision-Date: 2018-08-09 20:39+0000\n"
"Last-Translator: Gayathri Das This means that devices on the Internet can reach you when you are " +"connected to the Internet. Every time you connect to the Internet with your " +"Internet Service Provider (ISP), you may get a different IP address, " +"especially after some offline time. Many ISPs offer this type of " +"connectivity. If you have a public IP address but are unsure if it changes " +"over time or not, it is safer to choose this option.
" +msgstr "" + #: plinth/modules/networks/forms.py:313 +#, python-brace-format +msgid "" +"I have a public IP address that does not change overtime (recommended)This means that devices on the Internet can reach you " +"when you are connected to the Internet. Every time you connect to the " +"Internet with your Internet Service Provider (ISP), you always get the same " +"IP address. This is the most trouble-free setup for many {box_name} services " +"but very few ISPs offer this. You may be able to get this service from your " +"ISP by making an additional payment.
" +msgstr "" + +#: plinth/modules/networks/forms.py:326 +#, python-brace-format +msgid "" +"I dont have a public IP addressThis means that " +"devices on the Internet can not reach you when you are connected to " +"the Internet. Every time you connect to the Internet with your Internet " +"Service Provider (ISP), you get an IP address that is only relevant for " +"local networks. Many ISPs offer this type of connectivity. This is the most " +"troublesome situation for hosting services at home. {box_name} provides many " +"workaround solutions but each solution has some limitations.
" +msgstr "" + +#: plinth/modules/networks/forms.py:351 #, fuzzy #| msgid "An error occurred during configuration." msgid "Preferred router configuration" msgstr "कॉंफ़िगरेशन के दौरान कूछ त्रुटि हुई." -#: plinth/modules/networks/forms.py:318 +#: plinth/modules/networks/forms.py:356 #, python-brace-format msgid "" -"Use DMZ feature to forward all trafficMost routers " -"provide a configuration setting called DMZ. This will allow the router to " -"forward all incoming traffic from the internet to a single IP address such " -"as the {box_name}'s address. First remember to configure a static local IP " -"address for your {box_name} in your router's configuration.
" +"Use DMZ feature to forward all traffic (recommended)Most routers provide a configuration setting called DMZ. This will allow " +"the router to forward all incoming traffic from the Internet to a single IP " +"address such as the {box_name}'s IP address. First remember to configure a " +"static local IP address for your {box_name} in your router's configuration." +"p>" msgstr "" -#: plinth/modules/networks/forms.py:332 +#: plinth/modules/networks/forms.py:368 #, python-brace-format msgid "" -"Forward Specific Traffic as needed by each application
You may alternatively choose to forward only specific traffic to your " "{box_name}. This is ideal if you have other servers like {box_name} in your " "network or if your router does not support DMZ feature. All applications " @@ -3505,264 +3576,270 @@ msgid "" "to be forwarded for that application to work.
" msgstr "" -#: plinth/modules/networks/forms.py:349 +#: plinth/modules/networks/forms.py:382 msgid "" -"Router is currently unconfiguredChoose this if you " +"Router is currently unconfigured
Choose this if you " "have not configured or are unable to configure the router currently and wish " "to be reminded later. Some of the other configuration steps may fail.
" msgstr "" -#: plinth/modules/networks/networks.py:43 +#: plinth/modules/networks/networks.py:32 msgid "Network Connections" msgstr "नेटवर्क कनेक्शन्स" -#: plinth/modules/networks/networks.py:59 +#: plinth/modules/networks/networks.py:46 msgid "Cannot show connection: Connection not found." msgstr "कनेक्शन नहीं दिखा सकता: कनेक्शन से नहीं मिला." -#: plinth/modules/networks/networks.py:94 +#: plinth/modules/networks/networks.py:81 msgid "Connection Information" msgstr "कनेक्शन के बारे में जानकारी" -#: plinth/modules/networks/networks.py:108 +#: plinth/modules/networks/networks.py:95 msgid "Cannot edit connection: Connection not found." msgstr "कनेक्शन नहीं संपादित कर सकता: कनेक्शन से नहीं मिला." -#: plinth/modules/networks/networks.py:114 +#: plinth/modules/networks/networks.py:101 msgid "This type of connection is not yet understood." msgstr "इस प्रकार का कनेक्शन अभी समझ में नहीं आता." -#: plinth/modules/networks/networks.py:136 -#: plinth/modules/networks/networks.py:220 -#: plinth/modules/networks/templates/connections_edit.html:35 +#: plinth/modules/networks/networks.py:123 +#: plinth/modules/networks/networks.py:207 +#: plinth/modules/networks/templates/connections_edit.html:20 msgid "Edit Connection" msgstr "कनेक्शन संपादित करें" -#: plinth/modules/networks/networks.py:232 +#: plinth/modules/networks/networks.py:219 #, python-brace-format msgid "Activated connection {name}." msgstr "कनेक्शन सक्रिय है {name}." -#: plinth/modules/networks/networks.py:236 +#: plinth/modules/networks/networks.py:223 msgid "Failed to activate connection: Connection not found." msgstr "कनेक्शन सक्रिय करने में विफल: कनेक्शन नहीं मिला." -#: plinth/modules/networks/networks.py:242 +#: plinth/modules/networks/networks.py:229 #, python-brace-format msgid "Failed to activate connection {name}: No suitable device is available." msgstr "कनेक्शन सक्रिय करने में विफल {name}: कोई उपयुक्त डिवाइस उपलब्ध नहीं है." -#: plinth/modules/networks/networks.py:255 +#: plinth/modules/networks/networks.py:242 #, python-brace-format msgid "Deactivated connection {name}." msgstr "निष्क्रिय कनेक्शन {name}." -#: plinth/modules/networks/networks.py:259 +#: plinth/modules/networks/networks.py:246 msgid "Failed to de-activate connection: Connection not found." msgstr "कनेक्शन को निष्क्रिय करने में विफल: कनेक्शन नहीं मिला." -#: plinth/modules/networks/networks.py:269 -#: plinth/modules/networks/templates/connections_list.html:62 -#: plinth/modules/networks/templates/connections_list.html:64 +#: plinth/modules/networks/networks.py:256 +#: plinth/modules/networks/templates/connections_list.html:12 +#: plinth/modules/networks/templates/connections_list.html:14 msgid "Nearby Wi-Fi Networks" msgstr "पास के वाई-फाई नेटवर्क" -#: plinth/modules/networks/networks.py:293 -#: plinth/modules/networks/templates/connections_list.html:67 -#: plinth/modules/networks/templates/connections_list.html:69 -#: plinth/modules/wireguard/templates/wireguard_add_server.html:34 +#: plinth/modules/networks/networks.py:280 +#: plinth/modules/networks/templates/connections_list.html:17 +#: plinth/modules/networks/templates/connections_list.html:19 +#: plinth/modules/wireguard/templates/wireguard_add_server.html:19 msgid "Add Connection" msgstr "कनेक्शन जोड़ें" -#: plinth/modules/networks/networks.py:311 +#: plinth/modules/networks/networks.py:298 msgid "Adding New Generic Connection" msgstr "नया जेनेरिक कनेक्शन जोड़ रहा है" -#: plinth/modules/networks/networks.py:329 +#: plinth/modules/networks/networks.py:316 msgid "Adding New Ethernet Connection" msgstr "नया ईथरनेट कनेक्शन जोड़ रहा है" -#: plinth/modules/networks/networks.py:347 +#: plinth/modules/networks/networks.py:334 msgid "Adding New PPPoE Connection" msgstr "नया PPPoE कनेक्शन जोड़ रहा है" -#: plinth/modules/networks/networks.py:382 +#: plinth/modules/networks/networks.py:369 msgid "Adding New Wi-Fi Connection" msgstr "नया वाई-फाई कनेक्शन जोड़ रहा है" -#: plinth/modules/networks/networks.py:397 +#: plinth/modules/networks/networks.py:384 #, python-brace-format msgid "Connection {name} deleted." msgstr "कनेक्शन {name} हटाया गया." -#: plinth/modules/networks/networks.py:401 -#: plinth/modules/networks/networks.py:411 +#: plinth/modules/networks/networks.py:388 +#: plinth/modules/networks/networks.py:398 msgid "Failed to delete connection: Connection not found." msgstr "कनेक्शन हटाने में विफल: कनेक्शन नहीं मिला." -#: plinth/modules/networks/networks.py:416 -#: plinth/modules/networks/templates/connections_delete.html:26 +#: plinth/modules/networks/networks.py:403 +#: plinth/modules/networks/templates/connections_delete.html:11 msgid "Delete Connection" msgstr "कनेक्शन हटाएँ" -#: plinth/modules/networks/networks.py:442 +#: plinth/modules/networks/networks.py:428 #, fuzzy #| msgid "Tor configuration is being updated" msgid "Router configuration type saved." msgstr "टोर कॉन्फ़िगरेशन अपडेट किया जा रहा है" -#: plinth/modules/networks/templates/connection_show.html:43 +#: plinth/modules/networks/networks.py:474 +#, fuzzy +#| msgid "Tor configuration is being updated" +msgid "Internet connection type saved." +msgstr "टोर कॉन्फ़िगरेशन अपडेट किया जा रहा है" + +#: plinth/modules/networks/templates/connection_show.html:28 msgid "Edit connection" msgstr "कनेक्शन संपादित करें" -#: plinth/modules/networks/templates/connection_show.html:43 -#: plinth/modules/wireguard/templates/wireguard_show_client.html:83 -#: plinth/modules/wireguard/templates/wireguard_show_server.html:84 -#: plinth/templates/base.html:167 plinth/templates/base.html:168 +#: plinth/modules/networks/templates/connection_show.html:28 +#: plinth/modules/wireguard/templates/wireguard_show_client.html:68 +#: plinth/modules/wireguard/templates/wireguard_show_server.html:69 +#: plinth/templates/base.html:152 plinth/templates/base.html:153 msgid "Edit" msgstr "संपादन" -#: plinth/modules/networks/templates/connection_show.html:50 -#: plinth/modules/networks/templates/connections_list.html:90 +#: plinth/modules/networks/templates/connection_show.html:35 +#: plinth/modules/networks/templates/connections_list.html:40 msgid "Deactivate" msgstr "निष्क्रिय" -#: plinth/modules/networks/templates/connection_show.html:57 -#: plinth/modules/networks/templates/connections_list.html:98 +#: plinth/modules/networks/templates/connection_show.html:42 +#: plinth/modules/networks/templates/connections_list.html:48 msgid "Activate" msgstr "सक्रिय" -#: plinth/modules/networks/templates/connection_show.html:63 +#: plinth/modules/networks/templates/connection_show.html:48 msgid "Delete connection" msgstr "कनेक्शन हटाएँ" -#: plinth/modules/networks/templates/connection_show.html:66 -#: plinth/modules/networks/templates/connections_diagram.html:73 -#: plinth/modules/networks/templates/connections_diagram.html:76 -#: plinth/modules/networks/templates/connections_diagram.html:105 -#: plinth/modules/networks/templates/connections_diagram.html:127 +#: plinth/modules/networks/templates/connection_show.html:51 +#: plinth/modules/networks/templates/connections_diagram.html:58 +#: plinth/modules/networks/templates/connections_diagram.html:61 +#: plinth/modules/networks/templates/connections_diagram.html:90 +#: plinth/modules/networks/templates/connections_diagram.html:112 msgid "Connection" msgstr "कनेक्शन" -#: plinth/modules/networks/templates/connection_show.html:71 +#: plinth/modules/networks/templates/connection_show.html:56 msgid "Primary connection" msgstr "मुख्य कनेक्शन" -#: plinth/modules/networks/templates/connection_show.html:73 -#: plinth/modules/networks/templates/connection_show.html:217 -#: plinth/modules/networks/templates/connection_show.html:256 +#: plinth/modules/networks/templates/connection_show.html:58 +#: plinth/modules/networks/templates/connection_show.html:202 +#: plinth/modules/networks/templates/connection_show.html:241 msgid "yes" msgstr "हाँ" -#: plinth/modules/networks/templates/connection_show.html:84 -#: plinth/modules/storage/templates/storage.html:40 +#: plinth/modules/networks/templates/connection_show.html:69 +#: plinth/modules/storage/templates/storage.html:25 msgid "Device" msgstr "यंत्र" -#: plinth/modules/networks/templates/connection_show.html:88 +#: plinth/modules/networks/templates/connection_show.html:73 msgid "State" msgstr "स्थिति" -#: plinth/modules/networks/templates/connection_show.html:93 +#: plinth/modules/networks/templates/connection_show.html:78 msgid "State reason" msgstr "कारण कहो" -#: plinth/modules/networks/templates/connection_show.html:102 +#: plinth/modules/networks/templates/connection_show.html:87 msgid "MAC address" msgstr "एमएेसी एड्रेस" -#: plinth/modules/networks/templates/connection_show.html:106 +#: plinth/modules/networks/templates/connection_show.html:91 msgid "Interface" msgstr "इंटरफ़ेस" -#: plinth/modules/networks/templates/connection_show.html:110 -#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:33 -#: plinth/modules/snapshot/templates/snapshot_manage.html:45 -#: plinth/modules/snapshot/templates/snapshot_rollback.html:41 +#: plinth/modules/networks/templates/connection_show.html:95 +#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:18 +#: plinth/modules/snapshot/templates/snapshot_manage.html:30 +#: plinth/modules/snapshot/templates/snapshot_rollback.html:26 msgid "Description" msgstr "विवरण" -#: plinth/modules/networks/templates/connection_show.html:116 +#: plinth/modules/networks/templates/connection_show.html:101 msgid "Physical Link" msgstr "फिजिकल लिंक" -#: plinth/modules/networks/templates/connection_show.html:121 +#: plinth/modules/networks/templates/connection_show.html:106 msgid "Link state" msgstr "लिंक स्ट्टेट" -#: plinth/modules/networks/templates/connection_show.html:125 +#: plinth/modules/networks/templates/connection_show.html:110 msgid "cable is connected" msgstr "केबल कनेक्ट हो गया" -#: plinth/modules/networks/templates/connection_show.html:128 +#: plinth/modules/networks/templates/connection_show.html:113 msgid "please check cable" msgstr "केबल चेक करें" -#: plinth/modules/networks/templates/connection_show.html:133 -#: plinth/modules/networks/templates/connection_show.html:149 +#: plinth/modules/networks/templates/connection_show.html:118 +#: plinth/modules/networks/templates/connection_show.html:134 msgid "Speed" msgstr "स्पीड" -#: plinth/modules/networks/templates/connection_show.html:135 +#: plinth/modules/networks/templates/connection_show.html:120 #, python-format msgid "%(ethernet_speed)s Mbit/s" msgstr "%(ethernet_speed)s एमबीट/एस" -#: plinth/modules/networks/templates/connection_show.html:151 +#: plinth/modules/networks/templates/connection_show.html:136 #, python-format msgid "%(wireless_bitrate)s Mbit/s" msgstr "%(wireless_bitrate)s एमबीट/एस" -#: plinth/modules/networks/templates/connection_show.html:163 +#: plinth/modules/networks/templates/connection_show.html:148 msgid "Signal strength" msgstr "सिग्नल क्षमती" -#: plinth/modules/networks/templates/connection_show.html:181 +#: plinth/modules/networks/templates/connection_show.html:166 msgid "IPv4" msgstr "आईपीवी4" -#: plinth/modules/networks/templates/connection_show.html:186 -#: plinth/modules/networks/templates/connection_show.html:227 -#: plinth/modules/shadowsocks/forms.py:64 +#: plinth/modules/networks/templates/connection_show.html:171 +#: plinth/modules/networks/templates/connection_show.html:212 +#: plinth/modules/shadowsocks/forms.py:49 msgid "Method" msgstr "तरीका" -#: plinth/modules/networks/templates/connection_show.html:193 -#: plinth/modules/networks/templates/connection_show.html:234 +#: plinth/modules/networks/templates/connection_show.html:178 +#: plinth/modules/networks/templates/connection_show.html:219 msgid "IP address" msgstr "आइपी एेड्रैस" -#: plinth/modules/networks/templates/connection_show.html:209 -#: plinth/modules/networks/templates/connection_show.html:248 +#: plinth/modules/networks/templates/connection_show.html:194 +#: plinth/modules/networks/templates/connection_show.html:233 msgid "DNS server" msgstr "डीएनएस सर्वर" -#: plinth/modules/networks/templates/connection_show.html:216 -#: plinth/modules/networks/templates/connection_show.html:255 -#: plinth/modules/storage/forms.py:156 +#: plinth/modules/networks/templates/connection_show.html:201 +#: plinth/modules/networks/templates/connection_show.html:240 +#: plinth/modules/storage/forms.py:141 msgid "Default" msgstr "डिफ़ॉल्ट" -#: plinth/modules/networks/templates/connection_show.html:222 +#: plinth/modules/networks/templates/connection_show.html:207 msgid "IPv6" msgstr "आईपीवी6" -#: plinth/modules/networks/templates/connection_show.html:263 +#: plinth/modules/networks/templates/connection_show.html:248 msgid "This connection is not active." msgstr "यह कनेक्शन सक्रिय नहीं है." -#: plinth/modules/networks/templates/connection_show.html:266 -#: plinth/modules/security/__init__.py:38 plinth/modules/security/views.py:47 +#: plinth/modules/networks/templates/connection_show.html:251 +#: plinth/modules/security/__init__.py:45 msgid "Security" msgstr "सुरक्षा" -#: plinth/modules/networks/templates/connection_show.html:271 -#: plinth/modules/networks/templates/connection_show.html:291 -#: plinth/modules/networks/templates/connection_show.html:310 +#: plinth/modules/networks/templates/connection_show.html:256 +#: plinth/modules/networks/templates/connection_show.html:276 +#: plinth/modules/networks/templates/connection_show.html:295 msgid "Firewall zone" msgstr "फ़ायरवॉल ज़ोन" -#: plinth/modules/networks/templates/connection_show.html:280 +#: plinth/modules/networks/templates/connection_show.html:265 msgid "" "This interface should be connected to a local network/machine. If you " "connect this interface to a public network, services meant to be available " @@ -3772,7 +3849,7 @@ msgstr "" "नेटवर्क से कनेक्ट करते हैं, सिर्फ आंतरिक रूप से उपलब्ध होने सर्विसे बाहर से भी उपलब्ध हो " "जाएगा. यह एक सुरक्षा जोखिम है." -#: plinth/modules/networks/templates/connection_show.html:300 +#: plinth/modules/networks/templates/connection_show.html:285 msgid "" "This interface should receive your Internet connection. If you connect it to " "a local network/machine, many services meant to available only internally " @@ -3782,7 +3859,7 @@ msgstr "" "मशीन से कनेक्ट करते हैं, तो सिर्फ आंतरिक रूप से उपलब्ध होने वाली कई सर्विसस उपलब्ध नहीं " "होंगी." -#: plinth/modules/networks/templates/connection_show.html:319 +#: plinth/modules/networks/templates/connection_show.html:304 #, python-format msgid "" "This interface is not maintained by %(box_name)s. Its security status is " @@ -3794,114 +3871,139 @@ msgstr "" "जानता है. बहूत %(box_name)s के सर्विसस इस इंटरफ़ेस पर नहीं उपलब्ध हो सकती हैं । यह " "सिफ़ारिश की जाती है किआप इस कनेक्शन को निष्क्रिय करें या हटाएं और उसे री-कॉंफ़िगर करें." -#: plinth/modules/networks/templates/connections_create.html:34 +#: plinth/modules/networks/templates/connections_create.html:19 msgid "Create Connection" msgstr "कनेक्शन बनाएँ" -#: plinth/modules/networks/templates/connections_delete.html:29 +#: plinth/modules/networks/templates/connections_delete.html:14 #, python-format msgid "Delete connection %(name)s permanently?" msgstr "कनेक्शन %(name)s स्थाई रूप से हटाएं?" -#: plinth/modules/networks/templates/connections_diagram.html:65 +#: plinth/modules/networks/templates/connections_diagram.html:50 msgid "Internet" msgstr "इंटरनेट" -#: plinth/modules/networks/templates/connections_diagram.html:70 -#: plinth/modules/networks/templates/connections_diagram.html:102 +#: plinth/modules/networks/templates/connections_diagram.html:55 +#: plinth/modules/networks/templates/connections_diagram.html:87 msgid "Spacing" msgstr "स्पेसिंग" -#: plinth/modules/networks/templates/connections_diagram.html:83 -#: plinth/modules/networks/templates/connections_diagram.html:113 -#: plinth/network.py:40 +#: plinth/modules/networks/templates/connections_diagram.html:68 +#: plinth/modules/networks/templates/connections_diagram.html:98 +#: plinth/network.py:25 msgid "Ethernet" msgstr "इथरनेट" -#: plinth/modules/networks/templates/connections_diagram.html:86 -#: plinth/modules/networks/templates/connections_diagram.html:116 -#: plinth/network.py:41 +#: plinth/modules/networks/templates/connections_diagram.html:71 +#: plinth/modules/networks/templates/connections_diagram.html:101 +#: plinth/network.py:26 msgid "Wi-Fi" msgstr "वाई-फ़ाई" -#: plinth/modules/networks/templates/connections_diagram.html:89 +#: plinth/modules/networks/templates/connections_diagram.html:74 #, python-format msgid "Show connection %(connection.name)s" msgstr "कनेक्शन दिखाइये %(connection.name)s" -#: plinth/modules/networks/templates/connections_diagram.html:119 +#: plinth/modules/networks/templates/connections_diagram.html:104 #, python-format msgid "Show connection %(name)s" msgstr "कनेक्शन दिखाइये %(name)s" -#: plinth/modules/networks/templates/connections_diagram.html:131 +#: plinth/modules/networks/templates/connections_diagram.html:116 msgid "Computer" msgstr "कंप्यूटर" -#: plinth/modules/networks/templates/connections_list.html:58 +#: plinth/modules/networks/templates/connections_list.html:8 #, fuzzy #| msgid "Connection" msgid "Connections" msgstr "कनेक्शन" -#: plinth/modules/networks/templates/connections_list.html:79 +#: plinth/modules/networks/templates/connections_list.html:29 #, python-format msgid "Delete connection %(name)s" msgstr "कनेक्शन हटाइये %(name)s" -#: plinth/modules/networks/templates/connections_list.html:104 +#: plinth/modules/networks/templates/connections_list.html:54 msgid "Active" msgstr "एक्टिव" -#: plinth/modules/networks/templates/connections_list.html:107 +#: plinth/modules/networks/templates/connections_list.html:57 msgid "Inactive" msgstr "इनएक्टिव" -#: plinth/modules/networks/templates/connections_list.html:124 -#, python-format -msgid "%(box_name)s Internet Connectivity" +#: plinth/modules/networks/templates/connections_type_select.html:19 +msgid "Create..." +msgstr "बनाएँ…" + +#: plinth/modules/networks/templates/internet_connectivity_content.html:10 +msgid "What Type Of Internet Connection Do You Have?" msgstr "" -#: plinth/modules/networks/templates/connections_list.html:129 -#, python-format +#: plinth/modules/networks/templates/internet_connectivity_content.html:16 msgid "" -"The following best describes how your %(box_name)s is connected in your " -"network. This information is used only to suggest necessary configuration " -"actions." +"Select an option that best describes the type of Internet connection. This " +"information is used only to guide you with further setup." msgstr "" -#: plinth/modules/networks/templates/connections_list.html:137 -#, python-format +#: plinth/modules/networks/templates/internet_connectivity_firstboot.html:18 +#: plinth/modules/networks/templates/router_configuration_firstboot.html:18 +msgid "Skip this step" +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_firstboot.html:19 +#: plinth/modules/networks/templates/router_configuration_firstboot.html:19 +msgid "Next" +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:9 +#, fuzzy +#| msgid "Connection Type" +msgid "Your Internet Connection Type" +msgstr "कनेक्शन टाइप" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:14 msgid "" -"Your %(box_name)s gets its internet from your Router via WiFi or Ethernet " -"cable. This is a typical home setup." +"The following best describes the type of Internet connection provided by " +"your ISP. This information is only used to suggest you necessary " +"configuration actions." msgstr "" -#: plinth/modules/networks/templates/connections_list.html:145 -#: plinth/modules/networks/templates/connections_list.html:147 +#: plinth/modules/networks/templates/internet_connectivity_main.html:23 +msgid "My ISP provides a public IP address that does not change over time." +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:27 +msgid "My ISP provides a public IP address that may change over time." +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:31 +msgid "My ISP does not provide a public IP address." +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:37 +#: plinth/modules/networks/templates/router_configuration_main.html:29 #, fuzzy #| msgid "Update" msgid "Update..." msgstr "अपडेट" -#: plinth/modules/networks/templates/connections_type_select.html:34 -msgid "Create..." -msgstr "बनाएँ…" - -#: plinth/modules/networks/templates/router_configuration_content.html:25 +#: plinth/modules/networks/templates/router_configuration_content.html:10 #, fuzzy, python-format #| msgid "%(box_name)s is up to date." msgid "Setup %(box_name)s Behind a Router" msgstr "%(box_name)s उद्दिनांकित है." -#: plinth/modules/networks/templates/router_configuration_content.html:31 +#: plinth/modules/networks/templates/router_configuration_content.html:16 #, python-format msgid "" "Your %(box_name)s gets its internet connection from your router via Wi-Fi or " "Ethernet cable. This is a typical home setup." msgstr "" -#: plinth/modules/networks/templates/router_configuration_content.html:38 +#: plinth/modules/networks/templates/router_configuration_content.html:23 #, python-format msgid "" "With this setup, any device on the internet trying to reach your " @@ -3910,24 +4012,24 @@ msgid "" "the services." msgstr "" -#: plinth/modules/networks/templates/router_configuration_content.html:47 +#: plinth/modules/networks/templates/router_configuration_content.html:32 msgid "" "If you don't have control over your router, choose not to configure it. To " -"see options, to overcome this limitation, choose 'no public address' option " +"see options to overcome this limitation, choose 'no public address' option " "in Internet connection type selection." msgstr "" -#: plinth/modules/networks/templates/router_configuration_content.html:54 +#: plinth/modules/networks/templates/router_configuration_content.html:39 msgid "Choose How You Wish to Configure Your Router" msgstr "" -#: plinth/modules/networks/templates/router_configuration_content.html:57 +#: plinth/modules/networks/templates/router_configuration_content.html:42 msgid "" "You will need to login to your router's administration console provided by " "the router. This may look like one of the following:" msgstr "" -#: plinth/modules/networks/templates/router_configuration_content.html:69 +#: plinth/modules/networks/templates/router_configuration_content.html:54 msgid "" "The username and password is configured by you when you first setup the " "router. For many routers, this information is printed at the back of the " @@ -3937,24 +4039,27 @@ msgid "" "full instructions on how to perform this task." msgstr "" -#: plinth/modules/networks/templates/router_configuration_firstboot.html:33 -msgid "skip this step" +#: plinth/modules/networks/templates/router_configuration_main.html:9 +#, python-format +msgid "%(box_name)s Internet Connectivity" msgstr "" -#: plinth/modules/networks/templates/router_configuration_firstboot.html:35 -msgid "Next" +#: plinth/modules/networks/templates/router_configuration_main.html:15 +#, python-format +msgid "" +"The following best describes how your %(box_name)s is connected in your " +"network. This information is used only to suggest necessary configuration " +"actions." msgstr "" -#: plinth/modules/openvpn/__init__.py:39 plinth/modules/openvpn/manifest.py:33 -msgid "OpenVPN" -msgstr "ओपन वीपीएन" +#: plinth/modules/networks/templates/router_configuration_main.html:23 +#, python-format +msgid "" +"Your %(box_name)s gets its Internet from your Router via Wi-Fi or Ethernet " +"cable. This is a typical home setup." +msgstr "" -#: plinth/modules/openvpn/__init__.py:43 -#: plinth/modules/wireguard/__init__.py:40 -msgid "Virtual Private Network" -msgstr "वर्चुअल प्राइवेट नेटवर्क" - -#: plinth/modules/openvpn/__init__.py:47 +#: plinth/modules/openvpn/__init__.py:26 #, python-brace-format msgid "" "Virtual Private Network (VPN) is a technique for securely connecting two " @@ -3970,22 +4075,31 @@ msgstr "" "आंतरिक सर्विसस उपयोग करने के लिये. आप बाकी सब इंटरनेट {box_name} के जरिए उपयोग कर " "सकते हैं अगर अापको और सुरक्षा और गुमनामी चाहिये." -#: plinth/modules/openvpn/__init__.py:79 +#: plinth/modules/openvpn/__init__.py:49 plinth/modules/openvpn/manifest.py:18 +msgid "OpenVPN" +msgstr "ओपन वीपीएन" + +#: plinth/modules/openvpn/__init__.py:50 +#: plinth/modules/wireguard/__init__.py:53 +msgid "Virtual Private Network" +msgstr "वर्चुअल प्राइवेट नेटवर्क" + +#: plinth/modules/openvpn/__init__.py:61 #, python-brace-format msgid "" "Download Profile" msgstr "" "डाउनलोड प्रोफाइल" -#: plinth/modules/openvpn/forms.py:27 +#: plinth/modules/openvpn/forms.py:12 msgid "Enable OpenVPN server" msgstr "ओपनवीपीएन सर्वर सक्षम करें" -#: plinth/modules/openvpn/manifest.py:63 -msgid "TunnelBlick" +#: plinth/modules/openvpn/manifest.py:48 +msgid "Tunnelblick" msgstr "" -#: plinth/modules/openvpn/templates/openvpn.html:42 +#: plinth/modules/openvpn/templates/openvpn.html:27 #, python-format msgid "" "OpenVPN has not yet been setup. Performing a secure setup takes a very long " @@ -3996,15 +4110,15 @@ msgstr "" "इस पर निर्भर करता है कि आपका%(box_name)s कितना तेज़ है, ये घंटों भी लग सकते. अगर सेटअप " "बाधित हो गया, फिर से शरु कर सकता है." -#: plinth/modules/openvpn/templates/openvpn.html:55 +#: plinth/modules/openvpn/templates/openvpn.html:40 msgid "Start setup" msgstr "सटअप शुरु करें" -#: plinth/modules/openvpn/templates/openvpn.html:64 +#: plinth/modules/openvpn/templates/openvpn.html:49 msgid "OpenVPN setup is running" msgstr "ओपनवीपीएन सेटअप चल रहा है" -#: plinth/modules/openvpn/templates/openvpn.html:68 +#: plinth/modules/openvpn/templates/openvpn.html:53 #, python-format msgid "" "To perform a secure setup, this process takes a very long time. Depending " @@ -4015,11 +4129,11 @@ msgstr "" "%(box_name)s कितना तेज़ है, ये घंटों भी लग सकते. अगर सेटअप बाधित हो गया, फिर से शरु कर " "सकता है." -#: plinth/modules/openvpn/templates/openvpn.html:87 +#: plinth/modules/openvpn/templates/openvpn.html:72 msgid "Profile" msgstr "प्रोफ़ाइल" -#: plinth/modules/openvpn/templates/openvpn.html:90 +#: plinth/modules/openvpn/templates/openvpn.html:75 #, fuzzy, python-format #| msgid "" #| "To connect to %(box_name)s's VPN, you need to download a profile and feed " @@ -4040,32 +4154,24 @@ msgstr "" "FreedomBox/Manual/OpenVPN\" title=\"%(box_name)s Manual - OpenVPN" "\">documentation देखें अनुशंसित क्लाइंट और उन्हें कॉन्फ़िगर करने के तरीके देखने के लिये." -#: plinth/modules/openvpn/templates/openvpn.html:100 +#: plinth/modules/openvpn/templates/openvpn.html:85 #, python-format msgid "Profile is specific to each user of %(box_name)s. Keep it a secret." msgstr "प्रोफ़ाइल हर %(box_name)s यूसर के लिए विशिष्ट है. इसे गुप्त रखें." -#: plinth/modules/openvpn/templates/openvpn.html:111 +#: plinth/modules/openvpn/templates/openvpn.html:96 msgid "Download my profile" msgstr "मेरी प्रोफ़ाइल डाउनलोड करें" -#: plinth/modules/openvpn/views.py:133 +#: plinth/modules/openvpn/views.py:114 msgid "Setup completed." msgstr "सेटअप पूरा हो गया." -#: plinth/modules/openvpn/views.py:135 +#: plinth/modules/openvpn/views.py:116 msgid "Setup failed." msgstr "सेटअप विफल." -#: plinth/modules/pagekite/__init__.py:39 -msgid "PageKite" -msgstr "पेजकइट" - -#: plinth/modules/pagekite/__init__.py:41 -msgid "Public Visibility" -msgstr "सार्वजनिक विसिबिलिटी" - -#: plinth/modules/pagekite/__init__.py:45 +#: plinth/modules/pagekite/__init__.py:26 #, python-brace-format msgid "" "PageKite is a system for exposing {box_name} services when you don't have a " @@ -4077,17 +4183,17 @@ msgstr "" "सीधा कनेक्शन नहीं है. इसके जरूरत है सिर्फ आपके {box_name} के सर्विसस बाकी इंटरनेट से पहुँच " "योग्य नहीं. इसमें इन स्थितियों को शामिल किया गया है:" -#: plinth/modules/pagekite/__init__.py:50 +#: plinth/modules/pagekite/__init__.py:31 #, python-brace-format msgid "{box_name} is behind a restricted firewall." msgstr "{box_name} एक प्रतिबंधित फ़ायरवॉल के पीछे है." -#: plinth/modules/pagekite/__init__.py:53 +#: plinth/modules/pagekite/__init__.py:34 #, 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:55 +#: plinth/modules/pagekite/__init__.py:36 msgid "" "Your ISP does not provide you an external IP address and instead provides " "Internet connection through NAT." @@ -4095,7 +4201,7 @@ msgstr "" "आपका ISP आपको एक बाहरी IP एड्रेस नहीं दता लेकिन NAT के माध्यम से इंटरनेट कनेक्शन प्रदान " "करता है." -#: plinth/modules/pagekite/__init__.py:57 +#: plinth/modules/pagekite/__init__.py:38 msgid "" "Your ISP does not provide you a static IP address and your IP address " "changes every time you connect to Internet." @@ -4103,11 +4209,11 @@ msgstr "" "आपके ISP आपको एक स्थिर IP एड्रेस प्रदान नहीं करता है और आपके IP एड्रेस बदलाएग जब आप " "इंटरनेट से कनेक्ट होते हैं." -#: plinth/modules/pagekite/__init__.py:59 +#: plinth/modules/pagekite/__init__.py:40 msgid "Your ISP limits incoming connections." msgstr "आपके ISP आने वाले कनेक्शंसस को सीमित करता है." -#: plinth/modules/pagekite/__init__.py:61 +#: plinth/modules/pagekite/__init__.py:42 #, fuzzy, python-brace-format #| msgid "" #| "PageKite works around NAT, firewalls and IP-address limitations by using " @@ -4126,17 +4232,25 @@ msgstr "" "pagekite.net. भविष्य में अापका दोस्त का " "{box_name} इसके लिये उपयोग कर सकते हैं." -#: plinth/modules/pagekite/__init__.py:87 +#: plinth/modules/pagekite/__init__.py:62 +msgid "PageKite" +msgstr "पेजकइट" + +#: plinth/modules/pagekite/__init__.py:64 +msgid "Public Visibility" +msgstr "सार्वजनिक विसिबिलिटी" + +#: plinth/modules/pagekite/__init__.py:74 #, fuzzy #| msgid "PageKite Account" msgid "PageKite Domain" msgstr "पेजकईट अकाउंट" -#: plinth/modules/pagekite/forms.py:66 +#: plinth/modules/pagekite/forms.py:51 msgid "Server domain" msgstr "सर्वर डोमेन" -#: plinth/modules/pagekite/forms.py:68 +#: plinth/modules/pagekite/forms.py:53 msgid "" "Select your pagekite server. Set \"pagekite.net\" to use the default " "pagekite.net server." @@ -4144,74 +4258,74 @@ msgstr "" "अपने पेजकईटसर्वर चूनें. \"pagekite.net\" सेट करें डिफ़ॉल्ट pagekite.net सर्वर उपयोग करने " "के लिए." -#: plinth/modules/pagekite/forms.py:71 plinth/modules/shadowsocks/forms.py:55 +#: plinth/modules/pagekite/forms.py:56 plinth/modules/shadowsocks/forms.py:40 msgid "Server port" msgstr "सर्वर पोर्ट" -#: plinth/modules/pagekite/forms.py:72 +#: plinth/modules/pagekite/forms.py:57 msgid "Port of your pagekite server (default: 80)" msgstr "अपने पेजकईट सर्वर का पोर्ट (डिफ़ॉल्ट: ८०)" -#: plinth/modules/pagekite/forms.py:74 +#: plinth/modules/pagekite/forms.py:59 msgid "Kite name" msgstr "कईट नाम" -#: plinth/modules/pagekite/forms.py:75 +#: plinth/modules/pagekite/forms.py:60 msgid "Example: mybox.pagekite.me" msgstr "उदाहरण: mybox.pagekite.me" -#: plinth/modules/pagekite/forms.py:77 +#: plinth/modules/pagekite/forms.py:62 msgid "Invalid kite name" msgstr "अमान्य कईट नाम" -#: plinth/modules/pagekite/forms.py:81 +#: plinth/modules/pagekite/forms.py:66 msgid "Kite secret" msgstr "कईट गुप्त" -#: plinth/modules/pagekite/forms.py:82 +#: plinth/modules/pagekite/forms.py:67 msgid "" "A secret associated with the kite or the default secret for your account if " "no secret is set on the kite." msgstr "" "एक कोई का सम्बंधित गुप्त या अपना अकाउंट का डिफ़ॉल्ट गुप्त अगर कोई रहस्य कईट पर सेट है." -#: plinth/modules/pagekite/forms.py:98 +#: plinth/modules/pagekite/forms.py:83 msgid "Kite details set" msgstr "कईट विवरण सेट" -#: plinth/modules/pagekite/forms.py:105 +#: plinth/modules/pagekite/forms.py:90 msgid "Pagekite server set" msgstr "पेजकईट सर्वर सेट" -#: plinth/modules/pagekite/forms.py:129 +#: plinth/modules/pagekite/forms.py:114 msgid "PageKite enabled" msgstr "पेजकईट सक्षम किया गया" -#: plinth/modules/pagekite/forms.py:132 +#: plinth/modules/pagekite/forms.py:117 msgid "PageKite disabled" msgstr "पेजकईट अक्षम किया गया" -#: plinth/modules/pagekite/forms.py:148 +#: plinth/modules/pagekite/forms.py:133 msgid "protocol" msgstr "प्रोटोकॉल" -#: plinth/modules/pagekite/forms.py:151 +#: plinth/modules/pagekite/forms.py:136 msgid "external (frontend) port" msgstr "बाहरी (फ्रंटेंड) पोर्ट" -#: plinth/modules/pagekite/forms.py:154 +#: plinth/modules/pagekite/forms.py:139 msgid "internal (freedombox) port" msgstr "आंतरिक (फ्रीडमबॉकस) पोर्ट" -#: plinth/modules/pagekite/forms.py:155 +#: plinth/modules/pagekite/forms.py:140 msgid "Enable Subdomains" msgstr "सबडोमेन सक्षम करें" -#: plinth/modules/pagekite/forms.py:189 +#: plinth/modules/pagekite/forms.py:174 msgid "Deleted custom service" msgstr "हटाई गई कस्टम सर्विस" -#: plinth/modules/pagekite/forms.py:222 +#: plinth/modules/pagekite/forms.py:207 msgid "" "This service is available as a standard service. Please use the \"Standard " "Services\" page to enable it." @@ -4219,45 +4333,45 @@ msgstr "" "यह सर्विस एक मानक सर्विस के रूप में उपलब्ध है. इसे सक्षम करने के लिए \"मानक सर्विस\" पेज " "का उपयोग करें." -#: plinth/modules/pagekite/forms.py:231 +#: plinth/modules/pagekite/forms.py:216 msgid "Added custom service" msgstr "जोड़ा गया कस्टम सर्विस" -#: plinth/modules/pagekite/forms.py:234 +#: plinth/modules/pagekite/forms.py:219 msgid "This service already exists" msgstr "यह सर्विस पहले से मौजूद है" -#: plinth/modules/pagekite/templates/pagekite_configure.html:47 +#: plinth/modules/pagekite/templates/pagekite_configure.html:32 msgid "Custom Services" msgstr "कस्टम सर्विसस" -#: plinth/modules/pagekite/templates/pagekite_configure.html:50 -#: plinth/modules/pagekite/templates/pagekite_configure.html:52 +#: plinth/modules/pagekite/templates/pagekite_configure.html:35 +#: plinth/modules/pagekite/templates/pagekite_configure.html:37 #, fuzzy #| msgid "Custom Services" msgid "Add Custom Service" msgstr "कस्टम सर्विसस" -#: plinth/modules/pagekite/templates/pagekite_configure.html:57 +#: plinth/modules/pagekite/templates/pagekite_configure.html:42 msgid "Existing custom services" msgstr "मौजूदा कस्टम सर्विसस" -#: plinth/modules/pagekite/templates/pagekite_configure.html:71 +#: plinth/modules/pagekite/templates/pagekite_configure.html:56 #, python-format msgid "connected to %(backend_host)s:%(backend_port)s" msgstr "%(backend_host)s से कनेक्टेड:%(backend_port)s" -#: plinth/modules/pagekite/templates/pagekite_configure.html:83 +#: plinth/modules/pagekite/templates/pagekite_configure.html:68 msgid "Delete this service" msgstr "यह सर्विस हटाएं" -#: plinth/modules/pagekite/templates/pagekite_custom_services.html:30 +#: plinth/modules/pagekite/templates/pagekite_custom_services.html:15 #, fuzzy #| msgid "Added custom service" msgid "Add custom PageKite service" msgstr "जोड़ा गया कस्टम सर्विस" -#: plinth/modules/pagekite/templates/pagekite_custom_services.html:32 +#: plinth/modules/pagekite/templates/pagekite_custom_services.html:17 msgid "" "Warning:imaps://imap.example.com जैसे सर्वर "
"फ़ील्ड भरें."
-#: plinth/modules/roundcube/__init__.py:53
+#: plinth/modules/roundcube/__init__.py:32
msgid ""
"For Gmail, username will be your Gmail address, password will be your Google "
"account password and server will be imaps://imap.gmail.com. "
@@ -4661,17 +4765,22 @@ msgstr ""
"security/lesssecureapps\">https://www.google.com/settings/security/"
"lesssecureapps)."
-#: plinth/modules/samba/__init__.py:46
-msgid "Samba"
-msgstr ""
+#: plinth/modules/roundcube/__init__.py:54
+#: plinth/modules/roundcube/manifest.py:9
+msgid "Roundcube"
+msgstr "राउंडक्यूब"
-#: plinth/modules/samba/__init__.py:53
+#: plinth/modules/roundcube/__init__.py:55
+msgid "Email Client"
+msgstr "ईमेल क्लाइंट"
+
+#: plinth/modules/samba/__init__.py:32
msgid ""
"Samba allows to share files and folders between FreedomBox and other "
"computers in your local network."
msgstr ""
-#: plinth/modules/samba/__init__.py:56
+#: plinth/modules/samba/__init__.py:35
#, python-brace-format
msgid ""
"After installation, you can choose which disks to use for sharing. Enabled "
@@ -4680,55 +4789,59 @@ msgid ""
"There are three types of shares you can choose from: "
msgstr ""
-#: plinth/modules/samba/__init__.py:61
+#: plinth/modules/samba/__init__.py:40
msgid "Open share - accessible to everyone in your local network."
msgstr ""
-#: plinth/modules/samba/__init__.py:62
+#: plinth/modules/samba/__init__.py:41
msgid ""
"Group share - accessible only to FreedomBox users who are in the freedombox-"
"share group."
msgstr ""
-#: plinth/modules/samba/__init__.py:64
+#: plinth/modules/samba/__init__.py:43
msgid ""
"Home share - every user in the freedombox-share group can have their own "
"private space."
msgstr ""
-#: plinth/modules/samba/__init__.py:68
+#: plinth/modules/samba/__init__.py:47
msgid "Access to the private shares"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:39
-#: plinth/modules/samba/templates/samba.html:50
+#: plinth/modules/samba/__init__.py:61
+msgid "Samba"
+msgstr ""
+
+#: plinth/modules/samba/templates/samba.html:24
+#: plinth/modules/samba/templates/samba.html:35
#, fuzzy
#| msgid "Shared"
msgid "Shares"
msgstr "साझा किया गया"
-#: plinth/modules/samba/templates/samba.html:41
+#: plinth/modules/samba/templates/samba.html:26
msgid ""
"Note: Only specially created directories will be shared on selected disks, "
"not the whole disk."
msgstr ""
-#: plinth/modules/samba/templates/samba.html:49
+#: plinth/modules/samba/templates/samba.html:34
#, fuzzy
#| msgid "Domain Name"
msgid "Disk Name"
msgstr "डोमेन नाम"
-#: plinth/modules/samba/templates/samba.html:51
-#: plinth/modules/storage/templates/storage.html:44
+#: plinth/modules/samba/templates/samba.html:36
+#: plinth/modules/storage/templates/storage.html:29
msgid "Used"
msgstr "उपयोग किया गया"
-#: plinth/modules/samba/templates/samba.html:72
+#: plinth/modules/samba/templates/samba.html:57
msgid "VFAT partitions are not supported"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:103
+#: plinth/modules/samba/templates/samba.html:88
#, python-format
msgid ""
"You can find additional information about disks on the users module page."
msgstr ""
-#: plinth/modules/samba/templates/samba.html:109
+#: plinth/modules/samba/templates/samba.html:94
msgid "Users who can currently access group and home shares"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:113
+#: plinth/modules/samba/templates/samba.html:98
msgid ""
"Users needing to re-enter their password on the password change page to "
"access group and home shares"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:118
+#: plinth/modules/samba/templates/samba.html:103
#, fuzzy
#| msgid "Available Domains"
msgid "Unavailable Shares"
msgstr "उपलब्ध वाले डोमेन्स"
-#: plinth/modules/samba/templates/samba.html:120
+#: plinth/modules/samba/templates/samba.html:105
msgid ""
"Shares that are configured but the disk is not available. If the disk is "
"plugged back in, sharing will be automatically enabled."
msgstr ""
-#: plinth/modules/samba/templates/samba.html:128
+#: plinth/modules/samba/templates/samba.html:113
#, fuzzy
#| msgid "Share added."
msgid "Share name"
msgstr "शेयर जोड़ा गया."
-#: plinth/modules/samba/templates/samba.html:129
+#: plinth/modules/samba/templates/samba.html:114
#, fuzzy
#| msgid "Actions"
msgid "Action"
msgstr "एक्सआयन"
-#: plinth/modules/samba/views.py:61 plinth/modules/storage/forms.py:164
+#: plinth/modules/samba/views.py:43 plinth/modules/storage/forms.py:149
#, fuzzy
#| msgid "Add Share"
msgid "Open Share"
msgstr "शेयर जोड़ें"
-#: plinth/modules/samba/views.py:62 plinth/modules/storage/forms.py:162
+#: plinth/modules/samba/views.py:44 plinth/modules/storage/forms.py:147
#, fuzzy
#| msgid "Add Share"
msgid "Group Share"
msgstr "शेयर जोड़ें"
-#: plinth/modules/samba/views.py:63
+#: plinth/modules/samba/views.py:45
#, fuzzy
#| msgid "Homepage"
msgid "Home Share"
msgstr "होमपेज"
-#: plinth/modules/samba/views.py:96
+#: plinth/modules/samba/views.py:78
#, fuzzy
#| msgid "Share deleted."
msgid "Share enabled."
msgstr "शेयर हटाया गया."
-#: plinth/modules/samba/views.py:101
+#: plinth/modules/samba/views.py:83
#, fuzzy, python-brace-format
#| msgid "Error ejecting device: {error_message}"
msgid "Error enabling share: {error_message}"
msgstr "एेरर इजेक्टिग्न डिवाइस: {error_message}"
-#: plinth/modules/samba/views.py:106
+#: plinth/modules/samba/views.py:88
#, fuzzy
#| msgid "Share edited."
msgid "Share disabled."
msgstr "शेयर संपादित किया गया."
-#: plinth/modules/samba/views.py:111
+#: plinth/modules/samba/views.py:93
#, fuzzy, python-brace-format
#| msgid "Error ejecting device: {error_message}"
msgid "Error disabling share: {error_message}"
msgstr "एेरर इजेक्टिग्न डिवाइस: {error_message}"
-#: plinth/modules/searx/__init__.py:41 plinth/modules/searx/manifest.py:24
-msgid "Searx"
-msgstr "सिरएक्स"
-
-#: plinth/modules/searx/__init__.py:45
-msgid "Web Search"
-msgstr "वेब खोज"
-
-#: plinth/modules/searx/__init__.py:48
+#: plinth/modules/searx/__init__.py:25
msgid ""
"Searx is a privacy-respecting Internet metasearch engine. It aggregrates and "
"displays results from multiple search engines."
@@ -4828,7 +4933,7 @@ msgstr ""
"सिरएक्स एक गोपनीयता संमान इंटरनेट मेटा खोज इंजन है. यह विभिन्न खोज यन्त्र से परिणाम "
"इकट्ठा और प्रदर्शन करता है."
-#: plinth/modules/searx/__init__.py:50
+#: plinth/modules/searx/__init__.py:27
msgid ""
"Searx can be used to avoid tracking and profiling by search engines. It "
"stores no cookies by default."
@@ -4836,48 +4941,56 @@ msgstr ""
"सिरएक्स खोज इंजन द्वारा ट्रैकिंग और प्रोफाइलिंग से बचने के लिए इस्तेमाल किया जा सकता है. "
"यह डिफ़ॉल्ट से कोई कुकीज़ स्टोर नहीं करता है."
-#: plinth/modules/searx/__init__.py:54
+#: plinth/modules/searx/__init__.py:31
msgid "Search the web"
msgstr "वेब सरच किजिये"
-#: plinth/modules/searx/forms.py:30
+#: plinth/modules/searx/__init__.py:47 plinth/modules/searx/manifest.py:9
+msgid "Searx"
+msgstr "सिरएक्स"
+
+#: plinth/modules/searx/__init__.py:48
+msgid "Web Search"
+msgstr "वेब खोज"
+
+#: plinth/modules/searx/forms.py:15
msgid "Safe Search"
msgstr "सेफ खोज"
-#: plinth/modules/searx/forms.py:31
+#: plinth/modules/searx/forms.py:16
msgid "Select the default family filter to apply to your search results."
msgstr "अपने खोज परिणामों पर अप्लाई करने के लिए डिफ़ॉल्ट परिवार फ़िल्टर चूनिये."
-#: plinth/modules/searx/forms.py:32
+#: plinth/modules/searx/forms.py:17
msgid "None"
msgstr "कोई नहीं"
-#: plinth/modules/searx/forms.py:32
+#: plinth/modules/searx/forms.py:17
msgid "Moderate"
msgstr "मॉडरेट"
-#: plinth/modules/searx/forms.py:32
+#: plinth/modules/searx/forms.py:17
msgid "Strict"
msgstr "स्ट्रिक्ट"
-#: plinth/modules/searx/forms.py:35
+#: plinth/modules/searx/forms.py:20
msgid "Allow Public Access"
msgstr ""
-#: plinth/modules/searx/forms.py:36
+#: plinth/modules/searx/forms.py:21
msgid "Allow this application to be used by anyone who can reach it."
msgstr ""
-#: plinth/modules/searx/views.py:59 plinth/modules/searx/views.py:70
-#: plinth/modules/tor/views.py:149 plinth/modules/tor/views.py:176
+#: plinth/modules/searx/views.py:39 plinth/modules/searx/views.py:50
+#: plinth/modules/tor/views.py:130 plinth/modules/tor/views.py:157
msgid "Configuration updated."
msgstr "कॉन्फ़िगरेशन अपडेट किया."
-#: plinth/modules/security/forms.py:28
+#: plinth/modules/security/forms.py:13
msgid "Restrict console logins (recommended)"
msgstr "कंसोल लॉगिन प्रतिबंधित करें (संस्तुत)"
-#: plinth/modules/security/forms.py:29
+#: plinth/modules/security/forms.py:14
msgid ""
"When this option is enabled, only users in the \"admin\" group will be able "
"to log in to console or via SSH. Console users may be able to access some "
@@ -4886,11 +4999,11 @@ msgstr ""
"जब इस विकल्प सक्षम होता है, सिर्फ \"आडमिन\" समूह में यूसरस को कंसोल या SSH से लॉग इन "
"करना हो जाएगा. कंसोल यूसरस आगे प्राधिकरण के बिना कुछ सर्विसस उपयोग हो सकता है."
-#: plinth/modules/security/forms.py:34
+#: plinth/modules/security/forms.py:19
msgid "Fail2Ban (recommended)"
msgstr "फेल-तो-बान (संस्तुत)"
-#: plinth/modules/security/forms.py:35
+#: plinth/modules/security/forms.py:20
msgid ""
"When this option is enabled, Fail2Ban will limit brute force break-in "
"attempts to the SSH server and other enabled password protected internet-"
@@ -4899,117 +5012,109 @@ msgstr ""
"जब यह विकल्प सक्षम है, Fail2Ban SSH सर्वर और दूसरा सक्षम किया गया पसवर्ड इंटरनेट "
"सर्विसस को ब्रूट फोर्स ब्रेक-इन प्रयासों से सीमा होगी."
-#: plinth/modules/security/templates/security.html:26
-#: plinth/modules/security/templates/security.html:28
+#: plinth/modules/security/templates/security.html:11
+#: plinth/modules/security/templates/security.html:13
#, fuzzy
#| msgid "Security"
msgid "Show security report"
msgstr "सुरक्षा"
-#: plinth/modules/security/templates/security_report.html:25
-#: plinth/modules/security/views.py:87
+#: plinth/modules/security/templates/security_report.html:10
+#: plinth/modules/security/views.py:71
#, fuzzy
#| msgid "Security"
msgid "Security Report"
msgstr "सुरक्षा"
-#: plinth/modules/security/templates/security_report.html:27
+#: plinth/modules/security/templates/security_report.html:12
#, python-format
msgid ""
"The installed version of FreedomBox has %(count)s reported security "
"vulnerabilities."
msgstr ""
-#: plinth/modules/security/templates/security_report.html:33
+#: plinth/modules/security/templates/security_report.html:18
msgid ""
"The following table lists the current reported number, and historical count, "
"of security vulnerabilities for each installed app."
msgstr ""
-#: plinth/modules/security/templates/security_report.html:39
+#: plinth/modules/security/templates/security_report.html:24
msgid ""
"For apps that provide services, the \"Sandboxed\" column shows whether "
"sandboxing features are in use. Sandboxing mitigates the impact of a "
"potentially compromised app to the rest of the system."
msgstr ""
-#: plinth/modules/security/templates/security_report.html:46
+#: plinth/modules/security/templates/security_report.html:31
msgid ""
"\"Sandbox Coverage\" is a score of how effectively the service is isolated "
"from the rest of the system. It is only displayed while the service is "
"running."
msgstr ""
-#: plinth/modules/security/templates/security_report.html:55
+#: plinth/modules/security/templates/security_report.html:40
#, fuzzy
#| msgid "Name"
msgid "App Name"
msgstr "नाम"
-#: plinth/modules/security/templates/security_report.html:56
+#: plinth/modules/security/templates/security_report.html:41
msgid "Current Vulnerabilities"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:57
+#: plinth/modules/security/templates/security_report.html:42
msgid "Past Vulnerabilities"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:58
+#: plinth/modules/security/templates/security_report.html:43
#, fuzzy
#| msgid "Block Sandbox"
msgid "Sandboxed"
msgstr "ब्लॉक सेंडबोक्स"
-#: plinth/modules/security/templates/security_report.html:59
+#: plinth/modules/security/templates/security_report.html:44
#, fuzzy
#| msgid "Block Sandbox"
msgid "Sandbox Coverage"
msgstr "ब्लॉक सेंडबोक्स"
-#: plinth/modules/security/templates/security_report.html:70
+#: plinth/modules/security/templates/security_report.html:55
msgid "N/A"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:72
+#: plinth/modules/security/templates/security_report.html:57
#, fuzzy
#| msgid "yes"
msgid "Yes"
msgstr "हाँ"
-#: plinth/modules/security/templates/security_report.html:74
+#: plinth/modules/security/templates/security_report.html:59
#, fuzzy
#| msgid "None"
msgid "No"
msgstr "कोई नहीं"
-#: plinth/modules/security/templates/security_report.html:81
+#: plinth/modules/security/templates/security_report.html:66
#, fuzzy
#| msgid "Tor is running"
msgid "Not running"
msgstr "टोर चल रहा है"
-#: plinth/modules/security/views.py:69
+#: plinth/modules/security/views.py:53
#, python-brace-format
msgid "Error setting restricted access: {exception}"
msgstr "त्रुटि सेटिंग एक्सेस प्रतिबंधित: {exception}"
-#: plinth/modules/security/views.py:72
+#: plinth/modules/security/views.py:56
msgid "Updated security configuration"
msgstr "सुरक्षा कॉंफ़िगरेशन अपडेट किया गया"
-#: plinth/modules/shaarli/__init__.py:34 plinth/modules/shaarli/manifest.py:23
-msgid "Shaarli"
-msgstr "शारली"
-
-#: plinth/modules/shaarli/__init__.py:36
-msgid "Bookmarks"
-msgstr "बुकमार्क्स"
-
-#: plinth/modules/shaarli/__init__.py:39
+#: plinth/modules/shaarli/__init__.py:20
msgid "Shaarli allows you to save and share bookmarks."
msgstr "शारली आप को बुकमार्क्स बचाने और साझा करने के लिए अनुमति देता है."
-#: plinth/modules/shaarli/__init__.py:40
+#: plinth/modules/shaarli/__init__.py:21
#, fuzzy
#| msgid ""
#| "When enabled, Shaarli will be available from /"
@@ -5025,15 +5130,15 @@ msgstr ""
"होगा. नोट करिये शारली सिर्फ एकल यूसर अकाउंट का समर्थन करता है जो आपको प्रारंभिक "
"यात्रा पर सेटअप करने की जरुरत होगा."
-#: plinth/modules/shadowsocks/__init__.py:35
-msgid "Shadowsocks"
-msgstr "शाडोसोक्स"
+#: plinth/modules/shaarli/__init__.py:39 plinth/modules/shaarli/manifest.py:8
+msgid "Shaarli"
+msgstr "शारली"
-#: plinth/modules/shadowsocks/__init__.py:39
-msgid "Socks5 Proxy"
-msgstr "सोक्स5 प्रॉक्सी"
+#: plinth/modules/shaarli/__init__.py:40
+msgid "Bookmarks"
+msgstr "बुकमार्क्स"
-#: plinth/modules/shadowsocks/__init__.py:46
+#: plinth/modules/shadowsocks/__init__.py:25
msgid ""
"Shadowsocks is a lightweight and secure SOCKS5 proxy, designed to protect "
"your Internet traffic. It can be used to bypass Internet filtering and "
@@ -5042,7 +5147,7 @@ msgstr ""
"शैडोवॉक्स एक हल्के और सुरक्षित सॉक्स 5 प्रॉक्सी है, आपके इंटरनेट यातायात रक्षा करने के लिये. "
"यह इंटरनेट फ़िल्टरिंग और सेंसरशिप बाईपास करने के लिए इस्तेमाल किया जा सकता है."
-#: plinth/modules/shadowsocks/__init__.py:50
+#: plinth/modules/shadowsocks/__init__.py:29
#, python-brace-format
msgid ""
"Your {box_name} can run a Shadowsocks client, that can connect to a "
@@ -5054,7 +5159,7 @@ msgstr ""
"है. यह एक सॉक्स 5 प्रॉक्सी भी चला जाएगा. स्थानीय डिवाइसस इस प्रॉक्सी से कनेक्ट कर सकते "
"हैं, और उनके डेटा एंक्रिप्टेड और शैडोवॉक्स सर्वर के माध्यम से प्रॉक्सी हो जाएगा."
-#: plinth/modules/shadowsocks/__init__.py:55
+#: plinth/modules/shadowsocks/__init__.py:34
msgid ""
"To use Shadowsocks after setup, set the SOCKS5 proxy URL in your device, "
"browser or application to http://freedombox_address:1080/"
@@ -5062,37 +5167,41 @@ msgstr ""
"सेटअप के बाद शैडोवॉक्स का उपयोग करने के लिए,अपने डिवाइस, ब्राउज़र या एप्लिकेशन में सॉक्स5 "
"प्रॉक्सी यूआरएल पर सेट करें http://freedombox_address:1080/"
-#: plinth/modules/shadowsocks/forms.py:28
-#: plinth/modules/shadowsocks/forms.py:29
+#: plinth/modules/shadowsocks/__init__.py:50
+msgid "Shadowsocks"
+msgstr "शाडोसोक्स"
+
+#: plinth/modules/shadowsocks/__init__.py:52
+msgid "Socks5 Proxy"
+msgstr "सोक्स5 प्रॉक्सी"
+
+#: plinth/modules/shadowsocks/forms.py:13
+#: plinth/modules/shadowsocks/forms.py:14
msgid "Recommended"
msgstr "अनुशंसित"
-#: plinth/modules/shadowsocks/forms.py:52
+#: plinth/modules/shadowsocks/forms.py:37
msgid "Server"
msgstr "सर्वर"
-#: plinth/modules/shadowsocks/forms.py:53
+#: plinth/modules/shadowsocks/forms.py:38
msgid "Server hostname or IP address"
msgstr "सर्वर होस्ट नाम या IP एड्रेस"
-#: plinth/modules/shadowsocks/forms.py:57
+#: plinth/modules/shadowsocks/forms.py:42
msgid "Server port number"
msgstr "सर्वर पोर्ट नंबर"
-#: plinth/modules/shadowsocks/forms.py:60
+#: plinth/modules/shadowsocks/forms.py:45
msgid "Password used to encrypt data. Must match server password."
msgstr ""
"डेटा एंक्रिप्ट करने के लिए पासवर्ड उपयोग किया गया . सर्वर पासवर्ड से मेल खाना चाहिए."
-#: plinth/modules/shadowsocks/forms.py:65
+#: plinth/modules/shadowsocks/forms.py:50
msgid "Encryption method. Must match setting on server."
msgstr "एंक्रिप्शन मेथोड. सर्वर सेटिंग पर मेल खाना चाहिए."
-#: plinth/modules/sharing/__init__.py:34
-msgid "Sharing"
-msgstr "शेयरिंग"
-
-#: plinth/modules/sharing/__init__.py:38
+#: plinth/modules/sharing/__init__.py:21
#, python-brace-format
msgid ""
"Sharing allows you to share files and folders on your {box_name} over the "
@@ -5101,11 +5210,15 @@ msgstr ""
"शेयरिंग आपको अपने {box_name} पर फ़ाइलों और फ़ोल्डरों चुना गया यूसरस के साथ वेब पर साझा "
"करने की अनुमति देता है."
-#: plinth/modules/sharing/forms.py:33
+#: plinth/modules/sharing/__init__.py:38
+msgid "Sharing"
+msgstr "शेयरिंग"
+
+#: plinth/modules/sharing/forms.py:18
msgid "Name of the share"
msgstr "शेयर का नाम"
-#: plinth/modules/sharing/forms.py:35
+#: plinth/modules/sharing/forms.py:20
msgid ""
"A lowercase alpha-numeric string that uniquely identifies a share. Example: "
"media."
@@ -5113,31 +5226,31 @@ msgstr ""
"कोई लोअरकेस अल्फ़ा-सांख्यिक स्ट्रिंग जो विशिष्ट रूप से एक शेयर की पहचान करता है. उदाहरण:"
"media."
-#: plinth/modules/sharing/forms.py:39
+#: plinth/modules/sharing/forms.py:24
msgid "Path to share"
msgstr "शयर करने के लिए पाथ"
-#: plinth/modules/sharing/forms.py:40
+#: plinth/modules/sharing/forms.py:25
msgid "Disk path to a folder on this server that you intend to share."
msgstr "इस सर्वर पर किसी फ़ोल्डर का डिस्क पाथ है जो आप साझा करना चाहते हैं."
-#: plinth/modules/sharing/forms.py:43
+#: plinth/modules/sharing/forms.py:28
#, fuzzy
#| msgid "Publish Key"
msgid "Public share"
msgstr "चाबी प्रकाशित करें"
-#: plinth/modules/sharing/forms.py:44
+#: plinth/modules/sharing/forms.py:29
msgid "Make files in this folder available to anyone with the link."
msgstr ""
-#: plinth/modules/sharing/forms.py:48
+#: plinth/modules/sharing/forms.py:33
#, fuzzy
#| msgid "User groups who can read the files in the share"
msgid "User groups that can read the files in the share"
msgstr "युसर समूह जो शयर में फ़ाइलें पढ़ सकते हैं"
-#: plinth/modules/sharing/forms.py:50
+#: plinth/modules/sharing/forms.py:35
#, fuzzy
#| msgid ""
#| "Users who have these permissions will also be able to read the files in "
@@ -5147,64 +5260,60 @@ msgid ""
"share."
msgstr "इन अनुमतियों वाले युसरस को शयर में फ़ाइलें भी पढ़ सकते हैं."
-#: plinth/modules/sharing/forms.py:67
+#: plinth/modules/sharing/forms.py:52
msgid "A share with this name already exists."
msgstr "इस नाम का एक शयर पहले से मौजूद है."
-#: plinth/modules/sharing/forms.py:78
+#: plinth/modules/sharing/forms.py:63
msgid "Shares should be either public or shared with at least one group"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:39
-#: plinth/modules/sharing/templates/sharing.html:42
+#: plinth/modules/sharing/templates/sharing.html:24
+#: plinth/modules/sharing/templates/sharing.html:27
msgid "Add share"
msgstr "शेयर जोड़ें"
-#: plinth/modules/sharing/templates/sharing.html:47
+#: plinth/modules/sharing/templates/sharing.html:32
msgid "No shares currently configured."
msgstr "वर्तमान में कोई शेयर कॉन्फ़िगर नहीं किया गया है."
-#: plinth/modules/sharing/templates/sharing.html:53
+#: plinth/modules/sharing/templates/sharing.html:38
msgid "Disk Path"
msgstr "डिस्क पाथ"
-#: plinth/modules/sharing/templates/sharing.html:54
+#: plinth/modules/sharing/templates/sharing.html:39
msgid "Shared Over"
msgstr "शेयरड अोवर"
-#: plinth/modules/sharing/templates/sharing.html:55
+#: plinth/modules/sharing/templates/sharing.html:40
msgid "With Groups"
msgstr "समूहों के साथ"
-#: plinth/modules/sharing/templates/sharing.html:73
+#: plinth/modules/sharing/templates/sharing.html:58
msgid "public access"
msgstr ""
-#: plinth/modules/sharing/views.py:55
+#: plinth/modules/sharing/views.py:39
msgid "Share added."
msgstr "शेयर जोड़ा गया."
-#: plinth/modules/sharing/views.py:60
+#: plinth/modules/sharing/views.py:44
msgid "Add Share"
msgstr "शेयर जोड़ें"
-#: plinth/modules/sharing/views.py:75
+#: plinth/modules/sharing/views.py:59
msgid "Share edited."
msgstr "शेयर संपादित किया गया."
-#: plinth/modules/sharing/views.py:80
+#: plinth/modules/sharing/views.py:64
msgid "Edit Share"
msgstr "शेयर संपादित करें"
-#: plinth/modules/sharing/views.py:111
+#: plinth/modules/sharing/views.py:95
msgid "Share deleted."
msgstr "शेयर हटाया गया."
-#: plinth/modules/snapshot/__init__.py:37
-msgid "Storage Snapshots"
-msgstr "स्टोरेज स्नैपशॉटस"
-
-#: plinth/modules/snapshot/__init__.py:40
+#: plinth/modules/snapshot/__init__.py:23
msgid ""
"Snapshots allows creating and managing btrfs file system snapshots. These "
"can be used to roll back the system to a previously known good state in case "
@@ -5214,7 +5323,7 @@ msgstr ""
"को वापस रोल करने के लिए इस्तेमाल किया जा सकता है, एक पहले अच्छी स्थिति ज्ञात है अगर "
"सिस्टम पर अवांछित बदलाव किया गया."
-#: plinth/modules/snapshot/__init__.py:44
+#: plinth/modules/snapshot/__init__.py:27
#, no-python-format
msgid ""
"Snapshots are taken periodically (called timeline snapshots) and also before "
@@ -5222,7 +5331,7 @@ msgid ""
"cleaned up according to the settings below."
msgstr ""
-#: plinth/modules/snapshot/__init__.py:47
+#: plinth/modules/snapshot/__init__.py:30
#, fuzzy
#| msgid ""
#| "Snapshots work on btrfs file systems only and on the root partition only. "
@@ -5236,71 +5345,75 @@ msgstr ""
"स्नैपशॉट्स सिर्फ btrfs फाइल सिस्टम और रूट पार्टीशन पर काम करते हैं. स्नैपशॉट बैकअप के लिए "
"प्रतिस्थापन नहीं है क्योंकि वे उसी पार्टीशन पर संग्रहित होते हैं. "
-#: plinth/modules/snapshot/forms.py:27
+#: plinth/modules/snapshot/__init__.py:52
+msgid "Storage Snapshots"
+msgstr "स्टोरेज स्नैपशॉटस"
+
+#: plinth/modules/snapshot/forms.py:12
msgid "Free Disk Space to Maintain"
msgstr ""
-#: plinth/modules/snapshot/forms.py:28
+#: plinth/modules/snapshot/forms.py:13
msgid ""
"Maintain this percentage of free space on the disk. If free space falls "
"below this value, older snapshots are removed until this much free space is "
"regained. The default value is 30%."
msgstr ""
-#: plinth/modules/snapshot/forms.py:35
+#: plinth/modules/snapshot/forms.py:20
msgid "Timeline Snapshots"
msgstr "टाइमलाइन स्नैपशॉटस"
-#: plinth/modules/snapshot/forms.py:36
+#: plinth/modules/snapshot/forms.py:21
msgid ""
"Enable or disable timeline snapshots (hourly, daily, monthly and yearly)."
msgstr "टाइमलाइन स्नैपशॉट को सक्षम या अक्षम करें ( हर घंटे, दैनिक, मासिक और वार्षिक)."
-#: plinth/modules/snapshot/forms.py:41
+#: plinth/modules/snapshot/forms.py:26
msgid "Software Installation Snapshots"
msgstr "सॉफ़्टवेयर इंस्टालेशन स्नैपशॉटस"
-#: plinth/modules/snapshot/forms.py:42
+#: plinth/modules/snapshot/forms.py:27
msgid "Enable or disable snapshots before and after software installation"
msgstr "सॉफ़्टवेयर इंस्टालेशन से पहले और के बाद स्नैपशॉटस सक्षम या अक्षम करें"
-#: plinth/modules/snapshot/forms.py:47
+#: plinth/modules/snapshot/forms.py:32
msgid "Hourly Snapshots Limit"
msgstr "घंटेवार स्नैपशॉटस सीमा"
-#: plinth/modules/snapshot/forms.py:48
+#: plinth/modules/snapshot/forms.py:33
msgid "Keep a maximum of this many hourly snapshots."
msgstr "अधिकतम कई घंटेवगर स्नैपशॉटस रखें."
-#: plinth/modules/snapshot/forms.py:51
+#: plinth/modules/snapshot/forms.py:36
msgid "Daily Snapshots Limit"
msgstr "दैनिक स्नैपशॉट्स सीमा"
-#: plinth/modules/snapshot/forms.py:52
+#: plinth/modules/snapshot/forms.py:37
msgid "Keep a maximum of this many daily snapshots."
msgstr "इनमें से कई दैनिक स्नैपशॉट रखें."
-#: plinth/modules/snapshot/forms.py:55
+#: plinth/modules/snapshot/forms.py:40
msgid "Weekly Snapshots Limit"
msgstr "साप्ताहिक स्नैपशॉट्स सीमा"
-#: plinth/modules/snapshot/forms.py:56
+#: plinth/modules/snapshot/forms.py:41
msgid "Keep a maximum of this many weekly snapshots."
msgstr "इनमें से कई साप्ताहिक स्नैपशॉट रखें."
-#: plinth/modules/snapshot/forms.py:59
+#: plinth/modules/snapshot/forms.py:44
msgid "Monthly Snapshots Limit"
msgstr "मासिक स्नैपशॉट्स सीमा"
-#: plinth/modules/snapshot/forms.py:60
+#: plinth/modules/snapshot/forms.py:45
msgid "Keep a maximum of this many monthly snapshots."
msgstr "यह कई अधिकतम मासिक स्नैपशॉट रखें."
-#: plinth/modules/snapshot/forms.py:63
+#: plinth/modules/snapshot/forms.py:48
msgid "Yearly Snapshots Limit"
msgstr "वार्षिक स्नैपशॉट्स सीमा"
-#: plinth/modules/snapshot/forms.py:64
+#: plinth/modules/snapshot/forms.py:49
#, fuzzy
#| msgid ""
#| "Keep a maximum of this many yearly snapshots. The default is 0 (disabled)."
@@ -5309,57 +5422,57 @@ msgid ""
"(disabled)."
msgstr "इस कई वार्षिक स्नैपशॉट की एक अधिकतम रखों. डिफ़ॉल्ट 0 है (अक्षम)."
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:27
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:12
msgid "Delete the following snapshots permanently?"
msgstr "इन स्नैपशॉटस स्थाई रूप से हटाएं?"
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:31
-#: plinth/modules/snapshot/templates/snapshot_manage.html:43
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:39
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:16
+#: plinth/modules/snapshot/templates/snapshot_manage.html:28
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:24
msgid "Number"
msgstr "संख्या"
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:32
-#: plinth/modules/snapshot/templates/snapshot_manage.html:44
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:40
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:17
+#: plinth/modules/snapshot/templates/snapshot_manage.html:29
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:25
msgid "Date"
msgstr "तिथि"
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:52
-#: plinth/modules/snapshot/templates/snapshot_manage.html:37
-#: plinth/modules/snapshot/views.py:196
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:37
+#: plinth/modules/snapshot/templates/snapshot_manage.html:22
+#: plinth/modules/snapshot/views.py:175
msgid "Delete Snapshots"
msgstr "स्नैपशॉटस हटाएँ"
-#: plinth/modules/snapshot/templates/snapshot_manage.html:33
+#: plinth/modules/snapshot/templates/snapshot_manage.html:18
msgid "Create Snapshot"
msgstr "स्नैपशॉट बनाइये"
-#: plinth/modules/snapshot/templates/snapshot_manage.html:46
+#: plinth/modules/snapshot/templates/snapshot_manage.html:31
msgid "Rollback"
msgstr "रोलबैक"
-#: plinth/modules/snapshot/templates/snapshot_manage.html:57
+#: plinth/modules/snapshot/templates/snapshot_manage.html:42
msgid "active"
msgstr "एक्टिव"
-#: plinth/modules/snapshot/templates/snapshot_manage.html:66
+#: plinth/modules/snapshot/templates/snapshot_manage.html:51
#, python-format
msgid "Rollback to snapshot #%(number)s"
msgstr "स्नैपशॉट से रोलबैक करें #%(number)s"
-#: plinth/modules/snapshot/templates/snapshot_not_supported.html:26
+#: plinth/modules/snapshot/templates/snapshot_not_supported.html:11
#, python-format
msgid ""
"Your have a filesystem of type %(fs_type)s. Snapshots are "
"currently only available on %(types_supported)s filesystems."
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:27
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:12
msgid "Roll back the system to this snapshot?"
msgstr "इस स्नैपशॉट पर सिस्टम रोलबैक करें?"
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:30
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:15
msgid ""
"A new snapshot with the current state of the file system will be "
"automatically created. You will be able to undo a rollback by reverting to "
@@ -5368,62 +5481,58 @@ msgstr ""
"फ़ाइल सिस्टम की वर्तमान स्थिति के साथ एक नया स्नैपशॉट ऑटोमेटिकली बनाया जाएगा. आप नए "
"बनाए गए स्नैपशॉट पर वापस जा कर एक रोलबैक को पूर्ववत् करने में सक्षम होंगे."
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:57
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:42
#, python-format
msgid "Rollback to Snapshot #%(number)s"
msgstr "स्नैपशॉट से रोलबैक करें #%(number)s"
-#: plinth/modules/snapshot/views.py:45
+#: plinth/modules/snapshot/views.py:30
msgid "Manage Snapshots"
msgstr "स्नैपशॉटस प्रबंधित करें"
-#: plinth/modules/snapshot/views.py:98
+#: plinth/modules/snapshot/views.py:79
msgid "Created snapshot."
msgstr "स्नैपशॉट बनाया गया है."
-#: plinth/modules/snapshot/views.py:156
+#: plinth/modules/snapshot/views.py:135
msgid "Storage snapshots configuration updated"
msgstr "स्टोरेज स्नैपशॉट कॉंफ़िगरेशन अपडेट किया गया"
-#: plinth/modules/snapshot/views.py:160 plinth/modules/tor/views.py:79
+#: plinth/modules/snapshot/views.py:139 plinth/modules/tor/views.py:60
#, python-brace-format
msgid "Action error: {0} [{1}] [{2}]"
msgstr "क्रिया त्रुटि: {0} [{1}] [{2}]"
-#: plinth/modules/snapshot/views.py:175
+#: plinth/modules/snapshot/views.py:154
#, fuzzy
#| msgid "Deleted all snapshots."
msgid "Deleted all snapshots"
msgstr "सब स्नैपशॉटस हटाएँ गएे."
-#: plinth/modules/snapshot/views.py:179
+#: plinth/modules/snapshot/views.py:158
#, fuzzy
#| msgid "Delete all the snapshots"
msgid "Deleted selected snapshots"
msgstr "सब स्नैपशॉटस हटाएँ"
-#: plinth/modules/snapshot/views.py:184
+#: plinth/modules/snapshot/views.py:163
msgid "Snapshot is currently in use. Please try again later."
msgstr ""
-#: plinth/modules/snapshot/views.py:207
+#: plinth/modules/snapshot/views.py:186
#, python-brace-format
msgid "Rolled back to snapshot #{number}."
msgstr "स्नैपशॉट #{number} पर वापस रोलबाक होगा."
-#: plinth/modules/snapshot/views.py:210
+#: plinth/modules/snapshot/views.py:189
msgid "The system must be restarted to complete the rollback."
msgstr "रोलबैक शुरु करने के लिए सिस्टम रीस्टार्ट करने का ज़रुरत है."
-#: plinth/modules/snapshot/views.py:222
+#: plinth/modules/snapshot/views.py:201
msgid "Rollback to Snapshot"
msgstr "स्नैपशॉट को रोलबैक करें"
-#: plinth/modules/ssh/__init__.py:43
-msgid "Secure Shell (SSH) Server"
-msgstr "सुरक्षित शैल (SSH) सर्वर"
-
-#: plinth/modules/ssh/__init__.py:46
+#: plinth/modules/ssh/__init__.py:29
msgid ""
"A Secure Shell server uses the secure shell protocol to accept connections "
"from remote computers. An authorized remote computer can perform "
@@ -5434,62 +5543,62 @@ msgstr ""
"स्वीकार करने के लिये. एक अधिकार दिया गया रिमोट कंप्यूटर प्रशासन कार्य निष्पादित कर "
"सकता है, फ़ाइलों की कॉपी कर सकता है या ऐसे कनेक्शंस का उपयोग करके अंय सर्विसस चलाएे."
-#: plinth/modules/ssh/forms.py:30
+#: plinth/modules/ssh/__init__.py:50
+msgid "Secure Shell (SSH) Server"
+msgstr "सुरक्षित शैल (SSH) सर्वर"
+
+#: plinth/modules/ssh/forms.py:15
#, fuzzy
#| msgid "Use HTTP basic authentication"
msgid "Disable password authentication"
msgstr "एचटिटिपि बेसिकॅ प्रमाणीकरण उपयोग करें"
-#: plinth/modules/ssh/forms.py:31
+#: plinth/modules/ssh/forms.py:16
msgid ""
"Improves security by preventing password guessing. Ensure that you have "
"setup SSH keys in your administrator user account before enabling this "
"option."
msgstr ""
-#: plinth/modules/ssh/templates/ssh.html:26
+#: plinth/modules/ssh/templates/ssh.html:11
#, fuzzy
#| msgid "SSH Fingerprint"
msgid "Server Fingerprints"
msgstr "SSH फिंगरप्रिंट"
-#: plinth/modules/ssh/templates/ssh.html:29
+#: plinth/modules/ssh/templates/ssh.html:14
msgid ""
"When connecting to the server, ensure that the fingerprint shown by the SSH "
"client matches one of these fingerprints."
msgstr ""
-#: plinth/modules/ssh/templates/ssh.html:38
+#: plinth/modules/ssh/templates/ssh.html:23
msgid "Algorithm"
msgstr ""
-#: plinth/modules/ssh/templates/ssh.html:39
+#: plinth/modules/ssh/templates/ssh.html:24
#, fuzzy
#| msgid "SSH Fingerprint"
msgid "Fingerprint"
msgstr "SSH फिंगरप्रिंट"
-#: plinth/modules/ssh/views.py:66
+#: plinth/modules/ssh/views.py:48
msgid "SSH authentication with password disabled."
msgstr ""
-#: plinth/modules/ssh/views.py:69
+#: plinth/modules/ssh/views.py:51
msgid "SSH authentication with password enabled."
msgstr ""
-#: plinth/modules/sso/__init__.py:30
+#: plinth/modules/sso/__init__.py:33
msgid "Single Sign On"
msgstr "एकल साइन-ऑन"
-#: plinth/modules/sso/templates/login.html:35
+#: plinth/modules/sso/templates/login.html:20
msgid "Login"
msgstr "लॉगिन"
-#: plinth/modules/storage/__init__.py:39 plinth/modules/storage/__init__.py:331
-msgid "Storage"
-msgstr "स्टोरेज"
-
-#: plinth/modules/storage/__init__.py:47
+#: plinth/modules/storage/__init__.py:30
#, python-brace-format
msgid ""
"This module allows you to manage storage media attached to your {box_name}. "
@@ -5497,84 +5606,88 @@ msgid ""
"media, expand the root partition etc."
msgstr ""
-#: plinth/modules/storage/__init__.py:224
+#: plinth/modules/storage/__init__.py:52 plinth/modules/storage/__init__.py:318
+msgid "Storage"
+msgstr "स्टोरेज"
+
+#: plinth/modules/storage/__init__.py:211
#, python-brace-format
msgid "{disk_size:.1f} bytes"
msgstr "{disk_size:.1f} बाइट्स"
-#: plinth/modules/storage/__init__.py:228
+#: plinth/modules/storage/__init__.py:215
#, python-brace-format
msgid "{disk_size:.1f} KiB"
msgstr "{disk_size:.1f} किब"
-#: plinth/modules/storage/__init__.py:232
+#: plinth/modules/storage/__init__.py:219
#, python-brace-format
msgid "{disk_size:.1f} MiB"
msgstr "{disk_size:.1f} मेब"
-#: plinth/modules/storage/__init__.py:236
+#: plinth/modules/storage/__init__.py:223
#, python-brace-format
msgid "{disk_size:.1f} GiB"
msgstr "{disk_size:.1f} जिब"
-#: plinth/modules/storage/__init__.py:239
+#: plinth/modules/storage/__init__.py:226
#, python-brace-format
msgid "{disk_size:.1f} TiB"
msgstr "{disk_size:.1f} टीब"
-#: plinth/modules/storage/__init__.py:246
+#: plinth/modules/storage/__init__.py:233
msgid "The operation failed."
msgstr "ऑपरेशन अनुत्तीर्ण हो गया."
-#: plinth/modules/storage/__init__.py:248
+#: plinth/modules/storage/__init__.py:235
msgid "The operation was cancelled."
msgstr "ऑपरेशन रद्द किया गया."
-#: plinth/modules/storage/__init__.py:250
+#: plinth/modules/storage/__init__.py:237
msgid "The device is already unmounting."
msgstr "यह डिवाइस पहले से अनमाउट किया जा रहा है."
-#: plinth/modules/storage/__init__.py:252
+#: plinth/modules/storage/__init__.py:239
msgid "The operation is not supported due to missing driver/tool support."
msgstr "यह ऑपरेशन अनुपलब्ध है क्यैकि ड्राइवर/उपकरण टूल समर्थित नहीं है."
-#: plinth/modules/storage/__init__.py:255
+#: plinth/modules/storage/__init__.py:242
msgid "The operation timed out."
msgstr "ऑपरेशन टाइम आउट हो गया."
-#: plinth/modules/storage/__init__.py:257
+#: plinth/modules/storage/__init__.py:244
msgid "The operation would wake up a disk that is in a deep-sleep state."
msgstr "यह ऑपरेशन गहरी नींद की स्थिति का डिस्क को जाग जाएगा."
-#: plinth/modules/storage/__init__.py:260
+#: plinth/modules/storage/__init__.py:247
msgid "Attempting to unmount a device that is busy."
msgstr "व्यस्त डिवाइस को अनमाउंट करने का प्रयास कर रहा है."
-#: plinth/modules/storage/__init__.py:262
+#: plinth/modules/storage/__init__.py:249
msgid "The operation has already been cancelled."
msgstr "ऑपरेशन पहले से रद्द किया गया."
-#: plinth/modules/storage/__init__.py:268
+#: plinth/modules/storage/__init__.py:255
msgid "Not authorized to perform the requested operation."
msgstr "अनुरोधित ऑपरेशन करने के लिए अधिकृत नहीं है."
-#: plinth/modules/storage/__init__.py:270
+#: plinth/modules/storage/__init__.py:257
msgid "The device is already mounted."
msgstr "यह डिवाइस पहले से माउंट किया गया."
-#: plinth/modules/storage/__init__.py:272
+#: plinth/modules/storage/__init__.py:259
msgid "The device is not mounted."
msgstr "यह डिवाइस नहीं माउंट किया गया."
-#: plinth/modules/storage/__init__.py:275
+#: plinth/modules/storage/__init__.py:262
msgid "Not permitted to use the requested option."
msgstr "अनुरोधित विकल्प का उपयोग करने की अनुमति नहीं है."
-#: plinth/modules/storage/__init__.py:278
+#: plinth/modules/storage/__init__.py:265
msgid "The device is mounted by another user."
msgstr "किसी और यूसर ने डिवाइस माउंट किया गया है."
-#: plinth/modules/storage/__init__.py:326
+#: plinth/modules/storage/__init__.py:313
#, fuzzy, no-python-format, python-brace-format
#| msgid ""
#| "Warning: Low space on system partition ({percent_used}% used, "
@@ -5584,75 +5697,75 @@ msgstr ""
"वार्निंग: सिस्टम पार्टीशन पर कम जगह ({percent_used}% उपयोग किया गया, "
"{free_space} free)."
-#: plinth/modules/storage/__init__.py:328
+#: plinth/modules/storage/__init__.py:315
msgid "Low disk space"
msgstr ""
-#: plinth/modules/storage/forms.py:79
+#: plinth/modules/storage/forms.py:64
#, fuzzy
#| msgid "Invalid hostname"
msgid "Invalid directory name."
msgstr "अमान्य होस्टनाम"
-#: plinth/modules/storage/forms.py:97
+#: plinth/modules/storage/forms.py:82
msgid "Directory does not exist."
msgstr ""
-#: plinth/modules/storage/forms.py:99
+#: plinth/modules/storage/forms.py:84
#, fuzzy
#| msgid "Download directory"
msgid "Path is not a directory."
msgstr "डायरेक्टरी डाउनलोड करें"
-#: plinth/modules/storage/forms.py:102
+#: plinth/modules/storage/forms.py:87
#, fuzzy
#| msgid "The device is mounted by another user."
msgid "Directory is not readable by the user."
msgstr "किसी और यूसर ने डिवाइस माउंट किया गया है."
-#: plinth/modules/storage/forms.py:105
+#: plinth/modules/storage/forms.py:90
msgid "Directory is not writable by the user."
msgstr ""
-#: plinth/modules/storage/forms.py:110
+#: plinth/modules/storage/forms.py:95
#, fuzzy
#| msgid "Download directory"
msgid "Directory"
msgstr "डायरेक्टरी डाउनलोड करें"
-#: plinth/modules/storage/forms.py:113
+#: plinth/modules/storage/forms.py:98
msgid "Subdirectory (optional)"
msgstr ""
-#: plinth/modules/storage/forms.py:160
+#: plinth/modules/storage/forms.py:145
#, fuzzy
#| msgid "Shared"
msgid "Share"
msgstr "साझा किया गया"
-#: plinth/modules/storage/forms.py:168
+#: plinth/modules/storage/forms.py:153
msgid "Other directory (specify below)"
msgstr ""
-#: plinth/modules/storage/templates/storage.html:35
+#: plinth/modules/storage/templates/storage.html:20
#, fuzzy
#| msgid "The following disks are in use:"
msgid "The following storage devices are in use:"
msgstr "निम्नलिखित डिस्कस उपयोग में है:"
-#: plinth/modules/storage/templates/storage.html:41
+#: plinth/modules/storage/templates/storage.html:26
msgid "Label"
msgstr "लेबल"
-#: plinth/modules/storage/templates/storage.html:42
+#: plinth/modules/storage/templates/storage.html:27
msgid "Mount Point"
msgstr "माउन्ट प्वाइंट"
-#: plinth/modules/storage/templates/storage.html:90
+#: plinth/modules/storage/templates/storage.html:75
msgid "Partition Expansion"
msgstr "पारटिशन एक्सपांसन"
-#: plinth/modules/storage/templates/storage.html:92
+#: plinth/modules/storage/templates/storage.html:77
#, python-format
msgid ""
"There is %(expandable_root_size)s of unallocated space available after your "
@@ -5663,13 +5776,13 @@ msgstr ""
"पार्टीशन इस स्थान ज्यादा बनने के लिए उपयोग किया जा सकता है. यह आपको आपकी फ़ाइलों "
"स्टोर करने के लिए अतिरिक्त मुक्त स्थान प्रदान करेगा."
-#: plinth/modules/storage/templates/storage.html:102
-#: plinth/modules/storage/templates/storage_expand.html:39
-#: plinth/modules/storage/views.py:76
+#: plinth/modules/storage/templates/storage.html:87
+#: plinth/modules/storage/templates/storage_expand.html:24
+#: plinth/modules/storage/views.py:58
msgid "Expand Root Partition"
msgstr "रूट पारटिशन विस्तार करें"
-#: plinth/modules/storage/templates/storage_expand.html:29
+#: plinth/modules/storage/templates/storage_expand.html:14
#, python-format
msgid ""
"Please backup your data before proceeding. After this operation, "
@@ -5679,39 +5792,30 @@ msgstr ""
"आगे बढ़ने से पहले अपने डेटा का बैकअप करें. इस ऑपरेशन के बाद, %(expandable_root_size)s से "
"अतिरिक्त खाली जगह आपके रूट पार्टीशन में उपलब्ध होगा."
-#: plinth/modules/storage/views.py:88
+#: plinth/modules/storage/views.py:70
#, python-brace-format
msgid "Error expanding partition: {exception}"
msgstr "पार्टीशन का विस्तार करने में त्रुटि: {exception}"
-#: plinth/modules/storage/views.py:91
+#: plinth/modules/storage/views.py:73
msgid "Partition expanded successfully."
msgstr "पार्टीशन सफलतापूर्वक विस्तारित हुआ."
-#: plinth/modules/storage/views.py:109
+#: plinth/modules/storage/views.py:91
#, python-brace-format
msgid "{drive_vendor} {drive_model} can be safely unplugged."
msgstr "{drive_vendor}{drive_model} को सुरक्षित रूप से अनप्लग किया जा सकता है."
-#: plinth/modules/storage/views.py:113
+#: plinth/modules/storage/views.py:95
msgid "Device can be safely unplugged."
msgstr "डिवाइस सुरक्षित रूप से अनप्लग किया जा सकता है."
-#: plinth/modules/storage/views.py:123
+#: plinth/modules/storage/views.py:105
#, python-brace-format
msgid "Error ejecting device: {error_message}"
msgstr "एेरर इजेक्टिग्न डिवाइस: {error_message}"
-#: plinth/modules/syncthing/__init__.py:40
-#: plinth/modules/syncthing/manifest.py:28
-msgid "Syncthing"
-msgstr "सिंकतिन्ग"
-
-#: plinth/modules/syncthing/__init__.py:44
-msgid "File Synchronization"
-msgstr "फ़ाइल सिंक्रनाइज़ेशन"
-
-#: plinth/modules/syncthing/__init__.py:47
+#: plinth/modules/syncthing/__init__.py:26
msgid ""
"Syncthing is an application to synchronize files across multiple devices, e."
"g. your desktop computer and mobile phone. Creation, modification, or "
@@ -5722,7 +5826,7 @@ msgstr ""
"सिंक्रनाइज़ करने के लिए एक एप्लिकेशन है. सिंकतिन्ग चलते हए डिवाइसस पर किसी एक डिवाइस में "
"फ़ाइलों का निर्माण, संशोधन, या हटाना ऑटोमेटिक दोहरा किया गया."
-#: plinth/modules/syncthing/__init__.py:52
+#: plinth/modules/syncthing/__init__.py:31
#, python-brace-format
msgid ""
"Running Syncthing on {box_name} provides an extra synchronization point for "
@@ -5738,19 +5842,20 @@ msgstr ""
"सेट एक फ़ोल्डर्स का एक अलग सेट का उपयोग करके सिंक्रनाइज़ किया जा सकता है. {box_name} "
"पर वेब इंटरफेस सिर्फ \"एडमिन\" समूह के यूसकस के लिए उपलब्ध है."
-#: plinth/modules/syncthing/__init__.py:63
+#: plinth/modules/syncthing/__init__.py:40
msgid "Administer Syncthing application"
msgstr "सिंकतिन्ग एप्लिकेशन का प्रशासन करें"
-#: plinth/modules/tahoe/__init__.py:43
-msgid "Tahoe-LAFS"
-msgstr "टाहो-एलएएफएस"
+#: plinth/modules/syncthing/__init__.py:54
+#: plinth/modules/syncthing/manifest.py:13
+msgid "Syncthing"
+msgstr "सिंकतिन्ग"
-#: plinth/modules/tahoe/__init__.py:47
-msgid "Distributed File Storage"
-msgstr "फ़ाइल स्टोरेज वितरित"
+#: plinth/modules/syncthing/__init__.py:55
+msgid "File Synchronization"
+msgstr "फ़ाइल सिंक्रनाइज़ेशन"
-#: plinth/modules/tahoe/__init__.py:134
+#: plinth/modules/tahoe/__init__.py:30
msgid ""
"Tahoe-LAFS is a decentralized secure file storage system. It uses provider "
"independent security to store files over a distributed network of storage "
@@ -5761,7 +5866,7 @@ msgstr ""
"नेटवर्क पर फ़ाइलें स्टोर करने के लिये स्वतंत्र सुरक्षा का उपयोग करता है. अगर कुछ नोड्स विफल "
"होगा, आपकी फ़ाइलें शेष नोड्स से पुनर्प्राप्त किया जा सकता है."
-#: plinth/modules/tahoe/__init__.py:139
+#: plinth/modules/tahoe/__init__.py:35
#, python-brace-format
msgid ""
"This {box_name} hosts a storage node and an introducer by default. "
@@ -5771,7 +5876,15 @@ msgstr ""
"यह {box_name} एक स्टोरेज नोड आैर इंट्रोड्यूसर डिफ़ॉल्ट से होस्ट करता है. अतिरिक्त "
"इंट्रोड्यूसरस जोड़ा जा सकता है, जो इस नोड को अन्य स्टोरेज नोड्स में पेश करेगा."
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:33
+#: plinth/modules/tahoe/__init__.py:66
+msgid "Tahoe-LAFS"
+msgstr "टाहो-एलएएफएस"
+
+#: plinth/modules/tahoe/__init__.py:68
+msgid "Distributed File Storage"
+msgstr "फ़ाइल स्टोरेज वितरित"
+
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:17
#, python-format
msgid ""
"The Tahoe-LAFS server domain is set to %(domain_name)s. Changing the "
@@ -5784,37 +5897,33 @@ msgstr ""
"टाहो-एलएएफएस यहाॅं से पहुंच सकते हैंhttps://"
"%(domain_name)s:5678."
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:55
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:39
msgid "Local introducer"
msgstr "स्थानीय इंट्रोड्यूसर"
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:43
#: plinth/modules/tahoe/templates/tahoe-post-setup.html:59
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:75
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:92
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:76
msgid "Pet Name"
msgstr "पेट नाम"
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:72
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:56
msgid "Add new introducer"
msgstr "नया इंट्रोड्यूसर जोड़ें"
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:83
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:67
msgid "Add"
msgstr "जोड़ें"
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:88
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:72
msgid "Connected introducers"
msgstr "कनेक्टेड इंट्रोड्यूसरस"
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:105
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:89
msgid "Remove"
msgstr "निकालें"
-#: plinth/modules/tor/__init__.py:47
-msgid "Tor"
-msgstr "टोर"
-
-#: plinth/modules/tor/__init__.py:52
+#: plinth/modules/tor/__init__.py:33
msgid ""
"Tor is an anonymous communication system. You can learn more about it from "
"the Tor Project website. For "
@@ -5827,57 +5936,61 @@ msgstr ""
"टो प्रोजेक्ट सिफारिश की है कि आप टो ब्राउज़र उपयोग करें."
-#: plinth/modules/tor/__init__.py:83
+#: plinth/modules/tor/__init__.py:55
+msgid "Tor"
+msgstr "टोर"
+
+#: plinth/modules/tor/__init__.py:66
#, fuzzy
#| msgid "Tor Hidden Service"
msgid "Tor Onion Service"
msgstr "टोर हिडन सर्विस"
-#: plinth/modules/tor/__init__.py:87
+#: plinth/modules/tor/__init__.py:70
msgid "Tor Socks Proxy"
msgstr "टोर सोक्स प्रॉक्सी"
-#: plinth/modules/tor/__init__.py:91
+#: plinth/modules/tor/__init__.py:74
msgid "Tor Bridge Relay"
msgstr "टो ब्रिज रीले"
-#: plinth/modules/tor/__init__.py:112
+#: plinth/modules/tor/__init__.py:95
msgid "Tor relay port available"
msgstr "टोर रीले पोर्ट उपलब्ध है"
-#: plinth/modules/tor/__init__.py:122
+#: plinth/modules/tor/__init__.py:105
msgid "Obfs3 transport registered"
msgstr "Obfs3 ट्रांसपोर्ट पंजीकृत"
-#: plinth/modules/tor/__init__.py:132
+#: plinth/modules/tor/__init__.py:115
msgid "Obfs4 transport registered"
msgstr "Obfs4 ट्रांसपोर्ट पंजीकृत"
-#: plinth/modules/tor/__init__.py:225
+#: plinth/modules/tor/__init__.py:208
#, python-brace-format
msgid "Access URL {url} on tcp{kind} via Tor"
msgstr "यूआरएल एक्सेस करें {url} टीसीपी पर {kind} टोर के माध्यम से"
-#: plinth/modules/tor/__init__.py:236
+#: plinth/modules/tor/__init__.py:219
#, python-brace-format
msgid "Confirm Tor usage at {url} on tcp{kind}"
msgstr "टोर उपयोग की पुष्टि करें {url} पर टीसीपी पर {kind}"
-#: plinth/modules/tor/forms.py:46
+#: plinth/modules/tor/forms.py:31
msgid ""
"Enter a valid bridge with this format: [transport] IP:ORPort [fingerprint]"
msgstr ""
"इस फार्मेट उपयोग कर एक वैध ब्रिज दर्ज करें: [transport] IP:ORPort [fingerprint]"
-#: plinth/modules/tor/forms.py:88
+#: plinth/modules/tor/forms.py:73
msgid "Enable Tor"
msgstr "टोर सक्षम करें"
-#: plinth/modules/tor/forms.py:90
+#: plinth/modules/tor/forms.py:75
msgid "Use upstream bridges to connect to Tor network"
msgstr "अपस्ट्रीम ब्रिजस उपयोग करके टो नेटवर्क से कनेक्ट करें"
-#: plinth/modules/tor/forms.py:92
+#: plinth/modules/tor/forms.py:77
msgid ""
"When enabled, the bridges configured below will be used to connect to the "
"Tor network. Use this option if your Internet Service Provider (ISP) blocks "
@@ -5887,11 +6000,11 @@ msgstr ""
"करेगा. अगर आपका इंटरनेट सर्विस प्रदाता (ISP) टोर नेटवर्क से कनेक्शन सेंसर या ब्लॉक करता है "
"इस विकल्प का उपयोग करें. यह रिले मोड को अक्षम कर देगा."
-#: plinth/modules/tor/forms.py:97
+#: plinth/modules/tor/forms.py:82
msgid "Upstream bridges"
msgstr "अपस्ट्रीम ब्रिजस"
-#: plinth/modules/tor/forms.py:99
+#: plinth/modules/tor/forms.py:84
msgid ""
"You can get some bridges from https://bridges.torproject.org/ and copy/paste the bridge information "
@@ -5901,11 +6014,11 @@ msgstr ""
"\">https://bridges.torproject.org/ और ब्रिज जानकारी यहाॅं से कॉपी/पेस्ट कर सकते "
"हैं. वर्तमान में समर्थित ट्रांसपोर्ट्स कोई नहीं, obfs3, obfs4 और scamblesuit हैं."
-#: plinth/modules/tor/forms.py:105
+#: plinth/modules/tor/forms.py:90
msgid "Enable Tor relay"
msgstr "टोर रीले सक्षम करें"
-#: plinth/modules/tor/forms.py:106
+#: plinth/modules/tor/forms.py:91
#, python-brace-format
msgid ""
"When enabled, your {box_name} will run a Tor relay and donate bandwidth to "
@@ -5916,11 +6029,11 @@ msgstr ""
"अगर आपके पास दो से अधिक मेगाबिट से अपलोड \n"
"आैर डाउनलोड बैंडविड्थ है यह करें."
-#: plinth/modules/tor/forms.py:111
+#: plinth/modules/tor/forms.py:96
msgid "Enable Tor bridge relay"
msgstr "टोर ब्रिज रीले सक्षम करें"
-#: plinth/modules/tor/forms.py:113
+#: plinth/modules/tor/forms.py:98
msgid ""
"When enabled, relay information is published in the Tor bridge database "
"instead of public Tor relay database making it harder to censor this node. "
@@ -5930,13 +6043,13 @@ msgstr ""
"और इस नोड सेंसर करने के लिए और मुश्किल होगा. यह दूसरों को सेंसरशिप से टाल करने के लिये मदद "
"करता है."
-#: plinth/modules/tor/forms.py:118
+#: plinth/modules/tor/forms.py:103
#, fuzzy
#| msgid "Enable Tor Hidden Service"
msgid "Enable Tor Hidden Service"
msgstr "टोर हिडन सर्विस सक्षम करें"
-#: plinth/modules/tor/forms.py:120
+#: plinth/modules/tor/forms.py:105
#, fuzzy, python-brace-format
#| msgid ""
#| "A hidden service will allow {box_name} to provide selected services (such "
@@ -5950,11 +6063,11 @@ msgstr ""
"हिडन सर्विस {box_name} को इसके स्थान को प्रकट किए बिना चयनित सर्विसस प्रदान करने की "
"अनुमति देगी. स्ट्रॉन्ग गुमनामी के लिए इससे अभी न करें."
-#: plinth/modules/tor/forms.py:125
+#: plinth/modules/tor/forms.py:110
msgid "Download software packages over Tor"
msgstr "टो पर सॉफ्टवेयर पैकेजस डाउनलोड करें"
-#: plinth/modules/tor/forms.py:126
+#: plinth/modules/tor/forms.py:111
msgid ""
"When enabled, software will be downloaded over the Tor network for "
"installations and upgrades. This adds a degree of privacy and security "
@@ -5963,37 +6076,37 @@ msgstr ""
"सक्षम होने पर सॉफ्टवेयर इंस्टालेशन और अपग्रेड के लिए टो नेटवर्क पर डाउनलोड किया जाएगा. "
"यह सॉफ़्टवेयर डाउनलोड के दौरान एकांत और सुरक्षा जोड़ता है."
-#: plinth/modules/tor/forms.py:141
+#: plinth/modules/tor/forms.py:126
msgid "Specify at least one upstream bridge to use upstream bridges."
msgstr "अपस्ट्रीम ब्रिजस उपयोग करने के लिए एक अपस्ट्रीम ब्रिजस निर्दिष्ट करें."
-#: plinth/modules/tor/manifest.py:29
+#: plinth/modules/tor/manifest.py:14
msgid "Tor Browser"
msgstr "टोर ब्राउजर"
-#: plinth/modules/tor/manifest.py:45
+#: plinth/modules/tor/manifest.py:30
msgid "Orbot: Proxy with Tor"
msgstr "अोरबोट: टोर के साथ प्रॉक्सी"
-#: plinth/modules/tor/templates/tor.html:41
+#: plinth/modules/tor/templates/tor.html:26
msgid "Tor configuration is being updated"
msgstr "टोर कॉन्फ़िगरेशन अपडेट किया जा रहा है"
-#: plinth/modules/tor/templates/tor.html:50
+#: plinth/modules/tor/templates/tor.html:35
#, fuzzy
#| msgid "Hidden Service"
msgid "Onion Service"
msgstr "हिडन सर्विस"
-#: plinth/modules/tor/templates/tor.html:52
+#: plinth/modules/tor/templates/tor.html:37
msgid "Ports"
msgstr "पोर्टस"
-#: plinth/modules/tor/templates/tor.html:82
+#: plinth/modules/tor/templates/tor.html:67
msgid "Relay"
msgstr "रीले"
-#: plinth/modules/tor/templates/tor.html:84
+#: plinth/modules/tor/templates/tor.html:69
#, python-format
msgid ""
"If your %(box_name)s is behind a router or firewall, you should make sure "
@@ -6002,21 +6115,16 @@ msgstr ""
"अगर आपका %(box_name)s एक रूटर या फ़ायरवॉल के पीछे है, आपको यह सुनिश्चित करना चाहिए "
"कि पोर्टस खुले हैं, और अगर जरुरत है,पोर्ट-फॉरवर्डेड:"
-#: plinth/modules/tor/templates/tor.html:112
+#: plinth/modules/tor/templates/tor.html:97
msgid "SOCKS"
msgstr "सॉक्स"
-#: plinth/modules/tor/templates/tor.html:115
+#: plinth/modules/tor/templates/tor.html:100
#, python-format
msgid "A Tor SOCKS port is available on your %(box_name)s on TCP port 9050."
msgstr "एक टोर सॉक्स पोर्ट आपका %(box_name)s र उपलब्ध है, TCP पोर्ट ९०५० पर."
-#: plinth/modules/transmission/__init__.py:41
-#: plinth/modules/transmission/manifest.py:24
-msgid "Transmission"
-msgstr "हस्तांतरण"
-
-#: plinth/modules/transmission/__init__.py:48
+#: plinth/modules/transmission/__init__.py:27
msgid ""
"BitTorrent is a peer-to-peer file sharing protocol. Transmission daemon "
"handles Bitorrent file sharing. Note that BitTorrent is not anonymous."
@@ -6024,15 +6132,12 @@ msgstr ""
"बिटटोरेंट एक पीअर-टू-पीअर फ़ाइल साझा प्रोटोकॉल है. ट्रांसमिशन डेमॉन बिटटोरेंट फ़ाइल साझा "
"संभालती है. नोट-बिटटोरेंट अनाम नहीं है."
-#: plinth/modules/ttrss/__init__.py:43 plinth/modules/ttrss/manifest.py:34
-msgid "Tiny Tiny RSS"
-msgstr "टिनी टिनी आरएसएस"
+#: plinth/modules/transmission/__init__.py:48
+#: plinth/modules/transmission/manifest.py:9
+msgid "Transmission"
+msgstr "हस्तांतरण"
-#: plinth/modules/ttrss/__init__.py:47
-msgid "News Feed Reader"
-msgstr "समाचार फ़ीड रीडर"
-
-#: plinth/modules/ttrss/__init__.py:50
+#: plinth/modules/ttrss/__init__.py:29
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 "
@@ -6042,7 +6147,7 @@ msgstr ""
"से समाचार पढ़ने की अनुमति देने के लिए डिज़ाइन किया गया है, एक असली डेस्कटॉप एप्लिकेशन के "
"जैसे."
-#: plinth/modules/ttrss/__init__.py:54
+#: plinth/modules/ttrss/__init__.py:33
#, fuzzy, python-brace-format
#| msgid ""
#| "When enabled, Tiny Tiny RSS will be available from /"
@@ -6056,7 +6161,7 @@ msgstr ""
"माैजूद होते है. यह किसी एक {box_name} के सात लॉग इन "
"कर सकता है."
-#: plinth/modules/ttrss/__init__.py:58
+#: plinth/modules/ttrss/__init__.py:37
#, fuzzy
#| msgid ""
#| "When using a mobile or desktop application for Tiny Tiny RSS, use the URL "
@@ -6069,67 +6174,75 @@ msgstr ""
"टैनी टैनी आरएसएस का मोबाइल या डेस्कटॉप एप्लिकेशन उपयोग करते समय, यह यूआरएल/tt-rss-app कनेक्ट करने के लिए उपयोग करें."
-#: plinth/modules/ttrss/__init__.py:65
+#: plinth/modules/ttrss/__init__.py:42
msgid "Read and subscribe to news feeds"
msgstr "समाचार फ़ीड्स पढ़ें और सब्सक्राइब करें"
-#: plinth/modules/ttrss/manifest.py:25
+#: plinth/modules/ttrss/__init__.py:56 plinth/modules/ttrss/manifest.py:19
+msgid "Tiny Tiny RSS"
+msgstr "टिनी टिनी आरएसएस"
+
+#: plinth/modules/ttrss/__init__.py:57
+msgid "News Feed Reader"
+msgstr "समाचार फ़ीड रीडर"
+
+#: plinth/modules/ttrss/manifest.py:10
msgid "Tiny Tiny RSS (Fork)"
msgstr "टैनी टैनी आरएसएस (फोर्क)"
-#: plinth/modules/upgrades/__init__.py:37 plinth/templates/setup.html:89
-msgid "Update"
-msgstr "अपडेट"
-
-#: plinth/modules/upgrades/__init__.py:40
+#: plinth/modules/upgrades/__init__.py:23
msgid "Check for and apply the latest software and security updates."
msgstr ""
-#: plinth/modules/upgrades/__init__.py:84
+#: plinth/modules/upgrades/__init__.py:38 plinth/templates/setup.html:74
+msgid "Update"
+msgstr "अपडेट"
+
+#: plinth/modules/upgrades/__init__.py:71
#, fuzzy
#| msgid "FreedomBox Foundation"
msgid "FreedomBox Updated"
msgstr "फ्रीडमबाक्स फाउंडेशन"
-#: plinth/modules/upgrades/forms.py:28
+#: plinth/modules/upgrades/forms.py:13
#, fuzzy
#| msgid "Enable automatic upgrades"
msgid "Enable auto-update"
msgstr "ऑटोमेटिक अपग्रेडस सक्षम करें"
-#: plinth/modules/upgrades/forms.py:29
+#: plinth/modules/upgrades/forms.py:14
msgid "When enabled, FreedomBox automatically updates once a day."
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades-new-release.html:24
+#: plinth/modules/upgrades/templates/upgrades-new-release.html:9
#, fuzzy, python-format
#| msgid "%(box_name)s is up to date."
msgid "%(box_name)s Updated"
msgstr "%(box_name)s उद्दिनांकित है."
-#: plinth/modules/upgrades/templates/upgrades-new-release.html:28
+#: plinth/modules/upgrades/templates/upgrades-new-release.html:13
#, python-format
msgid ""
"%(box_name)s has been updated to version %(version)s. See the release announcement."
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades-new-release.html:37
-#: plinth/templates/notifications.html:59
+#: plinth/modules/upgrades/templates/upgrades-new-release.html:22
+#: plinth/templates/notifications.html:44
msgid "Dismiss"
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades.html:45
+#: plinth/modules/upgrades/templates/upgrades.html:30
#, fuzzy
#| msgid "Update"
msgid "Update now"
msgstr "अपडेट"
-#: plinth/modules/upgrades/templates/upgrades.html:54
+#: plinth/modules/upgrades/templates/upgrades.html:39
msgid "Updating..."
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades.html:59
+#: plinth/modules/upgrades/templates/upgrades.html:44
#, fuzzy
#| msgid ""
#| "Depending on the number of packages to install, this may take a long time "
@@ -6145,55 +6258,51 @@ msgstr ""
"जब अपग्रेडस प्रगति पर हैं, दुसरे पैकेजस इंस्टॉल नहीं कर सकेगा. अपग्रेड करते समय, यह वेब इंटरफ़ेस "
"शयद अस्थायी रूप से अनुपलब्ध है और एक त्रुटि दिखाएे. जारी रखने के लिए पेज रिफ्रेश करें."
-#: plinth/modules/upgrades/templates/upgrades.html:73
+#: plinth/modules/upgrades/templates/upgrades.html:58
msgid "Toggle recent update logs"
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades_configure.html:26
-#: plinth/modules/upgrades/templates/upgrades_configure.html:27
-#: plinth/modules/upgrades/views.py:107
+#: plinth/modules/upgrades/templates/upgrades_configure.html:11
+#: plinth/modules/upgrades/templates/upgrades_configure.html:12
+#: plinth/modules/upgrades/views.py:89
#, fuzzy
#| msgid "Last update"
msgid "Manual update"
msgstr "अंतिम अपडेट"
-#: plinth/modules/upgrades/views.py:66
+#: plinth/modules/upgrades/views.py:48
#, python-brace-format
msgid "Error when configuring unattended-upgrades: {error}"
msgstr "अनअटेंडेड-अपग्रेडस कॉन्फ़िगर करते समय त्रुटि: {error}"
-#: plinth/modules/upgrades/views.py:70
+#: plinth/modules/upgrades/views.py:52
msgid "Automatic upgrades enabled"
msgstr "ऑटोमेटिक अपग्रेडस सक्षम किया गया"
-#: plinth/modules/upgrades/views.py:73
+#: plinth/modules/upgrades/views.py:55
msgid "Automatic upgrades disabled"
msgstr "ऑटोमेटिक अपग्रेडस अक्षम किया गया"
-#: plinth/modules/upgrades/views.py:75
+#: plinth/modules/upgrades/views.py:57
msgid "Settings unchanged"
msgstr "सेटिंगस अपरिवर्तित"
-#: plinth/modules/upgrades/views.py:101
+#: plinth/modules/upgrades/views.py:83
msgid "Upgrade process started."
msgstr "अपग्रेड प्रक्रिया शुरू हुई."
-#: plinth/modules/upgrades/views.py:104
+#: plinth/modules/upgrades/views.py:86
msgid "Starting upgrade failed."
msgstr "अपग्रेड प्रारंभ करना विफल रहा."
-#: plinth/modules/users/__init__.py:51
-msgid "Users and Groups"
-msgstr "यूसरस और समूह"
-
-#: plinth/modules/users/__init__.py:54
+#: plinth/modules/users/__init__.py:37
msgid ""
"Create and managed user accounts. These accounts serve as centralized "
"authentication mechanism for most apps. Some apps further require a user "
"account to be part of a group to authorize the user to access the app."
msgstr ""
-#: plinth/modules/users/__init__.py:59
+#: plinth/modules/users/__init__.py:42
#, python-brace-format
msgid ""
"Any user may login to {box_name} web interface to see a list of apps "
@@ -6201,35 +6310,39 @@ msgid ""
"group may alter apps or system settings."
msgstr ""
-#: plinth/modules/users/__init__.py:128
+#: plinth/modules/users/__init__.py:64
+msgid "Users and Groups"
+msgstr "यूसरस और समूह"
+
+#: plinth/modules/users/__init__.py:115
#, python-brace-format
msgid "Check LDAP entry \"{search_item}\""
msgstr "एलडीएपी प्रविष्टि चेक करें \"{search_item}\""
-#: plinth/modules/users/forms.py:43
+#: plinth/modules/users/forms.py:28
msgid "Access to all services and system settings"
msgstr "सब सर्विसस और सिस्टम सेटिंग्स तक पहुंच"
-#: plinth/modules/users/forms.py:59
+#: plinth/modules/users/forms.py:44
msgid "Username is taken or is reserved."
msgstr "यूसरनाम लिया है या आरक्षित है."
-#: plinth/modules/users/forms.py:87
+#: plinth/modules/users/forms.py:72
#, fuzzy
#| msgid "Invalid server name"
msgid "Enter a valid username."
msgstr "सर्वर नाम अमान्य है"
-#: plinth/modules/users/forms.py:93
+#: plinth/modules/users/forms.py:78
msgid ""
"Required. 150 characters or fewer. English letters, digits and @/./-/_ only."
msgstr ""
-#: plinth/modules/users/forms.py:106 plinth/modules/users/forms.py:222
+#: plinth/modules/users/forms.py:91 plinth/modules/users/forms.py:207
msgid "Permissions"
msgstr "अनुमतियाँ"
-#: plinth/modules/users/forms.py:109
+#: plinth/modules/users/forms.py:94
msgid ""
"Select which services should be available to the new user. The user will be "
"able to log in to services that support single sign-on through LDAP, if they "
@@ -6242,20 +6355,20 @@ msgstr ""
"This means that devices on the Internet can reach you when you are " +"connected to the Internet. Every time you connect to the Internet with your " +"Internet Service Provider (ISP), you may get a different IP address, " +"especially after some offline time. Many ISPs offer this type of " +"connectivity. If you have a public IP address but are unsure if it changes " +"over time or not, it is safer to choose this option.
" +msgstr "" + #: plinth/modules/networks/forms.py:313 +#, python-brace-format +msgid "" +"I have a public IP address that does not change overtime (recommended)This means that devices on the Internet can reach you " +"when you are connected to the Internet. Every time you connect to the " +"Internet with your Internet Service Provider (ISP), you always get the same " +"IP address. This is the most trouble-free setup for many {box_name} services " +"but very few ISPs offer this. You may be able to get this service from your " +"ISP by making an additional payment.
" +msgstr "" + +#: plinth/modules/networks/forms.py:326 +#, python-brace-format +msgid "" +"I dont have a public IP addressThis means that " +"devices on the Internet can not reach you when you are connected to " +"the Internet. Every time you connect to the Internet with your Internet " +"Service Provider (ISP), you get an IP address that is only relevant for " +"local networks. Many ISPs offer this type of connectivity. This is the most " +"troublesome situation for hosting services at home. {box_name} provides many " +"workaround solutions but each solution has some limitations.
" +msgstr "" + +#: plinth/modules/networks/forms.py:351 #, fuzzy #| msgid "An error occurred during configuration." msgid "Preferred router configuration" msgstr "Hiba történt a beállítás közben." -#: plinth/modules/networks/forms.py:318 +#: plinth/modules/networks/forms.py:356 #, python-brace-format msgid "" -"Use DMZ feature to forward all trafficMost routers " -"provide a configuration setting called DMZ. This will allow the router to " -"forward all incoming traffic from the internet to a single IP address such " -"as the {box_name}'s address. First remember to configure a static local IP " -"address for your {box_name} in your router's configuration.
" +"Use DMZ feature to forward all traffic (recommended)Most routers provide a configuration setting called DMZ. This will allow " +"the router to forward all incoming traffic from the Internet to a single IP " +"address such as the {box_name}'s IP address. First remember to configure a " +"static local IP address for your {box_name} in your router's configuration." +"p>" msgstr "" -#: plinth/modules/networks/forms.py:332 +#: plinth/modules/networks/forms.py:368 #, python-brace-format msgid "" -"Forward Specific Traffic as needed by each application
You may alternatively choose to forward only specific traffic to your " "{box_name}. This is ideal if you have other servers like {box_name} in your " "network or if your router does not support DMZ feature. All applications " @@ -3554,266 +3625,272 @@ msgid "" "to be forwarded for that application to work.
" msgstr "" -#: plinth/modules/networks/forms.py:349 +#: plinth/modules/networks/forms.py:382 msgid "" -"Router is currently unconfiguredChoose this if you " +"Router is currently unconfigured
Choose this if you " "have not configured or are unable to configure the router currently and wish " "to be reminded later. Some of the other configuration steps may fail.
" msgstr "" -#: plinth/modules/networks/networks.py:43 +#: plinth/modules/networks/networks.py:32 msgid "Network Connections" msgstr "Hálózati kapcsolatok" -#: plinth/modules/networks/networks.py:59 +#: plinth/modules/networks/networks.py:46 msgid "Cannot show connection: Connection not found." msgstr "Nem jeleníthető meg a kapcsolat, mivel az nem található." -#: plinth/modules/networks/networks.py:94 +#: plinth/modules/networks/networks.py:81 msgid "Connection Information" msgstr "Információ a kapcsolatról" -#: plinth/modules/networks/networks.py:108 +#: plinth/modules/networks/networks.py:95 msgid "Cannot edit connection: Connection not found." msgstr "A kapcsolat nem szerkeszthető, mivel az nem található." -#: plinth/modules/networks/networks.py:114 +#: plinth/modules/networks/networks.py:101 msgid "This type of connection is not yet understood." msgstr "Az ilyen típusú kapcsolat még nem ismert." -#: plinth/modules/networks/networks.py:136 -#: plinth/modules/networks/networks.py:220 -#: plinth/modules/networks/templates/connections_edit.html:35 +#: plinth/modules/networks/networks.py:123 +#: plinth/modules/networks/networks.py:207 +#: plinth/modules/networks/templates/connections_edit.html:20 msgid "Edit Connection" msgstr "Kapcsolat szerkesztése" -#: plinth/modules/networks/networks.py:232 +#: plinth/modules/networks/networks.py:219 #, python-brace-format msgid "Activated connection {name}." msgstr "{name} kapcsolat aktiválva." -#: plinth/modules/networks/networks.py:236 +#: plinth/modules/networks/networks.py:223 msgid "Failed to activate connection: Connection not found." msgstr "Kapcsolat aktiválása sikertelen: kapcsolat nem található." -#: plinth/modules/networks/networks.py:242 +#: plinth/modules/networks/networks.py:229 #, python-brace-format msgid "Failed to activate connection {name}: No suitable device is available." msgstr "" "{name} kapcsolat aktiválása sikertelen: nem áll rendelkezésre megfelelő " "eszköz." -#: plinth/modules/networks/networks.py:255 +#: plinth/modules/networks/networks.py:242 #, python-brace-format msgid "Deactivated connection {name}." msgstr "{name} kapcsolat deaktiválva." -#: plinth/modules/networks/networks.py:259 +#: plinth/modules/networks/networks.py:246 msgid "Failed to de-activate connection: Connection not found." msgstr "Kapcsolat deaktiválása sikertelen: kapcsolat nem található." -#: plinth/modules/networks/networks.py:269 -#: plinth/modules/networks/templates/connections_list.html:62 -#: plinth/modules/networks/templates/connections_list.html:64 +#: plinth/modules/networks/networks.py:256 +#: plinth/modules/networks/templates/connections_list.html:12 +#: plinth/modules/networks/templates/connections_list.html:14 msgid "Nearby Wi-Fi Networks" msgstr "Wi-Fi hálózatok a közelben" -#: plinth/modules/networks/networks.py:293 -#: plinth/modules/networks/templates/connections_list.html:67 -#: plinth/modules/networks/templates/connections_list.html:69 -#: plinth/modules/wireguard/templates/wireguard_add_server.html:34 +#: plinth/modules/networks/networks.py:280 +#: plinth/modules/networks/templates/connections_list.html:17 +#: plinth/modules/networks/templates/connections_list.html:19 +#: plinth/modules/wireguard/templates/wireguard_add_server.html:19 msgid "Add Connection" msgstr "Kapcsolat hozzáadása" -#: plinth/modules/networks/networks.py:311 +#: plinth/modules/networks/networks.py:298 msgid "Adding New Generic Connection" msgstr "Új általános kapcsolat hozzáadása" -#: plinth/modules/networks/networks.py:329 +#: plinth/modules/networks/networks.py:316 msgid "Adding New Ethernet Connection" msgstr "Új Ethernet kapcsolat hozzáadása" -#: plinth/modules/networks/networks.py:347 +#: plinth/modules/networks/networks.py:334 msgid "Adding New PPPoE Connection" msgstr "Új PPPoE kapcsolat hozzáadása" -#: plinth/modules/networks/networks.py:382 +#: plinth/modules/networks/networks.py:369 msgid "Adding New Wi-Fi Connection" msgstr "Új Wi-Fi kapcsolat hozzáadása" -#: plinth/modules/networks/networks.py:397 +#: plinth/modules/networks/networks.py:384 #, python-brace-format msgid "Connection {name} deleted." msgstr "Kapcsolat törölve: {name}." -#: plinth/modules/networks/networks.py:401 -#: plinth/modules/networks/networks.py:411 +#: plinth/modules/networks/networks.py:388 +#: plinth/modules/networks/networks.py:398 msgid "Failed to delete connection: Connection not found." msgstr "A kapcsolat törlése sikertelen, mivel az nem található." -#: plinth/modules/networks/networks.py:416 -#: plinth/modules/networks/templates/connections_delete.html:26 +#: plinth/modules/networks/networks.py:403 +#: plinth/modules/networks/templates/connections_delete.html:11 msgid "Delete Connection" msgstr "Kapcsolat törlése" -#: plinth/modules/networks/networks.py:442 +#: plinth/modules/networks/networks.py:428 #, fuzzy #| msgid "Tor configuration is being updated" msgid "Router configuration type saved." msgstr "A Tor beállításainak frissítése folyamatban" -#: plinth/modules/networks/templates/connection_show.html:43 +#: plinth/modules/networks/networks.py:474 +#, fuzzy +#| msgid "Tor configuration is being updated" +msgid "Internet connection type saved." +msgstr "A Tor beállításainak frissítése folyamatban" + +#: plinth/modules/networks/templates/connection_show.html:28 msgid "Edit connection" msgstr "Kapcsolat szerkesztése" -#: plinth/modules/networks/templates/connection_show.html:43 -#: plinth/modules/wireguard/templates/wireguard_show_client.html:83 -#: plinth/modules/wireguard/templates/wireguard_show_server.html:84 -#: plinth/templates/base.html:167 plinth/templates/base.html:168 +#: plinth/modules/networks/templates/connection_show.html:28 +#: plinth/modules/wireguard/templates/wireguard_show_client.html:68 +#: plinth/modules/wireguard/templates/wireguard_show_server.html:69 +#: plinth/templates/base.html:152 plinth/templates/base.html:153 msgid "Edit" msgstr "Szerkesztés" -#: plinth/modules/networks/templates/connection_show.html:50 -#: plinth/modules/networks/templates/connections_list.html:90 +#: plinth/modules/networks/templates/connection_show.html:35 +#: plinth/modules/networks/templates/connections_list.html:40 msgid "Deactivate" msgstr "Deaktivál" -#: plinth/modules/networks/templates/connection_show.html:57 -#: plinth/modules/networks/templates/connections_list.html:98 +#: plinth/modules/networks/templates/connection_show.html:42 +#: plinth/modules/networks/templates/connections_list.html:48 msgid "Activate" msgstr "Aktivál" -#: plinth/modules/networks/templates/connection_show.html:63 +#: plinth/modules/networks/templates/connection_show.html:48 msgid "Delete connection" msgstr "Kapcsolat törlése" -#: plinth/modules/networks/templates/connection_show.html:66 -#: plinth/modules/networks/templates/connections_diagram.html:73 -#: plinth/modules/networks/templates/connections_diagram.html:76 -#: plinth/modules/networks/templates/connections_diagram.html:105 -#: plinth/modules/networks/templates/connections_diagram.html:127 +#: plinth/modules/networks/templates/connection_show.html:51 +#: plinth/modules/networks/templates/connections_diagram.html:58 +#: plinth/modules/networks/templates/connections_diagram.html:61 +#: plinth/modules/networks/templates/connections_diagram.html:90 +#: plinth/modules/networks/templates/connections_diagram.html:112 msgid "Connection" msgstr "Kapcsolat" -#: plinth/modules/networks/templates/connection_show.html:71 +#: plinth/modules/networks/templates/connection_show.html:56 msgid "Primary connection" msgstr "Elsődleges kapcsolat" -#: plinth/modules/networks/templates/connection_show.html:73 -#: plinth/modules/networks/templates/connection_show.html:217 -#: plinth/modules/networks/templates/connection_show.html:256 +#: plinth/modules/networks/templates/connection_show.html:58 +#: plinth/modules/networks/templates/connection_show.html:202 +#: plinth/modules/networks/templates/connection_show.html:241 msgid "yes" msgstr "igen" -#: plinth/modules/networks/templates/connection_show.html:84 -#: plinth/modules/storage/templates/storage.html:40 +#: plinth/modules/networks/templates/connection_show.html:69 +#: plinth/modules/storage/templates/storage.html:25 msgid "Device" msgstr "Eszköz" -#: plinth/modules/networks/templates/connection_show.html:88 +#: plinth/modules/networks/templates/connection_show.html:73 msgid "State" msgstr "Állapot" -#: plinth/modules/networks/templates/connection_show.html:93 +#: plinth/modules/networks/templates/connection_show.html:78 msgid "State reason" msgstr "Az állapot oka" -#: plinth/modules/networks/templates/connection_show.html:102 +#: plinth/modules/networks/templates/connection_show.html:87 msgid "MAC address" msgstr "MAC cím" -#: plinth/modules/networks/templates/connection_show.html:106 +#: plinth/modules/networks/templates/connection_show.html:91 msgid "Interface" msgstr "Interfész" -#: plinth/modules/networks/templates/connection_show.html:110 -#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:33 -#: plinth/modules/snapshot/templates/snapshot_manage.html:45 -#: plinth/modules/snapshot/templates/snapshot_rollback.html:41 +#: plinth/modules/networks/templates/connection_show.html:95 +#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:18 +#: plinth/modules/snapshot/templates/snapshot_manage.html:30 +#: plinth/modules/snapshot/templates/snapshot_rollback.html:26 msgid "Description" msgstr "Leírás" -#: plinth/modules/networks/templates/connection_show.html:116 +#: plinth/modules/networks/templates/connection_show.html:101 msgid "Physical Link" msgstr "Fizikai kapcsolat" -#: plinth/modules/networks/templates/connection_show.html:121 +#: plinth/modules/networks/templates/connection_show.html:106 msgid "Link state" msgstr "Kapcsolat állapota" -#: plinth/modules/networks/templates/connection_show.html:125 +#: plinth/modules/networks/templates/connection_show.html:110 msgid "cable is connected" msgstr "kábel csatlakoztatva" -#: plinth/modules/networks/templates/connection_show.html:128 +#: plinth/modules/networks/templates/connection_show.html:113 msgid "please check cable" msgstr "Kérem ellenőrizze a kábelt" -#: plinth/modules/networks/templates/connection_show.html:133 -#: plinth/modules/networks/templates/connection_show.html:149 +#: plinth/modules/networks/templates/connection_show.html:118 +#: plinth/modules/networks/templates/connection_show.html:134 msgid "Speed" msgstr "Sebesség" -#: plinth/modules/networks/templates/connection_show.html:135 +#: plinth/modules/networks/templates/connection_show.html:120 #, python-format msgid "%(ethernet_speed)s Mbit/s" msgstr "%(ethernet_speed)s Mbit/s" -#: plinth/modules/networks/templates/connection_show.html:151 +#: plinth/modules/networks/templates/connection_show.html:136 #, python-format msgid "%(wireless_bitrate)s Mbit/s" msgstr "%(wireless_bitrate)s Mbit/s" -#: plinth/modules/networks/templates/connection_show.html:163 +#: plinth/modules/networks/templates/connection_show.html:148 msgid "Signal strength" msgstr "Jelerősség" -#: plinth/modules/networks/templates/connection_show.html:181 +#: plinth/modules/networks/templates/connection_show.html:166 msgid "IPv4" msgstr "IPv4" -#: plinth/modules/networks/templates/connection_show.html:186 -#: plinth/modules/networks/templates/connection_show.html:227 -#: plinth/modules/shadowsocks/forms.py:64 +#: plinth/modules/networks/templates/connection_show.html:171 +#: plinth/modules/networks/templates/connection_show.html:212 +#: plinth/modules/shadowsocks/forms.py:49 msgid "Method" msgstr "Módszer" -#: plinth/modules/networks/templates/connection_show.html:193 -#: plinth/modules/networks/templates/connection_show.html:234 +#: plinth/modules/networks/templates/connection_show.html:178 +#: plinth/modules/networks/templates/connection_show.html:219 msgid "IP address" msgstr "IP cím" -#: plinth/modules/networks/templates/connection_show.html:209 -#: plinth/modules/networks/templates/connection_show.html:248 +#: plinth/modules/networks/templates/connection_show.html:194 +#: plinth/modules/networks/templates/connection_show.html:233 msgid "DNS server" msgstr "DNS szerver" -#: plinth/modules/networks/templates/connection_show.html:216 -#: plinth/modules/networks/templates/connection_show.html:255 -#: plinth/modules/storage/forms.py:156 +#: plinth/modules/networks/templates/connection_show.html:201 +#: plinth/modules/networks/templates/connection_show.html:240 +#: plinth/modules/storage/forms.py:141 msgid "Default" msgstr "Alapértelmezett" -#: plinth/modules/networks/templates/connection_show.html:222 +#: plinth/modules/networks/templates/connection_show.html:207 msgid "IPv6" msgstr "IPv6" -#: plinth/modules/networks/templates/connection_show.html:263 +#: plinth/modules/networks/templates/connection_show.html:248 msgid "This connection is not active." msgstr "Ez a kapcsolat nem aktív." -#: plinth/modules/networks/templates/connection_show.html:266 -#: plinth/modules/security/__init__.py:38 plinth/modules/security/views.py:47 +#: plinth/modules/networks/templates/connection_show.html:251 +#: plinth/modules/security/__init__.py:45 msgid "Security" msgstr "Biztonság" -#: plinth/modules/networks/templates/connection_show.html:271 -#: plinth/modules/networks/templates/connection_show.html:291 -#: plinth/modules/networks/templates/connection_show.html:310 +#: plinth/modules/networks/templates/connection_show.html:256 +#: plinth/modules/networks/templates/connection_show.html:276 +#: plinth/modules/networks/templates/connection_show.html:295 msgid "Firewall zone" msgstr "Tűzfal zóna" -#: plinth/modules/networks/templates/connection_show.html:280 +#: plinth/modules/networks/templates/connection_show.html:265 msgid "" "This interface should be connected to a local network/machine. If you " "connect this interface to a public network, services meant to be available " @@ -3824,7 +3901,7 @@ msgstr "" "tervezett szolgáltatások kívülről is elérhetőek lesznek. Ez biztonsági " "kockázatot jelent." -#: plinth/modules/networks/templates/connection_show.html:300 +#: plinth/modules/networks/templates/connection_show.html:285 msgid "" "This interface should receive your Internet connection. If you connect it to " "a local network/machine, many services meant to available only internally " @@ -3834,7 +3911,7 @@ msgstr "" "helyi hálózathoz/géphez csatlakoztatod, sok, csak belsőként elérhetőnek " "tervezett szolgáltatás nem lesz elérhető." -#: plinth/modules/networks/templates/connection_show.html:319 +#: plinth/modules/networks/templates/connection_show.html:304 #, python-format msgid "" "This interface is not maintained by %(box_name)s. Its security status is " @@ -3847,114 +3924,139 @@ msgstr "" "szolgáltatása nem biztos, hogy elérhető lesz ezen az interfészen. Ajánlott " "kikapcsolni vagy törölni ezt a kapcsolatot, majd újra beállítani." -#: plinth/modules/networks/templates/connections_create.html:34 +#: plinth/modules/networks/templates/connections_create.html:19 msgid "Create Connection" msgstr "Kapcsolat létrehozása" -#: plinth/modules/networks/templates/connections_delete.html:29 +#: plinth/modules/networks/templates/connections_delete.html:14 #, python-format msgid "Delete connection %(name)s permanently?" msgstr "%(name)s kapcsolatot véglegesen törlöd?" -#: plinth/modules/networks/templates/connections_diagram.html:65 +#: plinth/modules/networks/templates/connections_diagram.html:50 msgid "Internet" msgstr "Internet" -#: plinth/modules/networks/templates/connections_diagram.html:70 -#: plinth/modules/networks/templates/connections_diagram.html:102 +#: plinth/modules/networks/templates/connections_diagram.html:55 +#: plinth/modules/networks/templates/connections_diagram.html:87 msgid "Spacing" msgstr "Térköz" -#: plinth/modules/networks/templates/connections_diagram.html:83 -#: plinth/modules/networks/templates/connections_diagram.html:113 -#: plinth/network.py:40 +#: plinth/modules/networks/templates/connections_diagram.html:68 +#: plinth/modules/networks/templates/connections_diagram.html:98 +#: plinth/network.py:25 msgid "Ethernet" msgstr "Ethernet" -#: plinth/modules/networks/templates/connections_diagram.html:86 -#: plinth/modules/networks/templates/connections_diagram.html:116 -#: plinth/network.py:41 +#: plinth/modules/networks/templates/connections_diagram.html:71 +#: plinth/modules/networks/templates/connections_diagram.html:101 +#: plinth/network.py:26 msgid "Wi-Fi" msgstr "Wi-Fi" -#: plinth/modules/networks/templates/connections_diagram.html:89 +#: plinth/modules/networks/templates/connections_diagram.html:74 #, python-format msgid "Show connection %(connection.name)s" msgstr "%(connection.name)s kapcsolat megjelenítése" -#: plinth/modules/networks/templates/connections_diagram.html:119 +#: plinth/modules/networks/templates/connections_diagram.html:104 #, python-format msgid "Show connection %(name)s" msgstr "%(name)s kapcsolat megjelenítése" -#: plinth/modules/networks/templates/connections_diagram.html:131 +#: plinth/modules/networks/templates/connections_diagram.html:116 msgid "Computer" msgstr "Számítógép" -#: plinth/modules/networks/templates/connections_list.html:58 +#: plinth/modules/networks/templates/connections_list.html:8 #, fuzzy #| msgid "Connection" msgid "Connections" msgstr "Kapcsolat" -#: plinth/modules/networks/templates/connections_list.html:79 +#: plinth/modules/networks/templates/connections_list.html:29 #, python-format msgid "Delete connection %(name)s" msgstr "%(name)s kapcsolat törlése" -#: plinth/modules/networks/templates/connections_list.html:104 +#: plinth/modules/networks/templates/connections_list.html:54 msgid "Active" msgstr "Aktív" -#: plinth/modules/networks/templates/connections_list.html:107 +#: plinth/modules/networks/templates/connections_list.html:57 msgid "Inactive" msgstr "Inaktív" -#: plinth/modules/networks/templates/connections_list.html:124 -#, python-format -msgid "%(box_name)s Internet Connectivity" +#: plinth/modules/networks/templates/connections_type_select.html:19 +msgid "Create..." +msgstr "Létrehoz..." + +#: plinth/modules/networks/templates/internet_connectivity_content.html:10 +msgid "What Type Of Internet Connection Do You Have?" msgstr "" -#: plinth/modules/networks/templates/connections_list.html:129 -#, python-format +#: plinth/modules/networks/templates/internet_connectivity_content.html:16 msgid "" -"The following best describes how your %(box_name)s is connected in your " -"network. This information is used only to suggest necessary configuration " -"actions." +"Select an option that best describes the type of Internet connection. This " +"information is used only to guide you with further setup." msgstr "" -#: plinth/modules/networks/templates/connections_list.html:137 -#, python-format +#: plinth/modules/networks/templates/internet_connectivity_firstboot.html:18 +#: plinth/modules/networks/templates/router_configuration_firstboot.html:18 +msgid "Skip this step" +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_firstboot.html:19 +#: plinth/modules/networks/templates/router_configuration_firstboot.html:19 +msgid "Next" +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:9 +#, fuzzy +#| msgid "Connection Type" +msgid "Your Internet Connection Type" +msgstr "Kapcsolat típusa" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:14 msgid "" -"Your %(box_name)s gets its internet from your Router via WiFi or Ethernet " -"cable. This is a typical home setup." +"The following best describes the type of Internet connection provided by " +"your ISP. This information is only used to suggest you necessary " +"configuration actions." msgstr "" -#: plinth/modules/networks/templates/connections_list.html:145 -#: plinth/modules/networks/templates/connections_list.html:147 +#: plinth/modules/networks/templates/internet_connectivity_main.html:23 +msgid "My ISP provides a public IP address that does not change over time." +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:27 +msgid "My ISP provides a public IP address that may change over time." +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:31 +msgid "My ISP does not provide a public IP address." +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:37 +#: plinth/modules/networks/templates/router_configuration_main.html:29 #, fuzzy #| msgid "Update" msgid "Update..." msgstr "Frissítés" -#: plinth/modules/networks/templates/connections_type_select.html:34 -msgid "Create..." -msgstr "Létrehoz..." - -#: plinth/modules/networks/templates/router_configuration_content.html:25 +#: plinth/modules/networks/templates/router_configuration_content.html:10 #, fuzzy, python-format #| msgid "%(box_name)s is up to date." msgid "Setup %(box_name)s Behind a Router" msgstr "A %(box_name)s naprakész." -#: plinth/modules/networks/templates/router_configuration_content.html:31 +#: plinth/modules/networks/templates/router_configuration_content.html:16 #, python-format msgid "" "Your %(box_name)s gets its internet connection from your router via Wi-Fi or " "Ethernet cable. This is a typical home setup." msgstr "" -#: plinth/modules/networks/templates/router_configuration_content.html:38 +#: plinth/modules/networks/templates/router_configuration_content.html:23 #, python-format msgid "" "With this setup, any device on the internet trying to reach your " @@ -3963,24 +4065,24 @@ msgid "" "the services." msgstr "" -#: plinth/modules/networks/templates/router_configuration_content.html:47 +#: plinth/modules/networks/templates/router_configuration_content.html:32 msgid "" "If you don't have control over your router, choose not to configure it. To " -"see options, to overcome this limitation, choose 'no public address' option " +"see options to overcome this limitation, choose 'no public address' option " "in Internet connection type selection." msgstr "" -#: plinth/modules/networks/templates/router_configuration_content.html:54 +#: plinth/modules/networks/templates/router_configuration_content.html:39 msgid "Choose How You Wish to Configure Your Router" msgstr "" -#: plinth/modules/networks/templates/router_configuration_content.html:57 +#: plinth/modules/networks/templates/router_configuration_content.html:42 msgid "" "You will need to login to your router's administration console provided by " "the router. This may look like one of the following:" msgstr "" -#: plinth/modules/networks/templates/router_configuration_content.html:69 +#: plinth/modules/networks/templates/router_configuration_content.html:54 msgid "" "The username and password is configured by you when you first setup the " "router. For many routers, this information is printed at the back of the " @@ -3990,24 +4092,27 @@ msgid "" "full instructions on how to perform this task." msgstr "" -#: plinth/modules/networks/templates/router_configuration_firstboot.html:33 -msgid "skip this step" +#: plinth/modules/networks/templates/router_configuration_main.html:9 +#, python-format +msgid "%(box_name)s Internet Connectivity" msgstr "" -#: plinth/modules/networks/templates/router_configuration_firstboot.html:35 -msgid "Next" +#: plinth/modules/networks/templates/router_configuration_main.html:15 +#, python-format +msgid "" +"The following best describes how your %(box_name)s is connected in your " +"network. This information is used only to suggest necessary configuration " +"actions." msgstr "" -#: plinth/modules/openvpn/__init__.py:39 plinth/modules/openvpn/manifest.py:33 -msgid "OpenVPN" -msgstr "OpenVPN" +#: plinth/modules/networks/templates/router_configuration_main.html:23 +#, python-format +msgid "" +"Your %(box_name)s gets its Internet from your Router via Wi-Fi or Ethernet " +"cable. This is a typical home setup." +msgstr "" -#: plinth/modules/openvpn/__init__.py:43 -#: plinth/modules/wireguard/__init__.py:40 -msgid "Virtual Private Network" -msgstr "Virtuális magánhálózat" - -#: plinth/modules/openvpn/__init__.py:47 +#: plinth/modules/openvpn/__init__.py:26 #, python-brace-format msgid "" "Virtual Private Network (VPN) is a technique for securely connecting two " @@ -4025,22 +4130,31 @@ msgstr "" "eszközödön keresztül az Internetet is további biztonság és anonimitás " "érdekében." -#: plinth/modules/openvpn/__init__.py:79 +#: plinth/modules/openvpn/__init__.py:49 plinth/modules/openvpn/manifest.py:18 +msgid "OpenVPN" +msgstr "OpenVPN" + +#: plinth/modules/openvpn/__init__.py:50 +#: plinth/modules/wireguard/__init__.py:53 +msgid "Virtual Private Network" +msgstr "Virtuális magánhálózat" + +#: plinth/modules/openvpn/__init__.py:61 #, python-brace-format msgid "" "Download Profile" msgstr "" "Profil letöltése" -#: plinth/modules/openvpn/forms.py:27 +#: plinth/modules/openvpn/forms.py:12 msgid "Enable OpenVPN server" msgstr "OpenVPN kiszolgáló engedélyezése" -#: plinth/modules/openvpn/manifest.py:63 -msgid "TunnelBlick" +#: plinth/modules/openvpn/manifest.py:48 +msgid "Tunnelblick" msgstr "" -#: plinth/modules/openvpn/templates/openvpn.html:42 +#: plinth/modules/openvpn/templates/openvpn.html:27 #, python-format msgid "" "OpenVPN has not yet been setup. Performing a secure setup takes a very long " @@ -4052,15 +4166,15 @@ msgstr "" "órákig is eltarthat. Ha a beállítás megszakad, akkor később újra lehet " "kezdeni." -#: plinth/modules/openvpn/templates/openvpn.html:55 +#: plinth/modules/openvpn/templates/openvpn.html:40 msgid "Start setup" msgstr "Beállítás elindítása" -#: plinth/modules/openvpn/templates/openvpn.html:64 +#: plinth/modules/openvpn/templates/openvpn.html:49 msgid "OpenVPN setup is running" msgstr "OpenVPN beállítás fut" -#: plinth/modules/openvpn/templates/openvpn.html:68 +#: plinth/modules/openvpn/templates/openvpn.html:53 #, python-format msgid "" "To perform a secure setup, this process takes a very long time. Depending " @@ -4071,11 +4185,11 @@ msgstr "" "függően hogy milyen gyors a te %(box_name)s eszközöd, akár órákig is " "eltarthat. Ha a beállítás megszakad, akkor később újra lehet kezdeni." -#: plinth/modules/openvpn/templates/openvpn.html:87 +#: plinth/modules/openvpn/templates/openvpn.html:72 msgid "Profile" msgstr "Profil" -#: plinth/modules/openvpn/templates/openvpn.html:90 +#: plinth/modules/openvpn/templates/openvpn.html:75 #, fuzzy, python-format #| msgid "" #| "To connect to %(box_name)s's VPN, you need to download a profile and feed " @@ -4096,34 +4210,26 @@ msgstr "" "\"%(box_name)s Kézikönyv - OpenVPN\">dokumentációt az ajánlott " "kliensekhez és a beállítási utasításokhoz." -#: plinth/modules/openvpn/templates/openvpn.html:100 +#: plinth/modules/openvpn/templates/openvpn.html:85 #, python-format msgid "Profile is specific to each user of %(box_name)s. Keep it a secret." msgstr "" "A profil a %(box_name)s eszköz minden egyes felhasználójára egyedi. Tartsd " "titokban." -#: plinth/modules/openvpn/templates/openvpn.html:111 +#: plinth/modules/openvpn/templates/openvpn.html:96 msgid "Download my profile" msgstr "Saját profilom letöltése" -#: plinth/modules/openvpn/views.py:133 +#: plinth/modules/openvpn/views.py:114 msgid "Setup completed." msgstr "Beállítás sikerült." -#: plinth/modules/openvpn/views.py:135 +#: plinth/modules/openvpn/views.py:116 msgid "Setup failed." msgstr "Beállítás sikertelen." -#: plinth/modules/pagekite/__init__.py:39 -msgid "PageKite" -msgstr "PageKite" - -#: plinth/modules/pagekite/__init__.py:41 -msgid "Public Visibility" -msgstr "Nyilvános láthatóság" - -#: plinth/modules/pagekite/__init__.py:45 +#: plinth/modules/pagekite/__init__.py:26 #, python-brace-format msgid "" "PageKite is a system for exposing {box_name} services when you don't have a " @@ -4137,19 +4243,19 @@ msgstr "" "szolgáltatásai nem érhetőek el az internet felől. Ez magában foglalja az " "alábbi eseteket:" -#: plinth/modules/pagekite/__init__.py:50 +#: plinth/modules/pagekite/__init__.py:31 #, python-brace-format msgid "{box_name} is behind a restricted firewall." msgstr "{box_name} eszközöd egy korlátozott tűzfal mögött van." -#: plinth/modules/pagekite/__init__.py:53 +#: plinth/modules/pagekite/__init__.py:34 #, python-brace-format msgid "{box_name} is connected to a (wireless) router which you don't control." msgstr "" "{box_name} eszközöd egy olyan (vezetéknélküli) router-hez kapcsolódik, " "amelyet te nem állíthatsz be." -#: plinth/modules/pagekite/__init__.py:55 +#: plinth/modules/pagekite/__init__.py:36 msgid "" "Your ISP does not provide you an external IP address and instead provides " "Internet connection through NAT." @@ -4157,7 +4263,7 @@ msgstr "" "Az internetszolgáltatód nem biztosít neked külső IP címet, ehelyett hálózati " "címfordításon (NAT) keresztül tudod elérni az Internetet." -#: plinth/modules/pagekite/__init__.py:57 +#: plinth/modules/pagekite/__init__.py:38 msgid "" "Your ISP does not provide you a static IP address and your IP address " "changes every time you connect to Internet." @@ -4165,11 +4271,11 @@ msgstr "" "Az internetszolgáltatód nem biztosít neked statikus IP címet és az IP címed " "mindig megváltozik, amikor az Internetre csatlakozol." -#: plinth/modules/pagekite/__init__.py:59 +#: plinth/modules/pagekite/__init__.py:40 msgid "Your ISP limits incoming connections." msgstr "Az internetszolgáltatód korlátozza a bejövő kapcsolatokat." -#: plinth/modules/pagekite/__init__.py:61 +#: plinth/modules/pagekite/__init__.py:42 #, fuzzy, python-brace-format #| msgid "" #| "PageKite works around NAT, firewalls and IP-address limitations by using " @@ -4189,15 +4295,23 @@ msgstr "" "net. A jövőben talán a barátod {box_name} eszközét is lehetőséged lesz " "használni erre a célra." -#: plinth/modules/pagekite/__init__.py:87 +#: plinth/modules/pagekite/__init__.py:62 +msgid "PageKite" +msgstr "PageKite" + +#: plinth/modules/pagekite/__init__.py:64 +msgid "Public Visibility" +msgstr "Nyilvános láthatóság" + +#: plinth/modules/pagekite/__init__.py:74 msgid "PageKite Domain" msgstr "PageKite domain" -#: plinth/modules/pagekite/forms.py:66 +#: plinth/modules/pagekite/forms.py:51 msgid "Server domain" msgstr "Kiszolgáló domain" -#: plinth/modules/pagekite/forms.py:68 +#: plinth/modules/pagekite/forms.py:53 msgid "" "Select your pagekite server. Set \"pagekite.net\" to use the default " "pagekite.net server." @@ -4205,31 +4319,31 @@ msgstr "" "Válaszd ki a pagekite kiszolgálódat. Állítsd „pagekite.net” -re, ha az " "alapértelmezett pagekite.net kiszolgálót szeretnéd használni." -#: plinth/modules/pagekite/forms.py:71 plinth/modules/shadowsocks/forms.py:55 +#: plinth/modules/pagekite/forms.py:56 plinth/modules/shadowsocks/forms.py:40 msgid "Server port" msgstr "Kiszolgáló port" -#: plinth/modules/pagekite/forms.py:72 +#: plinth/modules/pagekite/forms.py:57 msgid "Port of your pagekite server (default: 80)" msgstr "A pagekite kiszolgálód portja (alapértelmezett: 80)" -#: plinth/modules/pagekite/forms.py:74 +#: plinth/modules/pagekite/forms.py:59 msgid "Kite name" msgstr "Kite név" -#: plinth/modules/pagekite/forms.py:75 +#: plinth/modules/pagekite/forms.py:60 msgid "Example: mybox.pagekite.me" msgstr "Például: mybox.pagekite.me" -#: plinth/modules/pagekite/forms.py:77 +#: plinth/modules/pagekite/forms.py:62 msgid "Invalid kite name" msgstr "Érvénytelen kite név" -#: plinth/modules/pagekite/forms.py:81 +#: plinth/modules/pagekite/forms.py:66 msgid "Kite secret" msgstr "Kite titkos kulcs" -#: plinth/modules/pagekite/forms.py:82 +#: plinth/modules/pagekite/forms.py:67 msgid "" "A secret associated with the kite or the default secret for your account if " "no secret is set on the kite." @@ -4237,43 +4351,43 @@ msgstr "" "A kite-hoz kapcsolódó titkos kulcs vagy a fiókod alapértelmezett titkos " "kulcsa, ha nem lett titkos kulcs beállítva a kite-ra." -#: plinth/modules/pagekite/forms.py:98 +#: plinth/modules/pagekite/forms.py:83 msgid "Kite details set" msgstr "Kite részletek beállítva" -#: plinth/modules/pagekite/forms.py:105 +#: plinth/modules/pagekite/forms.py:90 msgid "Pagekite server set" msgstr "Pagekite kiszolgáló beállítva" -#: plinth/modules/pagekite/forms.py:129 +#: plinth/modules/pagekite/forms.py:114 msgid "PageKite enabled" msgstr "PageKite engedélyezve" -#: plinth/modules/pagekite/forms.py:132 +#: plinth/modules/pagekite/forms.py:117 msgid "PageKite disabled" msgstr "PageKite letiltva" -#: plinth/modules/pagekite/forms.py:148 +#: plinth/modules/pagekite/forms.py:133 msgid "protocol" msgstr "protokoll" -#: plinth/modules/pagekite/forms.py:151 +#: plinth/modules/pagekite/forms.py:136 msgid "external (frontend) port" msgstr "külső (frontend) port" -#: plinth/modules/pagekite/forms.py:154 +#: plinth/modules/pagekite/forms.py:139 msgid "internal (freedombox) port" msgstr "belső (freedombox) port" -#: plinth/modules/pagekite/forms.py:155 +#: plinth/modules/pagekite/forms.py:140 msgid "Enable Subdomains" msgstr "Aldomének engedélyezése" -#: plinth/modules/pagekite/forms.py:189 +#: plinth/modules/pagekite/forms.py:174 msgid "Deleted custom service" msgstr "Törölt egyéni szolgáltatás" -#: plinth/modules/pagekite/forms.py:222 +#: plinth/modules/pagekite/forms.py:207 msgid "" "This service is available as a standard service. Please use the \"Standard " "Services\" page to enable it." @@ -4281,45 +4395,45 @@ msgstr "" "Ez egy szabványosként elérhető szolgáltatás. Kérlek használd a \"Szabványos " "szolgáltatások\" lapot az engedélyezéséhez." -#: plinth/modules/pagekite/forms.py:231 +#: plinth/modules/pagekite/forms.py:216 msgid "Added custom service" msgstr "Egyedi szolgáltatás hozzáadva" -#: plinth/modules/pagekite/forms.py:234 +#: plinth/modules/pagekite/forms.py:219 msgid "This service already exists" msgstr "Ez a szolgáltatás már létezik" -#: plinth/modules/pagekite/templates/pagekite_configure.html:47 +#: plinth/modules/pagekite/templates/pagekite_configure.html:32 msgid "Custom Services" msgstr "Egyedi szolgáltatások" -#: plinth/modules/pagekite/templates/pagekite_configure.html:50 -#: plinth/modules/pagekite/templates/pagekite_configure.html:52 +#: plinth/modules/pagekite/templates/pagekite_configure.html:35 +#: plinth/modules/pagekite/templates/pagekite_configure.html:37 #, fuzzy #| msgid "Custom Services" msgid "Add Custom Service" msgstr "Egyedi szolgáltatások" -#: plinth/modules/pagekite/templates/pagekite_configure.html:57 +#: plinth/modules/pagekite/templates/pagekite_configure.html:42 msgid "Existing custom services" msgstr "Meglévő egyedi szolgáltatások" -#: plinth/modules/pagekite/templates/pagekite_configure.html:71 +#: plinth/modules/pagekite/templates/pagekite_configure.html:56 #, python-format msgid "connected to %(backend_host)s:%(backend_port)s" msgstr "csatlakoztatva a következőhöz: %(backend_host)s:%(backend_port)s" -#: plinth/modules/pagekite/templates/pagekite_configure.html:83 +#: plinth/modules/pagekite/templates/pagekite_configure.html:68 msgid "Delete this service" msgstr "Szolgáltatás törlése" -#: plinth/modules/pagekite/templates/pagekite_custom_services.html:30 +#: plinth/modules/pagekite/templates/pagekite_custom_services.html:15 #, fuzzy #| msgid "Added custom service" msgid "Add custom PageKite service" msgstr "Egyedi szolgáltatás hozzáadva" -#: plinth/modules/pagekite/templates/pagekite_custom_services.html:32 +#: plinth/modules/pagekite/templates/pagekite_custom_services.html:17 msgid "" "Warning:imaps://imap.example.com."
-#: plinth/modules/roundcube/__init__.py:53
+#: plinth/modules/roundcube/__init__.py:32
msgid ""
"For Gmail, username will be your Gmail address, password will be your Google "
"account password and server will be imaps://imap.gmail.com. "
@@ -4730,17 +4834,22 @@ msgstr ""
"href=\"https://www.google.com/settings/security/lesssecureapps\">https://www."
"google.com/settings/security/lesssecureapps)."
-#: plinth/modules/samba/__init__.py:46
-msgid "Samba"
-msgstr ""
+#: plinth/modules/roundcube/__init__.py:54
+#: plinth/modules/roundcube/manifest.py:9
+msgid "Roundcube"
+msgstr "Roundcube"
-#: plinth/modules/samba/__init__.py:53
+#: plinth/modules/roundcube/__init__.py:55
+msgid "Email Client"
+msgstr "E-mail kliens"
+
+#: plinth/modules/samba/__init__.py:32
msgid ""
"Samba allows to share files and folders between FreedomBox and other "
"computers in your local network."
msgstr ""
-#: plinth/modules/samba/__init__.py:56
+#: plinth/modules/samba/__init__.py:35
#, python-brace-format
msgid ""
"After installation, you can choose which disks to use for sharing. Enabled "
@@ -4749,55 +4858,59 @@ msgid ""
"There are three types of shares you can choose from: "
msgstr ""
-#: plinth/modules/samba/__init__.py:61
+#: plinth/modules/samba/__init__.py:40
msgid "Open share - accessible to everyone in your local network."
msgstr ""
-#: plinth/modules/samba/__init__.py:62
+#: plinth/modules/samba/__init__.py:41
msgid ""
"Group share - accessible only to FreedomBox users who are in the freedombox-"
"share group."
msgstr ""
-#: plinth/modules/samba/__init__.py:64
+#: plinth/modules/samba/__init__.py:43
msgid ""
"Home share - every user in the freedombox-share group can have their own "
"private space."
msgstr ""
-#: plinth/modules/samba/__init__.py:68
+#: plinth/modules/samba/__init__.py:47
msgid "Access to the private shares"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:39
-#: plinth/modules/samba/templates/samba.html:50
+#: plinth/modules/samba/__init__.py:61
+msgid "Samba"
+msgstr ""
+
+#: plinth/modules/samba/templates/samba.html:24
+#: plinth/modules/samba/templates/samba.html:35
#, fuzzy
#| msgid "Shared"
msgid "Shares"
msgstr "Megosztott"
-#: plinth/modules/samba/templates/samba.html:41
+#: plinth/modules/samba/templates/samba.html:26
msgid ""
"Note: Only specially created directories will be shared on selected disks, "
"not the whole disk."
msgstr ""
-#: plinth/modules/samba/templates/samba.html:49
+#: plinth/modules/samba/templates/samba.html:34
#, fuzzy
#| msgid "Domain Name"
msgid "Disk Name"
msgstr "Domain név"
-#: plinth/modules/samba/templates/samba.html:51
-#: plinth/modules/storage/templates/storage.html:44
+#: plinth/modules/samba/templates/samba.html:36
+#: plinth/modules/storage/templates/storage.html:29
msgid "Used"
msgstr "Felhasznált"
-#: plinth/modules/samba/templates/samba.html:72
+#: plinth/modules/samba/templates/samba.html:57
msgid "VFAT partitions are not supported"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:103
+#: plinth/modules/samba/templates/samba.html:88
#, python-format
msgid ""
"You can find additional information about disks on the users module page."
msgstr ""
-#: plinth/modules/samba/templates/samba.html:109
+#: plinth/modules/samba/templates/samba.html:94
msgid "Users who can currently access group and home shares"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:113
+#: plinth/modules/samba/templates/samba.html:98
msgid ""
"Users needing to re-enter their password on the password change page to "
"access group and home shares"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:118
+#: plinth/modules/samba/templates/samba.html:103
#, fuzzy
#| msgid "Available Domains"
msgid "Unavailable Shares"
msgstr "Elérhető Domainek"
-#: plinth/modules/samba/templates/samba.html:120
+#: plinth/modules/samba/templates/samba.html:105
msgid ""
"Shares that are configured but the disk is not available. If the disk is "
"plugged back in, sharing will be automatically enabled."
msgstr ""
-#: plinth/modules/samba/templates/samba.html:128
+#: plinth/modules/samba/templates/samba.html:113
#, fuzzy
#| msgid "Share added."
msgid "Share name"
msgstr "Megosztás hozzáadva."
-#: plinth/modules/samba/templates/samba.html:129
+#: plinth/modules/samba/templates/samba.html:114
#, fuzzy
#| msgid "Actions"
msgid "Action"
msgstr "Műveletek"
-#: plinth/modules/samba/views.py:61 plinth/modules/storage/forms.py:164
+#: plinth/modules/samba/views.py:43 plinth/modules/storage/forms.py:149
#, fuzzy
#| msgid "Add Share"
msgid "Open Share"
msgstr "Megosztás hozzáadása"
-#: plinth/modules/samba/views.py:62 plinth/modules/storage/forms.py:162
+#: plinth/modules/samba/views.py:44 plinth/modules/storage/forms.py:147
#, fuzzy
#| msgid "Add Share"
msgid "Group Share"
msgstr "Megosztás hozzáadása"
-#: plinth/modules/samba/views.py:63
+#: plinth/modules/samba/views.py:45
#, fuzzy
#| msgid "Homepage"
msgid "Home Share"
msgstr "Honlap"
-#: plinth/modules/samba/views.py:96
+#: plinth/modules/samba/views.py:78
#, fuzzy
#| msgid "Share deleted."
msgid "Share enabled."
msgstr "Megosztás törölve."
-#: plinth/modules/samba/views.py:101
+#: plinth/modules/samba/views.py:83
#, fuzzy, python-brace-format
#| msgid "Error ejecting device: {error_message}"
msgid "Error enabling share: {error_message}"
msgstr "Hiba történt az eszköz kiadása során: {error_message}"
-#: plinth/modules/samba/views.py:106
+#: plinth/modules/samba/views.py:88
#, fuzzy
#| msgid "Share edited."
msgid "Share disabled."
msgstr "Megosztás szerkesztve."
-#: plinth/modules/samba/views.py:111
+#: plinth/modules/samba/views.py:93
#, fuzzy, python-brace-format
#| msgid "Error ejecting device: {error_message}"
msgid "Error disabling share: {error_message}"
msgstr "Hiba történt az eszköz kiadása során: {error_message}"
-#: plinth/modules/searx/__init__.py:41 plinth/modules/searx/manifest.py:24
-msgid "Searx"
-msgstr "Searx"
-
-#: plinth/modules/searx/__init__.py:45
-msgid "Web Search"
-msgstr "Webes keresés"
-
-#: plinth/modules/searx/__init__.py:48
+#: plinth/modules/searx/__init__.py:25
msgid ""
"Searx is a privacy-respecting Internet metasearch engine. It aggregrates and "
"displays results from multiple search engines."
@@ -4897,7 +5002,7 @@ msgstr ""
"A Searx egy magánszférát tiszteletben tartó internetes metakereső. Több "
"keresőmotor eredményeit gyűjti össze és jeleníti meg."
-#: plinth/modules/searx/__init__.py:50
+#: plinth/modules/searx/__init__.py:27
msgid ""
"Searx can be used to avoid tracking and profiling by search engines. It "
"stores no cookies by default."
@@ -4905,51 +5010,59 @@ msgstr ""
"A Searx segítségével elkerülhető, hogy a keresőmotorok nyomon kövessék és "
"profilozzák a felhasználót. Sütiket eleve nem tárol."
-#: plinth/modules/searx/__init__.py:54
+#: plinth/modules/searx/__init__.py:31
msgid "Search the web"
msgstr "Keresés a weben"
-#: plinth/modules/searx/forms.py:30
+#: plinth/modules/searx/__init__.py:47 plinth/modules/searx/manifest.py:9
+msgid "Searx"
+msgstr "Searx"
+
+#: plinth/modules/searx/__init__.py:48
+msgid "Web Search"
+msgstr "Webes keresés"
+
+#: plinth/modules/searx/forms.py:15
msgid "Safe Search"
msgstr "Biztonságos keresés"
-#: plinth/modules/searx/forms.py:31
+#: plinth/modules/searx/forms.py:16
msgid "Select the default family filter to apply to your search results."
msgstr ""
"Válaszd ki a felnőtt tartalmak alapértelmezett szűrési fokozatát, ez a "
"keresési eredményeken lesz alkalmazva."
-#: plinth/modules/searx/forms.py:32
+#: plinth/modules/searx/forms.py:17
msgid "None"
msgstr "Nincs"
-#: plinth/modules/searx/forms.py:32
+#: plinth/modules/searx/forms.py:17
msgid "Moderate"
msgstr "Enyhe"
-#: plinth/modules/searx/forms.py:32
+#: plinth/modules/searx/forms.py:17
msgid "Strict"
msgstr "Szigorú"
-#: plinth/modules/searx/forms.py:35
+#: plinth/modules/searx/forms.py:20
msgid "Allow Public Access"
msgstr "Nyilvános hozzáférés engedélyezése"
-#: plinth/modules/searx/forms.py:36
+#: plinth/modules/searx/forms.py:21
msgid "Allow this application to be used by anyone who can reach it."
msgstr ""
"Engedélyezi ennek az alkalmazásnak a használatát bárkinek, aki el tudja érni."
-#: plinth/modules/searx/views.py:59 plinth/modules/searx/views.py:70
-#: plinth/modules/tor/views.py:149 plinth/modules/tor/views.py:176
+#: plinth/modules/searx/views.py:39 plinth/modules/searx/views.py:50
+#: plinth/modules/tor/views.py:130 plinth/modules/tor/views.py:157
msgid "Configuration updated."
msgstr "Beállítások frissítve."
-#: plinth/modules/security/forms.py:28
+#: plinth/modules/security/forms.py:13
msgid "Restrict console logins (recommended)"
msgstr "Konzolon keresztüli bejelentkezések korlátozása (ajánlott)"
-#: plinth/modules/security/forms.py:29
+#: plinth/modules/security/forms.py:14
msgid ""
"When this option is enabled, only users in the \"admin\" group will be able "
"to log in to console or via SSH. Console users may be able to access some "
@@ -4959,11 +5072,11 @@ msgstr ""
"bejelentkezni helyi konzolról vagy SSH-n keresztül. Konzolos felhasználók "
"hozzáférhetnek bizonyos szolgáltatásokhoz további engedélyek nélkül is."
-#: plinth/modules/security/forms.py:34
+#: plinth/modules/security/forms.py:19
msgid "Fail2Ban (recommended)"
msgstr "Fail2Ban (ajánlott)"
-#: plinth/modules/security/forms.py:35
+#: plinth/modules/security/forms.py:20
msgid ""
"When this option is enabled, Fail2Ban will limit brute force break-in "
"attempts to the SSH server and other enabled password protected internet-"
@@ -4973,21 +5086,21 @@ msgstr ""
"behatolási kísérleteket az SSH kiszolgálóra és egyéb engedélyezett, "
"jelszóval védett internetes szolgáltatásokra."
-#: plinth/modules/security/templates/security.html:26
-#: plinth/modules/security/templates/security.html:28
+#: plinth/modules/security/templates/security.html:11
+#: plinth/modules/security/templates/security.html:13
#, fuzzy
#| msgid "Show security vulnerabilities"
msgid "Show security report"
msgstr "Biztonsági rések megjelenítése"
-#: plinth/modules/security/templates/security_report.html:25
-#: plinth/modules/security/views.py:87
+#: plinth/modules/security/templates/security_report.html:10
+#: plinth/modules/security/views.py:71
#, fuzzy
#| msgid "Security Notice"
msgid "Security Report"
msgstr "Biztonsági értesítés"
-#: plinth/modules/security/templates/security_report.html:27
+#: plinth/modules/security/templates/security_report.html:12
#, python-format
msgid ""
"The installed version of FreedomBox has %(count)s reported security "
@@ -4996,7 +5109,7 @@ msgstr ""
"A FreedomBox telepített verziója %(count)s bejelentett biztonsági rést "
"tartalmaz."
-#: plinth/modules/security/templates/security_report.html:33
+#: plinth/modules/security/templates/security_report.html:18
#, fuzzy
#| msgid ""
#| "The following table lists the reported number of security vulnerabilities "
@@ -5008,92 +5121,84 @@ msgstr ""
"Az alábbi táblázat felsorolja az egyes telepített alkalmazások bejelentett "
"biztonsági réseinek számát."
-#: plinth/modules/security/templates/security_report.html:39
+#: plinth/modules/security/templates/security_report.html:24
msgid ""
"For apps that provide services, the \"Sandboxed\" column shows whether "
"sandboxing features are in use. Sandboxing mitigates the impact of a "
"potentially compromised app to the rest of the system."
msgstr ""
-#: plinth/modules/security/templates/security_report.html:46
+#: plinth/modules/security/templates/security_report.html:31
msgid ""
"\"Sandbox Coverage\" is a score of how effectively the service is isolated "
"from the rest of the system. It is only displayed while the service is "
"running."
msgstr ""
-#: plinth/modules/security/templates/security_report.html:55
+#: plinth/modules/security/templates/security_report.html:40
msgid "App Name"
msgstr "Alkalmazás neve"
-#: plinth/modules/security/templates/security_report.html:56
+#: plinth/modules/security/templates/security_report.html:41
#, fuzzy
#| msgid "Show security vulnerabilities"
msgid "Current Vulnerabilities"
msgstr "Biztonsági rések megjelenítése"
-#: plinth/modules/security/templates/security_report.html:57
+#: plinth/modules/security/templates/security_report.html:42
#, fuzzy
#| msgid "Show security vulnerabilities"
msgid "Past Vulnerabilities"
msgstr "Biztonsági rések megjelenítése"
-#: plinth/modules/security/templates/security_report.html:58
+#: plinth/modules/security/templates/security_report.html:43
#, fuzzy
#| msgid "Block Sandbox"
msgid "Sandboxed"
msgstr "Blokk sandbox"
-#: plinth/modules/security/templates/security_report.html:59
+#: plinth/modules/security/templates/security_report.html:44
#, fuzzy
#| msgid "Block Sandbox"
msgid "Sandbox Coverage"
msgstr "Blokk sandbox"
-#: plinth/modules/security/templates/security_report.html:70
+#: plinth/modules/security/templates/security_report.html:55
msgid "N/A"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:72
+#: plinth/modules/security/templates/security_report.html:57
#, fuzzy
#| msgid "yes"
msgid "Yes"
msgstr "igen"
-#: plinth/modules/security/templates/security_report.html:74
+#: plinth/modules/security/templates/security_report.html:59
#, fuzzy
#| msgid "None"
msgid "No"
msgstr "Nincs"
-#: plinth/modules/security/templates/security_report.html:81
+#: plinth/modules/security/templates/security_report.html:66
#, fuzzy
#| msgid "Tor is running"
msgid "Not running"
msgstr "A Tor fut"
-#: plinth/modules/security/views.py:69
+#: plinth/modules/security/views.py:53
#, python-brace-format
msgid "Error setting restricted access: {exception}"
msgstr "Hiba a korlátozott hozzáférés beállítása során: {exception}"
-#: plinth/modules/security/views.py:72
+#: plinth/modules/security/views.py:56
msgid "Updated security configuration"
msgstr "Biztonsági beállítás frissítve"
-#: plinth/modules/shaarli/__init__.py:34 plinth/modules/shaarli/manifest.py:23
-msgid "Shaarli"
-msgstr "Shaarli"
-
-#: plinth/modules/shaarli/__init__.py:36
-msgid "Bookmarks"
-msgstr "Könyvjelzők"
-
-#: plinth/modules/shaarli/__init__.py:39
+#: plinth/modules/shaarli/__init__.py:20
msgid "Shaarli allows you to save and share bookmarks."
msgstr "A Shaarli lehetővé teszi hogy elmentsd és megoszd a könyvjelzőidet."
-#: plinth/modules/shaarli/__init__.py:40
+#: plinth/modules/shaarli/__init__.py:21
#, fuzzy
#| msgid ""
#| "When enabled, Shaarli will be available from /"
@@ -5109,15 +5214,15 @@ msgstr ""
"\">/shaarli elérési útvonalán. Vedd figyelembe, hogy a Shaarli csak egy "
"felhasználói fiókot támogat, melyet az első látogatás során be kell állítani."
-#: plinth/modules/shadowsocks/__init__.py:35
-msgid "Shadowsocks"
-msgstr "Shadowsocks"
+#: plinth/modules/shaarli/__init__.py:39 plinth/modules/shaarli/manifest.py:8
+msgid "Shaarli"
+msgstr "Shaarli"
-#: plinth/modules/shadowsocks/__init__.py:39
-msgid "Socks5 Proxy"
-msgstr "Socks5 Proxy"
+#: plinth/modules/shaarli/__init__.py:40
+msgid "Bookmarks"
+msgstr "Könyvjelzők"
-#: plinth/modules/shadowsocks/__init__.py:46
+#: plinth/modules/shadowsocks/__init__.py:25
msgid ""
"Shadowsocks is a lightweight and secure SOCKS5 proxy, designed to protect "
"your Internet traffic. It can be used to bypass Internet filtering and "
@@ -5127,7 +5232,7 @@ msgstr ""
"internetes forgalmad védelmére terveztek. Felhasználható az internetes "
"szűrők és cenzúra megkerülésére."
-#: plinth/modules/shadowsocks/__init__.py:50
+#: plinth/modules/shadowsocks/__init__.py:29
#, python-brace-format
msgid ""
"Your {box_name} can run a Shadowsocks client, that can connect to a "
@@ -5140,7 +5245,7 @@ msgstr ""
"eszközeiddel csatlakozhatsz erre a proxyra, és az adataik titkosítva és "
"proxizva lesznek a Shadowsocks kiszolgálón keresztül."
-#: plinth/modules/shadowsocks/__init__.py:55
+#: plinth/modules/shadowsocks/__init__.py:34
msgid ""
"To use Shadowsocks after setup, set the SOCKS5 proxy URL in your device, "
"browser or application to http://freedombox_address:1080/"
@@ -5149,39 +5254,43 @@ msgstr ""
"SOCKS5 proxy URL-jét az eszközeiden, böngésződben vagy alkalmazásaidban így: "
"http://freedombox_eszkozod_cime:1080/"
-#: plinth/modules/shadowsocks/forms.py:28
-#: plinth/modules/shadowsocks/forms.py:29
+#: plinth/modules/shadowsocks/__init__.py:50
+msgid "Shadowsocks"
+msgstr "Shadowsocks"
+
+#: plinth/modules/shadowsocks/__init__.py:52
+msgid "Socks5 Proxy"
+msgstr "Socks5 Proxy"
+
+#: plinth/modules/shadowsocks/forms.py:13
+#: plinth/modules/shadowsocks/forms.py:14
msgid "Recommended"
msgstr "Ajánlott"
-#: plinth/modules/shadowsocks/forms.py:52
+#: plinth/modules/shadowsocks/forms.py:37
msgid "Server"
msgstr "Kiszolgáló"
-#: plinth/modules/shadowsocks/forms.py:53
+#: plinth/modules/shadowsocks/forms.py:38
msgid "Server hostname or IP address"
msgstr "Kiszolgáló állomásneve vagy IP-címe"
-#: plinth/modules/shadowsocks/forms.py:57
+#: plinth/modules/shadowsocks/forms.py:42
msgid "Server port number"
msgstr "Kiszolgáló portja"
-#: plinth/modules/shadowsocks/forms.py:60
+#: plinth/modules/shadowsocks/forms.py:45
msgid "Password used to encrypt data. Must match server password."
msgstr ""
"Az adattitkosításra használt jelszó. A kiszolgáló jelszavával meg kell hogy "
"egyezzen."
-#: plinth/modules/shadowsocks/forms.py:65
+#: plinth/modules/shadowsocks/forms.py:50
msgid "Encryption method. Must match setting on server."
msgstr ""
"Titkosítási módszer. A kiszolgáló beállításával meg kell hogy egyezzen."
-#: plinth/modules/sharing/__init__.py:34
-msgid "Sharing"
-msgstr "Megosztás"
-
-#: plinth/modules/sharing/__init__.py:38
+#: plinth/modules/sharing/__init__.py:21
#, python-brace-format
msgid ""
"Sharing allows you to share files and folders on your {box_name} over the "
@@ -5190,11 +5299,15 @@ msgstr ""
"Megosztás lehetővé teszi számodra hogy fájlokat és mappákat ossz meg a weben "
"keresztül felhasználók kiválasztott csoportjaival a Te {box_name} eszközödön."
-#: plinth/modules/sharing/forms.py:33
+#: plinth/modules/sharing/__init__.py:38
+msgid "Sharing"
+msgstr "Megosztás"
+
+#: plinth/modules/sharing/forms.py:18
msgid "Name of the share"
msgstr "Megosztás neve"
-#: plinth/modules/sharing/forms.py:35
+#: plinth/modules/sharing/forms.py:20
msgid ""
"A lowercase alpha-numeric string that uniquely identifies a share. Example: "
"media."
@@ -5202,30 +5315,30 @@ msgstr ""
"Kisbetűkből és számokból álló szöveg ami egyedien azonosítja a megosztást. "
"Példa: media."
-#: plinth/modules/sharing/forms.py:39
+#: plinth/modules/sharing/forms.py:24
msgid "Path to share"
msgstr "A megosztás elérési útja"
-#: plinth/modules/sharing/forms.py:40
+#: plinth/modules/sharing/forms.py:25
msgid "Disk path to a folder on this server that you intend to share."
msgstr ""
"Helyi elérési út a kiszolgálón egy mappára, amelyet meg szeretnél osztani."
-#: plinth/modules/sharing/forms.py:43
+#: plinth/modules/sharing/forms.py:28
msgid "Public share"
msgstr "Nyilvános megosztás"
-#: plinth/modules/sharing/forms.py:44
+#: plinth/modules/sharing/forms.py:29
msgid "Make files in this folder available to anyone with the link."
msgstr ""
"A mappában lévő fájlok elérhetővé tétele a linkkel rendelkező személyek "
"számára."
-#: plinth/modules/sharing/forms.py:48
+#: plinth/modules/sharing/forms.py:33
msgid "User groups that can read the files in the share"
msgstr "Felhasználói csoportok akik olvashatják a fájlokat a megosztásban"
-#: plinth/modules/sharing/forms.py:50
+#: plinth/modules/sharing/forms.py:35
msgid ""
"Users of the selected user groups will be able to read the files in the "
"share."
@@ -5233,66 +5346,62 @@ msgstr ""
"A kiválasztott felhasználói csoportok felhasználói képesek lesznek a "
"megosztásban lévő fájlokat olvasni."
-#: plinth/modules/sharing/forms.py:67
+#: plinth/modules/sharing/forms.py:52
msgid "A share with this name already exists."
msgstr "Egy megosztás ezzel a névvel már létezik."
-#: plinth/modules/sharing/forms.py:78
+#: plinth/modules/sharing/forms.py:63
msgid "Shares should be either public or shared with at least one group"
msgstr ""
"A megosztásnak nyilvánosnak vagy legalább egy csoporttal megosztottnak kell "
"lennie"
-#: plinth/modules/sharing/templates/sharing.html:39
-#: plinth/modules/sharing/templates/sharing.html:42
+#: plinth/modules/sharing/templates/sharing.html:24
+#: plinth/modules/sharing/templates/sharing.html:27
msgid "Add share"
msgstr "Megosztás hozzáadása"
-#: plinth/modules/sharing/templates/sharing.html:47
+#: plinth/modules/sharing/templates/sharing.html:32
msgid "No shares currently configured."
msgstr "Jelenleg nincs beállított megosztás."
-#: plinth/modules/sharing/templates/sharing.html:53
+#: plinth/modules/sharing/templates/sharing.html:38
msgid "Disk Path"
msgstr "Lemez elérési útja"
-#: plinth/modules/sharing/templates/sharing.html:54
+#: plinth/modules/sharing/templates/sharing.html:39
msgid "Shared Over"
msgstr "Megosztva ezen keresztül"
-#: plinth/modules/sharing/templates/sharing.html:55
+#: plinth/modules/sharing/templates/sharing.html:40
msgid "With Groups"
msgstr "Ezekkel a csoportokkal"
-#: plinth/modules/sharing/templates/sharing.html:73
+#: plinth/modules/sharing/templates/sharing.html:58
msgid "public access"
msgstr "nyilvános hozzáférés"
-#: plinth/modules/sharing/views.py:55
+#: plinth/modules/sharing/views.py:39
msgid "Share added."
msgstr "Megosztás hozzáadva."
-#: plinth/modules/sharing/views.py:60
+#: plinth/modules/sharing/views.py:44
msgid "Add Share"
msgstr "Megosztás hozzáadása"
-#: plinth/modules/sharing/views.py:75
+#: plinth/modules/sharing/views.py:59
msgid "Share edited."
msgstr "Megosztás szerkesztve."
-#: plinth/modules/sharing/views.py:80
+#: plinth/modules/sharing/views.py:64
msgid "Edit Share"
msgstr "Megosztás szerkesztése"
-#: plinth/modules/sharing/views.py:111
+#: plinth/modules/sharing/views.py:95
msgid "Share deleted."
msgstr "Megosztás törölve."
-#: plinth/modules/snapshot/__init__.py:37
-msgid "Storage Snapshots"
-msgstr "Háttértár-pillanatképek"
-
-#: plinth/modules/snapshot/__init__.py:40
+#: plinth/modules/snapshot/__init__.py:23
msgid ""
"Snapshots allows creating and managing btrfs file system snapshots. These "
"can be used to roll back the system to a previously known good state in case "
@@ -5303,7 +5412,7 @@ msgstr ""
"működő állapotába való visszaállítására abban az esetben, ha nem kívánt "
"változtatások történtek a rendszerben."
-#: plinth/modules/snapshot/__init__.py:44
+#: plinth/modules/snapshot/__init__.py:27
#, no-python-format
msgid ""
"Snapshots are taken periodically (called timeline snapshots) and also before "
@@ -5315,7 +5424,7 @@ msgstr ""
"pillanatképek automatikusan ki lesznek takarítva az alábbi beállítások "
"szerint."
-#: plinth/modules/snapshot/__init__.py:47
+#: plinth/modules/snapshot/__init__.py:30
msgid ""
"Snapshots currently work on btrfs file systems only and on the root "
"partition only. Snapshots are not a replacement for Biztonsági mentést, mivel a pillanatképek csak ugyanazon a "
"partíción tárolhatók amikről készülnek. "
-#: plinth/modules/snapshot/forms.py:27
+#: plinth/modules/snapshot/__init__.py:52
+msgid "Storage Snapshots"
+msgstr "Háttértár-pillanatképek"
+
+#: plinth/modules/snapshot/forms.py:12
msgid "Free Disk Space to Maintain"
msgstr "A fenntartott szabad lemezterület"
-#: plinth/modules/snapshot/forms.py:28
+#: plinth/modules/snapshot/forms.py:13
msgid ""
"Maintain this percentage of free space on the disk. If free space falls "
"below this value, older snapshots are removed until this much free space is "
@@ -5340,64 +5453,64 @@ msgstr ""
"ezen szint alá esik, akkor annyi régebbi pillanatkép lesz eltávolítva amíg "
"vissza nem áll a beállított arány. Ez alapértelmezetten 30%."
-#: plinth/modules/snapshot/forms.py:35
+#: plinth/modules/snapshot/forms.py:20
msgid "Timeline Snapshots"
msgstr "Ütemterv szerinti pillanatképek"
-#: plinth/modules/snapshot/forms.py:36
+#: plinth/modules/snapshot/forms.py:21
msgid ""
"Enable or disable timeline snapshots (hourly, daily, monthly and yearly)."
msgstr ""
"Ütemterv szerinti pillanatképek (óránkénti, napi, havi és évi) engedélyezése "
"vagy letiltása."
-#: plinth/modules/snapshot/forms.py:41
+#: plinth/modules/snapshot/forms.py:26
msgid "Software Installation Snapshots"
msgstr "Szoftver telepítési pillanatképek"
-#: plinth/modules/snapshot/forms.py:42
+#: plinth/modules/snapshot/forms.py:27
msgid "Enable or disable snapshots before and after software installation"
msgstr ""
"Pillanatképek készítésének engedélyezése vagy letiltása szoftver telepítése "
"előtt és után"
-#: plinth/modules/snapshot/forms.py:47
+#: plinth/modules/snapshot/forms.py:32
msgid "Hourly Snapshots Limit"
msgstr "Óránkénti pillanatképek korlátja"
-#: plinth/modules/snapshot/forms.py:48
+#: plinth/modules/snapshot/forms.py:33
msgid "Keep a maximum of this many hourly snapshots."
msgstr "Legfeljebb ennyi óránkénti pillanatkép legyen megtartva."
-#: plinth/modules/snapshot/forms.py:51
+#: plinth/modules/snapshot/forms.py:36
msgid "Daily Snapshots Limit"
msgstr "Napi pillanatképek korlátja"
-#: plinth/modules/snapshot/forms.py:52
+#: plinth/modules/snapshot/forms.py:37
msgid "Keep a maximum of this many daily snapshots."
msgstr "Legfeljebb ennyi napi pillanatkép legyen megtartva."
-#: plinth/modules/snapshot/forms.py:55
+#: plinth/modules/snapshot/forms.py:40
msgid "Weekly Snapshots Limit"
msgstr "Heti pillanatképek korlátja"
-#: plinth/modules/snapshot/forms.py:56
+#: plinth/modules/snapshot/forms.py:41
msgid "Keep a maximum of this many weekly snapshots."
msgstr "Legfeljebb ennyi heti pillanatkép legyen megtartva."
-#: plinth/modules/snapshot/forms.py:59
+#: plinth/modules/snapshot/forms.py:44
msgid "Monthly Snapshots Limit"
msgstr "Havi pillanatképek korlátja"
-#: plinth/modules/snapshot/forms.py:60
+#: plinth/modules/snapshot/forms.py:45
msgid "Keep a maximum of this many monthly snapshots."
msgstr "Legfeljebb ennyi havi pillanatkép legyen megtartva."
-#: plinth/modules/snapshot/forms.py:63
+#: plinth/modules/snapshot/forms.py:48
msgid "Yearly Snapshots Limit"
msgstr "Évenkénti pillanatképek korlátja"
-#: plinth/modules/snapshot/forms.py:64
+#: plinth/modules/snapshot/forms.py:49
msgid ""
"Keep a maximum of this many yearly snapshots. The default value is 0 "
"(disabled)."
@@ -5405,46 +5518,46 @@ msgstr ""
"Legfeljebb ennyi évenkénti pillanatkép legyen megtartva. Az alapértelmezett "
"érték 0 (letiltva)."
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:27
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:12
msgid "Delete the following snapshots permanently?"
msgstr "Véglegesen törlöd az alábbi pillanatképeket?"
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:31
-#: plinth/modules/snapshot/templates/snapshot_manage.html:43
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:39
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:16
+#: plinth/modules/snapshot/templates/snapshot_manage.html:28
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:24
msgid "Number"
msgstr "Sorszám"
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:32
-#: plinth/modules/snapshot/templates/snapshot_manage.html:44
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:40
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:17
+#: plinth/modules/snapshot/templates/snapshot_manage.html:29
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:25
msgid "Date"
msgstr "Dátum"
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:52
-#: plinth/modules/snapshot/templates/snapshot_manage.html:37
-#: plinth/modules/snapshot/views.py:196
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:37
+#: plinth/modules/snapshot/templates/snapshot_manage.html:22
+#: plinth/modules/snapshot/views.py:175
msgid "Delete Snapshots"
msgstr "Pillanatképek törlése"
-#: plinth/modules/snapshot/templates/snapshot_manage.html:33
+#: plinth/modules/snapshot/templates/snapshot_manage.html:18
msgid "Create Snapshot"
msgstr "Pillanatkép létrehozása"
-#: plinth/modules/snapshot/templates/snapshot_manage.html:46
+#: plinth/modules/snapshot/templates/snapshot_manage.html:31
msgid "Rollback"
msgstr "Visszaállít"
-#: plinth/modules/snapshot/templates/snapshot_manage.html:57
+#: plinth/modules/snapshot/templates/snapshot_manage.html:42
msgid "active"
msgstr "aktív"
-#: plinth/modules/snapshot/templates/snapshot_manage.html:66
+#: plinth/modules/snapshot/templates/snapshot_manage.html:51
#, python-format
msgid "Rollback to snapshot #%(number)s"
msgstr "Visszaállítás erre a pillanatképre: %(number)s"
-#: plinth/modules/snapshot/templates/snapshot_not_supported.html:26
+#: plinth/modules/snapshot/templates/snapshot_not_supported.html:11
#, python-format
msgid ""
"Your have a filesystem of type %(fs_type)s. Snapshots are "
@@ -5454,11 +5567,11 @@ msgstr ""
"Pillanatképek jelenleg csak a következő fájlrendszereken érhető el: "
"%(types_supported)s."
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:27
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:12
msgid "Roll back the system to this snapshot?"
msgstr "Visszaállítod a rendszert erre a pillanatképre?"
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:30
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:15
msgid ""
"A new snapshot with the current state of the file system will be "
"automatically created. You will be able to undo a rollback by reverting to "
@@ -5468,59 +5581,55 @@ msgstr ""
"állapotáról. Képes leszel visszavonni egy visszaállítást azáltal hogy "
"visszatérsz az újonnan létrehozott pillanatképre."
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:57
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:42
#, python-format
msgid "Rollback to Snapshot #%(number)s"
msgstr "Visszaállítás erre a pillanatképre: %(number)s"
-#: plinth/modules/snapshot/views.py:45
+#: plinth/modules/snapshot/views.py:30
msgid "Manage Snapshots"
msgstr "Pillanatképek kezelése"
-#: plinth/modules/snapshot/views.py:98
+#: plinth/modules/snapshot/views.py:79
msgid "Created snapshot."
msgstr "Pillanatkép létrehozva."
-#: plinth/modules/snapshot/views.py:156
+#: plinth/modules/snapshot/views.py:135
msgid "Storage snapshots configuration updated"
msgstr "Tárolási pillanatképek konfigurációja frissítve"
-#: plinth/modules/snapshot/views.py:160 plinth/modules/tor/views.py:79
+#: plinth/modules/snapshot/views.py:139 plinth/modules/tor/views.py:60
#, python-brace-format
msgid "Action error: {0} [{1}] [{2}]"
msgstr "Hiba a művelet közben: {0} [{1}] [{2}]"
-#: plinth/modules/snapshot/views.py:175
+#: plinth/modules/snapshot/views.py:154
msgid "Deleted all snapshots"
msgstr "Minden pillanatkép törölve"
-#: plinth/modules/snapshot/views.py:179
+#: plinth/modules/snapshot/views.py:158
msgid "Deleted selected snapshots"
msgstr "Kiválasztott pillanatképek törölve"
-#: plinth/modules/snapshot/views.py:184
+#: plinth/modules/snapshot/views.py:163
msgid "Snapshot is currently in use. Please try again later."
msgstr ""
"Pillanatkép jelenleg is használatban van. Kérlek, próbáld meg újra később."
-#: plinth/modules/snapshot/views.py:207
+#: plinth/modules/snapshot/views.py:186
#, python-brace-format
msgid "Rolled back to snapshot #{number}."
msgstr "A {number} számú pillanatképre visszaállítva."
-#: plinth/modules/snapshot/views.py:210
+#: plinth/modules/snapshot/views.py:189
msgid "The system must be restarted to complete the rollback."
msgstr "A visszaállítás befejezéséhez a rendszert újra kell indítani."
-#: plinth/modules/snapshot/views.py:222
+#: plinth/modules/snapshot/views.py:201
msgid "Rollback to Snapshot"
msgstr "Visszaállítás pillanatképre"
-#: plinth/modules/ssh/__init__.py:43
-msgid "Secure Shell (SSH) Server"
-msgstr "Biztonságos parancsértelmező (SSH) kiszolgáló"
-
-#: plinth/modules/ssh/__init__.py:46
+#: plinth/modules/ssh/__init__.py:29
msgid ""
"A Secure Shell server uses the secure shell protocol to accept connections "
"from remote computers. An authorized remote computer can perform "
@@ -5532,64 +5641,64 @@ msgstr ""
"számítógép felügyeleti feladatokat hajthat végre, fájlokat másolhat vagy "
"egyéb szolgáltatásokat futtathat ilyen kapcsolat használatával."
-#: plinth/modules/ssh/forms.py:30
+#: plinth/modules/ssh/__init__.py:50
+msgid "Secure Shell (SSH) Server"
+msgstr "Biztonságos parancsértelmező (SSH) kiszolgáló"
+
+#: plinth/modules/ssh/forms.py:15
#, fuzzy
#| msgid "Use HTTP basic authentication"
msgid "Disable password authentication"
msgstr "HTTP alap hitelesítés használata"
-#: plinth/modules/ssh/forms.py:31
+#: plinth/modules/ssh/forms.py:16
msgid ""
"Improves security by preventing password guessing. Ensure that you have "
"setup SSH keys in your administrator user account before enabling this "
"option."
msgstr ""
-#: plinth/modules/ssh/templates/ssh.html:26
+#: plinth/modules/ssh/templates/ssh.html:11
#, fuzzy
#| msgid "SSH Fingerprint"
msgid "Server Fingerprints"
msgstr "SSH ujjlenyomat"
-#: plinth/modules/ssh/templates/ssh.html:29
+#: plinth/modules/ssh/templates/ssh.html:14
msgid ""
"When connecting to the server, ensure that the fingerprint shown by the SSH "
"client matches one of these fingerprints."
msgstr ""
-#: plinth/modules/ssh/templates/ssh.html:38
+#: plinth/modules/ssh/templates/ssh.html:23
msgid "Algorithm"
msgstr ""
-#: plinth/modules/ssh/templates/ssh.html:39
+#: plinth/modules/ssh/templates/ssh.html:24
#, fuzzy
#| msgid "SSH Fingerprint"
msgid "Fingerprint"
msgstr "SSH ujjlenyomat"
-#: plinth/modules/ssh/views.py:66
+#: plinth/modules/ssh/views.py:48
msgid "SSH authentication with password disabled."
msgstr ""
-#: plinth/modules/ssh/views.py:69
+#: plinth/modules/ssh/views.py:51
#, fuzzy
#| msgid "Authentication to remote server failed."
msgid "SSH authentication with password enabled."
msgstr "Sikertelen a hitelesítés a távoli kiszolgálóra."
-#: plinth/modules/sso/__init__.py:30
+#: plinth/modules/sso/__init__.py:33
msgid "Single Sign On"
msgstr "Egyszeri bejelentkezés"
-#: plinth/modules/sso/templates/login.html:35
+#: plinth/modules/sso/templates/login.html:20
msgid "Login"
msgstr "Bejelentkezés"
-#: plinth/modules/storage/__init__.py:39 plinth/modules/storage/__init__.py:331
-msgid "Storage"
-msgstr "Háttértár"
-
-#: plinth/modules/storage/__init__.py:47
+#: plinth/modules/storage/__init__.py:30
#, python-brace-format
msgid ""
"This module allows you to manage storage media attached to your {box_name}. "
@@ -5601,87 +5710,91 @@ msgstr ""
"fel- és lecsatolhatsz cserélhető adathordozókat, kibővítheted a root "
"partíciót, stb."
-#: plinth/modules/storage/__init__.py:224
+#: plinth/modules/storage/__init__.py:52 plinth/modules/storage/__init__.py:318
+msgid "Storage"
+msgstr "Háttértár"
+
+#: plinth/modules/storage/__init__.py:211
#, python-brace-format
msgid "{disk_size:.1f} bytes"
msgstr "{disk_size:.1f} byte"
-#: plinth/modules/storage/__init__.py:228
+#: plinth/modules/storage/__init__.py:215
#, python-brace-format
msgid "{disk_size:.1f} KiB"
msgstr "{disk_size:.1f} KiB"
-#: plinth/modules/storage/__init__.py:232
+#: plinth/modules/storage/__init__.py:219
#, python-brace-format
msgid "{disk_size:.1f} MiB"
msgstr "{disk_size:.1f} MiB"
-#: plinth/modules/storage/__init__.py:236
+#: plinth/modules/storage/__init__.py:223
#, python-brace-format
msgid "{disk_size:.1f} GiB"
msgstr "{disk_size:.1f} GiB"
-#: plinth/modules/storage/__init__.py:239
+#: plinth/modules/storage/__init__.py:226
#, python-brace-format
msgid "{disk_size:.1f} TiB"
msgstr "{disk_size:.1f} TiB"
-#: plinth/modules/storage/__init__.py:246
+#: plinth/modules/storage/__init__.py:233
msgid "The operation failed."
msgstr "A művelet sikertelen."
-#: plinth/modules/storage/__init__.py:248
+#: plinth/modules/storage/__init__.py:235
msgid "The operation was cancelled."
msgstr "A művelet meg lett szakítva."
-#: plinth/modules/storage/__init__.py:250
+#: plinth/modules/storage/__init__.py:237
msgid "The device is already unmounting."
msgstr "Az eszköz leválasztása már folyamatban van."
-#: plinth/modules/storage/__init__.py:252
+#: plinth/modules/storage/__init__.py:239
msgid "The operation is not supported due to missing driver/tool support."
msgstr ""
"A művelet nem támogatott hiányzó eszközvezérlő/segédeszköz támogatás miatt."
-#: plinth/modules/storage/__init__.py:255
+#: plinth/modules/storage/__init__.py:242
msgid "The operation timed out."
msgstr "A művelet túllépte az időkorlátot."
-#: plinth/modules/storage/__init__.py:257
+#: plinth/modules/storage/__init__.py:244
msgid "The operation would wake up a disk that is in a deep-sleep state."
msgstr ""
"A művelet fel fogja ébreszteni a lemezt, amely mély-alvó állapotban van."
-#: plinth/modules/storage/__init__.py:260
+#: plinth/modules/storage/__init__.py:247
msgid "Attempting to unmount a device that is busy."
msgstr ""
"Megpróbáltál leválasztani egy eszközt, amely jelenleg is használatban van."
-#: plinth/modules/storage/__init__.py:262
+#: plinth/modules/storage/__init__.py:249
msgid "The operation has already been cancelled."
msgstr "A művelet már meg lett szakítva."
-#: plinth/modules/storage/__init__.py:268
+#: plinth/modules/storage/__init__.py:255
msgid "Not authorized to perform the requested operation."
msgstr "Nem jogosult végrehajtani a kért műveletet."
-#: plinth/modules/storage/__init__.py:270
+#: plinth/modules/storage/__init__.py:257
msgid "The device is already mounted."
msgstr "Az eszköz már fel lett csatolva."
-#: plinth/modules/storage/__init__.py:272
+#: plinth/modules/storage/__init__.py:259
msgid "The device is not mounted."
msgstr "Az eszköz nincs felcsatolva."
-#: plinth/modules/storage/__init__.py:275
+#: plinth/modules/storage/__init__.py:262
msgid "Not permitted to use the requested option."
msgstr "Nem használhatja a kért lehetőséget."
-#: plinth/modules/storage/__init__.py:278
+#: plinth/modules/storage/__init__.py:265
msgid "The device is mounted by another user."
msgstr "Az eszközt egy másik felhasználó felcsatolva."
-#: plinth/modules/storage/__init__.py:326
+#: plinth/modules/storage/__init__.py:313
#, fuzzy, no-python-format, python-brace-format
#| msgid ""
#| "Warning: Low space on system partition ({percent_used}% used, "
@@ -5691,73 +5804,73 @@ msgstr ""
"Figyelmeztetés: Kevés a szabad hely a rendszerpartíción ({percent_used}% "
"felhasználva, {free_space} szabad)."
-#: plinth/modules/storage/__init__.py:328
+#: plinth/modules/storage/__init__.py:315
msgid "Low disk space"
msgstr ""
-#: plinth/modules/storage/forms.py:79
+#: plinth/modules/storage/forms.py:64
#, fuzzy
#| msgid "Invalid repository name."
msgid "Invalid directory name."
msgstr "Érvénytelen tárolónév."
-#: plinth/modules/storage/forms.py:97
+#: plinth/modules/storage/forms.py:82
msgid "Directory does not exist."
msgstr ""
-#: plinth/modules/storage/forms.py:99
+#: plinth/modules/storage/forms.py:84
#, fuzzy
#| msgid "Download directory"
msgid "Path is not a directory."
msgstr "Letöltési könyvtár"
-#: plinth/modules/storage/forms.py:102
+#: plinth/modules/storage/forms.py:87
#, fuzzy
#| msgid "The device is mounted by another user."
msgid "Directory is not readable by the user."
msgstr "Az eszközt egy másik felhasználó felcsatolva."
-#: plinth/modules/storage/forms.py:105
+#: plinth/modules/storage/forms.py:90
msgid "Directory is not writable by the user."
msgstr ""
-#: plinth/modules/storage/forms.py:110
+#: plinth/modules/storage/forms.py:95
#, fuzzy
#| msgid "Download directory"
msgid "Directory"
msgstr "Letöltési könyvtár"
-#: plinth/modules/storage/forms.py:113
+#: plinth/modules/storage/forms.py:98
msgid "Subdirectory (optional)"
msgstr ""
-#: plinth/modules/storage/forms.py:160
+#: plinth/modules/storage/forms.py:145
#, fuzzy
#| msgid "Shared"
msgid "Share"
msgstr "Megosztott"
-#: plinth/modules/storage/forms.py:168
+#: plinth/modules/storage/forms.py:153
msgid "Other directory (specify below)"
msgstr ""
-#: plinth/modules/storage/templates/storage.html:35
+#: plinth/modules/storage/templates/storage.html:20
msgid "The following storage devices are in use:"
msgstr "A következő tárolóeszközök vannak használatban:"
-#: plinth/modules/storage/templates/storage.html:41
+#: plinth/modules/storage/templates/storage.html:26
msgid "Label"
msgstr "Címke"
-#: plinth/modules/storage/templates/storage.html:42
+#: plinth/modules/storage/templates/storage.html:27
msgid "Mount Point"
msgstr "Csatolási pont"
-#: plinth/modules/storage/templates/storage.html:90
+#: plinth/modules/storage/templates/storage.html:75
msgid "Partition Expansion"
msgstr "Partíció kibővítése"
-#: plinth/modules/storage/templates/storage.html:92
+#: plinth/modules/storage/templates/storage.html:77
#, python-format
msgid ""
"There is %(expandable_root_size)s of unallocated space available after your "
@@ -5768,13 +5881,13 @@ msgstr ""
"követően. A root partíció kibővíthető erre a területre. Ez további szabad "
"területet biztosíthat a fájljaid tárolásához."
-#: plinth/modules/storage/templates/storage.html:102
-#: plinth/modules/storage/templates/storage_expand.html:39
-#: plinth/modules/storage/views.py:76
+#: plinth/modules/storage/templates/storage.html:87
+#: plinth/modules/storage/templates/storage_expand.html:24
+#: plinth/modules/storage/views.py:58
msgid "Expand Root Partition"
msgstr "Root partíció kibővítése"
-#: plinth/modules/storage/templates/storage_expand.html:29
+#: plinth/modules/storage/templates/storage_expand.html:14
#, python-format
msgid ""
"Please backup your data before proceeding. After this operation, "
@@ -5785,39 +5898,30 @@ msgstr ""
"után %(expandable_root_size)s további szabad tárterület lesz elérhető a root "
"partíción."
-#: plinth/modules/storage/views.py:88
+#: plinth/modules/storage/views.py:70
#, python-brace-format
msgid "Error expanding partition: {exception}"
msgstr "Hiba a partíció kibővítése során: {exception}"
-#: plinth/modules/storage/views.py:91
+#: plinth/modules/storage/views.py:73
msgid "Partition expanded successfully."
msgstr "A partíció kibővítése sikerült."
-#: plinth/modules/storage/views.py:109
+#: plinth/modules/storage/views.py:91
#, python-brace-format
msgid "{drive_vendor} {drive_model} can be safely unplugged."
msgstr "{drive_vendor} {drive_model} biztonságosan kivehető."
-#: plinth/modules/storage/views.py:113
+#: plinth/modules/storage/views.py:95
msgid "Device can be safely unplugged."
msgstr "Az eszköz biztonságosan kivehető."
-#: plinth/modules/storage/views.py:123
+#: plinth/modules/storage/views.py:105
#, python-brace-format
msgid "Error ejecting device: {error_message}"
msgstr "Hiba történt az eszköz kiadása során: {error_message}"
-#: plinth/modules/syncthing/__init__.py:40
-#: plinth/modules/syncthing/manifest.py:28
-msgid "Syncthing"
-msgstr "Syncthing"
-
-#: plinth/modules/syncthing/__init__.py:44
-msgid "File Synchronization"
-msgstr "Fájlszinkronizáció"
-
-#: plinth/modules/syncthing/__init__.py:47
+#: plinth/modules/syncthing/__init__.py:26
msgid ""
"Syncthing is an application to synchronize files across multiple devices, e."
"g. your desktop computer and mobile phone. Creation, modification, or "
@@ -5829,7 +5933,7 @@ msgstr ""
"eszköz fájljain végzett módosítások a többi eszközön is automatikusan "
"jelentkeznek, amennyiben azokra telepítve van a szolgáltatás."
-#: plinth/modules/syncthing/__init__.py:52
+#: plinth/modules/syncthing/__init__.py:31
#, python-brace-format
msgid ""
"Running Syncthing on {box_name} provides an extra synchronization point for "
@@ -5848,19 +5952,20 @@ msgstr ""
"felület csak az \"admin\" csoporthoz tartozó felhasználók számára "
"hozzáférhető."
-#: plinth/modules/syncthing/__init__.py:63
+#: plinth/modules/syncthing/__init__.py:40
msgid "Administer Syncthing application"
msgstr "A Syncthing alkalmazás beállítása"
-#: plinth/modules/tahoe/__init__.py:43
-msgid "Tahoe-LAFS"
-msgstr "Tahoe-LAFS"
+#: plinth/modules/syncthing/__init__.py:54
+#: plinth/modules/syncthing/manifest.py:13
+msgid "Syncthing"
+msgstr "Syncthing"
-#: plinth/modules/tahoe/__init__.py:47
-msgid "Distributed File Storage"
-msgstr "Elosztott fájltároló"
+#: plinth/modules/syncthing/__init__.py:55
+msgid "File Synchronization"
+msgstr "Fájlszinkronizáció"
-#: plinth/modules/tahoe/__init__.py:134
+#: plinth/modules/tahoe/__init__.py:30
msgid ""
"Tahoe-LAFS is a decentralized secure file storage system. It uses provider "
"independent security to store files over a distributed network of storage "
@@ -5872,7 +5977,7 @@ msgstr ""
"elosztott hálózatán keresztül. Még ha néhány csomópont meg is hibásodik, a "
"fájljaidat le tudod tölteni a fennmaradó csomópontokról."
-#: plinth/modules/tahoe/__init__.py:139
+#: plinth/modules/tahoe/__init__.py:35
#, python-brace-format
msgid ""
"This {box_name} hosts a storage node and an introducer by default. "
@@ -5883,7 +5988,15 @@ msgstr ""
"csomópontnak is otthont ad. További bevezető csomópontok is hozzáadhatók, "
"melyek majd bemutatják ezt a csomópontot a többi adattároló csomópontnak."
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:33
+#: plinth/modules/tahoe/__init__.py:66
+msgid "Tahoe-LAFS"
+msgstr "Tahoe-LAFS"
+
+#: plinth/modules/tahoe/__init__.py:68
+msgid "Distributed File Storage"
+msgstr "Elosztott fájltároló"
+
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:17
#, python-format
msgid ""
"The Tahoe-LAFS server domain is set to %(domain_name)s. Changing the "
@@ -5897,37 +6010,33 @@ msgstr ""
"érheted el: https://"
"%(domain_name)s:5678."
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:55
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:39
msgid "Local introducer"
msgstr "Helyi bevezető"
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:43
#: plinth/modules/tahoe/templates/tahoe-post-setup.html:59
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:75
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:92
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:76
msgid "Pet Name"
msgstr "Becenév"
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:72
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:56
msgid "Add new introducer"
msgstr "Új bevezető hozzáadása"
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:83
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:67
msgid "Add"
msgstr "Hozzáadás"
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:88
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:72
msgid "Connected introducers"
msgstr "Csatlakozott bevezetők"
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:105
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:89
msgid "Remove"
msgstr "Eltávolít"
-#: plinth/modules/tor/__init__.py:47
-msgid "Tor"
-msgstr "Tor"
-
-#: plinth/modules/tor/__init__.py:52
+#: plinth/modules/tor/__init__.py:33
msgid ""
"Tor is an anonymous communication system. You can learn more about it from "
"the Tor Project website. For "
@@ -5941,58 +6050,62 @@ msgstr ""
"torproject.org/download/download-easy.html.en\">Tor böngésző használatát "
"javasolja."
-#: plinth/modules/tor/__init__.py:83
+#: plinth/modules/tor/__init__.py:55
+msgid "Tor"
+msgstr "Tor"
+
+#: plinth/modules/tor/__init__.py:66
#, fuzzy
#| msgid "Tor Hidden Service"
msgid "Tor Onion Service"
msgstr "Tor rejtett szolgáltatás"
-#: plinth/modules/tor/__init__.py:87
+#: plinth/modules/tor/__init__.py:70
msgid "Tor Socks Proxy"
msgstr "Tor Socks proxy"
-#: plinth/modules/tor/__init__.py:91
+#: plinth/modules/tor/__init__.py:74
msgid "Tor Bridge Relay"
msgstr "Tor híd relay"
-#: plinth/modules/tor/__init__.py:112
+#: plinth/modules/tor/__init__.py:95
msgid "Tor relay port available"
msgstr "Tor relay port elérhető"
-#: plinth/modules/tor/__init__.py:122
+#: plinth/modules/tor/__init__.py:105
msgid "Obfs3 transport registered"
msgstr "Obfs3 átvitel regisztrálva"
-#: plinth/modules/tor/__init__.py:132
+#: plinth/modules/tor/__init__.py:115
msgid "Obfs4 transport registered"
msgstr "Obfs4 átvitel regisztrálva"
-#: plinth/modules/tor/__init__.py:225
+#: plinth/modules/tor/__init__.py:208
#, python-brace-format
msgid "Access URL {url} on tcp{kind} via Tor"
msgstr "Hozzáférés a {url} URL-hez tcp{kind}-on Tor használatával"
-#: plinth/modules/tor/__init__.py:236
+#: plinth/modules/tor/__init__.py:219
#, python-brace-format
msgid "Confirm Tor usage at {url} on tcp{kind}"
msgstr "Hagyd jóvá a Tor használatát {url} célcímhez tcp{kind} protokollon"
-#: plinth/modules/tor/forms.py:46
+#: plinth/modules/tor/forms.py:31
msgid ""
"Enter a valid bridge with this format: [transport] IP:ORPort [fingerprint]"
msgstr ""
"Adj meg egy érvényes hidat ezzel a formátummal: [átvitel_neve] IP_cím:Port "
"[ujjlenyomat]"
-#: plinth/modules/tor/forms.py:88
+#: plinth/modules/tor/forms.py:73
msgid "Enable Tor"
msgstr "Tor engedélyezése"
-#: plinth/modules/tor/forms.py:90
+#: plinth/modules/tor/forms.py:75
msgid "Use upstream bridges to connect to Tor network"
msgstr "Használj felmenő hidakat a Tor hálózatra kapcsolódáshoz"
-#: plinth/modules/tor/forms.py:92
+#: plinth/modules/tor/forms.py:77
msgid ""
"When enabled, the bridges configured below will be used to connect to the "
"Tor network. Use this option if your Internet Service Provider (ISP) blocks "
@@ -6003,11 +6116,11 @@ msgstr ""
"internetszolgáltatód blokkolja vagy cenzúrázza a Tor hálózati kapcsolatokat. "
"Ez le fogja tiltani a relay módokat."
-#: plinth/modules/tor/forms.py:97
+#: plinth/modules/tor/forms.py:82
msgid "Upstream bridges"
msgstr "Felmenő hidak"
-#: plinth/modules/tor/forms.py:99
+#: plinth/modules/tor/forms.py:84
msgid ""
"You can get some bridges from https://bridges.torproject.org/ and copy/paste the bridge information "
@@ -6018,11 +6131,11 @@ msgstr ""
"információit ide. A jelenleg támogatott átvitelek: none (nincs), obfs3, "
"obfs4 és scamblesuit."
-#: plinth/modules/tor/forms.py:105
+#: plinth/modules/tor/forms.py:90
msgid "Enable Tor relay"
msgstr "Tor relay engedélyezése"
-#: plinth/modules/tor/forms.py:106
+#: plinth/modules/tor/forms.py:91
#, python-brace-format
msgid ""
"When enabled, your {box_name} will run a Tor relay and donate bandwidth to "
@@ -6033,11 +6146,11 @@ msgstr ""
"sávszélességet fog a Tor hálózathoz hozzáadni. Tedd ezt ha legalább 2 "
"megabit/másodperc feltöltési és letöltési sávszélességgel rendelkezel."
-#: plinth/modules/tor/forms.py:111
+#: plinth/modules/tor/forms.py:96
msgid "Enable Tor bridge relay"
msgstr "Tor híd relay engedélyezése"
-#: plinth/modules/tor/forms.py:113
+#: plinth/modules/tor/forms.py:98
msgid ""
"When enabled, relay information is published in the Tor bridge database "
"instead of public Tor relay database making it harder to censor this node. "
@@ -6047,13 +6160,13 @@ msgstr ""
"nyilvános Tor relay adatbázis helyett, így téve nehezebbé ezen csomópont "
"cenzúrázását. Ez segít másoknak a cenzúra megkerülésében."
-#: plinth/modules/tor/forms.py:118
+#: plinth/modules/tor/forms.py:103
#, fuzzy
#| msgid "Enable Tor Hidden Service"
msgid "Enable Tor Hidden Service"
msgstr "Tor rejtett szolgáltatás engedélyezése"
-#: plinth/modules/tor/forms.py:120
+#: plinth/modules/tor/forms.py:105
#, fuzzy, python-brace-format
#| msgid ""
#| "A hidden service will allow {box_name} to provide selected services (such "
@@ -6068,11 +6181,11 @@ msgstr ""
"kiválasztott szolgáltatásokat nyújthasson (pl. wiki vagy chat) anélkül, hogy "
"felfedné a helyét. Ezt még ne használd erős anonimitás eléréséhez."
-#: plinth/modules/tor/forms.py:125
+#: plinth/modules/tor/forms.py:110
msgid "Download software packages over Tor"
msgstr "A szoftvercsomagok Tor-on keresztüli letöltése"
-#: plinth/modules/tor/forms.py:126
+#: plinth/modules/tor/forms.py:111
msgid ""
"When enabled, software will be downloaded over the Tor network for "
"installations and upgrades. This adds a degree of privacy and security "
@@ -6082,37 +6195,37 @@ msgstr ""
"szoftver a Tor hálózaton keresztül töltődik le. Ez magasabb szintű "
"biztonságot jelent szoftverek letöltésekor."
-#: plinth/modules/tor/forms.py:141
+#: plinth/modules/tor/forms.py:126
msgid "Specify at least one upstream bridge to use upstream bridges."
msgstr "Adj meg legalább egy felmenő hidat azok használatához."
-#: plinth/modules/tor/manifest.py:29
+#: plinth/modules/tor/manifest.py:14
msgid "Tor Browser"
msgstr "Tor böngésző"
-#: plinth/modules/tor/manifest.py:45
+#: plinth/modules/tor/manifest.py:30
msgid "Orbot: Proxy with Tor"
msgstr "Orbot: Tor proxy Android platformra"
-#: plinth/modules/tor/templates/tor.html:41
+#: plinth/modules/tor/templates/tor.html:26
msgid "Tor configuration is being updated"
msgstr "A Tor beállításainak frissítése folyamatban"
-#: plinth/modules/tor/templates/tor.html:50
+#: plinth/modules/tor/templates/tor.html:35
#, fuzzy
#| msgid "Hidden Service"
msgid "Onion Service"
msgstr "Rejtett szolgáltatás"
-#: plinth/modules/tor/templates/tor.html:52
+#: plinth/modules/tor/templates/tor.html:37
msgid "Ports"
msgstr "Portok"
-#: plinth/modules/tor/templates/tor.html:82
+#: plinth/modules/tor/templates/tor.html:67
msgid "Relay"
msgstr "Továbbító"
-#: plinth/modules/tor/templates/tor.html:84
+#: plinth/modules/tor/templates/tor.html:69
#, python-format
msgid ""
"If your %(box_name)s is behind a router or firewall, you should make sure "
@@ -6122,22 +6235,17 @@ msgstr ""
"található, akkor győződj meg arról, hogy a következő portok nyitva vannak és "
"port továbbításuk (port-forward) megfelelő:"
-#: plinth/modules/tor/templates/tor.html:112
+#: plinth/modules/tor/templates/tor.html:97
msgid "SOCKS"
msgstr "SOCKS"
-#: plinth/modules/tor/templates/tor.html:115
+#: plinth/modules/tor/templates/tor.html:100
#, python-format
msgid "A Tor SOCKS port is available on your %(box_name)s on TCP port 9050."
msgstr ""
"Egy Tor SOCKS port elérhető a te %(box_name)s eszközöd 9050-es TCP portján."
-#: plinth/modules/transmission/__init__.py:41
-#: plinth/modules/transmission/manifest.py:24
-msgid "Transmission"
-msgstr "Transmission"
-
-#: plinth/modules/transmission/__init__.py:48
+#: plinth/modules/transmission/__init__.py:27
msgid ""
"BitTorrent is a peer-to-peer file sharing protocol. Transmission daemon "
"handles Bitorrent file sharing. Note that BitTorrent is not anonymous."
@@ -6146,15 +6254,12 @@ msgstr ""
"kezeli a Bitorrent fájlmegosztást. Vedd figyelembe, hogy a BitTorrent nem "
"biztosít névtelenséget."
-#: plinth/modules/ttrss/__init__.py:43 plinth/modules/ttrss/manifest.py:34
-msgid "Tiny Tiny RSS"
-msgstr "Tiny Tiny RSS"
+#: plinth/modules/transmission/__init__.py:48
+#: plinth/modules/transmission/manifest.py:9
+msgid "Transmission"
+msgstr "Transmission"
-#: plinth/modules/ttrss/__init__.py:47
-msgid "News Feed Reader"
-msgstr "Hírcsatorna-olvasó"
-
-#: plinth/modules/ttrss/__init__.py:50
+#: plinth/modules/ttrss/__init__.py:29
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 "
@@ -6164,7 +6269,7 @@ msgstr ""
"tervezve, hogy elérhetővé tegye a hírolvasást bárhonnan, miközben igyekszik "
"egy valódi asztali alkalmazás érzetét kelteni."
-#: plinth/modules/ttrss/__init__.py:54
+#: plinth/modules/ttrss/__init__.py:33
#, fuzzy, python-brace-format
#| msgid ""
#| "When enabled, Tiny Tiny RSS will be available from /"
@@ -6179,7 +6284,7 @@ msgstr ""
"\"{users_url}\">bármely felhasználó számára {box_name} "
"felhasználónévvel."
-#: plinth/modules/ttrss/__init__.py:58
+#: plinth/modules/ttrss/__init__.py:37
#, fuzzy
#| msgid ""
#| "When using a mobile or desktop application for Tiny Tiny RSS, use the URL "
@@ -6193,65 +6298,73 @@ msgstr ""
"hez, használd a /tt-rss-app URL-t a "
"csatlakozáshoz."
-#: plinth/modules/ttrss/__init__.py:65
+#: plinth/modules/ttrss/__init__.py:42
msgid "Read and subscribe to news feeds"
msgstr "Hírcsatornákra való feliratkozás / olvasás"
-#: plinth/modules/ttrss/manifest.py:25
+#: plinth/modules/ttrss/__init__.py:56 plinth/modules/ttrss/manifest.py:19
+msgid "Tiny Tiny RSS"
+msgstr "Tiny Tiny RSS"
+
+#: plinth/modules/ttrss/__init__.py:57
+msgid "News Feed Reader"
+msgstr "Hírcsatorna-olvasó"
+
+#: plinth/modules/ttrss/manifest.py:10
msgid "Tiny Tiny RSS (Fork)"
msgstr "Tiny Tiny RSS (Fork)"
-#: plinth/modules/upgrades/__init__.py:37 plinth/templates/setup.html:89
-msgid "Update"
-msgstr "Frissítés"
-
-#: plinth/modules/upgrades/__init__.py:40
+#: plinth/modules/upgrades/__init__.py:23
msgid "Check for and apply the latest software and security updates."
msgstr ""
"A legfrissebb szoftver- és biztonsági frissítések ellenőrzése és alkalmazása."
-#: plinth/modules/upgrades/__init__.py:84
+#: plinth/modules/upgrades/__init__.py:38 plinth/templates/setup.html:74
+msgid "Update"
+msgstr "Frissítés"
+
+#: plinth/modules/upgrades/__init__.py:71
#, fuzzy
#| msgid "FreedomBox Foundation"
msgid "FreedomBox Updated"
msgstr "FreedomBox Alapítvány"
-#: plinth/modules/upgrades/forms.py:28
+#: plinth/modules/upgrades/forms.py:13
msgid "Enable auto-update"
msgstr "Automatikus frissítések engedélyezése"
-#: plinth/modules/upgrades/forms.py:29
+#: plinth/modules/upgrades/forms.py:14
msgid "When enabled, FreedomBox automatically updates once a day."
msgstr ""
"Ha engedélyezett, akkor a FreedomBox automatikusan frissít naponta egyszer."
-#: plinth/modules/upgrades/templates/upgrades-new-release.html:24
+#: plinth/modules/upgrades/templates/upgrades-new-release.html:9
#, fuzzy, python-format
#| msgid "%(box_name)s is up to date."
msgid "%(box_name)s Updated"
msgstr "A %(box_name)s naprakész."
-#: plinth/modules/upgrades/templates/upgrades-new-release.html:28
+#: plinth/modules/upgrades/templates/upgrades-new-release.html:13
#, python-format
msgid ""
"%(box_name)s has been updated to version %(version)s. See the release announcement."
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades-new-release.html:37
-#: plinth/templates/notifications.html:59
+#: plinth/modules/upgrades/templates/upgrades-new-release.html:22
+#: plinth/templates/notifications.html:44
msgid "Dismiss"
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades.html:45
+#: plinth/modules/upgrades/templates/upgrades.html:30
msgid "Update now"
msgstr "Frissítés most"
-#: plinth/modules/upgrades/templates/upgrades.html:54
+#: plinth/modules/upgrades/templates/upgrades.html:39
msgid "Updating..."
msgstr "Frissítés…"
-#: plinth/modules/upgrades/templates/upgrades.html:59
+#: plinth/modules/upgrades/templates/upgrades.html:44
msgid ""
"This may take a long time to complete. During an update, "
"you cannot install apps. Also, this web interface may be temporarily "
@@ -6262,53 +6375,49 @@ msgstr ""
"felület átmenetileg elérhetetlenné válhat és hibát jelezhet. Ebben az "
"esetben frissítsd az oldalt a folytatáshoz."
-#: plinth/modules/upgrades/templates/upgrades.html:73
+#: plinth/modules/upgrades/templates/upgrades.html:58
msgid "Toggle recent update logs"
msgstr "Frissítésnapló megjelenítése"
-#: plinth/modules/upgrades/templates/upgrades_configure.html:26
-#: plinth/modules/upgrades/templates/upgrades_configure.html:27
-#: plinth/modules/upgrades/views.py:107
+#: plinth/modules/upgrades/templates/upgrades_configure.html:11
+#: plinth/modules/upgrades/templates/upgrades_configure.html:12
+#: plinth/modules/upgrades/views.py:89
msgid "Manual update"
msgstr "Kézi frissítés"
-#: plinth/modules/upgrades/views.py:66
+#: plinth/modules/upgrades/views.py:48
#, python-brace-format
msgid "Error when configuring unattended-upgrades: {error}"
msgstr "Hiba az unattended-upgrades konfigurálása közben: {error}"
-#: plinth/modules/upgrades/views.py:70
+#: plinth/modules/upgrades/views.py:52
msgid "Automatic upgrades enabled"
msgstr "Automatikus frissítések engedélyezve"
-#: plinth/modules/upgrades/views.py:73
+#: plinth/modules/upgrades/views.py:55
msgid "Automatic upgrades disabled"
msgstr "Automatikus frissítések kikapcsolva"
-#: plinth/modules/upgrades/views.py:75
+#: plinth/modules/upgrades/views.py:57
msgid "Settings unchanged"
msgstr "A beállítások nem változtak"
-#: plinth/modules/upgrades/views.py:101
+#: plinth/modules/upgrades/views.py:83
msgid "Upgrade process started."
msgstr "A frissítési folyamat elkezdődött."
-#: plinth/modules/upgrades/views.py:104
+#: plinth/modules/upgrades/views.py:86
msgid "Starting upgrade failed."
msgstr "A frissítést nem sikerült elindítani."
-#: plinth/modules/users/__init__.py:51
-msgid "Users and Groups"
-msgstr "Felhasználók és csoportok"
-
-#: plinth/modules/users/__init__.py:54
+#: plinth/modules/users/__init__.py:37
msgid ""
"Create and managed user accounts. These accounts serve as centralized "
"authentication mechanism for most apps. Some apps further require a user "
"account to be part of a group to authorize the user to access the app."
msgstr ""
-#: plinth/modules/users/__init__.py:59
+#: plinth/modules/users/__init__.py:42
#, python-brace-format
msgid ""
"Any user may login to {box_name} web interface to see a list of apps "
@@ -6316,35 +6425,39 @@ msgid ""
"group may alter apps or system settings."
msgstr ""
-#: plinth/modules/users/__init__.py:128
+#: plinth/modules/users/__init__.py:64
+msgid "Users and Groups"
+msgstr "Felhasználók és csoportok"
+
+#: plinth/modules/users/__init__.py:115
#, python-brace-format
msgid "Check LDAP entry \"{search_item}\""
msgstr "LDAP bejegyzés ellenőrzése: \"{search_item}\""
-#: plinth/modules/users/forms.py:43
+#: plinth/modules/users/forms.py:28
msgid "Access to all services and system settings"
msgstr "Hozzáférés az összes szolgáltatáshoz és rendszerbeállításhoz"
-#: plinth/modules/users/forms.py:59
+#: plinth/modules/users/forms.py:44
msgid "Username is taken or is reserved."
msgstr "A felhasználói név (már) foglalt."
-#: plinth/modules/users/forms.py:87
+#: plinth/modules/users/forms.py:72
#, fuzzy
#| msgid "Invalid server name"
msgid "Enter a valid username."
msgstr "Érvénytelen kiszolgálónév"
-#: plinth/modules/users/forms.py:93
+#: plinth/modules/users/forms.py:78
msgid ""
"Required. 150 characters or fewer. English letters, digits and @/./-/_ only."
msgstr ""
-#: plinth/modules/users/forms.py:106 plinth/modules/users/forms.py:222
+#: plinth/modules/users/forms.py:91 plinth/modules/users/forms.py:207
msgid "Permissions"
msgstr "Engedélyek"
-#: plinth/modules/users/forms.py:109
+#: plinth/modules/users/forms.py:94
msgid ""
"Select which services should be available to the new user. The user will be "
"able to log in to services that support single sign-on through LDAP, if they "
@@ -6360,20 +6473,20 @@ msgstr ""
"képesek bejelentkezni a rendszerbe, ahol adminisztrátori jogosultságokkal "
"rendelkeznek (sudo)."
-#: plinth/modules/users/forms.py:148 plinth/modules/users/forms.py:372
+#: plinth/modules/users/forms.py:133 plinth/modules/users/forms.py:357
msgid "Creating LDAP user failed."
msgstr "LDAP felhasználó létrehozása sikertelen."
-#: plinth/modules/users/forms.py:159
+#: plinth/modules/users/forms.py:144
#, python-brace-format
msgid "Failed to add new user to {group} group."
msgstr "Nem sikerült hozzáadni az új felhasználót ehhez a csoporthoz: {group}."
-#: plinth/modules/users/forms.py:173
+#: plinth/modules/users/forms.py:158
msgid "Authorized SSH Keys"
msgstr "Engedélyezett SSH kulcsok"
-#: plinth/modules/users/forms.py:175
+#: plinth/modules/users/forms.py:160
msgid ""
"Setting an SSH public key will allow this user to securely log in to the "
"system without using a password. You may enter multiple keys, one on each "
@@ -6383,84 +6496,84 @@ msgstr ""
"jelszó nélkül jelentkezzen be. Több kulcs is megadható; soronként egy. Az "
"üres, illetve # jellel kezdődő sorok nem számítanak."
-#: plinth/modules/users/forms.py:259
+#: plinth/modules/users/forms.py:244
msgid "Renaming LDAP user failed."
msgstr "LDAP felhasználó átnevezése sikertelen."
-#: plinth/modules/users/forms.py:271
+#: plinth/modules/users/forms.py:256
msgid "Failed to remove user from group."
msgstr "Nem sikerült eltávolítani a felhasználót a csoportból."
-#: plinth/modules/users/forms.py:282
+#: plinth/modules/users/forms.py:267
msgid "Failed to add user to group."
msgstr "Nem sikerült hozzáadni a felhasználót a csoporthoz."
-#: plinth/modules/users/forms.py:291
+#: plinth/modules/users/forms.py:276
msgid "Unable to set SSH keys."
msgstr "SSH kulcsok beállítása sikertelen."
-#: plinth/modules/users/forms.py:306
+#: plinth/modules/users/forms.py:291
#, fuzzy
#| msgid "Failed to add user to group."
msgid "Failed to change user status."
msgstr "Nem sikerült hozzáadni a felhasználót a csoporthoz."
-#: plinth/modules/users/forms.py:314
+#: plinth/modules/users/forms.py:299
msgid "Cannot delete the only administrator in the system."
msgstr "Nem lehet törölni a rendszer egyetlen rendszergazdáját."
-#: plinth/modules/users/forms.py:346
+#: plinth/modules/users/forms.py:331
msgid "Changing LDAP user password failed."
msgstr "LDAP felhasználó jelszavának megváltoztatása sikertelen."
-#: plinth/modules/users/forms.py:381
+#: plinth/modules/users/forms.py:366
msgid "Failed to add new user to admin group."
msgstr "Nem sikerült hozzáadni az új felhasználót a rendszergazda csoporthoz."
-#: plinth/modules/users/forms.py:398
+#: plinth/modules/users/forms.py:383
msgid "Failed to restrict console access."
msgstr "Nem sikerült a konzol hozzáférés korlátozása."
-#: plinth/modules/users/forms.py:410
+#: plinth/modules/users/forms.py:395
msgid "User account created, you are now logged in"
msgstr "Felhasználói fiók létrehozva, bejelentkezés sikeres"
-#: plinth/modules/users/templates/users_change_password.html:26
+#: plinth/modules/users/templates/users_change_password.html:11
#, python-format
msgid "Change Password for %(username)s"
msgstr "%(username)s jelszavának megváltoztatása"
-#: plinth/modules/users/templates/users_change_password.html:36
+#: plinth/modules/users/templates/users_change_password.html:21
msgid "Save Password"
msgstr "Jelszó mentése"
-#: plinth/modules/users/templates/users_create.html:32
-#: plinth/modules/users/templates/users_list.html:42
-#: plinth/modules/users/templates/users_list.html:44
-#: plinth/modules/users/views.py:57
+#: plinth/modules/users/templates/users_create.html:17
+#: plinth/modules/users/templates/users_list.html:27
+#: plinth/modules/users/templates/users_list.html:29
+#: plinth/modules/users/views.py:42
msgid "Create User"
msgstr "Felhasználó létrehozása"
-#: plinth/modules/users/templates/users_delete.html:26
-#: plinth/modules/users/views.py:139
+#: plinth/modules/users/templates/users_delete.html:11
+#: plinth/modules/users/views.py:121
msgid "Delete User"
msgstr "Felhasználó törlése"
-#: plinth/modules/users/templates/users_delete.html:29
+#: plinth/modules/users/templates/users_delete.html:14
#, python-format
msgid "Delete user %(username)s permanently?"
msgstr "%(username)s nevű felhasználó végleges törlése?"
-#: plinth/modules/users/templates/users_delete.html:38
+#: plinth/modules/users/templates/users_delete.html:23
#, python-format
msgid "Delete %(username)s"
msgstr "%(username)s törlése"
-#: plinth/modules/users/templates/users_firstboot.html:26
+#: plinth/modules/users/templates/users_firstboot.html:11
msgid "Administrator Account"
msgstr "Rendszergazda fiók"
-#: plinth/modules/users/templates/users_firstboot.html:29
+#: plinth/modules/users/templates/users_firstboot.html:14
msgid ""
"Choose a username and password to access this web interface. The password "
"can be changed later. This user will be granted administrative privileges. "
@@ -6471,26 +6584,26 @@ msgstr ""
"rendszergazdai jogosultságokkal fog rendelkezni. Más felhasználók "
"hozzáadhatóak később."
-#: plinth/modules/users/templates/users_firstboot.html:42
+#: plinth/modules/users/templates/users_firstboot.html:27
msgid "Create Account"
msgstr "Fiók létrehozása"
-#: plinth/modules/users/templates/users_list.html:38
-#: plinth/modules/users/views.py:74
+#: plinth/modules/users/templates/users_list.html:23
+#: plinth/modules/users/views.py:59
msgid "Users"
msgstr "Felhasználók"
-#: plinth/modules/users/templates/users_list.html:57
+#: plinth/modules/users/templates/users_list.html:42
#, python-format
msgid "Delete user %(username)s"
msgstr "%(username)s felhasználó törlése"
-#: plinth/modules/users/templates/users_list.html:65
+#: plinth/modules/users/templates/users_list.html:50
#, python-format
msgid "Edit user %(username)s"
msgstr "%(username)s felhasználó szerkesztése"
-#: plinth/modules/users/templates/users_update.html:30
+#: plinth/modules/users/templates/users_update.html:15
#, python-format
msgid ""
"Use the change password form to "
@@ -6499,59 +6612,54 @@ msgstr ""
"A jelszó a jelszómódosítás űrlap "
"kitöltésével változtatható meg."
-#: plinth/modules/users/templates/users_update.html:42
-#: plinth/templates/language-selection.html:32
+#: plinth/modules/users/templates/users_update.html:27
+#: plinth/templates/language-selection.html:17
msgid "Save Changes"
msgstr "Változtatások mentése"
-#: plinth/modules/users/views.py:55
+#: plinth/modules/users/views.py:40
#, python-format
msgid "User %(username)s created."
msgstr "%(username)s nevű felhasználó létrehozva."
-#: plinth/modules/users/views.py:93
+#: plinth/modules/users/views.py:75
#, python-format
msgid "User %(username)s updated."
msgstr "%(username)s nevű felhasználó frissítve."
-#: plinth/modules/users/views.py:94
+#: plinth/modules/users/views.py:76
msgid "Edit User"
msgstr "Felhasználó szerkesztése"
-#: plinth/modules/users/views.py:149
+#: plinth/modules/users/views.py:131
#, python-brace-format
msgid "User {user} deleted."
msgstr "{user} nevű felhasználó törölve."
-#: plinth/modules/users/views.py:156
+#: plinth/modules/users/views.py:138
msgid "Deleting LDAP user failed."
msgstr "LDAP felhasználó törlése sikertelen."
-#: plinth/modules/users/views.py:165
+#: plinth/modules/users/views.py:147
msgid "Change Password"
msgstr "Jelszómódosítás"
-#: plinth/modules/users/views.py:166
+#: plinth/modules/users/views.py:148
msgid "Password changed successfully."
msgstr "A jelszó módosítása sikeres."
-#: plinth/modules/wireguard/__init__.py:38
-#: plinth/modules/wireguard/manifest.py:29
-msgid "WireGuard"
-msgstr ""
-
-#: plinth/modules/wireguard/__init__.py:43
+#: plinth/modules/wireguard/__init__.py:24
msgid "WireGuard is a fast, modern, secure VPN tunnel."
msgstr ""
-#: plinth/modules/wireguard/__init__.py:45
+#: plinth/modules/wireguard/__init__.py:26
#, python-brace-format
msgid ""
"It can be used to connect to a VPN provider which supports WireGuard, and to "
"route all outgoing traffic from {box_name} through the VPN."
msgstr ""
-#: plinth/modules/wireguard/__init__.py:49
+#: plinth/modules/wireguard/__init__.py:30
#, python-brace-format
msgid ""
"A second use case is to connect a mobile device to {box_name} while "
@@ -6559,65 +6667,70 @@ msgid ""
"securely relayed through {box_name}."
msgstr ""
-#: plinth/modules/wireguard/forms.py:47
+#: plinth/modules/wireguard/__init__.py:52
+#: plinth/modules/wireguard/manifest.py:14
+msgid "WireGuard"
+msgstr ""
+
+#: plinth/modules/wireguard/forms.py:32
#, fuzzy
#| msgid "Invalid kite name"
msgid "Invalid key."
msgstr "Érvénytelen kite név"
-#: plinth/modules/wireguard/forms.py:76
-#: plinth/modules/wireguard/templates/wireguard.html:32
-#: plinth/modules/wireguard/templates/wireguard.html:89
-#: plinth/modules/wireguard/templates/wireguard_delete_server.html:38
+#: plinth/modules/wireguard/forms.py:61
+#: plinth/modules/wireguard/templates/wireguard.html:17
+#: plinth/modules/wireguard/templates/wireguard.html:74
+#: plinth/modules/wireguard/templates/wireguard_delete_server.html:23
#, fuzzy
#| msgid "Publish Key"
msgid "Public Key"
msgstr "Kulcs közzététele"
-#: plinth/modules/wireguard/forms.py:77
+#: plinth/modules/wireguard/forms.py:62
msgid ""
"Public key of the peer. Example: "
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs= ."
msgstr ""
-#: plinth/modules/wireguard/forms.py:85
+#: plinth/modules/wireguard/forms.py:70
msgid "Endpoint of the server"
msgstr ""
-#: plinth/modules/wireguard/forms.py:86
+#: plinth/modules/wireguard/forms.py:71
msgid ""
"Domain name and port in the form \"ip:port\". Example: demo.wireguard."
"com:12912 ."
msgstr ""
-#: plinth/modules/wireguard/forms.py:91
+#: plinth/modules/wireguard/forms.py:76
#, fuzzy
#| msgid "Published key to keyserver."
msgid "Public key of the server"
msgstr "Kulcs közzétéve a kulcskiszolgálónak."
-#: plinth/modules/wireguard/forms.py:92
+#: plinth/modules/wireguard/forms.py:77
msgid ""
"Provided by the server operator, a long string of characters. Example: "
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs= ."
msgstr ""
-#: plinth/modules/wireguard/forms.py:97
+#: plinth/modules/wireguard/forms.py:82
msgid "Client IP address provided by server"
msgstr ""
-#: plinth/modules/wireguard/forms.py:98
+#: plinth/modules/wireguard/forms.py:83
msgid ""
"IP address assigned to this machine on the VPN after connecting to the "
"endpoint. This value is usually provided by the server operator. Example: "
"192.168.0.10."
msgstr ""
-#: plinth/modules/wireguard/forms.py:104
+#: plinth/modules/wireguard/forms.py:89
msgid "Private key of this machine"
msgstr ""
-#: plinth/modules/wireguard/forms.py:105
+#: plinth/modules/wireguard/forms.py:90
msgid ""
"Optional. New public/private keys are generated if left blank. Public key "
"can then be provided to the server. This is the recommended way. However, "
@@ -6625,187 +6738,187 @@ msgid ""
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs= ."
msgstr ""
-#: plinth/modules/wireguard/forms.py:113
+#: plinth/modules/wireguard/forms.py:98
msgid "Pre-shared key"
msgstr ""
-#: plinth/modules/wireguard/forms.py:114
+#: plinth/modules/wireguard/forms.py:99
msgid ""
"Optional. A shared secret key provided by the server to add an additional "
"layer of security. Fill in only if provided. Example: "
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs=."
msgstr ""
-#: plinth/modules/wireguard/forms.py:120
+#: plinth/modules/wireguard/forms.py:105
msgid "Use this connection to send all outgoing traffic"
msgstr ""
-#: plinth/modules/wireguard/forms.py:122
+#: plinth/modules/wireguard/forms.py:107
msgid "Typically checked for a VPN service though which all traffic is sent."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:25
+#: plinth/modules/wireguard/templates/wireguard.html:10
#, fuzzy
#| msgid "Chat Server"
msgid "As a Server"
msgstr "Chat szerver"
-#: plinth/modules/wireguard/templates/wireguard.html:27
+#: plinth/modules/wireguard/templates/wireguard.html:12
msgid "Peers allowed to connect to this server:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:33
+#: plinth/modules/wireguard/templates/wireguard.html:18
msgid "Allowed IPs"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:34
-#: plinth/modules/wireguard/templates/wireguard.html:90
+#: plinth/modules/wireguard/templates/wireguard.html:19
+#: plinth/modules/wireguard/templates/wireguard.html:75
#, fuzzy
#| msgid "Create Connection"
msgid "Last Connected Time"
msgstr "Kapcsolat létrehozása"
-#: plinth/modules/wireguard/templates/wireguard.html:53
+#: plinth/modules/wireguard/templates/wireguard.html:38
#, python-format
msgid "No peers configured to connect to this %(box_name)s yet."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:62
+#: plinth/modules/wireguard/templates/wireguard.html:47
#, python-format
msgid "Public key for this %(box_name)s:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:68
+#: plinth/modules/wireguard/templates/wireguard.html:53
#, fuzzy
#| msgid "No shares currently configured."
msgid "Not configured yet."
msgstr "Jelenleg nincs beállított megosztás."
-#: plinth/modules/wireguard/templates/wireguard.html:72
+#: plinth/modules/wireguard/templates/wireguard.html:57
#, fuzzy
#| msgid "Add new introducer"
msgid "Add a new peer"
msgstr "Új bevezető hozzáadása"
-#: plinth/modules/wireguard/templates/wireguard.html:76
-#: plinth/modules/wireguard/views.py:69
+#: plinth/modules/wireguard/templates/wireguard.html:61
+#: plinth/modules/wireguard/views.py:51
msgid "Add Allowed Client"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:79
+#: plinth/modules/wireguard/templates/wireguard.html:64
#, fuzzy
#| msgid "Chat Client"
msgid "As a Client"
msgstr "Chat kliens"
-#: plinth/modules/wireguard/templates/wireguard.html:81
+#: plinth/modules/wireguard/templates/wireguard.html:66
#, python-format
msgid "Servers that %(box_name)s will connect to:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:88
-#: plinth/modules/wireguard/templates/wireguard_delete_server.html:34
+#: plinth/modules/wireguard/templates/wireguard.html:73
+#: plinth/modules/wireguard/templates/wireguard_delete_server.html:19
msgid "Endpoint"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:111
+#: plinth/modules/wireguard/templates/wireguard.html:96
#, fuzzy
#| msgid "Authentication to remote server failed."
msgid "No connections to remote servers are configured yet."
msgstr "Sikertelen a hitelesítés a távoli kiszolgálóra."
-#: plinth/modules/wireguard/templates/wireguard.html:119
+#: plinth/modules/wireguard/templates/wireguard.html:104
#, fuzzy
#| msgid "Add new introducer"
msgid "Add a new server"
msgstr "Új bevezető hozzáadása"
-#: plinth/modules/wireguard/templates/wireguard.html:123
-#: plinth/modules/wireguard/views.py:178
+#: plinth/modules/wireguard/templates/wireguard.html:108
+#: plinth/modules/wireguard/views.py:160
#, fuzzy
#| msgid "Add Connection"
msgid "Add Connection to Server"
msgstr "Kapcsolat hozzáadása"
-#: plinth/modules/wireguard/templates/wireguard_add_client.html:34
+#: plinth/modules/wireguard/templates/wireguard_add_client.html:19
#, fuzzy
#| msgid "IRC Client"
msgid "Add Client"
msgstr "IRC kliens"
-#: plinth/modules/wireguard/templates/wireguard_delete_client.html:29
+#: plinth/modules/wireguard/templates/wireguard_delete_client.html:14
#, fuzzy
#| msgid "Are you sure that you want to remove this repository?"
msgid "Are you sure that you want to delete this client?"
msgstr "Biztosan el szeretnéd távolítani ezt a tárolót?"
-#: plinth/modules/wireguard/templates/wireguard_delete_server.html:29
+#: plinth/modules/wireguard/templates/wireguard_delete_server.html:14
#, fuzzy
#| msgid "Are you sure that you want to remove this repository?"
msgid "Are you sure that you want to delete this server?"
msgstr "Biztosan el szeretnéd távolítani ezt a tárolót?"
-#: plinth/modules/wireguard/templates/wireguard_edit_client.html:34
+#: plinth/modules/wireguard/templates/wireguard_edit_client.html:19
#, fuzzy
#| msgid "Chat Client"
msgid "Update Client"
msgstr "Chat kliens"
-#: plinth/modules/wireguard/templates/wireguard_edit_server.html:34
+#: plinth/modules/wireguard/templates/wireguard_edit_server.html:19
#, fuzzy
#| msgid "Create Connection"
msgid "Update Connection"
msgstr "Kapcsolat létrehozása"
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:27
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:12
#, python-format
msgid ""
"%(box_name)s will allow this client to connect to it. Ensure that the client "
"is configured with the following information."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:35
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:20
msgid "Client public key:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:39
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:24
msgid "IP address to use for client:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:43
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:46
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:28
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:31
msgid "Pre-shared key:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:47
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:32
#, fuzzy
#| msgid "Server domain"
msgid "Server endpoints:"
msgstr "Kiszolgáló domain"
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:55
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:42
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:40
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:27
#, fuzzy
#| msgid "Select verified SSH public key"
msgid "Server public key:"
msgstr "Válaszd ki az ellenőrzött SSH nyilvános kulcsot"
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:65
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:64
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:50
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:49
msgid "Data transmitted:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:69
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:68
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:54
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:53
msgid "Data received:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:73
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:72
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:58
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:57
msgid "Latest handshake:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:29
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:14
#, python-format
msgid ""
"%(box_name)s will attempt to reach a WireGuard server with the following "
@@ -6813,150 +6926,150 @@ msgid ""
"public key and IP address."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:38
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:23
#, fuzzy
#| msgid "Server domain"
msgid "Server endpoint:"
msgstr "Kiszolgáló domain"
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:50
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:35
msgid "Public key of this machine:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:54
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:39
msgid "IP address of this machine:"
msgstr ""
-#: plinth/modules/wireguard/views.py:64
+#: plinth/modules/wireguard/views.py:46
#, fuzzy
#| msgid "Add new introducer"
msgid "Added new client."
msgstr "Új bevezető hozzáadása"
-#: plinth/modules/wireguard/views.py:79 plinth/modules/wireguard/views.py:138
+#: plinth/modules/wireguard/views.py:61 plinth/modules/wireguard/views.py:120
#, fuzzy
#| msgid "A share with this name already exists."
msgid "Client with public key already exists"
msgstr "Egy megosztás ezzel a névvel már létezik."
-#: plinth/modules/wireguard/views.py:92
+#: plinth/modules/wireguard/views.py:74
#, fuzzy
#| msgid "Email Client"
msgid "Allowed Client"
msgstr "E-mail kliens"
-#: plinth/modules/wireguard/views.py:114
+#: plinth/modules/wireguard/views.py:96
#, fuzzy
#| msgid "Update setup"
msgid "Updated client."
msgstr "Beállítások frissítése"
-#: plinth/modules/wireguard/views.py:119
+#: plinth/modules/wireguard/views.py:101
#, fuzzy
#| msgid "Email Client"
msgid "Modify Client"
msgstr "E-mail kliens"
-#: plinth/modules/wireguard/views.py:152
+#: plinth/modules/wireguard/views.py:134
msgid "Delete Allowed Client"
msgstr ""
-#: plinth/modules/wireguard/views.py:161
+#: plinth/modules/wireguard/views.py:143
#, fuzzy
#| msgid "Archive deleted."
msgid "Client deleted."
msgstr "Archívum törölve."
-#: plinth/modules/wireguard/views.py:163
+#: plinth/modules/wireguard/views.py:145
#, fuzzy
#| msgid "Repository not found"
msgid "Client not found"
msgstr "Tároló nem található"
-#: plinth/modules/wireguard/views.py:173
+#: plinth/modules/wireguard/views.py:155
#, fuzzy
#| msgid "Added custom service"
msgid "Added new server."
msgstr "Egyedi szolgáltatás hozzáadva"
-#: plinth/modules/wireguard/views.py:194
+#: plinth/modules/wireguard/views.py:176
#, fuzzy
#| msgid "Connection Type"
msgid "Connection to Server"
msgstr "Kapcsolat típusa"
-#: plinth/modules/wireguard/views.py:212
+#: plinth/modules/wireguard/views.py:194
#, fuzzy
#| msgid "Update setup"
msgid "Updated server."
msgstr "Beállítások frissítése"
-#: plinth/modules/wireguard/views.py:217
+#: plinth/modules/wireguard/views.py:199
#, fuzzy
#| msgid "Edit Connection"
msgid "Modify Connection to Server"
msgstr "Kapcsolat szerkesztése"
-#: plinth/modules/wireguard/views.py:254
+#: plinth/modules/wireguard/views.py:236
#, fuzzy
#| msgid "Delete Connection"
msgid "Delete Connection to Server"
msgstr "Kapcsolat törlése"
-#: plinth/modules/wireguard/views.py:274
+#: plinth/modules/wireguard/views.py:256
#, fuzzy
#| msgid "Share deleted."
msgid "Server deleted."
msgstr "Megosztás törölve."
-#: plinth/network.py:42
+#: plinth/network.py:27
msgid "PPPoE"
msgstr "PPPoE"
-#: plinth/network.py:43
+#: plinth/network.py:28
msgid "Generic"
msgstr "Általános"
-#: plinth/package.py:137
+#: plinth/package.py:122
msgid "Error during installation"
msgstr "Hiba lépett fel a telepítés során"
-#: plinth/package.py:159
+#: plinth/package.py:144
msgid "installing"
msgstr "telepítés"
-#: plinth/package.py:161
+#: plinth/package.py:146
msgid "downloading"
msgstr "letöltés"
-#: plinth/package.py:163
+#: plinth/package.py:148
msgid "media change"
msgstr "adathordozó csere"
-#: plinth/package.py:165
+#: plinth/package.py:150
#, python-brace-format
msgid "configuration file: {file}"
msgstr "konfigurációs fájl: {file}"
-#: plinth/templates/403.html:25
+#: plinth/templates/403.html:10
msgid "403 Forbidden"
msgstr "403 Tiltott"
-#: plinth/templates/403.html:29
+#: plinth/templates/403.html:14
#, python-format
msgid "You don't have permission to access %(request_path)s on this server."
msgstr "Ezen a kiszolgálón nincs hozzáférési jogod ehhez: %(request_path)s."
-#: plinth/templates/404.html:25
+#: plinth/templates/404.html:10
msgid "404"
msgstr "404"
-#: plinth/templates/404.html:28
+#: plinth/templates/404.html:13
#, python-format
msgid "Requested page %(request_path)s was not found."
msgstr "A kért %(request_path)s oldal nem található."
-#: plinth/templates/404.html:34
+#: plinth/templates/404.html:19
msgid ""
"If you believe this missing page should exist, please file a bug at the "
"FreedomBox Service (Plinth) project hibabejelentőjében."
-#: plinth/templates/500.html:25
+#: plinth/templates/500.html:10
msgid "500"
msgstr "500"
-#: plinth/templates/500.html:29
+#: plinth/templates/500.html:14
#, python-format
msgid ""
"This is an internal error and not something you caused or can fix. Please "
@@ -6984,115 +7097,119 @@ msgstr ""
"javítani. Továbbá mellékeld a bejelentésben az állapotnapló tartalmát."
-#: plinth/templates/app.html:47
+#: plinth/templates/app-header.html:22
+msgid "Installation"
+msgstr "Telepítés"
+
+#: plinth/templates/app.html:32
#, python-format
msgid "Service %(service_name)s is running."
msgstr "A szolgáltatás fut (%(service_name)s)."
-#: plinth/templates/app.html:52
+#: plinth/templates/app.html:37
#, python-format
msgid "Service %(service_name)s is not running."
msgstr "A szolgáltatás nem fut (%(service_name)s)."
-#: plinth/templates/base.html:50
+#: plinth/templates/base.html:35
#, python-format
msgid "Core functionality and web interface for %(box_name)s"
msgstr "Alapvető funkcionalitás és webes felület %(box_name)s eszközére"
-#: plinth/templates/base.html:96
+#: plinth/templates/base.html:81
msgid "Toggle navigation"
msgstr "Navigációs sor ki- vagy bekapcsolása"
-#: plinth/templates/base.html:120 plinth/templates/base.html:123
+#: plinth/templates/base.html:105 plinth/templates/base.html:108
msgid "Home"
msgstr "Kezdőlap"
-#: plinth/templates/base.html:128 plinth/templates/base.html:132
+#: plinth/templates/base.html:113 plinth/templates/base.html:117
msgid "Apps"
msgstr "Alkalmazások"
-#: plinth/templates/base.html:137 plinth/templates/base.html:141
+#: plinth/templates/base.html:122 plinth/templates/base.html:126
msgid "System"
msgstr "Rendszer"
-#: plinth/templates/base.html:173 plinth/templates/base.html:174
+#: plinth/templates/base.html:158 plinth/templates/base.html:159
msgid "Change password"
msgstr "Jelszómódosítás"
-#: plinth/templates/base.html:181 plinth/templates/base.html:182
+#: plinth/templates/base.html:166 plinth/templates/base.html:167
msgid "Restart"
msgstr "Újraindítás"
-#: plinth/templates/base.html:187 plinth/templates/base.html:188
+#: plinth/templates/base.html:172 plinth/templates/base.html:173
msgid "Shut down"
msgstr "Leállítás"
-#: plinth/templates/base.html:195 plinth/templates/base.html:196
-#: plinth/templates/base.html:220 plinth/templates/base.html:222
+#: plinth/templates/base.html:180 plinth/templates/base.html:181
+#: plinth/templates/base.html:205 plinth/templates/base.html:207
msgid "Log out"
msgstr "Kijelentkezés"
-#: plinth/templates/base.html:204 plinth/templates/base.html:207
+#: plinth/templates/base.html:189 plinth/templates/base.html:192
msgid "Select language"
msgstr "Válassz nyelvet"
-#: plinth/templates/base.html:212 plinth/templates/base.html:214
+#: plinth/templates/base.html:197 plinth/templates/base.html:199
msgid "Log in"
msgstr "Bejelentkezés"
-#: plinth/templates/clients.html:32
+#: plinth/templates/clients.html:17
msgid "Web"
msgstr "Webes"
-#: plinth/templates/clients.html:57
+#: plinth/templates/clients.html:42
msgid "Desktop"
msgstr "Asztali"
-#: plinth/templates/clients.html:68
+#: plinth/templates/clients.html:53
msgid "GNU/Linux"
msgstr "GNU/Linux"
-#: plinth/templates/clients.html:70
+#: plinth/templates/clients.html:55
msgid "Windows"
msgstr "Windows"
-#: plinth/templates/clients.html:72
+#: plinth/templates/clients.html:57
msgid "macOS"
msgstr "macOS"
-#: plinth/templates/clients.html:88
+#: plinth/templates/clients.html:73
msgid "Mobile"
msgstr "Mobil"
-#: plinth/templates/clients.html:99
+#: plinth/templates/clients.html:84
msgid "Play Store"
msgstr "Play Áruház"
-#: plinth/templates/clients.html:101
+#: plinth/templates/clients.html:86
msgid "F-Droid"
msgstr "F-Droid"
-#: plinth/templates/clients.html:103
+#: plinth/templates/clients.html:88
msgid "App Store"
msgstr "App Store"
-#: plinth/templates/clients.html:119
+#: plinth/templates/clients.html:104
msgid "Package"
msgstr "Csomag"
-#: plinth/templates/clients.html:126
+#: plinth/templates/clients.html:111
msgid "Debian:"
msgstr "Debian:"
-#: plinth/templates/clients.html:129
+#: plinth/templates/clients.html:114
msgid "Homebrew:"
msgstr "Homebrew:"
-#: plinth/templates/clients.html:132
+#: plinth/templates/clients.html:117
msgid "RPM:"
msgstr "RPM:"
-#: plinth/templates/first_setup.html:39
+#: plinth/templates/first_setup.html:24
#, python-format
msgid ""
"Please wait for %(box_name)s to finish installation. You can start using "
@@ -7101,11 +7218,7 @@ msgstr ""
"Várd meg, amíg a %(box_name)s végez a telepítéssel! Amint az befejeződött, a "
"%(box_name)s használatba vehető."
-#: plinth/templates/header.html:36
-msgid "Installation"
-msgstr "Telepítés"
-
-#: plinth/templates/index.html:37
+#: plinth/templates/index.html:22
#, python-format
msgid ""
"Enable some applications to add shortcuts to "
@@ -7114,11 +7227,11 @@ msgstr ""
"Engedélyezd néhány alkalmazásnak, hogy "
"hivatkozásokat adjanak ehhez az oldalhoz."
-#: plinth/templates/index.html:59
+#: plinth/templates/index.html:44
msgid "Configure »"
msgstr "Beállítás »"
-#: plinth/templates/index.html:115
+#: plinth/templates/index.html:100
#, python-format
msgid ""
"%(box_name)s, a Debian pure blend, is a 100%% free software self-hosting web "
@@ -7131,7 +7244,7 @@ msgstr ""
"üzemeltethessen. Online kommunikációs eszközöket nyújt, melyek tiszteletben "
"tartják a magánszférát és az adatok feletti tulajdonjogot."
-#: plinth/templates/index.html:124
+#: plinth/templates/index.html:109
#, python-format
msgid ""
"This portal is a part of the %(box_name)s web interface. %(box_name)s is "
@@ -7142,42 +7255,42 @@ msgstr ""
"Általános Nyilvános Licenc (3-as vagy újabb változat) alapján terjesztett "
"szabad szoftver."
-#: plinth/templates/index.html:144
+#: plinth/templates/index.html:129
msgid "Homepage"
msgstr "Honlap"
-#: plinth/templates/index.html:147
+#: plinth/templates/index.html:132
msgid "Source Code"
msgstr "Forráskód"
-#: plinth/templates/index.html:150
+#: plinth/templates/index.html:135
msgid "Donate"
msgstr "Adományozás"
-#: plinth/templates/index.html:154
+#: plinth/templates/index.html:139
msgid "FreedomBox Foundation"
msgstr "FreedomBox Alapítvány"
-#: plinth/templates/index.html:161
+#: plinth/templates/index.html:146
msgid "IRC Chatroom"
msgstr "IRC csevegőszoba"
-#: plinth/templates/index.html:166
+#: plinth/templates/index.html:151
msgid "Mailing list"
msgstr "Levelezőlista"
-#: plinth/templates/internal-zone.html:26
+#: plinth/templates/internal-zone.html:11
#, python-format
msgid "%(service_name)s is available only on internal networks."
msgstr ""
"%(service_name)s néven futó szolgáltatás csak belső hálózaton "
"elérhető."
-#: plinth/templates/internal-zone.html:32
+#: plinth/templates/internal-zone.html:17
msgid "Currently there are no network interfaces configured as internal."
msgstr "Jelenleg nincs belsőként konfigurált hálózati interfész."
-#: plinth/templates/internal-zone.html:34
+#: plinth/templates/internal-zone.html:19
#, python-format
msgid ""
"Currently the following network interfaces are configured as internal: "
@@ -7186,17 +7299,17 @@ msgstr ""
"Jelenleg a következő hálózati interfészek vannak belsőként konfigurálva: "
"%(interface_list)s"
-#: plinth/templates/notifications-dropdown.html:26
+#: plinth/templates/notifications-dropdown.html:11
#, fuzzy
#| msgid "No certificate"
msgid "Notifications"
msgstr "Nincs tanúsítvány"
-#: plinth/templates/port-forwarding-info.html:23
+#: plinth/templates/port-forwarding-info.html:8
msgid "Port Forwarding"
msgstr "Porttovábbítás"
-#: plinth/templates/port-forwarding-info.html:26
+#: plinth/templates/port-forwarding-info.html:11
#, python-format
msgid ""
"If your FreedomBox is behind a router, you will need to set up port "
@@ -7207,15 +7320,15 @@ msgstr ""
"kell állítanod a port továbbítást. A %(service_name)s szolgáltatáshoz a "
"következő portokat kellene továbbítani:"
-#: plinth/templates/setup.html:51
+#: plinth/templates/setup.html:36
msgid "Install this application?"
msgstr "Alkalmazás telepítése?"
-#: plinth/templates/setup.html:55
+#: plinth/templates/setup.html:40
msgid "This application needs an update. Update now?"
msgstr "Az alkalmazást frissíteni szükséges. Indulhat a frissítés most?"
-#: plinth/templates/setup.html:66
+#: plinth/templates/setup.html:51
msgid ""
"Another installation or upgrade is already running. Please wait for a few "
"moments before trying again."
@@ -7223,49 +7336,49 @@ msgstr ""
"Egy másik telepítés vagy frissítés már fut. Pár perc után érdemes újra "
"megpróbálni."
-#: plinth/templates/setup.html:73
+#: plinth/templates/setup.html:58
msgid "This application is currently not available in your distribution."
msgstr "Ez az alkalmazás jelenleg nem hozzáférhető ebben a disztribúcióban."
-#: plinth/templates/setup.html:87
+#: plinth/templates/setup.html:72
msgid "Install"
msgstr "Telepítés"
-#: plinth/templates/setup.html:98
+#: plinth/templates/setup.html:83
msgid "Performing pre-install operation"
msgstr "Telepítés előtti műveletek végrehajtása"
-#: plinth/templates/setup.html:102
+#: plinth/templates/setup.html:87
msgid "Performing post-install operation"
msgstr "Telepítés utáni műveletek végrehajtása"
-#: plinth/templates/setup.html:107
+#: plinth/templates/setup.html:92
#, python-format
msgid "Installing %(package_names)s: %(status)s"
msgstr "%(package_names)s telepítése: %(status)s"
-#: plinth/templates/setup.html:117
+#: plinth/templates/setup.html:102
#, python-format
msgid "%(percentage)s%% complete"
msgstr "befejezettségi szint: %(percentage)s%%"
-#: plinth/templates/toolbar.html:38
+#: plinth/templates/toolbar.html:23
msgid "Launch web client"
msgstr "Webes kliens indítása"
-#: plinth/templates/toolbar.html:47
+#: plinth/templates/toolbar.html:32
msgid "Client Apps"
msgstr "Kliens alkalmazások"
-#: plinth/views.py:179
+#: plinth/views.py:189
msgid "Application enabled"
msgstr "Alkalmazás engedélyezve"
-#: plinth/views.py:182
+#: plinth/views.py:192
msgid "Application disabled"
msgstr "Alkalmazás letiltva"
-#: plinth/web_framework.py:190
+#: plinth/web_framework.py:107
msgid "Gujarati"
msgstr "Gudzsaráti"
diff --git a/plinth/locale/id/LC_MESSAGES/django.po b/plinth/locale/id/LC_MESSAGES/django.po
index 6cc8594d5..d08a4c302 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: 2020-02-14 21:26+0200\n"
+"POT-Creation-Date: 2020-02-24 19:12-0500\n"
"PO-Revision-Date: 2018-11-02 00:44+0000\n"
"Last-Translator: ButterflyOfFire This means that devices on the Internet can reach you when you are " +"connected to the Internet. Every time you connect to the Internet with your " +"Internet Service Provider (ISP), you may get a different IP address, " +"especially after some offline time. Many ISPs offer this type of " +"connectivity. If you have a public IP address but are unsure if it changes " +"over time or not, it is safer to choose this option.
" +msgstr "" + #: plinth/modules/networks/forms.py:313 +#, python-brace-format +msgid "" +"I have a public IP address that does not change overtime (recommended)This means that devices on the Internet can reach you " +"when you are connected to the Internet. Every time you connect to the " +"Internet with your Internet Service Provider (ISP), you always get the same " +"IP address. This is the most trouble-free setup for many {box_name} services " +"but very few ISPs offer this. You may be able to get this service from your " +"ISP by making an additional payment.
" +msgstr "" + +#: plinth/modules/networks/forms.py:326 +#, python-brace-format +msgid "" +"I dont have a public IP addressThis means that " +"devices on the Internet can not reach you when you are connected to " +"the Internet. Every time you connect to the Internet with your Internet " +"Service Provider (ISP), you get an IP address that is only relevant for " +"local networks. Many ISPs offer this type of connectivity. This is the most " +"troublesome situation for hosting services at home. {box_name} provides many " +"workaround solutions but each solution has some limitations.
" +msgstr "" + +#: plinth/modules/networks/forms.py:351 #, fuzzy #| msgid "Current Network Configuration" msgid "Preferred router configuration" msgstr "Pengaturan Jaringan saat ini" -#: plinth/modules/networks/forms.py:318 +#: plinth/modules/networks/forms.py:356 #, python-brace-format msgid "" -"Use DMZ feature to forward all trafficMost routers " -"provide a configuration setting called DMZ. This will allow the router to " -"forward all incoming traffic from the internet to a single IP address such " -"as the {box_name}'s address. First remember to configure a static local IP " -"address for your {box_name} in your router's configuration.
" +"Use DMZ feature to forward all traffic (recommended)Most routers provide a configuration setting called DMZ. This will allow " +"the router to forward all incoming traffic from the Internet to a single IP " +"address such as the {box_name}'s IP address. First remember to configure a " +"static local IP address for your {box_name} in your router's configuration." +"p>" msgstr "" -#: plinth/modules/networks/forms.py:332 +#: plinth/modules/networks/forms.py:368 #, python-brace-format msgid "" -"Forward Specific Traffic as needed by each application
You may alternatively choose to forward only specific traffic to your " "{box_name}. This is ideal if you have other servers like {box_name} in your " "network or if your router does not support DMZ feature. All applications " @@ -3224,281 +3294,287 @@ msgid "" "to be forwarded for that application to work.
" msgstr "" -#: plinth/modules/networks/forms.py:349 +#: plinth/modules/networks/forms.py:382 msgid "" -"Router is currently unconfiguredChoose this if you " +"Router is currently unconfigured
Choose this if you " "have not configured or are unable to configure the router currently and wish " "to be reminded later. Some of the other configuration steps may fail.
" msgstr "" -#: plinth/modules/networks/networks.py:43 +#: plinth/modules/networks/networks.py:32 #, fuzzy msgid "Network Connections" msgstr "Network Connections" -#: plinth/modules/networks/networks.py:59 +#: plinth/modules/networks/networks.py:46 msgid "Cannot show connection: Connection not found." msgstr "" -#: plinth/modules/networks/networks.py:94 +#: plinth/modules/networks/networks.py:81 msgid "Connection Information" msgstr "" -#: plinth/modules/networks/networks.py:108 +#: plinth/modules/networks/networks.py:95 msgid "Cannot edit connection: Connection not found." msgstr "" -#: plinth/modules/networks/networks.py:114 +#: plinth/modules/networks/networks.py:101 msgid "This type of connection is not yet understood." msgstr "" -#: plinth/modules/networks/networks.py:136 -#: plinth/modules/networks/networks.py:220 -#: plinth/modules/networks/templates/connections_edit.html:35 +#: plinth/modules/networks/networks.py:123 +#: plinth/modules/networks/networks.py:207 +#: plinth/modules/networks/templates/connections_edit.html:20 msgid "Edit Connection" msgstr "Sunting Koneksi" -#: plinth/modules/networks/networks.py:232 +#: plinth/modules/networks/networks.py:219 #, python-brace-format msgid "Activated connection {name}." msgstr "" -#: plinth/modules/networks/networks.py:236 +#: plinth/modules/networks/networks.py:223 msgid "Failed to activate connection: Connection not found." msgstr "" -#: plinth/modules/networks/networks.py:242 +#: plinth/modules/networks/networks.py:229 #, python-brace-format msgid "Failed to activate connection {name}: No suitable device is available." msgstr "" -#: plinth/modules/networks/networks.py:255 +#: plinth/modules/networks/networks.py:242 #, python-brace-format msgid "Deactivated connection {name}." msgstr "" -#: plinth/modules/networks/networks.py:259 +#: plinth/modules/networks/networks.py:246 msgid "Failed to de-activate connection: Connection not found." msgstr "" -#: plinth/modules/networks/networks.py:269 -#: plinth/modules/networks/templates/connections_list.html:62 -#: plinth/modules/networks/templates/connections_list.html:64 +#: plinth/modules/networks/networks.py:256 +#: plinth/modules/networks/templates/connections_list.html:12 +#: plinth/modules/networks/templates/connections_list.html:14 msgid "Nearby Wi-Fi Networks" msgstr "Jaringan Wi-Fi terdekat" -#: plinth/modules/networks/networks.py:293 -#: plinth/modules/networks/templates/connections_list.html:67 -#: plinth/modules/networks/templates/connections_list.html:69 -#: plinth/modules/wireguard/templates/wireguard_add_server.html:34 +#: plinth/modules/networks/networks.py:280 +#: plinth/modules/networks/templates/connections_list.html:17 +#: plinth/modules/networks/templates/connections_list.html:19 +#: plinth/modules/wireguard/templates/wireguard_add_server.html:19 msgid "Add Connection" msgstr "Tambah Koneksi" -#: plinth/modules/networks/networks.py:311 +#: plinth/modules/networks/networks.py:298 msgid "Adding New Generic Connection" msgstr "" -#: plinth/modules/networks/networks.py:329 +#: plinth/modules/networks/networks.py:316 msgid "Adding New Ethernet Connection" msgstr "" -#: plinth/modules/networks/networks.py:347 +#: plinth/modules/networks/networks.py:334 msgid "Adding New PPPoE Connection" msgstr "" -#: plinth/modules/networks/networks.py:382 +#: plinth/modules/networks/networks.py:369 msgid "Adding New Wi-Fi Connection" msgstr "" -#: plinth/modules/networks/networks.py:397 +#: plinth/modules/networks/networks.py:384 #, python-brace-format msgid "Connection {name} deleted." msgstr "" -#: plinth/modules/networks/networks.py:401 -#: plinth/modules/networks/networks.py:411 +#: plinth/modules/networks/networks.py:388 +#: plinth/modules/networks/networks.py:398 msgid "Failed to delete connection: Connection not found." msgstr "" -#: plinth/modules/networks/networks.py:416 -#: plinth/modules/networks/templates/connections_delete.html:26 +#: plinth/modules/networks/networks.py:403 +#: plinth/modules/networks/templates/connections_delete.html:11 msgid "Delete Connection" msgstr "Hapus Koneksi" -#: plinth/modules/networks/networks.py:442 +#: plinth/modules/networks/networks.py:428 #, fuzzy #| msgid "System Configuration" msgid "Router configuration type saved." msgstr "Pengaturan Sistem" -#: plinth/modules/networks/templates/connection_show.html:43 +#: plinth/modules/networks/networks.py:474 +#, fuzzy +#| msgid "System Configuration" +msgid "Internet connection type saved." +msgstr "Pengaturan Sistem" + +#: plinth/modules/networks/templates/connection_show.html:28 msgid "Edit connection" msgstr "Sunting Koneksi" -#: plinth/modules/networks/templates/connection_show.html:43 -#: plinth/modules/wireguard/templates/wireguard_show_client.html:83 -#: plinth/modules/wireguard/templates/wireguard_show_server.html:84 -#: plinth/templates/base.html:167 plinth/templates/base.html:168 +#: plinth/modules/networks/templates/connection_show.html:28 +#: plinth/modules/wireguard/templates/wireguard_show_client.html:68 +#: plinth/modules/wireguard/templates/wireguard_show_server.html:69 +#: plinth/templates/base.html:152 plinth/templates/base.html:153 msgid "Edit" msgstr "Sunting" -#: plinth/modules/networks/templates/connection_show.html:50 -#: plinth/modules/networks/templates/connections_list.html:90 +#: plinth/modules/networks/templates/connection_show.html:35 +#: plinth/modules/networks/templates/connections_list.html:40 msgid "Deactivate" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:57 -#: plinth/modules/networks/templates/connections_list.html:98 +#: plinth/modules/networks/templates/connection_show.html:42 +#: plinth/modules/networks/templates/connections_list.html:48 msgid "Activate" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:63 +#: plinth/modules/networks/templates/connection_show.html:48 msgid "Delete connection" msgstr "Hapus koneksi" -#: plinth/modules/networks/templates/connection_show.html:66 -#: plinth/modules/networks/templates/connections_diagram.html:73 -#: plinth/modules/networks/templates/connections_diagram.html:76 -#: plinth/modules/networks/templates/connections_diagram.html:105 -#: plinth/modules/networks/templates/connections_diagram.html:127 +#: plinth/modules/networks/templates/connection_show.html:51 +#: plinth/modules/networks/templates/connections_diagram.html:58 +#: plinth/modules/networks/templates/connections_diagram.html:61 +#: plinth/modules/networks/templates/connections_diagram.html:90 +#: plinth/modules/networks/templates/connections_diagram.html:112 msgid "Connection" msgstr "Koneksi" -#: plinth/modules/networks/templates/connection_show.html:71 +#: plinth/modules/networks/templates/connection_show.html:56 msgid "Primary connection" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:73 -#: plinth/modules/networks/templates/connection_show.html:217 -#: plinth/modules/networks/templates/connection_show.html:256 +#: plinth/modules/networks/templates/connection_show.html:58 +#: plinth/modules/networks/templates/connection_show.html:202 +#: plinth/modules/networks/templates/connection_show.html:241 msgid "yes" msgstr "ya" -#: plinth/modules/networks/templates/connection_show.html:84 -#: plinth/modules/storage/templates/storage.html:40 +#: plinth/modules/networks/templates/connection_show.html:69 +#: plinth/modules/storage/templates/storage.html:25 msgid "Device" msgstr "Perangkat" -#: plinth/modules/networks/templates/connection_show.html:88 +#: plinth/modules/networks/templates/connection_show.html:73 msgid "State" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:93 +#: plinth/modules/networks/templates/connection_show.html:78 msgid "State reason" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:102 +#: plinth/modules/networks/templates/connection_show.html:87 #, fuzzy msgid "MAC address" msgstr "MAC address" -#: plinth/modules/networks/templates/connection_show.html:106 +#: plinth/modules/networks/templates/connection_show.html:91 #, fuzzy msgid "Interface" msgstr "Interface" -#: plinth/modules/networks/templates/connection_show.html:110 -#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:33 -#: plinth/modules/snapshot/templates/snapshot_manage.html:45 -#: plinth/modules/snapshot/templates/snapshot_rollback.html:41 +#: plinth/modules/networks/templates/connection_show.html:95 +#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:18 +#: plinth/modules/snapshot/templates/snapshot_manage.html:30 +#: plinth/modules/snapshot/templates/snapshot_rollback.html:26 msgid "Description" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:116 +#: plinth/modules/networks/templates/connection_show.html:101 msgid "Physical Link" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:121 +#: plinth/modules/networks/templates/connection_show.html:106 msgid "Link state" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:125 +#: plinth/modules/networks/templates/connection_show.html:110 msgid "cable is connected" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:128 +#: plinth/modules/networks/templates/connection_show.html:113 msgid "please check cable" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:133 -#: plinth/modules/networks/templates/connection_show.html:149 +#: plinth/modules/networks/templates/connection_show.html:118 +#: plinth/modules/networks/templates/connection_show.html:134 msgid "Speed" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:135 +#: plinth/modules/networks/templates/connection_show.html:120 #, python-format msgid "%(ethernet_speed)s Mbit/s" msgstr "%(ethernet_speed)s Mbit/s" -#: plinth/modules/networks/templates/connection_show.html:151 +#: plinth/modules/networks/templates/connection_show.html:136 #, python-format msgid "%(wireless_bitrate)s Mbit/s" msgstr "%(wireless_bitrate)s Mbit/s" -#: plinth/modules/networks/templates/connection_show.html:163 +#: plinth/modules/networks/templates/connection_show.html:148 msgid "Signal strength" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:181 +#: plinth/modules/networks/templates/connection_show.html:166 msgid "IPv4" msgstr "IPv4" -#: plinth/modules/networks/templates/connection_show.html:186 -#: plinth/modules/networks/templates/connection_show.html:227 -#: plinth/modules/shadowsocks/forms.py:64 +#: plinth/modules/networks/templates/connection_show.html:171 +#: plinth/modules/networks/templates/connection_show.html:212 +#: plinth/modules/shadowsocks/forms.py:49 msgid "Method" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:193 -#: plinth/modules/networks/templates/connection_show.html:234 +#: plinth/modules/networks/templates/connection_show.html:178 +#: plinth/modules/networks/templates/connection_show.html:219 msgid "IP address" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:209 -#: plinth/modules/networks/templates/connection_show.html:248 +#: plinth/modules/networks/templates/connection_show.html:194 +#: plinth/modules/networks/templates/connection_show.html:233 msgid "DNS server" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:216 -#: plinth/modules/networks/templates/connection_show.html:255 -#: plinth/modules/storage/forms.py:156 +#: plinth/modules/networks/templates/connection_show.html:201 +#: plinth/modules/networks/templates/connection_show.html:240 +#: plinth/modules/storage/forms.py:141 msgid "Default" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:222 +#: plinth/modules/networks/templates/connection_show.html:207 msgid "IPv6" msgstr "IPv6" -#: plinth/modules/networks/templates/connection_show.html:263 +#: plinth/modules/networks/templates/connection_show.html:248 msgid "This connection is not active." msgstr "" -#: plinth/modules/networks/templates/connection_show.html:266 -#: plinth/modules/security/__init__.py:38 plinth/modules/security/views.py:47 +#: plinth/modules/networks/templates/connection_show.html:251 +#: plinth/modules/security/__init__.py:45 msgid "Security" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:271 -#: plinth/modules/networks/templates/connection_show.html:291 -#: plinth/modules/networks/templates/connection_show.html:310 +#: plinth/modules/networks/templates/connection_show.html:256 +#: plinth/modules/networks/templates/connection_show.html:276 +#: plinth/modules/networks/templates/connection_show.html:295 msgid "Firewall zone" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:280 +#: plinth/modules/networks/templates/connection_show.html:265 msgid "" "This interface should be connected to a local network/machine. If you " "connect this interface to a public network, services meant to be available " "only internally will become available externally. This is a security risk." msgstr "" -#: plinth/modules/networks/templates/connection_show.html:300 +#: plinth/modules/networks/templates/connection_show.html:285 msgid "" "This interface should receive your Internet connection. If you connect it to " "a local network/machine, many services meant to available only internally " "will not be available." msgstr "" -#: plinth/modules/networks/templates/connection_show.html:319 +#: plinth/modules/networks/templates/connection_show.html:304 #, python-format msgid "" "This interface is not maintained by %(box_name)s. Its security status is " @@ -3507,114 +3583,139 @@ msgid "" "connection and re-configure it." msgstr "" -#: plinth/modules/networks/templates/connections_create.html:34 +#: plinth/modules/networks/templates/connections_create.html:19 msgid "Create Connection" msgstr "" -#: plinth/modules/networks/templates/connections_delete.html:29 +#: plinth/modules/networks/templates/connections_delete.html:14 #, python-format msgid "Delete connection %(name)s permanently?" msgstr "" -#: plinth/modules/networks/templates/connections_diagram.html:65 +#: plinth/modules/networks/templates/connections_diagram.html:50 msgid "Internet" msgstr "Internet" -#: plinth/modules/networks/templates/connections_diagram.html:70 -#: plinth/modules/networks/templates/connections_diagram.html:102 +#: plinth/modules/networks/templates/connections_diagram.html:55 +#: plinth/modules/networks/templates/connections_diagram.html:87 msgid "Spacing" msgstr "" -#: plinth/modules/networks/templates/connections_diagram.html:83 -#: plinth/modules/networks/templates/connections_diagram.html:113 -#: plinth/network.py:40 +#: plinth/modules/networks/templates/connections_diagram.html:68 +#: plinth/modules/networks/templates/connections_diagram.html:98 +#: plinth/network.py:25 msgid "Ethernet" msgstr "Ethernet" -#: plinth/modules/networks/templates/connections_diagram.html:86 -#: plinth/modules/networks/templates/connections_diagram.html:116 -#: plinth/network.py:41 +#: plinth/modules/networks/templates/connections_diagram.html:71 +#: plinth/modules/networks/templates/connections_diagram.html:101 +#: plinth/network.py:26 msgid "Wi-Fi" msgstr "Wi-Fi" -#: plinth/modules/networks/templates/connections_diagram.html:89 +#: plinth/modules/networks/templates/connections_diagram.html:74 #, python-format msgid "Show connection %(connection.name)s" msgstr "" -#: plinth/modules/networks/templates/connections_diagram.html:119 +#: plinth/modules/networks/templates/connections_diagram.html:104 #, python-format msgid "Show connection %(name)s" msgstr "" -#: plinth/modules/networks/templates/connections_diagram.html:131 +#: plinth/modules/networks/templates/connections_diagram.html:116 msgid "Computer" msgstr "" -#: plinth/modules/networks/templates/connections_list.html:58 +#: plinth/modules/networks/templates/connections_list.html:8 #, fuzzy #| msgid "Connection" msgid "Connections" msgstr "Koneksi" -#: plinth/modules/networks/templates/connections_list.html:79 +#: plinth/modules/networks/templates/connections_list.html:29 #, python-format msgid "Delete connection %(name)s" msgstr "" -#: plinth/modules/networks/templates/connections_list.html:104 +#: plinth/modules/networks/templates/connections_list.html:54 msgid "Active" msgstr "" -#: plinth/modules/networks/templates/connections_list.html:107 +#: plinth/modules/networks/templates/connections_list.html:57 msgid "Inactive" msgstr "" -#: plinth/modules/networks/templates/connections_list.html:124 -#, python-format -msgid "%(box_name)s Internet Connectivity" +#: plinth/modules/networks/templates/connections_type_select.html:19 +msgid "Create..." msgstr "" -#: plinth/modules/networks/templates/connections_list.html:129 -#, python-format +#: plinth/modules/networks/templates/internet_connectivity_content.html:10 +msgid "What Type Of Internet Connection Do You Have?" +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_content.html:16 msgid "" -"The following best describes how your %(box_name)s is connected in your " -"network. This information is used only to suggest necessary configuration " -"actions." +"Select an option that best describes the type of Internet connection. This " +"information is used only to guide you with further setup." msgstr "" -#: plinth/modules/networks/templates/connections_list.html:137 -#, python-format +#: plinth/modules/networks/templates/internet_connectivity_firstboot.html:18 +#: plinth/modules/networks/templates/router_configuration_firstboot.html:18 +msgid "Skip this step" +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_firstboot.html:19 +#: plinth/modules/networks/templates/router_configuration_firstboot.html:19 +msgid "Next" +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:9 +#, fuzzy +#| msgid "Connection Type" +msgid "Your Internet Connection Type" +msgstr "Tipe Koneksi" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:14 msgid "" -"Your %(box_name)s gets its internet from your Router via WiFi or Ethernet " -"cable. This is a typical home setup." +"The following best describes the type of Internet connection provided by " +"your ISP. This information is only used to suggest you necessary " +"configuration actions." msgstr "" -#: plinth/modules/networks/templates/connections_list.html:145 -#: plinth/modules/networks/templates/connections_list.html:147 +#: plinth/modules/networks/templates/internet_connectivity_main.html:23 +msgid "My ISP provides a public IP address that does not change over time." +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:27 +msgid "My ISP provides a public IP address that may change over time." +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:31 +msgid "My ISP does not provide a public IP address." +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:37 +#: plinth/modules/networks/templates/router_configuration_main.html:29 #, fuzzy #| msgid "Update URL" msgid "Update..." msgstr "Perbaharui URL" -#: plinth/modules/networks/templates/connections_type_select.html:34 -msgid "Create..." -msgstr "" - -#: plinth/modules/networks/templates/router_configuration_content.html:25 +#: plinth/modules/networks/templates/router_configuration_content.html:10 #, fuzzy, python-format #| msgid "%(box_name)s Setup" msgid "Setup %(box_name)s Behind a Router" msgstr "Pengaturan %(box_name)s" -#: plinth/modules/networks/templates/router_configuration_content.html:31 +#: plinth/modules/networks/templates/router_configuration_content.html:16 #, python-format msgid "" "Your %(box_name)s gets its internet connection from your router via Wi-Fi or " "Ethernet cable. This is a typical home setup." msgstr "" -#: plinth/modules/networks/templates/router_configuration_content.html:38 +#: plinth/modules/networks/templates/router_configuration_content.html:23 #, python-format msgid "" "With this setup, any device on the internet trying to reach your " @@ -3623,24 +3724,24 @@ msgid "" "the services." msgstr "" -#: plinth/modules/networks/templates/router_configuration_content.html:47 +#: plinth/modules/networks/templates/router_configuration_content.html:32 msgid "" "If you don't have control over your router, choose not to configure it. To " -"see options, to overcome this limitation, choose 'no public address' option " +"see options to overcome this limitation, choose 'no public address' option " "in Internet connection type selection." msgstr "" -#: plinth/modules/networks/templates/router_configuration_content.html:54 +#: plinth/modules/networks/templates/router_configuration_content.html:39 msgid "Choose How You Wish to Configure Your Router" msgstr "" -#: plinth/modules/networks/templates/router_configuration_content.html:57 +#: plinth/modules/networks/templates/router_configuration_content.html:42 msgid "" "You will need to login to your router's administration console provided by " "the router. This may look like one of the following:" msgstr "" -#: plinth/modules/networks/templates/router_configuration_content.html:69 +#: plinth/modules/networks/templates/router_configuration_content.html:54 msgid "" "The username and password is configured by you when you first setup the " "router. For many routers, this information is printed at the back of the " @@ -3650,26 +3751,27 @@ msgid "" "full instructions on how to perform this task." msgstr "" -#: plinth/modules/networks/templates/router_configuration_firstboot.html:33 -msgid "skip this step" +#: plinth/modules/networks/templates/router_configuration_main.html:9 +#, python-format +msgid "%(box_name)s Internet Connectivity" msgstr "" -#: plinth/modules/networks/templates/router_configuration_firstboot.html:35 -msgid "Next" +#: plinth/modules/networks/templates/router_configuration_main.html:15 +#, python-format +msgid "" +"The following best describes how your %(box_name)s is connected in your " +"network. This information is used only to suggest necessary configuration " +"actions." msgstr "" -#: plinth/modules/openvpn/__init__.py:39 plinth/modules/openvpn/manifest.py:33 -#, fuzzy -#| msgid "Open" -msgid "OpenVPN" -msgstr "Open" - -#: plinth/modules/openvpn/__init__.py:43 -#: plinth/modules/wireguard/__init__.py:40 -msgid "Virtual Private Network" +#: plinth/modules/networks/templates/router_configuration_main.html:23 +#, python-format +msgid "" +"Your %(box_name)s gets its Internet from your Router via Wi-Fi or Ethernet " +"cable. This is a typical home setup." msgstr "" -#: plinth/modules/openvpn/__init__.py:47 +#: plinth/modules/openvpn/__init__.py:26 #, python-brace-format msgid "" "Virtual Private Network (VPN) is a technique for securely connecting two " @@ -3680,21 +3782,32 @@ msgid "" "security and anonymity." msgstr "" -#: plinth/modules/openvpn/__init__.py:79 +#: plinth/modules/openvpn/__init__.py:49 plinth/modules/openvpn/manifest.py:18 +#, fuzzy +#| msgid "Open" +msgid "OpenVPN" +msgstr "Open" + +#: plinth/modules/openvpn/__init__.py:50 +#: plinth/modules/wireguard/__init__.py:53 +msgid "Virtual Private Network" +msgstr "" + +#: plinth/modules/openvpn/__init__.py:61 #, python-brace-format msgid "" "Download Profile" msgstr "" -#: plinth/modules/openvpn/forms.py:27 +#: plinth/modules/openvpn/forms.py:12 msgid "Enable OpenVPN server" msgstr "" -#: plinth/modules/openvpn/manifest.py:63 -msgid "TunnelBlick" +#: plinth/modules/openvpn/manifest.py:48 +msgid "Tunnelblick" msgstr "" -#: plinth/modules/openvpn/templates/openvpn.html:42 +#: plinth/modules/openvpn/templates/openvpn.html:27 #, python-format msgid "" "OpenVPN has not yet been setup. Performing a secure setup takes a very long " @@ -3702,15 +3815,15 @@ msgid "" "If the setup is interrupted, you may start it again." msgstr "" -#: plinth/modules/openvpn/templates/openvpn.html:55 +#: plinth/modules/openvpn/templates/openvpn.html:40 msgid "Start setup" msgstr "Jalankan pengaturan" -#: plinth/modules/openvpn/templates/openvpn.html:64 +#: plinth/modules/openvpn/templates/openvpn.html:49 msgid "OpenVPN setup is running" msgstr "" -#: plinth/modules/openvpn/templates/openvpn.html:68 +#: plinth/modules/openvpn/templates/openvpn.html:53 #, python-format msgid "" "To perform a secure setup, this process takes a very long time. Depending " @@ -3718,11 +3831,11 @@ msgid "" "interrupted, you may start it again." msgstr "" -#: plinth/modules/openvpn/templates/openvpn.html:87 +#: plinth/modules/openvpn/templates/openvpn.html:72 msgid "Profile" msgstr "Profil" -#: plinth/modules/openvpn/templates/openvpn.html:90 +#: plinth/modules/openvpn/templates/openvpn.html:75 #, python-format msgid "" "To connect to %(box_name)s's VPN, you need to download a profile and feed it " @@ -3731,34 +3844,24 @@ msgid "" "clients and instructions on how to configure them." msgstr "" -#: plinth/modules/openvpn/templates/openvpn.html:100 +#: plinth/modules/openvpn/templates/openvpn.html:85 #, python-format msgid "Profile is specific to each user of %(box_name)s. Keep it a secret." msgstr "" -#: plinth/modules/openvpn/templates/openvpn.html:111 +#: plinth/modules/openvpn/templates/openvpn.html:96 msgid "Download my profile" msgstr "Unduh profil saya" -#: plinth/modules/openvpn/views.py:133 +#: plinth/modules/openvpn/views.py:114 msgid "Setup completed." msgstr "Pengaturan selesai." -#: plinth/modules/openvpn/views.py:135 +#: plinth/modules/openvpn/views.py:116 msgid "Setup failed." msgstr "Pengaturan gagal." -#: plinth/modules/pagekite/__init__.py:39 -#, fuzzy -#| msgid "Pagekite" -msgid "PageKite" -msgstr "Pagekite" - -#: plinth/modules/pagekite/__init__.py:41 -msgid "Public Visibility" -msgstr "" - -#: plinth/modules/pagekite/__init__.py:45 +#: plinth/modules/pagekite/__init__.py:26 #, python-brace-format msgid "" "PageKite is a system for exposing {box_name} services when you don't have a " @@ -3767,33 +3870,33 @@ msgid "" "following situations:" msgstr "" -#: plinth/modules/pagekite/__init__.py:50 +#: plinth/modules/pagekite/__init__.py:31 #, python-brace-format msgid "{box_name} is behind a restricted firewall." msgstr "" -#: plinth/modules/pagekite/__init__.py:53 +#: plinth/modules/pagekite/__init__.py:34 #, python-brace-format msgid "{box_name} is connected to a (wireless) router which you don't control." msgstr "" -#: plinth/modules/pagekite/__init__.py:55 +#: plinth/modules/pagekite/__init__.py:36 msgid "" "Your ISP does not provide you an external IP address and instead provides " "Internet connection through NAT." msgstr "" -#: plinth/modules/pagekite/__init__.py:57 +#: plinth/modules/pagekite/__init__.py:38 msgid "" "Your ISP does not provide you a static IP address and your IP address " "changes every time you connect to Internet." msgstr "" -#: plinth/modules/pagekite/__init__.py:59 +#: plinth/modules/pagekite/__init__.py:40 msgid "Your ISP limits incoming connections." msgstr "" -#: plinth/modules/pagekite/__init__.py:61 +#: plinth/modules/pagekite/__init__.py:42 #, python-brace-format msgid "" "PageKite works around NAT, firewalls and IP address limitations by using a " @@ -3802,142 +3905,152 @@ msgid "" "the future it might be possible to use your buddy's {box_name} for this." msgstr "" -#: plinth/modules/pagekite/__init__.py:87 +#: plinth/modules/pagekite/__init__.py:62 +#, fuzzy +#| msgid "Pagekite" +msgid "PageKite" +msgstr "Pagekite" + +#: plinth/modules/pagekite/__init__.py:64 +msgid "Public Visibility" +msgstr "" + +#: plinth/modules/pagekite/__init__.py:74 #, fuzzy #| msgid "Pagekite" msgid "PageKite Domain" msgstr "Pagekite" -#: plinth/modules/pagekite/forms.py:66 +#: plinth/modules/pagekite/forms.py:51 msgid "Server domain" msgstr "" -#: plinth/modules/pagekite/forms.py:68 +#: plinth/modules/pagekite/forms.py:53 msgid "" "Select your pagekite server. Set \"pagekite.net\" to use the default " "pagekite.net server." msgstr "" -#: plinth/modules/pagekite/forms.py:71 plinth/modules/shadowsocks/forms.py:55 +#: plinth/modules/pagekite/forms.py:56 plinth/modules/shadowsocks/forms.py:40 msgid "Server port" msgstr "" -#: plinth/modules/pagekite/forms.py:72 +#: plinth/modules/pagekite/forms.py:57 msgid "Port of your pagekite server (default: 80)" msgstr "" -#: plinth/modules/pagekite/forms.py:74 +#: plinth/modules/pagekite/forms.py:59 msgid "Kite name" msgstr "nama Kite" -#: plinth/modules/pagekite/forms.py:75 +#: plinth/modules/pagekite/forms.py:60 msgid "Example: mybox.pagekite.me" msgstr "" -#: plinth/modules/pagekite/forms.py:77 +#: plinth/modules/pagekite/forms.py:62 msgid "Invalid kite name" msgstr "" -#: plinth/modules/pagekite/forms.py:81 +#: plinth/modules/pagekite/forms.py:66 msgid "Kite secret" msgstr "" -#: plinth/modules/pagekite/forms.py:82 +#: plinth/modules/pagekite/forms.py:67 msgid "" "A secret associated with the kite or the default secret for your account if " "no secret is set on the kite." msgstr "" -#: plinth/modules/pagekite/forms.py:98 +#: plinth/modules/pagekite/forms.py:83 msgid "Kite details set" msgstr "" -#: plinth/modules/pagekite/forms.py:105 +#: plinth/modules/pagekite/forms.py:90 msgid "Pagekite server set" msgstr "" -#: plinth/modules/pagekite/forms.py:129 +#: plinth/modules/pagekite/forms.py:114 msgid "PageKite enabled" msgstr "" -#: plinth/modules/pagekite/forms.py:132 +#: plinth/modules/pagekite/forms.py:117 msgid "PageKite disabled" msgstr "" -#: plinth/modules/pagekite/forms.py:148 +#: plinth/modules/pagekite/forms.py:133 msgid "protocol" msgstr "" -#: plinth/modules/pagekite/forms.py:151 +#: plinth/modules/pagekite/forms.py:136 msgid "external (frontend) port" msgstr "" -#: plinth/modules/pagekite/forms.py:154 +#: plinth/modules/pagekite/forms.py:139 msgid "internal (freedombox) port" msgstr "" -#: plinth/modules/pagekite/forms.py:155 +#: plinth/modules/pagekite/forms.py:140 msgid "Enable Subdomains" msgstr "" -#: plinth/modules/pagekite/forms.py:189 +#: plinth/modules/pagekite/forms.py:174 msgid "Deleted custom service" msgstr "" -#: plinth/modules/pagekite/forms.py:222 +#: plinth/modules/pagekite/forms.py:207 msgid "" "This service is available as a standard service. Please use the \"Standard " "Services\" page to enable it." msgstr "" -#: plinth/modules/pagekite/forms.py:231 +#: plinth/modules/pagekite/forms.py:216 msgid "Added custom service" msgstr "" -#: plinth/modules/pagekite/forms.py:234 +#: plinth/modules/pagekite/forms.py:219 msgid "This service already exists" msgstr "" -#: plinth/modules/pagekite/templates/pagekite_configure.html:47 +#: plinth/modules/pagekite/templates/pagekite_configure.html:32 msgid "Custom Services" msgstr "Kostumisasi Layanan" -#: plinth/modules/pagekite/templates/pagekite_configure.html:50 -#: plinth/modules/pagekite/templates/pagekite_configure.html:52 +#: plinth/modules/pagekite/templates/pagekite_configure.html:35 +#: plinth/modules/pagekite/templates/pagekite_configure.html:37 #, fuzzy #| msgid "Custom Services" msgid "Add Custom Service" msgstr "Kostumisasi Layanan" -#: plinth/modules/pagekite/templates/pagekite_configure.html:57 +#: plinth/modules/pagekite/templates/pagekite_configure.html:42 msgid "Existing custom services" msgstr "" -#: plinth/modules/pagekite/templates/pagekite_configure.html:71 +#: plinth/modules/pagekite/templates/pagekite_configure.html:56 #, python-format msgid "connected to %(backend_host)s:%(backend_port)s" msgstr "" -#: plinth/modules/pagekite/templates/pagekite_configure.html:83 +#: plinth/modules/pagekite/templates/pagekite_configure.html:68 msgid "Delete this service" msgstr "Hapus layanan ini" -#: plinth/modules/pagekite/templates/pagekite_custom_services.html:30 +#: plinth/modules/pagekite/templates/pagekite_custom_services.html:15 msgid "Add custom PageKite service" msgstr "" -#: plinth/modules/pagekite/templates/pagekite_custom_services.html:32 +#: plinth/modules/pagekite/templates/pagekite_custom_services.html:17 msgid "" "Warning:imaps://imap.gmail.com. "
@@ -4253,17 +4356,22 @@ msgid ""
"a>)."
msgstr ""
-#: plinth/modules/samba/__init__.py:46
-msgid "Samba"
+#: plinth/modules/roundcube/__init__.py:54
+#: plinth/modules/roundcube/manifest.py:9
+msgid "Roundcube"
msgstr ""
-#: plinth/modules/samba/__init__.py:53
+#: plinth/modules/roundcube/__init__.py:55
+msgid "Email Client"
+msgstr ""
+
+#: plinth/modules/samba/__init__.py:32
msgid ""
"Samba allows to share files and folders between FreedomBox and other "
"computers in your local network."
msgstr ""
-#: plinth/modules/samba/__init__.py:56
+#: plinth/modules/samba/__init__.py:35
#, python-brace-format
msgid ""
"After installation, you can choose which disks to use for sharing. Enabled "
@@ -4272,55 +4380,59 @@ msgid ""
"There are three types of shares you can choose from: "
msgstr ""
-#: plinth/modules/samba/__init__.py:61
+#: plinth/modules/samba/__init__.py:40
msgid "Open share - accessible to everyone in your local network."
msgstr ""
-#: plinth/modules/samba/__init__.py:62
+#: plinth/modules/samba/__init__.py:41
msgid ""
"Group share - accessible only to FreedomBox users who are in the freedombox-"
"share group."
msgstr ""
-#: plinth/modules/samba/__init__.py:64
+#: plinth/modules/samba/__init__.py:43
msgid ""
"Home share - every user in the freedombox-share group can have their own "
"private space."
msgstr ""
-#: plinth/modules/samba/__init__.py:68
+#: plinth/modules/samba/__init__.py:47
msgid "Access to the private shares"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:39
-#: plinth/modules/samba/templates/samba.html:50
+#: plinth/modules/samba/__init__.py:61
+msgid "Samba"
+msgstr ""
+
+#: plinth/modules/samba/templates/samba.html:24
+#: plinth/modules/samba/templates/samba.html:35
#, fuzzy
#| msgid "Shared"
msgid "Shares"
msgstr "Shared"
-#: plinth/modules/samba/templates/samba.html:41
+#: plinth/modules/samba/templates/samba.html:26
msgid ""
"Note: Only specially created directories will be shared on selected disks, "
"not the whole disk."
msgstr ""
-#: plinth/modules/samba/templates/samba.html:49
+#: plinth/modules/samba/templates/samba.html:34
#, fuzzy
#| msgid "Name"
msgid "Disk Name"
msgstr "Nama"
-#: plinth/modules/samba/templates/samba.html:51
-#: plinth/modules/storage/templates/storage.html:44
+#: plinth/modules/samba/templates/samba.html:36
+#: plinth/modules/storage/templates/storage.html:29
msgid "Used"
msgstr "Digunakan"
-#: plinth/modules/samba/templates/samba.html:72
+#: plinth/modules/samba/templates/samba.html:57
msgid "VFAT partitions are not supported"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:103
+#: plinth/modules/samba/templates/samba.html:88
#, python-format
msgid ""
"You can find additional information about disks on the users module page."
msgstr ""
-#: plinth/modules/samba/templates/samba.html:109
+#: plinth/modules/samba/templates/samba.html:94
msgid "Users who can currently access group and home shares"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:113
+#: plinth/modules/samba/templates/samba.html:98
msgid ""
"Users needing to re-enter their password on the password change page to "
"access group and home shares"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:118
+#: plinth/modules/samba/templates/samba.html:103
#, fuzzy
#| msgid "Available Domains"
msgid "Unavailable Shares"
msgstr "Domain yang Tersedia"
-#: plinth/modules/samba/templates/samba.html:120
+#: plinth/modules/samba/templates/samba.html:105
msgid ""
"Shares that are configured but the disk is not available. If the disk is "
"plugged back in, sharing will be automatically enabled."
msgstr ""
-#: plinth/modules/samba/templates/samba.html:128
+#: plinth/modules/samba/templates/samba.html:113
#, fuzzy
#| msgid "Shared"
msgid "Share name"
msgstr "Shared"
-#: plinth/modules/samba/templates/samba.html:129
+#: plinth/modules/samba/templates/samba.html:114
#, fuzzy
#| msgid "Actions"
msgid "Action"
msgstr "Aksi"
-#: plinth/modules/samba/views.py:61 plinth/modules/storage/forms.py:164
+#: plinth/modules/samba/views.py:43 plinth/modules/storage/forms.py:149
#, fuzzy
#| msgid "Add Service"
msgid "Open Share"
msgstr "Tambah Layanan"
-#: plinth/modules/samba/views.py:62 plinth/modules/storage/forms.py:162
+#: plinth/modules/samba/views.py:44 plinth/modules/storage/forms.py:147
#, fuzzy
#| msgid "Add Service"
msgid "Group Share"
msgstr "Tambah Layanan"
-#: plinth/modules/samba/views.py:63
+#: plinth/modules/samba/views.py:45
#, fuzzy
#| msgid "Add Service"
msgid "Home Share"
msgstr "Tambah Layanan"
-#: plinth/modules/samba/views.py:96
+#: plinth/modules/samba/views.py:78
#, fuzzy
#| msgid "{name} deleted."
msgid "Share enabled."
msgstr "{name} dihapus."
-#: plinth/modules/samba/views.py:101
+#: plinth/modules/samba/views.py:83
#, fuzzy, python-brace-format
#| msgid "Error installing application: {error}"
msgid "Error enabling share: {error_message}"
msgstr "Kesalahan pemasangan aplikasi: {error}"
-#: plinth/modules/samba/views.py:106
+#: plinth/modules/samba/views.py:88
#, fuzzy
#| msgid "Shared"
msgid "Share disabled."
msgstr "Shared"
-#: plinth/modules/samba/views.py:111
+#: plinth/modules/samba/views.py:93
#, fuzzy, python-brace-format
#| msgid "Error installing application: {error}"
msgid "Error disabling share: {error_message}"
msgstr "Kesalahan pemasangan aplikasi: {error}"
-#: plinth/modules/searx/__init__.py:41 plinth/modules/searx/manifest.py:24
-msgid "Searx"
-msgstr ""
-
-#: plinth/modules/searx/__init__.py:45
-#, fuzzy
-#| msgid "Web Server"
-msgid "Web Search"
-msgstr "Server Web"
-
-#: plinth/modules/searx/__init__.py:48
+#: plinth/modules/searx/__init__.py:25
msgid ""
"Searx is a privacy-respecting Internet metasearch engine. It aggregrates and "
"displays results from multiple search engines."
msgstr ""
-#: plinth/modules/searx/__init__.py:50
+#: plinth/modules/searx/__init__.py:27
msgid ""
"Searx can be used to avoid tracking and profiling by search engines. It "
"stores no cookies by default."
msgstr ""
-#: plinth/modules/searx/__init__.py:54
+#: plinth/modules/searx/__init__.py:31
msgid "Search the web"
msgstr ""
-#: plinth/modules/searx/forms.py:30
+#: plinth/modules/searx/__init__.py:47 plinth/modules/searx/manifest.py:9
+msgid "Searx"
+msgstr ""
+
+#: plinth/modules/searx/__init__.py:48
+#, fuzzy
+#| msgid "Web Server"
+msgid "Web Search"
+msgstr "Server Web"
+
+#: plinth/modules/searx/forms.py:15
#, fuzzy
#| msgid "Save Services"
msgid "Safe Search"
msgstr "Simpan Layanan"
-#: plinth/modules/searx/forms.py:31
+#: plinth/modules/searx/forms.py:16
msgid "Select the default family filter to apply to your search results."
msgstr ""
-#: plinth/modules/searx/forms.py:32
+#: plinth/modules/searx/forms.py:17
msgid "None"
msgstr ""
-#: plinth/modules/searx/forms.py:32
+#: plinth/modules/searx/forms.py:17
#, fuzzy
#| msgid "Mode"
msgid "Moderate"
msgstr "Mode"
-#: plinth/modules/searx/forms.py:32
+#: plinth/modules/searx/forms.py:17
msgid "Strict"
msgstr ""
-#: plinth/modules/searx/forms.py:35
+#: plinth/modules/searx/forms.py:20
msgid "Allow Public Access"
msgstr ""
-#: plinth/modules/searx/forms.py:36
+#: plinth/modules/searx/forms.py:21
msgid "Allow this application to be used by anyone who can reach it."
msgstr ""
-#: plinth/modules/searx/views.py:59 plinth/modules/searx/views.py:70
-#: plinth/modules/tor/views.py:149 plinth/modules/tor/views.py:176
+#: plinth/modules/searx/views.py:39 plinth/modules/searx/views.py:50
+#: plinth/modules/tor/views.py:130 plinth/modules/tor/views.py:157
msgid "Configuration updated."
msgstr ""
-#: plinth/modules/security/forms.py:28
+#: plinth/modules/security/forms.py:13
msgid "Restrict console logins (recommended)"
msgstr ""
-#: plinth/modules/security/forms.py:29
+#: plinth/modules/security/forms.py:14
msgid ""
"When this option is enabled, only users in the \"admin\" group will be able "
"to log in to console or via SSH. Console users may be able to access some "
"services without further authorization."
msgstr ""
-#: plinth/modules/security/forms.py:34
+#: plinth/modules/security/forms.py:19
msgid "Fail2Ban (recommended)"
msgstr ""
-#: plinth/modules/security/forms.py:35
+#: plinth/modules/security/forms.py:20
msgid ""
"When this option is enabled, Fail2Ban will limit brute force break-in "
"attempts to the SSH server and other enabled password protected internet-"
"services."
msgstr ""
-#: plinth/modules/security/templates/security.html:26
-#: plinth/modules/security/templates/security.html:28
+#: plinth/modules/security/templates/security.html:11
+#: plinth/modules/security/templates/security.html:13
msgid "Show security report"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:25
-#: plinth/modules/security/views.py:87
+#: plinth/modules/security/templates/security_report.html:10
+#: plinth/modules/security/views.py:71
msgid "Security Report"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:27
+#: plinth/modules/security/templates/security_report.html:12
#, python-format
msgid ""
"The installed version of FreedomBox has %(count)s reported security "
"vulnerabilities."
msgstr ""
-#: plinth/modules/security/templates/security_report.html:33
+#: plinth/modules/security/templates/security_report.html:18
msgid ""
"The following table lists the current reported number, and historical count, "
"of security vulnerabilities for each installed app."
msgstr ""
-#: plinth/modules/security/templates/security_report.html:39
+#: plinth/modules/security/templates/security_report.html:24
msgid ""
"For apps that provide services, the \"Sandboxed\" column shows whether "
"sandboxing features are in use. Sandboxing mitigates the impact of a "
"potentially compromised app to the rest of the system."
msgstr ""
-#: plinth/modules/security/templates/security_report.html:46
+#: plinth/modules/security/templates/security_report.html:31
msgid ""
"\"Sandbox Coverage\" is a score of how effectively the service is isolated "
"from the rest of the system. It is only displayed while the service is "
"running."
msgstr ""
-#: plinth/modules/security/templates/security_report.html:55
+#: plinth/modules/security/templates/security_report.html:40
#, fuzzy
#| msgid "Name"
msgid "App Name"
msgstr "Nama"
-#: plinth/modules/security/templates/security_report.html:56
+#: plinth/modules/security/templates/security_report.html:41
msgid "Current Vulnerabilities"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:57
+#: plinth/modules/security/templates/security_report.html:42
msgid "Past Vulnerabilities"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:58
+#: plinth/modules/security/templates/security_report.html:43
msgid "Sandboxed"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:59
+#: plinth/modules/security/templates/security_report.html:44
msgid "Sandbox Coverage"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:70
+#: plinth/modules/security/templates/security_report.html:55
msgid "N/A"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:72
+#: plinth/modules/security/templates/security_report.html:57
#, fuzzy
#| msgid "yes"
msgid "Yes"
msgstr "ya"
-#: plinth/modules/security/templates/security_report.html:74
+#: plinth/modules/security/templates/security_report.html:59
msgid "No"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:81
+#: plinth/modules/security/templates/security_report.html:66
msgid "Not running"
msgstr ""
-#: plinth/modules/security/views.py:69
+#: plinth/modules/security/views.py:53
#, python-brace-format
msgid "Error setting restricted access: {exception}"
msgstr ""
-#: plinth/modules/security/views.py:72
+#: plinth/modules/security/views.py:56
msgid "Updated security configuration"
msgstr ""
-#: plinth/modules/shaarli/__init__.py:34 plinth/modules/shaarli/manifest.py:23
-msgid "Shaarli"
-msgstr ""
-
-#: plinth/modules/shaarli/__init__.py:36
-msgid "Bookmarks"
-msgstr ""
-
-#: plinth/modules/shaarli/__init__.py:39
+#: plinth/modules/shaarli/__init__.py:20
msgid "Shaarli allows you to save and share bookmarks."
msgstr ""
-#: plinth/modules/shaarli/__init__.py:40
+#: plinth/modules/shaarli/__init__.py:21
msgid ""
"When enabled, Shaarli will be available from /shaarli path on the web server. Note that Shaarli "
@@ -4595,22 +4699,22 @@ msgid ""
"initial visit."
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:35
-msgid "Shadowsocks"
+#: plinth/modules/shaarli/__init__.py:39 plinth/modules/shaarli/manifest.py:8
+msgid "Shaarli"
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:39
-msgid "Socks5 Proxy"
+#: plinth/modules/shaarli/__init__.py:40
+msgid "Bookmarks"
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:46
+#: plinth/modules/shadowsocks/__init__.py:25
msgid ""
"Shadowsocks is a lightweight and secure SOCKS5 proxy, designed to protect "
"your Internet traffic. It can be used to bypass Internet filtering and "
"censorship."
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:50
+#: plinth/modules/shadowsocks/__init__.py:29
#, python-brace-format
msgid ""
"Your {box_name} can run a Shadowsocks client, that can connect to a "
@@ -4619,169 +4723,173 @@ msgid ""
"the Shadowsocks server."
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:55
+#: plinth/modules/shadowsocks/__init__.py:34
msgid ""
"To use Shadowsocks after setup, set the SOCKS5 proxy URL in your device, "
"browser or application to http://freedombox_address:1080/"
msgstr ""
-#: plinth/modules/shadowsocks/forms.py:28
-#: plinth/modules/shadowsocks/forms.py:29
+#: plinth/modules/shadowsocks/__init__.py:50
+msgid "Shadowsocks"
+msgstr ""
+
+#: plinth/modules/shadowsocks/__init__.py:52
+msgid "Socks5 Proxy"
+msgstr ""
+
+#: plinth/modules/shadowsocks/forms.py:13
+#: plinth/modules/shadowsocks/forms.py:14
msgid "Recommended"
msgstr ""
-#: plinth/modules/shadowsocks/forms.py:52
+#: plinth/modules/shadowsocks/forms.py:37
#, fuzzy
#| msgid "Service"
msgid "Server"
msgstr "Layanan"
-#: plinth/modules/shadowsocks/forms.py:53
+#: plinth/modules/shadowsocks/forms.py:38
msgid "Server hostname or IP address"
msgstr ""
-#: plinth/modules/shadowsocks/forms.py:57
+#: plinth/modules/shadowsocks/forms.py:42
msgid "Server port number"
msgstr ""
-#: plinth/modules/shadowsocks/forms.py:60
+#: plinth/modules/shadowsocks/forms.py:45
msgid "Password used to encrypt data. Must match server password."
msgstr ""
-#: plinth/modules/shadowsocks/forms.py:65
+#: plinth/modules/shadowsocks/forms.py:50
msgid "Encryption method. Must match setting on server."
msgstr ""
-#: plinth/modules/sharing/__init__.py:34
-#, fuzzy
-#| msgid "Shared"
-msgid "Sharing"
-msgstr "Shared"
-
-#: plinth/modules/sharing/__init__.py:38
+#: plinth/modules/sharing/__init__.py:21
#, python-brace-format
msgid ""
"Sharing allows you to share files and folders on your {box_name} over the "
"web with chosen groups of users."
msgstr ""
-#: plinth/modules/sharing/forms.py:33
+#: plinth/modules/sharing/__init__.py:38
+#, fuzzy
+#| msgid "Shared"
+msgid "Sharing"
+msgstr "Shared"
+
+#: plinth/modules/sharing/forms.py:18
msgid "Name of the share"
msgstr ""
-#: plinth/modules/sharing/forms.py:35
+#: plinth/modules/sharing/forms.py:20
msgid ""
"A lowercase alpha-numeric string that uniquely identifies a share. Example: "
"media."
msgstr ""
-#: plinth/modules/sharing/forms.py:39
+#: plinth/modules/sharing/forms.py:24
msgid "Path to share"
msgstr ""
-#: plinth/modules/sharing/forms.py:40
+#: plinth/modules/sharing/forms.py:25
msgid "Disk path to a folder on this server that you intend to share."
msgstr ""
-#: plinth/modules/sharing/forms.py:43
+#: plinth/modules/sharing/forms.py:28
#, fuzzy
#| msgid "Publish Key"
msgid "Public share"
msgstr "Publikasikan Kunci"
-#: plinth/modules/sharing/forms.py:44
+#: plinth/modules/sharing/forms.py:29
msgid "Make files in this folder available to anyone with the link."
msgstr ""
-#: plinth/modules/sharing/forms.py:48
+#: plinth/modules/sharing/forms.py:33
msgid "User groups that can read the files in the share"
msgstr ""
-#: plinth/modules/sharing/forms.py:50
+#: plinth/modules/sharing/forms.py:35
msgid ""
"Users of the selected user groups will be able to read the files in the "
"share."
msgstr ""
-#: plinth/modules/sharing/forms.py:67
+#: plinth/modules/sharing/forms.py:52
msgid "A share with this name already exists."
msgstr ""
-#: plinth/modules/sharing/forms.py:78
+#: plinth/modules/sharing/forms.py:63
msgid "Shares should be either public or shared with at least one group"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:39
-#: plinth/modules/sharing/templates/sharing.html:42
+#: plinth/modules/sharing/templates/sharing.html:24
+#: plinth/modules/sharing/templates/sharing.html:27
#, fuzzy
#| msgid "Add Service"
msgid "Add share"
msgstr "Tambah Layanan"
-#: plinth/modules/sharing/templates/sharing.html:47
+#: plinth/modules/sharing/templates/sharing.html:32
msgid "No shares currently configured."
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:53
+#: plinth/modules/sharing/templates/sharing.html:38
msgid "Disk Path"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:54
+#: plinth/modules/sharing/templates/sharing.html:39
#, fuzzy
#| msgid "Shared"
msgid "Shared Over"
msgstr "Shared"
-#: plinth/modules/sharing/templates/sharing.html:55
+#: plinth/modules/sharing/templates/sharing.html:40
msgid "With Groups"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:73
+#: plinth/modules/sharing/templates/sharing.html:58
msgid "public access"
msgstr ""
-#: plinth/modules/sharing/views.py:55
+#: plinth/modules/sharing/views.py:39
#, fuzzy
#| msgid "Shared"
msgid "Share added."
msgstr "Shared"
-#: plinth/modules/sharing/views.py:60
+#: plinth/modules/sharing/views.py:44
#, fuzzy
#| msgid "Add Service"
msgid "Add Share"
msgstr "Tambah Layanan"
-#: plinth/modules/sharing/views.py:75
+#: plinth/modules/sharing/views.py:59
#, fuzzy
#| msgid "Shared"
msgid "Share edited."
msgstr "Shared"
-#: plinth/modules/sharing/views.py:80
+#: plinth/modules/sharing/views.py:64
#, fuzzy
#| msgid "Shared"
msgid "Edit Share"
msgstr "Shared"
-#: plinth/modules/sharing/views.py:111
+#: plinth/modules/sharing/views.py:95
#, fuzzy
#| msgid "{name} deleted."
msgid "Share deleted."
msgstr "{name} dihapus."
-#: plinth/modules/snapshot/__init__.py:37
-msgid "Storage Snapshots"
-msgstr ""
-
-#: plinth/modules/snapshot/__init__.py:40
+#: plinth/modules/snapshot/__init__.py:23
msgid ""
"Snapshots allows creating and managing btrfs file system snapshots. These "
"can be used to roll back the system to a previously known good state in case "
"of unwanted changes to the system."
msgstr ""
-#: plinth/modules/snapshot/__init__.py:44
+#: plinth/modules/snapshot/__init__.py:27
#, no-python-format
msgid ""
"Snapshots are taken periodically (called timeline snapshots) and also before "
@@ -4789,210 +4897,210 @@ msgid ""
"cleaned up according to the settings below."
msgstr ""
-#: plinth/modules/snapshot/__init__.py:47
+#: plinth/modules/snapshot/__init__.py:30
msgid ""
"Snapshots currently work on btrfs file systems only and on the root "
"partition only. Snapshots are not a replacement for backups since they can only be stored on the same partition. "
msgstr ""
-#: plinth/modules/snapshot/forms.py:27
+#: plinth/modules/snapshot/__init__.py:52
+msgid "Storage Snapshots"
+msgstr ""
+
+#: plinth/modules/snapshot/forms.py:12
msgid "Free Disk Space to Maintain"
msgstr ""
-#: plinth/modules/snapshot/forms.py:28
+#: plinth/modules/snapshot/forms.py:13
msgid ""
"Maintain this percentage of free space on the disk. If free space falls "
"below this value, older snapshots are removed until this much free space is "
"regained. The default value is 30%."
msgstr ""
-#: plinth/modules/snapshot/forms.py:35
+#: plinth/modules/snapshot/forms.py:20
#, fuzzy
#| msgid "Delete %(name)s"
msgid "Timeline Snapshots"
msgstr "Hapus %(name)s"
-#: plinth/modules/snapshot/forms.py:36
+#: plinth/modules/snapshot/forms.py:21
msgid ""
"Enable or disable timeline snapshots (hourly, daily, monthly and yearly)."
msgstr ""
-#: plinth/modules/snapshot/forms.py:41
+#: plinth/modules/snapshot/forms.py:26
msgid "Software Installation Snapshots"
msgstr ""
-#: plinth/modules/snapshot/forms.py:42
+#: plinth/modules/snapshot/forms.py:27
msgid "Enable or disable snapshots before and after software installation"
msgstr ""
-#: plinth/modules/snapshot/forms.py:47
+#: plinth/modules/snapshot/forms.py:32
msgid "Hourly Snapshots Limit"
msgstr ""
-#: plinth/modules/snapshot/forms.py:48
+#: plinth/modules/snapshot/forms.py:33
msgid "Keep a maximum of this many hourly snapshots."
msgstr ""
-#: plinth/modules/snapshot/forms.py:51
+#: plinth/modules/snapshot/forms.py:36
#, fuzzy
#| msgid "Delete %(name)s"
msgid "Daily Snapshots Limit"
msgstr "Hapus %(name)s"
-#: plinth/modules/snapshot/forms.py:52
+#: plinth/modules/snapshot/forms.py:37
msgid "Keep a maximum of this many daily snapshots."
msgstr ""
-#: plinth/modules/snapshot/forms.py:55
+#: plinth/modules/snapshot/forms.py:40
#, fuzzy
#| msgid "Delete %(name)s"
msgid "Weekly Snapshots Limit"
msgstr "Hapus %(name)s"
-#: plinth/modules/snapshot/forms.py:56
+#: plinth/modules/snapshot/forms.py:41
msgid "Keep a maximum of this many weekly snapshots."
msgstr ""
-#: plinth/modules/snapshot/forms.py:59
+#: plinth/modules/snapshot/forms.py:44
msgid "Monthly Snapshots Limit"
msgstr ""
-#: plinth/modules/snapshot/forms.py:60
+#: plinth/modules/snapshot/forms.py:45
msgid "Keep a maximum of this many monthly snapshots."
msgstr ""
-#: plinth/modules/snapshot/forms.py:63
+#: plinth/modules/snapshot/forms.py:48
#, fuzzy
#| msgid "Delete %(name)s"
msgid "Yearly Snapshots Limit"
msgstr "Hapus %(name)s"
-#: plinth/modules/snapshot/forms.py:64
+#: plinth/modules/snapshot/forms.py:49
msgid ""
"Keep a maximum of this many yearly snapshots. The default value is 0 "
"(disabled)."
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:27
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:12
msgid "Delete the following snapshots permanently?"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:31
-#: plinth/modules/snapshot/templates/snapshot_manage.html:43
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:39
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:16
+#: plinth/modules/snapshot/templates/snapshot_manage.html:28
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:24
msgid "Number"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:32
-#: plinth/modules/snapshot/templates/snapshot_manage.html:44
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:40
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:17
+#: plinth/modules/snapshot/templates/snapshot_manage.html:29
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:25
msgid "Date"
msgstr "Tanggal"
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:52
-#: plinth/modules/snapshot/templates/snapshot_manage.html:37
-#: plinth/modules/snapshot/views.py:196
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:37
+#: plinth/modules/snapshot/templates/snapshot_manage.html:22
+#: plinth/modules/snapshot/views.py:175
#, fuzzy
#| msgid "Delete %(name)s"
msgid "Delete Snapshots"
msgstr "Hapus %(name)s"
-#: plinth/modules/snapshot/templates/snapshot_manage.html:33
+#: plinth/modules/snapshot/templates/snapshot_manage.html:18
msgid "Create Snapshot"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_manage.html:46
+#: plinth/modules/snapshot/templates/snapshot_manage.html:31
msgid "Rollback"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_manage.html:57
+#: plinth/modules/snapshot/templates/snapshot_manage.html:42
msgid "active"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_manage.html:66
+#: plinth/modules/snapshot/templates/snapshot_manage.html:51
#, python-format
msgid "Rollback to snapshot #%(number)s"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_not_supported.html:26
+#: plinth/modules/snapshot/templates/snapshot_not_supported.html:11
#, python-format
msgid ""
"Your have a filesystem of type %(fs_type)s. Snapshots are "
"currently only available on %(types_supported)s filesystems."
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:27
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:12
msgid "Roll back the system to this snapshot?"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:30
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:15
msgid ""
"A new snapshot with the current state of the file system will be "
"automatically created. You will be able to undo a rollback by reverting to "
"the newly created snapshot."
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:57
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:42
#, python-format
msgid "Rollback to Snapshot #%(number)s"
msgstr ""
-#: plinth/modules/snapshot/views.py:45
+#: plinth/modules/snapshot/views.py:30
#, fuzzy
#| msgid "Delete %(name)s"
msgid "Manage Snapshots"
msgstr "Hapus %(name)s"
-#: plinth/modules/snapshot/views.py:98
+#: plinth/modules/snapshot/views.py:79
msgid "Created snapshot."
msgstr ""
-#: plinth/modules/snapshot/views.py:156
+#: plinth/modules/snapshot/views.py:135
#, fuzzy
#| msgid "General Configuration"
msgid "Storage snapshots configuration updated"
msgstr "Konfigurasi Umum"
-#: plinth/modules/snapshot/views.py:160 plinth/modules/tor/views.py:79
+#: plinth/modules/snapshot/views.py:139 plinth/modules/tor/views.py:60
#, python-brace-format
msgid "Action error: {0} [{1}] [{2}]"
msgstr ""
-#: plinth/modules/snapshot/views.py:175
+#: plinth/modules/snapshot/views.py:154
#, fuzzy
#| msgid "Delete %(name)s"
msgid "Deleted all snapshots"
msgstr "Hapus %(name)s"
-#: plinth/modules/snapshot/views.py:179
+#: plinth/modules/snapshot/views.py:158
#, fuzzy
#| msgid "Delete %(name)s"
msgid "Deleted selected snapshots"
msgstr "Hapus %(name)s"
-#: plinth/modules/snapshot/views.py:184
+#: plinth/modules/snapshot/views.py:163
msgid "Snapshot is currently in use. Please try again later."
msgstr ""
-#: plinth/modules/snapshot/views.py:207
+#: plinth/modules/snapshot/views.py:186
#, python-brace-format
msgid "Rolled back to snapshot #{number}."
msgstr ""
-#: plinth/modules/snapshot/views.py:210
+#: plinth/modules/snapshot/views.py:189
msgid "The system must be restarted to complete the rollback."
msgstr ""
-#: plinth/modules/snapshot/views.py:222
+#: plinth/modules/snapshot/views.py:201
msgid "Rollback to Snapshot"
msgstr ""
-#: plinth/modules/ssh/__init__.py:43
-msgid "Secure Shell (SSH) Server"
-msgstr ""
-
-#: plinth/modules/ssh/__init__.py:46
+#: plinth/modules/ssh/__init__.py:29
msgid ""
"A Secure Shell server uses the secure shell protocol to accept connections "
"from remote computers. An authorized remote computer can perform "
@@ -5000,62 +5108,62 @@ msgid ""
"connections."
msgstr ""
-#: plinth/modules/ssh/forms.py:30
+#: plinth/modules/ssh/__init__.py:50
+msgid "Secure Shell (SSH) Server"
+msgstr ""
+
+#: plinth/modules/ssh/forms.py:15
#, fuzzy
#| msgid "Use HTTP basic authentication"
msgid "Disable password authentication"
msgstr "Gunakan autentikasi dasar HTTP"
-#: plinth/modules/ssh/forms.py:31
+#: plinth/modules/ssh/forms.py:16
msgid ""
"Improves security by preventing password guessing. Ensure that you have "
"setup SSH keys in your administrator user account before enabling this "
"option."
msgstr ""
-#: plinth/modules/ssh/templates/ssh.html:26
+#: plinth/modules/ssh/templates/ssh.html:11
#, fuzzy
#| msgid "SSH Fingerprint"
msgid "Server Fingerprints"
msgstr "Sidik Jari SSH"
-#: plinth/modules/ssh/templates/ssh.html:29
+#: plinth/modules/ssh/templates/ssh.html:14
msgid ""
"When connecting to the server, ensure that the fingerprint shown by the SSH "
"client matches one of these fingerprints."
msgstr ""
-#: plinth/modules/ssh/templates/ssh.html:38
+#: plinth/modules/ssh/templates/ssh.html:23
msgid "Algorithm"
msgstr ""
-#: plinth/modules/ssh/templates/ssh.html:39
+#: plinth/modules/ssh/templates/ssh.html:24
#, fuzzy
#| msgid "SSH Fingerprint"
msgid "Fingerprint"
msgstr "Sidik Jari SSH"
-#: plinth/modules/ssh/views.py:66
+#: plinth/modules/ssh/views.py:48
msgid "SSH authentication with password disabled."
msgstr ""
-#: plinth/modules/ssh/views.py:69
+#: plinth/modules/ssh/views.py:51
msgid "SSH authentication with password enabled."
msgstr ""
-#: plinth/modules/sso/__init__.py:30
+#: plinth/modules/sso/__init__.py:33
msgid "Single Sign On"
msgstr ""
-#: plinth/modules/sso/templates/login.html:35
+#: plinth/modules/sso/templates/login.html:20
msgid "Login"
msgstr ""
-#: plinth/modules/storage/__init__.py:39 plinth/modules/storage/__init__.py:331
-msgid "Storage"
-msgstr ""
-
-#: plinth/modules/storage/__init__.py:47
+#: plinth/modules/storage/__init__.py:30
#, python-brace-format
msgid ""
"This module allows you to manage storage media attached to your {box_name}. "
@@ -5063,154 +5171,158 @@ msgid ""
"media, expand the root partition etc."
msgstr ""
-#: plinth/modules/storage/__init__.py:224
+#: plinth/modules/storage/__init__.py:52 plinth/modules/storage/__init__.py:318
+msgid "Storage"
+msgstr ""
+
+#: plinth/modules/storage/__init__.py:211
#, fuzzy, python-brace-format
#| msgid "{disk_size} bytes"
msgid "{disk_size:.1f} bytes"
msgstr "{disk_size} bytes"
-#: plinth/modules/storage/__init__.py:228
+#: plinth/modules/storage/__init__.py:215
#, fuzzy, python-brace-format
#| msgid "{disk_size} KiB"
msgid "{disk_size:.1f} KiB"
msgstr "{disk_size} KiB"
-#: plinth/modules/storage/__init__.py:232
+#: plinth/modules/storage/__init__.py:219
#, fuzzy, python-brace-format
#| msgid "{disk_size} MiB"
msgid "{disk_size:.1f} MiB"
msgstr "{disk_size} MiB"
-#: plinth/modules/storage/__init__.py:236
+#: plinth/modules/storage/__init__.py:223
#, fuzzy, python-brace-format
#| msgid "{disk_size} GiB"
msgid "{disk_size:.1f} GiB"
msgstr "{disk_size} GiB"
-#: plinth/modules/storage/__init__.py:239
+#: plinth/modules/storage/__init__.py:226
#, fuzzy, python-brace-format
#| msgid "{disk_size} TiB"
msgid "{disk_size:.1f} TiB"
msgstr "{disk_size} TiB"
-#: plinth/modules/storage/__init__.py:246
+#: plinth/modules/storage/__init__.py:233
msgid "The operation failed."
msgstr ""
-#: plinth/modules/storage/__init__.py:248
+#: plinth/modules/storage/__init__.py:235
msgid "The operation was cancelled."
msgstr ""
-#: plinth/modules/storage/__init__.py:250
+#: plinth/modules/storage/__init__.py:237
msgid "The device is already unmounting."
msgstr ""
-#: plinth/modules/storage/__init__.py:252
+#: plinth/modules/storage/__init__.py:239
msgid "The operation is not supported due to missing driver/tool support."
msgstr ""
-#: plinth/modules/storage/__init__.py:255
+#: plinth/modules/storage/__init__.py:242
msgid "The operation timed out."
msgstr ""
-#: plinth/modules/storage/__init__.py:257
+#: plinth/modules/storage/__init__.py:244
msgid "The operation would wake up a disk that is in a deep-sleep state."
msgstr ""
-#: plinth/modules/storage/__init__.py:260
+#: plinth/modules/storage/__init__.py:247
msgid "Attempting to unmount a device that is busy."
msgstr ""
-#: plinth/modules/storage/__init__.py:262
+#: plinth/modules/storage/__init__.py:249
msgid "The operation has already been cancelled."
msgstr ""
-#: plinth/modules/storage/__init__.py:268
+#: plinth/modules/storage/__init__.py:255
msgid "Not authorized to perform the requested operation."
msgstr ""
-#: plinth/modules/storage/__init__.py:270
+#: plinth/modules/storage/__init__.py:257
msgid "The device is already mounted."
msgstr ""
-#: plinth/modules/storage/__init__.py:272
+#: plinth/modules/storage/__init__.py:259
msgid "The device is not mounted."
msgstr ""
-#: plinth/modules/storage/__init__.py:275
+#: plinth/modules/storage/__init__.py:262
msgid "Not permitted to use the requested option."
msgstr ""
-#: plinth/modules/storage/__init__.py:278
+#: plinth/modules/storage/__init__.py:265
msgid "The device is mounted by another user."
msgstr ""
-#: plinth/modules/storage/__init__.py:326
+#: plinth/modules/storage/__init__.py:313
#, no-python-format, python-brace-format
msgid "Low space on system partition: {percent_used}% used, {free_space} free."
msgstr ""
-#: plinth/modules/storage/__init__.py:328
+#: plinth/modules/storage/__init__.py:315
msgid "Low disk space"
msgstr ""
-#: plinth/modules/storage/forms.py:79
+#: plinth/modules/storage/forms.py:64
#, fuzzy
#| msgid "Actions"
msgid "Invalid directory name."
msgstr "Aksi"
-#: plinth/modules/storage/forms.py:97
+#: plinth/modules/storage/forms.py:82
msgid "Directory does not exist."
msgstr ""
-#: plinth/modules/storage/forms.py:99
+#: plinth/modules/storage/forms.py:84
msgid "Path is not a directory."
msgstr ""
-#: plinth/modules/storage/forms.py:102
+#: plinth/modules/storage/forms.py:87
msgid "Directory is not readable by the user."
msgstr ""
-#: plinth/modules/storage/forms.py:105
+#: plinth/modules/storage/forms.py:90
msgid "Directory is not writable by the user."
msgstr ""
-#: plinth/modules/storage/forms.py:110
+#: plinth/modules/storage/forms.py:95
msgid "Directory"
msgstr ""
-#: plinth/modules/storage/forms.py:113
+#: plinth/modules/storage/forms.py:98
msgid "Subdirectory (optional)"
msgstr ""
-#: plinth/modules/storage/forms.py:160
+#: plinth/modules/storage/forms.py:145
#, fuzzy
#| msgid "Shared"
msgid "Share"
msgstr "Shared"
-#: plinth/modules/storage/forms.py:168
+#: plinth/modules/storage/forms.py:153
msgid "Other directory (specify below)"
msgstr ""
-#: plinth/modules/storage/templates/storage.html:35
+#: plinth/modules/storage/templates/storage.html:20
msgid "The following storage devices are in use:"
msgstr ""
-#: plinth/modules/storage/templates/storage.html:41
+#: plinth/modules/storage/templates/storage.html:26
msgid "Label"
msgstr ""
-#: plinth/modules/storage/templates/storage.html:42
+#: plinth/modules/storage/templates/storage.html:27
msgid "Mount Point"
msgstr "Mount Point"
-#: plinth/modules/storage/templates/storage.html:90
+#: plinth/modules/storage/templates/storage.html:75
msgid "Partition Expansion"
msgstr ""
-#: plinth/modules/storage/templates/storage.html:92
+#: plinth/modules/storage/templates/storage.html:77
#, python-format
msgid ""
"There is %(expandable_root_size)s of unallocated space available after your "
@@ -5218,13 +5330,13 @@ msgid ""
"will provide you additional free space to store your files."
msgstr ""
-#: plinth/modules/storage/templates/storage.html:102
-#: plinth/modules/storage/templates/storage_expand.html:39
-#: plinth/modules/storage/views.py:76
+#: plinth/modules/storage/templates/storage.html:87
+#: plinth/modules/storage/templates/storage_expand.html:24
+#: plinth/modules/storage/views.py:58
msgid "Expand Root Partition"
msgstr ""
-#: plinth/modules/storage/templates/storage_expand.html:29
+#: plinth/modules/storage/templates/storage_expand.html:14
#, python-format
msgid ""
"Please backup your data before proceeding. After this operation, "
@@ -5232,39 +5344,30 @@ msgid ""
"root partition."
msgstr ""
-#: plinth/modules/storage/views.py:88
+#: plinth/modules/storage/views.py:70
#, python-brace-format
msgid "Error expanding partition: {exception}"
msgstr ""
-#: plinth/modules/storage/views.py:91
+#: plinth/modules/storage/views.py:73
msgid "Partition expanded successfully."
msgstr ""
-#: plinth/modules/storage/views.py:109
+#: plinth/modules/storage/views.py:91
#, python-brace-format
msgid "{drive_vendor} {drive_model} can be safely unplugged."
msgstr ""
-#: plinth/modules/storage/views.py:113
+#: plinth/modules/storage/views.py:95
msgid "Device can be safely unplugged."
msgstr ""
-#: plinth/modules/storage/views.py:123
+#: plinth/modules/storage/views.py:105
#, python-brace-format
msgid "Error ejecting device: {error_message}"
msgstr ""
-#: plinth/modules/syncthing/__init__.py:40
-#: plinth/modules/syncthing/manifest.py:28
-msgid "Syncthing"
-msgstr ""
-
-#: plinth/modules/syncthing/__init__.py:44
-msgid "File Synchronization"
-msgstr ""
-
-#: plinth/modules/syncthing/__init__.py:47
+#: plinth/modules/syncthing/__init__.py:26
msgid ""
"Syncthing is an application to synchronize files across multiple devices, e."
"g. your desktop computer and mobile phone. Creation, modification, or "
@@ -5272,7 +5375,7 @@ msgid ""
"other devices that also run Syncthing."
msgstr ""
-#: plinth/modules/syncthing/__init__.py:52
+#: plinth/modules/syncthing/__init__.py:31
#, python-brace-format
msgid ""
"Running Syncthing on {box_name} provides an extra synchronization point for "
@@ -5283,19 +5386,20 @@ msgid ""
"{box_name} is only available for users belonging to the \"admin\" group."
msgstr ""
-#: plinth/modules/syncthing/__init__.py:63
+#: plinth/modules/syncthing/__init__.py:40
msgid "Administer Syncthing application"
msgstr ""
-#: plinth/modules/tahoe/__init__.py:43
-msgid "Tahoe-LAFS"
+#: plinth/modules/syncthing/__init__.py:54
+#: plinth/modules/syncthing/manifest.py:13
+msgid "Syncthing"
msgstr ""
-#: plinth/modules/tahoe/__init__.py:47
-msgid "Distributed File Storage"
+#: plinth/modules/syncthing/__init__.py:55
+msgid "File Synchronization"
msgstr ""
-#: plinth/modules/tahoe/__init__.py:134
+#: plinth/modules/tahoe/__init__.py:30
msgid ""
"Tahoe-LAFS is a decentralized secure file storage system. It uses provider "
"independent security to store files over a distributed network of storage "
@@ -5303,7 +5407,7 @@ msgid ""
"remaining nodes."
msgstr ""
-#: plinth/modules/tahoe/__init__.py:139
+#: plinth/modules/tahoe/__init__.py:35
#, python-brace-format
msgid ""
"This {box_name} hosts a storage node and an introducer by default. "
@@ -5311,7 +5415,15 @@ msgid ""
"other storage nodes."
msgstr ""
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:33
+#: plinth/modules/tahoe/__init__.py:66
+msgid "Tahoe-LAFS"
+msgstr ""
+
+#: plinth/modules/tahoe/__init__.py:68
+msgid "Distributed File Storage"
+msgstr ""
+
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:17
#, python-format
msgid ""
"The Tahoe-LAFS server domain is set to %(domain_name)s. Changing the "
@@ -5320,41 +5432,37 @@ msgid ""
"%(domain_name)s:5678\">https://%(domain_name)s:5678."
msgstr ""
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:55
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:39
msgid "Local introducer"
msgstr ""
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:43
#: plinth/modules/tahoe/templates/tahoe-post-setup.html:59
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:75
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:92
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:76
#, fuzzy
#| msgid "Name"
msgid "Pet Name"
msgstr "Nama"
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:72
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:56
msgid "Add new introducer"
msgstr ""
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:83
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:67
#, fuzzy
#| msgid "Address"
msgid "Add"
msgstr "Address"
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:88
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:72
msgid "Connected introducers"
msgstr ""
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:105
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:89
msgid "Remove"
msgstr ""
-#: plinth/modules/tor/__init__.py:47
-msgid "Tor"
-msgstr ""
-
-#: plinth/modules/tor/__init__.py:52
+#: plinth/modules/tor/__init__.py:33
msgid ""
"Tor is an anonymous communication system. You can learn more about it from "
"the Tor Project website. For "
@@ -5363,76 +5471,80 @@ msgid ""
"\">Tor Browser."
msgstr ""
-#: plinth/modules/tor/__init__.py:83
+#: plinth/modules/tor/__init__.py:55
+msgid "Tor"
+msgstr ""
+
+#: plinth/modules/tor/__init__.py:66
msgid "Tor Onion Service"
msgstr ""
-#: plinth/modules/tor/__init__.py:87
+#: plinth/modules/tor/__init__.py:70
msgid "Tor Socks Proxy"
msgstr ""
-#: plinth/modules/tor/__init__.py:91
+#: plinth/modules/tor/__init__.py:74
msgid "Tor Bridge Relay"
msgstr ""
-#: plinth/modules/tor/__init__.py:112
+#: plinth/modules/tor/__init__.py:95
msgid "Tor relay port available"
msgstr ""
-#: plinth/modules/tor/__init__.py:122
+#: plinth/modules/tor/__init__.py:105
msgid "Obfs3 transport registered"
msgstr ""
-#: plinth/modules/tor/__init__.py:132
+#: plinth/modules/tor/__init__.py:115
msgid "Obfs4 transport registered"
msgstr ""
-#: plinth/modules/tor/__init__.py:225
+#: plinth/modules/tor/__init__.py:208
#, python-brace-format
msgid "Access URL {url} on tcp{kind} via Tor"
msgstr ""
-#: plinth/modules/tor/__init__.py:236
+#: plinth/modules/tor/__init__.py:219
#, python-brace-format
msgid "Confirm Tor usage at {url} on tcp{kind}"
msgstr ""
-#: plinth/modules/tor/forms.py:46
+#: plinth/modules/tor/forms.py:31
msgid ""
"Enter a valid bridge with this format: [transport] IP:ORPort [fingerprint]"
msgstr ""
-#: plinth/modules/tor/forms.py:88
+#: plinth/modules/tor/forms.py:73
msgid "Enable Tor"
msgstr "Aktifkan Tor"
-#: plinth/modules/tor/forms.py:90
+#: plinth/modules/tor/forms.py:75
msgid "Use upstream bridges to connect to Tor network"
msgstr ""
-#: plinth/modules/tor/forms.py:92
+#: plinth/modules/tor/forms.py:77
msgid ""
"When enabled, the bridges configured below will be used to connect to the "
"Tor network. Use this option if your Internet Service Provider (ISP) blocks "
"or censors connections to the Tor Network. This will disable relay modes."
msgstr ""
-#: plinth/modules/tor/forms.py:97
+#: plinth/modules/tor/forms.py:82
msgid "Upstream bridges"
msgstr ""
-#: plinth/modules/tor/forms.py:99
+#: plinth/modules/tor/forms.py:84
msgid ""
"You can get some bridges from https://bridges.torproject.org/ and copy/paste the bridge information "
"here. Currently supported transports are none, obfs3, obfs4 and scamblesuit."
msgstr ""
-#: plinth/modules/tor/forms.py:105
+#: plinth/modules/tor/forms.py:90
msgid "Enable Tor relay"
msgstr "Aktifkan Tor relay"
-#: plinth/modules/tor/forms.py:106
+#: plinth/modules/tor/forms.py:91
#, python-brace-format
msgid ""
"When enabled, your {box_name} will run a Tor relay and donate bandwidth to "
@@ -5440,24 +5552,24 @@ msgid ""
"download bandwidth."
msgstr ""
-#: plinth/modules/tor/forms.py:111
+#: plinth/modules/tor/forms.py:96
msgid "Enable Tor bridge relay"
msgstr ""
-#: plinth/modules/tor/forms.py:113
+#: plinth/modules/tor/forms.py:98
msgid ""
"When enabled, relay information is published in the Tor bridge database "
"instead of public Tor relay database making it harder to censor this node. "
"This helps others circumvent censorship."
msgstr ""
-#: plinth/modules/tor/forms.py:118
+#: plinth/modules/tor/forms.py:103
#, fuzzy
#| msgid "Enable Tor relay"
msgid "Enable Tor Hidden Service"
msgstr "Aktifkan Tor relay"
-#: plinth/modules/tor/forms.py:120
+#: plinth/modules/tor/forms.py:105
#, python-brace-format
msgid ""
"A hidden service will allow {box_name} to provide selected services (such as "
@@ -5465,221 +5577,217 @@ msgid ""
"anonymity yet."
msgstr ""
-#: plinth/modules/tor/forms.py:125
+#: plinth/modules/tor/forms.py:110
msgid "Download software packages over Tor"
msgstr ""
-#: plinth/modules/tor/forms.py:126
+#: plinth/modules/tor/forms.py:111
msgid ""
"When enabled, software will be downloaded over the Tor network for "
"installations and upgrades. This adds a degree of privacy and security "
"during software downloads."
msgstr ""
-#: plinth/modules/tor/forms.py:141
+#: plinth/modules/tor/forms.py:126
msgid "Specify at least one upstream bridge to use upstream bridges."
msgstr ""
-#: plinth/modules/tor/manifest.py:29
+#: plinth/modules/tor/manifest.py:14
msgid "Tor Browser"
msgstr ""
-#: plinth/modules/tor/manifest.py:45
+#: plinth/modules/tor/manifest.py:30
msgid "Orbot: Proxy with Tor"
msgstr ""
-#: plinth/modules/tor/templates/tor.html:41
+#: plinth/modules/tor/templates/tor.html:26
msgid "Tor configuration is being updated"
msgstr ""
-#: plinth/modules/tor/templates/tor.html:50
+#: plinth/modules/tor/templates/tor.html:35
#, fuzzy
#| msgid "Service"
msgid "Onion Service"
msgstr "Layanan"
-#: plinth/modules/tor/templates/tor.html:52
+#: plinth/modules/tor/templates/tor.html:37
#, fuzzy
msgid "Ports"
msgstr "Ports"
-#: plinth/modules/tor/templates/tor.html:82
+#: plinth/modules/tor/templates/tor.html:67
#, fuzzy
msgid "Relay"
msgstr "Relay"
-#: plinth/modules/tor/templates/tor.html:84
+#: plinth/modules/tor/templates/tor.html:69
#, python-format
msgid ""
"If your %(box_name)s is behind a router or firewall, you should make sure "
"the following ports are open, and port-forwarded, if necessary:"
msgstr ""
-#: plinth/modules/tor/templates/tor.html:112
+#: plinth/modules/tor/templates/tor.html:97
msgid "SOCKS"
msgstr "SOCKS"
-#: plinth/modules/tor/templates/tor.html:115
+#: plinth/modules/tor/templates/tor.html:100
#, python-format
msgid "A Tor SOCKS port is available on your %(box_name)s on TCP port 9050."
msgstr ""
-#: plinth/modules/transmission/__init__.py:41
-#: plinth/modules/transmission/manifest.py:24
-msgid "Transmission"
-msgstr ""
-
-#: plinth/modules/transmission/__init__.py:48
+#: plinth/modules/transmission/__init__.py:27
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/ttrss/__init__.py:43 plinth/modules/ttrss/manifest.py:34
-msgid "Tiny Tiny RSS"
+#: plinth/modules/transmission/__init__.py:48
+#: plinth/modules/transmission/manifest.py:9
+msgid "Transmission"
msgstr ""
-#: plinth/modules/ttrss/__init__.py:47
-msgid "News Feed Reader"
-msgstr ""
-
-#: plinth/modules/ttrss/__init__.py:50
+#: plinth/modules/ttrss/__init__.py:29
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:54
+#: plinth/modules/ttrss/__init__.py:33
#, python-brace-format
msgid ""
"When enabled, Tiny Tiny RSS can be accessed by any user with a {box_name} login."
msgstr ""
-#: plinth/modules/ttrss/__init__.py:58
+#: plinth/modules/ttrss/__init__.py:37
msgid ""
"When using a mobile or desktop application for Tiny Tiny RSS, use the URL /tt-rss-app for "
"connecting."
msgstr ""
-#: plinth/modules/ttrss/__init__.py:65
+#: plinth/modules/ttrss/__init__.py:42
msgid "Read and subscribe to news feeds"
msgstr ""
-#: plinth/modules/ttrss/manifest.py:25
+#: plinth/modules/ttrss/__init__.py:56 plinth/modules/ttrss/manifest.py:19
+msgid "Tiny Tiny RSS"
+msgstr ""
+
+#: plinth/modules/ttrss/__init__.py:57
+msgid "News Feed Reader"
+msgstr ""
+
+#: plinth/modules/ttrss/manifest.py:10
msgid "Tiny Tiny RSS (Fork)"
msgstr ""
-#: plinth/modules/upgrades/__init__.py:37 plinth/templates/setup.html:89
-msgid "Update"
-msgstr ""
-
-#: plinth/modules/upgrades/__init__.py:40
+#: plinth/modules/upgrades/__init__.py:23
msgid "Check for and apply the latest software and security updates."
msgstr ""
-#: plinth/modules/upgrades/__init__.py:84
+#: plinth/modules/upgrades/__init__.py:38 plinth/templates/setup.html:74
+msgid "Update"
+msgstr ""
+
+#: plinth/modules/upgrades/__init__.py:71
#, fuzzy
#| msgid "FreedomBox"
msgid "FreedomBox Updated"
msgstr "FreedomBox"
-#: plinth/modules/upgrades/forms.py:28
+#: plinth/modules/upgrades/forms.py:13
#, fuzzy
#| msgid "Enable application"
msgid "Enable auto-update"
msgstr "Aktifkan aplikasi"
-#: plinth/modules/upgrades/forms.py:29
+#: plinth/modules/upgrades/forms.py:14
msgid "When enabled, FreedomBox automatically updates once a day."
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades-new-release.html:24
+#: plinth/modules/upgrades/templates/upgrades-new-release.html:9
#, fuzzy, python-format
#| msgid "%(box_name)s Setup"
msgid "%(box_name)s Updated"
msgstr "Pengaturan %(box_name)s"
-#: plinth/modules/upgrades/templates/upgrades-new-release.html:28
+#: plinth/modules/upgrades/templates/upgrades-new-release.html:13
#, python-format
msgid ""
"%(box_name)s has been updated to version %(version)s. See the release announcement."
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades-new-release.html:37
-#: plinth/templates/notifications.html:59
+#: plinth/modules/upgrades/templates/upgrades-new-release.html:22
+#: plinth/templates/notifications.html:44
msgid "Dismiss"
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades.html:45
+#: plinth/modules/upgrades/templates/upgrades.html:30
#, fuzzy
#| msgid "Update URL"
msgid "Update now"
msgstr "Perbaharui URL"
-#: plinth/modules/upgrades/templates/upgrades.html:54
+#: plinth/modules/upgrades/templates/upgrades.html:39
msgid "Updating..."
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades.html:59
+#: plinth/modules/upgrades/templates/upgrades.html:44
msgid ""
"This may take a long time to complete. During an update, "
"you cannot install apps. Also, this web interface may be temporarily "
"unavailable and show an error. In that case, refresh the page to continue."
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades.html:73
+#: plinth/modules/upgrades/templates/upgrades.html:58
msgid "Toggle recent update logs"
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades_configure.html:26
-#: plinth/modules/upgrades/templates/upgrades_configure.html:27
-#: plinth/modules/upgrades/views.py:107
+#: plinth/modules/upgrades/templates/upgrades_configure.html:11
+#: plinth/modules/upgrades/templates/upgrades_configure.html:12
+#: plinth/modules/upgrades/views.py:89
#, fuzzy
#| msgid "Manual"
msgid "Manual update"
msgstr "Panduan"
-#: plinth/modules/upgrades/views.py:66
+#: plinth/modules/upgrades/views.py:48
#, python-brace-format
msgid "Error when configuring unattended-upgrades: {error}"
msgstr ""
-#: plinth/modules/upgrades/views.py:70
+#: plinth/modules/upgrades/views.py:52
msgid "Automatic upgrades enabled"
msgstr ""
-#: plinth/modules/upgrades/views.py:73
+#: plinth/modules/upgrades/views.py:55
msgid "Automatic upgrades disabled"
msgstr ""
-#: plinth/modules/upgrades/views.py:75
+#: plinth/modules/upgrades/views.py:57
msgid "Settings unchanged"
msgstr ""
-#: plinth/modules/upgrades/views.py:101
+#: plinth/modules/upgrades/views.py:83
msgid "Upgrade process started."
msgstr ""
-#: plinth/modules/upgrades/views.py:104
+#: plinth/modules/upgrades/views.py:86
msgid "Starting upgrade failed."
msgstr ""
-#: plinth/modules/users/__init__.py:51
-msgid "Users and Groups"
-msgstr ""
-
-#: plinth/modules/users/__init__.py:54
+#: plinth/modules/users/__init__.py:37
msgid ""
"Create and managed user accounts. These accounts serve as centralized "
"authentication mechanism for most apps. Some apps further require a user "
"account to be part of a group to authorize the user to access the app."
msgstr ""
-#: plinth/modules/users/__init__.py:59
+#: plinth/modules/users/__init__.py:42
#, python-brace-format
msgid ""
"Any user may login to {box_name} web interface to see a list of apps "
@@ -5687,35 +5795,39 @@ msgid ""
"group may alter apps or system settings."
msgstr ""
-#: plinth/modules/users/__init__.py:128
+#: plinth/modules/users/__init__.py:64
+msgid "Users and Groups"
+msgstr ""
+
+#: plinth/modules/users/__init__.py:115
#, python-brace-format
msgid "Check LDAP entry \"{search_item}\""
msgstr ""
-#: plinth/modules/users/forms.py:43
+#: plinth/modules/users/forms.py:28
msgid "Access to all services and system settings"
msgstr ""
-#: plinth/modules/users/forms.py:59
+#: plinth/modules/users/forms.py:44
msgid "Username is taken or is reserved."
msgstr ""
-#: plinth/modules/users/forms.py:87
+#: plinth/modules/users/forms.py:72
#, fuzzy
#| msgid "Actions"
msgid "Enter a valid username."
msgstr "Aksi"
-#: plinth/modules/users/forms.py:93
+#: plinth/modules/users/forms.py:78
msgid ""
"Required. 150 characters or fewer. English letters, digits and @/./-/_ only."
msgstr ""
-#: plinth/modules/users/forms.py:106 plinth/modules/users/forms.py:222
+#: plinth/modules/users/forms.py:91 plinth/modules/users/forms.py:207
msgid "Permissions"
msgstr ""
-#: plinth/modules/users/forms.py:109
+#: plinth/modules/users/forms.py:94
msgid ""
"Select which services should be available to the new user. The user will be "
"able to log in to services that support single sign-on through LDAP, if they "
@@ -5724,191 +5836,186 @@ msgid ""
"SSH and have administrative privileges (sudo)."
msgstr ""
-#: plinth/modules/users/forms.py:148 plinth/modules/users/forms.py:372
+#: plinth/modules/users/forms.py:133 plinth/modules/users/forms.py:357
msgid "Creating LDAP user failed."
msgstr "Gagal membuat pengguna LDAP."
-#: plinth/modules/users/forms.py:159
+#: plinth/modules/users/forms.py:144
#, python-brace-format
msgid "Failed to add new user to {group} group."
msgstr ""
-#: plinth/modules/users/forms.py:173
+#: plinth/modules/users/forms.py:158
msgid "Authorized SSH Keys"
msgstr ""
-#: plinth/modules/users/forms.py:175
+#: plinth/modules/users/forms.py:160
msgid ""
"Setting an SSH public key will allow this user to securely log in to the "
"system without using a password. You may enter multiple keys, one on each "
"line. Blank lines and lines starting with # will be ignored."
msgstr ""
-#: plinth/modules/users/forms.py:259
+#: plinth/modules/users/forms.py:244
msgid "Renaming LDAP user failed."
msgstr ""
-#: plinth/modules/users/forms.py:271
+#: plinth/modules/users/forms.py:256
msgid "Failed to remove user from group."
msgstr ""
-#: plinth/modules/users/forms.py:282
+#: plinth/modules/users/forms.py:267
msgid "Failed to add user to group."
msgstr ""
-#: plinth/modules/users/forms.py:291
+#: plinth/modules/users/forms.py:276
msgid "Unable to set SSH keys."
msgstr ""
-#: plinth/modules/users/forms.py:306
+#: plinth/modules/users/forms.py:291
#, fuzzy
#| msgid "Failed to add new user to admin group."
msgid "Failed to change user status."
msgstr "Gagal menambahkan pengguna baru ke kelompok admin."
-#: plinth/modules/users/forms.py:314
+#: plinth/modules/users/forms.py:299
msgid "Cannot delete the only administrator in the system."
msgstr ""
-#: plinth/modules/users/forms.py:346
+#: plinth/modules/users/forms.py:331
msgid "Changing LDAP user password failed."
msgstr ""
-#: plinth/modules/users/forms.py:381
+#: plinth/modules/users/forms.py:366
msgid "Failed to add new user to admin group."
msgstr "Gagal menambahkan pengguna baru ke kelompok admin."
-#: plinth/modules/users/forms.py:398
+#: plinth/modules/users/forms.py:383
msgid "Failed to restrict console access."
msgstr ""
-#: plinth/modules/users/forms.py:410
+#: plinth/modules/users/forms.py:395
msgid "User account created, you are now logged in"
msgstr ""
-#: plinth/modules/users/templates/users_change_password.html:26
+#: plinth/modules/users/templates/users_change_password.html:11
#, python-format
msgid "Change Password for %(username)s"
msgstr ""
-#: plinth/modules/users/templates/users_change_password.html:36
+#: plinth/modules/users/templates/users_change_password.html:21
msgid "Save Password"
msgstr ""
-#: plinth/modules/users/templates/users_create.html:32
-#: plinth/modules/users/templates/users_list.html:42
-#: plinth/modules/users/templates/users_list.html:44
-#: plinth/modules/users/views.py:57
+#: plinth/modules/users/templates/users_create.html:17
+#: plinth/modules/users/templates/users_list.html:27
+#: plinth/modules/users/templates/users_list.html:29
+#: plinth/modules/users/views.py:42
msgid "Create User"
msgstr ""
-#: plinth/modules/users/templates/users_delete.html:26
-#: plinth/modules/users/views.py:139
+#: plinth/modules/users/templates/users_delete.html:11
+#: plinth/modules/users/views.py:121
msgid "Delete User"
msgstr ""
-#: plinth/modules/users/templates/users_delete.html:29
+#: plinth/modules/users/templates/users_delete.html:14
#, python-format
msgid "Delete user %(username)s permanently?"
msgstr ""
-#: plinth/modules/users/templates/users_delete.html:38
+#: plinth/modules/users/templates/users_delete.html:23
#, python-format
msgid "Delete %(username)s"
msgstr ""
-#: plinth/modules/users/templates/users_firstboot.html:26
+#: plinth/modules/users/templates/users_firstboot.html:11
msgid "Administrator Account"
msgstr "Akun Administrator"
-#: plinth/modules/users/templates/users_firstboot.html:29
+#: plinth/modules/users/templates/users_firstboot.html:14
msgid ""
"Choose a username and password to access this web interface. The password "
"can be changed later. This user will be granted administrative privileges. "
"Other users can be added later."
msgstr ""
-#: plinth/modules/users/templates/users_firstboot.html:42
+#: plinth/modules/users/templates/users_firstboot.html:27
#, fuzzy
#| msgid "Administrator Account"
msgid "Create Account"
msgstr "Akun Administrator"
-#: plinth/modules/users/templates/users_list.html:38
-#: plinth/modules/users/views.py:74
+#: plinth/modules/users/templates/users_list.html:23
+#: plinth/modules/users/views.py:59
msgid "Users"
msgstr ""
-#: plinth/modules/users/templates/users_list.html:57
+#: plinth/modules/users/templates/users_list.html:42
#, python-format
msgid "Delete user %(username)s"
msgstr ""
-#: plinth/modules/users/templates/users_list.html:65
+#: plinth/modules/users/templates/users_list.html:50
#, python-format
msgid "Edit user %(username)s"
msgstr ""
-#: plinth/modules/users/templates/users_update.html:30
+#: plinth/modules/users/templates/users_update.html:15
#, python-format
msgid ""
"Use the change password form to "
"change the password."
msgstr ""
-#: plinth/modules/users/templates/users_update.html:42
-#: plinth/templates/language-selection.html:32
+#: plinth/modules/users/templates/users_update.html:27
+#: plinth/templates/language-selection.html:17
msgid "Save Changes"
msgstr ""
-#: plinth/modules/users/views.py:55
+#: plinth/modules/users/views.py:40
#, python-format
msgid "User %(username)s created."
msgstr ""
-#: plinth/modules/users/views.py:93
+#: plinth/modules/users/views.py:75
#, python-format
msgid "User %(username)s updated."
msgstr ""
-#: plinth/modules/users/views.py:94
+#: plinth/modules/users/views.py:76
msgid "Edit User"
msgstr ""
-#: plinth/modules/users/views.py:149
+#: plinth/modules/users/views.py:131
#, python-brace-format
msgid "User {user} deleted."
msgstr ""
-#: plinth/modules/users/views.py:156
+#: plinth/modules/users/views.py:138
msgid "Deleting LDAP user failed."
msgstr ""
-#: plinth/modules/users/views.py:165
+#: plinth/modules/users/views.py:147
msgid "Change Password"
msgstr ""
-#: plinth/modules/users/views.py:166
+#: plinth/modules/users/views.py:148
msgid "Password changed successfully."
msgstr ""
-#: plinth/modules/wireguard/__init__.py:38
-#: plinth/modules/wireguard/manifest.py:29
-msgid "WireGuard"
-msgstr ""
-
-#: plinth/modules/wireguard/__init__.py:43
+#: plinth/modules/wireguard/__init__.py:24
msgid "WireGuard is a fast, modern, secure VPN tunnel."
msgstr ""
-#: plinth/modules/wireguard/__init__.py:45
+#: plinth/modules/wireguard/__init__.py:26
#, python-brace-format
msgid ""
"It can be used to connect to a VPN provider which supports WireGuard, and to "
"route all outgoing traffic from {box_name} through the VPN."
msgstr ""
-#: plinth/modules/wireguard/__init__.py:49
+#: plinth/modules/wireguard/__init__.py:30
#, python-brace-format
msgid ""
"A second use case is to connect a mobile device to {box_name} while "
@@ -5916,65 +6023,70 @@ msgid ""
"securely relayed through {box_name}."
msgstr ""
-#: plinth/modules/wireguard/forms.py:47
+#: plinth/modules/wireguard/__init__.py:52
+#: plinth/modules/wireguard/manifest.py:14
+msgid "WireGuard"
+msgstr ""
+
+#: plinth/modules/wireguard/forms.py:32
#, fuzzy
#| msgid "Actions"
msgid "Invalid key."
msgstr "Aksi"
-#: plinth/modules/wireguard/forms.py:76
-#: plinth/modules/wireguard/templates/wireguard.html:32
-#: plinth/modules/wireguard/templates/wireguard.html:89
-#: plinth/modules/wireguard/templates/wireguard_delete_server.html:38
+#: plinth/modules/wireguard/forms.py:61
+#: plinth/modules/wireguard/templates/wireguard.html:17
+#: plinth/modules/wireguard/templates/wireguard.html:74
+#: plinth/modules/wireguard/templates/wireguard_delete_server.html:23
#, fuzzy
#| msgid "Publish Key"
msgid "Public Key"
msgstr "Publikasikan Kunci"
-#: plinth/modules/wireguard/forms.py:77
+#: plinth/modules/wireguard/forms.py:62
msgid ""
"Public key of the peer. Example: "
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs= ."
msgstr ""
-#: plinth/modules/wireguard/forms.py:85
+#: plinth/modules/wireguard/forms.py:70
msgid "Endpoint of the server"
msgstr ""
-#: plinth/modules/wireguard/forms.py:86
+#: plinth/modules/wireguard/forms.py:71
msgid ""
"Domain name and port in the form \"ip:port\". Example: demo.wireguard."
"com:12912 ."
msgstr ""
-#: plinth/modules/wireguard/forms.py:91
+#: plinth/modules/wireguard/forms.py:76
#, fuzzy
#| msgid "Published key to keyserver."
msgid "Public key of the server"
msgstr "Publikasikan kunci ke keyserver."
-#: plinth/modules/wireguard/forms.py:92
+#: plinth/modules/wireguard/forms.py:77
msgid ""
"Provided by the server operator, a long string of characters. Example: "
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs= ."
msgstr ""
-#: plinth/modules/wireguard/forms.py:97
+#: plinth/modules/wireguard/forms.py:82
msgid "Client IP address provided by server"
msgstr ""
-#: plinth/modules/wireguard/forms.py:98
+#: plinth/modules/wireguard/forms.py:83
msgid ""
"IP address assigned to this machine on the VPN after connecting to the "
"endpoint. This value is usually provided by the server operator. Example: "
"192.168.0.10."
msgstr ""
-#: plinth/modules/wireguard/forms.py:104
+#: plinth/modules/wireguard/forms.py:89
msgid "Private key of this machine"
msgstr ""
-#: plinth/modules/wireguard/forms.py:105
+#: plinth/modules/wireguard/forms.py:90
msgid ""
"Optional. New public/private keys are generated if left blank. Public key "
"can then be provided to the server. This is the recommended way. However, "
@@ -5982,167 +6094,167 @@ msgid ""
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs= ."
msgstr ""
-#: plinth/modules/wireguard/forms.py:113
+#: plinth/modules/wireguard/forms.py:98
msgid "Pre-shared key"
msgstr ""
-#: plinth/modules/wireguard/forms.py:114
+#: plinth/modules/wireguard/forms.py:99
msgid ""
"Optional. A shared secret key provided by the server to add an additional "
"layer of security. Fill in only if provided. Example: "
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs=."
msgstr ""
-#: plinth/modules/wireguard/forms.py:120
+#: plinth/modules/wireguard/forms.py:105
msgid "Use this connection to send all outgoing traffic"
msgstr ""
-#: plinth/modules/wireguard/forms.py:122
+#: plinth/modules/wireguard/forms.py:107
msgid "Typically checked for a VPN service though which all traffic is sent."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:25
+#: plinth/modules/wireguard/templates/wireguard.html:10
#, fuzzy
#| msgid "Web Server"
msgid "As a Server"
msgstr "Server Web"
-#: plinth/modules/wireguard/templates/wireguard.html:27
+#: plinth/modules/wireguard/templates/wireguard.html:12
msgid "Peers allowed to connect to this server:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:33
+#: plinth/modules/wireguard/templates/wireguard.html:18
msgid "Allowed IPs"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:34
-#: plinth/modules/wireguard/templates/wireguard.html:90
+#: plinth/modules/wireguard/templates/wireguard.html:19
+#: plinth/modules/wireguard/templates/wireguard.html:75
msgid "Last Connected Time"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:53
+#: plinth/modules/wireguard/templates/wireguard.html:38
#, python-format
msgid "No peers configured to connect to this %(box_name)s yet."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:62
+#: plinth/modules/wireguard/templates/wireguard.html:47
#, python-format
msgid "Public key for this %(box_name)s:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:68
+#: plinth/modules/wireguard/templates/wireguard.html:53
msgid "Not configured yet."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:72
+#: plinth/modules/wireguard/templates/wireguard.html:57
msgid "Add a new peer"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:76
-#: plinth/modules/wireguard/views.py:69
+#: plinth/modules/wireguard/templates/wireguard.html:61
+#: plinth/modules/wireguard/views.py:51
msgid "Add Allowed Client"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:79
+#: plinth/modules/wireguard/templates/wireguard.html:64
msgid "As a Client"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:81
+#: plinth/modules/wireguard/templates/wireguard.html:66
#, python-format
msgid "Servers that %(box_name)s will connect to:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:88
-#: plinth/modules/wireguard/templates/wireguard_delete_server.html:34
+#: plinth/modules/wireguard/templates/wireguard.html:73
+#: plinth/modules/wireguard/templates/wireguard_delete_server.html:19
msgid "Endpoint"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:111
+#: plinth/modules/wireguard/templates/wireguard.html:96
msgid "No connections to remote servers are configured yet."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:119
+#: plinth/modules/wireguard/templates/wireguard.html:104
msgid "Add a new server"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:123
-#: plinth/modules/wireguard/views.py:178
+#: plinth/modules/wireguard/templates/wireguard.html:108
+#: plinth/modules/wireguard/views.py:160
#, fuzzy
#| msgid "Add Connection"
msgid "Add Connection to Server"
msgstr "Tambah Koneksi"
-#: plinth/modules/wireguard/templates/wireguard_add_client.html:34
+#: plinth/modules/wireguard/templates/wireguard_add_client.html:19
msgid "Add Client"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_delete_client.html:29
+#: plinth/modules/wireguard/templates/wireguard_delete_client.html:14
msgid "Are you sure that you want to delete this client?"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_delete_server.html:29
+#: plinth/modules/wireguard/templates/wireguard_delete_server.html:14
msgid "Are you sure that you want to delete this server?"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_edit_client.html:34
+#: plinth/modules/wireguard/templates/wireguard_edit_client.html:19
#, fuzzy
#| msgid "Update URL"
msgid "Update Client"
msgstr "Perbaharui URL"
-#: plinth/modules/wireguard/templates/wireguard_edit_server.html:34
+#: plinth/modules/wireguard/templates/wireguard_edit_server.html:19
#, fuzzy
#| msgid "Edit Connection"
msgid "Update Connection"
msgstr "Sunting Koneksi"
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:27
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:12
#, python-format
msgid ""
"%(box_name)s will allow this client to connect to it. Ensure that the client "
"is configured with the following information."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:35
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:20
msgid "Client public key:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:39
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:24
msgid "IP address to use for client:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:43
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:46
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:28
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:31
msgid "Pre-shared key:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:47
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:32
#, fuzzy
#| msgid "SSH Fingerprint"
msgid "Server endpoints:"
msgstr "Sidik Jari SSH"
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:55
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:42
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:40
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:27
msgid "Server public key:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:65
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:64
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:50
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:49
msgid "Data transmitted:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:69
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:68
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:54
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:53
msgid "Data received:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:73
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:72
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:58
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:57
msgid "Latest handshake:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:29
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:14
#, python-format
msgid ""
"%(box_name)s will attempt to reach a WireGuard server with the following "
@@ -6150,151 +6262,151 @@ msgid ""
"public key and IP address."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:38
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:23
#, fuzzy
#| msgid "SSH Fingerprint"
msgid "Server endpoint:"
msgstr "Sidik Jari SSH"
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:50
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:35
msgid "Public key of this machine:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:54
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:39
msgid "IP address of this machine:"
msgstr ""
-#: plinth/modules/wireguard/views.py:64
+#: plinth/modules/wireguard/views.py:46
msgid "Added new client."
msgstr ""
-#: plinth/modules/wireguard/views.py:79 plinth/modules/wireguard/views.py:138
+#: plinth/modules/wireguard/views.py:61 plinth/modules/wireguard/views.py:120
msgid "Client with public key already exists"
msgstr ""
-#: plinth/modules/wireguard/views.py:92
+#: plinth/modules/wireguard/views.py:74
msgid "Allowed Client"
msgstr ""
-#: plinth/modules/wireguard/views.py:114
+#: plinth/modules/wireguard/views.py:96
#, fuzzy
#| msgid "Update URL"
msgid "Updated client."
msgstr "Perbaharui URL"
-#: plinth/modules/wireguard/views.py:119
+#: plinth/modules/wireguard/views.py:101
msgid "Modify Client"
msgstr ""
-#: plinth/modules/wireguard/views.py:152
+#: plinth/modules/wireguard/views.py:134
#, fuzzy
#| msgid "Delete"
msgid "Delete Allowed Client"
msgstr "Hapus"
-#: plinth/modules/wireguard/views.py:161
+#: plinth/modules/wireguard/views.py:143
#, fuzzy
#| msgid "{name} deleted."
msgid "Client deleted."
msgstr "{name} dihapus."
-#: plinth/modules/wireguard/views.py:163
+#: plinth/modules/wireguard/views.py:145
msgid "Client not found"
msgstr ""
-#: plinth/modules/wireguard/views.py:173
+#: plinth/modules/wireguard/views.py:155
msgid "Added new server."
msgstr ""
-#: plinth/modules/wireguard/views.py:194
+#: plinth/modules/wireguard/views.py:176
#, fuzzy
#| msgid "Connection Type"
msgid "Connection to Server"
msgstr "Tipe Koneksi"
-#: plinth/modules/wireguard/views.py:212
+#: plinth/modules/wireguard/views.py:194
#, fuzzy
#| msgid "Web Server"
msgid "Updated server."
msgstr "Server Web"
-#: plinth/modules/wireguard/views.py:217
+#: plinth/modules/wireguard/views.py:199
#, fuzzy
#| msgid "Edit Connection"
msgid "Modify Connection to Server"
msgstr "Sunting Koneksi"
-#: plinth/modules/wireguard/views.py:254
+#: plinth/modules/wireguard/views.py:236
#, fuzzy
#| msgid "Delete Connection"
msgid "Delete Connection to Server"
msgstr "Hapus Koneksi"
-#: plinth/modules/wireguard/views.py:274
+#: plinth/modules/wireguard/views.py:256
#, fuzzy
#| msgid "{name} deleted."
msgid "Server deleted."
msgstr "{name} dihapus."
-#: plinth/network.py:42
+#: plinth/network.py:27
msgid "PPPoE"
msgstr "PPPoE"
-#: plinth/network.py:43
+#: plinth/network.py:28
msgid "Generic"
msgstr ""
-#: plinth/package.py:137
+#: plinth/package.py:122
msgid "Error during installation"
msgstr ""
-#: plinth/package.py:159
+#: plinth/package.py:144
msgid "installing"
msgstr ""
-#: plinth/package.py:161
+#: plinth/package.py:146
msgid "downloading"
msgstr ""
-#: plinth/package.py:163
+#: plinth/package.py:148
msgid "media change"
msgstr ""
-#: plinth/package.py:165
+#: plinth/package.py:150
#, python-brace-format
msgid "configuration file: {file}"
msgstr ""
-#: plinth/templates/403.html:25
+#: plinth/templates/403.html:10
msgid "403 Forbidden"
msgstr ""
-#: plinth/templates/403.html:29
+#: plinth/templates/403.html:14
#, python-format
msgid "You don't have permission to access %(request_path)s on this server."
msgstr ""
-#: plinth/templates/404.html:25
+#: plinth/templates/404.html:10
msgid "404"
msgstr ""
-#: plinth/templates/404.html:28
+#: plinth/templates/404.html:13
#, python-format
msgid "Requested page %(request_path)s was not found."
msgstr ""
-#: plinth/templates/404.html:34
+#: plinth/templates/404.html:19
msgid ""
"If you believe this missing page should exist, please file a bug at the "
"FreedomBox Service (Plinth) project issue tracker."
msgstr ""
-#: plinth/templates/500.html:25
+#: plinth/templates/500.html:10
msgid "500"
msgstr ""
-#: plinth/templates/500.html:29
+#: plinth/templates/500.html:14
#, python-format
msgid ""
"This is an internal error and not something you caused or can fix. Please "
@@ -6303,145 +6415,145 @@ msgid ""
"href=\"%(status_log_url)s\">status log to the bug report."
msgstr ""
-#: plinth/templates/app.html:47
+#: plinth/templates/app-header.html:22
+msgid "Installation"
+msgstr ""
+
+#: plinth/templates/app.html:32
#, python-format
msgid "Service %(service_name)s is running."
msgstr ""
-#: plinth/templates/app.html:52
+#: plinth/templates/app.html:37
#, python-format
msgid "Service %(service_name)s is not running."
msgstr ""
-#: plinth/templates/base.html:50
+#: plinth/templates/base.html:35
#, python-format
msgid "Core functionality and web interface for %(box_name)s"
msgstr ""
-#: plinth/templates/base.html:96
+#: plinth/templates/base.html:81
msgid "Toggle navigation"
msgstr ""
-#: plinth/templates/base.html:120 plinth/templates/base.html:123
+#: plinth/templates/base.html:105 plinth/templates/base.html:108
msgid "Home"
msgstr ""
-#: plinth/templates/base.html:128 plinth/templates/base.html:132
+#: plinth/templates/base.html:113 plinth/templates/base.html:117
msgid "Apps"
msgstr "Apps"
-#: plinth/templates/base.html:137 plinth/templates/base.html:141
+#: plinth/templates/base.html:122 plinth/templates/base.html:126
msgid "System"
msgstr ""
-#: plinth/templates/base.html:173 plinth/templates/base.html:174
+#: plinth/templates/base.html:158 plinth/templates/base.html:159
msgid "Change password"
msgstr ""
-#: plinth/templates/base.html:181 plinth/templates/base.html:182
+#: plinth/templates/base.html:166 plinth/templates/base.html:167
#, fuzzy
#| msgid "Restart Now"
msgid "Restart"
msgstr "Jalankan ulang Sekarang"
-#: plinth/templates/base.html:187 plinth/templates/base.html:188
+#: plinth/templates/base.html:172 plinth/templates/base.html:173
#, fuzzy
#| msgid "Shut Down Now"
msgid "Shut down"
msgstr "Matikan Sekarang"
-#: plinth/templates/base.html:195 plinth/templates/base.html:196
-#: plinth/templates/base.html:220 plinth/templates/base.html:222
+#: plinth/templates/base.html:180 plinth/templates/base.html:181
+#: plinth/templates/base.html:205 plinth/templates/base.html:207
msgid "Log out"
msgstr ""
-#: plinth/templates/base.html:204 plinth/templates/base.html:207
+#: plinth/templates/base.html:189 plinth/templates/base.html:192
#, fuzzy
#| msgid "Language"
msgid "Select language"
msgstr "Bahasa"
-#: plinth/templates/base.html:212 plinth/templates/base.html:214
+#: plinth/templates/base.html:197 plinth/templates/base.html:199
msgid "Log in"
msgstr ""
-#: plinth/templates/clients.html:32
+#: plinth/templates/clients.html:17
msgid "Web"
msgstr ""
-#: plinth/templates/clients.html:57
+#: plinth/templates/clients.html:42
msgid "Desktop"
msgstr ""
-#: plinth/templates/clients.html:68
+#: plinth/templates/clients.html:53
msgid "GNU/Linux"
msgstr ""
-#: plinth/templates/clients.html:70
+#: plinth/templates/clients.html:55
msgid "Windows"
msgstr ""
-#: plinth/templates/clients.html:72
+#: plinth/templates/clients.html:57
msgid "macOS"
msgstr ""
-#: plinth/templates/clients.html:88
+#: plinth/templates/clients.html:73
msgid "Mobile"
msgstr ""
-#: plinth/templates/clients.html:99
+#: plinth/templates/clients.html:84
msgid "Play Store"
msgstr ""
-#: plinth/templates/clients.html:101
+#: plinth/templates/clients.html:86
msgid "F-Droid"
msgstr ""
-#: plinth/templates/clients.html:103
+#: plinth/templates/clients.html:88
msgid "App Store"
msgstr ""
-#: plinth/templates/clients.html:119
+#: plinth/templates/clients.html:104
msgid "Package"
msgstr ""
-#: plinth/templates/clients.html:126
+#: plinth/templates/clients.html:111
msgid "Debian:"
msgstr ""
-#: plinth/templates/clients.html:129
+#: plinth/templates/clients.html:114
msgid "Homebrew:"
msgstr ""
-#: plinth/templates/clients.html:132
+#: plinth/templates/clients.html:117
msgid "RPM:"
msgstr ""
-#: plinth/templates/first_setup.html:39
+#: plinth/templates/first_setup.html:24
#, python-format
msgid ""
"Please wait for %(box_name)s to finish installation. You can start using "
"your %(box_name)s once it is done."
msgstr ""
-#: plinth/templates/header.html:36
-msgid "Installation"
-msgstr ""
-
-#: plinth/templates/index.html:37
+#: plinth/templates/index.html:22
#, python-format
msgid ""
"Enable some applications to add shortcuts to "
"this page."
msgstr ""
-#: plinth/templates/index.html:59
+#: plinth/templates/index.html:44
#, fuzzy
#| msgid "Configure"
msgid "Configure »"
msgstr "Konfigurasi"
-#: plinth/templates/index.html:115
+#: plinth/templates/index.html:100
#, python-format
msgid ""
"%(box_name)s, a Debian pure blend, is a 100%% free software self-hosting web "
@@ -6449,7 +6561,7 @@ msgid ""
"communication tools respecting your privacy and data ownership."
msgstr ""
-#: plinth/templates/index.html:124
+#: plinth/templates/index.html:109
#, python-format
msgid ""
"This portal is a part of the %(box_name)s web interface. %(box_name)s is "
@@ -6457,61 +6569,61 @@ msgid ""
"Version 3 or later."
msgstr ""
-#: plinth/templates/index.html:144
+#: plinth/templates/index.html:129
msgid "Homepage"
msgstr ""
-#: plinth/templates/index.html:147
+#: plinth/templates/index.html:132
msgid "Source Code"
msgstr ""
-#: plinth/templates/index.html:150
+#: plinth/templates/index.html:135
msgid "Donate"
msgstr ""
-#: plinth/templates/index.html:154
+#: plinth/templates/index.html:139
#, fuzzy
#| msgid "FreedomBox"
msgid "FreedomBox Foundation"
msgstr "FreedomBox"
-#: plinth/templates/index.html:161
+#: plinth/templates/index.html:146
msgid "IRC Chatroom"
msgstr ""
-#: plinth/templates/index.html:166
+#: plinth/templates/index.html:151
msgid "Mailing list"
msgstr ""
-#: plinth/templates/internal-zone.html:26
+#: plinth/templates/internal-zone.html:11
#, python-format
msgid "%(service_name)s is available only on internal networks."
msgstr ""
-#: plinth/templates/internal-zone.html:32
+#: plinth/templates/internal-zone.html:17
msgid "Currently there are no network interfaces configured as internal."
msgstr ""
-#: plinth/templates/internal-zone.html:34
+#: plinth/templates/internal-zone.html:19
#, python-format
msgid ""
"Currently the following network interfaces are configured as internal: "
"%(interface_list)s"
msgstr ""
-#: plinth/templates/notifications-dropdown.html:26
+#: plinth/templates/notifications-dropdown.html:11
#, fuzzy
#| msgid "No certficate"
msgid "Notifications"
msgstr "Tidak ada Sertifikat"
-#: plinth/templates/port-forwarding-info.html:23
+#: plinth/templates/port-forwarding-info.html:8
#, fuzzy
#| msgid "Enable Tor"
msgid "Port Forwarding"
msgstr "Aktifkan Tor"
-#: plinth/templates/port-forwarding-info.html:26
+#: plinth/templates/port-forwarding-info.html:11
#, python-format
msgid ""
"If your FreedomBox is behind a router, you will need to set up port "
@@ -6519,63 +6631,63 @@ msgid ""
"%(service_name)s:"
msgstr ""
-#: plinth/templates/setup.html:51
+#: plinth/templates/setup.html:36
msgid "Install this application?"
msgstr ""
-#: plinth/templates/setup.html:55
+#: plinth/templates/setup.html:40
msgid "This application needs an update. Update now?"
msgstr ""
-#: plinth/templates/setup.html:66
+#: plinth/templates/setup.html:51
msgid ""
"Another installation or upgrade is already running. Please wait for a few "
"moments before trying again."
msgstr ""
-#: plinth/templates/setup.html:73
+#: plinth/templates/setup.html:58
msgid "This application is currently not available in your distribution."
msgstr ""
-#: plinth/templates/setup.html:87
+#: plinth/templates/setup.html:72
msgid "Install"
msgstr ""
-#: plinth/templates/setup.html:98
+#: plinth/templates/setup.html:83
msgid "Performing pre-install operation"
msgstr ""
-#: plinth/templates/setup.html:102
+#: plinth/templates/setup.html:87
msgid "Performing post-install operation"
msgstr ""
-#: plinth/templates/setup.html:107
+#: plinth/templates/setup.html:92
#, python-format
msgid "Installing %(package_names)s: %(status)s"
msgstr ""
-#: plinth/templates/setup.html:117
+#: plinth/templates/setup.html:102
#, python-format
msgid "%(percentage)s%% complete"
msgstr ""
-#: plinth/templates/toolbar.html:38
+#: plinth/templates/toolbar.html:23
msgid "Launch web client"
msgstr ""
-#: plinth/templates/toolbar.html:47
+#: plinth/templates/toolbar.html:32
msgid "Client Apps"
msgstr ""
-#: plinth/views.py:179
+#: plinth/views.py:189
msgid "Application enabled"
msgstr ""
-#: plinth/views.py:182
+#: plinth/views.py:192
msgid "Application disabled"
msgstr ""
-#: plinth/web_framework.py:190
+#: plinth/web_framework.py:107
msgid "Gujarati"
msgstr ""
diff --git a/plinth/locale/it/LC_MESSAGES/django.po b/plinth/locale/it/LC_MESSAGES/django.po
index 7a61e862e..c96450ed2 100644
--- a/plinth/locale/it/LC_MESSAGES/django.po
+++ b/plinth/locale/it/LC_MESSAGES/django.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2020-02-14 21:26+0200\n"
+"POT-Creation-Date: 2020-02-24 19:12-0500\n"
"PO-Revision-Date: 2020-02-24 21:32+0000\n"
"Last-Translator: Dietmar This means that devices on the Internet can reach you when you are " +"connected to the Internet. Every time you connect to the Internet with your " +"Internet Service Provider (ISP), you may get a different IP address, " +"especially after some offline time. Many ISPs offer this type of " +"connectivity. If you have a public IP address but are unsure if it changes " +"over time or not, it is safer to choose this option.
" +msgstr "" + #: plinth/modules/networks/forms.py:313 +#, python-brace-format +msgid "" +"I have a public IP address that does not change overtime (recommended)This means that devices on the Internet can reach you " +"when you are connected to the Internet. Every time you connect to the " +"Internet with your Internet Service Provider (ISP), you always get the same " +"IP address. This is the most trouble-free setup for many {box_name} services " +"but very few ISPs offer this. You may be able to get this service from your " +"ISP by making an additional payment.
" +msgstr "" + +#: plinth/modules/networks/forms.py:326 +#, python-brace-format +msgid "" +"I dont have a public IP addressThis means that " +"devices on the Internet can not reach you when you are connected to " +"the Internet. Every time you connect to the Internet with your Internet " +"Service Provider (ISP), you get an IP address that is only relevant for " +"local networks. Many ISPs offer this type of connectivity. This is the most " +"troublesome situation for hosting services at home. {box_name} provides many " +"workaround solutions but each solution has some limitations.
" +msgstr "" + +#: plinth/modules/networks/forms.py:351 #, fuzzy #| msgid "General Configuration" msgid "Preferred router configuration" msgstr "Configurazione Generale" -#: plinth/modules/networks/forms.py:318 +#: plinth/modules/networks/forms.py:356 #, python-brace-format msgid "" -"Use DMZ feature to forward all trafficMost routers " -"provide a configuration setting called DMZ. This will allow the router to " -"forward all incoming traffic from the internet to a single IP address such " -"as the {box_name}'s address. First remember to configure a static local IP " -"address for your {box_name} in your router's configuration.
" +"Use DMZ feature to forward all traffic (recommended)Most routers provide a configuration setting called DMZ. This will allow " +"the router to forward all incoming traffic from the Internet to a single IP " +"address such as the {box_name}'s IP address. First remember to configure a " +"static local IP address for your {box_name} in your router's configuration." +"p>" msgstr "" -#: plinth/modules/networks/forms.py:332 +#: plinth/modules/networks/forms.py:368 #, python-brace-format msgid "" -"Forward Specific Traffic as needed by each application
You may alternatively choose to forward only specific traffic to your " "{box_name}. This is ideal if you have other servers like {box_name} in your " "network or if your router does not support DMZ feature. All applications " @@ -3608,267 +3679,273 @@ msgid "" "to be forwarded for that application to work.
" msgstr "" -#: plinth/modules/networks/forms.py:349 +#: plinth/modules/networks/forms.py:382 msgid "" -"Router is currently unconfiguredChoose this if you " +"Router is currently unconfigured
Choose this if you " "have not configured or are unable to configure the router currently and wish " "to be reminded later. Some of the other configuration steps may fail.
" msgstr "" -#: plinth/modules/networks/networks.py:43 +#: plinth/modules/networks/networks.py:32 msgid "Network Connections" msgstr "Connessione di rete" -#: plinth/modules/networks/networks.py:59 +#: plinth/modules/networks/networks.py:46 msgid "Cannot show connection: Connection not found." msgstr "Non è possibile mostrare la connessione: Connessione non trovata." -#: plinth/modules/networks/networks.py:94 +#: plinth/modules/networks/networks.py:81 msgid "Connection Information" msgstr "Informazioni Connessione" -#: plinth/modules/networks/networks.py:108 +#: plinth/modules/networks/networks.py:95 msgid "Cannot edit connection: Connection not found." msgstr "Impossibile modificare la connessione: connessione non trovata." -#: plinth/modules/networks/networks.py:114 +#: plinth/modules/networks/networks.py:101 msgid "This type of connection is not yet understood." msgstr "Questo tipo di connessione non è ancora riconosciuto." -#: plinth/modules/networks/networks.py:136 -#: plinth/modules/networks/networks.py:220 -#: plinth/modules/networks/templates/connections_edit.html:35 +#: plinth/modules/networks/networks.py:123 +#: plinth/modules/networks/networks.py:207 +#: plinth/modules/networks/templates/connections_edit.html:20 msgid "Edit Connection" msgstr "Modifica Concessione" -#: plinth/modules/networks/networks.py:232 +#: plinth/modules/networks/networks.py:219 #, python-brace-format msgid "Activated connection {name}." msgstr "Attivata connessione {name}." -#: plinth/modules/networks/networks.py:236 +#: plinth/modules/networks/networks.py:223 msgid "Failed to activate connection: Connection not found." msgstr "Attivazione connessione fallita: connessione non trovata." -#: plinth/modules/networks/networks.py:242 +#: plinth/modules/networks/networks.py:229 #, python-brace-format msgid "Failed to activate connection {name}: No suitable device is available." msgstr "" "Attivazione connessione {name} fallita: non è disponibile nessun dispositivo " "idoneo." -#: plinth/modules/networks/networks.py:255 +#: plinth/modules/networks/networks.py:242 #, python-brace-format msgid "Deactivated connection {name}." msgstr "Disattivata connessione {name}." -#: plinth/modules/networks/networks.py:259 +#: plinth/modules/networks/networks.py:246 msgid "Failed to de-activate connection: Connection not found." msgstr "Disattivazione connessione fallita: connessione non trovata." -#: plinth/modules/networks/networks.py:269 -#: plinth/modules/networks/templates/connections_list.html:62 -#: plinth/modules/networks/templates/connections_list.html:64 +#: plinth/modules/networks/networks.py:256 +#: plinth/modules/networks/templates/connections_list.html:12 +#: plinth/modules/networks/templates/connections_list.html:14 msgid "Nearby Wi-Fi Networks" msgstr "Reti WiFi vicine" -#: plinth/modules/networks/networks.py:293 -#: plinth/modules/networks/templates/connections_list.html:67 -#: plinth/modules/networks/templates/connections_list.html:69 -#: plinth/modules/wireguard/templates/wireguard_add_server.html:34 +#: plinth/modules/networks/networks.py:280 +#: plinth/modules/networks/templates/connections_list.html:17 +#: plinth/modules/networks/templates/connections_list.html:19 +#: plinth/modules/wireguard/templates/wireguard_add_server.html:19 msgid "Add Connection" msgstr "Aggiungi Connessione" -#: plinth/modules/networks/networks.py:311 +#: plinth/modules/networks/networks.py:298 msgid "Adding New Generic Connection" msgstr "Aggiungendo Nuova Connessione Generica" -#: plinth/modules/networks/networks.py:329 +#: plinth/modules/networks/networks.py:316 msgid "Adding New Ethernet Connection" msgstr "Aggiungendo Nuova Connessione Ethernet" -#: plinth/modules/networks/networks.py:347 +#: plinth/modules/networks/networks.py:334 msgid "Adding New PPPoE Connection" msgstr "Aggiungendo Nuova Connessione PPPoE" -#: plinth/modules/networks/networks.py:382 +#: plinth/modules/networks/networks.py:369 msgid "Adding New Wi-Fi Connection" msgstr "Aggiungendo Nuova Connessione WiFi" -#: plinth/modules/networks/networks.py:397 +#: plinth/modules/networks/networks.py:384 #, python-brace-format msgid "Connection {name} deleted." msgstr "Connessione {name} cancellata." -#: plinth/modules/networks/networks.py:401 -#: plinth/modules/networks/networks.py:411 +#: plinth/modules/networks/networks.py:388 +#: plinth/modules/networks/networks.py:398 msgid "Failed to delete connection: Connection not found." msgstr "Cancellazione connessione fallita: connessione non trovata." -#: plinth/modules/networks/networks.py:416 -#: plinth/modules/networks/templates/connections_delete.html:26 +#: plinth/modules/networks/networks.py:403 +#: plinth/modules/networks/templates/connections_delete.html:11 msgid "Delete Connection" msgstr "Cancella Connessione" -#: plinth/modules/networks/networks.py:442 +#: plinth/modules/networks/networks.py:428 #, fuzzy #| msgid "PVP configuration updated" msgid "Router configuration type saved." msgstr "Configurazione PVP aggiornata" -#: plinth/modules/networks/templates/connection_show.html:43 +#: plinth/modules/networks/networks.py:474 +#, fuzzy +#| msgid "PVP configuration updated" +msgid "Internet connection type saved." +msgstr "Configurazione PVP aggiornata" + +#: plinth/modules/networks/templates/connection_show.html:28 msgid "Edit connection" msgstr "Modifica Connessione" -#: plinth/modules/networks/templates/connection_show.html:43 -#: plinth/modules/wireguard/templates/wireguard_show_client.html:83 -#: plinth/modules/wireguard/templates/wireguard_show_server.html:84 -#: plinth/templates/base.html:167 plinth/templates/base.html:168 +#: plinth/modules/networks/templates/connection_show.html:28 +#: plinth/modules/wireguard/templates/wireguard_show_client.html:68 +#: plinth/modules/wireguard/templates/wireguard_show_server.html:69 +#: plinth/templates/base.html:152 plinth/templates/base.html:153 msgid "Edit" msgstr "Modifica" -#: plinth/modules/networks/templates/connection_show.html:50 -#: plinth/modules/networks/templates/connections_list.html:90 +#: plinth/modules/networks/templates/connection_show.html:35 +#: plinth/modules/networks/templates/connections_list.html:40 msgid "Deactivate" msgstr "Disattiva" -#: plinth/modules/networks/templates/connection_show.html:57 -#: plinth/modules/networks/templates/connections_list.html:98 +#: plinth/modules/networks/templates/connection_show.html:42 +#: plinth/modules/networks/templates/connections_list.html:48 msgid "Activate" msgstr "Attiva" -#: plinth/modules/networks/templates/connection_show.html:63 +#: plinth/modules/networks/templates/connection_show.html:48 msgid "Delete connection" msgstr "Cancella connessione" -#: plinth/modules/networks/templates/connection_show.html:66 -#: plinth/modules/networks/templates/connections_diagram.html:73 -#: plinth/modules/networks/templates/connections_diagram.html:76 -#: plinth/modules/networks/templates/connections_diagram.html:105 -#: plinth/modules/networks/templates/connections_diagram.html:127 +#: plinth/modules/networks/templates/connection_show.html:51 +#: plinth/modules/networks/templates/connections_diagram.html:58 +#: plinth/modules/networks/templates/connections_diagram.html:61 +#: plinth/modules/networks/templates/connections_diagram.html:90 +#: plinth/modules/networks/templates/connections_diagram.html:112 msgid "Connection" msgstr "Connessione" -#: plinth/modules/networks/templates/connection_show.html:71 +#: plinth/modules/networks/templates/connection_show.html:56 msgid "Primary connection" msgstr "Connessione primaria" -#: plinth/modules/networks/templates/connection_show.html:73 -#: plinth/modules/networks/templates/connection_show.html:217 -#: plinth/modules/networks/templates/connection_show.html:256 +#: plinth/modules/networks/templates/connection_show.html:58 +#: plinth/modules/networks/templates/connection_show.html:202 +#: plinth/modules/networks/templates/connection_show.html:241 msgid "yes" msgstr "si" -#: plinth/modules/networks/templates/connection_show.html:84 -#: plinth/modules/storage/templates/storage.html:40 +#: plinth/modules/networks/templates/connection_show.html:69 +#: plinth/modules/storage/templates/storage.html:25 msgid "Device" msgstr "Dispositivo" -#: plinth/modules/networks/templates/connection_show.html:88 +#: plinth/modules/networks/templates/connection_show.html:73 msgid "State" msgstr "Stato" -#: plinth/modules/networks/templates/connection_show.html:93 +#: plinth/modules/networks/templates/connection_show.html:78 msgid "State reason" msgstr "Causa stato" -#: plinth/modules/networks/templates/connection_show.html:102 +#: plinth/modules/networks/templates/connection_show.html:87 msgid "MAC address" msgstr "Indirizzo MAC" -#: plinth/modules/networks/templates/connection_show.html:106 +#: plinth/modules/networks/templates/connection_show.html:91 msgid "Interface" msgstr "Interfaccia" -#: plinth/modules/networks/templates/connection_show.html:110 -#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:33 -#: plinth/modules/snapshot/templates/snapshot_manage.html:45 -#: plinth/modules/snapshot/templates/snapshot_rollback.html:41 +#: plinth/modules/networks/templates/connection_show.html:95 +#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:18 +#: plinth/modules/snapshot/templates/snapshot_manage.html:30 +#: plinth/modules/snapshot/templates/snapshot_rollback.html:26 msgid "Description" msgstr "Descrizione" -#: plinth/modules/networks/templates/connection_show.html:116 +#: plinth/modules/networks/templates/connection_show.html:101 msgid "Physical Link" msgstr "Collegamento fisico" -#: plinth/modules/networks/templates/connection_show.html:121 +#: plinth/modules/networks/templates/connection_show.html:106 msgid "Link state" msgstr "Stato collegamenti" -#: plinth/modules/networks/templates/connection_show.html:125 +#: plinth/modules/networks/templates/connection_show.html:110 msgid "cable is connected" msgstr "il cavo è connesso" -#: plinth/modules/networks/templates/connection_show.html:128 +#: plinth/modules/networks/templates/connection_show.html:113 #, fuzzy msgid "please check cable" msgstr "controlla il cavo per favore" -#: plinth/modules/networks/templates/connection_show.html:133 -#: plinth/modules/networks/templates/connection_show.html:149 +#: plinth/modules/networks/templates/connection_show.html:118 +#: plinth/modules/networks/templates/connection_show.html:134 msgid "Speed" msgstr "Velocità" -#: plinth/modules/networks/templates/connection_show.html:135 +#: plinth/modules/networks/templates/connection_show.html:120 #, python-format msgid "%(ethernet_speed)s Mbit/s" msgstr "%(ethernet_speed)s Mbit/s" -#: plinth/modules/networks/templates/connection_show.html:151 +#: plinth/modules/networks/templates/connection_show.html:136 #, python-format msgid "%(wireless_bitrate)s Mbit/s" msgstr "%(wireless_bitrate)s Mbit/s" -#: plinth/modules/networks/templates/connection_show.html:163 +#: plinth/modules/networks/templates/connection_show.html:148 msgid "Signal strength" msgstr "Potenza segnale" -#: plinth/modules/networks/templates/connection_show.html:181 +#: plinth/modules/networks/templates/connection_show.html:166 msgid "IPv4" msgstr "IPv4" -#: plinth/modules/networks/templates/connection_show.html:186 -#: plinth/modules/networks/templates/connection_show.html:227 -#: plinth/modules/shadowsocks/forms.py:64 +#: plinth/modules/networks/templates/connection_show.html:171 +#: plinth/modules/networks/templates/connection_show.html:212 +#: plinth/modules/shadowsocks/forms.py:49 msgid "Method" msgstr "Metodo" -#: plinth/modules/networks/templates/connection_show.html:193 -#: plinth/modules/networks/templates/connection_show.html:234 +#: plinth/modules/networks/templates/connection_show.html:178 +#: plinth/modules/networks/templates/connection_show.html:219 msgid "IP address" msgstr "Indirizso IP" -#: plinth/modules/networks/templates/connection_show.html:209 -#: plinth/modules/networks/templates/connection_show.html:248 +#: plinth/modules/networks/templates/connection_show.html:194 +#: plinth/modules/networks/templates/connection_show.html:233 msgid "DNS server" msgstr "Server DNS" -#: plinth/modules/networks/templates/connection_show.html:216 -#: plinth/modules/networks/templates/connection_show.html:255 -#: plinth/modules/storage/forms.py:156 +#: plinth/modules/networks/templates/connection_show.html:201 +#: plinth/modules/networks/templates/connection_show.html:240 +#: plinth/modules/storage/forms.py:141 msgid "Default" msgstr "Default" -#: plinth/modules/networks/templates/connection_show.html:222 +#: plinth/modules/networks/templates/connection_show.html:207 msgid "IPv6" msgstr "IPv6" -#: plinth/modules/networks/templates/connection_show.html:263 +#: plinth/modules/networks/templates/connection_show.html:248 msgid "This connection is not active." msgstr "Questa connessione non è attiva." -#: plinth/modules/networks/templates/connection_show.html:266 -#: plinth/modules/security/__init__.py:38 plinth/modules/security/views.py:47 +#: plinth/modules/networks/templates/connection_show.html:251 +#: plinth/modules/security/__init__.py:45 msgid "Security" msgstr "Sicurezza" -#: plinth/modules/networks/templates/connection_show.html:271 -#: plinth/modules/networks/templates/connection_show.html:291 -#: plinth/modules/networks/templates/connection_show.html:310 +#: plinth/modules/networks/templates/connection_show.html:256 +#: plinth/modules/networks/templates/connection_show.html:276 +#: plinth/modules/networks/templates/connection_show.html:295 msgid "Firewall zone" msgstr "Zona firewall" -#: plinth/modules/networks/templates/connection_show.html:280 +#: plinth/modules/networks/templates/connection_show.html:265 msgid "" "This interface should be connected to a local network/machine. If you " "connect this interface to a public network, services meant to be available " @@ -3879,7 +3956,7 @@ msgstr "" "essere disponibili solo internamente, saranno disponibili anche " "esternamente. Questo rappresenta un rischio per la sicurezza." -#: plinth/modules/networks/templates/connection_show.html:300 +#: plinth/modules/networks/templates/connection_show.html:285 msgid "" "This interface should receive your Internet connection. If you connect it to " "a local network/machine, many services meant to available only internally " @@ -3889,7 +3966,7 @@ msgstr "" "connessa ad una rete/macchina locale, molti servizi impostati per funzionare " "solo internamente, non saranno disponibili." -#: plinth/modules/networks/templates/connection_show.html:319 +#: plinth/modules/networks/templates/connection_show.html:304 #, python-format msgid "" "This interface is not maintained by %(box_name)s. Its security status is " @@ -3902,114 +3979,139 @@ msgstr "" "essere disponibili su questa interfaccia. È consigliabile disattivare o " "cancellare questa connessione e riconfigurarla." -#: plinth/modules/networks/templates/connections_create.html:34 +#: plinth/modules/networks/templates/connections_create.html:19 msgid "Create Connection" msgstr "Crea Connessione" -#: plinth/modules/networks/templates/connections_delete.html:29 +#: plinth/modules/networks/templates/connections_delete.html:14 #, python-format msgid "Delete connection %(name)s permanently?" msgstr "Cancellare definitivamente %(name)s la connessione?" -#: plinth/modules/networks/templates/connections_diagram.html:65 +#: plinth/modules/networks/templates/connections_diagram.html:50 msgid "Internet" msgstr "Internet" -#: plinth/modules/networks/templates/connections_diagram.html:70 -#: plinth/modules/networks/templates/connections_diagram.html:102 +#: plinth/modules/networks/templates/connections_diagram.html:55 +#: plinth/modules/networks/templates/connections_diagram.html:87 msgid "Spacing" msgstr "" -#: plinth/modules/networks/templates/connections_diagram.html:83 -#: plinth/modules/networks/templates/connections_diagram.html:113 -#: plinth/network.py:40 +#: plinth/modules/networks/templates/connections_diagram.html:68 +#: plinth/modules/networks/templates/connections_diagram.html:98 +#: plinth/network.py:25 msgid "Ethernet" msgstr "Ethernet" -#: plinth/modules/networks/templates/connections_diagram.html:86 -#: plinth/modules/networks/templates/connections_diagram.html:116 -#: plinth/network.py:41 +#: plinth/modules/networks/templates/connections_diagram.html:71 +#: plinth/modules/networks/templates/connections_diagram.html:101 +#: plinth/network.py:26 msgid "Wi-Fi" msgstr "Wi-Fi" -#: plinth/modules/networks/templates/connections_diagram.html:89 +#: plinth/modules/networks/templates/connections_diagram.html:74 #, python-format msgid "Show connection %(connection.name)s" msgstr "Mostra connessione %(connection.name)s" -#: plinth/modules/networks/templates/connections_diagram.html:119 +#: plinth/modules/networks/templates/connections_diagram.html:104 #, python-format msgid "Show connection %(name)s" msgstr "Mostra connessione %(name)s" -#: plinth/modules/networks/templates/connections_diagram.html:131 +#: plinth/modules/networks/templates/connections_diagram.html:116 msgid "Computer" msgstr "Computer" -#: plinth/modules/networks/templates/connections_list.html:58 +#: plinth/modules/networks/templates/connections_list.html:8 #, fuzzy #| msgid "Connection" msgid "Connections" msgstr "Connessione" -#: plinth/modules/networks/templates/connections_list.html:79 +#: plinth/modules/networks/templates/connections_list.html:29 #, python-format msgid "Delete connection %(name)s" msgstr "Cancella connessione %(name)s" -#: plinth/modules/networks/templates/connections_list.html:104 +#: plinth/modules/networks/templates/connections_list.html:54 msgid "Active" msgstr "Attiva" -#: plinth/modules/networks/templates/connections_list.html:107 +#: plinth/modules/networks/templates/connections_list.html:57 msgid "Inactive" msgstr "Inattiva" -#: plinth/modules/networks/templates/connections_list.html:124 -#, python-format -msgid "%(box_name)s Internet Connectivity" +#: plinth/modules/networks/templates/connections_type_select.html:19 +msgid "Create..." +msgstr "Crea..." + +#: plinth/modules/networks/templates/internet_connectivity_content.html:10 +msgid "What Type Of Internet Connection Do You Have?" msgstr "" -#: plinth/modules/networks/templates/connections_list.html:129 -#, python-format +#: plinth/modules/networks/templates/internet_connectivity_content.html:16 msgid "" -"The following best describes how your %(box_name)s is connected in your " -"network. This information is used only to suggest necessary configuration " -"actions." +"Select an option that best describes the type of Internet connection. This " +"information is used only to guide you with further setup." msgstr "" -#: plinth/modules/networks/templates/connections_list.html:137 -#, python-format +#: plinth/modules/networks/templates/internet_connectivity_firstboot.html:18 +#: plinth/modules/networks/templates/router_configuration_firstboot.html:18 +msgid "Skip this step" +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_firstboot.html:19 +#: plinth/modules/networks/templates/router_configuration_firstboot.html:19 +msgid "Next" +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:9 +#, fuzzy +#| msgid "Connection Type" +msgid "Your Internet Connection Type" +msgstr "Tipo Connessione" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:14 msgid "" -"Your %(box_name)s gets its internet from your Router via WiFi or Ethernet " -"cable. This is a typical home setup." +"The following best describes the type of Internet connection provided by " +"your ISP. This information is only used to suggest you necessary " +"configuration actions." msgstr "" -#: plinth/modules/networks/templates/connections_list.html:145 -#: plinth/modules/networks/templates/connections_list.html:147 +#: plinth/modules/networks/templates/internet_connectivity_main.html:23 +msgid "My ISP provides a public IP address that does not change over time." +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:27 +msgid "My ISP provides a public IP address that may change over time." +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:31 +msgid "My ISP does not provide a public IP address." +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:37 +#: plinth/modules/networks/templates/router_configuration_main.html:29 #, fuzzy #| msgid "Create..." msgid "Update..." msgstr "Crea..." -#: plinth/modules/networks/templates/connections_type_select.html:34 -msgid "Create..." -msgstr "Crea..." - -#: plinth/modules/networks/templates/router_configuration_content.html:25 +#: plinth/modules/networks/templates/router_configuration_content.html:10 #, fuzzy, python-format #| msgid "%(box_name)s is up to date." msgid "Setup %(box_name)s Behind a Router" msgstr "%(box_name)s è aggiornato." -#: plinth/modules/networks/templates/router_configuration_content.html:31 +#: plinth/modules/networks/templates/router_configuration_content.html:16 #, python-format msgid "" "Your %(box_name)s gets its internet connection from your router via Wi-Fi or " "Ethernet cable. This is a typical home setup." msgstr "" -#: plinth/modules/networks/templates/router_configuration_content.html:38 +#: plinth/modules/networks/templates/router_configuration_content.html:23 #, python-format msgid "" "With this setup, any device on the internet trying to reach your " @@ -4018,24 +4120,24 @@ msgid "" "the services." msgstr "" -#: plinth/modules/networks/templates/router_configuration_content.html:47 +#: plinth/modules/networks/templates/router_configuration_content.html:32 msgid "" "If you don't have control over your router, choose not to configure it. To " -"see options, to overcome this limitation, choose 'no public address' option " +"see options to overcome this limitation, choose 'no public address' option " "in Internet connection type selection." msgstr "" -#: plinth/modules/networks/templates/router_configuration_content.html:54 +#: plinth/modules/networks/templates/router_configuration_content.html:39 msgid "Choose How You Wish to Configure Your Router" msgstr "" -#: plinth/modules/networks/templates/router_configuration_content.html:57 +#: plinth/modules/networks/templates/router_configuration_content.html:42 msgid "" "You will need to login to your router's administration console provided by " "the router. This may look like one of the following:" msgstr "" -#: plinth/modules/networks/templates/router_configuration_content.html:69 +#: plinth/modules/networks/templates/router_configuration_content.html:54 msgid "" "The username and password is configured by you when you first setup the " "router. For many routers, this information is printed at the back of the " @@ -4045,24 +4147,27 @@ msgid "" "full instructions on how to perform this task." msgstr "" -#: plinth/modules/networks/templates/router_configuration_firstboot.html:33 -msgid "skip this step" +#: plinth/modules/networks/templates/router_configuration_main.html:9 +#, python-format +msgid "%(box_name)s Internet Connectivity" msgstr "" -#: plinth/modules/networks/templates/router_configuration_firstboot.html:35 -msgid "Next" +#: plinth/modules/networks/templates/router_configuration_main.html:15 +#, python-format +msgid "" +"The following best describes how your %(box_name)s is connected in your " +"network. This information is used only to suggest necessary configuration " +"actions." msgstr "" -#: plinth/modules/openvpn/__init__.py:39 plinth/modules/openvpn/manifest.py:33 -msgid "OpenVPN" -msgstr "OpenVPN" +#: plinth/modules/networks/templates/router_configuration_main.html:23 +#, python-format +msgid "" +"Your %(box_name)s gets its Internet from your Router via Wi-Fi or Ethernet " +"cable. This is a typical home setup." +msgstr "" -#: plinth/modules/openvpn/__init__.py:43 -#: plinth/modules/wireguard/__init__.py:40 -msgid "Virtual Private Network" -msgstr "Rete virtuale privata" - -#: plinth/modules/openvpn/__init__.py:47 +#: plinth/modules/openvpn/__init__.py:26 #, python-brace-format msgid "" "Virtual Private Network (VPN) is a technique for securely connecting two " @@ -4079,22 +4184,31 @@ msgstr "" "accedere al resto della rete Internet via {box_name} per una maggiore " "sicurezza e anonimità." -#: plinth/modules/openvpn/__init__.py:79 +#: plinth/modules/openvpn/__init__.py:49 plinth/modules/openvpn/manifest.py:18 +msgid "OpenVPN" +msgstr "OpenVPN" + +#: plinth/modules/openvpn/__init__.py:50 +#: plinth/modules/wireguard/__init__.py:53 +msgid "Virtual Private Network" +msgstr "Rete virtuale privata" + +#: plinth/modules/openvpn/__init__.py:61 #, python-brace-format msgid "" "Download Profile" msgstr "" " Scarica Profilo " -#: plinth/modules/openvpn/forms.py:27 +#: plinth/modules/openvpn/forms.py:12 msgid "Enable OpenVPN server" msgstr "Abilita server OpenVPN" -#: plinth/modules/openvpn/manifest.py:63 -msgid "TunnelBlick" +#: plinth/modules/openvpn/manifest.py:48 +msgid "Tunnelblick" msgstr "" -#: plinth/modules/openvpn/templates/openvpn.html:42 +#: plinth/modules/openvpn/templates/openvpn.html:27 #, python-format msgid "" "OpenVPN has not yet been setup. Performing a secure setup takes a very long " @@ -4106,15 +4220,15 @@ msgstr "" "impiegare anche delle ore. Se il setup viene interroto, è possibile " "riavviarlo." -#: plinth/modules/openvpn/templates/openvpn.html:55 +#: plinth/modules/openvpn/templates/openvpn.html:40 msgid "Start setup" msgstr "Avvia setup" -#: plinth/modules/openvpn/templates/openvpn.html:64 +#: plinth/modules/openvpn/templates/openvpn.html:49 msgid "OpenVPN setup is running" msgstr "Setup OpenVPN in corso" -#: plinth/modules/openvpn/templates/openvpn.html:68 +#: plinth/modules/openvpn/templates/openvpn.html:53 #, python-format msgid "" "To perform a secure setup, this process takes a very long time. Depending " @@ -4126,11 +4240,11 @@ msgstr "" "alcune ore. Se il setup viene interrotto, è sempre possibile avviarlo di " "nuovo." -#: plinth/modules/openvpn/templates/openvpn.html:87 +#: plinth/modules/openvpn/templates/openvpn.html:72 msgid "Profile" msgstr "Profilo" -#: plinth/modules/openvpn/templates/openvpn.html:90 +#: plinth/modules/openvpn/templates/openvpn.html:75 #, fuzzy, python-format #| msgid "" #| "To connect to %(box_name)s's VPN, you need to download a profile and feed " @@ -4150,33 +4264,25 @@ msgstr "" "Vedi il manuale sui client raccomandati e su come configurarli." -#: plinth/modules/openvpn/templates/openvpn.html:100 +#: plinth/modules/openvpn/templates/openvpn.html:85 #, python-format msgid "Profile is specific to each user of %(box_name)s. Keep it a secret." msgstr "" "Il profilo è specifico per ogni utente del %(box_name)s. Mantienilo segreto." -#: plinth/modules/openvpn/templates/openvpn.html:111 +#: plinth/modules/openvpn/templates/openvpn.html:96 msgid "Download my profile" msgstr "Scarica il mio profilo" -#: plinth/modules/openvpn/views.py:133 +#: plinth/modules/openvpn/views.py:114 msgid "Setup completed." msgstr "Setup completato." -#: plinth/modules/openvpn/views.py:135 +#: plinth/modules/openvpn/views.py:116 msgid "Setup failed." msgstr "Setup fallito." -#: plinth/modules/pagekite/__init__.py:39 -msgid "PageKite" -msgstr "PageKite" - -#: plinth/modules/pagekite/__init__.py:41 -msgid "Public Visibility" -msgstr "Visibilità Pubblica" - -#: plinth/modules/pagekite/__init__.py:45 +#: plinth/modules/pagekite/__init__.py:26 #, python-brace-format msgid "" "PageKite is a system for exposing {box_name} services when you don't have a " @@ -4189,18 +4295,18 @@ msgstr "" "il tuo {box_name} non è raggiungibile dall'esterno. Questo include le " "situazioni seguenti:" -#: plinth/modules/pagekite/__init__.py:50 +#: plinth/modules/pagekite/__init__.py:31 #, python-brace-format msgid "{box_name} is behind a restricted firewall." msgstr "{box_name} è valle di un firewall ristretto." -#: plinth/modules/pagekite/__init__.py:53 +#: plinth/modules/pagekite/__init__.py:34 #, python-brace-format msgid "{box_name} is connected to a (wireless) router which you don't control." msgstr "" "{box_name} è connesso ad un router (wireless) di cui non hai il controllo." -#: plinth/modules/pagekite/__init__.py:55 +#: plinth/modules/pagekite/__init__.py:36 msgid "" "Your ISP does not provide you an external IP address and instead provides " "Internet connection through NAT." @@ -4208,7 +4314,7 @@ msgstr "" "Il tuo ISP non ti assegna un IP pubblico ma ti fornisce una connessione " "tramite NAT." -#: plinth/modules/pagekite/__init__.py:57 +#: plinth/modules/pagekite/__init__.py:38 msgid "" "Your ISP does not provide you a static IP address and your IP address " "changes every time you connect to Internet." @@ -4216,11 +4322,11 @@ msgstr "" "Il tuo ISP non ti fornisce un IP statico e il tuo IP cambia ogni volta che " "ti connetti a Internet." -#: plinth/modules/pagekite/__init__.py:59 +#: plinth/modules/pagekite/__init__.py:40 msgid "Your ISP limits incoming connections." msgstr "Il tuo ISP limita le connessioni in entrata." -#: plinth/modules/pagekite/__init__.py:61 +#: plinth/modules/pagekite/__init__.py:42 #, fuzzy, python-brace-format #| msgid "" #| "PageKite works around NAT, firewalls and IP-address limitations by using " @@ -4239,17 +4345,25 @@ msgstr "" "pagekite, per esempio pagekite.net. In " "futuro potrebbe essere usare il {box_name} del tuo amico." -#: plinth/modules/pagekite/__init__.py:87 +#: plinth/modules/pagekite/__init__.py:62 +msgid "PageKite" +msgstr "PageKite" + +#: plinth/modules/pagekite/__init__.py:64 +msgid "Public Visibility" +msgstr "Visibilità Pubblica" + +#: plinth/modules/pagekite/__init__.py:74 #, fuzzy #| msgid "PageKite Account" msgid "PageKite Domain" msgstr "Profilo PageKite" -#: plinth/modules/pagekite/forms.py:66 +#: plinth/modules/pagekite/forms.py:51 msgid "Server domain" msgstr "Dominio server" -#: plinth/modules/pagekite/forms.py:68 +#: plinth/modules/pagekite/forms.py:53 msgid "" "Select your pagekite server. Set \"pagekite.net\" to use the default " "pagekite.net server." @@ -4257,31 +4371,31 @@ msgstr "" "Selezione il tuo server pagekite. Imposta \"pagekite.net\" per usare il " "server predefinito di pagekite.net." -#: plinth/modules/pagekite/forms.py:71 plinth/modules/shadowsocks/forms.py:55 +#: plinth/modules/pagekite/forms.py:56 plinth/modules/shadowsocks/forms.py:40 msgid "Server port" msgstr "Porta server" -#: plinth/modules/pagekite/forms.py:72 +#: plinth/modules/pagekite/forms.py:57 msgid "Port of your pagekite server (default: 80)" msgstr "Porta del tuo server pagekite (predefinita: 80)" -#: plinth/modules/pagekite/forms.py:74 +#: plinth/modules/pagekite/forms.py:59 msgid "Kite name" msgstr "Nome Kite" -#: plinth/modules/pagekite/forms.py:75 +#: plinth/modules/pagekite/forms.py:60 msgid "Example: mybox.pagekite.me" msgstr "Esempio: mybox.pagekite.me" -#: plinth/modules/pagekite/forms.py:77 +#: plinth/modules/pagekite/forms.py:62 msgid "Invalid kite name" msgstr "Nome Kite invalido" -#: plinth/modules/pagekite/forms.py:81 +#: plinth/modules/pagekite/forms.py:66 msgid "Kite secret" msgstr "Segreto Kite" -#: plinth/modules/pagekite/forms.py:82 +#: plinth/modules/pagekite/forms.py:67 msgid "" "A secret associated with the kite or the default secret for your account if " "no secret is set on the kite." @@ -4289,43 +4403,43 @@ msgstr "" "Un segreto associate col kite o il segreto predefinito del tuo profile nel " "caso non sia state impostato nel kite." -#: plinth/modules/pagekite/forms.py:98 +#: plinth/modules/pagekite/forms.py:83 msgid "Kite details set" msgstr "Dettagli kite configurati" -#: plinth/modules/pagekite/forms.py:105 +#: plinth/modules/pagekite/forms.py:90 msgid "Pagekite server set" msgstr "Server PageKite configurato" -#: plinth/modules/pagekite/forms.py:129 +#: plinth/modules/pagekite/forms.py:114 msgid "PageKite enabled" msgstr "PageKite abilitato" -#: plinth/modules/pagekite/forms.py:132 +#: plinth/modules/pagekite/forms.py:117 msgid "PageKite disabled" msgstr "PageKite disabilitato" -#: plinth/modules/pagekite/forms.py:148 +#: plinth/modules/pagekite/forms.py:133 msgid "protocol" msgstr "protocollo" -#: plinth/modules/pagekite/forms.py:151 +#: plinth/modules/pagekite/forms.py:136 msgid "external (frontend) port" msgstr "porta esterna (frontend)" -#: plinth/modules/pagekite/forms.py:154 +#: plinth/modules/pagekite/forms.py:139 msgid "internal (freedombox) port" msgstr "porta interna (freedombox)" -#: plinth/modules/pagekite/forms.py:155 +#: plinth/modules/pagekite/forms.py:140 msgid "Enable Subdomains" msgstr "Abilita Sottodomini" -#: plinth/modules/pagekite/forms.py:189 +#: plinth/modules/pagekite/forms.py:174 msgid "Deleted custom service" msgstr "Cancella servizio personalizzato" -#: plinth/modules/pagekite/forms.py:222 +#: plinth/modules/pagekite/forms.py:207 msgid "" "This service is available as a standard service. Please use the \"Standard " "Services\" page to enable it." @@ -4333,45 +4447,45 @@ msgstr "" "Questo servizio è disponibile come servizio standard. Prego, usa la pagina " "\"Servizi Standard\" per abilitarli." -#: plinth/modules/pagekite/forms.py:231 +#: plinth/modules/pagekite/forms.py:216 msgid "Added custom service" msgstr "Servizio personalizzato aggiunto" -#: plinth/modules/pagekite/forms.py:234 +#: plinth/modules/pagekite/forms.py:219 msgid "This service already exists" msgstr "Questo servizio è già presente" -#: plinth/modules/pagekite/templates/pagekite_configure.html:47 +#: plinth/modules/pagekite/templates/pagekite_configure.html:32 msgid "Custom Services" msgstr "Servizi personalizzati" -#: plinth/modules/pagekite/templates/pagekite_configure.html:50 -#: plinth/modules/pagekite/templates/pagekite_configure.html:52 +#: plinth/modules/pagekite/templates/pagekite_configure.html:35 +#: plinth/modules/pagekite/templates/pagekite_configure.html:37 #, fuzzy #| msgid "Custom Services" msgid "Add Custom Service" msgstr "Servizi personalizzati" -#: plinth/modules/pagekite/templates/pagekite_configure.html:57 +#: plinth/modules/pagekite/templates/pagekite_configure.html:42 msgid "Existing custom services" msgstr "Servizi personalizzati esistenti" -#: plinth/modules/pagekite/templates/pagekite_configure.html:71 +#: plinth/modules/pagekite/templates/pagekite_configure.html:56 #, python-format msgid "connected to %(backend_host)s:%(backend_port)s" msgstr "connesso a %(backend_host)s: %(backend_port)s" -#: plinth/modules/pagekite/templates/pagekite_configure.html:83 +#: plinth/modules/pagekite/templates/pagekite_configure.html:68 msgid "Delete this service" msgstr "Cancella questo servizio" -#: plinth/modules/pagekite/templates/pagekite_custom_services.html:30 +#: plinth/modules/pagekite/templates/pagekite_custom_services.html:15 #, fuzzy #| msgid "Added custom service" msgid "Add custom PageKite service" msgstr "Servizio personalizzato aggiunto" -#: plinth/modules/pagekite/templates/pagekite_custom_services.html:32 +#: plinth/modules/pagekite/templates/pagekite_custom_services.html:17 msgid "" "Warning:imaps://imap.gmail.com. "
@@ -4753,17 +4857,22 @@ msgid ""
"a>)."
msgstr ""
-#: plinth/modules/samba/__init__.py:46
-msgid "Samba"
+#: plinth/modules/roundcube/__init__.py:54
+#: plinth/modules/roundcube/manifest.py:9
+msgid "Roundcube"
+msgstr "Roundcube"
+
+#: plinth/modules/roundcube/__init__.py:55
+msgid "Email Client"
msgstr ""
-#: plinth/modules/samba/__init__.py:53
+#: plinth/modules/samba/__init__.py:32
msgid ""
"Samba allows to share files and folders between FreedomBox and other "
"computers in your local network."
msgstr ""
-#: plinth/modules/samba/__init__.py:56
+#: plinth/modules/samba/__init__.py:35
#, python-brace-format
msgid ""
"After installation, you can choose which disks to use for sharing. Enabled "
@@ -4772,55 +4881,59 @@ msgid ""
"There are three types of shares you can choose from: "
msgstr ""
-#: plinth/modules/samba/__init__.py:61
+#: plinth/modules/samba/__init__.py:40
msgid "Open share - accessible to everyone in your local network."
msgstr ""
-#: plinth/modules/samba/__init__.py:62
+#: plinth/modules/samba/__init__.py:41
msgid ""
"Group share - accessible only to FreedomBox users who are in the freedombox-"
"share group."
msgstr ""
-#: plinth/modules/samba/__init__.py:64
+#: plinth/modules/samba/__init__.py:43
msgid ""
"Home share - every user in the freedombox-share group can have their own "
"private space."
msgstr ""
-#: plinth/modules/samba/__init__.py:68
+#: plinth/modules/samba/__init__.py:47
msgid "Access to the private shares"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:39
-#: plinth/modules/samba/templates/samba.html:50
+#: plinth/modules/samba/__init__.py:61
+msgid "Samba"
+msgstr ""
+
+#: plinth/modules/samba/templates/samba.html:24
+#: plinth/modules/samba/templates/samba.html:35
#, fuzzy
#| msgid "Shared"
msgid "Shares"
msgstr "Condiviso"
-#: plinth/modules/samba/templates/samba.html:41
+#: plinth/modules/samba/templates/samba.html:26
msgid ""
"Note: Only specially created directories will be shared on selected disks, "
"not the whole disk."
msgstr ""
-#: plinth/modules/samba/templates/samba.html:49
+#: plinth/modules/samba/templates/samba.html:34
#, fuzzy
#| msgid "Domain Name"
msgid "Disk Name"
msgstr "Nome dominio"
-#: plinth/modules/samba/templates/samba.html:51
-#: plinth/modules/storage/templates/storage.html:44
+#: plinth/modules/samba/templates/samba.html:36
+#: plinth/modules/storage/templates/storage.html:29
msgid "Used"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:72
+#: plinth/modules/samba/templates/samba.html:57
msgid "VFAT partitions are not supported"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:103
+#: plinth/modules/samba/templates/samba.html:88
#, python-format
msgid ""
"You can find additional information about disks on the users module page."
msgstr ""
-#: plinth/modules/samba/templates/samba.html:109
+#: plinth/modules/samba/templates/samba.html:94
msgid "Users who can currently access group and home shares"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:113
+#: plinth/modules/samba/templates/samba.html:98
msgid ""
"Users needing to re-enter their password on the password change page to "
"access group and home shares"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:118
+#: plinth/modules/samba/templates/samba.html:103
#, fuzzy
#| msgid "Available Domains"
msgid "Unavailable Shares"
msgstr "Domini disponibili"
-#: plinth/modules/samba/templates/samba.html:120
+#: plinth/modules/samba/templates/samba.html:105
msgid ""
"Shares that are configured but the disk is not available. If the disk is "
"plugged back in, sharing will be automatically enabled."
msgstr ""
-#: plinth/modules/samba/templates/samba.html:128
+#: plinth/modules/samba/templates/samba.html:113
#, fuzzy
#| msgid "Kite name"
msgid "Share name"
msgstr "Nome Kite"
-#: plinth/modules/samba/templates/samba.html:129
+#: plinth/modules/samba/templates/samba.html:114
#, fuzzy
#| msgid "Actions"
msgid "Action"
msgstr "Azioni"
-#: plinth/modules/samba/views.py:61 plinth/modules/storage/forms.py:164
+#: plinth/modules/samba/views.py:43 plinth/modules/storage/forms.py:149
#, fuzzy
#| msgid "Shared"
msgid "Open Share"
msgstr "Condiviso"
-#: plinth/modules/samba/views.py:62 plinth/modules/storage/forms.py:162
+#: plinth/modules/samba/views.py:44 plinth/modules/storage/forms.py:147
msgid "Group Share"
msgstr ""
-#: plinth/modules/samba/views.py:63
+#: plinth/modules/samba/views.py:45
#, fuzzy
#| msgid "Shared"
msgid "Home Share"
msgstr "Condiviso"
-#: plinth/modules/samba/views.py:96
+#: plinth/modules/samba/views.py:78
#, fuzzy
#| msgid "PageKite enabled"
msgid "Share enabled."
msgstr "PageKite abilitato"
-#: plinth/modules/samba/views.py:101
+#: plinth/modules/samba/views.py:83
#, fuzzy, python-brace-format
msgid "Error enabling share: {error_message}"
msgstr "Errore installazione applicazione: {error}"
-#: plinth/modules/samba/views.py:106
+#: plinth/modules/samba/views.py:88
#, fuzzy
#| msgid "PageKite disabled"
msgid "Share disabled."
msgstr "PageKite disabilitato"
-#: plinth/modules/samba/views.py:111
+#: plinth/modules/samba/views.py:93
#, fuzzy, python-brace-format
msgid "Error disabling share: {error_message}"
msgstr "Errore installazione applicazione: {error}"
-#: plinth/modules/searx/__init__.py:41 plinth/modules/searx/manifest.py:24
-msgid "Searx"
-msgstr "Searx"
-
-#: plinth/modules/searx/__init__.py:45
-msgid "Web Search"
-msgstr ""
-
-#: plinth/modules/searx/__init__.py:48
+#: plinth/modules/searx/__init__.py:25
msgid ""
"Searx is a privacy-respecting Internet metasearch engine. It aggregrates and "
"displays results from multiple search engines."
msgstr ""
-#: plinth/modules/searx/__init__.py:50
+#: plinth/modules/searx/__init__.py:27
msgid ""
"Searx can be used to avoid tracking and profiling by search engines. It "
"stores no cookies by default."
msgstr ""
-#: plinth/modules/searx/__init__.py:54
+#: plinth/modules/searx/__init__.py:31
msgid "Search the web"
msgstr ""
-#: plinth/modules/searx/forms.py:30
+#: plinth/modules/searx/__init__.py:47 plinth/modules/searx/manifest.py:9
+msgid "Searx"
+msgstr "Searx"
+
+#: plinth/modules/searx/__init__.py:48
+msgid "Web Search"
+msgstr ""
+
+#: plinth/modules/searx/forms.py:15
msgid "Safe Search"
msgstr ""
-#: plinth/modules/searx/forms.py:31
+#: plinth/modules/searx/forms.py:16
msgid "Select the default family filter to apply to your search results."
msgstr ""
-#: plinth/modules/searx/forms.py:32
+#: plinth/modules/searx/forms.py:17
msgid "None"
msgstr ""
-#: plinth/modules/searx/forms.py:32
+#: plinth/modules/searx/forms.py:17
msgid "Moderate"
msgstr ""
-#: plinth/modules/searx/forms.py:32
+#: plinth/modules/searx/forms.py:17
msgid "Strict"
msgstr ""
-#: plinth/modules/searx/forms.py:35
+#: plinth/modules/searx/forms.py:20
msgid "Allow Public Access"
msgstr ""
-#: plinth/modules/searx/forms.py:36
+#: plinth/modules/searx/forms.py:21
msgid "Allow this application to be used by anyone who can reach it."
msgstr ""
-#: plinth/modules/searx/views.py:59 plinth/modules/searx/views.py:70
-#: plinth/modules/tor/views.py:149 plinth/modules/tor/views.py:176
+#: plinth/modules/searx/views.py:39 plinth/modules/searx/views.py:50
+#: plinth/modules/tor/views.py:130 plinth/modules/tor/views.py:157
msgid "Configuration updated."
msgstr ""
-#: plinth/modules/security/forms.py:28
+#: plinth/modules/security/forms.py:13
msgid "Restrict console logins (recommended)"
msgstr ""
-#: plinth/modules/security/forms.py:29
+#: plinth/modules/security/forms.py:14
msgid ""
"When this option is enabled, only users in the \"admin\" group will be able "
"to log in to console or via SSH. Console users may be able to access some "
"services without further authorization."
msgstr ""
-#: plinth/modules/security/forms.py:34
+#: plinth/modules/security/forms.py:19
msgid "Fail2Ban (recommended)"
msgstr ""
-#: plinth/modules/security/forms.py:35
+#: plinth/modules/security/forms.py:20
msgid ""
"When this option is enabled, Fail2Ban will limit brute force break-in "
"attempts to the SSH server and other enabled password protected internet-"
"services."
msgstr ""
-#: plinth/modules/security/templates/security.html:26
-#: plinth/modules/security/templates/security.html:28
+#: plinth/modules/security/templates/security.html:11
+#: plinth/modules/security/templates/security.html:13
#, fuzzy
#| msgid "Security"
msgid "Show security report"
msgstr "Sicurezza"
-#: plinth/modules/security/templates/security_report.html:25
-#: plinth/modules/security/views.py:87
+#: plinth/modules/security/templates/security_report.html:10
+#: plinth/modules/security/views.py:71
#, fuzzy
#| msgid "Security"
msgid "Security Report"
msgstr "Sicurezza"
-#: plinth/modules/security/templates/security_report.html:27
+#: plinth/modules/security/templates/security_report.html:12
#, python-format
msgid ""
"The installed version of FreedomBox has %(count)s reported security "
"vulnerabilities."
msgstr ""
-#: plinth/modules/security/templates/security_report.html:33
+#: plinth/modules/security/templates/security_report.html:18
msgid ""
"The following table lists the current reported number, and historical count, "
"of security vulnerabilities for each installed app."
msgstr ""
-#: plinth/modules/security/templates/security_report.html:39
+#: plinth/modules/security/templates/security_report.html:24
msgid ""
"For apps that provide services, the \"Sandboxed\" column shows whether "
"sandboxing features are in use. Sandboxing mitigates the impact of a "
"potentially compromised app to the rest of the system."
msgstr ""
-#: plinth/modules/security/templates/security_report.html:46
+#: plinth/modules/security/templates/security_report.html:31
msgid ""
"\"Sandbox Coverage\" is a score of how effectively the service is isolated "
"from the rest of the system. It is only displayed while the service is "
"running."
msgstr ""
-#: plinth/modules/security/templates/security_report.html:55
+#: plinth/modules/security/templates/security_report.html:40
#, fuzzy
#| msgid "Name"
msgid "App Name"
msgstr "Nome"
-#: plinth/modules/security/templates/security_report.html:56
+#: plinth/modules/security/templates/security_report.html:41
msgid "Current Vulnerabilities"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:57
+#: plinth/modules/security/templates/security_report.html:42
msgid "Past Vulnerabilities"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:58
+#: plinth/modules/security/templates/security_report.html:43
#, fuzzy
#| msgid "Block Sandbox"
msgid "Sandboxed"
msgstr "Block Sandbox"
-#: plinth/modules/security/templates/security_report.html:59
+#: plinth/modules/security/templates/security_report.html:44
#, fuzzy
#| msgid "Block Sandbox"
msgid "Sandbox Coverage"
msgstr "Block Sandbox"
-#: plinth/modules/security/templates/security_report.html:70
+#: plinth/modules/security/templates/security_report.html:55
msgid "N/A"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:72
+#: plinth/modules/security/templates/security_report.html:57
#, fuzzy
#| msgid "yes"
msgid "Yes"
msgstr "si"
-#: plinth/modules/security/templates/security_report.html:74
+#: plinth/modules/security/templates/security_report.html:59
msgid "No"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:81
+#: plinth/modules/security/templates/security_report.html:66
msgid "Not running"
msgstr ""
-#: plinth/modules/security/views.py:69
+#: plinth/modules/security/views.py:53
#, python-brace-format
msgid "Error setting restricted access: {exception}"
msgstr ""
-#: plinth/modules/security/views.py:72
+#: plinth/modules/security/views.py:56
msgid "Updated security configuration"
msgstr ""
-#: plinth/modules/shaarli/__init__.py:34 plinth/modules/shaarli/manifest.py:23
-msgid "Shaarli"
-msgstr "Shaarli"
-
-#: plinth/modules/shaarli/__init__.py:36
-msgid "Bookmarks"
-msgstr ""
-
-#: plinth/modules/shaarli/__init__.py:39
+#: plinth/modules/shaarli/__init__.py:20
msgid "Shaarli allows you to save and share bookmarks."
msgstr ""
-#: plinth/modules/shaarli/__init__.py:40
+#: plinth/modules/shaarli/__init__.py:21
msgid ""
"When enabled, Shaarli will be available from /shaarli path on the web server. Note that Shaarli "
@@ -5093,22 +5198,22 @@ msgid ""
"initial visit."
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:35
-msgid "Shadowsocks"
+#: plinth/modules/shaarli/__init__.py:39 plinth/modules/shaarli/manifest.py:8
+msgid "Shaarli"
+msgstr "Shaarli"
+
+#: plinth/modules/shaarli/__init__.py:40
+msgid "Bookmarks"
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:39
-msgid "Socks5 Proxy"
-msgstr ""
-
-#: plinth/modules/shadowsocks/__init__.py:46
+#: plinth/modules/shadowsocks/__init__.py:25
msgid ""
"Shadowsocks is a lightweight and secure SOCKS5 proxy, designed to protect "
"your Internet traffic. It can be used to bypass Internet filtering and "
"censorship."
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:50
+#: plinth/modules/shadowsocks/__init__.py:29
#, python-brace-format
msgid ""
"Your {box_name} can run a Shadowsocks client, that can connect to a "
@@ -5117,151 +5222,155 @@ msgid ""
"the Shadowsocks server."
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:55
+#: plinth/modules/shadowsocks/__init__.py:34
msgid ""
"To use Shadowsocks after setup, set the SOCKS5 proxy URL in your device, "
"browser or application to http://freedombox_address:1080/"
msgstr ""
-#: plinth/modules/shadowsocks/forms.py:28
-#: plinth/modules/shadowsocks/forms.py:29
+#: plinth/modules/shadowsocks/__init__.py:50
+msgid "Shadowsocks"
+msgstr ""
+
+#: plinth/modules/shadowsocks/__init__.py:52
+msgid "Socks5 Proxy"
+msgstr ""
+
+#: plinth/modules/shadowsocks/forms.py:13
+#: plinth/modules/shadowsocks/forms.py:14
msgid "Recommended"
msgstr ""
-#: plinth/modules/shadowsocks/forms.py:52
+#: plinth/modules/shadowsocks/forms.py:37
msgid "Server"
msgstr ""
-#: plinth/modules/shadowsocks/forms.py:53
+#: plinth/modules/shadowsocks/forms.py:38
msgid "Server hostname or IP address"
msgstr ""
-#: plinth/modules/shadowsocks/forms.py:57
+#: plinth/modules/shadowsocks/forms.py:42
msgid "Server port number"
msgstr ""
-#: plinth/modules/shadowsocks/forms.py:60
+#: plinth/modules/shadowsocks/forms.py:45
msgid "Password used to encrypt data. Must match server password."
msgstr ""
-#: plinth/modules/shadowsocks/forms.py:65
+#: plinth/modules/shadowsocks/forms.py:50
msgid "Encryption method. Must match setting on server."
msgstr ""
-#: plinth/modules/sharing/__init__.py:34
-msgid "Sharing"
-msgstr ""
-
-#: plinth/modules/sharing/__init__.py:38
+#: plinth/modules/sharing/__init__.py:21
#, python-brace-format
msgid ""
"Sharing allows you to share files and folders on your {box_name} over the "
"web with chosen groups of users."
msgstr ""
-#: plinth/modules/sharing/forms.py:33
+#: plinth/modules/sharing/__init__.py:38
+msgid "Sharing"
+msgstr ""
+
+#: plinth/modules/sharing/forms.py:18
msgid "Name of the share"
msgstr ""
-#: plinth/modules/sharing/forms.py:35
+#: plinth/modules/sharing/forms.py:20
msgid ""
"A lowercase alpha-numeric string that uniquely identifies a share. Example: "
"media."
msgstr ""
-#: plinth/modules/sharing/forms.py:39
+#: plinth/modules/sharing/forms.py:24
msgid "Path to share"
msgstr ""
-#: plinth/modules/sharing/forms.py:40
+#: plinth/modules/sharing/forms.py:25
msgid "Disk path to a folder on this server that you intend to share."
msgstr ""
-#: plinth/modules/sharing/forms.py:43
+#: plinth/modules/sharing/forms.py:28
#, fuzzy
#| msgid "Publish Key"
msgid "Public share"
msgstr "Importa chiave"
-#: plinth/modules/sharing/forms.py:44
+#: plinth/modules/sharing/forms.py:29
msgid "Make files in this folder available to anyone with the link."
msgstr ""
-#: plinth/modules/sharing/forms.py:48
+#: plinth/modules/sharing/forms.py:33
msgid "User groups that can read the files in the share"
msgstr ""
-#: plinth/modules/sharing/forms.py:50
+#: plinth/modules/sharing/forms.py:35
msgid ""
"Users of the selected user groups will be able to read the files in the "
"share."
msgstr ""
-#: plinth/modules/sharing/forms.py:67
+#: plinth/modules/sharing/forms.py:52
msgid "A share with this name already exists."
msgstr ""
-#: plinth/modules/sharing/forms.py:78
+#: plinth/modules/sharing/forms.py:63
msgid "Shares should be either public or shared with at least one group"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:39
-#: plinth/modules/sharing/templates/sharing.html:42
+#: plinth/modules/sharing/templates/sharing.html:24
+#: plinth/modules/sharing/templates/sharing.html:27
msgid "Add share"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:47
+#: plinth/modules/sharing/templates/sharing.html:32
msgid "No shares currently configured."
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:53
+#: plinth/modules/sharing/templates/sharing.html:38
msgid "Disk Path"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:54
+#: plinth/modules/sharing/templates/sharing.html:39
msgid "Shared Over"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:55
+#: plinth/modules/sharing/templates/sharing.html:40
msgid "With Groups"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:73
+#: plinth/modules/sharing/templates/sharing.html:58
msgid "public access"
msgstr ""
-#: plinth/modules/sharing/views.py:55
+#: plinth/modules/sharing/views.py:39
msgid "Share added."
msgstr ""
-#: plinth/modules/sharing/views.py:60
+#: plinth/modules/sharing/views.py:44
msgid "Add Share"
msgstr ""
-#: plinth/modules/sharing/views.py:75
+#: plinth/modules/sharing/views.py:59
msgid "Share edited."
msgstr ""
-#: plinth/modules/sharing/views.py:80
+#: plinth/modules/sharing/views.py:64
msgid "Edit Share"
msgstr ""
-#: plinth/modules/sharing/views.py:111
+#: plinth/modules/sharing/views.py:95
msgid "Share deleted."
msgstr ""
-#: plinth/modules/snapshot/__init__.py:37
-msgid "Storage Snapshots"
-msgstr ""
-
-#: plinth/modules/snapshot/__init__.py:40
+#: plinth/modules/snapshot/__init__.py:23
msgid ""
"Snapshots allows creating and managing btrfs file system snapshots. These "
"can be used to roll back the system to a previously known good state in case "
"of unwanted changes to the system."
msgstr ""
-#: plinth/modules/snapshot/__init__.py:44
+#: plinth/modules/snapshot/__init__.py:27
#, no-python-format
msgid ""
"Snapshots are taken periodically (called timeline snapshots) and also before "
@@ -5269,193 +5378,193 @@ msgid ""
"cleaned up according to the settings below."
msgstr ""
-#: plinth/modules/snapshot/__init__.py:47
+#: plinth/modules/snapshot/__init__.py:30
msgid ""
"Snapshots currently work on btrfs file systems only and on the root "
"partition only. Snapshots are not a replacement for backups since they can only be stored on the same partition. "
msgstr ""
-#: plinth/modules/snapshot/forms.py:27
+#: plinth/modules/snapshot/__init__.py:52
+msgid "Storage Snapshots"
+msgstr ""
+
+#: plinth/modules/snapshot/forms.py:12
msgid "Free Disk Space to Maintain"
msgstr ""
-#: plinth/modules/snapshot/forms.py:28
+#: plinth/modules/snapshot/forms.py:13
msgid ""
"Maintain this percentage of free space on the disk. If free space falls "
"below this value, older snapshots are removed until this much free space is "
"regained. The default value is 30%."
msgstr ""
-#: plinth/modules/snapshot/forms.py:35
+#: plinth/modules/snapshot/forms.py:20
msgid "Timeline Snapshots"
msgstr ""
-#: plinth/modules/snapshot/forms.py:36
+#: plinth/modules/snapshot/forms.py:21
msgid ""
"Enable or disable timeline snapshots (hourly, daily, monthly and yearly)."
msgstr ""
-#: plinth/modules/snapshot/forms.py:41
+#: plinth/modules/snapshot/forms.py:26
msgid "Software Installation Snapshots"
msgstr ""
-#: plinth/modules/snapshot/forms.py:42
+#: plinth/modules/snapshot/forms.py:27
msgid "Enable or disable snapshots before and after software installation"
msgstr ""
-#: plinth/modules/snapshot/forms.py:47
+#: plinth/modules/snapshot/forms.py:32
msgid "Hourly Snapshots Limit"
msgstr ""
-#: plinth/modules/snapshot/forms.py:48
+#: plinth/modules/snapshot/forms.py:33
msgid "Keep a maximum of this many hourly snapshots."
msgstr ""
-#: plinth/modules/snapshot/forms.py:51
+#: plinth/modules/snapshot/forms.py:36
msgid "Daily Snapshots Limit"
msgstr ""
-#: plinth/modules/snapshot/forms.py:52
+#: plinth/modules/snapshot/forms.py:37
msgid "Keep a maximum of this many daily snapshots."
msgstr ""
-#: plinth/modules/snapshot/forms.py:55
+#: plinth/modules/snapshot/forms.py:40
msgid "Weekly Snapshots Limit"
msgstr ""
-#: plinth/modules/snapshot/forms.py:56
+#: plinth/modules/snapshot/forms.py:41
msgid "Keep a maximum of this many weekly snapshots."
msgstr ""
-#: plinth/modules/snapshot/forms.py:59
+#: plinth/modules/snapshot/forms.py:44
msgid "Monthly Snapshots Limit"
msgstr ""
-#: plinth/modules/snapshot/forms.py:60
+#: plinth/modules/snapshot/forms.py:45
msgid "Keep a maximum of this many monthly snapshots."
msgstr ""
-#: plinth/modules/snapshot/forms.py:63
+#: plinth/modules/snapshot/forms.py:48
msgid "Yearly Snapshots Limit"
msgstr ""
-#: plinth/modules/snapshot/forms.py:64
+#: plinth/modules/snapshot/forms.py:49
msgid ""
"Keep a maximum of this many yearly snapshots. The default value is 0 "
"(disabled)."
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:27
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:12
msgid "Delete the following snapshots permanently?"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:31
-#: plinth/modules/snapshot/templates/snapshot_manage.html:43
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:39
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:16
+#: plinth/modules/snapshot/templates/snapshot_manage.html:28
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:24
msgid "Number"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:32
-#: plinth/modules/snapshot/templates/snapshot_manage.html:44
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:40
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:17
+#: plinth/modules/snapshot/templates/snapshot_manage.html:29
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:25
msgid "Date"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:52
-#: plinth/modules/snapshot/templates/snapshot_manage.html:37
-#: plinth/modules/snapshot/views.py:196
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:37
+#: plinth/modules/snapshot/templates/snapshot_manage.html:22
+#: plinth/modules/snapshot/views.py:175
msgid "Delete Snapshots"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_manage.html:33
+#: plinth/modules/snapshot/templates/snapshot_manage.html:18
msgid "Create Snapshot"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_manage.html:46
+#: plinth/modules/snapshot/templates/snapshot_manage.html:31
msgid "Rollback"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_manage.html:57
+#: plinth/modules/snapshot/templates/snapshot_manage.html:42
msgid "active"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_manage.html:66
+#: plinth/modules/snapshot/templates/snapshot_manage.html:51
#, python-format
msgid "Rollback to snapshot #%(number)s"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_not_supported.html:26
+#: plinth/modules/snapshot/templates/snapshot_not_supported.html:11
#, python-format
msgid ""
"Your have a filesystem of type %(fs_type)s. Snapshots are "
"currently only available on %(types_supported)s filesystems."
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:27
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:12
msgid "Roll back the system to this snapshot?"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:30
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:15
msgid ""
"A new snapshot with the current state of the file system will be "
"automatically created. You will be able to undo a rollback by reverting to "
"the newly created snapshot."
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:57
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:42
#, python-format
msgid "Rollback to Snapshot #%(number)s"
msgstr ""
-#: plinth/modules/snapshot/views.py:45
+#: plinth/modules/snapshot/views.py:30
msgid "Manage Snapshots"
msgstr ""
-#: plinth/modules/snapshot/views.py:98
+#: plinth/modules/snapshot/views.py:79
msgid "Created snapshot."
msgstr ""
-#: plinth/modules/snapshot/views.py:156
+#: plinth/modules/snapshot/views.py:135
msgid "Storage snapshots configuration updated"
msgstr ""
-#: plinth/modules/snapshot/views.py:160 plinth/modules/tor/views.py:79
+#: plinth/modules/snapshot/views.py:139 plinth/modules/tor/views.py:60
#, python-brace-format
msgid "Action error: {0} [{1}] [{2}]"
msgstr ""
-#: plinth/modules/snapshot/views.py:175
+#: plinth/modules/snapshot/views.py:154
msgid "Deleted all snapshots"
msgstr ""
-#: plinth/modules/snapshot/views.py:179
+#: plinth/modules/snapshot/views.py:158
#, fuzzy
msgid "Deleted selected snapshots"
msgstr "Istantanee selezionate cancellate"
-#: plinth/modules/snapshot/views.py:184
+#: plinth/modules/snapshot/views.py:163
msgid "Snapshot is currently in use. Please try again later."
msgstr ""
-#: plinth/modules/snapshot/views.py:207
+#: plinth/modules/snapshot/views.py:186
#, python-brace-format
msgid "Rolled back to snapshot #{number}."
msgstr ""
-#: plinth/modules/snapshot/views.py:210
+#: plinth/modules/snapshot/views.py:189
msgid "The system must be restarted to complete the rollback."
msgstr ""
-#: plinth/modules/snapshot/views.py:222
+#: plinth/modules/snapshot/views.py:201
msgid "Rollback to Snapshot"
msgstr ""
-#: plinth/modules/ssh/__init__.py:43
-msgid "Secure Shell (SSH) Server"
-msgstr ""
-
-#: plinth/modules/ssh/__init__.py:46
+#: plinth/modules/ssh/__init__.py:29
msgid ""
"A Secure Shell server uses the secure shell protocol to accept connections "
"from remote computers. An authorized remote computer can perform "
@@ -5463,61 +5572,61 @@ msgid ""
"connections."
msgstr ""
-#: plinth/modules/ssh/forms.py:30
+#: plinth/modules/ssh/__init__.py:50
+msgid "Secure Shell (SSH) Server"
+msgstr ""
+
+#: plinth/modules/ssh/forms.py:15
#, fuzzy
msgid "Disable password authentication"
msgstr "Usa l'autenticazione HTTP base"
-#: plinth/modules/ssh/forms.py:31
+#: plinth/modules/ssh/forms.py:16
msgid ""
"Improves security by preventing password guessing. Ensure that you have "
"setup SSH keys in your administrator user account before enabling this "
"option."
msgstr ""
-#: plinth/modules/ssh/templates/ssh.html:26
+#: plinth/modules/ssh/templates/ssh.html:11
#, fuzzy
#| msgid "SSH Fingerprint"
msgid "Server Fingerprints"
msgstr "SSH Fingerprint"
-#: plinth/modules/ssh/templates/ssh.html:29
+#: plinth/modules/ssh/templates/ssh.html:14
msgid ""
"When connecting to the server, ensure that the fingerprint shown by the SSH "
"client matches one of these fingerprints."
msgstr ""
-#: plinth/modules/ssh/templates/ssh.html:38
+#: plinth/modules/ssh/templates/ssh.html:23
msgid "Algorithm"
msgstr ""
-#: plinth/modules/ssh/templates/ssh.html:39
+#: plinth/modules/ssh/templates/ssh.html:24
#, fuzzy
#| msgid "SSH Fingerprint"
msgid "Fingerprint"
msgstr "SSH Fingerprint"
-#: plinth/modules/ssh/views.py:66
+#: plinth/modules/ssh/views.py:48
msgid "SSH authentication with password disabled."
msgstr ""
-#: plinth/modules/ssh/views.py:69
+#: plinth/modules/ssh/views.py:51
msgid "SSH authentication with password enabled."
msgstr ""
-#: plinth/modules/sso/__init__.py:30
+#: plinth/modules/sso/__init__.py:33
msgid "Single Sign On"
msgstr ""
-#: plinth/modules/sso/templates/login.html:35
+#: plinth/modules/sso/templates/login.html:20
msgid "Login"
msgstr ""
-#: plinth/modules/storage/__init__.py:39 plinth/modules/storage/__init__.py:331
-msgid "Storage"
-msgstr ""
-
-#: plinth/modules/storage/__init__.py:47
+#: plinth/modules/storage/__init__.py:30
#, python-brace-format
msgid ""
"This module allows you to manage storage media attached to your {box_name}. "
@@ -5525,149 +5634,153 @@ msgid ""
"media, expand the root partition etc."
msgstr ""
-#: plinth/modules/storage/__init__.py:224
+#: plinth/modules/storage/__init__.py:52 plinth/modules/storage/__init__.py:318
+msgid "Storage"
+msgstr ""
+
+#: plinth/modules/storage/__init__.py:211
#, python-brace-format
msgid "{disk_size:.1f} bytes"
msgstr ""
-#: plinth/modules/storage/__init__.py:228
+#: plinth/modules/storage/__init__.py:215
#, python-brace-format
msgid "{disk_size:.1f} KiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:232
+#: plinth/modules/storage/__init__.py:219
#, python-brace-format
msgid "{disk_size:.1f} MiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:236
+#: plinth/modules/storage/__init__.py:223
#, python-brace-format
msgid "{disk_size:.1f} GiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:239
+#: plinth/modules/storage/__init__.py:226
#, python-brace-format
msgid "{disk_size:.1f} TiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:246
+#: plinth/modules/storage/__init__.py:233
msgid "The operation failed."
msgstr ""
-#: plinth/modules/storage/__init__.py:248
+#: plinth/modules/storage/__init__.py:235
msgid "The operation was cancelled."
msgstr ""
-#: plinth/modules/storage/__init__.py:250
+#: plinth/modules/storage/__init__.py:237
#, fuzzy
msgid "The device is already unmounting."
msgstr "Il dispositivo sta già smontando."
-#: plinth/modules/storage/__init__.py:252
+#: plinth/modules/storage/__init__.py:239
msgid "The operation is not supported due to missing driver/tool support."
msgstr ""
-#: plinth/modules/storage/__init__.py:255
+#: plinth/modules/storage/__init__.py:242
msgid "The operation timed out."
msgstr ""
-#: plinth/modules/storage/__init__.py:257
+#: plinth/modules/storage/__init__.py:244
msgid "The operation would wake up a disk that is in a deep-sleep state."
msgstr ""
-#: plinth/modules/storage/__init__.py:260
+#: plinth/modules/storage/__init__.py:247
msgid "Attempting to unmount a device that is busy."
msgstr ""
-#: plinth/modules/storage/__init__.py:262
+#: plinth/modules/storage/__init__.py:249
msgid "The operation has already been cancelled."
msgstr ""
-#: plinth/modules/storage/__init__.py:268
+#: plinth/modules/storage/__init__.py:255
msgid "Not authorized to perform the requested operation."
msgstr ""
-#: plinth/modules/storage/__init__.py:270
+#: plinth/modules/storage/__init__.py:257
msgid "The device is already mounted."
msgstr "Il dispositivo è già montato."
-#: plinth/modules/storage/__init__.py:272
+#: plinth/modules/storage/__init__.py:259
msgid "The device is not mounted."
msgstr ""
-#: plinth/modules/storage/__init__.py:275
+#: plinth/modules/storage/__init__.py:262
msgid "Not permitted to use the requested option."
msgstr ""
-#: plinth/modules/storage/__init__.py:278
+#: plinth/modules/storage/__init__.py:265
msgid "The device is mounted by another user."
msgstr ""
-#: plinth/modules/storage/__init__.py:326
+#: plinth/modules/storage/__init__.py:313
#, no-python-format, python-brace-format
msgid "Low space on system partition: {percent_used}% used, {free_space} free."
msgstr ""
-#: plinth/modules/storage/__init__.py:328
+#: plinth/modules/storage/__init__.py:315
msgid "Low disk space"
msgstr ""
-#: plinth/modules/storage/forms.py:79
+#: plinth/modules/storage/forms.py:64
#, fuzzy
msgid "Invalid directory name."
msgstr "Hostname non valido"
-#: plinth/modules/storage/forms.py:97
+#: plinth/modules/storage/forms.py:82
msgid "Directory does not exist."
msgstr ""
-#: plinth/modules/storage/forms.py:99
+#: plinth/modules/storage/forms.py:84
msgid "Path is not a directory."
msgstr ""
-#: plinth/modules/storage/forms.py:102
+#: plinth/modules/storage/forms.py:87
msgid "Directory is not readable by the user."
msgstr ""
-#: plinth/modules/storage/forms.py:105
+#: plinth/modules/storage/forms.py:90
msgid "Directory is not writable by the user."
msgstr ""
-#: plinth/modules/storage/forms.py:110
+#: plinth/modules/storage/forms.py:95
msgid "Directory"
msgstr ""
-#: plinth/modules/storage/forms.py:113
+#: plinth/modules/storage/forms.py:98
msgid "Subdirectory (optional)"
msgstr ""
-#: plinth/modules/storage/forms.py:160
+#: plinth/modules/storage/forms.py:145
#, fuzzy
#| msgid "Shared"
msgid "Share"
msgstr "Condiviso"
-#: plinth/modules/storage/forms.py:168
+#: plinth/modules/storage/forms.py:153
msgid "Other directory (specify below)"
msgstr ""
-#: plinth/modules/storage/templates/storage.html:35
+#: plinth/modules/storage/templates/storage.html:20
msgid "The following storage devices are in use:"
msgstr ""
-#: plinth/modules/storage/templates/storage.html:41
+#: plinth/modules/storage/templates/storage.html:26
msgid "Label"
msgstr ""
-#: plinth/modules/storage/templates/storage.html:42
+#: plinth/modules/storage/templates/storage.html:27
msgid "Mount Point"
msgstr ""
-#: plinth/modules/storage/templates/storage.html:90
+#: plinth/modules/storage/templates/storage.html:75
msgid "Partition Expansion"
msgstr ""
-#: plinth/modules/storage/templates/storage.html:92
+#: plinth/modules/storage/templates/storage.html:77
#, python-format
msgid ""
"There is %(expandable_root_size)s of unallocated space available after your "
@@ -5675,13 +5788,13 @@ msgid ""
"will provide you additional free space to store your files."
msgstr ""
-#: plinth/modules/storage/templates/storage.html:102
-#: plinth/modules/storage/templates/storage_expand.html:39
-#: plinth/modules/storage/views.py:76
+#: plinth/modules/storage/templates/storage.html:87
+#: plinth/modules/storage/templates/storage_expand.html:24
+#: plinth/modules/storage/views.py:58
msgid "Expand Root Partition"
msgstr ""
-#: plinth/modules/storage/templates/storage_expand.html:29
+#: plinth/modules/storage/templates/storage_expand.html:14
#, python-format
msgid ""
"Please backup your data before proceeding. After this operation, "
@@ -5689,39 +5802,30 @@ msgid ""
"root partition."
msgstr ""
-#: plinth/modules/storage/views.py:88
+#: plinth/modules/storage/views.py:70
#, python-brace-format
msgid "Error expanding partition: {exception}"
msgstr ""
-#: plinth/modules/storage/views.py:91
+#: plinth/modules/storage/views.py:73
msgid "Partition expanded successfully."
msgstr ""
-#: plinth/modules/storage/views.py:109
+#: plinth/modules/storage/views.py:91
#, python-brace-format
msgid "{drive_vendor} {drive_model} can be safely unplugged."
msgstr ""
-#: plinth/modules/storage/views.py:113
+#: plinth/modules/storage/views.py:95
msgid "Device can be safely unplugged."
msgstr ""
-#: plinth/modules/storage/views.py:123
+#: plinth/modules/storage/views.py:105
#, python-brace-format
msgid "Error ejecting device: {error_message}"
msgstr ""
-#: plinth/modules/syncthing/__init__.py:40
-#: plinth/modules/syncthing/manifest.py:28
-msgid "Syncthing"
-msgstr "Syncthing"
-
-#: plinth/modules/syncthing/__init__.py:44
-msgid "File Synchronization"
-msgstr ""
-
-#: plinth/modules/syncthing/__init__.py:47
+#: plinth/modules/syncthing/__init__.py:26
msgid ""
"Syncthing is an application to synchronize files across multiple devices, e."
"g. your desktop computer and mobile phone. Creation, modification, or "
@@ -5729,7 +5833,7 @@ msgid ""
"other devices that also run Syncthing."
msgstr ""
-#: plinth/modules/syncthing/__init__.py:52
+#: plinth/modules/syncthing/__init__.py:31
#, python-brace-format
msgid ""
"Running Syncthing on {box_name} provides an extra synchronization point for "
@@ -5740,19 +5844,20 @@ msgid ""
"{box_name} is only available for users belonging to the \"admin\" group."
msgstr ""
-#: plinth/modules/syncthing/__init__.py:63
+#: plinth/modules/syncthing/__init__.py:40
msgid "Administer Syncthing application"
msgstr ""
-#: plinth/modules/tahoe/__init__.py:43
-msgid "Tahoe-LAFS"
-msgstr "Tahoe-LAFS"
+#: plinth/modules/syncthing/__init__.py:54
+#: plinth/modules/syncthing/manifest.py:13
+msgid "Syncthing"
+msgstr "Syncthing"
-#: plinth/modules/tahoe/__init__.py:47
-msgid "Distributed File Storage"
+#: plinth/modules/syncthing/__init__.py:55
+msgid "File Synchronization"
msgstr ""
-#: plinth/modules/tahoe/__init__.py:134
+#: plinth/modules/tahoe/__init__.py:30
msgid ""
"Tahoe-LAFS is a decentralized secure file storage system. It uses provider "
"independent security to store files over a distributed network of storage "
@@ -5760,7 +5865,7 @@ msgid ""
"remaining nodes."
msgstr ""
-#: plinth/modules/tahoe/__init__.py:139
+#: plinth/modules/tahoe/__init__.py:35
#, python-brace-format
msgid ""
"This {box_name} hosts a storage node and an introducer by default. "
@@ -5768,7 +5873,15 @@ msgid ""
"other storage nodes."
msgstr ""
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:33
+#: plinth/modules/tahoe/__init__.py:66
+msgid "Tahoe-LAFS"
+msgstr "Tahoe-LAFS"
+
+#: plinth/modules/tahoe/__init__.py:68
+msgid "Distributed File Storage"
+msgstr ""
+
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:17
#, python-format
msgid ""
"The Tahoe-LAFS server domain is set to %(domain_name)s. Changing the "
@@ -5777,37 +5890,33 @@ msgid ""
"%(domain_name)s:5678\">https://%(domain_name)s:5678."
msgstr ""
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:55
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:39
msgid "Local introducer"
msgstr ""
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:43
#: plinth/modules/tahoe/templates/tahoe-post-setup.html:59
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:75
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:92
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:76
msgid "Pet Name"
msgstr ""
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:72
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:56
msgid "Add new introducer"
msgstr ""
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:83
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:67
msgid "Add"
msgstr ""
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:88
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:72
msgid "Connected introducers"
msgstr ""
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:105
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:89
msgid "Remove"
msgstr ""
-#: plinth/modules/tor/__init__.py:47
-msgid "Tor"
-msgstr "Tor"
-
-#: plinth/modules/tor/__init__.py:52
+#: plinth/modules/tor/__init__.py:33
msgid ""
"Tor is an anonymous communication system. You can learn more about it from "
"the Tor Project website. For "
@@ -5816,76 +5925,80 @@ msgid ""
"\">Tor Browser."
msgstr ""
-#: plinth/modules/tor/__init__.py:83
+#: plinth/modules/tor/__init__.py:55
+msgid "Tor"
+msgstr "Tor"
+
+#: plinth/modules/tor/__init__.py:66
msgid "Tor Onion Service"
msgstr ""
-#: plinth/modules/tor/__init__.py:87
+#: plinth/modules/tor/__init__.py:70
msgid "Tor Socks Proxy"
msgstr ""
-#: plinth/modules/tor/__init__.py:91
+#: plinth/modules/tor/__init__.py:74
msgid "Tor Bridge Relay"
msgstr ""
-#: plinth/modules/tor/__init__.py:112
+#: plinth/modules/tor/__init__.py:95
msgid "Tor relay port available"
msgstr ""
-#: plinth/modules/tor/__init__.py:122
+#: plinth/modules/tor/__init__.py:105
msgid "Obfs3 transport registered"
msgstr ""
-#: plinth/modules/tor/__init__.py:132
+#: plinth/modules/tor/__init__.py:115
msgid "Obfs4 transport registered"
msgstr ""
-#: plinth/modules/tor/__init__.py:225
+#: plinth/modules/tor/__init__.py:208
#, python-brace-format
msgid "Access URL {url} on tcp{kind} via Tor"
msgstr ""
-#: plinth/modules/tor/__init__.py:236
+#: plinth/modules/tor/__init__.py:219
#, python-brace-format
msgid "Confirm Tor usage at {url} on tcp{kind}"
msgstr ""
-#: plinth/modules/tor/forms.py:46
+#: plinth/modules/tor/forms.py:31
msgid ""
"Enter a valid bridge with this format: [transport] IP:ORPort [fingerprint]"
msgstr ""
-#: plinth/modules/tor/forms.py:88
+#: plinth/modules/tor/forms.py:73
msgid "Enable Tor"
msgstr ""
-#: plinth/modules/tor/forms.py:90
+#: plinth/modules/tor/forms.py:75
msgid "Use upstream bridges to connect to Tor network"
msgstr ""
-#: plinth/modules/tor/forms.py:92
+#: plinth/modules/tor/forms.py:77
msgid ""
"When enabled, the bridges configured below will be used to connect to the "
"Tor network. Use this option if your Internet Service Provider (ISP) blocks "
"or censors connections to the Tor Network. This will disable relay modes."
msgstr ""
-#: plinth/modules/tor/forms.py:97
+#: plinth/modules/tor/forms.py:82
msgid "Upstream bridges"
msgstr ""
-#: plinth/modules/tor/forms.py:99
+#: plinth/modules/tor/forms.py:84
msgid ""
"You can get some bridges from https://bridges.torproject.org/ and copy/paste the bridge information "
"here. Currently supported transports are none, obfs3, obfs4 and scamblesuit."
msgstr ""
-#: plinth/modules/tor/forms.py:105
+#: plinth/modules/tor/forms.py:90
msgid "Enable Tor relay"
msgstr ""
-#: plinth/modules/tor/forms.py:106
+#: plinth/modules/tor/forms.py:91
#, python-brace-format
msgid ""
"When enabled, your {box_name} will run a Tor relay and donate bandwidth to "
@@ -5893,24 +6006,24 @@ msgid ""
"download bandwidth."
msgstr ""
-#: plinth/modules/tor/forms.py:111
+#: plinth/modules/tor/forms.py:96
msgid "Enable Tor bridge relay"
msgstr ""
-#: plinth/modules/tor/forms.py:113
+#: plinth/modules/tor/forms.py:98
msgid ""
"When enabled, relay information is published in the Tor bridge database "
"instead of public Tor relay database making it harder to censor this node. "
"This helps others circumvent censorship."
msgstr ""
-#: plinth/modules/tor/forms.py:118
+#: plinth/modules/tor/forms.py:103
#, fuzzy
#| msgid "Enable OpenVPN server"
msgid "Enable Tor Hidden Service"
msgstr "Abilita server OpenVPN"
-#: plinth/modules/tor/forms.py:120
+#: plinth/modules/tor/forms.py:105
#, python-brace-format
msgid ""
"A hidden service will allow {box_name} to provide selected services (such as "
@@ -5918,90 +6031,82 @@ msgid ""
"anonymity yet."
msgstr ""
-#: plinth/modules/tor/forms.py:125
+#: plinth/modules/tor/forms.py:110
msgid "Download software packages over Tor"
msgstr ""
-#: plinth/modules/tor/forms.py:126
+#: plinth/modules/tor/forms.py:111
msgid ""
"When enabled, software will be downloaded over the Tor network for "
"installations and upgrades. This adds a degree of privacy and security "
"during software downloads."
msgstr ""
-#: plinth/modules/tor/forms.py:141
+#: plinth/modules/tor/forms.py:126
msgid "Specify at least one upstream bridge to use upstream bridges."
msgstr ""
-#: plinth/modules/tor/manifest.py:29
+#: plinth/modules/tor/manifest.py:14
msgid "Tor Browser"
msgstr ""
-#: plinth/modules/tor/manifest.py:45
+#: plinth/modules/tor/manifest.py:30
msgid "Orbot: Proxy with Tor"
msgstr ""
-#: plinth/modules/tor/templates/tor.html:41
+#: plinth/modules/tor/templates/tor.html:26
msgid "Tor configuration is being updated"
msgstr ""
-#: plinth/modules/tor/templates/tor.html:50
+#: plinth/modules/tor/templates/tor.html:35
#, fuzzy
#| msgid "Service"
msgid "Onion Service"
msgstr "Servizio"
-#: plinth/modules/tor/templates/tor.html:52
+#: plinth/modules/tor/templates/tor.html:37
msgid "Ports"
msgstr ""
-#: plinth/modules/tor/templates/tor.html:82
+#: plinth/modules/tor/templates/tor.html:67
msgid "Relay"
msgstr ""
-#: plinth/modules/tor/templates/tor.html:84
+#: plinth/modules/tor/templates/tor.html:69
#, python-format
msgid ""
"If your %(box_name)s is behind a router or firewall, you should make sure "
"the following ports are open, and port-forwarded, if necessary:"
msgstr ""
-#: plinth/modules/tor/templates/tor.html:112
+#: plinth/modules/tor/templates/tor.html:97
msgid "SOCKS"
msgstr ""
-#: plinth/modules/tor/templates/tor.html:115
+#: plinth/modules/tor/templates/tor.html:100
#, python-format
msgid "A Tor SOCKS port is available on your %(box_name)s on TCP port 9050."
msgstr ""
-#: plinth/modules/transmission/__init__.py:41
-#: plinth/modules/transmission/manifest.py:24
-msgid "Transmission"
-msgstr ""
-
-#: plinth/modules/transmission/__init__.py:48
+#: plinth/modules/transmission/__init__.py:27
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/ttrss/__init__.py:43 plinth/modules/ttrss/manifest.py:34
-msgid "Tiny Tiny RSS"
-msgstr "Tiny Tiny RSS"
-
-#: plinth/modules/ttrss/__init__.py:47
-msgid "News Feed Reader"
+#: plinth/modules/transmission/__init__.py:48
+#: plinth/modules/transmission/manifest.py:9
+msgid "Transmission"
msgstr ""
-#: plinth/modules/ttrss/__init__.py:50
+#: plinth/modules/ttrss/__init__.py:29
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:54
+#: plinth/modules/ttrss/__init__.py:33
#, fuzzy, python-brace-format
msgid ""
"When enabled, Tiny Tiny RSS can be accessed by any /tt-rss-app for "
"connecting."
msgstr ""
-#: plinth/modules/ttrss/__init__.py:65
+#: plinth/modules/ttrss/__init__.py:42
msgid "Read and subscribe to news feeds"
msgstr ""
-#: plinth/modules/ttrss/manifest.py:25
+#: plinth/modules/ttrss/__init__.py:56 plinth/modules/ttrss/manifest.py:19
+msgid "Tiny Tiny RSS"
+msgstr "Tiny Tiny RSS"
+
+#: plinth/modules/ttrss/__init__.py:57
+msgid "News Feed Reader"
+msgstr ""
+
+#: plinth/modules/ttrss/manifest.py:10
msgid "Tiny Tiny RSS (Fork)"
msgstr ""
-#: plinth/modules/upgrades/__init__.py:37 plinth/templates/setup.html:89
-msgid "Update"
-msgstr ""
-
-#: plinth/modules/upgrades/__init__.py:40
+#: plinth/modules/upgrades/__init__.py:23
msgid "Check for and apply the latest software and security updates."
msgstr ""
-#: plinth/modules/upgrades/__init__.py:84
+#: plinth/modules/upgrades/__init__.py:38 plinth/templates/setup.html:74
+msgid "Update"
+msgstr ""
+
+#: plinth/modules/upgrades/__init__.py:71
#, fuzzy
#| msgid "FreedomBox"
msgid "FreedomBox Updated"
msgstr "FreedomBox"
-#: plinth/modules/upgrades/forms.py:28
+#: plinth/modules/upgrades/forms.py:13
msgid "Enable auto-update"
msgstr "Abilita l'aggiornamento automatico"
-#: plinth/modules/upgrades/forms.py:29
+#: plinth/modules/upgrades/forms.py:14
msgid "When enabled, FreedomBox automatically updates once a day."
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades-new-release.html:24
+#: plinth/modules/upgrades/templates/upgrades-new-release.html:9
#, fuzzy, python-format
#| msgid "%(box_name)s is up to date."
msgid "%(box_name)s Updated"
msgstr "%(box_name)s è aggiornato."
-#: plinth/modules/upgrades/templates/upgrades-new-release.html:28
+#: plinth/modules/upgrades/templates/upgrades-new-release.html:13
#, python-format
msgid ""
"%(box_name)s has been updated to version %(version)s. See the release announcement."
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades-new-release.html:37
-#: plinth/templates/notifications.html:59
+#: plinth/modules/upgrades/templates/upgrades-new-release.html:22
+#: plinth/templates/notifications.html:44
msgid "Dismiss"
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades.html:45
+#: plinth/modules/upgrades/templates/upgrades.html:30
msgid "Update now"
msgstr "Aggiorna adesso"
-#: plinth/modules/upgrades/templates/upgrades.html:54
+#: plinth/modules/upgrades/templates/upgrades.html:39
msgid "Updating..."
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades.html:59
+#: plinth/modules/upgrades/templates/upgrades.html:44
msgid ""
"This may take a long time to complete. During an update, "
"you cannot install apps. Also, this web interface may be temporarily "
"unavailable and show an error. In that case, refresh the page to continue."
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades.html:73
+#: plinth/modules/upgrades/templates/upgrades.html:58
msgid "Toggle recent update logs"
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades_configure.html:26
-#: plinth/modules/upgrades/templates/upgrades_configure.html:27
-#: plinth/modules/upgrades/views.py:107
+#: plinth/modules/upgrades/templates/upgrades_configure.html:11
+#: plinth/modules/upgrades/templates/upgrades_configure.html:12
+#: plinth/modules/upgrades/views.py:89
msgid "Manual update"
msgstr "Aggiornamento manuale"
-#: plinth/modules/upgrades/views.py:66
+#: plinth/modules/upgrades/views.py:48
#, python-brace-format
msgid "Error when configuring unattended-upgrades: {error}"
msgstr ""
-#: plinth/modules/upgrades/views.py:70
+#: plinth/modules/upgrades/views.py:52
msgid "Automatic upgrades enabled"
msgstr ""
-#: plinth/modules/upgrades/views.py:73
+#: plinth/modules/upgrades/views.py:55
msgid "Automatic upgrades disabled"
msgstr ""
-#: plinth/modules/upgrades/views.py:75
+#: plinth/modules/upgrades/views.py:57
msgid "Settings unchanged"
msgstr ""
-#: plinth/modules/upgrades/views.py:101
+#: plinth/modules/upgrades/views.py:83
msgid "Upgrade process started."
msgstr ""
-#: plinth/modules/upgrades/views.py:104
+#: plinth/modules/upgrades/views.py:86
msgid "Starting upgrade failed."
msgstr ""
-#: plinth/modules/users/__init__.py:51
-msgid "Users and Groups"
-msgstr ""
-
-#: plinth/modules/users/__init__.py:54
+#: plinth/modules/users/__init__.py:37
msgid ""
"Create and managed user accounts. These accounts serve as centralized "
"authentication mechanism for most apps. Some apps further require a user "
"account to be part of a group to authorize the user to access the app."
msgstr ""
-#: plinth/modules/users/__init__.py:59
+#: plinth/modules/users/__init__.py:42
#, python-brace-format
msgid ""
"Any user may login to {box_name} web interface to see a list of apps "
@@ -6137,35 +6246,39 @@ msgid ""
"group may alter apps or system settings."
msgstr ""
-#: plinth/modules/users/__init__.py:128
+#: plinth/modules/users/__init__.py:64
+msgid "Users and Groups"
+msgstr ""
+
+#: plinth/modules/users/__init__.py:115
#, python-brace-format
msgid "Check LDAP entry \"{search_item}\""
msgstr ""
-#: plinth/modules/users/forms.py:43
+#: plinth/modules/users/forms.py:28
msgid "Access to all services and system settings"
msgstr ""
-#: plinth/modules/users/forms.py:59
+#: plinth/modules/users/forms.py:44
msgid "Username is taken or is reserved."
msgstr ""
-#: plinth/modules/users/forms.py:87
+#: plinth/modules/users/forms.py:72
#, fuzzy
#| msgid "Invalid server name"
msgid "Enter a valid username."
msgstr "Nome Server Invalido"
-#: plinth/modules/users/forms.py:93
+#: plinth/modules/users/forms.py:78
msgid ""
"Required. 150 characters or fewer. English letters, digits and @/./-/_ only."
msgstr ""
-#: plinth/modules/users/forms.py:106 plinth/modules/users/forms.py:222
+#: plinth/modules/users/forms.py:91 plinth/modules/users/forms.py:207
msgid "Permissions"
msgstr ""
-#: plinth/modules/users/forms.py:109
+#: plinth/modules/users/forms.py:94
msgid ""
"Select which services should be available to the new user. The user will be "
"able to log in to services that support single sign-on through LDAP, if they "
@@ -6174,187 +6287,182 @@ msgid ""
"SSH and have administrative privileges (sudo)."
msgstr ""
-#: plinth/modules/users/forms.py:148 plinth/modules/users/forms.py:372
+#: plinth/modules/users/forms.py:133 plinth/modules/users/forms.py:357
msgid "Creating LDAP user failed."
msgstr ""
-#: plinth/modules/users/forms.py:159
+#: plinth/modules/users/forms.py:144
#, python-brace-format
msgid "Failed to add new user to {group} group."
msgstr ""
-#: plinth/modules/users/forms.py:173
+#: plinth/modules/users/forms.py:158
msgid "Authorized SSH Keys"
msgstr ""
-#: plinth/modules/users/forms.py:175
+#: plinth/modules/users/forms.py:160
msgid ""
"Setting an SSH public key will allow this user to securely log in to the "
"system without using a password. You may enter multiple keys, one on each "
"line. Blank lines and lines starting with # will be ignored."
msgstr ""
-#: plinth/modules/users/forms.py:259
+#: plinth/modules/users/forms.py:244
msgid "Renaming LDAP user failed."
msgstr ""
-#: plinth/modules/users/forms.py:271
+#: plinth/modules/users/forms.py:256
msgid "Failed to remove user from group."
msgstr ""
-#: plinth/modules/users/forms.py:282
+#: plinth/modules/users/forms.py:267
msgid "Failed to add user to group."
msgstr ""
-#: plinth/modules/users/forms.py:291
+#: plinth/modules/users/forms.py:276
msgid "Unable to set SSH keys."
msgstr ""
-#: plinth/modules/users/forms.py:306
+#: plinth/modules/users/forms.py:291
msgid "Failed to change user status."
msgstr ""
-#: plinth/modules/users/forms.py:314
+#: plinth/modules/users/forms.py:299
msgid "Cannot delete the only administrator in the system."
msgstr ""
-#: plinth/modules/users/forms.py:346
+#: plinth/modules/users/forms.py:331
msgid "Changing LDAP user password failed."
msgstr ""
-#: plinth/modules/users/forms.py:381
+#: plinth/modules/users/forms.py:366
msgid "Failed to add new user to admin group."
msgstr ""
-#: plinth/modules/users/forms.py:398
+#: plinth/modules/users/forms.py:383
msgid "Failed to restrict console access."
msgstr ""
-#: plinth/modules/users/forms.py:410
+#: plinth/modules/users/forms.py:395
msgid "User account created, you are now logged in"
msgstr ""
-#: plinth/modules/users/templates/users_change_password.html:26
+#: plinth/modules/users/templates/users_change_password.html:11
#, python-format
msgid "Change Password for %(username)s"
msgstr ""
-#: plinth/modules/users/templates/users_change_password.html:36
+#: plinth/modules/users/templates/users_change_password.html:21
msgid "Save Password"
msgstr ""
-#: plinth/modules/users/templates/users_create.html:32
-#: plinth/modules/users/templates/users_list.html:42
-#: plinth/modules/users/templates/users_list.html:44
-#: plinth/modules/users/views.py:57
+#: plinth/modules/users/templates/users_create.html:17
+#: plinth/modules/users/templates/users_list.html:27
+#: plinth/modules/users/templates/users_list.html:29
+#: plinth/modules/users/views.py:42
msgid "Create User"
msgstr ""
-#: plinth/modules/users/templates/users_delete.html:26
-#: plinth/modules/users/views.py:139
+#: plinth/modules/users/templates/users_delete.html:11
+#: plinth/modules/users/views.py:121
msgid "Delete User"
msgstr ""
-#: plinth/modules/users/templates/users_delete.html:29
+#: plinth/modules/users/templates/users_delete.html:14
#, python-format
msgid "Delete user %(username)s permanently?"
msgstr ""
-#: plinth/modules/users/templates/users_delete.html:38
+#: plinth/modules/users/templates/users_delete.html:23
#, python-format
msgid "Delete %(username)s"
msgstr ""
-#: plinth/modules/users/templates/users_firstboot.html:26
+#: plinth/modules/users/templates/users_firstboot.html:11
msgid "Administrator Account"
msgstr ""
-#: plinth/modules/users/templates/users_firstboot.html:29
+#: plinth/modules/users/templates/users_firstboot.html:14
msgid ""
"Choose a username and password to access this web interface. The password "
"can be changed later. This user will be granted administrative privileges. "
"Other users can be added later."
msgstr ""
-#: plinth/modules/users/templates/users_firstboot.html:42
+#: plinth/modules/users/templates/users_firstboot.html:27
msgid "Create Account"
msgstr ""
-#: plinth/modules/users/templates/users_list.html:38
-#: plinth/modules/users/views.py:74
+#: plinth/modules/users/templates/users_list.html:23
+#: plinth/modules/users/views.py:59
msgid "Users"
msgstr ""
-#: plinth/modules/users/templates/users_list.html:57
+#: plinth/modules/users/templates/users_list.html:42
#, python-format
msgid "Delete user %(username)s"
msgstr ""
-#: plinth/modules/users/templates/users_list.html:65
+#: plinth/modules/users/templates/users_list.html:50
#, python-format
msgid "Edit user %(username)s"
msgstr ""
-#: plinth/modules/users/templates/users_update.html:30
+#: plinth/modules/users/templates/users_update.html:15
#, python-format
msgid ""
"Use the change password form to "
"change the password."
msgstr ""
-#: plinth/modules/users/templates/users_update.html:42
-#: plinth/templates/language-selection.html:32
+#: plinth/modules/users/templates/users_update.html:27
+#: plinth/templates/language-selection.html:17
msgid "Save Changes"
msgstr ""
-#: plinth/modules/users/views.py:55
+#: plinth/modules/users/views.py:40
#, python-format
msgid "User %(username)s created."
msgstr ""
-#: plinth/modules/users/views.py:93
+#: plinth/modules/users/views.py:75
#, python-format
msgid "User %(username)s updated."
msgstr ""
-#: plinth/modules/users/views.py:94
+#: plinth/modules/users/views.py:76
msgid "Edit User"
msgstr ""
-#: plinth/modules/users/views.py:149
+#: plinth/modules/users/views.py:131
#, python-brace-format
msgid "User {user} deleted."
msgstr ""
-#: plinth/modules/users/views.py:156
+#: plinth/modules/users/views.py:138
msgid "Deleting LDAP user failed."
msgstr ""
-#: plinth/modules/users/views.py:165
+#: plinth/modules/users/views.py:147
msgid "Change Password"
msgstr ""
-#: plinth/modules/users/views.py:166
+#: plinth/modules/users/views.py:148
msgid "Password changed successfully."
msgstr ""
-#: plinth/modules/wireguard/__init__.py:38
-#: plinth/modules/wireguard/manifest.py:29
-msgid "WireGuard"
-msgstr ""
-
-#: plinth/modules/wireguard/__init__.py:43
+#: plinth/modules/wireguard/__init__.py:24
msgid "WireGuard is a fast, modern, secure VPN tunnel."
msgstr ""
-#: plinth/modules/wireguard/__init__.py:45
+#: plinth/modules/wireguard/__init__.py:26
#, python-brace-format
msgid ""
"It can be used to connect to a VPN provider which supports WireGuard, and to "
"route all outgoing traffic from {box_name} through the VPN."
msgstr ""
-#: plinth/modules/wireguard/__init__.py:49
+#: plinth/modules/wireguard/__init__.py:30
#, python-brace-format
msgid ""
"A second use case is to connect a mobile device to {box_name} while "
@@ -6362,65 +6470,70 @@ msgid ""
"securely relayed through {box_name}."
msgstr ""
-#: plinth/modules/wireguard/forms.py:47
+#: plinth/modules/wireguard/__init__.py:52
+#: plinth/modules/wireguard/manifest.py:14
+msgid "WireGuard"
+msgstr ""
+
+#: plinth/modules/wireguard/forms.py:32
#, fuzzy
#| msgid "Invalid kite name"
msgid "Invalid key."
msgstr "Nome Kite invalido"
-#: plinth/modules/wireguard/forms.py:76
-#: plinth/modules/wireguard/templates/wireguard.html:32
-#: plinth/modules/wireguard/templates/wireguard.html:89
-#: plinth/modules/wireguard/templates/wireguard_delete_server.html:38
+#: plinth/modules/wireguard/forms.py:61
+#: plinth/modules/wireguard/templates/wireguard.html:17
+#: plinth/modules/wireguard/templates/wireguard.html:74
+#: plinth/modules/wireguard/templates/wireguard_delete_server.html:23
#, fuzzy
#| msgid "Publish Key"
msgid "Public Key"
msgstr "Importa chiave"
-#: plinth/modules/wireguard/forms.py:77
+#: plinth/modules/wireguard/forms.py:62
msgid ""
"Public key of the peer. Example: "
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs= ."
msgstr ""
-#: plinth/modules/wireguard/forms.py:85
+#: plinth/modules/wireguard/forms.py:70
msgid "Endpoint of the server"
msgstr ""
-#: plinth/modules/wireguard/forms.py:86
+#: plinth/modules/wireguard/forms.py:71
msgid ""
"Domain name and port in the form \"ip:port\". Example: demo.wireguard."
"com:12912 ."
msgstr ""
-#: plinth/modules/wireguard/forms.py:91
+#: plinth/modules/wireguard/forms.py:76
#, fuzzy
#| msgid "Published key to keyserver."
msgid "Public key of the server"
msgstr "Chiave pubblicata nel keyserver."
-#: plinth/modules/wireguard/forms.py:92
+#: plinth/modules/wireguard/forms.py:77
msgid ""
"Provided by the server operator, a long string of characters. Example: "
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs= ."
msgstr ""
-#: plinth/modules/wireguard/forms.py:97
+#: plinth/modules/wireguard/forms.py:82
msgid "Client IP address provided by server"
msgstr ""
-#: plinth/modules/wireguard/forms.py:98
+#: plinth/modules/wireguard/forms.py:83
msgid ""
"IP address assigned to this machine on the VPN after connecting to the "
"endpoint. This value is usually provided by the server operator. Example: "
"192.168.0.10."
msgstr ""
-#: plinth/modules/wireguard/forms.py:104
+#: plinth/modules/wireguard/forms.py:89
msgid "Private key of this machine"
msgstr ""
-#: plinth/modules/wireguard/forms.py:105
+#: plinth/modules/wireguard/forms.py:90
msgid ""
"Optional. New public/private keys are generated if left blank. Public key "
"can then be provided to the server. This is the recommended way. However, "
@@ -6428,173 +6541,173 @@ msgid ""
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs= ."
msgstr ""
-#: plinth/modules/wireguard/forms.py:113
+#: plinth/modules/wireguard/forms.py:98
msgid "Pre-shared key"
msgstr ""
-#: plinth/modules/wireguard/forms.py:114
+#: plinth/modules/wireguard/forms.py:99
msgid ""
"Optional. A shared secret key provided by the server to add an additional "
"layer of security. Fill in only if provided. Example: "
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs=."
msgstr ""
-#: plinth/modules/wireguard/forms.py:120
+#: plinth/modules/wireguard/forms.py:105
msgid "Use this connection to send all outgoing traffic"
msgstr ""
-#: plinth/modules/wireguard/forms.py:122
+#: plinth/modules/wireguard/forms.py:107
msgid "Typically checked for a VPN service though which all traffic is sent."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:25
+#: plinth/modules/wireguard/templates/wireguard.html:10
#, fuzzy
#| msgid "Chat Server"
msgid "As a Server"
msgstr "Server Chat"
-#: plinth/modules/wireguard/templates/wireguard.html:27
+#: plinth/modules/wireguard/templates/wireguard.html:12
msgid "Peers allowed to connect to this server:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:33
+#: plinth/modules/wireguard/templates/wireguard.html:18
msgid "Allowed IPs"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:34
-#: plinth/modules/wireguard/templates/wireguard.html:90
+#: plinth/modules/wireguard/templates/wireguard.html:19
+#: plinth/modules/wireguard/templates/wireguard.html:75
#, fuzzy
#| msgid "Create Connection"
msgid "Last Connected Time"
msgstr "Crea Connessione"
-#: plinth/modules/wireguard/templates/wireguard.html:53
+#: plinth/modules/wireguard/templates/wireguard.html:38
#, python-format
msgid "No peers configured to connect to this %(box_name)s yet."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:62
+#: plinth/modules/wireguard/templates/wireguard.html:47
#, python-format
msgid "Public key for this %(box_name)s:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:68
+#: plinth/modules/wireguard/templates/wireguard.html:53
msgid "Not configured yet."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:72
+#: plinth/modules/wireguard/templates/wireguard.html:57
msgid "Add a new peer"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:76
-#: plinth/modules/wireguard/views.py:69
+#: plinth/modules/wireguard/templates/wireguard.html:61
+#: plinth/modules/wireguard/views.py:51
msgid "Add Allowed Client"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:79
+#: plinth/modules/wireguard/templates/wireguard.html:64
#, fuzzy
#| msgid "Chat Client"
msgid "As a Client"
msgstr "Client"
-#: plinth/modules/wireguard/templates/wireguard.html:81
+#: plinth/modules/wireguard/templates/wireguard.html:66
#, python-format
msgid "Servers that %(box_name)s will connect to:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:88
-#: plinth/modules/wireguard/templates/wireguard_delete_server.html:34
+#: plinth/modules/wireguard/templates/wireguard.html:73
+#: plinth/modules/wireguard/templates/wireguard_delete_server.html:19
msgid "Endpoint"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:111
+#: plinth/modules/wireguard/templates/wireguard.html:96
msgid "No connections to remote servers are configured yet."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:119
+#: plinth/modules/wireguard/templates/wireguard.html:104
msgid "Add a new server"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:123
-#: plinth/modules/wireguard/views.py:178
+#: plinth/modules/wireguard/templates/wireguard.html:108
+#: plinth/modules/wireguard/views.py:160
#, fuzzy
#| msgid "Add Connection"
msgid "Add Connection to Server"
msgstr "Aggiungi Connessione"
-#: plinth/modules/wireguard/templates/wireguard_add_client.html:34
+#: plinth/modules/wireguard/templates/wireguard_add_client.html:19
#, fuzzy
#| msgid "IRC Client"
msgid "Add Client"
msgstr "Client IRC"
-#: plinth/modules/wireguard/templates/wireguard_delete_client.html:29
+#: plinth/modules/wireguard/templates/wireguard_delete_client.html:14
msgid "Are you sure that you want to delete this client?"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_delete_server.html:29
+#: plinth/modules/wireguard/templates/wireguard_delete_server.html:14
msgid "Are you sure that you want to delete this server?"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_edit_client.html:34
+#: plinth/modules/wireguard/templates/wireguard_edit_client.html:19
#, fuzzy
#| msgid "Chat Client"
msgid "Update Client"
msgstr "Client"
-#: plinth/modules/wireguard/templates/wireguard_edit_server.html:34
+#: plinth/modules/wireguard/templates/wireguard_edit_server.html:19
#, fuzzy
#| msgid "Create Connection"
msgid "Update Connection"
msgstr "Crea Connessione"
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:27
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:12
#, python-format
msgid ""
"%(box_name)s will allow this client to connect to it. Ensure that the client "
"is configured with the following information."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:35
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:20
msgid "Client public key:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:39
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:24
msgid "IP address to use for client:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:43
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:46
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:28
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:31
msgid "Pre-shared key:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:47
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:32
#, fuzzy
#| msgid "Server domain"
msgid "Server endpoints:"
msgstr "Dominio server"
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:55
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:42
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:40
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:27
msgid "Server public key:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:65
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:64
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:50
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:49
msgid "Data transmitted:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:69
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:68
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:54
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:53
msgid "Data received:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:73
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:72
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:58
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:57
msgid "Latest handshake:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:29
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:14
#, python-format
msgid ""
"%(box_name)s will attempt to reach a WireGuard server with the following "
@@ -6602,155 +6715,155 @@ msgid ""
"public key and IP address."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:38
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:23
#, fuzzy
#| msgid "Server domain"
msgid "Server endpoint:"
msgstr "Dominio server"
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:50
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:35
msgid "Public key of this machine:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:54
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:39
msgid "IP address of this machine:"
msgstr ""
-#: plinth/modules/wireguard/views.py:64
+#: plinth/modules/wireguard/views.py:46
msgid "Added new client."
msgstr ""
-#: plinth/modules/wireguard/views.py:79 plinth/modules/wireguard/views.py:138
+#: plinth/modules/wireguard/views.py:61 plinth/modules/wireguard/views.py:120
#, fuzzy
#| msgid "This service already exists"
msgid "Client with public key already exists"
msgstr "Questo servizio è già presente"
-#: plinth/modules/wireguard/views.py:92
+#: plinth/modules/wireguard/views.py:74
msgid "Allowed Client"
msgstr ""
-#: plinth/modules/wireguard/views.py:114
+#: plinth/modules/wireguard/views.py:96
#, fuzzy
#| msgid "Update setup"
msgid "Updated client."
msgstr "Aggiorna impostazioni"
-#: plinth/modules/wireguard/views.py:119
+#: plinth/modules/wireguard/views.py:101
#, fuzzy
#| msgid "IRC Client"
msgid "Modify Client"
msgstr "Client IRC"
-#: plinth/modules/wireguard/views.py:152
+#: plinth/modules/wireguard/views.py:134
msgid "Delete Allowed Client"
msgstr ""
-#: plinth/modules/wireguard/views.py:161
+#: plinth/modules/wireguard/views.py:143
#, fuzzy
#| msgid "Archive deleted."
msgid "Client deleted."
msgstr "Archivio cancellato."
-#: plinth/modules/wireguard/views.py:163
+#: plinth/modules/wireguard/views.py:145
msgid "Client not found"
msgstr ""
-#: plinth/modules/wireguard/views.py:173
+#: plinth/modules/wireguard/views.py:155
#, fuzzy
#| msgid "Added custom service"
msgid "Added new server."
msgstr "Servizio personalizzato aggiunto"
-#: plinth/modules/wireguard/views.py:194
+#: plinth/modules/wireguard/views.py:176
#, fuzzy
#| msgid "Connection Type"
msgid "Connection to Server"
msgstr "Tipo Connessione"
-#: plinth/modules/wireguard/views.py:212
+#: plinth/modules/wireguard/views.py:194
#, fuzzy
#| msgid "Update setup"
msgid "Updated server."
msgstr "Aggiorna impostazioni"
-#: plinth/modules/wireguard/views.py:217
+#: plinth/modules/wireguard/views.py:199
#, fuzzy
#| msgid "Edit Connection"
msgid "Modify Connection to Server"
msgstr "Modifica Concessione"
-#: plinth/modules/wireguard/views.py:254
+#: plinth/modules/wireguard/views.py:236
#, fuzzy
#| msgid "Delete Connection"
msgid "Delete Connection to Server"
msgstr "Cancella Connessione"
-#: plinth/modules/wireguard/views.py:274
+#: plinth/modules/wireguard/views.py:256
#, fuzzy
#| msgid "Archive deleted."
msgid "Server deleted."
msgstr "Archivio cancellato."
-#: plinth/network.py:42
+#: plinth/network.py:27
msgid "PPPoE"
msgstr "PPPoE"
-#: plinth/network.py:43
+#: plinth/network.py:28
msgid "Generic"
msgstr ""
-#: plinth/package.py:137
+#: plinth/package.py:122
msgid "Error during installation"
msgstr ""
-#: plinth/package.py:159
+#: plinth/package.py:144
msgid "installing"
msgstr ""
-#: plinth/package.py:161
+#: plinth/package.py:146
msgid "downloading"
msgstr ""
-#: plinth/package.py:163
+#: plinth/package.py:148
msgid "media change"
msgstr ""
-#: plinth/package.py:165
+#: plinth/package.py:150
#, python-brace-format
msgid "configuration file: {file}"
msgstr ""
-#: plinth/templates/403.html:25
+#: plinth/templates/403.html:10
msgid "403 Forbidden"
msgstr ""
-#: plinth/templates/403.html:29
+#: plinth/templates/403.html:14
#, python-format
msgid "You don't have permission to access %(request_path)s on this server."
msgstr ""
-#: plinth/templates/404.html:25
+#: plinth/templates/404.html:10
msgid "404"
msgstr "404"
-#: plinth/templates/404.html:28
+#: plinth/templates/404.html:13
#, python-format
msgid "Requested page %(request_path)s was not found."
msgstr ""
-#: plinth/templates/404.html:34
+#: plinth/templates/404.html:19
msgid ""
"If you believe this missing page should exist, please file a bug at the "
"FreedomBox Service (Plinth) project issue tracker."
msgstr ""
-#: plinth/templates/500.html:25
+#: plinth/templates/500.html:10
msgid "500"
msgstr "500"
-#: plinth/templates/500.html:29
+#: plinth/templates/500.html:14
#, python-format
msgid ""
"This is an internal error and not something you caused or can fix. Please "
@@ -6759,137 +6872,137 @@ msgid ""
"href=\"%(status_log_url)s\">status log to the bug report."
msgstr ""
-#: plinth/templates/app.html:47
+#: plinth/templates/app-header.html:22
+msgid "Installation"
+msgstr ""
+
+#: plinth/templates/app.html:32
#, python-format
msgid "Service %(service_name)s is running."
msgstr ""
-#: plinth/templates/app.html:52
+#: plinth/templates/app.html:37
#, python-format
msgid "Service %(service_name)s is not running."
msgstr ""
-#: plinth/templates/base.html:50
+#: plinth/templates/base.html:35
#, python-format
msgid "Core functionality and web interface for %(box_name)s"
msgstr ""
-#: plinth/templates/base.html:96
+#: plinth/templates/base.html:81
msgid "Toggle navigation"
msgstr ""
-#: plinth/templates/base.html:120 plinth/templates/base.html:123
+#: plinth/templates/base.html:105 plinth/templates/base.html:108
msgid "Home"
msgstr ""
-#: plinth/templates/base.html:128 plinth/templates/base.html:132
+#: plinth/templates/base.html:113 plinth/templates/base.html:117
msgid "Apps"
msgstr ""
-#: plinth/templates/base.html:137 plinth/templates/base.html:141
+#: plinth/templates/base.html:122 plinth/templates/base.html:126
msgid "System"
msgstr ""
-#: plinth/templates/base.html:173 plinth/templates/base.html:174
+#: plinth/templates/base.html:158 plinth/templates/base.html:159
msgid "Change password"
msgstr ""
-#: plinth/templates/base.html:181 plinth/templates/base.html:182
+#: plinth/templates/base.html:166 plinth/templates/base.html:167
msgid "Restart"
msgstr ""
-#: plinth/templates/base.html:187 plinth/templates/base.html:188
+#: plinth/templates/base.html:172 plinth/templates/base.html:173
msgid "Shut down"
msgstr ""
-#: plinth/templates/base.html:195 plinth/templates/base.html:196
-#: plinth/templates/base.html:220 plinth/templates/base.html:222
+#: plinth/templates/base.html:180 plinth/templates/base.html:181
+#: plinth/templates/base.html:205 plinth/templates/base.html:207
msgid "Log out"
msgstr ""
-#: plinth/templates/base.html:204 plinth/templates/base.html:207
+#: plinth/templates/base.html:189 plinth/templates/base.html:192
msgid "Select language"
msgstr ""
-#: plinth/templates/base.html:212 plinth/templates/base.html:214
+#: plinth/templates/base.html:197 plinth/templates/base.html:199
msgid "Log in"
msgstr ""
-#: plinth/templates/clients.html:32
+#: plinth/templates/clients.html:17
msgid "Web"
msgstr ""
-#: plinth/templates/clients.html:57
+#: plinth/templates/clients.html:42
msgid "Desktop"
msgstr ""
-#: plinth/templates/clients.html:68
+#: plinth/templates/clients.html:53
msgid "GNU/Linux"
msgstr "GNU/Linux"
-#: plinth/templates/clients.html:70
+#: plinth/templates/clients.html:55
msgid "Windows"
msgstr "Windows"
-#: plinth/templates/clients.html:72
+#: plinth/templates/clients.html:57
msgid "macOS"
msgstr "macOS"
-#: plinth/templates/clients.html:88
+#: plinth/templates/clients.html:73
msgid "Mobile"
msgstr ""
-#: plinth/templates/clients.html:99
+#: plinth/templates/clients.html:84
msgid "Play Store"
msgstr ""
-#: plinth/templates/clients.html:101
+#: plinth/templates/clients.html:86
msgid "F-Droid"
msgstr "F-Droid"
-#: plinth/templates/clients.html:103
+#: plinth/templates/clients.html:88
msgid "App Store"
msgstr ""
-#: plinth/templates/clients.html:119
+#: plinth/templates/clients.html:104
msgid "Package"
msgstr ""
-#: plinth/templates/clients.html:126
+#: plinth/templates/clients.html:111
msgid "Debian:"
msgstr "Debian:"
-#: plinth/templates/clients.html:129
+#: plinth/templates/clients.html:114
msgid "Homebrew:"
msgstr ""
-#: plinth/templates/clients.html:132
+#: plinth/templates/clients.html:117
msgid "RPM:"
msgstr ""
-#: plinth/templates/first_setup.html:39
+#: plinth/templates/first_setup.html:24
#, python-format
msgid ""
"Please wait for %(box_name)s to finish installation. You can start using "
"your %(box_name)s once it is done."
msgstr ""
-#: plinth/templates/header.html:36
-msgid "Installation"
-msgstr ""
-
-#: plinth/templates/index.html:37
+#: plinth/templates/index.html:22
#, python-format
msgid ""
"Enable some applications to add shortcuts to "
"this page."
msgstr ""
-#: plinth/templates/index.html:59
+#: plinth/templates/index.html:44
msgid "Configure »"
msgstr ""
-#: plinth/templates/index.html:115
+#: plinth/templates/index.html:100
#, python-format
msgid ""
"%(box_name)s, a Debian pure blend, is a 100%% free software self-hosting web "
@@ -6897,7 +7010,7 @@ msgid ""
"communication tools respecting your privacy and data ownership."
msgstr ""
-#: plinth/templates/index.html:124
+#: plinth/templates/index.html:109
#, python-format
msgid ""
"This portal is a part of the %(box_name)s web interface. %(box_name)s is "
@@ -6905,57 +7018,57 @@ msgid ""
"Version 3 or later."
msgstr ""
-#: plinth/templates/index.html:144
+#: plinth/templates/index.html:129
msgid "Homepage"
msgstr ""
-#: plinth/templates/index.html:147
+#: plinth/templates/index.html:132
msgid "Source Code"
msgstr ""
-#: plinth/templates/index.html:150
+#: plinth/templates/index.html:135
msgid "Donate"
msgstr ""
-#: plinth/templates/index.html:154
+#: plinth/templates/index.html:139
msgid "FreedomBox Foundation"
msgstr ""
-#: plinth/templates/index.html:161
+#: plinth/templates/index.html:146
msgid "IRC Chatroom"
msgstr ""
-#: plinth/templates/index.html:166
+#: plinth/templates/index.html:151
msgid "Mailing list"
msgstr ""
-#: plinth/templates/internal-zone.html:26
+#: plinth/templates/internal-zone.html:11
#, python-format
msgid "%(service_name)s is available only on internal networks."
msgstr ""
-#: plinth/templates/internal-zone.html:32
+#: plinth/templates/internal-zone.html:17
msgid "Currently there are no network interfaces configured as internal."
msgstr ""
-#: plinth/templates/internal-zone.html:34
+#: plinth/templates/internal-zone.html:19
#, python-format
msgid ""
"Currently the following network interfaces are configured as internal: "
"%(interface_list)s"
msgstr ""
-#: plinth/templates/notifications-dropdown.html:26
+#: plinth/templates/notifications-dropdown.html:11
#, fuzzy
#| msgid "No certificate"
msgid "Notifications"
msgstr "Nessun certificato"
-#: plinth/templates/port-forwarding-info.html:23
+#: plinth/templates/port-forwarding-info.html:8
msgid "Port Forwarding"
msgstr ""
-#: plinth/templates/port-forwarding-info.html:26
+#: plinth/templates/port-forwarding-info.html:11
#, python-format
msgid ""
"If your FreedomBox is behind a router, you will need to set up port "
@@ -6963,63 +7076,63 @@ msgid ""
"%(service_name)s:"
msgstr ""
-#: plinth/templates/setup.html:51
+#: plinth/templates/setup.html:36
msgid "Install this application?"
msgstr ""
-#: plinth/templates/setup.html:55
+#: plinth/templates/setup.html:40
msgid "This application needs an update. Update now?"
msgstr ""
-#: plinth/templates/setup.html:66
+#: plinth/templates/setup.html:51
msgid ""
"Another installation or upgrade is already running. Please wait for a few "
"moments before trying again."
msgstr ""
-#: plinth/templates/setup.html:73
+#: plinth/templates/setup.html:58
msgid "This application is currently not available in your distribution."
msgstr ""
-#: plinth/templates/setup.html:87
+#: plinth/templates/setup.html:72
msgid "Install"
msgstr ""
-#: plinth/templates/setup.html:98
+#: plinth/templates/setup.html:83
msgid "Performing pre-install operation"
msgstr ""
-#: plinth/templates/setup.html:102
+#: plinth/templates/setup.html:87
msgid "Performing post-install operation"
msgstr ""
-#: plinth/templates/setup.html:107
+#: plinth/templates/setup.html:92
#, python-format
msgid "Installing %(package_names)s: %(status)s"
msgstr ""
-#: plinth/templates/setup.html:117
+#: plinth/templates/setup.html:102
#, python-format
msgid "%(percentage)s%% complete"
msgstr "%(percentage)s%% completata"
-#: plinth/templates/toolbar.html:38
+#: plinth/templates/toolbar.html:23
msgid "Launch web client"
msgstr "Avvia client web"
-#: plinth/templates/toolbar.html:47
+#: plinth/templates/toolbar.html:32
msgid "Client Apps"
msgstr ""
-#: plinth/views.py:179
+#: plinth/views.py:189
msgid "Application enabled"
msgstr "Applicazione abilitata"
-#: plinth/views.py:182
+#: plinth/views.py:192
msgid "Application disabled"
msgstr "Applicazione disabilitata"
-#: plinth/web_framework.py:190
+#: plinth/web_framework.py:107
msgid "Gujarati"
msgstr ""
diff --git a/plinth/locale/ja/LC_MESSAGES/django.po b/plinth/locale/ja/LC_MESSAGES/django.po
index 09c493fa7..582eeed4e 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: 2020-02-14 21:26+0200\n"
+"POT-Creation-Date: 2020-02-24 19:12-0500\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME This means that devices on the Internet can reach you when you are " +"connected to the Internet. Every time you connect to the Internet with your " +"Internet Service Provider (ISP), you may get a different IP address, " +"especially after some offline time. Many ISPs offer this type of " +"connectivity. If you have a public IP address but are unsure if it changes " +"over time or not, it is safer to choose this option.
" +msgstr "" + #: plinth/modules/networks/forms.py:313 +#, python-brace-format +msgid "" +"I have a public IP address that does not change overtime (recommended)This means that devices on the Internet can reach you " +"when you are connected to the Internet. Every time you connect to the " +"Internet with your Internet Service Provider (ISP), you always get the same " +"IP address. This is the most trouble-free setup for many {box_name} services " +"but very few ISPs offer this. You may be able to get this service from your " +"ISP by making an additional payment.
" +msgstr "" + +#: plinth/modules/networks/forms.py:326 +#, python-brace-format +msgid "" +"I dont have a public IP addressThis means that " +"devices on the Internet can not reach you when you are connected to " +"the Internet. Every time you connect to the Internet with your Internet " +"Service Provider (ISP), you get an IP address that is only relevant for " +"local networks. Many ISPs offer this type of connectivity. This is the most " +"troublesome situation for hosting services at home. {box_name} provides many " +"workaround solutions but each solution has some limitations.
" +msgstr "" + +#: plinth/modules/networks/forms.py:351 msgid "Preferred router configuration" msgstr "" -#: plinth/modules/networks/forms.py:318 +#: plinth/modules/networks/forms.py:356 #, python-brace-format msgid "" -"Use DMZ feature to forward all trafficMost routers " -"provide a configuration setting called DMZ. This will allow the router to " -"forward all incoming traffic from the internet to a single IP address such " -"as the {box_name}'s address. First remember to configure a static local IP " -"address for your {box_name} in your router's configuration.
" +"Use DMZ feature to forward all traffic (recommended)Most routers provide a configuration setting called DMZ. This will allow " +"the router to forward all incoming traffic from the Internet to a single IP " +"address such as the {box_name}'s IP address. First remember to configure a " +"static local IP address for your {box_name} in your router's configuration." +"p>" msgstr "" -#: plinth/modules/networks/forms.py:332 +#: plinth/modules/networks/forms.py:368 #, python-brace-format msgid "" -"Forward Specific Traffic as needed by each application
You may alternatively choose to forward only specific traffic to your " "{box_name}. This is ideal if you have other servers like {box_name} in your " "network or if your router does not support DMZ feature. All applications " @@ -3064,276 +3127,280 @@ msgid "" "to be forwarded for that application to work.
" msgstr "" -#: plinth/modules/networks/forms.py:349 +#: plinth/modules/networks/forms.py:382 msgid "" -"Router is currently unconfiguredChoose this if you " +"Router is currently unconfigured
Choose this if you " "have not configured or are unable to configure the router currently and wish " "to be reminded later. Some of the other configuration steps may fail.
" msgstr "" -#: plinth/modules/networks/networks.py:43 +#: plinth/modules/networks/networks.py:32 msgid "Network Connections" msgstr "" -#: plinth/modules/networks/networks.py:59 +#: plinth/modules/networks/networks.py:46 msgid "Cannot show connection: Connection not found." msgstr "" -#: plinth/modules/networks/networks.py:94 +#: plinth/modules/networks/networks.py:81 msgid "Connection Information" msgstr "" -#: plinth/modules/networks/networks.py:108 +#: plinth/modules/networks/networks.py:95 msgid "Cannot edit connection: Connection not found." msgstr "" -#: plinth/modules/networks/networks.py:114 +#: plinth/modules/networks/networks.py:101 msgid "This type of connection is not yet understood." msgstr "" -#: plinth/modules/networks/networks.py:136 -#: plinth/modules/networks/networks.py:220 -#: plinth/modules/networks/templates/connections_edit.html:35 +#: plinth/modules/networks/networks.py:123 +#: plinth/modules/networks/networks.py:207 +#: plinth/modules/networks/templates/connections_edit.html:20 msgid "Edit Connection" msgstr "" -#: plinth/modules/networks/networks.py:232 +#: plinth/modules/networks/networks.py:219 #, python-brace-format msgid "Activated connection {name}." msgstr "" -#: plinth/modules/networks/networks.py:236 +#: plinth/modules/networks/networks.py:223 msgid "Failed to activate connection: Connection not found." msgstr "" -#: plinth/modules/networks/networks.py:242 +#: plinth/modules/networks/networks.py:229 #, python-brace-format msgid "Failed to activate connection {name}: No suitable device is available." msgstr "" -#: plinth/modules/networks/networks.py:255 +#: plinth/modules/networks/networks.py:242 #, python-brace-format msgid "Deactivated connection {name}." msgstr "" -#: plinth/modules/networks/networks.py:259 +#: plinth/modules/networks/networks.py:246 msgid "Failed to de-activate connection: Connection not found." msgstr "" -#: plinth/modules/networks/networks.py:269 -#: plinth/modules/networks/templates/connections_list.html:62 -#: plinth/modules/networks/templates/connections_list.html:64 +#: plinth/modules/networks/networks.py:256 +#: plinth/modules/networks/templates/connections_list.html:12 +#: plinth/modules/networks/templates/connections_list.html:14 msgid "Nearby Wi-Fi Networks" msgstr "" -#: plinth/modules/networks/networks.py:293 -#: plinth/modules/networks/templates/connections_list.html:67 -#: plinth/modules/networks/templates/connections_list.html:69 -#: plinth/modules/wireguard/templates/wireguard_add_server.html:34 +#: plinth/modules/networks/networks.py:280 +#: plinth/modules/networks/templates/connections_list.html:17 +#: plinth/modules/networks/templates/connections_list.html:19 +#: plinth/modules/wireguard/templates/wireguard_add_server.html:19 msgid "Add Connection" msgstr "" -#: plinth/modules/networks/networks.py:311 +#: plinth/modules/networks/networks.py:298 msgid "Adding New Generic Connection" msgstr "" -#: plinth/modules/networks/networks.py:329 +#: plinth/modules/networks/networks.py:316 msgid "Adding New Ethernet Connection" msgstr "" -#: plinth/modules/networks/networks.py:347 +#: plinth/modules/networks/networks.py:334 msgid "Adding New PPPoE Connection" msgstr "" -#: plinth/modules/networks/networks.py:382 +#: plinth/modules/networks/networks.py:369 msgid "Adding New Wi-Fi Connection" msgstr "" -#: plinth/modules/networks/networks.py:397 +#: plinth/modules/networks/networks.py:384 #, python-brace-format msgid "Connection {name} deleted." msgstr "" -#: plinth/modules/networks/networks.py:401 -#: plinth/modules/networks/networks.py:411 +#: plinth/modules/networks/networks.py:388 +#: plinth/modules/networks/networks.py:398 msgid "Failed to delete connection: Connection not found." msgstr "" -#: plinth/modules/networks/networks.py:416 -#: plinth/modules/networks/templates/connections_delete.html:26 +#: plinth/modules/networks/networks.py:403 +#: plinth/modules/networks/templates/connections_delete.html:11 msgid "Delete Connection" msgstr "" -#: plinth/modules/networks/networks.py:442 +#: plinth/modules/networks/networks.py:428 msgid "Router configuration type saved." msgstr "" -#: plinth/modules/networks/templates/connection_show.html:43 +#: plinth/modules/networks/networks.py:474 +msgid "Internet connection type saved." +msgstr "" + +#: plinth/modules/networks/templates/connection_show.html:28 msgid "Edit connection" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:43 -#: plinth/modules/wireguard/templates/wireguard_show_client.html:83 -#: plinth/modules/wireguard/templates/wireguard_show_server.html:84 -#: plinth/templates/base.html:167 plinth/templates/base.html:168 +#: plinth/modules/networks/templates/connection_show.html:28 +#: plinth/modules/wireguard/templates/wireguard_show_client.html:68 +#: plinth/modules/wireguard/templates/wireguard_show_server.html:69 +#: plinth/templates/base.html:152 plinth/templates/base.html:153 msgid "Edit" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:50 -#: plinth/modules/networks/templates/connections_list.html:90 +#: plinth/modules/networks/templates/connection_show.html:35 +#: plinth/modules/networks/templates/connections_list.html:40 msgid "Deactivate" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:57 -#: plinth/modules/networks/templates/connections_list.html:98 +#: plinth/modules/networks/templates/connection_show.html:42 +#: plinth/modules/networks/templates/connections_list.html:48 msgid "Activate" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:63 +#: plinth/modules/networks/templates/connection_show.html:48 msgid "Delete connection" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:66 -#: plinth/modules/networks/templates/connections_diagram.html:73 -#: plinth/modules/networks/templates/connections_diagram.html:76 -#: plinth/modules/networks/templates/connections_diagram.html:105 -#: plinth/modules/networks/templates/connections_diagram.html:127 +#: plinth/modules/networks/templates/connection_show.html:51 +#: plinth/modules/networks/templates/connections_diagram.html:58 +#: plinth/modules/networks/templates/connections_diagram.html:61 +#: plinth/modules/networks/templates/connections_diagram.html:90 +#: plinth/modules/networks/templates/connections_diagram.html:112 msgid "Connection" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:71 +#: plinth/modules/networks/templates/connection_show.html:56 msgid "Primary connection" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:73 -#: plinth/modules/networks/templates/connection_show.html:217 -#: plinth/modules/networks/templates/connection_show.html:256 +#: plinth/modules/networks/templates/connection_show.html:58 +#: plinth/modules/networks/templates/connection_show.html:202 +#: plinth/modules/networks/templates/connection_show.html:241 msgid "yes" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:84 -#: plinth/modules/storage/templates/storage.html:40 +#: plinth/modules/networks/templates/connection_show.html:69 +#: plinth/modules/storage/templates/storage.html:25 msgid "Device" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:88 +#: plinth/modules/networks/templates/connection_show.html:73 msgid "State" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:93 +#: plinth/modules/networks/templates/connection_show.html:78 msgid "State reason" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:102 +#: plinth/modules/networks/templates/connection_show.html:87 msgid "MAC address" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:106 +#: plinth/modules/networks/templates/connection_show.html:91 msgid "Interface" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:110 -#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:33 -#: plinth/modules/snapshot/templates/snapshot_manage.html:45 -#: plinth/modules/snapshot/templates/snapshot_rollback.html:41 +#: plinth/modules/networks/templates/connection_show.html:95 +#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:18 +#: plinth/modules/snapshot/templates/snapshot_manage.html:30 +#: plinth/modules/snapshot/templates/snapshot_rollback.html:26 msgid "Description" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:116 +#: plinth/modules/networks/templates/connection_show.html:101 msgid "Physical Link" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:121 +#: plinth/modules/networks/templates/connection_show.html:106 msgid "Link state" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:125 +#: plinth/modules/networks/templates/connection_show.html:110 msgid "cable is connected" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:128 +#: plinth/modules/networks/templates/connection_show.html:113 msgid "please check cable" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:133 -#: plinth/modules/networks/templates/connection_show.html:149 +#: plinth/modules/networks/templates/connection_show.html:118 +#: plinth/modules/networks/templates/connection_show.html:134 msgid "Speed" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:135 +#: plinth/modules/networks/templates/connection_show.html:120 #, python-format msgid "%(ethernet_speed)s Mbit/s" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:151 +#: plinth/modules/networks/templates/connection_show.html:136 #, python-format msgid "%(wireless_bitrate)s Mbit/s" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:163 +#: plinth/modules/networks/templates/connection_show.html:148 msgid "Signal strength" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:181 +#: plinth/modules/networks/templates/connection_show.html:166 msgid "IPv4" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:186 -#: plinth/modules/networks/templates/connection_show.html:227 -#: plinth/modules/shadowsocks/forms.py:64 +#: plinth/modules/networks/templates/connection_show.html:171 +#: plinth/modules/networks/templates/connection_show.html:212 +#: plinth/modules/shadowsocks/forms.py:49 msgid "Method" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:193 -#: plinth/modules/networks/templates/connection_show.html:234 +#: plinth/modules/networks/templates/connection_show.html:178 +#: plinth/modules/networks/templates/connection_show.html:219 msgid "IP address" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:209 -#: plinth/modules/networks/templates/connection_show.html:248 +#: plinth/modules/networks/templates/connection_show.html:194 +#: plinth/modules/networks/templates/connection_show.html:233 msgid "DNS server" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:216 -#: plinth/modules/networks/templates/connection_show.html:255 -#: plinth/modules/storage/forms.py:156 +#: plinth/modules/networks/templates/connection_show.html:201 +#: plinth/modules/networks/templates/connection_show.html:240 +#: plinth/modules/storage/forms.py:141 msgid "Default" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:222 +#: plinth/modules/networks/templates/connection_show.html:207 msgid "IPv6" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:263 +#: plinth/modules/networks/templates/connection_show.html:248 msgid "This connection is not active." msgstr "" -#: plinth/modules/networks/templates/connection_show.html:266 -#: plinth/modules/security/__init__.py:38 plinth/modules/security/views.py:47 +#: plinth/modules/networks/templates/connection_show.html:251 +#: plinth/modules/security/__init__.py:45 msgid "Security" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:271 -#: plinth/modules/networks/templates/connection_show.html:291 -#: plinth/modules/networks/templates/connection_show.html:310 +#: plinth/modules/networks/templates/connection_show.html:256 +#: plinth/modules/networks/templates/connection_show.html:276 +#: plinth/modules/networks/templates/connection_show.html:295 msgid "Firewall zone" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:280 +#: plinth/modules/networks/templates/connection_show.html:265 msgid "" "This interface should be connected to a local network/machine. If you " "connect this interface to a public network, services meant to be available " "only internally will become available externally. This is a security risk." msgstr "" -#: plinth/modules/networks/templates/connection_show.html:300 +#: plinth/modules/networks/templates/connection_show.html:285 msgid "" "This interface should receive your Internet connection. If you connect it to " "a local network/machine, many services meant to available only internally " "will not be available." msgstr "" -#: plinth/modules/networks/templates/connection_show.html:319 +#: plinth/modules/networks/templates/connection_show.html:304 #, python-format msgid "" "This interface is not maintained by %(box_name)s. Its security status is " @@ -3342,109 +3409,132 @@ msgid "" "connection and re-configure it." msgstr "" -#: plinth/modules/networks/templates/connections_create.html:34 +#: plinth/modules/networks/templates/connections_create.html:19 msgid "Create Connection" msgstr "" -#: plinth/modules/networks/templates/connections_delete.html:29 +#: plinth/modules/networks/templates/connections_delete.html:14 #, python-format msgid "Delete connection %(name)s permanently?" msgstr "" -#: plinth/modules/networks/templates/connections_diagram.html:65 +#: plinth/modules/networks/templates/connections_diagram.html:50 msgid "Internet" msgstr "" -#: plinth/modules/networks/templates/connections_diagram.html:70 -#: plinth/modules/networks/templates/connections_diagram.html:102 +#: plinth/modules/networks/templates/connections_diagram.html:55 +#: plinth/modules/networks/templates/connections_diagram.html:87 msgid "Spacing" msgstr "" -#: plinth/modules/networks/templates/connections_diagram.html:83 -#: plinth/modules/networks/templates/connections_diagram.html:113 -#: plinth/network.py:40 +#: plinth/modules/networks/templates/connections_diagram.html:68 +#: plinth/modules/networks/templates/connections_diagram.html:98 +#: plinth/network.py:25 msgid "Ethernet" msgstr "" -#: plinth/modules/networks/templates/connections_diagram.html:86 -#: plinth/modules/networks/templates/connections_diagram.html:116 -#: plinth/network.py:41 +#: plinth/modules/networks/templates/connections_diagram.html:71 +#: plinth/modules/networks/templates/connections_diagram.html:101 +#: plinth/network.py:26 msgid "Wi-Fi" msgstr "" -#: plinth/modules/networks/templates/connections_diagram.html:89 +#: plinth/modules/networks/templates/connections_diagram.html:74 #, python-format msgid "Show connection %(connection.name)s" msgstr "" -#: plinth/modules/networks/templates/connections_diagram.html:119 +#: plinth/modules/networks/templates/connections_diagram.html:104 #, python-format msgid "Show connection %(name)s" msgstr "" -#: plinth/modules/networks/templates/connections_diagram.html:131 +#: plinth/modules/networks/templates/connections_diagram.html:116 msgid "Computer" msgstr "" -#: plinth/modules/networks/templates/connections_list.html:58 +#: plinth/modules/networks/templates/connections_list.html:8 msgid "Connections" msgstr "" -#: plinth/modules/networks/templates/connections_list.html:79 +#: plinth/modules/networks/templates/connections_list.html:29 #, python-format msgid "Delete connection %(name)s" msgstr "" -#: plinth/modules/networks/templates/connections_list.html:104 +#: plinth/modules/networks/templates/connections_list.html:54 msgid "Active" msgstr "" -#: plinth/modules/networks/templates/connections_list.html:107 +#: plinth/modules/networks/templates/connections_list.html:57 msgid "Inactive" msgstr "" -#: plinth/modules/networks/templates/connections_list.html:124 -#, python-format -msgid "%(box_name)s Internet Connectivity" -msgstr "" - -#: plinth/modules/networks/templates/connections_list.html:129 -#, python-format -msgid "" -"The following best describes how your %(box_name)s is connected in your " -"network. This information is used only to suggest necessary configuration " -"actions." -msgstr "" - -#: plinth/modules/networks/templates/connections_list.html:137 -#, python-format -msgid "" -"Your %(box_name)s gets its internet from your Router via WiFi or Ethernet " -"cable. This is a typical home setup." -msgstr "" - -#: plinth/modules/networks/templates/connections_list.html:145 -#: plinth/modules/networks/templates/connections_list.html:147 -msgid "Update..." -msgstr "" - -#: plinth/modules/networks/templates/connections_type_select.html:34 +#: plinth/modules/networks/templates/connections_type_select.html:19 msgid "Create..." msgstr "" -#: plinth/modules/networks/templates/router_configuration_content.html:25 +#: plinth/modules/networks/templates/internet_connectivity_content.html:10 +msgid "What Type Of Internet Connection Do You Have?" +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_content.html:16 +msgid "" +"Select an option that best describes the type of Internet connection. This " +"information is used only to guide you with further setup." +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_firstboot.html:18 +#: plinth/modules/networks/templates/router_configuration_firstboot.html:18 +msgid "Skip this step" +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_firstboot.html:19 +#: plinth/modules/networks/templates/router_configuration_firstboot.html:19 +msgid "Next" +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:9 +msgid "Your Internet Connection Type" +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:14 +msgid "" +"The following best describes the type of Internet connection provided by " +"your ISP. This information is only used to suggest you necessary " +"configuration actions." +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:23 +msgid "My ISP provides a public IP address that does not change over time." +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:27 +msgid "My ISP provides a public IP address that may change over time." +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:31 +msgid "My ISP does not provide a public IP address." +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:37 +#: plinth/modules/networks/templates/router_configuration_main.html:29 +msgid "Update..." +msgstr "" + +#: plinth/modules/networks/templates/router_configuration_content.html:10 #, python-format msgid "Setup %(box_name)s Behind a Router" msgstr "" -#: plinth/modules/networks/templates/router_configuration_content.html:31 +#: plinth/modules/networks/templates/router_configuration_content.html:16 #, python-format msgid "" "Your %(box_name)s gets its internet connection from your router via Wi-Fi or " "Ethernet cable. This is a typical home setup." msgstr "" -#: plinth/modules/networks/templates/router_configuration_content.html:38 +#: plinth/modules/networks/templates/router_configuration_content.html:23 #, python-format msgid "" "With this setup, any device on the internet trying to reach your " @@ -3453,24 +3543,24 @@ msgid "" "the services." msgstr "" -#: plinth/modules/networks/templates/router_configuration_content.html:47 +#: plinth/modules/networks/templates/router_configuration_content.html:32 msgid "" "If you don't have control over your router, choose not to configure it. To " -"see options, to overcome this limitation, choose 'no public address' option " +"see options to overcome this limitation, choose 'no public address' option " "in Internet connection type selection." msgstr "" -#: plinth/modules/networks/templates/router_configuration_content.html:54 +#: plinth/modules/networks/templates/router_configuration_content.html:39 msgid "Choose How You Wish to Configure Your Router" msgstr "" -#: plinth/modules/networks/templates/router_configuration_content.html:57 +#: plinth/modules/networks/templates/router_configuration_content.html:42 msgid "" "You will need to login to your router's administration console provided by " "the router. This may look like one of the following:" msgstr "" -#: plinth/modules/networks/templates/router_configuration_content.html:69 +#: plinth/modules/networks/templates/router_configuration_content.html:54 msgid "" "The username and password is configured by you when you first setup the " "router. For many routers, this information is printed at the back of the " @@ -3480,24 +3570,27 @@ msgid "" "full instructions on how to perform this task." msgstr "" -#: plinth/modules/networks/templates/router_configuration_firstboot.html:33 -msgid "skip this step" +#: plinth/modules/networks/templates/router_configuration_main.html:9 +#, python-format +msgid "%(box_name)s Internet Connectivity" msgstr "" -#: plinth/modules/networks/templates/router_configuration_firstboot.html:35 -msgid "Next" +#: plinth/modules/networks/templates/router_configuration_main.html:15 +#, python-format +msgid "" +"The following best describes how your %(box_name)s is connected in your " +"network. This information is used only to suggest necessary configuration " +"actions." msgstr "" -#: plinth/modules/openvpn/__init__.py:39 plinth/modules/openvpn/manifest.py:33 -msgid "OpenVPN" +#: plinth/modules/networks/templates/router_configuration_main.html:23 +#, python-format +msgid "" +"Your %(box_name)s gets its Internet from your Router via Wi-Fi or Ethernet " +"cable. This is a typical home setup." msgstr "" -#: plinth/modules/openvpn/__init__.py:43 -#: plinth/modules/wireguard/__init__.py:40 -msgid "Virtual Private Network" -msgstr "" - -#: plinth/modules/openvpn/__init__.py:47 +#: plinth/modules/openvpn/__init__.py:26 #, python-brace-format msgid "" "Virtual Private Network (VPN) is a technique for securely connecting two " @@ -3508,21 +3601,30 @@ msgid "" "security and anonymity." msgstr "" -#: plinth/modules/openvpn/__init__.py:79 +#: plinth/modules/openvpn/__init__.py:49 plinth/modules/openvpn/manifest.py:18 +msgid "OpenVPN" +msgstr "" + +#: plinth/modules/openvpn/__init__.py:50 +#: plinth/modules/wireguard/__init__.py:53 +msgid "Virtual Private Network" +msgstr "" + +#: plinth/modules/openvpn/__init__.py:61 #, python-brace-format msgid "" "Download Profile" msgstr "" -#: plinth/modules/openvpn/forms.py:27 +#: plinth/modules/openvpn/forms.py:12 msgid "Enable OpenVPN server" msgstr "" -#: plinth/modules/openvpn/manifest.py:63 -msgid "TunnelBlick" +#: plinth/modules/openvpn/manifest.py:48 +msgid "Tunnelblick" msgstr "" -#: plinth/modules/openvpn/templates/openvpn.html:42 +#: plinth/modules/openvpn/templates/openvpn.html:27 #, python-format msgid "" "OpenVPN has not yet been setup. Performing a secure setup takes a very long " @@ -3530,15 +3632,15 @@ msgid "" "If the setup is interrupted, you may start it again." msgstr "" -#: plinth/modules/openvpn/templates/openvpn.html:55 +#: plinth/modules/openvpn/templates/openvpn.html:40 msgid "Start setup" msgstr "" -#: plinth/modules/openvpn/templates/openvpn.html:64 +#: plinth/modules/openvpn/templates/openvpn.html:49 msgid "OpenVPN setup is running" msgstr "" -#: plinth/modules/openvpn/templates/openvpn.html:68 +#: plinth/modules/openvpn/templates/openvpn.html:53 #, python-format msgid "" "To perform a secure setup, this process takes a very long time. Depending " @@ -3546,11 +3648,11 @@ msgid "" "interrupted, you may start it again." msgstr "" -#: plinth/modules/openvpn/templates/openvpn.html:87 +#: plinth/modules/openvpn/templates/openvpn.html:72 msgid "Profile" msgstr "" -#: plinth/modules/openvpn/templates/openvpn.html:90 +#: plinth/modules/openvpn/templates/openvpn.html:75 #, python-format msgid "" "To connect to %(box_name)s's VPN, you need to download a profile and feed it " @@ -3559,32 +3661,24 @@ msgid "" "clients and instructions on how to configure them." msgstr "" -#: plinth/modules/openvpn/templates/openvpn.html:100 +#: plinth/modules/openvpn/templates/openvpn.html:85 #, python-format msgid "Profile is specific to each user of %(box_name)s. Keep it a secret." msgstr "" -#: plinth/modules/openvpn/templates/openvpn.html:111 +#: plinth/modules/openvpn/templates/openvpn.html:96 msgid "Download my profile" msgstr "" -#: plinth/modules/openvpn/views.py:133 +#: plinth/modules/openvpn/views.py:114 msgid "Setup completed." msgstr "" -#: plinth/modules/openvpn/views.py:135 +#: plinth/modules/openvpn/views.py:116 msgid "Setup failed." msgstr "" -#: plinth/modules/pagekite/__init__.py:39 -msgid "PageKite" -msgstr "" - -#: plinth/modules/pagekite/__init__.py:41 -msgid "Public Visibility" -msgstr "" - -#: plinth/modules/pagekite/__init__.py:45 +#: plinth/modules/pagekite/__init__.py:26 #, python-brace-format msgid "" "PageKite is a system for exposing {box_name} services when you don't have a " @@ -3593,33 +3687,33 @@ msgid "" "following situations:" msgstr "" -#: plinth/modules/pagekite/__init__.py:50 +#: plinth/modules/pagekite/__init__.py:31 #, python-brace-format msgid "{box_name} is behind a restricted firewall." msgstr "" -#: plinth/modules/pagekite/__init__.py:53 +#: plinth/modules/pagekite/__init__.py:34 #, python-brace-format msgid "{box_name} is connected to a (wireless) router which you don't control." msgstr "" -#: plinth/modules/pagekite/__init__.py:55 +#: plinth/modules/pagekite/__init__.py:36 msgid "" "Your ISP does not provide you an external IP address and instead provides " "Internet connection through NAT." msgstr "" -#: plinth/modules/pagekite/__init__.py:57 +#: plinth/modules/pagekite/__init__.py:38 msgid "" "Your ISP does not provide you a static IP address and your IP address " "changes every time you connect to Internet." msgstr "" -#: plinth/modules/pagekite/__init__.py:59 +#: plinth/modules/pagekite/__init__.py:40 msgid "Your ISP limits incoming connections." msgstr "" -#: plinth/modules/pagekite/__init__.py:61 +#: plinth/modules/pagekite/__init__.py:42 #, python-brace-format msgid "" "PageKite works around NAT, firewalls and IP address limitations by using a " @@ -3628,138 +3722,146 @@ msgid "" "the future it might be possible to use your buddy's {box_name} for this." msgstr "" -#: plinth/modules/pagekite/__init__.py:87 +#: plinth/modules/pagekite/__init__.py:62 +msgid "PageKite" +msgstr "" + +#: plinth/modules/pagekite/__init__.py:64 +msgid "Public Visibility" +msgstr "" + +#: plinth/modules/pagekite/__init__.py:74 msgid "PageKite Domain" msgstr "" -#: plinth/modules/pagekite/forms.py:66 +#: plinth/modules/pagekite/forms.py:51 msgid "Server domain" msgstr "" -#: plinth/modules/pagekite/forms.py:68 +#: plinth/modules/pagekite/forms.py:53 msgid "" "Select your pagekite server. Set \"pagekite.net\" to use the default " "pagekite.net server." msgstr "" -#: plinth/modules/pagekite/forms.py:71 plinth/modules/shadowsocks/forms.py:55 +#: plinth/modules/pagekite/forms.py:56 plinth/modules/shadowsocks/forms.py:40 msgid "Server port" msgstr "" -#: plinth/modules/pagekite/forms.py:72 +#: plinth/modules/pagekite/forms.py:57 msgid "Port of your pagekite server (default: 80)" msgstr "" -#: plinth/modules/pagekite/forms.py:74 +#: plinth/modules/pagekite/forms.py:59 msgid "Kite name" msgstr "" -#: plinth/modules/pagekite/forms.py:75 +#: plinth/modules/pagekite/forms.py:60 msgid "Example: mybox.pagekite.me" msgstr "" -#: plinth/modules/pagekite/forms.py:77 +#: plinth/modules/pagekite/forms.py:62 msgid "Invalid kite name" msgstr "" -#: plinth/modules/pagekite/forms.py:81 +#: plinth/modules/pagekite/forms.py:66 msgid "Kite secret" msgstr "" -#: plinth/modules/pagekite/forms.py:82 +#: plinth/modules/pagekite/forms.py:67 msgid "" "A secret associated with the kite or the default secret for your account if " "no secret is set on the kite." msgstr "" -#: plinth/modules/pagekite/forms.py:98 +#: plinth/modules/pagekite/forms.py:83 msgid "Kite details set" msgstr "" -#: plinth/modules/pagekite/forms.py:105 +#: plinth/modules/pagekite/forms.py:90 msgid "Pagekite server set" msgstr "" -#: plinth/modules/pagekite/forms.py:129 +#: plinth/modules/pagekite/forms.py:114 msgid "PageKite enabled" msgstr "" -#: plinth/modules/pagekite/forms.py:132 +#: plinth/modules/pagekite/forms.py:117 msgid "PageKite disabled" msgstr "" -#: plinth/modules/pagekite/forms.py:148 +#: plinth/modules/pagekite/forms.py:133 msgid "protocol" msgstr "" -#: plinth/modules/pagekite/forms.py:151 +#: plinth/modules/pagekite/forms.py:136 msgid "external (frontend) port" msgstr "" -#: plinth/modules/pagekite/forms.py:154 +#: plinth/modules/pagekite/forms.py:139 msgid "internal (freedombox) port" msgstr "" -#: plinth/modules/pagekite/forms.py:155 +#: plinth/modules/pagekite/forms.py:140 msgid "Enable Subdomains" msgstr "" -#: plinth/modules/pagekite/forms.py:189 +#: plinth/modules/pagekite/forms.py:174 msgid "Deleted custom service" msgstr "" -#: plinth/modules/pagekite/forms.py:222 +#: plinth/modules/pagekite/forms.py:207 msgid "" "This service is available as a standard service. Please use the \"Standard " "Services\" page to enable it." msgstr "" -#: plinth/modules/pagekite/forms.py:231 +#: plinth/modules/pagekite/forms.py:216 msgid "Added custom service" msgstr "" -#: plinth/modules/pagekite/forms.py:234 +#: plinth/modules/pagekite/forms.py:219 msgid "This service already exists" msgstr "" -#: plinth/modules/pagekite/templates/pagekite_configure.html:47 +#: plinth/modules/pagekite/templates/pagekite_configure.html:32 msgid "Custom Services" msgstr "" -#: plinth/modules/pagekite/templates/pagekite_configure.html:50 -#: plinth/modules/pagekite/templates/pagekite_configure.html:52 +#: plinth/modules/pagekite/templates/pagekite_configure.html:35 +#: plinth/modules/pagekite/templates/pagekite_configure.html:37 msgid "Add Custom Service" msgstr "" -#: plinth/modules/pagekite/templates/pagekite_configure.html:57 +#: plinth/modules/pagekite/templates/pagekite_configure.html:42 msgid "Existing custom services" msgstr "" -#: plinth/modules/pagekite/templates/pagekite_configure.html:71 +#: plinth/modules/pagekite/templates/pagekite_configure.html:56 #, python-format msgid "connected to %(backend_host)s:%(backend_port)s" msgstr "" -#: plinth/modules/pagekite/templates/pagekite_configure.html:83 +#: plinth/modules/pagekite/templates/pagekite_configure.html:68 msgid "Delete this service" msgstr "" -#: plinth/modules/pagekite/templates/pagekite_custom_services.html:30 +#: plinth/modules/pagekite/templates/pagekite_custom_services.html:15 msgid "Add custom PageKite service" msgstr "" -#: plinth/modules/pagekite/templates/pagekite_custom_services.html:32 +#: plinth/modules/pagekite/templates/pagekite_custom_services.html:17 msgid "" "Warning:imaps://imap.gmail.com. "
@@ -4071,17 +4163,22 @@ msgid ""
"a>)."
msgstr ""
-#: plinth/modules/samba/__init__.py:46
-msgid "Samba"
+#: plinth/modules/roundcube/__init__.py:54
+#: plinth/modules/roundcube/manifest.py:9
+msgid "Roundcube"
msgstr ""
-#: plinth/modules/samba/__init__.py:53
+#: plinth/modules/roundcube/__init__.py:55
+msgid "Email Client"
+msgstr ""
+
+#: plinth/modules/samba/__init__.py:32
msgid ""
"Samba allows to share files and folders between FreedomBox and other "
"computers in your local network."
msgstr ""
-#: plinth/modules/samba/__init__.py:56
+#: plinth/modules/samba/__init__.py:35
#, python-brace-format
msgid ""
"After installation, you can choose which disks to use for sharing. Enabled "
@@ -4090,51 +4187,55 @@ msgid ""
"There are three types of shares you can choose from: "
msgstr ""
-#: plinth/modules/samba/__init__.py:61
+#: plinth/modules/samba/__init__.py:40
msgid "Open share - accessible to everyone in your local network."
msgstr ""
-#: plinth/modules/samba/__init__.py:62
+#: plinth/modules/samba/__init__.py:41
msgid ""
"Group share - accessible only to FreedomBox users who are in the freedombox-"
"share group."
msgstr ""
-#: plinth/modules/samba/__init__.py:64
+#: plinth/modules/samba/__init__.py:43
msgid ""
"Home share - every user in the freedombox-share group can have their own "
"private space."
msgstr ""
-#: plinth/modules/samba/__init__.py:68
+#: plinth/modules/samba/__init__.py:47
msgid "Access to the private shares"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:39
-#: plinth/modules/samba/templates/samba.html:50
+#: plinth/modules/samba/__init__.py:61
+msgid "Samba"
+msgstr ""
+
+#: plinth/modules/samba/templates/samba.html:24
+#: plinth/modules/samba/templates/samba.html:35
msgid "Shares"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:41
+#: plinth/modules/samba/templates/samba.html:26
msgid ""
"Note: Only specially created directories will be shared on selected disks, "
"not the whole disk."
msgstr ""
-#: plinth/modules/samba/templates/samba.html:49
+#: plinth/modules/samba/templates/samba.html:34
msgid "Disk Name"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:51
-#: plinth/modules/storage/templates/storage.html:44
+#: plinth/modules/samba/templates/samba.html:36
+#: plinth/modules/storage/templates/storage.html:29
msgid "Used"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:72
+#: plinth/modules/samba/templates/samba.html:57
msgid "VFAT partitions are not supported"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:103
+#: plinth/modules/samba/templates/samba.html:88
#, python-format
msgid ""
"You can find additional information about disks on the users module page."
msgstr ""
-#: plinth/modules/samba/templates/samba.html:109
+#: plinth/modules/samba/templates/samba.html:94
msgid "Users who can currently access group and home shares"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:113
+#: plinth/modules/samba/templates/samba.html:98
msgid ""
"Users needing to re-enter their password on the password change page to "
"access group and home shares"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:118
+#: plinth/modules/samba/templates/samba.html:103
msgid "Unavailable Shares"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:120
+#: plinth/modules/samba/templates/samba.html:105
msgid ""
"Shares that are configured but the disk is not available. If the disk is "
"plugged back in, sharing will be automatically enabled."
msgstr ""
-#: plinth/modules/samba/templates/samba.html:128
+#: plinth/modules/samba/templates/samba.html:113
msgid "Share name"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:129
+#: plinth/modules/samba/templates/samba.html:114
msgid "Action"
msgstr ""
-#: plinth/modules/samba/views.py:61 plinth/modules/storage/forms.py:164
+#: plinth/modules/samba/views.py:43 plinth/modules/storage/forms.py:149
msgid "Open Share"
msgstr ""
-#: plinth/modules/samba/views.py:62 plinth/modules/storage/forms.py:162
+#: plinth/modules/samba/views.py:44 plinth/modules/storage/forms.py:147
msgid "Group Share"
msgstr ""
-#: plinth/modules/samba/views.py:63
+#: plinth/modules/samba/views.py:45
msgid "Home Share"
msgstr ""
-#: plinth/modules/samba/views.py:96
+#: plinth/modules/samba/views.py:78
msgid "Share enabled."
msgstr ""
-#: plinth/modules/samba/views.py:101
+#: plinth/modules/samba/views.py:83
#, python-brace-format
msgid "Error enabling share: {error_message}"
msgstr ""
-#: plinth/modules/samba/views.py:106
+#: plinth/modules/samba/views.py:88
msgid "Share disabled."
msgstr ""
-#: plinth/modules/samba/views.py:111
+#: plinth/modules/samba/views.py:93
#, python-brace-format
msgid "Error disabling share: {error_message}"
msgstr ""
-#: plinth/modules/searx/__init__.py:41 plinth/modules/searx/manifest.py:24
-msgid "Searx"
-msgstr ""
-
-#: plinth/modules/searx/__init__.py:45
-msgid "Web Search"
-msgstr ""
-
-#: plinth/modules/searx/__init__.py:48
+#: plinth/modules/searx/__init__.py:25
msgid ""
"Searx is a privacy-respecting Internet metasearch engine. It aggregrates and "
"displays results from multiple search engines."
msgstr ""
-#: plinth/modules/searx/__init__.py:50
+#: plinth/modules/searx/__init__.py:27
msgid ""
"Searx can be used to avoid tracking and profiling by search engines. It "
"stores no cookies by default."
msgstr ""
-#: plinth/modules/searx/__init__.py:54
+#: plinth/modules/searx/__init__.py:31
msgid "Search the web"
msgstr ""
-#: plinth/modules/searx/forms.py:30
+#: plinth/modules/searx/__init__.py:47 plinth/modules/searx/manifest.py:9
+msgid "Searx"
+msgstr ""
+
+#: plinth/modules/searx/__init__.py:48
+msgid "Web Search"
+msgstr ""
+
+#: plinth/modules/searx/forms.py:15
msgid "Safe Search"
msgstr ""
-#: plinth/modules/searx/forms.py:31
+#: plinth/modules/searx/forms.py:16
msgid "Select the default family filter to apply to your search results."
msgstr ""
-#: plinth/modules/searx/forms.py:32
+#: plinth/modules/searx/forms.py:17
msgid "None"
msgstr ""
-#: plinth/modules/searx/forms.py:32
+#: plinth/modules/searx/forms.py:17
msgid "Moderate"
msgstr ""
-#: plinth/modules/searx/forms.py:32
+#: plinth/modules/searx/forms.py:17
msgid "Strict"
msgstr ""
-#: plinth/modules/searx/forms.py:35
+#: plinth/modules/searx/forms.py:20
msgid "Allow Public Access"
msgstr ""
-#: plinth/modules/searx/forms.py:36
+#: plinth/modules/searx/forms.py:21
msgid "Allow this application to be used by anyone who can reach it."
msgstr ""
-#: plinth/modules/searx/views.py:59 plinth/modules/searx/views.py:70
-#: plinth/modules/tor/views.py:149 plinth/modules/tor/views.py:176
+#: plinth/modules/searx/views.py:39 plinth/modules/searx/views.py:50
+#: plinth/modules/tor/views.py:130 plinth/modules/tor/views.py:157
msgid "Configuration updated."
msgstr ""
-#: plinth/modules/security/forms.py:28
+#: plinth/modules/security/forms.py:13
msgid "Restrict console logins (recommended)"
msgstr ""
-#: plinth/modules/security/forms.py:29
+#: plinth/modules/security/forms.py:14
msgid ""
"When this option is enabled, only users in the \"admin\" group will be able "
"to log in to console or via SSH. Console users may be able to access some "
"services without further authorization."
msgstr ""
-#: plinth/modules/security/forms.py:34
+#: plinth/modules/security/forms.py:19
msgid "Fail2Ban (recommended)"
msgstr ""
-#: plinth/modules/security/forms.py:35
+#: plinth/modules/security/forms.py:20
msgid ""
"When this option is enabled, Fail2Ban will limit brute force break-in "
"attempts to the SSH server and other enabled password protected internet-"
"services."
msgstr ""
-#: plinth/modules/security/templates/security.html:26
-#: plinth/modules/security/templates/security.html:28
+#: plinth/modules/security/templates/security.html:11
+#: plinth/modules/security/templates/security.html:13
msgid "Show security report"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:25
-#: plinth/modules/security/views.py:87
+#: plinth/modules/security/templates/security_report.html:10
+#: plinth/modules/security/views.py:71
msgid "Security Report"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:27
+#: plinth/modules/security/templates/security_report.html:12
#, python-format
msgid ""
"The installed version of FreedomBox has %(count)s reported security "
"vulnerabilities."
msgstr ""
-#: plinth/modules/security/templates/security_report.html:33
+#: plinth/modules/security/templates/security_report.html:18
msgid ""
"The following table lists the current reported number, and historical count, "
"of security vulnerabilities for each installed app."
msgstr ""
-#: plinth/modules/security/templates/security_report.html:39
+#: plinth/modules/security/templates/security_report.html:24
msgid ""
"For apps that provide services, the \"Sandboxed\" column shows whether "
"sandboxing features are in use. Sandboxing mitigates the impact of a "
"potentially compromised app to the rest of the system."
msgstr ""
-#: plinth/modules/security/templates/security_report.html:46
+#: plinth/modules/security/templates/security_report.html:31
msgid ""
"\"Sandbox Coverage\" is a score of how effectively the service is isolated "
"from the rest of the system. It is only displayed while the service is "
"running."
msgstr ""
-#: plinth/modules/security/templates/security_report.html:55
+#: plinth/modules/security/templates/security_report.html:40
msgid "App Name"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:56
+#: plinth/modules/security/templates/security_report.html:41
msgid "Current Vulnerabilities"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:57
+#: plinth/modules/security/templates/security_report.html:42
msgid "Past Vulnerabilities"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:58
+#: plinth/modules/security/templates/security_report.html:43
msgid "Sandboxed"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:59
+#: plinth/modules/security/templates/security_report.html:44
msgid "Sandbox Coverage"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:70
+#: plinth/modules/security/templates/security_report.html:55
msgid "N/A"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:72
+#: plinth/modules/security/templates/security_report.html:57
msgid "Yes"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:74
+#: plinth/modules/security/templates/security_report.html:59
msgid "No"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:81
+#: plinth/modules/security/templates/security_report.html:66
msgid "Not running"
msgstr ""
-#: plinth/modules/security/views.py:69
+#: plinth/modules/security/views.py:53
#, python-brace-format
msgid "Error setting restricted access: {exception}"
msgstr ""
-#: plinth/modules/security/views.py:72
+#: plinth/modules/security/views.py:56
msgid "Updated security configuration"
msgstr ""
-#: plinth/modules/shaarli/__init__.py:34 plinth/modules/shaarli/manifest.py:23
-msgid "Shaarli"
-msgstr ""
-
-#: plinth/modules/shaarli/__init__.py:36
-msgid "Bookmarks"
-msgstr ""
-
-#: plinth/modules/shaarli/__init__.py:39
+#: plinth/modules/shaarli/__init__.py:20
msgid "Shaarli allows you to save and share bookmarks."
msgstr ""
-#: plinth/modules/shaarli/__init__.py:40
+#: plinth/modules/shaarli/__init__.py:21
msgid ""
"When enabled, Shaarli will be available from /shaarli path on the web server. Note that Shaarli "
@@ -4381,22 +4474,22 @@ msgid ""
"initial visit."
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:35
-msgid "Shadowsocks"
+#: plinth/modules/shaarli/__init__.py:39 plinth/modules/shaarli/manifest.py:8
+msgid "Shaarli"
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:39
-msgid "Socks5 Proxy"
+#: plinth/modules/shaarli/__init__.py:40
+msgid "Bookmarks"
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:46
+#: plinth/modules/shadowsocks/__init__.py:25
msgid ""
"Shadowsocks is a lightweight and secure SOCKS5 proxy, designed to protect "
"your Internet traffic. It can be used to bypass Internet filtering and "
"censorship."
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:50
+#: plinth/modules/shadowsocks/__init__.py:29
#, python-brace-format
msgid ""
"Your {box_name} can run a Shadowsocks client, that can connect to a "
@@ -4405,149 +4498,153 @@ msgid ""
"the Shadowsocks server."
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:55
+#: plinth/modules/shadowsocks/__init__.py:34
msgid ""
"To use Shadowsocks after setup, set the SOCKS5 proxy URL in your device, "
"browser or application to http://freedombox_address:1080/"
msgstr ""
-#: plinth/modules/shadowsocks/forms.py:28
-#: plinth/modules/shadowsocks/forms.py:29
+#: plinth/modules/shadowsocks/__init__.py:50
+msgid "Shadowsocks"
+msgstr ""
+
+#: plinth/modules/shadowsocks/__init__.py:52
+msgid "Socks5 Proxy"
+msgstr ""
+
+#: plinth/modules/shadowsocks/forms.py:13
+#: plinth/modules/shadowsocks/forms.py:14
msgid "Recommended"
msgstr ""
-#: plinth/modules/shadowsocks/forms.py:52
+#: plinth/modules/shadowsocks/forms.py:37
msgid "Server"
msgstr ""
-#: plinth/modules/shadowsocks/forms.py:53
+#: plinth/modules/shadowsocks/forms.py:38
msgid "Server hostname or IP address"
msgstr ""
-#: plinth/modules/shadowsocks/forms.py:57
+#: plinth/modules/shadowsocks/forms.py:42
msgid "Server port number"
msgstr ""
-#: plinth/modules/shadowsocks/forms.py:60
+#: plinth/modules/shadowsocks/forms.py:45
msgid "Password used to encrypt data. Must match server password."
msgstr ""
-#: plinth/modules/shadowsocks/forms.py:65
+#: plinth/modules/shadowsocks/forms.py:50
msgid "Encryption method. Must match setting on server."
msgstr ""
-#: plinth/modules/sharing/__init__.py:34
-msgid "Sharing"
-msgstr ""
-
-#: plinth/modules/sharing/__init__.py:38
+#: plinth/modules/sharing/__init__.py:21
#, python-brace-format
msgid ""
"Sharing allows you to share files and folders on your {box_name} over the "
"web with chosen groups of users."
msgstr ""
-#: plinth/modules/sharing/forms.py:33
+#: plinth/modules/sharing/__init__.py:38
+msgid "Sharing"
+msgstr ""
+
+#: plinth/modules/sharing/forms.py:18
msgid "Name of the share"
msgstr ""
-#: plinth/modules/sharing/forms.py:35
+#: plinth/modules/sharing/forms.py:20
msgid ""
"A lowercase alpha-numeric string that uniquely identifies a share. Example: "
"media."
msgstr ""
-#: plinth/modules/sharing/forms.py:39
+#: plinth/modules/sharing/forms.py:24
msgid "Path to share"
msgstr ""
-#: plinth/modules/sharing/forms.py:40
+#: plinth/modules/sharing/forms.py:25
msgid "Disk path to a folder on this server that you intend to share."
msgstr ""
-#: plinth/modules/sharing/forms.py:43
+#: plinth/modules/sharing/forms.py:28
msgid "Public share"
msgstr ""
-#: plinth/modules/sharing/forms.py:44
+#: plinth/modules/sharing/forms.py:29
msgid "Make files in this folder available to anyone with the link."
msgstr ""
-#: plinth/modules/sharing/forms.py:48
+#: plinth/modules/sharing/forms.py:33
msgid "User groups that can read the files in the share"
msgstr ""
-#: plinth/modules/sharing/forms.py:50
+#: plinth/modules/sharing/forms.py:35
msgid ""
"Users of the selected user groups will be able to read the files in the "
"share."
msgstr ""
-#: plinth/modules/sharing/forms.py:67
+#: plinth/modules/sharing/forms.py:52
msgid "A share with this name already exists."
msgstr ""
-#: plinth/modules/sharing/forms.py:78
+#: plinth/modules/sharing/forms.py:63
msgid "Shares should be either public or shared with at least one group"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:39
-#: plinth/modules/sharing/templates/sharing.html:42
+#: plinth/modules/sharing/templates/sharing.html:24
+#: plinth/modules/sharing/templates/sharing.html:27
msgid "Add share"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:47
+#: plinth/modules/sharing/templates/sharing.html:32
msgid "No shares currently configured."
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:53
+#: plinth/modules/sharing/templates/sharing.html:38
msgid "Disk Path"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:54
+#: plinth/modules/sharing/templates/sharing.html:39
msgid "Shared Over"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:55
+#: plinth/modules/sharing/templates/sharing.html:40
msgid "With Groups"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:73
+#: plinth/modules/sharing/templates/sharing.html:58
msgid "public access"
msgstr ""
-#: plinth/modules/sharing/views.py:55
+#: plinth/modules/sharing/views.py:39
msgid "Share added."
msgstr ""
-#: plinth/modules/sharing/views.py:60
+#: plinth/modules/sharing/views.py:44
msgid "Add Share"
msgstr ""
-#: plinth/modules/sharing/views.py:75
+#: plinth/modules/sharing/views.py:59
msgid "Share edited."
msgstr ""
-#: plinth/modules/sharing/views.py:80
+#: plinth/modules/sharing/views.py:64
msgid "Edit Share"
msgstr ""
-#: plinth/modules/sharing/views.py:111
+#: plinth/modules/sharing/views.py:95
msgid "Share deleted."
msgstr ""
-#: plinth/modules/snapshot/__init__.py:37
-msgid "Storage Snapshots"
-msgstr ""
-
-#: plinth/modules/snapshot/__init__.py:40
+#: plinth/modules/snapshot/__init__.py:23
msgid ""
"Snapshots allows creating and managing btrfs file system snapshots. These "
"can be used to roll back the system to a previously known good state in case "
"of unwanted changes to the system."
msgstr ""
-#: plinth/modules/snapshot/__init__.py:44
+#: plinth/modules/snapshot/__init__.py:27
#, no-python-format
msgid ""
"Snapshots are taken periodically (called timeline snapshots) and also before "
@@ -4555,192 +4652,192 @@ msgid ""
"cleaned up according to the settings below."
msgstr ""
-#: plinth/modules/snapshot/__init__.py:47
+#: plinth/modules/snapshot/__init__.py:30
msgid ""
"Snapshots currently work on btrfs file systems only and on the root "
"partition only. Snapshots are not a replacement for backups since they can only be stored on the same partition. "
msgstr ""
-#: plinth/modules/snapshot/forms.py:27
+#: plinth/modules/snapshot/__init__.py:52
+msgid "Storage Snapshots"
+msgstr ""
+
+#: plinth/modules/snapshot/forms.py:12
msgid "Free Disk Space to Maintain"
msgstr ""
-#: plinth/modules/snapshot/forms.py:28
+#: plinth/modules/snapshot/forms.py:13
msgid ""
"Maintain this percentage of free space on the disk. If free space falls "
"below this value, older snapshots are removed until this much free space is "
"regained. The default value is 30%."
msgstr ""
-#: plinth/modules/snapshot/forms.py:35
+#: plinth/modules/snapshot/forms.py:20
msgid "Timeline Snapshots"
msgstr ""
-#: plinth/modules/snapshot/forms.py:36
+#: plinth/modules/snapshot/forms.py:21
msgid ""
"Enable or disable timeline snapshots (hourly, daily, monthly and yearly)."
msgstr ""
-#: plinth/modules/snapshot/forms.py:41
+#: plinth/modules/snapshot/forms.py:26
msgid "Software Installation Snapshots"
msgstr ""
-#: plinth/modules/snapshot/forms.py:42
+#: plinth/modules/snapshot/forms.py:27
msgid "Enable or disable snapshots before and after software installation"
msgstr ""
-#: plinth/modules/snapshot/forms.py:47
+#: plinth/modules/snapshot/forms.py:32
msgid "Hourly Snapshots Limit"
msgstr ""
-#: plinth/modules/snapshot/forms.py:48
+#: plinth/modules/snapshot/forms.py:33
msgid "Keep a maximum of this many hourly snapshots."
msgstr ""
-#: plinth/modules/snapshot/forms.py:51
+#: plinth/modules/snapshot/forms.py:36
msgid "Daily Snapshots Limit"
msgstr ""
-#: plinth/modules/snapshot/forms.py:52
+#: plinth/modules/snapshot/forms.py:37
msgid "Keep a maximum of this many daily snapshots."
msgstr ""
-#: plinth/modules/snapshot/forms.py:55
+#: plinth/modules/snapshot/forms.py:40
msgid "Weekly Snapshots Limit"
msgstr ""
-#: plinth/modules/snapshot/forms.py:56
+#: plinth/modules/snapshot/forms.py:41
msgid "Keep a maximum of this many weekly snapshots."
msgstr ""
-#: plinth/modules/snapshot/forms.py:59
+#: plinth/modules/snapshot/forms.py:44
msgid "Monthly Snapshots Limit"
msgstr ""
-#: plinth/modules/snapshot/forms.py:60
+#: plinth/modules/snapshot/forms.py:45
msgid "Keep a maximum of this many monthly snapshots."
msgstr ""
-#: plinth/modules/snapshot/forms.py:63
+#: plinth/modules/snapshot/forms.py:48
msgid "Yearly Snapshots Limit"
msgstr ""
-#: plinth/modules/snapshot/forms.py:64
+#: plinth/modules/snapshot/forms.py:49
msgid ""
"Keep a maximum of this many yearly snapshots. The default value is 0 "
"(disabled)."
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:27
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:12
msgid "Delete the following snapshots permanently?"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:31
-#: plinth/modules/snapshot/templates/snapshot_manage.html:43
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:39
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:16
+#: plinth/modules/snapshot/templates/snapshot_manage.html:28
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:24
msgid "Number"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:32
-#: plinth/modules/snapshot/templates/snapshot_manage.html:44
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:40
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:17
+#: plinth/modules/snapshot/templates/snapshot_manage.html:29
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:25
msgid "Date"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:52
-#: plinth/modules/snapshot/templates/snapshot_manage.html:37
-#: plinth/modules/snapshot/views.py:196
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:37
+#: plinth/modules/snapshot/templates/snapshot_manage.html:22
+#: plinth/modules/snapshot/views.py:175
msgid "Delete Snapshots"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_manage.html:33
+#: plinth/modules/snapshot/templates/snapshot_manage.html:18
msgid "Create Snapshot"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_manage.html:46
+#: plinth/modules/snapshot/templates/snapshot_manage.html:31
msgid "Rollback"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_manage.html:57
+#: plinth/modules/snapshot/templates/snapshot_manage.html:42
msgid "active"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_manage.html:66
+#: plinth/modules/snapshot/templates/snapshot_manage.html:51
#, python-format
msgid "Rollback to snapshot #%(number)s"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_not_supported.html:26
+#: plinth/modules/snapshot/templates/snapshot_not_supported.html:11
#, python-format
msgid ""
"Your have a filesystem of type %(fs_type)s. Snapshots are "
"currently only available on %(types_supported)s filesystems."
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:27
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:12
msgid "Roll back the system to this snapshot?"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:30
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:15
msgid ""
"A new snapshot with the current state of the file system will be "
"automatically created. You will be able to undo a rollback by reverting to "
"the newly created snapshot."
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:57
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:42
#, python-format
msgid "Rollback to Snapshot #%(number)s"
msgstr ""
-#: plinth/modules/snapshot/views.py:45
+#: plinth/modules/snapshot/views.py:30
msgid "Manage Snapshots"
msgstr ""
-#: plinth/modules/snapshot/views.py:98
+#: plinth/modules/snapshot/views.py:79
msgid "Created snapshot."
msgstr ""
-#: plinth/modules/snapshot/views.py:156
+#: plinth/modules/snapshot/views.py:135
msgid "Storage snapshots configuration updated"
msgstr ""
-#: plinth/modules/snapshot/views.py:160 plinth/modules/tor/views.py:79
+#: plinth/modules/snapshot/views.py:139 plinth/modules/tor/views.py:60
#, python-brace-format
msgid "Action error: {0} [{1}] [{2}]"
msgstr ""
-#: plinth/modules/snapshot/views.py:175
+#: plinth/modules/snapshot/views.py:154
msgid "Deleted all snapshots"
msgstr ""
-#: plinth/modules/snapshot/views.py:179
+#: plinth/modules/snapshot/views.py:158
msgid "Deleted selected snapshots"
msgstr ""
-#: plinth/modules/snapshot/views.py:184
+#: plinth/modules/snapshot/views.py:163
msgid "Snapshot is currently in use. Please try again later."
msgstr ""
-#: plinth/modules/snapshot/views.py:207
+#: plinth/modules/snapshot/views.py:186
#, python-brace-format
msgid "Rolled back to snapshot #{number}."
msgstr ""
-#: plinth/modules/snapshot/views.py:210
+#: plinth/modules/snapshot/views.py:189
msgid "The system must be restarted to complete the rollback."
msgstr ""
-#: plinth/modules/snapshot/views.py:222
+#: plinth/modules/snapshot/views.py:201
msgid "Rollback to Snapshot"
msgstr ""
-#: plinth/modules/ssh/__init__.py:43
-msgid "Secure Shell (SSH) Server"
-msgstr ""
-
-#: plinth/modules/ssh/__init__.py:46
+#: plinth/modules/ssh/__init__.py:29
msgid ""
"A Secure Shell server uses the secure shell protocol to accept connections "
"from remote computers. An authorized remote computer can perform "
@@ -4748,56 +4845,56 @@ msgid ""
"connections."
msgstr ""
-#: plinth/modules/ssh/forms.py:30
+#: plinth/modules/ssh/__init__.py:50
+msgid "Secure Shell (SSH) Server"
+msgstr ""
+
+#: plinth/modules/ssh/forms.py:15
msgid "Disable password authentication"
msgstr ""
-#: plinth/modules/ssh/forms.py:31
+#: plinth/modules/ssh/forms.py:16
msgid ""
"Improves security by preventing password guessing. Ensure that you have "
"setup SSH keys in your administrator user account before enabling this "
"option."
msgstr ""
-#: plinth/modules/ssh/templates/ssh.html:26
+#: plinth/modules/ssh/templates/ssh.html:11
msgid "Server Fingerprints"
msgstr ""
-#: plinth/modules/ssh/templates/ssh.html:29
+#: plinth/modules/ssh/templates/ssh.html:14
msgid ""
"When connecting to the server, ensure that the fingerprint shown by the SSH "
"client matches one of these fingerprints."
msgstr ""
-#: plinth/modules/ssh/templates/ssh.html:38
+#: plinth/modules/ssh/templates/ssh.html:23
msgid "Algorithm"
msgstr ""
-#: plinth/modules/ssh/templates/ssh.html:39
+#: plinth/modules/ssh/templates/ssh.html:24
msgid "Fingerprint"
msgstr ""
-#: plinth/modules/ssh/views.py:66
+#: plinth/modules/ssh/views.py:48
msgid "SSH authentication with password disabled."
msgstr ""
-#: plinth/modules/ssh/views.py:69
+#: plinth/modules/ssh/views.py:51
msgid "SSH authentication with password enabled."
msgstr ""
-#: plinth/modules/sso/__init__.py:30
+#: plinth/modules/sso/__init__.py:33
msgid "Single Sign On"
msgstr ""
-#: plinth/modules/sso/templates/login.html:35
+#: plinth/modules/sso/templates/login.html:20
msgid "Login"
msgstr ""
-#: plinth/modules/storage/__init__.py:39 plinth/modules/storage/__init__.py:331
-msgid "Storage"
-msgstr ""
-
-#: plinth/modules/storage/__init__.py:47
+#: plinth/modules/storage/__init__.py:30
#, python-brace-format
msgid ""
"This module allows you to manage storage media attached to your {box_name}. "
@@ -4805,145 +4902,149 @@ msgid ""
"media, expand the root partition etc."
msgstr ""
-#: plinth/modules/storage/__init__.py:224
+#: plinth/modules/storage/__init__.py:52 plinth/modules/storage/__init__.py:318
+msgid "Storage"
+msgstr ""
+
+#: plinth/modules/storage/__init__.py:211
#, python-brace-format
msgid "{disk_size:.1f} bytes"
msgstr ""
-#: plinth/modules/storage/__init__.py:228
+#: plinth/modules/storage/__init__.py:215
#, python-brace-format
msgid "{disk_size:.1f} KiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:232
+#: plinth/modules/storage/__init__.py:219
#, python-brace-format
msgid "{disk_size:.1f} MiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:236
+#: plinth/modules/storage/__init__.py:223
#, python-brace-format
msgid "{disk_size:.1f} GiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:239
+#: plinth/modules/storage/__init__.py:226
#, python-brace-format
msgid "{disk_size:.1f} TiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:246
+#: plinth/modules/storage/__init__.py:233
msgid "The operation failed."
msgstr ""
-#: plinth/modules/storage/__init__.py:248
+#: plinth/modules/storage/__init__.py:235
msgid "The operation was cancelled."
msgstr ""
-#: plinth/modules/storage/__init__.py:250
+#: plinth/modules/storage/__init__.py:237
msgid "The device is already unmounting."
msgstr ""
-#: plinth/modules/storage/__init__.py:252
+#: plinth/modules/storage/__init__.py:239
msgid "The operation is not supported due to missing driver/tool support."
msgstr ""
-#: plinth/modules/storage/__init__.py:255
+#: plinth/modules/storage/__init__.py:242
msgid "The operation timed out."
msgstr ""
-#: plinth/modules/storage/__init__.py:257
+#: plinth/modules/storage/__init__.py:244
msgid "The operation would wake up a disk that is in a deep-sleep state."
msgstr ""
-#: plinth/modules/storage/__init__.py:260
+#: plinth/modules/storage/__init__.py:247
msgid "Attempting to unmount a device that is busy."
msgstr ""
-#: plinth/modules/storage/__init__.py:262
+#: plinth/modules/storage/__init__.py:249
msgid "The operation has already been cancelled."
msgstr ""
-#: plinth/modules/storage/__init__.py:268
+#: plinth/modules/storage/__init__.py:255
msgid "Not authorized to perform the requested operation."
msgstr ""
-#: plinth/modules/storage/__init__.py:270
+#: plinth/modules/storage/__init__.py:257
msgid "The device is already mounted."
msgstr ""
-#: plinth/modules/storage/__init__.py:272
+#: plinth/modules/storage/__init__.py:259
msgid "The device is not mounted."
msgstr ""
-#: plinth/modules/storage/__init__.py:275
+#: plinth/modules/storage/__init__.py:262
msgid "Not permitted to use the requested option."
msgstr ""
-#: plinth/modules/storage/__init__.py:278
+#: plinth/modules/storage/__init__.py:265
msgid "The device is mounted by another user."
msgstr ""
-#: plinth/modules/storage/__init__.py:326
+#: plinth/modules/storage/__init__.py:313
#, no-python-format, python-brace-format
msgid "Low space on system partition: {percent_used}% used, {free_space} free."
msgstr ""
-#: plinth/modules/storage/__init__.py:328
+#: plinth/modules/storage/__init__.py:315
msgid "Low disk space"
msgstr ""
-#: plinth/modules/storage/forms.py:79
+#: plinth/modules/storage/forms.py:64
msgid "Invalid directory name."
msgstr ""
-#: plinth/modules/storage/forms.py:97
+#: plinth/modules/storage/forms.py:82
msgid "Directory does not exist."
msgstr ""
-#: plinth/modules/storage/forms.py:99
+#: plinth/modules/storage/forms.py:84
msgid "Path is not a directory."
msgstr ""
-#: plinth/modules/storage/forms.py:102
+#: plinth/modules/storage/forms.py:87
msgid "Directory is not readable by the user."
msgstr ""
-#: plinth/modules/storage/forms.py:105
+#: plinth/modules/storage/forms.py:90
msgid "Directory is not writable by the user."
msgstr ""
-#: plinth/modules/storage/forms.py:110
+#: plinth/modules/storage/forms.py:95
msgid "Directory"
msgstr ""
-#: plinth/modules/storage/forms.py:113
+#: plinth/modules/storage/forms.py:98
msgid "Subdirectory (optional)"
msgstr ""
-#: plinth/modules/storage/forms.py:160
+#: plinth/modules/storage/forms.py:145
msgid "Share"
msgstr ""
-#: plinth/modules/storage/forms.py:168
+#: plinth/modules/storage/forms.py:153
msgid "Other directory (specify below)"
msgstr ""
-#: plinth/modules/storage/templates/storage.html:35
+#: plinth/modules/storage/templates/storage.html:20
msgid "The following storage devices are in use:"
msgstr ""
-#: plinth/modules/storage/templates/storage.html:41
+#: plinth/modules/storage/templates/storage.html:26
msgid "Label"
msgstr ""
-#: plinth/modules/storage/templates/storage.html:42
+#: plinth/modules/storage/templates/storage.html:27
msgid "Mount Point"
msgstr ""
-#: plinth/modules/storage/templates/storage.html:90
+#: plinth/modules/storage/templates/storage.html:75
msgid "Partition Expansion"
msgstr ""
-#: plinth/modules/storage/templates/storage.html:92
+#: plinth/modules/storage/templates/storage.html:77
#, python-format
msgid ""
"There is %(expandable_root_size)s of unallocated space available after your "
@@ -4951,13 +5052,13 @@ msgid ""
"will provide you additional free space to store your files."
msgstr ""
-#: plinth/modules/storage/templates/storage.html:102
-#: plinth/modules/storage/templates/storage_expand.html:39
-#: plinth/modules/storage/views.py:76
+#: plinth/modules/storage/templates/storage.html:87
+#: plinth/modules/storage/templates/storage_expand.html:24
+#: plinth/modules/storage/views.py:58
msgid "Expand Root Partition"
msgstr ""
-#: plinth/modules/storage/templates/storage_expand.html:29
+#: plinth/modules/storage/templates/storage_expand.html:14
#, python-format
msgid ""
"Please backup your data before proceeding. After this operation, "
@@ -4965,39 +5066,30 @@ msgid ""
"root partition."
msgstr ""
-#: plinth/modules/storage/views.py:88
+#: plinth/modules/storage/views.py:70
#, python-brace-format
msgid "Error expanding partition: {exception}"
msgstr ""
-#: plinth/modules/storage/views.py:91
+#: plinth/modules/storage/views.py:73
msgid "Partition expanded successfully."
msgstr ""
-#: plinth/modules/storage/views.py:109
+#: plinth/modules/storage/views.py:91
#, python-brace-format
msgid "{drive_vendor} {drive_model} can be safely unplugged."
msgstr ""
-#: plinth/modules/storage/views.py:113
+#: plinth/modules/storage/views.py:95
msgid "Device can be safely unplugged."
msgstr ""
-#: plinth/modules/storage/views.py:123
+#: plinth/modules/storage/views.py:105
#, python-brace-format
msgid "Error ejecting device: {error_message}"
msgstr ""
-#: plinth/modules/syncthing/__init__.py:40
-#: plinth/modules/syncthing/manifest.py:28
-msgid "Syncthing"
-msgstr ""
-
-#: plinth/modules/syncthing/__init__.py:44
-msgid "File Synchronization"
-msgstr ""
-
-#: plinth/modules/syncthing/__init__.py:47
+#: plinth/modules/syncthing/__init__.py:26
msgid ""
"Syncthing is an application to synchronize files across multiple devices, e."
"g. your desktop computer and mobile phone. Creation, modification, or "
@@ -5005,7 +5097,7 @@ msgid ""
"other devices that also run Syncthing."
msgstr ""
-#: plinth/modules/syncthing/__init__.py:52
+#: plinth/modules/syncthing/__init__.py:31
#, python-brace-format
msgid ""
"Running Syncthing on {box_name} provides an extra synchronization point for "
@@ -5016,19 +5108,20 @@ msgid ""
"{box_name} is only available for users belonging to the \"admin\" group."
msgstr ""
-#: plinth/modules/syncthing/__init__.py:63
+#: plinth/modules/syncthing/__init__.py:40
msgid "Administer Syncthing application"
msgstr ""
-#: plinth/modules/tahoe/__init__.py:43
-msgid "Tahoe-LAFS"
+#: plinth/modules/syncthing/__init__.py:54
+#: plinth/modules/syncthing/manifest.py:13
+msgid "Syncthing"
msgstr ""
-#: plinth/modules/tahoe/__init__.py:47
-msgid "Distributed File Storage"
+#: plinth/modules/syncthing/__init__.py:55
+msgid "File Synchronization"
msgstr ""
-#: plinth/modules/tahoe/__init__.py:134
+#: plinth/modules/tahoe/__init__.py:30
msgid ""
"Tahoe-LAFS is a decentralized secure file storage system. It uses provider "
"independent security to store files over a distributed network of storage "
@@ -5036,7 +5129,7 @@ msgid ""
"remaining nodes."
msgstr ""
-#: plinth/modules/tahoe/__init__.py:139
+#: plinth/modules/tahoe/__init__.py:35
#, python-brace-format
msgid ""
"This {box_name} hosts a storage node and an introducer by default. "
@@ -5044,7 +5137,15 @@ msgid ""
"other storage nodes."
msgstr ""
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:33
+#: plinth/modules/tahoe/__init__.py:66
+msgid "Tahoe-LAFS"
+msgstr ""
+
+#: plinth/modules/tahoe/__init__.py:68
+msgid "Distributed File Storage"
+msgstr ""
+
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:17
#, python-format
msgid ""
"The Tahoe-LAFS server domain is set to %(domain_name)s. Changing the "
@@ -5053,37 +5154,33 @@ msgid ""
"%(domain_name)s:5678\">https://%(domain_name)s:5678."
msgstr ""
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:55
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:39
msgid "Local introducer"
msgstr ""
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:43
#: plinth/modules/tahoe/templates/tahoe-post-setup.html:59
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:75
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:92
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:76
msgid "Pet Name"
msgstr ""
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:72
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:56
msgid "Add new introducer"
msgstr ""
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:83
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:67
msgid "Add"
msgstr ""
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:88
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:72
msgid "Connected introducers"
msgstr ""
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:105
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:89
msgid "Remove"
msgstr ""
-#: plinth/modules/tor/__init__.py:47
-msgid "Tor"
-msgstr ""
-
-#: plinth/modules/tor/__init__.py:52
+#: plinth/modules/tor/__init__.py:33
msgid ""
"Tor is an anonymous communication system. You can learn more about it from "
"the Tor Project website. For "
@@ -5092,76 +5189,80 @@ msgid ""
"\">Tor Browser."
msgstr ""
-#: plinth/modules/tor/__init__.py:83
+#: plinth/modules/tor/__init__.py:55
+msgid "Tor"
+msgstr ""
+
+#: plinth/modules/tor/__init__.py:66
msgid "Tor Onion Service"
msgstr ""
-#: plinth/modules/tor/__init__.py:87
+#: plinth/modules/tor/__init__.py:70
msgid "Tor Socks Proxy"
msgstr ""
-#: plinth/modules/tor/__init__.py:91
+#: plinth/modules/tor/__init__.py:74
msgid "Tor Bridge Relay"
msgstr ""
-#: plinth/modules/tor/__init__.py:112
+#: plinth/modules/tor/__init__.py:95
msgid "Tor relay port available"
msgstr ""
-#: plinth/modules/tor/__init__.py:122
+#: plinth/modules/tor/__init__.py:105
msgid "Obfs3 transport registered"
msgstr ""
-#: plinth/modules/tor/__init__.py:132
+#: plinth/modules/tor/__init__.py:115
msgid "Obfs4 transport registered"
msgstr ""
-#: plinth/modules/tor/__init__.py:225
+#: plinth/modules/tor/__init__.py:208
#, python-brace-format
msgid "Access URL {url} on tcp{kind} via Tor"
msgstr ""
-#: plinth/modules/tor/__init__.py:236
+#: plinth/modules/tor/__init__.py:219
#, python-brace-format
msgid "Confirm Tor usage at {url} on tcp{kind}"
msgstr ""
-#: plinth/modules/tor/forms.py:46
+#: plinth/modules/tor/forms.py:31
msgid ""
"Enter a valid bridge with this format: [transport] IP:ORPort [fingerprint]"
msgstr ""
-#: plinth/modules/tor/forms.py:88
+#: plinth/modules/tor/forms.py:73
msgid "Enable Tor"
msgstr ""
-#: plinth/modules/tor/forms.py:90
+#: plinth/modules/tor/forms.py:75
msgid "Use upstream bridges to connect to Tor network"
msgstr ""
-#: plinth/modules/tor/forms.py:92
+#: plinth/modules/tor/forms.py:77
msgid ""
"When enabled, the bridges configured below will be used to connect to the "
"Tor network. Use this option if your Internet Service Provider (ISP) blocks "
"or censors connections to the Tor Network. This will disable relay modes."
msgstr ""
-#: plinth/modules/tor/forms.py:97
+#: plinth/modules/tor/forms.py:82
msgid "Upstream bridges"
msgstr ""
-#: plinth/modules/tor/forms.py:99
+#: plinth/modules/tor/forms.py:84
msgid ""
"You can get some bridges from https://bridges.torproject.org/ and copy/paste the bridge information "
"here. Currently supported transports are none, obfs3, obfs4 and scamblesuit."
msgstr ""
-#: plinth/modules/tor/forms.py:105
+#: plinth/modules/tor/forms.py:90
msgid "Enable Tor relay"
msgstr ""
-#: plinth/modules/tor/forms.py:106
+#: plinth/modules/tor/forms.py:91
#, python-brace-format
msgid ""
"When enabled, your {box_name} will run a Tor relay and donate bandwidth to "
@@ -5169,22 +5270,22 @@ msgid ""
"download bandwidth."
msgstr ""
-#: plinth/modules/tor/forms.py:111
+#: plinth/modules/tor/forms.py:96
msgid "Enable Tor bridge relay"
msgstr ""
-#: plinth/modules/tor/forms.py:113
+#: plinth/modules/tor/forms.py:98
msgid ""
"When enabled, relay information is published in the Tor bridge database "
"instead of public Tor relay database making it harder to censor this node. "
"This helps others circumvent censorship."
msgstr ""
-#: plinth/modules/tor/forms.py:118
+#: plinth/modules/tor/forms.py:103
msgid "Enable Tor Hidden Service"
msgstr ""
-#: plinth/modules/tor/forms.py:120
+#: plinth/modules/tor/forms.py:105
#, python-brace-format
msgid ""
"A hidden service will allow {box_name} to provide selected services (such as "
@@ -5192,208 +5293,204 @@ msgid ""
"anonymity yet."
msgstr ""
-#: plinth/modules/tor/forms.py:125
+#: plinth/modules/tor/forms.py:110
msgid "Download software packages over Tor"
msgstr ""
-#: plinth/modules/tor/forms.py:126
+#: plinth/modules/tor/forms.py:111
msgid ""
"When enabled, software will be downloaded over the Tor network for "
"installations and upgrades. This adds a degree of privacy and security "
"during software downloads."
msgstr ""
-#: plinth/modules/tor/forms.py:141
+#: plinth/modules/tor/forms.py:126
msgid "Specify at least one upstream bridge to use upstream bridges."
msgstr ""
-#: plinth/modules/tor/manifest.py:29
+#: plinth/modules/tor/manifest.py:14
msgid "Tor Browser"
msgstr ""
-#: plinth/modules/tor/manifest.py:45
+#: plinth/modules/tor/manifest.py:30
msgid "Orbot: Proxy with Tor"
msgstr ""
-#: plinth/modules/tor/templates/tor.html:41
+#: plinth/modules/tor/templates/tor.html:26
msgid "Tor configuration is being updated"
msgstr ""
-#: plinth/modules/tor/templates/tor.html:50
+#: plinth/modules/tor/templates/tor.html:35
msgid "Onion Service"
msgstr ""
-#: plinth/modules/tor/templates/tor.html:52
+#: plinth/modules/tor/templates/tor.html:37
msgid "Ports"
msgstr ""
-#: plinth/modules/tor/templates/tor.html:82
+#: plinth/modules/tor/templates/tor.html:67
msgid "Relay"
msgstr ""
-#: plinth/modules/tor/templates/tor.html:84
+#: plinth/modules/tor/templates/tor.html:69
#, python-format
msgid ""
"If your %(box_name)s is behind a router or firewall, you should make sure "
"the following ports are open, and port-forwarded, if necessary:"
msgstr ""
-#: plinth/modules/tor/templates/tor.html:112
+#: plinth/modules/tor/templates/tor.html:97
msgid "SOCKS"
msgstr ""
-#: plinth/modules/tor/templates/tor.html:115
+#: plinth/modules/tor/templates/tor.html:100
#, python-format
msgid "A Tor SOCKS port is available on your %(box_name)s on TCP port 9050."
msgstr ""
-#: plinth/modules/transmission/__init__.py:41
-#: plinth/modules/transmission/manifest.py:24
-msgid "Transmission"
-msgstr ""
-
-#: plinth/modules/transmission/__init__.py:48
+#: plinth/modules/transmission/__init__.py:27
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/ttrss/__init__.py:43 plinth/modules/ttrss/manifest.py:34
-msgid "Tiny Tiny RSS"
+#: plinth/modules/transmission/__init__.py:48
+#: plinth/modules/transmission/manifest.py:9
+msgid "Transmission"
msgstr ""
-#: plinth/modules/ttrss/__init__.py:47
-msgid "News Feed Reader"
-msgstr ""
-
-#: plinth/modules/ttrss/__init__.py:50
+#: plinth/modules/ttrss/__init__.py:29
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:54
+#: plinth/modules/ttrss/__init__.py:33
#, python-brace-format
msgid ""
"When enabled, Tiny Tiny RSS can be accessed by any user with a {box_name} login."
msgstr ""
-#: plinth/modules/ttrss/__init__.py:58
+#: plinth/modules/ttrss/__init__.py:37
msgid ""
"When using a mobile or desktop application for Tiny Tiny RSS, use the URL /tt-rss-app for "
"connecting."
msgstr ""
-#: plinth/modules/ttrss/__init__.py:65
+#: plinth/modules/ttrss/__init__.py:42
msgid "Read and subscribe to news feeds"
msgstr ""
-#: plinth/modules/ttrss/manifest.py:25
+#: plinth/modules/ttrss/__init__.py:56 plinth/modules/ttrss/manifest.py:19
+msgid "Tiny Tiny RSS"
+msgstr ""
+
+#: plinth/modules/ttrss/__init__.py:57
+msgid "News Feed Reader"
+msgstr ""
+
+#: plinth/modules/ttrss/manifest.py:10
msgid "Tiny Tiny RSS (Fork)"
msgstr ""
-#: plinth/modules/upgrades/__init__.py:37 plinth/templates/setup.html:89
-msgid "Update"
-msgstr ""
-
-#: plinth/modules/upgrades/__init__.py:40
+#: plinth/modules/upgrades/__init__.py:23
msgid "Check for and apply the latest software and security updates."
msgstr ""
-#: plinth/modules/upgrades/__init__.py:84
+#: plinth/modules/upgrades/__init__.py:38 plinth/templates/setup.html:74
+msgid "Update"
+msgstr ""
+
+#: plinth/modules/upgrades/__init__.py:71
msgid "FreedomBox Updated"
msgstr ""
-#: plinth/modules/upgrades/forms.py:28
+#: plinth/modules/upgrades/forms.py:13
msgid "Enable auto-update"
msgstr ""
-#: plinth/modules/upgrades/forms.py:29
+#: plinth/modules/upgrades/forms.py:14
msgid "When enabled, FreedomBox automatically updates once a day."
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades-new-release.html:24
+#: plinth/modules/upgrades/templates/upgrades-new-release.html:9
#, python-format
msgid "%(box_name)s Updated"
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades-new-release.html:28
+#: plinth/modules/upgrades/templates/upgrades-new-release.html:13
#, python-format
msgid ""
"%(box_name)s has been updated to version %(version)s. See the release announcement."
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades-new-release.html:37
-#: plinth/templates/notifications.html:59
+#: plinth/modules/upgrades/templates/upgrades-new-release.html:22
+#: plinth/templates/notifications.html:44
msgid "Dismiss"
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades.html:45
+#: plinth/modules/upgrades/templates/upgrades.html:30
msgid "Update now"
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades.html:54
+#: plinth/modules/upgrades/templates/upgrades.html:39
msgid "Updating..."
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades.html:59
+#: plinth/modules/upgrades/templates/upgrades.html:44
msgid ""
"This may take a long time to complete. During an update, "
"you cannot install apps. Also, this web interface may be temporarily "
"unavailable and show an error. In that case, refresh the page to continue."
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades.html:73
+#: plinth/modules/upgrades/templates/upgrades.html:58
msgid "Toggle recent update logs"
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades_configure.html:26
-#: plinth/modules/upgrades/templates/upgrades_configure.html:27
-#: plinth/modules/upgrades/views.py:107
+#: plinth/modules/upgrades/templates/upgrades_configure.html:11
+#: plinth/modules/upgrades/templates/upgrades_configure.html:12
+#: plinth/modules/upgrades/views.py:89
msgid "Manual update"
msgstr ""
-#: plinth/modules/upgrades/views.py:66
+#: plinth/modules/upgrades/views.py:48
#, python-brace-format
msgid "Error when configuring unattended-upgrades: {error}"
msgstr ""
-#: plinth/modules/upgrades/views.py:70
+#: plinth/modules/upgrades/views.py:52
msgid "Automatic upgrades enabled"
msgstr ""
-#: plinth/modules/upgrades/views.py:73
+#: plinth/modules/upgrades/views.py:55
msgid "Automatic upgrades disabled"
msgstr ""
-#: plinth/modules/upgrades/views.py:75
+#: plinth/modules/upgrades/views.py:57
msgid "Settings unchanged"
msgstr ""
-#: plinth/modules/upgrades/views.py:101
+#: plinth/modules/upgrades/views.py:83
msgid "Upgrade process started."
msgstr ""
-#: plinth/modules/upgrades/views.py:104
+#: plinth/modules/upgrades/views.py:86
msgid "Starting upgrade failed."
msgstr ""
-#: plinth/modules/users/__init__.py:51
-msgid "Users and Groups"
-msgstr ""
-
-#: plinth/modules/users/__init__.py:54
+#: plinth/modules/users/__init__.py:37
msgid ""
"Create and managed user accounts. These accounts serve as centralized "
"authentication mechanism for most apps. Some apps further require a user "
"account to be part of a group to authorize the user to access the app."
msgstr ""
-#: plinth/modules/users/__init__.py:59
+#: plinth/modules/users/__init__.py:42
#, python-brace-format
msgid ""
"Any user may login to {box_name} web interface to see a list of apps "
@@ -5401,33 +5498,37 @@ msgid ""
"group may alter apps or system settings."
msgstr ""
-#: plinth/modules/users/__init__.py:128
+#: plinth/modules/users/__init__.py:64
+msgid "Users and Groups"
+msgstr ""
+
+#: plinth/modules/users/__init__.py:115
#, python-brace-format
msgid "Check LDAP entry \"{search_item}\""
msgstr ""
-#: plinth/modules/users/forms.py:43
+#: plinth/modules/users/forms.py:28
msgid "Access to all services and system settings"
msgstr ""
-#: plinth/modules/users/forms.py:59
+#: plinth/modules/users/forms.py:44
msgid "Username is taken or is reserved."
msgstr ""
-#: plinth/modules/users/forms.py:87
+#: plinth/modules/users/forms.py:72
msgid "Enter a valid username."
msgstr ""
-#: plinth/modules/users/forms.py:93
+#: plinth/modules/users/forms.py:78
msgid ""
"Required. 150 characters or fewer. English letters, digits and @/./-/_ only."
msgstr ""
-#: plinth/modules/users/forms.py:106 plinth/modules/users/forms.py:222
+#: plinth/modules/users/forms.py:91 plinth/modules/users/forms.py:207
msgid "Permissions"
msgstr ""
-#: plinth/modules/users/forms.py:109
+#: plinth/modules/users/forms.py:94
msgid ""
"Select which services should be available to the new user. The user will be "
"able to log in to services that support single sign-on through LDAP, if they "
@@ -5436,187 +5537,182 @@ msgid ""
"SSH and have administrative privileges (sudo)."
msgstr ""
-#: plinth/modules/users/forms.py:148 plinth/modules/users/forms.py:372
+#: plinth/modules/users/forms.py:133 plinth/modules/users/forms.py:357
msgid "Creating LDAP user failed."
msgstr ""
-#: plinth/modules/users/forms.py:159
+#: plinth/modules/users/forms.py:144
#, python-brace-format
msgid "Failed to add new user to {group} group."
msgstr ""
-#: plinth/modules/users/forms.py:173
+#: plinth/modules/users/forms.py:158
msgid "Authorized SSH Keys"
msgstr ""
-#: plinth/modules/users/forms.py:175
+#: plinth/modules/users/forms.py:160
msgid ""
"Setting an SSH public key will allow this user to securely log in to the "
"system without using a password. You may enter multiple keys, one on each "
"line. Blank lines and lines starting with # will be ignored."
msgstr ""
-#: plinth/modules/users/forms.py:259
+#: plinth/modules/users/forms.py:244
msgid "Renaming LDAP user failed."
msgstr ""
-#: plinth/modules/users/forms.py:271
+#: plinth/modules/users/forms.py:256
msgid "Failed to remove user from group."
msgstr ""
-#: plinth/modules/users/forms.py:282
+#: plinth/modules/users/forms.py:267
msgid "Failed to add user to group."
msgstr ""
-#: plinth/modules/users/forms.py:291
+#: plinth/modules/users/forms.py:276
msgid "Unable to set SSH keys."
msgstr ""
-#: plinth/modules/users/forms.py:306
+#: plinth/modules/users/forms.py:291
msgid "Failed to change user status."
msgstr ""
-#: plinth/modules/users/forms.py:314
+#: plinth/modules/users/forms.py:299
msgid "Cannot delete the only administrator in the system."
msgstr ""
-#: plinth/modules/users/forms.py:346
+#: plinth/modules/users/forms.py:331
msgid "Changing LDAP user password failed."
msgstr ""
-#: plinth/modules/users/forms.py:381
+#: plinth/modules/users/forms.py:366
msgid "Failed to add new user to admin group."
msgstr ""
-#: plinth/modules/users/forms.py:398
+#: plinth/modules/users/forms.py:383
msgid "Failed to restrict console access."
msgstr ""
-#: plinth/modules/users/forms.py:410
+#: plinth/modules/users/forms.py:395
msgid "User account created, you are now logged in"
msgstr ""
-#: plinth/modules/users/templates/users_change_password.html:26
+#: plinth/modules/users/templates/users_change_password.html:11
#, python-format
msgid "Change Password for %(username)s"
msgstr ""
-#: plinth/modules/users/templates/users_change_password.html:36
+#: plinth/modules/users/templates/users_change_password.html:21
msgid "Save Password"
msgstr ""
-#: plinth/modules/users/templates/users_create.html:32
-#: plinth/modules/users/templates/users_list.html:42
-#: plinth/modules/users/templates/users_list.html:44
-#: plinth/modules/users/views.py:57
+#: plinth/modules/users/templates/users_create.html:17
+#: plinth/modules/users/templates/users_list.html:27
+#: plinth/modules/users/templates/users_list.html:29
+#: plinth/modules/users/views.py:42
msgid "Create User"
msgstr ""
-#: plinth/modules/users/templates/users_delete.html:26
-#: plinth/modules/users/views.py:139
+#: plinth/modules/users/templates/users_delete.html:11
+#: plinth/modules/users/views.py:121
msgid "Delete User"
msgstr ""
-#: plinth/modules/users/templates/users_delete.html:29
+#: plinth/modules/users/templates/users_delete.html:14
#, python-format
msgid "Delete user %(username)s permanently?"
msgstr ""
-#: plinth/modules/users/templates/users_delete.html:38
+#: plinth/modules/users/templates/users_delete.html:23
#, python-format
msgid "Delete %(username)s"
msgstr ""
-#: plinth/modules/users/templates/users_firstboot.html:26
+#: plinth/modules/users/templates/users_firstboot.html:11
msgid "Administrator Account"
msgstr ""
-#: plinth/modules/users/templates/users_firstboot.html:29
+#: plinth/modules/users/templates/users_firstboot.html:14
msgid ""
"Choose a username and password to access this web interface. The password "
"can be changed later. This user will be granted administrative privileges. "
"Other users can be added later."
msgstr ""
-#: plinth/modules/users/templates/users_firstboot.html:42
+#: plinth/modules/users/templates/users_firstboot.html:27
msgid "Create Account"
msgstr ""
-#: plinth/modules/users/templates/users_list.html:38
-#: plinth/modules/users/views.py:74
+#: plinth/modules/users/templates/users_list.html:23
+#: plinth/modules/users/views.py:59
msgid "Users"
msgstr ""
-#: plinth/modules/users/templates/users_list.html:57
+#: plinth/modules/users/templates/users_list.html:42
#, python-format
msgid "Delete user %(username)s"
msgstr ""
-#: plinth/modules/users/templates/users_list.html:65
+#: plinth/modules/users/templates/users_list.html:50
#, python-format
msgid "Edit user %(username)s"
msgstr ""
-#: plinth/modules/users/templates/users_update.html:30
+#: plinth/modules/users/templates/users_update.html:15
#, python-format
msgid ""
"Use the change password form to "
"change the password."
msgstr ""
-#: plinth/modules/users/templates/users_update.html:42
-#: plinth/templates/language-selection.html:32
+#: plinth/modules/users/templates/users_update.html:27
+#: plinth/templates/language-selection.html:17
msgid "Save Changes"
msgstr ""
-#: plinth/modules/users/views.py:55
+#: plinth/modules/users/views.py:40
#, python-format
msgid "User %(username)s created."
msgstr ""
-#: plinth/modules/users/views.py:93
+#: plinth/modules/users/views.py:75
#, python-format
msgid "User %(username)s updated."
msgstr ""
-#: plinth/modules/users/views.py:94
+#: plinth/modules/users/views.py:76
msgid "Edit User"
msgstr ""
-#: plinth/modules/users/views.py:149
+#: plinth/modules/users/views.py:131
#, python-brace-format
msgid "User {user} deleted."
msgstr ""
-#: plinth/modules/users/views.py:156
+#: plinth/modules/users/views.py:138
msgid "Deleting LDAP user failed."
msgstr ""
-#: plinth/modules/users/views.py:165
+#: plinth/modules/users/views.py:147
msgid "Change Password"
msgstr ""
-#: plinth/modules/users/views.py:166
+#: plinth/modules/users/views.py:148
msgid "Password changed successfully."
msgstr ""
-#: plinth/modules/wireguard/__init__.py:38
-#: plinth/modules/wireguard/manifest.py:29
-msgid "WireGuard"
-msgstr ""
-
-#: plinth/modules/wireguard/__init__.py:43
+#: plinth/modules/wireguard/__init__.py:24
msgid "WireGuard is a fast, modern, secure VPN tunnel."
msgstr ""
-#: plinth/modules/wireguard/__init__.py:45
+#: plinth/modules/wireguard/__init__.py:26
#, python-brace-format
msgid ""
"It can be used to connect to a VPN provider which supports WireGuard, and to "
"route all outgoing traffic from {box_name} through the VPN."
msgstr ""
-#: plinth/modules/wireguard/__init__.py:49
+#: plinth/modules/wireguard/__init__.py:30
#, python-brace-format
msgid ""
"A second use case is to connect a mobile device to {box_name} while "
@@ -5624,59 +5720,64 @@ msgid ""
"securely relayed through {box_name}."
msgstr ""
-#: plinth/modules/wireguard/forms.py:47
+#: plinth/modules/wireguard/__init__.py:52
+#: plinth/modules/wireguard/manifest.py:14
+msgid "WireGuard"
+msgstr ""
+
+#: plinth/modules/wireguard/forms.py:32
msgid "Invalid key."
msgstr ""
-#: plinth/modules/wireguard/forms.py:76
-#: plinth/modules/wireguard/templates/wireguard.html:32
-#: plinth/modules/wireguard/templates/wireguard.html:89
-#: plinth/modules/wireguard/templates/wireguard_delete_server.html:38
+#: plinth/modules/wireguard/forms.py:61
+#: plinth/modules/wireguard/templates/wireguard.html:17
+#: plinth/modules/wireguard/templates/wireguard.html:74
+#: plinth/modules/wireguard/templates/wireguard_delete_server.html:23
msgid "Public Key"
msgstr ""
-#: plinth/modules/wireguard/forms.py:77
+#: plinth/modules/wireguard/forms.py:62
msgid ""
"Public key of the peer. Example: "
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs= ."
msgstr ""
-#: plinth/modules/wireguard/forms.py:85
+#: plinth/modules/wireguard/forms.py:70
msgid "Endpoint of the server"
msgstr ""
-#: plinth/modules/wireguard/forms.py:86
+#: plinth/modules/wireguard/forms.py:71
msgid ""
"Domain name and port in the form \"ip:port\". Example: demo.wireguard."
"com:12912 ."
msgstr ""
-#: plinth/modules/wireguard/forms.py:91
+#: plinth/modules/wireguard/forms.py:76
msgid "Public key of the server"
msgstr ""
-#: plinth/modules/wireguard/forms.py:92
+#: plinth/modules/wireguard/forms.py:77
msgid ""
"Provided by the server operator, a long string of characters. Example: "
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs= ."
msgstr ""
-#: plinth/modules/wireguard/forms.py:97
+#: plinth/modules/wireguard/forms.py:82
msgid "Client IP address provided by server"
msgstr ""
-#: plinth/modules/wireguard/forms.py:98
+#: plinth/modules/wireguard/forms.py:83
msgid ""
"IP address assigned to this machine on the VPN after connecting to the "
"endpoint. This value is usually provided by the server operator. Example: "
"192.168.0.10."
msgstr ""
-#: plinth/modules/wireguard/forms.py:104
+#: plinth/modules/wireguard/forms.py:89
msgid "Private key of this machine"
msgstr ""
-#: plinth/modules/wireguard/forms.py:105
+#: plinth/modules/wireguard/forms.py:90
msgid ""
"Optional. New public/private keys are generated if left blank. Public key "
"can then be provided to the server. This is the recommended way. However, "
@@ -5684,157 +5785,157 @@ msgid ""
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs= ."
msgstr ""
-#: plinth/modules/wireguard/forms.py:113
+#: plinth/modules/wireguard/forms.py:98
msgid "Pre-shared key"
msgstr ""
-#: plinth/modules/wireguard/forms.py:114
+#: plinth/modules/wireguard/forms.py:99
msgid ""
"Optional. A shared secret key provided by the server to add an additional "
"layer of security. Fill in only if provided. Example: "
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs=."
msgstr ""
-#: plinth/modules/wireguard/forms.py:120
+#: plinth/modules/wireguard/forms.py:105
msgid "Use this connection to send all outgoing traffic"
msgstr ""
-#: plinth/modules/wireguard/forms.py:122
+#: plinth/modules/wireguard/forms.py:107
msgid "Typically checked for a VPN service though which all traffic is sent."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:25
+#: plinth/modules/wireguard/templates/wireguard.html:10
msgid "As a Server"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:27
+#: plinth/modules/wireguard/templates/wireguard.html:12
msgid "Peers allowed to connect to this server:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:33
+#: plinth/modules/wireguard/templates/wireguard.html:18
msgid "Allowed IPs"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:34
-#: plinth/modules/wireguard/templates/wireguard.html:90
+#: plinth/modules/wireguard/templates/wireguard.html:19
+#: plinth/modules/wireguard/templates/wireguard.html:75
msgid "Last Connected Time"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:53
+#: plinth/modules/wireguard/templates/wireguard.html:38
#, python-format
msgid "No peers configured to connect to this %(box_name)s yet."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:62
+#: plinth/modules/wireguard/templates/wireguard.html:47
#, python-format
msgid "Public key for this %(box_name)s:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:68
+#: plinth/modules/wireguard/templates/wireguard.html:53
msgid "Not configured yet."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:72
+#: plinth/modules/wireguard/templates/wireguard.html:57
msgid "Add a new peer"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:76
-#: plinth/modules/wireguard/views.py:69
+#: plinth/modules/wireguard/templates/wireguard.html:61
+#: plinth/modules/wireguard/views.py:51
msgid "Add Allowed Client"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:79
+#: plinth/modules/wireguard/templates/wireguard.html:64
msgid "As a Client"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:81
+#: plinth/modules/wireguard/templates/wireguard.html:66
#, python-format
msgid "Servers that %(box_name)s will connect to:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:88
-#: plinth/modules/wireguard/templates/wireguard_delete_server.html:34
+#: plinth/modules/wireguard/templates/wireguard.html:73
+#: plinth/modules/wireguard/templates/wireguard_delete_server.html:19
msgid "Endpoint"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:111
+#: plinth/modules/wireguard/templates/wireguard.html:96
msgid "No connections to remote servers are configured yet."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:119
+#: plinth/modules/wireguard/templates/wireguard.html:104
msgid "Add a new server"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:123
-#: plinth/modules/wireguard/views.py:178
+#: plinth/modules/wireguard/templates/wireguard.html:108
+#: plinth/modules/wireguard/views.py:160
msgid "Add Connection to Server"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_add_client.html:34
+#: plinth/modules/wireguard/templates/wireguard_add_client.html:19
msgid "Add Client"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_delete_client.html:29
+#: plinth/modules/wireguard/templates/wireguard_delete_client.html:14
msgid "Are you sure that you want to delete this client?"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_delete_server.html:29
+#: plinth/modules/wireguard/templates/wireguard_delete_server.html:14
msgid "Are you sure that you want to delete this server?"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_edit_client.html:34
+#: plinth/modules/wireguard/templates/wireguard_edit_client.html:19
msgid "Update Client"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_edit_server.html:34
+#: plinth/modules/wireguard/templates/wireguard_edit_server.html:19
msgid "Update Connection"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:27
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:12
#, python-format
msgid ""
"%(box_name)s will allow this client to connect to it. Ensure that the client "
"is configured with the following information."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:35
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:20
msgid "Client public key:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:39
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:24
msgid "IP address to use for client:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:43
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:46
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:28
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:31
msgid "Pre-shared key:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:47
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:32
msgid "Server endpoints:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:55
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:42
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:40
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:27
msgid "Server public key:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:65
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:64
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:50
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:49
msgid "Data transmitted:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:69
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:68
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:54
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:53
msgid "Data received:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:73
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:72
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:58
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:57
msgid "Latest handshake:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:29
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:14
#, python-format
msgid ""
"%(box_name)s will attempt to reach a WireGuard server with the following "
@@ -5842,133 +5943,133 @@ msgid ""
"public key and IP address."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:38
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:23
msgid "Server endpoint:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:50
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:35
msgid "Public key of this machine:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:54
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:39
msgid "IP address of this machine:"
msgstr ""
-#: plinth/modules/wireguard/views.py:64
+#: plinth/modules/wireguard/views.py:46
msgid "Added new client."
msgstr ""
-#: plinth/modules/wireguard/views.py:79 plinth/modules/wireguard/views.py:138
+#: plinth/modules/wireguard/views.py:61 plinth/modules/wireguard/views.py:120
msgid "Client with public key already exists"
msgstr ""
-#: plinth/modules/wireguard/views.py:92
+#: plinth/modules/wireguard/views.py:74
msgid "Allowed Client"
msgstr ""
-#: plinth/modules/wireguard/views.py:114
+#: plinth/modules/wireguard/views.py:96
msgid "Updated client."
msgstr ""
-#: plinth/modules/wireguard/views.py:119
+#: plinth/modules/wireguard/views.py:101
msgid "Modify Client"
msgstr ""
-#: plinth/modules/wireguard/views.py:152
+#: plinth/modules/wireguard/views.py:134
msgid "Delete Allowed Client"
msgstr ""
-#: plinth/modules/wireguard/views.py:161
+#: plinth/modules/wireguard/views.py:143
msgid "Client deleted."
msgstr ""
-#: plinth/modules/wireguard/views.py:163
+#: plinth/modules/wireguard/views.py:145
msgid "Client not found"
msgstr ""
-#: plinth/modules/wireguard/views.py:173
+#: plinth/modules/wireguard/views.py:155
msgid "Added new server."
msgstr ""
-#: plinth/modules/wireguard/views.py:194
+#: plinth/modules/wireguard/views.py:176
msgid "Connection to Server"
msgstr ""
-#: plinth/modules/wireguard/views.py:212
+#: plinth/modules/wireguard/views.py:194
msgid "Updated server."
msgstr ""
-#: plinth/modules/wireguard/views.py:217
+#: plinth/modules/wireguard/views.py:199
msgid "Modify Connection to Server"
msgstr ""
-#: plinth/modules/wireguard/views.py:254
+#: plinth/modules/wireguard/views.py:236
msgid "Delete Connection to Server"
msgstr ""
-#: plinth/modules/wireguard/views.py:274
+#: plinth/modules/wireguard/views.py:256
msgid "Server deleted."
msgstr ""
-#: plinth/network.py:42
+#: plinth/network.py:27
msgid "PPPoE"
msgstr ""
-#: plinth/network.py:43
+#: plinth/network.py:28
msgid "Generic"
msgstr ""
-#: plinth/package.py:137
+#: plinth/package.py:122
msgid "Error during installation"
msgstr ""
-#: plinth/package.py:159
+#: plinth/package.py:144
msgid "installing"
msgstr ""
-#: plinth/package.py:161
+#: plinth/package.py:146
msgid "downloading"
msgstr ""
-#: plinth/package.py:163
+#: plinth/package.py:148
msgid "media change"
msgstr ""
-#: plinth/package.py:165
+#: plinth/package.py:150
#, python-brace-format
msgid "configuration file: {file}"
msgstr ""
-#: plinth/templates/403.html:25
+#: plinth/templates/403.html:10
msgid "403 Forbidden"
msgstr ""
-#: plinth/templates/403.html:29
+#: plinth/templates/403.html:14
#, python-format
msgid "You don't have permission to access %(request_path)s on this server."
msgstr ""
-#: plinth/templates/404.html:25
+#: plinth/templates/404.html:10
msgid "404"
msgstr ""
-#: plinth/templates/404.html:28
+#: plinth/templates/404.html:13
#, python-format
msgid "Requested page %(request_path)s was not found."
msgstr ""
-#: plinth/templates/404.html:34
+#: plinth/templates/404.html:19
msgid ""
"If you believe this missing page should exist, please file a bug at the "
"FreedomBox Service (Plinth) project issue tracker."
msgstr ""
-#: plinth/templates/500.html:25
+#: plinth/templates/500.html:10
msgid "500"
msgstr ""
-#: plinth/templates/500.html:29
+#: plinth/templates/500.html:14
#, python-format
msgid ""
"This is an internal error and not something you caused or can fix. Please "
@@ -5977,137 +6078,137 @@ msgid ""
"href=\"%(status_log_url)s\">status log to the bug report."
msgstr ""
-#: plinth/templates/app.html:47
+#: plinth/templates/app-header.html:22
+msgid "Installation"
+msgstr ""
+
+#: plinth/templates/app.html:32
#, python-format
msgid "Service %(service_name)s is running."
msgstr ""
-#: plinth/templates/app.html:52
+#: plinth/templates/app.html:37
#, python-format
msgid "Service %(service_name)s is not running."
msgstr ""
-#: plinth/templates/base.html:50
+#: plinth/templates/base.html:35
#, python-format
msgid "Core functionality and web interface for %(box_name)s"
msgstr ""
-#: plinth/templates/base.html:96
+#: plinth/templates/base.html:81
msgid "Toggle navigation"
msgstr ""
-#: plinth/templates/base.html:120 plinth/templates/base.html:123
+#: plinth/templates/base.html:105 plinth/templates/base.html:108
msgid "Home"
msgstr ""
-#: plinth/templates/base.html:128 plinth/templates/base.html:132
+#: plinth/templates/base.html:113 plinth/templates/base.html:117
msgid "Apps"
msgstr ""
-#: plinth/templates/base.html:137 plinth/templates/base.html:141
+#: plinth/templates/base.html:122 plinth/templates/base.html:126
msgid "System"
msgstr ""
-#: plinth/templates/base.html:173 plinth/templates/base.html:174
+#: plinth/templates/base.html:158 plinth/templates/base.html:159
msgid "Change password"
msgstr ""
-#: plinth/templates/base.html:181 plinth/templates/base.html:182
+#: plinth/templates/base.html:166 plinth/templates/base.html:167
msgid "Restart"
msgstr ""
-#: plinth/templates/base.html:187 plinth/templates/base.html:188
+#: plinth/templates/base.html:172 plinth/templates/base.html:173
msgid "Shut down"
msgstr ""
-#: plinth/templates/base.html:195 plinth/templates/base.html:196
-#: plinth/templates/base.html:220 plinth/templates/base.html:222
+#: plinth/templates/base.html:180 plinth/templates/base.html:181
+#: plinth/templates/base.html:205 plinth/templates/base.html:207
msgid "Log out"
msgstr ""
-#: plinth/templates/base.html:204 plinth/templates/base.html:207
+#: plinth/templates/base.html:189 plinth/templates/base.html:192
msgid "Select language"
msgstr ""
-#: plinth/templates/base.html:212 plinth/templates/base.html:214
+#: plinth/templates/base.html:197 plinth/templates/base.html:199
msgid "Log in"
msgstr ""
-#: plinth/templates/clients.html:32
+#: plinth/templates/clients.html:17
msgid "Web"
msgstr ""
-#: plinth/templates/clients.html:57
+#: plinth/templates/clients.html:42
msgid "Desktop"
msgstr ""
-#: plinth/templates/clients.html:68
+#: plinth/templates/clients.html:53
msgid "GNU/Linux"
msgstr ""
-#: plinth/templates/clients.html:70
+#: plinth/templates/clients.html:55
msgid "Windows"
msgstr ""
-#: plinth/templates/clients.html:72
+#: plinth/templates/clients.html:57
msgid "macOS"
msgstr ""
-#: plinth/templates/clients.html:88
+#: plinth/templates/clients.html:73
msgid "Mobile"
msgstr ""
-#: plinth/templates/clients.html:99
+#: plinth/templates/clients.html:84
msgid "Play Store"
msgstr ""
-#: plinth/templates/clients.html:101
+#: plinth/templates/clients.html:86
msgid "F-Droid"
msgstr ""
-#: plinth/templates/clients.html:103
+#: plinth/templates/clients.html:88
msgid "App Store"
msgstr ""
-#: plinth/templates/clients.html:119
+#: plinth/templates/clients.html:104
msgid "Package"
msgstr ""
-#: plinth/templates/clients.html:126
+#: plinth/templates/clients.html:111
msgid "Debian:"
msgstr ""
-#: plinth/templates/clients.html:129
+#: plinth/templates/clients.html:114
msgid "Homebrew:"
msgstr ""
-#: plinth/templates/clients.html:132
+#: plinth/templates/clients.html:117
msgid "RPM:"
msgstr ""
-#: plinth/templates/first_setup.html:39
+#: plinth/templates/first_setup.html:24
#, python-format
msgid ""
"Please wait for %(box_name)s to finish installation. You can start using "
"your %(box_name)s once it is done."
msgstr ""
-#: plinth/templates/header.html:36
-msgid "Installation"
-msgstr ""
-
-#: plinth/templates/index.html:37
+#: plinth/templates/index.html:22
#, python-format
msgid ""
"Enable some applications to add shortcuts to "
"this page."
msgstr ""
-#: plinth/templates/index.html:59
+#: plinth/templates/index.html:44
msgid "Configure »"
msgstr ""
-#: plinth/templates/index.html:115
+#: plinth/templates/index.html:100
#, python-format
msgid ""
"%(box_name)s, a Debian pure blend, is a 100%% free software self-hosting web "
@@ -6115,7 +6216,7 @@ msgid ""
"communication tools respecting your privacy and data ownership."
msgstr ""
-#: plinth/templates/index.html:124
+#: plinth/templates/index.html:109
#, python-format
msgid ""
"This portal is a part of the %(box_name)s web interface. %(box_name)s is "
@@ -6123,55 +6224,55 @@ msgid ""
"Version 3 or later."
msgstr ""
-#: plinth/templates/index.html:144
+#: plinth/templates/index.html:129
msgid "Homepage"
msgstr ""
-#: plinth/templates/index.html:147
+#: plinth/templates/index.html:132
msgid "Source Code"
msgstr ""
-#: plinth/templates/index.html:150
+#: plinth/templates/index.html:135
msgid "Donate"
msgstr ""
-#: plinth/templates/index.html:154
+#: plinth/templates/index.html:139
msgid "FreedomBox Foundation"
msgstr ""
-#: plinth/templates/index.html:161
+#: plinth/templates/index.html:146
msgid "IRC Chatroom"
msgstr ""
-#: plinth/templates/index.html:166
+#: plinth/templates/index.html:151
msgid "Mailing list"
msgstr ""
-#: plinth/templates/internal-zone.html:26
+#: plinth/templates/internal-zone.html:11
#, python-format
msgid "%(service_name)s is available only on internal networks."
msgstr ""
-#: plinth/templates/internal-zone.html:32
+#: plinth/templates/internal-zone.html:17
msgid "Currently there are no network interfaces configured as internal."
msgstr ""
-#: plinth/templates/internal-zone.html:34
+#: plinth/templates/internal-zone.html:19
#, python-format
msgid ""
"Currently the following network interfaces are configured as internal: "
"%(interface_list)s"
msgstr ""
-#: plinth/templates/notifications-dropdown.html:26
+#: plinth/templates/notifications-dropdown.html:11
msgid "Notifications"
msgstr ""
-#: plinth/templates/port-forwarding-info.html:23
+#: plinth/templates/port-forwarding-info.html:8
msgid "Port Forwarding"
msgstr ""
-#: plinth/templates/port-forwarding-info.html:26
+#: plinth/templates/port-forwarding-info.html:11
#, python-format
msgid ""
"If your FreedomBox is behind a router, you will need to set up port "
@@ -6179,62 +6280,62 @@ msgid ""
"%(service_name)s:"
msgstr ""
-#: plinth/templates/setup.html:51
+#: plinth/templates/setup.html:36
msgid "Install this application?"
msgstr ""
-#: plinth/templates/setup.html:55
+#: plinth/templates/setup.html:40
msgid "This application needs an update. Update now?"
msgstr ""
-#: plinth/templates/setup.html:66
+#: plinth/templates/setup.html:51
msgid ""
"Another installation or upgrade is already running. Please wait for a few "
"moments before trying again."
msgstr ""
-#: plinth/templates/setup.html:73
+#: plinth/templates/setup.html:58
msgid "This application is currently not available in your distribution."
msgstr ""
-#: plinth/templates/setup.html:87
+#: plinth/templates/setup.html:72
msgid "Install"
msgstr ""
-#: plinth/templates/setup.html:98
+#: plinth/templates/setup.html:83
msgid "Performing pre-install operation"
msgstr ""
-#: plinth/templates/setup.html:102
+#: plinth/templates/setup.html:87
msgid "Performing post-install operation"
msgstr ""
-#: plinth/templates/setup.html:107
+#: plinth/templates/setup.html:92
#, python-format
msgid "Installing %(package_names)s: %(status)s"
msgstr ""
-#: plinth/templates/setup.html:117
+#: plinth/templates/setup.html:102
#, python-format
msgid "%(percentage)s%% complete"
msgstr ""
-#: plinth/templates/toolbar.html:38
+#: plinth/templates/toolbar.html:23
msgid "Launch web client"
msgstr ""
-#: plinth/templates/toolbar.html:47
+#: plinth/templates/toolbar.html:32
msgid "Client Apps"
msgstr ""
-#: plinth/views.py:179
+#: plinth/views.py:189
msgid "Application enabled"
msgstr ""
-#: plinth/views.py:182
+#: plinth/views.py:192
msgid "Application disabled"
msgstr ""
-#: plinth/web_framework.py:190
+#: plinth/web_framework.py:107
msgid "Gujarati"
msgstr ""
diff --git a/plinth/locale/kn/LC_MESSAGES/django.po b/plinth/locale/kn/LC_MESSAGES/django.po
index 09c493fa7..582eeed4e 100644
--- a/plinth/locale/kn/LC_MESSAGES/django.po
+++ b/plinth/locale/kn/LC_MESSAGES/django.po
@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2020-02-14 21:26+0200\n"
+"POT-Creation-Date: 2020-02-24 19:12-0500\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME This means that devices on the Internet can reach you when you are " +"connected to the Internet. Every time you connect to the Internet with your " +"Internet Service Provider (ISP), you may get a different IP address, " +"especially after some offline time. Many ISPs offer this type of " +"connectivity. If you have a public IP address but are unsure if it changes " +"over time or not, it is safer to choose this option.
" +msgstr "" + #: plinth/modules/networks/forms.py:313 +#, python-brace-format +msgid "" +"I have a public IP address that does not change overtime (recommended)This means that devices on the Internet can reach you " +"when you are connected to the Internet. Every time you connect to the " +"Internet with your Internet Service Provider (ISP), you always get the same " +"IP address. This is the most trouble-free setup for many {box_name} services " +"but very few ISPs offer this. You may be able to get this service from your " +"ISP by making an additional payment.
" +msgstr "" + +#: plinth/modules/networks/forms.py:326 +#, python-brace-format +msgid "" +"I dont have a public IP addressThis means that " +"devices on the Internet can not reach you when you are connected to " +"the Internet. Every time you connect to the Internet with your Internet " +"Service Provider (ISP), you get an IP address that is only relevant for " +"local networks. Many ISPs offer this type of connectivity. This is the most " +"troublesome situation for hosting services at home. {box_name} provides many " +"workaround solutions but each solution has some limitations.
" +msgstr "" + +#: plinth/modules/networks/forms.py:351 msgid "Preferred router configuration" msgstr "" -#: plinth/modules/networks/forms.py:318 +#: plinth/modules/networks/forms.py:356 #, python-brace-format msgid "" -"Use DMZ feature to forward all trafficMost routers " -"provide a configuration setting called DMZ. This will allow the router to " -"forward all incoming traffic from the internet to a single IP address such " -"as the {box_name}'s address. First remember to configure a static local IP " -"address for your {box_name} in your router's configuration.
" +"Use DMZ feature to forward all traffic (recommended)Most routers provide a configuration setting called DMZ. This will allow " +"the router to forward all incoming traffic from the Internet to a single IP " +"address such as the {box_name}'s IP address. First remember to configure a " +"static local IP address for your {box_name} in your router's configuration." +"p>" msgstr "" -#: plinth/modules/networks/forms.py:332 +#: plinth/modules/networks/forms.py:368 #, python-brace-format msgid "" -"Forward Specific Traffic as needed by each application
You may alternatively choose to forward only specific traffic to your " "{box_name}. This is ideal if you have other servers like {box_name} in your " "network or if your router does not support DMZ feature. All applications " @@ -3064,276 +3127,280 @@ msgid "" "to be forwarded for that application to work.
" msgstr "" -#: plinth/modules/networks/forms.py:349 +#: plinth/modules/networks/forms.py:382 msgid "" -"Router is currently unconfiguredChoose this if you " +"Router is currently unconfigured
Choose this if you " "have not configured or are unable to configure the router currently and wish " "to be reminded later. Some of the other configuration steps may fail.
" msgstr "" -#: plinth/modules/networks/networks.py:43 +#: plinth/modules/networks/networks.py:32 msgid "Network Connections" msgstr "" -#: plinth/modules/networks/networks.py:59 +#: plinth/modules/networks/networks.py:46 msgid "Cannot show connection: Connection not found." msgstr "" -#: plinth/modules/networks/networks.py:94 +#: plinth/modules/networks/networks.py:81 msgid "Connection Information" msgstr "" -#: plinth/modules/networks/networks.py:108 +#: plinth/modules/networks/networks.py:95 msgid "Cannot edit connection: Connection not found." msgstr "" -#: plinth/modules/networks/networks.py:114 +#: plinth/modules/networks/networks.py:101 msgid "This type of connection is not yet understood." msgstr "" -#: plinth/modules/networks/networks.py:136 -#: plinth/modules/networks/networks.py:220 -#: plinth/modules/networks/templates/connections_edit.html:35 +#: plinth/modules/networks/networks.py:123 +#: plinth/modules/networks/networks.py:207 +#: plinth/modules/networks/templates/connections_edit.html:20 msgid "Edit Connection" msgstr "" -#: plinth/modules/networks/networks.py:232 +#: plinth/modules/networks/networks.py:219 #, python-brace-format msgid "Activated connection {name}." msgstr "" -#: plinth/modules/networks/networks.py:236 +#: plinth/modules/networks/networks.py:223 msgid "Failed to activate connection: Connection not found." msgstr "" -#: plinth/modules/networks/networks.py:242 +#: plinth/modules/networks/networks.py:229 #, python-brace-format msgid "Failed to activate connection {name}: No suitable device is available." msgstr "" -#: plinth/modules/networks/networks.py:255 +#: plinth/modules/networks/networks.py:242 #, python-brace-format msgid "Deactivated connection {name}." msgstr "" -#: plinth/modules/networks/networks.py:259 +#: plinth/modules/networks/networks.py:246 msgid "Failed to de-activate connection: Connection not found." msgstr "" -#: plinth/modules/networks/networks.py:269 -#: plinth/modules/networks/templates/connections_list.html:62 -#: plinth/modules/networks/templates/connections_list.html:64 +#: plinth/modules/networks/networks.py:256 +#: plinth/modules/networks/templates/connections_list.html:12 +#: plinth/modules/networks/templates/connections_list.html:14 msgid "Nearby Wi-Fi Networks" msgstr "" -#: plinth/modules/networks/networks.py:293 -#: plinth/modules/networks/templates/connections_list.html:67 -#: plinth/modules/networks/templates/connections_list.html:69 -#: plinth/modules/wireguard/templates/wireguard_add_server.html:34 +#: plinth/modules/networks/networks.py:280 +#: plinth/modules/networks/templates/connections_list.html:17 +#: plinth/modules/networks/templates/connections_list.html:19 +#: plinth/modules/wireguard/templates/wireguard_add_server.html:19 msgid "Add Connection" msgstr "" -#: plinth/modules/networks/networks.py:311 +#: plinth/modules/networks/networks.py:298 msgid "Adding New Generic Connection" msgstr "" -#: plinth/modules/networks/networks.py:329 +#: plinth/modules/networks/networks.py:316 msgid "Adding New Ethernet Connection" msgstr "" -#: plinth/modules/networks/networks.py:347 +#: plinth/modules/networks/networks.py:334 msgid "Adding New PPPoE Connection" msgstr "" -#: plinth/modules/networks/networks.py:382 +#: plinth/modules/networks/networks.py:369 msgid "Adding New Wi-Fi Connection" msgstr "" -#: plinth/modules/networks/networks.py:397 +#: plinth/modules/networks/networks.py:384 #, python-brace-format msgid "Connection {name} deleted." msgstr "" -#: plinth/modules/networks/networks.py:401 -#: plinth/modules/networks/networks.py:411 +#: plinth/modules/networks/networks.py:388 +#: plinth/modules/networks/networks.py:398 msgid "Failed to delete connection: Connection not found." msgstr "" -#: plinth/modules/networks/networks.py:416 -#: plinth/modules/networks/templates/connections_delete.html:26 +#: plinth/modules/networks/networks.py:403 +#: plinth/modules/networks/templates/connections_delete.html:11 msgid "Delete Connection" msgstr "" -#: plinth/modules/networks/networks.py:442 +#: plinth/modules/networks/networks.py:428 msgid "Router configuration type saved." msgstr "" -#: plinth/modules/networks/templates/connection_show.html:43 +#: plinth/modules/networks/networks.py:474 +msgid "Internet connection type saved." +msgstr "" + +#: plinth/modules/networks/templates/connection_show.html:28 msgid "Edit connection" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:43 -#: plinth/modules/wireguard/templates/wireguard_show_client.html:83 -#: plinth/modules/wireguard/templates/wireguard_show_server.html:84 -#: plinth/templates/base.html:167 plinth/templates/base.html:168 +#: plinth/modules/networks/templates/connection_show.html:28 +#: plinth/modules/wireguard/templates/wireguard_show_client.html:68 +#: plinth/modules/wireguard/templates/wireguard_show_server.html:69 +#: plinth/templates/base.html:152 plinth/templates/base.html:153 msgid "Edit" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:50 -#: plinth/modules/networks/templates/connections_list.html:90 +#: plinth/modules/networks/templates/connection_show.html:35 +#: plinth/modules/networks/templates/connections_list.html:40 msgid "Deactivate" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:57 -#: plinth/modules/networks/templates/connections_list.html:98 +#: plinth/modules/networks/templates/connection_show.html:42 +#: plinth/modules/networks/templates/connections_list.html:48 msgid "Activate" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:63 +#: plinth/modules/networks/templates/connection_show.html:48 msgid "Delete connection" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:66 -#: plinth/modules/networks/templates/connections_diagram.html:73 -#: plinth/modules/networks/templates/connections_diagram.html:76 -#: plinth/modules/networks/templates/connections_diagram.html:105 -#: plinth/modules/networks/templates/connections_diagram.html:127 +#: plinth/modules/networks/templates/connection_show.html:51 +#: plinth/modules/networks/templates/connections_diagram.html:58 +#: plinth/modules/networks/templates/connections_diagram.html:61 +#: plinth/modules/networks/templates/connections_diagram.html:90 +#: plinth/modules/networks/templates/connections_diagram.html:112 msgid "Connection" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:71 +#: plinth/modules/networks/templates/connection_show.html:56 msgid "Primary connection" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:73 -#: plinth/modules/networks/templates/connection_show.html:217 -#: plinth/modules/networks/templates/connection_show.html:256 +#: plinth/modules/networks/templates/connection_show.html:58 +#: plinth/modules/networks/templates/connection_show.html:202 +#: plinth/modules/networks/templates/connection_show.html:241 msgid "yes" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:84 -#: plinth/modules/storage/templates/storage.html:40 +#: plinth/modules/networks/templates/connection_show.html:69 +#: plinth/modules/storage/templates/storage.html:25 msgid "Device" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:88 +#: plinth/modules/networks/templates/connection_show.html:73 msgid "State" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:93 +#: plinth/modules/networks/templates/connection_show.html:78 msgid "State reason" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:102 +#: plinth/modules/networks/templates/connection_show.html:87 msgid "MAC address" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:106 +#: plinth/modules/networks/templates/connection_show.html:91 msgid "Interface" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:110 -#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:33 -#: plinth/modules/snapshot/templates/snapshot_manage.html:45 -#: plinth/modules/snapshot/templates/snapshot_rollback.html:41 +#: plinth/modules/networks/templates/connection_show.html:95 +#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:18 +#: plinth/modules/snapshot/templates/snapshot_manage.html:30 +#: plinth/modules/snapshot/templates/snapshot_rollback.html:26 msgid "Description" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:116 +#: plinth/modules/networks/templates/connection_show.html:101 msgid "Physical Link" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:121 +#: plinth/modules/networks/templates/connection_show.html:106 msgid "Link state" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:125 +#: plinth/modules/networks/templates/connection_show.html:110 msgid "cable is connected" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:128 +#: plinth/modules/networks/templates/connection_show.html:113 msgid "please check cable" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:133 -#: plinth/modules/networks/templates/connection_show.html:149 +#: plinth/modules/networks/templates/connection_show.html:118 +#: plinth/modules/networks/templates/connection_show.html:134 msgid "Speed" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:135 +#: plinth/modules/networks/templates/connection_show.html:120 #, python-format msgid "%(ethernet_speed)s Mbit/s" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:151 +#: plinth/modules/networks/templates/connection_show.html:136 #, python-format msgid "%(wireless_bitrate)s Mbit/s" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:163 +#: plinth/modules/networks/templates/connection_show.html:148 msgid "Signal strength" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:181 +#: plinth/modules/networks/templates/connection_show.html:166 msgid "IPv4" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:186 -#: plinth/modules/networks/templates/connection_show.html:227 -#: plinth/modules/shadowsocks/forms.py:64 +#: plinth/modules/networks/templates/connection_show.html:171 +#: plinth/modules/networks/templates/connection_show.html:212 +#: plinth/modules/shadowsocks/forms.py:49 msgid "Method" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:193 -#: plinth/modules/networks/templates/connection_show.html:234 +#: plinth/modules/networks/templates/connection_show.html:178 +#: plinth/modules/networks/templates/connection_show.html:219 msgid "IP address" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:209 -#: plinth/modules/networks/templates/connection_show.html:248 +#: plinth/modules/networks/templates/connection_show.html:194 +#: plinth/modules/networks/templates/connection_show.html:233 msgid "DNS server" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:216 -#: plinth/modules/networks/templates/connection_show.html:255 -#: plinth/modules/storage/forms.py:156 +#: plinth/modules/networks/templates/connection_show.html:201 +#: plinth/modules/networks/templates/connection_show.html:240 +#: plinth/modules/storage/forms.py:141 msgid "Default" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:222 +#: plinth/modules/networks/templates/connection_show.html:207 msgid "IPv6" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:263 +#: plinth/modules/networks/templates/connection_show.html:248 msgid "This connection is not active." msgstr "" -#: plinth/modules/networks/templates/connection_show.html:266 -#: plinth/modules/security/__init__.py:38 plinth/modules/security/views.py:47 +#: plinth/modules/networks/templates/connection_show.html:251 +#: plinth/modules/security/__init__.py:45 msgid "Security" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:271 -#: plinth/modules/networks/templates/connection_show.html:291 -#: plinth/modules/networks/templates/connection_show.html:310 +#: plinth/modules/networks/templates/connection_show.html:256 +#: plinth/modules/networks/templates/connection_show.html:276 +#: plinth/modules/networks/templates/connection_show.html:295 msgid "Firewall zone" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:280 +#: plinth/modules/networks/templates/connection_show.html:265 msgid "" "This interface should be connected to a local network/machine. If you " "connect this interface to a public network, services meant to be available " "only internally will become available externally. This is a security risk." msgstr "" -#: plinth/modules/networks/templates/connection_show.html:300 +#: plinth/modules/networks/templates/connection_show.html:285 msgid "" "This interface should receive your Internet connection. If you connect it to " "a local network/machine, many services meant to available only internally " "will not be available." msgstr "" -#: plinth/modules/networks/templates/connection_show.html:319 +#: plinth/modules/networks/templates/connection_show.html:304 #, python-format msgid "" "This interface is not maintained by %(box_name)s. Its security status is " @@ -3342,109 +3409,132 @@ msgid "" "connection and re-configure it." msgstr "" -#: plinth/modules/networks/templates/connections_create.html:34 +#: plinth/modules/networks/templates/connections_create.html:19 msgid "Create Connection" msgstr "" -#: plinth/modules/networks/templates/connections_delete.html:29 +#: plinth/modules/networks/templates/connections_delete.html:14 #, python-format msgid "Delete connection %(name)s permanently?" msgstr "" -#: plinth/modules/networks/templates/connections_diagram.html:65 +#: plinth/modules/networks/templates/connections_diagram.html:50 msgid "Internet" msgstr "" -#: plinth/modules/networks/templates/connections_diagram.html:70 -#: plinth/modules/networks/templates/connections_diagram.html:102 +#: plinth/modules/networks/templates/connections_diagram.html:55 +#: plinth/modules/networks/templates/connections_diagram.html:87 msgid "Spacing" msgstr "" -#: plinth/modules/networks/templates/connections_diagram.html:83 -#: plinth/modules/networks/templates/connections_diagram.html:113 -#: plinth/network.py:40 +#: plinth/modules/networks/templates/connections_diagram.html:68 +#: plinth/modules/networks/templates/connections_diagram.html:98 +#: plinth/network.py:25 msgid "Ethernet" msgstr "" -#: plinth/modules/networks/templates/connections_diagram.html:86 -#: plinth/modules/networks/templates/connections_diagram.html:116 -#: plinth/network.py:41 +#: plinth/modules/networks/templates/connections_diagram.html:71 +#: plinth/modules/networks/templates/connections_diagram.html:101 +#: plinth/network.py:26 msgid "Wi-Fi" msgstr "" -#: plinth/modules/networks/templates/connections_diagram.html:89 +#: plinth/modules/networks/templates/connections_diagram.html:74 #, python-format msgid "Show connection %(connection.name)s" msgstr "" -#: plinth/modules/networks/templates/connections_diagram.html:119 +#: plinth/modules/networks/templates/connections_diagram.html:104 #, python-format msgid "Show connection %(name)s" msgstr "" -#: plinth/modules/networks/templates/connections_diagram.html:131 +#: plinth/modules/networks/templates/connections_diagram.html:116 msgid "Computer" msgstr "" -#: plinth/modules/networks/templates/connections_list.html:58 +#: plinth/modules/networks/templates/connections_list.html:8 msgid "Connections" msgstr "" -#: plinth/modules/networks/templates/connections_list.html:79 +#: plinth/modules/networks/templates/connections_list.html:29 #, python-format msgid "Delete connection %(name)s" msgstr "" -#: plinth/modules/networks/templates/connections_list.html:104 +#: plinth/modules/networks/templates/connections_list.html:54 msgid "Active" msgstr "" -#: plinth/modules/networks/templates/connections_list.html:107 +#: plinth/modules/networks/templates/connections_list.html:57 msgid "Inactive" msgstr "" -#: plinth/modules/networks/templates/connections_list.html:124 -#, python-format -msgid "%(box_name)s Internet Connectivity" -msgstr "" - -#: plinth/modules/networks/templates/connections_list.html:129 -#, python-format -msgid "" -"The following best describes how your %(box_name)s is connected in your " -"network. This information is used only to suggest necessary configuration " -"actions." -msgstr "" - -#: plinth/modules/networks/templates/connections_list.html:137 -#, python-format -msgid "" -"Your %(box_name)s gets its internet from your Router via WiFi or Ethernet " -"cable. This is a typical home setup." -msgstr "" - -#: plinth/modules/networks/templates/connections_list.html:145 -#: plinth/modules/networks/templates/connections_list.html:147 -msgid "Update..." -msgstr "" - -#: plinth/modules/networks/templates/connections_type_select.html:34 +#: plinth/modules/networks/templates/connections_type_select.html:19 msgid "Create..." msgstr "" -#: plinth/modules/networks/templates/router_configuration_content.html:25 +#: plinth/modules/networks/templates/internet_connectivity_content.html:10 +msgid "What Type Of Internet Connection Do You Have?" +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_content.html:16 +msgid "" +"Select an option that best describes the type of Internet connection. This " +"information is used only to guide you with further setup." +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_firstboot.html:18 +#: plinth/modules/networks/templates/router_configuration_firstboot.html:18 +msgid "Skip this step" +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_firstboot.html:19 +#: plinth/modules/networks/templates/router_configuration_firstboot.html:19 +msgid "Next" +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:9 +msgid "Your Internet Connection Type" +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:14 +msgid "" +"The following best describes the type of Internet connection provided by " +"your ISP. This information is only used to suggest you necessary " +"configuration actions." +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:23 +msgid "My ISP provides a public IP address that does not change over time." +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:27 +msgid "My ISP provides a public IP address that may change over time." +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:31 +msgid "My ISP does not provide a public IP address." +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:37 +#: plinth/modules/networks/templates/router_configuration_main.html:29 +msgid "Update..." +msgstr "" + +#: plinth/modules/networks/templates/router_configuration_content.html:10 #, python-format msgid "Setup %(box_name)s Behind a Router" msgstr "" -#: plinth/modules/networks/templates/router_configuration_content.html:31 +#: plinth/modules/networks/templates/router_configuration_content.html:16 #, python-format msgid "" "Your %(box_name)s gets its internet connection from your router via Wi-Fi or " "Ethernet cable. This is a typical home setup." msgstr "" -#: plinth/modules/networks/templates/router_configuration_content.html:38 +#: plinth/modules/networks/templates/router_configuration_content.html:23 #, python-format msgid "" "With this setup, any device on the internet trying to reach your " @@ -3453,24 +3543,24 @@ msgid "" "the services." msgstr "" -#: plinth/modules/networks/templates/router_configuration_content.html:47 +#: plinth/modules/networks/templates/router_configuration_content.html:32 msgid "" "If you don't have control over your router, choose not to configure it. To " -"see options, to overcome this limitation, choose 'no public address' option " +"see options to overcome this limitation, choose 'no public address' option " "in Internet connection type selection." msgstr "" -#: plinth/modules/networks/templates/router_configuration_content.html:54 +#: plinth/modules/networks/templates/router_configuration_content.html:39 msgid "Choose How You Wish to Configure Your Router" msgstr "" -#: plinth/modules/networks/templates/router_configuration_content.html:57 +#: plinth/modules/networks/templates/router_configuration_content.html:42 msgid "" "You will need to login to your router's administration console provided by " "the router. This may look like one of the following:" msgstr "" -#: plinth/modules/networks/templates/router_configuration_content.html:69 +#: plinth/modules/networks/templates/router_configuration_content.html:54 msgid "" "The username and password is configured by you when you first setup the " "router. For many routers, this information is printed at the back of the " @@ -3480,24 +3570,27 @@ msgid "" "full instructions on how to perform this task." msgstr "" -#: plinth/modules/networks/templates/router_configuration_firstboot.html:33 -msgid "skip this step" +#: plinth/modules/networks/templates/router_configuration_main.html:9 +#, python-format +msgid "%(box_name)s Internet Connectivity" msgstr "" -#: plinth/modules/networks/templates/router_configuration_firstboot.html:35 -msgid "Next" +#: plinth/modules/networks/templates/router_configuration_main.html:15 +#, python-format +msgid "" +"The following best describes how your %(box_name)s is connected in your " +"network. This information is used only to suggest necessary configuration " +"actions." msgstr "" -#: plinth/modules/openvpn/__init__.py:39 plinth/modules/openvpn/manifest.py:33 -msgid "OpenVPN" +#: plinth/modules/networks/templates/router_configuration_main.html:23 +#, python-format +msgid "" +"Your %(box_name)s gets its Internet from your Router via Wi-Fi or Ethernet " +"cable. This is a typical home setup." msgstr "" -#: plinth/modules/openvpn/__init__.py:43 -#: plinth/modules/wireguard/__init__.py:40 -msgid "Virtual Private Network" -msgstr "" - -#: plinth/modules/openvpn/__init__.py:47 +#: plinth/modules/openvpn/__init__.py:26 #, python-brace-format msgid "" "Virtual Private Network (VPN) is a technique for securely connecting two " @@ -3508,21 +3601,30 @@ msgid "" "security and anonymity." msgstr "" -#: plinth/modules/openvpn/__init__.py:79 +#: plinth/modules/openvpn/__init__.py:49 plinth/modules/openvpn/manifest.py:18 +msgid "OpenVPN" +msgstr "" + +#: plinth/modules/openvpn/__init__.py:50 +#: plinth/modules/wireguard/__init__.py:53 +msgid "Virtual Private Network" +msgstr "" + +#: plinth/modules/openvpn/__init__.py:61 #, python-brace-format msgid "" "Download Profile" msgstr "" -#: plinth/modules/openvpn/forms.py:27 +#: plinth/modules/openvpn/forms.py:12 msgid "Enable OpenVPN server" msgstr "" -#: plinth/modules/openvpn/manifest.py:63 -msgid "TunnelBlick" +#: plinth/modules/openvpn/manifest.py:48 +msgid "Tunnelblick" msgstr "" -#: plinth/modules/openvpn/templates/openvpn.html:42 +#: plinth/modules/openvpn/templates/openvpn.html:27 #, python-format msgid "" "OpenVPN has not yet been setup. Performing a secure setup takes a very long " @@ -3530,15 +3632,15 @@ msgid "" "If the setup is interrupted, you may start it again." msgstr "" -#: plinth/modules/openvpn/templates/openvpn.html:55 +#: plinth/modules/openvpn/templates/openvpn.html:40 msgid "Start setup" msgstr "" -#: plinth/modules/openvpn/templates/openvpn.html:64 +#: plinth/modules/openvpn/templates/openvpn.html:49 msgid "OpenVPN setup is running" msgstr "" -#: plinth/modules/openvpn/templates/openvpn.html:68 +#: plinth/modules/openvpn/templates/openvpn.html:53 #, python-format msgid "" "To perform a secure setup, this process takes a very long time. Depending " @@ -3546,11 +3648,11 @@ msgid "" "interrupted, you may start it again." msgstr "" -#: plinth/modules/openvpn/templates/openvpn.html:87 +#: plinth/modules/openvpn/templates/openvpn.html:72 msgid "Profile" msgstr "" -#: plinth/modules/openvpn/templates/openvpn.html:90 +#: plinth/modules/openvpn/templates/openvpn.html:75 #, python-format msgid "" "To connect to %(box_name)s's VPN, you need to download a profile and feed it " @@ -3559,32 +3661,24 @@ msgid "" "clients and instructions on how to configure them." msgstr "" -#: plinth/modules/openvpn/templates/openvpn.html:100 +#: plinth/modules/openvpn/templates/openvpn.html:85 #, python-format msgid "Profile is specific to each user of %(box_name)s. Keep it a secret." msgstr "" -#: plinth/modules/openvpn/templates/openvpn.html:111 +#: plinth/modules/openvpn/templates/openvpn.html:96 msgid "Download my profile" msgstr "" -#: plinth/modules/openvpn/views.py:133 +#: plinth/modules/openvpn/views.py:114 msgid "Setup completed." msgstr "" -#: plinth/modules/openvpn/views.py:135 +#: plinth/modules/openvpn/views.py:116 msgid "Setup failed." msgstr "" -#: plinth/modules/pagekite/__init__.py:39 -msgid "PageKite" -msgstr "" - -#: plinth/modules/pagekite/__init__.py:41 -msgid "Public Visibility" -msgstr "" - -#: plinth/modules/pagekite/__init__.py:45 +#: plinth/modules/pagekite/__init__.py:26 #, python-brace-format msgid "" "PageKite is a system for exposing {box_name} services when you don't have a " @@ -3593,33 +3687,33 @@ msgid "" "following situations:" msgstr "" -#: plinth/modules/pagekite/__init__.py:50 +#: plinth/modules/pagekite/__init__.py:31 #, python-brace-format msgid "{box_name} is behind a restricted firewall." msgstr "" -#: plinth/modules/pagekite/__init__.py:53 +#: plinth/modules/pagekite/__init__.py:34 #, python-brace-format msgid "{box_name} is connected to a (wireless) router which you don't control." msgstr "" -#: plinth/modules/pagekite/__init__.py:55 +#: plinth/modules/pagekite/__init__.py:36 msgid "" "Your ISP does not provide you an external IP address and instead provides " "Internet connection through NAT." msgstr "" -#: plinth/modules/pagekite/__init__.py:57 +#: plinth/modules/pagekite/__init__.py:38 msgid "" "Your ISP does not provide you a static IP address and your IP address " "changes every time you connect to Internet." msgstr "" -#: plinth/modules/pagekite/__init__.py:59 +#: plinth/modules/pagekite/__init__.py:40 msgid "Your ISP limits incoming connections." msgstr "" -#: plinth/modules/pagekite/__init__.py:61 +#: plinth/modules/pagekite/__init__.py:42 #, python-brace-format msgid "" "PageKite works around NAT, firewalls and IP address limitations by using a " @@ -3628,138 +3722,146 @@ msgid "" "the future it might be possible to use your buddy's {box_name} for this." msgstr "" -#: plinth/modules/pagekite/__init__.py:87 +#: plinth/modules/pagekite/__init__.py:62 +msgid "PageKite" +msgstr "" + +#: plinth/modules/pagekite/__init__.py:64 +msgid "Public Visibility" +msgstr "" + +#: plinth/modules/pagekite/__init__.py:74 msgid "PageKite Domain" msgstr "" -#: plinth/modules/pagekite/forms.py:66 +#: plinth/modules/pagekite/forms.py:51 msgid "Server domain" msgstr "" -#: plinth/modules/pagekite/forms.py:68 +#: plinth/modules/pagekite/forms.py:53 msgid "" "Select your pagekite server. Set \"pagekite.net\" to use the default " "pagekite.net server." msgstr "" -#: plinth/modules/pagekite/forms.py:71 plinth/modules/shadowsocks/forms.py:55 +#: plinth/modules/pagekite/forms.py:56 plinth/modules/shadowsocks/forms.py:40 msgid "Server port" msgstr "" -#: plinth/modules/pagekite/forms.py:72 +#: plinth/modules/pagekite/forms.py:57 msgid "Port of your pagekite server (default: 80)" msgstr "" -#: plinth/modules/pagekite/forms.py:74 +#: plinth/modules/pagekite/forms.py:59 msgid "Kite name" msgstr "" -#: plinth/modules/pagekite/forms.py:75 +#: plinth/modules/pagekite/forms.py:60 msgid "Example: mybox.pagekite.me" msgstr "" -#: plinth/modules/pagekite/forms.py:77 +#: plinth/modules/pagekite/forms.py:62 msgid "Invalid kite name" msgstr "" -#: plinth/modules/pagekite/forms.py:81 +#: plinth/modules/pagekite/forms.py:66 msgid "Kite secret" msgstr "" -#: plinth/modules/pagekite/forms.py:82 +#: plinth/modules/pagekite/forms.py:67 msgid "" "A secret associated with the kite or the default secret for your account if " "no secret is set on the kite." msgstr "" -#: plinth/modules/pagekite/forms.py:98 +#: plinth/modules/pagekite/forms.py:83 msgid "Kite details set" msgstr "" -#: plinth/modules/pagekite/forms.py:105 +#: plinth/modules/pagekite/forms.py:90 msgid "Pagekite server set" msgstr "" -#: plinth/modules/pagekite/forms.py:129 +#: plinth/modules/pagekite/forms.py:114 msgid "PageKite enabled" msgstr "" -#: plinth/modules/pagekite/forms.py:132 +#: plinth/modules/pagekite/forms.py:117 msgid "PageKite disabled" msgstr "" -#: plinth/modules/pagekite/forms.py:148 +#: plinth/modules/pagekite/forms.py:133 msgid "protocol" msgstr "" -#: plinth/modules/pagekite/forms.py:151 +#: plinth/modules/pagekite/forms.py:136 msgid "external (frontend) port" msgstr "" -#: plinth/modules/pagekite/forms.py:154 +#: plinth/modules/pagekite/forms.py:139 msgid "internal (freedombox) port" msgstr "" -#: plinth/modules/pagekite/forms.py:155 +#: plinth/modules/pagekite/forms.py:140 msgid "Enable Subdomains" msgstr "" -#: plinth/modules/pagekite/forms.py:189 +#: plinth/modules/pagekite/forms.py:174 msgid "Deleted custom service" msgstr "" -#: plinth/modules/pagekite/forms.py:222 +#: plinth/modules/pagekite/forms.py:207 msgid "" "This service is available as a standard service. Please use the \"Standard " "Services\" page to enable it." msgstr "" -#: plinth/modules/pagekite/forms.py:231 +#: plinth/modules/pagekite/forms.py:216 msgid "Added custom service" msgstr "" -#: plinth/modules/pagekite/forms.py:234 +#: plinth/modules/pagekite/forms.py:219 msgid "This service already exists" msgstr "" -#: plinth/modules/pagekite/templates/pagekite_configure.html:47 +#: plinth/modules/pagekite/templates/pagekite_configure.html:32 msgid "Custom Services" msgstr "" -#: plinth/modules/pagekite/templates/pagekite_configure.html:50 -#: plinth/modules/pagekite/templates/pagekite_configure.html:52 +#: plinth/modules/pagekite/templates/pagekite_configure.html:35 +#: plinth/modules/pagekite/templates/pagekite_configure.html:37 msgid "Add Custom Service" msgstr "" -#: plinth/modules/pagekite/templates/pagekite_configure.html:57 +#: plinth/modules/pagekite/templates/pagekite_configure.html:42 msgid "Existing custom services" msgstr "" -#: plinth/modules/pagekite/templates/pagekite_configure.html:71 +#: plinth/modules/pagekite/templates/pagekite_configure.html:56 #, python-format msgid "connected to %(backend_host)s:%(backend_port)s" msgstr "" -#: plinth/modules/pagekite/templates/pagekite_configure.html:83 +#: plinth/modules/pagekite/templates/pagekite_configure.html:68 msgid "Delete this service" msgstr "" -#: plinth/modules/pagekite/templates/pagekite_custom_services.html:30 +#: plinth/modules/pagekite/templates/pagekite_custom_services.html:15 msgid "Add custom PageKite service" msgstr "" -#: plinth/modules/pagekite/templates/pagekite_custom_services.html:32 +#: plinth/modules/pagekite/templates/pagekite_custom_services.html:17 msgid "" "Warning:imaps://imap.gmail.com. "
@@ -4071,17 +4163,22 @@ msgid ""
"a>)."
msgstr ""
-#: plinth/modules/samba/__init__.py:46
-msgid "Samba"
+#: plinth/modules/roundcube/__init__.py:54
+#: plinth/modules/roundcube/manifest.py:9
+msgid "Roundcube"
msgstr ""
-#: plinth/modules/samba/__init__.py:53
+#: plinth/modules/roundcube/__init__.py:55
+msgid "Email Client"
+msgstr ""
+
+#: plinth/modules/samba/__init__.py:32
msgid ""
"Samba allows to share files and folders between FreedomBox and other "
"computers in your local network."
msgstr ""
-#: plinth/modules/samba/__init__.py:56
+#: plinth/modules/samba/__init__.py:35
#, python-brace-format
msgid ""
"After installation, you can choose which disks to use for sharing. Enabled "
@@ -4090,51 +4187,55 @@ msgid ""
"There are three types of shares you can choose from: "
msgstr ""
-#: plinth/modules/samba/__init__.py:61
+#: plinth/modules/samba/__init__.py:40
msgid "Open share - accessible to everyone in your local network."
msgstr ""
-#: plinth/modules/samba/__init__.py:62
+#: plinth/modules/samba/__init__.py:41
msgid ""
"Group share - accessible only to FreedomBox users who are in the freedombox-"
"share group."
msgstr ""
-#: plinth/modules/samba/__init__.py:64
+#: plinth/modules/samba/__init__.py:43
msgid ""
"Home share - every user in the freedombox-share group can have their own "
"private space."
msgstr ""
-#: plinth/modules/samba/__init__.py:68
+#: plinth/modules/samba/__init__.py:47
msgid "Access to the private shares"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:39
-#: plinth/modules/samba/templates/samba.html:50
+#: plinth/modules/samba/__init__.py:61
+msgid "Samba"
+msgstr ""
+
+#: plinth/modules/samba/templates/samba.html:24
+#: plinth/modules/samba/templates/samba.html:35
msgid "Shares"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:41
+#: plinth/modules/samba/templates/samba.html:26
msgid ""
"Note: Only specially created directories will be shared on selected disks, "
"not the whole disk."
msgstr ""
-#: plinth/modules/samba/templates/samba.html:49
+#: plinth/modules/samba/templates/samba.html:34
msgid "Disk Name"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:51
-#: plinth/modules/storage/templates/storage.html:44
+#: plinth/modules/samba/templates/samba.html:36
+#: plinth/modules/storage/templates/storage.html:29
msgid "Used"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:72
+#: plinth/modules/samba/templates/samba.html:57
msgid "VFAT partitions are not supported"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:103
+#: plinth/modules/samba/templates/samba.html:88
#, python-format
msgid ""
"You can find additional information about disks on the users module page."
msgstr ""
-#: plinth/modules/samba/templates/samba.html:109
+#: plinth/modules/samba/templates/samba.html:94
msgid "Users who can currently access group and home shares"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:113
+#: plinth/modules/samba/templates/samba.html:98
msgid ""
"Users needing to re-enter their password on the password change page to "
"access group and home shares"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:118
+#: plinth/modules/samba/templates/samba.html:103
msgid "Unavailable Shares"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:120
+#: plinth/modules/samba/templates/samba.html:105
msgid ""
"Shares that are configured but the disk is not available. If the disk is "
"plugged back in, sharing will be automatically enabled."
msgstr ""
-#: plinth/modules/samba/templates/samba.html:128
+#: plinth/modules/samba/templates/samba.html:113
msgid "Share name"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:129
+#: plinth/modules/samba/templates/samba.html:114
msgid "Action"
msgstr ""
-#: plinth/modules/samba/views.py:61 plinth/modules/storage/forms.py:164
+#: plinth/modules/samba/views.py:43 plinth/modules/storage/forms.py:149
msgid "Open Share"
msgstr ""
-#: plinth/modules/samba/views.py:62 plinth/modules/storage/forms.py:162
+#: plinth/modules/samba/views.py:44 plinth/modules/storage/forms.py:147
msgid "Group Share"
msgstr ""
-#: plinth/modules/samba/views.py:63
+#: plinth/modules/samba/views.py:45
msgid "Home Share"
msgstr ""
-#: plinth/modules/samba/views.py:96
+#: plinth/modules/samba/views.py:78
msgid "Share enabled."
msgstr ""
-#: plinth/modules/samba/views.py:101
+#: plinth/modules/samba/views.py:83
#, python-brace-format
msgid "Error enabling share: {error_message}"
msgstr ""
-#: plinth/modules/samba/views.py:106
+#: plinth/modules/samba/views.py:88
msgid "Share disabled."
msgstr ""
-#: plinth/modules/samba/views.py:111
+#: plinth/modules/samba/views.py:93
#, python-brace-format
msgid "Error disabling share: {error_message}"
msgstr ""
-#: plinth/modules/searx/__init__.py:41 plinth/modules/searx/manifest.py:24
-msgid "Searx"
-msgstr ""
-
-#: plinth/modules/searx/__init__.py:45
-msgid "Web Search"
-msgstr ""
-
-#: plinth/modules/searx/__init__.py:48
+#: plinth/modules/searx/__init__.py:25
msgid ""
"Searx is a privacy-respecting Internet metasearch engine. It aggregrates and "
"displays results from multiple search engines."
msgstr ""
-#: plinth/modules/searx/__init__.py:50
+#: plinth/modules/searx/__init__.py:27
msgid ""
"Searx can be used to avoid tracking and profiling by search engines. It "
"stores no cookies by default."
msgstr ""
-#: plinth/modules/searx/__init__.py:54
+#: plinth/modules/searx/__init__.py:31
msgid "Search the web"
msgstr ""
-#: plinth/modules/searx/forms.py:30
+#: plinth/modules/searx/__init__.py:47 plinth/modules/searx/manifest.py:9
+msgid "Searx"
+msgstr ""
+
+#: plinth/modules/searx/__init__.py:48
+msgid "Web Search"
+msgstr ""
+
+#: plinth/modules/searx/forms.py:15
msgid "Safe Search"
msgstr ""
-#: plinth/modules/searx/forms.py:31
+#: plinth/modules/searx/forms.py:16
msgid "Select the default family filter to apply to your search results."
msgstr ""
-#: plinth/modules/searx/forms.py:32
+#: plinth/modules/searx/forms.py:17
msgid "None"
msgstr ""
-#: plinth/modules/searx/forms.py:32
+#: plinth/modules/searx/forms.py:17
msgid "Moderate"
msgstr ""
-#: plinth/modules/searx/forms.py:32
+#: plinth/modules/searx/forms.py:17
msgid "Strict"
msgstr ""
-#: plinth/modules/searx/forms.py:35
+#: plinth/modules/searx/forms.py:20
msgid "Allow Public Access"
msgstr ""
-#: plinth/modules/searx/forms.py:36
+#: plinth/modules/searx/forms.py:21
msgid "Allow this application to be used by anyone who can reach it."
msgstr ""
-#: plinth/modules/searx/views.py:59 plinth/modules/searx/views.py:70
-#: plinth/modules/tor/views.py:149 plinth/modules/tor/views.py:176
+#: plinth/modules/searx/views.py:39 plinth/modules/searx/views.py:50
+#: plinth/modules/tor/views.py:130 plinth/modules/tor/views.py:157
msgid "Configuration updated."
msgstr ""
-#: plinth/modules/security/forms.py:28
+#: plinth/modules/security/forms.py:13
msgid "Restrict console logins (recommended)"
msgstr ""
-#: plinth/modules/security/forms.py:29
+#: plinth/modules/security/forms.py:14
msgid ""
"When this option is enabled, only users in the \"admin\" group will be able "
"to log in to console or via SSH. Console users may be able to access some "
"services without further authorization."
msgstr ""
-#: plinth/modules/security/forms.py:34
+#: plinth/modules/security/forms.py:19
msgid "Fail2Ban (recommended)"
msgstr ""
-#: plinth/modules/security/forms.py:35
+#: plinth/modules/security/forms.py:20
msgid ""
"When this option is enabled, Fail2Ban will limit brute force break-in "
"attempts to the SSH server and other enabled password protected internet-"
"services."
msgstr ""
-#: plinth/modules/security/templates/security.html:26
-#: plinth/modules/security/templates/security.html:28
+#: plinth/modules/security/templates/security.html:11
+#: plinth/modules/security/templates/security.html:13
msgid "Show security report"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:25
-#: plinth/modules/security/views.py:87
+#: plinth/modules/security/templates/security_report.html:10
+#: plinth/modules/security/views.py:71
msgid "Security Report"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:27
+#: plinth/modules/security/templates/security_report.html:12
#, python-format
msgid ""
"The installed version of FreedomBox has %(count)s reported security "
"vulnerabilities."
msgstr ""
-#: plinth/modules/security/templates/security_report.html:33
+#: plinth/modules/security/templates/security_report.html:18
msgid ""
"The following table lists the current reported number, and historical count, "
"of security vulnerabilities for each installed app."
msgstr ""
-#: plinth/modules/security/templates/security_report.html:39
+#: plinth/modules/security/templates/security_report.html:24
msgid ""
"For apps that provide services, the \"Sandboxed\" column shows whether "
"sandboxing features are in use. Sandboxing mitigates the impact of a "
"potentially compromised app to the rest of the system."
msgstr ""
-#: plinth/modules/security/templates/security_report.html:46
+#: plinth/modules/security/templates/security_report.html:31
msgid ""
"\"Sandbox Coverage\" is a score of how effectively the service is isolated "
"from the rest of the system. It is only displayed while the service is "
"running."
msgstr ""
-#: plinth/modules/security/templates/security_report.html:55
+#: plinth/modules/security/templates/security_report.html:40
msgid "App Name"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:56
+#: plinth/modules/security/templates/security_report.html:41
msgid "Current Vulnerabilities"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:57
+#: plinth/modules/security/templates/security_report.html:42
msgid "Past Vulnerabilities"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:58
+#: plinth/modules/security/templates/security_report.html:43
msgid "Sandboxed"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:59
+#: plinth/modules/security/templates/security_report.html:44
msgid "Sandbox Coverage"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:70
+#: plinth/modules/security/templates/security_report.html:55
msgid "N/A"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:72
+#: plinth/modules/security/templates/security_report.html:57
msgid "Yes"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:74
+#: plinth/modules/security/templates/security_report.html:59
msgid "No"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:81
+#: plinth/modules/security/templates/security_report.html:66
msgid "Not running"
msgstr ""
-#: plinth/modules/security/views.py:69
+#: plinth/modules/security/views.py:53
#, python-brace-format
msgid "Error setting restricted access: {exception}"
msgstr ""
-#: plinth/modules/security/views.py:72
+#: plinth/modules/security/views.py:56
msgid "Updated security configuration"
msgstr ""
-#: plinth/modules/shaarli/__init__.py:34 plinth/modules/shaarli/manifest.py:23
-msgid "Shaarli"
-msgstr ""
-
-#: plinth/modules/shaarli/__init__.py:36
-msgid "Bookmarks"
-msgstr ""
-
-#: plinth/modules/shaarli/__init__.py:39
+#: plinth/modules/shaarli/__init__.py:20
msgid "Shaarli allows you to save and share bookmarks."
msgstr ""
-#: plinth/modules/shaarli/__init__.py:40
+#: plinth/modules/shaarli/__init__.py:21
msgid ""
"When enabled, Shaarli will be available from /shaarli path on the web server. Note that Shaarli "
@@ -4381,22 +4474,22 @@ msgid ""
"initial visit."
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:35
-msgid "Shadowsocks"
+#: plinth/modules/shaarli/__init__.py:39 plinth/modules/shaarli/manifest.py:8
+msgid "Shaarli"
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:39
-msgid "Socks5 Proxy"
+#: plinth/modules/shaarli/__init__.py:40
+msgid "Bookmarks"
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:46
+#: plinth/modules/shadowsocks/__init__.py:25
msgid ""
"Shadowsocks is a lightweight and secure SOCKS5 proxy, designed to protect "
"your Internet traffic. It can be used to bypass Internet filtering and "
"censorship."
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:50
+#: plinth/modules/shadowsocks/__init__.py:29
#, python-brace-format
msgid ""
"Your {box_name} can run a Shadowsocks client, that can connect to a "
@@ -4405,149 +4498,153 @@ msgid ""
"the Shadowsocks server."
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:55
+#: plinth/modules/shadowsocks/__init__.py:34
msgid ""
"To use Shadowsocks after setup, set the SOCKS5 proxy URL in your device, "
"browser or application to http://freedombox_address:1080/"
msgstr ""
-#: plinth/modules/shadowsocks/forms.py:28
-#: plinth/modules/shadowsocks/forms.py:29
+#: plinth/modules/shadowsocks/__init__.py:50
+msgid "Shadowsocks"
+msgstr ""
+
+#: plinth/modules/shadowsocks/__init__.py:52
+msgid "Socks5 Proxy"
+msgstr ""
+
+#: plinth/modules/shadowsocks/forms.py:13
+#: plinth/modules/shadowsocks/forms.py:14
msgid "Recommended"
msgstr ""
-#: plinth/modules/shadowsocks/forms.py:52
+#: plinth/modules/shadowsocks/forms.py:37
msgid "Server"
msgstr ""
-#: plinth/modules/shadowsocks/forms.py:53
+#: plinth/modules/shadowsocks/forms.py:38
msgid "Server hostname or IP address"
msgstr ""
-#: plinth/modules/shadowsocks/forms.py:57
+#: plinth/modules/shadowsocks/forms.py:42
msgid "Server port number"
msgstr ""
-#: plinth/modules/shadowsocks/forms.py:60
+#: plinth/modules/shadowsocks/forms.py:45
msgid "Password used to encrypt data. Must match server password."
msgstr ""
-#: plinth/modules/shadowsocks/forms.py:65
+#: plinth/modules/shadowsocks/forms.py:50
msgid "Encryption method. Must match setting on server."
msgstr ""
-#: plinth/modules/sharing/__init__.py:34
-msgid "Sharing"
-msgstr ""
-
-#: plinth/modules/sharing/__init__.py:38
+#: plinth/modules/sharing/__init__.py:21
#, python-brace-format
msgid ""
"Sharing allows you to share files and folders on your {box_name} over the "
"web with chosen groups of users."
msgstr ""
-#: plinth/modules/sharing/forms.py:33
+#: plinth/modules/sharing/__init__.py:38
+msgid "Sharing"
+msgstr ""
+
+#: plinth/modules/sharing/forms.py:18
msgid "Name of the share"
msgstr ""
-#: plinth/modules/sharing/forms.py:35
+#: plinth/modules/sharing/forms.py:20
msgid ""
"A lowercase alpha-numeric string that uniquely identifies a share. Example: "
"media."
msgstr ""
-#: plinth/modules/sharing/forms.py:39
+#: plinth/modules/sharing/forms.py:24
msgid "Path to share"
msgstr ""
-#: plinth/modules/sharing/forms.py:40
+#: plinth/modules/sharing/forms.py:25
msgid "Disk path to a folder on this server that you intend to share."
msgstr ""
-#: plinth/modules/sharing/forms.py:43
+#: plinth/modules/sharing/forms.py:28
msgid "Public share"
msgstr ""
-#: plinth/modules/sharing/forms.py:44
+#: plinth/modules/sharing/forms.py:29
msgid "Make files in this folder available to anyone with the link."
msgstr ""
-#: plinth/modules/sharing/forms.py:48
+#: plinth/modules/sharing/forms.py:33
msgid "User groups that can read the files in the share"
msgstr ""
-#: plinth/modules/sharing/forms.py:50
+#: plinth/modules/sharing/forms.py:35
msgid ""
"Users of the selected user groups will be able to read the files in the "
"share."
msgstr ""
-#: plinth/modules/sharing/forms.py:67
+#: plinth/modules/sharing/forms.py:52
msgid "A share with this name already exists."
msgstr ""
-#: plinth/modules/sharing/forms.py:78
+#: plinth/modules/sharing/forms.py:63
msgid "Shares should be either public or shared with at least one group"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:39
-#: plinth/modules/sharing/templates/sharing.html:42
+#: plinth/modules/sharing/templates/sharing.html:24
+#: plinth/modules/sharing/templates/sharing.html:27
msgid "Add share"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:47
+#: plinth/modules/sharing/templates/sharing.html:32
msgid "No shares currently configured."
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:53
+#: plinth/modules/sharing/templates/sharing.html:38
msgid "Disk Path"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:54
+#: plinth/modules/sharing/templates/sharing.html:39
msgid "Shared Over"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:55
+#: plinth/modules/sharing/templates/sharing.html:40
msgid "With Groups"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:73
+#: plinth/modules/sharing/templates/sharing.html:58
msgid "public access"
msgstr ""
-#: plinth/modules/sharing/views.py:55
+#: plinth/modules/sharing/views.py:39
msgid "Share added."
msgstr ""
-#: plinth/modules/sharing/views.py:60
+#: plinth/modules/sharing/views.py:44
msgid "Add Share"
msgstr ""
-#: plinth/modules/sharing/views.py:75
+#: plinth/modules/sharing/views.py:59
msgid "Share edited."
msgstr ""
-#: plinth/modules/sharing/views.py:80
+#: plinth/modules/sharing/views.py:64
msgid "Edit Share"
msgstr ""
-#: plinth/modules/sharing/views.py:111
+#: plinth/modules/sharing/views.py:95
msgid "Share deleted."
msgstr ""
-#: plinth/modules/snapshot/__init__.py:37
-msgid "Storage Snapshots"
-msgstr ""
-
-#: plinth/modules/snapshot/__init__.py:40
+#: plinth/modules/snapshot/__init__.py:23
msgid ""
"Snapshots allows creating and managing btrfs file system snapshots. These "
"can be used to roll back the system to a previously known good state in case "
"of unwanted changes to the system."
msgstr ""
-#: plinth/modules/snapshot/__init__.py:44
+#: plinth/modules/snapshot/__init__.py:27
#, no-python-format
msgid ""
"Snapshots are taken periodically (called timeline snapshots) and also before "
@@ -4555,192 +4652,192 @@ msgid ""
"cleaned up according to the settings below."
msgstr ""
-#: plinth/modules/snapshot/__init__.py:47
+#: plinth/modules/snapshot/__init__.py:30
msgid ""
"Snapshots currently work on btrfs file systems only and on the root "
"partition only. Snapshots are not a replacement for backups since they can only be stored on the same partition. "
msgstr ""
-#: plinth/modules/snapshot/forms.py:27
+#: plinth/modules/snapshot/__init__.py:52
+msgid "Storage Snapshots"
+msgstr ""
+
+#: plinth/modules/snapshot/forms.py:12
msgid "Free Disk Space to Maintain"
msgstr ""
-#: plinth/modules/snapshot/forms.py:28
+#: plinth/modules/snapshot/forms.py:13
msgid ""
"Maintain this percentage of free space on the disk. If free space falls "
"below this value, older snapshots are removed until this much free space is "
"regained. The default value is 30%."
msgstr ""
-#: plinth/modules/snapshot/forms.py:35
+#: plinth/modules/snapshot/forms.py:20
msgid "Timeline Snapshots"
msgstr ""
-#: plinth/modules/snapshot/forms.py:36
+#: plinth/modules/snapshot/forms.py:21
msgid ""
"Enable or disable timeline snapshots (hourly, daily, monthly and yearly)."
msgstr ""
-#: plinth/modules/snapshot/forms.py:41
+#: plinth/modules/snapshot/forms.py:26
msgid "Software Installation Snapshots"
msgstr ""
-#: plinth/modules/snapshot/forms.py:42
+#: plinth/modules/snapshot/forms.py:27
msgid "Enable or disable snapshots before and after software installation"
msgstr ""
-#: plinth/modules/snapshot/forms.py:47
+#: plinth/modules/snapshot/forms.py:32
msgid "Hourly Snapshots Limit"
msgstr ""
-#: plinth/modules/snapshot/forms.py:48
+#: plinth/modules/snapshot/forms.py:33
msgid "Keep a maximum of this many hourly snapshots."
msgstr ""
-#: plinth/modules/snapshot/forms.py:51
+#: plinth/modules/snapshot/forms.py:36
msgid "Daily Snapshots Limit"
msgstr ""
-#: plinth/modules/snapshot/forms.py:52
+#: plinth/modules/snapshot/forms.py:37
msgid "Keep a maximum of this many daily snapshots."
msgstr ""
-#: plinth/modules/snapshot/forms.py:55
+#: plinth/modules/snapshot/forms.py:40
msgid "Weekly Snapshots Limit"
msgstr ""
-#: plinth/modules/snapshot/forms.py:56
+#: plinth/modules/snapshot/forms.py:41
msgid "Keep a maximum of this many weekly snapshots."
msgstr ""
-#: plinth/modules/snapshot/forms.py:59
+#: plinth/modules/snapshot/forms.py:44
msgid "Monthly Snapshots Limit"
msgstr ""
-#: plinth/modules/snapshot/forms.py:60
+#: plinth/modules/snapshot/forms.py:45
msgid "Keep a maximum of this many monthly snapshots."
msgstr ""
-#: plinth/modules/snapshot/forms.py:63
+#: plinth/modules/snapshot/forms.py:48
msgid "Yearly Snapshots Limit"
msgstr ""
-#: plinth/modules/snapshot/forms.py:64
+#: plinth/modules/snapshot/forms.py:49
msgid ""
"Keep a maximum of this many yearly snapshots. The default value is 0 "
"(disabled)."
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:27
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:12
msgid "Delete the following snapshots permanently?"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:31
-#: plinth/modules/snapshot/templates/snapshot_manage.html:43
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:39
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:16
+#: plinth/modules/snapshot/templates/snapshot_manage.html:28
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:24
msgid "Number"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:32
-#: plinth/modules/snapshot/templates/snapshot_manage.html:44
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:40
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:17
+#: plinth/modules/snapshot/templates/snapshot_manage.html:29
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:25
msgid "Date"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:52
-#: plinth/modules/snapshot/templates/snapshot_manage.html:37
-#: plinth/modules/snapshot/views.py:196
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:37
+#: plinth/modules/snapshot/templates/snapshot_manage.html:22
+#: plinth/modules/snapshot/views.py:175
msgid "Delete Snapshots"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_manage.html:33
+#: plinth/modules/snapshot/templates/snapshot_manage.html:18
msgid "Create Snapshot"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_manage.html:46
+#: plinth/modules/snapshot/templates/snapshot_manage.html:31
msgid "Rollback"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_manage.html:57
+#: plinth/modules/snapshot/templates/snapshot_manage.html:42
msgid "active"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_manage.html:66
+#: plinth/modules/snapshot/templates/snapshot_manage.html:51
#, python-format
msgid "Rollback to snapshot #%(number)s"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_not_supported.html:26
+#: plinth/modules/snapshot/templates/snapshot_not_supported.html:11
#, python-format
msgid ""
"Your have a filesystem of type %(fs_type)s. Snapshots are "
"currently only available on %(types_supported)s filesystems."
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:27
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:12
msgid "Roll back the system to this snapshot?"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:30
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:15
msgid ""
"A new snapshot with the current state of the file system will be "
"automatically created. You will be able to undo a rollback by reverting to "
"the newly created snapshot."
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:57
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:42
#, python-format
msgid "Rollback to Snapshot #%(number)s"
msgstr ""
-#: plinth/modules/snapshot/views.py:45
+#: plinth/modules/snapshot/views.py:30
msgid "Manage Snapshots"
msgstr ""
-#: plinth/modules/snapshot/views.py:98
+#: plinth/modules/snapshot/views.py:79
msgid "Created snapshot."
msgstr ""
-#: plinth/modules/snapshot/views.py:156
+#: plinth/modules/snapshot/views.py:135
msgid "Storage snapshots configuration updated"
msgstr ""
-#: plinth/modules/snapshot/views.py:160 plinth/modules/tor/views.py:79
+#: plinth/modules/snapshot/views.py:139 plinth/modules/tor/views.py:60
#, python-brace-format
msgid "Action error: {0} [{1}] [{2}]"
msgstr ""
-#: plinth/modules/snapshot/views.py:175
+#: plinth/modules/snapshot/views.py:154
msgid "Deleted all snapshots"
msgstr ""
-#: plinth/modules/snapshot/views.py:179
+#: plinth/modules/snapshot/views.py:158
msgid "Deleted selected snapshots"
msgstr ""
-#: plinth/modules/snapshot/views.py:184
+#: plinth/modules/snapshot/views.py:163
msgid "Snapshot is currently in use. Please try again later."
msgstr ""
-#: plinth/modules/snapshot/views.py:207
+#: plinth/modules/snapshot/views.py:186
#, python-brace-format
msgid "Rolled back to snapshot #{number}."
msgstr ""
-#: plinth/modules/snapshot/views.py:210
+#: plinth/modules/snapshot/views.py:189
msgid "The system must be restarted to complete the rollback."
msgstr ""
-#: plinth/modules/snapshot/views.py:222
+#: plinth/modules/snapshot/views.py:201
msgid "Rollback to Snapshot"
msgstr ""
-#: plinth/modules/ssh/__init__.py:43
-msgid "Secure Shell (SSH) Server"
-msgstr ""
-
-#: plinth/modules/ssh/__init__.py:46
+#: plinth/modules/ssh/__init__.py:29
msgid ""
"A Secure Shell server uses the secure shell protocol to accept connections "
"from remote computers. An authorized remote computer can perform "
@@ -4748,56 +4845,56 @@ msgid ""
"connections."
msgstr ""
-#: plinth/modules/ssh/forms.py:30
+#: plinth/modules/ssh/__init__.py:50
+msgid "Secure Shell (SSH) Server"
+msgstr ""
+
+#: plinth/modules/ssh/forms.py:15
msgid "Disable password authentication"
msgstr ""
-#: plinth/modules/ssh/forms.py:31
+#: plinth/modules/ssh/forms.py:16
msgid ""
"Improves security by preventing password guessing. Ensure that you have "
"setup SSH keys in your administrator user account before enabling this "
"option."
msgstr ""
-#: plinth/modules/ssh/templates/ssh.html:26
+#: plinth/modules/ssh/templates/ssh.html:11
msgid "Server Fingerprints"
msgstr ""
-#: plinth/modules/ssh/templates/ssh.html:29
+#: plinth/modules/ssh/templates/ssh.html:14
msgid ""
"When connecting to the server, ensure that the fingerprint shown by the SSH "
"client matches one of these fingerprints."
msgstr ""
-#: plinth/modules/ssh/templates/ssh.html:38
+#: plinth/modules/ssh/templates/ssh.html:23
msgid "Algorithm"
msgstr ""
-#: plinth/modules/ssh/templates/ssh.html:39
+#: plinth/modules/ssh/templates/ssh.html:24
msgid "Fingerprint"
msgstr ""
-#: plinth/modules/ssh/views.py:66
+#: plinth/modules/ssh/views.py:48
msgid "SSH authentication with password disabled."
msgstr ""
-#: plinth/modules/ssh/views.py:69
+#: plinth/modules/ssh/views.py:51
msgid "SSH authentication with password enabled."
msgstr ""
-#: plinth/modules/sso/__init__.py:30
+#: plinth/modules/sso/__init__.py:33
msgid "Single Sign On"
msgstr ""
-#: plinth/modules/sso/templates/login.html:35
+#: plinth/modules/sso/templates/login.html:20
msgid "Login"
msgstr ""
-#: plinth/modules/storage/__init__.py:39 plinth/modules/storage/__init__.py:331
-msgid "Storage"
-msgstr ""
-
-#: plinth/modules/storage/__init__.py:47
+#: plinth/modules/storage/__init__.py:30
#, python-brace-format
msgid ""
"This module allows you to manage storage media attached to your {box_name}. "
@@ -4805,145 +4902,149 @@ msgid ""
"media, expand the root partition etc."
msgstr ""
-#: plinth/modules/storage/__init__.py:224
+#: plinth/modules/storage/__init__.py:52 plinth/modules/storage/__init__.py:318
+msgid "Storage"
+msgstr ""
+
+#: plinth/modules/storage/__init__.py:211
#, python-brace-format
msgid "{disk_size:.1f} bytes"
msgstr ""
-#: plinth/modules/storage/__init__.py:228
+#: plinth/modules/storage/__init__.py:215
#, python-brace-format
msgid "{disk_size:.1f} KiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:232
+#: plinth/modules/storage/__init__.py:219
#, python-brace-format
msgid "{disk_size:.1f} MiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:236
+#: plinth/modules/storage/__init__.py:223
#, python-brace-format
msgid "{disk_size:.1f} GiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:239
+#: plinth/modules/storage/__init__.py:226
#, python-brace-format
msgid "{disk_size:.1f} TiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:246
+#: plinth/modules/storage/__init__.py:233
msgid "The operation failed."
msgstr ""
-#: plinth/modules/storage/__init__.py:248
+#: plinth/modules/storage/__init__.py:235
msgid "The operation was cancelled."
msgstr ""
-#: plinth/modules/storage/__init__.py:250
+#: plinth/modules/storage/__init__.py:237
msgid "The device is already unmounting."
msgstr ""
-#: plinth/modules/storage/__init__.py:252
+#: plinth/modules/storage/__init__.py:239
msgid "The operation is not supported due to missing driver/tool support."
msgstr ""
-#: plinth/modules/storage/__init__.py:255
+#: plinth/modules/storage/__init__.py:242
msgid "The operation timed out."
msgstr ""
-#: plinth/modules/storage/__init__.py:257
+#: plinth/modules/storage/__init__.py:244
msgid "The operation would wake up a disk that is in a deep-sleep state."
msgstr ""
-#: plinth/modules/storage/__init__.py:260
+#: plinth/modules/storage/__init__.py:247
msgid "Attempting to unmount a device that is busy."
msgstr ""
-#: plinth/modules/storage/__init__.py:262
+#: plinth/modules/storage/__init__.py:249
msgid "The operation has already been cancelled."
msgstr ""
-#: plinth/modules/storage/__init__.py:268
+#: plinth/modules/storage/__init__.py:255
msgid "Not authorized to perform the requested operation."
msgstr ""
-#: plinth/modules/storage/__init__.py:270
+#: plinth/modules/storage/__init__.py:257
msgid "The device is already mounted."
msgstr ""
-#: plinth/modules/storage/__init__.py:272
+#: plinth/modules/storage/__init__.py:259
msgid "The device is not mounted."
msgstr ""
-#: plinth/modules/storage/__init__.py:275
+#: plinth/modules/storage/__init__.py:262
msgid "Not permitted to use the requested option."
msgstr ""
-#: plinth/modules/storage/__init__.py:278
+#: plinth/modules/storage/__init__.py:265
msgid "The device is mounted by another user."
msgstr ""
-#: plinth/modules/storage/__init__.py:326
+#: plinth/modules/storage/__init__.py:313
#, no-python-format, python-brace-format
msgid "Low space on system partition: {percent_used}% used, {free_space} free."
msgstr ""
-#: plinth/modules/storage/__init__.py:328
+#: plinth/modules/storage/__init__.py:315
msgid "Low disk space"
msgstr ""
-#: plinth/modules/storage/forms.py:79
+#: plinth/modules/storage/forms.py:64
msgid "Invalid directory name."
msgstr ""
-#: plinth/modules/storage/forms.py:97
+#: plinth/modules/storage/forms.py:82
msgid "Directory does not exist."
msgstr ""
-#: plinth/modules/storage/forms.py:99
+#: plinth/modules/storage/forms.py:84
msgid "Path is not a directory."
msgstr ""
-#: plinth/modules/storage/forms.py:102
+#: plinth/modules/storage/forms.py:87
msgid "Directory is not readable by the user."
msgstr ""
-#: plinth/modules/storage/forms.py:105
+#: plinth/modules/storage/forms.py:90
msgid "Directory is not writable by the user."
msgstr ""
-#: plinth/modules/storage/forms.py:110
+#: plinth/modules/storage/forms.py:95
msgid "Directory"
msgstr ""
-#: plinth/modules/storage/forms.py:113
+#: plinth/modules/storage/forms.py:98
msgid "Subdirectory (optional)"
msgstr ""
-#: plinth/modules/storage/forms.py:160
+#: plinth/modules/storage/forms.py:145
msgid "Share"
msgstr ""
-#: plinth/modules/storage/forms.py:168
+#: plinth/modules/storage/forms.py:153
msgid "Other directory (specify below)"
msgstr ""
-#: plinth/modules/storage/templates/storage.html:35
+#: plinth/modules/storage/templates/storage.html:20
msgid "The following storage devices are in use:"
msgstr ""
-#: plinth/modules/storage/templates/storage.html:41
+#: plinth/modules/storage/templates/storage.html:26
msgid "Label"
msgstr ""
-#: plinth/modules/storage/templates/storage.html:42
+#: plinth/modules/storage/templates/storage.html:27
msgid "Mount Point"
msgstr ""
-#: plinth/modules/storage/templates/storage.html:90
+#: plinth/modules/storage/templates/storage.html:75
msgid "Partition Expansion"
msgstr ""
-#: plinth/modules/storage/templates/storage.html:92
+#: plinth/modules/storage/templates/storage.html:77
#, python-format
msgid ""
"There is %(expandable_root_size)s of unallocated space available after your "
@@ -4951,13 +5052,13 @@ msgid ""
"will provide you additional free space to store your files."
msgstr ""
-#: plinth/modules/storage/templates/storage.html:102
-#: plinth/modules/storage/templates/storage_expand.html:39
-#: plinth/modules/storage/views.py:76
+#: plinth/modules/storage/templates/storage.html:87
+#: plinth/modules/storage/templates/storage_expand.html:24
+#: plinth/modules/storage/views.py:58
msgid "Expand Root Partition"
msgstr ""
-#: plinth/modules/storage/templates/storage_expand.html:29
+#: plinth/modules/storage/templates/storage_expand.html:14
#, python-format
msgid ""
"Please backup your data before proceeding. After this operation, "
@@ -4965,39 +5066,30 @@ msgid ""
"root partition."
msgstr ""
-#: plinth/modules/storage/views.py:88
+#: plinth/modules/storage/views.py:70
#, python-brace-format
msgid "Error expanding partition: {exception}"
msgstr ""
-#: plinth/modules/storage/views.py:91
+#: plinth/modules/storage/views.py:73
msgid "Partition expanded successfully."
msgstr ""
-#: plinth/modules/storage/views.py:109
+#: plinth/modules/storage/views.py:91
#, python-brace-format
msgid "{drive_vendor} {drive_model} can be safely unplugged."
msgstr ""
-#: plinth/modules/storage/views.py:113
+#: plinth/modules/storage/views.py:95
msgid "Device can be safely unplugged."
msgstr ""
-#: plinth/modules/storage/views.py:123
+#: plinth/modules/storage/views.py:105
#, python-brace-format
msgid "Error ejecting device: {error_message}"
msgstr ""
-#: plinth/modules/syncthing/__init__.py:40
-#: plinth/modules/syncthing/manifest.py:28
-msgid "Syncthing"
-msgstr ""
-
-#: plinth/modules/syncthing/__init__.py:44
-msgid "File Synchronization"
-msgstr ""
-
-#: plinth/modules/syncthing/__init__.py:47
+#: plinth/modules/syncthing/__init__.py:26
msgid ""
"Syncthing is an application to synchronize files across multiple devices, e."
"g. your desktop computer and mobile phone. Creation, modification, or "
@@ -5005,7 +5097,7 @@ msgid ""
"other devices that also run Syncthing."
msgstr ""
-#: plinth/modules/syncthing/__init__.py:52
+#: plinth/modules/syncthing/__init__.py:31
#, python-brace-format
msgid ""
"Running Syncthing on {box_name} provides an extra synchronization point for "
@@ -5016,19 +5108,20 @@ msgid ""
"{box_name} is only available for users belonging to the \"admin\" group."
msgstr ""
-#: plinth/modules/syncthing/__init__.py:63
+#: plinth/modules/syncthing/__init__.py:40
msgid "Administer Syncthing application"
msgstr ""
-#: plinth/modules/tahoe/__init__.py:43
-msgid "Tahoe-LAFS"
+#: plinth/modules/syncthing/__init__.py:54
+#: plinth/modules/syncthing/manifest.py:13
+msgid "Syncthing"
msgstr ""
-#: plinth/modules/tahoe/__init__.py:47
-msgid "Distributed File Storage"
+#: plinth/modules/syncthing/__init__.py:55
+msgid "File Synchronization"
msgstr ""
-#: plinth/modules/tahoe/__init__.py:134
+#: plinth/modules/tahoe/__init__.py:30
msgid ""
"Tahoe-LAFS is a decentralized secure file storage system. It uses provider "
"independent security to store files over a distributed network of storage "
@@ -5036,7 +5129,7 @@ msgid ""
"remaining nodes."
msgstr ""
-#: plinth/modules/tahoe/__init__.py:139
+#: plinth/modules/tahoe/__init__.py:35
#, python-brace-format
msgid ""
"This {box_name} hosts a storage node and an introducer by default. "
@@ -5044,7 +5137,15 @@ msgid ""
"other storage nodes."
msgstr ""
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:33
+#: plinth/modules/tahoe/__init__.py:66
+msgid "Tahoe-LAFS"
+msgstr ""
+
+#: plinth/modules/tahoe/__init__.py:68
+msgid "Distributed File Storage"
+msgstr ""
+
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:17
#, python-format
msgid ""
"The Tahoe-LAFS server domain is set to %(domain_name)s. Changing the "
@@ -5053,37 +5154,33 @@ msgid ""
"%(domain_name)s:5678\">https://%(domain_name)s:5678."
msgstr ""
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:55
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:39
msgid "Local introducer"
msgstr ""
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:43
#: plinth/modules/tahoe/templates/tahoe-post-setup.html:59
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:75
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:92
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:76
msgid "Pet Name"
msgstr ""
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:72
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:56
msgid "Add new introducer"
msgstr ""
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:83
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:67
msgid "Add"
msgstr ""
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:88
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:72
msgid "Connected introducers"
msgstr ""
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:105
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:89
msgid "Remove"
msgstr ""
-#: plinth/modules/tor/__init__.py:47
-msgid "Tor"
-msgstr ""
-
-#: plinth/modules/tor/__init__.py:52
+#: plinth/modules/tor/__init__.py:33
msgid ""
"Tor is an anonymous communication system. You can learn more about it from "
"the Tor Project website. For "
@@ -5092,76 +5189,80 @@ msgid ""
"\">Tor Browser."
msgstr ""
-#: plinth/modules/tor/__init__.py:83
+#: plinth/modules/tor/__init__.py:55
+msgid "Tor"
+msgstr ""
+
+#: plinth/modules/tor/__init__.py:66
msgid "Tor Onion Service"
msgstr ""
-#: plinth/modules/tor/__init__.py:87
+#: plinth/modules/tor/__init__.py:70
msgid "Tor Socks Proxy"
msgstr ""
-#: plinth/modules/tor/__init__.py:91
+#: plinth/modules/tor/__init__.py:74
msgid "Tor Bridge Relay"
msgstr ""
-#: plinth/modules/tor/__init__.py:112
+#: plinth/modules/tor/__init__.py:95
msgid "Tor relay port available"
msgstr ""
-#: plinth/modules/tor/__init__.py:122
+#: plinth/modules/tor/__init__.py:105
msgid "Obfs3 transport registered"
msgstr ""
-#: plinth/modules/tor/__init__.py:132
+#: plinth/modules/tor/__init__.py:115
msgid "Obfs4 transport registered"
msgstr ""
-#: plinth/modules/tor/__init__.py:225
+#: plinth/modules/tor/__init__.py:208
#, python-brace-format
msgid "Access URL {url} on tcp{kind} via Tor"
msgstr ""
-#: plinth/modules/tor/__init__.py:236
+#: plinth/modules/tor/__init__.py:219
#, python-brace-format
msgid "Confirm Tor usage at {url} on tcp{kind}"
msgstr ""
-#: plinth/modules/tor/forms.py:46
+#: plinth/modules/tor/forms.py:31
msgid ""
"Enter a valid bridge with this format: [transport] IP:ORPort [fingerprint]"
msgstr ""
-#: plinth/modules/tor/forms.py:88
+#: plinth/modules/tor/forms.py:73
msgid "Enable Tor"
msgstr ""
-#: plinth/modules/tor/forms.py:90
+#: plinth/modules/tor/forms.py:75
msgid "Use upstream bridges to connect to Tor network"
msgstr ""
-#: plinth/modules/tor/forms.py:92
+#: plinth/modules/tor/forms.py:77
msgid ""
"When enabled, the bridges configured below will be used to connect to the "
"Tor network. Use this option if your Internet Service Provider (ISP) blocks "
"or censors connections to the Tor Network. This will disable relay modes."
msgstr ""
-#: plinth/modules/tor/forms.py:97
+#: plinth/modules/tor/forms.py:82
msgid "Upstream bridges"
msgstr ""
-#: plinth/modules/tor/forms.py:99
+#: plinth/modules/tor/forms.py:84
msgid ""
"You can get some bridges from https://bridges.torproject.org/ and copy/paste the bridge information "
"here. Currently supported transports are none, obfs3, obfs4 and scamblesuit."
msgstr ""
-#: plinth/modules/tor/forms.py:105
+#: plinth/modules/tor/forms.py:90
msgid "Enable Tor relay"
msgstr ""
-#: plinth/modules/tor/forms.py:106
+#: plinth/modules/tor/forms.py:91
#, python-brace-format
msgid ""
"When enabled, your {box_name} will run a Tor relay and donate bandwidth to "
@@ -5169,22 +5270,22 @@ msgid ""
"download bandwidth."
msgstr ""
-#: plinth/modules/tor/forms.py:111
+#: plinth/modules/tor/forms.py:96
msgid "Enable Tor bridge relay"
msgstr ""
-#: plinth/modules/tor/forms.py:113
+#: plinth/modules/tor/forms.py:98
msgid ""
"When enabled, relay information is published in the Tor bridge database "
"instead of public Tor relay database making it harder to censor this node. "
"This helps others circumvent censorship."
msgstr ""
-#: plinth/modules/tor/forms.py:118
+#: plinth/modules/tor/forms.py:103
msgid "Enable Tor Hidden Service"
msgstr ""
-#: plinth/modules/tor/forms.py:120
+#: plinth/modules/tor/forms.py:105
#, python-brace-format
msgid ""
"A hidden service will allow {box_name} to provide selected services (such as "
@@ -5192,208 +5293,204 @@ msgid ""
"anonymity yet."
msgstr ""
-#: plinth/modules/tor/forms.py:125
+#: plinth/modules/tor/forms.py:110
msgid "Download software packages over Tor"
msgstr ""
-#: plinth/modules/tor/forms.py:126
+#: plinth/modules/tor/forms.py:111
msgid ""
"When enabled, software will be downloaded over the Tor network for "
"installations and upgrades. This adds a degree of privacy and security "
"during software downloads."
msgstr ""
-#: plinth/modules/tor/forms.py:141
+#: plinth/modules/tor/forms.py:126
msgid "Specify at least one upstream bridge to use upstream bridges."
msgstr ""
-#: plinth/modules/tor/manifest.py:29
+#: plinth/modules/tor/manifest.py:14
msgid "Tor Browser"
msgstr ""
-#: plinth/modules/tor/manifest.py:45
+#: plinth/modules/tor/manifest.py:30
msgid "Orbot: Proxy with Tor"
msgstr ""
-#: plinth/modules/tor/templates/tor.html:41
+#: plinth/modules/tor/templates/tor.html:26
msgid "Tor configuration is being updated"
msgstr ""
-#: plinth/modules/tor/templates/tor.html:50
+#: plinth/modules/tor/templates/tor.html:35
msgid "Onion Service"
msgstr ""
-#: plinth/modules/tor/templates/tor.html:52
+#: plinth/modules/tor/templates/tor.html:37
msgid "Ports"
msgstr ""
-#: plinth/modules/tor/templates/tor.html:82
+#: plinth/modules/tor/templates/tor.html:67
msgid "Relay"
msgstr ""
-#: plinth/modules/tor/templates/tor.html:84
+#: plinth/modules/tor/templates/tor.html:69
#, python-format
msgid ""
"If your %(box_name)s is behind a router or firewall, you should make sure "
"the following ports are open, and port-forwarded, if necessary:"
msgstr ""
-#: plinth/modules/tor/templates/tor.html:112
+#: plinth/modules/tor/templates/tor.html:97
msgid "SOCKS"
msgstr ""
-#: plinth/modules/tor/templates/tor.html:115
+#: plinth/modules/tor/templates/tor.html:100
#, python-format
msgid "A Tor SOCKS port is available on your %(box_name)s on TCP port 9050."
msgstr ""
-#: plinth/modules/transmission/__init__.py:41
-#: plinth/modules/transmission/manifest.py:24
-msgid "Transmission"
-msgstr ""
-
-#: plinth/modules/transmission/__init__.py:48
+#: plinth/modules/transmission/__init__.py:27
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/ttrss/__init__.py:43 plinth/modules/ttrss/manifest.py:34
-msgid "Tiny Tiny RSS"
+#: plinth/modules/transmission/__init__.py:48
+#: plinth/modules/transmission/manifest.py:9
+msgid "Transmission"
msgstr ""
-#: plinth/modules/ttrss/__init__.py:47
-msgid "News Feed Reader"
-msgstr ""
-
-#: plinth/modules/ttrss/__init__.py:50
+#: plinth/modules/ttrss/__init__.py:29
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:54
+#: plinth/modules/ttrss/__init__.py:33
#, python-brace-format
msgid ""
"When enabled, Tiny Tiny RSS can be accessed by any user with a {box_name} login."
msgstr ""
-#: plinth/modules/ttrss/__init__.py:58
+#: plinth/modules/ttrss/__init__.py:37
msgid ""
"When using a mobile or desktop application for Tiny Tiny RSS, use the URL /tt-rss-app for "
"connecting."
msgstr ""
-#: plinth/modules/ttrss/__init__.py:65
+#: plinth/modules/ttrss/__init__.py:42
msgid "Read and subscribe to news feeds"
msgstr ""
-#: plinth/modules/ttrss/manifest.py:25
+#: plinth/modules/ttrss/__init__.py:56 plinth/modules/ttrss/manifest.py:19
+msgid "Tiny Tiny RSS"
+msgstr ""
+
+#: plinth/modules/ttrss/__init__.py:57
+msgid "News Feed Reader"
+msgstr ""
+
+#: plinth/modules/ttrss/manifest.py:10
msgid "Tiny Tiny RSS (Fork)"
msgstr ""
-#: plinth/modules/upgrades/__init__.py:37 plinth/templates/setup.html:89
-msgid "Update"
-msgstr ""
-
-#: plinth/modules/upgrades/__init__.py:40
+#: plinth/modules/upgrades/__init__.py:23
msgid "Check for and apply the latest software and security updates."
msgstr ""
-#: plinth/modules/upgrades/__init__.py:84
+#: plinth/modules/upgrades/__init__.py:38 plinth/templates/setup.html:74
+msgid "Update"
+msgstr ""
+
+#: plinth/modules/upgrades/__init__.py:71
msgid "FreedomBox Updated"
msgstr ""
-#: plinth/modules/upgrades/forms.py:28
+#: plinth/modules/upgrades/forms.py:13
msgid "Enable auto-update"
msgstr ""
-#: plinth/modules/upgrades/forms.py:29
+#: plinth/modules/upgrades/forms.py:14
msgid "When enabled, FreedomBox automatically updates once a day."
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades-new-release.html:24
+#: plinth/modules/upgrades/templates/upgrades-new-release.html:9
#, python-format
msgid "%(box_name)s Updated"
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades-new-release.html:28
+#: plinth/modules/upgrades/templates/upgrades-new-release.html:13
#, python-format
msgid ""
"%(box_name)s has been updated to version %(version)s. See the release announcement."
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades-new-release.html:37
-#: plinth/templates/notifications.html:59
+#: plinth/modules/upgrades/templates/upgrades-new-release.html:22
+#: plinth/templates/notifications.html:44
msgid "Dismiss"
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades.html:45
+#: plinth/modules/upgrades/templates/upgrades.html:30
msgid "Update now"
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades.html:54
+#: plinth/modules/upgrades/templates/upgrades.html:39
msgid "Updating..."
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades.html:59
+#: plinth/modules/upgrades/templates/upgrades.html:44
msgid ""
"This may take a long time to complete. During an update, "
"you cannot install apps. Also, this web interface may be temporarily "
"unavailable and show an error. In that case, refresh the page to continue."
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades.html:73
+#: plinth/modules/upgrades/templates/upgrades.html:58
msgid "Toggle recent update logs"
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades_configure.html:26
-#: plinth/modules/upgrades/templates/upgrades_configure.html:27
-#: plinth/modules/upgrades/views.py:107
+#: plinth/modules/upgrades/templates/upgrades_configure.html:11
+#: plinth/modules/upgrades/templates/upgrades_configure.html:12
+#: plinth/modules/upgrades/views.py:89
msgid "Manual update"
msgstr ""
-#: plinth/modules/upgrades/views.py:66
+#: plinth/modules/upgrades/views.py:48
#, python-brace-format
msgid "Error when configuring unattended-upgrades: {error}"
msgstr ""
-#: plinth/modules/upgrades/views.py:70
+#: plinth/modules/upgrades/views.py:52
msgid "Automatic upgrades enabled"
msgstr ""
-#: plinth/modules/upgrades/views.py:73
+#: plinth/modules/upgrades/views.py:55
msgid "Automatic upgrades disabled"
msgstr ""
-#: plinth/modules/upgrades/views.py:75
+#: plinth/modules/upgrades/views.py:57
msgid "Settings unchanged"
msgstr ""
-#: plinth/modules/upgrades/views.py:101
+#: plinth/modules/upgrades/views.py:83
msgid "Upgrade process started."
msgstr ""
-#: plinth/modules/upgrades/views.py:104
+#: plinth/modules/upgrades/views.py:86
msgid "Starting upgrade failed."
msgstr ""
-#: plinth/modules/users/__init__.py:51
-msgid "Users and Groups"
-msgstr ""
-
-#: plinth/modules/users/__init__.py:54
+#: plinth/modules/users/__init__.py:37
msgid ""
"Create and managed user accounts. These accounts serve as centralized "
"authentication mechanism for most apps. Some apps further require a user "
"account to be part of a group to authorize the user to access the app."
msgstr ""
-#: plinth/modules/users/__init__.py:59
+#: plinth/modules/users/__init__.py:42
#, python-brace-format
msgid ""
"Any user may login to {box_name} web interface to see a list of apps "
@@ -5401,33 +5498,37 @@ msgid ""
"group may alter apps or system settings."
msgstr ""
-#: plinth/modules/users/__init__.py:128
+#: plinth/modules/users/__init__.py:64
+msgid "Users and Groups"
+msgstr ""
+
+#: plinth/modules/users/__init__.py:115
#, python-brace-format
msgid "Check LDAP entry \"{search_item}\""
msgstr ""
-#: plinth/modules/users/forms.py:43
+#: plinth/modules/users/forms.py:28
msgid "Access to all services and system settings"
msgstr ""
-#: plinth/modules/users/forms.py:59
+#: plinth/modules/users/forms.py:44
msgid "Username is taken or is reserved."
msgstr ""
-#: plinth/modules/users/forms.py:87
+#: plinth/modules/users/forms.py:72
msgid "Enter a valid username."
msgstr ""
-#: plinth/modules/users/forms.py:93
+#: plinth/modules/users/forms.py:78
msgid ""
"Required. 150 characters or fewer. English letters, digits and @/./-/_ only."
msgstr ""
-#: plinth/modules/users/forms.py:106 plinth/modules/users/forms.py:222
+#: plinth/modules/users/forms.py:91 plinth/modules/users/forms.py:207
msgid "Permissions"
msgstr ""
-#: plinth/modules/users/forms.py:109
+#: plinth/modules/users/forms.py:94
msgid ""
"Select which services should be available to the new user. The user will be "
"able to log in to services that support single sign-on through LDAP, if they "
@@ -5436,187 +5537,182 @@ msgid ""
"SSH and have administrative privileges (sudo)."
msgstr ""
-#: plinth/modules/users/forms.py:148 plinth/modules/users/forms.py:372
+#: plinth/modules/users/forms.py:133 plinth/modules/users/forms.py:357
msgid "Creating LDAP user failed."
msgstr ""
-#: plinth/modules/users/forms.py:159
+#: plinth/modules/users/forms.py:144
#, python-brace-format
msgid "Failed to add new user to {group} group."
msgstr ""
-#: plinth/modules/users/forms.py:173
+#: plinth/modules/users/forms.py:158
msgid "Authorized SSH Keys"
msgstr ""
-#: plinth/modules/users/forms.py:175
+#: plinth/modules/users/forms.py:160
msgid ""
"Setting an SSH public key will allow this user to securely log in to the "
"system without using a password. You may enter multiple keys, one on each "
"line. Blank lines and lines starting with # will be ignored."
msgstr ""
-#: plinth/modules/users/forms.py:259
+#: plinth/modules/users/forms.py:244
msgid "Renaming LDAP user failed."
msgstr ""
-#: plinth/modules/users/forms.py:271
+#: plinth/modules/users/forms.py:256
msgid "Failed to remove user from group."
msgstr ""
-#: plinth/modules/users/forms.py:282
+#: plinth/modules/users/forms.py:267
msgid "Failed to add user to group."
msgstr ""
-#: plinth/modules/users/forms.py:291
+#: plinth/modules/users/forms.py:276
msgid "Unable to set SSH keys."
msgstr ""
-#: plinth/modules/users/forms.py:306
+#: plinth/modules/users/forms.py:291
msgid "Failed to change user status."
msgstr ""
-#: plinth/modules/users/forms.py:314
+#: plinth/modules/users/forms.py:299
msgid "Cannot delete the only administrator in the system."
msgstr ""
-#: plinth/modules/users/forms.py:346
+#: plinth/modules/users/forms.py:331
msgid "Changing LDAP user password failed."
msgstr ""
-#: plinth/modules/users/forms.py:381
+#: plinth/modules/users/forms.py:366
msgid "Failed to add new user to admin group."
msgstr ""
-#: plinth/modules/users/forms.py:398
+#: plinth/modules/users/forms.py:383
msgid "Failed to restrict console access."
msgstr ""
-#: plinth/modules/users/forms.py:410
+#: plinth/modules/users/forms.py:395
msgid "User account created, you are now logged in"
msgstr ""
-#: plinth/modules/users/templates/users_change_password.html:26
+#: plinth/modules/users/templates/users_change_password.html:11
#, python-format
msgid "Change Password for %(username)s"
msgstr ""
-#: plinth/modules/users/templates/users_change_password.html:36
+#: plinth/modules/users/templates/users_change_password.html:21
msgid "Save Password"
msgstr ""
-#: plinth/modules/users/templates/users_create.html:32
-#: plinth/modules/users/templates/users_list.html:42
-#: plinth/modules/users/templates/users_list.html:44
-#: plinth/modules/users/views.py:57
+#: plinth/modules/users/templates/users_create.html:17
+#: plinth/modules/users/templates/users_list.html:27
+#: plinth/modules/users/templates/users_list.html:29
+#: plinth/modules/users/views.py:42
msgid "Create User"
msgstr ""
-#: plinth/modules/users/templates/users_delete.html:26
-#: plinth/modules/users/views.py:139
+#: plinth/modules/users/templates/users_delete.html:11
+#: plinth/modules/users/views.py:121
msgid "Delete User"
msgstr ""
-#: plinth/modules/users/templates/users_delete.html:29
+#: plinth/modules/users/templates/users_delete.html:14
#, python-format
msgid "Delete user %(username)s permanently?"
msgstr ""
-#: plinth/modules/users/templates/users_delete.html:38
+#: plinth/modules/users/templates/users_delete.html:23
#, python-format
msgid "Delete %(username)s"
msgstr ""
-#: plinth/modules/users/templates/users_firstboot.html:26
+#: plinth/modules/users/templates/users_firstboot.html:11
msgid "Administrator Account"
msgstr ""
-#: plinth/modules/users/templates/users_firstboot.html:29
+#: plinth/modules/users/templates/users_firstboot.html:14
msgid ""
"Choose a username and password to access this web interface. The password "
"can be changed later. This user will be granted administrative privileges. "
"Other users can be added later."
msgstr ""
-#: plinth/modules/users/templates/users_firstboot.html:42
+#: plinth/modules/users/templates/users_firstboot.html:27
msgid "Create Account"
msgstr ""
-#: plinth/modules/users/templates/users_list.html:38
-#: plinth/modules/users/views.py:74
+#: plinth/modules/users/templates/users_list.html:23
+#: plinth/modules/users/views.py:59
msgid "Users"
msgstr ""
-#: plinth/modules/users/templates/users_list.html:57
+#: plinth/modules/users/templates/users_list.html:42
#, python-format
msgid "Delete user %(username)s"
msgstr ""
-#: plinth/modules/users/templates/users_list.html:65
+#: plinth/modules/users/templates/users_list.html:50
#, python-format
msgid "Edit user %(username)s"
msgstr ""
-#: plinth/modules/users/templates/users_update.html:30
+#: plinth/modules/users/templates/users_update.html:15
#, python-format
msgid ""
"Use the change password form to "
"change the password."
msgstr ""
-#: plinth/modules/users/templates/users_update.html:42
-#: plinth/templates/language-selection.html:32
+#: plinth/modules/users/templates/users_update.html:27
+#: plinth/templates/language-selection.html:17
msgid "Save Changes"
msgstr ""
-#: plinth/modules/users/views.py:55
+#: plinth/modules/users/views.py:40
#, python-format
msgid "User %(username)s created."
msgstr ""
-#: plinth/modules/users/views.py:93
+#: plinth/modules/users/views.py:75
#, python-format
msgid "User %(username)s updated."
msgstr ""
-#: plinth/modules/users/views.py:94
+#: plinth/modules/users/views.py:76
msgid "Edit User"
msgstr ""
-#: plinth/modules/users/views.py:149
+#: plinth/modules/users/views.py:131
#, python-brace-format
msgid "User {user} deleted."
msgstr ""
-#: plinth/modules/users/views.py:156
+#: plinth/modules/users/views.py:138
msgid "Deleting LDAP user failed."
msgstr ""
-#: plinth/modules/users/views.py:165
+#: plinth/modules/users/views.py:147
msgid "Change Password"
msgstr ""
-#: plinth/modules/users/views.py:166
+#: plinth/modules/users/views.py:148
msgid "Password changed successfully."
msgstr ""
-#: plinth/modules/wireguard/__init__.py:38
-#: plinth/modules/wireguard/manifest.py:29
-msgid "WireGuard"
-msgstr ""
-
-#: plinth/modules/wireguard/__init__.py:43
+#: plinth/modules/wireguard/__init__.py:24
msgid "WireGuard is a fast, modern, secure VPN tunnel."
msgstr ""
-#: plinth/modules/wireguard/__init__.py:45
+#: plinth/modules/wireguard/__init__.py:26
#, python-brace-format
msgid ""
"It can be used to connect to a VPN provider which supports WireGuard, and to "
"route all outgoing traffic from {box_name} through the VPN."
msgstr ""
-#: plinth/modules/wireguard/__init__.py:49
+#: plinth/modules/wireguard/__init__.py:30
#, python-brace-format
msgid ""
"A second use case is to connect a mobile device to {box_name} while "
@@ -5624,59 +5720,64 @@ msgid ""
"securely relayed through {box_name}."
msgstr ""
-#: plinth/modules/wireguard/forms.py:47
+#: plinth/modules/wireguard/__init__.py:52
+#: plinth/modules/wireguard/manifest.py:14
+msgid "WireGuard"
+msgstr ""
+
+#: plinth/modules/wireguard/forms.py:32
msgid "Invalid key."
msgstr ""
-#: plinth/modules/wireguard/forms.py:76
-#: plinth/modules/wireguard/templates/wireguard.html:32
-#: plinth/modules/wireguard/templates/wireguard.html:89
-#: plinth/modules/wireguard/templates/wireguard_delete_server.html:38
+#: plinth/modules/wireguard/forms.py:61
+#: plinth/modules/wireguard/templates/wireguard.html:17
+#: plinth/modules/wireguard/templates/wireguard.html:74
+#: plinth/modules/wireguard/templates/wireguard_delete_server.html:23
msgid "Public Key"
msgstr ""
-#: plinth/modules/wireguard/forms.py:77
+#: plinth/modules/wireguard/forms.py:62
msgid ""
"Public key of the peer. Example: "
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs= ."
msgstr ""
-#: plinth/modules/wireguard/forms.py:85
+#: plinth/modules/wireguard/forms.py:70
msgid "Endpoint of the server"
msgstr ""
-#: plinth/modules/wireguard/forms.py:86
+#: plinth/modules/wireguard/forms.py:71
msgid ""
"Domain name and port in the form \"ip:port\". Example: demo.wireguard."
"com:12912 ."
msgstr ""
-#: plinth/modules/wireguard/forms.py:91
+#: plinth/modules/wireguard/forms.py:76
msgid "Public key of the server"
msgstr ""
-#: plinth/modules/wireguard/forms.py:92
+#: plinth/modules/wireguard/forms.py:77
msgid ""
"Provided by the server operator, a long string of characters. Example: "
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs= ."
msgstr ""
-#: plinth/modules/wireguard/forms.py:97
+#: plinth/modules/wireguard/forms.py:82
msgid "Client IP address provided by server"
msgstr ""
-#: plinth/modules/wireguard/forms.py:98
+#: plinth/modules/wireguard/forms.py:83
msgid ""
"IP address assigned to this machine on the VPN after connecting to the "
"endpoint. This value is usually provided by the server operator. Example: "
"192.168.0.10."
msgstr ""
-#: plinth/modules/wireguard/forms.py:104
+#: plinth/modules/wireguard/forms.py:89
msgid "Private key of this machine"
msgstr ""
-#: plinth/modules/wireguard/forms.py:105
+#: plinth/modules/wireguard/forms.py:90
msgid ""
"Optional. New public/private keys are generated if left blank. Public key "
"can then be provided to the server. This is the recommended way. However, "
@@ -5684,157 +5785,157 @@ msgid ""
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs= ."
msgstr ""
-#: plinth/modules/wireguard/forms.py:113
+#: plinth/modules/wireguard/forms.py:98
msgid "Pre-shared key"
msgstr ""
-#: plinth/modules/wireguard/forms.py:114
+#: plinth/modules/wireguard/forms.py:99
msgid ""
"Optional. A shared secret key provided by the server to add an additional "
"layer of security. Fill in only if provided. Example: "
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs=."
msgstr ""
-#: plinth/modules/wireguard/forms.py:120
+#: plinth/modules/wireguard/forms.py:105
msgid "Use this connection to send all outgoing traffic"
msgstr ""
-#: plinth/modules/wireguard/forms.py:122
+#: plinth/modules/wireguard/forms.py:107
msgid "Typically checked for a VPN service though which all traffic is sent."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:25
+#: plinth/modules/wireguard/templates/wireguard.html:10
msgid "As a Server"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:27
+#: plinth/modules/wireguard/templates/wireguard.html:12
msgid "Peers allowed to connect to this server:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:33
+#: plinth/modules/wireguard/templates/wireguard.html:18
msgid "Allowed IPs"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:34
-#: plinth/modules/wireguard/templates/wireguard.html:90
+#: plinth/modules/wireguard/templates/wireguard.html:19
+#: plinth/modules/wireguard/templates/wireguard.html:75
msgid "Last Connected Time"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:53
+#: plinth/modules/wireguard/templates/wireguard.html:38
#, python-format
msgid "No peers configured to connect to this %(box_name)s yet."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:62
+#: plinth/modules/wireguard/templates/wireguard.html:47
#, python-format
msgid "Public key for this %(box_name)s:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:68
+#: plinth/modules/wireguard/templates/wireguard.html:53
msgid "Not configured yet."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:72
+#: plinth/modules/wireguard/templates/wireguard.html:57
msgid "Add a new peer"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:76
-#: plinth/modules/wireguard/views.py:69
+#: plinth/modules/wireguard/templates/wireguard.html:61
+#: plinth/modules/wireguard/views.py:51
msgid "Add Allowed Client"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:79
+#: plinth/modules/wireguard/templates/wireguard.html:64
msgid "As a Client"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:81
+#: plinth/modules/wireguard/templates/wireguard.html:66
#, python-format
msgid "Servers that %(box_name)s will connect to:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:88
-#: plinth/modules/wireguard/templates/wireguard_delete_server.html:34
+#: plinth/modules/wireguard/templates/wireguard.html:73
+#: plinth/modules/wireguard/templates/wireguard_delete_server.html:19
msgid "Endpoint"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:111
+#: plinth/modules/wireguard/templates/wireguard.html:96
msgid "No connections to remote servers are configured yet."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:119
+#: plinth/modules/wireguard/templates/wireguard.html:104
msgid "Add a new server"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:123
-#: plinth/modules/wireguard/views.py:178
+#: plinth/modules/wireguard/templates/wireguard.html:108
+#: plinth/modules/wireguard/views.py:160
msgid "Add Connection to Server"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_add_client.html:34
+#: plinth/modules/wireguard/templates/wireguard_add_client.html:19
msgid "Add Client"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_delete_client.html:29
+#: plinth/modules/wireguard/templates/wireguard_delete_client.html:14
msgid "Are you sure that you want to delete this client?"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_delete_server.html:29
+#: plinth/modules/wireguard/templates/wireguard_delete_server.html:14
msgid "Are you sure that you want to delete this server?"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_edit_client.html:34
+#: plinth/modules/wireguard/templates/wireguard_edit_client.html:19
msgid "Update Client"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_edit_server.html:34
+#: plinth/modules/wireguard/templates/wireguard_edit_server.html:19
msgid "Update Connection"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:27
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:12
#, python-format
msgid ""
"%(box_name)s will allow this client to connect to it. Ensure that the client "
"is configured with the following information."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:35
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:20
msgid "Client public key:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:39
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:24
msgid "IP address to use for client:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:43
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:46
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:28
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:31
msgid "Pre-shared key:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:47
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:32
msgid "Server endpoints:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:55
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:42
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:40
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:27
msgid "Server public key:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:65
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:64
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:50
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:49
msgid "Data transmitted:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:69
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:68
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:54
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:53
msgid "Data received:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:73
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:72
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:58
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:57
msgid "Latest handshake:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:29
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:14
#, python-format
msgid ""
"%(box_name)s will attempt to reach a WireGuard server with the following "
@@ -5842,133 +5943,133 @@ msgid ""
"public key and IP address."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:38
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:23
msgid "Server endpoint:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:50
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:35
msgid "Public key of this machine:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:54
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:39
msgid "IP address of this machine:"
msgstr ""
-#: plinth/modules/wireguard/views.py:64
+#: plinth/modules/wireguard/views.py:46
msgid "Added new client."
msgstr ""
-#: plinth/modules/wireguard/views.py:79 plinth/modules/wireguard/views.py:138
+#: plinth/modules/wireguard/views.py:61 plinth/modules/wireguard/views.py:120
msgid "Client with public key already exists"
msgstr ""
-#: plinth/modules/wireguard/views.py:92
+#: plinth/modules/wireguard/views.py:74
msgid "Allowed Client"
msgstr ""
-#: plinth/modules/wireguard/views.py:114
+#: plinth/modules/wireguard/views.py:96
msgid "Updated client."
msgstr ""
-#: plinth/modules/wireguard/views.py:119
+#: plinth/modules/wireguard/views.py:101
msgid "Modify Client"
msgstr ""
-#: plinth/modules/wireguard/views.py:152
+#: plinth/modules/wireguard/views.py:134
msgid "Delete Allowed Client"
msgstr ""
-#: plinth/modules/wireguard/views.py:161
+#: plinth/modules/wireguard/views.py:143
msgid "Client deleted."
msgstr ""
-#: plinth/modules/wireguard/views.py:163
+#: plinth/modules/wireguard/views.py:145
msgid "Client not found"
msgstr ""
-#: plinth/modules/wireguard/views.py:173
+#: plinth/modules/wireguard/views.py:155
msgid "Added new server."
msgstr ""
-#: plinth/modules/wireguard/views.py:194
+#: plinth/modules/wireguard/views.py:176
msgid "Connection to Server"
msgstr ""
-#: plinth/modules/wireguard/views.py:212
+#: plinth/modules/wireguard/views.py:194
msgid "Updated server."
msgstr ""
-#: plinth/modules/wireguard/views.py:217
+#: plinth/modules/wireguard/views.py:199
msgid "Modify Connection to Server"
msgstr ""
-#: plinth/modules/wireguard/views.py:254
+#: plinth/modules/wireguard/views.py:236
msgid "Delete Connection to Server"
msgstr ""
-#: plinth/modules/wireguard/views.py:274
+#: plinth/modules/wireguard/views.py:256
msgid "Server deleted."
msgstr ""
-#: plinth/network.py:42
+#: plinth/network.py:27
msgid "PPPoE"
msgstr ""
-#: plinth/network.py:43
+#: plinth/network.py:28
msgid "Generic"
msgstr ""
-#: plinth/package.py:137
+#: plinth/package.py:122
msgid "Error during installation"
msgstr ""
-#: plinth/package.py:159
+#: plinth/package.py:144
msgid "installing"
msgstr ""
-#: plinth/package.py:161
+#: plinth/package.py:146
msgid "downloading"
msgstr ""
-#: plinth/package.py:163
+#: plinth/package.py:148
msgid "media change"
msgstr ""
-#: plinth/package.py:165
+#: plinth/package.py:150
#, python-brace-format
msgid "configuration file: {file}"
msgstr ""
-#: plinth/templates/403.html:25
+#: plinth/templates/403.html:10
msgid "403 Forbidden"
msgstr ""
-#: plinth/templates/403.html:29
+#: plinth/templates/403.html:14
#, python-format
msgid "You don't have permission to access %(request_path)s on this server."
msgstr ""
-#: plinth/templates/404.html:25
+#: plinth/templates/404.html:10
msgid "404"
msgstr ""
-#: plinth/templates/404.html:28
+#: plinth/templates/404.html:13
#, python-format
msgid "Requested page %(request_path)s was not found."
msgstr ""
-#: plinth/templates/404.html:34
+#: plinth/templates/404.html:19
msgid ""
"If you believe this missing page should exist, please file a bug at the "
"FreedomBox Service (Plinth) project issue tracker."
msgstr ""
-#: plinth/templates/500.html:25
+#: plinth/templates/500.html:10
msgid "500"
msgstr ""
-#: plinth/templates/500.html:29
+#: plinth/templates/500.html:14
#, python-format
msgid ""
"This is an internal error and not something you caused or can fix. Please "
@@ -5977,137 +6078,137 @@ msgid ""
"href=\"%(status_log_url)s\">status log to the bug report."
msgstr ""
-#: plinth/templates/app.html:47
+#: plinth/templates/app-header.html:22
+msgid "Installation"
+msgstr ""
+
+#: plinth/templates/app.html:32
#, python-format
msgid "Service %(service_name)s is running."
msgstr ""
-#: plinth/templates/app.html:52
+#: plinth/templates/app.html:37
#, python-format
msgid "Service %(service_name)s is not running."
msgstr ""
-#: plinth/templates/base.html:50
+#: plinth/templates/base.html:35
#, python-format
msgid "Core functionality and web interface for %(box_name)s"
msgstr ""
-#: plinth/templates/base.html:96
+#: plinth/templates/base.html:81
msgid "Toggle navigation"
msgstr ""
-#: plinth/templates/base.html:120 plinth/templates/base.html:123
+#: plinth/templates/base.html:105 plinth/templates/base.html:108
msgid "Home"
msgstr ""
-#: plinth/templates/base.html:128 plinth/templates/base.html:132
+#: plinth/templates/base.html:113 plinth/templates/base.html:117
msgid "Apps"
msgstr ""
-#: plinth/templates/base.html:137 plinth/templates/base.html:141
+#: plinth/templates/base.html:122 plinth/templates/base.html:126
msgid "System"
msgstr ""
-#: plinth/templates/base.html:173 plinth/templates/base.html:174
+#: plinth/templates/base.html:158 plinth/templates/base.html:159
msgid "Change password"
msgstr ""
-#: plinth/templates/base.html:181 plinth/templates/base.html:182
+#: plinth/templates/base.html:166 plinth/templates/base.html:167
msgid "Restart"
msgstr ""
-#: plinth/templates/base.html:187 plinth/templates/base.html:188
+#: plinth/templates/base.html:172 plinth/templates/base.html:173
msgid "Shut down"
msgstr ""
-#: plinth/templates/base.html:195 plinth/templates/base.html:196
-#: plinth/templates/base.html:220 plinth/templates/base.html:222
+#: plinth/templates/base.html:180 plinth/templates/base.html:181
+#: plinth/templates/base.html:205 plinth/templates/base.html:207
msgid "Log out"
msgstr ""
-#: plinth/templates/base.html:204 plinth/templates/base.html:207
+#: plinth/templates/base.html:189 plinth/templates/base.html:192
msgid "Select language"
msgstr ""
-#: plinth/templates/base.html:212 plinth/templates/base.html:214
+#: plinth/templates/base.html:197 plinth/templates/base.html:199
msgid "Log in"
msgstr ""
-#: plinth/templates/clients.html:32
+#: plinth/templates/clients.html:17
msgid "Web"
msgstr ""
-#: plinth/templates/clients.html:57
+#: plinth/templates/clients.html:42
msgid "Desktop"
msgstr ""
-#: plinth/templates/clients.html:68
+#: plinth/templates/clients.html:53
msgid "GNU/Linux"
msgstr ""
-#: plinth/templates/clients.html:70
+#: plinth/templates/clients.html:55
msgid "Windows"
msgstr ""
-#: plinth/templates/clients.html:72
+#: plinth/templates/clients.html:57
msgid "macOS"
msgstr ""
-#: plinth/templates/clients.html:88
+#: plinth/templates/clients.html:73
msgid "Mobile"
msgstr ""
-#: plinth/templates/clients.html:99
+#: plinth/templates/clients.html:84
msgid "Play Store"
msgstr ""
-#: plinth/templates/clients.html:101
+#: plinth/templates/clients.html:86
msgid "F-Droid"
msgstr ""
-#: plinth/templates/clients.html:103
+#: plinth/templates/clients.html:88
msgid "App Store"
msgstr ""
-#: plinth/templates/clients.html:119
+#: plinth/templates/clients.html:104
msgid "Package"
msgstr ""
-#: plinth/templates/clients.html:126
+#: plinth/templates/clients.html:111
msgid "Debian:"
msgstr ""
-#: plinth/templates/clients.html:129
+#: plinth/templates/clients.html:114
msgid "Homebrew:"
msgstr ""
-#: plinth/templates/clients.html:132
+#: plinth/templates/clients.html:117
msgid "RPM:"
msgstr ""
-#: plinth/templates/first_setup.html:39
+#: plinth/templates/first_setup.html:24
#, python-format
msgid ""
"Please wait for %(box_name)s to finish installation. You can start using "
"your %(box_name)s once it is done."
msgstr ""
-#: plinth/templates/header.html:36
-msgid "Installation"
-msgstr ""
-
-#: plinth/templates/index.html:37
+#: plinth/templates/index.html:22
#, python-format
msgid ""
"Enable some applications to add shortcuts to "
"this page."
msgstr ""
-#: plinth/templates/index.html:59
+#: plinth/templates/index.html:44
msgid "Configure »"
msgstr ""
-#: plinth/templates/index.html:115
+#: plinth/templates/index.html:100
#, python-format
msgid ""
"%(box_name)s, a Debian pure blend, is a 100%% free software self-hosting web "
@@ -6115,7 +6216,7 @@ msgid ""
"communication tools respecting your privacy and data ownership."
msgstr ""
-#: plinth/templates/index.html:124
+#: plinth/templates/index.html:109
#, python-format
msgid ""
"This portal is a part of the %(box_name)s web interface. %(box_name)s is "
@@ -6123,55 +6224,55 @@ msgid ""
"Version 3 or later."
msgstr ""
-#: plinth/templates/index.html:144
+#: plinth/templates/index.html:129
msgid "Homepage"
msgstr ""
-#: plinth/templates/index.html:147
+#: plinth/templates/index.html:132
msgid "Source Code"
msgstr ""
-#: plinth/templates/index.html:150
+#: plinth/templates/index.html:135
msgid "Donate"
msgstr ""
-#: plinth/templates/index.html:154
+#: plinth/templates/index.html:139
msgid "FreedomBox Foundation"
msgstr ""
-#: plinth/templates/index.html:161
+#: plinth/templates/index.html:146
msgid "IRC Chatroom"
msgstr ""
-#: plinth/templates/index.html:166
+#: plinth/templates/index.html:151
msgid "Mailing list"
msgstr ""
-#: plinth/templates/internal-zone.html:26
+#: plinth/templates/internal-zone.html:11
#, python-format
msgid "%(service_name)s is available only on internal networks."
msgstr ""
-#: plinth/templates/internal-zone.html:32
+#: plinth/templates/internal-zone.html:17
msgid "Currently there are no network interfaces configured as internal."
msgstr ""
-#: plinth/templates/internal-zone.html:34
+#: plinth/templates/internal-zone.html:19
#, python-format
msgid ""
"Currently the following network interfaces are configured as internal: "
"%(interface_list)s"
msgstr ""
-#: plinth/templates/notifications-dropdown.html:26
+#: plinth/templates/notifications-dropdown.html:11
msgid "Notifications"
msgstr ""
-#: plinth/templates/port-forwarding-info.html:23
+#: plinth/templates/port-forwarding-info.html:8
msgid "Port Forwarding"
msgstr ""
-#: plinth/templates/port-forwarding-info.html:26
+#: plinth/templates/port-forwarding-info.html:11
#, python-format
msgid ""
"If your FreedomBox is behind a router, you will need to set up port "
@@ -6179,62 +6280,62 @@ msgid ""
"%(service_name)s:"
msgstr ""
-#: plinth/templates/setup.html:51
+#: plinth/templates/setup.html:36
msgid "Install this application?"
msgstr ""
-#: plinth/templates/setup.html:55
+#: plinth/templates/setup.html:40
msgid "This application needs an update. Update now?"
msgstr ""
-#: plinth/templates/setup.html:66
+#: plinth/templates/setup.html:51
msgid ""
"Another installation or upgrade is already running. Please wait for a few "
"moments before trying again."
msgstr ""
-#: plinth/templates/setup.html:73
+#: plinth/templates/setup.html:58
msgid "This application is currently not available in your distribution."
msgstr ""
-#: plinth/templates/setup.html:87
+#: plinth/templates/setup.html:72
msgid "Install"
msgstr ""
-#: plinth/templates/setup.html:98
+#: plinth/templates/setup.html:83
msgid "Performing pre-install operation"
msgstr ""
-#: plinth/templates/setup.html:102
+#: plinth/templates/setup.html:87
msgid "Performing post-install operation"
msgstr ""
-#: plinth/templates/setup.html:107
+#: plinth/templates/setup.html:92
#, python-format
msgid "Installing %(package_names)s: %(status)s"
msgstr ""
-#: plinth/templates/setup.html:117
+#: plinth/templates/setup.html:102
#, python-format
msgid "%(percentage)s%% complete"
msgstr ""
-#: plinth/templates/toolbar.html:38
+#: plinth/templates/toolbar.html:23
msgid "Launch web client"
msgstr ""
-#: plinth/templates/toolbar.html:47
+#: plinth/templates/toolbar.html:32
msgid "Client Apps"
msgstr ""
-#: plinth/views.py:179
+#: plinth/views.py:189
msgid "Application enabled"
msgstr ""
-#: plinth/views.py:182
+#: plinth/views.py:192
msgid "Application disabled"
msgstr ""
-#: plinth/web_framework.py:190
+#: plinth/web_framework.py:107
msgid "Gujarati"
msgstr ""
diff --git a/plinth/locale/lt/LC_MESSAGES/django.po b/plinth/locale/lt/LC_MESSAGES/django.po
index e01c43546..12f324b63 100644
--- a/plinth/locale/lt/LC_MESSAGES/django.po
+++ b/plinth/locale/lt/LC_MESSAGES/django.po
@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2020-02-14 21:26+0200\n"
+"POT-Creation-Date: 2020-02-24 19:12-0500\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME This means that devices on the Internet can reach you when you are " +"connected to the Internet. Every time you connect to the Internet with your " +"Internet Service Provider (ISP), you may get a different IP address, " +"especially after some offline time. Many ISPs offer this type of " +"connectivity. If you have a public IP address but are unsure if it changes " +"over time or not, it is safer to choose this option.
" +msgstr "" + #: plinth/modules/networks/forms.py:313 +#, python-brace-format +msgid "" +"I have a public IP address that does not change overtime (recommended)This means that devices on the Internet can reach you " +"when you are connected to the Internet. Every time you connect to the " +"Internet with your Internet Service Provider (ISP), you always get the same " +"IP address. This is the most trouble-free setup for many {box_name} services " +"but very few ISPs offer this. You may be able to get this service from your " +"ISP by making an additional payment.
" +msgstr "" + +#: plinth/modules/networks/forms.py:326 +#, python-brace-format +msgid "" +"I dont have a public IP addressThis means that " +"devices on the Internet can not reach you when you are connected to " +"the Internet. Every time you connect to the Internet with your Internet " +"Service Provider (ISP), you get an IP address that is only relevant for " +"local networks. Many ISPs offer this type of connectivity. This is the most " +"troublesome situation for hosting services at home. {box_name} provides many " +"workaround solutions but each solution has some limitations.
" +msgstr "" + +#: plinth/modules/networks/forms.py:351 msgid "Preferred router configuration" msgstr "" -#: plinth/modules/networks/forms.py:318 +#: plinth/modules/networks/forms.py:356 #, python-brace-format msgid "" -"Use DMZ feature to forward all trafficMost routers " -"provide a configuration setting called DMZ. This will allow the router to " -"forward all incoming traffic from the internet to a single IP address such " -"as the {box_name}'s address. First remember to configure a static local IP " -"address for your {box_name} in your router's configuration.
" +"Use DMZ feature to forward all traffic (recommended)Most routers provide a configuration setting called DMZ. This will allow " +"the router to forward all incoming traffic from the Internet to a single IP " +"address such as the {box_name}'s IP address. First remember to configure a " +"static local IP address for your {box_name} in your router's configuration." +"p>" msgstr "" -#: plinth/modules/networks/forms.py:332 +#: plinth/modules/networks/forms.py:368 #, python-brace-format msgid "" -"Forward Specific Traffic as needed by each application
You may alternatively choose to forward only specific traffic to your " "{box_name}. This is ideal if you have other servers like {box_name} in your " "network or if your router does not support DMZ feature. All applications " @@ -3065,276 +3128,280 @@ msgid "" "to be forwarded for that application to work.
" msgstr "" -#: plinth/modules/networks/forms.py:349 +#: plinth/modules/networks/forms.py:382 msgid "" -"Router is currently unconfiguredChoose this if you " +"Router is currently unconfigured
Choose this if you " "have not configured or are unable to configure the router currently and wish " "to be reminded later. Some of the other configuration steps may fail.
" msgstr "" -#: plinth/modules/networks/networks.py:43 +#: plinth/modules/networks/networks.py:32 msgid "Network Connections" msgstr "" -#: plinth/modules/networks/networks.py:59 +#: plinth/modules/networks/networks.py:46 msgid "Cannot show connection: Connection not found." msgstr "" -#: plinth/modules/networks/networks.py:94 +#: plinth/modules/networks/networks.py:81 msgid "Connection Information" msgstr "" -#: plinth/modules/networks/networks.py:108 +#: plinth/modules/networks/networks.py:95 msgid "Cannot edit connection: Connection not found." msgstr "" -#: plinth/modules/networks/networks.py:114 +#: plinth/modules/networks/networks.py:101 msgid "This type of connection is not yet understood." msgstr "" -#: plinth/modules/networks/networks.py:136 -#: plinth/modules/networks/networks.py:220 -#: plinth/modules/networks/templates/connections_edit.html:35 +#: plinth/modules/networks/networks.py:123 +#: plinth/modules/networks/networks.py:207 +#: plinth/modules/networks/templates/connections_edit.html:20 msgid "Edit Connection" msgstr "" -#: plinth/modules/networks/networks.py:232 +#: plinth/modules/networks/networks.py:219 #, python-brace-format msgid "Activated connection {name}." msgstr "" -#: plinth/modules/networks/networks.py:236 +#: plinth/modules/networks/networks.py:223 msgid "Failed to activate connection: Connection not found." msgstr "" -#: plinth/modules/networks/networks.py:242 +#: plinth/modules/networks/networks.py:229 #, python-brace-format msgid "Failed to activate connection {name}: No suitable device is available." msgstr "" -#: plinth/modules/networks/networks.py:255 +#: plinth/modules/networks/networks.py:242 #, python-brace-format msgid "Deactivated connection {name}." msgstr "" -#: plinth/modules/networks/networks.py:259 +#: plinth/modules/networks/networks.py:246 msgid "Failed to de-activate connection: Connection not found." msgstr "" -#: plinth/modules/networks/networks.py:269 -#: plinth/modules/networks/templates/connections_list.html:62 -#: plinth/modules/networks/templates/connections_list.html:64 +#: plinth/modules/networks/networks.py:256 +#: plinth/modules/networks/templates/connections_list.html:12 +#: plinth/modules/networks/templates/connections_list.html:14 msgid "Nearby Wi-Fi Networks" msgstr "" -#: plinth/modules/networks/networks.py:293 -#: plinth/modules/networks/templates/connections_list.html:67 -#: plinth/modules/networks/templates/connections_list.html:69 -#: plinth/modules/wireguard/templates/wireguard_add_server.html:34 +#: plinth/modules/networks/networks.py:280 +#: plinth/modules/networks/templates/connections_list.html:17 +#: plinth/modules/networks/templates/connections_list.html:19 +#: plinth/modules/wireguard/templates/wireguard_add_server.html:19 msgid "Add Connection" msgstr "" -#: plinth/modules/networks/networks.py:311 +#: plinth/modules/networks/networks.py:298 msgid "Adding New Generic Connection" msgstr "" -#: plinth/modules/networks/networks.py:329 +#: plinth/modules/networks/networks.py:316 msgid "Adding New Ethernet Connection" msgstr "" -#: plinth/modules/networks/networks.py:347 +#: plinth/modules/networks/networks.py:334 msgid "Adding New PPPoE Connection" msgstr "" -#: plinth/modules/networks/networks.py:382 +#: plinth/modules/networks/networks.py:369 msgid "Adding New Wi-Fi Connection" msgstr "" -#: plinth/modules/networks/networks.py:397 +#: plinth/modules/networks/networks.py:384 #, python-brace-format msgid "Connection {name} deleted." msgstr "" -#: plinth/modules/networks/networks.py:401 -#: plinth/modules/networks/networks.py:411 +#: plinth/modules/networks/networks.py:388 +#: plinth/modules/networks/networks.py:398 msgid "Failed to delete connection: Connection not found." msgstr "" -#: plinth/modules/networks/networks.py:416 -#: plinth/modules/networks/templates/connections_delete.html:26 +#: plinth/modules/networks/networks.py:403 +#: plinth/modules/networks/templates/connections_delete.html:11 msgid "Delete Connection" msgstr "" -#: plinth/modules/networks/networks.py:442 +#: plinth/modules/networks/networks.py:428 msgid "Router configuration type saved." msgstr "" -#: plinth/modules/networks/templates/connection_show.html:43 +#: plinth/modules/networks/networks.py:474 +msgid "Internet connection type saved." +msgstr "" + +#: plinth/modules/networks/templates/connection_show.html:28 msgid "Edit connection" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:43 -#: plinth/modules/wireguard/templates/wireguard_show_client.html:83 -#: plinth/modules/wireguard/templates/wireguard_show_server.html:84 -#: plinth/templates/base.html:167 plinth/templates/base.html:168 +#: plinth/modules/networks/templates/connection_show.html:28 +#: plinth/modules/wireguard/templates/wireguard_show_client.html:68 +#: plinth/modules/wireguard/templates/wireguard_show_server.html:69 +#: plinth/templates/base.html:152 plinth/templates/base.html:153 msgid "Edit" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:50 -#: plinth/modules/networks/templates/connections_list.html:90 +#: plinth/modules/networks/templates/connection_show.html:35 +#: plinth/modules/networks/templates/connections_list.html:40 msgid "Deactivate" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:57 -#: plinth/modules/networks/templates/connections_list.html:98 +#: plinth/modules/networks/templates/connection_show.html:42 +#: plinth/modules/networks/templates/connections_list.html:48 msgid "Activate" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:63 +#: plinth/modules/networks/templates/connection_show.html:48 msgid "Delete connection" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:66 -#: plinth/modules/networks/templates/connections_diagram.html:73 -#: plinth/modules/networks/templates/connections_diagram.html:76 -#: plinth/modules/networks/templates/connections_diagram.html:105 -#: plinth/modules/networks/templates/connections_diagram.html:127 +#: plinth/modules/networks/templates/connection_show.html:51 +#: plinth/modules/networks/templates/connections_diagram.html:58 +#: plinth/modules/networks/templates/connections_diagram.html:61 +#: plinth/modules/networks/templates/connections_diagram.html:90 +#: plinth/modules/networks/templates/connections_diagram.html:112 msgid "Connection" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:71 +#: plinth/modules/networks/templates/connection_show.html:56 msgid "Primary connection" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:73 -#: plinth/modules/networks/templates/connection_show.html:217 -#: plinth/modules/networks/templates/connection_show.html:256 +#: plinth/modules/networks/templates/connection_show.html:58 +#: plinth/modules/networks/templates/connection_show.html:202 +#: plinth/modules/networks/templates/connection_show.html:241 msgid "yes" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:84 -#: plinth/modules/storage/templates/storage.html:40 +#: plinth/modules/networks/templates/connection_show.html:69 +#: plinth/modules/storage/templates/storage.html:25 msgid "Device" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:88 +#: plinth/modules/networks/templates/connection_show.html:73 msgid "State" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:93 +#: plinth/modules/networks/templates/connection_show.html:78 msgid "State reason" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:102 +#: plinth/modules/networks/templates/connection_show.html:87 msgid "MAC address" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:106 +#: plinth/modules/networks/templates/connection_show.html:91 msgid "Interface" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:110 -#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:33 -#: plinth/modules/snapshot/templates/snapshot_manage.html:45 -#: plinth/modules/snapshot/templates/snapshot_rollback.html:41 +#: plinth/modules/networks/templates/connection_show.html:95 +#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:18 +#: plinth/modules/snapshot/templates/snapshot_manage.html:30 +#: plinth/modules/snapshot/templates/snapshot_rollback.html:26 msgid "Description" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:116 +#: plinth/modules/networks/templates/connection_show.html:101 msgid "Physical Link" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:121 +#: plinth/modules/networks/templates/connection_show.html:106 msgid "Link state" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:125 +#: plinth/modules/networks/templates/connection_show.html:110 msgid "cable is connected" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:128 +#: plinth/modules/networks/templates/connection_show.html:113 msgid "please check cable" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:133 -#: plinth/modules/networks/templates/connection_show.html:149 +#: plinth/modules/networks/templates/connection_show.html:118 +#: plinth/modules/networks/templates/connection_show.html:134 msgid "Speed" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:135 +#: plinth/modules/networks/templates/connection_show.html:120 #, python-format msgid "%(ethernet_speed)s Mbit/s" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:151 +#: plinth/modules/networks/templates/connection_show.html:136 #, python-format msgid "%(wireless_bitrate)s Mbit/s" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:163 +#: plinth/modules/networks/templates/connection_show.html:148 msgid "Signal strength" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:181 +#: plinth/modules/networks/templates/connection_show.html:166 msgid "IPv4" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:186 -#: plinth/modules/networks/templates/connection_show.html:227 -#: plinth/modules/shadowsocks/forms.py:64 +#: plinth/modules/networks/templates/connection_show.html:171 +#: plinth/modules/networks/templates/connection_show.html:212 +#: plinth/modules/shadowsocks/forms.py:49 msgid "Method" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:193 -#: plinth/modules/networks/templates/connection_show.html:234 +#: plinth/modules/networks/templates/connection_show.html:178 +#: plinth/modules/networks/templates/connection_show.html:219 msgid "IP address" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:209 -#: plinth/modules/networks/templates/connection_show.html:248 +#: plinth/modules/networks/templates/connection_show.html:194 +#: plinth/modules/networks/templates/connection_show.html:233 msgid "DNS server" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:216 -#: plinth/modules/networks/templates/connection_show.html:255 -#: plinth/modules/storage/forms.py:156 +#: plinth/modules/networks/templates/connection_show.html:201 +#: plinth/modules/networks/templates/connection_show.html:240 +#: plinth/modules/storage/forms.py:141 msgid "Default" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:222 +#: plinth/modules/networks/templates/connection_show.html:207 msgid "IPv6" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:263 +#: plinth/modules/networks/templates/connection_show.html:248 msgid "This connection is not active." msgstr "" -#: plinth/modules/networks/templates/connection_show.html:266 -#: plinth/modules/security/__init__.py:38 plinth/modules/security/views.py:47 +#: plinth/modules/networks/templates/connection_show.html:251 +#: plinth/modules/security/__init__.py:45 msgid "Security" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:271 -#: plinth/modules/networks/templates/connection_show.html:291 -#: plinth/modules/networks/templates/connection_show.html:310 +#: plinth/modules/networks/templates/connection_show.html:256 +#: plinth/modules/networks/templates/connection_show.html:276 +#: plinth/modules/networks/templates/connection_show.html:295 msgid "Firewall zone" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:280 +#: plinth/modules/networks/templates/connection_show.html:265 msgid "" "This interface should be connected to a local network/machine. If you " "connect this interface to a public network, services meant to be available " "only internally will become available externally. This is a security risk." msgstr "" -#: plinth/modules/networks/templates/connection_show.html:300 +#: plinth/modules/networks/templates/connection_show.html:285 msgid "" "This interface should receive your Internet connection. If you connect it to " "a local network/machine, many services meant to available only internally " "will not be available." msgstr "" -#: plinth/modules/networks/templates/connection_show.html:319 +#: plinth/modules/networks/templates/connection_show.html:304 #, python-format msgid "" "This interface is not maintained by %(box_name)s. Its security status is " @@ -3343,109 +3410,132 @@ msgid "" "connection and re-configure it." msgstr "" -#: plinth/modules/networks/templates/connections_create.html:34 +#: plinth/modules/networks/templates/connections_create.html:19 msgid "Create Connection" msgstr "" -#: plinth/modules/networks/templates/connections_delete.html:29 +#: plinth/modules/networks/templates/connections_delete.html:14 #, python-format msgid "Delete connection %(name)s permanently?" msgstr "" -#: plinth/modules/networks/templates/connections_diagram.html:65 +#: plinth/modules/networks/templates/connections_diagram.html:50 msgid "Internet" msgstr "" -#: plinth/modules/networks/templates/connections_diagram.html:70 -#: plinth/modules/networks/templates/connections_diagram.html:102 +#: plinth/modules/networks/templates/connections_diagram.html:55 +#: plinth/modules/networks/templates/connections_diagram.html:87 msgid "Spacing" msgstr "" -#: plinth/modules/networks/templates/connections_diagram.html:83 -#: plinth/modules/networks/templates/connections_diagram.html:113 -#: plinth/network.py:40 +#: plinth/modules/networks/templates/connections_diagram.html:68 +#: plinth/modules/networks/templates/connections_diagram.html:98 +#: plinth/network.py:25 msgid "Ethernet" msgstr "" -#: plinth/modules/networks/templates/connections_diagram.html:86 -#: plinth/modules/networks/templates/connections_diagram.html:116 -#: plinth/network.py:41 +#: plinth/modules/networks/templates/connections_diagram.html:71 +#: plinth/modules/networks/templates/connections_diagram.html:101 +#: plinth/network.py:26 msgid "Wi-Fi" msgstr "" -#: plinth/modules/networks/templates/connections_diagram.html:89 +#: plinth/modules/networks/templates/connections_diagram.html:74 #, python-format msgid "Show connection %(connection.name)s" msgstr "" -#: plinth/modules/networks/templates/connections_diagram.html:119 +#: plinth/modules/networks/templates/connections_diagram.html:104 #, python-format msgid "Show connection %(name)s" msgstr "" -#: plinth/modules/networks/templates/connections_diagram.html:131 +#: plinth/modules/networks/templates/connections_diagram.html:116 msgid "Computer" msgstr "" -#: plinth/modules/networks/templates/connections_list.html:58 +#: plinth/modules/networks/templates/connections_list.html:8 msgid "Connections" msgstr "" -#: plinth/modules/networks/templates/connections_list.html:79 +#: plinth/modules/networks/templates/connections_list.html:29 #, python-format msgid "Delete connection %(name)s" msgstr "" -#: plinth/modules/networks/templates/connections_list.html:104 +#: plinth/modules/networks/templates/connections_list.html:54 msgid "Active" msgstr "" -#: plinth/modules/networks/templates/connections_list.html:107 +#: plinth/modules/networks/templates/connections_list.html:57 msgid "Inactive" msgstr "" -#: plinth/modules/networks/templates/connections_list.html:124 -#, python-format -msgid "%(box_name)s Internet Connectivity" -msgstr "" - -#: plinth/modules/networks/templates/connections_list.html:129 -#, python-format -msgid "" -"The following best describes how your %(box_name)s is connected in your " -"network. This information is used only to suggest necessary configuration " -"actions." -msgstr "" - -#: plinth/modules/networks/templates/connections_list.html:137 -#, python-format -msgid "" -"Your %(box_name)s gets its internet from your Router via WiFi or Ethernet " -"cable. This is a typical home setup." -msgstr "" - -#: plinth/modules/networks/templates/connections_list.html:145 -#: plinth/modules/networks/templates/connections_list.html:147 -msgid "Update..." -msgstr "" - -#: plinth/modules/networks/templates/connections_type_select.html:34 +#: plinth/modules/networks/templates/connections_type_select.html:19 msgid "Create..." msgstr "" -#: plinth/modules/networks/templates/router_configuration_content.html:25 +#: plinth/modules/networks/templates/internet_connectivity_content.html:10 +msgid "What Type Of Internet Connection Do You Have?" +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_content.html:16 +msgid "" +"Select an option that best describes the type of Internet connection. This " +"information is used only to guide you with further setup." +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_firstboot.html:18 +#: plinth/modules/networks/templates/router_configuration_firstboot.html:18 +msgid "Skip this step" +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_firstboot.html:19 +#: plinth/modules/networks/templates/router_configuration_firstboot.html:19 +msgid "Next" +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:9 +msgid "Your Internet Connection Type" +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:14 +msgid "" +"The following best describes the type of Internet connection provided by " +"your ISP. This information is only used to suggest you necessary " +"configuration actions." +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:23 +msgid "My ISP provides a public IP address that does not change over time." +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:27 +msgid "My ISP provides a public IP address that may change over time." +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:31 +msgid "My ISP does not provide a public IP address." +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:37 +#: plinth/modules/networks/templates/router_configuration_main.html:29 +msgid "Update..." +msgstr "" + +#: plinth/modules/networks/templates/router_configuration_content.html:10 #, python-format msgid "Setup %(box_name)s Behind a Router" msgstr "" -#: plinth/modules/networks/templates/router_configuration_content.html:31 +#: plinth/modules/networks/templates/router_configuration_content.html:16 #, python-format msgid "" "Your %(box_name)s gets its internet connection from your router via Wi-Fi or " "Ethernet cable. This is a typical home setup." msgstr "" -#: plinth/modules/networks/templates/router_configuration_content.html:38 +#: plinth/modules/networks/templates/router_configuration_content.html:23 #, python-format msgid "" "With this setup, any device on the internet trying to reach your " @@ -3454,24 +3544,24 @@ msgid "" "the services." msgstr "" -#: plinth/modules/networks/templates/router_configuration_content.html:47 +#: plinth/modules/networks/templates/router_configuration_content.html:32 msgid "" "If you don't have control over your router, choose not to configure it. To " -"see options, to overcome this limitation, choose 'no public address' option " +"see options to overcome this limitation, choose 'no public address' option " "in Internet connection type selection." msgstr "" -#: plinth/modules/networks/templates/router_configuration_content.html:54 +#: plinth/modules/networks/templates/router_configuration_content.html:39 msgid "Choose How You Wish to Configure Your Router" msgstr "" -#: plinth/modules/networks/templates/router_configuration_content.html:57 +#: plinth/modules/networks/templates/router_configuration_content.html:42 msgid "" "You will need to login to your router's administration console provided by " "the router. This may look like one of the following:" msgstr "" -#: plinth/modules/networks/templates/router_configuration_content.html:69 +#: plinth/modules/networks/templates/router_configuration_content.html:54 msgid "" "The username and password is configured by you when you first setup the " "router. For many routers, this information is printed at the back of the " @@ -3481,24 +3571,27 @@ msgid "" "full instructions on how to perform this task." msgstr "" -#: plinth/modules/networks/templates/router_configuration_firstboot.html:33 -msgid "skip this step" +#: plinth/modules/networks/templates/router_configuration_main.html:9 +#, python-format +msgid "%(box_name)s Internet Connectivity" msgstr "" -#: plinth/modules/networks/templates/router_configuration_firstboot.html:35 -msgid "Next" +#: plinth/modules/networks/templates/router_configuration_main.html:15 +#, python-format +msgid "" +"The following best describes how your %(box_name)s is connected in your " +"network. This information is used only to suggest necessary configuration " +"actions." msgstr "" -#: plinth/modules/openvpn/__init__.py:39 plinth/modules/openvpn/manifest.py:33 -msgid "OpenVPN" +#: plinth/modules/networks/templates/router_configuration_main.html:23 +#, python-format +msgid "" +"Your %(box_name)s gets its Internet from your Router via Wi-Fi or Ethernet " +"cable. This is a typical home setup." msgstr "" -#: plinth/modules/openvpn/__init__.py:43 -#: plinth/modules/wireguard/__init__.py:40 -msgid "Virtual Private Network" -msgstr "" - -#: plinth/modules/openvpn/__init__.py:47 +#: plinth/modules/openvpn/__init__.py:26 #, python-brace-format msgid "" "Virtual Private Network (VPN) is a technique for securely connecting two " @@ -3509,21 +3602,30 @@ msgid "" "security and anonymity." msgstr "" -#: plinth/modules/openvpn/__init__.py:79 +#: plinth/modules/openvpn/__init__.py:49 plinth/modules/openvpn/manifest.py:18 +msgid "OpenVPN" +msgstr "" + +#: plinth/modules/openvpn/__init__.py:50 +#: plinth/modules/wireguard/__init__.py:53 +msgid "Virtual Private Network" +msgstr "" + +#: plinth/modules/openvpn/__init__.py:61 #, python-brace-format msgid "" "Download Profile" msgstr "" -#: plinth/modules/openvpn/forms.py:27 +#: plinth/modules/openvpn/forms.py:12 msgid "Enable OpenVPN server" msgstr "" -#: plinth/modules/openvpn/manifest.py:63 -msgid "TunnelBlick" +#: plinth/modules/openvpn/manifest.py:48 +msgid "Tunnelblick" msgstr "" -#: plinth/modules/openvpn/templates/openvpn.html:42 +#: plinth/modules/openvpn/templates/openvpn.html:27 #, python-format msgid "" "OpenVPN has not yet been setup. Performing a secure setup takes a very long " @@ -3531,15 +3633,15 @@ msgid "" "If the setup is interrupted, you may start it again." msgstr "" -#: plinth/modules/openvpn/templates/openvpn.html:55 +#: plinth/modules/openvpn/templates/openvpn.html:40 msgid "Start setup" msgstr "" -#: plinth/modules/openvpn/templates/openvpn.html:64 +#: plinth/modules/openvpn/templates/openvpn.html:49 msgid "OpenVPN setup is running" msgstr "" -#: plinth/modules/openvpn/templates/openvpn.html:68 +#: plinth/modules/openvpn/templates/openvpn.html:53 #, python-format msgid "" "To perform a secure setup, this process takes a very long time. Depending " @@ -3547,11 +3649,11 @@ msgid "" "interrupted, you may start it again." msgstr "" -#: plinth/modules/openvpn/templates/openvpn.html:87 +#: plinth/modules/openvpn/templates/openvpn.html:72 msgid "Profile" msgstr "" -#: plinth/modules/openvpn/templates/openvpn.html:90 +#: plinth/modules/openvpn/templates/openvpn.html:75 #, python-format msgid "" "To connect to %(box_name)s's VPN, you need to download a profile and feed it " @@ -3560,32 +3662,24 @@ msgid "" "clients and instructions on how to configure them." msgstr "" -#: plinth/modules/openvpn/templates/openvpn.html:100 +#: plinth/modules/openvpn/templates/openvpn.html:85 #, python-format msgid "Profile is specific to each user of %(box_name)s. Keep it a secret." msgstr "" -#: plinth/modules/openvpn/templates/openvpn.html:111 +#: plinth/modules/openvpn/templates/openvpn.html:96 msgid "Download my profile" msgstr "" -#: plinth/modules/openvpn/views.py:133 +#: plinth/modules/openvpn/views.py:114 msgid "Setup completed." msgstr "" -#: plinth/modules/openvpn/views.py:135 +#: plinth/modules/openvpn/views.py:116 msgid "Setup failed." msgstr "" -#: plinth/modules/pagekite/__init__.py:39 -msgid "PageKite" -msgstr "" - -#: plinth/modules/pagekite/__init__.py:41 -msgid "Public Visibility" -msgstr "" - -#: plinth/modules/pagekite/__init__.py:45 +#: plinth/modules/pagekite/__init__.py:26 #, python-brace-format msgid "" "PageKite is a system for exposing {box_name} services when you don't have a " @@ -3594,33 +3688,33 @@ msgid "" "following situations:" msgstr "" -#: plinth/modules/pagekite/__init__.py:50 +#: plinth/modules/pagekite/__init__.py:31 #, python-brace-format msgid "{box_name} is behind a restricted firewall." msgstr "" -#: plinth/modules/pagekite/__init__.py:53 +#: plinth/modules/pagekite/__init__.py:34 #, python-brace-format msgid "{box_name} is connected to a (wireless) router which you don't control." msgstr "" -#: plinth/modules/pagekite/__init__.py:55 +#: plinth/modules/pagekite/__init__.py:36 msgid "" "Your ISP does not provide you an external IP address and instead provides " "Internet connection through NAT." msgstr "" -#: plinth/modules/pagekite/__init__.py:57 +#: plinth/modules/pagekite/__init__.py:38 msgid "" "Your ISP does not provide you a static IP address and your IP address " "changes every time you connect to Internet." msgstr "" -#: plinth/modules/pagekite/__init__.py:59 +#: plinth/modules/pagekite/__init__.py:40 msgid "Your ISP limits incoming connections." msgstr "" -#: plinth/modules/pagekite/__init__.py:61 +#: plinth/modules/pagekite/__init__.py:42 #, python-brace-format msgid "" "PageKite works around NAT, firewalls and IP address limitations by using a " @@ -3629,138 +3723,146 @@ msgid "" "the future it might be possible to use your buddy's {box_name} for this." msgstr "" -#: plinth/modules/pagekite/__init__.py:87 +#: plinth/modules/pagekite/__init__.py:62 +msgid "PageKite" +msgstr "" + +#: plinth/modules/pagekite/__init__.py:64 +msgid "Public Visibility" +msgstr "" + +#: plinth/modules/pagekite/__init__.py:74 msgid "PageKite Domain" msgstr "" -#: plinth/modules/pagekite/forms.py:66 +#: plinth/modules/pagekite/forms.py:51 msgid "Server domain" msgstr "" -#: plinth/modules/pagekite/forms.py:68 +#: plinth/modules/pagekite/forms.py:53 msgid "" "Select your pagekite server. Set \"pagekite.net\" to use the default " "pagekite.net server." msgstr "" -#: plinth/modules/pagekite/forms.py:71 plinth/modules/shadowsocks/forms.py:55 +#: plinth/modules/pagekite/forms.py:56 plinth/modules/shadowsocks/forms.py:40 msgid "Server port" msgstr "" -#: plinth/modules/pagekite/forms.py:72 +#: plinth/modules/pagekite/forms.py:57 msgid "Port of your pagekite server (default: 80)" msgstr "" -#: plinth/modules/pagekite/forms.py:74 +#: plinth/modules/pagekite/forms.py:59 msgid "Kite name" msgstr "" -#: plinth/modules/pagekite/forms.py:75 +#: plinth/modules/pagekite/forms.py:60 msgid "Example: mybox.pagekite.me" msgstr "" -#: plinth/modules/pagekite/forms.py:77 +#: plinth/modules/pagekite/forms.py:62 msgid "Invalid kite name" msgstr "" -#: plinth/modules/pagekite/forms.py:81 +#: plinth/modules/pagekite/forms.py:66 msgid "Kite secret" msgstr "" -#: plinth/modules/pagekite/forms.py:82 +#: plinth/modules/pagekite/forms.py:67 msgid "" "A secret associated with the kite or the default secret for your account if " "no secret is set on the kite." msgstr "" -#: plinth/modules/pagekite/forms.py:98 +#: plinth/modules/pagekite/forms.py:83 msgid "Kite details set" msgstr "" -#: plinth/modules/pagekite/forms.py:105 +#: plinth/modules/pagekite/forms.py:90 msgid "Pagekite server set" msgstr "" -#: plinth/modules/pagekite/forms.py:129 +#: plinth/modules/pagekite/forms.py:114 msgid "PageKite enabled" msgstr "" -#: plinth/modules/pagekite/forms.py:132 +#: plinth/modules/pagekite/forms.py:117 msgid "PageKite disabled" msgstr "" -#: plinth/modules/pagekite/forms.py:148 +#: plinth/modules/pagekite/forms.py:133 msgid "protocol" msgstr "" -#: plinth/modules/pagekite/forms.py:151 +#: plinth/modules/pagekite/forms.py:136 msgid "external (frontend) port" msgstr "" -#: plinth/modules/pagekite/forms.py:154 +#: plinth/modules/pagekite/forms.py:139 msgid "internal (freedombox) port" msgstr "" -#: plinth/modules/pagekite/forms.py:155 +#: plinth/modules/pagekite/forms.py:140 msgid "Enable Subdomains" msgstr "" -#: plinth/modules/pagekite/forms.py:189 +#: plinth/modules/pagekite/forms.py:174 msgid "Deleted custom service" msgstr "" -#: plinth/modules/pagekite/forms.py:222 +#: plinth/modules/pagekite/forms.py:207 msgid "" "This service is available as a standard service. Please use the \"Standard " "Services\" page to enable it." msgstr "" -#: plinth/modules/pagekite/forms.py:231 +#: plinth/modules/pagekite/forms.py:216 msgid "Added custom service" msgstr "" -#: plinth/modules/pagekite/forms.py:234 +#: plinth/modules/pagekite/forms.py:219 msgid "This service already exists" msgstr "" -#: plinth/modules/pagekite/templates/pagekite_configure.html:47 +#: plinth/modules/pagekite/templates/pagekite_configure.html:32 msgid "Custom Services" msgstr "" -#: plinth/modules/pagekite/templates/pagekite_configure.html:50 -#: plinth/modules/pagekite/templates/pagekite_configure.html:52 +#: plinth/modules/pagekite/templates/pagekite_configure.html:35 +#: plinth/modules/pagekite/templates/pagekite_configure.html:37 msgid "Add Custom Service" msgstr "" -#: plinth/modules/pagekite/templates/pagekite_configure.html:57 +#: plinth/modules/pagekite/templates/pagekite_configure.html:42 msgid "Existing custom services" msgstr "" -#: plinth/modules/pagekite/templates/pagekite_configure.html:71 +#: plinth/modules/pagekite/templates/pagekite_configure.html:56 #, python-format msgid "connected to %(backend_host)s:%(backend_port)s" msgstr "" -#: plinth/modules/pagekite/templates/pagekite_configure.html:83 +#: plinth/modules/pagekite/templates/pagekite_configure.html:68 msgid "Delete this service" msgstr "" -#: plinth/modules/pagekite/templates/pagekite_custom_services.html:30 +#: plinth/modules/pagekite/templates/pagekite_custom_services.html:15 msgid "Add custom PageKite service" msgstr "" -#: plinth/modules/pagekite/templates/pagekite_custom_services.html:32 +#: plinth/modules/pagekite/templates/pagekite_custom_services.html:17 msgid "" "Warning:imaps://imap.gmail.com. "
@@ -4072,17 +4164,22 @@ msgid ""
"a>)."
msgstr ""
-#: plinth/modules/samba/__init__.py:46
-msgid "Samba"
+#: plinth/modules/roundcube/__init__.py:54
+#: plinth/modules/roundcube/manifest.py:9
+msgid "Roundcube"
msgstr ""
-#: plinth/modules/samba/__init__.py:53
+#: plinth/modules/roundcube/__init__.py:55
+msgid "Email Client"
+msgstr ""
+
+#: plinth/modules/samba/__init__.py:32
msgid ""
"Samba allows to share files and folders between FreedomBox and other "
"computers in your local network."
msgstr ""
-#: plinth/modules/samba/__init__.py:56
+#: plinth/modules/samba/__init__.py:35
#, python-brace-format
msgid ""
"After installation, you can choose which disks to use for sharing. Enabled "
@@ -4091,51 +4188,55 @@ msgid ""
"There are three types of shares you can choose from: "
msgstr ""
-#: plinth/modules/samba/__init__.py:61
+#: plinth/modules/samba/__init__.py:40
msgid "Open share - accessible to everyone in your local network."
msgstr ""
-#: plinth/modules/samba/__init__.py:62
+#: plinth/modules/samba/__init__.py:41
msgid ""
"Group share - accessible only to FreedomBox users who are in the freedombox-"
"share group."
msgstr ""
-#: plinth/modules/samba/__init__.py:64
+#: plinth/modules/samba/__init__.py:43
msgid ""
"Home share - every user in the freedombox-share group can have their own "
"private space."
msgstr ""
-#: plinth/modules/samba/__init__.py:68
+#: plinth/modules/samba/__init__.py:47
msgid "Access to the private shares"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:39
-#: plinth/modules/samba/templates/samba.html:50
+#: plinth/modules/samba/__init__.py:61
+msgid "Samba"
+msgstr ""
+
+#: plinth/modules/samba/templates/samba.html:24
+#: plinth/modules/samba/templates/samba.html:35
msgid "Shares"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:41
+#: plinth/modules/samba/templates/samba.html:26
msgid ""
"Note: Only specially created directories will be shared on selected disks, "
"not the whole disk."
msgstr ""
-#: plinth/modules/samba/templates/samba.html:49
+#: plinth/modules/samba/templates/samba.html:34
msgid "Disk Name"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:51
-#: plinth/modules/storage/templates/storage.html:44
+#: plinth/modules/samba/templates/samba.html:36
+#: plinth/modules/storage/templates/storage.html:29
msgid "Used"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:72
+#: plinth/modules/samba/templates/samba.html:57
msgid "VFAT partitions are not supported"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:103
+#: plinth/modules/samba/templates/samba.html:88
#, python-format
msgid ""
"You can find additional information about disks on the users module page."
msgstr ""
-#: plinth/modules/samba/templates/samba.html:109
+#: plinth/modules/samba/templates/samba.html:94
msgid "Users who can currently access group and home shares"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:113
+#: plinth/modules/samba/templates/samba.html:98
msgid ""
"Users needing to re-enter their password on the password change page to "
"access group and home shares"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:118
+#: plinth/modules/samba/templates/samba.html:103
msgid "Unavailable Shares"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:120
+#: plinth/modules/samba/templates/samba.html:105
msgid ""
"Shares that are configured but the disk is not available. If the disk is "
"plugged back in, sharing will be automatically enabled."
msgstr ""
-#: plinth/modules/samba/templates/samba.html:128
+#: plinth/modules/samba/templates/samba.html:113
msgid "Share name"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:129
+#: plinth/modules/samba/templates/samba.html:114
msgid "Action"
msgstr ""
-#: plinth/modules/samba/views.py:61 plinth/modules/storage/forms.py:164
+#: plinth/modules/samba/views.py:43 plinth/modules/storage/forms.py:149
msgid "Open Share"
msgstr ""
-#: plinth/modules/samba/views.py:62 plinth/modules/storage/forms.py:162
+#: plinth/modules/samba/views.py:44 plinth/modules/storage/forms.py:147
msgid "Group Share"
msgstr ""
-#: plinth/modules/samba/views.py:63
+#: plinth/modules/samba/views.py:45
msgid "Home Share"
msgstr ""
-#: plinth/modules/samba/views.py:96
+#: plinth/modules/samba/views.py:78
msgid "Share enabled."
msgstr ""
-#: plinth/modules/samba/views.py:101
+#: plinth/modules/samba/views.py:83
#, python-brace-format
msgid "Error enabling share: {error_message}"
msgstr ""
-#: plinth/modules/samba/views.py:106
+#: plinth/modules/samba/views.py:88
msgid "Share disabled."
msgstr ""
-#: plinth/modules/samba/views.py:111
+#: plinth/modules/samba/views.py:93
#, python-brace-format
msgid "Error disabling share: {error_message}"
msgstr ""
-#: plinth/modules/searx/__init__.py:41 plinth/modules/searx/manifest.py:24
-msgid "Searx"
-msgstr ""
-
-#: plinth/modules/searx/__init__.py:45
-msgid "Web Search"
-msgstr ""
-
-#: plinth/modules/searx/__init__.py:48
+#: plinth/modules/searx/__init__.py:25
msgid ""
"Searx is a privacy-respecting Internet metasearch engine. It aggregrates and "
"displays results from multiple search engines."
msgstr ""
-#: plinth/modules/searx/__init__.py:50
+#: plinth/modules/searx/__init__.py:27
msgid ""
"Searx can be used to avoid tracking and profiling by search engines. It "
"stores no cookies by default."
msgstr ""
-#: plinth/modules/searx/__init__.py:54
+#: plinth/modules/searx/__init__.py:31
msgid "Search the web"
msgstr ""
-#: plinth/modules/searx/forms.py:30
+#: plinth/modules/searx/__init__.py:47 plinth/modules/searx/manifest.py:9
+msgid "Searx"
+msgstr ""
+
+#: plinth/modules/searx/__init__.py:48
+msgid "Web Search"
+msgstr ""
+
+#: plinth/modules/searx/forms.py:15
msgid "Safe Search"
msgstr ""
-#: plinth/modules/searx/forms.py:31
+#: plinth/modules/searx/forms.py:16
msgid "Select the default family filter to apply to your search results."
msgstr ""
-#: plinth/modules/searx/forms.py:32
+#: plinth/modules/searx/forms.py:17
msgid "None"
msgstr ""
-#: plinth/modules/searx/forms.py:32
+#: plinth/modules/searx/forms.py:17
msgid "Moderate"
msgstr ""
-#: plinth/modules/searx/forms.py:32
+#: plinth/modules/searx/forms.py:17
msgid "Strict"
msgstr ""
-#: plinth/modules/searx/forms.py:35
+#: plinth/modules/searx/forms.py:20
msgid "Allow Public Access"
msgstr ""
-#: plinth/modules/searx/forms.py:36
+#: plinth/modules/searx/forms.py:21
msgid "Allow this application to be used by anyone who can reach it."
msgstr ""
-#: plinth/modules/searx/views.py:59 plinth/modules/searx/views.py:70
-#: plinth/modules/tor/views.py:149 plinth/modules/tor/views.py:176
+#: plinth/modules/searx/views.py:39 plinth/modules/searx/views.py:50
+#: plinth/modules/tor/views.py:130 plinth/modules/tor/views.py:157
msgid "Configuration updated."
msgstr ""
-#: plinth/modules/security/forms.py:28
+#: plinth/modules/security/forms.py:13
msgid "Restrict console logins (recommended)"
msgstr ""
-#: plinth/modules/security/forms.py:29
+#: plinth/modules/security/forms.py:14
msgid ""
"When this option is enabled, only users in the \"admin\" group will be able "
"to log in to console or via SSH. Console users may be able to access some "
"services without further authorization."
msgstr ""
-#: plinth/modules/security/forms.py:34
+#: plinth/modules/security/forms.py:19
msgid "Fail2Ban (recommended)"
msgstr ""
-#: plinth/modules/security/forms.py:35
+#: plinth/modules/security/forms.py:20
msgid ""
"When this option is enabled, Fail2Ban will limit brute force break-in "
"attempts to the SSH server and other enabled password protected internet-"
"services."
msgstr ""
-#: plinth/modules/security/templates/security.html:26
-#: plinth/modules/security/templates/security.html:28
+#: plinth/modules/security/templates/security.html:11
+#: plinth/modules/security/templates/security.html:13
msgid "Show security report"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:25
-#: plinth/modules/security/views.py:87
+#: plinth/modules/security/templates/security_report.html:10
+#: plinth/modules/security/views.py:71
msgid "Security Report"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:27
+#: plinth/modules/security/templates/security_report.html:12
#, python-format
msgid ""
"The installed version of FreedomBox has %(count)s reported security "
"vulnerabilities."
msgstr ""
-#: plinth/modules/security/templates/security_report.html:33
+#: plinth/modules/security/templates/security_report.html:18
msgid ""
"The following table lists the current reported number, and historical count, "
"of security vulnerabilities for each installed app."
msgstr ""
-#: plinth/modules/security/templates/security_report.html:39
+#: plinth/modules/security/templates/security_report.html:24
msgid ""
"For apps that provide services, the \"Sandboxed\" column shows whether "
"sandboxing features are in use. Sandboxing mitigates the impact of a "
"potentially compromised app to the rest of the system."
msgstr ""
-#: plinth/modules/security/templates/security_report.html:46
+#: plinth/modules/security/templates/security_report.html:31
msgid ""
"\"Sandbox Coverage\" is a score of how effectively the service is isolated "
"from the rest of the system. It is only displayed while the service is "
"running."
msgstr ""
-#: plinth/modules/security/templates/security_report.html:55
+#: plinth/modules/security/templates/security_report.html:40
msgid "App Name"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:56
+#: plinth/modules/security/templates/security_report.html:41
msgid "Current Vulnerabilities"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:57
+#: plinth/modules/security/templates/security_report.html:42
msgid "Past Vulnerabilities"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:58
+#: plinth/modules/security/templates/security_report.html:43
msgid "Sandboxed"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:59
+#: plinth/modules/security/templates/security_report.html:44
msgid "Sandbox Coverage"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:70
+#: plinth/modules/security/templates/security_report.html:55
msgid "N/A"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:72
+#: plinth/modules/security/templates/security_report.html:57
msgid "Yes"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:74
+#: plinth/modules/security/templates/security_report.html:59
msgid "No"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:81
+#: plinth/modules/security/templates/security_report.html:66
msgid "Not running"
msgstr ""
-#: plinth/modules/security/views.py:69
+#: plinth/modules/security/views.py:53
#, python-brace-format
msgid "Error setting restricted access: {exception}"
msgstr ""
-#: plinth/modules/security/views.py:72
+#: plinth/modules/security/views.py:56
msgid "Updated security configuration"
msgstr ""
-#: plinth/modules/shaarli/__init__.py:34 plinth/modules/shaarli/manifest.py:23
-msgid "Shaarli"
-msgstr ""
-
-#: plinth/modules/shaarli/__init__.py:36
-msgid "Bookmarks"
-msgstr ""
-
-#: plinth/modules/shaarli/__init__.py:39
+#: plinth/modules/shaarli/__init__.py:20
msgid "Shaarli allows you to save and share bookmarks."
msgstr ""
-#: plinth/modules/shaarli/__init__.py:40
+#: plinth/modules/shaarli/__init__.py:21
msgid ""
"When enabled, Shaarli will be available from /shaarli path on the web server. Note that Shaarli "
@@ -4382,22 +4475,22 @@ msgid ""
"initial visit."
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:35
-msgid "Shadowsocks"
+#: plinth/modules/shaarli/__init__.py:39 plinth/modules/shaarli/manifest.py:8
+msgid "Shaarli"
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:39
-msgid "Socks5 Proxy"
+#: plinth/modules/shaarli/__init__.py:40
+msgid "Bookmarks"
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:46
+#: plinth/modules/shadowsocks/__init__.py:25
msgid ""
"Shadowsocks is a lightweight and secure SOCKS5 proxy, designed to protect "
"your Internet traffic. It can be used to bypass Internet filtering and "
"censorship."
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:50
+#: plinth/modules/shadowsocks/__init__.py:29
#, python-brace-format
msgid ""
"Your {box_name} can run a Shadowsocks client, that can connect to a "
@@ -4406,149 +4499,153 @@ msgid ""
"the Shadowsocks server."
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:55
+#: plinth/modules/shadowsocks/__init__.py:34
msgid ""
"To use Shadowsocks after setup, set the SOCKS5 proxy URL in your device, "
"browser or application to http://freedombox_address:1080/"
msgstr ""
-#: plinth/modules/shadowsocks/forms.py:28
-#: plinth/modules/shadowsocks/forms.py:29
+#: plinth/modules/shadowsocks/__init__.py:50
+msgid "Shadowsocks"
+msgstr ""
+
+#: plinth/modules/shadowsocks/__init__.py:52
+msgid "Socks5 Proxy"
+msgstr ""
+
+#: plinth/modules/shadowsocks/forms.py:13
+#: plinth/modules/shadowsocks/forms.py:14
msgid "Recommended"
msgstr ""
-#: plinth/modules/shadowsocks/forms.py:52
+#: plinth/modules/shadowsocks/forms.py:37
msgid "Server"
msgstr ""
-#: plinth/modules/shadowsocks/forms.py:53
+#: plinth/modules/shadowsocks/forms.py:38
msgid "Server hostname or IP address"
msgstr ""
-#: plinth/modules/shadowsocks/forms.py:57
+#: plinth/modules/shadowsocks/forms.py:42
msgid "Server port number"
msgstr ""
-#: plinth/modules/shadowsocks/forms.py:60
+#: plinth/modules/shadowsocks/forms.py:45
msgid "Password used to encrypt data. Must match server password."
msgstr ""
-#: plinth/modules/shadowsocks/forms.py:65
+#: plinth/modules/shadowsocks/forms.py:50
msgid "Encryption method. Must match setting on server."
msgstr ""
-#: plinth/modules/sharing/__init__.py:34
-msgid "Sharing"
-msgstr ""
-
-#: plinth/modules/sharing/__init__.py:38
+#: plinth/modules/sharing/__init__.py:21
#, python-brace-format
msgid ""
"Sharing allows you to share files and folders on your {box_name} over the "
"web with chosen groups of users."
msgstr ""
-#: plinth/modules/sharing/forms.py:33
+#: plinth/modules/sharing/__init__.py:38
+msgid "Sharing"
+msgstr ""
+
+#: plinth/modules/sharing/forms.py:18
msgid "Name of the share"
msgstr ""
-#: plinth/modules/sharing/forms.py:35
+#: plinth/modules/sharing/forms.py:20
msgid ""
"A lowercase alpha-numeric string that uniquely identifies a share. Example: "
"media."
msgstr ""
-#: plinth/modules/sharing/forms.py:39
+#: plinth/modules/sharing/forms.py:24
msgid "Path to share"
msgstr ""
-#: plinth/modules/sharing/forms.py:40
+#: plinth/modules/sharing/forms.py:25
msgid "Disk path to a folder on this server that you intend to share."
msgstr ""
-#: plinth/modules/sharing/forms.py:43
+#: plinth/modules/sharing/forms.py:28
msgid "Public share"
msgstr ""
-#: plinth/modules/sharing/forms.py:44
+#: plinth/modules/sharing/forms.py:29
msgid "Make files in this folder available to anyone with the link."
msgstr ""
-#: plinth/modules/sharing/forms.py:48
+#: plinth/modules/sharing/forms.py:33
msgid "User groups that can read the files in the share"
msgstr ""
-#: plinth/modules/sharing/forms.py:50
+#: plinth/modules/sharing/forms.py:35
msgid ""
"Users of the selected user groups will be able to read the files in the "
"share."
msgstr ""
-#: plinth/modules/sharing/forms.py:67
+#: plinth/modules/sharing/forms.py:52
msgid "A share with this name already exists."
msgstr ""
-#: plinth/modules/sharing/forms.py:78
+#: plinth/modules/sharing/forms.py:63
msgid "Shares should be either public or shared with at least one group"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:39
-#: plinth/modules/sharing/templates/sharing.html:42
+#: plinth/modules/sharing/templates/sharing.html:24
+#: plinth/modules/sharing/templates/sharing.html:27
msgid "Add share"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:47
+#: plinth/modules/sharing/templates/sharing.html:32
msgid "No shares currently configured."
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:53
+#: plinth/modules/sharing/templates/sharing.html:38
msgid "Disk Path"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:54
+#: plinth/modules/sharing/templates/sharing.html:39
msgid "Shared Over"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:55
+#: plinth/modules/sharing/templates/sharing.html:40
msgid "With Groups"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:73
+#: plinth/modules/sharing/templates/sharing.html:58
msgid "public access"
msgstr ""
-#: plinth/modules/sharing/views.py:55
+#: plinth/modules/sharing/views.py:39
msgid "Share added."
msgstr ""
-#: plinth/modules/sharing/views.py:60
+#: plinth/modules/sharing/views.py:44
msgid "Add Share"
msgstr ""
-#: plinth/modules/sharing/views.py:75
+#: plinth/modules/sharing/views.py:59
msgid "Share edited."
msgstr ""
-#: plinth/modules/sharing/views.py:80
+#: plinth/modules/sharing/views.py:64
msgid "Edit Share"
msgstr ""
-#: plinth/modules/sharing/views.py:111
+#: plinth/modules/sharing/views.py:95
msgid "Share deleted."
msgstr ""
-#: plinth/modules/snapshot/__init__.py:37
-msgid "Storage Snapshots"
-msgstr ""
-
-#: plinth/modules/snapshot/__init__.py:40
+#: plinth/modules/snapshot/__init__.py:23
msgid ""
"Snapshots allows creating and managing btrfs file system snapshots. These "
"can be used to roll back the system to a previously known good state in case "
"of unwanted changes to the system."
msgstr ""
-#: plinth/modules/snapshot/__init__.py:44
+#: plinth/modules/snapshot/__init__.py:27
#, no-python-format
msgid ""
"Snapshots are taken periodically (called timeline snapshots) and also before "
@@ -4556,192 +4653,192 @@ msgid ""
"cleaned up according to the settings below."
msgstr ""
-#: plinth/modules/snapshot/__init__.py:47
+#: plinth/modules/snapshot/__init__.py:30
msgid ""
"Snapshots currently work on btrfs file systems only and on the root "
"partition only. Snapshots are not a replacement for backups since they can only be stored on the same partition. "
msgstr ""
-#: plinth/modules/snapshot/forms.py:27
+#: plinth/modules/snapshot/__init__.py:52
+msgid "Storage Snapshots"
+msgstr ""
+
+#: plinth/modules/snapshot/forms.py:12
msgid "Free Disk Space to Maintain"
msgstr ""
-#: plinth/modules/snapshot/forms.py:28
+#: plinth/modules/snapshot/forms.py:13
msgid ""
"Maintain this percentage of free space on the disk. If free space falls "
"below this value, older snapshots are removed until this much free space is "
"regained. The default value is 30%."
msgstr ""
-#: plinth/modules/snapshot/forms.py:35
+#: plinth/modules/snapshot/forms.py:20
msgid "Timeline Snapshots"
msgstr ""
-#: plinth/modules/snapshot/forms.py:36
+#: plinth/modules/snapshot/forms.py:21
msgid ""
"Enable or disable timeline snapshots (hourly, daily, monthly and yearly)."
msgstr ""
-#: plinth/modules/snapshot/forms.py:41
+#: plinth/modules/snapshot/forms.py:26
msgid "Software Installation Snapshots"
msgstr ""
-#: plinth/modules/snapshot/forms.py:42
+#: plinth/modules/snapshot/forms.py:27
msgid "Enable or disable snapshots before and after software installation"
msgstr ""
-#: plinth/modules/snapshot/forms.py:47
+#: plinth/modules/snapshot/forms.py:32
msgid "Hourly Snapshots Limit"
msgstr ""
-#: plinth/modules/snapshot/forms.py:48
+#: plinth/modules/snapshot/forms.py:33
msgid "Keep a maximum of this many hourly snapshots."
msgstr ""
-#: plinth/modules/snapshot/forms.py:51
+#: plinth/modules/snapshot/forms.py:36
msgid "Daily Snapshots Limit"
msgstr ""
-#: plinth/modules/snapshot/forms.py:52
+#: plinth/modules/snapshot/forms.py:37
msgid "Keep a maximum of this many daily snapshots."
msgstr ""
-#: plinth/modules/snapshot/forms.py:55
+#: plinth/modules/snapshot/forms.py:40
msgid "Weekly Snapshots Limit"
msgstr ""
-#: plinth/modules/snapshot/forms.py:56
+#: plinth/modules/snapshot/forms.py:41
msgid "Keep a maximum of this many weekly snapshots."
msgstr ""
-#: plinth/modules/snapshot/forms.py:59
+#: plinth/modules/snapshot/forms.py:44
msgid "Monthly Snapshots Limit"
msgstr ""
-#: plinth/modules/snapshot/forms.py:60
+#: plinth/modules/snapshot/forms.py:45
msgid "Keep a maximum of this many monthly snapshots."
msgstr ""
-#: plinth/modules/snapshot/forms.py:63
+#: plinth/modules/snapshot/forms.py:48
msgid "Yearly Snapshots Limit"
msgstr ""
-#: plinth/modules/snapshot/forms.py:64
+#: plinth/modules/snapshot/forms.py:49
msgid ""
"Keep a maximum of this many yearly snapshots. The default value is 0 "
"(disabled)."
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:27
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:12
msgid "Delete the following snapshots permanently?"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:31
-#: plinth/modules/snapshot/templates/snapshot_manage.html:43
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:39
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:16
+#: plinth/modules/snapshot/templates/snapshot_manage.html:28
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:24
msgid "Number"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:32
-#: plinth/modules/snapshot/templates/snapshot_manage.html:44
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:40
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:17
+#: plinth/modules/snapshot/templates/snapshot_manage.html:29
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:25
msgid "Date"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:52
-#: plinth/modules/snapshot/templates/snapshot_manage.html:37
-#: plinth/modules/snapshot/views.py:196
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:37
+#: plinth/modules/snapshot/templates/snapshot_manage.html:22
+#: plinth/modules/snapshot/views.py:175
msgid "Delete Snapshots"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_manage.html:33
+#: plinth/modules/snapshot/templates/snapshot_manage.html:18
msgid "Create Snapshot"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_manage.html:46
+#: plinth/modules/snapshot/templates/snapshot_manage.html:31
msgid "Rollback"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_manage.html:57
+#: plinth/modules/snapshot/templates/snapshot_manage.html:42
msgid "active"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_manage.html:66
+#: plinth/modules/snapshot/templates/snapshot_manage.html:51
#, python-format
msgid "Rollback to snapshot #%(number)s"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_not_supported.html:26
+#: plinth/modules/snapshot/templates/snapshot_not_supported.html:11
#, python-format
msgid ""
"Your have a filesystem of type %(fs_type)s. Snapshots are "
"currently only available on %(types_supported)s filesystems."
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:27
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:12
msgid "Roll back the system to this snapshot?"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:30
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:15
msgid ""
"A new snapshot with the current state of the file system will be "
"automatically created. You will be able to undo a rollback by reverting to "
"the newly created snapshot."
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:57
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:42
#, python-format
msgid "Rollback to Snapshot #%(number)s"
msgstr ""
-#: plinth/modules/snapshot/views.py:45
+#: plinth/modules/snapshot/views.py:30
msgid "Manage Snapshots"
msgstr ""
-#: plinth/modules/snapshot/views.py:98
+#: plinth/modules/snapshot/views.py:79
msgid "Created snapshot."
msgstr ""
-#: plinth/modules/snapshot/views.py:156
+#: plinth/modules/snapshot/views.py:135
msgid "Storage snapshots configuration updated"
msgstr ""
-#: plinth/modules/snapshot/views.py:160 plinth/modules/tor/views.py:79
+#: plinth/modules/snapshot/views.py:139 plinth/modules/tor/views.py:60
#, python-brace-format
msgid "Action error: {0} [{1}] [{2}]"
msgstr ""
-#: plinth/modules/snapshot/views.py:175
+#: plinth/modules/snapshot/views.py:154
msgid "Deleted all snapshots"
msgstr ""
-#: plinth/modules/snapshot/views.py:179
+#: plinth/modules/snapshot/views.py:158
msgid "Deleted selected snapshots"
msgstr ""
-#: plinth/modules/snapshot/views.py:184
+#: plinth/modules/snapshot/views.py:163
msgid "Snapshot is currently in use. Please try again later."
msgstr ""
-#: plinth/modules/snapshot/views.py:207
+#: plinth/modules/snapshot/views.py:186
#, python-brace-format
msgid "Rolled back to snapshot #{number}."
msgstr ""
-#: plinth/modules/snapshot/views.py:210
+#: plinth/modules/snapshot/views.py:189
msgid "The system must be restarted to complete the rollback."
msgstr ""
-#: plinth/modules/snapshot/views.py:222
+#: plinth/modules/snapshot/views.py:201
msgid "Rollback to Snapshot"
msgstr ""
-#: plinth/modules/ssh/__init__.py:43
-msgid "Secure Shell (SSH) Server"
-msgstr ""
-
-#: plinth/modules/ssh/__init__.py:46
+#: plinth/modules/ssh/__init__.py:29
msgid ""
"A Secure Shell server uses the secure shell protocol to accept connections "
"from remote computers. An authorized remote computer can perform "
@@ -4749,56 +4846,56 @@ msgid ""
"connections."
msgstr ""
-#: plinth/modules/ssh/forms.py:30
+#: plinth/modules/ssh/__init__.py:50
+msgid "Secure Shell (SSH) Server"
+msgstr ""
+
+#: plinth/modules/ssh/forms.py:15
msgid "Disable password authentication"
msgstr ""
-#: plinth/modules/ssh/forms.py:31
+#: plinth/modules/ssh/forms.py:16
msgid ""
"Improves security by preventing password guessing. Ensure that you have "
"setup SSH keys in your administrator user account before enabling this "
"option."
msgstr ""
-#: plinth/modules/ssh/templates/ssh.html:26
+#: plinth/modules/ssh/templates/ssh.html:11
msgid "Server Fingerprints"
msgstr ""
-#: plinth/modules/ssh/templates/ssh.html:29
+#: plinth/modules/ssh/templates/ssh.html:14
msgid ""
"When connecting to the server, ensure that the fingerprint shown by the SSH "
"client matches one of these fingerprints."
msgstr ""
-#: plinth/modules/ssh/templates/ssh.html:38
+#: plinth/modules/ssh/templates/ssh.html:23
msgid "Algorithm"
msgstr ""
-#: plinth/modules/ssh/templates/ssh.html:39
+#: plinth/modules/ssh/templates/ssh.html:24
msgid "Fingerprint"
msgstr ""
-#: plinth/modules/ssh/views.py:66
+#: plinth/modules/ssh/views.py:48
msgid "SSH authentication with password disabled."
msgstr ""
-#: plinth/modules/ssh/views.py:69
+#: plinth/modules/ssh/views.py:51
msgid "SSH authentication with password enabled."
msgstr ""
-#: plinth/modules/sso/__init__.py:30
+#: plinth/modules/sso/__init__.py:33
msgid "Single Sign On"
msgstr ""
-#: plinth/modules/sso/templates/login.html:35
+#: plinth/modules/sso/templates/login.html:20
msgid "Login"
msgstr ""
-#: plinth/modules/storage/__init__.py:39 plinth/modules/storage/__init__.py:331
-msgid "Storage"
-msgstr ""
-
-#: plinth/modules/storage/__init__.py:47
+#: plinth/modules/storage/__init__.py:30
#, python-brace-format
msgid ""
"This module allows you to manage storage media attached to your {box_name}. "
@@ -4806,145 +4903,149 @@ msgid ""
"media, expand the root partition etc."
msgstr ""
-#: plinth/modules/storage/__init__.py:224
+#: plinth/modules/storage/__init__.py:52 plinth/modules/storage/__init__.py:318
+msgid "Storage"
+msgstr ""
+
+#: plinth/modules/storage/__init__.py:211
#, python-brace-format
msgid "{disk_size:.1f} bytes"
msgstr ""
-#: plinth/modules/storage/__init__.py:228
+#: plinth/modules/storage/__init__.py:215
#, python-brace-format
msgid "{disk_size:.1f} KiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:232
+#: plinth/modules/storage/__init__.py:219
#, python-brace-format
msgid "{disk_size:.1f} MiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:236
+#: plinth/modules/storage/__init__.py:223
#, python-brace-format
msgid "{disk_size:.1f} GiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:239
+#: plinth/modules/storage/__init__.py:226
#, python-brace-format
msgid "{disk_size:.1f} TiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:246
+#: plinth/modules/storage/__init__.py:233
msgid "The operation failed."
msgstr ""
-#: plinth/modules/storage/__init__.py:248
+#: plinth/modules/storage/__init__.py:235
msgid "The operation was cancelled."
msgstr ""
-#: plinth/modules/storage/__init__.py:250
+#: plinth/modules/storage/__init__.py:237
msgid "The device is already unmounting."
msgstr ""
-#: plinth/modules/storage/__init__.py:252
+#: plinth/modules/storage/__init__.py:239
msgid "The operation is not supported due to missing driver/tool support."
msgstr ""
-#: plinth/modules/storage/__init__.py:255
+#: plinth/modules/storage/__init__.py:242
msgid "The operation timed out."
msgstr ""
-#: plinth/modules/storage/__init__.py:257
+#: plinth/modules/storage/__init__.py:244
msgid "The operation would wake up a disk that is in a deep-sleep state."
msgstr ""
-#: plinth/modules/storage/__init__.py:260
+#: plinth/modules/storage/__init__.py:247
msgid "Attempting to unmount a device that is busy."
msgstr ""
-#: plinth/modules/storage/__init__.py:262
+#: plinth/modules/storage/__init__.py:249
msgid "The operation has already been cancelled."
msgstr ""
-#: plinth/modules/storage/__init__.py:268
+#: plinth/modules/storage/__init__.py:255
msgid "Not authorized to perform the requested operation."
msgstr ""
-#: plinth/modules/storage/__init__.py:270
+#: plinth/modules/storage/__init__.py:257
msgid "The device is already mounted."
msgstr ""
-#: plinth/modules/storage/__init__.py:272
+#: plinth/modules/storage/__init__.py:259
msgid "The device is not mounted."
msgstr ""
-#: plinth/modules/storage/__init__.py:275
+#: plinth/modules/storage/__init__.py:262
msgid "Not permitted to use the requested option."
msgstr ""
-#: plinth/modules/storage/__init__.py:278
+#: plinth/modules/storage/__init__.py:265
msgid "The device is mounted by another user."
msgstr ""
-#: plinth/modules/storage/__init__.py:326
+#: plinth/modules/storage/__init__.py:313
#, no-python-format, python-brace-format
msgid "Low space on system partition: {percent_used}% used, {free_space} free."
msgstr ""
-#: plinth/modules/storage/__init__.py:328
+#: plinth/modules/storage/__init__.py:315
msgid "Low disk space"
msgstr ""
-#: plinth/modules/storage/forms.py:79
+#: plinth/modules/storage/forms.py:64
msgid "Invalid directory name."
msgstr ""
-#: plinth/modules/storage/forms.py:97
+#: plinth/modules/storage/forms.py:82
msgid "Directory does not exist."
msgstr ""
-#: plinth/modules/storage/forms.py:99
+#: plinth/modules/storage/forms.py:84
msgid "Path is not a directory."
msgstr ""
-#: plinth/modules/storage/forms.py:102
+#: plinth/modules/storage/forms.py:87
msgid "Directory is not readable by the user."
msgstr ""
-#: plinth/modules/storage/forms.py:105
+#: plinth/modules/storage/forms.py:90
msgid "Directory is not writable by the user."
msgstr ""
-#: plinth/modules/storage/forms.py:110
+#: plinth/modules/storage/forms.py:95
msgid "Directory"
msgstr ""
-#: plinth/modules/storage/forms.py:113
+#: plinth/modules/storage/forms.py:98
msgid "Subdirectory (optional)"
msgstr ""
-#: plinth/modules/storage/forms.py:160
+#: plinth/modules/storage/forms.py:145
msgid "Share"
msgstr ""
-#: plinth/modules/storage/forms.py:168
+#: plinth/modules/storage/forms.py:153
msgid "Other directory (specify below)"
msgstr ""
-#: plinth/modules/storage/templates/storage.html:35
+#: plinth/modules/storage/templates/storage.html:20
msgid "The following storage devices are in use:"
msgstr ""
-#: plinth/modules/storage/templates/storage.html:41
+#: plinth/modules/storage/templates/storage.html:26
msgid "Label"
msgstr ""
-#: plinth/modules/storage/templates/storage.html:42
+#: plinth/modules/storage/templates/storage.html:27
msgid "Mount Point"
msgstr ""
-#: plinth/modules/storage/templates/storage.html:90
+#: plinth/modules/storage/templates/storage.html:75
msgid "Partition Expansion"
msgstr ""
-#: plinth/modules/storage/templates/storage.html:92
+#: plinth/modules/storage/templates/storage.html:77
#, python-format
msgid ""
"There is %(expandable_root_size)s of unallocated space available after your "
@@ -4952,13 +5053,13 @@ msgid ""
"will provide you additional free space to store your files."
msgstr ""
-#: plinth/modules/storage/templates/storage.html:102
-#: plinth/modules/storage/templates/storage_expand.html:39
-#: plinth/modules/storage/views.py:76
+#: plinth/modules/storage/templates/storage.html:87
+#: plinth/modules/storage/templates/storage_expand.html:24
+#: plinth/modules/storage/views.py:58
msgid "Expand Root Partition"
msgstr ""
-#: plinth/modules/storage/templates/storage_expand.html:29
+#: plinth/modules/storage/templates/storage_expand.html:14
#, python-format
msgid ""
"Please backup your data before proceeding. After this operation, "
@@ -4966,39 +5067,30 @@ msgid ""
"root partition."
msgstr ""
-#: plinth/modules/storage/views.py:88
+#: plinth/modules/storage/views.py:70
#, python-brace-format
msgid "Error expanding partition: {exception}"
msgstr ""
-#: plinth/modules/storage/views.py:91
+#: plinth/modules/storage/views.py:73
msgid "Partition expanded successfully."
msgstr ""
-#: plinth/modules/storage/views.py:109
+#: plinth/modules/storage/views.py:91
#, python-brace-format
msgid "{drive_vendor} {drive_model} can be safely unplugged."
msgstr ""
-#: plinth/modules/storage/views.py:113
+#: plinth/modules/storage/views.py:95
msgid "Device can be safely unplugged."
msgstr ""
-#: plinth/modules/storage/views.py:123
+#: plinth/modules/storage/views.py:105
#, python-brace-format
msgid "Error ejecting device: {error_message}"
msgstr ""
-#: plinth/modules/syncthing/__init__.py:40
-#: plinth/modules/syncthing/manifest.py:28
-msgid "Syncthing"
-msgstr ""
-
-#: plinth/modules/syncthing/__init__.py:44
-msgid "File Synchronization"
-msgstr ""
-
-#: plinth/modules/syncthing/__init__.py:47
+#: plinth/modules/syncthing/__init__.py:26
msgid ""
"Syncthing is an application to synchronize files across multiple devices, e."
"g. your desktop computer and mobile phone. Creation, modification, or "
@@ -5006,7 +5098,7 @@ msgid ""
"other devices that also run Syncthing."
msgstr ""
-#: plinth/modules/syncthing/__init__.py:52
+#: plinth/modules/syncthing/__init__.py:31
#, python-brace-format
msgid ""
"Running Syncthing on {box_name} provides an extra synchronization point for "
@@ -5017,19 +5109,20 @@ msgid ""
"{box_name} is only available for users belonging to the \"admin\" group."
msgstr ""
-#: plinth/modules/syncthing/__init__.py:63
+#: plinth/modules/syncthing/__init__.py:40
msgid "Administer Syncthing application"
msgstr ""
-#: plinth/modules/tahoe/__init__.py:43
-msgid "Tahoe-LAFS"
+#: plinth/modules/syncthing/__init__.py:54
+#: plinth/modules/syncthing/manifest.py:13
+msgid "Syncthing"
msgstr ""
-#: plinth/modules/tahoe/__init__.py:47
-msgid "Distributed File Storage"
+#: plinth/modules/syncthing/__init__.py:55
+msgid "File Synchronization"
msgstr ""
-#: plinth/modules/tahoe/__init__.py:134
+#: plinth/modules/tahoe/__init__.py:30
msgid ""
"Tahoe-LAFS is a decentralized secure file storage system. It uses provider "
"independent security to store files over a distributed network of storage "
@@ -5037,7 +5130,7 @@ msgid ""
"remaining nodes."
msgstr ""
-#: plinth/modules/tahoe/__init__.py:139
+#: plinth/modules/tahoe/__init__.py:35
#, python-brace-format
msgid ""
"This {box_name} hosts a storage node and an introducer by default. "
@@ -5045,7 +5138,15 @@ msgid ""
"other storage nodes."
msgstr ""
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:33
+#: plinth/modules/tahoe/__init__.py:66
+msgid "Tahoe-LAFS"
+msgstr ""
+
+#: plinth/modules/tahoe/__init__.py:68
+msgid "Distributed File Storage"
+msgstr ""
+
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:17
#, python-format
msgid ""
"The Tahoe-LAFS server domain is set to %(domain_name)s. Changing the "
@@ -5054,37 +5155,33 @@ msgid ""
"%(domain_name)s:5678\">https://%(domain_name)s:5678."
msgstr ""
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:55
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:39
msgid "Local introducer"
msgstr ""
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:43
#: plinth/modules/tahoe/templates/tahoe-post-setup.html:59
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:75
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:92
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:76
msgid "Pet Name"
msgstr ""
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:72
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:56
msgid "Add new introducer"
msgstr ""
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:83
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:67
msgid "Add"
msgstr ""
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:88
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:72
msgid "Connected introducers"
msgstr ""
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:105
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:89
msgid "Remove"
msgstr ""
-#: plinth/modules/tor/__init__.py:47
-msgid "Tor"
-msgstr ""
-
-#: plinth/modules/tor/__init__.py:52
+#: plinth/modules/tor/__init__.py:33
msgid ""
"Tor is an anonymous communication system. You can learn more about it from "
"the Tor Project website. For "
@@ -5093,76 +5190,80 @@ msgid ""
"\">Tor Browser."
msgstr ""
-#: plinth/modules/tor/__init__.py:83
+#: plinth/modules/tor/__init__.py:55
+msgid "Tor"
+msgstr ""
+
+#: plinth/modules/tor/__init__.py:66
msgid "Tor Onion Service"
msgstr ""
-#: plinth/modules/tor/__init__.py:87
+#: plinth/modules/tor/__init__.py:70
msgid "Tor Socks Proxy"
msgstr ""
-#: plinth/modules/tor/__init__.py:91
+#: plinth/modules/tor/__init__.py:74
msgid "Tor Bridge Relay"
msgstr ""
-#: plinth/modules/tor/__init__.py:112
+#: plinth/modules/tor/__init__.py:95
msgid "Tor relay port available"
msgstr ""
-#: plinth/modules/tor/__init__.py:122
+#: plinth/modules/tor/__init__.py:105
msgid "Obfs3 transport registered"
msgstr ""
-#: plinth/modules/tor/__init__.py:132
+#: plinth/modules/tor/__init__.py:115
msgid "Obfs4 transport registered"
msgstr ""
-#: plinth/modules/tor/__init__.py:225
+#: plinth/modules/tor/__init__.py:208
#, python-brace-format
msgid "Access URL {url} on tcp{kind} via Tor"
msgstr ""
-#: plinth/modules/tor/__init__.py:236
+#: plinth/modules/tor/__init__.py:219
#, python-brace-format
msgid "Confirm Tor usage at {url} on tcp{kind}"
msgstr ""
-#: plinth/modules/tor/forms.py:46
+#: plinth/modules/tor/forms.py:31
msgid ""
"Enter a valid bridge with this format: [transport] IP:ORPort [fingerprint]"
msgstr ""
-#: plinth/modules/tor/forms.py:88
+#: plinth/modules/tor/forms.py:73
msgid "Enable Tor"
msgstr ""
-#: plinth/modules/tor/forms.py:90
+#: plinth/modules/tor/forms.py:75
msgid "Use upstream bridges to connect to Tor network"
msgstr ""
-#: plinth/modules/tor/forms.py:92
+#: plinth/modules/tor/forms.py:77
msgid ""
"When enabled, the bridges configured below will be used to connect to the "
"Tor network. Use this option if your Internet Service Provider (ISP) blocks "
"or censors connections to the Tor Network. This will disable relay modes."
msgstr ""
-#: plinth/modules/tor/forms.py:97
+#: plinth/modules/tor/forms.py:82
msgid "Upstream bridges"
msgstr ""
-#: plinth/modules/tor/forms.py:99
+#: plinth/modules/tor/forms.py:84
msgid ""
"You can get some bridges from https://bridges.torproject.org/ and copy/paste the bridge information "
"here. Currently supported transports are none, obfs3, obfs4 and scamblesuit."
msgstr ""
-#: plinth/modules/tor/forms.py:105
+#: plinth/modules/tor/forms.py:90
msgid "Enable Tor relay"
msgstr ""
-#: plinth/modules/tor/forms.py:106
+#: plinth/modules/tor/forms.py:91
#, python-brace-format
msgid ""
"When enabled, your {box_name} will run a Tor relay and donate bandwidth to "
@@ -5170,22 +5271,22 @@ msgid ""
"download bandwidth."
msgstr ""
-#: plinth/modules/tor/forms.py:111
+#: plinth/modules/tor/forms.py:96
msgid "Enable Tor bridge relay"
msgstr ""
-#: plinth/modules/tor/forms.py:113
+#: plinth/modules/tor/forms.py:98
msgid ""
"When enabled, relay information is published in the Tor bridge database "
"instead of public Tor relay database making it harder to censor this node. "
"This helps others circumvent censorship."
msgstr ""
-#: plinth/modules/tor/forms.py:118
+#: plinth/modules/tor/forms.py:103
msgid "Enable Tor Hidden Service"
msgstr ""
-#: plinth/modules/tor/forms.py:120
+#: plinth/modules/tor/forms.py:105
#, python-brace-format
msgid ""
"A hidden service will allow {box_name} to provide selected services (such as "
@@ -5193,208 +5294,204 @@ msgid ""
"anonymity yet."
msgstr ""
-#: plinth/modules/tor/forms.py:125
+#: plinth/modules/tor/forms.py:110
msgid "Download software packages over Tor"
msgstr ""
-#: plinth/modules/tor/forms.py:126
+#: plinth/modules/tor/forms.py:111
msgid ""
"When enabled, software will be downloaded over the Tor network for "
"installations and upgrades. This adds a degree of privacy and security "
"during software downloads."
msgstr ""
-#: plinth/modules/tor/forms.py:141
+#: plinth/modules/tor/forms.py:126
msgid "Specify at least one upstream bridge to use upstream bridges."
msgstr ""
-#: plinth/modules/tor/manifest.py:29
+#: plinth/modules/tor/manifest.py:14
msgid "Tor Browser"
msgstr ""
-#: plinth/modules/tor/manifest.py:45
+#: plinth/modules/tor/manifest.py:30
msgid "Orbot: Proxy with Tor"
msgstr ""
-#: plinth/modules/tor/templates/tor.html:41
+#: plinth/modules/tor/templates/tor.html:26
msgid "Tor configuration is being updated"
msgstr ""
-#: plinth/modules/tor/templates/tor.html:50
+#: plinth/modules/tor/templates/tor.html:35
msgid "Onion Service"
msgstr ""
-#: plinth/modules/tor/templates/tor.html:52
+#: plinth/modules/tor/templates/tor.html:37
msgid "Ports"
msgstr ""
-#: plinth/modules/tor/templates/tor.html:82
+#: plinth/modules/tor/templates/tor.html:67
msgid "Relay"
msgstr ""
-#: plinth/modules/tor/templates/tor.html:84
+#: plinth/modules/tor/templates/tor.html:69
#, python-format
msgid ""
"If your %(box_name)s is behind a router or firewall, you should make sure "
"the following ports are open, and port-forwarded, if necessary:"
msgstr ""
-#: plinth/modules/tor/templates/tor.html:112
+#: plinth/modules/tor/templates/tor.html:97
msgid "SOCKS"
msgstr ""
-#: plinth/modules/tor/templates/tor.html:115
+#: plinth/modules/tor/templates/tor.html:100
#, python-format
msgid "A Tor SOCKS port is available on your %(box_name)s on TCP port 9050."
msgstr ""
-#: plinth/modules/transmission/__init__.py:41
-#: plinth/modules/transmission/manifest.py:24
-msgid "Transmission"
-msgstr ""
-
-#: plinth/modules/transmission/__init__.py:48
+#: plinth/modules/transmission/__init__.py:27
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/ttrss/__init__.py:43 plinth/modules/ttrss/manifest.py:34
-msgid "Tiny Tiny RSS"
+#: plinth/modules/transmission/__init__.py:48
+#: plinth/modules/transmission/manifest.py:9
+msgid "Transmission"
msgstr ""
-#: plinth/modules/ttrss/__init__.py:47
-msgid "News Feed Reader"
-msgstr ""
-
-#: plinth/modules/ttrss/__init__.py:50
+#: plinth/modules/ttrss/__init__.py:29
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:54
+#: plinth/modules/ttrss/__init__.py:33
#, python-brace-format
msgid ""
"When enabled, Tiny Tiny RSS can be accessed by any user with a {box_name} login."
msgstr ""
-#: plinth/modules/ttrss/__init__.py:58
+#: plinth/modules/ttrss/__init__.py:37
msgid ""
"When using a mobile or desktop application for Tiny Tiny RSS, use the URL /tt-rss-app for "
"connecting."
msgstr ""
-#: plinth/modules/ttrss/__init__.py:65
+#: plinth/modules/ttrss/__init__.py:42
msgid "Read and subscribe to news feeds"
msgstr ""
-#: plinth/modules/ttrss/manifest.py:25
+#: plinth/modules/ttrss/__init__.py:56 plinth/modules/ttrss/manifest.py:19
+msgid "Tiny Tiny RSS"
+msgstr ""
+
+#: plinth/modules/ttrss/__init__.py:57
+msgid "News Feed Reader"
+msgstr ""
+
+#: plinth/modules/ttrss/manifest.py:10
msgid "Tiny Tiny RSS (Fork)"
msgstr ""
-#: plinth/modules/upgrades/__init__.py:37 plinth/templates/setup.html:89
-msgid "Update"
-msgstr ""
-
-#: plinth/modules/upgrades/__init__.py:40
+#: plinth/modules/upgrades/__init__.py:23
msgid "Check for and apply the latest software and security updates."
msgstr ""
-#: plinth/modules/upgrades/__init__.py:84
+#: plinth/modules/upgrades/__init__.py:38 plinth/templates/setup.html:74
+msgid "Update"
+msgstr ""
+
+#: plinth/modules/upgrades/__init__.py:71
msgid "FreedomBox Updated"
msgstr ""
-#: plinth/modules/upgrades/forms.py:28
+#: plinth/modules/upgrades/forms.py:13
msgid "Enable auto-update"
msgstr ""
-#: plinth/modules/upgrades/forms.py:29
+#: plinth/modules/upgrades/forms.py:14
msgid "When enabled, FreedomBox automatically updates once a day."
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades-new-release.html:24
+#: plinth/modules/upgrades/templates/upgrades-new-release.html:9
#, python-format
msgid "%(box_name)s Updated"
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades-new-release.html:28
+#: plinth/modules/upgrades/templates/upgrades-new-release.html:13
#, python-format
msgid ""
"%(box_name)s has been updated to version %(version)s. See the release announcement."
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades-new-release.html:37
-#: plinth/templates/notifications.html:59
+#: plinth/modules/upgrades/templates/upgrades-new-release.html:22
+#: plinth/templates/notifications.html:44
msgid "Dismiss"
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades.html:45
+#: plinth/modules/upgrades/templates/upgrades.html:30
msgid "Update now"
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades.html:54
+#: plinth/modules/upgrades/templates/upgrades.html:39
msgid "Updating..."
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades.html:59
+#: plinth/modules/upgrades/templates/upgrades.html:44
msgid ""
"This may take a long time to complete. During an update, "
"you cannot install apps. Also, this web interface may be temporarily "
"unavailable and show an error. In that case, refresh the page to continue."
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades.html:73
+#: plinth/modules/upgrades/templates/upgrades.html:58
msgid "Toggle recent update logs"
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades_configure.html:26
-#: plinth/modules/upgrades/templates/upgrades_configure.html:27
-#: plinth/modules/upgrades/views.py:107
+#: plinth/modules/upgrades/templates/upgrades_configure.html:11
+#: plinth/modules/upgrades/templates/upgrades_configure.html:12
+#: plinth/modules/upgrades/views.py:89
msgid "Manual update"
msgstr ""
-#: plinth/modules/upgrades/views.py:66
+#: plinth/modules/upgrades/views.py:48
#, python-brace-format
msgid "Error when configuring unattended-upgrades: {error}"
msgstr ""
-#: plinth/modules/upgrades/views.py:70
+#: plinth/modules/upgrades/views.py:52
msgid "Automatic upgrades enabled"
msgstr ""
-#: plinth/modules/upgrades/views.py:73
+#: plinth/modules/upgrades/views.py:55
msgid "Automatic upgrades disabled"
msgstr ""
-#: plinth/modules/upgrades/views.py:75
+#: plinth/modules/upgrades/views.py:57
msgid "Settings unchanged"
msgstr ""
-#: plinth/modules/upgrades/views.py:101
+#: plinth/modules/upgrades/views.py:83
msgid "Upgrade process started."
msgstr ""
-#: plinth/modules/upgrades/views.py:104
+#: plinth/modules/upgrades/views.py:86
msgid "Starting upgrade failed."
msgstr ""
-#: plinth/modules/users/__init__.py:51
-msgid "Users and Groups"
-msgstr ""
-
-#: plinth/modules/users/__init__.py:54
+#: plinth/modules/users/__init__.py:37
msgid ""
"Create and managed user accounts. These accounts serve as centralized "
"authentication mechanism for most apps. Some apps further require a user "
"account to be part of a group to authorize the user to access the app."
msgstr ""
-#: plinth/modules/users/__init__.py:59
+#: plinth/modules/users/__init__.py:42
#, python-brace-format
msgid ""
"Any user may login to {box_name} web interface to see a list of apps "
@@ -5402,33 +5499,37 @@ msgid ""
"group may alter apps or system settings."
msgstr ""
-#: plinth/modules/users/__init__.py:128
+#: plinth/modules/users/__init__.py:64
+msgid "Users and Groups"
+msgstr ""
+
+#: plinth/modules/users/__init__.py:115
#, python-brace-format
msgid "Check LDAP entry \"{search_item}\""
msgstr ""
-#: plinth/modules/users/forms.py:43
+#: plinth/modules/users/forms.py:28
msgid "Access to all services and system settings"
msgstr ""
-#: plinth/modules/users/forms.py:59
+#: plinth/modules/users/forms.py:44
msgid "Username is taken or is reserved."
msgstr ""
-#: plinth/modules/users/forms.py:87
+#: plinth/modules/users/forms.py:72
msgid "Enter a valid username."
msgstr ""
-#: plinth/modules/users/forms.py:93
+#: plinth/modules/users/forms.py:78
msgid ""
"Required. 150 characters or fewer. English letters, digits and @/./-/_ only."
msgstr ""
-#: plinth/modules/users/forms.py:106 plinth/modules/users/forms.py:222
+#: plinth/modules/users/forms.py:91 plinth/modules/users/forms.py:207
msgid "Permissions"
msgstr ""
-#: plinth/modules/users/forms.py:109
+#: plinth/modules/users/forms.py:94
msgid ""
"Select which services should be available to the new user. The user will be "
"able to log in to services that support single sign-on through LDAP, if they "
@@ -5437,187 +5538,182 @@ msgid ""
"SSH and have administrative privileges (sudo)."
msgstr ""
-#: plinth/modules/users/forms.py:148 plinth/modules/users/forms.py:372
+#: plinth/modules/users/forms.py:133 plinth/modules/users/forms.py:357
msgid "Creating LDAP user failed."
msgstr ""
-#: plinth/modules/users/forms.py:159
+#: plinth/modules/users/forms.py:144
#, python-brace-format
msgid "Failed to add new user to {group} group."
msgstr ""
-#: plinth/modules/users/forms.py:173
+#: plinth/modules/users/forms.py:158
msgid "Authorized SSH Keys"
msgstr ""
-#: plinth/modules/users/forms.py:175
+#: plinth/modules/users/forms.py:160
msgid ""
"Setting an SSH public key will allow this user to securely log in to the "
"system without using a password. You may enter multiple keys, one on each "
"line. Blank lines and lines starting with # will be ignored."
msgstr ""
-#: plinth/modules/users/forms.py:259
+#: plinth/modules/users/forms.py:244
msgid "Renaming LDAP user failed."
msgstr ""
-#: plinth/modules/users/forms.py:271
+#: plinth/modules/users/forms.py:256
msgid "Failed to remove user from group."
msgstr ""
-#: plinth/modules/users/forms.py:282
+#: plinth/modules/users/forms.py:267
msgid "Failed to add user to group."
msgstr ""
-#: plinth/modules/users/forms.py:291
+#: plinth/modules/users/forms.py:276
msgid "Unable to set SSH keys."
msgstr ""
-#: plinth/modules/users/forms.py:306
+#: plinth/modules/users/forms.py:291
msgid "Failed to change user status."
msgstr ""
-#: plinth/modules/users/forms.py:314
+#: plinth/modules/users/forms.py:299
msgid "Cannot delete the only administrator in the system."
msgstr ""
-#: plinth/modules/users/forms.py:346
+#: plinth/modules/users/forms.py:331
msgid "Changing LDAP user password failed."
msgstr ""
-#: plinth/modules/users/forms.py:381
+#: plinth/modules/users/forms.py:366
msgid "Failed to add new user to admin group."
msgstr ""
-#: plinth/modules/users/forms.py:398
+#: plinth/modules/users/forms.py:383
msgid "Failed to restrict console access."
msgstr ""
-#: plinth/modules/users/forms.py:410
+#: plinth/modules/users/forms.py:395
msgid "User account created, you are now logged in"
msgstr ""
-#: plinth/modules/users/templates/users_change_password.html:26
+#: plinth/modules/users/templates/users_change_password.html:11
#, python-format
msgid "Change Password for %(username)s"
msgstr ""
-#: plinth/modules/users/templates/users_change_password.html:36
+#: plinth/modules/users/templates/users_change_password.html:21
msgid "Save Password"
msgstr ""
-#: plinth/modules/users/templates/users_create.html:32
-#: plinth/modules/users/templates/users_list.html:42
-#: plinth/modules/users/templates/users_list.html:44
-#: plinth/modules/users/views.py:57
+#: plinth/modules/users/templates/users_create.html:17
+#: plinth/modules/users/templates/users_list.html:27
+#: plinth/modules/users/templates/users_list.html:29
+#: plinth/modules/users/views.py:42
msgid "Create User"
msgstr ""
-#: plinth/modules/users/templates/users_delete.html:26
-#: plinth/modules/users/views.py:139
+#: plinth/modules/users/templates/users_delete.html:11
+#: plinth/modules/users/views.py:121
msgid "Delete User"
msgstr ""
-#: plinth/modules/users/templates/users_delete.html:29
+#: plinth/modules/users/templates/users_delete.html:14
#, python-format
msgid "Delete user %(username)s permanently?"
msgstr ""
-#: plinth/modules/users/templates/users_delete.html:38
+#: plinth/modules/users/templates/users_delete.html:23
#, python-format
msgid "Delete %(username)s"
msgstr ""
-#: plinth/modules/users/templates/users_firstboot.html:26
+#: plinth/modules/users/templates/users_firstboot.html:11
msgid "Administrator Account"
msgstr ""
-#: plinth/modules/users/templates/users_firstboot.html:29
+#: plinth/modules/users/templates/users_firstboot.html:14
msgid ""
"Choose a username and password to access this web interface. The password "
"can be changed later. This user will be granted administrative privileges. "
"Other users can be added later."
msgstr ""
-#: plinth/modules/users/templates/users_firstboot.html:42
+#: plinth/modules/users/templates/users_firstboot.html:27
msgid "Create Account"
msgstr ""
-#: plinth/modules/users/templates/users_list.html:38
-#: plinth/modules/users/views.py:74
+#: plinth/modules/users/templates/users_list.html:23
+#: plinth/modules/users/views.py:59
msgid "Users"
msgstr ""
-#: plinth/modules/users/templates/users_list.html:57
+#: plinth/modules/users/templates/users_list.html:42
#, python-format
msgid "Delete user %(username)s"
msgstr ""
-#: plinth/modules/users/templates/users_list.html:65
+#: plinth/modules/users/templates/users_list.html:50
#, python-format
msgid "Edit user %(username)s"
msgstr ""
-#: plinth/modules/users/templates/users_update.html:30
+#: plinth/modules/users/templates/users_update.html:15
#, python-format
msgid ""
"Use the change password form to "
"change the password."
msgstr ""
-#: plinth/modules/users/templates/users_update.html:42
-#: plinth/templates/language-selection.html:32
+#: plinth/modules/users/templates/users_update.html:27
+#: plinth/templates/language-selection.html:17
msgid "Save Changes"
msgstr ""
-#: plinth/modules/users/views.py:55
+#: plinth/modules/users/views.py:40
#, python-format
msgid "User %(username)s created."
msgstr ""
-#: plinth/modules/users/views.py:93
+#: plinth/modules/users/views.py:75
#, python-format
msgid "User %(username)s updated."
msgstr ""
-#: plinth/modules/users/views.py:94
+#: plinth/modules/users/views.py:76
msgid "Edit User"
msgstr ""
-#: plinth/modules/users/views.py:149
+#: plinth/modules/users/views.py:131
#, python-brace-format
msgid "User {user} deleted."
msgstr ""
-#: plinth/modules/users/views.py:156
+#: plinth/modules/users/views.py:138
msgid "Deleting LDAP user failed."
msgstr ""
-#: plinth/modules/users/views.py:165
+#: plinth/modules/users/views.py:147
msgid "Change Password"
msgstr ""
-#: plinth/modules/users/views.py:166
+#: plinth/modules/users/views.py:148
msgid "Password changed successfully."
msgstr ""
-#: plinth/modules/wireguard/__init__.py:38
-#: plinth/modules/wireguard/manifest.py:29
-msgid "WireGuard"
-msgstr ""
-
-#: plinth/modules/wireguard/__init__.py:43
+#: plinth/modules/wireguard/__init__.py:24
msgid "WireGuard is a fast, modern, secure VPN tunnel."
msgstr ""
-#: plinth/modules/wireguard/__init__.py:45
+#: plinth/modules/wireguard/__init__.py:26
#, python-brace-format
msgid ""
"It can be used to connect to a VPN provider which supports WireGuard, and to "
"route all outgoing traffic from {box_name} through the VPN."
msgstr ""
-#: plinth/modules/wireguard/__init__.py:49
+#: plinth/modules/wireguard/__init__.py:30
#, python-brace-format
msgid ""
"A second use case is to connect a mobile device to {box_name} while "
@@ -5625,59 +5721,64 @@ msgid ""
"securely relayed through {box_name}."
msgstr ""
-#: plinth/modules/wireguard/forms.py:47
+#: plinth/modules/wireguard/__init__.py:52
+#: plinth/modules/wireguard/manifest.py:14
+msgid "WireGuard"
+msgstr ""
+
+#: plinth/modules/wireguard/forms.py:32
msgid "Invalid key."
msgstr ""
-#: plinth/modules/wireguard/forms.py:76
-#: plinth/modules/wireguard/templates/wireguard.html:32
-#: plinth/modules/wireguard/templates/wireguard.html:89
-#: plinth/modules/wireguard/templates/wireguard_delete_server.html:38
+#: plinth/modules/wireguard/forms.py:61
+#: plinth/modules/wireguard/templates/wireguard.html:17
+#: plinth/modules/wireguard/templates/wireguard.html:74
+#: plinth/modules/wireguard/templates/wireguard_delete_server.html:23
msgid "Public Key"
msgstr ""
-#: plinth/modules/wireguard/forms.py:77
+#: plinth/modules/wireguard/forms.py:62
msgid ""
"Public key of the peer. Example: "
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs= ."
msgstr ""
-#: plinth/modules/wireguard/forms.py:85
+#: plinth/modules/wireguard/forms.py:70
msgid "Endpoint of the server"
msgstr ""
-#: plinth/modules/wireguard/forms.py:86
+#: plinth/modules/wireguard/forms.py:71
msgid ""
"Domain name and port in the form \"ip:port\". Example: demo.wireguard."
"com:12912 ."
msgstr ""
-#: plinth/modules/wireguard/forms.py:91
+#: plinth/modules/wireguard/forms.py:76
msgid "Public key of the server"
msgstr ""
-#: plinth/modules/wireguard/forms.py:92
+#: plinth/modules/wireguard/forms.py:77
msgid ""
"Provided by the server operator, a long string of characters. Example: "
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs= ."
msgstr ""
-#: plinth/modules/wireguard/forms.py:97
+#: plinth/modules/wireguard/forms.py:82
msgid "Client IP address provided by server"
msgstr ""
-#: plinth/modules/wireguard/forms.py:98
+#: plinth/modules/wireguard/forms.py:83
msgid ""
"IP address assigned to this machine on the VPN after connecting to the "
"endpoint. This value is usually provided by the server operator. Example: "
"192.168.0.10."
msgstr ""
-#: plinth/modules/wireguard/forms.py:104
+#: plinth/modules/wireguard/forms.py:89
msgid "Private key of this machine"
msgstr ""
-#: plinth/modules/wireguard/forms.py:105
+#: plinth/modules/wireguard/forms.py:90
msgid ""
"Optional. New public/private keys are generated if left blank. Public key "
"can then be provided to the server. This is the recommended way. However, "
@@ -5685,157 +5786,157 @@ msgid ""
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs= ."
msgstr ""
-#: plinth/modules/wireguard/forms.py:113
+#: plinth/modules/wireguard/forms.py:98
msgid "Pre-shared key"
msgstr ""
-#: plinth/modules/wireguard/forms.py:114
+#: plinth/modules/wireguard/forms.py:99
msgid ""
"Optional. A shared secret key provided by the server to add an additional "
"layer of security. Fill in only if provided. Example: "
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs=."
msgstr ""
-#: plinth/modules/wireguard/forms.py:120
+#: plinth/modules/wireguard/forms.py:105
msgid "Use this connection to send all outgoing traffic"
msgstr ""
-#: plinth/modules/wireguard/forms.py:122
+#: plinth/modules/wireguard/forms.py:107
msgid "Typically checked for a VPN service though which all traffic is sent."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:25
+#: plinth/modules/wireguard/templates/wireguard.html:10
msgid "As a Server"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:27
+#: plinth/modules/wireguard/templates/wireguard.html:12
msgid "Peers allowed to connect to this server:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:33
+#: plinth/modules/wireguard/templates/wireguard.html:18
msgid "Allowed IPs"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:34
-#: plinth/modules/wireguard/templates/wireguard.html:90
+#: plinth/modules/wireguard/templates/wireguard.html:19
+#: plinth/modules/wireguard/templates/wireguard.html:75
msgid "Last Connected Time"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:53
+#: plinth/modules/wireguard/templates/wireguard.html:38
#, python-format
msgid "No peers configured to connect to this %(box_name)s yet."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:62
+#: plinth/modules/wireguard/templates/wireguard.html:47
#, python-format
msgid "Public key for this %(box_name)s:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:68
+#: plinth/modules/wireguard/templates/wireguard.html:53
msgid "Not configured yet."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:72
+#: plinth/modules/wireguard/templates/wireguard.html:57
msgid "Add a new peer"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:76
-#: plinth/modules/wireguard/views.py:69
+#: plinth/modules/wireguard/templates/wireguard.html:61
+#: plinth/modules/wireguard/views.py:51
msgid "Add Allowed Client"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:79
+#: plinth/modules/wireguard/templates/wireguard.html:64
msgid "As a Client"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:81
+#: plinth/modules/wireguard/templates/wireguard.html:66
#, python-format
msgid "Servers that %(box_name)s will connect to:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:88
-#: plinth/modules/wireguard/templates/wireguard_delete_server.html:34
+#: plinth/modules/wireguard/templates/wireguard.html:73
+#: plinth/modules/wireguard/templates/wireguard_delete_server.html:19
msgid "Endpoint"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:111
+#: plinth/modules/wireguard/templates/wireguard.html:96
msgid "No connections to remote servers are configured yet."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:119
+#: plinth/modules/wireguard/templates/wireguard.html:104
msgid "Add a new server"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:123
-#: plinth/modules/wireguard/views.py:178
+#: plinth/modules/wireguard/templates/wireguard.html:108
+#: plinth/modules/wireguard/views.py:160
msgid "Add Connection to Server"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_add_client.html:34
+#: plinth/modules/wireguard/templates/wireguard_add_client.html:19
msgid "Add Client"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_delete_client.html:29
+#: plinth/modules/wireguard/templates/wireguard_delete_client.html:14
msgid "Are you sure that you want to delete this client?"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_delete_server.html:29
+#: plinth/modules/wireguard/templates/wireguard_delete_server.html:14
msgid "Are you sure that you want to delete this server?"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_edit_client.html:34
+#: plinth/modules/wireguard/templates/wireguard_edit_client.html:19
msgid "Update Client"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_edit_server.html:34
+#: plinth/modules/wireguard/templates/wireguard_edit_server.html:19
msgid "Update Connection"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:27
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:12
#, python-format
msgid ""
"%(box_name)s will allow this client to connect to it. Ensure that the client "
"is configured with the following information."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:35
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:20
msgid "Client public key:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:39
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:24
msgid "IP address to use for client:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:43
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:46
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:28
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:31
msgid "Pre-shared key:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:47
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:32
msgid "Server endpoints:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:55
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:42
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:40
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:27
msgid "Server public key:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:65
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:64
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:50
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:49
msgid "Data transmitted:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:69
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:68
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:54
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:53
msgid "Data received:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:73
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:72
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:58
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:57
msgid "Latest handshake:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:29
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:14
#, python-format
msgid ""
"%(box_name)s will attempt to reach a WireGuard server with the following "
@@ -5843,133 +5944,133 @@ msgid ""
"public key and IP address."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:38
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:23
msgid "Server endpoint:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:50
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:35
msgid "Public key of this machine:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:54
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:39
msgid "IP address of this machine:"
msgstr ""
-#: plinth/modules/wireguard/views.py:64
+#: plinth/modules/wireguard/views.py:46
msgid "Added new client."
msgstr ""
-#: plinth/modules/wireguard/views.py:79 plinth/modules/wireguard/views.py:138
+#: plinth/modules/wireguard/views.py:61 plinth/modules/wireguard/views.py:120
msgid "Client with public key already exists"
msgstr ""
-#: plinth/modules/wireguard/views.py:92
+#: plinth/modules/wireguard/views.py:74
msgid "Allowed Client"
msgstr ""
-#: plinth/modules/wireguard/views.py:114
+#: plinth/modules/wireguard/views.py:96
msgid "Updated client."
msgstr ""
-#: plinth/modules/wireguard/views.py:119
+#: plinth/modules/wireguard/views.py:101
msgid "Modify Client"
msgstr ""
-#: plinth/modules/wireguard/views.py:152
+#: plinth/modules/wireguard/views.py:134
msgid "Delete Allowed Client"
msgstr ""
-#: plinth/modules/wireguard/views.py:161
+#: plinth/modules/wireguard/views.py:143
msgid "Client deleted."
msgstr ""
-#: plinth/modules/wireguard/views.py:163
+#: plinth/modules/wireguard/views.py:145
msgid "Client not found"
msgstr ""
-#: plinth/modules/wireguard/views.py:173
+#: plinth/modules/wireguard/views.py:155
msgid "Added new server."
msgstr ""
-#: plinth/modules/wireguard/views.py:194
+#: plinth/modules/wireguard/views.py:176
msgid "Connection to Server"
msgstr ""
-#: plinth/modules/wireguard/views.py:212
+#: plinth/modules/wireguard/views.py:194
msgid "Updated server."
msgstr ""
-#: plinth/modules/wireguard/views.py:217
+#: plinth/modules/wireguard/views.py:199
msgid "Modify Connection to Server"
msgstr ""
-#: plinth/modules/wireguard/views.py:254
+#: plinth/modules/wireguard/views.py:236
msgid "Delete Connection to Server"
msgstr ""
-#: plinth/modules/wireguard/views.py:274
+#: plinth/modules/wireguard/views.py:256
msgid "Server deleted."
msgstr ""
-#: plinth/network.py:42
+#: plinth/network.py:27
msgid "PPPoE"
msgstr ""
-#: plinth/network.py:43
+#: plinth/network.py:28
msgid "Generic"
msgstr ""
-#: plinth/package.py:137
+#: plinth/package.py:122
msgid "Error during installation"
msgstr ""
-#: plinth/package.py:159
+#: plinth/package.py:144
msgid "installing"
msgstr ""
-#: plinth/package.py:161
+#: plinth/package.py:146
msgid "downloading"
msgstr ""
-#: plinth/package.py:163
+#: plinth/package.py:148
msgid "media change"
msgstr ""
-#: plinth/package.py:165
+#: plinth/package.py:150
#, python-brace-format
msgid "configuration file: {file}"
msgstr ""
-#: plinth/templates/403.html:25
+#: plinth/templates/403.html:10
msgid "403 Forbidden"
msgstr ""
-#: plinth/templates/403.html:29
+#: plinth/templates/403.html:14
#, python-format
msgid "You don't have permission to access %(request_path)s on this server."
msgstr ""
-#: plinth/templates/404.html:25
+#: plinth/templates/404.html:10
msgid "404"
msgstr ""
-#: plinth/templates/404.html:28
+#: plinth/templates/404.html:13
#, python-format
msgid "Requested page %(request_path)s was not found."
msgstr ""
-#: plinth/templates/404.html:34
+#: plinth/templates/404.html:19
msgid ""
"If you believe this missing page should exist, please file a bug at the "
"FreedomBox Service (Plinth) project issue tracker."
msgstr ""
-#: plinth/templates/500.html:25
+#: plinth/templates/500.html:10
msgid "500"
msgstr ""
-#: plinth/templates/500.html:29
+#: plinth/templates/500.html:14
#, python-format
msgid ""
"This is an internal error and not something you caused or can fix. Please "
@@ -5978,137 +6079,137 @@ msgid ""
"href=\"%(status_log_url)s\">status log to the bug report."
msgstr ""
-#: plinth/templates/app.html:47
+#: plinth/templates/app-header.html:22
+msgid "Installation"
+msgstr ""
+
+#: plinth/templates/app.html:32
#, python-format
msgid "Service %(service_name)s is running."
msgstr ""
-#: plinth/templates/app.html:52
+#: plinth/templates/app.html:37
#, python-format
msgid "Service %(service_name)s is not running."
msgstr ""
-#: plinth/templates/base.html:50
+#: plinth/templates/base.html:35
#, python-format
msgid "Core functionality and web interface for %(box_name)s"
msgstr ""
-#: plinth/templates/base.html:96
+#: plinth/templates/base.html:81
msgid "Toggle navigation"
msgstr ""
-#: plinth/templates/base.html:120 plinth/templates/base.html:123
+#: plinth/templates/base.html:105 plinth/templates/base.html:108
msgid "Home"
msgstr ""
-#: plinth/templates/base.html:128 plinth/templates/base.html:132
+#: plinth/templates/base.html:113 plinth/templates/base.html:117
msgid "Apps"
msgstr ""
-#: plinth/templates/base.html:137 plinth/templates/base.html:141
+#: plinth/templates/base.html:122 plinth/templates/base.html:126
msgid "System"
msgstr ""
-#: plinth/templates/base.html:173 plinth/templates/base.html:174
+#: plinth/templates/base.html:158 plinth/templates/base.html:159
msgid "Change password"
msgstr ""
-#: plinth/templates/base.html:181 plinth/templates/base.html:182
+#: plinth/templates/base.html:166 plinth/templates/base.html:167
msgid "Restart"
msgstr ""
-#: plinth/templates/base.html:187 plinth/templates/base.html:188
+#: plinth/templates/base.html:172 plinth/templates/base.html:173
msgid "Shut down"
msgstr ""
-#: plinth/templates/base.html:195 plinth/templates/base.html:196
-#: plinth/templates/base.html:220 plinth/templates/base.html:222
+#: plinth/templates/base.html:180 plinth/templates/base.html:181
+#: plinth/templates/base.html:205 plinth/templates/base.html:207
msgid "Log out"
msgstr ""
-#: plinth/templates/base.html:204 plinth/templates/base.html:207
+#: plinth/templates/base.html:189 plinth/templates/base.html:192
msgid "Select language"
msgstr ""
-#: plinth/templates/base.html:212 plinth/templates/base.html:214
+#: plinth/templates/base.html:197 plinth/templates/base.html:199
msgid "Log in"
msgstr ""
-#: plinth/templates/clients.html:32
+#: plinth/templates/clients.html:17
msgid "Web"
msgstr ""
-#: plinth/templates/clients.html:57
+#: plinth/templates/clients.html:42
msgid "Desktop"
msgstr ""
-#: plinth/templates/clients.html:68
+#: plinth/templates/clients.html:53
msgid "GNU/Linux"
msgstr ""
-#: plinth/templates/clients.html:70
+#: plinth/templates/clients.html:55
msgid "Windows"
msgstr ""
-#: plinth/templates/clients.html:72
+#: plinth/templates/clients.html:57
msgid "macOS"
msgstr ""
-#: plinth/templates/clients.html:88
+#: plinth/templates/clients.html:73
msgid "Mobile"
msgstr ""
-#: plinth/templates/clients.html:99
+#: plinth/templates/clients.html:84
msgid "Play Store"
msgstr ""
-#: plinth/templates/clients.html:101
+#: plinth/templates/clients.html:86
msgid "F-Droid"
msgstr ""
-#: plinth/templates/clients.html:103
+#: plinth/templates/clients.html:88
msgid "App Store"
msgstr ""
-#: plinth/templates/clients.html:119
+#: plinth/templates/clients.html:104
msgid "Package"
msgstr ""
-#: plinth/templates/clients.html:126
+#: plinth/templates/clients.html:111
msgid "Debian:"
msgstr ""
-#: plinth/templates/clients.html:129
+#: plinth/templates/clients.html:114
msgid "Homebrew:"
msgstr ""
-#: plinth/templates/clients.html:132
+#: plinth/templates/clients.html:117
msgid "RPM:"
msgstr ""
-#: plinth/templates/first_setup.html:39
+#: plinth/templates/first_setup.html:24
#, python-format
msgid ""
"Please wait for %(box_name)s to finish installation. You can start using "
"your %(box_name)s once it is done."
msgstr ""
-#: plinth/templates/header.html:36
-msgid "Installation"
-msgstr ""
-
-#: plinth/templates/index.html:37
+#: plinth/templates/index.html:22
#, python-format
msgid ""
"Enable some applications to add shortcuts to "
"this page."
msgstr ""
-#: plinth/templates/index.html:59
+#: plinth/templates/index.html:44
msgid "Configure »"
msgstr ""
-#: plinth/templates/index.html:115
+#: plinth/templates/index.html:100
#, python-format
msgid ""
"%(box_name)s, a Debian pure blend, is a 100%% free software self-hosting web "
@@ -6116,7 +6217,7 @@ msgid ""
"communication tools respecting your privacy and data ownership."
msgstr ""
-#: plinth/templates/index.html:124
+#: plinth/templates/index.html:109
#, python-format
msgid ""
"This portal is a part of the %(box_name)s web interface. %(box_name)s is "
@@ -6124,55 +6225,55 @@ msgid ""
"Version 3 or later."
msgstr ""
-#: plinth/templates/index.html:144
+#: plinth/templates/index.html:129
msgid "Homepage"
msgstr ""
-#: plinth/templates/index.html:147
+#: plinth/templates/index.html:132
msgid "Source Code"
msgstr ""
-#: plinth/templates/index.html:150
+#: plinth/templates/index.html:135
msgid "Donate"
msgstr ""
-#: plinth/templates/index.html:154
+#: plinth/templates/index.html:139
msgid "FreedomBox Foundation"
msgstr ""
-#: plinth/templates/index.html:161
+#: plinth/templates/index.html:146
msgid "IRC Chatroom"
msgstr ""
-#: plinth/templates/index.html:166
+#: plinth/templates/index.html:151
msgid "Mailing list"
msgstr ""
-#: plinth/templates/internal-zone.html:26
+#: plinth/templates/internal-zone.html:11
#, python-format
msgid "%(service_name)s is available only on internal networks."
msgstr ""
-#: plinth/templates/internal-zone.html:32
+#: plinth/templates/internal-zone.html:17
msgid "Currently there are no network interfaces configured as internal."
msgstr ""
-#: plinth/templates/internal-zone.html:34
+#: plinth/templates/internal-zone.html:19
#, python-format
msgid ""
"Currently the following network interfaces are configured as internal: "
"%(interface_list)s"
msgstr ""
-#: plinth/templates/notifications-dropdown.html:26
+#: plinth/templates/notifications-dropdown.html:11
msgid "Notifications"
msgstr ""
-#: plinth/templates/port-forwarding-info.html:23
+#: plinth/templates/port-forwarding-info.html:8
msgid "Port Forwarding"
msgstr ""
-#: plinth/templates/port-forwarding-info.html:26
+#: plinth/templates/port-forwarding-info.html:11
#, python-format
msgid ""
"If your FreedomBox is behind a router, you will need to set up port "
@@ -6180,62 +6281,62 @@ msgid ""
"%(service_name)s:"
msgstr ""
-#: plinth/templates/setup.html:51
+#: plinth/templates/setup.html:36
msgid "Install this application?"
msgstr ""
-#: plinth/templates/setup.html:55
+#: plinth/templates/setup.html:40
msgid "This application needs an update. Update now?"
msgstr ""
-#: plinth/templates/setup.html:66
+#: plinth/templates/setup.html:51
msgid ""
"Another installation or upgrade is already running. Please wait for a few "
"moments before trying again."
msgstr ""
-#: plinth/templates/setup.html:73
+#: plinth/templates/setup.html:58
msgid "This application is currently not available in your distribution."
msgstr ""
-#: plinth/templates/setup.html:87
+#: plinth/templates/setup.html:72
msgid "Install"
msgstr ""
-#: plinth/templates/setup.html:98
+#: plinth/templates/setup.html:83
msgid "Performing pre-install operation"
msgstr ""
-#: plinth/templates/setup.html:102
+#: plinth/templates/setup.html:87
msgid "Performing post-install operation"
msgstr ""
-#: plinth/templates/setup.html:107
+#: plinth/templates/setup.html:92
#, python-format
msgid "Installing %(package_names)s: %(status)s"
msgstr ""
-#: plinth/templates/setup.html:117
+#: plinth/templates/setup.html:102
#, python-format
msgid "%(percentage)s%% complete"
msgstr ""
-#: plinth/templates/toolbar.html:38
+#: plinth/templates/toolbar.html:23
msgid "Launch web client"
msgstr ""
-#: plinth/templates/toolbar.html:47
+#: plinth/templates/toolbar.html:32
msgid "Client Apps"
msgstr ""
-#: plinth/views.py:179
+#: plinth/views.py:189
msgid "Application enabled"
msgstr ""
-#: plinth/views.py:182
+#: plinth/views.py:192
msgid "Application disabled"
msgstr ""
-#: plinth/web_framework.py:190
+#: plinth/web_framework.py:107
msgid "Gujarati"
msgstr ""
diff --git a/plinth/locale/nb/LC_MESSAGES/django.po b/plinth/locale/nb/LC_MESSAGES/django.po
index 883b5141f..f80764006 100644
--- a/plinth/locale/nb/LC_MESSAGES/django.po
+++ b/plinth/locale/nb/LC_MESSAGES/django.po
@@ -15,7 +15,7 @@ msgid ""
msgstr ""
"Project-Id-Version: FreedomBox UI\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2020-02-14 21:26+0200\n"
+"POT-Creation-Date: 2020-02-24 19:12-0500\n"
"PO-Revision-Date: 2020-02-17 20:32+0000\n"
"Last-Translator: Allan Nordhøy This means that devices on the Internet can reach you when you are " +"connected to the Internet. Every time you connect to the Internet with your " +"Internet Service Provider (ISP), you may get a different IP address, " +"especially after some offline time. Many ISPs offer this type of " +"connectivity. If you have a public IP address but are unsure if it changes " +"over time or not, it is safer to choose this option.
" +msgstr "" + #: plinth/modules/networks/forms.py:313 +#, python-brace-format +msgid "" +"I have a public IP address that does not change overtime (recommended)This means that devices on the Internet can reach you " +"when you are connected to the Internet. Every time you connect to the " +"Internet with your Internet Service Provider (ISP), you always get the same " +"IP address. This is the most trouble-free setup for many {box_name} services " +"but very few ISPs offer this. You may be able to get this service from your " +"ISP by making an additional payment.
" +msgstr "" + +#: plinth/modules/networks/forms.py:326 +#, python-brace-format +msgid "" +"I dont have a public IP addressThis means that " +"devices on the Internet can not reach you when you are connected to " +"the Internet. Every time you connect to the Internet with your Internet " +"Service Provider (ISP), you get an IP address that is only relevant for " +"local networks. Many ISPs offer this type of connectivity. This is the most " +"troublesome situation for hosting services at home. {box_name} provides many " +"workaround solutions but each solution has some limitations.
" +msgstr "" + +#: plinth/modules/networks/forms.py:351 #, fuzzy #| msgid "Current Network Configuration" msgid "Preferred router configuration" msgstr "Nåværende nettverksoppsett" -#: plinth/modules/networks/forms.py:318 +#: plinth/modules/networks/forms.py:356 #, python-brace-format msgid "" -"Use DMZ feature to forward all trafficMost routers " -"provide a configuration setting called DMZ. This will allow the router to " -"forward all incoming traffic from the internet to a single IP address such " -"as the {box_name}'s address. First remember to configure a static local IP " -"address for your {box_name} in your router's configuration.
" +"Use DMZ feature to forward all traffic (recommended)Most routers provide a configuration setting called DMZ. This will allow " +"the router to forward all incoming traffic from the Internet to a single IP " +"address such as the {box_name}'s IP address. First remember to configure a " +"static local IP address for your {box_name} in your router's configuration." +"p>" msgstr "" -#: plinth/modules/networks/forms.py:332 +#: plinth/modules/networks/forms.py:368 #, python-brace-format msgid "" -"Forward Specific Traffic as needed by each application
You may alternatively choose to forward only specific traffic to your " "{box_name}. This is ideal if you have other servers like {box_name} in your " "network or if your router does not support DMZ feature. All applications " @@ -3646,266 +3717,272 @@ msgid "" "to be forwarded for that application to work.
" msgstr "" -#: plinth/modules/networks/forms.py:349 +#: plinth/modules/networks/forms.py:382 msgid "" -"Router is currently unconfiguredChoose this if you " +"Router is currently unconfigured
Choose this if you " "have not configured or are unable to configure the router currently and wish " "to be reminded later. Some of the other configuration steps may fail.
" msgstr "" -#: plinth/modules/networks/networks.py:43 +#: plinth/modules/networks/networks.py:32 msgid "Network Connections" msgstr "Nettverksoppkoblinger" -#: plinth/modules/networks/networks.py:59 +#: plinth/modules/networks/networks.py:46 msgid "Cannot show connection: Connection not found." msgstr "Kan ikke vise tilkobling: Tilkobling ikke funnet." -#: plinth/modules/networks/networks.py:94 +#: plinth/modules/networks/networks.py:81 msgid "Connection Information" msgstr "Oppkoblingsinformasjon" -#: plinth/modules/networks/networks.py:108 +#: plinth/modules/networks/networks.py:95 msgid "Cannot edit connection: Connection not found." msgstr "Kan ikke redigere tilkobling: Tilkobling ikke funnet." -#: plinth/modules/networks/networks.py:114 +#: plinth/modules/networks/networks.py:101 msgid "This type of connection is not yet understood." msgstr "Denne typen tilkobling er ennå ikke forstått." -#: plinth/modules/networks/networks.py:136 -#: plinth/modules/networks/networks.py:220 -#: plinth/modules/networks/templates/connections_edit.html:35 +#: plinth/modules/networks/networks.py:123 +#: plinth/modules/networks/networks.py:207 +#: plinth/modules/networks/templates/connections_edit.html:20 msgid "Edit Connection" msgstr "Endre oppkobling" -#: plinth/modules/networks/networks.py:232 +#: plinth/modules/networks/networks.py:219 #, python-brace-format msgid "Activated connection {name}." msgstr "Aktiverte tilkobling {name}." -#: plinth/modules/networks/networks.py:236 +#: plinth/modules/networks/networks.py:223 msgid "Failed to activate connection: Connection not found." msgstr "Kunne ikke aktivere tilkobling: Tilkobling ikke funnet." -#: plinth/modules/networks/networks.py:242 +#: plinth/modules/networks/networks.py:229 #, python-brace-format msgid "Failed to activate connection {name}: No suitable device is available." msgstr "" "Klarte ikke aktivere tilkoblingen {name}: Ingen passende enhet er " "tilgjengelig." -#: plinth/modules/networks/networks.py:255 +#: plinth/modules/networks/networks.py:242 #, python-brace-format msgid "Deactivated connection {name}." msgstr "Deaktivert tilkobling {name}." -#: plinth/modules/networks/networks.py:259 +#: plinth/modules/networks/networks.py:246 msgid "Failed to de-activate connection: Connection not found." msgstr "Kunne ikke deaktivere tilkobling: Tilkobling ikke funnet." -#: plinth/modules/networks/networks.py:269 -#: plinth/modules/networks/templates/connections_list.html:62 -#: plinth/modules/networks/templates/connections_list.html:64 +#: plinth/modules/networks/networks.py:256 +#: plinth/modules/networks/templates/connections_list.html:12 +#: plinth/modules/networks/templates/connections_list.html:14 msgid "Nearby Wi-Fi Networks" msgstr "Wi-Fi-nettverk i nærheten" -#: plinth/modules/networks/networks.py:293 -#: plinth/modules/networks/templates/connections_list.html:67 -#: plinth/modules/networks/templates/connections_list.html:69 -#: plinth/modules/wireguard/templates/wireguard_add_server.html:34 +#: plinth/modules/networks/networks.py:280 +#: plinth/modules/networks/templates/connections_list.html:17 +#: plinth/modules/networks/templates/connections_list.html:19 +#: plinth/modules/wireguard/templates/wireguard_add_server.html:19 msgid "Add Connection" msgstr "Legg til tilkobling" -#: plinth/modules/networks/networks.py:311 +#: plinth/modules/networks/networks.py:298 msgid "Adding New Generic Connection" msgstr "Legger til ny generell tilkobling" -#: plinth/modules/networks/networks.py:329 +#: plinth/modules/networks/networks.py:316 msgid "Adding New Ethernet Connection" msgstr "Legge til ny Ethernet-tilkobling" -#: plinth/modules/networks/networks.py:347 +#: plinth/modules/networks/networks.py:334 msgid "Adding New PPPoE Connection" msgstr "Legge til ny PPPoE-tilkobling" -#: plinth/modules/networks/networks.py:382 +#: plinth/modules/networks/networks.py:369 msgid "Adding New Wi-Fi Connection" msgstr "Legge til ny Wi-Fi-tilkobling" -#: plinth/modules/networks/networks.py:397 +#: plinth/modules/networks/networks.py:384 #, python-brace-format msgid "Connection {name} deleted." msgstr "Tilkobling {name} slettet." -#: plinth/modules/networks/networks.py:401 -#: plinth/modules/networks/networks.py:411 +#: plinth/modules/networks/networks.py:388 +#: plinth/modules/networks/networks.py:398 msgid "Failed to delete connection: Connection not found." msgstr "Kunne ikke slette tilkobling: Tilkobling ikke funnet." -#: plinth/modules/networks/networks.py:416 -#: plinth/modules/networks/templates/connections_delete.html:26 +#: plinth/modules/networks/networks.py:403 +#: plinth/modules/networks/templates/connections_delete.html:11 msgid "Delete Connection" msgstr "Slett tilkobling" -#: plinth/modules/networks/networks.py:442 +#: plinth/modules/networks/networks.py:428 #, fuzzy #| msgid "Tor configuration is being updated" msgid "Router configuration type saved." msgstr "Tor-oppsettet oppdateres" -#: plinth/modules/networks/templates/connection_show.html:43 +#: plinth/modules/networks/networks.py:474 +#, fuzzy +#| msgid "Tor configuration is being updated" +msgid "Internet connection type saved." +msgstr "Tor-oppsettet oppdateres" + +#: plinth/modules/networks/templates/connection_show.html:28 msgid "Edit connection" msgstr "Rediger tilkobling" -#: plinth/modules/networks/templates/connection_show.html:43 -#: plinth/modules/wireguard/templates/wireguard_show_client.html:83 -#: plinth/modules/wireguard/templates/wireguard_show_server.html:84 -#: plinth/templates/base.html:167 plinth/templates/base.html:168 +#: plinth/modules/networks/templates/connection_show.html:28 +#: plinth/modules/wireguard/templates/wireguard_show_client.html:68 +#: plinth/modules/wireguard/templates/wireguard_show_server.html:69 +#: plinth/templates/base.html:152 plinth/templates/base.html:153 msgid "Edit" msgstr "Rediger" -#: plinth/modules/networks/templates/connection_show.html:50 -#: plinth/modules/networks/templates/connections_list.html:90 +#: plinth/modules/networks/templates/connection_show.html:35 +#: plinth/modules/networks/templates/connections_list.html:40 msgid "Deactivate" msgstr "Deaktivere" -#: plinth/modules/networks/templates/connection_show.html:57 -#: plinth/modules/networks/templates/connections_list.html:98 +#: plinth/modules/networks/templates/connection_show.html:42 +#: plinth/modules/networks/templates/connections_list.html:48 msgid "Activate" msgstr "Aktiver" -#: plinth/modules/networks/templates/connection_show.html:63 +#: plinth/modules/networks/templates/connection_show.html:48 msgid "Delete connection" msgstr "Slett tilkobling" -#: plinth/modules/networks/templates/connection_show.html:66 -#: plinth/modules/networks/templates/connections_diagram.html:73 -#: plinth/modules/networks/templates/connections_diagram.html:76 -#: plinth/modules/networks/templates/connections_diagram.html:105 -#: plinth/modules/networks/templates/connections_diagram.html:127 +#: plinth/modules/networks/templates/connection_show.html:51 +#: plinth/modules/networks/templates/connections_diagram.html:58 +#: plinth/modules/networks/templates/connections_diagram.html:61 +#: plinth/modules/networks/templates/connections_diagram.html:90 +#: plinth/modules/networks/templates/connections_diagram.html:112 msgid "Connection" msgstr "Tilkobling" -#: plinth/modules/networks/templates/connection_show.html:71 +#: plinth/modules/networks/templates/connection_show.html:56 msgid "Primary connection" msgstr "Primærtilkobling" -#: plinth/modules/networks/templates/connection_show.html:73 -#: plinth/modules/networks/templates/connection_show.html:217 -#: plinth/modules/networks/templates/connection_show.html:256 +#: plinth/modules/networks/templates/connection_show.html:58 +#: plinth/modules/networks/templates/connection_show.html:202 +#: plinth/modules/networks/templates/connection_show.html:241 msgid "yes" msgstr "Ja" -#: plinth/modules/networks/templates/connection_show.html:84 -#: plinth/modules/storage/templates/storage.html:40 +#: plinth/modules/networks/templates/connection_show.html:69 +#: plinth/modules/storage/templates/storage.html:25 msgid "Device" msgstr "Enhet" -#: plinth/modules/networks/templates/connection_show.html:88 +#: plinth/modules/networks/templates/connection_show.html:73 msgid "State" msgstr "Tilstand" -#: plinth/modules/networks/templates/connection_show.html:93 +#: plinth/modules/networks/templates/connection_show.html:78 msgid "State reason" msgstr "Grunn til tilstand" -#: plinth/modules/networks/templates/connection_show.html:102 +#: plinth/modules/networks/templates/connection_show.html:87 msgid "MAC address" msgstr "MAC-adresse" -#: plinth/modules/networks/templates/connection_show.html:106 +#: plinth/modules/networks/templates/connection_show.html:91 msgid "Interface" msgstr "Grensesnitt" -#: plinth/modules/networks/templates/connection_show.html:110 -#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:33 -#: plinth/modules/snapshot/templates/snapshot_manage.html:45 -#: plinth/modules/snapshot/templates/snapshot_rollback.html:41 +#: plinth/modules/networks/templates/connection_show.html:95 +#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:18 +#: plinth/modules/snapshot/templates/snapshot_manage.html:30 +#: plinth/modules/snapshot/templates/snapshot_rollback.html:26 msgid "Description" msgstr "Beskrivelse" -#: plinth/modules/networks/templates/connection_show.html:116 +#: plinth/modules/networks/templates/connection_show.html:101 msgid "Physical Link" msgstr "Fysisk link" -#: plinth/modules/networks/templates/connection_show.html:121 +#: plinth/modules/networks/templates/connection_show.html:106 msgid "Link state" msgstr "Linkens tilstand" -#: plinth/modules/networks/templates/connection_show.html:125 +#: plinth/modules/networks/templates/connection_show.html:110 msgid "cable is connected" msgstr "kabel er tilknyttet" -#: plinth/modules/networks/templates/connection_show.html:128 +#: plinth/modules/networks/templates/connection_show.html:113 msgid "please check cable" msgstr "vennligst sjekk kabelen" -#: plinth/modules/networks/templates/connection_show.html:133 -#: plinth/modules/networks/templates/connection_show.html:149 +#: plinth/modules/networks/templates/connection_show.html:118 +#: plinth/modules/networks/templates/connection_show.html:134 msgid "Speed" msgstr "Hastighet" -#: plinth/modules/networks/templates/connection_show.html:135 +#: plinth/modules/networks/templates/connection_show.html:120 #, python-format msgid "%(ethernet_speed)s Mbit/s" msgstr "%(ethernet_speed)s Mbit/s" -#: plinth/modules/networks/templates/connection_show.html:151 +#: plinth/modules/networks/templates/connection_show.html:136 #, python-format msgid "%(wireless_bitrate)s Mbit/s" msgstr "%(wireless_bitrate)s Mbit/s" -#: plinth/modules/networks/templates/connection_show.html:163 +#: plinth/modules/networks/templates/connection_show.html:148 msgid "Signal strength" msgstr "Signalstyrke" -#: plinth/modules/networks/templates/connection_show.html:181 +#: plinth/modules/networks/templates/connection_show.html:166 msgid "IPv4" msgstr "IPv4" -#: plinth/modules/networks/templates/connection_show.html:186 -#: plinth/modules/networks/templates/connection_show.html:227 -#: plinth/modules/shadowsocks/forms.py:64 +#: plinth/modules/networks/templates/connection_show.html:171 +#: plinth/modules/networks/templates/connection_show.html:212 +#: plinth/modules/shadowsocks/forms.py:49 msgid "Method" msgstr "Metode" -#: plinth/modules/networks/templates/connection_show.html:193 -#: plinth/modules/networks/templates/connection_show.html:234 +#: plinth/modules/networks/templates/connection_show.html:178 +#: plinth/modules/networks/templates/connection_show.html:219 msgid "IP address" msgstr "IP-adresse" -#: plinth/modules/networks/templates/connection_show.html:209 -#: plinth/modules/networks/templates/connection_show.html:248 +#: plinth/modules/networks/templates/connection_show.html:194 +#: plinth/modules/networks/templates/connection_show.html:233 msgid "DNS server" msgstr "DNS-tjener" -#: plinth/modules/networks/templates/connection_show.html:216 -#: plinth/modules/networks/templates/connection_show.html:255 -#: plinth/modules/storage/forms.py:156 +#: plinth/modules/networks/templates/connection_show.html:201 +#: plinth/modules/networks/templates/connection_show.html:240 +#: plinth/modules/storage/forms.py:141 msgid "Default" msgstr "Forvalg" -#: plinth/modules/networks/templates/connection_show.html:222 +#: plinth/modules/networks/templates/connection_show.html:207 msgid "IPv6" msgstr "IPv6" -#: plinth/modules/networks/templates/connection_show.html:263 +#: plinth/modules/networks/templates/connection_show.html:248 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:38 plinth/modules/security/views.py:47 +#: plinth/modules/networks/templates/connection_show.html:251 +#: plinth/modules/security/__init__.py:45 msgid "Security" msgstr "Sikkerhet" -#: plinth/modules/networks/templates/connection_show.html:271 -#: plinth/modules/networks/templates/connection_show.html:291 -#: plinth/modules/networks/templates/connection_show.html:310 +#: plinth/modules/networks/templates/connection_show.html:256 +#: plinth/modules/networks/templates/connection_show.html:276 +#: plinth/modules/networks/templates/connection_show.html:295 msgid "Firewall zone" msgstr "Brannmursone" -#: plinth/modules/networks/templates/connection_show.html:280 +#: plinth/modules/networks/templates/connection_show.html:265 msgid "" "This interface should be connected to a local network/machine. If you " "connect this interface to a public network, services meant to be available " @@ -3916,7 +3993,7 @@ msgstr "" "bare være tilgjengelig internt, bli tilgjengelig eksternt. Dette er en " "sikkerhetsrisiko." -#: plinth/modules/networks/templates/connection_show.html:300 +#: plinth/modules/networks/templates/connection_show.html:285 msgid "" "This interface should receive your Internet connection. If you connect it to " "a local network/machine, many services meant to available only internally " @@ -3926,7 +4003,7 @@ msgstr "" "til et lokalt nettverk/maskin, vil mange tjenester som er ment å være " "tilgjengelig internt ikke være tilgjengelige." -#: plinth/modules/networks/templates/connection_show.html:319 +#: plinth/modules/networks/templates/connection_show.html:304 #, python-format msgid "" "This interface is not maintained by %(box_name)s. Its security status is " @@ -3940,114 +4017,139 @@ msgstr "" "anbefales derfor at du deaktiverer/sletter denne forbindelsen, og " "rekonfigurerer." -#: plinth/modules/networks/templates/connections_create.html:34 +#: plinth/modules/networks/templates/connections_create.html:19 msgid "Create Connection" msgstr "Lage forbindelse" -#: plinth/modules/networks/templates/connections_delete.html:29 +#: plinth/modules/networks/templates/connections_delete.html:14 #, python-format msgid "Delete connection %(name)s permanently?" msgstr "Slette forbindelsen %(name)s permanent?" -#: plinth/modules/networks/templates/connections_diagram.html:65 +#: plinth/modules/networks/templates/connections_diagram.html:50 msgid "Internet" msgstr "Internett" -#: plinth/modules/networks/templates/connections_diagram.html:70 -#: plinth/modules/networks/templates/connections_diagram.html:102 +#: plinth/modules/networks/templates/connections_diagram.html:55 +#: plinth/modules/networks/templates/connections_diagram.html:87 msgid "Spacing" msgstr "Lage mellomrom" -#: plinth/modules/networks/templates/connections_diagram.html:83 -#: plinth/modules/networks/templates/connections_diagram.html:113 -#: plinth/network.py:40 +#: plinth/modules/networks/templates/connections_diagram.html:68 +#: plinth/modules/networks/templates/connections_diagram.html:98 +#: plinth/network.py:25 msgid "Ethernet" msgstr "Ethernet" -#: plinth/modules/networks/templates/connections_diagram.html:86 -#: plinth/modules/networks/templates/connections_diagram.html:116 -#: plinth/network.py:41 +#: plinth/modules/networks/templates/connections_diagram.html:71 +#: plinth/modules/networks/templates/connections_diagram.html:101 +#: plinth/network.py:26 msgid "Wi-Fi" msgstr "Wi-Fi" -#: plinth/modules/networks/templates/connections_diagram.html:89 +#: plinth/modules/networks/templates/connections_diagram.html:74 #, python-format msgid "Show connection %(connection.name)s" msgstr "Vis forbindelse %(connection.name)s" -#: plinth/modules/networks/templates/connections_diagram.html:119 +#: plinth/modules/networks/templates/connections_diagram.html:104 #, python-format msgid "Show connection %(name)s" msgstr "Vis forbindelse %(name)s" -#: plinth/modules/networks/templates/connections_diagram.html:131 +#: plinth/modules/networks/templates/connections_diagram.html:116 msgid "Computer" msgstr "Datamaskin" -#: plinth/modules/networks/templates/connections_list.html:58 +#: plinth/modules/networks/templates/connections_list.html:8 #, fuzzy #| msgid "Connection" msgid "Connections" msgstr "Tilkobling" -#: plinth/modules/networks/templates/connections_list.html:79 +#: plinth/modules/networks/templates/connections_list.html:29 #, python-format msgid "Delete connection %(name)s" msgstr "Slett forbindelse %(name)s" -#: plinth/modules/networks/templates/connections_list.html:104 +#: plinth/modules/networks/templates/connections_list.html:54 msgid "Active" msgstr "Aktiv" -#: plinth/modules/networks/templates/connections_list.html:107 +#: plinth/modules/networks/templates/connections_list.html:57 msgid "Inactive" msgstr "Slått av (inaktiv)" -#: plinth/modules/networks/templates/connections_list.html:124 -#, python-format -msgid "%(box_name)s Internet Connectivity" +#: plinth/modules/networks/templates/connections_type_select.html:19 +msgid "Create..." +msgstr "Lage ..." + +#: plinth/modules/networks/templates/internet_connectivity_content.html:10 +msgid "What Type Of Internet Connection Do You Have?" msgstr "" -#: plinth/modules/networks/templates/connections_list.html:129 -#, python-format +#: plinth/modules/networks/templates/internet_connectivity_content.html:16 msgid "" -"The following best describes how your %(box_name)s is connected in your " -"network. This information is used only to suggest necessary configuration " -"actions." +"Select an option that best describes the type of Internet connection. This " +"information is used only to guide you with further setup." msgstr "" -#: plinth/modules/networks/templates/connections_list.html:137 -#, python-format +#: plinth/modules/networks/templates/internet_connectivity_firstboot.html:18 +#: plinth/modules/networks/templates/router_configuration_firstboot.html:18 +msgid "Skip this step" +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_firstboot.html:19 +#: plinth/modules/networks/templates/router_configuration_firstboot.html:19 +msgid "Next" +msgstr "Neste" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:9 +#, fuzzy +#| msgid "Connection Type" +msgid "Your Internet Connection Type" +msgstr "Oppkoblingstype" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:14 msgid "" -"Your %(box_name)s gets its internet from your Router via WiFi or Ethernet " -"cable. This is a typical home setup." +"The following best describes the type of Internet connection provided by " +"your ISP. This information is only used to suggest you necessary " +"configuration actions." msgstr "" -#: plinth/modules/networks/templates/connections_list.html:145 -#: plinth/modules/networks/templates/connections_list.html:147 +#: plinth/modules/networks/templates/internet_connectivity_main.html:23 +msgid "My ISP provides a public IP address that does not change over time." +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:27 +msgid "My ISP provides a public IP address that may change over time." +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:31 +msgid "My ISP does not provide a public IP address." +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:37 +#: plinth/modules/networks/templates/router_configuration_main.html:29 #, fuzzy #| msgid "Update" msgid "Update..." msgstr "Oppdater" -#: plinth/modules/networks/templates/connections_type_select.html:34 -msgid "Create..." -msgstr "Lage ..." - -#: plinth/modules/networks/templates/router_configuration_content.html:25 +#: plinth/modules/networks/templates/router_configuration_content.html:10 #, fuzzy, python-format #| msgid "%(box_name)s is up to date." msgid "Setup %(box_name)s Behind a Router" msgstr "%(box_name)s er oppdatert." -#: plinth/modules/networks/templates/router_configuration_content.html:31 +#: plinth/modules/networks/templates/router_configuration_content.html:16 #, python-format msgid "" "Your %(box_name)s gets its internet connection from your router via Wi-Fi or " "Ethernet cable. This is a typical home setup." msgstr "" -#: plinth/modules/networks/templates/router_configuration_content.html:38 +#: plinth/modules/networks/templates/router_configuration_content.html:23 #, python-format msgid "" "With this setup, any device on the internet trying to reach your " @@ -4056,24 +4158,24 @@ msgid "" "the services." msgstr "" -#: plinth/modules/networks/templates/router_configuration_content.html:47 +#: plinth/modules/networks/templates/router_configuration_content.html:32 msgid "" "If you don't have control over your router, choose not to configure it. To " -"see options, to overcome this limitation, choose 'no public address' option " +"see options to overcome this limitation, choose 'no public address' option " "in Internet connection type selection." msgstr "" -#: plinth/modules/networks/templates/router_configuration_content.html:54 +#: plinth/modules/networks/templates/router_configuration_content.html:39 msgid "Choose How You Wish to Configure Your Router" msgstr "" -#: plinth/modules/networks/templates/router_configuration_content.html:57 +#: plinth/modules/networks/templates/router_configuration_content.html:42 msgid "" "You will need to login to your router's administration console provided by " "the router. This may look like one of the following:" msgstr "" -#: plinth/modules/networks/templates/router_configuration_content.html:69 +#: plinth/modules/networks/templates/router_configuration_content.html:54 msgid "" "The username and password is configured by you when you first setup the " "router. For many routers, this information is printed at the back of the " @@ -4083,24 +4185,27 @@ msgid "" "full instructions on how to perform this task." msgstr "" -#: plinth/modules/networks/templates/router_configuration_firstboot.html:33 -msgid "skip this step" +#: plinth/modules/networks/templates/router_configuration_main.html:9 +#, python-format +msgid "%(box_name)s Internet Connectivity" msgstr "" -#: plinth/modules/networks/templates/router_configuration_firstboot.html:35 -msgid "Next" -msgstr "Neste" +#: plinth/modules/networks/templates/router_configuration_main.html:15 +#, python-format +msgid "" +"The following best describes how your %(box_name)s is connected in your " +"network. This information is used only to suggest necessary configuration " +"actions." +msgstr "" -#: plinth/modules/openvpn/__init__.py:39 plinth/modules/openvpn/manifest.py:33 -msgid "OpenVPN" -msgstr "OpenVPN" +#: plinth/modules/networks/templates/router_configuration_main.html:23 +#, python-format +msgid "" +"Your %(box_name)s gets its Internet from your Router via Wi-Fi or Ethernet " +"cable. This is a typical home setup." +msgstr "" -#: plinth/modules/openvpn/__init__.py:43 -#: plinth/modules/wireguard/__init__.py:40 -msgid "Virtual Private Network" -msgstr "Virtuelt privat nettverk" - -#: plinth/modules/openvpn/__init__.py:47 +#: plinth/modules/openvpn/__init__.py:26 #, python-brace-format msgid "" "Virtual Private Network (VPN) is a technique for securely connecting two " @@ -4117,22 +4222,33 @@ msgstr "" "Du kan også få tilgang til resten av Internettet via {box_name} med utvidet " "sikkerhet og anonymitet." -#: plinth/modules/openvpn/__init__.py:79 +#: plinth/modules/openvpn/__init__.py:49 plinth/modules/openvpn/manifest.py:18 +msgid "OpenVPN" +msgstr "OpenVPN" + +#: plinth/modules/openvpn/__init__.py:50 +#: plinth/modules/wireguard/__init__.py:53 +msgid "Virtual Private Network" +msgstr "Virtuelt privat nettverk" + +#: plinth/modules/openvpn/__init__.py:61 #, python-brace-format msgid "" "Download Profile" msgstr "" "Last ned profil" -#: plinth/modules/openvpn/forms.py:27 +#: plinth/modules/openvpn/forms.py:12 msgid "Enable OpenVPN server" msgstr "Aktiver OpenVPN-tjener" -#: plinth/modules/openvpn/manifest.py:63 -msgid "TunnelBlick" +#: plinth/modules/openvpn/manifest.py:48 +#, fuzzy +#| msgid "TunnelBlick" +msgid "Tunnelblick" msgstr "Tunnelblick" -#: plinth/modules/openvpn/templates/openvpn.html:42 +#: plinth/modules/openvpn/templates/openvpn.html:27 #, python-format msgid "" "OpenVPN has not yet been setup. Performing a secure setup takes a very long " @@ -4143,15 +4259,15 @@ msgstr "" "tid. Avhengig av hvor fort din %(box_name)s er, kan det hende at det tar " "timer. Hvis oppsettingen blir avbrutt, kan du starte den igjen." -#: plinth/modules/openvpn/templates/openvpn.html:55 +#: plinth/modules/openvpn/templates/openvpn.html:40 msgid "Start setup" msgstr "Start oppsett" -#: plinth/modules/openvpn/templates/openvpn.html:64 +#: plinth/modules/openvpn/templates/openvpn.html:49 msgid "OpenVPN setup is running" msgstr "OpenVPN-oppsett kjører" -#: plinth/modules/openvpn/templates/openvpn.html:68 +#: plinth/modules/openvpn/templates/openvpn.html:53 #, python-format msgid "" "To perform a secure setup, this process takes a very long time. Depending " @@ -4162,11 +4278,11 @@ msgstr "" "av hvor raskt din %(box_name)s er, kan det hende at det tar timer. Hvis " "oppsettingen blir avbrutt, kan du starte den igjen." -#: plinth/modules/openvpn/templates/openvpn.html:87 +#: plinth/modules/openvpn/templates/openvpn.html:72 msgid "Profile" msgstr "Profil" -#: plinth/modules/openvpn/templates/openvpn.html:90 +#: plinth/modules/openvpn/templates/openvpn.html:75 #, fuzzy, python-format #| msgid "" #| "To connect to %(box_name)s's VPN, you need to download a profile and feed " @@ -4186,34 +4302,26 @@ msgstr "" "OpenVPN\" title=\"%(box_name)s Manual - OpenVPN\">manualsiden om " "anbefalte klienter, og instruksjoner om hvordan de settes opp." -#: plinth/modules/openvpn/templates/openvpn.html:100 +#: plinth/modules/openvpn/templates/openvpn.html:85 #, python-format msgid "Profile is specific to each user of %(box_name)s. Keep it a secret." msgstr "" "Profilen er spesifikk for hver enkelt bruker av %(box_name)s. Hold den " "hemmelig." -#: plinth/modules/openvpn/templates/openvpn.html:111 +#: plinth/modules/openvpn/templates/openvpn.html:96 msgid "Download my profile" msgstr "Last ned min profil" -#: plinth/modules/openvpn/views.py:133 +#: plinth/modules/openvpn/views.py:114 msgid "Setup completed." msgstr "Oppsettet fullført." -#: plinth/modules/openvpn/views.py:135 +#: plinth/modules/openvpn/views.py:116 msgid "Setup failed." msgstr "Oppsettet mislyktes." -#: plinth/modules/pagekite/__init__.py:39 -msgid "PageKite" -msgstr "PageKite" - -#: plinth/modules/pagekite/__init__.py:41 -msgid "Public Visibility" -msgstr "Offentlig synlighet" - -#: plinth/modules/pagekite/__init__.py:45 +#: plinth/modules/pagekite/__init__.py:26 #, python-brace-format msgid "" "PageKite is a system for exposing {box_name} services when you don't have a " @@ -4226,17 +4334,17 @@ msgstr "" "{box_name}-tjenester ikke nås fra resten av nettet. Dette omfatter de " "følgende situasjoner:" -#: plinth/modules/pagekite/__init__.py:50 +#: plinth/modules/pagekite/__init__.py:31 #, python-brace-format msgid "{box_name} is behind a restricted firewall." msgstr "{box_name} er bak en begrensende brannmur." -#: plinth/modules/pagekite/__init__.py:53 +#: plinth/modules/pagekite/__init__.py:34 #, 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:55 +#: plinth/modules/pagekite/__init__.py:36 msgid "" "Your ISP does not provide you an external IP address and instead provides " "Internet connection through NAT." @@ -4244,7 +4352,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:57 +#: plinth/modules/pagekite/__init__.py:38 msgid "" "Your ISP does not provide you a static IP address and your IP address " "changes every time you connect to Internet." @@ -4252,11 +4360,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:59 +#: plinth/modules/pagekite/__init__.py:40 msgid "Your ISP limits incoming connections." msgstr "Din Internett-leverandør begrenser innkommende oppkoblinger." -#: plinth/modules/pagekite/__init__.py:61 +#: plinth/modules/pagekite/__init__.py:42 #, fuzzy, python-brace-format #| msgid "" #| "PageKite works around NAT, firewalls and IP-address limitations by using " @@ -4276,15 +4384,23 @@ msgstr "" "\"https://pagekite.net\">pagekite.net. I fremtiden kan det bli mulig å " "bruke kameratens {box_name} til dette." -#: plinth/modules/pagekite/__init__.py:87 +#: plinth/modules/pagekite/__init__.py:62 +msgid "PageKite" +msgstr "PageKite" + +#: plinth/modules/pagekite/__init__.py:64 +msgid "Public Visibility" +msgstr "Offentlig synlighet" + +#: plinth/modules/pagekite/__init__.py:74 msgid "PageKite Domain" msgstr "PageKite-domene" -#: plinth/modules/pagekite/forms.py:66 +#: plinth/modules/pagekite/forms.py:51 msgid "Server domain" msgstr "Tjenerdomene" -#: plinth/modules/pagekite/forms.py:68 +#: plinth/modules/pagekite/forms.py:53 msgid "" "Select your pagekite server. Set \"pagekite.net\" to use the default " "pagekite.net server." @@ -4292,31 +4408,31 @@ msgstr "" "Velg din PageKite-tjener. Sett «pagekite.net» for å bruke den forvalgte " "pagekite.net-tjeneren." -#: plinth/modules/pagekite/forms.py:71 plinth/modules/shadowsocks/forms.py:55 +#: plinth/modules/pagekite/forms.py:56 plinth/modules/shadowsocks/forms.py:40 msgid "Server port" msgstr "Tjenerport" -#: plinth/modules/pagekite/forms.py:72 +#: plinth/modules/pagekite/forms.py:57 msgid "Port of your pagekite server (default: 80)" msgstr "Port for din PageKite-tjener (default: 80)" -#: plinth/modules/pagekite/forms.py:74 +#: plinth/modules/pagekite/forms.py:59 msgid "Kite name" msgstr "«Kite»-navn" -#: plinth/modules/pagekite/forms.py:75 +#: plinth/modules/pagekite/forms.py:60 msgid "Example: mybox.pagekite.me" msgstr "Eksempel: mybox.pagekite.me" -#: plinth/modules/pagekite/forms.py:77 +#: plinth/modules/pagekite/forms.py:62 msgid "Invalid kite name" msgstr "Ugyldig «kite»-navn" -#: plinth/modules/pagekite/forms.py:81 +#: plinth/modules/pagekite/forms.py:66 msgid "Kite secret" msgstr "«Kite»-hemmelig" -#: plinth/modules/pagekite/forms.py:82 +#: plinth/modules/pagekite/forms.py:67 msgid "" "A secret associated with the kite or the default secret for your account if " "no secret is set on the kite." @@ -4324,43 +4440,43 @@ msgstr "" "En hemmelighet knyttet til «Kite»-en, eller den forvalgte hemmeligheten for " "din konto hvis ingen hemmelighet er satt for «Kite»-en." -#: plinth/modules/pagekite/forms.py:98 +#: plinth/modules/pagekite/forms.py:83 msgid "Kite details set" msgstr "«Kite»-detaljer satt" -#: plinth/modules/pagekite/forms.py:105 +#: plinth/modules/pagekite/forms.py:90 msgid "Pagekite server set" msgstr "PageKite-tjener satt" -#: plinth/modules/pagekite/forms.py:129 +#: plinth/modules/pagekite/forms.py:114 msgid "PageKite enabled" msgstr "PageKite aktivert" -#: plinth/modules/pagekite/forms.py:132 +#: plinth/modules/pagekite/forms.py:117 msgid "PageKite disabled" msgstr "PageKite deaktivert" -#: plinth/modules/pagekite/forms.py:148 +#: plinth/modules/pagekite/forms.py:133 msgid "protocol" msgstr "protokoll" -#: plinth/modules/pagekite/forms.py:151 +#: plinth/modules/pagekite/forms.py:136 msgid "external (frontend) port" msgstr "Ekstern (frontend) port" -#: plinth/modules/pagekite/forms.py:154 +#: plinth/modules/pagekite/forms.py:139 msgid "internal (freedombox) port" msgstr "intern (FreedomBox) port" -#: plinth/modules/pagekite/forms.py:155 +#: plinth/modules/pagekite/forms.py:140 msgid "Enable Subdomains" msgstr "Tillat underdomener (Subdomains)" -#: plinth/modules/pagekite/forms.py:189 +#: plinth/modules/pagekite/forms.py:174 msgid "Deleted custom service" msgstr "Deaktivert selvvalgt (tilpasset) tjeneste" -#: plinth/modules/pagekite/forms.py:222 +#: plinth/modules/pagekite/forms.py:207 msgid "" "This service is available as a standard service. Please use the \"Standard " "Services\" page to enable it." @@ -4368,45 +4484,45 @@ msgstr "" "Denne tjenesten er tilgjengelig som en standard tjeneste. Vennligst bruk " "«Standard Services»-siden for å aktivere den." -#: plinth/modules/pagekite/forms.py:231 +#: plinth/modules/pagekite/forms.py:216 msgid "Added custom service" msgstr "Lagt til selvvalgt tjeneste" -#: plinth/modules/pagekite/forms.py:234 +#: plinth/modules/pagekite/forms.py:219 msgid "This service already exists" msgstr "Denne tjenesten finnes allerede" -#: plinth/modules/pagekite/templates/pagekite_configure.html:47 +#: plinth/modules/pagekite/templates/pagekite_configure.html:32 msgid "Custom Services" msgstr "Tilpassede tjenester" -#: plinth/modules/pagekite/templates/pagekite_configure.html:50 -#: plinth/modules/pagekite/templates/pagekite_configure.html:52 +#: plinth/modules/pagekite/templates/pagekite_configure.html:35 +#: plinth/modules/pagekite/templates/pagekite_configure.html:37 #, fuzzy #| msgid "Custom Services" msgid "Add Custom Service" msgstr "Tilpassede tjenester" -#: plinth/modules/pagekite/templates/pagekite_configure.html:57 +#: plinth/modules/pagekite/templates/pagekite_configure.html:42 msgid "Existing custom services" msgstr "Eksisterende selvvalgte tjenester" -#: plinth/modules/pagekite/templates/pagekite_configure.html:71 +#: plinth/modules/pagekite/templates/pagekite_configure.html:56 #, python-format msgid "connected to %(backend_host)s:%(backend_port)s" msgstr "koblet til %(backend_host)s:%(backend_port)s" -#: plinth/modules/pagekite/templates/pagekite_configure.html:83 +#: plinth/modules/pagekite/templates/pagekite_configure.html:68 msgid "Delete this service" msgstr "Slett denne tjenesten" -#: plinth/modules/pagekite/templates/pagekite_custom_services.html:30 +#: plinth/modules/pagekite/templates/pagekite_custom_services.html:15 #, fuzzy #| msgid "Added custom service" msgid "Add custom PageKite service" msgstr "Lagt til selvvalgt tjeneste" -#: plinth/modules/pagekite/templates/pagekite_custom_services.html:32 +#: plinth/modules/pagekite/templates/pagekite_custom_services.html:17 msgid "" "Warning:imaps://imap.example.com."
-#: plinth/modules/roundcube/__init__.py:53
+#: plinth/modules/roundcube/__init__.py:32
msgid ""
"For Gmail, username will be your Gmail address, password will be your Google "
"account password and server will be imaps://imap.gmail.com. "
@@ -4821,17 +4927,22 @@ msgstr ""
"lesssecureapps\">https://www.google.com/settings/security/lesssecureapps"
"a>)."
-#: plinth/modules/samba/__init__.py:46
-msgid "Samba"
-msgstr "Samba"
+#: plinth/modules/roundcube/__init__.py:54
+#: plinth/modules/roundcube/manifest.py:9
+msgid "Roundcube"
+msgstr "Roundcube"
-#: plinth/modules/samba/__init__.py:53
+#: plinth/modules/roundcube/__init__.py:55
+msgid "Email Client"
+msgstr "E-postklient"
+
+#: plinth/modules/samba/__init__.py:32
msgid ""
"Samba allows to share files and folders between FreedomBox and other "
"computers in your local network."
msgstr ""
-#: plinth/modules/samba/__init__.py:56
+#: plinth/modules/samba/__init__.py:35
#, python-brace-format
msgid ""
"After installation, you can choose which disks to use for sharing. Enabled "
@@ -4840,57 +4951,61 @@ msgid ""
"There are three types of shares you can choose from: "
msgstr ""
-#: plinth/modules/samba/__init__.py:61
+#: plinth/modules/samba/__init__.py:40
msgid "Open share - accessible to everyone in your local network."
msgstr ""
-#: plinth/modules/samba/__init__.py:62
+#: plinth/modules/samba/__init__.py:41
msgid ""
"Group share - accessible only to FreedomBox users who are in the freedombox-"
"share group."
msgstr ""
-#: plinth/modules/samba/__init__.py:64
+#: plinth/modules/samba/__init__.py:43
msgid ""
"Home share - every user in the freedombox-share group can have their own "
"private space."
msgstr ""
-#: plinth/modules/samba/__init__.py:68
+#: plinth/modules/samba/__init__.py:47
msgid "Access to the private shares"
msgstr "Tilgang til private delinger"
-#: plinth/modules/samba/templates/samba.html:39
-#: plinth/modules/samba/templates/samba.html:50
+#: plinth/modules/samba/__init__.py:61
+msgid "Samba"
+msgstr "Samba"
+
+#: plinth/modules/samba/templates/samba.html:24
+#: plinth/modules/samba/templates/samba.html:35
#, fuzzy
#| msgid "Shared"
msgid "Shares"
msgstr "Delt"
-#: plinth/modules/samba/templates/samba.html:41
+#: plinth/modules/samba/templates/samba.html:26
msgid ""
"Note: Only specially created directories will be shared on selected disks, "
"not the whole disk."
msgstr ""
-#: plinth/modules/samba/templates/samba.html:49
+#: plinth/modules/samba/templates/samba.html:34
#, fuzzy
#| msgid "Domain Name"
msgid "Disk Name"
msgstr "Domenenavn"
-#: plinth/modules/samba/templates/samba.html:51
-#: plinth/modules/storage/templates/storage.html:44
+#: plinth/modules/samba/templates/samba.html:36
+#: plinth/modules/storage/templates/storage.html:29
msgid "Used"
msgstr "Brukt"
-#: plinth/modules/samba/templates/samba.html:72
+#: plinth/modules/samba/templates/samba.html:57
#, fuzzy
#| msgid "vfat partitions are not supported"
msgid "VFAT partitions are not supported"
msgstr "VFAT-partisjoner støttes ikke"
-#: plinth/modules/samba/templates/samba.html:103
+#: plinth/modules/samba/templates/samba.html:88
#, python-format
msgid ""
"You can find additional information about disks on the users module page."
msgstr ""
-#: plinth/modules/samba/templates/samba.html:109
+#: plinth/modules/samba/templates/samba.html:94
#, fuzzy
msgid "Users who can currently access group and home shares"
msgstr "Brukere som for tiden har tilgang til gruppe- og hjemmedelinger"
-#: plinth/modules/samba/templates/samba.html:113
+#: plinth/modules/samba/templates/samba.html:98
msgid ""
"Users needing to re-enter their password on the password change page to "
"access group and home shares"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:118
+#: plinth/modules/samba/templates/samba.html:103
#, fuzzy
#| msgid "Available Domains"
msgid "Unavailable Shares"
msgstr "Tilgjengelige domener"
-#: plinth/modules/samba/templates/samba.html:120
+#: plinth/modules/samba/templates/samba.html:105
msgid ""
"Shares that are configured but the disk is not available. If the disk is "
"plugged back in, sharing will be automatically enabled."
msgstr ""
-#: plinth/modules/samba/templates/samba.html:128
+#: plinth/modules/samba/templates/samba.html:113
#, fuzzy
#| msgid "Share added."
msgid "Share name"
msgstr "Deling lagt til."
-#: plinth/modules/samba/templates/samba.html:129
+#: plinth/modules/samba/templates/samba.html:114
#, fuzzy
#| msgid "Actions"
msgid "Action"
msgstr "Handlinger"
-#: plinth/modules/samba/views.py:61 plinth/modules/storage/forms.py:164
+#: plinth/modules/samba/views.py:43 plinth/modules/storage/forms.py:149
#, fuzzy
#| msgid "Add Share"
msgid "Open Share"
msgstr "Legg til deling"
-#: plinth/modules/samba/views.py:62 plinth/modules/storage/forms.py:162
+#: plinth/modules/samba/views.py:44 plinth/modules/storage/forms.py:147
#, fuzzy
#| msgid "Add Share"
msgid "Group Share"
msgstr "Legg til deling"
-#: plinth/modules/samba/views.py:63
+#: plinth/modules/samba/views.py:45
#, fuzzy
#| msgid "Homepage"
msgid "Home Share"
msgstr "Hjemmeside"
-#: plinth/modules/samba/views.py:96
+#: plinth/modules/samba/views.py:78
#, fuzzy
#| msgid "Share deleted."
msgid "Share enabled."
msgstr "Deling slettet."
-#: plinth/modules/samba/views.py:101
+#: plinth/modules/samba/views.py:83
#, fuzzy, python-brace-format
#| msgid "Error ejecting device: {error_message}"
msgid "Error enabling share: {error_message}"
msgstr "Feil ved utløsing av enhet: {error_message}"
-#: plinth/modules/samba/views.py:106
+#: plinth/modules/samba/views.py:88
#, fuzzy
#| msgid "Share edited."
msgid "Share disabled."
msgstr "Deling redigert."
-#: plinth/modules/samba/views.py:111
+#: plinth/modules/samba/views.py:93
#, fuzzy, python-brace-format
#| msgid "Error ejecting device: {error_message}"
msgid "Error disabling share: {error_message}"
msgstr "Feil ved utløsing av enhet: {error_message}"
-#: plinth/modules/searx/__init__.py:41 plinth/modules/searx/manifest.py:24
-msgid "Searx"
-msgstr "Searx"
-
-#: plinth/modules/searx/__init__.py:45
-msgid "Web Search"
-msgstr "Nettsøk"
-
-#: plinth/modules/searx/__init__.py:48
+#: plinth/modules/searx/__init__.py:25
msgid ""
"Searx is a privacy-respecting Internet metasearch engine. It aggregrates and "
"displays results from multiple search engines."
@@ -4991,7 +5098,7 @@ msgstr ""
"Searx er en metasøkemotor for Internett som tar hensyn til personvernet. Den "
"henter og viser resultater fra flere søkemotorer."
-#: plinth/modules/searx/__init__.py:50
+#: plinth/modules/searx/__init__.py:27
msgid ""
"Searx can be used to avoid tracking and profiling by search engines. It "
"stores no cookies by default."
@@ -4999,50 +5106,58 @@ msgstr ""
"Searx kan brukes for å unngå sporing og profilbygging av søkemotorer. Den "
"lagrer ingen kaker som forvalg."
-#: plinth/modules/searx/__init__.py:54
+#: plinth/modules/searx/__init__.py:31
msgid "Search the web"
msgstr "Søk på nettet"
-#: plinth/modules/searx/forms.py:30
+#: plinth/modules/searx/__init__.py:47 plinth/modules/searx/manifest.py:9
+msgid "Searx"
+msgstr "Searx"
+
+#: plinth/modules/searx/__init__.py:48
+msgid "Web Search"
+msgstr "Nettsøk"
+
+#: plinth/modules/searx/forms.py:15
msgid "Safe Search"
msgstr "Trygt søk"
-#: plinth/modules/searx/forms.py:31
+#: plinth/modules/searx/forms.py:16
msgid "Select the default family filter to apply to your search results."
msgstr ""
"Velg hvilket forvalgt familiefilter som skal anvendes for dine "
"søkeresultater."
-#: plinth/modules/searx/forms.py:32
+#: plinth/modules/searx/forms.py:17
msgid "None"
msgstr "Ingen"
-#: plinth/modules/searx/forms.py:32
+#: plinth/modules/searx/forms.py:17
msgid "Moderate"
msgstr "Moderat"
-#: plinth/modules/searx/forms.py:32
+#: plinth/modules/searx/forms.py:17
msgid "Strict"
msgstr "Streng"
-#: plinth/modules/searx/forms.py:35
+#: plinth/modules/searx/forms.py:20
msgid "Allow Public Access"
msgstr "Tillat offentlig tilgang"
-#: plinth/modules/searx/forms.py:36
+#: plinth/modules/searx/forms.py:21
msgid "Allow this application to be used by anyone who can reach it."
msgstr "Tillat dette programmet brukt av alle som kan nå det."
-#: plinth/modules/searx/views.py:59 plinth/modules/searx/views.py:70
-#: plinth/modules/tor/views.py:149 plinth/modules/tor/views.py:176
+#: plinth/modules/searx/views.py:39 plinth/modules/searx/views.py:50
+#: plinth/modules/tor/views.py:130 plinth/modules/tor/views.py:157
msgid "Configuration updated."
msgstr "Konfigurering oppdatert."
-#: plinth/modules/security/forms.py:28
+#: plinth/modules/security/forms.py:13
msgid "Restrict console logins (recommended)"
msgstr "Begrens konsollinnlogging (anbefalt)"
-#: plinth/modules/security/forms.py:29
+#: plinth/modules/security/forms.py:14
msgid ""
"When this option is enabled, only users in the \"admin\" group will be able "
"to log in to console or via SSH. Console users may be able to access some "
@@ -5052,11 +5167,11 @@ 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/forms.py:34
+#: plinth/modules/security/forms.py:19
msgid "Fail2Ban (recommended)"
msgstr "Fail2Ban (anbefalt)"
-#: plinth/modules/security/forms.py:35
+#: plinth/modules/security/forms.py:20
msgid ""
"When this option is enabled, Fail2Ban will limit brute force break-in "
"attempts to the SSH server and other enabled password protected internet-"
@@ -5065,21 +5180,21 @@ msgstr ""
"Når dette valget er aktivt, begrenser Fail2Ban «brute force»-angrepsforsøk "
"mot SSH-tjeneren og andre aktive passordbeskyttede internettjenester."
-#: plinth/modules/security/templates/security.html:26
-#: plinth/modules/security/templates/security.html:28
+#: plinth/modules/security/templates/security.html:11
+#: plinth/modules/security/templates/security.html:13
#, fuzzy
#| msgid "Show security vulnerabilities"
msgid "Show security report"
msgstr "Vis sikkerhetssårbarheter"
-#: plinth/modules/security/templates/security_report.html:25
-#: plinth/modules/security/views.py:87
+#: plinth/modules/security/templates/security_report.html:10
+#: plinth/modules/security/views.py:71
#, fuzzy
#| msgid "Security Notice"
msgid "Security Report"
msgstr "Sikkerhetsmerknad"
-#: plinth/modules/security/templates/security_report.html:27
+#: plinth/modules/security/templates/security_report.html:12
#, python-format
msgid ""
"The installed version of FreedomBox has %(count)s reported security "
@@ -5088,7 +5203,7 @@ msgstr ""
"Installert versjon av FreedomBox har %(count)s rapporterte "
"sikkerhetssårbarheter."
-#: plinth/modules/security/templates/security_report.html:33
+#: plinth/modules/security/templates/security_report.html:18
#, fuzzy
#| msgid ""
#| "The following table lists the reported number of security vulnerabilities "
@@ -5100,93 +5215,85 @@ msgstr ""
"Følgende tabell lister antall innrapporterte sikkerhetssårbarheter for hver "
"installerte program."
-#: plinth/modules/security/templates/security_report.html:39
+#: plinth/modules/security/templates/security_report.html:24
msgid ""
"For apps that provide services, the \"Sandboxed\" column shows whether "
"sandboxing features are in use. Sandboxing mitigates the impact of a "
"potentially compromised app to the rest of the system."
msgstr ""
-#: plinth/modules/security/templates/security_report.html:46
+#: plinth/modules/security/templates/security_report.html:31
msgid ""
"\"Sandbox Coverage\" is a score of how effectively the service is isolated "
"from the rest of the system. It is only displayed while the service is "
"running."
msgstr ""
-#: plinth/modules/security/templates/security_report.html:55
+#: plinth/modules/security/templates/security_report.html:40
msgid "App Name"
msgstr "Programnavn"
-#: plinth/modules/security/templates/security_report.html:56
+#: plinth/modules/security/templates/security_report.html:41
#, fuzzy
#| msgid "Show security vulnerabilities"
msgid "Current Vulnerabilities"
msgstr "Vis sikkerhetssårbarheter"
-#: plinth/modules/security/templates/security_report.html:57
+#: plinth/modules/security/templates/security_report.html:42
#, fuzzy
#| msgid "Show security vulnerabilities"
msgid "Past Vulnerabilities"
msgstr "Vis sikkerhetssårbarheter"
-#: plinth/modules/security/templates/security_report.html:58
+#: plinth/modules/security/templates/security_report.html:43
#, fuzzy
#| msgid "Block Sandbox"
msgid "Sandboxed"
msgstr "Block-sandkassen"
-#: plinth/modules/security/templates/security_report.html:59
+#: plinth/modules/security/templates/security_report.html:44
#, fuzzy
#| msgid "Block Sandbox"
msgid "Sandbox Coverage"
msgstr "Block-sandkassen"
-#: plinth/modules/security/templates/security_report.html:70
+#: plinth/modules/security/templates/security_report.html:55
#, fuzzy
msgid "N/A"
msgstr "I/t"
-#: plinth/modules/security/templates/security_report.html:72
+#: plinth/modules/security/templates/security_report.html:57
#, fuzzy
#| msgid "yes"
msgid "Yes"
msgstr "Ja"
-#: plinth/modules/security/templates/security_report.html:74
+#: plinth/modules/security/templates/security_report.html:59
#, fuzzy
#| msgid "None"
msgid "No"
msgstr "Ingen"
-#: plinth/modules/security/templates/security_report.html:81
+#: plinth/modules/security/templates/security_report.html:66
#, fuzzy
#| msgid "is not running"
msgid "Not running"
msgstr "kjører ikke"
-#: plinth/modules/security/views.py:69
+#: plinth/modules/security/views.py:53
#, python-brace-format
msgid "Error setting restricted access: {exception}"
msgstr "Feil ved oppsetting av begrenset tilgang: {exception}"
-#: plinth/modules/security/views.py:72
+#: plinth/modules/security/views.py:56
msgid "Updated security configuration"
msgstr "Oppdaterte sikkerhetsoppsett"
-#: plinth/modules/shaarli/__init__.py:34 plinth/modules/shaarli/manifest.py:23
-msgid "Shaarli"
-msgstr "Shaarli"
-
-#: plinth/modules/shaarli/__init__.py:36
-msgid "Bookmarks"
-msgstr "Bokmerker"
-
-#: plinth/modules/shaarli/__init__.py:39
+#: plinth/modules/shaarli/__init__.py:20
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:21
#, fuzzy
#| msgid ""
#| "When enabled, Shaarli will be available from /"
@@ -5202,15 +5309,15 @@ msgstr ""
"shaarli på nett-tjeneren. Merk at Shaarli kun støtter en enkelt "
"brukerkonto, som du må sette opp ved det første besøket."
-#: plinth/modules/shadowsocks/__init__.py:35
-msgid "Shadowsocks"
-msgstr "Shadowsocks"
+#: plinth/modules/shaarli/__init__.py:39 plinth/modules/shaarli/manifest.py:8
+msgid "Shaarli"
+msgstr "Shaarli"
-#: plinth/modules/shadowsocks/__init__.py:39
-msgid "Socks5 Proxy"
-msgstr "SOCKS5-mellomtjener"
+#: plinth/modules/shaarli/__init__.py:40
+msgid "Bookmarks"
+msgstr "Bokmerker"
-#: plinth/modules/shadowsocks/__init__.py:46
+#: plinth/modules/shadowsocks/__init__.py:25
msgid ""
"Shadowsocks is a lightweight and secure SOCKS5 proxy, designed to protect "
"your Internet traffic. It can be used to bypass Internet filtering and "
@@ -5220,7 +5327,7 @@ msgstr ""
"beskytte din internettrafikk. Den kan brukes til å omgå internettfiltrering "
"og -sensur."
-#: plinth/modules/shadowsocks/__init__.py:50
+#: plinth/modules/shadowsocks/__init__.py:29
#, python-brace-format
msgid ""
"Your {box_name} can run a Shadowsocks client, that can connect to a "
@@ -5233,7 +5340,7 @@ msgstr ""
"enheter kan koble til denne mellomtjeneren, og deres data vil krypteres og "
"mellomtjent gjennom Shadowsocks-tjeneren."
-#: plinth/modules/shadowsocks/__init__.py:55
+#: plinth/modules/shadowsocks/__init__.py:34
msgid ""
"To use Shadowsocks after setup, set the SOCKS5 proxy URL in your device, "
"browser or application to http://freedombox_address:1080/"
@@ -5241,36 +5348,40 @@ msgstr ""
"For å bruke Shadowsocks etter oppsett, legg SOCKS5-mellomtjenernettadresen "
"på din enhet, nettleser, eller program til http://freedombox_address:1080/"
-#: plinth/modules/shadowsocks/forms.py:28
-#: plinth/modules/shadowsocks/forms.py:29
+#: plinth/modules/shadowsocks/__init__.py:50
+msgid "Shadowsocks"
+msgstr "Shadowsocks"
+
+#: plinth/modules/shadowsocks/__init__.py:52
+msgid "Socks5 Proxy"
+msgstr "SOCKS5-mellomtjener"
+
+#: plinth/modules/shadowsocks/forms.py:13
+#: plinth/modules/shadowsocks/forms.py:14
msgid "Recommended"
msgstr "Anbefalt"
-#: plinth/modules/shadowsocks/forms.py:52
+#: plinth/modules/shadowsocks/forms.py:37
msgid "Server"
msgstr "Tjener"
-#: plinth/modules/shadowsocks/forms.py:53
+#: plinth/modules/shadowsocks/forms.py:38
msgid "Server hostname or IP address"
msgstr "Tjernens vertsnavn eller IP-adresse"
-#: plinth/modules/shadowsocks/forms.py:57
+#: plinth/modules/shadowsocks/forms.py:42
msgid "Server port number"
msgstr "Tjener-portnummer"
-#: plinth/modules/shadowsocks/forms.py:60
+#: plinth/modules/shadowsocks/forms.py:45
msgid "Password used to encrypt data. Must match server password."
msgstr "Passord brukt for å kryptere data. Må samsvare med tjenerpassord."
-#: plinth/modules/shadowsocks/forms.py:65
+#: plinth/modules/shadowsocks/forms.py:50
msgid "Encryption method. Must match setting on server."
msgstr "Krypteringsmetode. Må samsvare med den brukt på tjeneren."
-#: plinth/modules/sharing/__init__.py:34
-msgid "Sharing"
-msgstr "Deling"
-
-#: plinth/modules/sharing/__init__.py:38
+#: plinth/modules/sharing/__init__.py:21
#, python-brace-format
msgid ""
"Sharing allows you to share files and folders on your {box_name} over the "
@@ -5279,11 +5390,15 @@ msgstr ""
"Deling lar deg dele filer og mapper på din {box_name} over nettet, med en "
"utvalgt gruppe brukere."
-#: plinth/modules/sharing/forms.py:33
+#: plinth/modules/sharing/__init__.py:38
+msgid "Sharing"
+msgstr "Deling"
+
+#: plinth/modules/sharing/forms.py:18
msgid "Name of the share"
msgstr "Navn på delt område"
-#: plinth/modules/sharing/forms.py:35
+#: plinth/modules/sharing/forms.py:20
msgid ""
"A lowercase alpha-numeric string that uniquely identifies a share. Example: "
"media."
@@ -5291,27 +5406,27 @@ msgstr ""
"En alfanumerisk streng med små bokstaver som unikt identifiserer en deling. "
"Eksempel media."
-#: plinth/modules/sharing/forms.py:39
+#: plinth/modules/sharing/forms.py:24
msgid "Path to share"
msgstr "Sti å dele"
-#: plinth/modules/sharing/forms.py:40
+#: plinth/modules/sharing/forms.py:25
msgid "Disk path to a folder on this server that you intend to share."
msgstr "Disksti til en mappe på denne tjeneren som du ønsker å dele."
-#: plinth/modules/sharing/forms.py:43
+#: plinth/modules/sharing/forms.py:28
msgid "Public share"
msgstr "Del offentlig"
-#: plinth/modules/sharing/forms.py:44
+#: plinth/modules/sharing/forms.py:29
msgid "Make files in this folder available to anyone with the link."
msgstr "Gjør filene i denne mappen tilgjengelig for alle som har lenken."
-#: plinth/modules/sharing/forms.py:48
+#: plinth/modules/sharing/forms.py:33
msgid "User groups that can read the files in the share"
msgstr "Brukergrupper som kan lese filene på det delte området"
-#: plinth/modules/sharing/forms.py:50
+#: plinth/modules/sharing/forms.py:35
msgid ""
"Users of the selected user groups will be able to read the files in the "
"share."
@@ -5319,64 +5434,60 @@ msgstr ""
"Brukere i de utvalgte brukergruppene vil også kunne lese filene i det delte "
"området."
-#: plinth/modules/sharing/forms.py:67
+#: plinth/modules/sharing/forms.py:52
msgid "A share with this name already exists."
msgstr "En deling ved dette navnet finnes allerede."
-#: plinth/modules/sharing/forms.py:78
+#: plinth/modules/sharing/forms.py:63
msgid "Shares should be either public or shared with at least one group"
msgstr "Delte områder bør enten være offentlig eller delt med minst en gruppe"
-#: plinth/modules/sharing/templates/sharing.html:39
-#: plinth/modules/sharing/templates/sharing.html:42
+#: plinth/modules/sharing/templates/sharing.html:24
+#: plinth/modules/sharing/templates/sharing.html:27
msgid "Add share"
msgstr "Legg til deling"
-#: plinth/modules/sharing/templates/sharing.html:47
+#: plinth/modules/sharing/templates/sharing.html:32
msgid "No shares currently configured."
msgstr "Ingen delte områder er satt opp foreløpig."
-#: plinth/modules/sharing/templates/sharing.html:53
+#: plinth/modules/sharing/templates/sharing.html:38
msgid "Disk Path"
msgstr "Disksti"
-#: plinth/modules/sharing/templates/sharing.html:54
+#: plinth/modules/sharing/templates/sharing.html:39
msgid "Shared Over"
msgstr "Delt over"
-#: plinth/modules/sharing/templates/sharing.html:55
+#: plinth/modules/sharing/templates/sharing.html:40
msgid "With Groups"
msgstr "Med Grupper"
-#: plinth/modules/sharing/templates/sharing.html:73
+#: plinth/modules/sharing/templates/sharing.html:58
msgid "public access"
msgstr "Offentlig tilgang"
-#: plinth/modules/sharing/views.py:55
+#: plinth/modules/sharing/views.py:39
msgid "Share added."
msgstr "Deling lagt til."
-#: plinth/modules/sharing/views.py:60
+#: plinth/modules/sharing/views.py:44
msgid "Add Share"
msgstr "Legg til deling"
-#: plinth/modules/sharing/views.py:75
+#: plinth/modules/sharing/views.py:59
msgid "Share edited."
msgstr "Deling redigert."
-#: plinth/modules/sharing/views.py:80
+#: plinth/modules/sharing/views.py:64
msgid "Edit Share"
msgstr "Rediger deling"
-#: plinth/modules/sharing/views.py:111
+#: plinth/modules/sharing/views.py:95
msgid "Share deleted."
msgstr "Deling slettet."
-#: plinth/modules/snapshot/__init__.py:37
-msgid "Storage Snapshots"
-msgstr "Lagrings-avbildninger"
-
-#: plinth/modules/snapshot/__init__.py:40
+#: plinth/modules/snapshot/__init__.py:23
msgid ""
"Snapshots allows creating and managing btrfs file system snapshots. These "
"can be used to roll back the system to a previously known good state in case "
@@ -5387,7 +5498,7 @@ msgstr ""
"en tidligere kjent god tilstand i tilfelle det har skjedd uønskede endringer "
"på systemet."
-#: plinth/modules/snapshot/__init__.py:44
+#: plinth/modules/snapshot/__init__.py:27
#, no-python-format
msgid ""
"Snapshots are taken periodically (called timeline snapshots) and also before "
@@ -5398,7 +5509,7 @@ msgstr ""
"etter programvareinstallasjon. Eldre øyeblikksbilder renskes automatisk i "
"henhold til innstillingene nedenfor."
-#: plinth/modules/snapshot/__init__.py:47
+#: plinth/modules/snapshot/__init__.py:30
msgid ""
"Snapshots currently work on btrfs file systems only and on the root "
"partition only. Snapshots are not a replacement for sikkerhetskopier i og med at de er lagret på samme partisjon. "
-#: plinth/modules/snapshot/forms.py:27
+#: plinth/modules/snapshot/__init__.py:52
+msgid "Storage Snapshots"
+msgstr "Lagrings-avbildninger"
+
+#: plinth/modules/snapshot/forms.py:12
msgid "Free Disk Space to Maintain"
msgstr "Ledig diskplass å sette av"
-#: plinth/modules/snapshot/forms.py:28
+#: plinth/modules/snapshot/forms.py:13
msgid ""
"Maintain this percentage of free space on the disk. If free space falls "
"below this value, older snapshots are removed until this much free space is "
@@ -5422,62 +5537,62 @@ msgstr ""
"under denne verdien, fjernes eldre øyeblikksbilder til denne mengden ledig "
"plass oppnås. Forvalgt verdi er 30%."
-#: plinth/modules/snapshot/forms.py:35
+#: plinth/modules/snapshot/forms.py:20
msgid "Timeline Snapshots"
msgstr "Tildslinjeavbildninger"
-#: plinth/modules/snapshot/forms.py:36
+#: plinth/modules/snapshot/forms.py:21
msgid ""
"Enable or disable timeline snapshots (hourly, daily, monthly and yearly)."
msgstr ""
"Skru på eller av tidslinjeavbildninger (timevist, daglig, månedlig og "
"årvist)."
-#: plinth/modules/snapshot/forms.py:41
+#: plinth/modules/snapshot/forms.py:26
msgid "Software Installation Snapshots"
msgstr "Øyeblikksbilder av programvareinstallasjoner"
-#: plinth/modules/snapshot/forms.py:42
+#: plinth/modules/snapshot/forms.py:27
msgid "Enable or disable snapshots before and after software installation"
msgstr "Skru på eller av øyeblikksbilder før og etter programvareinstallasjon"
-#: plinth/modules/snapshot/forms.py:47
+#: plinth/modules/snapshot/forms.py:32
msgid "Hourly Snapshots Limit"
msgstr "Timevis avbildningsgrense"
-#: plinth/modules/snapshot/forms.py:48
+#: plinth/modules/snapshot/forms.py:33
msgid "Keep a maximum of this many hourly snapshots."
msgstr "Behold opptil dette antallet timevise øyeblikksbilder."
-#: plinth/modules/snapshot/forms.py:51
+#: plinth/modules/snapshot/forms.py:36
msgid "Daily Snapshots Limit"
msgstr "Daglig avbildningsgrense"
-#: plinth/modules/snapshot/forms.py:52
+#: plinth/modules/snapshot/forms.py:37
msgid "Keep a maximum of this many daily snapshots."
msgstr "Behold opptil dette antallet daglige avbildninger."
-#: plinth/modules/snapshot/forms.py:55
+#: plinth/modules/snapshot/forms.py:40
msgid "Weekly Snapshots Limit"
msgstr "Ukentlig avbildningsgrense"
-#: plinth/modules/snapshot/forms.py:56
+#: plinth/modules/snapshot/forms.py:41
msgid "Keep a maximum of this many weekly snapshots."
msgstr "Behold opptil dette antallet ukentlige øyeblikksbilder."
-#: plinth/modules/snapshot/forms.py:59
+#: plinth/modules/snapshot/forms.py:44
msgid "Monthly Snapshots Limit"
msgstr "Månedlig avbildningsgrense"
-#: plinth/modules/snapshot/forms.py:60
+#: plinth/modules/snapshot/forms.py:45
msgid "Keep a maximum of this many monthly snapshots."
msgstr "Behold opptil dette antallet månedlige avbildninger."
-#: plinth/modules/snapshot/forms.py:63
+#: plinth/modules/snapshot/forms.py:48
msgid "Yearly Snapshots Limit"
msgstr "Årlig avbildningsgrense"
-#: plinth/modules/snapshot/forms.py:64
+#: plinth/modules/snapshot/forms.py:49
msgid ""
"Keep a maximum of this many yearly snapshots. The default value is 0 "
"(disabled)."
@@ -5485,46 +5600,46 @@ msgstr ""
"Behold opptil dette antallet årlige avbildninger. Forvalgt verdi er 0 "
"(avskrudd)."
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:27
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:12
msgid "Delete the following snapshots permanently?"
msgstr "Slett denne avbildningen for godt?"
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:31
-#: plinth/modules/snapshot/templates/snapshot_manage.html:43
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:39
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:16
+#: plinth/modules/snapshot/templates/snapshot_manage.html:28
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:24
msgid "Number"
msgstr "Nummer"
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:32
-#: plinth/modules/snapshot/templates/snapshot_manage.html:44
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:40
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:17
+#: plinth/modules/snapshot/templates/snapshot_manage.html:29
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:25
msgid "Date"
msgstr "Dato"
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:52
-#: plinth/modules/snapshot/templates/snapshot_manage.html:37
-#: plinth/modules/snapshot/views.py:196
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:37
+#: plinth/modules/snapshot/templates/snapshot_manage.html:22
+#: plinth/modules/snapshot/views.py:175
msgid "Delete Snapshots"
msgstr "Slett avbildninger"
-#: plinth/modules/snapshot/templates/snapshot_manage.html:33
+#: plinth/modules/snapshot/templates/snapshot_manage.html:18
msgid "Create Snapshot"
msgstr "Opprett øyeblikksbilde"
-#: plinth/modules/snapshot/templates/snapshot_manage.html:46
+#: plinth/modules/snapshot/templates/snapshot_manage.html:31
msgid "Rollback"
msgstr "Rull tilbake"
-#: plinth/modules/snapshot/templates/snapshot_manage.html:57
+#: plinth/modules/snapshot/templates/snapshot_manage.html:42
msgid "active"
msgstr "Slått på"
-#: plinth/modules/snapshot/templates/snapshot_manage.html:66
+#: plinth/modules/snapshot/templates/snapshot_manage.html:51
#, python-format
msgid "Rollback to snapshot #%(number)s"
msgstr "Rull tilbake til øyeblikksbilde #%(number)s"
-#: plinth/modules/snapshot/templates/snapshot_not_supported.html:26
+#: plinth/modules/snapshot/templates/snapshot_not_supported.html:11
#, python-format
msgid ""
"Your have a filesystem of type %(fs_type)s. Snapshots are "
@@ -5534,11 +5649,11 @@ msgstr ""
"er foreløpig kun tilgjengelig på %(types_supported)s-"
"filsystemer."
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:27
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:12
msgid "Roll back the system to this snapshot?"
msgstr "Rull tilbake systemet til dette øyeblikksbildet?"
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:30
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:15
msgid ""
"A new snapshot with the current state of the file system will be "
"automatically created. You will be able to undo a rollback by reverting to "
@@ -5548,58 +5663,54 @@ msgstr ""
"automatisk. Du vil kunne gjøre om på en tilbakerulling ved å gå tilbake til "
"det nyopprettede øyeblikksbildet."
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:57
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:42
#, python-format
msgid "Rollback to Snapshot #%(number)s"
msgstr "Rull tilbake til øyeblikksbilde #%(number)s"
-#: plinth/modules/snapshot/views.py:45
+#: plinth/modules/snapshot/views.py:30
msgid "Manage Snapshots"
msgstr "Behandle avbildninger"
-#: plinth/modules/snapshot/views.py:98
+#: plinth/modules/snapshot/views.py:79
msgid "Created snapshot."
msgstr "Opprett øyeblikksbilde."
-#: plinth/modules/snapshot/views.py:156
+#: plinth/modules/snapshot/views.py:135
msgid "Storage snapshots configuration updated"
msgstr "Lagringsavbildings-oppsett oppdatert"
-#: plinth/modules/snapshot/views.py:160 plinth/modules/tor/views.py:79
+#: plinth/modules/snapshot/views.py:139 plinth/modules/tor/views.py:60
#, python-brace-format
msgid "Action error: {0} [{1}] [{2}]"
msgstr "Handlingsfeil: {0} [{1}] [{2}]"
-#: plinth/modules/snapshot/views.py:175
+#: plinth/modules/snapshot/views.py:154
msgid "Deleted all snapshots"
msgstr "Slettet alle avbildninger"
-#: plinth/modules/snapshot/views.py:179
+#: plinth/modules/snapshot/views.py:158
msgid "Deleted selected snapshots"
msgstr "Slettet alle valgte avbildninger"
-#: plinth/modules/snapshot/views.py:184
+#: plinth/modules/snapshot/views.py:163
msgid "Snapshot is currently in use. Please try again later."
msgstr "Øyeblikksbilde i bruk. Prøv igjen senere."
-#: plinth/modules/snapshot/views.py:207
+#: plinth/modules/snapshot/views.py:186
#, python-brace-format
msgid "Rolled back to snapshot #{number}."
msgstr "Rullet tilbake til øyeblikksbilde #{number}."
-#: plinth/modules/snapshot/views.py:210
+#: plinth/modules/snapshot/views.py:189
msgid "The system must be restarted to complete the rollback."
msgstr "Systemet må startes på nytt for å fullføre tilbakerullingen."
-#: plinth/modules/snapshot/views.py:222
+#: plinth/modules/snapshot/views.py:201
msgid "Rollback to Snapshot"
msgstr "Rull tilbake til øyeblikksbilde"
-#: plinth/modules/ssh/__init__.py:43
-msgid "Secure Shell (SSH) Server"
-msgstr "Secure Shell (SSH) tjener"
-
-#: plinth/modules/ssh/__init__.py:46
+#: plinth/modules/ssh/__init__.py:29
msgid ""
"A Secure Shell server uses the secure shell protocol to accept connections "
"from remote computers. An authorized remote computer can perform "
@@ -5611,13 +5722,17 @@ msgstr ""
"annensteds hen kan utføre administrasjonsoppgaver, kopiere filer eller kjøre "
"andre tjenester ved bruk av slike tilkoblinger."
-#: plinth/modules/ssh/forms.py:30
+#: plinth/modules/ssh/__init__.py:50
+msgid "Secure Shell (SSH) Server"
+msgstr "Secure Shell (SSH) tjener"
+
+#: plinth/modules/ssh/forms.py:15
#, fuzzy
#| msgid "Use HTTP basic authentication"
msgid "Disable password authentication"
msgstr "Bruk HTTP-basisgodkjenning"
-#: plinth/modules/ssh/forms.py:31
+#: plinth/modules/ssh/forms.py:16
#, fuzzy
msgid ""
"Improves security by preventing password guessing. Ensure that you have "
@@ -5628,13 +5743,13 @@ msgstr ""
"har satt opp SSH-nøkler i brukerkontoen for din administrator før du skrur "
"på dette valget."
-#: plinth/modules/ssh/templates/ssh.html:26
+#: plinth/modules/ssh/templates/ssh.html:11
#, fuzzy
#| msgid "SSH Fingerprint"
msgid "Server Fingerprints"
msgstr "SSH Fingeravtrykk"
-#: plinth/modules/ssh/templates/ssh.html:29
+#: plinth/modules/ssh/templates/ssh.html:14
#, fuzzy
msgid ""
"When connecting to the server, ensure that the fingerprint shown by the SSH "
@@ -5643,39 +5758,35 @@ msgstr ""
"Når du kobler til tjeneren, forsikre deg om at fingeravtrykket vist av SSH-"
"klienten samsvarer med ett av disse."
-#: plinth/modules/ssh/templates/ssh.html:38
+#: plinth/modules/ssh/templates/ssh.html:23
msgid "Algorithm"
msgstr "Algoritme"
-#: plinth/modules/ssh/templates/ssh.html:39
+#: plinth/modules/ssh/templates/ssh.html:24
#, fuzzy
#| msgid "SSH Fingerprint"
msgid "Fingerprint"
msgstr "SSH Fingeravtrykk"
-#: plinth/modules/ssh/views.py:66
+#: plinth/modules/ssh/views.py:48
msgid "SSH authentication with password disabled."
msgstr "SSH-identitetsbekreftelse med passord avskrudd."
-#: plinth/modules/ssh/views.py:69
+#: plinth/modules/ssh/views.py:51
#, fuzzy
#| msgid "Authentication to remote server failed."
msgid "SSH authentication with password enabled."
msgstr "Identitetsbekreftelse til fjerntjener mislyktes."
-#: plinth/modules/sso/__init__.py:30
+#: plinth/modules/sso/__init__.py:33
msgid "Single Sign On"
msgstr "Engangspålogging"
-#: plinth/modules/sso/templates/login.html:35
+#: plinth/modules/sso/templates/login.html:20
msgid "Login"
msgstr "Login"
-#: plinth/modules/storage/__init__.py:39 plinth/modules/storage/__init__.py:331
-msgid "Storage"
-msgstr "Lager"
-
-#: plinth/modules/storage/__init__.py:47
+#: plinth/modules/storage/__init__.py:30
#, python-brace-format
msgid ""
"This module allows you to manage storage media attached to your {box_name}. "
@@ -5686,85 +5797,89 @@ msgstr ""
"kan vise lagringsmedia som er i bruk, montere og avmontere flyttbare medium, "
"utvide rotpartisjonen, osv."
-#: plinth/modules/storage/__init__.py:224
+#: plinth/modules/storage/__init__.py:52 plinth/modules/storage/__init__.py:318
+msgid "Storage"
+msgstr "Lager"
+
+#: plinth/modules/storage/__init__.py:211
#, python-brace-format
msgid "{disk_size:.1f} bytes"
msgstr "{disk_size:.1f} byte"
-#: plinth/modules/storage/__init__.py:228
+#: plinth/modules/storage/__init__.py:215
#, python-brace-format
msgid "{disk_size:.1f} KiB"
msgstr "{disk_size:.1f} KiB"
-#: plinth/modules/storage/__init__.py:232
+#: plinth/modules/storage/__init__.py:219
#, python-brace-format
msgid "{disk_size:.1f} MiB"
msgstr "{disk_size:.1f} MiB"
-#: plinth/modules/storage/__init__.py:236
+#: plinth/modules/storage/__init__.py:223
#, python-brace-format
msgid "{disk_size:.1f} GiB"
msgstr "{disk_size:.1f} GiB"
-#: plinth/modules/storage/__init__.py:239
+#: plinth/modules/storage/__init__.py:226
#, python-brace-format
msgid "{disk_size:.1f} TiB"
msgstr "{disk_size:.1f} TiB"
-#: plinth/modules/storage/__init__.py:246
+#: plinth/modules/storage/__init__.py:233
msgid "The operation failed."
msgstr "Operasjonen mislyktes."
-#: plinth/modules/storage/__init__.py:248
+#: plinth/modules/storage/__init__.py:235
msgid "The operation was cancelled."
msgstr "Operasjonen ble avbrutt."
-#: plinth/modules/storage/__init__.py:250
+#: plinth/modules/storage/__init__.py:237
msgid "The device is already unmounting."
msgstr "Enheten avmonteres allerede."
-#: plinth/modules/storage/__init__.py:252
+#: plinth/modules/storage/__init__.py:239
msgid "The operation is not supported due to missing driver/tool support."
msgstr ""
"Denne aktiviteten støttes ikke på grunn av manglende driver-/verktøystøtte."
-#: plinth/modules/storage/__init__.py:255
+#: plinth/modules/storage/__init__.py:242
msgid "The operation timed out."
msgstr "Tidsavbrudd for operasjon."
-#: plinth/modules/storage/__init__.py:257
+#: plinth/modules/storage/__init__.py:244
msgid "The operation would wake up a disk that is in a deep-sleep state."
msgstr "Operasjonen vil vekke en disk fra en tilstand av dyp søvn."
-#: plinth/modules/storage/__init__.py:260
+#: plinth/modules/storage/__init__.py:247
msgid "Attempting to unmount a device that is busy."
msgstr "Prøver å avmontere en opptatt enhet."
-#: plinth/modules/storage/__init__.py:262
+#: plinth/modules/storage/__init__.py:249
msgid "The operation has already been cancelled."
msgstr "Operasjonen har allerede blitt avbrutt."
-#: plinth/modules/storage/__init__.py:268
+#: plinth/modules/storage/__init__.py:255
msgid "Not authorized to perform the requested operation."
msgstr "Mangler rettigheter til utførelse av forespurt operasjon."
-#: plinth/modules/storage/__init__.py:270
+#: plinth/modules/storage/__init__.py:257
msgid "The device is already mounted."
msgstr "Denne enheten er allerede montert."
-#: plinth/modules/storage/__init__.py:272
+#: plinth/modules/storage/__init__.py:259
msgid "The device is not mounted."
msgstr "Enheten er ikke montert."
-#: plinth/modules/storage/__init__.py:275
+#: plinth/modules/storage/__init__.py:262
msgid "Not permitted to use the requested option."
msgstr "Mangler rettigheter til bruk av forespurt valg."
-#: plinth/modules/storage/__init__.py:278
+#: plinth/modules/storage/__init__.py:265
msgid "The device is mounted by another user."
msgstr "Enheten er montert av en annen bruker."
-#: plinth/modules/storage/__init__.py:326
+#: plinth/modules/storage/__init__.py:313
#, fuzzy, no-python-format, python-brace-format
#| msgid ""
#| "Warning: Low space on system partition ({percent_used}% used, "
@@ -5774,73 +5889,73 @@ msgstr ""
"Advarsel: Lite plass igjen på systempartisjon ({percent_used}% brukt, "
"{free_space} ledig)."
-#: plinth/modules/storage/__init__.py:328
+#: plinth/modules/storage/__init__.py:315
msgid "Low disk space"
msgstr "Lite ledig diskplass"
-#: plinth/modules/storage/forms.py:79
+#: plinth/modules/storage/forms.py:64
#, fuzzy
#| msgid "Invalid hostname"
msgid "Invalid directory name."
msgstr "Ugyldig vertsnavn"
-#: plinth/modules/storage/forms.py:97
+#: plinth/modules/storage/forms.py:82
msgid "Directory does not exist."
msgstr "Mappen finnes ikke."
-#: plinth/modules/storage/forms.py:99
+#: plinth/modules/storage/forms.py:84
#, fuzzy
#| msgid "Download directory"
msgid "Path is not a directory."
msgstr "Last ned katalog"
-#: plinth/modules/storage/forms.py:102
+#: plinth/modules/storage/forms.py:87
#, fuzzy
#| msgid "The device is mounted by another user."
msgid "Directory is not readable by the user."
msgstr "Enheten er montert av en annen bruker."
-#: plinth/modules/storage/forms.py:105
+#: plinth/modules/storage/forms.py:90
msgid "Directory is not writable by the user."
msgstr "Mappen kan ikke skrives til av brukeren."
-#: plinth/modules/storage/forms.py:110
+#: plinth/modules/storage/forms.py:95
#, fuzzy
#| msgid "Download directory"
msgid "Directory"
msgstr "Last ned katalog"
-#: plinth/modules/storage/forms.py:113
+#: plinth/modules/storage/forms.py:98
msgid "Subdirectory (optional)"
msgstr "Undermappe (valgfritt)"
-#: plinth/modules/storage/forms.py:160
+#: plinth/modules/storage/forms.py:145
#, fuzzy
#| msgid "Shared"
msgid "Share"
msgstr "Delt"
-#: plinth/modules/storage/forms.py:168
+#: plinth/modules/storage/forms.py:153
msgid "Other directory (specify below)"
msgstr "Annen mappe (angi nedenfor)"
-#: plinth/modules/storage/templates/storage.html:35
+#: plinth/modules/storage/templates/storage.html:20
msgid "The following storage devices are in use:"
msgstr "Følgende lagringsenheter er i bruk:"
-#: plinth/modules/storage/templates/storage.html:41
+#: plinth/modules/storage/templates/storage.html:26
msgid "Label"
msgstr "Merkelapp"
-#: plinth/modules/storage/templates/storage.html:42
+#: plinth/modules/storage/templates/storage.html:27
msgid "Mount Point"
msgstr "Monteringspunkt"
-#: plinth/modules/storage/templates/storage.html:90
+#: plinth/modules/storage/templates/storage.html:75
msgid "Partition Expansion"
msgstr "Partisjonsutvidelse"
-#: plinth/modules/storage/templates/storage.html:92
+#: plinth/modules/storage/templates/storage.html:77
#, python-format
msgid ""
"There is %(expandable_root_size)s of unallocated space available after your "
@@ -5851,13 +5966,13 @@ msgstr ""
"root-partisjonen din. Root-partisjonen kan utvides til å bruke denne "
"plassen. Det vil gi deg mer plass til å lagre filene dine."
-#: plinth/modules/storage/templates/storage.html:102
-#: plinth/modules/storage/templates/storage_expand.html:39
-#: plinth/modules/storage/views.py:76
+#: plinth/modules/storage/templates/storage.html:87
+#: plinth/modules/storage/templates/storage_expand.html:24
+#: plinth/modules/storage/views.py:58
msgid "Expand Root Partition"
msgstr "Utvid root-partisjon"
-#: plinth/modules/storage/templates/storage_expand.html:29
+#: plinth/modules/storage/templates/storage_expand.html:14
#, python-format
msgid ""
"Please backup your data before proceeding. After this operation, "
@@ -5868,39 +5983,30 @@ msgstr ""
"operasjonen vil det være %(expandable_root_size)s med ekstra plass "
"tilgjengelig på root-partisjonen din."
-#: plinth/modules/storage/views.py:88
+#: plinth/modules/storage/views.py:70
#, python-brace-format
msgid "Error expanding partition: {exception}"
msgstr "Utviding av partisjon feilet: {exception}"
-#: plinth/modules/storage/views.py:91
+#: plinth/modules/storage/views.py:73
msgid "Partition expanded successfully."
msgstr "Vellykket partisjonsutvidelse."
-#: plinth/modules/storage/views.py:109
+#: plinth/modules/storage/views.py:91
#, python-brace-format
msgid "{drive_vendor} {drive_model} can be safely unplugged."
msgstr "{drive_vendor} {drive_model} kan trygt kobles fra."
-#: plinth/modules/storage/views.py:113
+#: plinth/modules/storage/views.py:95
msgid "Device can be safely unplugged."
msgstr "Enheten kan trygt kobles fra."
-#: plinth/modules/storage/views.py:123
+#: plinth/modules/storage/views.py:105
#, python-brace-format
msgid "Error ejecting device: {error_message}"
msgstr "Feil ved utløsing av enhet: {error_message}"
-#: plinth/modules/syncthing/__init__.py:40
-#: plinth/modules/syncthing/manifest.py:28
-msgid "Syncthing"
-msgstr "Syncthing"
-
-#: plinth/modules/syncthing/__init__.py:44
-msgid "File Synchronization"
-msgstr "Filsynkronisering"
-
-#: plinth/modules/syncthing/__init__.py:47
+#: plinth/modules/syncthing/__init__.py:26
msgid ""
"Syncthing is an application to synchronize files across multiple devices, e."
"g. your desktop computer and mobile phone. Creation, modification, or "
@@ -5911,7 +6017,7 @@ msgstr ""
"Oppretting, endring og sletting av filer på én enhet vil automatisk bli "
"replikert (gjenskapt) til andre enheter."
-#: plinth/modules/syncthing/__init__.py:52
+#: plinth/modules/syncthing/__init__.py:31
#, python-brace-format
msgid ""
"Running Syncthing on {box_name} provides an extra synchronization point for "
@@ -5928,19 +6034,20 @@ 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:63
+#: plinth/modules/syncthing/__init__.py:40
msgid "Administer Syncthing application"
msgstr "Administrer Syncthing-programmet"
-#: plinth/modules/tahoe/__init__.py:43
-msgid "Tahoe-LAFS"
-msgstr "Tahoe-LAFS"
+#: plinth/modules/syncthing/__init__.py:54
+#: plinth/modules/syncthing/manifest.py:13
+msgid "Syncthing"
+msgstr "Syncthing"
-#: plinth/modules/tahoe/__init__.py:47
-msgid "Distributed File Storage"
-msgstr "Distribuert fillagring"
+#: plinth/modules/syncthing/__init__.py:55
+msgid "File Synchronization"
+msgstr "Filsynkronisering"
-#: plinth/modules/tahoe/__init__.py:134
+#: plinth/modules/tahoe/__init__.py:30
msgid ""
"Tahoe-LAFS is a decentralized secure file storage system. It uses provider "
"independent security to store files over a distributed network of storage "
@@ -5952,7 +6059,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:139
+#: plinth/modules/tahoe/__init__.py:35
#, python-brace-format
msgid ""
"This {box_name} hosts a storage node and an introducer by default. "
@@ -5963,7 +6070,15 @@ msgstr ""
"standard. Ekstra introduserere kan legges til, og vil introdusere denne "
"noden for de andre lagringsnodene."
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:33
+#: plinth/modules/tahoe/__init__.py:66
+msgid "Tahoe-LAFS"
+msgstr "Tahoe-LAFS"
+
+#: plinth/modules/tahoe/__init__.py:68
+msgid "Distributed File Storage"
+msgstr "Distribuert fillagring"
+
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:17
#, python-format
msgid ""
"The Tahoe-LAFS server domain is set to %(domain_name)s. Changing the "
@@ -5976,37 +6091,33 @@ msgstr ""
"VIL MISTE DATA. Du kan få tilgang til Tahoe-LAFS på https://%(domain_name)s:5678."
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:55
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:39
msgid "Local introducer"
msgstr "Lokal introduserer"
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:43
#: plinth/modules/tahoe/templates/tahoe-post-setup.html:59
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:75
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:92
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:76
msgid "Pet Name"
msgstr "Kjæledyrnavn"
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:72
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:56
msgid "Add new introducer"
msgstr "Legg til en ny introduserer"
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:83
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:67
msgid "Add"
msgstr "Legg til"
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:88
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:72
msgid "Connected introducers"
msgstr "Tilknyttede introduserere"
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:105
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:89
msgid "Remove"
msgstr "Fjern"
-#: plinth/modules/tor/__init__.py:47
-msgid "Tor"
-msgstr "Tor"
-
-#: plinth/modules/tor/__init__.py:52
+#: plinth/modules/tor/__init__.py:33
msgid ""
"Tor is an anonymous communication system. You can learn more about it from "
"the Tor Project website. For "
@@ -6020,57 +6131,61 @@ msgstr ""
"\"https://www.torproject.org/download/download-easy.html.en\">Tor Browser"
"a>."
-#: plinth/modules/tor/__init__.py:83
+#: plinth/modules/tor/__init__.py:55
+msgid "Tor"
+msgstr "Tor"
+
+#: plinth/modules/tor/__init__.py:66
#, fuzzy
#| msgid "Tor Hidden Service"
msgid "Tor Onion Service"
msgstr "Skjult Tor-tjeneste"
-#: plinth/modules/tor/__init__.py:87
+#: plinth/modules/tor/__init__.py:70
msgid "Tor Socks Proxy"
msgstr "Tor Socks-mellomtjener"
-#: plinth/modules/tor/__init__.py:91
+#: plinth/modules/tor/__init__.py:74
msgid "Tor Bridge Relay"
msgstr "Tor bro-stafettvideresendingsoppsett"
-#: plinth/modules/tor/__init__.py:112
+#: plinth/modules/tor/__init__.py:95
msgid "Tor relay port available"
msgstr "Tor relay-port tilgjengelig"
-#: plinth/modules/tor/__init__.py:122
+#: plinth/modules/tor/__init__.py:105
msgid "Obfs3 transport registered"
msgstr "Obfs3-transport registrert"
-#: plinth/modules/tor/__init__.py:132
+#: plinth/modules/tor/__init__.py:115
msgid "Obfs4 transport registered"
msgstr "Obfs4-transport registrert"
-#: plinth/modules/tor/__init__.py:225
+#: plinth/modules/tor/__init__.py:208
#, 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:236
+#: plinth/modules/tor/__init__.py:219
#, python-brace-format
msgid "Confirm Tor usage at {url} on tcp{kind}"
msgstr "Bekreft Tor-bruk på {url} via tcp{kind}"
-#: plinth/modules/tor/forms.py:46
+#: plinth/modules/tor/forms.py:31
msgid ""
"Enter a valid bridge with this format: [transport] IP:ORPort [fingerprint]"
msgstr ""
"Angi en gyldig bro med dette formatet: [transport] IP:ORPort [fingerprint]"
-#: plinth/modules/tor/forms.py:88
+#: plinth/modules/tor/forms.py:73
msgid "Enable Tor"
msgstr "Aktiver Tor"
-#: plinth/modules/tor/forms.py:90
+#: plinth/modules/tor/forms.py:75
msgid "Use upstream bridges to connect to Tor network"
msgstr "Bruk oppstrøms broer til å koble til Tor-nettverket"
-#: plinth/modules/tor/forms.py:92
+#: plinth/modules/tor/forms.py:77
msgid ""
"When enabled, the bridges configured below will be used to connect to the "
"Tor network. Use this option if your Internet Service Provider (ISP) blocks "
@@ -6081,11 +6196,11 @@ msgstr ""
"blokkerer eller sensurerer tilkoblingene til Tor-nettverket. Dette vil "
"deaktivere relé-modi."
-#: plinth/modules/tor/forms.py:97
+#: plinth/modules/tor/forms.py:82
msgid "Upstream bridges"
msgstr "Oppstrøms broer"
-#: plinth/modules/tor/forms.py:99
+#: plinth/modules/tor/forms.py:84
msgid ""
"You can get some bridges from https://bridges.torproject.org/ and copy/paste the bridge information "
@@ -6095,11 +6210,11 @@ msgstr ""
"\">https://bridges.torproject.org/ og kopiere/lime inn broinformasjonen "
"her. For øyeblikket støttes ingen transporter, obfs3, obfs4 og scamblesuit."
-#: plinth/modules/tor/forms.py:105
+#: plinth/modules/tor/forms.py:90
msgid "Enable Tor relay"
msgstr "Aktiver Tor-videresending"
-#: plinth/modules/tor/forms.py:106
+#: plinth/modules/tor/forms.py:91
#, python-brace-format
msgid ""
"When enabled, your {box_name} will run a Tor relay and donate bandwidth to "
@@ -6110,11 +6225,11 @@ msgstr ""
"båndbredde til Tor-nettverket. Gjør dette hvis båndbredden din for "
"opplasting og nestlasting er mer enn 2 Mbits/s."
-#: plinth/modules/tor/forms.py:111
+#: plinth/modules/tor/forms.py:96
msgid "Enable Tor bridge relay"
msgstr "Aktiver Tor-bru-videresending"
-#: plinth/modules/tor/forms.py:113
+#: plinth/modules/tor/forms.py:98
msgid ""
"When enabled, relay information is published in the Tor bridge database "
"instead of public Tor relay database making it harder to censor this node. "
@@ -6125,13 +6240,13 @@ msgstr ""
"gjør det vanskeligere å sensurere denne noden. Dette hjelper andre med å "
"komme seg unna sensur."
-#: plinth/modules/tor/forms.py:118
+#: plinth/modules/tor/forms.py:103
#, fuzzy
#| msgid "Enable Tor Hidden Service"
msgid "Enable Tor Hidden Service"
msgstr "Aktiver skjulte Tor-tjenester"
-#: plinth/modules/tor/forms.py:120
+#: plinth/modules/tor/forms.py:105
#, fuzzy, python-brace-format
#| msgid ""
#| "A hidden service will allow {box_name} to provide selected services (such "
@@ -6146,11 +6261,11 @@ msgstr ""
"som wiki eller nettprat) uten å avsløre sin beliggenhet. Ikke bruk dette "
"for å oppnå sterk anonymitet ennå."
-#: plinth/modules/tor/forms.py:125
+#: plinth/modules/tor/forms.py:110
msgid "Download software packages over Tor"
msgstr "Last ned programpakker via Tor"
-#: plinth/modules/tor/forms.py:126
+#: plinth/modules/tor/forms.py:111
msgid ""
"When enabled, software will be downloaded over the Tor network for "
"installations and upgrades. This adds a degree of privacy and security "
@@ -6160,37 +6275,37 @@ msgstr ""
"installasjoner og oppgraderinger. Dette legger til en viss grad privatliv "
"(personvern) og sikkerhet under nedlasting av programvare."
-#: plinth/modules/tor/forms.py:141
+#: plinth/modules/tor/forms.py:126
msgid "Specify at least one upstream bridge to use upstream bridges."
msgstr "Angi minst én oppstrøms bro for å bruke oppstrøms broer."
-#: plinth/modules/tor/manifest.py:29
+#: plinth/modules/tor/manifest.py:14
msgid "Tor Browser"
msgstr "Tor-nettleseren"
-#: plinth/modules/tor/manifest.py:45
+#: plinth/modules/tor/manifest.py:30
msgid "Orbot: Proxy with Tor"
msgstr "Orbot: Mellomtjener med Tor"
-#: plinth/modules/tor/templates/tor.html:41
+#: plinth/modules/tor/templates/tor.html:26
msgid "Tor configuration is being updated"
msgstr "Tor-oppsettet oppdateres"
-#: plinth/modules/tor/templates/tor.html:50
+#: plinth/modules/tor/templates/tor.html:35
#, fuzzy
#| msgid "Hidden Service"
msgid "Onion Service"
msgstr "Skjult tjeneste"
-#: plinth/modules/tor/templates/tor.html:52
+#: plinth/modules/tor/templates/tor.html:37
msgid "Ports"
msgstr "Porter"
-#: plinth/modules/tor/templates/tor.html:82
+#: plinth/modules/tor/templates/tor.html:67
msgid "Relay"
msgstr "Videresending"
-#: plinth/modules/tor/templates/tor.html:84
+#: plinth/modules/tor/templates/tor.html:69
#, python-format
msgid ""
"If your %(box_name)s is behind a router or firewall, you should make sure "
@@ -6199,22 +6314,17 @@ msgstr ""
"Hvis din %(box_name)s er bak en ruter eller brannvegg, må du forsikre deg om "
"at de følgende portene er åpne, og at portene er videresendt, om nødvendig:"
-#: plinth/modules/tor/templates/tor.html:112
+#: plinth/modules/tor/templates/tor.html:97
msgid "SOCKS"
msgstr "SOCKS"
-#: plinth/modules/tor/templates/tor.html:115
+#: plinth/modules/tor/templates/tor.html:100
#, python-format
msgid "A Tor SOCKS port is available on your %(box_name)s on TCP port 9050."
msgstr ""
"En Tor SOCKS-port er tilgjengelig på din %(box_name)s på TCP port 9050."
-#: plinth/modules/transmission/__init__.py:41
-#: plinth/modules/transmission/manifest.py:24
-msgid "Transmission"
-msgstr "Transmission"
-
-#: plinth/modules/transmission/__init__.py:48
+#: plinth/modules/transmission/__init__.py:27
msgid ""
"BitTorrent is a peer-to-peer file sharing protocol. Transmission daemon "
"handles Bitorrent file sharing. Note that BitTorrent is not anonymous."
@@ -6223,15 +6333,12 @@ msgstr ""
"(overføringsdemon) håndterer BitTorrent-fildeling i bakgrunnen. Merk at "
"BitTorrent ikke er anonym."
-#: plinth/modules/ttrss/__init__.py:43 plinth/modules/ttrss/manifest.py:34
-msgid "Tiny Tiny RSS"
-msgstr "Tiny Tiny RSS"
+#: plinth/modules/transmission/__init__.py:48
+#: plinth/modules/transmission/manifest.py:9
+msgid "Transmission"
+msgstr "Transmission"
-#: plinth/modules/ttrss/__init__.py:47
-msgid "News Feed Reader"
-msgstr "Nyhetstrøm-leser"
-
-#: plinth/modules/ttrss/__init__.py:50
+#: plinth/modules/ttrss/__init__.py:29
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 "
@@ -6241,7 +6348,7 @@ 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:54
+#: plinth/modules/ttrss/__init__.py:33
#, fuzzy, python-brace-format
#| msgid ""
#| "When enabled, Tiny Tiny RSS will be available from /"
@@ -6255,7 +6362,7 @@ msgstr ""
"vevtjeneren når den er aktivert. Den er tilgjengelig for enhver bruker med et {box_name}-brukernavn."
-#: plinth/modules/ttrss/__init__.py:58
+#: plinth/modules/ttrss/__init__.py:37
#, fuzzy
#| msgid ""
#| "When using a mobile or desktop application for Tiny Tiny RSS, use the URL "
@@ -6268,65 +6375,73 @@ msgstr ""
"Når du bruker et mobilbasert- eller skrivebords-program for Tiny Tiny RSS, "
"bruk nettadressen /tt-rss-appfor å koble til."
-#: plinth/modules/ttrss/__init__.py:65
+#: plinth/modules/ttrss/__init__.py:42
msgid "Read and subscribe to news feeds"
msgstr "Les og abonner på nyhetsstrømmer"
-#: plinth/modules/ttrss/manifest.py:25
+#: plinth/modules/ttrss/__init__.py:56 plinth/modules/ttrss/manifest.py:19
+msgid "Tiny Tiny RSS"
+msgstr "Tiny Tiny RSS"
+
+#: plinth/modules/ttrss/__init__.py:57
+msgid "News Feed Reader"
+msgstr "Nyhetstrøm-leser"
+
+#: plinth/modules/ttrss/manifest.py:10
msgid "Tiny Tiny RSS (Fork)"
msgstr "Tiny Tiny RSS (avgreining)"
-#: plinth/modules/upgrades/__init__.py:37 plinth/templates/setup.html:89
-msgid "Update"
-msgstr "Oppdater"
-
-#: plinth/modules/upgrades/__init__.py:40
+#: plinth/modules/upgrades/__init__.py:23
msgid "Check for and apply the latest software and security updates."
msgstr "Sjekk og legg til siste programvare- og sikkerhetsoppdateringer."
-#: plinth/modules/upgrades/__init__.py:84
+#: plinth/modules/upgrades/__init__.py:38 plinth/templates/setup.html:74
+msgid "Update"
+msgstr "Oppdater"
+
+#: plinth/modules/upgrades/__init__.py:71
#, fuzzy
#| msgid "FreedomBox Foundation"
msgid "FreedomBox Updated"
msgstr "FreedomBox Foundation"
-#: plinth/modules/upgrades/forms.py:28
+#: plinth/modules/upgrades/forms.py:13
msgid "Enable auto-update"
msgstr "Aktiver auto-oppdatering"
-#: plinth/modules/upgrades/forms.py:29
+#: plinth/modules/upgrades/forms.py:14
msgid "When enabled, FreedomBox automatically updates once a day."
msgstr "Når påskrudd, oppdateres FreedomBox automatisk én gang om dagen."
-#: plinth/modules/upgrades/templates/upgrades-new-release.html:24
+#: plinth/modules/upgrades/templates/upgrades-new-release.html:9
#, fuzzy, python-format
#| msgid "%(box_name)s is up to date."
msgid "%(box_name)s Updated"
msgstr "%(box_name)s er oppdatert."
-#: plinth/modules/upgrades/templates/upgrades-new-release.html:28
+#: plinth/modules/upgrades/templates/upgrades-new-release.html:13
#, python-format
msgid ""
"%(box_name)s has been updated to version %(version)s. See the release announcement."
msgstr ""
-"%(box_name)s har blitt oppdatert til versjon%(version)s. Sjekk slippkunngjøringen."
+"%(box_name)s har blitt oppdatert til versjon%(version)s. Sjekk slippkunngjøringen."
-#: plinth/modules/upgrades/templates/upgrades-new-release.html:37
-#: plinth/templates/notifications.html:59
+#: plinth/modules/upgrades/templates/upgrades-new-release.html:22
+#: plinth/templates/notifications.html:44
msgid "Dismiss"
msgstr "Avslå"
-#: plinth/modules/upgrades/templates/upgrades.html:45
+#: plinth/modules/upgrades/templates/upgrades.html:30
msgid "Update now"
msgstr "Oppdater nå"
-#: plinth/modules/upgrades/templates/upgrades.html:54
+#: plinth/modules/upgrades/templates/upgrades.html:39
msgid "Updating..."
msgstr "Oppdaterer…"
-#: plinth/modules/upgrades/templates/upgrades.html:59
+#: plinth/modules/upgrades/templates/upgrades.html:44
msgid ""
"This may take a long time to complete. During an update, "
"you cannot install apps. Also, this web interface may be temporarily "
@@ -6337,47 +6452,43 @@ msgstr ""
"nettgrensesnittet være midlertidig utilgjengelig, og vise en feilmelding. "
"Oppdater siden for å fortsette."
-#: plinth/modules/upgrades/templates/upgrades.html:73
+#: plinth/modules/upgrades/templates/upgrades.html:58
msgid "Toggle recent update logs"
msgstr "Veksle nylige oppdateringslogger"
-#: plinth/modules/upgrades/templates/upgrades_configure.html:26
-#: plinth/modules/upgrades/templates/upgrades_configure.html:27
-#: plinth/modules/upgrades/views.py:107
+#: plinth/modules/upgrades/templates/upgrades_configure.html:11
+#: plinth/modules/upgrades/templates/upgrades_configure.html:12
+#: plinth/modules/upgrades/views.py:89
msgid "Manual update"
msgstr "Manuell oppdatering"
-#: plinth/modules/upgrades/views.py:66
+#: plinth/modules/upgrades/views.py:48
#, python-brace-format
msgid "Error when configuring unattended-upgrades: {error}"
msgstr ""
"Feil ved oppsett av uoppdaterte oppgraderinger (unattended-upgrades): {error}"
-#: plinth/modules/upgrades/views.py:70
+#: plinth/modules/upgrades/views.py:52
msgid "Automatic upgrades enabled"
msgstr "Automatiske oppgraderinger aktivert"
-#: plinth/modules/upgrades/views.py:73
+#: plinth/modules/upgrades/views.py:55
msgid "Automatic upgrades disabled"
msgstr "Automatiske oppgraderinger avslått (deaktivert)"
-#: plinth/modules/upgrades/views.py:75
+#: plinth/modules/upgrades/views.py:57
msgid "Settings unchanged"
msgstr "Oppsett uendret"
-#: plinth/modules/upgrades/views.py:101
+#: plinth/modules/upgrades/views.py:83
msgid "Upgrade process started."
msgstr "Oppgraderingsprosessen (upgrade process) har startet."
-#: plinth/modules/upgrades/views.py:104
+#: plinth/modules/upgrades/views.py:86
msgid "Starting upgrade failed."
msgstr "Å starte oppgradering (upgrade) mislyktes."
-#: plinth/modules/users/__init__.py:51
-msgid "Users and Groups"
-msgstr "Brukere og grupper"
-
-#: plinth/modules/users/__init__.py:54
+#: plinth/modules/users/__init__.py:37
#, fuzzy
msgid ""
"Create and managed user accounts. These accounts serve as centralized "
@@ -6388,7 +6499,7 @@ msgstr ""
"identitetsbekreftelsesmekanisme for de fleste programmer. Noen kan kreve at "
"en brukerkonto er en del av gruppen for å klarere brukrens tilgang til det."
-#: plinth/modules/users/__init__.py:59
+#: plinth/modules/users/__init__.py:42
#, fuzzy, python-brace-format
msgid ""
"Any user may login to {box_name} web interface to see a list of apps "
@@ -6399,36 +6510,40 @@ msgstr ""
"liste over programmer som er relevante for dem på hjemmesiden. Dog kan kun "
"brukere av admin-gruppen endre programmer eller systeminnstillinger."
-#: plinth/modules/users/__init__.py:128
+#: plinth/modules/users/__init__.py:64
+msgid "Users and Groups"
+msgstr "Brukere og grupper"
+
+#: plinth/modules/users/__init__.py:115
#, python-brace-format
msgid "Check LDAP entry \"{search_item}\""
msgstr "Sjekk LDAP-oppføring «{search_item}»"
-#: plinth/modules/users/forms.py:43
+#: plinth/modules/users/forms.py:28
msgid "Access to all services and system settings"
msgstr "Tilgang til alle tjenester og systeminnstillinger"
-#: plinth/modules/users/forms.py:59
+#: plinth/modules/users/forms.py:44
msgid "Username is taken or is reserved."
msgstr "Brukernavnet er opptatt eller reservert."
-#: plinth/modules/users/forms.py:87
+#: plinth/modules/users/forms.py:72
#, fuzzy
#| msgid "Invalid server name"
msgid "Enter a valid username."
msgstr "Ugyldig tjenernavn"
-#: plinth/modules/users/forms.py:93
+#: plinth/modules/users/forms.py:78
msgid ""
"Required. 150 characters or fewer. English letters, digits and @/./-/_ only."
msgstr ""
"Påkrevd. 150 tegn eller mindre. Kun engelske bokstaver, tall og @/./-/_."
-#: plinth/modules/users/forms.py:106 plinth/modules/users/forms.py:222
+#: plinth/modules/users/forms.py:91 plinth/modules/users/forms.py:207
msgid "Permissions"
msgstr "Tilganger"
-#: plinth/modules/users/forms.py:109
+#: plinth/modules/users/forms.py:94
msgid ""
"Select which services should be available to the new user. The user will be "
"able to log in to services that support single sign-on through LDAP, if they "
@@ -6442,20 +6557,20 @@ msgstr ""
"gruppen kan logge seg på alle tjenester. De kan også logge inn på systemet "
"via SSH, og ha administrative rettigheter (sudo)."
-#: plinth/modules/users/forms.py:148 plinth/modules/users/forms.py:372
+#: plinth/modules/users/forms.py:133 plinth/modules/users/forms.py:357
msgid "Creating LDAP user failed."
msgstr "Oppretting av LDAP-bruker feilet."
-#: plinth/modules/users/forms.py:159
+#: plinth/modules/users/forms.py:144
#, python-brace-format
msgid "Failed to add new user to {group} group."
msgstr "Klarte ikke legge ny bruker til gruppe {group}."
-#: plinth/modules/users/forms.py:173
+#: plinth/modules/users/forms.py:158
msgid "Authorized SSH Keys"
msgstr "Autoriserte SSH-nøkler"
-#: plinth/modules/users/forms.py:175
+#: plinth/modules/users/forms.py:160
msgid ""
"Setting an SSH public key will allow this user to securely log in to the "
"system without using a password. You may enter multiple keys, one on each "
@@ -6465,84 +6580,84 @@ msgstr ""
"på systemet uten å bruke passord. Du kan legge inn multiple (flere) nøkler, "
"én på hver linje. Blanke linjer og linjer som starter med # vil bli ignorert."
-#: plinth/modules/users/forms.py:259
+#: plinth/modules/users/forms.py:244
msgid "Renaming LDAP user failed."
msgstr "Klarte ikke å bytte navn på LDAP-bruker."
-#: plinth/modules/users/forms.py:271
+#: plinth/modules/users/forms.py:256
msgid "Failed to remove user from group."
msgstr "Klarte ikke å slette bruker fra gruppe."
-#: plinth/modules/users/forms.py:282
+#: plinth/modules/users/forms.py:267
msgid "Failed to add user to group."
msgstr "Klarte ikke legge bruker til gruppe."
-#: plinth/modules/users/forms.py:291
+#: plinth/modules/users/forms.py:276
msgid "Unable to set SSH keys."
msgstr "Klarte ikke sette SSH-nøkler."
-#: plinth/modules/users/forms.py:306
+#: plinth/modules/users/forms.py:291
#, fuzzy
#| msgid "Failed to add user to group."
msgid "Failed to change user status."
msgstr "Klarte ikke legge bruker til gruppe."
-#: plinth/modules/users/forms.py:314
+#: plinth/modules/users/forms.py:299
msgid "Cannot delete the only administrator in the system."
msgstr "Kan ikke slette kun administratoren i systemet."
-#: plinth/modules/users/forms.py:346
+#: plinth/modules/users/forms.py:331
msgid "Changing LDAP user password failed."
msgstr "Klarte ikke å bytte passord for LDAP-bruker."
-#: plinth/modules/users/forms.py:381
+#: plinth/modules/users/forms.py:366
msgid "Failed to add new user to admin group."
msgstr "Klarte ikke å legge til en ny bruker i admin-gruppen."
-#: plinth/modules/users/forms.py:398
+#: plinth/modules/users/forms.py:383
msgid "Failed to restrict console access."
msgstr "Klarte ikke begrense konsolltilgang."
-#: plinth/modules/users/forms.py:410
+#: plinth/modules/users/forms.py:395
msgid "User account created, you are now logged in"
msgstr "Brukerkonto er opprettet, du er nå logget inn"
-#: plinth/modules/users/templates/users_change_password.html:26
+#: plinth/modules/users/templates/users_change_password.html:11
#, python-format
msgid "Change Password for %(username)s"
msgstr "Endre passord for %(username)s"
-#: plinth/modules/users/templates/users_change_password.html:36
+#: plinth/modules/users/templates/users_change_password.html:21
msgid "Save Password"
msgstr "Lagre passord"
-#: plinth/modules/users/templates/users_create.html:32
-#: plinth/modules/users/templates/users_list.html:42
-#: plinth/modules/users/templates/users_list.html:44
-#: plinth/modules/users/views.py:57
+#: plinth/modules/users/templates/users_create.html:17
+#: plinth/modules/users/templates/users_list.html:27
+#: plinth/modules/users/templates/users_list.html:29
+#: plinth/modules/users/views.py:42
msgid "Create User"
msgstr "Opprett bruker"
-#: plinth/modules/users/templates/users_delete.html:26
-#: plinth/modules/users/views.py:139
+#: plinth/modules/users/templates/users_delete.html:11
+#: plinth/modules/users/views.py:121
msgid "Delete User"
msgstr "Slett bruker"
-#: plinth/modules/users/templates/users_delete.html:29
+#: plinth/modules/users/templates/users_delete.html:14
#, python-format
msgid "Delete user %(username)s permanently?"
msgstr "Slette bruker %(username)s permanent?"
-#: plinth/modules/users/templates/users_delete.html:38
+#: plinth/modules/users/templates/users_delete.html:23
#, python-format
msgid "Delete %(username)s"
msgstr "Slette %(username)s"
-#: plinth/modules/users/templates/users_firstboot.html:26
+#: plinth/modules/users/templates/users_firstboot.html:11
msgid "Administrator Account"
msgstr "Administratorkonto"
-#: plinth/modules/users/templates/users_firstboot.html:29
+#: plinth/modules/users/templates/users_firstboot.html:14
msgid ""
"Choose a username and password to access this web interface. The password "
"can be changed later. This user will be granted administrative privileges. "
@@ -6552,26 +6667,26 @@ msgstr ""
"nettgrensesnittet. Passordet kan endres senere. Denne brukeren vil bli "
"innvilget administrative rettigheter. Andre brukere kan legges til senere."
-#: plinth/modules/users/templates/users_firstboot.html:42
+#: plinth/modules/users/templates/users_firstboot.html:27
msgid "Create Account"
msgstr "Opprett konto"
-#: plinth/modules/users/templates/users_list.html:38
-#: plinth/modules/users/views.py:74
+#: plinth/modules/users/templates/users_list.html:23
+#: plinth/modules/users/views.py:59
msgid "Users"
msgstr "Brukere"
-#: plinth/modules/users/templates/users_list.html:57
+#: plinth/modules/users/templates/users_list.html:42
#, python-format
msgid "Delete user %(username)s"
msgstr "Slette bruker %(username)s"
-#: plinth/modules/users/templates/users_list.html:65
+#: plinth/modules/users/templates/users_list.html:50
#, python-format
msgid "Edit user %(username)s"
msgstr "Endre bruker %(username)s"
-#: plinth/modules/users/templates/users_update.html:30
+#: plinth/modules/users/templates/users_update.html:15
#, python-format
msgid ""
"Use the change password form to "
@@ -6580,52 +6695,47 @@ msgstr ""
"Bruk passordsendringsskjemaet for å "
"endre passordet."
-#: plinth/modules/users/templates/users_update.html:42
-#: plinth/templates/language-selection.html:32
+#: plinth/modules/users/templates/users_update.html:27
+#: plinth/templates/language-selection.html:17
msgid "Save Changes"
msgstr "Lagre endringer"
-#: plinth/modules/users/views.py:55
+#: plinth/modules/users/views.py:40
#, python-format
msgid "User %(username)s created."
msgstr "Bruker %(username)s opprettet."
-#: plinth/modules/users/views.py:93
+#: plinth/modules/users/views.py:75
#, python-format
msgid "User %(username)s updated."
msgstr "Bruker %(username)s oppdatert."
-#: plinth/modules/users/views.py:94
+#: plinth/modules/users/views.py:76
msgid "Edit User"
msgstr "Rediger bruker"
-#: plinth/modules/users/views.py:149
+#: plinth/modules/users/views.py:131
#, python-brace-format
msgid "User {user} deleted."
msgstr "Bruker {user} slettet."
-#: plinth/modules/users/views.py:156
+#: plinth/modules/users/views.py:138
msgid "Deleting LDAP user failed."
msgstr "Klarte ikke slette LDAP-bruker."
-#: plinth/modules/users/views.py:165
+#: plinth/modules/users/views.py:147
msgid "Change Password"
msgstr "Endre passord"
-#: plinth/modules/users/views.py:166
+#: plinth/modules/users/views.py:148
msgid "Password changed successfully."
msgstr "Vellykket passordbytte."
-#: plinth/modules/wireguard/__init__.py:38
-#: plinth/modules/wireguard/manifest.py:29
-msgid "WireGuard"
-msgstr "WireGuard"
-
-#: plinth/modules/wireguard/__init__.py:43
+#: plinth/modules/wireguard/__init__.py:24
msgid "WireGuard is a fast, modern, secure VPN tunnel."
msgstr "WireGuard er en rask, moderne og sikker VPN-tunnel."
-#: plinth/modules/wireguard/__init__.py:45
+#: plinth/modules/wireguard/__init__.py:26
#, python-brace-format
msgid ""
"It can be used to connect to a VPN provider which supports WireGuard, and to "
@@ -6634,7 +6744,7 @@ msgstr ""
"Kan brukes til å koble til en VPN-tilbyder som støtter WireGuard, og for å "
"rute all utgående trafikk fra {box_name} gjennom VPN-tunellen."
-#: plinth/modules/wireguard/__init__.py:49
+#: plinth/modules/wireguard/__init__.py:30
#, python-brace-format
msgid ""
"A second use case is to connect a mobile device to {box_name} while "
@@ -6642,22 +6752,27 @@ msgid ""
"securely relayed through {box_name}."
msgstr ""
-#: plinth/modules/wireguard/forms.py:47
+#: plinth/modules/wireguard/__init__.py:52
+#: plinth/modules/wireguard/manifest.py:14
+msgid "WireGuard"
+msgstr "WireGuard"
+
+#: plinth/modules/wireguard/forms.py:32
#, fuzzy
#| msgid "Invalid kite name"
msgid "Invalid key."
msgstr "Ugyldig «kite»-navn"
-#: plinth/modules/wireguard/forms.py:76
-#: plinth/modules/wireguard/templates/wireguard.html:32
-#: plinth/modules/wireguard/templates/wireguard.html:89
-#: plinth/modules/wireguard/templates/wireguard_delete_server.html:38
+#: plinth/modules/wireguard/forms.py:61
+#: plinth/modules/wireguard/templates/wireguard.html:17
+#: plinth/modules/wireguard/templates/wireguard.html:74
+#: plinth/modules/wireguard/templates/wireguard_delete_server.html:23
#, fuzzy
#| msgid "Publish Key"
msgid "Public Key"
msgstr "Legge ut nøkkel"
-#: plinth/modules/wireguard/forms.py:77
+#: plinth/modules/wireguard/forms.py:62
msgid ""
"Public key of the peer. Example: "
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs= ."
@@ -6665,48 +6780,48 @@ msgstr ""
"Offentlig nøkkel tilhørende likemann. Eksempelvis: "
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs= ."
-#: plinth/modules/wireguard/forms.py:85
+#: plinth/modules/wireguard/forms.py:70
msgid "Endpoint of the server"
msgstr "Sluttpunkt for tjeneren"
-#: plinth/modules/wireguard/forms.py:86
+#: plinth/modules/wireguard/forms.py:71
msgid ""
"Domain name and port in the form \"ip:port\". Example: demo.wireguard."
"com:12912 ."
msgstr ""
-"Domenenavn og port i formspråket \"ip:port\". Eksempelvis: "
-"demo.wireguard.com:12912."
+"Domenenavn og port i formspråket \"ip:port\". Eksempelvis: demo.wireguard."
+"com:12912."
-#: plinth/modules/wireguard/forms.py:91
+#: plinth/modules/wireguard/forms.py:76
#, fuzzy
#| msgid "Published key to keyserver."
msgid "Public key of the server"
msgstr "Publisert nøkkel til nøkkeltjener."
-#: plinth/modules/wireguard/forms.py:92
+#: plinth/modules/wireguard/forms.py:77
msgid ""
"Provided by the server operator, a long string of characters. Example: "
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs= ."
msgstr ""
-#: plinth/modules/wireguard/forms.py:97
+#: plinth/modules/wireguard/forms.py:82
#, fuzzy
#| msgid "A list of IP addresses, separated by space"
msgid "Client IP address provided by server"
msgstr "En liste med IP-adresser, oppdelt med mellomrom"
-#: plinth/modules/wireguard/forms.py:98
+#: plinth/modules/wireguard/forms.py:83
msgid ""
"IP address assigned to this machine on the VPN after connecting to the "
"endpoint. This value is usually provided by the server operator. Example: "
"192.168.0.10."
msgstr ""
-#: plinth/modules/wireguard/forms.py:104
+#: plinth/modules/wireguard/forms.py:89
msgid "Private key of this machine"
msgstr "Privatnøkkel tilhørende denne maskinen"
-#: plinth/modules/wireguard/forms.py:105
+#: plinth/modules/wireguard/forms.py:90
msgid ""
"Optional. New public/private keys are generated if left blank. Public key "
"can then be provided to the server. This is the recommended way. However, "
@@ -6714,140 +6829,140 @@ msgid ""
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs= ."
msgstr ""
-#: plinth/modules/wireguard/forms.py:113
+#: plinth/modules/wireguard/forms.py:98
msgid "Pre-shared key"
msgstr "Forhåndsdelt nøkkel"
-#: plinth/modules/wireguard/forms.py:114
+#: plinth/modules/wireguard/forms.py:99
msgid ""
"Optional. A shared secret key provided by the server to add an additional "
"layer of security. Fill in only if provided. Example: "
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs=."
msgstr ""
-#: plinth/modules/wireguard/forms.py:120
+#: plinth/modules/wireguard/forms.py:105
msgid "Use this connection to send all outgoing traffic"
msgstr ""
-#: plinth/modules/wireguard/forms.py:122
+#: plinth/modules/wireguard/forms.py:107
msgid "Typically checked for a VPN service though which all traffic is sent."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:25
+#: plinth/modules/wireguard/templates/wireguard.html:10
#, fuzzy
#| msgid "Chat Server"
msgid "As a Server"
msgstr "Nettprat-tjener"
-#: plinth/modules/wireguard/templates/wireguard.html:27
+#: plinth/modules/wireguard/templates/wireguard.html:12
msgid "Peers allowed to connect to this server:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:33
+#: plinth/modules/wireguard/templates/wireguard.html:18
msgid "Allowed IPs"
msgstr "Tillatte IP-er"
-#: plinth/modules/wireguard/templates/wireguard.html:34
-#: plinth/modules/wireguard/templates/wireguard.html:90
+#: plinth/modules/wireguard/templates/wireguard.html:19
+#: plinth/modules/wireguard/templates/wireguard.html:75
#, fuzzy
#| msgid "Create Connection"
msgid "Last Connected Time"
msgstr "Lage forbindelse"
-#: plinth/modules/wireguard/templates/wireguard.html:53
+#: plinth/modules/wireguard/templates/wireguard.html:38
#, python-format
msgid "No peers configured to connect to this %(box_name)s yet."
msgstr "Ingen likemenn er oppsett for tilkobling til denne %(box_name)s enda."
-#: plinth/modules/wireguard/templates/wireguard.html:62
+#: plinth/modules/wireguard/templates/wireguard.html:47
#, fuzzy, python-format
#| msgid "Public key of this machine:"
msgid "Public key for this %(box_name)s:"
msgstr "Offentlig nøkkel tilhørende denne maskinen:"
-#: plinth/modules/wireguard/templates/wireguard.html:68
+#: plinth/modules/wireguard/templates/wireguard.html:53
#, fuzzy
#| msgid "No shares currently configured."
msgid "Not configured yet."
msgstr "Ingen delte områder er satt opp foreløpig."
-#: plinth/modules/wireguard/templates/wireguard.html:72
+#: plinth/modules/wireguard/templates/wireguard.html:57
#, fuzzy
#| msgid "Add new introducer"
msgid "Add a new peer"
msgstr "Legg til en ny introduserer"
-#: plinth/modules/wireguard/templates/wireguard.html:76
-#: plinth/modules/wireguard/views.py:69
+#: plinth/modules/wireguard/templates/wireguard.html:61
+#: plinth/modules/wireguard/views.py:51
msgid "Add Allowed Client"
msgstr "Legg til tillatt klient"
-#: plinth/modules/wireguard/templates/wireguard.html:79
+#: plinth/modules/wireguard/templates/wireguard.html:64
#, fuzzy
#| msgid "Chat Client"
msgid "As a Client"
msgstr "Nettpratklient"
-#: plinth/modules/wireguard/templates/wireguard.html:81
+#: plinth/modules/wireguard/templates/wireguard.html:66
#, python-format
msgid "Servers that %(box_name)s will connect to:"
msgstr "Tjenere %(box_name)s kobler seg til:"
-#: plinth/modules/wireguard/templates/wireguard.html:88
-#: plinth/modules/wireguard/templates/wireguard_delete_server.html:34
+#: plinth/modules/wireguard/templates/wireguard.html:73
+#: plinth/modules/wireguard/templates/wireguard_delete_server.html:19
msgid "Endpoint"
msgstr "Sluttpunkt"
-#: plinth/modules/wireguard/templates/wireguard.html:111
+#: plinth/modules/wireguard/templates/wireguard.html:96
#, fuzzy
#| msgid "Authentication to remote server failed."
msgid "No connections to remote servers are configured yet."
msgstr "Identitetsbekreftelse til fjerntjener mislyktes."
-#: plinth/modules/wireguard/templates/wireguard.html:119
+#: plinth/modules/wireguard/templates/wireguard.html:104
#, fuzzy
#| msgid "Add new introducer"
msgid "Add a new server"
msgstr "Legg til en ny introduserer"
-#: plinth/modules/wireguard/templates/wireguard.html:123
-#: plinth/modules/wireguard/views.py:178
+#: plinth/modules/wireguard/templates/wireguard.html:108
+#: plinth/modules/wireguard/views.py:160
#, fuzzy
#| msgid "Add Connection"
msgid "Add Connection to Server"
msgstr "Legg til tilkobling"
-#: plinth/modules/wireguard/templates/wireguard_add_client.html:34
+#: plinth/modules/wireguard/templates/wireguard_add_client.html:19
#, fuzzy
#| msgid "IRC Client"
msgid "Add Client"
msgstr "IRC-klient"
-#: plinth/modules/wireguard/templates/wireguard_delete_client.html:29
+#: plinth/modules/wireguard/templates/wireguard_delete_client.html:14
#, fuzzy
#| msgid "Are you sure that you want to remove this repository?"
msgid "Are you sure that you want to delete this client?"
msgstr "Er du sikker på at du ønsker å fjerne dette depotet?"
-#: plinth/modules/wireguard/templates/wireguard_delete_server.html:29
+#: plinth/modules/wireguard/templates/wireguard_delete_server.html:14
#, fuzzy
#| msgid "Are you sure that you want to remove this repository?"
msgid "Are you sure that you want to delete this server?"
msgstr "Er du sikker på at du ønsker å fjerne dette depotet?"
-#: plinth/modules/wireguard/templates/wireguard_edit_client.html:34
+#: plinth/modules/wireguard/templates/wireguard_edit_client.html:19
#, fuzzy
#| msgid "Chat Client"
msgid "Update Client"
msgstr "Nettpratklient"
-#: plinth/modules/wireguard/templates/wireguard_edit_server.html:34
+#: plinth/modules/wireguard/templates/wireguard_edit_server.html:19
#, fuzzy
#| msgid "Create Connection"
msgid "Update Connection"
msgstr "Lage forbindelse"
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:27
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:12
#, python-format
msgid ""
"%(box_name)s will allow this client to connect to it. Ensure that the client "
@@ -6856,48 +6971,48 @@ msgstr ""
"%(box_name)s lar denne klienten koble seg til. Forsikre at klienten er satt "
"opp med følgende info."
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:35
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:20
msgid "Client public key:"
msgstr "Klientens offentlige nøkkel:"
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:39
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:24
msgid "IP address to use for client:"
msgstr "IP-adresse å bruke for klienten:"
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:43
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:46
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:28
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:31
msgid "Pre-shared key:"
msgstr "Forhåndsdelt nøkkel:"
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:47
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:32
#, fuzzy
#| msgid "Server domain"
msgid "Server endpoints:"
msgstr "Tjenerdomene"
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:55
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:42
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:40
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:27
#, fuzzy
#| msgid "Select verified SSH public key"
msgid "Server public key:"
msgstr "Velg bekreftet offentlig SSH-nøkkel"
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:65
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:64
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:50
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:49
msgid "Data transmitted:"
msgstr "Data sendt:"
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:69
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:68
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:54
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:53
msgid "Data received:"
msgstr "Data mottatt:"
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:73
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:72
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:58
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:57
msgid "Latest handshake:"
msgstr "Siste håndtrykk:"
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:29
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:14
#, python-format
msgid ""
"%(box_name)s will attempt to reach a WireGuard server with the following "
@@ -6908,153 +7023,153 @@ msgstr ""
"deg om at tjeneren er satt opp til å tillate %(box_name)s sin offentlige "
"nøkkel og IP-adresse."
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:38
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:23
#, fuzzy
#| msgid "Server domain"
msgid "Server endpoint:"
msgstr "Tjenerdomene"
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:50
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:35
msgid "Public key of this machine:"
msgstr "Offentlig nøkkel tilhørende denne maskinen:"
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:54
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:39
msgid "IP address of this machine:"
msgstr "IP-adresse tilhørende denne maskinen:"
-#: plinth/modules/wireguard/views.py:64
+#: plinth/modules/wireguard/views.py:46
#, fuzzy
#| msgid "Add new introducer"
msgid "Added new client."
msgstr "Legg til en ny introduserer"
-#: plinth/modules/wireguard/views.py:79 plinth/modules/wireguard/views.py:138
+#: plinth/modules/wireguard/views.py:61 plinth/modules/wireguard/views.py:120
#, fuzzy
#| msgid "A share with this name already exists."
msgid "Client with public key already exists"
msgstr "En deling ved dette navnet finnes allerede."
-#: plinth/modules/wireguard/views.py:92
+#: plinth/modules/wireguard/views.py:74
#, fuzzy
#| msgid "Email Client"
msgid "Allowed Client"
msgstr "E-postklient"
-#: plinth/modules/wireguard/views.py:114
+#: plinth/modules/wireguard/views.py:96
#, fuzzy
#| msgid "Update setup"
msgid "Updated client."
msgstr "Oppdater oppsett"
-#: plinth/modules/wireguard/views.py:119
+#: plinth/modules/wireguard/views.py:101
#, fuzzy
#| msgid "Email Client"
msgid "Modify Client"
msgstr "E-postklient"
-#: plinth/modules/wireguard/views.py:152
+#: plinth/modules/wireguard/views.py:134
#, fuzzy
#| msgid "Delete All"
msgid "Delete Allowed Client"
msgstr "Slett alle"
-#: plinth/modules/wireguard/views.py:161
+#: plinth/modules/wireguard/views.py:143
#, fuzzy
#| msgid "Archive deleted."
msgid "Client deleted."
msgstr "Arkiv slettet."
-#: plinth/modules/wireguard/views.py:163
+#: plinth/modules/wireguard/views.py:145
#, fuzzy
#| msgid "Repository not found"
msgid "Client not found"
msgstr "Finner ikke depot"
-#: plinth/modules/wireguard/views.py:173
+#: plinth/modules/wireguard/views.py:155
#, fuzzy
#| msgid "Added custom service"
msgid "Added new server."
msgstr "Lagt til selvvalgt tjeneste"
-#: plinth/modules/wireguard/views.py:194
+#: plinth/modules/wireguard/views.py:176
#, fuzzy
#| msgid "Connection Type"
msgid "Connection to Server"
msgstr "Oppkoblingstype"
-#: plinth/modules/wireguard/views.py:212
+#: plinth/modules/wireguard/views.py:194
#, fuzzy
#| msgid "Update setup"
msgid "Updated server."
msgstr "Oppdater oppsett"
-#: plinth/modules/wireguard/views.py:217
+#: plinth/modules/wireguard/views.py:199
#, fuzzy
#| msgid "Edit Connection"
msgid "Modify Connection to Server"
msgstr "Endre oppkobling"
-#: plinth/modules/wireguard/views.py:254
+#: plinth/modules/wireguard/views.py:236
#, fuzzy
#| msgid "Delete Connection"
msgid "Delete Connection to Server"
msgstr "Slett tilkobling"
-#: plinth/modules/wireguard/views.py:274
+#: plinth/modules/wireguard/views.py:256
#, fuzzy
#| msgid "Share deleted."
msgid "Server deleted."
msgstr "Deling slettet."
-#: plinth/network.py:42
+#: plinth/network.py:27
msgid "PPPoE"
msgstr "PPPoE"
-#: plinth/network.py:43
+#: plinth/network.py:28
msgid "Generic"
msgstr "Generisk"
-#: plinth/package.py:137
+#: plinth/package.py:122
msgid "Error during installation"
msgstr "Feil under installasjon"
-#: plinth/package.py:159
+#: plinth/package.py:144
msgid "installing"
msgstr "installering"
-#: plinth/package.py:161
+#: plinth/package.py:146
msgid "downloading"
msgstr "laster ned"
-#: plinth/package.py:163
+#: plinth/package.py:148
msgid "media change"
msgstr "mediaendring"
-#: plinth/package.py:165
+#: plinth/package.py:150
#, python-brace-format
msgid "configuration file: {file}"
msgstr "oppsettsfil: {file}"
-#: plinth/templates/403.html:25
+#: plinth/templates/403.html:10
msgid "403 Forbidden"
msgstr "403 Forbudt"
-#: plinth/templates/403.html:29
+#: plinth/templates/403.html:14
#, python-format
msgid "You don't have permission to access %(request_path)s on this server."
msgstr ""
"Du har ikke tilgangen som trengs for å nå %(request_path)s på denne tjeneren."
-#: plinth/templates/404.html:25
+#: plinth/templates/404.html:10
msgid "404"
msgstr "404"
-#: plinth/templates/404.html:28
+#: plinth/templates/404.html:13
#, python-format
msgid "Requested page %(request_path)s was not found."
msgstr "Forespurt side %(request_path)s ble ikke funnet."
-#: plinth/templates/404.html:34
+#: plinth/templates/404.html:19
msgid ""
"If you believe this missing page should exist, please file a bug at the "
"FreedomBox Service (Plinth) project feilsporer."
-#: plinth/templates/500.html:25
+#: plinth/templates/500.html:10
msgid "500"
msgstr "500"
-#: plinth/templates/500.html:29
+#: plinth/templates/500.html:14
#, python-format
msgid ""
"This is an internal error and not something you caused or can fix. Please "
@@ -7082,115 +7197,119 @@ msgstr ""
"veldig fint om du legger statusloggen ved "
"feilrapporten."
-#: plinth/templates/app.html:47
+#: plinth/templates/app-header.html:22
+msgid "Installation"
+msgstr "Installasjon"
+
+#: plinth/templates/app.html:32
#, python-format
msgid "Service %(service_name)s is running."
msgstr "Tjenesten %(service_name)s kjører."
-#: plinth/templates/app.html:52
+#: plinth/templates/app.html:37
#, python-format
msgid "Service %(service_name)s is not running."
msgstr "Tjenesten %(service_name)s kjører ikke."
-#: plinth/templates/base.html:50
+#: plinth/templates/base.html:35
#, python-format
msgid "Core functionality and web interface for %(box_name)s"
msgstr "Kjernefunksjonalitet og nettbrukergrensesnitt for %(box_name)s"
-#: plinth/templates/base.html:96
+#: plinth/templates/base.html:81
msgid "Toggle navigation"
msgstr "Bytt (toggle) navigasjon"
-#: plinth/templates/base.html:120 plinth/templates/base.html:123
+#: plinth/templates/base.html:105 plinth/templates/base.html:108
msgid "Home"
msgstr "Hjem"
-#: plinth/templates/base.html:128 plinth/templates/base.html:132
+#: plinth/templates/base.html:113 plinth/templates/base.html:117
msgid "Apps"
msgstr "Apps/Programmer"
-#: plinth/templates/base.html:137 plinth/templates/base.html:141
+#: plinth/templates/base.html:122 plinth/templates/base.html:126
msgid "System"
msgstr "System"
-#: plinth/templates/base.html:173 plinth/templates/base.html:174
+#: plinth/templates/base.html:158 plinth/templates/base.html:159
msgid "Change password"
msgstr "Endre passord"
-#: plinth/templates/base.html:181 plinth/templates/base.html:182
+#: plinth/templates/base.html:166 plinth/templates/base.html:167
msgid "Restart"
msgstr "Omstart"
-#: plinth/templates/base.html:187 plinth/templates/base.html:188
+#: plinth/templates/base.html:172 plinth/templates/base.html:173
msgid "Shut down"
msgstr "Slå av"
-#: plinth/templates/base.html:195 plinth/templates/base.html:196
-#: plinth/templates/base.html:220 plinth/templates/base.html:222
+#: plinth/templates/base.html:180 plinth/templates/base.html:181
+#: plinth/templates/base.html:205 plinth/templates/base.html:207
msgid "Log out"
msgstr "Logg ut"
-#: plinth/templates/base.html:204 plinth/templates/base.html:207
+#: plinth/templates/base.html:189 plinth/templates/base.html:192
msgid "Select language"
msgstr "Velg språk"
-#: plinth/templates/base.html:212 plinth/templates/base.html:214
+#: plinth/templates/base.html:197 plinth/templates/base.html:199
msgid "Log in"
msgstr "Logg inn"
-#: plinth/templates/clients.html:32
+#: plinth/templates/clients.html:17
msgid "Web"
msgstr "Web"
-#: plinth/templates/clients.html:57
+#: plinth/templates/clients.html:42
msgid "Desktop"
msgstr "Skrivebord"
-#: plinth/templates/clients.html:68
+#: plinth/templates/clients.html:53
msgid "GNU/Linux"
msgstr "Linux|GNU"
-#: plinth/templates/clients.html:70
+#: plinth/templates/clients.html:55
msgid "Windows"
msgstr "Windows"
-#: plinth/templates/clients.html:72
+#: plinth/templates/clients.html:57
msgid "macOS"
msgstr "macOS"
-#: plinth/templates/clients.html:88
+#: plinth/templates/clients.html:73
msgid "Mobile"
msgstr "Mobil"
-#: plinth/templates/clients.html:99
+#: plinth/templates/clients.html:84
msgid "Play Store"
msgstr "Play-butikken"
-#: plinth/templates/clients.html:101
+#: plinth/templates/clients.html:86
msgid "F-Droid"
msgstr "F-Droid"
-#: plinth/templates/clients.html:103
+#: plinth/templates/clients.html:88
msgid "App Store"
msgstr "Programbutikk"
-#: plinth/templates/clients.html:119
+#: plinth/templates/clients.html:104
msgid "Package"
msgstr "Pakke"
-#: plinth/templates/clients.html:126
+#: plinth/templates/clients.html:111
msgid "Debian:"
msgstr "Debian:"
-#: plinth/templates/clients.html:129
+#: plinth/templates/clients.html:114
msgid "Homebrew:"
msgstr "Hjemmelaget:"
-#: plinth/templates/clients.html:132
+#: plinth/templates/clients.html:117
msgid "RPM:"
msgstr "RPM:"
-#: plinth/templates/first_setup.html:39
+#: plinth/templates/first_setup.html:24
#, python-format
msgid ""
"Please wait for %(box_name)s to finish installation. You can start using "
@@ -7199,11 +7318,7 @@ msgstr ""
"Vent på at %(box_name)s fullfører installasjonen. Du kan begynne å bruke "
"%(box_name)s når det er gjort."
-#: plinth/templates/header.html:36
-msgid "Installation"
-msgstr "Installasjon"
-
-#: plinth/templates/index.html:37
+#: plinth/templates/index.html:22
#, python-format
msgid ""
"Enable some applications to add shortcuts to "
@@ -7212,11 +7327,11 @@ msgstr ""
"Aktiver noen programmer for å legge til "
"snarveier på denne siden."
-#: plinth/templates/index.html:59
+#: plinth/templates/index.html:44
msgid "Configure »"
msgstr "Sette opp »"
-#: plinth/templates/index.html:115
+#: plinth/templates/index.html:100
#, python-format
msgid ""
"%(box_name)s, a Debian pure blend, is a 100%% free software self-hosting web "
@@ -7228,7 +7343,7 @@ msgstr ""
"applikasjoner på små maskiner. Den tilbyr nettbaserte kommunikasjonsverktøy "
"som respekterer din privatsfære og ditt dataeierskap."
-#: plinth/templates/index.html:124
+#: plinth/templates/index.html:109
#, python-format
msgid ""
"This portal is a part of the %(box_name)s web interface. %(box_name)s is "
@@ -7239,41 +7354,41 @@ msgstr ""
"programvare, og distribuert i henhold til GNU Affero General Public License "
"versjon 3 eller senere."
-#: plinth/templates/index.html:144
+#: plinth/templates/index.html:129
msgid "Homepage"
msgstr "Hjemmeside"
-#: plinth/templates/index.html:147
+#: plinth/templates/index.html:132
msgid "Source Code"
msgstr "Kildekode"
-#: plinth/templates/index.html:150
+#: plinth/templates/index.html:135
msgid "Donate"
msgstr "Donere"
-#: plinth/templates/index.html:154
+#: plinth/templates/index.html:139
msgid "FreedomBox Foundation"
msgstr "FreedomBox Foundation"
-#: plinth/templates/index.html:161
+#: plinth/templates/index.html:146
msgid "IRC Chatroom"
msgstr "IRC-nettpratrom"
-#: plinth/templates/index.html:166
+#: plinth/templates/index.html:151
msgid "Mailing list"
msgstr "Adresseliste"
-#: plinth/templates/internal-zone.html:26
+#: plinth/templates/internal-zone.html:11
#, python-format
msgid "%(service_name)s is available only on internal networks."
msgstr ""
"Tjenesten %(service_name)s er kun tilgjengelig på interne nettverk."
-#: plinth/templates/internal-zone.html:32
+#: plinth/templates/internal-zone.html:17
msgid "Currently there are no network interfaces configured as internal."
msgstr "Ingen nettverksgrensesnitt er satt opp som interne."
-#: plinth/templates/internal-zone.html:34
+#: plinth/templates/internal-zone.html:19
#, python-format
msgid ""
"Currently the following network interfaces are configured as internal: "
@@ -7281,17 +7396,17 @@ msgid ""
msgstr ""
"Følgende nettverksgrensesnitt er nå satt opp som interne: %(interface_list)s"
-#: plinth/templates/notifications-dropdown.html:26
+#: plinth/templates/notifications-dropdown.html:11
#, fuzzy
#| msgid "No certificate"
msgid "Notifications"
msgstr "Sertifikat mangler"
-#: plinth/templates/port-forwarding-info.html:23
+#: plinth/templates/port-forwarding-info.html:8
msgid "Port Forwarding"
msgstr "Portvideresending"
-#: plinth/templates/port-forwarding-info.html:26
+#: plinth/templates/port-forwarding-info.html:11
#, python-format
msgid ""
"If your FreedomBox is behind a router, you will need to set up port "
@@ -7302,15 +7417,15 @@ msgstr ""
"ruteren din. Du må sette opp videresending for følgende porter for "
"%(service_name)s:"
-#: plinth/templates/setup.html:51
+#: plinth/templates/setup.html:36
msgid "Install this application?"
msgstr "Installere dette programmet?"
-#: plinth/templates/setup.html:55
+#: plinth/templates/setup.html:40
msgid "This application needs an update. Update now?"
msgstr "Dette programmet trenger en oppdatering. Oppdatere nå?"
-#: plinth/templates/setup.html:66
+#: plinth/templates/setup.html:51
msgid ""
"Another installation or upgrade is already running. Please wait for a few "
"moments before trying again."
@@ -7318,49 +7433,49 @@ msgstr ""
"En annen installasjon eller oppgradering kjører allerede. Vent litt før du "
"prøver igjen."
-#: plinth/templates/setup.html:73
+#: plinth/templates/setup.html:58
msgid "This application is currently not available in your distribution."
msgstr "Dette programmet er for tiden ikke tilgjengelig for din distribusjon."
-#: plinth/templates/setup.html:87
+#: plinth/templates/setup.html:72
msgid "Install"
msgstr "Installer"
-#: plinth/templates/setup.html:98
+#: plinth/templates/setup.html:83
msgid "Performing pre-install operation"
msgstr "Utfører en forhåndsinstallasjon"
-#: plinth/templates/setup.html:102
+#: plinth/templates/setup.html:87
msgid "Performing post-install operation"
msgstr "Utfører en etterinstallasjon"
-#: plinth/templates/setup.html:107
+#: plinth/templates/setup.html:92
#, python-format
msgid "Installing %(package_names)s: %(status)s"
msgstr "Installere %(package_names)s: %(status)s"
-#: plinth/templates/setup.html:117
+#: plinth/templates/setup.html:102
#, python-format
msgid "%(percentage)s%% complete"
msgstr "%(percentage)s%% fullført"
-#: plinth/templates/toolbar.html:38
+#: plinth/templates/toolbar.html:23
msgid "Launch web client"
msgstr "Sette i gang en web-klient"
-#: plinth/templates/toolbar.html:47
+#: plinth/templates/toolbar.html:32
msgid "Client Apps"
msgstr "Klientprogrammer"
-#: plinth/views.py:179
+#: plinth/views.py:189
msgid "Application enabled"
msgstr "Programmet er aktivert"
-#: plinth/views.py:182
+#: plinth/views.py:192
msgid "Application disabled"
msgstr "Programmet er deaktivert"
-#: plinth/web_framework.py:190
+#: plinth/web_framework.py:107
msgid "Gujarati"
msgstr "Gujarati"
diff --git a/plinth/locale/nl/LC_MESSAGES/django.po b/plinth/locale/nl/LC_MESSAGES/django.po
index 0f4ea7f71..1f4e69fcd 100644
--- a/plinth/locale/nl/LC_MESSAGES/django.po
+++ b/plinth/locale/nl/LC_MESSAGES/django.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2020-02-14 21:26+0200\n"
+"POT-Creation-Date: 2020-02-24 19:12-0500\n"
"PO-Revision-Date: 2020-01-17 21:21+0000\n"
"Last-Translator: ikmaak This means that devices on the Internet can reach you when you are " +"connected to the Internet. Every time you connect to the Internet with your " +"Internet Service Provider (ISP), you may get a different IP address, " +"especially after some offline time. Many ISPs offer this type of " +"connectivity. If you have a public IP address but are unsure if it changes " +"over time or not, it is safer to choose this option.
" +msgstr "" + #: plinth/modules/networks/forms.py:313 +#, python-brace-format +msgid "" +"I have a public IP address that does not change overtime (recommended)This means that devices on the Internet can reach you " +"when you are connected to the Internet. Every time you connect to the " +"Internet with your Internet Service Provider (ISP), you always get the same " +"IP address. This is the most trouble-free setup for many {box_name} services " +"but very few ISPs offer this. You may be able to get this service from your " +"ISP by making an additional payment.
" +msgstr "" + +#: plinth/modules/networks/forms.py:326 +#, python-brace-format +msgid "" +"I dont have a public IP addressThis means that " +"devices on the Internet can not reach you when you are connected to " +"the Internet. Every time you connect to the Internet with your Internet " +"Service Provider (ISP), you get an IP address that is only relevant for " +"local networks. Many ISPs offer this type of connectivity. This is the most " +"troublesome situation for hosting services at home. {box_name} provides many " +"workaround solutions but each solution has some limitations.
" +msgstr "" + +#: plinth/modules/networks/forms.py:351 #, fuzzy #| msgid "Current Network Configuration" msgid "Preferred router configuration" msgstr "Huidige Netwerkconfiguratie" -#: plinth/modules/networks/forms.py:318 +#: plinth/modules/networks/forms.py:356 #, python-brace-format msgid "" -"Use DMZ feature to forward all trafficMost routers " -"provide a configuration setting called DMZ. This will allow the router to " -"forward all incoming traffic from the internet to a single IP address such " -"as the {box_name}'s address. First remember to configure a static local IP " -"address for your {box_name} in your router's configuration.
" +"Use DMZ feature to forward all traffic (recommended)Most routers provide a configuration setting called DMZ. This will allow " +"the router to forward all incoming traffic from the Internet to a single IP " +"address such as the {box_name}'s IP address. First remember to configure a " +"static local IP address for your {box_name} in your router's configuration." +"p>" msgstr "" -#: plinth/modules/networks/forms.py:332 +#: plinth/modules/networks/forms.py:368 #, python-brace-format msgid "" -"Forward Specific Traffic as needed by each application
You may alternatively choose to forward only specific traffic to your " "{box_name}. This is ideal if you have other servers like {box_name} in your " "network or if your router does not support DMZ feature. All applications " @@ -3476,264 +3547,270 @@ msgid "" "to be forwarded for that application to work.
" msgstr "" -#: plinth/modules/networks/forms.py:349 +#: plinth/modules/networks/forms.py:382 msgid "" -"Router is currently unconfiguredChoose this if you " +"Router is currently unconfigured
Choose this if you " "have not configured or are unable to configure the router currently and wish " "to be reminded later. Some of the other configuration steps may fail.
" msgstr "" -#: plinth/modules/networks/networks.py:43 +#: plinth/modules/networks/networks.py:32 msgid "Network Connections" msgstr "Netwerkverbindingen" -#: plinth/modules/networks/networks.py:59 +#: plinth/modules/networks/networks.py:46 msgid "Cannot show connection: Connection not found." msgstr "Kan verbinding niet weergeven: Verbinding niet gevonden." -#: plinth/modules/networks/networks.py:94 +#: plinth/modules/networks/networks.py:81 msgid "Connection Information" msgstr "Verbindingsgegevens" -#: plinth/modules/networks/networks.py:108 +#: plinth/modules/networks/networks.py:95 msgid "Cannot edit connection: Connection not found." msgstr "Kan verbinding niet wijzigen: Verbinding niet gevonden." -#: plinth/modules/networks/networks.py:114 +#: plinth/modules/networks/networks.py:101 msgid "This type of connection is not yet understood." msgstr "Deze verbindingsmethode is (nog) niet bekend." -#: plinth/modules/networks/networks.py:136 -#: plinth/modules/networks/networks.py:220 -#: plinth/modules/networks/templates/connections_edit.html:35 +#: plinth/modules/networks/networks.py:123 +#: plinth/modules/networks/networks.py:207 +#: plinth/modules/networks/templates/connections_edit.html:20 msgid "Edit Connection" msgstr "Wijzig verbinding" -#: plinth/modules/networks/networks.py:232 +#: plinth/modules/networks/networks.py:219 #, python-brace-format msgid "Activated connection {name}." msgstr "Geactiveerde verbinding {name}." -#: plinth/modules/networks/networks.py:236 +#: plinth/modules/networks/networks.py:223 msgid "Failed to activate connection: Connection not found." msgstr "Kan verbinding niet inschakelen: Verbinding niet gevonden." -#: plinth/modules/networks/networks.py:242 +#: plinth/modules/networks/networks.py:229 #, python-brace-format msgid "Failed to activate connection {name}: No suitable device is available." msgstr "Kan verbinding {name} niet inschakelen: Verbinding niet gevonden." -#: plinth/modules/networks/networks.py:255 +#: plinth/modules/networks/networks.py:242 #, python-brace-format msgid "Deactivated connection {name}." msgstr "Verbinding {name} uitgeschakeld." -#: plinth/modules/networks/networks.py:259 +#: plinth/modules/networks/networks.py:246 msgid "Failed to de-activate connection: Connection not found." msgstr "Kan verbinding niet uitschakelen: Verbinding niet gevonden." -#: plinth/modules/networks/networks.py:269 -#: plinth/modules/networks/templates/connections_list.html:62 -#: plinth/modules/networks/templates/connections_list.html:64 +#: plinth/modules/networks/networks.py:256 +#: plinth/modules/networks/templates/connections_list.html:12 +#: plinth/modules/networks/templates/connections_list.html:14 msgid "Nearby Wi-Fi Networks" msgstr "Wi-Fi Netwerken dichtbij" -#: plinth/modules/networks/networks.py:293 -#: plinth/modules/networks/templates/connections_list.html:67 -#: plinth/modules/networks/templates/connections_list.html:69 -#: plinth/modules/wireguard/templates/wireguard_add_server.html:34 +#: plinth/modules/networks/networks.py:280 +#: plinth/modules/networks/templates/connections_list.html:17 +#: plinth/modules/networks/templates/connections_list.html:19 +#: plinth/modules/wireguard/templates/wireguard_add_server.html:19 msgid "Add Connection" msgstr "Verbinding toevoegen" -#: plinth/modules/networks/networks.py:311 +#: plinth/modules/networks/networks.py:298 msgid "Adding New Generic Connection" msgstr "Toevoegen nieuwe Verbinding" -#: plinth/modules/networks/networks.py:329 +#: plinth/modules/networks/networks.py:316 msgid "Adding New Ethernet Connection" msgstr "Toevoegen nieuwe Ethernetverbinding" -#: plinth/modules/networks/networks.py:347 +#: plinth/modules/networks/networks.py:334 msgid "Adding New PPPoE Connection" msgstr "Toevoegen nieuwe PPPoE verbinding" -#: plinth/modules/networks/networks.py:382 +#: plinth/modules/networks/networks.py:369 msgid "Adding New Wi-Fi Connection" msgstr "Toevoegen nieuwe W-Fi verbinding" -#: plinth/modules/networks/networks.py:397 +#: plinth/modules/networks/networks.py:384 #, python-brace-format msgid "Connection {name} deleted." msgstr "Verbinding {name} verwijderd." -#: plinth/modules/networks/networks.py:401 -#: plinth/modules/networks/networks.py:411 +#: plinth/modules/networks/networks.py:388 +#: plinth/modules/networks/networks.py:398 msgid "Failed to delete connection: Connection not found." msgstr "Kan verbinding niet verwijderen: Verbinding niet gevonden." -#: plinth/modules/networks/networks.py:416 -#: plinth/modules/networks/templates/connections_delete.html:26 +#: plinth/modules/networks/networks.py:403 +#: plinth/modules/networks/templates/connections_delete.html:11 msgid "Delete Connection" msgstr "Verwijder verbinding" -#: plinth/modules/networks/networks.py:442 +#: plinth/modules/networks/networks.py:428 #, fuzzy #| msgid "Tor configuration is being updated" msgid "Router configuration type saved." msgstr "Tor configuratie wordt bijgewerkt" -#: plinth/modules/networks/templates/connection_show.html:43 +#: plinth/modules/networks/networks.py:474 +#, fuzzy +#| msgid "Tor configuration is being updated" +msgid "Internet connection type saved." +msgstr "Tor configuratie wordt bijgewerkt" + +#: plinth/modules/networks/templates/connection_show.html:28 msgid "Edit connection" msgstr "Wijzig verbinding" -#: plinth/modules/networks/templates/connection_show.html:43 -#: plinth/modules/wireguard/templates/wireguard_show_client.html:83 -#: plinth/modules/wireguard/templates/wireguard_show_server.html:84 -#: plinth/templates/base.html:167 plinth/templates/base.html:168 +#: plinth/modules/networks/templates/connection_show.html:28 +#: plinth/modules/wireguard/templates/wireguard_show_client.html:68 +#: plinth/modules/wireguard/templates/wireguard_show_server.html:69 +#: plinth/templates/base.html:152 plinth/templates/base.html:153 msgid "Edit" msgstr "Wijzig" -#: plinth/modules/networks/templates/connection_show.html:50 -#: plinth/modules/networks/templates/connections_list.html:90 +#: plinth/modules/networks/templates/connection_show.html:35 +#: plinth/modules/networks/templates/connections_list.html:40 msgid "Deactivate" msgstr "Deactiveer" -#: plinth/modules/networks/templates/connection_show.html:57 -#: plinth/modules/networks/templates/connections_list.html:98 +#: plinth/modules/networks/templates/connection_show.html:42 +#: plinth/modules/networks/templates/connections_list.html:48 msgid "Activate" msgstr "Activeer" -#: plinth/modules/networks/templates/connection_show.html:63 +#: plinth/modules/networks/templates/connection_show.html:48 msgid "Delete connection" msgstr "Verwijder verbinding" -#: plinth/modules/networks/templates/connection_show.html:66 -#: plinth/modules/networks/templates/connections_diagram.html:73 -#: plinth/modules/networks/templates/connections_diagram.html:76 -#: plinth/modules/networks/templates/connections_diagram.html:105 -#: plinth/modules/networks/templates/connections_diagram.html:127 +#: plinth/modules/networks/templates/connection_show.html:51 +#: plinth/modules/networks/templates/connections_diagram.html:58 +#: plinth/modules/networks/templates/connections_diagram.html:61 +#: plinth/modules/networks/templates/connections_diagram.html:90 +#: plinth/modules/networks/templates/connections_diagram.html:112 msgid "Connection" msgstr "Verbinding" -#: plinth/modules/networks/templates/connection_show.html:71 +#: plinth/modules/networks/templates/connection_show.html:56 msgid "Primary connection" msgstr "Primaire Verbinding" -#: plinth/modules/networks/templates/connection_show.html:73 -#: plinth/modules/networks/templates/connection_show.html:217 -#: plinth/modules/networks/templates/connection_show.html:256 +#: plinth/modules/networks/templates/connection_show.html:58 +#: plinth/modules/networks/templates/connection_show.html:202 +#: plinth/modules/networks/templates/connection_show.html:241 msgid "yes" msgstr "ja" -#: plinth/modules/networks/templates/connection_show.html:84 -#: plinth/modules/storage/templates/storage.html:40 +#: plinth/modules/networks/templates/connection_show.html:69 +#: plinth/modules/storage/templates/storage.html:25 msgid "Device" msgstr "Apparaat" -#: plinth/modules/networks/templates/connection_show.html:88 +#: plinth/modules/networks/templates/connection_show.html:73 msgid "State" msgstr "Status" -#: plinth/modules/networks/templates/connection_show.html:93 +#: plinth/modules/networks/templates/connection_show.html:78 msgid "State reason" msgstr "Reden van status" -#: plinth/modules/networks/templates/connection_show.html:102 +#: plinth/modules/networks/templates/connection_show.html:87 msgid "MAC address" msgstr "MAC adres" -#: plinth/modules/networks/templates/connection_show.html:106 +#: plinth/modules/networks/templates/connection_show.html:91 msgid "Interface" msgstr "Interface" -#: plinth/modules/networks/templates/connection_show.html:110 -#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:33 -#: plinth/modules/snapshot/templates/snapshot_manage.html:45 -#: plinth/modules/snapshot/templates/snapshot_rollback.html:41 +#: plinth/modules/networks/templates/connection_show.html:95 +#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:18 +#: plinth/modules/snapshot/templates/snapshot_manage.html:30 +#: plinth/modules/snapshot/templates/snapshot_rollback.html:26 msgid "Description" msgstr "Omschrijving" -#: plinth/modules/networks/templates/connection_show.html:116 +#: plinth/modules/networks/templates/connection_show.html:101 msgid "Physical Link" msgstr "Fysieke Verbinding" -#: plinth/modules/networks/templates/connection_show.html:121 +#: plinth/modules/networks/templates/connection_show.html:106 msgid "Link state" msgstr "Verbindingsstatus" -#: plinth/modules/networks/templates/connection_show.html:125 +#: plinth/modules/networks/templates/connection_show.html:110 msgid "cable is connected" msgstr "kabel is verbonden" -#: plinth/modules/networks/templates/connection_show.html:128 +#: plinth/modules/networks/templates/connection_show.html:113 msgid "please check cable" msgstr "controleer kabel" -#: plinth/modules/networks/templates/connection_show.html:133 -#: plinth/modules/networks/templates/connection_show.html:149 +#: plinth/modules/networks/templates/connection_show.html:118 +#: plinth/modules/networks/templates/connection_show.html:134 msgid "Speed" msgstr "Snelheid" -#: plinth/modules/networks/templates/connection_show.html:135 +#: plinth/modules/networks/templates/connection_show.html:120 #, python-format msgid "%(ethernet_speed)s Mbit/s" msgstr "%(ethernet_speed)s Mbit/s" -#: plinth/modules/networks/templates/connection_show.html:151 +#: plinth/modules/networks/templates/connection_show.html:136 #, python-format msgid "%(wireless_bitrate)s Mbit/s" msgstr "%(wireless_bitrate)s Mbit/s" -#: plinth/modules/networks/templates/connection_show.html:163 +#: plinth/modules/networks/templates/connection_show.html:148 msgid "Signal strength" msgstr "Signaalsterkte" -#: plinth/modules/networks/templates/connection_show.html:181 +#: plinth/modules/networks/templates/connection_show.html:166 msgid "IPv4" msgstr "IPv4" -#: plinth/modules/networks/templates/connection_show.html:186 -#: plinth/modules/networks/templates/connection_show.html:227 -#: plinth/modules/shadowsocks/forms.py:64 +#: plinth/modules/networks/templates/connection_show.html:171 +#: plinth/modules/networks/templates/connection_show.html:212 +#: plinth/modules/shadowsocks/forms.py:49 msgid "Method" msgstr "Methode" -#: plinth/modules/networks/templates/connection_show.html:193 -#: plinth/modules/networks/templates/connection_show.html:234 +#: plinth/modules/networks/templates/connection_show.html:178 +#: plinth/modules/networks/templates/connection_show.html:219 msgid "IP address" msgstr "IP adres" -#: plinth/modules/networks/templates/connection_show.html:209 -#: plinth/modules/networks/templates/connection_show.html:248 +#: plinth/modules/networks/templates/connection_show.html:194 +#: plinth/modules/networks/templates/connection_show.html:233 msgid "DNS server" msgstr "DNS server" -#: plinth/modules/networks/templates/connection_show.html:216 -#: plinth/modules/networks/templates/connection_show.html:255 -#: plinth/modules/storage/forms.py:156 +#: plinth/modules/networks/templates/connection_show.html:201 +#: plinth/modules/networks/templates/connection_show.html:240 +#: plinth/modules/storage/forms.py:141 msgid "Default" msgstr "Standaard" -#: plinth/modules/networks/templates/connection_show.html:222 +#: plinth/modules/networks/templates/connection_show.html:207 msgid "IPv6" msgstr "IPv6" -#: plinth/modules/networks/templates/connection_show.html:263 +#: plinth/modules/networks/templates/connection_show.html:248 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:38 plinth/modules/security/views.py:47 +#: plinth/modules/networks/templates/connection_show.html:251 +#: plinth/modules/security/__init__.py:45 msgid "Security" msgstr "Security" -#: plinth/modules/networks/templates/connection_show.html:271 -#: plinth/modules/networks/templates/connection_show.html:291 -#: plinth/modules/networks/templates/connection_show.html:310 +#: plinth/modules/networks/templates/connection_show.html:256 +#: plinth/modules/networks/templates/connection_show.html:276 +#: plinth/modules/networks/templates/connection_show.html:295 msgid "Firewall zone" msgstr "Firewall zone" -#: plinth/modules/networks/templates/connection_show.html:280 +#: plinth/modules/networks/templates/connection_show.html:265 msgid "" "This interface should be connected to a local network/machine. If you " "connect this interface to a public network, services meant to be available " @@ -3744,7 +3821,7 @@ msgstr "" "bedoeld zijn om intern beschikbaar te zijn van buitenaf bereikbaar. Dit is " "een veiligheidsrisico." -#: plinth/modules/networks/templates/connection_show.html:300 +#: plinth/modules/networks/templates/connection_show.html:285 msgid "" "This interface should receive your Internet connection. If you connect it to " "a local network/machine, many services meant to available only internally " @@ -3754,7 +3831,7 @@ msgstr "" "wordt met een lokaal netwerk/machine, zijn veel diensten die alleen lokaal " "beschikbaar zijn niet bereikbaar." -#: plinth/modules/networks/templates/connection_show.html:319 +#: plinth/modules/networks/templates/connection_show.html:304 #, python-format msgid "" "This interface is not maintained by %(box_name)s. Its security status is " @@ -3767,112 +3844,137 @@ msgstr "" "zullen niet beschikbaar zijn via deze verbinding. Het wordt aanbevolen om " "deze verbinding te deactiveren/verwijderen en opnieuw in te stellen." -#: plinth/modules/networks/templates/connections_create.html:34 +#: plinth/modules/networks/templates/connections_create.html:19 msgid "Create Connection" msgstr "Maak Verbinding" -#: plinth/modules/networks/templates/connections_delete.html:29 +#: plinth/modules/networks/templates/connections_delete.html:14 #, python-format msgid "Delete connection %(name)s permanently?" msgstr "Verbinding %(name)s permanent verwijderen?" -#: plinth/modules/networks/templates/connections_diagram.html:65 +#: plinth/modules/networks/templates/connections_diagram.html:50 msgid "Internet" msgstr "Internet" -#: plinth/modules/networks/templates/connections_diagram.html:70 -#: plinth/modules/networks/templates/connections_diagram.html:102 +#: plinth/modules/networks/templates/connections_diagram.html:55 +#: plinth/modules/networks/templates/connections_diagram.html:87 msgid "Spacing" msgstr "Verbinding" -#: plinth/modules/networks/templates/connections_diagram.html:83 -#: plinth/modules/networks/templates/connections_diagram.html:113 -#: plinth/network.py:40 +#: plinth/modules/networks/templates/connections_diagram.html:68 +#: plinth/modules/networks/templates/connections_diagram.html:98 +#: plinth/network.py:25 msgid "Ethernet" msgstr "Ethernet" -#: plinth/modules/networks/templates/connections_diagram.html:86 -#: plinth/modules/networks/templates/connections_diagram.html:116 -#: plinth/network.py:41 +#: plinth/modules/networks/templates/connections_diagram.html:71 +#: plinth/modules/networks/templates/connections_diagram.html:101 +#: plinth/network.py:26 msgid "Wi-Fi" msgstr "Wi-Fi" -#: plinth/modules/networks/templates/connections_diagram.html:89 +#: plinth/modules/networks/templates/connections_diagram.html:74 #, python-format msgid "Show connection %(connection.name)s" msgstr "Toon verbinding %(connection.name)s" -#: plinth/modules/networks/templates/connections_diagram.html:119 +#: plinth/modules/networks/templates/connections_diagram.html:104 #, python-format msgid "Show connection %(name)s" msgstr "Tonen verbinding %(name)s" -#: plinth/modules/networks/templates/connections_diagram.html:131 +#: plinth/modules/networks/templates/connections_diagram.html:116 msgid "Computer" msgstr "Computer" -#: plinth/modules/networks/templates/connections_list.html:58 +#: plinth/modules/networks/templates/connections_list.html:8 msgid "Connections" msgstr "Verbindingen" -#: plinth/modules/networks/templates/connections_list.html:79 +#: plinth/modules/networks/templates/connections_list.html:29 #, python-format msgid "Delete connection %(name)s" msgstr "Verwijder verbinding %(name)s" -#: plinth/modules/networks/templates/connections_list.html:104 +#: plinth/modules/networks/templates/connections_list.html:54 msgid "Active" msgstr "Aktief" -#: plinth/modules/networks/templates/connections_list.html:107 +#: plinth/modules/networks/templates/connections_list.html:57 msgid "Inactive" msgstr "Inactief" -#: plinth/modules/networks/templates/connections_list.html:124 -#, python-format -msgid "%(box_name)s Internet Connectivity" +#: plinth/modules/networks/templates/connections_type_select.html:19 +msgid "Create..." +msgstr "Maak..." + +#: plinth/modules/networks/templates/internet_connectivity_content.html:10 +msgid "What Type Of Internet Connection Do You Have?" msgstr "" -#: plinth/modules/networks/templates/connections_list.html:129 -#, python-format +#: plinth/modules/networks/templates/internet_connectivity_content.html:16 msgid "" -"The following best describes how your %(box_name)s is connected in your " -"network. This information is used only to suggest necessary configuration " -"actions." +"Select an option that best describes the type of Internet connection. This " +"information is used only to guide you with further setup." msgstr "" -#: plinth/modules/networks/templates/connections_list.html:137 -#, python-format +#: plinth/modules/networks/templates/internet_connectivity_firstboot.html:18 +#: plinth/modules/networks/templates/router_configuration_firstboot.html:18 +msgid "Skip this step" +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_firstboot.html:19 +#: plinth/modules/networks/templates/router_configuration_firstboot.html:19 +msgid "Next" +msgstr "Volgende" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:9 +#, fuzzy +#| msgid "Connection Type" +msgid "Your Internet Connection Type" +msgstr "Verbindingssoort" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:14 msgid "" -"Your %(box_name)s gets its internet from your Router via WiFi or Ethernet " -"cable. This is a typical home setup." +"The following best describes the type of Internet connection provided by " +"your ISP. This information is only used to suggest you necessary " +"configuration actions." msgstr "" -#: plinth/modules/networks/templates/connections_list.html:145 -#: plinth/modules/networks/templates/connections_list.html:147 +#: plinth/modules/networks/templates/internet_connectivity_main.html:23 +msgid "My ISP provides a public IP address that does not change over time." +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:27 +msgid "My ISP provides a public IP address that may change over time." +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:31 +msgid "My ISP does not provide a public IP address." +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:37 +#: plinth/modules/networks/templates/router_configuration_main.html:29 #, fuzzy #| msgid "Update" msgid "Update..." msgstr "Update" -#: plinth/modules/networks/templates/connections_type_select.html:34 -msgid "Create..." -msgstr "Maak..." - -#: plinth/modules/networks/templates/router_configuration_content.html:25 +#: plinth/modules/networks/templates/router_configuration_content.html:10 #, fuzzy, python-format #| msgid "%(box_name)s is up to date." msgid "Setup %(box_name)s Behind a Router" msgstr "De nieuwste versie van %(box_name)s is geïnstalleerd." -#: plinth/modules/networks/templates/router_configuration_content.html:31 +#: plinth/modules/networks/templates/router_configuration_content.html:16 #, python-format msgid "" "Your %(box_name)s gets its internet connection from your router via Wi-Fi or " "Ethernet cable. This is a typical home setup." msgstr "" -#: plinth/modules/networks/templates/router_configuration_content.html:38 +#: plinth/modules/networks/templates/router_configuration_content.html:23 #, python-format msgid "" "With this setup, any device on the internet trying to reach your " @@ -3881,24 +3983,24 @@ msgid "" "the services." msgstr "" -#: plinth/modules/networks/templates/router_configuration_content.html:47 +#: plinth/modules/networks/templates/router_configuration_content.html:32 msgid "" "If you don't have control over your router, choose not to configure it. To " -"see options, to overcome this limitation, choose 'no public address' option " +"see options to overcome this limitation, choose 'no public address' option " "in Internet connection type selection." msgstr "" -#: plinth/modules/networks/templates/router_configuration_content.html:54 +#: plinth/modules/networks/templates/router_configuration_content.html:39 msgid "Choose How You Wish to Configure Your Router" msgstr "" -#: plinth/modules/networks/templates/router_configuration_content.html:57 +#: plinth/modules/networks/templates/router_configuration_content.html:42 msgid "" "You will need to login to your router's administration console provided by " "the router. This may look like one of the following:" msgstr "" -#: plinth/modules/networks/templates/router_configuration_content.html:69 +#: plinth/modules/networks/templates/router_configuration_content.html:54 msgid "" "The username and password is configured by you when you first setup the " "router. For many routers, this information is printed at the back of the " @@ -3908,24 +4010,27 @@ msgid "" "full instructions on how to perform this task." msgstr "" -#: plinth/modules/networks/templates/router_configuration_firstboot.html:33 -msgid "skip this step" +#: plinth/modules/networks/templates/router_configuration_main.html:9 +#, python-format +msgid "%(box_name)s Internet Connectivity" msgstr "" -#: plinth/modules/networks/templates/router_configuration_firstboot.html:35 -msgid "Next" -msgstr "Volgende" +#: plinth/modules/networks/templates/router_configuration_main.html:15 +#, python-format +msgid "" +"The following best describes how your %(box_name)s is connected in your " +"network. This information is used only to suggest necessary configuration " +"actions." +msgstr "" -#: plinth/modules/openvpn/__init__.py:39 plinth/modules/openvpn/manifest.py:33 -msgid "OpenVPN" -msgstr "OpenVPN" +#: plinth/modules/networks/templates/router_configuration_main.html:23 +#, python-format +msgid "" +"Your %(box_name)s gets its Internet from your Router via Wi-Fi or Ethernet " +"cable. This is a typical home setup." +msgstr "" -#: plinth/modules/openvpn/__init__.py:43 -#: plinth/modules/wireguard/__init__.py:40 -msgid "Virtual Private Network" -msgstr "Virtual Private Network" - -#: plinth/modules/openvpn/__init__.py:47 +#: plinth/modules/openvpn/__init__.py:26 #, python-brace-format msgid "" "Virtual Private Network (VPN) is a technique for securely connecting two " @@ -3943,22 +4048,31 @@ msgstr "" "mogelijk om de rest van het internetgebruik via {box_name} te leiden, voor " "meer veiligheid en anonimiteit." -#: plinth/modules/openvpn/__init__.py:79 +#: plinth/modules/openvpn/__init__.py:49 plinth/modules/openvpn/manifest.py:18 +msgid "OpenVPN" +msgstr "OpenVPN" + +#: plinth/modules/openvpn/__init__.py:50 +#: plinth/modules/wireguard/__init__.py:53 +msgid "Virtual Private Network" +msgstr "Virtual Private Network" + +#: plinth/modules/openvpn/__init__.py:61 #, python-brace-format msgid "" "Download Profile" msgstr "" " Download profiel" -#: plinth/modules/openvpn/forms.py:27 +#: plinth/modules/openvpn/forms.py:12 msgid "Enable OpenVPN server" msgstr "OpenVPN server Inschakelen" -#: plinth/modules/openvpn/manifest.py:63 -msgid "TunnelBlick" +#: plinth/modules/openvpn/manifest.py:48 +msgid "Tunnelblick" msgstr "" -#: plinth/modules/openvpn/templates/openvpn.html:42 +#: plinth/modules/openvpn/templates/openvpn.html:27 #, python-format msgid "" "OpenVPN has not yet been setup. Performing a secure setup takes a very long " @@ -3969,15 +4083,15 @@ msgstr "" "Afhankelijk van de snelheid van %(box_name)s kan dit zelfs uren duren. Als " "de installatie wordt onderbroken, kan deze opnieuw gestart worden." -#: plinth/modules/openvpn/templates/openvpn.html:55 +#: plinth/modules/openvpn/templates/openvpn.html:40 msgid "Start setup" msgstr "Setup starten" -#: plinth/modules/openvpn/templates/openvpn.html:64 +#: plinth/modules/openvpn/templates/openvpn.html:49 msgid "OpenVPN setup is running" msgstr "OpenVPN setup draait" -#: plinth/modules/openvpn/templates/openvpn.html:68 +#: plinth/modules/openvpn/templates/openvpn.html:53 #, python-format msgid "" "To perform a secure setup, this process takes a very long time. Depending " @@ -3988,11 +4102,11 @@ msgstr "" "%(box_name)s kan dit soms uren duren. Als de installatie wordt onderbroken, " "kan deze weer opnieuw gestart worden." -#: plinth/modules/openvpn/templates/openvpn.html:87 +#: plinth/modules/openvpn/templates/openvpn.html:72 msgid "Profile" msgstr "Profiel" -#: plinth/modules/openvpn/templates/openvpn.html:90 +#: plinth/modules/openvpn/templates/openvpn.html:75 #, fuzzy, python-format #| msgid "" #| "To connect to %(box_name)s's VPN, you need to download a profile and feed " @@ -4012,33 +4126,25 @@ msgstr "" "OpenVPN\" title=\"%(box_name)s Manual - OpenVPN\">handleiding met " "aanbevolen cliënts en gebruiksinstructies." -#: plinth/modules/openvpn/templates/openvpn.html:100 +#: plinth/modules/openvpn/templates/openvpn.html:85 #, python-format msgid "Profile is specific to each user of %(box_name)s. Keep it a secret." msgstr "" "Profielen zijn voor iedere gebruiker van %(box_name)s anders. Houd ze geheim." -#: plinth/modules/openvpn/templates/openvpn.html:111 +#: plinth/modules/openvpn/templates/openvpn.html:96 msgid "Download my profile" msgstr "Download mijn profiel" -#: plinth/modules/openvpn/views.py:133 +#: plinth/modules/openvpn/views.py:114 msgid "Setup completed." msgstr "Instelling voltooid." -#: plinth/modules/openvpn/views.py:135 +#: plinth/modules/openvpn/views.py:116 msgid "Setup failed." msgstr "Instelling mislukt." -#: plinth/modules/pagekite/__init__.py:39 -msgid "PageKite" -msgstr "PageKite" - -#: plinth/modules/pagekite/__init__.py:41 -msgid "Public Visibility" -msgstr "Publieke zichtbaarheid" - -#: plinth/modules/pagekite/__init__.py:45 +#: plinth/modules/pagekite/__init__.py:26 #, python-brace-format msgid "" "PageKite is a system for exposing {box_name} services when you don't have a " @@ -4051,19 +4157,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:50 +#: plinth/modules/pagekite/__init__.py:31 #, 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:53 +#: plinth/modules/pagekite/__init__.py:34 #, 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:55 +#: plinth/modules/pagekite/__init__.py:36 msgid "" "Your ISP does not provide you an external IP address and instead provides " "Internet connection through NAT." @@ -4071,7 +4177,7 @@ msgstr "" "De internetprovider geeft geen extern IP adres maar maakt gebruik van een " "NAT verbinding." -#: plinth/modules/pagekite/__init__.py:57 +#: plinth/modules/pagekite/__init__.py:38 msgid "" "Your ISP does not provide you a static IP address and your IP address " "changes every time you connect to Internet." @@ -4079,11 +4185,11 @@ msgstr "" "De internetprovider geeft geen statisch IP adres, en het IP adres verandert " "telkens wanneer u verbinding maakt met internet." -#: plinth/modules/pagekite/__init__.py:59 +#: plinth/modules/pagekite/__init__.py:40 msgid "Your ISP limits incoming connections." msgstr "De internetprovider beperkt inkomende verbindingen." -#: plinth/modules/pagekite/__init__.py:61 +#: plinth/modules/pagekite/__init__.py:42 #, fuzzy, python-brace-format #| msgid "" #| "PageKite works around NAT, firewalls and IP-address limitations by using " @@ -4103,15 +4209,23 @@ msgstr "" "\">pagekite.net. In de toekomst is het misschien mogelijk om de " "{box_name} van een van je vrienden te gebruiken." -#: plinth/modules/pagekite/__init__.py:87 +#: plinth/modules/pagekite/__init__.py:62 +msgid "PageKite" +msgstr "PageKite" + +#: plinth/modules/pagekite/__init__.py:64 +msgid "Public Visibility" +msgstr "Publieke zichtbaarheid" + +#: plinth/modules/pagekite/__init__.py:74 msgid "PageKite Domain" msgstr "PageKite domein" -#: plinth/modules/pagekite/forms.py:66 +#: plinth/modules/pagekite/forms.py:51 msgid "Server domain" msgstr "Serverdomein" -#: plinth/modules/pagekite/forms.py:68 +#: plinth/modules/pagekite/forms.py:53 msgid "" "Select your pagekite server. Set \"pagekite.net\" to use the default " "pagekite.net server." @@ -4119,31 +4233,31 @@ msgstr "" "Selecteer een pagekite server. Gebruik \"pagekite.net\" om de standaard " "pagekite.net server te gebruiken." -#: plinth/modules/pagekite/forms.py:71 plinth/modules/shadowsocks/forms.py:55 +#: plinth/modules/pagekite/forms.py:56 plinth/modules/shadowsocks/forms.py:40 msgid "Server port" msgstr "Serverpoort" -#: plinth/modules/pagekite/forms.py:72 +#: plinth/modules/pagekite/forms.py:57 msgid "Port of your pagekite server (default: 80)" msgstr "Poort voor de pagekite server (default: 80)" -#: plinth/modules/pagekite/forms.py:74 +#: plinth/modules/pagekite/forms.py:59 msgid "Kite name" msgstr "Kitenaam" -#: plinth/modules/pagekite/forms.py:75 +#: plinth/modules/pagekite/forms.py:60 msgid "Example: mybox.pagekite.me" msgstr "Voorbeeld: mybox.pagekite.me" -#: plinth/modules/pagekite/forms.py:77 +#: plinth/modules/pagekite/forms.py:62 msgid "Invalid kite name" msgstr "Foute kite-naam" -#: plinth/modules/pagekite/forms.py:81 +#: plinth/modules/pagekite/forms.py:66 msgid "Kite secret" msgstr "Kite-geheim" -#: plinth/modules/pagekite/forms.py:82 +#: plinth/modules/pagekite/forms.py:67 msgid "" "A secret associated with the kite or the default secret for your account if " "no secret is set on the kite." @@ -4151,43 +4265,43 @@ msgstr "" "Het wachtwoord dat met deze kite is verbonden, en het standaard wachtwoord " "voor deze account als deze kite geen eigen wachtwoord heeft." -#: plinth/modules/pagekite/forms.py:98 +#: plinth/modules/pagekite/forms.py:83 msgid "Kite details set" msgstr "Kite details ingesteld" -#: plinth/modules/pagekite/forms.py:105 +#: plinth/modules/pagekite/forms.py:90 msgid "Pagekite server set" msgstr "PageKite server ingeschakeld" -#: plinth/modules/pagekite/forms.py:129 +#: plinth/modules/pagekite/forms.py:114 msgid "PageKite enabled" msgstr "PageKite ingeschakeld" -#: plinth/modules/pagekite/forms.py:132 +#: plinth/modules/pagekite/forms.py:117 msgid "PageKite disabled" msgstr "PageKite uitgeschakeld" -#: plinth/modules/pagekite/forms.py:148 +#: plinth/modules/pagekite/forms.py:133 msgid "protocol" msgstr "protocol" -#: plinth/modules/pagekite/forms.py:151 +#: plinth/modules/pagekite/forms.py:136 msgid "external (frontend) port" msgstr "externe (frontend) poort" -#: plinth/modules/pagekite/forms.py:154 +#: plinth/modules/pagekite/forms.py:139 msgid "internal (freedombox) port" msgstr "interne (freedombox) poort" -#: plinth/modules/pagekite/forms.py:155 +#: plinth/modules/pagekite/forms.py:140 msgid "Enable Subdomains" msgstr "Subdomeinen Inschakelen" -#: plinth/modules/pagekite/forms.py:189 +#: plinth/modules/pagekite/forms.py:174 msgid "Deleted custom service" msgstr "Verwijderde aangepaste dienst" -#: plinth/modules/pagekite/forms.py:222 +#: plinth/modules/pagekite/forms.py:207 msgid "" "This service is available as a standard service. Please use the \"Standard " "Services\" page to enable it." @@ -4195,45 +4309,45 @@ msgstr "" "Deze dienst is beschikbaar als een standaarddienst. Gebruik de \"Standaard " "Diensten\" pagina." -#: plinth/modules/pagekite/forms.py:231 +#: plinth/modules/pagekite/forms.py:216 msgid "Added custom service" msgstr "Aangepaste dienst toevoegen" -#: plinth/modules/pagekite/forms.py:234 +#: plinth/modules/pagekite/forms.py:219 msgid "This service already exists" msgstr "Deze dienst bestaat al" -#: plinth/modules/pagekite/templates/pagekite_configure.html:47 +#: plinth/modules/pagekite/templates/pagekite_configure.html:32 msgid "Custom Services" msgstr "Aangepaste Diensten" -#: plinth/modules/pagekite/templates/pagekite_configure.html:50 -#: plinth/modules/pagekite/templates/pagekite_configure.html:52 +#: plinth/modules/pagekite/templates/pagekite_configure.html:35 +#: plinth/modules/pagekite/templates/pagekite_configure.html:37 #, fuzzy #| msgid "Custom Services" msgid "Add Custom Service" msgstr "Aangepaste Diensten" -#: plinth/modules/pagekite/templates/pagekite_configure.html:57 +#: plinth/modules/pagekite/templates/pagekite_configure.html:42 msgid "Existing custom services" msgstr "Bestaande aangepaste diensten" -#: plinth/modules/pagekite/templates/pagekite_configure.html:71 +#: plinth/modules/pagekite/templates/pagekite_configure.html:56 #, python-format msgid "connected to %(backend_host)s:%(backend_port)s" msgstr "verbonden met %(backend_host)s:%(backend_port)s" -#: plinth/modules/pagekite/templates/pagekite_configure.html:83 +#: plinth/modules/pagekite/templates/pagekite_configure.html:68 msgid "Delete this service" msgstr "Verwijder deze dienst" -#: plinth/modules/pagekite/templates/pagekite_custom_services.html:30 +#: plinth/modules/pagekite/templates/pagekite_custom_services.html:15 #, fuzzy #| msgid "Added custom service" msgid "Add custom PageKite service" msgstr "Aangepaste dienst toevoegen" -#: plinth/modules/pagekite/templates/pagekite_custom_services.html:32 +#: plinth/modules/pagekite/templates/pagekite_custom_services.html:17 msgid "" "Warning:imaps://imap.example."
"com."
-#: plinth/modules/roundcube/__init__.py:53
+#: plinth/modules/roundcube/__init__.py:32
msgid ""
"For Gmail, username will be your Gmail address, password will be your Google "
"account password and server will be imaps://imap.gmail.com. "
@@ -4643,17 +4747,22 @@ msgstr ""
"(https://"
"www.google.com/settings/security/lesssecureapps)."
-#: plinth/modules/samba/__init__.py:46
-msgid "Samba"
-msgstr ""
+#: plinth/modules/roundcube/__init__.py:54
+#: plinth/modules/roundcube/manifest.py:9
+msgid "Roundcube"
+msgstr "Roundcube"
-#: plinth/modules/samba/__init__.py:53
+#: plinth/modules/roundcube/__init__.py:55
+msgid "Email Client"
+msgstr "Email Cliënt"
+
+#: plinth/modules/samba/__init__.py:32
msgid ""
"Samba allows to share files and folders between FreedomBox and other "
"computers in your local network."
msgstr ""
-#: plinth/modules/samba/__init__.py:56
+#: plinth/modules/samba/__init__.py:35
#, python-brace-format
msgid ""
"After installation, you can choose which disks to use for sharing. Enabled "
@@ -4662,55 +4771,59 @@ msgid ""
"There are three types of shares you can choose from: "
msgstr ""
-#: plinth/modules/samba/__init__.py:61
+#: plinth/modules/samba/__init__.py:40
msgid "Open share - accessible to everyone in your local network."
msgstr ""
-#: plinth/modules/samba/__init__.py:62
+#: plinth/modules/samba/__init__.py:41
msgid ""
"Group share - accessible only to FreedomBox users who are in the freedombox-"
"share group."
msgstr ""
-#: plinth/modules/samba/__init__.py:64
+#: plinth/modules/samba/__init__.py:43
msgid ""
"Home share - every user in the freedombox-share group can have their own "
"private space."
msgstr ""
-#: plinth/modules/samba/__init__.py:68
+#: plinth/modules/samba/__init__.py:47
msgid "Access to the private shares"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:39
-#: plinth/modules/samba/templates/samba.html:50
+#: plinth/modules/samba/__init__.py:61
+msgid "Samba"
+msgstr ""
+
+#: plinth/modules/samba/templates/samba.html:24
+#: plinth/modules/samba/templates/samba.html:35
#, fuzzy
#| msgid "Shared"
msgid "Shares"
msgstr "Gedeeld"
-#: plinth/modules/samba/templates/samba.html:41
+#: plinth/modules/samba/templates/samba.html:26
msgid ""
"Note: Only specially created directories will be shared on selected disks, "
"not the whole disk."
msgstr ""
-#: plinth/modules/samba/templates/samba.html:49
+#: plinth/modules/samba/templates/samba.html:34
#, fuzzy
#| msgid "Domain Name"
msgid "Disk Name"
msgstr "Domeinnaam"
-#: plinth/modules/samba/templates/samba.html:51
-#: plinth/modules/storage/templates/storage.html:44
+#: plinth/modules/samba/templates/samba.html:36
+#: plinth/modules/storage/templates/storage.html:29
msgid "Used"
msgstr "Gebruikt"
-#: plinth/modules/samba/templates/samba.html:72
+#: plinth/modules/samba/templates/samba.html:57
msgid "VFAT partitions are not supported"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:103
+#: plinth/modules/samba/templates/samba.html:88
#, python-format
msgid ""
"You can find additional information about disks on the users module page."
msgstr ""
-#: plinth/modules/samba/templates/samba.html:109
+#: plinth/modules/samba/templates/samba.html:94
msgid "Users who can currently access group and home shares"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:113
+#: plinth/modules/samba/templates/samba.html:98
msgid ""
"Users needing to re-enter their password on the password change page to "
"access group and home shares"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:118
+#: plinth/modules/samba/templates/samba.html:103
#, fuzzy
#| msgid "Available Domains"
msgid "Unavailable Shares"
msgstr "Beschikbare Domeinen"
-#: plinth/modules/samba/templates/samba.html:120
+#: plinth/modules/samba/templates/samba.html:105
msgid ""
"Shares that are configured but the disk is not available. If the disk is "
"plugged back in, sharing will be automatically enabled."
msgstr ""
-#: plinth/modules/samba/templates/samba.html:128
+#: plinth/modules/samba/templates/samba.html:113
#, fuzzy
#| msgid "Share added."
msgid "Share name"
msgstr "Gedeelde map toegevoegd."
-#: plinth/modules/samba/templates/samba.html:129
+#: plinth/modules/samba/templates/samba.html:114
#, fuzzy
#| msgid "Actions"
msgid "Action"
msgstr "Acties"
-#: plinth/modules/samba/views.py:61 plinth/modules/storage/forms.py:164
+#: plinth/modules/samba/views.py:43 plinth/modules/storage/forms.py:149
#, fuzzy
#| msgid "Add Share"
msgid "Open Share"
msgstr "Gedeelde map toevoegen"
-#: plinth/modules/samba/views.py:62 plinth/modules/storage/forms.py:162
+#: plinth/modules/samba/views.py:44 plinth/modules/storage/forms.py:147
#, fuzzy
#| msgid "Add Share"
msgid "Group Share"
msgstr "Gedeelde map toevoegen"
-#: plinth/modules/samba/views.py:63
+#: plinth/modules/samba/views.py:45
#, fuzzy
#| msgid "Homepage"
msgid "Home Share"
msgstr "Startpagina"
-#: plinth/modules/samba/views.py:96
+#: plinth/modules/samba/views.py:78
#, fuzzy
#| msgid "Share deleted."
msgid "Share enabled."
msgstr "Gedeelde map verwijderd."
-#: plinth/modules/samba/views.py:101
+#: plinth/modules/samba/views.py:83
#, fuzzy, python-brace-format
#| msgid "Error installing application: {error}"
msgid "Error enabling share: {error_message}"
msgstr "Fout bij het installeren van de toepassing: {error}"
-#: plinth/modules/samba/views.py:106
+#: plinth/modules/samba/views.py:88
#, fuzzy
#| msgid "Share edited."
msgid "Share disabled."
msgstr "Gedeelde map bewerkt."
-#: plinth/modules/samba/views.py:111
+#: plinth/modules/samba/views.py:93
#, fuzzy, python-brace-format
#| msgid "Error installing application: {error}"
msgid "Error disabling share: {error_message}"
msgstr "Fout bij het installeren van de toepassing: {error}"
-#: plinth/modules/searx/__init__.py:41 plinth/modules/searx/manifest.py:24
-msgid "Searx"
-msgstr "Searx"
-
-#: plinth/modules/searx/__init__.py:45
-msgid "Web Search"
-msgstr "Zoeken op het Internet"
-
-#: plinth/modules/searx/__init__.py:48
+#: plinth/modules/searx/__init__.py:25
msgid ""
"Searx is a privacy-respecting Internet metasearch engine. It aggregrates and "
"displays results from multiple search engines."
@@ -4810,7 +4915,7 @@ msgstr ""
"Searx is een privacy-respecterende internet metasearch engine. Het "
"aggregeert en toont resultaten van meerdere zoekmachines."
-#: plinth/modules/searx/__init__.py:50
+#: plinth/modules/searx/__init__.py:27
msgid ""
"Searx can be used to avoid tracking and profiling by search engines. It "
"stores no cookies by default."
@@ -4818,51 +4923,59 @@ msgstr ""
"Searx kan worden gebruikt om tracking en profilering door zoekmachines te "
"voorkomen. Het slaat standaard geen cookies op."
-#: plinth/modules/searx/__init__.py:54
+#: plinth/modules/searx/__init__.py:31
msgid "Search the web"
msgstr "Zoeken op internet"
-#: plinth/modules/searx/forms.py:30
+#: plinth/modules/searx/__init__.py:47 plinth/modules/searx/manifest.py:9
+msgid "Searx"
+msgstr "Searx"
+
+#: plinth/modules/searx/__init__.py:48
+msgid "Web Search"
+msgstr "Zoeken op het Internet"
+
+#: plinth/modules/searx/forms.py:15
msgid "Safe Search"
msgstr "Veilig Zoeken"
-#: plinth/modules/searx/forms.py:31
+#: plinth/modules/searx/forms.py:16
msgid "Select the default family filter to apply to your search results."
msgstr ""
"Kies het standaard familiefilter om toe te passen op uw zoekresultaten."
-#: plinth/modules/searx/forms.py:32
+#: plinth/modules/searx/forms.py:17
msgid "None"
msgstr "Geen"
-#: plinth/modules/searx/forms.py:32
+#: plinth/modules/searx/forms.py:17
msgid "Moderate"
msgstr "Modereren"
-#: plinth/modules/searx/forms.py:32
+#: plinth/modules/searx/forms.py:17
msgid "Strict"
msgstr "Strikt"
-#: plinth/modules/searx/forms.py:35
+#: plinth/modules/searx/forms.py:20
msgid "Allow Public Access"
msgstr "Openbare toegang toestaan"
-#: plinth/modules/searx/forms.py:36
+#: plinth/modules/searx/forms.py:21
msgid "Allow this application to be used by anyone who can reach it."
msgstr ""
"Sta toe dat deze applicatie wordt gebruikt door iedereen die er toegang toe "
"heeft."
-#: plinth/modules/searx/views.py:59 plinth/modules/searx/views.py:70
-#: plinth/modules/tor/views.py:149 plinth/modules/tor/views.py:176
+#: plinth/modules/searx/views.py:39 plinth/modules/searx/views.py:50
+#: plinth/modules/tor/views.py:130 plinth/modules/tor/views.py:157
msgid "Configuration updated."
msgstr "Configuratie bijgewerkt."
-#: plinth/modules/security/forms.py:28
+#: plinth/modules/security/forms.py:13
msgid "Restrict console logins (recommended)"
msgstr "Beperk console-aanmeldingen (aanbevolen)"
-#: plinth/modules/security/forms.py:29
+#: plinth/modules/security/forms.py:14
msgid ""
"When this option is enabled, only users in the \"admin\" group will be able "
"to log in to console or via SSH. Console users may be able to access some "
@@ -4872,11 +4985,11 @@ msgstr ""
"\"admin\" inloggen op de console of via SSH. Console gebruikers hebben "
"mogelijk toegang tot sommige diensten zonder verdere toestemming."
-#: plinth/modules/security/forms.py:34
+#: plinth/modules/security/forms.py:19
msgid "Fail2Ban (recommended)"
msgstr "Fail2Ban (aanbevolen)"
-#: plinth/modules/security/forms.py:35
+#: plinth/modules/security/forms.py:20
msgid ""
"When this option is enabled, Fail2Ban will limit brute force break-in "
"attempts to the SSH server and other enabled password protected internet-"
@@ -4885,111 +4998,103 @@ msgstr ""
"Als dit actief is, zal Fail2Ban brute-kracht inbraakpogingen beperken op de "
"SSH server en andere diensten die door wachtwoorden worden afgeschermd."
-#: plinth/modules/security/templates/security.html:26
-#: plinth/modules/security/templates/security.html:28
+#: plinth/modules/security/templates/security.html:11
+#: plinth/modules/security/templates/security.html:13
msgid "Show security report"
msgstr "Beveiligingsrapport weergeven"
-#: plinth/modules/security/templates/security_report.html:25
-#: plinth/modules/security/views.py:87
+#: plinth/modules/security/templates/security_report.html:10
+#: plinth/modules/security/views.py:71
msgid "Security Report"
msgstr "Beveiligingsrapport"
-#: plinth/modules/security/templates/security_report.html:27
+#: plinth/modules/security/templates/security_report.html:12
#, python-format
msgid ""
"The installed version of FreedomBox has %(count)s reported security "
"vulnerabilities."
msgstr ""
-#: plinth/modules/security/templates/security_report.html:33
+#: plinth/modules/security/templates/security_report.html:18
msgid ""
"The following table lists the current reported number, and historical count, "
"of security vulnerabilities for each installed app."
msgstr ""
-#: plinth/modules/security/templates/security_report.html:39
+#: plinth/modules/security/templates/security_report.html:24
msgid ""
"For apps that provide services, the \"Sandboxed\" column shows whether "
"sandboxing features are in use. Sandboxing mitigates the impact of a "
"potentially compromised app to the rest of the system."
msgstr ""
-#: plinth/modules/security/templates/security_report.html:46
+#: plinth/modules/security/templates/security_report.html:31
msgid ""
"\"Sandbox Coverage\" is a score of how effectively the service is isolated "
"from the rest of the system. It is only displayed while the service is "
"running."
msgstr ""
-#: plinth/modules/security/templates/security_report.html:55
+#: plinth/modules/security/templates/security_report.html:40
msgid "App Name"
msgstr "Applicatie naam"
-#: plinth/modules/security/templates/security_report.html:56
+#: plinth/modules/security/templates/security_report.html:41
msgid "Current Vulnerabilities"
msgstr "Huidige kwetsbaarheden"
-#: plinth/modules/security/templates/security_report.html:57
+#: plinth/modules/security/templates/security_report.html:42
msgid "Past Vulnerabilities"
msgstr "Kwetsbaarheden in het verleden"
-#: plinth/modules/security/templates/security_report.html:58
+#: plinth/modules/security/templates/security_report.html:43
#, fuzzy
#| msgid "Block Sandbox"
msgid "Sandboxed"
msgstr "Block Sandbox"
-#: plinth/modules/security/templates/security_report.html:59
+#: plinth/modules/security/templates/security_report.html:44
#, fuzzy
#| msgid "Block Sandbox"
msgid "Sandbox Coverage"
msgstr "Block Sandbox"
-#: plinth/modules/security/templates/security_report.html:70
+#: plinth/modules/security/templates/security_report.html:55
msgid "N/A"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:72
+#: plinth/modules/security/templates/security_report.html:57
#, fuzzy
#| msgid "yes"
msgid "Yes"
msgstr "ja"
-#: plinth/modules/security/templates/security_report.html:74
+#: plinth/modules/security/templates/security_report.html:59
#, fuzzy
#| msgid "None"
msgid "No"
msgstr "Geen"
-#: plinth/modules/security/templates/security_report.html:81
+#: plinth/modules/security/templates/security_report.html:66
#, fuzzy
#| msgid "is not running"
msgid "Not running"
msgstr "draait niet"
-#: plinth/modules/security/views.py:69
+#: plinth/modules/security/views.py:53
#, python-brace-format
msgid "Error setting restricted access: {exception}"
msgstr "Fout bij beperkte toegang instellen: {exception}"
-#: plinth/modules/security/views.py:72
+#: plinth/modules/security/views.py:56
msgid "Updated security configuration"
msgstr "Bijgewerkte Beveiligingsconfiguratie"
-#: plinth/modules/shaarli/__init__.py:34 plinth/modules/shaarli/manifest.py:23
-msgid "Shaarli"
-msgstr "Shaarli"
-
-#: plinth/modules/shaarli/__init__.py:36
-msgid "Bookmarks"
-msgstr "Bladwijzers"
-
-#: plinth/modules/shaarli/__init__.py:39
+#: plinth/modules/shaarli/__init__.py:20
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:21
#, fuzzy
#| msgid ""
#| "When enabled, Shaarli will be available from /"
@@ -5005,15 +5110,15 @@ msgstr ""
"shaarli link. Houd er rekening mee dat Shaarli maar een gebruiker "
"ondersteunt, die moet worden ingesteld bij het eerste gebruik."
-#: plinth/modules/shadowsocks/__init__.py:35
-msgid "Shadowsocks"
-msgstr "Shadowsocks"
+#: plinth/modules/shaarli/__init__.py:39 plinth/modules/shaarli/manifest.py:8
+msgid "Shaarli"
+msgstr "Shaarli"
-#: plinth/modules/shadowsocks/__init__.py:39
-msgid "Socks5 Proxy"
-msgstr "Socks5 Proxy"
+#: plinth/modules/shaarli/__init__.py:40
+msgid "Bookmarks"
+msgstr "Bladwijzers"
-#: plinth/modules/shadowsocks/__init__.py:46
+#: plinth/modules/shadowsocks/__init__.py:25
msgid ""
"Shadowsocks is a lightweight and secure SOCKS5 proxy, designed to protect "
"your Internet traffic. It can be used to bypass Internet filtering and "
@@ -5023,7 +5128,7 @@ msgstr ""
"te beschermen. Het kan gebruikt worden om censuur en het filteren van "
"Internet te omzeilen."
-#: plinth/modules/shadowsocks/__init__.py:50
+#: plinth/modules/shadowsocks/__init__.py:29
#, python-brace-format
msgid ""
"Your {box_name} can run a Shadowsocks client, that can connect to a "
@@ -5036,7 +5141,7 @@ msgstr ""
"Apparaten in het lokale netwerk kunnen met deze proxy verbinden, en hun data "
"zal versleuteld via de Shadowsocks server verstuurd worden."
-#: plinth/modules/shadowsocks/__init__.py:55
+#: plinth/modules/shadowsocks/__init__.py:34
msgid ""
"To use Shadowsocks after setup, set the SOCKS5 proxy URL in your device, "
"browser or application to http://freedombox_address:1080/"
@@ -5045,38 +5150,42 @@ msgstr ""
"proxy in op uw apparaat, webbrowser of applicatie naar http://"
"adres_van_uw_freedombox:1080/"
-#: plinth/modules/shadowsocks/forms.py:28
-#: plinth/modules/shadowsocks/forms.py:29
+#: plinth/modules/shadowsocks/__init__.py:50
+msgid "Shadowsocks"
+msgstr "Shadowsocks"
+
+#: plinth/modules/shadowsocks/__init__.py:52
+msgid "Socks5 Proxy"
+msgstr "Socks5 Proxy"
+
+#: plinth/modules/shadowsocks/forms.py:13
+#: plinth/modules/shadowsocks/forms.py:14
msgid "Recommended"
msgstr "Aanbevolen"
-#: plinth/modules/shadowsocks/forms.py:52
+#: plinth/modules/shadowsocks/forms.py:37
msgid "Server"
msgstr "Server"
-#: plinth/modules/shadowsocks/forms.py:53
+#: plinth/modules/shadowsocks/forms.py:38
msgid "Server hostname or IP address"
msgstr "Server hostnaam of IP adres"
-#: plinth/modules/shadowsocks/forms.py:57
+#: plinth/modules/shadowsocks/forms.py:42
msgid "Server port number"
msgstr "Server poortnummer"
-#: plinth/modules/shadowsocks/forms.py:60
+#: plinth/modules/shadowsocks/forms.py:45
msgid "Password used to encrypt data. Must match server password."
msgstr ""
"Wachtwoord dat wordt gebruikt om gegevens te coderen. Moet overeenkomen met "
"serverwachtwoord."
-#: plinth/modules/shadowsocks/forms.py:65
+#: plinth/modules/shadowsocks/forms.py:50
msgid "Encryption method. Must match setting on server."
msgstr "Encryptie methode. Moet overeenkomen met de instelling van de server."
-#: plinth/modules/sharing/__init__.py:34
-msgid "Sharing"
-msgstr "Delen"
-
-#: plinth/modules/sharing/__init__.py:38
+#: plinth/modules/sharing/__init__.py:21
#, python-brace-format
msgid ""
"Sharing allows you to share files and folders on your {box_name} over the "
@@ -5085,11 +5194,15 @@ msgstr ""
"Delen maakt het mogelijk om bestanden en mappen op {box_name} te delen via "
"het Internet met door u bepaalde gebruikers."
-#: plinth/modules/sharing/forms.py:33
+#: plinth/modules/sharing/__init__.py:38
+msgid "Sharing"
+msgstr "Delen"
+
+#: plinth/modules/sharing/forms.py:18
msgid "Name of the share"
msgstr "Naam van de gedeelde bron"
-#: plinth/modules/sharing/forms.py:35
+#: plinth/modules/sharing/forms.py:20
msgid ""
"A lowercase alpha-numeric string that uniquely identifies a share. Example: "
"media."
@@ -5097,27 +5210,27 @@ msgstr ""
"Een aaneengesloten reeks van kleine letters en/of cijfers, die "
"bestandsdeling aanduidt. Bijvoorbeeld: media."
-#: plinth/modules/sharing/forms.py:39
+#: plinth/modules/sharing/forms.py:24
msgid "Path to share"
msgstr "Te delen pad"
-#: plinth/modules/sharing/forms.py:40
+#: plinth/modules/sharing/forms.py:25
msgid "Disk path to a folder on this server that you intend to share."
msgstr "Pad naar een map op deze server die u wilt delen."
-#: plinth/modules/sharing/forms.py:43
+#: plinth/modules/sharing/forms.py:28
msgid "Public share"
msgstr "Publieke share"
-#: plinth/modules/sharing/forms.py:44
+#: plinth/modules/sharing/forms.py:29
msgid "Make files in this folder available to anyone with the link."
msgstr "Bestanden in deze map beschikbaar maken voor iedereen met de link."
-#: plinth/modules/sharing/forms.py:48
+#: plinth/modules/sharing/forms.py:33
msgid "User groups that can read the files in the share"
msgstr "Gebruikersgroepen die de bestanden in de share kunnen lezen"
-#: plinth/modules/sharing/forms.py:50
+#: plinth/modules/sharing/forms.py:35
msgid ""
"Users of the selected user groups will be able to read the files in the "
"share."
@@ -5125,64 +5238,60 @@ msgstr ""
"Gebruikers in de geselecteerde gebruikersgroepen kunnen de bestanden in de "
"share lezen."
-#: plinth/modules/sharing/forms.py:67
+#: plinth/modules/sharing/forms.py:52
msgid "A share with this name already exists."
msgstr "Er bestaat reeds een gedeelde map met deze naam."
-#: plinth/modules/sharing/forms.py:78
+#: plinth/modules/sharing/forms.py:63
msgid "Shares should be either public or shared with at least one group"
msgstr "Shares moeten openbaar zijn of gedeeld worden met minimaal één groep"
-#: plinth/modules/sharing/templates/sharing.html:39
-#: plinth/modules/sharing/templates/sharing.html:42
+#: plinth/modules/sharing/templates/sharing.html:24
+#: plinth/modules/sharing/templates/sharing.html:27
msgid "Add share"
msgstr "Gedeelde map toevoegen"
-#: plinth/modules/sharing/templates/sharing.html:47
+#: plinth/modules/sharing/templates/sharing.html:32
msgid "No shares currently configured."
msgstr "Er zijn momenteel geen bestandsdelingen geconfigureerd."
-#: plinth/modules/sharing/templates/sharing.html:53
+#: plinth/modules/sharing/templates/sharing.html:38
msgid "Disk Path"
msgstr "Schijf pad"
-#: plinth/modules/sharing/templates/sharing.html:54
+#: plinth/modules/sharing/templates/sharing.html:39
msgid "Shared Over"
msgstr "Gedeeld Via"
-#: plinth/modules/sharing/templates/sharing.html:55
+#: plinth/modules/sharing/templates/sharing.html:40
msgid "With Groups"
msgstr "Met Groepen"
-#: plinth/modules/sharing/templates/sharing.html:73
+#: plinth/modules/sharing/templates/sharing.html:58
msgid "public access"
msgstr "openbare toegang"
-#: plinth/modules/sharing/views.py:55
+#: plinth/modules/sharing/views.py:39
msgid "Share added."
msgstr "Gedeelde map toegevoegd."
-#: plinth/modules/sharing/views.py:60
+#: plinth/modules/sharing/views.py:44
msgid "Add Share"
msgstr "Gedeelde map toevoegen"
-#: plinth/modules/sharing/views.py:75
+#: plinth/modules/sharing/views.py:59
msgid "Share edited."
msgstr "Gedeelde map bewerkt."
-#: plinth/modules/sharing/views.py:80
+#: plinth/modules/sharing/views.py:64
msgid "Edit Share"
msgstr "Gedeelde map bewerken"
-#: plinth/modules/sharing/views.py:111
+#: plinth/modules/sharing/views.py:95
msgid "Share deleted."
msgstr "Gedeelde map verwijderd."
-#: plinth/modules/snapshot/__init__.py:37
-msgid "Storage Snapshots"
-msgstr "Opslag Snapshots"
-
-#: plinth/modules/snapshot/__init__.py:40
+#: plinth/modules/snapshot/__init__.py:23
msgid ""
"Snapshots allows creating and managing btrfs file system snapshots. These "
"can be used to roll back the system to a previously known good state in case "
@@ -5192,7 +5301,7 @@ msgstr ""
"kunnen worden gebruikt om in geval van ongewenste wijzigingen aan het "
"systeem terug te keren naar een voorheen goed werkende staat."
-#: plinth/modules/snapshot/__init__.py:44
+#: plinth/modules/snapshot/__init__.py:27
#, no-python-format
msgid ""
"Snapshots are taken periodically (called timeline snapshots) and also before "
@@ -5200,7 +5309,7 @@ msgid ""
"cleaned up according to the settings below."
msgstr ""
-#: plinth/modules/snapshot/__init__.py:47
+#: plinth/modules/snapshot/__init__.py:30
msgid ""
"Snapshots currently work on btrfs file systems only and on the root "
"partition only. Snapshots are not a replacement for backups aangezien ze op dezelfde partitie als hun bron worden "
"bewaard. "
-#: plinth/modules/snapshot/forms.py:27
+#: plinth/modules/snapshot/__init__.py:52
+msgid "Storage Snapshots"
+msgstr "Opslag Snapshots"
+
+#: plinth/modules/snapshot/forms.py:12
msgid "Free Disk Space to Maintain"
msgstr ""
-#: plinth/modules/snapshot/forms.py:28
+#: plinth/modules/snapshot/forms.py:13
msgid ""
"Maintain this percentage of free space on the disk. If free space falls "
"below this value, older snapshots are removed until this much free space is "
"regained. The default value is 30%."
msgstr ""
-#: plinth/modules/snapshot/forms.py:35
+#: plinth/modules/snapshot/forms.py:20
msgid "Timeline Snapshots"
msgstr "Timeline Snapshots"
-#: plinth/modules/snapshot/forms.py:36
+#: plinth/modules/snapshot/forms.py:21
msgid ""
"Enable or disable timeline snapshots (hourly, daily, monthly and yearly)."
msgstr ""
"In- of uitschakelen van getimede Snapshots (elk uur, elke dag, elke maand en "
"elk jaar)."
-#: plinth/modules/snapshot/forms.py:41
+#: plinth/modules/snapshot/forms.py:26
msgid "Software Installation Snapshots"
msgstr "Software-installatie Snapshots"
-#: plinth/modules/snapshot/forms.py:42
+#: plinth/modules/snapshot/forms.py:27
msgid "Enable or disable snapshots before and after software installation"
msgstr ""
"Snapshots voor en na de installatie van de software in- of uitschakelen"
-#: plinth/modules/snapshot/forms.py:47
+#: plinth/modules/snapshot/forms.py:32
msgid "Hourly Snapshots Limit"
msgstr "Aantal uurlijkse Snapshots"
-#: plinth/modules/snapshot/forms.py:48
+#: plinth/modules/snapshot/forms.py:33
msgid "Keep a maximum of this many hourly snapshots."
msgstr "Bewaar maximaal dit aantal uurlijkse snapshots."
-#: plinth/modules/snapshot/forms.py:51
+#: plinth/modules/snapshot/forms.py:36
msgid "Daily Snapshots Limit"
msgstr "Dagelijkse Snapshots limiet"
-#: plinth/modules/snapshot/forms.py:52
+#: plinth/modules/snapshot/forms.py:37
msgid "Keep a maximum of this many daily snapshots."
msgstr "Bewaar maximaal dit aantal dagelijkse snapshots."
-#: plinth/modules/snapshot/forms.py:55
+#: plinth/modules/snapshot/forms.py:40
msgid "Weekly Snapshots Limit"
msgstr "Wekelijkse Snapshots limiet"
-#: plinth/modules/snapshot/forms.py:56
+#: plinth/modules/snapshot/forms.py:41
msgid "Keep a maximum of this many weekly snapshots."
msgstr "Bewaar maximaal dit aantal wekelijkse snapshots."
-#: plinth/modules/snapshot/forms.py:59
+#: plinth/modules/snapshot/forms.py:44
msgid "Monthly Snapshots Limit"
msgstr "Maandelijkse limiet voor Snapshots"
-#: plinth/modules/snapshot/forms.py:60
+#: plinth/modules/snapshot/forms.py:45
msgid "Keep a maximum of this many monthly snapshots."
msgstr "Bewaar maximaal dit aantal maandelijkse snapshots."
-#: plinth/modules/snapshot/forms.py:63
+#: plinth/modules/snapshot/forms.py:48
msgid "Yearly Snapshots Limit"
msgstr "Jaarlijkse Snapshots limiet"
-#: plinth/modules/snapshot/forms.py:64
+#: plinth/modules/snapshot/forms.py:49
msgid ""
"Keep a maximum of this many yearly snapshots. The default value is 0 "
"(disabled)."
@@ -5286,57 +5399,57 @@ msgstr ""
"Bewaar maximaal dit aantal jaarlijkse snapshots. De standaardwaarde is 0 "
"(uitgeschakeld)."
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:27
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:12
msgid "Delete the following snapshots permanently?"
msgstr "De volgende snapshots permanent verwijderen?"
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:31
-#: plinth/modules/snapshot/templates/snapshot_manage.html:43
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:39
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:16
+#: plinth/modules/snapshot/templates/snapshot_manage.html:28
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:24
msgid "Number"
msgstr "Nummer"
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:32
-#: plinth/modules/snapshot/templates/snapshot_manage.html:44
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:40
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:17
+#: plinth/modules/snapshot/templates/snapshot_manage.html:29
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:25
msgid "Date"
msgstr "Datum"
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:52
-#: plinth/modules/snapshot/templates/snapshot_manage.html:37
-#: plinth/modules/snapshot/views.py:196
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:37
+#: plinth/modules/snapshot/templates/snapshot_manage.html:22
+#: plinth/modules/snapshot/views.py:175
msgid "Delete Snapshots"
msgstr "Snapshots verwijderen"
-#: plinth/modules/snapshot/templates/snapshot_manage.html:33
+#: plinth/modules/snapshot/templates/snapshot_manage.html:18
msgid "Create Snapshot"
msgstr "Maak Snapshot"
-#: plinth/modules/snapshot/templates/snapshot_manage.html:46
+#: plinth/modules/snapshot/templates/snapshot_manage.html:31
msgid "Rollback"
msgstr "Terugdraaien"
-#: plinth/modules/snapshot/templates/snapshot_manage.html:57
+#: plinth/modules/snapshot/templates/snapshot_manage.html:42
msgid "active"
msgstr "actief"
-#: plinth/modules/snapshot/templates/snapshot_manage.html:66
+#: plinth/modules/snapshot/templates/snapshot_manage.html:51
#, python-format
msgid "Rollback to snapshot #%(number)s"
msgstr "Terugdraaien tot snapshot #%(number)s"
-#: plinth/modules/snapshot/templates/snapshot_not_supported.html:26
+#: plinth/modules/snapshot/templates/snapshot_not_supported.html:11
#, python-format
msgid ""
"Your have a filesystem of type %(fs_type)s. Snapshots are "
"currently only available on %(types_supported)s filesystems."
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:27
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:12
msgid "Roll back the system to this snapshot?"
msgstr "Het systeem tot deze snapshot terugdraaien?"
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:30
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:15
msgid ""
"A new snapshot with the current state of the file system will be "
"automatically created. You will be able to undo a rollback by reverting to "
@@ -5346,59 +5459,55 @@ msgstr ""
"automatisch gemaakt. Het is mogelijk om een rollback ongedaan te maken door "
"terug te keren naar het zojuist gemaakte snapshot."
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:57
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:42
#, python-format
msgid "Rollback to Snapshot #%(number)s"
msgstr "Terugdraaien tot Snapshot #%(number)s"
-#: plinth/modules/snapshot/views.py:45
+#: plinth/modules/snapshot/views.py:30
msgid "Manage Snapshots"
msgstr "Beheren van Snapshots"
-#: plinth/modules/snapshot/views.py:98
+#: plinth/modules/snapshot/views.py:79
msgid "Created snapshot."
msgstr "Gemaakte snapshot."
-#: plinth/modules/snapshot/views.py:156
+#: plinth/modules/snapshot/views.py:135
msgid "Storage snapshots configuration updated"
msgstr "Opslag van Snapshots configuratie is bijgewerkt"
-#: plinth/modules/snapshot/views.py:160 plinth/modules/tor/views.py:79
+#: plinth/modules/snapshot/views.py:139 plinth/modules/tor/views.py:60
#, python-brace-format
msgid "Action error: {0} [{1}] [{2}]"
msgstr "Actiefout: {0} [{1}] [{2}]"
-#: plinth/modules/snapshot/views.py:175
+#: plinth/modules/snapshot/views.py:154
msgid "Deleted all snapshots"
msgstr "Alle snapshots verwijderd"
-#: plinth/modules/snapshot/views.py:179
+#: plinth/modules/snapshot/views.py:158
msgid "Deleted selected snapshots"
msgstr "Verwijderde geselecteerde snapshots"
-#: plinth/modules/snapshot/views.py:184
+#: plinth/modules/snapshot/views.py:163
msgid "Snapshot is currently in use. Please try again later."
msgstr ""
-#: plinth/modules/snapshot/views.py:207
+#: plinth/modules/snapshot/views.py:186
#, python-brace-format
msgid "Rolled back to snapshot #{number}."
msgstr "Teruggezet naar snapshot #{number}."
-#: plinth/modules/snapshot/views.py:210
+#: plinth/modules/snapshot/views.py:189
msgid "The system must be restarted to complete the rollback."
msgstr ""
"Het systeem moet opnieuw worden opgestart om het terugdraaien te voltooien."
-#: plinth/modules/snapshot/views.py:222
+#: plinth/modules/snapshot/views.py:201
msgid "Rollback to Snapshot"
msgstr "Terugdraaien naar Snapshot"
-#: plinth/modules/ssh/__init__.py:43
-msgid "Secure Shell (SSH) Server"
-msgstr "Secure Shell (SSH) Server"
-
-#: plinth/modules/ssh/__init__.py:46
+#: plinth/modules/ssh/__init__.py:29
msgid ""
"A Secure Shell server uses the secure shell protocol to accept connections "
"from remote computers. An authorized remote computer can perform "
@@ -5410,62 +5519,62 @@ msgstr ""
"andere locatie die daarvoor geautoriseerd is, kan beheerdertaken uitvoeren, "
"bestanden kopiëren en andere taken verrichten door zulk een verbinding."
-#: plinth/modules/ssh/forms.py:30
+#: plinth/modules/ssh/__init__.py:50
+msgid "Secure Shell (SSH) Server"
+msgstr "Secure Shell (SSH) Server"
+
+#: plinth/modules/ssh/forms.py:15
#, fuzzy
#| msgid "Use HTTP basic authentication"
msgid "Disable password authentication"
msgstr "Gebruik HTTP-basisverificatie"
-#: plinth/modules/ssh/forms.py:31
+#: plinth/modules/ssh/forms.py:16
msgid ""
"Improves security by preventing password guessing. Ensure that you have "
"setup SSH keys in your administrator user account before enabling this "
"option."
msgstr ""
-#: plinth/modules/ssh/templates/ssh.html:26
+#: plinth/modules/ssh/templates/ssh.html:11
#, fuzzy
#| msgid "SSH Fingerprint"
msgid "Server Fingerprints"
msgstr "SSH Vingerafdruk"
-#: plinth/modules/ssh/templates/ssh.html:29
+#: plinth/modules/ssh/templates/ssh.html:14
msgid ""
"When connecting to the server, ensure that the fingerprint shown by the SSH "
"client matches one of these fingerprints."
msgstr ""
-#: plinth/modules/ssh/templates/ssh.html:38
+#: plinth/modules/ssh/templates/ssh.html:23
msgid "Algorithm"
msgstr ""
-#: plinth/modules/ssh/templates/ssh.html:39
+#: plinth/modules/ssh/templates/ssh.html:24
#, fuzzy
#| msgid "SSH Fingerprint"
msgid "Fingerprint"
msgstr "SSH Vingerafdruk"
-#: plinth/modules/ssh/views.py:66
+#: plinth/modules/ssh/views.py:48
msgid "SSH authentication with password disabled."
msgstr ""
-#: plinth/modules/ssh/views.py:69
+#: plinth/modules/ssh/views.py:51
msgid "SSH authentication with password enabled."
msgstr ""
-#: plinth/modules/sso/__init__.py:30
+#: plinth/modules/sso/__init__.py:33
msgid "Single Sign On"
msgstr "Eenmalige aanmelding"
-#: plinth/modules/sso/templates/login.html:35
+#: plinth/modules/sso/templates/login.html:20
msgid "Login"
msgstr "Aanmelding"
-#: plinth/modules/storage/__init__.py:39 plinth/modules/storage/__init__.py:331
-msgid "Storage"
-msgstr "Storage"
-
-#: plinth/modules/storage/__init__.py:47
+#: plinth/modules/storage/__init__.py:30
#, python-brace-format
msgid ""
"This module allows you to manage storage media attached to your {box_name}. "
@@ -5473,84 +5582,88 @@ msgid ""
"media, expand the root partition etc."
msgstr ""
-#: plinth/modules/storage/__init__.py:224
+#: plinth/modules/storage/__init__.py:52 plinth/modules/storage/__init__.py:318
+msgid "Storage"
+msgstr "Storage"
+
+#: plinth/modules/storage/__init__.py:211
#, python-brace-format
msgid "{disk_size:.1f} bytes"
msgstr "{disk_size:.1f} bytes"
-#: plinth/modules/storage/__init__.py:228
+#: plinth/modules/storage/__init__.py:215
#, python-brace-format
msgid "{disk_size:.1f} KiB"
msgstr "{disk_size:.1f} KiB"
-#: plinth/modules/storage/__init__.py:232
+#: plinth/modules/storage/__init__.py:219
#, python-brace-format
msgid "{disk_size:.1f} MiB"
msgstr "{disk_size:.1f} MiB"
-#: plinth/modules/storage/__init__.py:236
+#: plinth/modules/storage/__init__.py:223
#, python-brace-format
msgid "{disk_size:.1f} GiB"
msgstr "{disk_size:.1f} GiB"
-#: plinth/modules/storage/__init__.py:239
+#: plinth/modules/storage/__init__.py:226
#, python-brace-format
msgid "{disk_size:.1f} TiB"
msgstr "{disk_size:.1f} TiB"
-#: plinth/modules/storage/__init__.py:246
+#: plinth/modules/storage/__init__.py:233
msgid "The operation failed."
msgstr "De bewerking is mislukt."
-#: plinth/modules/storage/__init__.py:248
+#: plinth/modules/storage/__init__.py:235
msgid "The operation was cancelled."
msgstr "De bewerking is afgebroken."
-#: plinth/modules/storage/__init__.py:250
+#: plinth/modules/storage/__init__.py:237
msgid "The device is already unmounting."
msgstr "Het apparaat is al aan het ontkoppelen."
-#: plinth/modules/storage/__init__.py:252
+#: plinth/modules/storage/__init__.py:239
msgid "The operation is not supported due to missing driver/tool support."
msgstr ""
-#: plinth/modules/storage/__init__.py:255
+#: plinth/modules/storage/__init__.py:242
msgid "The operation timed out."
msgstr "Er is een time-out opgetreden voor deze bewerking."
-#: plinth/modules/storage/__init__.py:257
+#: plinth/modules/storage/__init__.py:244
msgid "The operation would wake up a disk that is in a deep-sleep state."
msgstr ""
-#: plinth/modules/storage/__init__.py:260
+#: plinth/modules/storage/__init__.py:247
msgid "Attempting to unmount a device that is busy."
msgstr "Poging om een apparaat te ontkoppelen dat in gebruik is."
-#: plinth/modules/storage/__init__.py:262
+#: plinth/modules/storage/__init__.py:249
msgid "The operation has already been cancelled."
msgstr "De bewerking is al geannuleerd."
-#: plinth/modules/storage/__init__.py:268
+#: plinth/modules/storage/__init__.py:255
msgid "Not authorized to perform the requested operation."
msgstr ""
-#: plinth/modules/storage/__init__.py:270
+#: plinth/modules/storage/__init__.py:257
msgid "The device is already mounted."
msgstr "Het apparaat is al gekoppeld."
-#: plinth/modules/storage/__init__.py:272
+#: plinth/modules/storage/__init__.py:259
msgid "The device is not mounted."
msgstr "Het apparaat is niet ge-mount."
-#: plinth/modules/storage/__init__.py:275
+#: plinth/modules/storage/__init__.py:262
msgid "Not permitted to use the requested option."
msgstr ""
-#: plinth/modules/storage/__init__.py:278
+#: plinth/modules/storage/__init__.py:265
msgid "The device is mounted by another user."
msgstr ""
-#: plinth/modules/storage/__init__.py:326
+#: plinth/modules/storage/__init__.py:313
#, fuzzy, no-python-format, python-brace-format
#| msgid ""
#| "Warning: Low space on system partition ({percent_used}% used, "
@@ -5560,71 +5673,71 @@ msgstr ""
"Waarschuwing: Weinig ruimte op de systeempartitie ({percent_used} % "
"gebruikt, {free_space} vrij)."
-#: plinth/modules/storage/__init__.py:328
+#: plinth/modules/storage/__init__.py:315
msgid "Low disk space"
msgstr ""
-#: plinth/modules/storage/forms.py:79
+#: plinth/modules/storage/forms.py:64
#, fuzzy
#| msgid "Invalid hostname"
msgid "Invalid directory name."
msgstr "Foutieve hostnaam"
-#: plinth/modules/storage/forms.py:97
+#: plinth/modules/storage/forms.py:82
msgid "Directory does not exist."
msgstr ""
-#: plinth/modules/storage/forms.py:99
+#: plinth/modules/storage/forms.py:84
#, fuzzy
#| msgid "Download directory"
msgid "Path is not a directory."
msgstr "Opslagmap"
-#: plinth/modules/storage/forms.py:102
+#: plinth/modules/storage/forms.py:87
msgid "Directory is not readable by the user."
msgstr ""
-#: plinth/modules/storage/forms.py:105
+#: plinth/modules/storage/forms.py:90
msgid "Directory is not writable by the user."
msgstr ""
-#: plinth/modules/storage/forms.py:110
+#: plinth/modules/storage/forms.py:95
#, fuzzy
#| msgid "Download directory"
msgid "Directory"
msgstr "Opslagmap"
-#: plinth/modules/storage/forms.py:113
+#: plinth/modules/storage/forms.py:98
msgid "Subdirectory (optional)"
msgstr ""
-#: plinth/modules/storage/forms.py:160
+#: plinth/modules/storage/forms.py:145
#, fuzzy
#| msgid "Shared"
msgid "Share"
msgstr "Gedeeld"
-#: plinth/modules/storage/forms.py:168
+#: plinth/modules/storage/forms.py:153
msgid "Other directory (specify below)"
msgstr ""
-#: plinth/modules/storage/templates/storage.html:35
+#: plinth/modules/storage/templates/storage.html:20
msgid "The following storage devices are in use:"
msgstr "De volgende opslagapparaten zijn in gebruik:"
-#: plinth/modules/storage/templates/storage.html:41
+#: plinth/modules/storage/templates/storage.html:26
msgid "Label"
msgstr "Label"
-#: plinth/modules/storage/templates/storage.html:42
+#: plinth/modules/storage/templates/storage.html:27
msgid "Mount Point"
msgstr "Koppelpunt"
-#: plinth/modules/storage/templates/storage.html:90
+#: plinth/modules/storage/templates/storage.html:75
msgid "Partition Expansion"
msgstr "Partitie Vergroting"
-#: plinth/modules/storage/templates/storage.html:92
+#: plinth/modules/storage/templates/storage.html:77
#, python-format
msgid ""
"There is %(expandable_root_size)s of unallocated space available after your "
@@ -5636,13 +5749,13 @@ msgstr ""
"worden gebruikt. Dit geeft u extra vrije ruimte voor het opslaan van "
"bestanden."
-#: plinth/modules/storage/templates/storage.html:102
-#: plinth/modules/storage/templates/storage_expand.html:39
-#: plinth/modules/storage/views.py:76
+#: plinth/modules/storage/templates/storage.html:87
+#: plinth/modules/storage/templates/storage_expand.html:24
+#: plinth/modules/storage/views.py:58
msgid "Expand Root Partition"
msgstr "Root-partitie uitbreiden"
-#: plinth/modules/storage/templates/storage_expand.html:29
+#: plinth/modules/storage/templates/storage_expand.html:14
#, python-format
msgid ""
"Please backup your data before proceeding. After this operation, "
@@ -5653,39 +5766,30 @@ msgstr ""
"%(expandable_root_size)s extra vrije ruimte in de root-partitie beschikbaar "
"zijn."
-#: plinth/modules/storage/views.py:88
+#: plinth/modules/storage/views.py:70
#, python-brace-format
msgid "Error expanding partition: {exception}"
msgstr "Fout bij partitie uitbreiden: {exception}"
-#: plinth/modules/storage/views.py:91
+#: plinth/modules/storage/views.py:73
msgid "Partition expanded successfully."
msgstr "Partitie succesvol uitgebreid."
-#: plinth/modules/storage/views.py:109
+#: plinth/modules/storage/views.py:91
#, python-brace-format
msgid "{drive_vendor} {drive_model} can be safely unplugged."
msgstr "{drive_vendor} {drive_model} kan veilig worden losgekoppeld."
-#: plinth/modules/storage/views.py:113
+#: plinth/modules/storage/views.py:95
msgid "Device can be safely unplugged."
msgstr "Het apparaat kan veilig worden losgekoppeld."
-#: plinth/modules/storage/views.py:123
+#: plinth/modules/storage/views.py:105
#, python-brace-format
msgid "Error ejecting device: {error_message}"
msgstr ""
-#: plinth/modules/syncthing/__init__.py:40
-#: plinth/modules/syncthing/manifest.py:28
-msgid "Syncthing"
-msgstr "Syncthing"
-
-#: plinth/modules/syncthing/__init__.py:44
-msgid "File Synchronization"
-msgstr "Bestandssynchronisatie"
-
-#: plinth/modules/syncthing/__init__.py:47
+#: plinth/modules/syncthing/__init__.py:26
msgid ""
"Syncthing is an application to synchronize files across multiple devices, e."
"g. your desktop computer and mobile phone. Creation, modification, or "
@@ -5698,7 +5802,7 @@ msgstr ""
"automatisch dezelfde veranderingen ondergaan op de andere apparaten waarop "
"Syncthing draait."
-#: plinth/modules/syncthing/__init__.py:52
+#: plinth/modules/syncthing/__init__.py:31
#, python-brace-format
msgid ""
"Running Syncthing on {box_name} provides an extra synchronization point for "
@@ -5715,19 +5819,20 @@ msgstr ""
"{box_name} is alleen beschikbaar voor gebruikers die tot de \"admin\"-groep "
"behoren."
-#: plinth/modules/syncthing/__init__.py:63
+#: plinth/modules/syncthing/__init__.py:40
msgid "Administer Syncthing application"
msgstr "Beheer Syncthing toepassing"
-#: plinth/modules/tahoe/__init__.py:43
-msgid "Tahoe-LAFS"
-msgstr "Tahoe-LAFS"
+#: plinth/modules/syncthing/__init__.py:54
+#: plinth/modules/syncthing/manifest.py:13
+msgid "Syncthing"
+msgstr "Syncthing"
-#: plinth/modules/tahoe/__init__.py:47
-msgid "Distributed File Storage"
-msgstr "Distributed File Storage"
+#: plinth/modules/syncthing/__init__.py:55
+msgid "File Synchronization"
+msgstr "Bestandssynchronisatie"
-#: plinth/modules/tahoe/__init__.py:134
+#: plinth/modules/tahoe/__init__.py:30
msgid ""
"Tahoe-LAFS is a decentralized secure file storage system. It uses provider "
"independent security to store files over a distributed network of storage "
@@ -5740,7 +5845,7 @@ msgstr ""
"knooppunten uitvallen, kunnen uw bestanden uit de resterende knooppunten "
"worden opgehaald."
-#: plinth/modules/tahoe/__init__.py:139
+#: plinth/modules/tahoe/__init__.py:35
#, python-brace-format
msgid ""
"This {box_name} hosts a storage node and an introducer by default. "
@@ -5751,7 +5856,15 @@ msgstr ""
"introduceerder. Er kunnen extra introduceerders worden toegevoegd, waardoor "
"dit knooppunt aan de andere knooppunten bekend wordt gemaakt."
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:33
+#: plinth/modules/tahoe/__init__.py:66
+msgid "Tahoe-LAFS"
+msgstr "Tahoe-LAFS"
+
+#: plinth/modules/tahoe/__init__.py:68
+msgid "Distributed File Storage"
+msgstr "Distributed File Storage"
+
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:17
#, python-format
msgid ""
"The Tahoe-LAFS server domain is set to %(domain_name)s. Changing the "
@@ -5765,37 +5878,33 @@ msgstr ""
"LAFS op https://"
"%(domain_name)s:5678."
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:55
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:39
msgid "Local introducer"
msgstr "Lokale introduceerder"
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:43
#: plinth/modules/tahoe/templates/tahoe-post-setup.html:59
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:75
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:92
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:76
msgid "Pet Name"
msgstr "Naam Huisdier"
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:72
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:56
msgid "Add new introducer"
msgstr "Nieuwe introduceerder toevoegen"
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:83
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:67
msgid "Add"
msgstr "Toevoegen"
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:88
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:72
msgid "Connected introducers"
msgstr "Verbonden introduceerders"
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:105
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:89
msgid "Remove"
msgstr "Verwijderen"
-#: plinth/modules/tor/__init__.py:47
-msgid "Tor"
-msgstr "Tor"
-
-#: plinth/modules/tor/__init__.py:52
+#: plinth/modules/tor/__init__.py:33
msgid ""
"Tor is an anonymous communication system. You can learn more about it from "
"the Tor Project website. For "
@@ -5809,58 +5918,62 @@ msgstr ""
"de Tor "
"Browser aan."
-#: plinth/modules/tor/__init__.py:83
+#: plinth/modules/tor/__init__.py:55
+msgid "Tor"
+msgstr "Tor"
+
+#: plinth/modules/tor/__init__.py:66
#, fuzzy
#| msgid "Tor Hidden Service"
msgid "Tor Onion Service"
msgstr "Tor-Hidden Service"
-#: plinth/modules/tor/__init__.py:87
+#: plinth/modules/tor/__init__.py:70
msgid "Tor Socks Proxy"
msgstr "Tor Socks Proxy"
-#: plinth/modules/tor/__init__.py:91
+#: plinth/modules/tor/__init__.py:74
msgid "Tor Bridge Relay"
msgstr "Tor Bridge Relay"
-#: plinth/modules/tor/__init__.py:112
+#: plinth/modules/tor/__init__.py:95
msgid "Tor relay port available"
msgstr "Tor relay poort beschikbaar"
-#: plinth/modules/tor/__init__.py:122
+#: plinth/modules/tor/__init__.py:105
msgid "Obfs3 transport registered"
msgstr "Obfs3 transport geregistreerd"
-#: plinth/modules/tor/__init__.py:132
+#: plinth/modules/tor/__init__.py:115
msgid "Obfs4 transport registered"
msgstr "Obfs4 transport geregistreerd"
-#: plinth/modules/tor/__init__.py:225
+#: plinth/modules/tor/__init__.py:208
#, 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:236
+#: plinth/modules/tor/__init__.py:219
#, python-brace-format
msgid "Confirm Tor usage at {url} on tcp{kind}"
msgstr "Bevestig Tor gebruik met {url} via tcp{kind}"
-#: plinth/modules/tor/forms.py:46
+#: plinth/modules/tor/forms.py:31
msgid ""
"Enter a valid bridge with this format: [transport] IP:ORPort [fingerprint]"
msgstr ""
"Voer een geldige Tor-brug in met deze indeling: [transport] IP: ORPort "
"[fingerprint]"
-#: plinth/modules/tor/forms.py:88
+#: plinth/modules/tor/forms.py:73
msgid "Enable Tor"
msgstr "Tor Inschakelen"
-#: plinth/modules/tor/forms.py:90
+#: plinth/modules/tor/forms.py:75
msgid "Use upstream bridges to connect to Tor network"
msgstr "Gebruik upstream bridges om verbinding te maken met het Tor netwerk"
-#: plinth/modules/tor/forms.py:92
+#: plinth/modules/tor/forms.py:77
msgid ""
"When enabled, the bridges configured below will be used to connect to the "
"Tor network. Use this option if your Internet Service Provider (ISP) blocks "
@@ -5871,11 +5984,11 @@ msgstr ""
"optie als je Internet Service Provider (ISP) verbindingen met het Tor-"
"netwerk blokkeert of censureert. Hierdoor worden de relaismodi uitgeschakeld."
-#: plinth/modules/tor/forms.py:97
+#: plinth/modules/tor/forms.py:82
msgid "Upstream bridges"
msgstr "Upstream bridges"
-#: plinth/modules/tor/forms.py:99
+#: plinth/modules/tor/forms.py:84
msgid ""
"You can get some bridges from https://bridges.torproject.org/ and copy/paste the bridge information "
@@ -5886,11 +5999,11 @@ msgstr ""
"plakken. Momenteel worden de volgende transporten ondersteund; geen, obfs3, "
"obfs4 en scamblesuit."
-#: plinth/modules/tor/forms.py:105
+#: plinth/modules/tor/forms.py:90
msgid "Enable Tor relay"
msgstr "Tor Relay Inschakelen"
-#: plinth/modules/tor/forms.py:106
+#: plinth/modules/tor/forms.py:91
#, python-brace-format
msgid ""
"When enabled, your {box_name} will run a Tor relay and donate bandwidth to "
@@ -5901,11 +6014,11 @@ msgstr ""
"bandbreedte delen met het Tor-netwerk. Doe dit alleen als u meer dan 2 "
"megabit/s upload- en download bandbreedte ter beschikking heeft."
-#: plinth/modules/tor/forms.py:111
+#: plinth/modules/tor/forms.py:96
msgid "Enable Tor bridge relay"
msgstr "Tor Bridge Relay inschakelen"
-#: plinth/modules/tor/forms.py:113
+#: plinth/modules/tor/forms.py:98
msgid ""
"When enabled, relay information is published in the Tor bridge database "
"instead of public Tor relay database making it harder to censor this node. "
@@ -5916,13 +6029,13 @@ msgstr ""
"moeilijker om dit knooppunt te censureren. Dit helpt anderen censuur te "
"omzeilen."
-#: plinth/modules/tor/forms.py:118
+#: plinth/modules/tor/forms.py:103
#, fuzzy
#| msgid "Enable Tor Hidden Service"
msgid "Enable Tor Hidden Service"
msgstr "Tor Hidden Service Inschakelen"
-#: plinth/modules/tor/forms.py:120
+#: plinth/modules/tor/forms.py:105
#, fuzzy, python-brace-format
#| msgid ""
#| "A hidden service will allow {box_name} to provide selected services (such "
@@ -5937,11 +6050,11 @@ msgstr ""
"(zoals iki of chat) kan aanbieden zonder de locatie te onthullen. Deze "
"dienst nog niet gebruiken als sterke anonimiteit vereist is."
-#: plinth/modules/tor/forms.py:125
+#: plinth/modules/tor/forms.py:110
msgid "Download software packages over Tor"
msgstr "Download Softwarepakketen via Tor"
-#: plinth/modules/tor/forms.py:126
+#: plinth/modules/tor/forms.py:111
msgid ""
"When enabled, software will be downloaded over the Tor network for "
"installations and upgrades. This adds a degree of privacy and security "
@@ -5951,39 +6064,39 @@ msgstr ""
"binnengehaald. Dit voegt een mate van privacy en veiligheid tijdens software "
"downloads toe."
-#: plinth/modules/tor/forms.py:141
+#: plinth/modules/tor/forms.py:126
msgid "Specify at least one upstream bridge to use upstream bridges."
msgstr ""
"Geef ten minste één upstream brug in voor het gebruik van de upstream "
"bruggen."
-#: plinth/modules/tor/manifest.py:29
+#: plinth/modules/tor/manifest.py:14
msgid "Tor Browser"
msgstr "Tor Browser"
-#: plinth/modules/tor/manifest.py:45
+#: plinth/modules/tor/manifest.py:30
msgid "Orbot: Proxy with Tor"
msgstr "Orbot: Proxy met Tor"
-#: plinth/modules/tor/templates/tor.html:41
+#: plinth/modules/tor/templates/tor.html:26
msgid "Tor configuration is being updated"
msgstr "Tor configuratie wordt bijgewerkt"
-#: plinth/modules/tor/templates/tor.html:50
+#: plinth/modules/tor/templates/tor.html:35
#, fuzzy
#| msgid "Hidden Service"
msgid "Onion Service"
msgstr "Hidden Service"
-#: plinth/modules/tor/templates/tor.html:52
+#: plinth/modules/tor/templates/tor.html:37
msgid "Ports"
msgstr "Poorten"
-#: plinth/modules/tor/templates/tor.html:82
+#: plinth/modules/tor/templates/tor.html:67
msgid "Relay"
msgstr "Relay"
-#: plinth/modules/tor/templates/tor.html:84
+#: plinth/modules/tor/templates/tor.html:69
#, python-format
msgid ""
"If your %(box_name)s is behind a router or firewall, you should make sure "
@@ -5993,21 +6106,16 @@ msgstr ""
"belangrijk te zorgen dat de volgende poorten open staan en indien nodig "
"worden doorgeleid:"
-#: plinth/modules/tor/templates/tor.html:112
+#: plinth/modules/tor/templates/tor.html:97
msgid "SOCKS"
msgstr "SOCKS"
-#: plinth/modules/tor/templates/tor.html:115
+#: plinth/modules/tor/templates/tor.html:100
#, python-format
msgid "A Tor SOCKS port is available on your %(box_name)s on TCP port 9050."
msgstr "Een Tor SOCKS poort is beschikbaar op %(box_name)s, op TCP poort 9050."
-#: plinth/modules/transmission/__init__.py:41
-#: plinth/modules/transmission/manifest.py:24
-msgid "Transmission"
-msgstr "Transmission"
-
-#: plinth/modules/transmission/__init__.py:48
+#: plinth/modules/transmission/__init__.py:27
msgid ""
"BitTorrent is a peer-to-peer file sharing protocol. Transmission daemon "
"handles Bitorrent file sharing. Note that BitTorrent is not anonymous."
@@ -6016,15 +6124,12 @@ msgstr ""
"daemon voorziet in Bittorrent bestandsdelingdiensten. Houd in gedachten dat "
"BitTorrent gebruik niet anoniem is."
-#: plinth/modules/ttrss/__init__.py:43 plinth/modules/ttrss/manifest.py:34
-msgid "Tiny Tiny RSS"
-msgstr "Tiny Tiny RSS"
+#: plinth/modules/transmission/__init__.py:48
+#: plinth/modules/transmission/manifest.py:9
+msgid "Transmission"
+msgstr "Transmission"
-#: plinth/modules/ttrss/__init__.py:47
-msgid "News Feed Reader"
-msgstr "News Feed Reader"
-
-#: plinth/modules/ttrss/__init__.py:50
+#: plinth/modules/ttrss/__init__.py:29
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 "
@@ -6034,7 +6139,7 @@ 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:54
+#: plinth/modules/ttrss/__init__.py:33
#, fuzzy, python-brace-format
#| msgid ""
#| "When enabled, Tiny Tiny RSS will be available from /"
@@ -6048,7 +6153,7 @@ msgstr ""
"\">/ tt-rss pad op de webserver. Het is beschikbaar voor elke gebruiker met een {box_name} login."
-#: plinth/modules/ttrss/__init__.py:58
+#: plinth/modules/ttrss/__init__.py:37
#, fuzzy
#| msgid ""
#| "When using a mobile or desktop application for Tiny Tiny RSS, use the URL "
@@ -6062,66 +6167,74 @@ msgstr ""
"gebruikt, voer dan de URL /tt-rss-app in om te "
"verbinden."
-#: plinth/modules/ttrss/__init__.py:65
+#: plinth/modules/ttrss/__init__.py:42
msgid "Read and subscribe to news feeds"
msgstr "Lezen en abonneren op nieuwsfeeds"
-#: plinth/modules/ttrss/manifest.py:25
+#: plinth/modules/ttrss/__init__.py:56 plinth/modules/ttrss/manifest.py:19
+msgid "Tiny Tiny RSS"
+msgstr "Tiny Tiny RSS"
+
+#: plinth/modules/ttrss/__init__.py:57
+msgid "News Feed Reader"
+msgstr "News Feed Reader"
+
+#: plinth/modules/ttrss/manifest.py:10
msgid "Tiny Tiny RSS (Fork)"
msgstr "Tiny Tiny RSS (Fork)"
-#: plinth/modules/upgrades/__init__.py:37 plinth/templates/setup.html:89
-msgid "Update"
-msgstr "Update"
-
-#: plinth/modules/upgrades/__init__.py:40
+#: plinth/modules/upgrades/__init__.py:23
msgid "Check for and apply the latest software and security updates."
msgstr ""
"Controleer de nieuwste software- en beveiligingsupdates en pas deze toe."
-#: plinth/modules/upgrades/__init__.py:84
+#: plinth/modules/upgrades/__init__.py:38 plinth/templates/setup.html:74
+msgid "Update"
+msgstr "Update"
+
+#: plinth/modules/upgrades/__init__.py:71
#, fuzzy
#| msgid "FreedomBox Foundation"
msgid "FreedomBox Updated"
msgstr "FreedomBox Foundation"
-#: plinth/modules/upgrades/forms.py:28
+#: plinth/modules/upgrades/forms.py:13
msgid "Enable auto-update"
msgstr "Automatisch bijwerken inschakelen"
-#: plinth/modules/upgrades/forms.py:29
+#: plinth/modules/upgrades/forms.py:14
msgid "When enabled, FreedomBox automatically updates once a day."
msgstr ""
"Als deze functie is ingeschakeld, wordt FreedomBox automatisch één keer per "
"dag bijgewerkt."
-#: plinth/modules/upgrades/templates/upgrades-new-release.html:24
+#: plinth/modules/upgrades/templates/upgrades-new-release.html:9
#, fuzzy, python-format
#| msgid "%(box_name)s is up to date."
msgid "%(box_name)s Updated"
msgstr "De nieuwste versie van %(box_name)s is geïnstalleerd."
-#: plinth/modules/upgrades/templates/upgrades-new-release.html:28
+#: plinth/modules/upgrades/templates/upgrades-new-release.html:13
#, python-format
msgid ""
"%(box_name)s has been updated to version %(version)s. See the release announcement."
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades-new-release.html:37
-#: plinth/templates/notifications.html:59
+#: plinth/modules/upgrades/templates/upgrades-new-release.html:22
+#: plinth/templates/notifications.html:44
msgid "Dismiss"
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades.html:45
+#: plinth/modules/upgrades/templates/upgrades.html:30
msgid "Update now"
msgstr "Nu bijwerken"
-#: plinth/modules/upgrades/templates/upgrades.html:54
+#: plinth/modules/upgrades/templates/upgrades.html:39
msgid "Updating..."
msgstr "Bezig met bijwerken…"
-#: plinth/modules/upgrades/templates/upgrades.html:59
+#: plinth/modules/upgrades/templates/upgrades.html:44
msgid ""
"This may take a long time to complete. During an update, "
"you cannot install apps. Also, this web interface may be temporarily "
@@ -6133,53 +6246,49 @@ msgstr ""
"tijdelijk niet beschikbaar zijn, en een foutmelding weergeven. Vernieuw in "
"dat geval de pagina om door te gaan."
-#: plinth/modules/upgrades/templates/upgrades.html:73
+#: plinth/modules/upgrades/templates/upgrades.html:58
msgid "Toggle recent update logs"
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades_configure.html:26
-#: plinth/modules/upgrades/templates/upgrades_configure.html:27
-#: plinth/modules/upgrades/views.py:107
+#: plinth/modules/upgrades/templates/upgrades_configure.html:11
+#: plinth/modules/upgrades/templates/upgrades_configure.html:12
+#: plinth/modules/upgrades/views.py:89
msgid "Manual update"
msgstr "Handmatige update"
-#: plinth/modules/upgrades/views.py:66
+#: plinth/modules/upgrades/views.py:48
#, python-brace-format
msgid "Error when configuring unattended-upgrades: {error}"
msgstr "Fout bij het instellen van automatische upgrades: {error}"
-#: plinth/modules/upgrades/views.py:70
+#: plinth/modules/upgrades/views.py:52
msgid "Automatic upgrades enabled"
msgstr "Automatisch bijwerken ingeschakeld"
-#: plinth/modules/upgrades/views.py:73
+#: plinth/modules/upgrades/views.py:55
msgid "Automatic upgrades disabled"
msgstr "Automatisch bijwerken uitgeschakeld"
-#: plinth/modules/upgrades/views.py:75
+#: plinth/modules/upgrades/views.py:57
msgid "Settings unchanged"
msgstr "Instellingen onveranderd"
-#: plinth/modules/upgrades/views.py:101
+#: plinth/modules/upgrades/views.py:83
msgid "Upgrade process started."
msgstr "Upgrade-proces gestart."
-#: plinth/modules/upgrades/views.py:104
+#: plinth/modules/upgrades/views.py:86
msgid "Starting upgrade failed."
msgstr "Starten van de upgrade is mislukt."
-#: plinth/modules/users/__init__.py:51
-msgid "Users and Groups"
-msgstr "Gebruikers en Groepen"
-
-#: plinth/modules/users/__init__.py:54
+#: plinth/modules/users/__init__.py:37
msgid ""
"Create and managed user accounts. These accounts serve as centralized "
"authentication mechanism for most apps. Some apps further require a user "
"account to be part of a group to authorize the user to access the app."
msgstr ""
-#: plinth/modules/users/__init__.py:59
+#: plinth/modules/users/__init__.py:42
#, python-brace-format
msgid ""
"Any user may login to {box_name} web interface to see a list of apps "
@@ -6187,35 +6296,39 @@ msgid ""
"group may alter apps or system settings."
msgstr ""
-#: plinth/modules/users/__init__.py:128
+#: plinth/modules/users/__init__.py:64
+msgid "Users and Groups"
+msgstr "Gebruikers en Groepen"
+
+#: plinth/modules/users/__init__.py:115
#, python-brace-format
msgid "Check LDAP entry \"{search_item}\""
msgstr "Zoek LDAP item \"{search_item}\""
-#: plinth/modules/users/forms.py:43
+#: plinth/modules/users/forms.py:28
msgid "Access to all services and system settings"
msgstr "Toegang tot alle diensten en systeeminstellingen"
-#: plinth/modules/users/forms.py:59
+#: plinth/modules/users/forms.py:44
msgid "Username is taken or is reserved."
msgstr "Gebruikersnaam is in gebruik of is gereserveerd."
-#: plinth/modules/users/forms.py:87
+#: plinth/modules/users/forms.py:72
#, fuzzy
#| msgid "Invalid server name"
msgid "Enter a valid username."
msgstr "Foute servernaam"
-#: plinth/modules/users/forms.py:93
+#: plinth/modules/users/forms.py:78
msgid ""
"Required. 150 characters or fewer. English letters, digits and @/./-/_ only."
msgstr ""
-#: plinth/modules/users/forms.py:106 plinth/modules/users/forms.py:222
+#: plinth/modules/users/forms.py:91 plinth/modules/users/forms.py:207
msgid "Permissions"
msgstr "Toegangsrechten"
-#: plinth/modules/users/forms.py:109
+#: plinth/modules/users/forms.py:94
msgid ""
"Select which services should be available to the new user. The user will be "
"able to log in to services that support single sign-on through LDAP, if they "
@@ -6230,20 +6343,20 @@ msgstr ""
"ook op het systeem inloggen met SSH en kunnen systeemadministratie doen "
"(sudo)."
-#: plinth/modules/users/forms.py:148 plinth/modules/users/forms.py:372
+#: plinth/modules/users/forms.py:133 plinth/modules/users/forms.py:357
msgid "Creating LDAP user failed."
msgstr "LDAP gebruiker aanmaken mislukt."
-#: plinth/modules/users/forms.py:159
+#: plinth/modules/users/forms.py:144
#, python-brace-format
msgid "Failed to add new user to {group} group."
msgstr "Nieuwe gebruiker aan groep {group} toevoegen mislukt."
-#: plinth/modules/users/forms.py:173
+#: plinth/modules/users/forms.py:158
msgid "Authorized SSH Keys"
msgstr "Geautoriseerde SSH-sleutels"
-#: plinth/modules/users/forms.py:175
+#: plinth/modules/users/forms.py:160
msgid ""
"Setting an SSH public key will allow this user to securely log in to the "
"system without using a password. You may enter multiple keys, one on each "
@@ -6254,84 +6367,84 @@ msgstr ""
"sleutels toevoegen, één op elke regel. Lege regels en regels die beginnen "
"met # worden genegeerd."
-#: plinth/modules/users/forms.py:259
+#: plinth/modules/users/forms.py:244
msgid "Renaming LDAP user failed."
msgstr "LDAP gebruiker hernoemen mislukt."
-#: plinth/modules/users/forms.py:271
+#: plinth/modules/users/forms.py:256
msgid "Failed to remove user from group."
msgstr "Gebruiker uit groep verwijderen mislukt."
-#: plinth/modules/users/forms.py:282
+#: plinth/modules/users/forms.py:267
msgid "Failed to add user to group."
msgstr "Gebruiker aan groep toevoegen mislukt."
-#: plinth/modules/users/forms.py:291
+#: plinth/modules/users/forms.py:276
msgid "Unable to set SSH keys."
msgstr "Kan de SSH-sleutels niet instellen."
-#: plinth/modules/users/forms.py:306
+#: plinth/modules/users/forms.py:291
#, fuzzy
#| msgid "Failed to add user to group."
msgid "Failed to change user status."
msgstr "Gebruiker aan groep toevoegen mislukt."
-#: plinth/modules/users/forms.py:314
+#: plinth/modules/users/forms.py:299
msgid "Cannot delete the only administrator in the system."
msgstr "Kan de enige beheerder in het systeem niet verwijderen."
-#: plinth/modules/users/forms.py:346
+#: plinth/modules/users/forms.py:331
msgid "Changing LDAP user password failed."
msgstr "Wijzigen LDAP gebruikerswachtwoord mislukt."
-#: plinth/modules/users/forms.py:381
+#: plinth/modules/users/forms.py:366
msgid "Failed to add new user to admin group."
msgstr "Toevoegen van gebruiker aan admin groep mislukt."
-#: plinth/modules/users/forms.py:398
+#: plinth/modules/users/forms.py:383
msgid "Failed to restrict console access."
msgstr "Consoletoegang beperken is mislukt."
-#: plinth/modules/users/forms.py:410
+#: plinth/modules/users/forms.py:395
msgid "User account created, you are now logged in"
msgstr "Gebruikersaccount aangemaakt, U bent nu ingelogd"
-#: plinth/modules/users/templates/users_change_password.html:26
+#: plinth/modules/users/templates/users_change_password.html:11
#, python-format
msgid "Change Password for %(username)s"
msgstr "Wijzig wachtwoord van %(username)s"
-#: plinth/modules/users/templates/users_change_password.html:36
+#: plinth/modules/users/templates/users_change_password.html:21
msgid "Save Password"
msgstr "Wachtwoord Opslaan"
-#: plinth/modules/users/templates/users_create.html:32
-#: plinth/modules/users/templates/users_list.html:42
-#: plinth/modules/users/templates/users_list.html:44
-#: plinth/modules/users/views.py:57
+#: plinth/modules/users/templates/users_create.html:17
+#: plinth/modules/users/templates/users_list.html:27
+#: plinth/modules/users/templates/users_list.html:29
+#: plinth/modules/users/views.py:42
msgid "Create User"
msgstr "Nieuwe gebruiker registreren"
-#: plinth/modules/users/templates/users_delete.html:26
-#: plinth/modules/users/views.py:139
+#: plinth/modules/users/templates/users_delete.html:11
+#: plinth/modules/users/views.py:121
msgid "Delete User"
msgstr "Gebruiker verwijderen"
-#: plinth/modules/users/templates/users_delete.html:29
+#: plinth/modules/users/templates/users_delete.html:14
#, python-format
msgid "Delete user %(username)s permanently?"
msgstr "Gebruiker %(username)s permanent verwijderen?"
-#: plinth/modules/users/templates/users_delete.html:38
+#: plinth/modules/users/templates/users_delete.html:23
#, python-format
msgid "Delete %(username)s"
msgstr "Verwijder %(username)s"
-#: plinth/modules/users/templates/users_firstboot.html:26
+#: plinth/modules/users/templates/users_firstboot.html:11
msgid "Administrator Account"
msgstr "Beheerdersaccount"
-#: plinth/modules/users/templates/users_firstboot.html:29
+#: plinth/modules/users/templates/users_firstboot.html:14
msgid ""
"Choose a username and password to access this web interface. The password "
"can be changed later. This user will be granted administrative privileges. "
@@ -6341,26 +6454,26 @@ msgstr ""
"wachtwoord kan later worden veranderd. Deze gebruiker krijgt administratieve "
"rechten. Andere gebruikers kunnen later worden toegevoegd."
-#: plinth/modules/users/templates/users_firstboot.html:42
+#: plinth/modules/users/templates/users_firstboot.html:27
msgid "Create Account"
msgstr "Account aanmaken"
-#: plinth/modules/users/templates/users_list.html:38
-#: plinth/modules/users/views.py:74
+#: plinth/modules/users/templates/users_list.html:23
+#: plinth/modules/users/views.py:59
msgid "Users"
msgstr "Gebruikers"
-#: plinth/modules/users/templates/users_list.html:57
+#: plinth/modules/users/templates/users_list.html:42
#, python-format
msgid "Delete user %(username)s"
msgstr "Verwijder gebruiker %(username)s"
-#: plinth/modules/users/templates/users_list.html:65
+#: plinth/modules/users/templates/users_list.html:50
#, python-format
msgid "Edit user %(username)s"
msgstr "Gebruiker %(username)s wijzigen"
-#: plinth/modules/users/templates/users_update.html:30
+#: plinth/modules/users/templates/users_update.html:15
#, python-format
msgid ""
"Use the change password form to "
@@ -6369,59 +6482,54 @@ msgstr ""
"Gebruik het wachtwoord wijzigingsformulier "
" om het wachtwoord te veranderen."
-#: plinth/modules/users/templates/users_update.html:42
-#: plinth/templates/language-selection.html:32
+#: plinth/modules/users/templates/users_update.html:27
+#: plinth/templates/language-selection.html:17
msgid "Save Changes"
msgstr "Wijzigingen opslaan"
-#: plinth/modules/users/views.py:55
+#: plinth/modules/users/views.py:40
#, python-format
msgid "User %(username)s created."
msgstr "Gebruiker %(username)s aangemaakt."
-#: plinth/modules/users/views.py:93
+#: plinth/modules/users/views.py:75
#, python-format
msgid "User %(username)s updated."
msgstr "Gebruiker %(username)s bijgewerkt."
-#: plinth/modules/users/views.py:94
+#: plinth/modules/users/views.py:76
msgid "Edit User"
msgstr "Gebruiker wijzigen"
-#: plinth/modules/users/views.py:149
+#: plinth/modules/users/views.py:131
#, python-brace-format
msgid "User {user} deleted."
msgstr "Gebruiker {user} verwijderd."
-#: plinth/modules/users/views.py:156
+#: plinth/modules/users/views.py:138
msgid "Deleting LDAP user failed."
msgstr "Verwijderen van LDAP gebruiker mislukt."
-#: plinth/modules/users/views.py:165
+#: plinth/modules/users/views.py:147
msgid "Change Password"
msgstr "Wijzig wachtwoord"
-#: plinth/modules/users/views.py:166
+#: plinth/modules/users/views.py:148
msgid "Password changed successfully."
msgstr "Wachtwoord succesvol gewijzigd."
-#: plinth/modules/wireguard/__init__.py:38
-#: plinth/modules/wireguard/manifest.py:29
-msgid "WireGuard"
-msgstr ""
-
-#: plinth/modules/wireguard/__init__.py:43
+#: plinth/modules/wireguard/__init__.py:24
msgid "WireGuard is a fast, modern, secure VPN tunnel."
msgstr ""
-#: plinth/modules/wireguard/__init__.py:45
+#: plinth/modules/wireguard/__init__.py:26
#, python-brace-format
msgid ""
"It can be used to connect to a VPN provider which supports WireGuard, and to "
"route all outgoing traffic from {box_name} through the VPN."
msgstr ""
-#: plinth/modules/wireguard/__init__.py:49
+#: plinth/modules/wireguard/__init__.py:30
#, python-brace-format
msgid ""
"A second use case is to connect a mobile device to {box_name} while "
@@ -6429,67 +6537,72 @@ msgid ""
"securely relayed through {box_name}."
msgstr ""
-#: plinth/modules/wireguard/forms.py:47
+#: plinth/modules/wireguard/__init__.py:52
+#: plinth/modules/wireguard/manifest.py:14
+msgid "WireGuard"
+msgstr ""
+
+#: plinth/modules/wireguard/forms.py:32
#, fuzzy
#| msgid "Invalid kite name"
msgid "Invalid key."
msgstr "Foute kite-naam"
-#: plinth/modules/wireguard/forms.py:76
-#: plinth/modules/wireguard/templates/wireguard.html:32
-#: plinth/modules/wireguard/templates/wireguard.html:89
-#: plinth/modules/wireguard/templates/wireguard_delete_server.html:38
+#: plinth/modules/wireguard/forms.py:61
+#: plinth/modules/wireguard/templates/wireguard.html:17
+#: plinth/modules/wireguard/templates/wireguard.html:74
+#: plinth/modules/wireguard/templates/wireguard_delete_server.html:23
#, fuzzy
#| msgid "Publish Key"
msgid "Public Key"
msgstr "Sleutel Publiceren"
-#: plinth/modules/wireguard/forms.py:77
+#: plinth/modules/wireguard/forms.py:62
msgid ""
"Public key of the peer. Example: "
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs= ."
msgstr ""
-#: plinth/modules/wireguard/forms.py:85
+#: plinth/modules/wireguard/forms.py:70
msgid "Endpoint of the server"
msgstr ""
-#: plinth/modules/wireguard/forms.py:86
+#: plinth/modules/wireguard/forms.py:71
msgid ""
"Domain name and port in the form \"ip:port\". Example: demo.wireguard."
"com:12912 ."
msgstr ""
-#: plinth/modules/wireguard/forms.py:91
+#: plinth/modules/wireguard/forms.py:76
#, fuzzy
#| msgid "Published key to keyserver."
msgid "Public key of the server"
msgstr "Sleutel gepubliceerd op keyserver."
-#: plinth/modules/wireguard/forms.py:92
+#: plinth/modules/wireguard/forms.py:77
msgid ""
"Provided by the server operator, a long string of characters. Example: "
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs= ."
msgstr ""
-#: plinth/modules/wireguard/forms.py:97
+#: plinth/modules/wireguard/forms.py:82
#, fuzzy
#| msgid "A list of IP addresses, separated by space"
msgid "Client IP address provided by server"
msgstr "Een lijst met IP-adressen, gescheiden door spatie"
-#: plinth/modules/wireguard/forms.py:98
+#: plinth/modules/wireguard/forms.py:83
msgid ""
"IP address assigned to this machine on the VPN after connecting to the "
"endpoint. This value is usually provided by the server operator. Example: "
"192.168.0.10."
msgstr ""
-#: plinth/modules/wireguard/forms.py:104
+#: plinth/modules/wireguard/forms.py:89
msgid "Private key of this machine"
msgstr ""
-#: plinth/modules/wireguard/forms.py:105
+#: plinth/modules/wireguard/forms.py:90
msgid ""
"Optional. New public/private keys are generated if left blank. Public key "
"can then be provided to the server. This is the recommended way. However, "
@@ -6497,185 +6610,185 @@ msgid ""
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs= ."
msgstr ""
-#: plinth/modules/wireguard/forms.py:113
+#: plinth/modules/wireguard/forms.py:98
msgid "Pre-shared key"
msgstr ""
-#: plinth/modules/wireguard/forms.py:114
+#: plinth/modules/wireguard/forms.py:99
msgid ""
"Optional. A shared secret key provided by the server to add an additional "
"layer of security. Fill in only if provided. Example: "
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs=."
msgstr ""
-#: plinth/modules/wireguard/forms.py:120
+#: plinth/modules/wireguard/forms.py:105
msgid "Use this connection to send all outgoing traffic"
msgstr ""
-#: plinth/modules/wireguard/forms.py:122
+#: plinth/modules/wireguard/forms.py:107
msgid "Typically checked for a VPN service though which all traffic is sent."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:25
+#: plinth/modules/wireguard/templates/wireguard.html:10
#, fuzzy
#| msgid "Chat Server"
msgid "As a Server"
msgstr "Chatserver"
-#: plinth/modules/wireguard/templates/wireguard.html:27
+#: plinth/modules/wireguard/templates/wireguard.html:12
msgid "Peers allowed to connect to this server:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:33
+#: plinth/modules/wireguard/templates/wireguard.html:18
msgid "Allowed IPs"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:34
-#: plinth/modules/wireguard/templates/wireguard.html:90
+#: plinth/modules/wireguard/templates/wireguard.html:19
+#: plinth/modules/wireguard/templates/wireguard.html:75
#, fuzzy
#| msgid "Create Connection"
msgid "Last Connected Time"
msgstr "Maak Verbinding"
-#: plinth/modules/wireguard/templates/wireguard.html:53
+#: plinth/modules/wireguard/templates/wireguard.html:38
#, python-format
msgid "No peers configured to connect to this %(box_name)s yet."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:62
+#: plinth/modules/wireguard/templates/wireguard.html:47
#, python-format
msgid "Public key for this %(box_name)s:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:68
+#: plinth/modules/wireguard/templates/wireguard.html:53
#, fuzzy
#| msgid "No shares currently configured."
msgid "Not configured yet."
msgstr "Er zijn momenteel geen bestandsdelingen geconfigureerd."
-#: plinth/modules/wireguard/templates/wireguard.html:72
+#: plinth/modules/wireguard/templates/wireguard.html:57
#, fuzzy
#| msgid "Add new introducer"
msgid "Add a new peer"
msgstr "Nieuwe introduceerder toevoegen"
-#: plinth/modules/wireguard/templates/wireguard.html:76
-#: plinth/modules/wireguard/views.py:69
+#: plinth/modules/wireguard/templates/wireguard.html:61
+#: plinth/modules/wireguard/views.py:51
msgid "Add Allowed Client"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:79
+#: plinth/modules/wireguard/templates/wireguard.html:64
#, fuzzy
#| msgid "Chat Client"
msgid "As a Client"
msgstr "Chat Cliënt"
-#: plinth/modules/wireguard/templates/wireguard.html:81
+#: plinth/modules/wireguard/templates/wireguard.html:66
#, python-format
msgid "Servers that %(box_name)s will connect to:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:88
-#: plinth/modules/wireguard/templates/wireguard_delete_server.html:34
+#: plinth/modules/wireguard/templates/wireguard.html:73
+#: plinth/modules/wireguard/templates/wireguard_delete_server.html:19
msgid "Endpoint"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:111
+#: plinth/modules/wireguard/templates/wireguard.html:96
msgid "No connections to remote servers are configured yet."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:119
+#: plinth/modules/wireguard/templates/wireguard.html:104
#, fuzzy
#| msgid "Add new introducer"
msgid "Add a new server"
msgstr "Nieuwe introduceerder toevoegen"
-#: plinth/modules/wireguard/templates/wireguard.html:123
-#: plinth/modules/wireguard/views.py:178
+#: plinth/modules/wireguard/templates/wireguard.html:108
+#: plinth/modules/wireguard/views.py:160
#, fuzzy
#| msgid "Add Connection"
msgid "Add Connection to Server"
msgstr "Verbinding toevoegen"
-#: plinth/modules/wireguard/templates/wireguard_add_client.html:34
+#: plinth/modules/wireguard/templates/wireguard_add_client.html:19
#, fuzzy
#| msgid "IRC Client"
msgid "Add Client"
msgstr "IRC Cliënt"
-#: plinth/modules/wireguard/templates/wireguard_delete_client.html:29
+#: plinth/modules/wireguard/templates/wireguard_delete_client.html:14
#, fuzzy
#| msgid "Are you sure that you want to remove this repository?"
msgid "Are you sure that you want to delete this client?"
msgstr "Weet u zeker dat u deze repository wilt verwijderen?"
-#: plinth/modules/wireguard/templates/wireguard_delete_server.html:29
+#: plinth/modules/wireguard/templates/wireguard_delete_server.html:14
#, fuzzy
#| msgid "Are you sure that you want to remove this repository?"
msgid "Are you sure that you want to delete this server?"
msgstr "Weet u zeker dat u deze repository wilt verwijderen?"
-#: plinth/modules/wireguard/templates/wireguard_edit_client.html:34
+#: plinth/modules/wireguard/templates/wireguard_edit_client.html:19
#, fuzzy
#| msgid "Chat Client"
msgid "Update Client"
msgstr "Chat Cliënt"
-#: plinth/modules/wireguard/templates/wireguard_edit_server.html:34
+#: plinth/modules/wireguard/templates/wireguard_edit_server.html:19
#, fuzzy
#| msgid "Create Connection"
msgid "Update Connection"
msgstr "Maak Verbinding"
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:27
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:12
#, python-format
msgid ""
"%(box_name)s will allow this client to connect to it. Ensure that the client "
"is configured with the following information."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:35
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:20
msgid "Client public key:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:39
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:24
msgid "IP address to use for client:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:43
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:46
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:28
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:31
msgid "Pre-shared key:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:47
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:32
#, fuzzy
#| msgid "Server domain"
msgid "Server endpoints:"
msgstr "Serverdomein"
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:55
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:42
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:40
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:27
#, fuzzy
#| msgid "Select verified SSH public key"
msgid "Server public key:"
msgstr "Selecteer geverifieerde SSH openbare sleutel"
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:65
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:64
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:50
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:49
msgid "Data transmitted:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:69
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:68
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:54
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:53
msgid "Data received:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:73
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:72
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:58
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:57
msgid "Latest handshake:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:29
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:14
#, python-format
msgid ""
"%(box_name)s will attempt to reach a WireGuard server with the following "
@@ -6683,153 +6796,153 @@ msgid ""
"public key and IP address."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:38
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:23
#, fuzzy
#| msgid "Server domain"
msgid "Server endpoint:"
msgstr "Serverdomein"
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:50
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:35
msgid "Public key of this machine:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:54
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:39
msgid "IP address of this machine:"
msgstr ""
-#: plinth/modules/wireguard/views.py:64
+#: plinth/modules/wireguard/views.py:46
#, fuzzy
#| msgid "Add new introducer"
msgid "Added new client."
msgstr "Nieuwe introduceerder toevoegen"
-#: plinth/modules/wireguard/views.py:79 plinth/modules/wireguard/views.py:138
+#: plinth/modules/wireguard/views.py:61 plinth/modules/wireguard/views.py:120
#, fuzzy
#| msgid "A share with this name already exists."
msgid "Client with public key already exists"
msgstr "Er bestaat reeds een gedeelde map met deze naam."
-#: plinth/modules/wireguard/views.py:92
+#: plinth/modules/wireguard/views.py:74
#, fuzzy
#| msgid "Email Client"
msgid "Allowed Client"
msgstr "Email Cliënt"
-#: plinth/modules/wireguard/views.py:114
+#: plinth/modules/wireguard/views.py:96
#, fuzzy
#| msgid "Update setup"
msgid "Updated client."
msgstr "Instelling bijwerken"
-#: plinth/modules/wireguard/views.py:119
+#: plinth/modules/wireguard/views.py:101
#, fuzzy
#| msgid "Email Client"
msgid "Modify Client"
msgstr "Email Cliënt"
-#: plinth/modules/wireguard/views.py:152
+#: plinth/modules/wireguard/views.py:134
#, fuzzy
#| msgid "Delete All"
msgid "Delete Allowed Client"
msgstr "Verwijder alles"
-#: plinth/modules/wireguard/views.py:161
+#: plinth/modules/wireguard/views.py:143
#, fuzzy
#| msgid "Archive deleted."
msgid "Client deleted."
msgstr "Archief verwijderd."
-#: plinth/modules/wireguard/views.py:163
+#: plinth/modules/wireguard/views.py:145
#, fuzzy
#| msgid "Repository not found"
msgid "Client not found"
msgstr "Repository niet gevonden"
-#: plinth/modules/wireguard/views.py:173
+#: plinth/modules/wireguard/views.py:155
#, fuzzy
#| msgid "Added custom service"
msgid "Added new server."
msgstr "Aangepaste dienst toevoegen"
-#: plinth/modules/wireguard/views.py:194
+#: plinth/modules/wireguard/views.py:176
#, fuzzy
#| msgid "Connection Type"
msgid "Connection to Server"
msgstr "Verbindingssoort"
-#: plinth/modules/wireguard/views.py:212
+#: plinth/modules/wireguard/views.py:194
#, fuzzy
#| msgid "Update setup"
msgid "Updated server."
msgstr "Instelling bijwerken"
-#: plinth/modules/wireguard/views.py:217
+#: plinth/modules/wireguard/views.py:199
#, fuzzy
#| msgid "Edit Connection"
msgid "Modify Connection to Server"
msgstr "Wijzig verbinding"
-#: plinth/modules/wireguard/views.py:254
+#: plinth/modules/wireguard/views.py:236
#, fuzzy
#| msgid "Delete Connection"
msgid "Delete Connection to Server"
msgstr "Verwijder verbinding"
-#: plinth/modules/wireguard/views.py:274
+#: plinth/modules/wireguard/views.py:256
#, fuzzy
#| msgid "Share deleted."
msgid "Server deleted."
msgstr "Gedeelde map verwijderd."
-#: plinth/network.py:42
+#: plinth/network.py:27
msgid "PPPoE"
msgstr "PPPoE"
-#: plinth/network.py:43
+#: plinth/network.py:28
msgid "Generic"
msgstr "Generiek"
-#: plinth/package.py:137
+#: plinth/package.py:122
msgid "Error during installation"
msgstr "Fout tijdens installatie"
-#: plinth/package.py:159
+#: plinth/package.py:144
msgid "installing"
msgstr "installeren"
-#: plinth/package.py:161
+#: plinth/package.py:146
msgid "downloading"
msgstr "downloaden"
-#: plinth/package.py:163
+#: plinth/package.py:148
msgid "media change"
msgstr "media wijzigen"
-#: plinth/package.py:165
+#: plinth/package.py:150
#, python-brace-format
msgid "configuration file: {file}"
msgstr "configuratiebestand: {file}"
-#: plinth/templates/403.html:25
+#: plinth/templates/403.html:10
msgid "403 Forbidden"
msgstr "403 Verboden"
-#: plinth/templates/403.html:29
+#: plinth/templates/403.html:14
#, python-format
msgid "You don't have permission to access %(request_path)s on this server."
msgstr ""
"U heeft geen toestemming voor toegang tot %(request_path)s op deze server."
-#: plinth/templates/404.html:25
+#: plinth/templates/404.html:10
msgid "404"
msgstr "404"
-#: plinth/templates/404.html:28
+#: plinth/templates/404.html:13
#, python-format
msgid "Requested page %(request_path)s was not found."
msgstr "De gevraagde pagina %(request_path)s is niet gevonden."
-#: plinth/templates/404.html:34
+#: plinth/templates/404.html:19
msgid ""
"If you believe this missing page should exist, please file a bug at the "
"FreedomBox Service (Plinth) project issue "
"tracker (Engelstalig)."
-#: plinth/templates/500.html:25
+#: plinth/templates/500.html:10
msgid "500"
msgstr "500"
-#: plinth/templates/500.html:29
+#: plinth/templates/500.html:14
#, python-format
msgid ""
"This is an internal error and not something you caused or can fix. Please "
@@ -6858,115 +6971,119 @@ msgstr ""
"(Engelstalig) zodat we deze kunnen verhelpen. Voeg alstublieft het Status Log toe aan de bug-reportage."
-#: plinth/templates/app.html:47
+#: plinth/templates/app-header.html:22
+msgid "Installation"
+msgstr "Installatie"
+
+#: plinth/templates/app.html:32
#, python-format
msgid "Service %(service_name)s is running."
msgstr "Service %(service_name)s wordt uitgevoerd."
-#: plinth/templates/app.html:52
+#: plinth/templates/app.html:37
#, python-format
msgid "Service %(service_name)s is not running."
msgstr "Service %(service_name)s is niet actief."
-#: plinth/templates/base.html:50
+#: plinth/templates/base.html:35
#, python-format
msgid "Core functionality and web interface for %(box_name)s"
msgstr "Basisfunctionaliteit en webinterface voor %(box_name)s"
-#: plinth/templates/base.html:96
+#: plinth/templates/base.html:81
msgid "Toggle navigation"
msgstr "Navigatie in/uitschakelen"
-#: plinth/templates/base.html:120 plinth/templates/base.html:123
+#: plinth/templates/base.html:105 plinth/templates/base.html:108
msgid "Home"
msgstr "Startpagina"
-#: plinth/templates/base.html:128 plinth/templates/base.html:132
+#: plinth/templates/base.html:113 plinth/templates/base.html:117
msgid "Apps"
msgstr "Apps"
-#: plinth/templates/base.html:137 plinth/templates/base.html:141
+#: plinth/templates/base.html:122 plinth/templates/base.html:126
msgid "System"
msgstr "Systeem"
-#: plinth/templates/base.html:173 plinth/templates/base.html:174
+#: plinth/templates/base.html:158 plinth/templates/base.html:159
msgid "Change password"
msgstr "Wijzig wachtwoord"
-#: plinth/templates/base.html:181 plinth/templates/base.html:182
+#: plinth/templates/base.html:166 plinth/templates/base.html:167
msgid "Restart"
msgstr "Herstarten"
-#: plinth/templates/base.html:187 plinth/templates/base.html:188
+#: plinth/templates/base.html:172 plinth/templates/base.html:173
msgid "Shut down"
msgstr "Uitschakelen"
-#: plinth/templates/base.html:195 plinth/templates/base.html:196
-#: plinth/templates/base.html:220 plinth/templates/base.html:222
+#: plinth/templates/base.html:180 plinth/templates/base.html:181
+#: plinth/templates/base.html:205 plinth/templates/base.html:207
msgid "Log out"
msgstr "Afmelden"
-#: plinth/templates/base.html:204 plinth/templates/base.html:207
+#: plinth/templates/base.html:189 plinth/templates/base.html:192
msgid "Select language"
msgstr "Selecteer taal"
-#: plinth/templates/base.html:212 plinth/templates/base.html:214
+#: plinth/templates/base.html:197 plinth/templates/base.html:199
msgid "Log in"
msgstr "Aanmelden"
-#: plinth/templates/clients.html:32
+#: plinth/templates/clients.html:17
msgid "Web"
msgstr "Web"
-#: plinth/templates/clients.html:57
+#: plinth/templates/clients.html:42
msgid "Desktop"
msgstr "Desktop"
-#: plinth/templates/clients.html:68
+#: plinth/templates/clients.html:53
msgid "GNU/Linux"
msgstr "GNU/Linux"
-#: plinth/templates/clients.html:70
+#: plinth/templates/clients.html:55
msgid "Windows"
msgstr "Windows"
-#: plinth/templates/clients.html:72
+#: plinth/templates/clients.html:57
msgid "macOS"
msgstr "macOS"
-#: plinth/templates/clients.html:88
+#: plinth/templates/clients.html:73
msgid "Mobile"
msgstr "Mobiel"
-#: plinth/templates/clients.html:99
+#: plinth/templates/clients.html:84
msgid "Play Store"
msgstr "Play Store"
-#: plinth/templates/clients.html:101
+#: plinth/templates/clients.html:86
msgid "F-Droid"
msgstr "F-Droid"
-#: plinth/templates/clients.html:103
+#: plinth/templates/clients.html:88
msgid "App Store"
msgstr "App Store"
-#: plinth/templates/clients.html:119
+#: plinth/templates/clients.html:104
msgid "Package"
msgstr "Pakket"
-#: plinth/templates/clients.html:126
+#: plinth/templates/clients.html:111
msgid "Debian:"
msgstr "Debian:"
-#: plinth/templates/clients.html:129
+#: plinth/templates/clients.html:114
msgid "Homebrew:"
msgstr "Homebrew:"
-#: plinth/templates/clients.html:132
+#: plinth/templates/clients.html:117
msgid "RPM:"
msgstr "RPM:"
-#: plinth/templates/first_setup.html:39
+#: plinth/templates/first_setup.html:24
#, python-format
msgid ""
"Please wait for %(box_name)s to finish installation. You can start using "
@@ -6975,11 +7092,7 @@ msgstr ""
"Wacht tot %(box_name)s klaar is met de installatie. U kunt de %(box_name)s "
"gebruiken als de bewerking klaar is."
-#: plinth/templates/header.html:36
-msgid "Installation"
-msgstr "Installatie"
-
-#: plinth/templates/index.html:37
+#: plinth/templates/index.html:22
#, python-format
msgid ""
"Enable some applications to add shortcuts to "
@@ -6988,11 +7101,11 @@ msgstr ""
"Schakel toepassingen in om snelkoppelingen toe "
"te voegen aan deze pagina."
-#: plinth/templates/index.html:59
+#: plinth/templates/index.html:44
msgid "Configure »"
msgstr "Configureer »"
-#: plinth/templates/index.html:115
+#: plinth/templates/index.html:100
#, python-format
msgid ""
"%(box_name)s, a Debian pure blend, is a 100%% free software self-hosting web "
@@ -7004,7 +7117,7 @@ msgstr ""
"Het biedt online communicatietools die privacy en eigendom van gegevens "
"respecteren."
-#: plinth/templates/index.html:124
+#: plinth/templates/index.html:109
#, python-format
msgid ""
"This portal is a part of the %(box_name)s web interface. %(box_name)s is "
@@ -7015,41 +7128,41 @@ msgstr ""
"vrije software en wordt gedistribueerd onder de GNU Affero General Public "
"License, Versie 3 of hoger."
-#: plinth/templates/index.html:144
+#: plinth/templates/index.html:129
msgid "Homepage"
msgstr "Startpagina"
-#: plinth/templates/index.html:147
+#: plinth/templates/index.html:132
msgid "Source Code"
msgstr "Broncode"
-#: plinth/templates/index.html:150
+#: plinth/templates/index.html:135
msgid "Donate"
msgstr "Doneren"
-#: plinth/templates/index.html:154
+#: plinth/templates/index.html:139
msgid "FreedomBox Foundation"
msgstr "FreedomBox Foundation"
-#: plinth/templates/index.html:161
+#: plinth/templates/index.html:146
msgid "IRC Chatroom"
msgstr "IRC Chatroom"
-#: plinth/templates/index.html:166
+#: plinth/templates/index.html:151
msgid "Mailing list"
msgstr "Mailinglijst"
-#: plinth/templates/internal-zone.html:26
+#: plinth/templates/internal-zone.html:11
#, python-format
msgid "%(service_name)s is available only on internal networks."
msgstr ""
"%(service_name)s is alleen beschikbaar binnen interne netwerken."
-#: plinth/templates/internal-zone.html:32
+#: plinth/templates/internal-zone.html:17
msgid "Currently there are no network interfaces configured as internal."
msgstr "Momenteel zijn er geen netwerk interfaces geconfigureerd als intern."
-#: plinth/templates/internal-zone.html:34
+#: plinth/templates/internal-zone.html:19
#, python-format
msgid ""
"Currently the following network interfaces are configured as internal: "
@@ -7058,17 +7171,17 @@ msgstr ""
"Momenteel zijn de volgende netwerkinterfaces geconfigureerd als intern: "
"%(interface_list)s"
-#: plinth/templates/notifications-dropdown.html:26
+#: plinth/templates/notifications-dropdown.html:11
#, fuzzy
#| msgid "No certificate"
msgid "Notifications"
msgstr "Geen certificaat"
-#: plinth/templates/port-forwarding-info.html:23
+#: plinth/templates/port-forwarding-info.html:8
msgid "Port Forwarding"
msgstr "Port Forwarding"
-#: plinth/templates/port-forwarding-info.html:26
+#: plinth/templates/port-forwarding-info.html:11
#, python-format
msgid ""
"If your FreedomBox is behind a router, you will need to set up port "
@@ -7076,15 +7189,15 @@ msgid ""
"%(service_name)s:"
msgstr ""
-#: plinth/templates/setup.html:51
+#: plinth/templates/setup.html:36
msgid "Install this application?"
msgstr "Deze toepassing installeren?"
-#: plinth/templates/setup.html:55
+#: plinth/templates/setup.html:40
msgid "This application needs an update. Update now?"
msgstr "Deze toepassing heeft een update nodig. Nu bijwerken?"
-#: plinth/templates/setup.html:66
+#: plinth/templates/setup.html:51
msgid ""
"Another installation or upgrade is already running. Please wait for a few "
"moments before trying again."
@@ -7092,49 +7205,49 @@ msgstr ""
"Een andere installatie of upgrade is reeds uitgevoerd. Wacht een paar "
"momenten voordat u het opnieuw probeert."
-#: plinth/templates/setup.html:73
+#: plinth/templates/setup.html:58
msgid "This application is currently not available in your distribution."
msgstr "Deze toepassing is momenteel niet beschikbaar in uw softwarebron."
-#: plinth/templates/setup.html:87
+#: plinth/templates/setup.html:72
msgid "Install"
msgstr "Installeer"
-#: plinth/templates/setup.html:98
+#: plinth/templates/setup.html:83
msgid "Performing pre-install operation"
msgstr "Pre-Install bewerkingen worden uitvoerd"
-#: plinth/templates/setup.html:102
+#: plinth/templates/setup.html:87
msgid "Performing post-install operation"
msgstr "Post-install bewerkingen worden uitgevoerd"
-#: plinth/templates/setup.html:107
+#: plinth/templates/setup.html:92
#, python-format
msgid "Installing %(package_names)s: %(status)s"
msgstr "Installeren van %(package_names)s: %(status)s"
-#: plinth/templates/setup.html:117
+#: plinth/templates/setup.html:102
#, python-format
msgid "%(percentage)s%% complete"
msgstr "%(percentage)s%% voltooid"
-#: plinth/templates/toolbar.html:38
+#: plinth/templates/toolbar.html:23
msgid "Launch web client"
msgstr "Start web cliënt"
-#: plinth/templates/toolbar.html:47
+#: plinth/templates/toolbar.html:32
msgid "Client Apps"
msgstr "Cliënttoepassingen"
-#: plinth/views.py:179
+#: plinth/views.py:189
msgid "Application enabled"
msgstr "Toepassing ingeschakeld"
-#: plinth/views.py:182
+#: plinth/views.py:192
msgid "Application disabled"
msgstr "Toepassing uitgeschakeld"
-#: plinth/web_framework.py:190
+#: plinth/web_framework.py:107
msgid "Gujarati"
msgstr "Gujarati"
diff --git a/plinth/locale/pl/LC_MESSAGES/django.po b/plinth/locale/pl/LC_MESSAGES/django.po
index e16a082bb..5968ad172 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: 2020-02-14 21:26+0200\n"
+"POT-Creation-Date: 2020-02-24 19:12-0500\n"
"PO-Revision-Date: 2020-02-19 22:47+0000\n"
"Last-Translator: Radek Pasiok This means that devices on the Internet can reach you when you are " +"connected to the Internet. Every time you connect to the Internet with your " +"Internet Service Provider (ISP), you may get a different IP address, " +"especially after some offline time. Many ISPs offer this type of " +"connectivity. If you have a public IP address but are unsure if it changes " +"over time or not, it is safer to choose this option.
" +msgstr "" + #: plinth/modules/networks/forms.py:313 +#, python-brace-format +msgid "" +"I have a public IP address that does not change overtime (recommended)This means that devices on the Internet can reach you " +"when you are connected to the Internet. Every time you connect to the " +"Internet with your Internet Service Provider (ISP), you always get the same " +"IP address. This is the most trouble-free setup for many {box_name} services " +"but very few ISPs offer this. You may be able to get this service from your " +"ISP by making an additional payment.
" +msgstr "" + +#: plinth/modules/networks/forms.py:326 +#, python-brace-format +msgid "" +"I dont have a public IP addressThis means that " +"devices on the Internet can not reach you when you are connected to " +"the Internet. Every time you connect to the Internet with your Internet " +"Service Provider (ISP), you get an IP address that is only relevant for " +"local networks. Many ISPs offer this type of connectivity. This is the most " +"troublesome situation for hosting services at home. {box_name} provides many " +"workaround solutions but each solution has some limitations.
" +msgstr "" + +#: plinth/modules/networks/forms.py:351 #, fuzzy #| msgid "Current Network Configuration" msgid "Preferred router configuration" msgstr "Aktualna konfiguracja sieci" -#: plinth/modules/networks/forms.py:318 +#: plinth/modules/networks/forms.py:356 #, python-brace-format msgid "" -"Use DMZ feature to forward all trafficMost routers " -"provide a configuration setting called DMZ. This will allow the router to " -"forward all incoming traffic from the internet to a single IP address such " -"as the {box_name}'s address. First remember to configure a static local IP " -"address for your {box_name} in your router's configuration.
" +"Use DMZ feature to forward all traffic (recommended)Most routers provide a configuration setting called DMZ. This will allow " +"the router to forward all incoming traffic from the Internet to a single IP " +"address such as the {box_name}'s IP address. First remember to configure a " +"static local IP address for your {box_name} in your router's configuration." +"p>" msgstr "" -#: plinth/modules/networks/forms.py:332 +#: plinth/modules/networks/forms.py:368 #, python-brace-format msgid "" -"Forward Specific Traffic as needed by each application
You may alternatively choose to forward only specific traffic to your " "{box_name}. This is ideal if you have other servers like {box_name} in your " "network or if your router does not support DMZ feature. All applications " @@ -3359,278 +3426,284 @@ msgid "" "to be forwarded for that application to work.
" msgstr "" -#: plinth/modules/networks/forms.py:349 +#: plinth/modules/networks/forms.py:382 msgid "" -"Router is currently unconfiguredChoose this if you " +"Router is currently unconfigured
Choose this if you " "have not configured or are unable to configure the router currently and wish " "to be reminded later. Some of the other configuration steps may fail.
" msgstr "" -#: plinth/modules/networks/networks.py:43 +#: plinth/modules/networks/networks.py:32 msgid "Network Connections" msgstr "" -#: plinth/modules/networks/networks.py:59 +#: plinth/modules/networks/networks.py:46 msgid "Cannot show connection: Connection not found." msgstr "" -#: plinth/modules/networks/networks.py:94 +#: plinth/modules/networks/networks.py:81 msgid "Connection Information" msgstr "" -#: plinth/modules/networks/networks.py:108 +#: plinth/modules/networks/networks.py:95 msgid "Cannot edit connection: Connection not found." msgstr "" -#: plinth/modules/networks/networks.py:114 +#: plinth/modules/networks/networks.py:101 msgid "This type of connection is not yet understood." msgstr "" -#: plinth/modules/networks/networks.py:136 -#: plinth/modules/networks/networks.py:220 -#: plinth/modules/networks/templates/connections_edit.html:35 +#: plinth/modules/networks/networks.py:123 +#: plinth/modules/networks/networks.py:207 +#: plinth/modules/networks/templates/connections_edit.html:20 msgid "Edit Connection" msgstr "" -#: plinth/modules/networks/networks.py:232 +#: plinth/modules/networks/networks.py:219 #, python-brace-format msgid "Activated connection {name}." msgstr "" -#: plinth/modules/networks/networks.py:236 +#: plinth/modules/networks/networks.py:223 msgid "Failed to activate connection: Connection not found." msgstr "" -#: plinth/modules/networks/networks.py:242 +#: plinth/modules/networks/networks.py:229 #, python-brace-format msgid "Failed to activate connection {name}: No suitable device is available." msgstr "" -#: plinth/modules/networks/networks.py:255 +#: plinth/modules/networks/networks.py:242 #, python-brace-format msgid "Deactivated connection {name}." msgstr "" -#: plinth/modules/networks/networks.py:259 +#: plinth/modules/networks/networks.py:246 msgid "Failed to de-activate connection: Connection not found." msgstr "" -#: plinth/modules/networks/networks.py:269 -#: plinth/modules/networks/templates/connections_list.html:62 -#: plinth/modules/networks/templates/connections_list.html:64 +#: plinth/modules/networks/networks.py:256 +#: plinth/modules/networks/templates/connections_list.html:12 +#: plinth/modules/networks/templates/connections_list.html:14 msgid "Nearby Wi-Fi Networks" msgstr "" -#: plinth/modules/networks/networks.py:293 -#: plinth/modules/networks/templates/connections_list.html:67 -#: plinth/modules/networks/templates/connections_list.html:69 -#: plinth/modules/wireguard/templates/wireguard_add_server.html:34 +#: plinth/modules/networks/networks.py:280 +#: plinth/modules/networks/templates/connections_list.html:17 +#: plinth/modules/networks/templates/connections_list.html:19 +#: plinth/modules/wireguard/templates/wireguard_add_server.html:19 msgid "Add Connection" msgstr "" -#: plinth/modules/networks/networks.py:311 +#: plinth/modules/networks/networks.py:298 msgid "Adding New Generic Connection" msgstr "" -#: plinth/modules/networks/networks.py:329 +#: plinth/modules/networks/networks.py:316 msgid "Adding New Ethernet Connection" msgstr "" -#: plinth/modules/networks/networks.py:347 +#: plinth/modules/networks/networks.py:334 msgid "Adding New PPPoE Connection" msgstr "" -#: plinth/modules/networks/networks.py:382 +#: plinth/modules/networks/networks.py:369 msgid "Adding New Wi-Fi Connection" msgstr "" -#: plinth/modules/networks/networks.py:397 +#: plinth/modules/networks/networks.py:384 #, python-brace-format msgid "Connection {name} deleted." msgstr "" -#: plinth/modules/networks/networks.py:401 -#: plinth/modules/networks/networks.py:411 +#: plinth/modules/networks/networks.py:388 +#: plinth/modules/networks/networks.py:398 msgid "Failed to delete connection: Connection not found." msgstr "" -#: plinth/modules/networks/networks.py:416 -#: plinth/modules/networks/templates/connections_delete.html:26 +#: plinth/modules/networks/networks.py:403 +#: plinth/modules/networks/templates/connections_delete.html:11 msgid "Delete Connection" msgstr "" -#: plinth/modules/networks/networks.py:442 +#: plinth/modules/networks/networks.py:428 #, fuzzy #| msgid "PVP configuration updated" msgid "Router configuration type saved." msgstr "Zaktualizowano ustawienia PVP" -#: plinth/modules/networks/templates/connection_show.html:43 +#: plinth/modules/networks/networks.py:474 +#, fuzzy +#| msgid "PVP configuration updated" +msgid "Internet connection type saved." +msgstr "Zaktualizowano ustawienia PVP" + +#: plinth/modules/networks/templates/connection_show.html:28 msgid "Edit connection" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:43 -#: plinth/modules/wireguard/templates/wireguard_show_client.html:83 -#: plinth/modules/wireguard/templates/wireguard_show_server.html:84 -#: plinth/templates/base.html:167 plinth/templates/base.html:168 +#: plinth/modules/networks/templates/connection_show.html:28 +#: plinth/modules/wireguard/templates/wireguard_show_client.html:68 +#: plinth/modules/wireguard/templates/wireguard_show_server.html:69 +#: plinth/templates/base.html:152 plinth/templates/base.html:153 msgid "Edit" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:50 -#: plinth/modules/networks/templates/connections_list.html:90 +#: plinth/modules/networks/templates/connection_show.html:35 +#: plinth/modules/networks/templates/connections_list.html:40 msgid "Deactivate" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:57 -#: plinth/modules/networks/templates/connections_list.html:98 +#: plinth/modules/networks/templates/connection_show.html:42 +#: plinth/modules/networks/templates/connections_list.html:48 msgid "Activate" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:63 +#: plinth/modules/networks/templates/connection_show.html:48 msgid "Delete connection" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:66 -#: plinth/modules/networks/templates/connections_diagram.html:73 -#: plinth/modules/networks/templates/connections_diagram.html:76 -#: plinth/modules/networks/templates/connections_diagram.html:105 -#: plinth/modules/networks/templates/connections_diagram.html:127 +#: plinth/modules/networks/templates/connection_show.html:51 +#: plinth/modules/networks/templates/connections_diagram.html:58 +#: plinth/modules/networks/templates/connections_diagram.html:61 +#: plinth/modules/networks/templates/connections_diagram.html:90 +#: plinth/modules/networks/templates/connections_diagram.html:112 msgid "Connection" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:71 +#: plinth/modules/networks/templates/connection_show.html:56 msgid "Primary connection" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:73 -#: plinth/modules/networks/templates/connection_show.html:217 -#: plinth/modules/networks/templates/connection_show.html:256 +#: plinth/modules/networks/templates/connection_show.html:58 +#: plinth/modules/networks/templates/connection_show.html:202 +#: plinth/modules/networks/templates/connection_show.html:241 msgid "yes" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:84 -#: plinth/modules/storage/templates/storage.html:40 +#: plinth/modules/networks/templates/connection_show.html:69 +#: plinth/modules/storage/templates/storage.html:25 msgid "Device" msgstr "Urządzenie" -#: plinth/modules/networks/templates/connection_show.html:88 +#: plinth/modules/networks/templates/connection_show.html:73 msgid "State" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:93 +#: plinth/modules/networks/templates/connection_show.html:78 msgid "State reason" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:102 +#: plinth/modules/networks/templates/connection_show.html:87 msgid "MAC address" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:106 +#: plinth/modules/networks/templates/connection_show.html:91 msgid "Interface" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:110 -#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:33 -#: plinth/modules/snapshot/templates/snapshot_manage.html:45 -#: plinth/modules/snapshot/templates/snapshot_rollback.html:41 +#: plinth/modules/networks/templates/connection_show.html:95 +#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:18 +#: plinth/modules/snapshot/templates/snapshot_manage.html:30 +#: plinth/modules/snapshot/templates/snapshot_rollback.html:26 msgid "Description" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:116 +#: plinth/modules/networks/templates/connection_show.html:101 msgid "Physical Link" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:121 +#: plinth/modules/networks/templates/connection_show.html:106 msgid "Link state" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:125 +#: plinth/modules/networks/templates/connection_show.html:110 msgid "cable is connected" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:128 +#: plinth/modules/networks/templates/connection_show.html:113 msgid "please check cable" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:133 -#: plinth/modules/networks/templates/connection_show.html:149 +#: plinth/modules/networks/templates/connection_show.html:118 +#: plinth/modules/networks/templates/connection_show.html:134 msgid "Speed" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:135 +#: plinth/modules/networks/templates/connection_show.html:120 #, python-format msgid "%(ethernet_speed)s Mbit/s" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:151 +#: plinth/modules/networks/templates/connection_show.html:136 #, python-format msgid "%(wireless_bitrate)s Mbit/s" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:163 +#: plinth/modules/networks/templates/connection_show.html:148 msgid "Signal strength" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:181 +#: plinth/modules/networks/templates/connection_show.html:166 msgid "IPv4" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:186 -#: plinth/modules/networks/templates/connection_show.html:227 -#: plinth/modules/shadowsocks/forms.py:64 +#: plinth/modules/networks/templates/connection_show.html:171 +#: plinth/modules/networks/templates/connection_show.html:212 +#: plinth/modules/shadowsocks/forms.py:49 msgid "Method" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:193 -#: plinth/modules/networks/templates/connection_show.html:234 +#: plinth/modules/networks/templates/connection_show.html:178 +#: plinth/modules/networks/templates/connection_show.html:219 msgid "IP address" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:209 -#: plinth/modules/networks/templates/connection_show.html:248 +#: plinth/modules/networks/templates/connection_show.html:194 +#: plinth/modules/networks/templates/connection_show.html:233 msgid "DNS server" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:216 -#: plinth/modules/networks/templates/connection_show.html:255 -#: plinth/modules/storage/forms.py:156 +#: plinth/modules/networks/templates/connection_show.html:201 +#: plinth/modules/networks/templates/connection_show.html:240 +#: plinth/modules/storage/forms.py:141 msgid "Default" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:222 +#: plinth/modules/networks/templates/connection_show.html:207 msgid "IPv6" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:263 +#: plinth/modules/networks/templates/connection_show.html:248 msgid "This connection is not active." msgstr "" -#: plinth/modules/networks/templates/connection_show.html:266 -#: plinth/modules/security/__init__.py:38 plinth/modules/security/views.py:47 +#: plinth/modules/networks/templates/connection_show.html:251 +#: plinth/modules/security/__init__.py:45 msgid "Security" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:271 -#: plinth/modules/networks/templates/connection_show.html:291 -#: plinth/modules/networks/templates/connection_show.html:310 +#: plinth/modules/networks/templates/connection_show.html:256 +#: plinth/modules/networks/templates/connection_show.html:276 +#: plinth/modules/networks/templates/connection_show.html:295 msgid "Firewall zone" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:280 +#: plinth/modules/networks/templates/connection_show.html:265 msgid "" "This interface should be connected to a local network/machine. If you " "connect this interface to a public network, services meant to be available " "only internally will become available externally. This is a security risk." msgstr "" -#: plinth/modules/networks/templates/connection_show.html:300 +#: plinth/modules/networks/templates/connection_show.html:285 msgid "" "This interface should receive your Internet connection. If you connect it to " "a local network/machine, many services meant to available only internally " "will not be available." msgstr "" -#: plinth/modules/networks/templates/connection_show.html:319 +#: plinth/modules/networks/templates/connection_show.html:304 #, python-format msgid "" "This interface is not maintained by %(box_name)s. Its security status is " @@ -3639,114 +3712,137 @@ msgid "" "connection and re-configure it." msgstr "" -#: plinth/modules/networks/templates/connections_create.html:34 +#: plinth/modules/networks/templates/connections_create.html:19 msgid "Create Connection" msgstr "" -#: plinth/modules/networks/templates/connections_delete.html:29 +#: plinth/modules/networks/templates/connections_delete.html:14 #, python-format msgid "Delete connection %(name)s permanently?" msgstr "" -#: plinth/modules/networks/templates/connections_diagram.html:65 +#: plinth/modules/networks/templates/connections_diagram.html:50 msgid "Internet" msgstr "" -#: plinth/modules/networks/templates/connections_diagram.html:70 -#: plinth/modules/networks/templates/connections_diagram.html:102 +#: plinth/modules/networks/templates/connections_diagram.html:55 +#: plinth/modules/networks/templates/connections_diagram.html:87 msgid "Spacing" msgstr "" -#: plinth/modules/networks/templates/connections_diagram.html:83 -#: plinth/modules/networks/templates/connections_diagram.html:113 -#: plinth/network.py:40 +#: plinth/modules/networks/templates/connections_diagram.html:68 +#: plinth/modules/networks/templates/connections_diagram.html:98 +#: plinth/network.py:25 msgid "Ethernet" msgstr "" -#: plinth/modules/networks/templates/connections_diagram.html:86 -#: plinth/modules/networks/templates/connections_diagram.html:116 -#: plinth/network.py:41 +#: plinth/modules/networks/templates/connections_diagram.html:71 +#: plinth/modules/networks/templates/connections_diagram.html:101 +#: plinth/network.py:26 msgid "Wi-Fi" msgstr "" -#: plinth/modules/networks/templates/connections_diagram.html:89 +#: plinth/modules/networks/templates/connections_diagram.html:74 #, python-format msgid "Show connection %(connection.name)s" msgstr "" -#: plinth/modules/networks/templates/connections_diagram.html:119 +#: plinth/modules/networks/templates/connections_diagram.html:104 #, python-format msgid "Show connection %(name)s" msgstr "" -#: plinth/modules/networks/templates/connections_diagram.html:131 +#: plinth/modules/networks/templates/connections_diagram.html:116 msgid "Computer" msgstr "" -#: plinth/modules/networks/templates/connections_list.html:58 +#: plinth/modules/networks/templates/connections_list.html:8 #, fuzzy #| msgid "Connection refused" msgid "Connections" msgstr "Odmowa dostępu" -#: plinth/modules/networks/templates/connections_list.html:79 +#: plinth/modules/networks/templates/connections_list.html:29 #, python-format msgid "Delete connection %(name)s" msgstr "" -#: plinth/modules/networks/templates/connections_list.html:104 +#: plinth/modules/networks/templates/connections_list.html:54 msgid "Active" msgstr "" -#: plinth/modules/networks/templates/connections_list.html:107 +#: plinth/modules/networks/templates/connections_list.html:57 msgid "Inactive" msgstr "" -#: plinth/modules/networks/templates/connections_list.html:124 -#, python-format -msgid "%(box_name)s Internet Connectivity" +#: plinth/modules/networks/templates/connections_type_select.html:19 +msgid "Create..." msgstr "" -#: plinth/modules/networks/templates/connections_list.html:129 -#, python-format +#: plinth/modules/networks/templates/internet_connectivity_content.html:10 +msgid "What Type Of Internet Connection Do You Have?" +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_content.html:16 msgid "" -"The following best describes how your %(box_name)s is connected in your " -"network. This information is used only to suggest necessary configuration " -"actions." +"Select an option that best describes the type of Internet connection. This " +"information is used only to guide you with further setup." msgstr "" -#: plinth/modules/networks/templates/connections_list.html:137 -#, python-format +#: plinth/modules/networks/templates/internet_connectivity_firstboot.html:18 +#: plinth/modules/networks/templates/router_configuration_firstboot.html:18 +msgid "Skip this step" +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_firstboot.html:19 +#: plinth/modules/networks/templates/router_configuration_firstboot.html:19 +msgid "Next" +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:9 +msgid "Your Internet Connection Type" +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:14 msgid "" -"Your %(box_name)s gets its internet from your Router via WiFi or Ethernet " -"cable. This is a typical home setup." +"The following best describes the type of Internet connection provided by " +"your ISP. This information is only used to suggest you necessary " +"configuration actions." msgstr "" -#: plinth/modules/networks/templates/connections_list.html:145 -#: plinth/modules/networks/templates/connections_list.html:147 +#: plinth/modules/networks/templates/internet_connectivity_main.html:23 +msgid "My ISP provides a public IP address that does not change over time." +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:27 +msgid "My ISP provides a public IP address that may change over time." +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:31 +msgid "My ISP does not provide a public IP address." +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:37 +#: plinth/modules/networks/templates/router_configuration_main.html:29 #, fuzzy #| msgid "Update URL" msgid "Update..." msgstr "Uaktualnij URL" -#: plinth/modules/networks/templates/connections_type_select.html:34 -msgid "Create..." -msgstr "" - -#: plinth/modules/networks/templates/router_configuration_content.html:25 +#: plinth/modules/networks/templates/router_configuration_content.html:10 #, fuzzy, python-format #| msgid "Plinth is up to date." msgid "Setup %(box_name)s Behind a Router" msgstr "Plinth jest aktualny." -#: plinth/modules/networks/templates/router_configuration_content.html:31 +#: plinth/modules/networks/templates/router_configuration_content.html:16 #, python-format msgid "" "Your %(box_name)s gets its internet connection from your router via Wi-Fi or " "Ethernet cable. This is a typical home setup." msgstr "" -#: plinth/modules/networks/templates/router_configuration_content.html:38 +#: plinth/modules/networks/templates/router_configuration_content.html:23 #, python-format msgid "" "With this setup, any device on the internet trying to reach your " @@ -3755,24 +3851,24 @@ msgid "" "the services." msgstr "" -#: plinth/modules/networks/templates/router_configuration_content.html:47 +#: plinth/modules/networks/templates/router_configuration_content.html:32 msgid "" "If you don't have control over your router, choose not to configure it. To " -"see options, to overcome this limitation, choose 'no public address' option " +"see options to overcome this limitation, choose 'no public address' option " "in Internet connection type selection." msgstr "" -#: plinth/modules/networks/templates/router_configuration_content.html:54 +#: plinth/modules/networks/templates/router_configuration_content.html:39 msgid "Choose How You Wish to Configure Your Router" msgstr "" -#: plinth/modules/networks/templates/router_configuration_content.html:57 +#: plinth/modules/networks/templates/router_configuration_content.html:42 msgid "" "You will need to login to your router's administration console provided by " "the router. This may look like one of the following:" msgstr "" -#: plinth/modules/networks/templates/router_configuration_content.html:69 +#: plinth/modules/networks/templates/router_configuration_content.html:54 msgid "" "The username and password is configured by you when you first setup the " "router. For many routers, this information is printed at the back of the " @@ -3782,24 +3878,27 @@ msgid "" "full instructions on how to perform this task." msgstr "" -#: plinth/modules/networks/templates/router_configuration_firstboot.html:33 -msgid "skip this step" +#: plinth/modules/networks/templates/router_configuration_main.html:9 +#, python-format +msgid "%(box_name)s Internet Connectivity" msgstr "" -#: plinth/modules/networks/templates/router_configuration_firstboot.html:35 -msgid "Next" +#: plinth/modules/networks/templates/router_configuration_main.html:15 +#, python-format +msgid "" +"The following best describes how your %(box_name)s is connected in your " +"network. This information is used only to suggest necessary configuration " +"actions." msgstr "" -#: plinth/modules/openvpn/__init__.py:39 plinth/modules/openvpn/manifest.py:33 -msgid "OpenVPN" +#: plinth/modules/networks/templates/router_configuration_main.html:23 +#, python-format +msgid "" +"Your %(box_name)s gets its Internet from your Router via Wi-Fi or Ethernet " +"cable. This is a typical home setup." msgstr "" -#: plinth/modules/openvpn/__init__.py:43 -#: plinth/modules/wireguard/__init__.py:40 -msgid "Virtual Private Network" -msgstr "" - -#: plinth/modules/openvpn/__init__.py:47 +#: plinth/modules/openvpn/__init__.py:26 #, python-brace-format msgid "" "Virtual Private Network (VPN) is a technique for securely connecting two " @@ -3810,21 +3909,30 @@ msgid "" "security and anonymity." msgstr "" -#: plinth/modules/openvpn/__init__.py:79 +#: plinth/modules/openvpn/__init__.py:49 plinth/modules/openvpn/manifest.py:18 +msgid "OpenVPN" +msgstr "" + +#: plinth/modules/openvpn/__init__.py:50 +#: plinth/modules/wireguard/__init__.py:53 +msgid "Virtual Private Network" +msgstr "" + +#: plinth/modules/openvpn/__init__.py:61 #, python-brace-format msgid "" "Download Profile" msgstr "" -#: plinth/modules/openvpn/forms.py:27 +#: plinth/modules/openvpn/forms.py:12 msgid "Enable OpenVPN server" msgstr "" -#: plinth/modules/openvpn/manifest.py:63 -msgid "TunnelBlick" +#: plinth/modules/openvpn/manifest.py:48 +msgid "Tunnelblick" msgstr "" -#: plinth/modules/openvpn/templates/openvpn.html:42 +#: plinth/modules/openvpn/templates/openvpn.html:27 #, python-format msgid "" "OpenVPN has not yet been setup. Performing a secure setup takes a very long " @@ -3832,15 +3940,15 @@ msgid "" "If the setup is interrupted, you may start it again." msgstr "" -#: plinth/modules/openvpn/templates/openvpn.html:55 +#: plinth/modules/openvpn/templates/openvpn.html:40 msgid "Start setup" msgstr "" -#: plinth/modules/openvpn/templates/openvpn.html:64 +#: plinth/modules/openvpn/templates/openvpn.html:49 msgid "OpenVPN setup is running" msgstr "" -#: plinth/modules/openvpn/templates/openvpn.html:68 +#: plinth/modules/openvpn/templates/openvpn.html:53 #, python-format msgid "" "To perform a secure setup, this process takes a very long time. Depending " @@ -3848,11 +3956,11 @@ msgid "" "interrupted, you may start it again." msgstr "" -#: plinth/modules/openvpn/templates/openvpn.html:87 +#: plinth/modules/openvpn/templates/openvpn.html:72 msgid "Profile" msgstr "" -#: plinth/modules/openvpn/templates/openvpn.html:90 +#: plinth/modules/openvpn/templates/openvpn.html:75 #, python-format msgid "" "To connect to %(box_name)s's VPN, you need to download a profile and feed it " @@ -3861,32 +3969,24 @@ msgid "" "clients and instructions on how to configure them." msgstr "" -#: plinth/modules/openvpn/templates/openvpn.html:100 +#: plinth/modules/openvpn/templates/openvpn.html:85 #, python-format msgid "Profile is specific to each user of %(box_name)s. Keep it a secret." msgstr "" -#: plinth/modules/openvpn/templates/openvpn.html:111 +#: plinth/modules/openvpn/templates/openvpn.html:96 msgid "Download my profile" msgstr "" -#: plinth/modules/openvpn/views.py:133 +#: plinth/modules/openvpn/views.py:114 msgid "Setup completed." msgstr "" -#: plinth/modules/openvpn/views.py:135 +#: plinth/modules/openvpn/views.py:116 msgid "Setup failed." msgstr "" -#: plinth/modules/pagekite/__init__.py:39 -msgid "PageKite" -msgstr "" - -#: plinth/modules/pagekite/__init__.py:41 -msgid "Public Visibility" -msgstr "" - -#: plinth/modules/pagekite/__init__.py:45 +#: plinth/modules/pagekite/__init__.py:26 #, python-brace-format msgid "" "PageKite is a system for exposing {box_name} services when you don't have a " @@ -3895,33 +3995,33 @@ msgid "" "following situations:" msgstr "" -#: plinth/modules/pagekite/__init__.py:50 +#: plinth/modules/pagekite/__init__.py:31 #, python-brace-format msgid "{box_name} is behind a restricted firewall." msgstr "" -#: plinth/modules/pagekite/__init__.py:53 +#: plinth/modules/pagekite/__init__.py:34 #, python-brace-format msgid "{box_name} is connected to a (wireless) router which you don't control." msgstr "" -#: plinth/modules/pagekite/__init__.py:55 +#: plinth/modules/pagekite/__init__.py:36 msgid "" "Your ISP does not provide you an external IP address and instead provides " "Internet connection through NAT." msgstr "" -#: plinth/modules/pagekite/__init__.py:57 +#: plinth/modules/pagekite/__init__.py:38 msgid "" "Your ISP does not provide you a static IP address and your IP address " "changes every time you connect to Internet." msgstr "" -#: plinth/modules/pagekite/__init__.py:59 +#: plinth/modules/pagekite/__init__.py:40 msgid "Your ISP limits incoming connections." msgstr "" -#: plinth/modules/pagekite/__init__.py:61 +#: plinth/modules/pagekite/__init__.py:42 #, python-brace-format msgid "" "PageKite works around NAT, firewalls and IP address limitations by using a " @@ -3930,138 +4030,146 @@ msgid "" "the future it might be possible to use your buddy's {box_name} for this." msgstr "" -#: plinth/modules/pagekite/__init__.py:87 +#: plinth/modules/pagekite/__init__.py:62 +msgid "PageKite" +msgstr "" + +#: plinth/modules/pagekite/__init__.py:64 +msgid "Public Visibility" +msgstr "" + +#: plinth/modules/pagekite/__init__.py:74 msgid "PageKite Domain" msgstr "" -#: plinth/modules/pagekite/forms.py:66 +#: plinth/modules/pagekite/forms.py:51 msgid "Server domain" msgstr "" -#: plinth/modules/pagekite/forms.py:68 +#: plinth/modules/pagekite/forms.py:53 msgid "" "Select your pagekite server. Set \"pagekite.net\" to use the default " "pagekite.net server." msgstr "" -#: plinth/modules/pagekite/forms.py:71 plinth/modules/shadowsocks/forms.py:55 +#: plinth/modules/pagekite/forms.py:56 plinth/modules/shadowsocks/forms.py:40 msgid "Server port" msgstr "" -#: plinth/modules/pagekite/forms.py:72 +#: plinth/modules/pagekite/forms.py:57 msgid "Port of your pagekite server (default: 80)" msgstr "" -#: plinth/modules/pagekite/forms.py:74 +#: plinth/modules/pagekite/forms.py:59 msgid "Kite name" msgstr "" -#: plinth/modules/pagekite/forms.py:75 +#: plinth/modules/pagekite/forms.py:60 msgid "Example: mybox.pagekite.me" msgstr "" -#: plinth/modules/pagekite/forms.py:77 +#: plinth/modules/pagekite/forms.py:62 msgid "Invalid kite name" msgstr "" -#: plinth/modules/pagekite/forms.py:81 +#: plinth/modules/pagekite/forms.py:66 msgid "Kite secret" msgstr "" -#: plinth/modules/pagekite/forms.py:82 +#: plinth/modules/pagekite/forms.py:67 msgid "" "A secret associated with the kite or the default secret for your account if " "no secret is set on the kite." msgstr "" -#: plinth/modules/pagekite/forms.py:98 +#: plinth/modules/pagekite/forms.py:83 msgid "Kite details set" msgstr "" -#: plinth/modules/pagekite/forms.py:105 +#: plinth/modules/pagekite/forms.py:90 msgid "Pagekite server set" msgstr "" -#: plinth/modules/pagekite/forms.py:129 +#: plinth/modules/pagekite/forms.py:114 msgid "PageKite enabled" msgstr "" -#: plinth/modules/pagekite/forms.py:132 +#: plinth/modules/pagekite/forms.py:117 msgid "PageKite disabled" msgstr "" -#: plinth/modules/pagekite/forms.py:148 +#: plinth/modules/pagekite/forms.py:133 msgid "protocol" msgstr "" -#: plinth/modules/pagekite/forms.py:151 +#: plinth/modules/pagekite/forms.py:136 msgid "external (frontend) port" msgstr "" -#: plinth/modules/pagekite/forms.py:154 +#: plinth/modules/pagekite/forms.py:139 msgid "internal (freedombox) port" msgstr "" -#: plinth/modules/pagekite/forms.py:155 +#: plinth/modules/pagekite/forms.py:140 msgid "Enable Subdomains" msgstr "" -#: plinth/modules/pagekite/forms.py:189 +#: plinth/modules/pagekite/forms.py:174 msgid "Deleted custom service" msgstr "" -#: plinth/modules/pagekite/forms.py:222 +#: plinth/modules/pagekite/forms.py:207 msgid "" "This service is available as a standard service. Please use the \"Standard " "Services\" page to enable it." msgstr "" -#: plinth/modules/pagekite/forms.py:231 +#: plinth/modules/pagekite/forms.py:216 msgid "Added custom service" msgstr "" -#: plinth/modules/pagekite/forms.py:234 +#: plinth/modules/pagekite/forms.py:219 msgid "This service already exists" msgstr "" -#: plinth/modules/pagekite/templates/pagekite_configure.html:47 +#: plinth/modules/pagekite/templates/pagekite_configure.html:32 msgid "Custom Services" msgstr "" -#: plinth/modules/pagekite/templates/pagekite_configure.html:50 -#: plinth/modules/pagekite/templates/pagekite_configure.html:52 +#: plinth/modules/pagekite/templates/pagekite_configure.html:35 +#: plinth/modules/pagekite/templates/pagekite_configure.html:37 msgid "Add Custom Service" msgstr "" -#: plinth/modules/pagekite/templates/pagekite_configure.html:57 +#: plinth/modules/pagekite/templates/pagekite_configure.html:42 msgid "Existing custom services" msgstr "" -#: plinth/modules/pagekite/templates/pagekite_configure.html:71 +#: plinth/modules/pagekite/templates/pagekite_configure.html:56 #, python-format msgid "connected to %(backend_host)s:%(backend_port)s" msgstr "" -#: plinth/modules/pagekite/templates/pagekite_configure.html:83 +#: plinth/modules/pagekite/templates/pagekite_configure.html:68 msgid "Delete this service" msgstr "" -#: plinth/modules/pagekite/templates/pagekite_custom_services.html:30 +#: plinth/modules/pagekite/templates/pagekite_custom_services.html:15 msgid "Add custom PageKite service" msgstr "" -#: plinth/modules/pagekite/templates/pagekite_custom_services.html:32 +#: plinth/modules/pagekite/templates/pagekite_custom_services.html:17 msgid "" "Warning:imaps://imap.gmail.com. "
@@ -4389,17 +4485,24 @@ msgid ""
"a>)."
msgstr ""
-#: plinth/modules/samba/__init__.py:46
-msgid "Samba"
+#: plinth/modules/roundcube/__init__.py:54
+#: plinth/modules/roundcube/manifest.py:9
+msgid "Roundcube"
msgstr ""
-#: plinth/modules/samba/__init__.py:53
+#: plinth/modules/roundcube/__init__.py:55
+#, fuzzy
+#| msgid "Dynamic DNS Client"
+msgid "Email Client"
+msgstr "Klient Dynamic DNS"
+
+#: plinth/modules/samba/__init__.py:32
msgid ""
"Samba allows to share files and folders between FreedomBox and other "
"computers in your local network."
msgstr ""
-#: plinth/modules/samba/__init__.py:56
+#: plinth/modules/samba/__init__.py:35
#, python-brace-format
msgid ""
"After installation, you can choose which disks to use for sharing. Enabled "
@@ -4408,53 +4511,57 @@ msgid ""
"There are three types of shares you can choose from: "
msgstr ""
-#: plinth/modules/samba/__init__.py:61
+#: plinth/modules/samba/__init__.py:40
msgid "Open share - accessible to everyone in your local network."
msgstr ""
-#: plinth/modules/samba/__init__.py:62
+#: plinth/modules/samba/__init__.py:41
msgid ""
"Group share - accessible only to FreedomBox users who are in the freedombox-"
"share group."
msgstr ""
-#: plinth/modules/samba/__init__.py:64
+#: plinth/modules/samba/__init__.py:43
msgid ""
"Home share - every user in the freedombox-share group can have their own "
"private space."
msgstr ""
-#: plinth/modules/samba/__init__.py:68
+#: plinth/modules/samba/__init__.py:47
msgid "Access to the private shares"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:39
-#: plinth/modules/samba/templates/samba.html:50
+#: plinth/modules/samba/__init__.py:61
+msgid "Samba"
+msgstr ""
+
+#: plinth/modules/samba/templates/samba.html:24
+#: plinth/modules/samba/templates/samba.html:35
msgid "Shares"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:41
+#: plinth/modules/samba/templates/samba.html:26
msgid ""
"Note: Only specially created directories will be shared on selected disks, "
"not the whole disk."
msgstr ""
-#: plinth/modules/samba/templates/samba.html:49
+#: plinth/modules/samba/templates/samba.html:34
#, fuzzy
#| msgid "Domain Name"
msgid "Disk Name"
msgstr "Nazwa domeny"
-#: plinth/modules/samba/templates/samba.html:51
-#: plinth/modules/storage/templates/storage.html:44
+#: plinth/modules/samba/templates/samba.html:36
+#: plinth/modules/storage/templates/storage.html:29
msgid "Used"
msgstr "W użyciu"
-#: plinth/modules/samba/templates/samba.html:72
+#: plinth/modules/samba/templates/samba.html:57
msgid "VFAT partitions are not supported"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:103
+#: plinth/modules/samba/templates/samba.html:88
#, python-format
msgid ""
"You can find additional information about disks on the users module page."
msgstr ""
-#: plinth/modules/samba/templates/samba.html:109
+#: plinth/modules/samba/templates/samba.html:94
msgid "Users who can currently access group and home shares"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:113
+#: plinth/modules/samba/templates/samba.html:98
msgid ""
"Users needing to re-enter their password on the password change page to "
"access group and home shares"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:118
+#: plinth/modules/samba/templates/samba.html:103
msgid "Unavailable Shares"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:120
+#: plinth/modules/samba/templates/samba.html:105
msgid ""
"Shares that are configured but the disk is not available. If the disk is "
"plugged back in, sharing will be automatically enabled."
msgstr ""
-#: plinth/modules/samba/templates/samba.html:128
+#: plinth/modules/samba/templates/samba.html:113
msgid "Share name"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:129
+#: plinth/modules/samba/templates/samba.html:114
#, fuzzy
#| msgid "Actions"
msgid "Action"
msgstr "Akcje"
-#: plinth/modules/samba/views.py:61 plinth/modules/storage/forms.py:164
+#: plinth/modules/samba/views.py:43 plinth/modules/storage/forms.py:149
msgid "Open Share"
msgstr ""
-#: plinth/modules/samba/views.py:62 plinth/modules/storage/forms.py:162
+#: plinth/modules/samba/views.py:44 plinth/modules/storage/forms.py:147
msgid "Group Share"
msgstr ""
-#: plinth/modules/samba/views.py:63
+#: plinth/modules/samba/views.py:45
#, fuzzy
#| msgid "Home"
msgid "Home Share"
msgstr "Dom"
-#: plinth/modules/samba/views.py:96
+#: plinth/modules/samba/views.py:78
msgid "Share enabled."
msgstr ""
-#: plinth/modules/samba/views.py:101
+#: plinth/modules/samba/views.py:83
#, fuzzy, python-brace-format
#| msgid "Error installing application: {error}"
msgid "Error enabling share: {error_message}"
msgstr "Błąd podczas instalowania aplikacji: {error}"
-#: plinth/modules/samba/views.py:106
+#: plinth/modules/samba/views.py:88
#, fuzzy
#| msgid "Application disabled"
msgid "Share disabled."
msgstr "Aplikacja wyłączona"
-#: plinth/modules/samba/views.py:111
+#: plinth/modules/samba/views.py:93
#, fuzzy, python-brace-format
#| msgid "Error installing application: {error}"
msgid "Error disabling share: {error_message}"
msgstr "Błąd podczas instalowania aplikacji: {error}"
-#: plinth/modules/searx/__init__.py:41 plinth/modules/searx/manifest.py:24
-msgid "Searx"
-msgstr ""
-
-#: plinth/modules/searx/__init__.py:45
-msgid "Web Search"
-msgstr ""
-
-#: plinth/modules/searx/__init__.py:48
+#: plinth/modules/searx/__init__.py:25
msgid ""
"Searx is a privacy-respecting Internet metasearch engine. It aggregrates and "
"displays results from multiple search engines."
msgstr ""
-#: plinth/modules/searx/__init__.py:50
+#: plinth/modules/searx/__init__.py:27
msgid ""
"Searx can be used to avoid tracking and profiling by search engines. It "
"stores no cookies by default."
msgstr ""
-#: plinth/modules/searx/__init__.py:54
+#: plinth/modules/searx/__init__.py:31
msgid "Search the web"
msgstr ""
-#: plinth/modules/searx/forms.py:30
+#: plinth/modules/searx/__init__.py:47 plinth/modules/searx/manifest.py:9
+msgid "Searx"
+msgstr ""
+
+#: plinth/modules/searx/__init__.py:48
+msgid "Web Search"
+msgstr ""
+
+#: plinth/modules/searx/forms.py:15
msgid "Safe Search"
msgstr ""
-#: plinth/modules/searx/forms.py:31
+#: plinth/modules/searx/forms.py:16
msgid "Select the default family filter to apply to your search results."
msgstr ""
-#: plinth/modules/searx/forms.py:32
+#: plinth/modules/searx/forms.py:17
msgid "None"
msgstr ""
-#: plinth/modules/searx/forms.py:32
+#: plinth/modules/searx/forms.py:17
msgid "Moderate"
msgstr ""
-#: plinth/modules/searx/forms.py:32
+#: plinth/modules/searx/forms.py:17
msgid "Strict"
msgstr ""
-#: plinth/modules/searx/forms.py:35
+#: plinth/modules/searx/forms.py:20
msgid "Allow Public Access"
msgstr ""
-#: plinth/modules/searx/forms.py:36
+#: plinth/modules/searx/forms.py:21
msgid "Allow this application to be used by anyone who can reach it."
msgstr ""
-#: plinth/modules/searx/views.py:59 plinth/modules/searx/views.py:70
-#: plinth/modules/tor/views.py:149 plinth/modules/tor/views.py:176
+#: plinth/modules/searx/views.py:39 plinth/modules/searx/views.py:50
+#: plinth/modules/tor/views.py:130 plinth/modules/tor/views.py:157
msgid "Configuration updated."
msgstr ""
-#: plinth/modules/security/forms.py:28
+#: plinth/modules/security/forms.py:13
msgid "Restrict console logins (recommended)"
msgstr ""
-#: plinth/modules/security/forms.py:29
+#: plinth/modules/security/forms.py:14
msgid ""
"When this option is enabled, only users in the \"admin\" group will be able "
"to log in to console or via SSH. Console users may be able to access some "
"services without further authorization."
msgstr ""
-#: plinth/modules/security/forms.py:34
+#: plinth/modules/security/forms.py:19
msgid "Fail2Ban (recommended)"
msgstr ""
-#: plinth/modules/security/forms.py:35
+#: plinth/modules/security/forms.py:20
msgid ""
"When this option is enabled, Fail2Ban will limit brute force break-in "
"attempts to the SSH server and other enabled password protected internet-"
"services."
msgstr ""
-#: plinth/modules/security/templates/security.html:26
-#: plinth/modules/security/templates/security.html:28
+#: plinth/modules/security/templates/security.html:11
+#: plinth/modules/security/templates/security.html:13
msgid "Show security report"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:25
-#: plinth/modules/security/views.py:87
+#: plinth/modules/security/templates/security_report.html:10
+#: plinth/modules/security/views.py:71
msgid "Security Report"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:27
+#: plinth/modules/security/templates/security_report.html:12
#, python-format
msgid ""
"The installed version of FreedomBox has %(count)s reported security "
"vulnerabilities."
msgstr ""
-#: plinth/modules/security/templates/security_report.html:33
+#: plinth/modules/security/templates/security_report.html:18
msgid ""
"The following table lists the current reported number, and historical count, "
"of security vulnerabilities for each installed app."
msgstr ""
-#: plinth/modules/security/templates/security_report.html:39
+#: plinth/modules/security/templates/security_report.html:24
msgid ""
"For apps that provide services, the \"Sandboxed\" column shows whether "
"sandboxing features are in use. Sandboxing mitigates the impact of a "
"potentially compromised app to the rest of the system."
msgstr ""
-#: plinth/modules/security/templates/security_report.html:46
+#: plinth/modules/security/templates/security_report.html:31
msgid ""
"\"Sandbox Coverage\" is a score of how effectively the service is isolated "
"from the rest of the system. It is only displayed while the service is "
"running."
msgstr ""
-#: plinth/modules/security/templates/security_report.html:55
+#: plinth/modules/security/templates/security_report.html:40
#, fuzzy
#| msgid "Name"
msgid "App Name"
msgstr "Nazwa"
-#: plinth/modules/security/templates/security_report.html:56
+#: plinth/modules/security/templates/security_report.html:41
msgid "Current Vulnerabilities"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:57
+#: plinth/modules/security/templates/security_report.html:42
msgid "Past Vulnerabilities"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:58
+#: plinth/modules/security/templates/security_report.html:43
#, fuzzy
#| msgid "Blocked"
msgid "Sandboxed"
msgstr "Zablokowano"
-#: plinth/modules/security/templates/security_report.html:59
+#: plinth/modules/security/templates/security_report.html:44
#, fuzzy
#| msgid "Blocked"
msgid "Sandbox Coverage"
msgstr "Zablokowano"
-#: plinth/modules/security/templates/security_report.html:70
+#: plinth/modules/security/templates/security_report.html:55
msgid "N/A"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:72
+#: plinth/modules/security/templates/security_report.html:57
msgid "Yes"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:74
+#: plinth/modules/security/templates/security_report.html:59
msgid "No"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:81
+#: plinth/modules/security/templates/security_report.html:66
#, fuzzy
#| msgid "deluge-web is not running"
msgid "Not running"
msgstr "Interfejs deluge nie jest uruchomiony"
-#: plinth/modules/security/views.py:69
+#: plinth/modules/security/views.py:53
#, python-brace-format
msgid "Error setting restricted access: {exception}"
msgstr "Błąd ustawienia ograniczonego dostępu: {exception}"
-#: plinth/modules/security/views.py:72
+#: plinth/modules/security/views.py:56
msgid "Updated security configuration"
msgstr "Zaktualizowano ustawienia bezpieczeństwa"
-#: plinth/modules/shaarli/__init__.py:34 plinth/modules/shaarli/manifest.py:23
-msgid "Shaarli"
-msgstr ""
-
-#: plinth/modules/shaarli/__init__.py:36
-msgid "Bookmarks"
-msgstr ""
-
-#: plinth/modules/shaarli/__init__.py:39
+#: plinth/modules/shaarli/__init__.py:20
msgid "Shaarli allows you to save and share bookmarks."
msgstr ""
-#: plinth/modules/shaarli/__init__.py:40
+#: plinth/modules/shaarli/__init__.py:21
msgid ""
"When enabled, Shaarli will be available from /shaarli path on the web server. Note that Shaarli "
@@ -4717,22 +4816,22 @@ msgid ""
"initial visit."
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:35
-msgid "Shadowsocks"
+#: plinth/modules/shaarli/__init__.py:39 plinth/modules/shaarli/manifest.py:8
+msgid "Shaarli"
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:39
-msgid "Socks5 Proxy"
+#: plinth/modules/shaarli/__init__.py:40
+msgid "Bookmarks"
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:46
+#: plinth/modules/shadowsocks/__init__.py:25
msgid ""
"Shadowsocks is a lightweight and secure SOCKS5 proxy, designed to protect "
"your Internet traffic. It can be used to bypass Internet filtering and "
"censorship."
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:50
+#: plinth/modules/shadowsocks/__init__.py:29
#, python-brace-format
msgid ""
"Your {box_name} can run a Shadowsocks client, that can connect to a "
@@ -4741,151 +4840,155 @@ msgid ""
"the Shadowsocks server."
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:55
+#: plinth/modules/shadowsocks/__init__.py:34
msgid ""
"To use Shadowsocks after setup, set the SOCKS5 proxy URL in your device, "
"browser or application to http://freedombox_address:1080/"
msgstr ""
-#: plinth/modules/shadowsocks/forms.py:28
-#: plinth/modules/shadowsocks/forms.py:29
+#: plinth/modules/shadowsocks/__init__.py:50
+msgid "Shadowsocks"
+msgstr ""
+
+#: plinth/modules/shadowsocks/__init__.py:52
+msgid "Socks5 Proxy"
+msgstr ""
+
+#: plinth/modules/shadowsocks/forms.py:13
+#: plinth/modules/shadowsocks/forms.py:14
msgid "Recommended"
msgstr ""
-#: plinth/modules/shadowsocks/forms.py:52
+#: plinth/modules/shadowsocks/forms.py:37
#, fuzzy
#| msgid "Chat Server"
msgid "Server"
msgstr "Serwer czatu"
-#: plinth/modules/shadowsocks/forms.py:53
+#: plinth/modules/shadowsocks/forms.py:38
msgid "Server hostname or IP address"
msgstr ""
-#: plinth/modules/shadowsocks/forms.py:57
+#: plinth/modules/shadowsocks/forms.py:42
msgid "Server port number"
msgstr ""
-#: plinth/modules/shadowsocks/forms.py:60
+#: plinth/modules/shadowsocks/forms.py:45
msgid "Password used to encrypt data. Must match server password."
msgstr ""
-#: plinth/modules/shadowsocks/forms.py:65
+#: plinth/modules/shadowsocks/forms.py:50
msgid "Encryption method. Must match setting on server."
msgstr ""
-#: plinth/modules/sharing/__init__.py:34
-msgid "Sharing"
-msgstr ""
-
-#: plinth/modules/sharing/__init__.py:38
+#: plinth/modules/sharing/__init__.py:21
#, python-brace-format
msgid ""
"Sharing allows you to share files and folders on your {box_name} over the "
"web with chosen groups of users."
msgstr ""
-#: plinth/modules/sharing/forms.py:33
+#: plinth/modules/sharing/__init__.py:38
+msgid "Sharing"
+msgstr ""
+
+#: plinth/modules/sharing/forms.py:18
msgid "Name of the share"
msgstr ""
-#: plinth/modules/sharing/forms.py:35
+#: plinth/modules/sharing/forms.py:20
msgid ""
"A lowercase alpha-numeric string that uniquely identifies a share. Example: "
"media."
msgstr ""
-#: plinth/modules/sharing/forms.py:39
+#: plinth/modules/sharing/forms.py:24
msgid "Path to share"
msgstr ""
-#: plinth/modules/sharing/forms.py:40
+#: plinth/modules/sharing/forms.py:25
msgid "Disk path to a folder on this server that you intend to share."
msgstr ""
-#: plinth/modules/sharing/forms.py:43
+#: plinth/modules/sharing/forms.py:28
msgid "Public share"
msgstr ""
-#: plinth/modules/sharing/forms.py:44
+#: plinth/modules/sharing/forms.py:29
msgid "Make files in this folder available to anyone with the link."
msgstr ""
-#: plinth/modules/sharing/forms.py:48
+#: plinth/modules/sharing/forms.py:33
msgid "User groups that can read the files in the share"
msgstr ""
-#: plinth/modules/sharing/forms.py:50
+#: plinth/modules/sharing/forms.py:35
msgid ""
"Users of the selected user groups will be able to read the files in the "
"share."
msgstr ""
-#: plinth/modules/sharing/forms.py:67
+#: plinth/modules/sharing/forms.py:52
msgid "A share with this name already exists."
msgstr ""
-#: plinth/modules/sharing/forms.py:78
+#: plinth/modules/sharing/forms.py:63
msgid "Shares should be either public or shared with at least one group"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:39
-#: plinth/modules/sharing/templates/sharing.html:42
+#: plinth/modules/sharing/templates/sharing.html:24
+#: plinth/modules/sharing/templates/sharing.html:27
msgid "Add share"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:47
+#: plinth/modules/sharing/templates/sharing.html:32
msgid "No shares currently configured."
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:53
+#: plinth/modules/sharing/templates/sharing.html:38
msgid "Disk Path"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:54
+#: plinth/modules/sharing/templates/sharing.html:39
msgid "Shared Over"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:55
+#: plinth/modules/sharing/templates/sharing.html:40
msgid "With Groups"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:73
+#: plinth/modules/sharing/templates/sharing.html:58
msgid "public access"
msgstr ""
-#: plinth/modules/sharing/views.py:55
+#: plinth/modules/sharing/views.py:39
msgid "Share added."
msgstr ""
-#: plinth/modules/sharing/views.py:60
+#: plinth/modules/sharing/views.py:44
msgid "Add Share"
msgstr ""
-#: plinth/modules/sharing/views.py:75
+#: plinth/modules/sharing/views.py:59
msgid "Share edited."
msgstr ""
-#: plinth/modules/sharing/views.py:80
+#: plinth/modules/sharing/views.py:64
msgid "Edit Share"
msgstr ""
-#: plinth/modules/sharing/views.py:111
+#: plinth/modules/sharing/views.py:95
msgid "Share deleted."
msgstr ""
-#: plinth/modules/snapshot/__init__.py:37
-msgid "Storage Snapshots"
-msgstr ""
-
-#: plinth/modules/snapshot/__init__.py:40
+#: plinth/modules/snapshot/__init__.py:23
msgid ""
"Snapshots allows creating and managing btrfs file system snapshots. These "
"can be used to roll back the system to a previously known good state in case "
"of unwanted changes to the system."
msgstr ""
-#: plinth/modules/snapshot/__init__.py:44
+#: plinth/modules/snapshot/__init__.py:27
#, no-python-format
msgid ""
"Snapshots are taken periodically (called timeline snapshots) and also before "
@@ -4893,210 +4996,210 @@ msgid ""
"cleaned up according to the settings below."
msgstr ""
-#: plinth/modules/snapshot/__init__.py:47
+#: plinth/modules/snapshot/__init__.py:30
msgid ""
"Snapshots currently work on btrfs file systems only and on the root "
"partition only. Snapshots are not a replacement for backups since they can only be stored on the same partition. "
msgstr ""
-#: plinth/modules/snapshot/forms.py:27
+#: plinth/modules/snapshot/__init__.py:52
+msgid "Storage Snapshots"
+msgstr ""
+
+#: plinth/modules/snapshot/forms.py:12
msgid "Free Disk Space to Maintain"
msgstr ""
-#: plinth/modules/snapshot/forms.py:28
+#: plinth/modules/snapshot/forms.py:13
msgid ""
"Maintain this percentage of free space on the disk. If free space falls "
"below this value, older snapshots are removed until this much free space is "
"regained. The default value is 30%."
msgstr ""
-#: plinth/modules/snapshot/forms.py:35
+#: plinth/modules/snapshot/forms.py:20
#, fuzzy
#| msgid "Delete %(name)s"
msgid "Timeline Snapshots"
msgstr "Usuń %(name)s"
-#: plinth/modules/snapshot/forms.py:36
+#: plinth/modules/snapshot/forms.py:21
msgid ""
"Enable or disable timeline snapshots (hourly, daily, monthly and yearly)."
msgstr ""
-#: plinth/modules/snapshot/forms.py:41
+#: plinth/modules/snapshot/forms.py:26
msgid "Software Installation Snapshots"
msgstr ""
-#: plinth/modules/snapshot/forms.py:42
+#: plinth/modules/snapshot/forms.py:27
msgid "Enable or disable snapshots before and after software installation"
msgstr ""
-#: plinth/modules/snapshot/forms.py:47
+#: plinth/modules/snapshot/forms.py:32
msgid "Hourly Snapshots Limit"
msgstr ""
-#: plinth/modules/snapshot/forms.py:48
+#: plinth/modules/snapshot/forms.py:33
msgid "Keep a maximum of this many hourly snapshots."
msgstr ""
-#: plinth/modules/snapshot/forms.py:51
+#: plinth/modules/snapshot/forms.py:36
#, fuzzy
#| msgid "Delete %(name)s"
msgid "Daily Snapshots Limit"
msgstr "Usuń %(name)s"
-#: plinth/modules/snapshot/forms.py:52
+#: plinth/modules/snapshot/forms.py:37
msgid "Keep a maximum of this many daily snapshots."
msgstr ""
-#: plinth/modules/snapshot/forms.py:55
+#: plinth/modules/snapshot/forms.py:40
#, fuzzy
#| msgid "Delete %(name)s"
msgid "Weekly Snapshots Limit"
msgstr "Usuń %(name)s"
-#: plinth/modules/snapshot/forms.py:56
+#: plinth/modules/snapshot/forms.py:41
msgid "Keep a maximum of this many weekly snapshots."
msgstr ""
-#: plinth/modules/snapshot/forms.py:59
+#: plinth/modules/snapshot/forms.py:44
msgid "Monthly Snapshots Limit"
msgstr ""
-#: plinth/modules/snapshot/forms.py:60
+#: plinth/modules/snapshot/forms.py:45
msgid "Keep a maximum of this many monthly snapshots."
msgstr ""
-#: plinth/modules/snapshot/forms.py:63
+#: plinth/modules/snapshot/forms.py:48
#, fuzzy
#| msgid "Delete %(name)s"
msgid "Yearly Snapshots Limit"
msgstr "Usuń %(name)s"
-#: plinth/modules/snapshot/forms.py:64
+#: plinth/modules/snapshot/forms.py:49
msgid ""
"Keep a maximum of this many yearly snapshots. The default value is 0 "
"(disabled)."
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:27
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:12
msgid "Delete the following snapshots permanently?"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:31
-#: plinth/modules/snapshot/templates/snapshot_manage.html:43
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:39
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:16
+#: plinth/modules/snapshot/templates/snapshot_manage.html:28
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:24
msgid "Number"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:32
-#: plinth/modules/snapshot/templates/snapshot_manage.html:44
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:40
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:17
+#: plinth/modules/snapshot/templates/snapshot_manage.html:29
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:25
msgid "Date"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:52
-#: plinth/modules/snapshot/templates/snapshot_manage.html:37
-#: plinth/modules/snapshot/views.py:196
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:37
+#: plinth/modules/snapshot/templates/snapshot_manage.html:22
+#: plinth/modules/snapshot/views.py:175
#, fuzzy
#| msgid "Delete %(name)s"
msgid "Delete Snapshots"
msgstr "Usuń %(name)s"
-#: plinth/modules/snapshot/templates/snapshot_manage.html:33
+#: plinth/modules/snapshot/templates/snapshot_manage.html:18
msgid "Create Snapshot"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_manage.html:46
+#: plinth/modules/snapshot/templates/snapshot_manage.html:31
msgid "Rollback"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_manage.html:57
+#: plinth/modules/snapshot/templates/snapshot_manage.html:42
msgid "active"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_manage.html:66
+#: plinth/modules/snapshot/templates/snapshot_manage.html:51
#, python-format
msgid "Rollback to snapshot #%(number)s"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_not_supported.html:26
+#: plinth/modules/snapshot/templates/snapshot_not_supported.html:11
#, python-format
msgid ""
"Your have a filesystem of type %(fs_type)s. Snapshots are "
"currently only available on %(types_supported)s filesystems."
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:27
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:12
msgid "Roll back the system to this snapshot?"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:30
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:15
msgid ""
"A new snapshot with the current state of the file system will be "
"automatically created. You will be able to undo a rollback by reverting to "
"the newly created snapshot."
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:57
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:42
#, python-format
msgid "Rollback to Snapshot #%(number)s"
msgstr ""
-#: plinth/modules/snapshot/views.py:45
+#: plinth/modules/snapshot/views.py:30
#, fuzzy
#| msgid "Delete %(name)s"
msgid "Manage Snapshots"
msgstr "Usuń %(name)s"
-#: plinth/modules/snapshot/views.py:98
+#: plinth/modules/snapshot/views.py:79
msgid "Created snapshot."
msgstr ""
-#: plinth/modules/snapshot/views.py:156
+#: plinth/modules/snapshot/views.py:135
#, fuzzy
#| msgid "Access rights configuration updated"
msgid "Storage snapshots configuration updated"
msgstr "Zaktualizowano ustawienia praw dostępu"
-#: plinth/modules/snapshot/views.py:160 plinth/modules/tor/views.py:79
+#: plinth/modules/snapshot/views.py:139 plinth/modules/tor/views.py:60
#, python-brace-format
msgid "Action error: {0} [{1}] [{2}]"
msgstr ""
-#: plinth/modules/snapshot/views.py:175
+#: plinth/modules/snapshot/views.py:154
#, fuzzy
#| msgid "Delete %(name)s"
msgid "Deleted all snapshots"
msgstr "Usuń %(name)s"
-#: plinth/modules/snapshot/views.py:179
+#: plinth/modules/snapshot/views.py:158
#, fuzzy
#| msgid "Delete %(name)s"
msgid "Deleted selected snapshots"
msgstr "Usuń %(name)s"
-#: plinth/modules/snapshot/views.py:184
+#: plinth/modules/snapshot/views.py:163
msgid "Snapshot is currently in use. Please try again later."
msgstr ""
-#: plinth/modules/snapshot/views.py:207
+#: plinth/modules/snapshot/views.py:186
#, python-brace-format
msgid "Rolled back to snapshot #{number}."
msgstr ""
-#: plinth/modules/snapshot/views.py:210
+#: plinth/modules/snapshot/views.py:189
msgid "The system must be restarted to complete the rollback."
msgstr ""
-#: plinth/modules/snapshot/views.py:222
+#: plinth/modules/snapshot/views.py:201
msgid "Rollback to Snapshot"
msgstr ""
-#: plinth/modules/ssh/__init__.py:43
-msgid "Secure Shell (SSH) Server"
-msgstr ""
-
-#: plinth/modules/ssh/__init__.py:46
+#: plinth/modules/ssh/__init__.py:29
msgid ""
"A Secure Shell server uses the secure shell protocol to accept connections "
"from remote computers. An authorized remote computer can perform "
@@ -5104,62 +5207,62 @@ msgid ""
"connections."
msgstr ""
-#: plinth/modules/ssh/forms.py:30
+#: plinth/modules/ssh/__init__.py:50
+msgid "Secure Shell (SSH) Server"
+msgstr ""
+
+#: plinth/modules/ssh/forms.py:15
#, fuzzy
#| msgid "Use HTTP basic authentication"
msgid "Disable password authentication"
msgstr "Użyj podstawowej autentyfikacji HTTP"
-#: plinth/modules/ssh/forms.py:31
+#: plinth/modules/ssh/forms.py:16
msgid ""
"Improves security by preventing password guessing. Ensure that you have "
"setup SSH keys in your administrator user account before enabling this "
"option."
msgstr ""
-#: plinth/modules/ssh/templates/ssh.html:26
+#: plinth/modules/ssh/templates/ssh.html:11
#, fuzzy
#| msgid "Administrator Account"
msgid "Server Fingerprints"
msgstr "Konto Administratora"
-#: plinth/modules/ssh/templates/ssh.html:29
+#: plinth/modules/ssh/templates/ssh.html:14
msgid ""
"When connecting to the server, ensure that the fingerprint shown by the SSH "
"client matches one of these fingerprints."
msgstr ""
-#: plinth/modules/ssh/templates/ssh.html:38
+#: plinth/modules/ssh/templates/ssh.html:23
msgid "Algorithm"
msgstr ""
-#: plinth/modules/ssh/templates/ssh.html:39
+#: plinth/modules/ssh/templates/ssh.html:24
msgid "Fingerprint"
msgstr ""
-#: plinth/modules/ssh/views.py:66
+#: plinth/modules/ssh/views.py:48
msgid "SSH authentication with password disabled."
msgstr ""
-#: plinth/modules/ssh/views.py:69
+#: plinth/modules/ssh/views.py:51
#, fuzzy
#| msgid "Authentication to remote server failed."
msgid "SSH authentication with password enabled."
msgstr "Nie powiodła się autoryzacja na zdalnym serwerze."
-#: plinth/modules/sso/__init__.py:30
+#: plinth/modules/sso/__init__.py:33
msgid "Single Sign On"
msgstr ""
-#: plinth/modules/sso/templates/login.html:35
+#: plinth/modules/sso/templates/login.html:20
msgid "Login"
msgstr ""
-#: plinth/modules/storage/__init__.py:39 plinth/modules/storage/__init__.py:331
-msgid "Storage"
-msgstr ""
-
-#: plinth/modules/storage/__init__.py:47
+#: plinth/modules/storage/__init__.py:30
#, python-brace-format
msgid ""
"This module allows you to manage storage media attached to your {box_name}. "
@@ -5167,152 +5270,156 @@ msgid ""
"media, expand the root partition etc."
msgstr ""
-#: plinth/modules/storage/__init__.py:224
+#: plinth/modules/storage/__init__.py:52 plinth/modules/storage/__init__.py:318
+msgid "Storage"
+msgstr ""
+
+#: plinth/modules/storage/__init__.py:211
#, fuzzy, python-brace-format
#| msgid "{disk_size} bytes"
msgid "{disk_size:.1f} bytes"
msgstr "{disk_size} bajtów"
-#: plinth/modules/storage/__init__.py:228
+#: plinth/modules/storage/__init__.py:215
#, fuzzy, python-brace-format
msgid "{disk_size:.1f} KiB"
msgstr "{disk_size} KiB"
-#: plinth/modules/storage/__init__.py:232
+#: plinth/modules/storage/__init__.py:219
#, fuzzy, python-brace-format
msgid "{disk_size:.1f} MiB"
msgstr "{disk_size} MiB"
-#: plinth/modules/storage/__init__.py:236
+#: plinth/modules/storage/__init__.py:223
#, fuzzy, python-brace-format
msgid "{disk_size:.1f} GiB"
msgstr "{disk_size} GiB"
-#: plinth/modules/storage/__init__.py:239
+#: plinth/modules/storage/__init__.py:226
#, fuzzy, python-brace-format
msgid "{disk_size:.1f} TiB"
msgstr "{disk_size} TiB"
-#: plinth/modules/storage/__init__.py:246
+#: plinth/modules/storage/__init__.py:233
msgid "The operation failed."
msgstr ""
-#: plinth/modules/storage/__init__.py:248
+#: plinth/modules/storage/__init__.py:235
msgid "The operation was cancelled."
msgstr ""
-#: plinth/modules/storage/__init__.py:250
+#: plinth/modules/storage/__init__.py:237
msgid "The device is already unmounting."
msgstr ""
-#: plinth/modules/storage/__init__.py:252
+#: plinth/modules/storage/__init__.py:239
msgid "The operation is not supported due to missing driver/tool support."
msgstr ""
-#: plinth/modules/storage/__init__.py:255
+#: plinth/modules/storage/__init__.py:242
msgid "The operation timed out."
msgstr ""
-#: plinth/modules/storage/__init__.py:257
+#: plinth/modules/storage/__init__.py:244
msgid "The operation would wake up a disk that is in a deep-sleep state."
msgstr ""
-#: plinth/modules/storage/__init__.py:260
+#: plinth/modules/storage/__init__.py:247
msgid "Attempting to unmount a device that is busy."
msgstr ""
-#: plinth/modules/storage/__init__.py:262
+#: plinth/modules/storage/__init__.py:249
msgid "The operation has already been cancelled."
msgstr ""
-#: plinth/modules/storage/__init__.py:268
+#: plinth/modules/storage/__init__.py:255
msgid "Not authorized to perform the requested operation."
msgstr ""
-#: plinth/modules/storage/__init__.py:270
+#: plinth/modules/storage/__init__.py:257
#, fuzzy
#| msgid "The requested domain is already registered."
msgid "The device is already mounted."
msgstr "Wnioskowana domena jest już zarejstrowana."
-#: plinth/modules/storage/__init__.py:272
+#: plinth/modules/storage/__init__.py:259
msgid "The device is not mounted."
msgstr ""
-#: plinth/modules/storage/__init__.py:275
+#: plinth/modules/storage/__init__.py:262
msgid "Not permitted to use the requested option."
msgstr ""
-#: plinth/modules/storage/__init__.py:278
+#: plinth/modules/storage/__init__.py:265
msgid "The device is mounted by another user."
msgstr ""
-#: plinth/modules/storage/__init__.py:326
+#: plinth/modules/storage/__init__.py:313
#, no-python-format, python-brace-format
msgid "Low space on system partition: {percent_used}% used, {free_space} free."
msgstr ""
-#: plinth/modules/storage/__init__.py:328
+#: plinth/modules/storage/__init__.py:315
msgid "Low disk space"
msgstr ""
-#: plinth/modules/storage/forms.py:79
+#: plinth/modules/storage/forms.py:64
#, fuzzy
#| msgid "Invalid hostname"
msgid "Invalid directory name."
msgstr "Niewłaściwa nazwa hosta"
-#: plinth/modules/storage/forms.py:97
+#: plinth/modules/storage/forms.py:82
msgid "Directory does not exist."
msgstr ""
-#: plinth/modules/storage/forms.py:99
+#: plinth/modules/storage/forms.py:84
msgid "Path is not a directory."
msgstr ""
-#: plinth/modules/storage/forms.py:102
+#: plinth/modules/storage/forms.py:87
msgid "Directory is not readable by the user."
msgstr ""
-#: plinth/modules/storage/forms.py:105
+#: plinth/modules/storage/forms.py:90
msgid "Directory is not writable by the user."
msgstr ""
-#: plinth/modules/storage/forms.py:110
+#: plinth/modules/storage/forms.py:95
msgid "Directory"
msgstr ""
-#: plinth/modules/storage/forms.py:113
+#: plinth/modules/storage/forms.py:98
msgid "Subdirectory (optional)"
msgstr ""
-#: plinth/modules/storage/forms.py:160
+#: plinth/modules/storage/forms.py:145
msgid "Share"
msgstr ""
-#: plinth/modules/storage/forms.py:168
+#: plinth/modules/storage/forms.py:153
msgid "Other directory (specify below)"
msgstr ""
-#: plinth/modules/storage/templates/storage.html:35
+#: plinth/modules/storage/templates/storage.html:20
#, fuzzy
#| msgid "The following disks are in use:"
msgid "The following storage devices are in use:"
msgstr "Używane są następujące dyski:"
-#: plinth/modules/storage/templates/storage.html:41
+#: plinth/modules/storage/templates/storage.html:26
msgid "Label"
msgstr ""
-#: plinth/modules/storage/templates/storage.html:42
+#: plinth/modules/storage/templates/storage.html:27
msgid "Mount Point"
msgstr "Punkt montowania"
-#: plinth/modules/storage/templates/storage.html:90
+#: plinth/modules/storage/templates/storage.html:75
msgid "Partition Expansion"
msgstr ""
-#: plinth/modules/storage/templates/storage.html:92
+#: plinth/modules/storage/templates/storage.html:77
#, python-format
msgid ""
"There is %(expandable_root_size)s of unallocated space available after your "
@@ -5324,13 +5431,13 @@ msgstr ""
"przestrzeń. W ten sposób można uzyskać dodatkową przestrzeń na przechowanie "
"plików."
-#: plinth/modules/storage/templates/storage.html:102
-#: plinth/modules/storage/templates/storage_expand.html:39
-#: plinth/modules/storage/views.py:76
+#: plinth/modules/storage/templates/storage.html:87
+#: plinth/modules/storage/templates/storage_expand.html:24
+#: plinth/modules/storage/views.py:58
msgid "Expand Root Partition"
msgstr "Rozszerz główną partycję"
-#: plinth/modules/storage/templates/storage_expand.html:29
+#: plinth/modules/storage/templates/storage_expand.html:14
#, python-format
msgid ""
"Please backup your data before proceeding. After this operation, "
@@ -5340,39 +5447,30 @@ 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/storage/views.py:88
+#: plinth/modules/storage/views.py:70
#, python-brace-format
msgid "Error expanding partition: {exception}"
msgstr "Błąd rozszerzania partycji: {exception}"
-#: plinth/modules/storage/views.py:91
+#: plinth/modules/storage/views.py:73
msgid "Partition expanded successfully."
msgstr "Partycja rozszerzona."
-#: plinth/modules/storage/views.py:109
+#: plinth/modules/storage/views.py:91
#, python-brace-format
msgid "{drive_vendor} {drive_model} can be safely unplugged."
msgstr ""
-#: plinth/modules/storage/views.py:113
+#: plinth/modules/storage/views.py:95
msgid "Device can be safely unplugged."
msgstr ""
-#: plinth/modules/storage/views.py:123
+#: plinth/modules/storage/views.py:105
#, python-brace-format
msgid "Error ejecting device: {error_message}"
msgstr ""
-#: plinth/modules/syncthing/__init__.py:40
-#: plinth/modules/syncthing/manifest.py:28
-msgid "Syncthing"
-msgstr ""
-
-#: plinth/modules/syncthing/__init__.py:44
-msgid "File Synchronization"
-msgstr ""
-
-#: plinth/modules/syncthing/__init__.py:47
+#: plinth/modules/syncthing/__init__.py:26
msgid ""
"Syncthing is an application to synchronize files across multiple devices, e."
"g. your desktop computer and mobile phone. Creation, modification, or "
@@ -5380,7 +5478,7 @@ msgid ""
"other devices that also run Syncthing."
msgstr ""
-#: plinth/modules/syncthing/__init__.py:52
+#: plinth/modules/syncthing/__init__.py:31
#, python-brace-format
msgid ""
"Running Syncthing on {box_name} provides an extra synchronization point for "
@@ -5391,19 +5489,20 @@ msgid ""
"{box_name} is only available for users belonging to the \"admin\" group."
msgstr ""
-#: plinth/modules/syncthing/__init__.py:63
+#: plinth/modules/syncthing/__init__.py:40
msgid "Administer Syncthing application"
msgstr ""
-#: plinth/modules/tahoe/__init__.py:43
-msgid "Tahoe-LAFS"
+#: plinth/modules/syncthing/__init__.py:54
+#: plinth/modules/syncthing/manifest.py:13
+msgid "Syncthing"
msgstr ""
-#: plinth/modules/tahoe/__init__.py:47
-msgid "Distributed File Storage"
+#: plinth/modules/syncthing/__init__.py:55
+msgid "File Synchronization"
msgstr ""
-#: plinth/modules/tahoe/__init__.py:134
+#: plinth/modules/tahoe/__init__.py:30
msgid ""
"Tahoe-LAFS is a decentralized secure file storage system. It uses provider "
"independent security to store files over a distributed network of storage "
@@ -5411,7 +5510,7 @@ msgid ""
"remaining nodes."
msgstr ""
-#: plinth/modules/tahoe/__init__.py:139
+#: plinth/modules/tahoe/__init__.py:35
#, python-brace-format
msgid ""
"This {box_name} hosts a storage node and an introducer by default. "
@@ -5419,7 +5518,15 @@ msgid ""
"other storage nodes."
msgstr ""
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:33
+#: plinth/modules/tahoe/__init__.py:66
+msgid "Tahoe-LAFS"
+msgstr ""
+
+#: plinth/modules/tahoe/__init__.py:68
+msgid "Distributed File Storage"
+msgstr ""
+
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:17
#, python-format
msgid ""
"The Tahoe-LAFS server domain is set to %(domain_name)s. Changing the "
@@ -5428,37 +5535,33 @@ msgid ""
"%(domain_name)s:5678\">https://%(domain_name)s:5678."
msgstr ""
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:55
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:39
msgid "Local introducer"
msgstr ""
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:43
#: plinth/modules/tahoe/templates/tahoe-post-setup.html:59
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:75
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:92
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:76
msgid "Pet Name"
msgstr ""
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:72
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:56
msgid "Add new introducer"
msgstr ""
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:83
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:67
msgid "Add"
msgstr ""
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:88
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:72
msgid "Connected introducers"
msgstr ""
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:105
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:89
msgid "Remove"
msgstr ""
-#: plinth/modules/tor/__init__.py:47
-msgid "Tor"
-msgstr ""
-
-#: plinth/modules/tor/__init__.py:52
+#: plinth/modules/tor/__init__.py:33
msgid ""
"Tor is an anonymous communication system. You can learn more about it from "
"the Tor Project website. For "
@@ -5467,76 +5570,80 @@ msgid ""
"\">Tor Browser."
msgstr ""
-#: plinth/modules/tor/__init__.py:83
+#: plinth/modules/tor/__init__.py:55
+msgid "Tor"
+msgstr ""
+
+#: plinth/modules/tor/__init__.py:66
msgid "Tor Onion Service"
msgstr ""
-#: plinth/modules/tor/__init__.py:87
+#: plinth/modules/tor/__init__.py:70
msgid "Tor Socks Proxy"
msgstr ""
-#: plinth/modules/tor/__init__.py:91
+#: plinth/modules/tor/__init__.py:74
msgid "Tor Bridge Relay"
msgstr ""
-#: plinth/modules/tor/__init__.py:112
+#: plinth/modules/tor/__init__.py:95
msgid "Tor relay port available"
msgstr ""
-#: plinth/modules/tor/__init__.py:122
+#: plinth/modules/tor/__init__.py:105
msgid "Obfs3 transport registered"
msgstr ""
-#: plinth/modules/tor/__init__.py:132
+#: plinth/modules/tor/__init__.py:115
msgid "Obfs4 transport registered"
msgstr ""
-#: plinth/modules/tor/__init__.py:225
+#: plinth/modules/tor/__init__.py:208
#, python-brace-format
msgid "Access URL {url} on tcp{kind} via Tor"
msgstr ""
-#: plinth/modules/tor/__init__.py:236
+#: plinth/modules/tor/__init__.py:219
#, python-brace-format
msgid "Confirm Tor usage at {url} on tcp{kind}"
msgstr ""
-#: plinth/modules/tor/forms.py:46
+#: plinth/modules/tor/forms.py:31
msgid ""
"Enter a valid bridge with this format: [transport] IP:ORPort [fingerprint]"
msgstr ""
-#: plinth/modules/tor/forms.py:88
+#: plinth/modules/tor/forms.py:73
msgid "Enable Tor"
msgstr ""
-#: plinth/modules/tor/forms.py:90
+#: plinth/modules/tor/forms.py:75
msgid "Use upstream bridges to connect to Tor network"
msgstr ""
-#: plinth/modules/tor/forms.py:92
+#: plinth/modules/tor/forms.py:77
msgid ""
"When enabled, the bridges configured below will be used to connect to the "
"Tor network. Use this option if your Internet Service Provider (ISP) blocks "
"or censors connections to the Tor Network. This will disable relay modes."
msgstr ""
-#: plinth/modules/tor/forms.py:97
+#: plinth/modules/tor/forms.py:82
msgid "Upstream bridges"
msgstr ""
-#: plinth/modules/tor/forms.py:99
+#: plinth/modules/tor/forms.py:84
msgid ""
"You can get some bridges from https://bridges.torproject.org/ and copy/paste the bridge information "
"here. Currently supported transports are none, obfs3, obfs4 and scamblesuit."
msgstr ""
-#: plinth/modules/tor/forms.py:105
+#: plinth/modules/tor/forms.py:90
msgid "Enable Tor relay"
msgstr "Włącz przekaźnik Tora"
-#: plinth/modules/tor/forms.py:106
+#: plinth/modules/tor/forms.py:91
#, python-brace-format
msgid ""
"When enabled, your {box_name} will run a Tor relay and donate bandwidth to "
@@ -5544,24 +5651,24 @@ msgid ""
"download bandwidth."
msgstr ""
-#: plinth/modules/tor/forms.py:111
+#: plinth/modules/tor/forms.py:96
msgid "Enable Tor bridge relay"
msgstr ""
-#: plinth/modules/tor/forms.py:113
+#: plinth/modules/tor/forms.py:98
msgid ""
"When enabled, relay information is published in the Tor bridge database "
"instead of public Tor relay database making it harder to censor this node. "
"This helps others circumvent censorship."
msgstr ""
-#: plinth/modules/tor/forms.py:118
+#: plinth/modules/tor/forms.py:103
#, fuzzy
#| msgid "Enable Tor relay"
msgid "Enable Tor Hidden Service"
msgstr "Włącz przekaźnik Tora"
-#: plinth/modules/tor/forms.py:120
+#: plinth/modules/tor/forms.py:105
#, python-brace-format
msgid ""
"A hidden service will allow {box_name} to provide selected services (such as "
@@ -5569,90 +5676,82 @@ msgid ""
"anonymity yet."
msgstr ""
-#: plinth/modules/tor/forms.py:125
+#: plinth/modules/tor/forms.py:110
msgid "Download software packages over Tor"
msgstr ""
-#: plinth/modules/tor/forms.py:126
+#: plinth/modules/tor/forms.py:111
msgid ""
"When enabled, software will be downloaded over the Tor network for "
"installations and upgrades. This adds a degree of privacy and security "
"during software downloads."
msgstr ""
-#: plinth/modules/tor/forms.py:141
+#: plinth/modules/tor/forms.py:126
msgid "Specify at least one upstream bridge to use upstream bridges."
msgstr ""
-#: plinth/modules/tor/manifest.py:29
+#: plinth/modules/tor/manifest.py:14
msgid "Tor Browser"
msgstr ""
-#: plinth/modules/tor/manifest.py:45
+#: plinth/modules/tor/manifest.py:30
msgid "Orbot: Proxy with Tor"
msgstr ""
-#: plinth/modules/tor/templates/tor.html:41
+#: plinth/modules/tor/templates/tor.html:26
msgid "Tor configuration is being updated"
msgstr ""
-#: plinth/modules/tor/templates/tor.html:50
+#: plinth/modules/tor/templates/tor.html:35
#, fuzzy
#| msgid "Dynamic DNS Service"
msgid "Onion Service"
msgstr "Usługa dynamicznego DNS"
-#: plinth/modules/tor/templates/tor.html:52
+#: plinth/modules/tor/templates/tor.html:37
msgid "Ports"
msgstr ""
-#: plinth/modules/tor/templates/tor.html:82
+#: plinth/modules/tor/templates/tor.html:67
msgid "Relay"
msgstr ""
-#: plinth/modules/tor/templates/tor.html:84
+#: plinth/modules/tor/templates/tor.html:69
#, python-format
msgid ""
"If your %(box_name)s is behind a router or firewall, you should make sure "
"the following ports are open, and port-forwarded, if necessary:"
msgstr ""
-#: plinth/modules/tor/templates/tor.html:112
+#: plinth/modules/tor/templates/tor.html:97
msgid "SOCKS"
msgstr ""
-#: plinth/modules/tor/templates/tor.html:115
+#: plinth/modules/tor/templates/tor.html:100
#, python-format
msgid "A Tor SOCKS port is available on your %(box_name)s on TCP port 9050."
msgstr ""
-#: plinth/modules/transmission/__init__.py:41
-#: plinth/modules/transmission/manifest.py:24
-msgid "Transmission"
-msgstr ""
-
-#: plinth/modules/transmission/__init__.py:48
+#: plinth/modules/transmission/__init__.py:27
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/ttrss/__init__.py:43 plinth/modules/ttrss/manifest.py:34
-msgid "Tiny Tiny RSS"
+#: plinth/modules/transmission/__init__.py:48
+#: plinth/modules/transmission/manifest.py:9
+msgid "Transmission"
msgstr ""
-#: plinth/modules/ttrss/__init__.py:47
-msgid "News Feed Reader"
-msgstr ""
-
-#: plinth/modules/ttrss/__init__.py:50
+#: plinth/modules/ttrss/__init__.py:29
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:54
+#: plinth/modules/ttrss/__init__.py:33
#, fuzzy, python-brace-format
#| msgid ""
#| "When enabled, Cockpit will be available from /"
@@ -5666,129 +5765,133 @@ msgstr ""
"href=\"/_cockpit/\">/_cockpit/. Dostęp do niego mają użytkownicy {box_name} z do grupy administratorów."
-#: plinth/modules/ttrss/__init__.py:58
+#: plinth/modules/ttrss/__init__.py:37
msgid ""
"When using a mobile or desktop application for Tiny Tiny RSS, use the URL /tt-rss-app for "
"connecting."
msgstr ""
-#: plinth/modules/ttrss/__init__.py:65
+#: plinth/modules/ttrss/__init__.py:42
msgid "Read and subscribe to news feeds"
msgstr ""
-#: plinth/modules/ttrss/manifest.py:25
+#: plinth/modules/ttrss/__init__.py:56 plinth/modules/ttrss/manifest.py:19
+msgid "Tiny Tiny RSS"
+msgstr ""
+
+#: plinth/modules/ttrss/__init__.py:57
+msgid "News Feed Reader"
+msgstr ""
+
+#: plinth/modules/ttrss/manifest.py:10
msgid "Tiny Tiny RSS (Fork)"
msgstr ""
-#: plinth/modules/upgrades/__init__.py:37 plinth/templates/setup.html:89
-msgid "Update"
-msgstr ""
-
-#: plinth/modules/upgrades/__init__.py:40
+#: plinth/modules/upgrades/__init__.py:23
msgid "Check for and apply the latest software and security updates."
msgstr ""
-#: plinth/modules/upgrades/__init__.py:84
+#: plinth/modules/upgrades/__init__.py:38 plinth/templates/setup.html:74
+msgid "Update"
+msgstr ""
+
+#: plinth/modules/upgrades/__init__.py:71
#, fuzzy
#| msgid "FreedomBox Foundation"
msgid "FreedomBox Updated"
msgstr "Fundacja FreedomBox"
-#: plinth/modules/upgrades/forms.py:28
+#: plinth/modules/upgrades/forms.py:13
#, fuzzy
#| msgid "Enable creative mode"
msgid "Enable auto-update"
msgstr "Włącz tryb kreatywny"
-#: plinth/modules/upgrades/forms.py:29
+#: plinth/modules/upgrades/forms.py:14
msgid "When enabled, FreedomBox automatically updates once a day."
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades-new-release.html:24
+#: plinth/modules/upgrades/templates/upgrades-new-release.html:9
#, fuzzy, python-format
#| msgid "Plinth is up to date."
msgid "%(box_name)s Updated"
msgstr "Plinth jest aktualny."
-#: plinth/modules/upgrades/templates/upgrades-new-release.html:28
+#: plinth/modules/upgrades/templates/upgrades-new-release.html:13
#, python-format
msgid ""
"%(box_name)s has been updated to version %(version)s. See the release announcement."
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades-new-release.html:37
-#: plinth/templates/notifications.html:59
+#: plinth/modules/upgrades/templates/upgrades-new-release.html:22
+#: plinth/templates/notifications.html:44
msgid "Dismiss"
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades.html:45
+#: plinth/modules/upgrades/templates/upgrades.html:30
#, fuzzy
#| msgid "Update URL"
msgid "Update now"
msgstr "Uaktualnij URL"
-#: plinth/modules/upgrades/templates/upgrades.html:54
+#: plinth/modules/upgrades/templates/upgrades.html:39
msgid "Updating..."
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades.html:59
+#: plinth/modules/upgrades/templates/upgrades.html:44
msgid ""
"This may take a long time to complete. During an update, "
"you cannot install apps. Also, this web interface may be temporarily "
"unavailable and show an error. In that case, refresh the page to continue."
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades.html:73
+#: plinth/modules/upgrades/templates/upgrades.html:58
msgid "Toggle recent update logs"
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades_configure.html:26
-#: plinth/modules/upgrades/templates/upgrades_configure.html:27
-#: plinth/modules/upgrades/views.py:107
+#: plinth/modules/upgrades/templates/upgrades_configure.html:11
+#: plinth/modules/upgrades/templates/upgrades_configure.html:12
+#: plinth/modules/upgrades/views.py:89
#, fuzzy
#| msgid "Last update"
msgid "Manual update"
msgstr "Ostatnie uaktualnienie"
-#: plinth/modules/upgrades/views.py:66
+#: plinth/modules/upgrades/views.py:48
#, python-brace-format
msgid "Error when configuring unattended-upgrades: {error}"
msgstr ""
-#: plinth/modules/upgrades/views.py:70
+#: plinth/modules/upgrades/views.py:52
msgid "Automatic upgrades enabled"
msgstr ""
-#: plinth/modules/upgrades/views.py:73
+#: plinth/modules/upgrades/views.py:55
msgid "Automatic upgrades disabled"
msgstr ""
-#: plinth/modules/upgrades/views.py:75
+#: plinth/modules/upgrades/views.py:57
msgid "Settings unchanged"
msgstr ""
-#: plinth/modules/upgrades/views.py:101
+#: plinth/modules/upgrades/views.py:83
msgid "Upgrade process started."
msgstr ""
-#: plinth/modules/upgrades/views.py:104
+#: plinth/modules/upgrades/views.py:86
msgid "Starting upgrade failed."
msgstr ""
-#: plinth/modules/users/__init__.py:51
-msgid "Users and Groups"
-msgstr ""
-
-#: plinth/modules/users/__init__.py:54
+#: plinth/modules/users/__init__.py:37
msgid ""
"Create and managed user accounts. These accounts serve as centralized "
"authentication mechanism for most apps. Some apps further require a user "
"account to be part of a group to authorize the user to access the app."
msgstr ""
-#: plinth/modules/users/__init__.py:59
+#: plinth/modules/users/__init__.py:42
#, python-brace-format
msgid ""
"Any user may login to {box_name} web interface to see a list of apps "
@@ -5796,35 +5899,39 @@ msgid ""
"group may alter apps or system settings."
msgstr ""
-#: plinth/modules/users/__init__.py:128
+#: plinth/modules/users/__init__.py:64
+msgid "Users and Groups"
+msgstr ""
+
+#: plinth/modules/users/__init__.py:115
#, python-brace-format
msgid "Check LDAP entry \"{search_item}\""
msgstr ""
-#: plinth/modules/users/forms.py:43
+#: plinth/modules/users/forms.py:28
msgid "Access to all services and system settings"
msgstr ""
-#: plinth/modules/users/forms.py:59
+#: plinth/modules/users/forms.py:44
msgid "Username is taken or is reserved."
msgstr ""
-#: plinth/modules/users/forms.py:87
+#: plinth/modules/users/forms.py:72
#, fuzzy
#| msgid "Invalid server name"
msgid "Enter a valid username."
msgstr "Niewłaściwa nazwa użytkownika"
-#: plinth/modules/users/forms.py:93
+#: plinth/modules/users/forms.py:78
msgid ""
"Required. 150 characters or fewer. English letters, digits and @/./-/_ only."
msgstr ""
-#: plinth/modules/users/forms.py:106 plinth/modules/users/forms.py:222
+#: plinth/modules/users/forms.py:91 plinth/modules/users/forms.py:207
msgid "Permissions"
msgstr ""
-#: plinth/modules/users/forms.py:109
+#: plinth/modules/users/forms.py:94
msgid ""
"Select which services should be available to the new user. The user will be "
"able to log in to services that support single sign-on through LDAP, if they "
@@ -5833,104 +5940,104 @@ msgid ""
"SSH and have administrative privileges (sudo)."
msgstr ""
-#: plinth/modules/users/forms.py:148 plinth/modules/users/forms.py:372
+#: plinth/modules/users/forms.py:133 plinth/modules/users/forms.py:357
msgid "Creating LDAP user failed."
msgstr "Tworzenie użytkownika LDAP się nie udało."
-#: plinth/modules/users/forms.py:159
+#: plinth/modules/users/forms.py:144
#, python-brace-format
msgid "Failed to add new user to {group} group."
msgstr ""
-#: plinth/modules/users/forms.py:173
+#: plinth/modules/users/forms.py:158
msgid "Authorized SSH Keys"
msgstr ""
-#: plinth/modules/users/forms.py:175
+#: plinth/modules/users/forms.py:160
msgid ""
"Setting an SSH public key will allow this user to securely log in to the "
"system without using a password. You may enter multiple keys, one on each "
"line. Blank lines and lines starting with # will be ignored."
msgstr ""
-#: plinth/modules/users/forms.py:259
+#: plinth/modules/users/forms.py:244
msgid "Renaming LDAP user failed."
msgstr ""
-#: plinth/modules/users/forms.py:271
+#: plinth/modules/users/forms.py:256
msgid "Failed to remove user from group."
msgstr ""
-#: plinth/modules/users/forms.py:282
+#: plinth/modules/users/forms.py:267
msgid "Failed to add user to group."
msgstr ""
-#: plinth/modules/users/forms.py:291
+#: plinth/modules/users/forms.py:276
msgid "Unable to set SSH keys."
msgstr ""
-#: plinth/modules/users/forms.py:306
+#: plinth/modules/users/forms.py:291
#, fuzzy
#| msgid "Failed to add new user to admin group."
msgid "Failed to change user status."
msgstr "Nieudane dodawanie użytkownika do grupy admin."
-#: plinth/modules/users/forms.py:314
+#: plinth/modules/users/forms.py:299
msgid "Cannot delete the only administrator in the system."
msgstr ""
-#: plinth/modules/users/forms.py:346
+#: plinth/modules/users/forms.py:331
msgid "Changing LDAP user password failed."
msgstr ""
-#: plinth/modules/users/forms.py:381
+#: plinth/modules/users/forms.py:366
msgid "Failed to add new user to admin group."
msgstr "Nieudane dodawanie użytkownika do grupy admin."
-#: plinth/modules/users/forms.py:398
+#: plinth/modules/users/forms.py:383
msgid "Failed to restrict console access."
msgstr ""
-#: plinth/modules/users/forms.py:410
+#: plinth/modules/users/forms.py:395
msgid "User account created, you are now logged in"
msgstr "Utworzono konto użytkownika, możesz się teraz zalogować"
-#: plinth/modules/users/templates/users_change_password.html:26
+#: plinth/modules/users/templates/users_change_password.html:11
#, python-format
msgid "Change Password for %(username)s"
msgstr ""
-#: plinth/modules/users/templates/users_change_password.html:36
+#: plinth/modules/users/templates/users_change_password.html:21
msgid "Save Password"
msgstr ""
-#: plinth/modules/users/templates/users_create.html:32
-#: plinth/modules/users/templates/users_list.html:42
-#: plinth/modules/users/templates/users_list.html:44
-#: plinth/modules/users/views.py:57
+#: plinth/modules/users/templates/users_create.html:17
+#: plinth/modules/users/templates/users_list.html:27
+#: plinth/modules/users/templates/users_list.html:29
+#: plinth/modules/users/views.py:42
msgid "Create User"
msgstr ""
-#: plinth/modules/users/templates/users_delete.html:26
-#: plinth/modules/users/views.py:139
+#: plinth/modules/users/templates/users_delete.html:11
+#: plinth/modules/users/views.py:121
msgid "Delete User"
msgstr ""
-#: plinth/modules/users/templates/users_delete.html:29
+#: plinth/modules/users/templates/users_delete.html:14
#, python-format
msgid "Delete user %(username)s permanently?"
msgstr ""
-#: plinth/modules/users/templates/users_delete.html:38
+#: plinth/modules/users/templates/users_delete.html:23
#, python-format
msgid "Delete %(username)s"
msgstr ""
-#: plinth/modules/users/templates/users_firstboot.html:26
+#: plinth/modules/users/templates/users_firstboot.html:11
msgid "Administrator Account"
msgstr "Konto Administratora"
-#: plinth/modules/users/templates/users_firstboot.html:29
+#: plinth/modules/users/templates/users_firstboot.html:14
msgid ""
"Choose a username and password to access this web interface. The password "
"can be changed later. This user will be granted administrative privileges. "
@@ -5940,85 +6047,80 @@ msgstr ""
"zmienione. Użytkownik będzie miał przyznane uprawnienienia administracyjne. "
"Innych użytkowników można dodać później."
-#: plinth/modules/users/templates/users_firstboot.html:42
+#: plinth/modules/users/templates/users_firstboot.html:27
msgid "Create Account"
msgstr "Utwórz konto"
-#: plinth/modules/users/templates/users_list.html:38
-#: plinth/modules/users/views.py:74
+#: plinth/modules/users/templates/users_list.html:23
+#: plinth/modules/users/views.py:59
msgid "Users"
msgstr ""
-#: plinth/modules/users/templates/users_list.html:57
+#: plinth/modules/users/templates/users_list.html:42
#, python-format
msgid "Delete user %(username)s"
msgstr ""
-#: plinth/modules/users/templates/users_list.html:65
+#: plinth/modules/users/templates/users_list.html:50
#, python-format
msgid "Edit user %(username)s"
msgstr ""
-#: plinth/modules/users/templates/users_update.html:30
+#: plinth/modules/users/templates/users_update.html:15
#, python-format
msgid ""
"Use the change password form to "
"change the password."
msgstr ""
-#: plinth/modules/users/templates/users_update.html:42
-#: plinth/templates/language-selection.html:32
+#: plinth/modules/users/templates/users_update.html:27
+#: plinth/templates/language-selection.html:17
msgid "Save Changes"
msgstr ""
-#: plinth/modules/users/views.py:55
+#: plinth/modules/users/views.py:40
#, python-format
msgid "User %(username)s created."
msgstr ""
-#: plinth/modules/users/views.py:93
+#: plinth/modules/users/views.py:75
#, python-format
msgid "User %(username)s updated."
msgstr ""
-#: plinth/modules/users/views.py:94
+#: plinth/modules/users/views.py:76
msgid "Edit User"
msgstr ""
-#: plinth/modules/users/views.py:149
+#: plinth/modules/users/views.py:131
#, python-brace-format
msgid "User {user} deleted."
msgstr ""
-#: plinth/modules/users/views.py:156
+#: plinth/modules/users/views.py:138
msgid "Deleting LDAP user failed."
msgstr ""
-#: plinth/modules/users/views.py:165
+#: plinth/modules/users/views.py:147
msgid "Change Password"
msgstr ""
-#: plinth/modules/users/views.py:166
+#: plinth/modules/users/views.py:148
msgid "Password changed successfully."
msgstr ""
-#: plinth/modules/wireguard/__init__.py:38
-#: plinth/modules/wireguard/manifest.py:29
-msgid "WireGuard"
-msgstr ""
-
-#: plinth/modules/wireguard/__init__.py:43
+#: plinth/modules/wireguard/__init__.py:24
msgid "WireGuard is a fast, modern, secure VPN tunnel."
msgstr ""
-#: plinth/modules/wireguard/__init__.py:45
+#: plinth/modules/wireguard/__init__.py:26
#, python-brace-format
msgid ""
"It can be used to connect to a VPN provider which supports WireGuard, and to "
"route all outgoing traffic from {box_name} through the VPN."
msgstr ""
-#: plinth/modules/wireguard/__init__.py:49
+#: plinth/modules/wireguard/__init__.py:30
#, python-brace-format
msgid ""
"A second use case is to connect a mobile device to {box_name} while "
@@ -6026,63 +6128,68 @@ msgid ""
"securely relayed through {box_name}."
msgstr ""
-#: plinth/modules/wireguard/forms.py:47
+#: plinth/modules/wireguard/__init__.py:52
+#: plinth/modules/wireguard/manifest.py:14
+msgid "WireGuard"
+msgstr ""
+
+#: plinth/modules/wireguard/forms.py:32
#, fuzzy
#| msgid "Invalid hostname"
msgid "Invalid key."
msgstr "Niewłaściwa nazwa hosta"
-#: plinth/modules/wireguard/forms.py:76
-#: plinth/modules/wireguard/templates/wireguard.html:32
-#: plinth/modules/wireguard/templates/wireguard.html:89
-#: plinth/modules/wireguard/templates/wireguard_delete_server.html:38
+#: plinth/modules/wireguard/forms.py:61
+#: plinth/modules/wireguard/templates/wireguard.html:17
+#: plinth/modules/wireguard/templates/wireguard.html:74
+#: plinth/modules/wireguard/templates/wireguard_delete_server.html:23
msgid "Public Key"
msgstr ""
-#: plinth/modules/wireguard/forms.py:77
+#: plinth/modules/wireguard/forms.py:62
msgid ""
"Public key of the peer. Example: "
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs= ."
msgstr ""
-#: plinth/modules/wireguard/forms.py:85
+#: plinth/modules/wireguard/forms.py:70
msgid "Endpoint of the server"
msgstr ""
-#: plinth/modules/wireguard/forms.py:86
+#: plinth/modules/wireguard/forms.py:71
msgid ""
"Domain name and port in the form \"ip:port\". Example: demo.wireguard."
"com:12912 ."
msgstr ""
-#: plinth/modules/wireguard/forms.py:91
+#: plinth/modules/wireguard/forms.py:76
msgid "Public key of the server"
msgstr ""
-#: plinth/modules/wireguard/forms.py:92
+#: plinth/modules/wireguard/forms.py:77
msgid ""
"Provided by the server operator, a long string of characters. Example: "
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs= ."
msgstr ""
-#: plinth/modules/wireguard/forms.py:97
+#: plinth/modules/wireguard/forms.py:82
#, fuzzy
#| msgid "A list of IP addresses, separated by space"
msgid "Client IP address provided by server"
msgstr "Lista adresów IP rozdzielonych spacją"
-#: plinth/modules/wireguard/forms.py:98
+#: plinth/modules/wireguard/forms.py:83
msgid ""
"IP address assigned to this machine on the VPN after connecting to the "
"endpoint. This value is usually provided by the server operator. Example: "
"192.168.0.10."
msgstr ""
-#: plinth/modules/wireguard/forms.py:104
+#: plinth/modules/wireguard/forms.py:89
msgid "Private key of this machine"
msgstr ""
-#: plinth/modules/wireguard/forms.py:105
+#: plinth/modules/wireguard/forms.py:90
msgid ""
"Optional. New public/private keys are generated if left blank. Public key "
"can then be provided to the server. This is the recommended way. However, "
@@ -6090,179 +6197,179 @@ msgid ""
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs= ."
msgstr ""
-#: plinth/modules/wireguard/forms.py:113
+#: plinth/modules/wireguard/forms.py:98
msgid "Pre-shared key"
msgstr ""
-#: plinth/modules/wireguard/forms.py:114
+#: plinth/modules/wireguard/forms.py:99
msgid ""
"Optional. A shared secret key provided by the server to add an additional "
"layer of security. Fill in only if provided. Example: "
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs=."
msgstr ""
-#: plinth/modules/wireguard/forms.py:120
+#: plinth/modules/wireguard/forms.py:105
msgid "Use this connection to send all outgoing traffic"
msgstr ""
-#: plinth/modules/wireguard/forms.py:122
+#: plinth/modules/wireguard/forms.py:107
msgid "Typically checked for a VPN service though which all traffic is sent."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:25
+#: plinth/modules/wireguard/templates/wireguard.html:10
#, fuzzy
#| msgid "Chat Server"
msgid "As a Server"
msgstr "Serwer czatu"
-#: plinth/modules/wireguard/templates/wireguard.html:27
+#: plinth/modules/wireguard/templates/wireguard.html:12
msgid "Peers allowed to connect to this server:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:33
+#: plinth/modules/wireguard/templates/wireguard.html:18
msgid "Allowed IPs"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:34
-#: plinth/modules/wireguard/templates/wireguard.html:90
+#: plinth/modules/wireguard/templates/wireguard.html:19
+#: plinth/modules/wireguard/templates/wireguard.html:75
msgid "Last Connected Time"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:53
+#: plinth/modules/wireguard/templates/wireguard.html:38
#, python-format
msgid "No peers configured to connect to this %(box_name)s yet."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:62
+#: plinth/modules/wireguard/templates/wireguard.html:47
#, python-format
msgid "Public key for this %(box_name)s:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:68
+#: plinth/modules/wireguard/templates/wireguard.html:53
msgid "Not configured yet."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:72
+#: plinth/modules/wireguard/templates/wireguard.html:57
msgid "Add a new peer"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:76
-#: plinth/modules/wireguard/views.py:69
+#: plinth/modules/wireguard/templates/wireguard.html:61
+#: plinth/modules/wireguard/views.py:51
msgid "Add Allowed Client"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:79
+#: plinth/modules/wireguard/templates/wireguard.html:64
#, fuzzy
#| msgid "Chat Client"
msgid "As a Client"
msgstr "Klient czatu"
-#: plinth/modules/wireguard/templates/wireguard.html:81
+#: plinth/modules/wireguard/templates/wireguard.html:66
#, python-format
msgid "Servers that %(box_name)s will connect to:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:88
-#: plinth/modules/wireguard/templates/wireguard_delete_server.html:34
+#: plinth/modules/wireguard/templates/wireguard.html:73
+#: plinth/modules/wireguard/templates/wireguard_delete_server.html:19
msgid "Endpoint"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:111
+#: plinth/modules/wireguard/templates/wireguard.html:96
#, fuzzy
#| msgid "Authentication to remote server failed."
msgid "No connections to remote servers are configured yet."
msgstr "Nie powiodła się autoryzacja na zdalnym serwerze."
-#: plinth/modules/wireguard/templates/wireguard.html:119
+#: plinth/modules/wireguard/templates/wireguard.html:104
msgid "Add a new server"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:123
-#: plinth/modules/wireguard/views.py:178
+#: plinth/modules/wireguard/templates/wireguard.html:108
+#: plinth/modules/wireguard/views.py:160
#, fuzzy
#| msgid "Connection refused"
msgid "Add Connection to Server"
msgstr "Odmowa dostępu"
-#: plinth/modules/wireguard/templates/wireguard_add_client.html:34
+#: plinth/modules/wireguard/templates/wireguard_add_client.html:19
#, fuzzy
#| msgid "Chat Client"
msgid "Add Client"
msgstr "Klient czatu"
-#: plinth/modules/wireguard/templates/wireguard_delete_client.html:29
+#: plinth/modules/wireguard/templates/wireguard_delete_client.html:14
#, fuzzy
#| msgid "Are you sure that you want to remove this repository?"
msgid "Are you sure that you want to delete this client?"
msgstr "Naprawdę chcesz usunąć to repozytorium?"
-#: plinth/modules/wireguard/templates/wireguard_delete_server.html:29
+#: plinth/modules/wireguard/templates/wireguard_delete_server.html:14
#, fuzzy
#| msgid "Are you sure that you want to remove this repository?"
msgid "Are you sure that you want to delete this server?"
msgstr "Naprawdę chcesz usunąć to repozytorium?"
-#: plinth/modules/wireguard/templates/wireguard_edit_client.html:34
+#: plinth/modules/wireguard/templates/wireguard_edit_client.html:19
#, fuzzy
#| msgid "Chat Client"
msgid "Update Client"
msgstr "Klient czatu"
-#: plinth/modules/wireguard/templates/wireguard_edit_server.html:34
+#: plinth/modules/wireguard/templates/wireguard_edit_server.html:19
#, fuzzy
#| msgid "Connection refused"
msgid "Update Connection"
msgstr "Odmowa dostępu"
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:27
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:12
#, python-format
msgid ""
"%(box_name)s will allow this client to connect to it. Ensure that the client "
"is configured with the following information."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:35
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:20
msgid "Client public key:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:39
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:24
msgid "IP address to use for client:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:43
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:46
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:28
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:31
msgid "Pre-shared key:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:47
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:32
#, fuzzy
#| msgid "Administrator Account"
msgid "Server endpoints:"
msgstr "Konto Administratora"
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:55
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:42
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:40
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:27
#, fuzzy
#| msgid "Select verified SSH public key"
msgid "Server public key:"
msgstr "Wybierz zweryfikowany klucz publiczny SSH"
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:65
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:64
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:50
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:49
msgid "Data transmitted:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:69
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:68
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:54
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:53
msgid "Data received:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:73
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:72
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:58
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:57
msgid "Latest handshake:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:29
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:14
#, python-format
msgid ""
"%(box_name)s will attempt to reach a WireGuard server with the following "
@@ -6270,150 +6377,150 @@ msgid ""
"public key and IP address."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:38
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:23
#, fuzzy
#| msgid "Administrator Account"
msgid "Server endpoint:"
msgstr "Konto Administratora"
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:50
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:35
msgid "Public key of this machine:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:54
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:39
msgid "IP address of this machine:"
msgstr ""
-#: plinth/modules/wireguard/views.py:64
+#: plinth/modules/wireguard/views.py:46
msgid "Added new client."
msgstr ""
-#: plinth/modules/wireguard/views.py:79 plinth/modules/wireguard/views.py:138
+#: plinth/modules/wireguard/views.py:61 plinth/modules/wireguard/views.py:120
#, fuzzy
#| msgid "Remote backup repository already exists."
msgid "Client with public key already exists"
msgstr "Zdalne repozytorium już istnieje."
-#: plinth/modules/wireguard/views.py:92
+#: plinth/modules/wireguard/views.py:74
#, fuzzy
#| msgid "Dynamic DNS Client"
msgid "Allowed Client"
msgstr "Klient Dynamic DNS"
-#: plinth/modules/wireguard/views.py:114
+#: plinth/modules/wireguard/views.py:96
#, fuzzy
#| msgid "Update setup"
msgid "Updated client."
msgstr "Aktualizuj ustawienia"
-#: plinth/modules/wireguard/views.py:119
+#: plinth/modules/wireguard/views.py:101
#, fuzzy
#| msgid "Dynamic DNS Client"
msgid "Modify Client"
msgstr "Klient Dynamic DNS"
-#: plinth/modules/wireguard/views.py:152
+#: plinth/modules/wireguard/views.py:134
#, fuzzy
#| msgid "Delete"
msgid "Delete Allowed Client"
msgstr "Usuń"
-#: plinth/modules/wireguard/views.py:161
+#: plinth/modules/wireguard/views.py:143
#, fuzzy
#| msgid "Archive deleted."
msgid "Client deleted."
msgstr "Archiwum zostało usunięte."
-#: plinth/modules/wireguard/views.py:163
+#: plinth/modules/wireguard/views.py:145
#, fuzzy
#| msgid "Repository not found"
msgid "Client not found"
msgstr "Nie odnaleziono repozytorium"
-#: plinth/modules/wireguard/views.py:173
+#: plinth/modules/wireguard/views.py:155
#, fuzzy
#| msgid "Added new remote SSH repository."
msgid "Added new server."
msgstr "Dodano nowe zdalne repozytorium SSH."
-#: plinth/modules/wireguard/views.py:194
+#: plinth/modules/wireguard/views.py:176
#, fuzzy
#| msgid "Connection refused"
msgid "Connection to Server"
msgstr "Odmowa dostępu"
-#: plinth/modules/wireguard/views.py:212
+#: plinth/modules/wireguard/views.py:194
#, fuzzy
#| msgid "Update setup"
msgid "Updated server."
msgstr "Aktualizuj ustawienia"
-#: plinth/modules/wireguard/views.py:217
+#: plinth/modules/wireguard/views.py:199
#, fuzzy
#| msgid "Error establishing connection to server: {}"
msgid "Modify Connection to Server"
msgstr "Błąd podczas ustanawiania połączenia z serwerem: {error}"
-#: plinth/modules/wireguard/views.py:254
+#: plinth/modules/wireguard/views.py:236
#, fuzzy
#| msgid "Direct connection to the Internet."
msgid "Delete Connection to Server"
msgstr "Bezpośrednie połłączenie z internetem."
-#: plinth/modules/wireguard/views.py:274
+#: plinth/modules/wireguard/views.py:256
#, fuzzy
#| msgid "Archive deleted."
msgid "Server deleted."
msgstr "Archiwum zostało usunięte."
-#: plinth/network.py:42
+#: plinth/network.py:27
msgid "PPPoE"
msgstr ""
-#: plinth/network.py:43
+#: plinth/network.py:28
msgid "Generic"
msgstr ""
-#: plinth/package.py:137
+#: plinth/package.py:122
msgid "Error during installation"
msgstr ""
-#: plinth/package.py:159
+#: plinth/package.py:144
msgid "installing"
msgstr ""
-#: plinth/package.py:161
+#: plinth/package.py:146
msgid "downloading"
msgstr ""
-#: plinth/package.py:163
+#: plinth/package.py:148
msgid "media change"
msgstr ""
-#: plinth/package.py:165
+#: plinth/package.py:150
#, python-brace-format
msgid "configuration file: {file}"
msgstr "plik konfiguracyjny: {file}"
-#: plinth/templates/403.html:25
+#: plinth/templates/403.html:10
msgid "403 Forbidden"
msgstr "403 Dostęp zabroniony"
-#: plinth/templates/403.html:29
+#: plinth/templates/403.html:14
#, python-format
msgid "You don't have permission to access %(request_path)s on this server."
msgstr "Nie masz uprawnień dostępu do %(request_path)s na tym serwerze."
-#: plinth/templates/404.html:25
+#: plinth/templates/404.html:10
msgid "404"
msgstr "404"
-#: plinth/templates/404.html:28
+#: plinth/templates/404.html:13
#, python-format
msgid "Requested page %(request_path)s was not found."
msgstr "Żądana strona %(request_path)s nie została znaleziona."
-#: plinth/templates/404.html:34
+#: plinth/templates/404.html:19
#, fuzzy
#| msgid ""
#| "If you believe this missing page should exist, please file a bug at the "
@@ -6427,11 +6534,11 @@ msgstr ""
"Jeśli uważasz że ta brakująca strona powinna istnieć, zgłoś błąd w projekcie Plinth."
-#: plinth/templates/500.html:25
+#: plinth/templates/500.html:10
msgid "500"
msgstr "500"
-#: plinth/templates/500.html:29
+#: plinth/templates/500.html:14
#, fuzzy, python-format
#| msgid ""
#| "This is an internal error and not something you caused or can fix. "
@@ -6449,135 +6556,135 @@ msgstr ""
"issues\">Zgłoś błąd abyśmy mogli go naprawić. Dołącz również plik dziennika do raportu błędu."
-#: plinth/templates/app.html:47
+#: plinth/templates/app-header.html:22
+msgid "Installation"
+msgstr ""
+
+#: plinth/templates/app.html:32
#, python-format
msgid "Service %(service_name)s is running."
msgstr "Usługa %(service_name)s jest uruchomiona."
-#: plinth/templates/app.html:52
+#: plinth/templates/app.html:37
#, python-format
msgid "Service %(service_name)s is not running."
msgstr "Usługa %(service_name)s nie jest uruchomiona."
-#: plinth/templates/base.html:50
+#: plinth/templates/base.html:35
#, fuzzy, python-format
#| msgid "Plinth administrative interface for the %(box_name)s"
msgid "Core functionality and web interface for %(box_name)s"
msgstr "Interfejs administracyjny Plinth dla %(box_name)s"
-#: plinth/templates/base.html:96
+#: plinth/templates/base.html:81
msgid "Toggle navigation"
msgstr "Przełącz nawigację"
-#: plinth/templates/base.html:120 plinth/templates/base.html:123
+#: plinth/templates/base.html:105 plinth/templates/base.html:108
msgid "Home"
msgstr "Dom"
-#: plinth/templates/base.html:128 plinth/templates/base.html:132
+#: plinth/templates/base.html:113 plinth/templates/base.html:117
msgid "Apps"
msgstr "Aplikacje"
-#: plinth/templates/base.html:137 plinth/templates/base.html:141
+#: plinth/templates/base.html:122 plinth/templates/base.html:126
msgid "System"
msgstr ""
-#: plinth/templates/base.html:173 plinth/templates/base.html:174
+#: plinth/templates/base.html:158 plinth/templates/base.html:159
msgid "Change password"
msgstr "Zmień hasło"
-#: plinth/templates/base.html:181 plinth/templates/base.html:182
+#: plinth/templates/base.html:166 plinth/templates/base.html:167
msgid "Restart"
msgstr "Uruchom ponownie"
-#: plinth/templates/base.html:187 plinth/templates/base.html:188
+#: plinth/templates/base.html:172 plinth/templates/base.html:173
msgid "Shut down"
msgstr "Wyłącz"
-#: plinth/templates/base.html:195 plinth/templates/base.html:196
-#: plinth/templates/base.html:220 plinth/templates/base.html:222
+#: plinth/templates/base.html:180 plinth/templates/base.html:181
+#: plinth/templates/base.html:205 plinth/templates/base.html:207
msgid "Log out"
msgstr "Wyloguj się"
-#: plinth/templates/base.html:204 plinth/templates/base.html:207
+#: plinth/templates/base.html:189 plinth/templates/base.html:192
#, fuzzy
#| msgid "Language"
msgid "Select language"
msgstr "Język"
-#: plinth/templates/base.html:212 plinth/templates/base.html:214
+#: plinth/templates/base.html:197 plinth/templates/base.html:199
msgid "Log in"
msgstr "Zaloguj się"
-#: plinth/templates/clients.html:32
+#: plinth/templates/clients.html:17
msgid "Web"
msgstr ""
-#: plinth/templates/clients.html:57
+#: plinth/templates/clients.html:42
#, fuzzy
#| msgid "Chat Client"
msgid "Desktop"
msgstr "Klient czatu"
-#: plinth/templates/clients.html:68
+#: plinth/templates/clients.html:53
msgid "GNU/Linux"
msgstr ""
-#: plinth/templates/clients.html:70
+#: plinth/templates/clients.html:55
msgid "Windows"
msgstr ""
-#: plinth/templates/clients.html:72
+#: plinth/templates/clients.html:57
msgid "macOS"
msgstr ""
-#: plinth/templates/clients.html:88
+#: plinth/templates/clients.html:73
#, fuzzy
#| msgid "Dynamic DNS Client"
msgid "Mobile"
msgstr "Klient Dynamic DNS"
-#: plinth/templates/clients.html:99
+#: plinth/templates/clients.html:84
msgid "Play Store"
msgstr ""
-#: plinth/templates/clients.html:101
+#: plinth/templates/clients.html:86
msgid "F-Droid"
msgstr ""
-#: plinth/templates/clients.html:103
+#: plinth/templates/clients.html:88
msgid "App Store"
msgstr ""
-#: plinth/templates/clients.html:119
+#: plinth/templates/clients.html:104
msgid "Package"
msgstr ""
-#: plinth/templates/clients.html:126
+#: plinth/templates/clients.html:111
msgid "Debian:"
msgstr ""
-#: plinth/templates/clients.html:129
+#: plinth/templates/clients.html:114
#, fuzzy
#| msgid "Home"
msgid "Homebrew:"
msgstr "Dom"
-#: plinth/templates/clients.html:132
+#: plinth/templates/clients.html:117
msgid "RPM:"
msgstr ""
-#: plinth/templates/first_setup.html:39
+#: plinth/templates/first_setup.html:24
#, python-format
msgid ""
"Please wait for %(box_name)s to finish installation. You can start using "
"your %(box_name)s once it is done."
msgstr ""
-#: plinth/templates/header.html:36
-msgid "Installation"
-msgstr ""
-
-#: plinth/templates/index.html:37
+#: plinth/templates/index.html:22
#, python-format
msgid ""
"Enable some applications to add shortcuts to "
@@ -6585,11 +6692,11 @@ msgid ""
msgstr ""
"Włącz aplikacje aby dodać skróty do tej strony."
-#: plinth/templates/index.html:59
+#: plinth/templates/index.html:44
msgid "Configure »"
msgstr "Konfiguruj »"
-#: plinth/templates/index.html:115
+#: plinth/templates/index.html:100
#, python-format
msgid ""
"%(box_name)s, a Debian pure blend, is a 100%% free software self-hosting web "
@@ -6601,7 +6708,7 @@ msgstr ""
"maszynach. Udostępnia narzędzia do komunikacji online które respektują "
"prywatność i kontrolę nad danymi."
-#: plinth/templates/index.html:124
+#: plinth/templates/index.html:109
#, fuzzy, python-format
#| msgid ""
#| "This portal is a part of Plinth, the %(box_name)s web interface. Plinth "
@@ -6616,60 +6723,60 @@ msgstr ""
"Plinth jest wolnym oprogramowaniem, rozpowszechnianym w licencji GNU Affero "
"General Public License w wersji 3 lub późniejszej."
-#: plinth/templates/index.html:144
+#: plinth/templates/index.html:129
msgid "Homepage"
msgstr ""
-#: plinth/templates/index.html:147
+#: plinth/templates/index.html:132
msgid "Source Code"
msgstr ""
-#: plinth/templates/index.html:150
+#: plinth/templates/index.html:135
msgid "Donate"
msgstr ""
-#: plinth/templates/index.html:154
+#: plinth/templates/index.html:139
msgid "FreedomBox Foundation"
msgstr "Fundacja FreedomBox"
-#: plinth/templates/index.html:161
+#: plinth/templates/index.html:146
msgid "IRC Chatroom"
msgstr ""
-#: plinth/templates/index.html:166
+#: plinth/templates/index.html:151
msgid "Mailing list"
msgstr ""
-#: plinth/templates/internal-zone.html:26
+#: plinth/templates/internal-zone.html:11
#, fuzzy, python-format
#| msgid "Service %(service_name)s is not running."
msgid "%(service_name)s is available only on internal networks."
msgstr "Usługa %(service_name)s nie jest uruchomiona."
-#: plinth/templates/internal-zone.html:32
+#: plinth/templates/internal-zone.html:17
msgid "Currently there are no network interfaces configured as internal."
msgstr ""
-#: plinth/templates/internal-zone.html:34
+#: plinth/templates/internal-zone.html:19
#, python-format
msgid ""
"Currently the following network interfaces are configured as internal: "
"%(interface_list)s"
msgstr ""
-#: plinth/templates/notifications-dropdown.html:26
+#: plinth/templates/notifications-dropdown.html:11
#, fuzzy
#| msgid "No certificate"
msgid "Notifications"
msgstr "Brak certyfikatu"
-#: plinth/templates/port-forwarding-info.html:23
+#: plinth/templates/port-forwarding-info.html:8
#, fuzzy
#| msgid "Enable forwarding"
msgid "Port Forwarding"
msgstr "Włącz przekazywanie"
-#: plinth/templates/port-forwarding-info.html:26
+#: plinth/templates/port-forwarding-info.html:11
#, python-format
msgid ""
"If your FreedomBox is behind a router, you will need to set up port "
@@ -6677,65 +6784,65 @@ msgid ""
"%(service_name)s:"
msgstr ""
-#: plinth/templates/setup.html:51
+#: plinth/templates/setup.html:36
msgid "Install this application?"
msgstr ""
-#: plinth/templates/setup.html:55
+#: plinth/templates/setup.html:40
msgid "This application needs an update. Update now?"
msgstr ""
-#: plinth/templates/setup.html:66
+#: plinth/templates/setup.html:51
msgid ""
"Another installation or upgrade is already running. Please wait for a few "
"moments before trying again."
msgstr ""
-#: plinth/templates/setup.html:73
+#: plinth/templates/setup.html:58
msgid "This application is currently not available in your distribution."
msgstr ""
-#: plinth/templates/setup.html:87
+#: plinth/templates/setup.html:72
msgid "Install"
msgstr ""
-#: plinth/templates/setup.html:98
+#: plinth/templates/setup.html:83
msgid "Performing pre-install operation"
msgstr ""
-#: plinth/templates/setup.html:102
+#: plinth/templates/setup.html:87
msgid "Performing post-install operation"
msgstr ""
-#: plinth/templates/setup.html:107
+#: plinth/templates/setup.html:92
#, python-format
msgid "Installing %(package_names)s: %(status)s"
msgstr ""
-#: plinth/templates/setup.html:117
+#: plinth/templates/setup.html:102
#, python-format
msgid "%(percentage)s%% complete"
msgstr ""
-#: plinth/templates/toolbar.html:38
+#: plinth/templates/toolbar.html:23
msgid "Launch web client"
msgstr "Uruchom klienta przeglądarkowego"
-#: plinth/templates/toolbar.html:47
+#: plinth/templates/toolbar.html:32
#, fuzzy
#| msgid "Chat Client"
msgid "Client Apps"
msgstr "Klient czatu"
-#: plinth/views.py:179
+#: plinth/views.py:189
msgid "Application enabled"
msgstr "Aplikacja włączona"
-#: plinth/views.py:182
+#: plinth/views.py:192
msgid "Application disabled"
msgstr "Aplikacja wyłączona"
-#: plinth/web_framework.py:190
+#: plinth/web_framework.py:107
msgid "Gujarati"
msgstr ""
diff --git a/plinth/locale/pt/LC_MESSAGES/django.po b/plinth/locale/pt/LC_MESSAGES/django.po
index b214d938f..35bbb3bcf 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: 2020-02-14 21:26+0200\n"
+"POT-Creation-Date: 2020-02-24 19:12-0500\n"
"PO-Revision-Date: 2019-12-16 22:57+0000\n"
"Last-Translator: adaragao This means that devices on the Internet can reach you when you are " +"connected to the Internet. Every time you connect to the Internet with your " +"Internet Service Provider (ISP), you may get a different IP address, " +"especially after some offline time. Many ISPs offer this type of " +"connectivity. If you have a public IP address but are unsure if it changes " +"over time or not, it is safer to choose this option.
" +msgstr "" + #: plinth/modules/networks/forms.py:313 +#, python-brace-format +msgid "" +"I have a public IP address that does not change overtime (recommended)This means that devices on the Internet can reach you " +"when you are connected to the Internet. Every time you connect to the " +"Internet with your Internet Service Provider (ISP), you always get the same " +"IP address. This is the most trouble-free setup for many {box_name} services " +"but very few ISPs offer this. You may be able to get this service from your " +"ISP by making an additional payment.
" +msgstr "" + +#: plinth/modules/networks/forms.py:326 +#, python-brace-format +msgid "" +"I dont have a public IP addressThis means that " +"devices on the Internet can not reach you when you are connected to " +"the Internet. Every time you connect to the Internet with your Internet " +"Service Provider (ISP), you get an IP address that is only relevant for " +"local networks. Many ISPs offer this type of connectivity. This is the most " +"troublesome situation for hosting services at home. {box_name} provides many " +"workaround solutions but each solution has some limitations.
" +msgstr "" + +#: plinth/modules/networks/forms.py:351 #, fuzzy #| msgid "General Configuration" msgid "Preferred router configuration" msgstr "Configuração Geral" -#: plinth/modules/networks/forms.py:318 +#: plinth/modules/networks/forms.py:356 #, python-brace-format msgid "" -"Use DMZ feature to forward all trafficMost routers " -"provide a configuration setting called DMZ. This will allow the router to " -"forward all incoming traffic from the internet to a single IP address such " -"as the {box_name}'s address. First remember to configure a static local IP " -"address for your {box_name} in your router's configuration.
" +"Use DMZ feature to forward all traffic (recommended)Most routers provide a configuration setting called DMZ. This will allow " +"the router to forward all incoming traffic from the Internet to a single IP " +"address such as the {box_name}'s IP address. First remember to configure a " +"static local IP address for your {box_name} in your router's configuration." +"p>" msgstr "" -#: plinth/modules/networks/forms.py:332 +#: plinth/modules/networks/forms.py:368 #, python-brace-format msgid "" -"Forward Specific Traffic as needed by each application
You may alternatively choose to forward only specific traffic to your " "{box_name}. This is ideal if you have other servers like {box_name} in your " "network or if your router does not support DMZ feature. All applications " @@ -3244,278 +3311,284 @@ msgid "" "to be forwarded for that application to work.
" msgstr "" -#: plinth/modules/networks/forms.py:349 +#: plinth/modules/networks/forms.py:382 msgid "" -"Router is currently unconfiguredChoose this if you " +"Router is currently unconfigured
Choose this if you " "have not configured or are unable to configure the router currently and wish " "to be reminded later. Some of the other configuration steps may fail.
" msgstr "" -#: plinth/modules/networks/networks.py:43 +#: plinth/modules/networks/networks.py:32 msgid "Network Connections" msgstr "" -#: plinth/modules/networks/networks.py:59 +#: plinth/modules/networks/networks.py:46 msgid "Cannot show connection: Connection not found." msgstr "" -#: plinth/modules/networks/networks.py:94 +#: plinth/modules/networks/networks.py:81 msgid "Connection Information" msgstr "" -#: plinth/modules/networks/networks.py:108 +#: plinth/modules/networks/networks.py:95 msgid "Cannot edit connection: Connection not found." msgstr "" -#: plinth/modules/networks/networks.py:114 +#: plinth/modules/networks/networks.py:101 msgid "This type of connection is not yet understood." msgstr "" -#: plinth/modules/networks/networks.py:136 -#: plinth/modules/networks/networks.py:220 -#: plinth/modules/networks/templates/connections_edit.html:35 +#: plinth/modules/networks/networks.py:123 +#: plinth/modules/networks/networks.py:207 +#: plinth/modules/networks/templates/connections_edit.html:20 msgid "Edit Connection" msgstr "" -#: plinth/modules/networks/networks.py:232 +#: plinth/modules/networks/networks.py:219 #, python-brace-format msgid "Activated connection {name}." msgstr "" -#: plinth/modules/networks/networks.py:236 +#: plinth/modules/networks/networks.py:223 msgid "Failed to activate connection: Connection not found." msgstr "" -#: plinth/modules/networks/networks.py:242 +#: plinth/modules/networks/networks.py:229 #, python-brace-format msgid "Failed to activate connection {name}: No suitable device is available." msgstr "" -#: plinth/modules/networks/networks.py:255 +#: plinth/modules/networks/networks.py:242 #, python-brace-format msgid "Deactivated connection {name}." msgstr "" -#: plinth/modules/networks/networks.py:259 +#: plinth/modules/networks/networks.py:246 msgid "Failed to de-activate connection: Connection not found." msgstr "" -#: plinth/modules/networks/networks.py:269 -#: plinth/modules/networks/templates/connections_list.html:62 -#: plinth/modules/networks/templates/connections_list.html:64 +#: plinth/modules/networks/networks.py:256 +#: plinth/modules/networks/templates/connections_list.html:12 +#: plinth/modules/networks/templates/connections_list.html:14 msgid "Nearby Wi-Fi Networks" msgstr "" -#: plinth/modules/networks/networks.py:293 -#: plinth/modules/networks/templates/connections_list.html:67 -#: plinth/modules/networks/templates/connections_list.html:69 -#: plinth/modules/wireguard/templates/wireguard_add_server.html:34 +#: plinth/modules/networks/networks.py:280 +#: plinth/modules/networks/templates/connections_list.html:17 +#: plinth/modules/networks/templates/connections_list.html:19 +#: plinth/modules/wireguard/templates/wireguard_add_server.html:19 msgid "Add Connection" msgstr "" -#: plinth/modules/networks/networks.py:311 +#: plinth/modules/networks/networks.py:298 msgid "Adding New Generic Connection" msgstr "" -#: plinth/modules/networks/networks.py:329 +#: plinth/modules/networks/networks.py:316 msgid "Adding New Ethernet Connection" msgstr "" -#: plinth/modules/networks/networks.py:347 +#: plinth/modules/networks/networks.py:334 msgid "Adding New PPPoE Connection" msgstr "" -#: plinth/modules/networks/networks.py:382 +#: plinth/modules/networks/networks.py:369 msgid "Adding New Wi-Fi Connection" msgstr "" -#: plinth/modules/networks/networks.py:397 +#: plinth/modules/networks/networks.py:384 #, python-brace-format msgid "Connection {name} deleted." msgstr "" -#: plinth/modules/networks/networks.py:401 -#: plinth/modules/networks/networks.py:411 +#: plinth/modules/networks/networks.py:388 +#: plinth/modules/networks/networks.py:398 msgid "Failed to delete connection: Connection not found." msgstr "" -#: plinth/modules/networks/networks.py:416 -#: plinth/modules/networks/templates/connections_delete.html:26 +#: plinth/modules/networks/networks.py:403 +#: plinth/modules/networks/templates/connections_delete.html:11 msgid "Delete Connection" msgstr "" -#: plinth/modules/networks/networks.py:442 +#: plinth/modules/networks/networks.py:428 #, fuzzy #| msgid "Configuration updated" msgid "Router configuration type saved." msgstr "Configuração atualizada" -#: plinth/modules/networks/templates/connection_show.html:43 +#: plinth/modules/networks/networks.py:474 +#, fuzzy +#| msgid "Configuration updated" +msgid "Internet connection type saved." +msgstr "Configuração atualizada" + +#: plinth/modules/networks/templates/connection_show.html:28 msgid "Edit connection" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:43 -#: plinth/modules/wireguard/templates/wireguard_show_client.html:83 -#: plinth/modules/wireguard/templates/wireguard_show_server.html:84 -#: plinth/templates/base.html:167 plinth/templates/base.html:168 +#: plinth/modules/networks/templates/connection_show.html:28 +#: plinth/modules/wireguard/templates/wireguard_show_client.html:68 +#: plinth/modules/wireguard/templates/wireguard_show_server.html:69 +#: plinth/templates/base.html:152 plinth/templates/base.html:153 msgid "Edit" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:50 -#: plinth/modules/networks/templates/connections_list.html:90 +#: plinth/modules/networks/templates/connection_show.html:35 +#: plinth/modules/networks/templates/connections_list.html:40 msgid "Deactivate" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:57 -#: plinth/modules/networks/templates/connections_list.html:98 +#: plinth/modules/networks/templates/connection_show.html:42 +#: plinth/modules/networks/templates/connections_list.html:48 msgid "Activate" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:63 +#: plinth/modules/networks/templates/connection_show.html:48 msgid "Delete connection" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:66 -#: plinth/modules/networks/templates/connections_diagram.html:73 -#: plinth/modules/networks/templates/connections_diagram.html:76 -#: plinth/modules/networks/templates/connections_diagram.html:105 -#: plinth/modules/networks/templates/connections_diagram.html:127 +#: plinth/modules/networks/templates/connection_show.html:51 +#: plinth/modules/networks/templates/connections_diagram.html:58 +#: plinth/modules/networks/templates/connections_diagram.html:61 +#: plinth/modules/networks/templates/connections_diagram.html:90 +#: plinth/modules/networks/templates/connections_diagram.html:112 msgid "Connection" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:71 +#: plinth/modules/networks/templates/connection_show.html:56 msgid "Primary connection" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:73 -#: plinth/modules/networks/templates/connection_show.html:217 -#: plinth/modules/networks/templates/connection_show.html:256 +#: plinth/modules/networks/templates/connection_show.html:58 +#: plinth/modules/networks/templates/connection_show.html:202 +#: plinth/modules/networks/templates/connection_show.html:241 msgid "yes" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:84 -#: plinth/modules/storage/templates/storage.html:40 +#: plinth/modules/networks/templates/connection_show.html:69 +#: plinth/modules/storage/templates/storage.html:25 msgid "Device" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:88 +#: plinth/modules/networks/templates/connection_show.html:73 msgid "State" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:93 +#: plinth/modules/networks/templates/connection_show.html:78 msgid "State reason" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:102 +#: plinth/modules/networks/templates/connection_show.html:87 msgid "MAC address" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:106 +#: plinth/modules/networks/templates/connection_show.html:91 msgid "Interface" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:110 -#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:33 -#: plinth/modules/snapshot/templates/snapshot_manage.html:45 -#: plinth/modules/snapshot/templates/snapshot_rollback.html:41 +#: plinth/modules/networks/templates/connection_show.html:95 +#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:18 +#: plinth/modules/snapshot/templates/snapshot_manage.html:30 +#: plinth/modules/snapshot/templates/snapshot_rollback.html:26 msgid "Description" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:116 +#: plinth/modules/networks/templates/connection_show.html:101 msgid "Physical Link" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:121 +#: plinth/modules/networks/templates/connection_show.html:106 msgid "Link state" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:125 +#: plinth/modules/networks/templates/connection_show.html:110 msgid "cable is connected" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:128 +#: plinth/modules/networks/templates/connection_show.html:113 msgid "please check cable" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:133 -#: plinth/modules/networks/templates/connection_show.html:149 +#: plinth/modules/networks/templates/connection_show.html:118 +#: plinth/modules/networks/templates/connection_show.html:134 msgid "Speed" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:135 +#: plinth/modules/networks/templates/connection_show.html:120 #, python-format msgid "%(ethernet_speed)s Mbit/s" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:151 +#: plinth/modules/networks/templates/connection_show.html:136 #, python-format msgid "%(wireless_bitrate)s Mbit/s" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:163 +#: plinth/modules/networks/templates/connection_show.html:148 msgid "Signal strength" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:181 +#: plinth/modules/networks/templates/connection_show.html:166 msgid "IPv4" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:186 -#: plinth/modules/networks/templates/connection_show.html:227 -#: plinth/modules/shadowsocks/forms.py:64 +#: plinth/modules/networks/templates/connection_show.html:171 +#: plinth/modules/networks/templates/connection_show.html:212 +#: plinth/modules/shadowsocks/forms.py:49 msgid "Method" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:193 -#: plinth/modules/networks/templates/connection_show.html:234 +#: plinth/modules/networks/templates/connection_show.html:178 +#: plinth/modules/networks/templates/connection_show.html:219 msgid "IP address" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:209 -#: plinth/modules/networks/templates/connection_show.html:248 +#: plinth/modules/networks/templates/connection_show.html:194 +#: plinth/modules/networks/templates/connection_show.html:233 msgid "DNS server" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:216 -#: plinth/modules/networks/templates/connection_show.html:255 -#: plinth/modules/storage/forms.py:156 +#: plinth/modules/networks/templates/connection_show.html:201 +#: plinth/modules/networks/templates/connection_show.html:240 +#: plinth/modules/storage/forms.py:141 msgid "Default" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:222 +#: plinth/modules/networks/templates/connection_show.html:207 msgid "IPv6" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:263 +#: plinth/modules/networks/templates/connection_show.html:248 msgid "This connection is not active." msgstr "" -#: plinth/modules/networks/templates/connection_show.html:266 -#: plinth/modules/security/__init__.py:38 plinth/modules/security/views.py:47 +#: plinth/modules/networks/templates/connection_show.html:251 +#: plinth/modules/security/__init__.py:45 msgid "Security" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:271 -#: plinth/modules/networks/templates/connection_show.html:291 -#: plinth/modules/networks/templates/connection_show.html:310 +#: plinth/modules/networks/templates/connection_show.html:256 +#: plinth/modules/networks/templates/connection_show.html:276 +#: plinth/modules/networks/templates/connection_show.html:295 msgid "Firewall zone" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:280 +#: plinth/modules/networks/templates/connection_show.html:265 msgid "" "This interface should be connected to a local network/machine. If you " "connect this interface to a public network, services meant to be available " "only internally will become available externally. This is a security risk." msgstr "" -#: plinth/modules/networks/templates/connection_show.html:300 +#: plinth/modules/networks/templates/connection_show.html:285 msgid "" "This interface should receive your Internet connection. If you connect it to " "a local network/machine, many services meant to available only internally " "will not be available." msgstr "" -#: plinth/modules/networks/templates/connection_show.html:319 +#: plinth/modules/networks/templates/connection_show.html:304 #, python-format msgid "" "This interface is not maintained by %(box_name)s. Its security status is " @@ -3524,113 +3597,136 @@ msgid "" "connection and re-configure it." msgstr "" -#: plinth/modules/networks/templates/connections_create.html:34 +#: plinth/modules/networks/templates/connections_create.html:19 msgid "Create Connection" msgstr "" -#: plinth/modules/networks/templates/connections_delete.html:29 +#: plinth/modules/networks/templates/connections_delete.html:14 #, python-format msgid "Delete connection %(name)s permanently?" msgstr "" -#: plinth/modules/networks/templates/connections_diagram.html:65 +#: plinth/modules/networks/templates/connections_diagram.html:50 msgid "Internet" msgstr "" -#: plinth/modules/networks/templates/connections_diagram.html:70 -#: plinth/modules/networks/templates/connections_diagram.html:102 +#: plinth/modules/networks/templates/connections_diagram.html:55 +#: plinth/modules/networks/templates/connections_diagram.html:87 msgid "Spacing" msgstr "" -#: plinth/modules/networks/templates/connections_diagram.html:83 -#: plinth/modules/networks/templates/connections_diagram.html:113 -#: plinth/network.py:40 +#: plinth/modules/networks/templates/connections_diagram.html:68 +#: plinth/modules/networks/templates/connections_diagram.html:98 +#: plinth/network.py:25 msgid "Ethernet" msgstr "" -#: plinth/modules/networks/templates/connections_diagram.html:86 -#: plinth/modules/networks/templates/connections_diagram.html:116 -#: plinth/network.py:41 +#: plinth/modules/networks/templates/connections_diagram.html:71 +#: plinth/modules/networks/templates/connections_diagram.html:101 +#: plinth/network.py:26 msgid "Wi-Fi" msgstr "" -#: plinth/modules/networks/templates/connections_diagram.html:89 +#: plinth/modules/networks/templates/connections_diagram.html:74 #, python-format msgid "Show connection %(connection.name)s" msgstr "" -#: plinth/modules/networks/templates/connections_diagram.html:119 +#: plinth/modules/networks/templates/connections_diagram.html:104 #, python-format msgid "Show connection %(name)s" msgstr "" -#: plinth/modules/networks/templates/connections_diagram.html:131 +#: plinth/modules/networks/templates/connections_diagram.html:116 msgid "Computer" msgstr "" -#: plinth/modules/networks/templates/connections_list.html:58 +#: plinth/modules/networks/templates/connections_list.html:8 #, fuzzy #| msgid "Connection refused" msgid "Connections" msgstr "Conexão recusada" -#: plinth/modules/networks/templates/connections_list.html:79 +#: plinth/modules/networks/templates/connections_list.html:29 #, python-format msgid "Delete connection %(name)s" msgstr "" -#: plinth/modules/networks/templates/connections_list.html:104 +#: plinth/modules/networks/templates/connections_list.html:54 msgid "Active" msgstr "" -#: plinth/modules/networks/templates/connections_list.html:107 +#: plinth/modules/networks/templates/connections_list.html:57 msgid "Inactive" msgstr "" -#: plinth/modules/networks/templates/connections_list.html:124 -#, python-format -msgid "%(box_name)s Internet Connectivity" +#: plinth/modules/networks/templates/connections_type_select.html:19 +msgid "Create..." msgstr "" -#: plinth/modules/networks/templates/connections_list.html:129 -#, python-format +#: plinth/modules/networks/templates/internet_connectivity_content.html:10 +msgid "What Type Of Internet Connection Do You Have?" +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_content.html:16 msgid "" -"The following best describes how your %(box_name)s is connected in your " -"network. This information is used only to suggest necessary configuration " -"actions." +"Select an option that best describes the type of Internet connection. This " +"information is used only to guide you with further setup." msgstr "" -#: plinth/modules/networks/templates/connections_list.html:137 -#, python-format +#: plinth/modules/networks/templates/internet_connectivity_firstboot.html:18 +#: plinth/modules/networks/templates/router_configuration_firstboot.html:18 +msgid "Skip this step" +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_firstboot.html:19 +#: plinth/modules/networks/templates/router_configuration_firstboot.html:19 +msgid "Next" +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:9 +msgid "Your Internet Connection Type" +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:14 msgid "" -"Your %(box_name)s gets its internet from your Router via WiFi or Ethernet " -"cable. This is a typical home setup." +"The following best describes the type of Internet connection provided by " +"your ISP. This information is only used to suggest you necessary " +"configuration actions." msgstr "" -#: plinth/modules/networks/templates/connections_list.html:145 -#: plinth/modules/networks/templates/connections_list.html:147 +#: plinth/modules/networks/templates/internet_connectivity_main.html:23 +msgid "My ISP provides a public IP address that does not change over time." +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:27 +msgid "My ISP provides a public IP address that may change over time." +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:31 +msgid "My ISP does not provide a public IP address." +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:37 +#: plinth/modules/networks/templates/router_configuration_main.html:29 #, fuzzy #| msgid "General Configuration" msgid "Update..." msgstr "Configuração Geral" -#: plinth/modules/networks/templates/connections_type_select.html:34 -msgid "Create..." -msgstr "" - -#: plinth/modules/networks/templates/router_configuration_content.html:25 +#: plinth/modules/networks/templates/router_configuration_content.html:10 #, python-format msgid "Setup %(box_name)s Behind a Router" msgstr "" -#: plinth/modules/networks/templates/router_configuration_content.html:31 +#: plinth/modules/networks/templates/router_configuration_content.html:16 #, python-format msgid "" "Your %(box_name)s gets its internet connection from your router via Wi-Fi or " "Ethernet cable. This is a typical home setup." msgstr "" -#: plinth/modules/networks/templates/router_configuration_content.html:38 +#: plinth/modules/networks/templates/router_configuration_content.html:23 #, python-format msgid "" "With this setup, any device on the internet trying to reach your " @@ -3639,24 +3735,24 @@ msgid "" "the services." msgstr "" -#: plinth/modules/networks/templates/router_configuration_content.html:47 +#: plinth/modules/networks/templates/router_configuration_content.html:32 msgid "" "If you don't have control over your router, choose not to configure it. To " -"see options, to overcome this limitation, choose 'no public address' option " +"see options to overcome this limitation, choose 'no public address' option " "in Internet connection type selection." msgstr "" -#: plinth/modules/networks/templates/router_configuration_content.html:54 +#: plinth/modules/networks/templates/router_configuration_content.html:39 msgid "Choose How You Wish to Configure Your Router" msgstr "" -#: plinth/modules/networks/templates/router_configuration_content.html:57 +#: plinth/modules/networks/templates/router_configuration_content.html:42 msgid "" "You will need to login to your router's administration console provided by " "the router. This may look like one of the following:" msgstr "" -#: plinth/modules/networks/templates/router_configuration_content.html:69 +#: plinth/modules/networks/templates/router_configuration_content.html:54 msgid "" "The username and password is configured by you when you first setup the " "router. For many routers, this information is printed at the back of the " @@ -3666,24 +3762,27 @@ msgid "" "full instructions on how to perform this task." msgstr "" -#: plinth/modules/networks/templates/router_configuration_firstboot.html:33 -msgid "skip this step" +#: plinth/modules/networks/templates/router_configuration_main.html:9 +#, python-format +msgid "%(box_name)s Internet Connectivity" msgstr "" -#: plinth/modules/networks/templates/router_configuration_firstboot.html:35 -msgid "Next" +#: plinth/modules/networks/templates/router_configuration_main.html:15 +#, python-format +msgid "" +"The following best describes how your %(box_name)s is connected in your " +"network. This information is used only to suggest necessary configuration " +"actions." msgstr "" -#: plinth/modules/openvpn/__init__.py:39 plinth/modules/openvpn/manifest.py:33 -msgid "OpenVPN" +#: plinth/modules/networks/templates/router_configuration_main.html:23 +#, python-format +msgid "" +"Your %(box_name)s gets its Internet from your Router via Wi-Fi or Ethernet " +"cable. This is a typical home setup." msgstr "" -#: plinth/modules/openvpn/__init__.py:43 -#: plinth/modules/wireguard/__init__.py:40 -msgid "Virtual Private Network" -msgstr "" - -#: plinth/modules/openvpn/__init__.py:47 +#: plinth/modules/openvpn/__init__.py:26 #, python-brace-format msgid "" "Virtual Private Network (VPN) is a technique for securely connecting two " @@ -3694,21 +3793,30 @@ msgid "" "security and anonymity." msgstr "" -#: plinth/modules/openvpn/__init__.py:79 +#: plinth/modules/openvpn/__init__.py:49 plinth/modules/openvpn/manifest.py:18 +msgid "OpenVPN" +msgstr "" + +#: plinth/modules/openvpn/__init__.py:50 +#: plinth/modules/wireguard/__init__.py:53 +msgid "Virtual Private Network" +msgstr "" + +#: plinth/modules/openvpn/__init__.py:61 #, python-brace-format msgid "" "Download Profile" msgstr "" -#: plinth/modules/openvpn/forms.py:27 +#: plinth/modules/openvpn/forms.py:12 msgid "Enable OpenVPN server" msgstr "" -#: plinth/modules/openvpn/manifest.py:63 -msgid "TunnelBlick" +#: plinth/modules/openvpn/manifest.py:48 +msgid "Tunnelblick" msgstr "" -#: plinth/modules/openvpn/templates/openvpn.html:42 +#: plinth/modules/openvpn/templates/openvpn.html:27 #, python-format msgid "" "OpenVPN has not yet been setup. Performing a secure setup takes a very long " @@ -3716,15 +3824,15 @@ msgid "" "If the setup is interrupted, you may start it again." msgstr "" -#: plinth/modules/openvpn/templates/openvpn.html:55 +#: plinth/modules/openvpn/templates/openvpn.html:40 msgid "Start setup" msgstr "" -#: plinth/modules/openvpn/templates/openvpn.html:64 +#: plinth/modules/openvpn/templates/openvpn.html:49 msgid "OpenVPN setup is running" msgstr "" -#: plinth/modules/openvpn/templates/openvpn.html:68 +#: plinth/modules/openvpn/templates/openvpn.html:53 #, python-format msgid "" "To perform a secure setup, this process takes a very long time. Depending " @@ -3732,11 +3840,11 @@ msgid "" "interrupted, you may start it again." msgstr "" -#: plinth/modules/openvpn/templates/openvpn.html:87 +#: plinth/modules/openvpn/templates/openvpn.html:72 msgid "Profile" msgstr "" -#: plinth/modules/openvpn/templates/openvpn.html:90 +#: plinth/modules/openvpn/templates/openvpn.html:75 #, python-format msgid "" "To connect to %(box_name)s's VPN, you need to download a profile and feed it " @@ -3745,32 +3853,24 @@ msgid "" "clients and instructions on how to configure them." msgstr "" -#: plinth/modules/openvpn/templates/openvpn.html:100 +#: plinth/modules/openvpn/templates/openvpn.html:85 #, python-format msgid "Profile is specific to each user of %(box_name)s. Keep it a secret." msgstr "" -#: plinth/modules/openvpn/templates/openvpn.html:111 +#: plinth/modules/openvpn/templates/openvpn.html:96 msgid "Download my profile" msgstr "" -#: plinth/modules/openvpn/views.py:133 +#: plinth/modules/openvpn/views.py:114 msgid "Setup completed." msgstr "" -#: plinth/modules/openvpn/views.py:135 +#: plinth/modules/openvpn/views.py:116 msgid "Setup failed." msgstr "" -#: plinth/modules/pagekite/__init__.py:39 -msgid "PageKite" -msgstr "" - -#: plinth/modules/pagekite/__init__.py:41 -msgid "Public Visibility" -msgstr "" - -#: plinth/modules/pagekite/__init__.py:45 +#: plinth/modules/pagekite/__init__.py:26 #, python-brace-format msgid "" "PageKite is a system for exposing {box_name} services when you don't have a " @@ -3779,33 +3879,33 @@ msgid "" "following situations:" msgstr "" -#: plinth/modules/pagekite/__init__.py:50 +#: plinth/modules/pagekite/__init__.py:31 #, python-brace-format msgid "{box_name} is behind a restricted firewall." msgstr "" -#: plinth/modules/pagekite/__init__.py:53 +#: plinth/modules/pagekite/__init__.py:34 #, python-brace-format msgid "{box_name} is connected to a (wireless) router which you don't control." msgstr "" -#: plinth/modules/pagekite/__init__.py:55 +#: plinth/modules/pagekite/__init__.py:36 msgid "" "Your ISP does not provide you an external IP address and instead provides " "Internet connection through NAT." msgstr "" -#: plinth/modules/pagekite/__init__.py:57 +#: plinth/modules/pagekite/__init__.py:38 msgid "" "Your ISP does not provide you a static IP address and your IP address " "changes every time you connect to Internet." msgstr "" -#: plinth/modules/pagekite/__init__.py:59 +#: plinth/modules/pagekite/__init__.py:40 msgid "Your ISP limits incoming connections." msgstr "" -#: plinth/modules/pagekite/__init__.py:61 +#: plinth/modules/pagekite/__init__.py:42 #, python-brace-format msgid "" "PageKite works around NAT, firewalls and IP address limitations by using a " @@ -3814,138 +3914,146 @@ msgid "" "the future it might be possible to use your buddy's {box_name} for this." msgstr "" -#: plinth/modules/pagekite/__init__.py:87 +#: plinth/modules/pagekite/__init__.py:62 +msgid "PageKite" +msgstr "" + +#: plinth/modules/pagekite/__init__.py:64 +msgid "Public Visibility" +msgstr "" + +#: plinth/modules/pagekite/__init__.py:74 msgid "PageKite Domain" msgstr "" -#: plinth/modules/pagekite/forms.py:66 +#: plinth/modules/pagekite/forms.py:51 msgid "Server domain" msgstr "" -#: plinth/modules/pagekite/forms.py:68 +#: plinth/modules/pagekite/forms.py:53 msgid "" "Select your pagekite server. Set \"pagekite.net\" to use the default " "pagekite.net server." msgstr "" -#: plinth/modules/pagekite/forms.py:71 plinth/modules/shadowsocks/forms.py:55 +#: plinth/modules/pagekite/forms.py:56 plinth/modules/shadowsocks/forms.py:40 msgid "Server port" msgstr "" -#: plinth/modules/pagekite/forms.py:72 +#: plinth/modules/pagekite/forms.py:57 msgid "Port of your pagekite server (default: 80)" msgstr "" -#: plinth/modules/pagekite/forms.py:74 +#: plinth/modules/pagekite/forms.py:59 msgid "Kite name" msgstr "" -#: plinth/modules/pagekite/forms.py:75 +#: plinth/modules/pagekite/forms.py:60 msgid "Example: mybox.pagekite.me" msgstr "" -#: plinth/modules/pagekite/forms.py:77 +#: plinth/modules/pagekite/forms.py:62 msgid "Invalid kite name" msgstr "" -#: plinth/modules/pagekite/forms.py:81 +#: plinth/modules/pagekite/forms.py:66 msgid "Kite secret" msgstr "" -#: plinth/modules/pagekite/forms.py:82 +#: plinth/modules/pagekite/forms.py:67 msgid "" "A secret associated with the kite or the default secret for your account if " "no secret is set on the kite." msgstr "" -#: plinth/modules/pagekite/forms.py:98 +#: plinth/modules/pagekite/forms.py:83 msgid "Kite details set" msgstr "" -#: plinth/modules/pagekite/forms.py:105 +#: plinth/modules/pagekite/forms.py:90 msgid "Pagekite server set" msgstr "" -#: plinth/modules/pagekite/forms.py:129 +#: plinth/modules/pagekite/forms.py:114 msgid "PageKite enabled" msgstr "" -#: plinth/modules/pagekite/forms.py:132 +#: plinth/modules/pagekite/forms.py:117 msgid "PageKite disabled" msgstr "" -#: plinth/modules/pagekite/forms.py:148 +#: plinth/modules/pagekite/forms.py:133 msgid "protocol" msgstr "" -#: plinth/modules/pagekite/forms.py:151 +#: plinth/modules/pagekite/forms.py:136 msgid "external (frontend) port" msgstr "" -#: plinth/modules/pagekite/forms.py:154 +#: plinth/modules/pagekite/forms.py:139 msgid "internal (freedombox) port" msgstr "" -#: plinth/modules/pagekite/forms.py:155 +#: plinth/modules/pagekite/forms.py:140 msgid "Enable Subdomains" msgstr "" -#: plinth/modules/pagekite/forms.py:189 +#: plinth/modules/pagekite/forms.py:174 msgid "Deleted custom service" msgstr "" -#: plinth/modules/pagekite/forms.py:222 +#: plinth/modules/pagekite/forms.py:207 msgid "" "This service is available as a standard service. Please use the \"Standard " "Services\" page to enable it." msgstr "" -#: plinth/modules/pagekite/forms.py:231 +#: plinth/modules/pagekite/forms.py:216 msgid "Added custom service" msgstr "" -#: plinth/modules/pagekite/forms.py:234 +#: plinth/modules/pagekite/forms.py:219 msgid "This service already exists" msgstr "" -#: plinth/modules/pagekite/templates/pagekite_configure.html:47 +#: plinth/modules/pagekite/templates/pagekite_configure.html:32 msgid "Custom Services" msgstr "" -#: plinth/modules/pagekite/templates/pagekite_configure.html:50 -#: plinth/modules/pagekite/templates/pagekite_configure.html:52 +#: plinth/modules/pagekite/templates/pagekite_configure.html:35 +#: plinth/modules/pagekite/templates/pagekite_configure.html:37 msgid "Add Custom Service" msgstr "" -#: plinth/modules/pagekite/templates/pagekite_configure.html:57 +#: plinth/modules/pagekite/templates/pagekite_configure.html:42 msgid "Existing custom services" msgstr "" -#: plinth/modules/pagekite/templates/pagekite_configure.html:71 +#: plinth/modules/pagekite/templates/pagekite_configure.html:56 #, python-format msgid "connected to %(backend_host)s:%(backend_port)s" msgstr "" -#: plinth/modules/pagekite/templates/pagekite_configure.html:83 +#: plinth/modules/pagekite/templates/pagekite_configure.html:68 msgid "Delete this service" msgstr "" -#: plinth/modules/pagekite/templates/pagekite_custom_services.html:30 +#: plinth/modules/pagekite/templates/pagekite_custom_services.html:15 msgid "Add custom PageKite service" msgstr "" -#: plinth/modules/pagekite/templates/pagekite_custom_services.html:32 +#: plinth/modules/pagekite/templates/pagekite_custom_services.html:17 msgid "" "Warning:imaps://imap.gmail.com. "
@@ -4261,17 +4359,22 @@ msgid ""
"a>)."
msgstr ""
-#: plinth/modules/samba/__init__.py:46
-msgid "Samba"
+#: plinth/modules/roundcube/__init__.py:54
+#: plinth/modules/roundcube/manifest.py:9
+msgid "Roundcube"
msgstr ""
-#: plinth/modules/samba/__init__.py:53
+#: plinth/modules/roundcube/__init__.py:55
+msgid "Email Client"
+msgstr ""
+
+#: plinth/modules/samba/__init__.py:32
msgid ""
"Samba allows to share files and folders between FreedomBox and other "
"computers in your local network."
msgstr ""
-#: plinth/modules/samba/__init__.py:56
+#: plinth/modules/samba/__init__.py:35
#, python-brace-format
msgid ""
"After installation, you can choose which disks to use for sharing. Enabled "
@@ -4280,55 +4383,59 @@ msgid ""
"There are three types of shares you can choose from: "
msgstr ""
-#: plinth/modules/samba/__init__.py:61
+#: plinth/modules/samba/__init__.py:40
msgid "Open share - accessible to everyone in your local network."
msgstr ""
-#: plinth/modules/samba/__init__.py:62
+#: plinth/modules/samba/__init__.py:41
msgid ""
"Group share - accessible only to FreedomBox users who are in the freedombox-"
"share group."
msgstr ""
-#: plinth/modules/samba/__init__.py:64
+#: plinth/modules/samba/__init__.py:43
msgid ""
"Home share - every user in the freedombox-share group can have their own "
"private space."
msgstr ""
-#: plinth/modules/samba/__init__.py:68
+#: plinth/modules/samba/__init__.py:47
msgid "Access to the private shares"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:39
-#: plinth/modules/samba/templates/samba.html:50
+#: plinth/modules/samba/__init__.py:61
+msgid "Samba"
+msgstr ""
+
+#: plinth/modules/samba/templates/samba.html:24
+#: plinth/modules/samba/templates/samba.html:35
#, fuzzy
#| msgid "Archive name"
msgid "Shares"
msgstr "Nome do arquivo"
-#: plinth/modules/samba/templates/samba.html:41
+#: plinth/modules/samba/templates/samba.html:26
msgid ""
"Note: Only specially created directories will be shared on selected disks, "
"not the whole disk."
msgstr ""
-#: plinth/modules/samba/templates/samba.html:49
+#: plinth/modules/samba/templates/samba.html:34
#, fuzzy
#| msgid "Domain Name"
msgid "Disk Name"
msgstr "Nome de Domínio"
-#: plinth/modules/samba/templates/samba.html:51
-#: plinth/modules/storage/templates/storage.html:44
+#: plinth/modules/samba/templates/samba.html:36
+#: plinth/modules/storage/templates/storage.html:29
msgid "Used"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:72
+#: plinth/modules/samba/templates/samba.html:57
msgid "VFAT partitions are not supported"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:103
+#: plinth/modules/samba/templates/samba.html:88
#, python-format
msgid ""
"You can find additional information about disks on the users module page."
msgstr ""
-#: plinth/modules/samba/templates/samba.html:109
+#: plinth/modules/samba/templates/samba.html:94
msgid "Users who can currently access group and home shares"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:113
+#: plinth/modules/samba/templates/samba.html:98
msgid ""
"Users needing to re-enter their password on the password change page to "
"access group and home shares"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:118
+#: plinth/modules/samba/templates/samba.html:103
msgid "Unavailable Shares"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:120
+#: plinth/modules/samba/templates/samba.html:105
msgid ""
"Shares that are configured but the disk is not available. If the disk is "
"plugged back in, sharing will be automatically enabled."
msgstr ""
-#: plinth/modules/samba/templates/samba.html:128
+#: plinth/modules/samba/templates/samba.html:113
#, fuzzy
#| msgid "Archive name"
msgid "Share name"
msgstr "Nome do arquivo"
-#: plinth/modules/samba/templates/samba.html:129
+#: plinth/modules/samba/templates/samba.html:114
#, fuzzy
#| msgid "Applications"
msgid "Action"
msgstr "Aplicações"
-#: plinth/modules/samba/views.py:61 plinth/modules/storage/forms.py:164
+#: plinth/modules/samba/views.py:43 plinth/modules/storage/forms.py:149
msgid "Open Share"
msgstr ""
-#: plinth/modules/samba/views.py:62 plinth/modules/storage/forms.py:162
+#: plinth/modules/samba/views.py:44 plinth/modules/storage/forms.py:147
msgid "Group Share"
msgstr ""
-#: plinth/modules/samba/views.py:63
+#: plinth/modules/samba/views.py:45
msgid "Home Share"
msgstr ""
-#: plinth/modules/samba/views.py:96
+#: plinth/modules/samba/views.py:78
msgid "Share enabled."
msgstr ""
-#: plinth/modules/samba/views.py:101
+#: plinth/modules/samba/views.py:83
#, fuzzy, python-brace-format
#| msgid "Error installing application: {error}"
msgid "Error enabling share: {error_message}"
msgstr "Erro a instalar a aplicação: {error}"
-#: plinth/modules/samba/views.py:106
+#: plinth/modules/samba/views.py:88
#, fuzzy
#| msgid "Applications"
msgid "Share disabled."
msgstr "Aplicações"
-#: plinth/modules/samba/views.py:111
+#: plinth/modules/samba/views.py:93
#, fuzzy, python-brace-format
#| msgid "Error installing application: {error}"
msgid "Error disabling share: {error_message}"
msgstr "Erro a instalar a aplicação: {error}"
-#: plinth/modules/searx/__init__.py:41 plinth/modules/searx/manifest.py:24
-msgid "Searx"
-msgstr ""
-
-#: plinth/modules/searx/__init__.py:45
-msgid "Web Search"
-msgstr ""
-
-#: plinth/modules/searx/__init__.py:48
+#: plinth/modules/searx/__init__.py:25
msgid ""
"Searx is a privacy-respecting Internet metasearch engine. It aggregrates and "
"displays results from multiple search engines."
msgstr ""
-#: plinth/modules/searx/__init__.py:50
+#: plinth/modules/searx/__init__.py:27
msgid ""
"Searx can be used to avoid tracking and profiling by search engines. It "
"stores no cookies by default."
msgstr ""
-#: plinth/modules/searx/__init__.py:54
+#: plinth/modules/searx/__init__.py:31
msgid "Search the web"
msgstr ""
-#: plinth/modules/searx/forms.py:30
+#: plinth/modules/searx/__init__.py:47 plinth/modules/searx/manifest.py:9
+msgid "Searx"
+msgstr ""
+
+#: plinth/modules/searx/__init__.py:48
+msgid "Web Search"
+msgstr ""
+
+#: plinth/modules/searx/forms.py:15
msgid "Safe Search"
msgstr ""
-#: plinth/modules/searx/forms.py:31
+#: plinth/modules/searx/forms.py:16
msgid "Select the default family filter to apply to your search results."
msgstr ""
-#: plinth/modules/searx/forms.py:32
+#: plinth/modules/searx/forms.py:17
msgid "None"
msgstr ""
-#: plinth/modules/searx/forms.py:32
+#: plinth/modules/searx/forms.py:17
msgid "Moderate"
msgstr ""
-#: plinth/modules/searx/forms.py:32
+#: plinth/modules/searx/forms.py:17
msgid "Strict"
msgstr ""
-#: plinth/modules/searx/forms.py:35
+#: plinth/modules/searx/forms.py:20
msgid "Allow Public Access"
msgstr ""
-#: plinth/modules/searx/forms.py:36
+#: plinth/modules/searx/forms.py:21
msgid "Allow this application to be used by anyone who can reach it."
msgstr "Permitir o uso desta aplicação por todos."
-#: plinth/modules/searx/views.py:59 plinth/modules/searx/views.py:70
-#: plinth/modules/tor/views.py:149 plinth/modules/tor/views.py:176
+#: plinth/modules/searx/views.py:39 plinth/modules/searx/views.py:50
+#: plinth/modules/tor/views.py:130 plinth/modules/tor/views.py:157
#, fuzzy
#| msgid "Configuration updated"
msgid "Configuration updated."
msgstr "Configuração atualizada"
-#: plinth/modules/security/forms.py:28
+#: plinth/modules/security/forms.py:13
msgid "Restrict console logins (recommended)"
msgstr ""
-#: plinth/modules/security/forms.py:29
+#: plinth/modules/security/forms.py:14
msgid ""
"When this option is enabled, only users in the \"admin\" group will be able "
"to log in to console or via SSH. Console users may be able to access some "
"services without further authorization."
msgstr ""
-#: plinth/modules/security/forms.py:34
+#: plinth/modules/security/forms.py:19
msgid "Fail2Ban (recommended)"
msgstr ""
-#: plinth/modules/security/forms.py:35
+#: plinth/modules/security/forms.py:20
msgid ""
"When this option is enabled, Fail2Ban will limit brute force break-in "
"attempts to the SSH server and other enabled password protected internet-"
"services."
msgstr ""
-#: plinth/modules/security/templates/security.html:26
-#: plinth/modules/security/templates/security.html:28
+#: plinth/modules/security/templates/security.html:11
+#: plinth/modules/security/templates/security.html:13
msgid "Show security report"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:25
-#: plinth/modules/security/views.py:87
+#: plinth/modules/security/templates/security_report.html:10
+#: plinth/modules/security/views.py:71
msgid "Security Report"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:27
+#: plinth/modules/security/templates/security_report.html:12
#, python-format
msgid ""
"The installed version of FreedomBox has %(count)s reported security "
"vulnerabilities."
msgstr ""
-#: plinth/modules/security/templates/security_report.html:33
+#: plinth/modules/security/templates/security_report.html:18
msgid ""
"The following table lists the current reported number, and historical count, "
"of security vulnerabilities for each installed app."
msgstr ""
-#: plinth/modules/security/templates/security_report.html:39
+#: plinth/modules/security/templates/security_report.html:24
msgid ""
"For apps that provide services, the \"Sandboxed\" column shows whether "
"sandboxing features are in use. Sandboxing mitigates the impact of a "
"potentially compromised app to the rest of the system."
msgstr ""
-#: plinth/modules/security/templates/security_report.html:46
+#: plinth/modules/security/templates/security_report.html:31
msgid ""
"\"Sandbox Coverage\" is a score of how effectively the service is isolated "
"from the rest of the system. It is only displayed while the service is "
"running."
msgstr ""
-#: plinth/modules/security/templates/security_report.html:55
+#: plinth/modules/security/templates/security_report.html:40
#, fuzzy
#| msgid "Name"
msgid "App Name"
msgstr "Nome"
-#: plinth/modules/security/templates/security_report.html:56
+#: plinth/modules/security/templates/security_report.html:41
msgid "Current Vulnerabilities"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:57
+#: plinth/modules/security/templates/security_report.html:42
msgid "Past Vulnerabilities"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:58
+#: plinth/modules/security/templates/security_report.html:43
msgid "Sandboxed"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:59
+#: plinth/modules/security/templates/security_report.html:44
msgid "Sandbox Coverage"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:70
+#: plinth/modules/security/templates/security_report.html:55
msgid "N/A"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:72
+#: plinth/modules/security/templates/security_report.html:57
msgid "Yes"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:74
+#: plinth/modules/security/templates/security_report.html:59
msgid "No"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:81
+#: plinth/modules/security/templates/security_report.html:66
#, fuzzy
#| msgid "Service discovery server is not running"
msgid "Not running"
msgstr "O Servidor da descoberta do serviço não está a correr"
-#: plinth/modules/security/views.py:69
+#: plinth/modules/security/views.py:53
#, 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:72
+#: plinth/modules/security/views.py:56
#, fuzzy
#| msgid "General Configuration"
msgid "Updated security configuration"
msgstr "Configuração Geral"
-#: plinth/modules/shaarli/__init__.py:34 plinth/modules/shaarli/manifest.py:23
-msgid "Shaarli"
-msgstr ""
-
-#: plinth/modules/shaarli/__init__.py:36
-msgid "Bookmarks"
-msgstr ""
-
-#: plinth/modules/shaarli/__init__.py:39
+#: plinth/modules/shaarli/__init__.py:20
msgid "Shaarli allows you to save and share bookmarks."
msgstr ""
-#: plinth/modules/shaarli/__init__.py:40
+#: plinth/modules/shaarli/__init__.py:21
msgid ""
"When enabled, Shaarli will be available from /shaarli path on the web server. Note that Shaarli "
@@ -4592,22 +4691,22 @@ msgid ""
"initial visit."
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:35
-msgid "Shadowsocks"
+#: plinth/modules/shaarli/__init__.py:39 plinth/modules/shaarli/manifest.py:8
+msgid "Shaarli"
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:39
-msgid "Socks5 Proxy"
+#: plinth/modules/shaarli/__init__.py:40
+msgid "Bookmarks"
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:46
+#: plinth/modules/shadowsocks/__init__.py:25
msgid ""
"Shadowsocks is a lightweight and secure SOCKS5 proxy, designed to protect "
"your Internet traffic. It can be used to bypass Internet filtering and "
"censorship."
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:50
+#: plinth/modules/shadowsocks/__init__.py:29
#, python-brace-format
msgid ""
"Your {box_name} can run a Shadowsocks client, that can connect to a "
@@ -4616,149 +4715,153 @@ msgid ""
"the Shadowsocks server."
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:55
+#: plinth/modules/shadowsocks/__init__.py:34
msgid ""
"To use Shadowsocks after setup, set the SOCKS5 proxy URL in your device, "
"browser or application to http://freedombox_address:1080/"
msgstr ""
-#: plinth/modules/shadowsocks/forms.py:28
-#: plinth/modules/shadowsocks/forms.py:29
+#: plinth/modules/shadowsocks/__init__.py:50
+msgid "Shadowsocks"
+msgstr ""
+
+#: plinth/modules/shadowsocks/__init__.py:52
+msgid "Socks5 Proxy"
+msgstr ""
+
+#: plinth/modules/shadowsocks/forms.py:13
+#: plinth/modules/shadowsocks/forms.py:14
msgid "Recommended"
msgstr ""
-#: plinth/modules/shadowsocks/forms.py:52
+#: plinth/modules/shadowsocks/forms.py:37
msgid "Server"
msgstr ""
-#: plinth/modules/shadowsocks/forms.py:53
+#: plinth/modules/shadowsocks/forms.py:38
msgid "Server hostname or IP address"
msgstr ""
-#: plinth/modules/shadowsocks/forms.py:57
+#: plinth/modules/shadowsocks/forms.py:42
msgid "Server port number"
msgstr ""
-#: plinth/modules/shadowsocks/forms.py:60
+#: plinth/modules/shadowsocks/forms.py:45
msgid "Password used to encrypt data. Must match server password."
msgstr ""
-#: plinth/modules/shadowsocks/forms.py:65
+#: plinth/modules/shadowsocks/forms.py:50
msgid "Encryption method. Must match setting on server."
msgstr ""
-#: plinth/modules/sharing/__init__.py:34
-msgid "Sharing"
-msgstr ""
-
-#: plinth/modules/sharing/__init__.py:38
+#: plinth/modules/sharing/__init__.py:21
#, python-brace-format
msgid ""
"Sharing allows you to share files and folders on your {box_name} over the "
"web with chosen groups of users."
msgstr ""
-#: plinth/modules/sharing/forms.py:33
+#: plinth/modules/sharing/__init__.py:38
+msgid "Sharing"
+msgstr ""
+
+#: plinth/modules/sharing/forms.py:18
msgid "Name of the share"
msgstr ""
-#: plinth/modules/sharing/forms.py:35
+#: plinth/modules/sharing/forms.py:20
msgid ""
"A lowercase alpha-numeric string that uniquely identifies a share. Example: "
"media."
msgstr ""
-#: plinth/modules/sharing/forms.py:39
+#: plinth/modules/sharing/forms.py:24
msgid "Path to share"
msgstr ""
-#: plinth/modules/sharing/forms.py:40
+#: plinth/modules/sharing/forms.py:25
msgid "Disk path to a folder on this server that you intend to share."
msgstr ""
-#: plinth/modules/sharing/forms.py:43
+#: plinth/modules/sharing/forms.py:28
msgid "Public share"
msgstr ""
-#: plinth/modules/sharing/forms.py:44
+#: plinth/modules/sharing/forms.py:29
msgid "Make files in this folder available to anyone with the link."
msgstr ""
-#: plinth/modules/sharing/forms.py:48
+#: plinth/modules/sharing/forms.py:33
msgid "User groups that can read the files in the share"
msgstr ""
-#: plinth/modules/sharing/forms.py:50
+#: plinth/modules/sharing/forms.py:35
msgid ""
"Users of the selected user groups will be able to read the files in the "
"share."
msgstr ""
-#: plinth/modules/sharing/forms.py:67
+#: plinth/modules/sharing/forms.py:52
msgid "A share with this name already exists."
msgstr ""
-#: plinth/modules/sharing/forms.py:78
+#: plinth/modules/sharing/forms.py:63
msgid "Shares should be either public or shared with at least one group"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:39
-#: plinth/modules/sharing/templates/sharing.html:42
+#: plinth/modules/sharing/templates/sharing.html:24
+#: plinth/modules/sharing/templates/sharing.html:27
msgid "Add share"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:47
+#: plinth/modules/sharing/templates/sharing.html:32
msgid "No shares currently configured."
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:53
+#: plinth/modules/sharing/templates/sharing.html:38
msgid "Disk Path"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:54
+#: plinth/modules/sharing/templates/sharing.html:39
msgid "Shared Over"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:55
+#: plinth/modules/sharing/templates/sharing.html:40
msgid "With Groups"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:73
+#: plinth/modules/sharing/templates/sharing.html:58
msgid "public access"
msgstr ""
-#: plinth/modules/sharing/views.py:55
+#: plinth/modules/sharing/views.py:39
msgid "Share added."
msgstr ""
-#: plinth/modules/sharing/views.py:60
+#: plinth/modules/sharing/views.py:44
msgid "Add Share"
msgstr ""
-#: plinth/modules/sharing/views.py:75
+#: plinth/modules/sharing/views.py:59
msgid "Share edited."
msgstr ""
-#: plinth/modules/sharing/views.py:80
+#: plinth/modules/sharing/views.py:64
msgid "Edit Share"
msgstr ""
-#: plinth/modules/sharing/views.py:111
+#: plinth/modules/sharing/views.py:95
msgid "Share deleted."
msgstr ""
-#: plinth/modules/snapshot/__init__.py:37
-msgid "Storage Snapshots"
-msgstr ""
-
-#: plinth/modules/snapshot/__init__.py:40
+#: plinth/modules/snapshot/__init__.py:23
msgid ""
"Snapshots allows creating and managing btrfs file system snapshots. These "
"can be used to roll back the system to a previously known good state in case "
"of unwanted changes to the system."
msgstr ""
-#: plinth/modules/snapshot/__init__.py:44
+#: plinth/modules/snapshot/__init__.py:27
#, no-python-format
msgid ""
"Snapshots are taken periodically (called timeline snapshots) and also before "
@@ -4766,194 +4869,194 @@ msgid ""
"cleaned up according to the settings below."
msgstr ""
-#: plinth/modules/snapshot/__init__.py:47
+#: plinth/modules/snapshot/__init__.py:30
msgid ""
"Snapshots currently work on btrfs file systems only and on the root "
"partition only. Snapshots are not a replacement for backups since they can only be stored on the same partition. "
msgstr ""
-#: plinth/modules/snapshot/forms.py:27
+#: plinth/modules/snapshot/__init__.py:52
+msgid "Storage Snapshots"
+msgstr ""
+
+#: plinth/modules/snapshot/forms.py:12
msgid "Free Disk Space to Maintain"
msgstr ""
-#: plinth/modules/snapshot/forms.py:28
+#: plinth/modules/snapshot/forms.py:13
msgid ""
"Maintain this percentage of free space on the disk. If free space falls "
"below this value, older snapshots are removed until this much free space is "
"regained. The default value is 30%."
msgstr ""
-#: plinth/modules/snapshot/forms.py:35
+#: plinth/modules/snapshot/forms.py:20
msgid "Timeline Snapshots"
msgstr ""
-#: plinth/modules/snapshot/forms.py:36
+#: plinth/modules/snapshot/forms.py:21
msgid ""
"Enable or disable timeline snapshots (hourly, daily, monthly and yearly)."
msgstr ""
-#: plinth/modules/snapshot/forms.py:41
+#: plinth/modules/snapshot/forms.py:26
msgid "Software Installation Snapshots"
msgstr ""
-#: plinth/modules/snapshot/forms.py:42
+#: plinth/modules/snapshot/forms.py:27
msgid "Enable or disable snapshots before and after software installation"
msgstr ""
-#: plinth/modules/snapshot/forms.py:47
+#: plinth/modules/snapshot/forms.py:32
msgid "Hourly Snapshots Limit"
msgstr ""
-#: plinth/modules/snapshot/forms.py:48
+#: plinth/modules/snapshot/forms.py:33
msgid "Keep a maximum of this many hourly snapshots."
msgstr ""
-#: plinth/modules/snapshot/forms.py:51
+#: plinth/modules/snapshot/forms.py:36
msgid "Daily Snapshots Limit"
msgstr ""
-#: plinth/modules/snapshot/forms.py:52
+#: plinth/modules/snapshot/forms.py:37
msgid "Keep a maximum of this many daily snapshots."
msgstr ""
-#: plinth/modules/snapshot/forms.py:55
+#: plinth/modules/snapshot/forms.py:40
msgid "Weekly Snapshots Limit"
msgstr ""
-#: plinth/modules/snapshot/forms.py:56
+#: plinth/modules/snapshot/forms.py:41
msgid "Keep a maximum of this many weekly snapshots."
msgstr ""
-#: plinth/modules/snapshot/forms.py:59
+#: plinth/modules/snapshot/forms.py:44
msgid "Monthly Snapshots Limit"
msgstr ""
-#: plinth/modules/snapshot/forms.py:60
+#: plinth/modules/snapshot/forms.py:45
msgid "Keep a maximum of this many monthly snapshots."
msgstr ""
-#: plinth/modules/snapshot/forms.py:63
+#: plinth/modules/snapshot/forms.py:48
msgid "Yearly Snapshots Limit"
msgstr ""
-#: plinth/modules/snapshot/forms.py:64
+#: plinth/modules/snapshot/forms.py:49
msgid ""
"Keep a maximum of this many yearly snapshots. The default value is 0 "
"(disabled)."
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:27
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:12
msgid "Delete the following snapshots permanently?"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:31
-#: plinth/modules/snapshot/templates/snapshot_manage.html:43
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:39
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:16
+#: plinth/modules/snapshot/templates/snapshot_manage.html:28
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:24
msgid "Number"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:32
-#: plinth/modules/snapshot/templates/snapshot_manage.html:44
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:40
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:17
+#: plinth/modules/snapshot/templates/snapshot_manage.html:29
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:25
msgid "Date"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:52
-#: plinth/modules/snapshot/templates/snapshot_manage.html:37
-#: plinth/modules/snapshot/views.py:196
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:37
+#: plinth/modules/snapshot/templates/snapshot_manage.html:22
+#: plinth/modules/snapshot/views.py:175
msgid "Delete Snapshots"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_manage.html:33
+#: plinth/modules/snapshot/templates/snapshot_manage.html:18
msgid "Create Snapshot"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_manage.html:46
+#: plinth/modules/snapshot/templates/snapshot_manage.html:31
msgid "Rollback"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_manage.html:57
+#: plinth/modules/snapshot/templates/snapshot_manage.html:42
msgid "active"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_manage.html:66
+#: plinth/modules/snapshot/templates/snapshot_manage.html:51
#, python-format
msgid "Rollback to snapshot #%(number)s"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_not_supported.html:26
+#: plinth/modules/snapshot/templates/snapshot_not_supported.html:11
#, python-format
msgid ""
"Your have a filesystem of type %(fs_type)s. Snapshots are "
"currently only available on %(types_supported)s filesystems."
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:27
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:12
msgid "Roll back the system to this snapshot?"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:30
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:15
msgid ""
"A new snapshot with the current state of the file system will be "
"automatically created. You will be able to undo a rollback by reverting to "
"the newly created snapshot."
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:57
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:42
#, python-format
msgid "Rollback to Snapshot #%(number)s"
msgstr ""
-#: plinth/modules/snapshot/views.py:45
+#: plinth/modules/snapshot/views.py:30
msgid "Manage Snapshots"
msgstr ""
-#: plinth/modules/snapshot/views.py:98
+#: plinth/modules/snapshot/views.py:79
msgid "Created snapshot."
msgstr ""
-#: plinth/modules/snapshot/views.py:156
+#: plinth/modules/snapshot/views.py:135
#, fuzzy
#| msgid "Configuration updated"
msgid "Storage snapshots configuration updated"
msgstr "Configuração atualizada"
-#: plinth/modules/snapshot/views.py:160 plinth/modules/tor/views.py:79
+#: plinth/modules/snapshot/views.py:139 plinth/modules/tor/views.py:60
#, python-brace-format
msgid "Action error: {0} [{1}] [{2}]"
msgstr ""
-#: plinth/modules/snapshot/views.py:175
+#: plinth/modules/snapshot/views.py:154
msgid "Deleted all snapshots"
msgstr ""
-#: plinth/modules/snapshot/views.py:179
+#: plinth/modules/snapshot/views.py:158
msgid "Deleted selected snapshots"
msgstr ""
-#: plinth/modules/snapshot/views.py:184
+#: plinth/modules/snapshot/views.py:163
msgid "Snapshot is currently in use. Please try again later."
msgstr ""
-#: plinth/modules/snapshot/views.py:207
+#: plinth/modules/snapshot/views.py:186
#, python-brace-format
msgid "Rolled back to snapshot #{number}."
msgstr ""
-#: plinth/modules/snapshot/views.py:210
+#: plinth/modules/snapshot/views.py:189
msgid "The system must be restarted to complete the rollback."
msgstr ""
-#: plinth/modules/snapshot/views.py:222
+#: plinth/modules/snapshot/views.py:201
msgid "Rollback to Snapshot"
msgstr ""
-#: plinth/modules/ssh/__init__.py:43
-msgid "Secure Shell (SSH) Server"
-msgstr ""
-
-#: plinth/modules/ssh/__init__.py:46
+#: plinth/modules/ssh/__init__.py:29
msgid ""
"A Secure Shell server uses the secure shell protocol to accept connections "
"from remote computers. An authorized remote computer can perform "
@@ -4961,58 +5064,58 @@ msgid ""
"connections."
msgstr ""
-#: plinth/modules/ssh/forms.py:30
+#: plinth/modules/ssh/__init__.py:50
+msgid "Secure Shell (SSH) Server"
+msgstr ""
+
+#: plinth/modules/ssh/forms.py:15
msgid "Disable password authentication"
msgstr ""
-#: plinth/modules/ssh/forms.py:31
+#: plinth/modules/ssh/forms.py:16
msgid ""
"Improves security by preventing password guessing. Ensure that you have "
"setup SSH keys in your administrator user account before enabling this "
"option."
msgstr ""
-#: plinth/modules/ssh/templates/ssh.html:26
+#: plinth/modules/ssh/templates/ssh.html:11
#, fuzzy
#| msgid "Server Administration"
msgid "Server Fingerprints"
msgstr "Administração do servidor"
-#: plinth/modules/ssh/templates/ssh.html:29
+#: plinth/modules/ssh/templates/ssh.html:14
msgid ""
"When connecting to the server, ensure that the fingerprint shown by the SSH "
"client matches one of these fingerprints."
msgstr ""
-#: plinth/modules/ssh/templates/ssh.html:38
+#: plinth/modules/ssh/templates/ssh.html:23
msgid "Algorithm"
msgstr ""
-#: plinth/modules/ssh/templates/ssh.html:39
+#: plinth/modules/ssh/templates/ssh.html:24
msgid "Fingerprint"
msgstr ""
-#: plinth/modules/ssh/views.py:66
+#: plinth/modules/ssh/views.py:48
msgid "SSH authentication with password disabled."
msgstr ""
-#: plinth/modules/ssh/views.py:69
+#: plinth/modules/ssh/views.py:51
msgid "SSH authentication with password enabled."
msgstr ""
-#: plinth/modules/sso/__init__.py:30
+#: plinth/modules/sso/__init__.py:33
msgid "Single Sign On"
msgstr ""
-#: plinth/modules/sso/templates/login.html:35
+#: plinth/modules/sso/templates/login.html:20
msgid "Login"
msgstr ""
-#: plinth/modules/storage/__init__.py:39 plinth/modules/storage/__init__.py:331
-msgid "Storage"
-msgstr ""
-
-#: plinth/modules/storage/__init__.py:47
+#: plinth/modules/storage/__init__.py:30
#, python-brace-format
msgid ""
"This module allows you to manage storage media attached to your {box_name}. "
@@ -5020,151 +5123,155 @@ msgid ""
"media, expand the root partition etc."
msgstr ""
-#: plinth/modules/storage/__init__.py:224
+#: plinth/modules/storage/__init__.py:52 plinth/modules/storage/__init__.py:318
+msgid "Storage"
+msgstr ""
+
+#: plinth/modules/storage/__init__.py:211
#, python-brace-format
msgid "{disk_size:.1f} bytes"
msgstr ""
-#: plinth/modules/storage/__init__.py:228
+#: plinth/modules/storage/__init__.py:215
#, python-brace-format
msgid "{disk_size:.1f} KiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:232
+#: plinth/modules/storage/__init__.py:219
#, python-brace-format
msgid "{disk_size:.1f} MiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:236
+#: plinth/modules/storage/__init__.py:223
#, python-brace-format
msgid "{disk_size:.1f} GiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:239
+#: plinth/modules/storage/__init__.py:226
#, python-brace-format
msgid "{disk_size:.1f} TiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:246
+#: plinth/modules/storage/__init__.py:233
msgid "The operation failed."
msgstr ""
-#: plinth/modules/storage/__init__.py:248
+#: plinth/modules/storage/__init__.py:235
msgid "The operation was cancelled."
msgstr ""
-#: plinth/modules/storage/__init__.py:250
+#: plinth/modules/storage/__init__.py:237
#, fuzzy
#| msgid "Service discovery server is running"
msgid "The device is already unmounting."
msgstr "O Servidor da descoberta do serviço está a correr"
-#: plinth/modules/storage/__init__.py:252
+#: plinth/modules/storage/__init__.py:239
msgid "The operation is not supported due to missing driver/tool support."
msgstr ""
-#: plinth/modules/storage/__init__.py:255
+#: plinth/modules/storage/__init__.py:242
msgid "The operation timed out."
msgstr ""
-#: plinth/modules/storage/__init__.py:257
+#: plinth/modules/storage/__init__.py:244
msgid "The operation would wake up a disk that is in a deep-sleep state."
msgstr "Esta operação pode ligar um disco que esteja no estado de adormecido."
-#: plinth/modules/storage/__init__.py:260
+#: plinth/modules/storage/__init__.py:247
msgid "Attempting to unmount a device that is busy."
msgstr ""
-#: plinth/modules/storage/__init__.py:262
+#: plinth/modules/storage/__init__.py:249
msgid "The operation has already been cancelled."
msgstr ""
-#: plinth/modules/storage/__init__.py:268
+#: plinth/modules/storage/__init__.py:255
msgid "Not authorized to perform the requested operation."
msgstr ""
-#: plinth/modules/storage/__init__.py:270
+#: plinth/modules/storage/__init__.py:257
msgid "The device is already mounted."
msgstr ""
-#: plinth/modules/storage/__init__.py:272
+#: plinth/modules/storage/__init__.py:259
msgid "The device is not mounted."
msgstr ""
-#: plinth/modules/storage/__init__.py:275
+#: plinth/modules/storage/__init__.py:262
msgid "Not permitted to use the requested option."
msgstr ""
-#: plinth/modules/storage/__init__.py:278
+#: plinth/modules/storage/__init__.py:265
msgid "The device is mounted by another user."
msgstr ""
-#: plinth/modules/storage/__init__.py:326
+#: plinth/modules/storage/__init__.py:313
#, no-python-format, python-brace-format
msgid "Low space on system partition: {percent_used}% used, {free_space} free."
msgstr ""
-#: plinth/modules/storage/__init__.py:328
+#: plinth/modules/storage/__init__.py:315
msgid "Low disk space"
msgstr ""
-#: plinth/modules/storage/forms.py:79
+#: plinth/modules/storage/forms.py:64
#, fuzzy
#| msgid "Invalid domain name"
msgid "Invalid directory name."
msgstr "Nome de domínio inválido"
-#: plinth/modules/storage/forms.py:97
+#: plinth/modules/storage/forms.py:82
msgid "Directory does not exist."
msgstr ""
-#: plinth/modules/storage/forms.py:99
+#: plinth/modules/storage/forms.py:84
msgid "Path is not a directory."
msgstr ""
-#: plinth/modules/storage/forms.py:102
+#: plinth/modules/storage/forms.py:87
msgid "Directory is not readable by the user."
msgstr ""
-#: plinth/modules/storage/forms.py:105
+#: plinth/modules/storage/forms.py:90
msgid "Directory is not writable by the user."
msgstr ""
-#: plinth/modules/storage/forms.py:110
+#: plinth/modules/storage/forms.py:95
msgid "Directory"
msgstr ""
-#: plinth/modules/storage/forms.py:113
+#: plinth/modules/storage/forms.py:98
msgid "Subdirectory (optional)"
msgstr ""
-#: plinth/modules/storage/forms.py:160
+#: plinth/modules/storage/forms.py:145
#, fuzzy
#| msgid "Archive name"
msgid "Share"
msgstr "Nome do arquivo"
-#: plinth/modules/storage/forms.py:168
+#: plinth/modules/storage/forms.py:153
msgid "Other directory (specify below)"
msgstr ""
-#: plinth/modules/storage/templates/storage.html:35
+#: plinth/modules/storage/templates/storage.html:20
msgid "The following storage devices are in use:"
msgstr ""
-#: plinth/modules/storage/templates/storage.html:41
+#: plinth/modules/storage/templates/storage.html:26
msgid "Label"
msgstr ""
-#: plinth/modules/storage/templates/storage.html:42
+#: plinth/modules/storage/templates/storage.html:27
msgid "Mount Point"
msgstr ""
-#: plinth/modules/storage/templates/storage.html:90
+#: plinth/modules/storage/templates/storage.html:75
msgid "Partition Expansion"
msgstr ""
-#: plinth/modules/storage/templates/storage.html:92
+#: plinth/modules/storage/templates/storage.html:77
#, python-format
msgid ""
"There is %(expandable_root_size)s of unallocated space available after your "
@@ -5172,13 +5279,13 @@ msgid ""
"will provide you additional free space to store your files."
msgstr ""
-#: plinth/modules/storage/templates/storage.html:102
-#: plinth/modules/storage/templates/storage_expand.html:39
-#: plinth/modules/storage/views.py:76
+#: plinth/modules/storage/templates/storage.html:87
+#: plinth/modules/storage/templates/storage_expand.html:24
+#: plinth/modules/storage/views.py:58
msgid "Expand Root Partition"
msgstr ""
-#: plinth/modules/storage/templates/storage_expand.html:29
+#: plinth/modules/storage/templates/storage_expand.html:14
#, python-format
msgid ""
"Please backup your data before proceeding. After this operation, "
@@ -5186,40 +5293,31 @@ msgid ""
"root partition."
msgstr ""
-#: plinth/modules/storage/views.py:88
+#: plinth/modules/storage/views.py:70
#, fuzzy, python-brace-format
#| msgid "Error setting language: {exception}"
msgid "Error expanding partition: {exception}"
msgstr "Erro ao definir a língua: {exception}"
-#: plinth/modules/storage/views.py:91
+#: plinth/modules/storage/views.py:73
msgid "Partition expanded successfully."
msgstr ""
-#: plinth/modules/storage/views.py:109
+#: plinth/modules/storage/views.py:91
#, python-brace-format
msgid "{drive_vendor} {drive_model} can be safely unplugged."
msgstr ""
-#: plinth/modules/storage/views.py:113
+#: plinth/modules/storage/views.py:95
msgid "Device can be safely unplugged."
msgstr ""
-#: plinth/modules/storage/views.py:123
+#: plinth/modules/storage/views.py:105
#, python-brace-format
msgid "Error ejecting device: {error_message}"
msgstr ""
-#: plinth/modules/syncthing/__init__.py:40
-#: plinth/modules/syncthing/manifest.py:28
-msgid "Syncthing"
-msgstr ""
-
-#: plinth/modules/syncthing/__init__.py:44
-msgid "File Synchronization"
-msgstr ""
-
-#: plinth/modules/syncthing/__init__.py:47
+#: plinth/modules/syncthing/__init__.py:26
msgid ""
"Syncthing is an application to synchronize files across multiple devices, e."
"g. your desktop computer and mobile phone. Creation, modification, or "
@@ -5227,7 +5325,7 @@ msgid ""
"other devices that also run Syncthing."
msgstr ""
-#: plinth/modules/syncthing/__init__.py:52
+#: plinth/modules/syncthing/__init__.py:31
#, python-brace-format
msgid ""
"Running Syncthing on {box_name} provides an extra synchronization point for "
@@ -5238,19 +5336,20 @@ msgid ""
"{box_name} is only available for users belonging to the \"admin\" group."
msgstr ""
-#: plinth/modules/syncthing/__init__.py:63
+#: plinth/modules/syncthing/__init__.py:40
msgid "Administer Syncthing application"
msgstr ""
-#: plinth/modules/tahoe/__init__.py:43
-msgid "Tahoe-LAFS"
+#: plinth/modules/syncthing/__init__.py:54
+#: plinth/modules/syncthing/manifest.py:13
+msgid "Syncthing"
msgstr ""
-#: plinth/modules/tahoe/__init__.py:47
-msgid "Distributed File Storage"
+#: plinth/modules/syncthing/__init__.py:55
+msgid "File Synchronization"
msgstr ""
-#: plinth/modules/tahoe/__init__.py:134
+#: plinth/modules/tahoe/__init__.py:30
msgid ""
"Tahoe-LAFS is a decentralized secure file storage system. It uses provider "
"independent security to store files over a distributed network of storage "
@@ -5258,7 +5357,7 @@ msgid ""
"remaining nodes."
msgstr ""
-#: plinth/modules/tahoe/__init__.py:139
+#: plinth/modules/tahoe/__init__.py:35
#, python-brace-format
msgid ""
"This {box_name} hosts a storage node and an introducer by default. "
@@ -5266,7 +5365,15 @@ msgid ""
"other storage nodes."
msgstr ""
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:33
+#: plinth/modules/tahoe/__init__.py:66
+msgid "Tahoe-LAFS"
+msgstr ""
+
+#: plinth/modules/tahoe/__init__.py:68
+msgid "Distributed File Storage"
+msgstr ""
+
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:17
#, python-format
msgid ""
"The Tahoe-LAFS server domain is set to %(domain_name)s. Changing the "
@@ -5275,37 +5382,33 @@ msgid ""
"%(domain_name)s:5678\">https://%(domain_name)s:5678."
msgstr ""
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:55
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:39
msgid "Local introducer"
msgstr ""
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:43
#: plinth/modules/tahoe/templates/tahoe-post-setup.html:59
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:75
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:92
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:76
msgid "Pet Name"
msgstr ""
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:72
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:56
msgid "Add new introducer"
msgstr ""
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:83
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:67
msgid "Add"
msgstr ""
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:88
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:72
msgid "Connected introducers"
msgstr ""
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:105
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:89
msgid "Remove"
msgstr ""
-#: plinth/modules/tor/__init__.py:47
-msgid "Tor"
-msgstr ""
-
-#: plinth/modules/tor/__init__.py:52
+#: plinth/modules/tor/__init__.py:33
msgid ""
"Tor is an anonymous communication system. You can learn more about it from "
"the Tor Project website. For "
@@ -5314,78 +5417,82 @@ msgid ""
"\">Tor Browser."
msgstr ""
-#: plinth/modules/tor/__init__.py:83
+#: plinth/modules/tor/__init__.py:55
+msgid "Tor"
+msgstr ""
+
+#: plinth/modules/tor/__init__.py:66
msgid "Tor Onion Service"
msgstr ""
-#: plinth/modules/tor/__init__.py:87
+#: plinth/modules/tor/__init__.py:70
msgid "Tor Socks Proxy"
msgstr ""
-#: plinth/modules/tor/__init__.py:91
+#: plinth/modules/tor/__init__.py:74
msgid "Tor Bridge Relay"
msgstr ""
-#: plinth/modules/tor/__init__.py:112
+#: plinth/modules/tor/__init__.py:95
msgid "Tor relay port available"
msgstr ""
-#: plinth/modules/tor/__init__.py:122
+#: plinth/modules/tor/__init__.py:105
msgid "Obfs3 transport registered"
msgstr ""
-#: plinth/modules/tor/__init__.py:132
+#: plinth/modules/tor/__init__.py:115
msgid "Obfs4 transport registered"
msgstr ""
-#: plinth/modules/tor/__init__.py:225
+#: plinth/modules/tor/__init__.py:208
#, python-brace-format
msgid "Access URL {url} on tcp{kind} via Tor"
msgstr ""
-#: plinth/modules/tor/__init__.py:236
+#: plinth/modules/tor/__init__.py:219
#, python-brace-format
msgid "Confirm Tor usage at {url} on tcp{kind}"
msgstr ""
-#: plinth/modules/tor/forms.py:46
+#: plinth/modules/tor/forms.py:31
msgid ""
"Enter a valid bridge with this format: [transport] IP:ORPort [fingerprint]"
msgstr ""
-#: plinth/modules/tor/forms.py:88
+#: plinth/modules/tor/forms.py:73
msgid "Enable Tor"
msgstr ""
-#: plinth/modules/tor/forms.py:90
+#: plinth/modules/tor/forms.py:75
msgid "Use upstream bridges to connect to Tor network"
msgstr ""
-#: plinth/modules/tor/forms.py:92
+#: plinth/modules/tor/forms.py:77
msgid ""
"When enabled, the bridges configured below will be used to connect to the "
"Tor network. Use this option if your Internet Service Provider (ISP) blocks "
"or censors connections to the Tor Network. This will disable relay modes."
msgstr ""
-#: plinth/modules/tor/forms.py:97
+#: plinth/modules/tor/forms.py:82
msgid "Upstream bridges"
msgstr ""
-#: plinth/modules/tor/forms.py:99
+#: plinth/modules/tor/forms.py:84
msgid ""
"You can get some bridges from https://bridges.torproject.org/ and copy/paste the bridge information "
"here. Currently supported transports are none, obfs3, obfs4 and scamblesuit."
msgstr ""
-#: plinth/modules/tor/forms.py:105
+#: plinth/modules/tor/forms.py:90
#, fuzzy
#| msgid "Enable network time"
msgid "Enable Tor relay"
msgstr "Ativar tempo da rede"
-#: plinth/modules/tor/forms.py:106
+#: plinth/modules/tor/forms.py:91
#, python-brace-format
msgid ""
"When enabled, your {box_name} will run a Tor relay and donate bandwidth to "
@@ -5393,24 +5500,24 @@ msgid ""
"download bandwidth."
msgstr ""
-#: plinth/modules/tor/forms.py:111
+#: plinth/modules/tor/forms.py:96
msgid "Enable Tor bridge relay"
msgstr ""
-#: plinth/modules/tor/forms.py:113
+#: plinth/modules/tor/forms.py:98
msgid ""
"When enabled, relay information is published in the Tor bridge database "
"instead of public Tor relay database making it harder to censor this node. "
"This helps others circumvent censorship."
msgstr ""
-#: plinth/modules/tor/forms.py:118
+#: plinth/modules/tor/forms.py:103
#, fuzzy
#| msgid "Enable service discovery"
msgid "Enable Tor Hidden Service"
msgstr "Permitir descoberta do serviço"
-#: plinth/modules/tor/forms.py:120
+#: plinth/modules/tor/forms.py:105
#, python-brace-format
msgid ""
"A hidden service will allow {box_name} to provide selected services (such as "
@@ -5418,218 +5525,214 @@ msgid ""
"anonymity yet."
msgstr ""
-#: plinth/modules/tor/forms.py:125
+#: plinth/modules/tor/forms.py:110
msgid "Download software packages over Tor"
msgstr ""
-#: plinth/modules/tor/forms.py:126
+#: plinth/modules/tor/forms.py:111
msgid ""
"When enabled, software will be downloaded over the Tor network for "
"installations and upgrades. This adds a degree of privacy and security "
"during software downloads."
msgstr ""
-#: plinth/modules/tor/forms.py:141
+#: plinth/modules/tor/forms.py:126
msgid "Specify at least one upstream bridge to use upstream bridges."
msgstr ""
-#: plinth/modules/tor/manifest.py:29
+#: plinth/modules/tor/manifest.py:14
msgid "Tor Browser"
msgstr ""
-#: plinth/modules/tor/manifest.py:45
+#: plinth/modules/tor/manifest.py:30
msgid "Orbot: Proxy with Tor"
msgstr ""
-#: plinth/modules/tor/templates/tor.html:41
+#: plinth/modules/tor/templates/tor.html:26
#, fuzzy
#| msgid "Configuration updated"
msgid "Tor configuration is being updated"
msgstr "Configuração atualizada"
-#: plinth/modules/tor/templates/tor.html:50
+#: plinth/modules/tor/templates/tor.html:35
msgid "Onion Service"
msgstr ""
-#: plinth/modules/tor/templates/tor.html:52
+#: plinth/modules/tor/templates/tor.html:37
msgid "Ports"
msgstr ""
-#: plinth/modules/tor/templates/tor.html:82
+#: plinth/modules/tor/templates/tor.html:67
msgid "Relay"
msgstr ""
-#: plinth/modules/tor/templates/tor.html:84
+#: plinth/modules/tor/templates/tor.html:69
#, python-format
msgid ""
"If your %(box_name)s is behind a router or firewall, you should make sure "
"the following ports are open, and port-forwarded, if necessary:"
msgstr ""
-#: plinth/modules/tor/templates/tor.html:112
+#: plinth/modules/tor/templates/tor.html:97
msgid "SOCKS"
msgstr ""
-#: plinth/modules/tor/templates/tor.html:115
+#: plinth/modules/tor/templates/tor.html:100
#, python-format
msgid "A Tor SOCKS port is available on your %(box_name)s on TCP port 9050."
msgstr ""
-#: plinth/modules/transmission/__init__.py:41
-#: plinth/modules/transmission/manifest.py:24
-msgid "Transmission"
-msgstr ""
-
-#: plinth/modules/transmission/__init__.py:48
+#: plinth/modules/transmission/__init__.py:27
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/ttrss/__init__.py:43 plinth/modules/ttrss/manifest.py:34
-msgid "Tiny Tiny RSS"
+#: plinth/modules/transmission/__init__.py:48
+#: plinth/modules/transmission/manifest.py:9
+msgid "Transmission"
msgstr ""
-#: plinth/modules/ttrss/__init__.py:47
-msgid "News Feed Reader"
-msgstr ""
-
-#: plinth/modules/ttrss/__init__.py:50
+#: plinth/modules/ttrss/__init__.py:29
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:54
+#: plinth/modules/ttrss/__init__.py:33
#, python-brace-format
msgid ""
"When enabled, Tiny Tiny RSS can be accessed by any user with a {box_name} login."
msgstr ""
-#: plinth/modules/ttrss/__init__.py:58
+#: plinth/modules/ttrss/__init__.py:37
msgid ""
"When using a mobile or desktop application for Tiny Tiny RSS, use the URL /tt-rss-app for "
"connecting."
msgstr ""
-#: plinth/modules/ttrss/__init__.py:65
+#: plinth/modules/ttrss/__init__.py:42
msgid "Read and subscribe to news feeds"
msgstr ""
-#: plinth/modules/ttrss/manifest.py:25
+#: plinth/modules/ttrss/__init__.py:56 plinth/modules/ttrss/manifest.py:19
+msgid "Tiny Tiny RSS"
+msgstr ""
+
+#: plinth/modules/ttrss/__init__.py:57
+msgid "News Feed Reader"
+msgstr ""
+
+#: plinth/modules/ttrss/manifest.py:10
msgid "Tiny Tiny RSS (Fork)"
msgstr ""
-#: plinth/modules/upgrades/__init__.py:37 plinth/templates/setup.html:89
-msgid "Update"
-msgstr ""
-
-#: plinth/modules/upgrades/__init__.py:40
+#: plinth/modules/upgrades/__init__.py:23
msgid "Check for and apply the latest software and security updates."
msgstr ""
-#: plinth/modules/upgrades/__init__.py:84
+#: plinth/modules/upgrades/__init__.py:38 plinth/templates/setup.html:74
+msgid "Update"
+msgstr ""
+
+#: plinth/modules/upgrades/__init__.py:71
#, fuzzy
#| msgid "FreedomBox"
msgid "FreedomBox Updated"
msgstr "Freedombox"
-#: plinth/modules/upgrades/forms.py:28
+#: plinth/modules/upgrades/forms.py:13
#, fuzzy
#| msgid "Applications"
msgid "Enable auto-update"
msgstr "Aplicações"
-#: plinth/modules/upgrades/forms.py:29
+#: plinth/modules/upgrades/forms.py:14
msgid "When enabled, FreedomBox automatically updates once a day."
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades-new-release.html:24
+#: plinth/modules/upgrades/templates/upgrades-new-release.html:9
#, python-format
msgid "%(box_name)s Updated"
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades-new-release.html:28
+#: plinth/modules/upgrades/templates/upgrades-new-release.html:13
#, python-format
msgid ""
"%(box_name)s has been updated to version %(version)s. See the release announcement."
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades-new-release.html:37
-#: plinth/templates/notifications.html:59
+#: plinth/modules/upgrades/templates/upgrades-new-release.html:22
+#: plinth/templates/notifications.html:44
msgid "Dismiss"
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades.html:45
+#: plinth/modules/upgrades/templates/upgrades.html:30
#, fuzzy
#| msgid "General Configuration"
msgid "Update now"
msgstr "Configuração Geral"
-#: plinth/modules/upgrades/templates/upgrades.html:54
+#: plinth/modules/upgrades/templates/upgrades.html:39
msgid "Updating..."
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades.html:59
+#: plinth/modules/upgrades/templates/upgrades.html:44
msgid ""
"This may take a long time to complete. During an update, "
"you cannot install apps. Also, this web interface may be temporarily "
"unavailable and show an error. In that case, refresh the page to continue."
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades.html:73
+#: plinth/modules/upgrades/templates/upgrades.html:58
msgid "Toggle recent update logs"
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades_configure.html:26
-#: plinth/modules/upgrades/templates/upgrades_configure.html:27
-#: plinth/modules/upgrades/views.py:107
+#: plinth/modules/upgrades/templates/upgrades_configure.html:11
+#: plinth/modules/upgrades/templates/upgrades_configure.html:12
+#: plinth/modules/upgrades/views.py:89
msgid "Manual update"
msgstr ""
-#: plinth/modules/upgrades/views.py:66
+#: plinth/modules/upgrades/views.py:48
#, python-brace-format
msgid "Error when configuring unattended-upgrades: {error}"
msgstr ""
-#: plinth/modules/upgrades/views.py:70
+#: plinth/modules/upgrades/views.py:52
msgid "Automatic upgrades enabled"
msgstr ""
-#: plinth/modules/upgrades/views.py:73
+#: plinth/modules/upgrades/views.py:55
msgid "Automatic upgrades disabled"
msgstr ""
-#: plinth/modules/upgrades/views.py:75
+#: plinth/modules/upgrades/views.py:57
#, fuzzy
#| msgid "Setting unchanged"
msgid "Settings unchanged"
msgstr "Definição inalterada"
-#: plinth/modules/upgrades/views.py:101
+#: plinth/modules/upgrades/views.py:83
msgid "Upgrade process started."
msgstr ""
-#: plinth/modules/upgrades/views.py:104
+#: plinth/modules/upgrades/views.py:86
msgid "Starting upgrade failed."
msgstr ""
-#: plinth/modules/users/__init__.py:51
-msgid "Users and Groups"
-msgstr ""
-
-#: plinth/modules/users/__init__.py:54
+#: plinth/modules/users/__init__.py:37
msgid ""
"Create and managed user accounts. These accounts serve as centralized "
"authentication mechanism for most apps. Some apps further require a user "
"account to be part of a group to authorize the user to access the app."
msgstr ""
-#: plinth/modules/users/__init__.py:59
+#: plinth/modules/users/__init__.py:42
#, python-brace-format
msgid ""
"Any user may login to {box_name} web interface to see a list of apps "
@@ -5637,35 +5740,39 @@ msgid ""
"group may alter apps or system settings."
msgstr ""
-#: plinth/modules/users/__init__.py:128
+#: plinth/modules/users/__init__.py:64
+msgid "Users and Groups"
+msgstr ""
+
+#: plinth/modules/users/__init__.py:115
#, python-brace-format
msgid "Check LDAP entry \"{search_item}\""
msgstr ""
-#: plinth/modules/users/forms.py:43
+#: plinth/modules/users/forms.py:28
msgid "Access to all services and system settings"
msgstr ""
-#: plinth/modules/users/forms.py:59
+#: plinth/modules/users/forms.py:44
msgid "Username is taken or is reserved."
msgstr ""
-#: plinth/modules/users/forms.py:87
+#: plinth/modules/users/forms.py:72
#, fuzzy
#| msgid "Invalid domain name"
msgid "Enter a valid username."
msgstr "Nome de domínio inválido"
-#: plinth/modules/users/forms.py:93
+#: plinth/modules/users/forms.py:78
msgid ""
"Required. 150 characters or fewer. English letters, digits and @/./-/_ only."
msgstr ""
-#: plinth/modules/users/forms.py:106 plinth/modules/users/forms.py:222
+#: plinth/modules/users/forms.py:91 plinth/modules/users/forms.py:207
msgid "Permissions"
msgstr ""
-#: plinth/modules/users/forms.py:109
+#: plinth/modules/users/forms.py:94
msgid ""
"Select which services should be available to the new user. The user will be "
"able to log in to services that support single sign-on through LDAP, if they "
@@ -5674,187 +5781,182 @@ msgid ""
"SSH and have administrative privileges (sudo)."
msgstr ""
-#: plinth/modules/users/forms.py:148 plinth/modules/users/forms.py:372
+#: plinth/modules/users/forms.py:133 plinth/modules/users/forms.py:357
msgid "Creating LDAP user failed."
msgstr ""
-#: plinth/modules/users/forms.py:159
+#: plinth/modules/users/forms.py:144
#, python-brace-format
msgid "Failed to add new user to {group} group."
msgstr ""
-#: plinth/modules/users/forms.py:173
+#: plinth/modules/users/forms.py:158
msgid "Authorized SSH Keys"
msgstr ""
-#: plinth/modules/users/forms.py:175
+#: plinth/modules/users/forms.py:160
msgid ""
"Setting an SSH public key will allow this user to securely log in to the "
"system without using a password. You may enter multiple keys, one on each "
"line. Blank lines and lines starting with # will be ignored."
msgstr ""
-#: plinth/modules/users/forms.py:259
+#: plinth/modules/users/forms.py:244
msgid "Renaming LDAP user failed."
msgstr ""
-#: plinth/modules/users/forms.py:271
+#: plinth/modules/users/forms.py:256
msgid "Failed to remove user from group."
msgstr ""
-#: plinth/modules/users/forms.py:282
+#: plinth/modules/users/forms.py:267
msgid "Failed to add user to group."
msgstr ""
-#: plinth/modules/users/forms.py:291
+#: plinth/modules/users/forms.py:276
msgid "Unable to set SSH keys."
msgstr ""
-#: plinth/modules/users/forms.py:306
+#: plinth/modules/users/forms.py:291
msgid "Failed to change user status."
msgstr ""
-#: plinth/modules/users/forms.py:314
+#: plinth/modules/users/forms.py:299
msgid "Cannot delete the only administrator in the system."
msgstr ""
-#: plinth/modules/users/forms.py:346
+#: plinth/modules/users/forms.py:331
msgid "Changing LDAP user password failed."
msgstr ""
-#: plinth/modules/users/forms.py:381
+#: plinth/modules/users/forms.py:366
msgid "Failed to add new user to admin group."
msgstr ""
-#: plinth/modules/users/forms.py:398
+#: plinth/modules/users/forms.py:383
msgid "Failed to restrict console access."
msgstr ""
-#: plinth/modules/users/forms.py:410
+#: plinth/modules/users/forms.py:395
msgid "User account created, you are now logged in"
msgstr ""
-#: plinth/modules/users/templates/users_change_password.html:26
+#: plinth/modules/users/templates/users_change_password.html:11
#, python-format
msgid "Change Password for %(username)s"
msgstr ""
-#: plinth/modules/users/templates/users_change_password.html:36
+#: plinth/modules/users/templates/users_change_password.html:21
msgid "Save Password"
msgstr ""
-#: plinth/modules/users/templates/users_create.html:32
-#: plinth/modules/users/templates/users_list.html:42
-#: plinth/modules/users/templates/users_list.html:44
-#: plinth/modules/users/views.py:57
+#: plinth/modules/users/templates/users_create.html:17
+#: plinth/modules/users/templates/users_list.html:27
+#: plinth/modules/users/templates/users_list.html:29
+#: plinth/modules/users/views.py:42
msgid "Create User"
msgstr ""
-#: plinth/modules/users/templates/users_delete.html:26
-#: plinth/modules/users/views.py:139
+#: plinth/modules/users/templates/users_delete.html:11
+#: plinth/modules/users/views.py:121
msgid "Delete User"
msgstr ""
-#: plinth/modules/users/templates/users_delete.html:29
+#: plinth/modules/users/templates/users_delete.html:14
#, python-format
msgid "Delete user %(username)s permanently?"
msgstr ""
-#: plinth/modules/users/templates/users_delete.html:38
+#: plinth/modules/users/templates/users_delete.html:23
#, python-format
msgid "Delete %(username)s"
msgstr ""
-#: plinth/modules/users/templates/users_firstboot.html:26
+#: plinth/modules/users/templates/users_firstboot.html:11
msgid "Administrator Account"
msgstr ""
-#: plinth/modules/users/templates/users_firstboot.html:29
+#: plinth/modules/users/templates/users_firstboot.html:14
msgid ""
"Choose a username and password to access this web interface. The password "
"can be changed later. This user will be granted administrative privileges. "
"Other users can be added later."
msgstr ""
-#: plinth/modules/users/templates/users_firstboot.html:42
+#: plinth/modules/users/templates/users_firstboot.html:27
msgid "Create Account"
msgstr ""
-#: plinth/modules/users/templates/users_list.html:38
-#: plinth/modules/users/views.py:74
+#: plinth/modules/users/templates/users_list.html:23
+#: plinth/modules/users/views.py:59
msgid "Users"
msgstr ""
-#: plinth/modules/users/templates/users_list.html:57
+#: plinth/modules/users/templates/users_list.html:42
#, python-format
msgid "Delete user %(username)s"
msgstr ""
-#: plinth/modules/users/templates/users_list.html:65
+#: plinth/modules/users/templates/users_list.html:50
#, python-format
msgid "Edit user %(username)s"
msgstr ""
-#: plinth/modules/users/templates/users_update.html:30
+#: plinth/modules/users/templates/users_update.html:15
#, python-format
msgid ""
"Use the change password form to "
"change the password."
msgstr ""
-#: plinth/modules/users/templates/users_update.html:42
-#: plinth/templates/language-selection.html:32
+#: plinth/modules/users/templates/users_update.html:27
+#: plinth/templates/language-selection.html:17
msgid "Save Changes"
msgstr ""
-#: plinth/modules/users/views.py:55
+#: plinth/modules/users/views.py:40
#, python-format
msgid "User %(username)s created."
msgstr ""
-#: plinth/modules/users/views.py:93
+#: plinth/modules/users/views.py:75
#, python-format
msgid "User %(username)s updated."
msgstr ""
-#: plinth/modules/users/views.py:94
+#: plinth/modules/users/views.py:76
msgid "Edit User"
msgstr ""
-#: plinth/modules/users/views.py:149
+#: plinth/modules/users/views.py:131
#, python-brace-format
msgid "User {user} deleted."
msgstr ""
-#: plinth/modules/users/views.py:156
+#: plinth/modules/users/views.py:138
msgid "Deleting LDAP user failed."
msgstr ""
-#: plinth/modules/users/views.py:165
+#: plinth/modules/users/views.py:147
msgid "Change Password"
msgstr ""
-#: plinth/modules/users/views.py:166
+#: plinth/modules/users/views.py:148
msgid "Password changed successfully."
msgstr ""
-#: plinth/modules/wireguard/__init__.py:38
-#: plinth/modules/wireguard/manifest.py:29
-msgid "WireGuard"
-msgstr ""
-
-#: plinth/modules/wireguard/__init__.py:43
+#: plinth/modules/wireguard/__init__.py:24
msgid "WireGuard is a fast, modern, secure VPN tunnel."
msgstr ""
-#: plinth/modules/wireguard/__init__.py:45
+#: plinth/modules/wireguard/__init__.py:26
#, python-brace-format
msgid ""
"It can be used to connect to a VPN provider which supports WireGuard, and to "
"route all outgoing traffic from {box_name} through the VPN."
msgstr ""
-#: plinth/modules/wireguard/__init__.py:49
+#: plinth/modules/wireguard/__init__.py:30
#, python-brace-format
msgid ""
"A second use case is to connect a mobile device to {box_name} while "
@@ -5862,61 +5964,66 @@ msgid ""
"securely relayed through {box_name}."
msgstr ""
-#: plinth/modules/wireguard/forms.py:47
+#: plinth/modules/wireguard/__init__.py:52
+#: plinth/modules/wireguard/manifest.py:14
+msgid "WireGuard"
+msgstr ""
+
+#: plinth/modules/wireguard/forms.py:32
#, fuzzy
#| msgid "Invalid domain name"
msgid "Invalid key."
msgstr "Nome de domínio inválido"
-#: plinth/modules/wireguard/forms.py:76
-#: plinth/modules/wireguard/templates/wireguard.html:32
-#: plinth/modules/wireguard/templates/wireguard.html:89
-#: plinth/modules/wireguard/templates/wireguard_delete_server.html:38
+#: plinth/modules/wireguard/forms.py:61
+#: plinth/modules/wireguard/templates/wireguard.html:17
+#: plinth/modules/wireguard/templates/wireguard.html:74
+#: plinth/modules/wireguard/templates/wireguard_delete_server.html:23
msgid "Public Key"
msgstr ""
-#: plinth/modules/wireguard/forms.py:77
+#: plinth/modules/wireguard/forms.py:62
msgid ""
"Public key of the peer. Example: "
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs= ."
msgstr ""
-#: plinth/modules/wireguard/forms.py:85
+#: plinth/modules/wireguard/forms.py:70
msgid "Endpoint of the server"
msgstr ""
-#: plinth/modules/wireguard/forms.py:86
+#: plinth/modules/wireguard/forms.py:71
msgid ""
"Domain name and port in the form \"ip:port\". Example: demo.wireguard."
"com:12912 ."
msgstr ""
-#: plinth/modules/wireguard/forms.py:91
+#: plinth/modules/wireguard/forms.py:76
msgid "Public key of the server"
msgstr ""
-#: plinth/modules/wireguard/forms.py:92
+#: plinth/modules/wireguard/forms.py:77
msgid ""
"Provided by the server operator, a long string of characters. Example: "
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs= ."
msgstr ""
-#: plinth/modules/wireguard/forms.py:97
+#: plinth/modules/wireguard/forms.py:82
msgid "Client IP address provided by server"
msgstr ""
-#: plinth/modules/wireguard/forms.py:98
+#: plinth/modules/wireguard/forms.py:83
msgid ""
"IP address assigned to this machine on the VPN after connecting to the "
"endpoint. This value is usually provided by the server operator. Example: "
"192.168.0.10."
msgstr ""
-#: plinth/modules/wireguard/forms.py:104
+#: plinth/modules/wireguard/forms.py:89
msgid "Private key of this machine"
msgstr ""
-#: plinth/modules/wireguard/forms.py:105
+#: plinth/modules/wireguard/forms.py:90
msgid ""
"Optional. New public/private keys are generated if left blank. Public key "
"can then be provided to the server. This is the recommended way. However, "
@@ -5924,173 +6031,173 @@ msgid ""
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs= ."
msgstr ""
-#: plinth/modules/wireguard/forms.py:113
+#: plinth/modules/wireguard/forms.py:98
msgid "Pre-shared key"
msgstr ""
-#: plinth/modules/wireguard/forms.py:114
+#: plinth/modules/wireguard/forms.py:99
msgid ""
"Optional. A shared secret key provided by the server to add an additional "
"layer of security. Fill in only if provided. Example: "
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs=."
msgstr ""
-#: plinth/modules/wireguard/forms.py:120
+#: plinth/modules/wireguard/forms.py:105
msgid "Use this connection to send all outgoing traffic"
msgstr ""
-#: plinth/modules/wireguard/forms.py:122
+#: plinth/modules/wireguard/forms.py:107
msgid "Typically checked for a VPN service though which all traffic is sent."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:25
+#: plinth/modules/wireguard/templates/wireguard.html:10
#, fuzzy
#| msgid "Web Server"
msgid "As a Server"
msgstr "Servidor Web"
-#: plinth/modules/wireguard/templates/wireguard.html:27
+#: plinth/modules/wireguard/templates/wireguard.html:12
msgid "Peers allowed to connect to this server:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:33
+#: plinth/modules/wireguard/templates/wireguard.html:18
msgid "Allowed IPs"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:34
-#: plinth/modules/wireguard/templates/wireguard.html:90
+#: plinth/modules/wireguard/templates/wireguard.html:19
+#: plinth/modules/wireguard/templates/wireguard.html:75
msgid "Last Connected Time"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:53
+#: plinth/modules/wireguard/templates/wireguard.html:38
#, python-format
msgid "No peers configured to connect to this %(box_name)s yet."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:62
+#: plinth/modules/wireguard/templates/wireguard.html:47
#, python-format
msgid "Public key for this %(box_name)s:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:68
+#: plinth/modules/wireguard/templates/wireguard.html:53
msgid "Not configured yet."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:72
+#: plinth/modules/wireguard/templates/wireguard.html:57
msgid "Add a new peer"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:76
-#: plinth/modules/wireguard/views.py:69
+#: plinth/modules/wireguard/templates/wireguard.html:61
+#: plinth/modules/wireguard/views.py:51
msgid "Add Allowed Client"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:79
+#: plinth/modules/wireguard/templates/wireguard.html:64
msgid "As a Client"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:81
+#: plinth/modules/wireguard/templates/wireguard.html:66
#, python-format
msgid "Servers that %(box_name)s will connect to:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:88
-#: plinth/modules/wireguard/templates/wireguard_delete_server.html:34
+#: plinth/modules/wireguard/templates/wireguard.html:73
+#: plinth/modules/wireguard/templates/wireguard_delete_server.html:19
msgid "Endpoint"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:111
+#: plinth/modules/wireguard/templates/wireguard.html:96
msgid "No connections to remote servers are configured yet."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:119
+#: plinth/modules/wireguard/templates/wireguard.html:104
msgid "Add a new server"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:123
-#: plinth/modules/wireguard/views.py:178
+#: plinth/modules/wireguard/templates/wireguard.html:108
+#: plinth/modules/wireguard/views.py:160
#, fuzzy
#| msgid "Connection refused"
msgid "Add Connection to Server"
msgstr "Conexão recusada"
-#: plinth/modules/wireguard/templates/wireguard_add_client.html:34
+#: plinth/modules/wireguard/templates/wireguard_add_client.html:19
msgid "Add Client"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_delete_client.html:29
+#: plinth/modules/wireguard/templates/wireguard_delete_client.html:14
#, fuzzy
#| msgid "Are you sure that you want to remove this repository?"
msgid "Are you sure that you want to delete this client?"
msgstr "Tem a certeza que quer remover este repositório?"
-#: plinth/modules/wireguard/templates/wireguard_delete_server.html:29
+#: plinth/modules/wireguard/templates/wireguard_delete_server.html:14
#, fuzzy
#| msgid "Are you sure that you want to remove this repository?"
msgid "Are you sure that you want to delete this server?"
msgstr "Tem a certeza que quer remover este repositório?"
-#: plinth/modules/wireguard/templates/wireguard_edit_client.html:34
+#: plinth/modules/wireguard/templates/wireguard_edit_client.html:19
#, fuzzy
#| msgid "General Configuration"
msgid "Update Client"
msgstr "Configuração Geral"
-#: plinth/modules/wireguard/templates/wireguard_edit_server.html:34
+#: plinth/modules/wireguard/templates/wireguard_edit_server.html:19
#, fuzzy
#| msgid "Connection refused"
msgid "Update Connection"
msgstr "Conexão recusada"
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:27
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:12
#, python-format
msgid ""
"%(box_name)s will allow this client to connect to it. Ensure that the client "
"is configured with the following information."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:35
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:20
msgid "Client public key:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:39
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:24
msgid "IP address to use for client:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:43
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:46
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:28
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:31
msgid "Pre-shared key:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:47
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:32
#, fuzzy
#| msgid "Server Administration"
msgid "Server endpoints:"
msgstr "Administração do servidor"
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:55
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:42
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:40
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:27
#, fuzzy
#| msgid "Select verified SSH public key"
msgid "Server public key:"
msgstr "Seleccione a chave pública de SSH verificada"
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:65
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:64
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:50
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:49
msgid "Data transmitted:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:69
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:68
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:54
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:53
msgid "Data received:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:73
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:72
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:58
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:57
msgid "Latest handshake:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:29
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:14
#, python-format
msgid ""
"%(box_name)s will attempt to reach a WireGuard server with the following "
@@ -6098,154 +6205,154 @@ msgid ""
"public key and IP address."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:38
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:23
#, fuzzy
#| msgid "Server Administration"
msgid "Server endpoint:"
msgstr "Administração do servidor"
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:50
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:35
msgid "Public key of this machine:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:54
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:39
msgid "IP address of this machine:"
msgstr ""
-#: plinth/modules/wireguard/views.py:64
+#: plinth/modules/wireguard/views.py:46
msgid "Added new client."
msgstr ""
-#: plinth/modules/wireguard/views.py:79 plinth/modules/wireguard/views.py:138
+#: plinth/modules/wireguard/views.py:61 plinth/modules/wireguard/views.py:120
msgid "Client with public key already exists"
msgstr ""
-#: plinth/modules/wireguard/views.py:92
+#: plinth/modules/wireguard/views.py:74
msgid "Allowed Client"
msgstr ""
-#: plinth/modules/wireguard/views.py:114
+#: plinth/modules/wireguard/views.py:96
#, fuzzy
#| msgid "General Configuration"
msgid "Updated client."
msgstr "Configuração Geral"
-#: plinth/modules/wireguard/views.py:119
+#: plinth/modules/wireguard/views.py:101
msgid "Modify Client"
msgstr ""
-#: plinth/modules/wireguard/views.py:152
+#: plinth/modules/wireguard/views.py:134
msgid "Delete Allowed Client"
msgstr ""
-#: plinth/modules/wireguard/views.py:161
+#: plinth/modules/wireguard/views.py:143
#, fuzzy
#| msgid "Archive deleted."
msgid "Client deleted."
msgstr "Arquivo apagado."
-#: plinth/modules/wireguard/views.py:163
+#: plinth/modules/wireguard/views.py:145
#, fuzzy
#| msgid "Repository not found"
msgid "Client not found"
msgstr "Repositório não encontrado"
-#: plinth/modules/wireguard/views.py:173
+#: plinth/modules/wireguard/views.py:155
#, fuzzy
#| msgid "Added new remote SSH repository."
msgid "Added new server."
msgstr "Adicionar novo repositório de SSH remoto."
-#: plinth/modules/wireguard/views.py:194
+#: plinth/modules/wireguard/views.py:176
#, fuzzy
#| msgid "Connection refused"
msgid "Connection to Server"
msgstr "Conexão recusada"
-#: plinth/modules/wireguard/views.py:212
+#: plinth/modules/wireguard/views.py:194
msgid "Updated server."
msgstr ""
-#: plinth/modules/wireguard/views.py:217
+#: plinth/modules/wireguard/views.py:199
#, fuzzy
#| msgid "Error establishing connection to server: {}"
msgid "Modify Connection to Server"
msgstr "Erro a estabelecer ligação ao servidor: {}"
-#: plinth/modules/wireguard/views.py:254
+#: plinth/modules/wireguard/views.py:236
#, fuzzy
#| msgid "Error establishing connection to server: {}"
msgid "Delete Connection to Server"
msgstr "Erro a estabelecer ligação ao servidor: {}"
-#: plinth/modules/wireguard/views.py:274
+#: plinth/modules/wireguard/views.py:256
#, fuzzy
#| msgid "Archive deleted."
msgid "Server deleted."
msgstr "Arquivo apagado."
-#: plinth/network.py:42
+#: plinth/network.py:27
msgid "PPPoE"
msgstr ""
-#: plinth/network.py:43
+#: plinth/network.py:28
msgid "Generic"
msgstr ""
-#: plinth/package.py:137
+#: plinth/package.py:122
msgid "Error during installation"
msgstr ""
-#: plinth/package.py:159
+#: plinth/package.py:144
msgid "installing"
msgstr ""
-#: plinth/package.py:161
+#: plinth/package.py:146
msgid "downloading"
msgstr ""
-#: plinth/package.py:163
+#: plinth/package.py:148
#, fuzzy
#| msgid "Setting unchanged"
msgid "media change"
msgstr "Definição inalterada"
-#: plinth/package.py:165
+#: plinth/package.py:150
#, fuzzy, python-brace-format
#| msgid "Configuration"
msgid "configuration file: {file}"
msgstr "Configuração"
-#: plinth/templates/403.html:25
+#: plinth/templates/403.html:10
msgid "403 Forbidden"
msgstr ""
-#: plinth/templates/403.html:29
+#: plinth/templates/403.html:14
#, python-format
msgid "You don't have permission to access %(request_path)s on this server."
msgstr ""
-#: plinth/templates/404.html:25
+#: plinth/templates/404.html:10
msgid "404"
msgstr ""
-#: plinth/templates/404.html:28
+#: plinth/templates/404.html:13
#, python-format
msgid "Requested page %(request_path)s was not found."
msgstr ""
-#: plinth/templates/404.html:34
+#: plinth/templates/404.html:19
msgid ""
"If you believe this missing page should exist, please file a bug at the "
"FreedomBox Service (Plinth) project issue tracker."
msgstr ""
-#: plinth/templates/500.html:25
+#: plinth/templates/500.html:10
msgid "500"
msgstr ""
-#: plinth/templates/500.html:29
+#: plinth/templates/500.html:14
#, python-format
msgid ""
"This is an internal error and not something you caused or can fix. Please "
@@ -6254,143 +6361,143 @@ msgid ""
"href=\"%(status_log_url)s\">status log to the bug report."
msgstr ""
-#: plinth/templates/app.html:47
+#: plinth/templates/app-header.html:22
+msgid "Installation"
+msgstr ""
+
+#: plinth/templates/app.html:32
#, fuzzy, python-format
#| msgid "Service discovery server is running"
msgid "Service %(service_name)s is running."
msgstr "O Servidor da descoberta do serviço está a correr"
-#: plinth/templates/app.html:52
+#: plinth/templates/app.html:37
#, fuzzy, python-format
#| msgid "Service discovery server is not running"
msgid "Service %(service_name)s is not running."
msgstr "O Servidor da descoberta do serviço não está a correr"
-#: plinth/templates/base.html:50
+#: plinth/templates/base.html:35
#, python-format
msgid "Core functionality and web interface for %(box_name)s"
msgstr ""
-#: plinth/templates/base.html:96
+#: plinth/templates/base.html:81
msgid "Toggle navigation"
msgstr ""
-#: plinth/templates/base.html:120 plinth/templates/base.html:123
+#: plinth/templates/base.html:105 plinth/templates/base.html:108
msgid "Home"
msgstr ""
-#: plinth/templates/base.html:128 plinth/templates/base.html:132
+#: plinth/templates/base.html:113 plinth/templates/base.html:117
msgid "Apps"
msgstr ""
-#: plinth/templates/base.html:137 plinth/templates/base.html:141
+#: plinth/templates/base.html:122 plinth/templates/base.html:126
msgid "System"
msgstr ""
-#: plinth/templates/base.html:173 plinth/templates/base.html:174
+#: plinth/templates/base.html:158 plinth/templates/base.html:159
msgid "Change password"
msgstr ""
-#: plinth/templates/base.html:181 plinth/templates/base.html:182
+#: plinth/templates/base.html:166 plinth/templates/base.html:167
msgid "Restart"
msgstr ""
-#: plinth/templates/base.html:187 plinth/templates/base.html:188
+#: plinth/templates/base.html:172 plinth/templates/base.html:173
msgid "Shut down"
msgstr ""
-#: plinth/templates/base.html:195 plinth/templates/base.html:196
-#: plinth/templates/base.html:220 plinth/templates/base.html:222
+#: plinth/templates/base.html:180 plinth/templates/base.html:181
+#: plinth/templates/base.html:205 plinth/templates/base.html:207
msgid "Log out"
msgstr ""
-#: plinth/templates/base.html:204 plinth/templates/base.html:207
+#: plinth/templates/base.html:189 plinth/templates/base.html:192
#, fuzzy
#| msgid "Language"
msgid "Select language"
msgstr "Língua"
-#: plinth/templates/base.html:212 plinth/templates/base.html:214
+#: plinth/templates/base.html:197 plinth/templates/base.html:199
msgid "Log in"
msgstr ""
-#: plinth/templates/clients.html:32
+#: plinth/templates/clients.html:17
msgid "Web"
msgstr ""
-#: plinth/templates/clients.html:57
+#: plinth/templates/clients.html:42
msgid "Desktop"
msgstr ""
-#: plinth/templates/clients.html:68
+#: plinth/templates/clients.html:53
msgid "GNU/Linux"
msgstr ""
-#: plinth/templates/clients.html:70
+#: plinth/templates/clients.html:55
msgid "Windows"
msgstr ""
-#: plinth/templates/clients.html:72
+#: plinth/templates/clients.html:57
msgid "macOS"
msgstr ""
-#: plinth/templates/clients.html:88
+#: plinth/templates/clients.html:73
msgid "Mobile"
msgstr ""
-#: plinth/templates/clients.html:99
+#: plinth/templates/clients.html:84
msgid "Play Store"
msgstr ""
-#: plinth/templates/clients.html:101
+#: plinth/templates/clients.html:86
msgid "F-Droid"
msgstr ""
-#: plinth/templates/clients.html:103
+#: plinth/templates/clients.html:88
msgid "App Store"
msgstr ""
-#: plinth/templates/clients.html:119
+#: plinth/templates/clients.html:104
msgid "Package"
msgstr ""
-#: plinth/templates/clients.html:126
+#: plinth/templates/clients.html:111
msgid "Debian:"
msgstr ""
-#: plinth/templates/clients.html:129
+#: plinth/templates/clients.html:114
msgid "Homebrew:"
msgstr ""
-#: plinth/templates/clients.html:132
+#: plinth/templates/clients.html:117
msgid "RPM:"
msgstr ""
-#: plinth/templates/first_setup.html:39
+#: plinth/templates/first_setup.html:24
#, python-format
msgid ""
"Please wait for %(box_name)s to finish installation. You can start using "
"your %(box_name)s once it is done."
msgstr ""
-#: plinth/templates/header.html:36
-msgid "Installation"
-msgstr ""
-
-#: plinth/templates/index.html:37
+#: plinth/templates/index.html:22
#, python-format
msgid ""
"Enable some applications to add shortcuts to "
"this page."
msgstr ""
-#: plinth/templates/index.html:59
+#: plinth/templates/index.html:44
#, fuzzy
#| msgid "Configure"
msgid "Configure »"
msgstr "Configurar"
-#: plinth/templates/index.html:115
+#: plinth/templates/index.html:100
#, python-format
msgid ""
"%(box_name)s, a Debian pure blend, is a 100%% free software self-hosting web "
@@ -6398,7 +6505,7 @@ msgid ""
"communication tools respecting your privacy and data ownership."
msgstr ""
-#: plinth/templates/index.html:124
+#: plinth/templates/index.html:109
#, python-format
msgid ""
"This portal is a part of the %(box_name)s web interface. %(box_name)s is "
@@ -6406,60 +6513,60 @@ msgid ""
"Version 3 or later."
msgstr ""
-#: plinth/templates/index.html:144
+#: plinth/templates/index.html:129
msgid "Homepage"
msgstr ""
-#: plinth/templates/index.html:147
+#: plinth/templates/index.html:132
msgid "Source Code"
msgstr ""
-#: plinth/templates/index.html:150
+#: plinth/templates/index.html:135
msgid "Donate"
msgstr ""
-#: plinth/templates/index.html:154
+#: plinth/templates/index.html:139
msgid "FreedomBox Foundation"
msgstr ""
-#: plinth/templates/index.html:161
+#: plinth/templates/index.html:146
msgid "IRC Chatroom"
msgstr ""
-#: plinth/templates/index.html:166
+#: plinth/templates/index.html:151
msgid "Mailing list"
msgstr ""
-#: plinth/templates/internal-zone.html:26
+#: plinth/templates/internal-zone.html:11
#, fuzzy, python-format
#| msgid "Service discovery server is not running"
msgid "%(service_name)s is available only on internal networks."
msgstr "O Servidor da descoberta do serviço não está a correr"
-#: plinth/templates/internal-zone.html:32
+#: plinth/templates/internal-zone.html:17
msgid "Currently there are no network interfaces configured as internal."
msgstr ""
-#: plinth/templates/internal-zone.html:34
+#: plinth/templates/internal-zone.html:19
#, python-format
msgid ""
"Currently the following network interfaces are configured as internal: "
"%(interface_list)s"
msgstr ""
-#: plinth/templates/notifications-dropdown.html:26
+#: plinth/templates/notifications-dropdown.html:11
#, fuzzy
#| msgid "Applications"
msgid "Notifications"
msgstr "Aplicações"
-#: plinth/templates/port-forwarding-info.html:23
+#: plinth/templates/port-forwarding-info.html:8
#, fuzzy
#| msgid "Enable network time"
msgid "Port Forwarding"
msgstr "Ativar tempo da rede"
-#: plinth/templates/port-forwarding-info.html:26
+#: plinth/templates/port-forwarding-info.html:11
#, python-format
msgid ""
"If your FreedomBox is behind a router, you will need to set up port "
@@ -6467,67 +6574,67 @@ msgid ""
"%(service_name)s:"
msgstr ""
-#: plinth/templates/setup.html:51
+#: plinth/templates/setup.html:36
msgid "Install this application?"
msgstr ""
-#: plinth/templates/setup.html:55
+#: plinth/templates/setup.html:40
msgid "This application needs an update. Update now?"
msgstr ""
-#: plinth/templates/setup.html:66
+#: plinth/templates/setup.html:51
msgid ""
"Another installation or upgrade is already running. Please wait for a few "
"moments before trying again."
msgstr ""
-#: plinth/templates/setup.html:73
+#: plinth/templates/setup.html:58
msgid "This application is currently not available in your distribution."
msgstr ""
-#: plinth/templates/setup.html:87
+#: plinth/templates/setup.html:72
msgid "Install"
msgstr ""
-#: plinth/templates/setup.html:98
+#: plinth/templates/setup.html:83
msgid "Performing pre-install operation"
msgstr ""
-#: plinth/templates/setup.html:102
+#: plinth/templates/setup.html:87
msgid "Performing post-install operation"
msgstr ""
-#: plinth/templates/setup.html:107
+#: plinth/templates/setup.html:92
#, python-format
msgid "Installing %(package_names)s: %(status)s"
msgstr ""
-#: plinth/templates/setup.html:117
+#: plinth/templates/setup.html:102
#, python-format
msgid "%(percentage)s%% complete"
msgstr ""
-#: plinth/templates/toolbar.html:38
+#: plinth/templates/toolbar.html:23
msgid "Launch web client"
msgstr ""
-#: plinth/templates/toolbar.html:47
+#: plinth/templates/toolbar.html:32
msgid "Client Apps"
msgstr ""
-#: plinth/views.py:179
+#: plinth/views.py:189
#, fuzzy
#| msgid "Applications"
msgid "Application enabled"
msgstr "Aplicações"
-#: plinth/views.py:182
+#: plinth/views.py:192
#, fuzzy
#| msgid "Applications"
msgid "Application disabled"
msgstr "Aplicações"
-#: plinth/web_framework.py:190
+#: plinth/web_framework.py:107
msgid "Gujarati"
msgstr ""
diff --git a/plinth/locale/ru/LC_MESSAGES/django.po b/plinth/locale/ru/LC_MESSAGES/django.po
index 5c7b4eeb7..e6304708d 100644
--- a/plinth/locale/ru/LC_MESSAGES/django.po
+++ b/plinth/locale/ru/LC_MESSAGES/django.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2020-02-14 21:26+0200\n"
+"POT-Creation-Date: 2020-02-24 19:12-0500\n"
"PO-Revision-Date: 2019-07-22 17:06+0000\n"
"Last-Translator: Igor This means that devices on the Internet can reach you when you are " +"connected to the Internet. Every time you connect to the Internet with your " +"Internet Service Provider (ISP), you may get a different IP address, " +"especially after some offline time. Many ISPs offer this type of " +"connectivity. If you have a public IP address but are unsure if it changes " +"over time or not, it is safer to choose this option.
" +msgstr "" + #: plinth/modules/networks/forms.py:313 +#, python-brace-format +msgid "" +"I have a public IP address that does not change overtime (recommended)This means that devices on the Internet can reach you " +"when you are connected to the Internet. Every time you connect to the " +"Internet with your Internet Service Provider (ISP), you always get the same " +"IP address. This is the most trouble-free setup for many {box_name} services " +"but very few ISPs offer this. You may be able to get this service from your " +"ISP by making an additional payment.
" +msgstr "" + +#: plinth/modules/networks/forms.py:326 +#, python-brace-format +msgid "" +"I dont have a public IP addressThis means that " +"devices on the Internet can not reach you when you are connected to " +"the Internet. Every time you connect to the Internet with your Internet " +"Service Provider (ISP), you get an IP address that is only relevant for " +"local networks. Many ISPs offer this type of connectivity. This is the most " +"troublesome situation for hosting services at home. {box_name} provides many " +"workaround solutions but each solution has some limitations.
" +msgstr "" + +#: plinth/modules/networks/forms.py:351 #, fuzzy #| msgid "Current Network Configuration" msgid "Preferred router configuration" msgstr "Текущая конфигурация сети" -#: plinth/modules/networks/forms.py:318 +#: plinth/modules/networks/forms.py:356 #, python-brace-format msgid "" -"Use DMZ feature to forward all trafficMost routers " -"provide a configuration setting called DMZ. This will allow the router to " -"forward all incoming traffic from the internet to a single IP address such " -"as the {box_name}'s address. First remember to configure a static local IP " -"address for your {box_name} in your router's configuration.
" +"Use DMZ feature to forward all traffic (recommended)Most routers provide a configuration setting called DMZ. This will allow " +"the router to forward all incoming traffic from the Internet to a single IP " +"address such as the {box_name}'s IP address. First remember to configure a " +"static local IP address for your {box_name} in your router's configuration." +"p>" msgstr "" -#: plinth/modules/networks/forms.py:332 +#: plinth/modules/networks/forms.py:368 #, python-brace-format msgid "" -"Forward Specific Traffic as needed by each application
You may alternatively choose to forward only specific traffic to your " "{box_name}. This is ideal if you have other servers like {box_name} in your " "network or if your router does not support DMZ feature. All applications " @@ -3611,264 +3682,270 @@ msgid "" "to be forwarded for that application to work.
" msgstr "" -#: plinth/modules/networks/forms.py:349 +#: plinth/modules/networks/forms.py:382 msgid "" -"Router is currently unconfiguredChoose this if you " +"Router is currently unconfigured
Choose this if you " "have not configured or are unable to configure the router currently and wish " "to be reminded later. Some of the other configuration steps may fail.
" msgstr "" -#: plinth/modules/networks/networks.py:43 +#: plinth/modules/networks/networks.py:32 msgid "Network Connections" msgstr "Сетевые подключения" -#: plinth/modules/networks/networks.py:59 +#: plinth/modules/networks/networks.py:46 msgid "Cannot show connection: Connection not found." msgstr "Не удается показать подключение: соединение не найдено." -#: plinth/modules/networks/networks.py:94 +#: plinth/modules/networks/networks.py:81 msgid "Connection Information" msgstr "Сведения о подключении" -#: plinth/modules/networks/networks.py:108 +#: plinth/modules/networks/networks.py:95 msgid "Cannot edit connection: Connection not found." msgstr "Нельзя редактировать подключение: подключение не найдено." -#: plinth/modules/networks/networks.py:114 +#: plinth/modules/networks/networks.py:101 msgid "This type of connection is not yet understood." msgstr "Этот тип подключения еще не понятен." -#: plinth/modules/networks/networks.py:136 -#: plinth/modules/networks/networks.py:220 -#: plinth/modules/networks/templates/connections_edit.html:35 +#: plinth/modules/networks/networks.py:123 +#: plinth/modules/networks/networks.py:207 +#: plinth/modules/networks/templates/connections_edit.html:20 msgid "Edit Connection" msgstr "Редактирование подключения" -#: plinth/modules/networks/networks.py:232 +#: plinth/modules/networks/networks.py:219 #, python-brace-format msgid "Activated connection {name}." msgstr "Установленное подключение {name}." -#: plinth/modules/networks/networks.py:236 +#: plinth/modules/networks/networks.py:223 msgid "Failed to activate connection: Connection not found." msgstr "Невозможно установить подключение: Подключение не найдено." -#: plinth/modules/networks/networks.py:242 +#: plinth/modules/networks/networks.py:229 #, python-brace-format msgid "Failed to activate connection {name}: No suitable device is available." msgstr "Не удалось установить подключение {name}: Нет подходящего устройства." -#: plinth/modules/networks/networks.py:255 +#: plinth/modules/networks/networks.py:242 #, python-brace-format msgid "Deactivated connection {name}." msgstr "Разорвано подключение {name}." -#: plinth/modules/networks/networks.py:259 +#: plinth/modules/networks/networks.py:246 msgid "Failed to de-activate connection: Connection not found." msgstr "Не удалось разорвать подключение: соединение не найдено." -#: plinth/modules/networks/networks.py:269 -#: plinth/modules/networks/templates/connections_list.html:62 -#: plinth/modules/networks/templates/connections_list.html:64 +#: plinth/modules/networks/networks.py:256 +#: plinth/modules/networks/templates/connections_list.html:12 +#: plinth/modules/networks/templates/connections_list.html:14 msgid "Nearby Wi-Fi Networks" msgstr "Соседние сети Wi-Fi" -#: plinth/modules/networks/networks.py:293 -#: plinth/modules/networks/templates/connections_list.html:67 -#: plinth/modules/networks/templates/connections_list.html:69 -#: plinth/modules/wireguard/templates/wireguard_add_server.html:34 +#: plinth/modules/networks/networks.py:280 +#: plinth/modules/networks/templates/connections_list.html:17 +#: plinth/modules/networks/templates/connections_list.html:19 +#: plinth/modules/wireguard/templates/wireguard_add_server.html:19 msgid "Add Connection" msgstr "Добавить подключение" -#: plinth/modules/networks/networks.py:311 +#: plinth/modules/networks/networks.py:298 msgid "Adding New Generic Connection" msgstr "Добавление нового общего подключения" -#: plinth/modules/networks/networks.py:329 +#: plinth/modules/networks/networks.py:316 msgid "Adding New Ethernet Connection" msgstr "Добавление нового подключения Ethernet" -#: plinth/modules/networks/networks.py:347 +#: plinth/modules/networks/networks.py:334 msgid "Adding New PPPoE Connection" msgstr "Добавление нового подключения PPPoE" -#: plinth/modules/networks/networks.py:382 +#: plinth/modules/networks/networks.py:369 msgid "Adding New Wi-Fi Connection" msgstr "Добавление нового подключения Wi-Fi" -#: plinth/modules/networks/networks.py:397 +#: plinth/modules/networks/networks.py:384 #, python-brace-format msgid "Connection {name} deleted." msgstr "Подключение {name} удалено." -#: plinth/modules/networks/networks.py:401 -#: plinth/modules/networks/networks.py:411 +#: plinth/modules/networks/networks.py:388 +#: plinth/modules/networks/networks.py:398 msgid "Failed to delete connection: Connection not found." msgstr "Не удалось удалить подключение: соединение не найдено." -#: plinth/modules/networks/networks.py:416 -#: plinth/modules/networks/templates/connections_delete.html:26 +#: plinth/modules/networks/networks.py:403 +#: plinth/modules/networks/templates/connections_delete.html:11 msgid "Delete Connection" msgstr "Удаление подключения" -#: plinth/modules/networks/networks.py:442 +#: plinth/modules/networks/networks.py:428 #, fuzzy #| msgid "Tor configuration is being updated" msgid "Router configuration type saved." msgstr "В настоящее время обновляется конфигурация Tor" -#: plinth/modules/networks/templates/connection_show.html:43 +#: plinth/modules/networks/networks.py:474 +#, fuzzy +#| msgid "Tor configuration is being updated" +msgid "Internet connection type saved." +msgstr "В настоящее время обновляется конфигурация Tor" + +#: plinth/modules/networks/templates/connection_show.html:28 msgid "Edit connection" msgstr "Редактирование подключения" -#: plinth/modules/networks/templates/connection_show.html:43 -#: plinth/modules/wireguard/templates/wireguard_show_client.html:83 -#: plinth/modules/wireguard/templates/wireguard_show_server.html:84 -#: plinth/templates/base.html:167 plinth/templates/base.html:168 +#: plinth/modules/networks/templates/connection_show.html:28 +#: plinth/modules/wireguard/templates/wireguard_show_client.html:68 +#: plinth/modules/wireguard/templates/wireguard_show_server.html:69 +#: plinth/templates/base.html:152 plinth/templates/base.html:153 msgid "Edit" msgstr "Редактировать" -#: plinth/modules/networks/templates/connection_show.html:50 -#: plinth/modules/networks/templates/connections_list.html:90 +#: plinth/modules/networks/templates/connection_show.html:35 +#: plinth/modules/networks/templates/connections_list.html:40 msgid "Deactivate" msgstr "Отключить" -#: plinth/modules/networks/templates/connection_show.html:57 -#: plinth/modules/networks/templates/connections_list.html:98 +#: plinth/modules/networks/templates/connection_show.html:42 +#: plinth/modules/networks/templates/connections_list.html:48 msgid "Activate" msgstr "Включить" -#: plinth/modules/networks/templates/connection_show.html:63 +#: plinth/modules/networks/templates/connection_show.html:48 msgid "Delete connection" msgstr "Удаление подключения" -#: plinth/modules/networks/templates/connection_show.html:66 -#: plinth/modules/networks/templates/connections_diagram.html:73 -#: plinth/modules/networks/templates/connections_diagram.html:76 -#: plinth/modules/networks/templates/connections_diagram.html:105 -#: plinth/modules/networks/templates/connections_diagram.html:127 +#: plinth/modules/networks/templates/connection_show.html:51 +#: plinth/modules/networks/templates/connections_diagram.html:58 +#: plinth/modules/networks/templates/connections_diagram.html:61 +#: plinth/modules/networks/templates/connections_diagram.html:90 +#: plinth/modules/networks/templates/connections_diagram.html:112 msgid "Connection" msgstr "Подключение" -#: plinth/modules/networks/templates/connection_show.html:71 +#: plinth/modules/networks/templates/connection_show.html:56 msgid "Primary connection" msgstr "Основное соединение" -#: plinth/modules/networks/templates/connection_show.html:73 -#: plinth/modules/networks/templates/connection_show.html:217 -#: plinth/modules/networks/templates/connection_show.html:256 +#: plinth/modules/networks/templates/connection_show.html:58 +#: plinth/modules/networks/templates/connection_show.html:202 +#: plinth/modules/networks/templates/connection_show.html:241 msgid "yes" msgstr "Да" -#: plinth/modules/networks/templates/connection_show.html:84 -#: plinth/modules/storage/templates/storage.html:40 +#: plinth/modules/networks/templates/connection_show.html:69 +#: plinth/modules/storage/templates/storage.html:25 msgid "Device" msgstr "Устройство" -#: plinth/modules/networks/templates/connection_show.html:88 +#: plinth/modules/networks/templates/connection_show.html:73 msgid "State" msgstr "Состояние" -#: plinth/modules/networks/templates/connection_show.html:93 +#: plinth/modules/networks/templates/connection_show.html:78 msgid "State reason" msgstr "Определение состояния" -#: plinth/modules/networks/templates/connection_show.html:102 +#: plinth/modules/networks/templates/connection_show.html:87 msgid "MAC address" msgstr "MAC-адрес" -#: plinth/modules/networks/templates/connection_show.html:106 +#: plinth/modules/networks/templates/connection_show.html:91 msgid "Interface" msgstr "Интерфейс" -#: plinth/modules/networks/templates/connection_show.html:110 -#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:33 -#: plinth/modules/snapshot/templates/snapshot_manage.html:45 -#: plinth/modules/snapshot/templates/snapshot_rollback.html:41 +#: plinth/modules/networks/templates/connection_show.html:95 +#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:18 +#: plinth/modules/snapshot/templates/snapshot_manage.html:30 +#: plinth/modules/snapshot/templates/snapshot_rollback.html:26 msgid "Description" msgstr "Описание" -#: plinth/modules/networks/templates/connection_show.html:116 +#: plinth/modules/networks/templates/connection_show.html:101 msgid "Physical Link" msgstr "Физическая связь" -#: plinth/modules/networks/templates/connection_show.html:121 +#: plinth/modules/networks/templates/connection_show.html:106 msgid "Link state" msgstr "Состояния связи" -#: plinth/modules/networks/templates/connection_show.html:125 +#: plinth/modules/networks/templates/connection_show.html:110 msgid "cable is connected" msgstr "кабель подключен" -#: plinth/modules/networks/templates/connection_show.html:128 +#: plinth/modules/networks/templates/connection_show.html:113 msgid "please check cable" msgstr "Проверьте кабель" -#: plinth/modules/networks/templates/connection_show.html:133 -#: plinth/modules/networks/templates/connection_show.html:149 +#: plinth/modules/networks/templates/connection_show.html:118 +#: plinth/modules/networks/templates/connection_show.html:134 msgid "Speed" msgstr "Скорость" -#: plinth/modules/networks/templates/connection_show.html:135 +#: plinth/modules/networks/templates/connection_show.html:120 #, python-format msgid "%(ethernet_speed)s Mbit/s" msgstr "%(ethernet_speed)s Мбит/сек" -#: plinth/modules/networks/templates/connection_show.html:151 +#: plinth/modules/networks/templates/connection_show.html:136 #, python-format msgid "%(wireless_bitrate)s Mbit/s" msgstr "%(wireless_bitrate)s Мбит/сек" -#: plinth/modules/networks/templates/connection_show.html:163 +#: plinth/modules/networks/templates/connection_show.html:148 msgid "Signal strength" msgstr "Сила сигнала" -#: plinth/modules/networks/templates/connection_show.html:181 +#: plinth/modules/networks/templates/connection_show.html:166 msgid "IPv4" msgstr "IРv4" -#: plinth/modules/networks/templates/connection_show.html:186 -#: plinth/modules/networks/templates/connection_show.html:227 -#: plinth/modules/shadowsocks/forms.py:64 +#: plinth/modules/networks/templates/connection_show.html:171 +#: plinth/modules/networks/templates/connection_show.html:212 +#: plinth/modules/shadowsocks/forms.py:49 msgid "Method" msgstr "Метод" -#: plinth/modules/networks/templates/connection_show.html:193 -#: plinth/modules/networks/templates/connection_show.html:234 +#: plinth/modules/networks/templates/connection_show.html:178 +#: plinth/modules/networks/templates/connection_show.html:219 msgid "IP address" msgstr "IP-адрес" -#: plinth/modules/networks/templates/connection_show.html:209 -#: plinth/modules/networks/templates/connection_show.html:248 +#: plinth/modules/networks/templates/connection_show.html:194 +#: plinth/modules/networks/templates/connection_show.html:233 msgid "DNS server" msgstr "DNS-сервер" -#: plinth/modules/networks/templates/connection_show.html:216 -#: plinth/modules/networks/templates/connection_show.html:255 -#: plinth/modules/storage/forms.py:156 +#: plinth/modules/networks/templates/connection_show.html:201 +#: plinth/modules/networks/templates/connection_show.html:240 +#: plinth/modules/storage/forms.py:141 msgid "Default" msgstr "По умолчанию" -#: plinth/modules/networks/templates/connection_show.html:222 +#: plinth/modules/networks/templates/connection_show.html:207 msgid "IPv6" msgstr "IРv6" -#: plinth/modules/networks/templates/connection_show.html:263 +#: plinth/modules/networks/templates/connection_show.html:248 msgid "This connection is not active." msgstr "Это подключение не активно." -#: plinth/modules/networks/templates/connection_show.html:266 -#: plinth/modules/security/__init__.py:38 plinth/modules/security/views.py:47 +#: plinth/modules/networks/templates/connection_show.html:251 +#: plinth/modules/security/__init__.py:45 msgid "Security" msgstr "Безопасность" -#: plinth/modules/networks/templates/connection_show.html:271 -#: plinth/modules/networks/templates/connection_show.html:291 -#: plinth/modules/networks/templates/connection_show.html:310 +#: plinth/modules/networks/templates/connection_show.html:256 +#: plinth/modules/networks/templates/connection_show.html:276 +#: plinth/modules/networks/templates/connection_show.html:295 msgid "Firewall zone" msgstr "Зона Брандмауэра" -#: plinth/modules/networks/templates/connection_show.html:280 +#: plinth/modules/networks/templates/connection_show.html:265 msgid "" "This interface should be connected to a local network/machine. If you " "connect this interface to a public network, services meant to be available " @@ -3878,7 +3955,7 @@ msgstr "" "интерфейс подключен к публичной сети, внутренние службы будут доступны " "извне. Это представляет риск для безопасности." -#: plinth/modules/networks/templates/connection_show.html:300 +#: plinth/modules/networks/templates/connection_show.html:285 msgid "" "This interface should receive your Internet connection. If you connect it to " "a local network/machine, many services meant to available only internally " @@ -3887,7 +3964,7 @@ msgstr "" "Этот интерфейс должен получить подключение к Интернету. Если вы подключите " "его к локальной сети/машине, многие внутренние службы будут не доступны." -#: plinth/modules/networks/templates/connection_show.html:319 +#: plinth/modules/networks/templates/connection_show.html:304 #, python-format msgid "" "This interface is not maintained by %(box_name)s. Its security status is " @@ -3900,114 +3977,139 @@ msgstr "" "на этом интерфейсе. Мы рекомендуем вам отключить или удалить это подключение " "и заново настроить его." -#: plinth/modules/networks/templates/connections_create.html:34 +#: plinth/modules/networks/templates/connections_create.html:19 msgid "Create Connection" msgstr "Создание подключения" -#: plinth/modules/networks/templates/connections_delete.html:29 +#: plinth/modules/networks/templates/connections_delete.html:14 #, python-format msgid "Delete connection %(name)s permanently?" msgstr "Окончательно удалить подключение %(name)s?" -#: plinth/modules/networks/templates/connections_diagram.html:65 +#: plinth/modules/networks/templates/connections_diagram.html:50 msgid "Internet" msgstr "Интернет" -#: plinth/modules/networks/templates/connections_diagram.html:70 -#: plinth/modules/networks/templates/connections_diagram.html:102 +#: plinth/modules/networks/templates/connections_diagram.html:55 +#: plinth/modules/networks/templates/connections_diagram.html:87 msgid "Spacing" msgstr "Интервал" -#: plinth/modules/networks/templates/connections_diagram.html:83 -#: plinth/modules/networks/templates/connections_diagram.html:113 -#: plinth/network.py:40 +#: plinth/modules/networks/templates/connections_diagram.html:68 +#: plinth/modules/networks/templates/connections_diagram.html:98 +#: plinth/network.py:25 msgid "Ethernet" msgstr "Ethernet" -#: plinth/modules/networks/templates/connections_diagram.html:86 -#: plinth/modules/networks/templates/connections_diagram.html:116 -#: plinth/network.py:41 +#: plinth/modules/networks/templates/connections_diagram.html:71 +#: plinth/modules/networks/templates/connections_diagram.html:101 +#: plinth/network.py:26 msgid "Wi-Fi" msgstr "Wi-Fi" -#: plinth/modules/networks/templates/connections_diagram.html:89 +#: plinth/modules/networks/templates/connections_diagram.html:74 #, python-format msgid "Show connection %(connection.name)s" msgstr "Показать подключение %(connection.name)s" -#: plinth/modules/networks/templates/connections_diagram.html:119 +#: plinth/modules/networks/templates/connections_diagram.html:104 #, python-format msgid "Show connection %(name)s" msgstr "Показать подключение %(name)s" -#: plinth/modules/networks/templates/connections_diagram.html:131 +#: plinth/modules/networks/templates/connections_diagram.html:116 msgid "Computer" msgstr "Компьютер" -#: plinth/modules/networks/templates/connections_list.html:58 +#: plinth/modules/networks/templates/connections_list.html:8 #, fuzzy #| msgid "Connection" msgid "Connections" msgstr "Подключение" -#: plinth/modules/networks/templates/connections_list.html:79 +#: plinth/modules/networks/templates/connections_list.html:29 #, python-format msgid "Delete connection %(name)s" msgstr "Удалить подключение %(name)s" -#: plinth/modules/networks/templates/connections_list.html:104 +#: plinth/modules/networks/templates/connections_list.html:54 msgid "Active" msgstr "Активные" -#: plinth/modules/networks/templates/connections_list.html:107 +#: plinth/modules/networks/templates/connections_list.html:57 msgid "Inactive" msgstr "Неактивен" -#: plinth/modules/networks/templates/connections_list.html:124 -#, python-format -msgid "%(box_name)s Internet Connectivity" +#: plinth/modules/networks/templates/connections_type_select.html:19 +msgid "Create..." +msgstr "Создать..." + +#: plinth/modules/networks/templates/internet_connectivity_content.html:10 +msgid "What Type Of Internet Connection Do You Have?" msgstr "" -#: plinth/modules/networks/templates/connections_list.html:129 -#, python-format +#: plinth/modules/networks/templates/internet_connectivity_content.html:16 msgid "" -"The following best describes how your %(box_name)s is connected in your " -"network. This information is used only to suggest necessary configuration " -"actions." +"Select an option that best describes the type of Internet connection. This " +"information is used only to guide you with further setup." msgstr "" -#: plinth/modules/networks/templates/connections_list.html:137 -#, python-format +#: plinth/modules/networks/templates/internet_connectivity_firstboot.html:18 +#: plinth/modules/networks/templates/router_configuration_firstboot.html:18 +msgid "Skip this step" +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_firstboot.html:19 +#: plinth/modules/networks/templates/router_configuration_firstboot.html:19 +msgid "Next" +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:9 +#, fuzzy +#| msgid "Connection Type" +msgid "Your Internet Connection Type" +msgstr "Тип подключения" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:14 msgid "" -"Your %(box_name)s gets its internet from your Router via WiFi or Ethernet " -"cable. This is a typical home setup." +"The following best describes the type of Internet connection provided by " +"your ISP. This information is only used to suggest you necessary " +"configuration actions." msgstr "" -#: plinth/modules/networks/templates/connections_list.html:145 -#: plinth/modules/networks/templates/connections_list.html:147 +#: plinth/modules/networks/templates/internet_connectivity_main.html:23 +msgid "My ISP provides a public IP address that does not change over time." +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:27 +msgid "My ISP provides a public IP address that may change over time." +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:31 +msgid "My ISP does not provide a public IP address." +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:37 +#: plinth/modules/networks/templates/router_configuration_main.html:29 #, fuzzy #| msgid "Update" msgid "Update..." msgstr "Обновление" -#: plinth/modules/networks/templates/connections_type_select.html:34 -msgid "Create..." -msgstr "Создать..." - -#: plinth/modules/networks/templates/router_configuration_content.html:25 +#: plinth/modules/networks/templates/router_configuration_content.html:10 #, fuzzy, python-format #| msgid "%(box_name)s is up to date." msgid "Setup %(box_name)s Behind a Router" msgstr "%(box_name)s в актуальном состоянии." -#: plinth/modules/networks/templates/router_configuration_content.html:31 +#: plinth/modules/networks/templates/router_configuration_content.html:16 #, python-format msgid "" "Your %(box_name)s gets its internet connection from your router via Wi-Fi or " "Ethernet cable. This is a typical home setup." msgstr "" -#: plinth/modules/networks/templates/router_configuration_content.html:38 +#: plinth/modules/networks/templates/router_configuration_content.html:23 #, python-format msgid "" "With this setup, any device on the internet trying to reach your " @@ -4016,24 +4118,24 @@ msgid "" "the services." msgstr "" -#: plinth/modules/networks/templates/router_configuration_content.html:47 +#: plinth/modules/networks/templates/router_configuration_content.html:32 msgid "" "If you don't have control over your router, choose not to configure it. To " -"see options, to overcome this limitation, choose 'no public address' option " +"see options to overcome this limitation, choose 'no public address' option " "in Internet connection type selection." msgstr "" -#: plinth/modules/networks/templates/router_configuration_content.html:54 +#: plinth/modules/networks/templates/router_configuration_content.html:39 msgid "Choose How You Wish to Configure Your Router" msgstr "" -#: plinth/modules/networks/templates/router_configuration_content.html:57 +#: plinth/modules/networks/templates/router_configuration_content.html:42 msgid "" "You will need to login to your router's administration console provided by " "the router. This may look like one of the following:" msgstr "" -#: plinth/modules/networks/templates/router_configuration_content.html:69 +#: plinth/modules/networks/templates/router_configuration_content.html:54 msgid "" "The username and password is configured by you when you first setup the " "router. For many routers, this information is printed at the back of the " @@ -4043,24 +4145,27 @@ msgid "" "full instructions on how to perform this task." msgstr "" -#: plinth/modules/networks/templates/router_configuration_firstboot.html:33 -msgid "skip this step" +#: plinth/modules/networks/templates/router_configuration_main.html:9 +#, python-format +msgid "%(box_name)s Internet Connectivity" msgstr "" -#: plinth/modules/networks/templates/router_configuration_firstboot.html:35 -msgid "Next" +#: plinth/modules/networks/templates/router_configuration_main.html:15 +#, python-format +msgid "" +"The following best describes how your %(box_name)s is connected in your " +"network. This information is used only to suggest necessary configuration " +"actions." msgstr "" -#: plinth/modules/openvpn/__init__.py:39 plinth/modules/openvpn/manifest.py:33 -msgid "OpenVPN" -msgstr "OpenVPN" +#: plinth/modules/networks/templates/router_configuration_main.html:23 +#, python-format +msgid "" +"Your %(box_name)s gets its Internet from your Router via Wi-Fi or Ethernet " +"cable. This is a typical home setup." +msgstr "" -#: plinth/modules/openvpn/__init__.py:43 -#: plinth/modules/wireguard/__init__.py:40 -msgid "Virtual Private Network" -msgstr "Виртуальная частная сеть" - -#: plinth/modules/openvpn/__init__.py:47 +#: plinth/modules/openvpn/__init__.py:26 #, python-brace-format msgid "" "Virtual Private Network (VPN) is a technique for securely connecting two " @@ -4078,22 +4183,31 @@ msgstr "" "также получить доступ к остальной части Интернет через {box_name} для " "дополнительной безопасности и анонимности." -#: plinth/modules/openvpn/__init__.py:79 +#: plinth/modules/openvpn/__init__.py:49 plinth/modules/openvpn/manifest.py:18 +msgid "OpenVPN" +msgstr "OpenVPN" + +#: plinth/modules/openvpn/__init__.py:50 +#: plinth/modules/wireguard/__init__.py:53 +msgid "Virtual Private Network" +msgstr "Виртуальная частная сеть" + +#: plinth/modules/openvpn/__init__.py:61 #, python-brace-format msgid "" "Download Profile" msgstr "" "Скачать профиль" -#: plinth/modules/openvpn/forms.py:27 +#: plinth/modules/openvpn/forms.py:12 msgid "Enable OpenVPN server" msgstr "Включить сервер OpenVPN" -#: plinth/modules/openvpn/manifest.py:63 -msgid "TunnelBlick" +#: plinth/modules/openvpn/manifest.py:48 +msgid "Tunnelblick" msgstr "" -#: plinth/modules/openvpn/templates/openvpn.html:42 +#: plinth/modules/openvpn/templates/openvpn.html:27 #, python-format msgid "" "OpenVPN has not yet been setup. Performing a secure setup takes a very long " @@ -4105,15 +4219,15 @@ msgstr "" "занять продолжительное время. Если установка прерывается, вы можете начать " "её снова." -#: plinth/modules/openvpn/templates/openvpn.html:55 +#: plinth/modules/openvpn/templates/openvpn.html:40 msgid "Start setup" msgstr "Запуск программы установки" -#: plinth/modules/openvpn/templates/openvpn.html:64 +#: plinth/modules/openvpn/templates/openvpn.html:49 msgid "OpenVPN setup is running" msgstr "Выполняется установка OpenVPN" -#: plinth/modules/openvpn/templates/openvpn.html:68 +#: plinth/modules/openvpn/templates/openvpn.html:53 #, python-format msgid "" "To perform a secure setup, this process takes a very long time. Depending " @@ -4124,11 +4238,11 @@ msgstr "" "от мощности вашего %(box_name)s, это может занять продолжительное время. " "Если установка прерывается, вы можете начать её снова." -#: plinth/modules/openvpn/templates/openvpn.html:87 +#: plinth/modules/openvpn/templates/openvpn.html:72 msgid "Profile" msgstr "Профиль" -#: plinth/modules/openvpn/templates/openvpn.html:90 +#: plinth/modules/openvpn/templates/openvpn.html:75 #, fuzzy, python-format #| msgid "" #| "To connect to %(box_name)s's VPN, you need to download a profile and feed " @@ -4149,34 +4263,26 @@ msgstr "" "OpenVPN\">Документация с рекомендуемыми клиентами и инструкциями по их " "настройке." -#: plinth/modules/openvpn/templates/openvpn.html:100 +#: plinth/modules/openvpn/templates/openvpn.html:85 #, python-format msgid "Profile is specific to each user of %(box_name)s. Keep it a secret." msgstr "" "Профиль специфичен для каждого пользователя %(box_name)s. Держите профиль в " "тайне." -#: plinth/modules/openvpn/templates/openvpn.html:111 +#: plinth/modules/openvpn/templates/openvpn.html:96 msgid "Download my profile" msgstr "Скачать мой профиль" -#: plinth/modules/openvpn/views.py:133 +#: plinth/modules/openvpn/views.py:114 msgid "Setup completed." msgstr "Установка завершена." -#: plinth/modules/openvpn/views.py:135 +#: plinth/modules/openvpn/views.py:116 msgid "Setup failed." msgstr "Установка не удалась." -#: plinth/modules/pagekite/__init__.py:39 -msgid "PageKite" -msgstr "PаgeKite" - -#: plinth/modules/pagekite/__init__.py:41 -msgid "Public Visibility" -msgstr "Публичная видимость" - -#: plinth/modules/pagekite/__init__.py:45 +#: plinth/modules/pagekite/__init__.py:26 #, python-brace-format msgid "" "PageKite is a system for exposing {box_name} services when you don't have a " @@ -4189,19 +4295,19 @@ msgstr "" "недоступны из остальной части интернета. Это включает в себя следующие " "ситуации:" -#: plinth/modules/pagekite/__init__.py:50 +#: plinth/modules/pagekite/__init__.py:31 #, python-brace-format msgid "{box_name} is behind a restricted firewall." msgstr "{box_name} ограничен брандмауэром." -#: plinth/modules/pagekite/__init__.py:53 +#: plinth/modules/pagekite/__init__.py:34 #, 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:55 +#: plinth/modules/pagekite/__init__.py:36 msgid "" "Your ISP does not provide you an external IP address and instead provides " "Internet connection through NAT." @@ -4209,7 +4315,7 @@ msgstr "" "Ваш провайдер не предоставляет вам внешний IP-адрес и вместо этого " "обеспечивает подключение к Интернету через NAT." -#: plinth/modules/pagekite/__init__.py:57 +#: plinth/modules/pagekite/__init__.py:38 msgid "" "Your ISP does not provide you a static IP address and your IP address " "changes every time you connect to Internet." @@ -4217,11 +4323,11 @@ msgstr "" "Ваш провайдер не предоставляет вам статический IP-адрес, и ваш-IP адрес " "изменяется каждый раз при подключении к Интернету." -#: plinth/modules/pagekite/__init__.py:59 +#: plinth/modules/pagekite/__init__.py:40 msgid "Your ISP limits incoming connections." msgstr "Ваш провайдер ограничивает входящие соединения." -#: plinth/modules/pagekite/__init__.py:61 +#: plinth/modules/pagekite/__init__.py:42 #, fuzzy, python-brace-format #| msgid "" #| "PageKite works around NAT, firewalls and IP-address limitations by using " @@ -4240,17 +4346,25 @@ msgstr "" "услуг pagekite, например pagekite.net. " "В будущем, для этого возможно будет использовать {box_name} вашего приятеля." -#: plinth/modules/pagekite/__init__.py:87 +#: plinth/modules/pagekite/__init__.py:62 +msgid "PageKite" +msgstr "PаgeKite" + +#: plinth/modules/pagekite/__init__.py:64 +msgid "Public Visibility" +msgstr "Публичная видимость" + +#: plinth/modules/pagekite/__init__.py:74 #, fuzzy #| msgid "PageKite Account" msgid "PageKite Domain" msgstr "Учетная запись PageKite" -#: plinth/modules/pagekite/forms.py:66 +#: plinth/modules/pagekite/forms.py:51 msgid "Server domain" msgstr "Домен сервера" -#: plinth/modules/pagekite/forms.py:68 +#: plinth/modules/pagekite/forms.py:53 msgid "" "Select your pagekite server. Set \"pagekite.net\" to use the default " "pagekite.net server." @@ -4258,31 +4372,31 @@ msgstr "" "Выберите свой сервер pagekite. Выберите \"pagekite.net\", чтобы использовать " "сервер по умолчанию - pagekite.net." -#: plinth/modules/pagekite/forms.py:71 plinth/modules/shadowsocks/forms.py:55 +#: plinth/modules/pagekite/forms.py:56 plinth/modules/shadowsocks/forms.py:40 msgid "Server port" msgstr "Порт сервера" -#: plinth/modules/pagekite/forms.py:72 +#: plinth/modules/pagekite/forms.py:57 msgid "Port of your pagekite server (default: 80)" msgstr "Порт сервера pagekite (по умолчанию: 80)" -#: plinth/modules/pagekite/forms.py:74 +#: plinth/modules/pagekite/forms.py:59 msgid "Kite name" msgstr "Имя Kite" -#: plinth/modules/pagekite/forms.py:75 +#: plinth/modules/pagekite/forms.py:60 msgid "Example: mybox.pagekite.me" msgstr "Пример: mybox.pagekite.me" -#: plinth/modules/pagekite/forms.py:77 +#: plinth/modules/pagekite/forms.py:62 msgid "Invalid kite name" msgstr "Недопустимое имя kite" -#: plinth/modules/pagekite/forms.py:81 +#: plinth/modules/pagekite/forms.py:66 msgid "Kite secret" msgstr "Kite secrеt" -#: plinth/modules/pagekite/forms.py:82 +#: plinth/modules/pagekite/forms.py:67 msgid "" "A secret associated with the kite or the default secret for your account if " "no secret is set on the kite." @@ -4290,43 +4404,43 @@ msgstr "" "Секрет, связанный с kite или секрет по умолчанию для вашей учетной записи, " "если не секрет устанавливается на kite." -#: plinth/modules/pagekite/forms.py:98 +#: plinth/modules/pagekite/forms.py:83 msgid "Kite details set" msgstr "Изменить детали Kite" -#: plinth/modules/pagekite/forms.py:105 +#: plinth/modules/pagekite/forms.py:90 msgid "Pagekite server set" msgstr "Смена сервера Pagekite" -#: plinth/modules/pagekite/forms.py:129 +#: plinth/modules/pagekite/forms.py:114 msgid "PageKite enabled" msgstr "PageKite включен" -#: plinth/modules/pagekite/forms.py:132 +#: plinth/modules/pagekite/forms.py:117 msgid "PageKite disabled" msgstr "PageKite выключен" -#: plinth/modules/pagekite/forms.py:148 +#: plinth/modules/pagekite/forms.py:133 msgid "protocol" msgstr "протокол" -#: plinth/modules/pagekite/forms.py:151 +#: plinth/modules/pagekite/forms.py:136 msgid "external (frontend) port" msgstr "внешний (frontend) порт" -#: plinth/modules/pagekite/forms.py:154 +#: plinth/modules/pagekite/forms.py:139 msgid "internal (freedombox) port" msgstr "Внутренний (freedombox) порт" -#: plinth/modules/pagekite/forms.py:155 +#: plinth/modules/pagekite/forms.py:140 msgid "Enable Subdomains" msgstr "Включить поддомены" -#: plinth/modules/pagekite/forms.py:189 +#: plinth/modules/pagekite/forms.py:174 msgid "Deleted custom service" msgstr "Удалить пользовательские службы" -#: plinth/modules/pagekite/forms.py:222 +#: plinth/modules/pagekite/forms.py:207 msgid "" "This service is available as a standard service. Please use the \"Standard " "Services\" page to enable it." @@ -4334,45 +4448,45 @@ msgstr "" "Этот сервис доступна как стандартная служба. Пожалуйста, используйте " "страницу \"Стандартные службы\" чтобы включить её." -#: plinth/modules/pagekite/forms.py:231 +#: plinth/modules/pagekite/forms.py:216 msgid "Added custom service" msgstr "Добавить пользовательскую службу" -#: plinth/modules/pagekite/forms.py:234 +#: plinth/modules/pagekite/forms.py:219 msgid "This service already exists" msgstr "Эта служба уже существует" -#: plinth/modules/pagekite/templates/pagekite_configure.html:47 +#: plinth/modules/pagekite/templates/pagekite_configure.html:32 msgid "Custom Services" msgstr "Пользовательские службы" -#: plinth/modules/pagekite/templates/pagekite_configure.html:50 -#: plinth/modules/pagekite/templates/pagekite_configure.html:52 +#: plinth/modules/pagekite/templates/pagekite_configure.html:35 +#: plinth/modules/pagekite/templates/pagekite_configure.html:37 #, fuzzy #| msgid "Custom Services" msgid "Add Custom Service" msgstr "Пользовательские службы" -#: plinth/modules/pagekite/templates/pagekite_configure.html:57 +#: plinth/modules/pagekite/templates/pagekite_configure.html:42 msgid "Existing custom services" msgstr "Существующие пользовательские службы" -#: plinth/modules/pagekite/templates/pagekite_configure.html:71 +#: plinth/modules/pagekite/templates/pagekite_configure.html:56 #, python-format msgid "connected to %(backend_host)s:%(backend_port)s" msgstr "Подключен к %(backend_host)s:%(backend_port)s" -#: plinth/modules/pagekite/templates/pagekite_configure.html:83 +#: plinth/modules/pagekite/templates/pagekite_configure.html:68 msgid "Delete this service" msgstr "Удалить эту службу" -#: plinth/modules/pagekite/templates/pagekite_custom_services.html:30 +#: plinth/modules/pagekite/templates/pagekite_custom_services.html:15 #, fuzzy #| msgid "Added custom service" msgid "Add custom PageKite service" msgstr "Добавить пользовательскую службу" -#: plinth/modules/pagekite/templates/pagekite_custom_services.html:32 +#: plinth/modules/pagekite/templates/pagekite_custom_services.html:17 msgid "" "Warning:imaps://imap.example."
"com."
-#: plinth/modules/roundcube/__init__.py:53
+#: plinth/modules/roundcube/__init__.py:32
msgid ""
"For Gmail, username will be your Gmail address, password will be your Google "
"account password and server will be imaps://imap.gmail.com. "
@@ -4782,17 +4886,22 @@ msgstr ""
"security/lesssecureapps\" >https://www.google.com/settings/security/"
"lesssecureapps)."
-#: plinth/modules/samba/__init__.py:46
-msgid "Samba"
-msgstr ""
+#: plinth/modules/roundcube/__init__.py:54
+#: plinth/modules/roundcube/manifest.py:9
+msgid "Roundcube"
+msgstr "Roundcube"
-#: plinth/modules/samba/__init__.py:53
+#: plinth/modules/roundcube/__init__.py:55
+msgid "Email Client"
+msgstr "Почтовый клиент"
+
+#: plinth/modules/samba/__init__.py:32
msgid ""
"Samba allows to share files and folders between FreedomBox and other "
"computers in your local network."
msgstr ""
-#: plinth/modules/samba/__init__.py:56
+#: plinth/modules/samba/__init__.py:35
#, python-brace-format
msgid ""
"After installation, you can choose which disks to use for sharing. Enabled "
@@ -4801,55 +4910,59 @@ msgid ""
"There are three types of shares you can choose from: "
msgstr ""
-#: plinth/modules/samba/__init__.py:61
+#: plinth/modules/samba/__init__.py:40
msgid "Open share - accessible to everyone in your local network."
msgstr ""
-#: plinth/modules/samba/__init__.py:62
+#: plinth/modules/samba/__init__.py:41
msgid ""
"Group share - accessible only to FreedomBox users who are in the freedombox-"
"share group."
msgstr ""
-#: plinth/modules/samba/__init__.py:64
+#: plinth/modules/samba/__init__.py:43
msgid ""
"Home share - every user in the freedombox-share group can have their own "
"private space."
msgstr ""
-#: plinth/modules/samba/__init__.py:68
+#: plinth/modules/samba/__init__.py:47
msgid "Access to the private shares"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:39
-#: plinth/modules/samba/templates/samba.html:50
+#: plinth/modules/samba/__init__.py:61
+msgid "Samba"
+msgstr ""
+
+#: plinth/modules/samba/templates/samba.html:24
+#: plinth/modules/samba/templates/samba.html:35
#, fuzzy
#| msgid "Shared"
msgid "Shares"
msgstr "Общее"
-#: plinth/modules/samba/templates/samba.html:41
+#: plinth/modules/samba/templates/samba.html:26
msgid ""
"Note: Only specially created directories will be shared on selected disks, "
"not the whole disk."
msgstr ""
-#: plinth/modules/samba/templates/samba.html:49
+#: plinth/modules/samba/templates/samba.html:34
#, fuzzy
#| msgid "Domain Name"
msgid "Disk Name"
msgstr "Доменное имя"
-#: plinth/modules/samba/templates/samba.html:51
-#: plinth/modules/storage/templates/storage.html:44
+#: plinth/modules/samba/templates/samba.html:36
+#: plinth/modules/storage/templates/storage.html:29
msgid "Used"
msgstr "Используется"
-#: plinth/modules/samba/templates/samba.html:72
+#: plinth/modules/samba/templates/samba.html:57
msgid "VFAT partitions are not supported"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:103
+#: plinth/modules/samba/templates/samba.html:88
#, python-format
msgid ""
"You can find additional information about disks on the users module page."
msgstr ""
-#: plinth/modules/samba/templates/samba.html:109
+#: plinth/modules/samba/templates/samba.html:94
msgid "Users who can currently access group and home shares"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:113
+#: plinth/modules/samba/templates/samba.html:98
msgid ""
"Users needing to re-enter their password on the password change page to "
"access group and home shares"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:118
+#: plinth/modules/samba/templates/samba.html:103
#, fuzzy
#| msgid "Available Domains"
msgid "Unavailable Shares"
msgstr "Доступные Домены"
-#: plinth/modules/samba/templates/samba.html:120
+#: plinth/modules/samba/templates/samba.html:105
msgid ""
"Shares that are configured but the disk is not available. If the disk is "
"plugged back in, sharing will be automatically enabled."
msgstr ""
-#: plinth/modules/samba/templates/samba.html:128
+#: plinth/modules/samba/templates/samba.html:113
#, fuzzy
#| msgid "Share added."
msgid "Share name"
msgstr "Общий ресурс добавлен."
-#: plinth/modules/samba/templates/samba.html:129
+#: plinth/modules/samba/templates/samba.html:114
#, fuzzy
#| msgid "Actions"
msgid "Action"
msgstr "Действия"
-#: plinth/modules/samba/views.py:61 plinth/modules/storage/forms.py:164
+#: plinth/modules/samba/views.py:43 plinth/modules/storage/forms.py:149
#, fuzzy
#| msgid "Add Share"
msgid "Open Share"
msgstr "Добавить общий ресурс"
-#: plinth/modules/samba/views.py:62 plinth/modules/storage/forms.py:162
+#: plinth/modules/samba/views.py:44 plinth/modules/storage/forms.py:147
#, fuzzy
#| msgid "Add Share"
msgid "Group Share"
msgstr "Добавить общий ресурс"
-#: plinth/modules/samba/views.py:63
+#: plinth/modules/samba/views.py:45
#, fuzzy
#| msgid "Homepage"
msgid "Home Share"
msgstr "Домашняя страница"
-#: plinth/modules/samba/views.py:96
+#: plinth/modules/samba/views.py:78
#, fuzzy
#| msgid "Share deleted."
msgid "Share enabled."
msgstr "Общий ресурс удалён."
-#: plinth/modules/samba/views.py:101
+#: plinth/modules/samba/views.py:83
#, fuzzy, python-brace-format
#| msgid "Error ejecting device: {error_message}"
msgid "Error enabling share: {error_message}"
msgstr "Ошибка извлечения устройства: {error_message}"
-#: plinth/modules/samba/views.py:106
+#: plinth/modules/samba/views.py:88
#, fuzzy
#| msgid "Share edited."
msgid "Share disabled."
msgstr "Общий ресурс изменён."
-#: plinth/modules/samba/views.py:111
+#: plinth/modules/samba/views.py:93
#, fuzzy, python-brace-format
#| msgid "Error ejecting device: {error_message}"
msgid "Error disabling share: {error_message}"
msgstr "Ошибка извлечения устройства: {error_message}"
-#: plinth/modules/searx/__init__.py:41 plinth/modules/searx/manifest.py:24
-msgid "Searx"
-msgstr "Searx"
-
-#: plinth/modules/searx/__init__.py:45
-msgid "Web Search"
-msgstr "Веб-поиск"
-
-#: plinth/modules/searx/__init__.py:48
+#: plinth/modules/searx/__init__.py:25
msgid ""
"Searx is a privacy-respecting Internet metasearch engine. It aggregrates and "
"displays results from multiple search engines."
@@ -4949,7 +5054,7 @@ msgstr ""
"Searx - это конфиденциальная метапоисковая система. Она агрегирует и "
"показывает результаты с разных поисковых систем."
-#: plinth/modules/searx/__init__.py:50
+#: plinth/modules/searx/__init__.py:27
msgid ""
"Searx can be used to avoid tracking and profiling by search engines. It "
"stores no cookies by default."
@@ -4957,50 +5062,58 @@ msgstr ""
"Searx может быть использован, чтобы избежать отслеживания и профилирования "
"поисковыми системами. Она не хранит никаких файлов cookie по умолчанию."
-#: plinth/modules/searx/__init__.py:54
+#: plinth/modules/searx/__init__.py:31
msgid "Search the web"
msgstr "Поиск в интернете"
-#: plinth/modules/searx/forms.py:30
+#: plinth/modules/searx/__init__.py:47 plinth/modules/searx/manifest.py:9
+msgid "Searx"
+msgstr "Searx"
+
+#: plinth/modules/searx/__init__.py:48
+msgid "Web Search"
+msgstr "Веб-поиск"
+
+#: plinth/modules/searx/forms.py:15
msgid "Safe Search"
msgstr "Безопасный Поиск"
-#: plinth/modules/searx/forms.py:31
+#: plinth/modules/searx/forms.py:16
msgid "Select the default family filter to apply to your search results."
msgstr ""
"Выберите семейный фильтр по умолчанию, чтобы применить к вашим результатам "
"поиска."
-#: plinth/modules/searx/forms.py:32
+#: plinth/modules/searx/forms.py:17
msgid "None"
msgstr "нет"
-#: plinth/modules/searx/forms.py:32
+#: plinth/modules/searx/forms.py:17
msgid "Moderate"
msgstr "Умеренный"
-#: plinth/modules/searx/forms.py:32
+#: plinth/modules/searx/forms.py:17
msgid "Strict"
msgstr "Строгий"
-#: plinth/modules/searx/forms.py:35
+#: plinth/modules/searx/forms.py:20
msgid "Allow Public Access"
msgstr ""
-#: plinth/modules/searx/forms.py:36
+#: plinth/modules/searx/forms.py:21
msgid "Allow this application to be used by anyone who can reach it."
msgstr ""
-#: plinth/modules/searx/views.py:59 plinth/modules/searx/views.py:70
-#: plinth/modules/tor/views.py:149 plinth/modules/tor/views.py:176
+#: plinth/modules/searx/views.py:39 plinth/modules/searx/views.py:50
+#: plinth/modules/tor/views.py:130 plinth/modules/tor/views.py:157
msgid "Configuration updated."
msgstr "Конфигурация обновлена."
-#: plinth/modules/security/forms.py:28
+#: plinth/modules/security/forms.py:13
msgid "Restrict console logins (recommended)"
msgstr "Ограничение консольного входа (рекомендуется)"
-#: plinth/modules/security/forms.py:29
+#: plinth/modules/security/forms.py:14
msgid ""
"When this option is enabled, only users in the \"admin\" group will be able "
"to log in to console or via SSH. Console users may be able to access some "
@@ -5011,11 +5124,11 @@ msgstr ""
"могут иметь возможность доступа к некоторым службам без дополнительного "
"разрешения."
-#: plinth/modules/security/forms.py:34
+#: plinth/modules/security/forms.py:19
msgid "Fail2Ban (recommended)"
msgstr "Fail2ban (рекомендуется)"
-#: plinth/modules/security/forms.py:35
+#: plinth/modules/security/forms.py:20
msgid ""
"When this option is enabled, Fail2Ban will limit brute force break-in "
"attempts to the SSH server and other enabled password protected internet-"
@@ -5024,117 +5137,109 @@ msgstr ""
"Когда эта опция включена, Fail2Ban ограничит попытки взлома перебором SSH-"
"сервера и других защищенных паролем интернет услуг, которые включены."
-#: plinth/modules/security/templates/security.html:26
-#: plinth/modules/security/templates/security.html:28
+#: plinth/modules/security/templates/security.html:11
+#: plinth/modules/security/templates/security.html:13
#, fuzzy
#| msgid "Security"
msgid "Show security report"
msgstr "Безопасность"
-#: plinth/modules/security/templates/security_report.html:25
-#: plinth/modules/security/views.py:87
+#: plinth/modules/security/templates/security_report.html:10
+#: plinth/modules/security/views.py:71
#, fuzzy
#| msgid "Security"
msgid "Security Report"
msgstr "Безопасность"
-#: plinth/modules/security/templates/security_report.html:27
+#: plinth/modules/security/templates/security_report.html:12
#, python-format
msgid ""
"The installed version of FreedomBox has %(count)s reported security "
"vulnerabilities."
msgstr ""
-#: plinth/modules/security/templates/security_report.html:33
+#: plinth/modules/security/templates/security_report.html:18
msgid ""
"The following table lists the current reported number, and historical count, "
"of security vulnerabilities for each installed app."
msgstr ""
-#: plinth/modules/security/templates/security_report.html:39
+#: plinth/modules/security/templates/security_report.html:24
msgid ""
"For apps that provide services, the \"Sandboxed\" column shows whether "
"sandboxing features are in use. Sandboxing mitigates the impact of a "
"potentially compromised app to the rest of the system."
msgstr ""
-#: plinth/modules/security/templates/security_report.html:46
+#: plinth/modules/security/templates/security_report.html:31
msgid ""
"\"Sandbox Coverage\" is a score of how effectively the service is isolated "
"from the rest of the system. It is only displayed while the service is "
"running."
msgstr ""
-#: plinth/modules/security/templates/security_report.html:55
+#: plinth/modules/security/templates/security_report.html:40
#, fuzzy
#| msgid "Name"
msgid "App Name"
msgstr "Имя"
-#: plinth/modules/security/templates/security_report.html:56
+#: plinth/modules/security/templates/security_report.html:41
msgid "Current Vulnerabilities"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:57
+#: plinth/modules/security/templates/security_report.html:42
msgid "Past Vulnerabilities"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:58
+#: plinth/modules/security/templates/security_report.html:43
#, fuzzy
#| msgid "Block Sandbox"
msgid "Sandboxed"
msgstr "Песочница"
-#: plinth/modules/security/templates/security_report.html:59
+#: plinth/modules/security/templates/security_report.html:44
#, fuzzy
#| msgid "Block Sandbox"
msgid "Sandbox Coverage"
msgstr "Песочница"
-#: plinth/modules/security/templates/security_report.html:70
+#: plinth/modules/security/templates/security_report.html:55
msgid "N/A"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:72
+#: plinth/modules/security/templates/security_report.html:57
#, fuzzy
#| msgid "yes"
msgid "Yes"
msgstr "Да"
-#: plinth/modules/security/templates/security_report.html:74
+#: plinth/modules/security/templates/security_report.html:59
#, fuzzy
#| msgid "None"
msgid "No"
msgstr "нет"
-#: plinth/modules/security/templates/security_report.html:81
+#: plinth/modules/security/templates/security_report.html:66
#, fuzzy
#| msgid "is not running"
msgid "Not running"
msgstr "не запущен"
-#: plinth/modules/security/views.py:69
+#: plinth/modules/security/views.py:53
#, python-brace-format
msgid "Error setting restricted access: {exception}"
msgstr "Ошибка настройки ограничения доступа: {exception}"
-#: plinth/modules/security/views.py:72
+#: plinth/modules/security/views.py:56
msgid "Updated security configuration"
msgstr "Обновлена настройка безопасности"
-#: plinth/modules/shaarli/__init__.py:34 plinth/modules/shaarli/manifest.py:23
-msgid "Shaarli"
-msgstr "Shаarli"
-
-#: plinth/modules/shaarli/__init__.py:36
-msgid "Bookmarks"
-msgstr "Закладки"
-
-#: plinth/modules/shaarli/__init__.py:39
+#: plinth/modules/shaarli/__init__.py:20
msgid "Shaarli allows you to save and share bookmarks."
msgstr "Shaarli позволяет вам сохранять и обмениваться закладками."
-#: plinth/modules/shaarli/__init__.py:40
+#: plinth/modules/shaarli/__init__.py:21
#, fuzzy
#| msgid ""
#| "When enabled, Shaarli will be available from /"
@@ -5150,15 +5255,15 @@ msgstr ""
"на веб-сервере. Обратите внимание, что Shaarli поддерживает только одну "
"учетную запись для начальной установки."
-#: plinth/modules/shadowsocks/__init__.py:35
-msgid "Shadowsocks"
-msgstr "Shadowsocks"
+#: plinth/modules/shaarli/__init__.py:39 plinth/modules/shaarli/manifest.py:8
+msgid "Shaarli"
+msgstr "Shаarli"
-#: plinth/modules/shadowsocks/__init__.py:39
-msgid "Socks5 Proxy"
-msgstr "Socks5 Прокси"
+#: plinth/modules/shaarli/__init__.py:40
+msgid "Bookmarks"
+msgstr "Закладки"
-#: plinth/modules/shadowsocks/__init__.py:46
+#: plinth/modules/shadowsocks/__init__.py:25
msgid ""
"Shadowsocks is a lightweight and secure SOCKS5 proxy, designed to protect "
"your Internet traffic. It can be used to bypass Internet filtering and "
@@ -5168,7 +5273,7 @@ msgstr ""
"защитить ваш интернет-трафик. Он может использоваться для обхода Интернет-"
"фильтрации и цензуры."
-#: plinth/modules/shadowsocks/__init__.py:50
+#: plinth/modules/shadowsocks/__init__.py:29
#, python-brace-format
msgid ""
"Your {box_name} can run a Shadowsocks client, that can connect to a "
@@ -5180,7 +5285,7 @@ msgstr ""
"к серверу Shadowsocks. Он также запускать SOCKS5 прокси.Локальные устройства "
"могут подключиться к этому прокси, и их данные будут зашифрованы."
-#: plinth/modules/shadowsocks/__init__.py:55
+#: plinth/modules/shadowsocks/__init__.py:34
msgid ""
"To use Shadowsocks after setup, set the SOCKS5 proxy URL in your device, "
"browser or application to http://freedombox_address:1080/"
@@ -5188,38 +5293,42 @@ msgstr ""
"Чтобы использовать Shadowsocks после установки, смените URL-адрес SOCKS5 "
"прокси в браузере или ином приложении на http://freedombox_address:1080/"
-#: plinth/modules/shadowsocks/forms.py:28
-#: plinth/modules/shadowsocks/forms.py:29
+#: plinth/modules/shadowsocks/__init__.py:50
+msgid "Shadowsocks"
+msgstr "Shadowsocks"
+
+#: plinth/modules/shadowsocks/__init__.py:52
+msgid "Socks5 Proxy"
+msgstr "Socks5 Прокси"
+
+#: plinth/modules/shadowsocks/forms.py:13
+#: plinth/modules/shadowsocks/forms.py:14
msgid "Recommended"
msgstr "Рекомендуется"
-#: plinth/modules/shadowsocks/forms.py:52
+#: plinth/modules/shadowsocks/forms.py:37
msgid "Server"
msgstr "Сервер"
-#: plinth/modules/shadowsocks/forms.py:53
+#: plinth/modules/shadowsocks/forms.py:38
msgid "Server hostname or IP address"
msgstr "Имя или IP адрес сервера"
-#: plinth/modules/shadowsocks/forms.py:57
+#: plinth/modules/shadowsocks/forms.py:42
msgid "Server port number"
msgstr "Номер порта сервера"
-#: plinth/modules/shadowsocks/forms.py:60
+#: plinth/modules/shadowsocks/forms.py:45
msgid "Password used to encrypt data. Must match server password."
msgstr ""
"Пароль, используемый для шифрования данных. Должен совпадать с паролем "
"сервера."
-#: plinth/modules/shadowsocks/forms.py:65
+#: plinth/modules/shadowsocks/forms.py:50
msgid "Encryption method. Must match setting on server."
msgstr "Метод шифрования. Должен соответствовать параметру на сервере."
-#: plinth/modules/sharing/__init__.py:34
-msgid "Sharing"
-msgstr "Общий доступ"
-
-#: plinth/modules/sharing/__init__.py:38
+#: plinth/modules/sharing/__init__.py:21
#, python-brace-format
msgid ""
"Sharing allows you to share files and folders on your {box_name} over the "
@@ -5228,11 +5337,15 @@ msgstr ""
"Общий доступ позволяет обмениваться файлами и папками на вашем {box_name} "
"через сеть с выбранными группами пользователей."
-#: plinth/modules/sharing/forms.py:33
+#: plinth/modules/sharing/__init__.py:38
+msgid "Sharing"
+msgstr "Общий доступ"
+
+#: plinth/modules/sharing/forms.py:18
msgid "Name of the share"
msgstr "Имя общего ресурса"
-#: plinth/modules/sharing/forms.py:35
+#: plinth/modules/sharing/forms.py:20
msgid ""
"A lowercase alpha-numeric string that uniquely identifies a share. Example: "
"media."
@@ -5240,31 +5353,31 @@ msgstr ""
"Цифро-буквенная строка в нижнем регистре, однозначно идентифицирующая "
"ресурс. Пример: media."
-#: plinth/modules/sharing/forms.py:39
+#: plinth/modules/sharing/forms.py:24
msgid "Path to share"
msgstr "Путь к общему ресурсу"
-#: plinth/modules/sharing/forms.py:40
+#: plinth/modules/sharing/forms.py:25
msgid "Disk path to a folder on this server that you intend to share."
msgstr "Путь к папке на диске этого сервера, которую вы хотите сделать общей."
-#: plinth/modules/sharing/forms.py:43
+#: plinth/modules/sharing/forms.py:28
#, fuzzy
#| msgid "Publish Key"
msgid "Public share"
msgstr "Опубликовать ключ"
-#: plinth/modules/sharing/forms.py:44
+#: plinth/modules/sharing/forms.py:29
msgid "Make files in this folder available to anyone with the link."
msgstr ""
-#: plinth/modules/sharing/forms.py:48
+#: plinth/modules/sharing/forms.py:33
#, fuzzy
#| msgid "User groups who can read the files in the share"
msgid "User groups that can read the files in the share"
msgstr "Группы пользователей, которые могут читать файлы общего ресурса"
-#: plinth/modules/sharing/forms.py:50
+#: plinth/modules/sharing/forms.py:35
#, fuzzy
#| msgid ""
#| "Users who have these permissions will also be able to read the files in "
@@ -5275,64 +5388,60 @@ msgid ""
msgstr ""
"Пользователи, имеющие эти права, также смогут читать файлы общего ресурса."
-#: plinth/modules/sharing/forms.py:67
+#: plinth/modules/sharing/forms.py:52
msgid "A share with this name already exists."
msgstr "Общий ресурс с таким именем уже существует."
-#: plinth/modules/sharing/forms.py:78
+#: plinth/modules/sharing/forms.py:63
msgid "Shares should be either public or shared with at least one group"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:39
-#: plinth/modules/sharing/templates/sharing.html:42
+#: plinth/modules/sharing/templates/sharing.html:24
+#: plinth/modules/sharing/templates/sharing.html:27
msgid "Add share"
msgstr "Добавить общий ресурс"
-#: plinth/modules/sharing/templates/sharing.html:47
+#: plinth/modules/sharing/templates/sharing.html:32
msgid "No shares currently configured."
msgstr "Нет настроенных общих ресурсов."
-#: plinth/modules/sharing/templates/sharing.html:53
+#: plinth/modules/sharing/templates/sharing.html:38
msgid "Disk Path"
msgstr "Путь на диске"
-#: plinth/modules/sharing/templates/sharing.html:54
+#: plinth/modules/sharing/templates/sharing.html:39
msgid "Shared Over"
msgstr "Общий ресурс через"
-#: plinth/modules/sharing/templates/sharing.html:55
+#: plinth/modules/sharing/templates/sharing.html:40
msgid "With Groups"
msgstr "С группами"
-#: plinth/modules/sharing/templates/sharing.html:73
+#: plinth/modules/sharing/templates/sharing.html:58
msgid "public access"
msgstr ""
-#: plinth/modules/sharing/views.py:55
+#: plinth/modules/sharing/views.py:39
msgid "Share added."
msgstr "Общий ресурс добавлен."
-#: plinth/modules/sharing/views.py:60
+#: plinth/modules/sharing/views.py:44
msgid "Add Share"
msgstr "Добавить общий ресурс"
-#: plinth/modules/sharing/views.py:75
+#: plinth/modules/sharing/views.py:59
msgid "Share edited."
msgstr "Общий ресурс изменён."
-#: plinth/modules/sharing/views.py:80
+#: plinth/modules/sharing/views.py:64
msgid "Edit Share"
msgstr "Редактировать общий ресурс"
-#: plinth/modules/sharing/views.py:111
+#: plinth/modules/sharing/views.py:95
msgid "Share deleted."
msgstr "Общий ресурс удалён."
-#: plinth/modules/snapshot/__init__.py:37
-msgid "Storage Snapshots"
-msgstr "Хранилище снимков"
-
-#: plinth/modules/snapshot/__init__.py:40
+#: plinth/modules/snapshot/__init__.py:23
msgid ""
"Snapshots allows creating and managing btrfs file system snapshots. These "
"can be used to roll back the system to a previously known good state in case "
@@ -5342,7 +5451,7 @@ msgstr ""
"btrfs. Они могут использоваться для отката системы к последнему рабочему "
"состоянию в случае неприемлемых изменений в системе."
-#: plinth/modules/snapshot/__init__.py:44
+#: plinth/modules/snapshot/__init__.py:27
#, no-python-format
msgid ""
"Snapshots are taken periodically (called timeline snapshots) and also before "
@@ -5353,7 +5462,7 @@ msgstr ""
"до и после инсталляции программного обеспечения. Старые снимки автоматически "
"удаляются в соответствии с установками ниже."
-#: plinth/modules/snapshot/__init__.py:47
+#: plinth/modules/snapshot/__init__.py:30
msgid ""
"Snapshots currently work on btrfs file systems only and on the root "
"partition only. Snapshots are not a replacement for backups, так как они хранятся на том же разделе. "
-#: plinth/modules/snapshot/forms.py:27
+#: plinth/modules/snapshot/__init__.py:52
+msgid "Storage Snapshots"
+msgstr "Хранилище снимков"
+
+#: plinth/modules/snapshot/forms.py:12
msgid "Free Disk Space to Maintain"
msgstr "Имеющееся свободное дисковое пространство"
-#: plinth/modules/snapshot/forms.py:28
+#: plinth/modules/snapshot/forms.py:13
msgid ""
"Maintain this percentage of free space on the disk. If free space falls "
"below this value, older snapshots are removed until this much free space is "
@@ -5378,109 +5491,109 @@ msgstr ""
"будут удалятся до тех пор, пока норма не восстановится. Значение свободного "
"места по умолчанию 30%."
-#: plinth/modules/snapshot/forms.py:35
+#: plinth/modules/snapshot/forms.py:20
msgid "Timeline Snapshots"
msgstr "Снапшоты по графику"
-#: plinth/modules/snapshot/forms.py:36
+#: plinth/modules/snapshot/forms.py:21
msgid ""
"Enable or disable timeline snapshots (hourly, daily, monthly and yearly)."
msgstr ""
"Включить или отключить снапшоты по графику (ежечасно, ежедневно, ежемесячно "
"и ежегодно)."
-#: plinth/modules/snapshot/forms.py:41
+#: plinth/modules/snapshot/forms.py:26
msgid "Software Installation Snapshots"
msgstr "Снапшоты при установке ПО"
-#: plinth/modules/snapshot/forms.py:42
+#: plinth/modules/snapshot/forms.py:27
msgid "Enable or disable snapshots before and after software installation"
msgstr ""
"Включить или отключить снапшоты до и после установки программного обеспечения"
-#: plinth/modules/snapshot/forms.py:47
+#: plinth/modules/snapshot/forms.py:32
msgid "Hourly Snapshots Limit"
msgstr "Часовой лимит снапшотов"
-#: plinth/modules/snapshot/forms.py:48
+#: plinth/modules/snapshot/forms.py:33
msgid "Keep a maximum of this many hourly snapshots."
msgstr "Хранить максимум столько ежечасных снапшотов."
-#: plinth/modules/snapshot/forms.py:51
+#: plinth/modules/snapshot/forms.py:36
msgid "Daily Snapshots Limit"
msgstr "Дневной лимит снапшотов"
-#: plinth/modules/snapshot/forms.py:52
+#: plinth/modules/snapshot/forms.py:37
msgid "Keep a maximum of this many daily snapshots."
msgstr "Хранить максимум столько ежедневных снапшотов."
-#: plinth/modules/snapshot/forms.py:55
+#: plinth/modules/snapshot/forms.py:40
msgid "Weekly Snapshots Limit"
msgstr "Недельный лимит снапшотов"
-#: plinth/modules/snapshot/forms.py:56
+#: plinth/modules/snapshot/forms.py:41
msgid "Keep a maximum of this many weekly snapshots."
msgstr "Хранить максимум столько еженедельных снапшотов."
-#: plinth/modules/snapshot/forms.py:59
+#: plinth/modules/snapshot/forms.py:44
msgid "Monthly Snapshots Limit"
msgstr "Месячный лимит снапшотов"
-#: plinth/modules/snapshot/forms.py:60
+#: plinth/modules/snapshot/forms.py:45
msgid "Keep a maximum of this many monthly snapshots."
msgstr "Хранить максимум столько ежемесячных снапшотов."
-#: plinth/modules/snapshot/forms.py:63
+#: plinth/modules/snapshot/forms.py:48
msgid "Yearly Snapshots Limit"
msgstr "Готовой лимит снапшотов"
-#: plinth/modules/snapshot/forms.py:64
+#: plinth/modules/snapshot/forms.py:49
msgid ""
"Keep a maximum of this many yearly snapshots. The default value is 0 "
"(disabled)."
msgstr ""
"Хранить максимум столько ежегодных снапшотов. По умолчанию 0 (отключено)."
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:27
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:12
msgid "Delete the following snapshots permanently?"
msgstr "Окончательно удалить этот снапшот?"
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:31
-#: plinth/modules/snapshot/templates/snapshot_manage.html:43
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:39
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:16
+#: plinth/modules/snapshot/templates/snapshot_manage.html:28
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:24
msgid "Number"
msgstr "Номер"
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:32
-#: plinth/modules/snapshot/templates/snapshot_manage.html:44
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:40
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:17
+#: plinth/modules/snapshot/templates/snapshot_manage.html:29
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:25
msgid "Date"
msgstr "Дата"
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:52
-#: plinth/modules/snapshot/templates/snapshot_manage.html:37
-#: plinth/modules/snapshot/views.py:196
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:37
+#: plinth/modules/snapshot/templates/snapshot_manage.html:22
+#: plinth/modules/snapshot/views.py:175
msgid "Delete Snapshots"
msgstr "Удалить снапшот"
-#: plinth/modules/snapshot/templates/snapshot_manage.html:33
+#: plinth/modules/snapshot/templates/snapshot_manage.html:18
msgid "Create Snapshot"
msgstr "Создать снимок"
-#: plinth/modules/snapshot/templates/snapshot_manage.html:46
+#: plinth/modules/snapshot/templates/snapshot_manage.html:31
msgid "Rollback"
msgstr "Откат"
-#: plinth/modules/snapshot/templates/snapshot_manage.html:57
+#: plinth/modules/snapshot/templates/snapshot_manage.html:42
msgid "active"
msgstr "активен"
-#: plinth/modules/snapshot/templates/snapshot_manage.html:66
+#: plinth/modules/snapshot/templates/snapshot_manage.html:51
#, python-format
msgid "Rollback to snapshot #%(number)s"
msgstr "Откат к снимку #%(number)s"
-#: plinth/modules/snapshot/templates/snapshot_not_supported.html:26
+#: plinth/modules/snapshot/templates/snapshot_not_supported.html:11
#, python-format
msgid ""
"Your have a filesystem of type %(fs_type)s. Snapshots are "
@@ -5489,11 +5602,11 @@ msgstr ""
"Вы имеете файловую систему типа %(fs_type)s. Снимки сейчас "
"доступны только для файловой системы %(types_supported)s ."
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:27
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:12
msgid "Roll back the system to this snapshot?"
msgstr "Откат системы до этого снимка?"
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:30
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:15
msgid ""
"A new snapshot with the current state of the file system will be "
"automatically created. You will be able to undo a rollback by reverting to "
@@ -5502,58 +5615,54 @@ msgstr ""
"Будет автоматически создан новый снимок текущего состояния файловой системы. "
"Вы сможете отменить откат, возвращаясь к вновь созданному снимку."
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:57
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:42
#, python-format
msgid "Rollback to Snapshot #%(number)s"
msgstr "Откат к снимку %(number)s"
-#: plinth/modules/snapshot/views.py:45
+#: plinth/modules/snapshot/views.py:30
msgid "Manage Snapshots"
msgstr "Управление снапшотами"
-#: plinth/modules/snapshot/views.py:98
+#: plinth/modules/snapshot/views.py:79
msgid "Created snapshot."
msgstr "Создан снимок."
-#: plinth/modules/snapshot/views.py:156
+#: plinth/modules/snapshot/views.py:135
msgid "Storage snapshots configuration updated"
msgstr "Настройки хранения снапшотов обновлены"
-#: plinth/modules/snapshot/views.py:160 plinth/modules/tor/views.py:79
+#: plinth/modules/snapshot/views.py:139 plinth/modules/tor/views.py:60
#, python-brace-format
msgid "Action error: {0} [{1}] [{2}]"
msgstr "Ошибка действий: {0}[{1}][{2}]"
-#: plinth/modules/snapshot/views.py:175
+#: plinth/modules/snapshot/views.py:154
msgid "Deleted all snapshots"
msgstr "Удалить все снапшоты"
-#: plinth/modules/snapshot/views.py:179
+#: plinth/modules/snapshot/views.py:158
msgid "Deleted selected snapshots"
msgstr "Удалить выбранные снапшоты"
-#: plinth/modules/snapshot/views.py:184
+#: plinth/modules/snapshot/views.py:163
msgid "Snapshot is currently in use. Please try again later."
msgstr "Снимок сейчас используется. Попробуйте позже."
-#: plinth/modules/snapshot/views.py:207
+#: plinth/modules/snapshot/views.py:186
#, python-brace-format
msgid "Rolled back to snapshot #{number}."
msgstr "Откат к снимку #{number}."
-#: plinth/modules/snapshot/views.py:210
+#: plinth/modules/snapshot/views.py:189
msgid "The system must be restarted to complete the rollback."
msgstr "Необходимо перезагрузить систему для завершения отката."
-#: plinth/modules/snapshot/views.py:222
+#: plinth/modules/snapshot/views.py:201
msgid "Rollback to Snapshot"
msgstr "Откат к снимку"
-#: plinth/modules/ssh/__init__.py:43
-msgid "Secure Shell (SSH) Server"
-msgstr "Secure Shell (SSH) сервер"
-
-#: plinth/modules/ssh/__init__.py:46
+#: plinth/modules/ssh/__init__.py:29
msgid ""
"A Secure Shell server uses the secure shell protocol to accept connections "
"from remote computers. An authorized remote computer can perform "
@@ -5565,64 +5674,64 @@ msgstr ""
"может выполнять задачи администрирования, копировать файлы или запускать "
"другие услуги с использованием таких соединений."
-#: plinth/modules/ssh/forms.py:30
+#: plinth/modules/ssh/__init__.py:50
+msgid "Secure Shell (SSH) Server"
+msgstr "Secure Shell (SSH) сервер"
+
+#: plinth/modules/ssh/forms.py:15
#, fuzzy
#| msgid "Use HTTP basic authentication"
msgid "Disable password authentication"
msgstr "Использовать базовую аутентификацию HTTP"
-#: plinth/modules/ssh/forms.py:31
+#: plinth/modules/ssh/forms.py:16
msgid ""
"Improves security by preventing password guessing. Ensure that you have "
"setup SSH keys in your administrator user account before enabling this "
"option."
msgstr ""
-#: plinth/modules/ssh/templates/ssh.html:26
+#: plinth/modules/ssh/templates/ssh.html:11
#, fuzzy
#| msgid "SSH Fingerprint"
msgid "Server Fingerprints"
msgstr "SSH отпечаток"
-#: plinth/modules/ssh/templates/ssh.html:29
+#: plinth/modules/ssh/templates/ssh.html:14
msgid ""
"When connecting to the server, ensure that the fingerprint shown by the SSH "
"client matches one of these fingerprints."
msgstr ""
-#: plinth/modules/ssh/templates/ssh.html:38
+#: plinth/modules/ssh/templates/ssh.html:23
msgid "Algorithm"
msgstr ""
-#: plinth/modules/ssh/templates/ssh.html:39
+#: plinth/modules/ssh/templates/ssh.html:24
#, fuzzy
#| msgid "SSH Fingerprint"
msgid "Fingerprint"
msgstr "SSH отпечаток"
-#: plinth/modules/ssh/views.py:66
+#: plinth/modules/ssh/views.py:48
msgid "SSH authentication with password disabled."
msgstr ""
-#: plinth/modules/ssh/views.py:69
+#: plinth/modules/ssh/views.py:51
#, fuzzy
#| msgid "Authentication to remote server failed."
msgid "SSH authentication with password enabled."
msgstr "Аутентификация на удалённый сервер не прошла."
-#: plinth/modules/sso/__init__.py:30
+#: plinth/modules/sso/__init__.py:33
msgid "Single Sign On"
msgstr "Единый вход"
-#: plinth/modules/sso/templates/login.html:35
+#: plinth/modules/sso/templates/login.html:20
msgid "Login"
msgstr "Логин"
-#: plinth/modules/storage/__init__.py:39 plinth/modules/storage/__init__.py:331
-msgid "Storage"
-msgstr "Storage"
-
-#: plinth/modules/storage/__init__.py:47
+#: plinth/modules/storage/__init__.py:30
#, python-brace-format
msgid ""
"This module allows you to manage storage media attached to your {box_name}. "
@@ -5633,85 +5742,89 @@ msgstr ""
"{box_name}. Вы можете видеть, какие носители используются, монтировать и "
"размонтировать подключаемые носители, увеличивать корневой раздел итп."
-#: plinth/modules/storage/__init__.py:224
+#: plinth/modules/storage/__init__.py:52 plinth/modules/storage/__init__.py:318
+msgid "Storage"
+msgstr "Storage"
+
+#: plinth/modules/storage/__init__.py:211
#, python-brace-format
msgid "{disk_size:.1f} bytes"
msgstr "{disk_size:.1f} байт"
-#: plinth/modules/storage/__init__.py:228
+#: plinth/modules/storage/__init__.py:215
#, python-brace-format
msgid "{disk_size:.1f} KiB"
msgstr "{disk_size:.1f} КиБ"
-#: plinth/modules/storage/__init__.py:232
+#: plinth/modules/storage/__init__.py:219
#, python-brace-format
msgid "{disk_size:.1f} MiB"
msgstr "{disk_size:.1f} Миб"
-#: plinth/modules/storage/__init__.py:236
+#: plinth/modules/storage/__init__.py:223
#, python-brace-format
msgid "{disk_size:.1f} GiB"
msgstr "{disk_size:.1f} Гиб"
-#: plinth/modules/storage/__init__.py:239
+#: plinth/modules/storage/__init__.py:226
#, python-brace-format
msgid "{disk_size:.1f} TiB"
msgstr "{disk_size:.1f} Тиб"
-#: plinth/modules/storage/__init__.py:246
+#: plinth/modules/storage/__init__.py:233
msgid "The operation failed."
msgstr "Операция не удалась."
-#: plinth/modules/storage/__init__.py:248
+#: plinth/modules/storage/__init__.py:235
msgid "The operation was cancelled."
msgstr "Операция была отменена."
-#: plinth/modules/storage/__init__.py:250
+#: plinth/modules/storage/__init__.py:237
msgid "The device is already unmounting."
msgstr "Устройство уже отключается."
-#: plinth/modules/storage/__init__.py:252
+#: plinth/modules/storage/__init__.py:239
msgid "The operation is not supported due to missing driver/tool support."
msgstr ""
"Операция не поддерживается из-за отсутствия поддержки драйвера или утилиты."
-#: plinth/modules/storage/__init__.py:255
+#: plinth/modules/storage/__init__.py:242
msgid "The operation timed out."
msgstr "Время операции вышло."
-#: plinth/modules/storage/__init__.py:257
+#: plinth/modules/storage/__init__.py:244
msgid "The operation would wake up a disk that is in a deep-sleep state."
msgstr "Операция пробудит диск, находящийся в режиме глубокого сна."
-#: plinth/modules/storage/__init__.py:260
+#: plinth/modules/storage/__init__.py:247
msgid "Attempting to unmount a device that is busy."
msgstr "Попытка отключения устройства, которое используется."
-#: plinth/modules/storage/__init__.py:262
+#: plinth/modules/storage/__init__.py:249
msgid "The operation has already been cancelled."
msgstr "Операция уже отменена."
-#: plinth/modules/storage/__init__.py:268
+#: plinth/modules/storage/__init__.py:255
msgid "Not authorized to perform the requested operation."
msgstr "Отсутствует авторизация для выполнения запрошенной операции."
-#: plinth/modules/storage/__init__.py:270
+#: plinth/modules/storage/__init__.py:257
msgid "The device is already mounted."
msgstr "Устройство уже подключено."
-#: plinth/modules/storage/__init__.py:272
+#: plinth/modules/storage/__init__.py:259
msgid "The device is not mounted."
msgstr "Устройство не подключено."
-#: plinth/modules/storage/__init__.py:275
+#: plinth/modules/storage/__init__.py:262
msgid "Not permitted to use the requested option."
msgstr "Использование запрошенной опции не разрешено."
-#: plinth/modules/storage/__init__.py:278
+#: plinth/modules/storage/__init__.py:265
msgid "The device is mounted by another user."
msgstr "Устройство подключено другим пользователем."
-#: plinth/modules/storage/__init__.py:326
+#: plinth/modules/storage/__init__.py:313
#, fuzzy, no-python-format, python-brace-format
#| msgid ""
#| "Warning: Low space on system partition ({percent_used}% used, "
@@ -5721,73 +5834,73 @@ msgstr ""
"Предупреждение: недостаточно свободного пространства на системном разделе "
"({percent_used}% используется, {free_space} свободно)."
-#: plinth/modules/storage/__init__.py:328
+#: plinth/modules/storage/__init__.py:315
msgid "Low disk space"
msgstr ""
-#: plinth/modules/storage/forms.py:79
+#: plinth/modules/storage/forms.py:64
#, fuzzy
#| msgid "Invalid hostname"
msgid "Invalid directory name."
msgstr "Недопустимое имя хоста"
-#: plinth/modules/storage/forms.py:97
+#: plinth/modules/storage/forms.py:82
msgid "Directory does not exist."
msgstr ""
-#: plinth/modules/storage/forms.py:99
+#: plinth/modules/storage/forms.py:84
#, fuzzy
#| msgid "Download directory"
msgid "Path is not a directory."
msgstr "Папка для загрузок"
-#: plinth/modules/storage/forms.py:102
+#: plinth/modules/storage/forms.py:87
#, fuzzy
#| msgid "The device is mounted by another user."
msgid "Directory is not readable by the user."
msgstr "Устройство подключено другим пользователем."
-#: plinth/modules/storage/forms.py:105
+#: plinth/modules/storage/forms.py:90
msgid "Directory is not writable by the user."
msgstr ""
-#: plinth/modules/storage/forms.py:110
+#: plinth/modules/storage/forms.py:95
#, fuzzy
#| msgid "Download directory"
msgid "Directory"
msgstr "Папка для загрузок"
-#: plinth/modules/storage/forms.py:113
+#: plinth/modules/storage/forms.py:98
msgid "Subdirectory (optional)"
msgstr ""
-#: plinth/modules/storage/forms.py:160
+#: plinth/modules/storage/forms.py:145
#, fuzzy
#| msgid "Shared"
msgid "Share"
msgstr "Общее"
-#: plinth/modules/storage/forms.py:168
+#: plinth/modules/storage/forms.py:153
msgid "Other directory (specify below)"
msgstr ""
-#: plinth/modules/storage/templates/storage.html:35
+#: plinth/modules/storage/templates/storage.html:20
msgid "The following storage devices are in use:"
msgstr "Используются следующие устройства хранения:"
-#: plinth/modules/storage/templates/storage.html:41
+#: plinth/modules/storage/templates/storage.html:26
msgid "Label"
msgstr "Метка"
-#: plinth/modules/storage/templates/storage.html:42
+#: plinth/modules/storage/templates/storage.html:27
msgid "Mount Point"
msgstr "Точка монтирования"
-#: plinth/modules/storage/templates/storage.html:90
+#: plinth/modules/storage/templates/storage.html:75
msgid "Partition Expansion"
msgstr "Расширение Раздела"
-#: plinth/modules/storage/templates/storage.html:92
+#: plinth/modules/storage/templates/storage.html:77
#, python-format
msgid ""
"There is %(expandable_root_size)s of unallocated space available after your "
@@ -5799,13 +5912,13 @@ msgstr ""
"пространства. Это даст вам дополнительное свободное место для хранения ваших "
"файлов."
-#: plinth/modules/storage/templates/storage.html:102
-#: plinth/modules/storage/templates/storage_expand.html:39
-#: plinth/modules/storage/views.py:76
+#: plinth/modules/storage/templates/storage.html:87
+#: plinth/modules/storage/templates/storage_expand.html:24
+#: plinth/modules/storage/views.py:58
msgid "Expand Root Partition"
msgstr "Расширить корневой раздел"
-#: plinth/modules/storage/templates/storage_expand.html:29
+#: plinth/modules/storage/templates/storage_expand.html:14
#, python-format
msgid ""
"Please backup your data before proceeding. After this operation, "
@@ -5816,39 +5929,30 @@ msgstr ""
"этой операции будет доступно %(expandable_root_size)s свободного места в "
"вашем корневом разделе."
-#: plinth/modules/storage/views.py:88
+#: plinth/modules/storage/views.py:70
#, python-brace-format
msgid "Error expanding partition: {exception}"
msgstr "Ошибка расширения раздела: {exception}"
-#: plinth/modules/storage/views.py:91
+#: plinth/modules/storage/views.py:73
msgid "Partition expanded successfully."
msgstr "Раздел успешно расширен."
-#: plinth/modules/storage/views.py:109
+#: plinth/modules/storage/views.py:91
#, python-brace-format
msgid "{drive_vendor} {drive_model} can be safely unplugged."
msgstr "{drive_vendor}{drive_model} может быть безопасно отсоединено."
-#: plinth/modules/storage/views.py:113
+#: plinth/modules/storage/views.py:95
msgid "Device can be safely unplugged."
msgstr "Устройство может быть безопасно отсоединено."
-#: plinth/modules/storage/views.py:123
+#: plinth/modules/storage/views.py:105
#, python-brace-format
msgid "Error ejecting device: {error_message}"
msgstr "Ошибка извлечения устройства: {error_message}"
-#: plinth/modules/syncthing/__init__.py:40
-#: plinth/modules/syncthing/manifest.py:28
-msgid "Syncthing"
-msgstr "Syncthing"
-
-#: plinth/modules/syncthing/__init__.py:44
-msgid "File Synchronization"
-msgstr "Синхронизация файлов"
-
-#: plinth/modules/syncthing/__init__.py:47
+#: plinth/modules/syncthing/__init__.py:26
msgid ""
"Syncthing is an application to synchronize files across multiple devices, e."
"g. your desktop computer and mobile phone. Creation, modification, or "
@@ -5860,7 +5964,7 @@ msgstr ""
"или удаление файлов на одном устройстве будет автоматически реплицироваться "
"на все другие устройства, на которых работает Syncthing."
-#: plinth/modules/syncthing/__init__.py:52
+#: plinth/modules/syncthing/__init__.py:31
#, python-brace-format
msgid ""
"Running Syncthing on {box_name} provides an extra synchronization point for "
@@ -5878,19 +5982,20 @@ msgstr ""
"собственный набор папок. Веб-интерфейс доступен только для пользователей, "
"принадлежащих к группе «admin»."
-#: plinth/modules/syncthing/__init__.py:63
+#: plinth/modules/syncthing/__init__.py:40
msgid "Administer Syncthing application"
msgstr "Администрирование приложения Syncthing"
-#: plinth/modules/tahoe/__init__.py:43
-msgid "Tahoe-LAFS"
-msgstr "Tahoe-LAFS"
+#: plinth/modules/syncthing/__init__.py:54
+#: plinth/modules/syncthing/manifest.py:13
+msgid "Syncthing"
+msgstr "Syncthing"
-#: plinth/modules/tahoe/__init__.py:47
-msgid "Distributed File Storage"
-msgstr "Распределенное Хранилище Файлов"
+#: plinth/modules/syncthing/__init__.py:55
+msgid "File Synchronization"
+msgstr "Синхронизация файлов"
-#: plinth/modules/tahoe/__init__.py:134
+#: plinth/modules/tahoe/__init__.py:30
msgid ""
"Tahoe-LAFS is a decentralized secure file storage system. It uses provider "
"independent security to store files over a distributed network of storage "
@@ -5902,7 +6007,7 @@ msgstr ""
"распределенной сети узлов хранения файлов. Если некоторые узлы будут "
"недоступны, вы можете получить ваши файлы от оставшихся узлов."
-#: plinth/modules/tahoe/__init__.py:139
+#: plinth/modules/tahoe/__init__.py:35
#, python-brace-format
msgid ""
"This {box_name} hosts a storage node and an introducer by default. "
@@ -5913,7 +6018,15 @@ msgstr ""
"быть добавлены дополнительные посредники, которые вводят этот узел в другие "
"узлы хранения."
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:33
+#: plinth/modules/tahoe/__init__.py:66
+msgid "Tahoe-LAFS"
+msgstr "Tahoe-LAFS"
+
+#: plinth/modules/tahoe/__init__.py:68
+msgid "Distributed File Storage"
+msgstr "Распределенное Хранилище Файлов"
+
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:17
#, python-format
msgid ""
"The Tahoe-LAFS server domain is set to %(domain_name)s. Changing the "
@@ -5926,37 +6039,33 @@ msgstr ""
"ВСЕ ВАШИ ДАННЫЕ. Вы получить доступ к Tahoe-LAFS на https://%(domain_name)s:5678."
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:55
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:39
msgid "Local introducer"
msgstr "Локальный посредник"
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:43
#: plinth/modules/tahoe/templates/tahoe-post-setup.html:59
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:75
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:92
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:76
msgid "Pet Name"
msgstr "Имя питомца"
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:72
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:56
msgid "Add new introducer"
msgstr "Добавить нового посредника"
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:83
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:67
msgid "Add"
msgstr "Добавить"
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:88
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:72
msgid "Connected introducers"
msgstr "Подключенные посредники"
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:105
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:89
msgid "Remove"
msgstr "Удалить"
-#: plinth/modules/tor/__init__.py:47
-msgid "Tor"
-msgstr "Tor"
-
-#: plinth/modules/tor/__init__.py:52
+#: plinth/modules/tor/__init__.py:33
msgid ""
"Tor is an anonymous communication system. You can learn more about it from "
"the Tor Project website. For "
@@ -5970,58 +6079,62 @@ msgstr ""
"\"https://www.torproject.org/download/download-easy.html.en\">Tor Browser"
"a>."
-#: plinth/modules/tor/__init__.py:83
+#: plinth/modules/tor/__init__.py:55
+msgid "Tor"
+msgstr "Tor"
+
+#: plinth/modules/tor/__init__.py:66
#, fuzzy
#| msgid "Tor Hidden Service"
msgid "Tor Onion Service"
msgstr "Скрытый сервис Tor"
-#: plinth/modules/tor/__init__.py:87
+#: plinth/modules/tor/__init__.py:70
msgid "Tor Socks Proxy"
msgstr "Tor Socks прокси"
-#: plinth/modules/tor/__init__.py:91
+#: plinth/modules/tor/__init__.py:74
msgid "Tor Bridge Relay"
msgstr "Ретранслятор Tor типа мост"
-#: plinth/modules/tor/__init__.py:112
+#: plinth/modules/tor/__init__.py:95
msgid "Tor relay port available"
msgstr "Доступен порт трансляции Tor"
-#: plinth/modules/tor/__init__.py:122
+#: plinth/modules/tor/__init__.py:105
msgid "Obfs3 transport registered"
msgstr "Obfs3 транспорт зарегестрирован"
-#: plinth/modules/tor/__init__.py:132
+#: plinth/modules/tor/__init__.py:115
msgid "Obfs4 transport registered"
msgstr "Obfs4 транспорт зарегистрирован"
-#: plinth/modules/tor/__init__.py:225
+#: plinth/modules/tor/__init__.py:208
#, python-brace-format
msgid "Access URL {url} on tcp{kind} via Tor"
msgstr "Доступ к {url} по tcp{kind} через Tor"
-#: plinth/modules/tor/__init__.py:236
+#: plinth/modules/tor/__init__.py:219
#, python-brace-format
msgid "Confirm Tor usage at {url} on tcp{kind}"
msgstr "Подтверждение использования Tor в {url} по tcp {kind}"
-#: plinth/modules/tor/forms.py:46
+#: plinth/modules/tor/forms.py:31
msgid ""
"Enter a valid bridge with this format: [transport] IP:ORPort [fingerprint]"
msgstr ""
"Введите действительный мост с этим форматом: [transport] IP:ORPort "
"[fingerprint]"
-#: plinth/modules/tor/forms.py:88
+#: plinth/modules/tor/forms.py:73
msgid "Enable Tor"
msgstr "Включить Tor"
-#: plinth/modules/tor/forms.py:90
+#: plinth/modules/tor/forms.py:75
msgid "Use upstream bridges to connect to Tor network"
msgstr "Использовать upstream bridges для подключения к сети Tor"
-#: plinth/modules/tor/forms.py:92
+#: plinth/modules/tor/forms.py:77
msgid ""
"When enabled, the bridges configured below will be used to connect to the "
"Tor network. Use this option if your Internet Service Provider (ISP) blocks "
@@ -6031,11 +6144,11 @@ msgstr ""
"к сети Tor. Используйте эту опцию, если ваш поставщик услуг Интернета (ISP) "
"блокирует или цензурирует подключения к сети Tor. Это отключит режим relay."
-#: plinth/modules/tor/forms.py:97
+#: plinth/modules/tor/forms.py:82
msgid "Upstream bridges"
msgstr "Upstream мосты"
-#: plinth/modules/tor/forms.py:99
+#: plinth/modules/tor/forms.py:84
msgid ""
"You can get some bridges from https://bridges.torproject.org/ and copy/paste the bridge information "
@@ -6045,11 +6158,11 @@ msgstr ""
"org/\">https://bridges.torproject.org/и скопировать/вставить информацию "
"сюда. В данное время поддерживаются «none», «obfs3», «obfs4» и «scamblesuit»."
-#: plinth/modules/tor/forms.py:105
+#: plinth/modules/tor/forms.py:90
msgid "Enable Tor relay"
msgstr "Включить ретранслятор Tor"
-#: plinth/modules/tor/forms.py:106
+#: plinth/modules/tor/forms.py:91
#, python-brace-format
msgid ""
"When enabled, your {box_name} will run a Tor relay and donate bandwidth to "
@@ -6060,11 +6173,11 @@ msgstr ""
"часть пропускной способности сети Tor. Сделайте это, если у вас более ширина "
"канала более 2Мбит/c."
-#: plinth/modules/tor/forms.py:111
+#: plinth/modules/tor/forms.py:96
msgid "Enable Tor bridge relay"
msgstr "Ретранслятор Tor типа мост"
-#: plinth/modules/tor/forms.py:113
+#: plinth/modules/tor/forms.py:98
msgid ""
"When enabled, relay information is published in the Tor bridge database "
"instead of public Tor relay database making it harder to censor this node. "
@@ -6074,13 +6187,13 @@ msgstr ""
"общественной базы данных ретрансляции Tor. Это помогает другим обойти "
"цензуру."
-#: plinth/modules/tor/forms.py:118
+#: plinth/modules/tor/forms.py:103
#, fuzzy
#| msgid "Enable Tor Hidden Service"
msgid "Enable Tor Hidden Service"
msgstr "Включить скрытый сервис Tor"
-#: plinth/modules/tor/forms.py:120
+#: plinth/modules/tor/forms.py:105
#, fuzzy, python-brace-format
#| msgid ""
#| "A hidden service will allow {box_name} to provide selected services (such "
@@ -6095,11 +6208,11 @@ msgstr ""
"чат) не раскрывая его расположение. Не используйте это для повышения "
"анонимности."
-#: plinth/modules/tor/forms.py:125
+#: plinth/modules/tor/forms.py:110
msgid "Download software packages over Tor"
msgstr "Скачать пакеты программного обеспечения через Tor"
-#: plinth/modules/tor/forms.py:126
+#: plinth/modules/tor/forms.py:111
msgid ""
"When enabled, software will be downloaded over the Tor network for "
"installations and upgrades. This adds a degree of privacy and security "
@@ -6109,37 +6222,37 @@ msgstr ""
"установки и обновления. Это добавляет определенную степень безопасности и "
"конфиденциальности во время загрузки программного обеспечения."
-#: plinth/modules/tor/forms.py:141
+#: plinth/modules/tor/forms.py:126
msgid "Specify at least one upstream bridge to use upstream bridges."
msgstr "Укажите по крайней мере один upstream bridge чтобы использовать их."
-#: plinth/modules/tor/manifest.py:29
+#: plinth/modules/tor/manifest.py:14
msgid "Tor Browser"
msgstr "Tor Browser"
-#: plinth/modules/tor/manifest.py:45
+#: plinth/modules/tor/manifest.py:30
msgid "Orbot: Proxy with Tor"
msgstr "Orbot: Прокси с Tor"
-#: plinth/modules/tor/templates/tor.html:41
+#: plinth/modules/tor/templates/tor.html:26
msgid "Tor configuration is being updated"
msgstr "В настоящее время обновляется конфигурация Tor"
-#: plinth/modules/tor/templates/tor.html:50
+#: plinth/modules/tor/templates/tor.html:35
#, fuzzy
#| msgid "Hidden Service"
msgid "Onion Service"
msgstr "Скрытая Служба"
-#: plinth/modules/tor/templates/tor.html:52
+#: plinth/modules/tor/templates/tor.html:37
msgid "Ports"
msgstr "Порты"
-#: plinth/modules/tor/templates/tor.html:82
+#: plinth/modules/tor/templates/tor.html:67
msgid "Relay"
msgstr "Ретранслятор"
-#: plinth/modules/tor/templates/tor.html:84
+#: plinth/modules/tor/templates/tor.html:69
#, python-format
msgid ""
"If your %(box_name)s is behind a router or firewall, you should make sure "
@@ -6149,21 +6262,16 @@ msgstr ""
"должны убедиться, что следующие порты являются открытыми и проброшены, если "
"необходимо:"
-#: plinth/modules/tor/templates/tor.html:112
+#: plinth/modules/tor/templates/tor.html:97
msgid "SOCKS"
msgstr "SОCKS"
-#: plinth/modules/tor/templates/tor.html:115
+#: plinth/modules/tor/templates/tor.html:100
#, python-format
msgid "A Tor SOCKS port is available on your %(box_name)s on TCP port 9050."
msgstr "Порт Tor SOCKS вашего %(box_name)s доступен по порту TCP 9050."
-#: plinth/modules/transmission/__init__.py:41
-#: plinth/modules/transmission/manifest.py:24
-msgid "Transmission"
-msgstr "Transmissiоn"
-
-#: plinth/modules/transmission/__init__.py:48
+#: plinth/modules/transmission/__init__.py:27
msgid ""
"BitTorrent is a peer-to-peer file sharing protocol. Transmission daemon "
"handles Bitorrent file sharing. Note that BitTorrent is not anonymous."
@@ -6172,15 +6280,12 @@ msgstr ""
"обрабатывает обмен файлами Bitorrent. Обратите внимание, что BitTorrent не "
"является анонимным."
-#: plinth/modules/ttrss/__init__.py:43 plinth/modules/ttrss/manifest.py:34
-msgid "Tiny Tiny RSS"
-msgstr "Tiny Tiny RSS"
+#: plinth/modules/transmission/__init__.py:48
+#: plinth/modules/transmission/manifest.py:9
+msgid "Transmission"
+msgstr "Transmissiоn"
-#: plinth/modules/ttrss/__init__.py:47
-msgid "News Feed Reader"
-msgstr "Чтение ленты новостей"
-
-#: plinth/modules/ttrss/__init__.py:50
+#: plinth/modules/ttrss/__init__.py:29
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 "
@@ -6189,7 +6294,7 @@ msgstr ""
"Tiny Tiny RSS это новый (RSS/Atom) агрегатор новостей, позволяющий читать "
"новости из любого места, так же удобно, как и в настольных приложениях."
-#: plinth/modules/ttrss/__init__.py:54
+#: plinth/modules/ttrss/__init__.py:33
#, fuzzy, python-brace-format
#| msgid ""
#| "When enabled, Tiny Tiny RSS will be available from /"
@@ -6202,7 +6307,7 @@ msgstr ""
"Когда включен, Tiny Tiny RSS доступен по адресу /tt-rss"
"a>. Он доступен всем пользователям {box_name}."
-#: plinth/modules/ttrss/__init__.py:58
+#: plinth/modules/ttrss/__init__.py:37
#, fuzzy
#| msgid ""
#| "When using a mobile or desktop application for Tiny Tiny RSS, use the URL "
@@ -6216,64 +6321,72 @@ msgstr ""
"Tiny RSS используйте URL / tt-rss-app для "
"подключения."
-#: plinth/modules/ttrss/__init__.py:65
+#: plinth/modules/ttrss/__init__.py:42
msgid "Read and subscribe to news feeds"
msgstr "Чтение и подписка на ленты новостей"
-#: plinth/modules/ttrss/manifest.py:25
+#: plinth/modules/ttrss/__init__.py:56 plinth/modules/ttrss/manifest.py:19
+msgid "Tiny Tiny RSS"
+msgstr "Tiny Tiny RSS"
+
+#: plinth/modules/ttrss/__init__.py:57
+msgid "News Feed Reader"
+msgstr "Чтение ленты новостей"
+
+#: plinth/modules/ttrss/manifest.py:10
msgid "Tiny Tiny RSS (Fork)"
msgstr "Tiny Tiny RSS (Fork)"
-#: plinth/modules/upgrades/__init__.py:37 plinth/templates/setup.html:89
-msgid "Update"
-msgstr "Обновление"
-
-#: plinth/modules/upgrades/__init__.py:40
+#: plinth/modules/upgrades/__init__.py:23
msgid "Check for and apply the latest software and security updates."
msgstr "Проверьте и установите новейшие программы и обновления безопасности."
-#: plinth/modules/upgrades/__init__.py:84
+#: plinth/modules/upgrades/__init__.py:38 plinth/templates/setup.html:74
+msgid "Update"
+msgstr "Обновление"
+
+#: plinth/modules/upgrades/__init__.py:71
#, fuzzy
#| msgid "FreedomBox Foundation"
msgid "FreedomBox Updated"
msgstr "Фонд FrеedomBox"
-#: plinth/modules/upgrades/forms.py:28
+#: plinth/modules/upgrades/forms.py:13
msgid "Enable auto-update"
msgstr "Включить автообновление"
-#: plinth/modules/upgrades/forms.py:29
+#: plinth/modules/upgrades/forms.py:14
msgid "When enabled, FreedomBox automatically updates once a day."
msgstr ""
"Если опция включена, то FreedomBox автоматически обновляется раз в день."
-#: plinth/modules/upgrades/templates/upgrades-new-release.html:24
+#: plinth/modules/upgrades/templates/upgrades-new-release.html:9
#, fuzzy, python-format
#| msgid "%(box_name)s is up to date."
msgid "%(box_name)s Updated"
msgstr "%(box_name)s в актуальном состоянии."
-#: plinth/modules/upgrades/templates/upgrades-new-release.html:28
+#: plinth/modules/upgrades/templates/upgrades-new-release.html:13
#, python-format
msgid ""
"%(box_name)s has been updated to version %(version)s. See the release announcement."
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades-new-release.html:37
-#: plinth/templates/notifications.html:59
+#: plinth/modules/upgrades/templates/upgrades-new-release.html:22
+#: plinth/templates/notifications.html:44
msgid "Dismiss"
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades.html:45
+#: plinth/modules/upgrades/templates/upgrades.html:30
msgid "Update now"
msgstr "Обновить сейчас"
-#: plinth/modules/upgrades/templates/upgrades.html:54
+#: plinth/modules/upgrades/templates/upgrades.html:39
msgid "Updating..."
msgstr "Обновляется..."
-#: plinth/modules/upgrades/templates/upgrades.html:59
+#: plinth/modules/upgrades/templates/upgrades.html:44
#, fuzzy
#| msgid ""
#| "This may take a long time to complete. During an update, "
@@ -6289,53 +6402,49 @@ msgstr ""
"временно недоступен и показывать ошибку. В таком случае, чтобы продолжить, "
"обновите страницу."
-#: plinth/modules/upgrades/templates/upgrades.html:73
+#: plinth/modules/upgrades/templates/upgrades.html:58
msgid "Toggle recent update logs"
msgstr "Переключите последние протоколы обновления"
-#: plinth/modules/upgrades/templates/upgrades_configure.html:26
-#: plinth/modules/upgrades/templates/upgrades_configure.html:27
-#: plinth/modules/upgrades/views.py:107
+#: plinth/modules/upgrades/templates/upgrades_configure.html:11
+#: plinth/modules/upgrades/templates/upgrades_configure.html:12
+#: plinth/modules/upgrades/views.py:89
msgid "Manual update"
msgstr "Ручное обновление"
-#: plinth/modules/upgrades/views.py:66
+#: plinth/modules/upgrades/views.py:48
#, python-brace-format
msgid "Error when configuring unattended-upgrades: {error}"
msgstr "Ошибка при настройке автоматического обновления: {error}"
-#: plinth/modules/upgrades/views.py:70
+#: plinth/modules/upgrades/views.py:52
msgid "Automatic upgrades enabled"
msgstr "Автоматические обновления включены"
-#: plinth/modules/upgrades/views.py:73
+#: plinth/modules/upgrades/views.py:55
msgid "Automatic upgrades disabled"
msgstr "Автоматические обновления отключены"
-#: plinth/modules/upgrades/views.py:75
+#: plinth/modules/upgrades/views.py:57
msgid "Settings unchanged"
msgstr "Настройки без изменений"
-#: plinth/modules/upgrades/views.py:101
+#: plinth/modules/upgrades/views.py:83
msgid "Upgrade process started."
msgstr "Начался процесс обновления."
-#: plinth/modules/upgrades/views.py:104
+#: plinth/modules/upgrades/views.py:86
msgid "Starting upgrade failed."
msgstr "Сбой при запуске обновления."
-#: plinth/modules/users/__init__.py:51
-msgid "Users and Groups"
-msgstr "Пользователи и группы"
-
-#: plinth/modules/users/__init__.py:54
+#: plinth/modules/users/__init__.py:37
msgid ""
"Create and managed user accounts. These accounts serve as centralized "
"authentication mechanism for most apps. Some apps further require a user "
"account to be part of a group to authorize the user to access the app."
msgstr ""
-#: plinth/modules/users/__init__.py:59
+#: plinth/modules/users/__init__.py:42
#, python-brace-format
msgid ""
"Any user may login to {box_name} web interface to see a list of apps "
@@ -6343,35 +6452,39 @@ msgid ""
"group may alter apps or system settings."
msgstr ""
-#: plinth/modules/users/__init__.py:128
+#: plinth/modules/users/__init__.py:64
+msgid "Users and Groups"
+msgstr "Пользователи и группы"
+
+#: plinth/modules/users/__init__.py:115
#, python-brace-format
msgid "Check LDAP entry \"{search_item}\""
msgstr "Проверьте запись LDAP \"{search_item}\""
-#: plinth/modules/users/forms.py:43
+#: plinth/modules/users/forms.py:28
msgid "Access to all services and system settings"
msgstr "Доступ ко всем сервисам и настройкам системы"
-#: plinth/modules/users/forms.py:59
+#: plinth/modules/users/forms.py:44
msgid "Username is taken or is reserved."
msgstr "Имя пользователя уже занято."
-#: plinth/modules/users/forms.py:87
+#: plinth/modules/users/forms.py:72
#, fuzzy
#| msgid "Invalid server name"
msgid "Enter a valid username."
msgstr "Недопустимое имя сервера"
-#: plinth/modules/users/forms.py:93
+#: plinth/modules/users/forms.py:78
msgid ""
"Required. 150 characters or fewer. English letters, digits and @/./-/_ only."
msgstr ""
-#: plinth/modules/users/forms.py:106 plinth/modules/users/forms.py:222
+#: plinth/modules/users/forms.py:91 plinth/modules/users/forms.py:207
msgid "Permissions"
msgstr "Разрешения"
-#: plinth/modules/users/forms.py:109
+#: plinth/modules/users/forms.py:94
msgid ""
"Select which services should be available to the new user. The user will be "
"able to log in to services that support single sign-on through LDAP, if they "
@@ -6385,20 +6498,20 @@ msgstr ""
"Пользователи в группе администратора имеют доступ ко всем службам. Они также "
"могут войти в систему через SSH и иметь административные привилегии (sudo)."
-#: plinth/modules/users/forms.py:148 plinth/modules/users/forms.py:372
+#: plinth/modules/users/forms.py:133 plinth/modules/users/forms.py:357
msgid "Creating LDAP user failed."
msgstr "Создание пользователя LDAP не удалось."
-#: plinth/modules/users/forms.py:159
+#: plinth/modules/users/forms.py:144
#, python-brace-format
msgid "Failed to add new user to {group} group."
msgstr "Не удалось добавить нового пользователя в группу {group}."
-#: plinth/modules/users/forms.py:173
+#: plinth/modules/users/forms.py:158
msgid "Authorized SSH Keys"
msgstr "Авторизованные SSH ключи"
-#: plinth/modules/users/forms.py:175
+#: plinth/modules/users/forms.py:160
msgid ""
"Setting an SSH public key will allow this user to securely log in to the "
"system without using a password. You may enter multiple keys, one on each "
@@ -6409,84 +6522,84 @@ msgstr ""
"на каждой строке. Пустые строки и строки, начинающиеся с # будут "
"игнорироваться."
-#: plinth/modules/users/forms.py:259
+#: plinth/modules/users/forms.py:244
msgid "Renaming LDAP user failed."
msgstr "Переименование пользователя LDAP не удалось."
-#: plinth/modules/users/forms.py:271
+#: plinth/modules/users/forms.py:256
msgid "Failed to remove user from group."
msgstr "Не удалось удалить пользователя из группы."
-#: plinth/modules/users/forms.py:282
+#: plinth/modules/users/forms.py:267
msgid "Failed to add user to group."
msgstr "Не удалось добавить пользователя в группу."
-#: plinth/modules/users/forms.py:291
+#: plinth/modules/users/forms.py:276
msgid "Unable to set SSH keys."
msgstr "Не удалось задать ключи SSH."
-#: plinth/modules/users/forms.py:306
+#: plinth/modules/users/forms.py:291
#, fuzzy
#| msgid "Failed to add user to group."
msgid "Failed to change user status."
msgstr "Не удалось добавить пользователя в группу."
-#: plinth/modules/users/forms.py:314
+#: plinth/modules/users/forms.py:299
msgid "Cannot delete the only administrator in the system."
msgstr "Невозможно удалить единственного администратора в системе."
-#: plinth/modules/users/forms.py:346
+#: plinth/modules/users/forms.py:331
msgid "Changing LDAP user password failed."
msgstr "Изменение LDAP пароля пользователя не удалось."
-#: plinth/modules/users/forms.py:381
+#: plinth/modules/users/forms.py:366
msgid "Failed to add new user to admin group."
msgstr "Не удалось добавить нового пользователя в группу администратора."
-#: plinth/modules/users/forms.py:398
+#: plinth/modules/users/forms.py:383
msgid "Failed to restrict console access."
msgstr "Не удалось ограничить доступ к консоли."
-#: plinth/modules/users/forms.py:410
+#: plinth/modules/users/forms.py:395
msgid "User account created, you are now logged in"
msgstr "Учетная запись пользователя создана, теперь вы вошли"
-#: plinth/modules/users/templates/users_change_password.html:26
+#: plinth/modules/users/templates/users_change_password.html:11
#, python-format
msgid "Change Password for %(username)s"
msgstr "Изменение пароля для %(username)s"
-#: plinth/modules/users/templates/users_change_password.html:36
+#: plinth/modules/users/templates/users_change_password.html:21
msgid "Save Password"
msgstr "Сохранить пароль"
-#: plinth/modules/users/templates/users_create.html:32
-#: plinth/modules/users/templates/users_list.html:42
-#: plinth/modules/users/templates/users_list.html:44
-#: plinth/modules/users/views.py:57
+#: plinth/modules/users/templates/users_create.html:17
+#: plinth/modules/users/templates/users_list.html:27
+#: plinth/modules/users/templates/users_list.html:29
+#: plinth/modules/users/views.py:42
msgid "Create User"
msgstr "Создать пользователя"
-#: plinth/modules/users/templates/users_delete.html:26
-#: plinth/modules/users/views.py:139
+#: plinth/modules/users/templates/users_delete.html:11
+#: plinth/modules/users/views.py:121
msgid "Delete User"
msgstr "Удаление пользователя"
-#: plinth/modules/users/templates/users_delete.html:29
+#: plinth/modules/users/templates/users_delete.html:14
#, python-format
msgid "Delete user %(username)s permanently?"
msgstr "Окончательно удалить пользователя %(username)s?"
-#: plinth/modules/users/templates/users_delete.html:38
+#: plinth/modules/users/templates/users_delete.html:23
#, python-format
msgid "Delete %(username)s"
msgstr "Удаление %(username)s"
-#: plinth/modules/users/templates/users_firstboot.html:26
+#: plinth/modules/users/templates/users_firstboot.html:11
msgid "Administrator Account"
msgstr "Учетная запись администратора"
-#: plinth/modules/users/templates/users_firstboot.html:29
+#: plinth/modules/users/templates/users_firstboot.html:14
msgid ""
"Choose a username and password to access this web interface. The password "
"can be changed later. This user will be granted administrative privileges. "
@@ -6496,26 +6609,26 @@ msgstr ""
"можно изменить позднее. Этому пользователю будут предоставляться "
"административные привилегии. Другие пользователи могут быть добавлены позже."
-#: plinth/modules/users/templates/users_firstboot.html:42
+#: plinth/modules/users/templates/users_firstboot.html:27
msgid "Create Account"
msgstr "Создать учетную запись"
-#: plinth/modules/users/templates/users_list.html:38
-#: plinth/modules/users/views.py:74
+#: plinth/modules/users/templates/users_list.html:23
+#: plinth/modules/users/views.py:59
msgid "Users"
msgstr "Пользователи"
-#: plinth/modules/users/templates/users_list.html:57
+#: plinth/modules/users/templates/users_list.html:42
#, python-format
msgid "Delete user %(username)s"
msgstr "Удалить пользователя %(username)s"
-#: plinth/modules/users/templates/users_list.html:65
+#: plinth/modules/users/templates/users_list.html:50
#, python-format
msgid "Edit user %(username)s"
msgstr "Редактирование пользователя %(username)s"
-#: plinth/modules/users/templates/users_update.html:30
+#: plinth/modules/users/templates/users_update.html:15
#, python-format
msgid ""
"Use the change password form to "
@@ -6524,59 +6637,54 @@ msgstr ""
"Используйте форму смены пароля для "
"смены пароля."
-#: plinth/modules/users/templates/users_update.html:42
-#: plinth/templates/language-selection.html:32
+#: plinth/modules/users/templates/users_update.html:27
+#: plinth/templates/language-selection.html:17
msgid "Save Changes"
msgstr "Сохранить изменения"
-#: plinth/modules/users/views.py:55
+#: plinth/modules/users/views.py:40
#, python-format
msgid "User %(username)s created."
msgstr "Пользователь %(username)s создан."
-#: plinth/modules/users/views.py:93
+#: plinth/modules/users/views.py:75
#, python-format
msgid "User %(username)s updated."
msgstr "Пользователь %(username)s обновлен."
-#: plinth/modules/users/views.py:94
+#: plinth/modules/users/views.py:76
msgid "Edit User"
msgstr "Редактирование пользователя"
-#: plinth/modules/users/views.py:149
+#: plinth/modules/users/views.py:131
#, python-brace-format
msgid "User {user} deleted."
msgstr "Пользователь {user} удален."
-#: plinth/modules/users/views.py:156
+#: plinth/modules/users/views.py:138
msgid "Deleting LDAP user failed."
msgstr "Сбой при удалении LDAP пользователя."
-#: plinth/modules/users/views.py:165
+#: plinth/modules/users/views.py:147
msgid "Change Password"
msgstr "Смена пароля"
-#: plinth/modules/users/views.py:166
+#: plinth/modules/users/views.py:148
msgid "Password changed successfully."
msgstr "Пароль успешно изменён."
-#: plinth/modules/wireguard/__init__.py:38
-#: plinth/modules/wireguard/manifest.py:29
-msgid "WireGuard"
-msgstr ""
-
-#: plinth/modules/wireguard/__init__.py:43
+#: plinth/modules/wireguard/__init__.py:24
msgid "WireGuard is a fast, modern, secure VPN tunnel."
msgstr ""
-#: plinth/modules/wireguard/__init__.py:45
+#: plinth/modules/wireguard/__init__.py:26
#, python-brace-format
msgid ""
"It can be used to connect to a VPN provider which supports WireGuard, and to "
"route all outgoing traffic from {box_name} through the VPN."
msgstr ""
-#: plinth/modules/wireguard/__init__.py:49
+#: plinth/modules/wireguard/__init__.py:30
#, python-brace-format
msgid ""
"A second use case is to connect a mobile device to {box_name} while "
@@ -6584,67 +6692,72 @@ msgid ""
"securely relayed through {box_name}."
msgstr ""
-#: plinth/modules/wireguard/forms.py:47
+#: plinth/modules/wireguard/__init__.py:52
+#: plinth/modules/wireguard/manifest.py:14
+msgid "WireGuard"
+msgstr ""
+
+#: plinth/modules/wireguard/forms.py:32
#, fuzzy
#| msgid "Invalid kite name"
msgid "Invalid key."
msgstr "Недопустимое имя kite"
-#: plinth/modules/wireguard/forms.py:76
-#: plinth/modules/wireguard/templates/wireguard.html:32
-#: plinth/modules/wireguard/templates/wireguard.html:89
-#: plinth/modules/wireguard/templates/wireguard_delete_server.html:38
+#: plinth/modules/wireguard/forms.py:61
+#: plinth/modules/wireguard/templates/wireguard.html:17
+#: plinth/modules/wireguard/templates/wireguard.html:74
+#: plinth/modules/wireguard/templates/wireguard_delete_server.html:23
#, fuzzy
#| msgid "Publish Key"
msgid "Public Key"
msgstr "Опубликовать ключ"
-#: plinth/modules/wireguard/forms.py:77
+#: plinth/modules/wireguard/forms.py:62
msgid ""
"Public key of the peer. Example: "
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs= ."
msgstr ""
-#: plinth/modules/wireguard/forms.py:85
+#: plinth/modules/wireguard/forms.py:70
msgid "Endpoint of the server"
msgstr ""
-#: plinth/modules/wireguard/forms.py:86
+#: plinth/modules/wireguard/forms.py:71
msgid ""
"Domain name and port in the form \"ip:port\". Example: demo.wireguard."
"com:12912 ."
msgstr ""
-#: plinth/modules/wireguard/forms.py:91
+#: plinth/modules/wireguard/forms.py:76
#, fuzzy
#| msgid "Published key to keyserver."
msgid "Public key of the server"
msgstr "Опубликованый ключ на сервере ключей."
-#: plinth/modules/wireguard/forms.py:92
+#: plinth/modules/wireguard/forms.py:77
msgid ""
"Provided by the server operator, a long string of characters. Example: "
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs= ."
msgstr ""
-#: plinth/modules/wireguard/forms.py:97
+#: plinth/modules/wireguard/forms.py:82
#, fuzzy
#| msgid "A list of IP addresses, separated by space"
msgid "Client IP address provided by server"
msgstr "Список IP-адресов, разделённых пробелом"
-#: plinth/modules/wireguard/forms.py:98
+#: plinth/modules/wireguard/forms.py:83
msgid ""
"IP address assigned to this machine on the VPN after connecting to the "
"endpoint. This value is usually provided by the server operator. Example: "
"192.168.0.10."
msgstr ""
-#: plinth/modules/wireguard/forms.py:104
+#: plinth/modules/wireguard/forms.py:89
msgid "Private key of this machine"
msgstr ""
-#: plinth/modules/wireguard/forms.py:105
+#: plinth/modules/wireguard/forms.py:90
msgid ""
"Optional. New public/private keys are generated if left blank. Public key "
"can then be provided to the server. This is the recommended way. However, "
@@ -6652,187 +6765,187 @@ msgid ""
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs= ."
msgstr ""
-#: plinth/modules/wireguard/forms.py:113
+#: plinth/modules/wireguard/forms.py:98
msgid "Pre-shared key"
msgstr ""
-#: plinth/modules/wireguard/forms.py:114
+#: plinth/modules/wireguard/forms.py:99
msgid ""
"Optional. A shared secret key provided by the server to add an additional "
"layer of security. Fill in only if provided. Example: "
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs=."
msgstr ""
-#: plinth/modules/wireguard/forms.py:120
+#: plinth/modules/wireguard/forms.py:105
msgid "Use this connection to send all outgoing traffic"
msgstr ""
-#: plinth/modules/wireguard/forms.py:122
+#: plinth/modules/wireguard/forms.py:107
msgid "Typically checked for a VPN service though which all traffic is sent."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:25
+#: plinth/modules/wireguard/templates/wireguard.html:10
#, fuzzy
#| msgid "Chat Server"
msgid "As a Server"
msgstr "Чат-сервер"
-#: plinth/modules/wireguard/templates/wireguard.html:27
+#: plinth/modules/wireguard/templates/wireguard.html:12
msgid "Peers allowed to connect to this server:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:33
+#: plinth/modules/wireguard/templates/wireguard.html:18
msgid "Allowed IPs"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:34
-#: plinth/modules/wireguard/templates/wireguard.html:90
+#: plinth/modules/wireguard/templates/wireguard.html:19
+#: plinth/modules/wireguard/templates/wireguard.html:75
#, fuzzy
#| msgid "Create Connection"
msgid "Last Connected Time"
msgstr "Создание подключения"
-#: plinth/modules/wireguard/templates/wireguard.html:53
+#: plinth/modules/wireguard/templates/wireguard.html:38
#, python-format
msgid "No peers configured to connect to this %(box_name)s yet."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:62
+#: plinth/modules/wireguard/templates/wireguard.html:47
#, python-format
msgid "Public key for this %(box_name)s:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:68
+#: plinth/modules/wireguard/templates/wireguard.html:53
#, fuzzy
#| msgid "No shares currently configured."
msgid "Not configured yet."
msgstr "Нет настроенных общих ресурсов."
-#: plinth/modules/wireguard/templates/wireguard.html:72
+#: plinth/modules/wireguard/templates/wireguard.html:57
#, fuzzy
#| msgid "Add new introducer"
msgid "Add a new peer"
msgstr "Добавить нового посредника"
-#: plinth/modules/wireguard/templates/wireguard.html:76
-#: plinth/modules/wireguard/views.py:69
+#: plinth/modules/wireguard/templates/wireguard.html:61
+#: plinth/modules/wireguard/views.py:51
msgid "Add Allowed Client"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:79
+#: plinth/modules/wireguard/templates/wireguard.html:64
#, fuzzy
#| msgid "Chat Client"
msgid "As a Client"
msgstr "Чат-клиент"
-#: plinth/modules/wireguard/templates/wireguard.html:81
+#: plinth/modules/wireguard/templates/wireguard.html:66
#, python-format
msgid "Servers that %(box_name)s will connect to:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:88
-#: plinth/modules/wireguard/templates/wireguard_delete_server.html:34
+#: plinth/modules/wireguard/templates/wireguard.html:73
+#: plinth/modules/wireguard/templates/wireguard_delete_server.html:19
msgid "Endpoint"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:111
+#: plinth/modules/wireguard/templates/wireguard.html:96
#, fuzzy
#| msgid "Authentication to remote server failed."
msgid "No connections to remote servers are configured yet."
msgstr "Аутентификация на удалённый сервер не прошла."
-#: plinth/modules/wireguard/templates/wireguard.html:119
+#: plinth/modules/wireguard/templates/wireguard.html:104
#, fuzzy
#| msgid "Add new introducer"
msgid "Add a new server"
msgstr "Добавить нового посредника"
-#: plinth/modules/wireguard/templates/wireguard.html:123
-#: plinth/modules/wireguard/views.py:178
+#: plinth/modules/wireguard/templates/wireguard.html:108
+#: plinth/modules/wireguard/views.py:160
#, fuzzy
#| msgid "Add Connection"
msgid "Add Connection to Server"
msgstr "Добавить подключение"
-#: plinth/modules/wireguard/templates/wireguard_add_client.html:34
+#: plinth/modules/wireguard/templates/wireguard_add_client.html:19
#, fuzzy
#| msgid "IRC Client"
msgid "Add Client"
msgstr "IRC-клиент"
-#: plinth/modules/wireguard/templates/wireguard_delete_client.html:29
+#: plinth/modules/wireguard/templates/wireguard_delete_client.html:14
#, fuzzy
#| msgid "Are you sure that you want to remove this repository?"
msgid "Are you sure that you want to delete this client?"
msgstr "Вы уверены, что хотите удалить этот репозиторий?"
-#: plinth/modules/wireguard/templates/wireguard_delete_server.html:29
+#: plinth/modules/wireguard/templates/wireguard_delete_server.html:14
#, fuzzy
#| msgid "Are you sure that you want to remove this repository?"
msgid "Are you sure that you want to delete this server?"
msgstr "Вы уверены, что хотите удалить этот репозиторий?"
-#: plinth/modules/wireguard/templates/wireguard_edit_client.html:34
+#: plinth/modules/wireguard/templates/wireguard_edit_client.html:19
#, fuzzy
#| msgid "Chat Client"
msgid "Update Client"
msgstr "Чат-клиент"
-#: plinth/modules/wireguard/templates/wireguard_edit_server.html:34
+#: plinth/modules/wireguard/templates/wireguard_edit_server.html:19
#, fuzzy
#| msgid "Create Connection"
msgid "Update Connection"
msgstr "Создание подключения"
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:27
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:12
#, python-format
msgid ""
"%(box_name)s will allow this client to connect to it. Ensure that the client "
"is configured with the following information."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:35
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:20
msgid "Client public key:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:39
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:24
msgid "IP address to use for client:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:43
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:46
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:28
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:31
msgid "Pre-shared key:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:47
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:32
#, fuzzy
#| msgid "Server domain"
msgid "Server endpoints:"
msgstr "Домен сервера"
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:55
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:42
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:40
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:27
#, fuzzy
#| msgid "Select verified SSH public key"
msgid "Server public key:"
msgstr "Выберите проверенный открытый ключ SSH"
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:65
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:64
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:50
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:49
msgid "Data transmitted:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:69
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:68
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:54
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:53
msgid "Data received:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:73
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:72
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:58
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:57
msgid "Latest handshake:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:29
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:14
#, python-format
msgid ""
"%(box_name)s will attempt to reach a WireGuard server with the following "
@@ -6840,152 +6953,152 @@ msgid ""
"public key and IP address."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:38
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:23
#, fuzzy
#| msgid "Server domain"
msgid "Server endpoint:"
msgstr "Домен сервера"
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:50
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:35
msgid "Public key of this machine:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:54
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:39
msgid "IP address of this machine:"
msgstr ""
-#: plinth/modules/wireguard/views.py:64
+#: plinth/modules/wireguard/views.py:46
#, fuzzy
#| msgid "Add new introducer"
msgid "Added new client."
msgstr "Добавить нового посредника"
-#: plinth/modules/wireguard/views.py:79 plinth/modules/wireguard/views.py:138
+#: plinth/modules/wireguard/views.py:61 plinth/modules/wireguard/views.py:120
#, fuzzy
#| msgid "A share with this name already exists."
msgid "Client with public key already exists"
msgstr "Общий ресурс с таким именем уже существует."
-#: plinth/modules/wireguard/views.py:92
+#: plinth/modules/wireguard/views.py:74
#, fuzzy
#| msgid "Email Client"
msgid "Allowed Client"
msgstr "Почтовый клиент"
-#: plinth/modules/wireguard/views.py:114
+#: plinth/modules/wireguard/views.py:96
#, fuzzy
#| msgid "Update setup"
msgid "Updated client."
msgstr "Обновить настройки"
-#: plinth/modules/wireguard/views.py:119
+#: plinth/modules/wireguard/views.py:101
#, fuzzy
#| msgid "Email Client"
msgid "Modify Client"
msgstr "Почтовый клиент"
-#: plinth/modules/wireguard/views.py:152
+#: plinth/modules/wireguard/views.py:134
#, fuzzy
#| msgid "Delete All"
msgid "Delete Allowed Client"
msgstr "Удалить все"
-#: plinth/modules/wireguard/views.py:161
+#: plinth/modules/wireguard/views.py:143
#, fuzzy
#| msgid "Archive deleted."
msgid "Client deleted."
msgstr "Архив удалён."
-#: plinth/modules/wireguard/views.py:163
+#: plinth/modules/wireguard/views.py:145
#, fuzzy
#| msgid "Repository not found"
msgid "Client not found"
msgstr "Репозиторий не найден"
-#: plinth/modules/wireguard/views.py:173
+#: plinth/modules/wireguard/views.py:155
#, fuzzy
#| msgid "Added custom service"
msgid "Added new server."
msgstr "Добавить пользовательскую службу"
-#: plinth/modules/wireguard/views.py:194
+#: plinth/modules/wireguard/views.py:176
#, fuzzy
#| msgid "Connection Type"
msgid "Connection to Server"
msgstr "Тип подключения"
-#: plinth/modules/wireguard/views.py:212
+#: plinth/modules/wireguard/views.py:194
#, fuzzy
#| msgid "Update setup"
msgid "Updated server."
msgstr "Обновить настройки"
-#: plinth/modules/wireguard/views.py:217
+#: plinth/modules/wireguard/views.py:199
#, fuzzy
#| msgid "Edit Connection"
msgid "Modify Connection to Server"
msgstr "Редактирование подключения"
-#: plinth/modules/wireguard/views.py:254
+#: plinth/modules/wireguard/views.py:236
#, fuzzy
#| msgid "Delete Connection"
msgid "Delete Connection to Server"
msgstr "Удаление подключения"
-#: plinth/modules/wireguard/views.py:274
+#: plinth/modules/wireguard/views.py:256
#, fuzzy
#| msgid "Share deleted."
msgid "Server deleted."
msgstr "Общий ресурс удалён."
-#: plinth/network.py:42
+#: plinth/network.py:27
msgid "PPPoE"
msgstr "PPPоE"
-#: plinth/network.py:43
+#: plinth/network.py:28
msgid "Generic"
msgstr "Универсальный"
-#: plinth/package.py:137
+#: plinth/package.py:122
msgid "Error during installation"
msgstr "Ошибка во время установки"
-#: plinth/package.py:159
+#: plinth/package.py:144
msgid "installing"
msgstr "Установка"
-#: plinth/package.py:161
+#: plinth/package.py:146
msgid "downloading"
msgstr "Загрузка"
-#: plinth/package.py:163
+#: plinth/package.py:148
msgid "media change"
msgstr "изменение медиа"
-#: plinth/package.py:165
+#: plinth/package.py:150
#, python-brace-format
msgid "configuration file: {file}"
msgstr "Файл настроек: {file}"
-#: plinth/templates/403.html:25
+#: plinth/templates/403.html:10
msgid "403 Forbidden"
msgstr "403 Доступ запрещён"
-#: plinth/templates/403.html:29
+#: plinth/templates/403.html:14
#, python-format
msgid "You don't have permission to access %(request_path)s on this server."
msgstr "У вас нет разрешения на доступ к %(request_path)s на этом сервере."
-#: plinth/templates/404.html:25
+#: plinth/templates/404.html:10
msgid "404"
msgstr "404"
-#: plinth/templates/404.html:28
+#: plinth/templates/404.html:13
#, python-format
msgid "Requested page %(request_path)s was not found."
msgstr "Запрошенная страница %(request_path)s не найдена."
-#: plinth/templates/404.html:34
+#: plinth/templates/404.html:19
msgid ""
"If you believe this missing page should exist, please file a bug at the "
"FreedomBox Service (Plinth) project issue tracker."
-#: plinth/templates/500.html:25
+#: plinth/templates/500.html:10
msgid "500"
msgstr "500"
-#: plinth/templates/500.html:29
+#: plinth/templates/500.html:14
#, python-format
msgid ""
"This is an internal error and not something you caused or can fix. Please "
@@ -7013,115 +7126,119 @@ msgstr ""
"пожалуйста, прикрепите Лог состояния к "
"отчету об ошибке."
-#: plinth/templates/app.html:47
+#: plinth/templates/app-header.html:22
+msgid "Installation"
+msgstr "Установка"
+
+#: plinth/templates/app.html:32
#, python-format
msgid "Service %(service_name)s is running."
msgstr "Выполняется служба %(service_name)s."
-#: plinth/templates/app.html:52
+#: plinth/templates/app.html:37
#, python-format
msgid "Service %(service_name)s is not running."
msgstr "Служба %(service_name)s не запущена."
-#: plinth/templates/base.html:50
+#: plinth/templates/base.html:35
#, python-format
msgid "Core functionality and web interface for %(box_name)s"
msgstr "Базовая функциональность и веб-интерфейс %(box_name)s"
-#: plinth/templates/base.html:96
+#: plinth/templates/base.html:81
msgid "Toggle navigation"
msgstr "Отображение навигации"
-#: plinth/templates/base.html:120 plinth/templates/base.html:123
+#: plinth/templates/base.html:105 plinth/templates/base.html:108
msgid "Home"
msgstr "Домой"
-#: plinth/templates/base.html:128 plinth/templates/base.html:132
+#: plinth/templates/base.html:113 plinth/templates/base.html:117
msgid "Apps"
msgstr "Приложения"
-#: plinth/templates/base.html:137 plinth/templates/base.html:141
+#: plinth/templates/base.html:122 plinth/templates/base.html:126
msgid "System"
msgstr "Система"
-#: plinth/templates/base.html:173 plinth/templates/base.html:174
+#: plinth/templates/base.html:158 plinth/templates/base.html:159
msgid "Change password"
msgstr "Смена пароля"
-#: plinth/templates/base.html:181 plinth/templates/base.html:182
+#: plinth/templates/base.html:166 plinth/templates/base.html:167
msgid "Restart"
msgstr "Перезапустить"
-#: plinth/templates/base.html:187 plinth/templates/base.html:188
+#: plinth/templates/base.html:172 plinth/templates/base.html:173
msgid "Shut down"
msgstr "Завершить работу"
-#: plinth/templates/base.html:195 plinth/templates/base.html:196
-#: plinth/templates/base.html:220 plinth/templates/base.html:222
+#: plinth/templates/base.html:180 plinth/templates/base.html:181
+#: plinth/templates/base.html:205 plinth/templates/base.html:207
msgid "Log out"
msgstr "Выход"
-#: plinth/templates/base.html:204 plinth/templates/base.html:207
+#: plinth/templates/base.html:189 plinth/templates/base.html:192
msgid "Select language"
msgstr "Выберите язык"
-#: plinth/templates/base.html:212 plinth/templates/base.html:214
+#: plinth/templates/base.html:197 plinth/templates/base.html:199
msgid "Log in"
msgstr "Войти"
-#: plinth/templates/clients.html:32
+#: plinth/templates/clients.html:17
msgid "Web"
msgstr "Веб"
-#: plinth/templates/clients.html:57
+#: plinth/templates/clients.html:42
msgid "Desktop"
msgstr "Десктоп"
-#: plinth/templates/clients.html:68
+#: plinth/templates/clients.html:53
msgid "GNU/Linux"
msgstr "GNU/Linux"
-#: plinth/templates/clients.html:70
+#: plinth/templates/clients.html:55
msgid "Windows"
msgstr "Windows"
-#: plinth/templates/clients.html:72
+#: plinth/templates/clients.html:57
msgid "macOS"
msgstr "macOS"
-#: plinth/templates/clients.html:88
+#: plinth/templates/clients.html:73
msgid "Mobile"
msgstr "Mobile"
-#: plinth/templates/clients.html:99
+#: plinth/templates/clients.html:84
msgid "Play Store"
msgstr "Play Store"
-#: plinth/templates/clients.html:101
+#: plinth/templates/clients.html:86
msgid "F-Droid"
msgstr "F-Droid"
-#: plinth/templates/clients.html:103
+#: plinth/templates/clients.html:88
msgid "App Store"
msgstr "App Store"
-#: plinth/templates/clients.html:119
+#: plinth/templates/clients.html:104
msgid "Package"
msgstr "Пакет"
-#: plinth/templates/clients.html:126
+#: plinth/templates/clients.html:111
msgid "Debian:"
msgstr "Debian:"
-#: plinth/templates/clients.html:129
+#: plinth/templates/clients.html:114
msgid "Homebrew:"
msgstr "Homebrew:"
-#: plinth/templates/clients.html:132
+#: plinth/templates/clients.html:117
msgid "RPM:"
msgstr "RPM:"
-#: plinth/templates/first_setup.html:39
+#: plinth/templates/first_setup.html:24
#, python-format
msgid ""
"Please wait for %(box_name)s to finish installation. You can start using "
@@ -7130,11 +7247,7 @@ msgstr ""
"Пожалуйста, дождитесь %(box_name)s чтобы закончить установку. Вы можете "
"начать использовать ваш %(box_name)s после того, как это делается."
-#: plinth/templates/header.html:36
-msgid "Installation"
-msgstr "Установка"
-
-#: plinth/templates/index.html:37
+#: plinth/templates/index.html:22
#, python-format
msgid ""
"Enable some applications to add shortcuts to "
@@ -7143,11 +7256,11 @@ msgstr ""
"Включите приложения чтобы добавить ярлыки на "
"эту страницу."
-#: plinth/templates/index.html:59
+#: plinth/templates/index.html:44
msgid "Configure »"
msgstr "Настроить »"
-#: plinth/templates/index.html:115
+#: plinth/templates/index.html:100
#, python-format
msgid ""
"%(box_name)s, a Debian pure blend, is a 100%% free software self-hosting web "
@@ -7159,7 +7272,7 @@ msgstr ""
"Он предоставляет онлайн инструменты онлайн-коммуникации, уважающие вашу "
"приватность и владение данными."
-#: plinth/templates/index.html:124
+#: plinth/templates/index.html:109
#, python-format
msgid ""
"This portal is a part of the %(box_name)s web interface. %(box_name)s is "
@@ -7170,41 +7283,41 @@ msgstr ""
"программное обеспечение, выпускаемое под лицензией GNU Affero General Public "
"License, Версии 3 или старше."
-#: plinth/templates/index.html:144
+#: plinth/templates/index.html:129
msgid "Homepage"
msgstr "Домашняя страница"
-#: plinth/templates/index.html:147
+#: plinth/templates/index.html:132
msgid "Source Code"
msgstr "Исходный код"
-#: plinth/templates/index.html:150
+#: plinth/templates/index.html:135
msgid "Donate"
msgstr "Пожертвовать"
-#: plinth/templates/index.html:154
+#: plinth/templates/index.html:139
msgid "FreedomBox Foundation"
msgstr "Фонд FrеedomBox"
-#: plinth/templates/index.html:161
+#: plinth/templates/index.html:146
msgid "IRC Chatroom"
msgstr "Чат IRC"
-#: plinth/templates/index.html:166
+#: plinth/templates/index.html:151
msgid "Mailing list"
msgstr "Список рассылки"
-#: plinth/templates/internal-zone.html:26
+#: plinth/templates/internal-zone.html:11
#, python-format
msgid "%(service_name)s is available only on internal networks."
msgstr "%(service_name)s доступно только во внутренних сетях."
-#: plinth/templates/internal-zone.html:32
+#: plinth/templates/internal-zone.html:17
msgid "Currently there are no network interfaces configured as internal."
msgstr ""
"В настоящее время нет сетевых интерфейсов, сконфигурированных как внутренние."
-#: plinth/templates/internal-zone.html:34
+#: plinth/templates/internal-zone.html:19
#, python-format
msgid ""
"Currently the following network interfaces are configured as internal: "
@@ -7213,19 +7326,19 @@ msgstr ""
"В настоящее время следующие сетевые интерфейсы сконфигурированы как "
"внутренние: %(interface_list)s"
-#: plinth/templates/notifications-dropdown.html:26
+#: plinth/templates/notifications-dropdown.html:11
#, fuzzy
#| msgid "No certificate"
msgid "Notifications"
msgstr "Не сертификата"
-#: plinth/templates/port-forwarding-info.html:23
+#: plinth/templates/port-forwarding-info.html:8
#, fuzzy
#| msgid "Enable forwarding"
msgid "Port Forwarding"
msgstr "Включить переадресацию"
-#: plinth/templates/port-forwarding-info.html:26
+#: plinth/templates/port-forwarding-info.html:11
#, python-format
msgid ""
"If your FreedomBox is behind a router, you will need to set up port "
@@ -7233,15 +7346,15 @@ msgid ""
"%(service_name)s:"
msgstr ""
-#: plinth/templates/setup.html:51
+#: plinth/templates/setup.html:36
msgid "Install this application?"
msgstr "Установить это приложение?"
-#: plinth/templates/setup.html:55
+#: plinth/templates/setup.html:40
msgid "This application needs an update. Update now?"
msgstr "Это приложение нуждается в обновлении. Обновить сейчас?"
-#: plinth/templates/setup.html:66
+#: plinth/templates/setup.html:51
msgid ""
"Another installation or upgrade is already running. Please wait for a few "
"moments before trying again."
@@ -7249,49 +7362,49 @@ msgstr ""
"Другая установка или обновление уже запущенны. Пожалуйста, подождите "
"несколько минут перед повторной попыткой."
-#: plinth/templates/setup.html:73
+#: plinth/templates/setup.html:58
msgid "This application is currently not available in your distribution."
msgstr "Это приложение в настоящее время недоступно для вашего дистрибутива."
-#: plinth/templates/setup.html:87
+#: plinth/templates/setup.html:72
msgid "Install"
msgstr "Установка"
-#: plinth/templates/setup.html:98
+#: plinth/templates/setup.html:83
msgid "Performing pre-install operation"
msgstr "Выполнение операции предварительной установки"
-#: plinth/templates/setup.html:102
+#: plinth/templates/setup.html:87
msgid "Performing post-install operation"
msgstr "Выполнение операции после установки"
-#: plinth/templates/setup.html:107
+#: plinth/templates/setup.html:92
#, python-format
msgid "Installing %(package_names)s: %(status)s"
msgstr "Установка %(package_names)s: %(status)s"
-#: plinth/templates/setup.html:117
+#: plinth/templates/setup.html:102
#, python-format
msgid "%(percentage)s%% complete"
msgstr "%(percentage)s%% завершено"
-#: plinth/templates/toolbar.html:38
+#: plinth/templates/toolbar.html:23
msgid "Launch web client"
msgstr "Запустить веб-клиент"
-#: plinth/templates/toolbar.html:47
+#: plinth/templates/toolbar.html:32
msgid "Client Apps"
msgstr "Клиентские Приложения"
-#: plinth/views.py:179
+#: plinth/views.py:189
msgid "Application enabled"
msgstr "Приложение включено"
-#: plinth/views.py:182
+#: plinth/views.py:192
msgid "Application disabled"
msgstr "Приложение отключено"
-#: plinth/web_framework.py:190
+#: plinth/web_framework.py:107
msgid "Gujarati"
msgstr "Гуджарати"
diff --git a/plinth/locale/sl/LC_MESSAGES/django.po b/plinth/locale/sl/LC_MESSAGES/django.po
index 869d066a5..88ef3cb35 100644
--- a/plinth/locale/sl/LC_MESSAGES/django.po
+++ b/plinth/locale/sl/LC_MESSAGES/django.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2020-02-14 21:26+0200\n"
+"POT-Creation-Date: 2020-02-24 19:12-0500\n"
"PO-Revision-Date: 2019-05-07 20:48+0000\n"
"Last-Translator: Erik Ušaj This means that devices on the Internet can reach you when you are " +"connected to the Internet. Every time you connect to the Internet with your " +"Internet Service Provider (ISP), you may get a different IP address, " +"especially after some offline time. Many ISPs offer this type of " +"connectivity. If you have a public IP address but are unsure if it changes " +"over time or not, it is safer to choose this option.
" +msgstr "" + #: plinth/modules/networks/forms.py:313 +#, python-brace-format +msgid "" +"I have a public IP address that does not change overtime (recommended)This means that devices on the Internet can reach you " +"when you are connected to the Internet. Every time you connect to the " +"Internet with your Internet Service Provider (ISP), you always get the same " +"IP address. This is the most trouble-free setup for many {box_name} services " +"but very few ISPs offer this. You may be able to get this service from your " +"ISP by making an additional payment.
" +msgstr "" + +#: plinth/modules/networks/forms.py:326 +#, python-brace-format +msgid "" +"I dont have a public IP addressThis means that " +"devices on the Internet can not reach you when you are connected to " +"the Internet. Every time you connect to the Internet with your Internet " +"Service Provider (ISP), you get an IP address that is only relevant for " +"local networks. Many ISPs offer this type of connectivity. This is the most " +"troublesome situation for hosting services at home. {box_name} provides many " +"workaround solutions but each solution has some limitations.
" +msgstr "" + +#: plinth/modules/networks/forms.py:351 msgid "Preferred router configuration" msgstr "" -#: plinth/modules/networks/forms.py:318 +#: plinth/modules/networks/forms.py:356 #, python-brace-format msgid "" -"Use DMZ feature to forward all trafficMost routers " -"provide a configuration setting called DMZ. This will allow the router to " -"forward all incoming traffic from the internet to a single IP address such " -"as the {box_name}'s address. First remember to configure a static local IP " -"address for your {box_name} in your router's configuration.
" +"Use DMZ feature to forward all traffic (recommended)Most routers provide a configuration setting called DMZ. This will allow " +"the router to forward all incoming traffic from the Internet to a single IP " +"address such as the {box_name}'s IP address. First remember to configure a " +"static local IP address for your {box_name} in your router's configuration." +"p>" msgstr "" -#: plinth/modules/networks/forms.py:332 +#: plinth/modules/networks/forms.py:368 #, python-brace-format msgid "" -"Forward Specific Traffic as needed by each application
You may alternatively choose to forward only specific traffic to your " "{box_name}. This is ideal if you have other servers like {box_name} in your " "network or if your router does not support DMZ feature. All applications " @@ -3214,278 +3279,284 @@ msgid "" "to be forwarded for that application to work.
" msgstr "" -#: plinth/modules/networks/forms.py:349 +#: plinth/modules/networks/forms.py:382 msgid "" -"Router is currently unconfiguredChoose this if you " +"Router is currently unconfigured
Choose this if you " "have not configured or are unable to configure the router currently and wish " "to be reminded later. Some of the other configuration steps may fail.
" msgstr "" -#: plinth/modules/networks/networks.py:43 +#: plinth/modules/networks/networks.py:32 msgid "Network Connections" msgstr "" -#: plinth/modules/networks/networks.py:59 +#: plinth/modules/networks/networks.py:46 msgid "Cannot show connection: Connection not found." msgstr "" -#: plinth/modules/networks/networks.py:94 +#: plinth/modules/networks/networks.py:81 msgid "Connection Information" msgstr "" -#: plinth/modules/networks/networks.py:108 +#: plinth/modules/networks/networks.py:95 msgid "Cannot edit connection: Connection not found." msgstr "" -#: plinth/modules/networks/networks.py:114 +#: plinth/modules/networks/networks.py:101 msgid "This type of connection is not yet understood." msgstr "" -#: plinth/modules/networks/networks.py:136 -#: plinth/modules/networks/networks.py:220 -#: plinth/modules/networks/templates/connections_edit.html:35 +#: plinth/modules/networks/networks.py:123 +#: plinth/modules/networks/networks.py:207 +#: plinth/modules/networks/templates/connections_edit.html:20 msgid "Edit Connection" msgstr "" -#: plinth/modules/networks/networks.py:232 +#: plinth/modules/networks/networks.py:219 #, python-brace-format msgid "Activated connection {name}." msgstr "" -#: plinth/modules/networks/networks.py:236 +#: plinth/modules/networks/networks.py:223 msgid "Failed to activate connection: Connection not found." msgstr "" -#: plinth/modules/networks/networks.py:242 +#: plinth/modules/networks/networks.py:229 #, python-brace-format msgid "Failed to activate connection {name}: No suitable device is available." msgstr "" -#: plinth/modules/networks/networks.py:255 +#: plinth/modules/networks/networks.py:242 #, python-brace-format msgid "Deactivated connection {name}." msgstr "" -#: plinth/modules/networks/networks.py:259 +#: plinth/modules/networks/networks.py:246 msgid "Failed to de-activate connection: Connection not found." msgstr "" -#: plinth/modules/networks/networks.py:269 -#: plinth/modules/networks/templates/connections_list.html:62 -#: plinth/modules/networks/templates/connections_list.html:64 +#: plinth/modules/networks/networks.py:256 +#: plinth/modules/networks/templates/connections_list.html:12 +#: plinth/modules/networks/templates/connections_list.html:14 msgid "Nearby Wi-Fi Networks" msgstr "" -#: plinth/modules/networks/networks.py:293 -#: plinth/modules/networks/templates/connections_list.html:67 -#: plinth/modules/networks/templates/connections_list.html:69 -#: plinth/modules/wireguard/templates/wireguard_add_server.html:34 +#: plinth/modules/networks/networks.py:280 +#: plinth/modules/networks/templates/connections_list.html:17 +#: plinth/modules/networks/templates/connections_list.html:19 +#: plinth/modules/wireguard/templates/wireguard_add_server.html:19 msgid "Add Connection" msgstr "" -#: plinth/modules/networks/networks.py:311 +#: plinth/modules/networks/networks.py:298 msgid "Adding New Generic Connection" msgstr "" -#: plinth/modules/networks/networks.py:329 +#: plinth/modules/networks/networks.py:316 msgid "Adding New Ethernet Connection" msgstr "" -#: plinth/modules/networks/networks.py:347 +#: plinth/modules/networks/networks.py:334 msgid "Adding New PPPoE Connection" msgstr "" -#: plinth/modules/networks/networks.py:382 +#: plinth/modules/networks/networks.py:369 msgid "Adding New Wi-Fi Connection" msgstr "" -#: plinth/modules/networks/networks.py:397 +#: plinth/modules/networks/networks.py:384 #, python-brace-format msgid "Connection {name} deleted." msgstr "" -#: plinth/modules/networks/networks.py:401 -#: plinth/modules/networks/networks.py:411 +#: plinth/modules/networks/networks.py:388 +#: plinth/modules/networks/networks.py:398 msgid "Failed to delete connection: Connection not found." msgstr "" -#: plinth/modules/networks/networks.py:416 -#: plinth/modules/networks/templates/connections_delete.html:26 +#: plinth/modules/networks/networks.py:403 +#: plinth/modules/networks/templates/connections_delete.html:11 msgid "Delete Connection" msgstr "" -#: plinth/modules/networks/networks.py:442 +#: plinth/modules/networks/networks.py:428 #, fuzzy #| msgid "Configuration updated" msgid "Router configuration type saved." msgstr "Konfiguracija je posodobljena" -#: plinth/modules/networks/templates/connection_show.html:43 +#: plinth/modules/networks/networks.py:474 +#, fuzzy +#| msgid "Configuration updated" +msgid "Internet connection type saved." +msgstr "Konfiguracija je posodobljena" + +#: plinth/modules/networks/templates/connection_show.html:28 msgid "Edit connection" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:43 -#: plinth/modules/wireguard/templates/wireguard_show_client.html:83 -#: plinth/modules/wireguard/templates/wireguard_show_server.html:84 -#: plinth/templates/base.html:167 plinth/templates/base.html:168 +#: plinth/modules/networks/templates/connection_show.html:28 +#: plinth/modules/wireguard/templates/wireguard_show_client.html:68 +#: plinth/modules/wireguard/templates/wireguard_show_server.html:69 +#: plinth/templates/base.html:152 plinth/templates/base.html:153 msgid "Edit" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:50 -#: plinth/modules/networks/templates/connections_list.html:90 +#: plinth/modules/networks/templates/connection_show.html:35 +#: plinth/modules/networks/templates/connections_list.html:40 msgid "Deactivate" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:57 -#: plinth/modules/networks/templates/connections_list.html:98 +#: plinth/modules/networks/templates/connection_show.html:42 +#: plinth/modules/networks/templates/connections_list.html:48 msgid "Activate" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:63 +#: plinth/modules/networks/templates/connection_show.html:48 msgid "Delete connection" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:66 -#: plinth/modules/networks/templates/connections_diagram.html:73 -#: plinth/modules/networks/templates/connections_diagram.html:76 -#: plinth/modules/networks/templates/connections_diagram.html:105 -#: plinth/modules/networks/templates/connections_diagram.html:127 +#: plinth/modules/networks/templates/connection_show.html:51 +#: plinth/modules/networks/templates/connections_diagram.html:58 +#: plinth/modules/networks/templates/connections_diagram.html:61 +#: plinth/modules/networks/templates/connections_diagram.html:90 +#: plinth/modules/networks/templates/connections_diagram.html:112 msgid "Connection" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:71 +#: plinth/modules/networks/templates/connection_show.html:56 msgid "Primary connection" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:73 -#: plinth/modules/networks/templates/connection_show.html:217 -#: plinth/modules/networks/templates/connection_show.html:256 +#: plinth/modules/networks/templates/connection_show.html:58 +#: plinth/modules/networks/templates/connection_show.html:202 +#: plinth/modules/networks/templates/connection_show.html:241 msgid "yes" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:84 -#: plinth/modules/storage/templates/storage.html:40 +#: plinth/modules/networks/templates/connection_show.html:69 +#: plinth/modules/storage/templates/storage.html:25 msgid "Device" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:88 +#: plinth/modules/networks/templates/connection_show.html:73 msgid "State" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:93 +#: plinth/modules/networks/templates/connection_show.html:78 msgid "State reason" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:102 +#: plinth/modules/networks/templates/connection_show.html:87 msgid "MAC address" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:106 +#: plinth/modules/networks/templates/connection_show.html:91 msgid "Interface" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:110 -#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:33 -#: plinth/modules/snapshot/templates/snapshot_manage.html:45 -#: plinth/modules/snapshot/templates/snapshot_rollback.html:41 +#: plinth/modules/networks/templates/connection_show.html:95 +#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:18 +#: plinth/modules/snapshot/templates/snapshot_manage.html:30 +#: plinth/modules/snapshot/templates/snapshot_rollback.html:26 msgid "Description" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:116 +#: plinth/modules/networks/templates/connection_show.html:101 msgid "Physical Link" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:121 +#: plinth/modules/networks/templates/connection_show.html:106 msgid "Link state" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:125 +#: plinth/modules/networks/templates/connection_show.html:110 msgid "cable is connected" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:128 +#: plinth/modules/networks/templates/connection_show.html:113 msgid "please check cable" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:133 -#: plinth/modules/networks/templates/connection_show.html:149 +#: plinth/modules/networks/templates/connection_show.html:118 +#: plinth/modules/networks/templates/connection_show.html:134 msgid "Speed" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:135 +#: plinth/modules/networks/templates/connection_show.html:120 #, python-format msgid "%(ethernet_speed)s Mbit/s" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:151 +#: plinth/modules/networks/templates/connection_show.html:136 #, python-format msgid "%(wireless_bitrate)s Mbit/s" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:163 +#: plinth/modules/networks/templates/connection_show.html:148 msgid "Signal strength" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:181 +#: plinth/modules/networks/templates/connection_show.html:166 msgid "IPv4" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:186 -#: plinth/modules/networks/templates/connection_show.html:227 -#: plinth/modules/shadowsocks/forms.py:64 +#: plinth/modules/networks/templates/connection_show.html:171 +#: plinth/modules/networks/templates/connection_show.html:212 +#: plinth/modules/shadowsocks/forms.py:49 msgid "Method" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:193 -#: plinth/modules/networks/templates/connection_show.html:234 +#: plinth/modules/networks/templates/connection_show.html:178 +#: plinth/modules/networks/templates/connection_show.html:219 msgid "IP address" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:209 -#: plinth/modules/networks/templates/connection_show.html:248 +#: plinth/modules/networks/templates/connection_show.html:194 +#: plinth/modules/networks/templates/connection_show.html:233 msgid "DNS server" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:216 -#: plinth/modules/networks/templates/connection_show.html:255 -#: plinth/modules/storage/forms.py:156 +#: plinth/modules/networks/templates/connection_show.html:201 +#: plinth/modules/networks/templates/connection_show.html:240 +#: plinth/modules/storage/forms.py:141 msgid "Default" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:222 +#: plinth/modules/networks/templates/connection_show.html:207 msgid "IPv6" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:263 +#: plinth/modules/networks/templates/connection_show.html:248 msgid "This connection is not active." msgstr "" -#: plinth/modules/networks/templates/connection_show.html:266 -#: plinth/modules/security/__init__.py:38 plinth/modules/security/views.py:47 +#: plinth/modules/networks/templates/connection_show.html:251 +#: plinth/modules/security/__init__.py:45 msgid "Security" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:271 -#: plinth/modules/networks/templates/connection_show.html:291 -#: plinth/modules/networks/templates/connection_show.html:310 +#: plinth/modules/networks/templates/connection_show.html:256 +#: plinth/modules/networks/templates/connection_show.html:276 +#: plinth/modules/networks/templates/connection_show.html:295 msgid "Firewall zone" msgstr "" -#: plinth/modules/networks/templates/connection_show.html:280 +#: plinth/modules/networks/templates/connection_show.html:265 msgid "" "This interface should be connected to a local network/machine. If you " "connect this interface to a public network, services meant to be available " "only internally will become available externally. This is a security risk." msgstr "" -#: plinth/modules/networks/templates/connection_show.html:300 +#: plinth/modules/networks/templates/connection_show.html:285 msgid "" "This interface should receive your Internet connection. If you connect it to " "a local network/machine, many services meant to available only internally " "will not be available." msgstr "" -#: plinth/modules/networks/templates/connection_show.html:319 +#: plinth/modules/networks/templates/connection_show.html:304 #, python-format msgid "" "This interface is not maintained by %(box_name)s. Its security status is " @@ -3494,111 +3565,134 @@ msgid "" "connection and re-configure it." msgstr "" -#: plinth/modules/networks/templates/connections_create.html:34 +#: plinth/modules/networks/templates/connections_create.html:19 msgid "Create Connection" msgstr "" -#: plinth/modules/networks/templates/connections_delete.html:29 +#: plinth/modules/networks/templates/connections_delete.html:14 #, python-format msgid "Delete connection %(name)s permanently?" msgstr "" -#: plinth/modules/networks/templates/connections_diagram.html:65 +#: plinth/modules/networks/templates/connections_diagram.html:50 msgid "Internet" msgstr "" -#: plinth/modules/networks/templates/connections_diagram.html:70 -#: plinth/modules/networks/templates/connections_diagram.html:102 +#: plinth/modules/networks/templates/connections_diagram.html:55 +#: plinth/modules/networks/templates/connections_diagram.html:87 msgid "Spacing" msgstr "" -#: plinth/modules/networks/templates/connections_diagram.html:83 -#: plinth/modules/networks/templates/connections_diagram.html:113 -#: plinth/network.py:40 +#: plinth/modules/networks/templates/connections_diagram.html:68 +#: plinth/modules/networks/templates/connections_diagram.html:98 +#: plinth/network.py:25 msgid "Ethernet" msgstr "" -#: plinth/modules/networks/templates/connections_diagram.html:86 -#: plinth/modules/networks/templates/connections_diagram.html:116 -#: plinth/network.py:41 +#: plinth/modules/networks/templates/connections_diagram.html:71 +#: plinth/modules/networks/templates/connections_diagram.html:101 +#: plinth/network.py:26 msgid "Wi-Fi" msgstr "" -#: plinth/modules/networks/templates/connections_diagram.html:89 +#: plinth/modules/networks/templates/connections_diagram.html:74 #, python-format msgid "Show connection %(connection.name)s" msgstr "" -#: plinth/modules/networks/templates/connections_diagram.html:119 +#: plinth/modules/networks/templates/connections_diagram.html:104 #, python-format msgid "Show connection %(name)s" msgstr "" -#: plinth/modules/networks/templates/connections_diagram.html:131 +#: plinth/modules/networks/templates/connections_diagram.html:116 msgid "Computer" msgstr "" -#: plinth/modules/networks/templates/connections_list.html:58 +#: plinth/modules/networks/templates/connections_list.html:8 #, fuzzy #| msgid "Connection refused" msgid "Connections" msgstr "Povezava je zavrnjena" -#: plinth/modules/networks/templates/connections_list.html:79 +#: plinth/modules/networks/templates/connections_list.html:29 #, python-format msgid "Delete connection %(name)s" msgstr "" -#: plinth/modules/networks/templates/connections_list.html:104 +#: plinth/modules/networks/templates/connections_list.html:54 msgid "Active" msgstr "" -#: plinth/modules/networks/templates/connections_list.html:107 +#: plinth/modules/networks/templates/connections_list.html:57 msgid "Inactive" msgstr "" -#: plinth/modules/networks/templates/connections_list.html:124 -#, python-format -msgid "%(box_name)s Internet Connectivity" -msgstr "" - -#: plinth/modules/networks/templates/connections_list.html:129 -#, python-format -msgid "" -"The following best describes how your %(box_name)s is connected in your " -"network. This information is used only to suggest necessary configuration " -"actions." -msgstr "" - -#: plinth/modules/networks/templates/connections_list.html:137 -#, python-format -msgid "" -"Your %(box_name)s gets its internet from your Router via WiFi or Ethernet " -"cable. This is a typical home setup." -msgstr "" - -#: plinth/modules/networks/templates/connections_list.html:145 -#: plinth/modules/networks/templates/connections_list.html:147 -msgid "Update..." -msgstr "" - -#: plinth/modules/networks/templates/connections_type_select.html:34 +#: plinth/modules/networks/templates/connections_type_select.html:19 msgid "Create..." msgstr "" -#: plinth/modules/networks/templates/router_configuration_content.html:25 +#: plinth/modules/networks/templates/internet_connectivity_content.html:10 +msgid "What Type Of Internet Connection Do You Have?" +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_content.html:16 +msgid "" +"Select an option that best describes the type of Internet connection. This " +"information is used only to guide you with further setup." +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_firstboot.html:18 +#: plinth/modules/networks/templates/router_configuration_firstboot.html:18 +msgid "Skip this step" +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_firstboot.html:19 +#: plinth/modules/networks/templates/router_configuration_firstboot.html:19 +msgid "Next" +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:9 +msgid "Your Internet Connection Type" +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:14 +msgid "" +"The following best describes the type of Internet connection provided by " +"your ISP. This information is only used to suggest you necessary " +"configuration actions." +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:23 +msgid "My ISP provides a public IP address that does not change over time." +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:27 +msgid "My ISP provides a public IP address that may change over time." +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:31 +msgid "My ISP does not provide a public IP address." +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:37 +#: plinth/modules/networks/templates/router_configuration_main.html:29 +msgid "Update..." +msgstr "" + +#: plinth/modules/networks/templates/router_configuration_content.html:10 #, python-format msgid "Setup %(box_name)s Behind a Router" msgstr "" -#: plinth/modules/networks/templates/router_configuration_content.html:31 +#: plinth/modules/networks/templates/router_configuration_content.html:16 #, python-format msgid "" "Your %(box_name)s gets its internet connection from your router via Wi-Fi or " "Ethernet cable. This is a typical home setup." msgstr "" -#: plinth/modules/networks/templates/router_configuration_content.html:38 +#: plinth/modules/networks/templates/router_configuration_content.html:23 #, python-format msgid "" "With this setup, any device on the internet trying to reach your " @@ -3607,24 +3701,24 @@ msgid "" "the services." msgstr "" -#: plinth/modules/networks/templates/router_configuration_content.html:47 +#: plinth/modules/networks/templates/router_configuration_content.html:32 msgid "" "If you don't have control over your router, choose not to configure it. To " -"see options, to overcome this limitation, choose 'no public address' option " +"see options to overcome this limitation, choose 'no public address' option " "in Internet connection type selection." msgstr "" -#: plinth/modules/networks/templates/router_configuration_content.html:54 +#: plinth/modules/networks/templates/router_configuration_content.html:39 msgid "Choose How You Wish to Configure Your Router" msgstr "" -#: plinth/modules/networks/templates/router_configuration_content.html:57 +#: plinth/modules/networks/templates/router_configuration_content.html:42 msgid "" "You will need to login to your router's administration console provided by " "the router. This may look like one of the following:" msgstr "" -#: plinth/modules/networks/templates/router_configuration_content.html:69 +#: plinth/modules/networks/templates/router_configuration_content.html:54 msgid "" "The username and password is configured by you when you first setup the " "router. For many routers, this information is printed at the back of the " @@ -3634,24 +3728,27 @@ msgid "" "full instructions on how to perform this task." msgstr "" -#: plinth/modules/networks/templates/router_configuration_firstboot.html:33 -msgid "skip this step" +#: plinth/modules/networks/templates/router_configuration_main.html:9 +#, python-format +msgid "%(box_name)s Internet Connectivity" msgstr "" -#: plinth/modules/networks/templates/router_configuration_firstboot.html:35 -msgid "Next" +#: plinth/modules/networks/templates/router_configuration_main.html:15 +#, python-format +msgid "" +"The following best describes how your %(box_name)s is connected in your " +"network. This information is used only to suggest necessary configuration " +"actions." msgstr "" -#: plinth/modules/openvpn/__init__.py:39 plinth/modules/openvpn/manifest.py:33 -msgid "OpenVPN" +#: plinth/modules/networks/templates/router_configuration_main.html:23 +#, python-format +msgid "" +"Your %(box_name)s gets its Internet from your Router via Wi-Fi or Ethernet " +"cable. This is a typical home setup." msgstr "" -#: plinth/modules/openvpn/__init__.py:43 -#: plinth/modules/wireguard/__init__.py:40 -msgid "Virtual Private Network" -msgstr "" - -#: plinth/modules/openvpn/__init__.py:47 +#: plinth/modules/openvpn/__init__.py:26 #, python-brace-format msgid "" "Virtual Private Network (VPN) is a technique for securely connecting two " @@ -3662,21 +3759,30 @@ msgid "" "security and anonymity." msgstr "" -#: plinth/modules/openvpn/__init__.py:79 +#: plinth/modules/openvpn/__init__.py:49 plinth/modules/openvpn/manifest.py:18 +msgid "OpenVPN" +msgstr "" + +#: plinth/modules/openvpn/__init__.py:50 +#: plinth/modules/wireguard/__init__.py:53 +msgid "Virtual Private Network" +msgstr "" + +#: plinth/modules/openvpn/__init__.py:61 #, python-brace-format msgid "" "Download Profile" msgstr "" -#: plinth/modules/openvpn/forms.py:27 +#: plinth/modules/openvpn/forms.py:12 msgid "Enable OpenVPN server" msgstr "" -#: plinth/modules/openvpn/manifest.py:63 -msgid "TunnelBlick" +#: plinth/modules/openvpn/manifest.py:48 +msgid "Tunnelblick" msgstr "" -#: plinth/modules/openvpn/templates/openvpn.html:42 +#: plinth/modules/openvpn/templates/openvpn.html:27 #, python-format msgid "" "OpenVPN has not yet been setup. Performing a secure setup takes a very long " @@ -3684,15 +3790,15 @@ msgid "" "If the setup is interrupted, you may start it again." msgstr "" -#: plinth/modules/openvpn/templates/openvpn.html:55 +#: plinth/modules/openvpn/templates/openvpn.html:40 msgid "Start setup" msgstr "" -#: plinth/modules/openvpn/templates/openvpn.html:64 +#: plinth/modules/openvpn/templates/openvpn.html:49 msgid "OpenVPN setup is running" msgstr "" -#: plinth/modules/openvpn/templates/openvpn.html:68 +#: plinth/modules/openvpn/templates/openvpn.html:53 #, python-format msgid "" "To perform a secure setup, this process takes a very long time. Depending " @@ -3700,11 +3806,11 @@ msgid "" "interrupted, you may start it again." msgstr "" -#: plinth/modules/openvpn/templates/openvpn.html:87 +#: plinth/modules/openvpn/templates/openvpn.html:72 msgid "Profile" msgstr "" -#: plinth/modules/openvpn/templates/openvpn.html:90 +#: plinth/modules/openvpn/templates/openvpn.html:75 #, python-format msgid "" "To connect to %(box_name)s's VPN, you need to download a profile and feed it " @@ -3713,32 +3819,24 @@ msgid "" "clients and instructions on how to configure them." msgstr "" -#: plinth/modules/openvpn/templates/openvpn.html:100 +#: plinth/modules/openvpn/templates/openvpn.html:85 #, python-format msgid "Profile is specific to each user of %(box_name)s. Keep it a secret." msgstr "" -#: plinth/modules/openvpn/templates/openvpn.html:111 +#: plinth/modules/openvpn/templates/openvpn.html:96 msgid "Download my profile" msgstr "" -#: plinth/modules/openvpn/views.py:133 +#: plinth/modules/openvpn/views.py:114 msgid "Setup completed." msgstr "" -#: plinth/modules/openvpn/views.py:135 +#: plinth/modules/openvpn/views.py:116 msgid "Setup failed." msgstr "" -#: plinth/modules/pagekite/__init__.py:39 -msgid "PageKite" -msgstr "" - -#: plinth/modules/pagekite/__init__.py:41 -msgid "Public Visibility" -msgstr "" - -#: plinth/modules/pagekite/__init__.py:45 +#: plinth/modules/pagekite/__init__.py:26 #, python-brace-format msgid "" "PageKite is a system for exposing {box_name} services when you don't have a " @@ -3747,33 +3845,33 @@ msgid "" "following situations:" msgstr "" -#: plinth/modules/pagekite/__init__.py:50 +#: plinth/modules/pagekite/__init__.py:31 #, python-brace-format msgid "{box_name} is behind a restricted firewall." msgstr "" -#: plinth/modules/pagekite/__init__.py:53 +#: plinth/modules/pagekite/__init__.py:34 #, python-brace-format msgid "{box_name} is connected to a (wireless) router which you don't control." msgstr "" -#: plinth/modules/pagekite/__init__.py:55 +#: plinth/modules/pagekite/__init__.py:36 msgid "" "Your ISP does not provide you an external IP address and instead provides " "Internet connection through NAT." msgstr "" -#: plinth/modules/pagekite/__init__.py:57 +#: plinth/modules/pagekite/__init__.py:38 msgid "" "Your ISP does not provide you a static IP address and your IP address " "changes every time you connect to Internet." msgstr "" -#: plinth/modules/pagekite/__init__.py:59 +#: plinth/modules/pagekite/__init__.py:40 msgid "Your ISP limits incoming connections." msgstr "" -#: plinth/modules/pagekite/__init__.py:61 +#: plinth/modules/pagekite/__init__.py:42 #, python-brace-format msgid "" "PageKite works around NAT, firewalls and IP address limitations by using a " @@ -3782,138 +3880,146 @@ msgid "" "the future it might be possible to use your buddy's {box_name} for this." msgstr "" -#: plinth/modules/pagekite/__init__.py:87 +#: plinth/modules/pagekite/__init__.py:62 +msgid "PageKite" +msgstr "" + +#: plinth/modules/pagekite/__init__.py:64 +msgid "Public Visibility" +msgstr "" + +#: plinth/modules/pagekite/__init__.py:74 msgid "PageKite Domain" msgstr "" -#: plinth/modules/pagekite/forms.py:66 +#: plinth/modules/pagekite/forms.py:51 msgid "Server domain" msgstr "" -#: plinth/modules/pagekite/forms.py:68 +#: plinth/modules/pagekite/forms.py:53 msgid "" "Select your pagekite server. Set \"pagekite.net\" to use the default " "pagekite.net server." msgstr "" -#: plinth/modules/pagekite/forms.py:71 plinth/modules/shadowsocks/forms.py:55 +#: plinth/modules/pagekite/forms.py:56 plinth/modules/shadowsocks/forms.py:40 msgid "Server port" msgstr "" -#: plinth/modules/pagekite/forms.py:72 +#: plinth/modules/pagekite/forms.py:57 msgid "Port of your pagekite server (default: 80)" msgstr "" -#: plinth/modules/pagekite/forms.py:74 +#: plinth/modules/pagekite/forms.py:59 msgid "Kite name" msgstr "" -#: plinth/modules/pagekite/forms.py:75 +#: plinth/modules/pagekite/forms.py:60 msgid "Example: mybox.pagekite.me" msgstr "" -#: plinth/modules/pagekite/forms.py:77 +#: plinth/modules/pagekite/forms.py:62 msgid "Invalid kite name" msgstr "" -#: plinth/modules/pagekite/forms.py:81 +#: plinth/modules/pagekite/forms.py:66 msgid "Kite secret" msgstr "" -#: plinth/modules/pagekite/forms.py:82 +#: plinth/modules/pagekite/forms.py:67 msgid "" "A secret associated with the kite or the default secret for your account if " "no secret is set on the kite." msgstr "" -#: plinth/modules/pagekite/forms.py:98 +#: plinth/modules/pagekite/forms.py:83 msgid "Kite details set" msgstr "" -#: plinth/modules/pagekite/forms.py:105 +#: plinth/modules/pagekite/forms.py:90 msgid "Pagekite server set" msgstr "" -#: plinth/modules/pagekite/forms.py:129 +#: plinth/modules/pagekite/forms.py:114 msgid "PageKite enabled" msgstr "" -#: plinth/modules/pagekite/forms.py:132 +#: plinth/modules/pagekite/forms.py:117 msgid "PageKite disabled" msgstr "" -#: plinth/modules/pagekite/forms.py:148 +#: plinth/modules/pagekite/forms.py:133 msgid "protocol" msgstr "" -#: plinth/modules/pagekite/forms.py:151 +#: plinth/modules/pagekite/forms.py:136 msgid "external (frontend) port" msgstr "" -#: plinth/modules/pagekite/forms.py:154 +#: plinth/modules/pagekite/forms.py:139 msgid "internal (freedombox) port" msgstr "" -#: plinth/modules/pagekite/forms.py:155 +#: plinth/modules/pagekite/forms.py:140 msgid "Enable Subdomains" msgstr "" -#: plinth/modules/pagekite/forms.py:189 +#: plinth/modules/pagekite/forms.py:174 msgid "Deleted custom service" msgstr "" -#: plinth/modules/pagekite/forms.py:222 +#: plinth/modules/pagekite/forms.py:207 msgid "" "This service is available as a standard service. Please use the \"Standard " "Services\" page to enable it." msgstr "" -#: plinth/modules/pagekite/forms.py:231 +#: plinth/modules/pagekite/forms.py:216 msgid "Added custom service" msgstr "" -#: plinth/modules/pagekite/forms.py:234 +#: plinth/modules/pagekite/forms.py:219 msgid "This service already exists" msgstr "" -#: plinth/modules/pagekite/templates/pagekite_configure.html:47 +#: plinth/modules/pagekite/templates/pagekite_configure.html:32 msgid "Custom Services" msgstr "" -#: plinth/modules/pagekite/templates/pagekite_configure.html:50 -#: plinth/modules/pagekite/templates/pagekite_configure.html:52 +#: plinth/modules/pagekite/templates/pagekite_configure.html:35 +#: plinth/modules/pagekite/templates/pagekite_configure.html:37 msgid "Add Custom Service" msgstr "" -#: plinth/modules/pagekite/templates/pagekite_configure.html:57 +#: plinth/modules/pagekite/templates/pagekite_configure.html:42 msgid "Existing custom services" msgstr "" -#: plinth/modules/pagekite/templates/pagekite_configure.html:71 +#: plinth/modules/pagekite/templates/pagekite_configure.html:56 #, python-format msgid "connected to %(backend_host)s:%(backend_port)s" msgstr "" -#: plinth/modules/pagekite/templates/pagekite_configure.html:83 +#: plinth/modules/pagekite/templates/pagekite_configure.html:68 msgid "Delete this service" msgstr "" -#: plinth/modules/pagekite/templates/pagekite_custom_services.html:30 +#: plinth/modules/pagekite/templates/pagekite_custom_services.html:15 msgid "Add custom PageKite service" msgstr "" -#: plinth/modules/pagekite/templates/pagekite_custom_services.html:32 +#: plinth/modules/pagekite/templates/pagekite_custom_services.html:17 msgid "" "Warning:imaps://imap.gmail.com. "
@@ -4225,17 +4321,22 @@ msgid ""
"a>)."
msgstr ""
-#: plinth/modules/samba/__init__.py:46
-msgid "Samba"
+#: plinth/modules/roundcube/__init__.py:54
+#: plinth/modules/roundcube/manifest.py:9
+msgid "Roundcube"
msgstr ""
-#: plinth/modules/samba/__init__.py:53
+#: plinth/modules/roundcube/__init__.py:55
+msgid "Email Client"
+msgstr ""
+
+#: plinth/modules/samba/__init__.py:32
msgid ""
"Samba allows to share files and folders between FreedomBox and other "
"computers in your local network."
msgstr ""
-#: plinth/modules/samba/__init__.py:56
+#: plinth/modules/samba/__init__.py:35
#, python-brace-format
msgid ""
"After installation, you can choose which disks to use for sharing. Enabled "
@@ -4244,53 +4345,57 @@ msgid ""
"There are three types of shares you can choose from: "
msgstr ""
-#: plinth/modules/samba/__init__.py:61
+#: plinth/modules/samba/__init__.py:40
msgid "Open share - accessible to everyone in your local network."
msgstr ""
-#: plinth/modules/samba/__init__.py:62
+#: plinth/modules/samba/__init__.py:41
msgid ""
"Group share - accessible only to FreedomBox users who are in the freedombox-"
"share group."
msgstr ""
-#: plinth/modules/samba/__init__.py:64
+#: plinth/modules/samba/__init__.py:43
msgid ""
"Home share - every user in the freedombox-share group can have their own "
"private space."
msgstr ""
-#: plinth/modules/samba/__init__.py:68
+#: plinth/modules/samba/__init__.py:47
msgid "Access to the private shares"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:39
-#: plinth/modules/samba/templates/samba.html:50
+#: plinth/modules/samba/__init__.py:61
+msgid "Samba"
+msgstr ""
+
+#: plinth/modules/samba/templates/samba.html:24
+#: plinth/modules/samba/templates/samba.html:35
msgid "Shares"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:41
+#: plinth/modules/samba/templates/samba.html:26
msgid ""
"Note: Only specially created directories will be shared on selected disks, "
"not the whole disk."
msgstr ""
-#: plinth/modules/samba/templates/samba.html:49
+#: plinth/modules/samba/templates/samba.html:34
#, fuzzy
#| msgid "Domain Name"
msgid "Disk Name"
msgstr "Ime domene"
-#: plinth/modules/samba/templates/samba.html:51
-#: plinth/modules/storage/templates/storage.html:44
+#: plinth/modules/samba/templates/samba.html:36
+#: plinth/modules/storage/templates/storage.html:29
msgid "Used"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:72
+#: plinth/modules/samba/templates/samba.html:57
msgid "VFAT partitions are not supported"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:103
+#: plinth/modules/samba/templates/samba.html:88
#, python-format
msgid ""
"You can find additional information about disks on the users module page."
msgstr ""
-#: plinth/modules/samba/templates/samba.html:109
+#: plinth/modules/samba/templates/samba.html:94
msgid "Users who can currently access group and home shares"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:113
+#: plinth/modules/samba/templates/samba.html:98
msgid ""
"Users needing to re-enter their password on the password change page to "
"access group and home shares"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:118
+#: plinth/modules/samba/templates/samba.html:103
msgid "Unavailable Shares"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:120
+#: plinth/modules/samba/templates/samba.html:105
msgid ""
"Shares that are configured but the disk is not available. If the disk is "
"plugged back in, sharing will be automatically enabled."
msgstr ""
-#: plinth/modules/samba/templates/samba.html:128
+#: plinth/modules/samba/templates/samba.html:113
msgid "Share name"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:129
+#: plinth/modules/samba/templates/samba.html:114
#, fuzzy
#| msgid "Encryption"
msgid "Action"
msgstr "Šifriranje"
-#: plinth/modules/samba/views.py:61 plinth/modules/storage/forms.py:164
+#: plinth/modules/samba/views.py:43 plinth/modules/storage/forms.py:149
msgid "Open Share"
msgstr ""
-#: plinth/modules/samba/views.py:62 plinth/modules/storage/forms.py:162
+#: plinth/modules/samba/views.py:44 plinth/modules/storage/forms.py:147
msgid "Group Share"
msgstr ""
-#: plinth/modules/samba/views.py:63
+#: plinth/modules/samba/views.py:45
msgid "Home Share"
msgstr ""
-#: plinth/modules/samba/views.py:96
+#: plinth/modules/samba/views.py:78
msgid "Share enabled."
msgstr ""
-#: plinth/modules/samba/views.py:101
+#: plinth/modules/samba/views.py:83
#, fuzzy, python-brace-format
#| msgid "Error installing application: {error}"
msgid "Error enabling share: {error_message}"
msgstr "Napaka ob nameščanju aplikacije: {error}"
-#: plinth/modules/samba/views.py:106
+#: plinth/modules/samba/views.py:88
msgid "Share disabled."
msgstr ""
-#: plinth/modules/samba/views.py:111
+#: plinth/modules/samba/views.py:93
#, fuzzy, python-brace-format
#| msgid "Error installing application: {error}"
msgid "Error disabling share: {error_message}"
msgstr "Napaka ob nameščanju aplikacije: {error}"
-#: plinth/modules/searx/__init__.py:41 plinth/modules/searx/manifest.py:24
-msgid "Searx"
-msgstr ""
-
-#: plinth/modules/searx/__init__.py:45
-msgid "Web Search"
-msgstr ""
-
-#: plinth/modules/searx/__init__.py:48
+#: plinth/modules/searx/__init__.py:25
msgid ""
"Searx is a privacy-respecting Internet metasearch engine. It aggregrates and "
"displays results from multiple search engines."
msgstr ""
-#: plinth/modules/searx/__init__.py:50
+#: plinth/modules/searx/__init__.py:27
msgid ""
"Searx can be used to avoid tracking and profiling by search engines. It "
"stores no cookies by default."
msgstr ""
-#: plinth/modules/searx/__init__.py:54
+#: plinth/modules/searx/__init__.py:31
msgid "Search the web"
msgstr ""
-#: plinth/modules/searx/forms.py:30
+#: plinth/modules/searx/__init__.py:47 plinth/modules/searx/manifest.py:9
+msgid "Searx"
+msgstr ""
+
+#: plinth/modules/searx/__init__.py:48
+msgid "Web Search"
+msgstr ""
+
+#: plinth/modules/searx/forms.py:15
msgid "Safe Search"
msgstr ""
-#: plinth/modules/searx/forms.py:31
+#: plinth/modules/searx/forms.py:16
msgid "Select the default family filter to apply to your search results."
msgstr ""
-#: plinth/modules/searx/forms.py:32
+#: plinth/modules/searx/forms.py:17
msgid "None"
msgstr ""
-#: plinth/modules/searx/forms.py:32
+#: plinth/modules/searx/forms.py:17
msgid "Moderate"
msgstr ""
-#: plinth/modules/searx/forms.py:32
+#: plinth/modules/searx/forms.py:17
msgid "Strict"
msgstr ""
-#: plinth/modules/searx/forms.py:35
+#: plinth/modules/searx/forms.py:20
msgid "Allow Public Access"
msgstr ""
-#: plinth/modules/searx/forms.py:36
+#: plinth/modules/searx/forms.py:21
msgid "Allow this application to be used by anyone who can reach it."
msgstr ""
-#: plinth/modules/searx/views.py:59 plinth/modules/searx/views.py:70
-#: plinth/modules/tor/views.py:149 plinth/modules/tor/views.py:176
+#: plinth/modules/searx/views.py:39 plinth/modules/searx/views.py:50
+#: plinth/modules/tor/views.py:130 plinth/modules/tor/views.py:157
msgid "Configuration updated."
msgstr ""
-#: plinth/modules/security/forms.py:28
+#: plinth/modules/security/forms.py:13
msgid "Restrict console logins (recommended)"
msgstr ""
-#: plinth/modules/security/forms.py:29
+#: plinth/modules/security/forms.py:14
msgid ""
"When this option is enabled, only users in the \"admin\" group will be able "
"to log in to console or via SSH. Console users may be able to access some "
"services without further authorization."
msgstr ""
-#: plinth/modules/security/forms.py:34
+#: plinth/modules/security/forms.py:19
msgid "Fail2Ban (recommended)"
msgstr ""
-#: plinth/modules/security/forms.py:35
+#: plinth/modules/security/forms.py:20
msgid ""
"When this option is enabled, Fail2Ban will limit brute force break-in "
"attempts to the SSH server and other enabled password protected internet-"
"services."
msgstr ""
-#: plinth/modules/security/templates/security.html:26
-#: plinth/modules/security/templates/security.html:28
+#: plinth/modules/security/templates/security.html:11
+#: plinth/modules/security/templates/security.html:13
msgid "Show security report"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:25
-#: plinth/modules/security/views.py:87
+#: plinth/modules/security/templates/security_report.html:10
+#: plinth/modules/security/views.py:71
msgid "Security Report"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:27
+#: plinth/modules/security/templates/security_report.html:12
#, python-format
msgid ""
"The installed version of FreedomBox has %(count)s reported security "
"vulnerabilities."
msgstr ""
-#: plinth/modules/security/templates/security_report.html:33
+#: plinth/modules/security/templates/security_report.html:18
msgid ""
"The following table lists the current reported number, and historical count, "
"of security vulnerabilities for each installed app."
msgstr ""
-#: plinth/modules/security/templates/security_report.html:39
+#: plinth/modules/security/templates/security_report.html:24
msgid ""
"For apps that provide services, the \"Sandboxed\" column shows whether "
"sandboxing features are in use. Sandboxing mitigates the impact of a "
"potentially compromised app to the rest of the system."
msgstr ""
-#: plinth/modules/security/templates/security_report.html:46
+#: plinth/modules/security/templates/security_report.html:31
msgid ""
"\"Sandbox Coverage\" is a score of how effectively the service is isolated "
"from the rest of the system. It is only displayed while the service is "
"running."
msgstr ""
-#: plinth/modules/security/templates/security_report.html:55
+#: plinth/modules/security/templates/security_report.html:40
#, fuzzy
#| msgid "Name"
msgid "App Name"
msgstr "Ime"
-#: plinth/modules/security/templates/security_report.html:56
+#: plinth/modules/security/templates/security_report.html:41
msgid "Current Vulnerabilities"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:57
+#: plinth/modules/security/templates/security_report.html:42
msgid "Past Vulnerabilities"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:58
+#: plinth/modules/security/templates/security_report.html:43
msgid "Sandboxed"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:59
+#: plinth/modules/security/templates/security_report.html:44
msgid "Sandbox Coverage"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:70
+#: plinth/modules/security/templates/security_report.html:55
msgid "N/A"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:72
+#: plinth/modules/security/templates/security_report.html:57
msgid "Yes"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:74
+#: plinth/modules/security/templates/security_report.html:59
msgid "No"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:81
+#: plinth/modules/security/templates/security_report.html:66
msgid "Not running"
msgstr ""
-#: plinth/modules/security/views.py:69
+#: plinth/modules/security/views.py:53
#, python-brace-format
msgid "Error setting restricted access: {exception}"
msgstr ""
-#: plinth/modules/security/views.py:72
+#: plinth/modules/security/views.py:56
msgid "Updated security configuration"
msgstr ""
-#: plinth/modules/shaarli/__init__.py:34 plinth/modules/shaarli/manifest.py:23
-msgid "Shaarli"
-msgstr ""
-
-#: plinth/modules/shaarli/__init__.py:36
-msgid "Bookmarks"
-msgstr ""
-
-#: plinth/modules/shaarli/__init__.py:39
+#: plinth/modules/shaarli/__init__.py:20
msgid "Shaarli allows you to save and share bookmarks."
msgstr ""
-#: plinth/modules/shaarli/__init__.py:40
+#: plinth/modules/shaarli/__init__.py:21
msgid ""
"When enabled, Shaarli will be available from /shaarli path on the web server. Note that Shaarli "
@@ -4543,22 +4640,22 @@ msgid ""
"initial visit."
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:35
-msgid "Shadowsocks"
+#: plinth/modules/shaarli/__init__.py:39 plinth/modules/shaarli/manifest.py:8
+msgid "Shaarli"
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:39
-msgid "Socks5 Proxy"
+#: plinth/modules/shaarli/__init__.py:40
+msgid "Bookmarks"
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:46
+#: plinth/modules/shadowsocks/__init__.py:25
msgid ""
"Shadowsocks is a lightweight and secure SOCKS5 proxy, designed to protect "
"your Internet traffic. It can be used to bypass Internet filtering and "
"censorship."
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:50
+#: plinth/modules/shadowsocks/__init__.py:29
#, python-brace-format
msgid ""
"Your {box_name} can run a Shadowsocks client, that can connect to a "
@@ -4567,149 +4664,153 @@ msgid ""
"the Shadowsocks server."
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:55
+#: plinth/modules/shadowsocks/__init__.py:34
msgid ""
"To use Shadowsocks after setup, set the SOCKS5 proxy URL in your device, "
"browser or application to http://freedombox_address:1080/"
msgstr ""
-#: plinth/modules/shadowsocks/forms.py:28
-#: plinth/modules/shadowsocks/forms.py:29
+#: plinth/modules/shadowsocks/__init__.py:50
+msgid "Shadowsocks"
+msgstr ""
+
+#: plinth/modules/shadowsocks/__init__.py:52
+msgid "Socks5 Proxy"
+msgstr ""
+
+#: plinth/modules/shadowsocks/forms.py:13
+#: plinth/modules/shadowsocks/forms.py:14
msgid "Recommended"
msgstr ""
-#: plinth/modules/shadowsocks/forms.py:52
+#: plinth/modules/shadowsocks/forms.py:37
msgid "Server"
msgstr ""
-#: plinth/modules/shadowsocks/forms.py:53
+#: plinth/modules/shadowsocks/forms.py:38
msgid "Server hostname or IP address"
msgstr ""
-#: plinth/modules/shadowsocks/forms.py:57
+#: plinth/modules/shadowsocks/forms.py:42
msgid "Server port number"
msgstr ""
-#: plinth/modules/shadowsocks/forms.py:60
+#: plinth/modules/shadowsocks/forms.py:45
msgid "Password used to encrypt data. Must match server password."
msgstr ""
-#: plinth/modules/shadowsocks/forms.py:65
+#: plinth/modules/shadowsocks/forms.py:50
msgid "Encryption method. Must match setting on server."
msgstr ""
-#: plinth/modules/sharing/__init__.py:34
-msgid "Sharing"
-msgstr ""
-
-#: plinth/modules/sharing/__init__.py:38
+#: plinth/modules/sharing/__init__.py:21
#, python-brace-format
msgid ""
"Sharing allows you to share files and folders on your {box_name} over the "
"web with chosen groups of users."
msgstr ""
-#: plinth/modules/sharing/forms.py:33
+#: plinth/modules/sharing/__init__.py:38
+msgid "Sharing"
+msgstr ""
+
+#: plinth/modules/sharing/forms.py:18
msgid "Name of the share"
msgstr ""
-#: plinth/modules/sharing/forms.py:35
+#: plinth/modules/sharing/forms.py:20
msgid ""
"A lowercase alpha-numeric string that uniquely identifies a share. Example: "
"media."
msgstr ""
-#: plinth/modules/sharing/forms.py:39
+#: plinth/modules/sharing/forms.py:24
msgid "Path to share"
msgstr ""
-#: plinth/modules/sharing/forms.py:40
+#: plinth/modules/sharing/forms.py:25
msgid "Disk path to a folder on this server that you intend to share."
msgstr ""
-#: plinth/modules/sharing/forms.py:43
+#: plinth/modules/sharing/forms.py:28
msgid "Public share"
msgstr ""
-#: plinth/modules/sharing/forms.py:44
+#: plinth/modules/sharing/forms.py:29
msgid "Make files in this folder available to anyone with the link."
msgstr ""
-#: plinth/modules/sharing/forms.py:48
+#: plinth/modules/sharing/forms.py:33
msgid "User groups that can read the files in the share"
msgstr ""
-#: plinth/modules/sharing/forms.py:50
+#: plinth/modules/sharing/forms.py:35
msgid ""
"Users of the selected user groups will be able to read the files in the "
"share."
msgstr ""
-#: plinth/modules/sharing/forms.py:67
+#: plinth/modules/sharing/forms.py:52
msgid "A share with this name already exists."
msgstr ""
-#: plinth/modules/sharing/forms.py:78
+#: plinth/modules/sharing/forms.py:63
msgid "Shares should be either public or shared with at least one group"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:39
-#: plinth/modules/sharing/templates/sharing.html:42
+#: plinth/modules/sharing/templates/sharing.html:24
+#: plinth/modules/sharing/templates/sharing.html:27
msgid "Add share"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:47
+#: plinth/modules/sharing/templates/sharing.html:32
msgid "No shares currently configured."
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:53
+#: plinth/modules/sharing/templates/sharing.html:38
msgid "Disk Path"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:54
+#: plinth/modules/sharing/templates/sharing.html:39
msgid "Shared Over"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:55
+#: plinth/modules/sharing/templates/sharing.html:40
msgid "With Groups"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:73
+#: plinth/modules/sharing/templates/sharing.html:58
msgid "public access"
msgstr ""
-#: plinth/modules/sharing/views.py:55
+#: plinth/modules/sharing/views.py:39
msgid "Share added."
msgstr ""
-#: plinth/modules/sharing/views.py:60
+#: plinth/modules/sharing/views.py:44
msgid "Add Share"
msgstr ""
-#: plinth/modules/sharing/views.py:75
+#: plinth/modules/sharing/views.py:59
msgid "Share edited."
msgstr ""
-#: plinth/modules/sharing/views.py:80
+#: plinth/modules/sharing/views.py:64
msgid "Edit Share"
msgstr ""
-#: plinth/modules/sharing/views.py:111
+#: plinth/modules/sharing/views.py:95
msgid "Share deleted."
msgstr ""
-#: plinth/modules/snapshot/__init__.py:37
-msgid "Storage Snapshots"
-msgstr ""
-
-#: plinth/modules/snapshot/__init__.py:40
+#: plinth/modules/snapshot/__init__.py:23
msgid ""
"Snapshots allows creating and managing btrfs file system snapshots. These "
"can be used to roll back the system to a previously known good state in case "
"of unwanted changes to the system."
msgstr ""
-#: plinth/modules/snapshot/__init__.py:44
+#: plinth/modules/snapshot/__init__.py:27
#, no-python-format
msgid ""
"Snapshots are taken periodically (called timeline snapshots) and also before "
@@ -4717,192 +4818,192 @@ msgid ""
"cleaned up according to the settings below."
msgstr ""
-#: plinth/modules/snapshot/__init__.py:47
+#: plinth/modules/snapshot/__init__.py:30
msgid ""
"Snapshots currently work on btrfs file systems only and on the root "
"partition only. Snapshots are not a replacement for backups since they can only be stored on the same partition. "
msgstr ""
-#: plinth/modules/snapshot/forms.py:27
+#: plinth/modules/snapshot/__init__.py:52
+msgid "Storage Snapshots"
+msgstr ""
+
+#: plinth/modules/snapshot/forms.py:12
msgid "Free Disk Space to Maintain"
msgstr ""
-#: plinth/modules/snapshot/forms.py:28
+#: plinth/modules/snapshot/forms.py:13
msgid ""
"Maintain this percentage of free space on the disk. If free space falls "
"below this value, older snapshots are removed until this much free space is "
"regained. The default value is 30%."
msgstr ""
-#: plinth/modules/snapshot/forms.py:35
+#: plinth/modules/snapshot/forms.py:20
msgid "Timeline Snapshots"
msgstr ""
-#: plinth/modules/snapshot/forms.py:36
+#: plinth/modules/snapshot/forms.py:21
msgid ""
"Enable or disable timeline snapshots (hourly, daily, monthly and yearly)."
msgstr ""
-#: plinth/modules/snapshot/forms.py:41
+#: plinth/modules/snapshot/forms.py:26
msgid "Software Installation Snapshots"
msgstr ""
-#: plinth/modules/snapshot/forms.py:42
+#: plinth/modules/snapshot/forms.py:27
msgid "Enable or disable snapshots before and after software installation"
msgstr ""
-#: plinth/modules/snapshot/forms.py:47
+#: plinth/modules/snapshot/forms.py:32
msgid "Hourly Snapshots Limit"
msgstr ""
-#: plinth/modules/snapshot/forms.py:48
+#: plinth/modules/snapshot/forms.py:33
msgid "Keep a maximum of this many hourly snapshots."
msgstr ""
-#: plinth/modules/snapshot/forms.py:51
+#: plinth/modules/snapshot/forms.py:36
msgid "Daily Snapshots Limit"
msgstr ""
-#: plinth/modules/snapshot/forms.py:52
+#: plinth/modules/snapshot/forms.py:37
msgid "Keep a maximum of this many daily snapshots."
msgstr ""
-#: plinth/modules/snapshot/forms.py:55
+#: plinth/modules/snapshot/forms.py:40
msgid "Weekly Snapshots Limit"
msgstr ""
-#: plinth/modules/snapshot/forms.py:56
+#: plinth/modules/snapshot/forms.py:41
msgid "Keep a maximum of this many weekly snapshots."
msgstr ""
-#: plinth/modules/snapshot/forms.py:59
+#: plinth/modules/snapshot/forms.py:44
msgid "Monthly Snapshots Limit"
msgstr ""
-#: plinth/modules/snapshot/forms.py:60
+#: plinth/modules/snapshot/forms.py:45
msgid "Keep a maximum of this many monthly snapshots."
msgstr ""
-#: plinth/modules/snapshot/forms.py:63
+#: plinth/modules/snapshot/forms.py:48
msgid "Yearly Snapshots Limit"
msgstr ""
-#: plinth/modules/snapshot/forms.py:64
+#: plinth/modules/snapshot/forms.py:49
msgid ""
"Keep a maximum of this many yearly snapshots. The default value is 0 "
"(disabled)."
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:27
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:12
msgid "Delete the following snapshots permanently?"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:31
-#: plinth/modules/snapshot/templates/snapshot_manage.html:43
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:39
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:16
+#: plinth/modules/snapshot/templates/snapshot_manage.html:28
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:24
msgid "Number"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:32
-#: plinth/modules/snapshot/templates/snapshot_manage.html:44
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:40
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:17
+#: plinth/modules/snapshot/templates/snapshot_manage.html:29
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:25
msgid "Date"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:52
-#: plinth/modules/snapshot/templates/snapshot_manage.html:37
-#: plinth/modules/snapshot/views.py:196
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:37
+#: plinth/modules/snapshot/templates/snapshot_manage.html:22
+#: plinth/modules/snapshot/views.py:175
msgid "Delete Snapshots"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_manage.html:33
+#: plinth/modules/snapshot/templates/snapshot_manage.html:18
msgid "Create Snapshot"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_manage.html:46
+#: plinth/modules/snapshot/templates/snapshot_manage.html:31
msgid "Rollback"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_manage.html:57
+#: plinth/modules/snapshot/templates/snapshot_manage.html:42
msgid "active"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_manage.html:66
+#: plinth/modules/snapshot/templates/snapshot_manage.html:51
#, python-format
msgid "Rollback to snapshot #%(number)s"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_not_supported.html:26
+#: plinth/modules/snapshot/templates/snapshot_not_supported.html:11
#, python-format
msgid ""
"Your have a filesystem of type %(fs_type)s. Snapshots are "
"currently only available on %(types_supported)s filesystems."
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:27
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:12
msgid "Roll back the system to this snapshot?"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:30
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:15
msgid ""
"A new snapshot with the current state of the file system will be "
"automatically created. You will be able to undo a rollback by reverting to "
"the newly created snapshot."
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:57
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:42
#, python-format
msgid "Rollback to Snapshot #%(number)s"
msgstr ""
-#: plinth/modules/snapshot/views.py:45
+#: plinth/modules/snapshot/views.py:30
msgid "Manage Snapshots"
msgstr ""
-#: plinth/modules/snapshot/views.py:98
+#: plinth/modules/snapshot/views.py:79
msgid "Created snapshot."
msgstr ""
-#: plinth/modules/snapshot/views.py:156
+#: plinth/modules/snapshot/views.py:135
msgid "Storage snapshots configuration updated"
msgstr ""
-#: plinth/modules/snapshot/views.py:160 plinth/modules/tor/views.py:79
+#: plinth/modules/snapshot/views.py:139 plinth/modules/tor/views.py:60
#, python-brace-format
msgid "Action error: {0} [{1}] [{2}]"
msgstr ""
-#: plinth/modules/snapshot/views.py:175
+#: plinth/modules/snapshot/views.py:154
msgid "Deleted all snapshots"
msgstr ""
-#: plinth/modules/snapshot/views.py:179
+#: plinth/modules/snapshot/views.py:158
msgid "Deleted selected snapshots"
msgstr ""
-#: plinth/modules/snapshot/views.py:184
+#: plinth/modules/snapshot/views.py:163
msgid "Snapshot is currently in use. Please try again later."
msgstr ""
-#: plinth/modules/snapshot/views.py:207
+#: plinth/modules/snapshot/views.py:186
#, python-brace-format
msgid "Rolled back to snapshot #{number}."
msgstr ""
-#: plinth/modules/snapshot/views.py:210
+#: plinth/modules/snapshot/views.py:189
msgid "The system must be restarted to complete the rollback."
msgstr ""
-#: plinth/modules/snapshot/views.py:222
+#: plinth/modules/snapshot/views.py:201
msgid "Rollback to Snapshot"
msgstr ""
-#: plinth/modules/ssh/__init__.py:43
-msgid "Secure Shell (SSH) Server"
-msgstr ""
-
-#: plinth/modules/ssh/__init__.py:46
+#: plinth/modules/ssh/__init__.py:29
msgid ""
"A Secure Shell server uses the secure shell protocol to accept connections "
"from remote computers. An authorized remote computer can perform "
@@ -4910,58 +5011,58 @@ msgid ""
"connections."
msgstr ""
-#: plinth/modules/ssh/forms.py:30
+#: plinth/modules/ssh/__init__.py:50
+msgid "Secure Shell (SSH) Server"
+msgstr ""
+
+#: plinth/modules/ssh/forms.py:15
msgid "Disable password authentication"
msgstr ""
-#: plinth/modules/ssh/forms.py:31
+#: plinth/modules/ssh/forms.py:16
msgid ""
"Improves security by preventing password guessing. Ensure that you have "
"setup SSH keys in your administrator user account before enabling this "
"option."
msgstr ""
-#: plinth/modules/ssh/templates/ssh.html:26
+#: plinth/modules/ssh/templates/ssh.html:11
#, fuzzy
#| msgid "Server Administration"
msgid "Server Fingerprints"
msgstr "Skrbništvo strežnika"
-#: plinth/modules/ssh/templates/ssh.html:29
+#: plinth/modules/ssh/templates/ssh.html:14
msgid ""
"When connecting to the server, ensure that the fingerprint shown by the SSH "
"client matches one of these fingerprints."
msgstr ""
-#: plinth/modules/ssh/templates/ssh.html:38
+#: plinth/modules/ssh/templates/ssh.html:23
msgid "Algorithm"
msgstr ""
-#: plinth/modules/ssh/templates/ssh.html:39
+#: plinth/modules/ssh/templates/ssh.html:24
msgid "Fingerprint"
msgstr ""
-#: plinth/modules/ssh/views.py:66
+#: plinth/modules/ssh/views.py:48
msgid "SSH authentication with password disabled."
msgstr ""
-#: plinth/modules/ssh/views.py:69
+#: plinth/modules/ssh/views.py:51
msgid "SSH authentication with password enabled."
msgstr ""
-#: plinth/modules/sso/__init__.py:30
+#: plinth/modules/sso/__init__.py:33
msgid "Single Sign On"
msgstr ""
-#: plinth/modules/sso/templates/login.html:35
+#: plinth/modules/sso/templates/login.html:20
msgid "Login"
msgstr ""
-#: plinth/modules/storage/__init__.py:39 plinth/modules/storage/__init__.py:331
-msgid "Storage"
-msgstr ""
-
-#: plinth/modules/storage/__init__.py:47
+#: plinth/modules/storage/__init__.py:30
#, python-brace-format
msgid ""
"This module allows you to manage storage media attached to your {box_name}. "
@@ -4969,147 +5070,151 @@ msgid ""
"media, expand the root partition etc."
msgstr ""
-#: plinth/modules/storage/__init__.py:224
+#: plinth/modules/storage/__init__.py:52 plinth/modules/storage/__init__.py:318
+msgid "Storage"
+msgstr ""
+
+#: plinth/modules/storage/__init__.py:211
#, python-brace-format
msgid "{disk_size:.1f} bytes"
msgstr ""
-#: plinth/modules/storage/__init__.py:228
+#: plinth/modules/storage/__init__.py:215
#, python-brace-format
msgid "{disk_size:.1f} KiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:232
+#: plinth/modules/storage/__init__.py:219
#, python-brace-format
msgid "{disk_size:.1f} MiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:236
+#: plinth/modules/storage/__init__.py:223
#, python-brace-format
msgid "{disk_size:.1f} GiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:239
+#: plinth/modules/storage/__init__.py:226
#, python-brace-format
msgid "{disk_size:.1f} TiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:246
+#: plinth/modules/storage/__init__.py:233
msgid "The operation failed."
msgstr ""
-#: plinth/modules/storage/__init__.py:248
+#: plinth/modules/storage/__init__.py:235
msgid "The operation was cancelled."
msgstr ""
-#: plinth/modules/storage/__init__.py:250
+#: plinth/modules/storage/__init__.py:237
msgid "The device is already unmounting."
msgstr ""
-#: plinth/modules/storage/__init__.py:252
+#: plinth/modules/storage/__init__.py:239
msgid "The operation is not supported due to missing driver/tool support."
msgstr ""
-#: plinth/modules/storage/__init__.py:255
+#: plinth/modules/storage/__init__.py:242
msgid "The operation timed out."
msgstr ""
-#: plinth/modules/storage/__init__.py:257
+#: plinth/modules/storage/__init__.py:244
msgid "The operation would wake up a disk that is in a deep-sleep state."
msgstr ""
-#: plinth/modules/storage/__init__.py:260
+#: plinth/modules/storage/__init__.py:247
msgid "Attempting to unmount a device that is busy."
msgstr ""
-#: plinth/modules/storage/__init__.py:262
+#: plinth/modules/storage/__init__.py:249
msgid "The operation has already been cancelled."
msgstr ""
-#: plinth/modules/storage/__init__.py:268
+#: plinth/modules/storage/__init__.py:255
msgid "Not authorized to perform the requested operation."
msgstr ""
-#: plinth/modules/storage/__init__.py:270
+#: plinth/modules/storage/__init__.py:257
msgid "The device is already mounted."
msgstr ""
-#: plinth/modules/storage/__init__.py:272
+#: plinth/modules/storage/__init__.py:259
msgid "The device is not mounted."
msgstr ""
-#: plinth/modules/storage/__init__.py:275
+#: plinth/modules/storage/__init__.py:262
msgid "Not permitted to use the requested option."
msgstr ""
-#: plinth/modules/storage/__init__.py:278
+#: plinth/modules/storage/__init__.py:265
msgid "The device is mounted by another user."
msgstr ""
-#: plinth/modules/storage/__init__.py:326
+#: plinth/modules/storage/__init__.py:313
#, no-python-format, python-brace-format
msgid "Low space on system partition: {percent_used}% used, {free_space} free."
msgstr ""
-#: plinth/modules/storage/__init__.py:328
+#: plinth/modules/storage/__init__.py:315
msgid "Low disk space"
msgstr ""
-#: plinth/modules/storage/forms.py:79
+#: plinth/modules/storage/forms.py:64
#, fuzzy
#| msgid "Invalid hostname"
msgid "Invalid directory name."
msgstr "Neveljavno ime gostitelja"
-#: plinth/modules/storage/forms.py:97
+#: plinth/modules/storage/forms.py:82
msgid "Directory does not exist."
msgstr ""
-#: plinth/modules/storage/forms.py:99
+#: plinth/modules/storage/forms.py:84
msgid "Path is not a directory."
msgstr ""
-#: plinth/modules/storage/forms.py:102
+#: plinth/modules/storage/forms.py:87
msgid "Directory is not readable by the user."
msgstr ""
-#: plinth/modules/storage/forms.py:105
+#: plinth/modules/storage/forms.py:90
msgid "Directory is not writable by the user."
msgstr ""
-#: plinth/modules/storage/forms.py:110
+#: plinth/modules/storage/forms.py:95
msgid "Directory"
msgstr ""
-#: plinth/modules/storage/forms.py:113
+#: plinth/modules/storage/forms.py:98
msgid "Subdirectory (optional)"
msgstr ""
-#: plinth/modules/storage/forms.py:160
+#: plinth/modules/storage/forms.py:145
msgid "Share"
msgstr ""
-#: plinth/modules/storage/forms.py:168
+#: plinth/modules/storage/forms.py:153
msgid "Other directory (specify below)"
msgstr ""
-#: plinth/modules/storage/templates/storage.html:35
+#: plinth/modules/storage/templates/storage.html:20
msgid "The following storage devices are in use:"
msgstr ""
-#: plinth/modules/storage/templates/storage.html:41
+#: plinth/modules/storage/templates/storage.html:26
msgid "Label"
msgstr ""
-#: plinth/modules/storage/templates/storage.html:42
+#: plinth/modules/storage/templates/storage.html:27
msgid "Mount Point"
msgstr ""
-#: plinth/modules/storage/templates/storage.html:90
+#: plinth/modules/storage/templates/storage.html:75
msgid "Partition Expansion"
msgstr ""
-#: plinth/modules/storage/templates/storage.html:92
+#: plinth/modules/storage/templates/storage.html:77
#, python-format
msgid ""
"There is %(expandable_root_size)s of unallocated space available after your "
@@ -5117,13 +5222,13 @@ msgid ""
"will provide you additional free space to store your files."
msgstr ""
-#: plinth/modules/storage/templates/storage.html:102
-#: plinth/modules/storage/templates/storage_expand.html:39
-#: plinth/modules/storage/views.py:76
+#: plinth/modules/storage/templates/storage.html:87
+#: plinth/modules/storage/templates/storage_expand.html:24
+#: plinth/modules/storage/views.py:58
msgid "Expand Root Partition"
msgstr ""
-#: plinth/modules/storage/templates/storage_expand.html:29
+#: plinth/modules/storage/templates/storage_expand.html:14
#, python-format
msgid ""
"Please backup your data before proceeding. After this operation, "
@@ -5131,39 +5236,30 @@ msgid ""
"root partition."
msgstr ""
-#: plinth/modules/storage/views.py:88
+#: plinth/modules/storage/views.py:70
#, python-brace-format
msgid "Error expanding partition: {exception}"
msgstr ""
-#: plinth/modules/storage/views.py:91
+#: plinth/modules/storage/views.py:73
msgid "Partition expanded successfully."
msgstr ""
-#: plinth/modules/storage/views.py:109
+#: plinth/modules/storage/views.py:91
#, python-brace-format
msgid "{drive_vendor} {drive_model} can be safely unplugged."
msgstr ""
-#: plinth/modules/storage/views.py:113
+#: plinth/modules/storage/views.py:95
msgid "Device can be safely unplugged."
msgstr ""
-#: plinth/modules/storage/views.py:123
+#: plinth/modules/storage/views.py:105
#, python-brace-format
msgid "Error ejecting device: {error_message}"
msgstr ""
-#: plinth/modules/syncthing/__init__.py:40
-#: plinth/modules/syncthing/manifest.py:28
-msgid "Syncthing"
-msgstr ""
-
-#: plinth/modules/syncthing/__init__.py:44
-msgid "File Synchronization"
-msgstr ""
-
-#: plinth/modules/syncthing/__init__.py:47
+#: plinth/modules/syncthing/__init__.py:26
msgid ""
"Syncthing is an application to synchronize files across multiple devices, e."
"g. your desktop computer and mobile phone. Creation, modification, or "
@@ -5171,7 +5267,7 @@ msgid ""
"other devices that also run Syncthing."
msgstr ""
-#: plinth/modules/syncthing/__init__.py:52
+#: plinth/modules/syncthing/__init__.py:31
#, python-brace-format
msgid ""
"Running Syncthing on {box_name} provides an extra synchronization point for "
@@ -5182,19 +5278,20 @@ msgid ""
"{box_name} is only available for users belonging to the \"admin\" group."
msgstr ""
-#: plinth/modules/syncthing/__init__.py:63
+#: plinth/modules/syncthing/__init__.py:40
msgid "Administer Syncthing application"
msgstr ""
-#: plinth/modules/tahoe/__init__.py:43
-msgid "Tahoe-LAFS"
+#: plinth/modules/syncthing/__init__.py:54
+#: plinth/modules/syncthing/manifest.py:13
+msgid "Syncthing"
msgstr ""
-#: plinth/modules/tahoe/__init__.py:47
-msgid "Distributed File Storage"
+#: plinth/modules/syncthing/__init__.py:55
+msgid "File Synchronization"
msgstr ""
-#: plinth/modules/tahoe/__init__.py:134
+#: plinth/modules/tahoe/__init__.py:30
msgid ""
"Tahoe-LAFS is a decentralized secure file storage system. It uses provider "
"independent security to store files over a distributed network of storage "
@@ -5202,7 +5299,7 @@ msgid ""
"remaining nodes."
msgstr ""
-#: plinth/modules/tahoe/__init__.py:139
+#: plinth/modules/tahoe/__init__.py:35
#, python-brace-format
msgid ""
"This {box_name} hosts a storage node and an introducer by default. "
@@ -5210,7 +5307,15 @@ msgid ""
"other storage nodes."
msgstr ""
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:33
+#: plinth/modules/tahoe/__init__.py:66
+msgid "Tahoe-LAFS"
+msgstr ""
+
+#: plinth/modules/tahoe/__init__.py:68
+msgid "Distributed File Storage"
+msgstr ""
+
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:17
#, python-format
msgid ""
"The Tahoe-LAFS server domain is set to %(domain_name)s. Changing the "
@@ -5219,37 +5324,33 @@ msgid ""
"%(domain_name)s:5678\">https://%(domain_name)s:5678."
msgstr ""
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:55
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:39
msgid "Local introducer"
msgstr ""
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:43
#: plinth/modules/tahoe/templates/tahoe-post-setup.html:59
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:75
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:92
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:76
msgid "Pet Name"
msgstr ""
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:72
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:56
msgid "Add new introducer"
msgstr ""
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:83
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:67
msgid "Add"
msgstr ""
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:88
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:72
msgid "Connected introducers"
msgstr ""
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:105
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:89
msgid "Remove"
msgstr ""
-#: plinth/modules/tor/__init__.py:47
-msgid "Tor"
-msgstr ""
-
-#: plinth/modules/tor/__init__.py:52
+#: plinth/modules/tor/__init__.py:33
msgid ""
"Tor is an anonymous communication system. You can learn more about it from "
"the Tor Project website. For "
@@ -5258,76 +5359,80 @@ msgid ""
"\">Tor Browser."
msgstr ""
-#: plinth/modules/tor/__init__.py:83
+#: plinth/modules/tor/__init__.py:55
+msgid "Tor"
+msgstr ""
+
+#: plinth/modules/tor/__init__.py:66
msgid "Tor Onion Service"
msgstr ""
-#: plinth/modules/tor/__init__.py:87
+#: plinth/modules/tor/__init__.py:70
msgid "Tor Socks Proxy"
msgstr ""
-#: plinth/modules/tor/__init__.py:91
+#: plinth/modules/tor/__init__.py:74
msgid "Tor Bridge Relay"
msgstr ""
-#: plinth/modules/tor/__init__.py:112
+#: plinth/modules/tor/__init__.py:95
msgid "Tor relay port available"
msgstr ""
-#: plinth/modules/tor/__init__.py:122
+#: plinth/modules/tor/__init__.py:105
msgid "Obfs3 transport registered"
msgstr ""
-#: plinth/modules/tor/__init__.py:132
+#: plinth/modules/tor/__init__.py:115
msgid "Obfs4 transport registered"
msgstr ""
-#: plinth/modules/tor/__init__.py:225
+#: plinth/modules/tor/__init__.py:208
#, python-brace-format
msgid "Access URL {url} on tcp{kind} via Tor"
msgstr ""
-#: plinth/modules/tor/__init__.py:236
+#: plinth/modules/tor/__init__.py:219
#, python-brace-format
msgid "Confirm Tor usage at {url} on tcp{kind}"
msgstr ""
-#: plinth/modules/tor/forms.py:46
+#: plinth/modules/tor/forms.py:31
msgid ""
"Enter a valid bridge with this format: [transport] IP:ORPort [fingerprint]"
msgstr ""
-#: plinth/modules/tor/forms.py:88
+#: plinth/modules/tor/forms.py:73
msgid "Enable Tor"
msgstr ""
-#: plinth/modules/tor/forms.py:90
+#: plinth/modules/tor/forms.py:75
msgid "Use upstream bridges to connect to Tor network"
msgstr ""
-#: plinth/modules/tor/forms.py:92
+#: plinth/modules/tor/forms.py:77
msgid ""
"When enabled, the bridges configured below will be used to connect to the "
"Tor network. Use this option if your Internet Service Provider (ISP) blocks "
"or censors connections to the Tor Network. This will disable relay modes."
msgstr ""
-#: plinth/modules/tor/forms.py:97
+#: plinth/modules/tor/forms.py:82
msgid "Upstream bridges"
msgstr ""
-#: plinth/modules/tor/forms.py:99
+#: plinth/modules/tor/forms.py:84
msgid ""
"You can get some bridges from https://bridges.torproject.org/ and copy/paste the bridge information "
"here. Currently supported transports are none, obfs3, obfs4 and scamblesuit."
msgstr ""
-#: plinth/modules/tor/forms.py:105
+#: plinth/modules/tor/forms.py:90
msgid "Enable Tor relay"
msgstr ""
-#: plinth/modules/tor/forms.py:106
+#: plinth/modules/tor/forms.py:91
#, python-brace-format
msgid ""
"When enabled, your {box_name} will run a Tor relay and donate bandwidth to "
@@ -5335,22 +5440,22 @@ msgid ""
"download bandwidth."
msgstr ""
-#: plinth/modules/tor/forms.py:111
+#: plinth/modules/tor/forms.py:96
msgid "Enable Tor bridge relay"
msgstr ""
-#: plinth/modules/tor/forms.py:113
+#: plinth/modules/tor/forms.py:98
msgid ""
"When enabled, relay information is published in the Tor bridge database "
"instead of public Tor relay database making it harder to censor this node. "
"This helps others circumvent censorship."
msgstr ""
-#: plinth/modules/tor/forms.py:118
+#: plinth/modules/tor/forms.py:103
msgid "Enable Tor Hidden Service"
msgstr ""
-#: plinth/modules/tor/forms.py:120
+#: plinth/modules/tor/forms.py:105
#, python-brace-format
msgid ""
"A hidden service will allow {box_name} to provide selected services (such as "
@@ -5358,88 +5463,80 @@ msgid ""
"anonymity yet."
msgstr ""
-#: plinth/modules/tor/forms.py:125
+#: plinth/modules/tor/forms.py:110
msgid "Download software packages over Tor"
msgstr ""
-#: plinth/modules/tor/forms.py:126
+#: plinth/modules/tor/forms.py:111
msgid ""
"When enabled, software will be downloaded over the Tor network for "
"installations and upgrades. This adds a degree of privacy and security "
"during software downloads."
msgstr ""
-#: plinth/modules/tor/forms.py:141
+#: plinth/modules/tor/forms.py:126
msgid "Specify at least one upstream bridge to use upstream bridges."
msgstr ""
-#: plinth/modules/tor/manifest.py:29
+#: plinth/modules/tor/manifest.py:14
msgid "Tor Browser"
msgstr ""
-#: plinth/modules/tor/manifest.py:45
+#: plinth/modules/tor/manifest.py:30
msgid "Orbot: Proxy with Tor"
msgstr ""
-#: plinth/modules/tor/templates/tor.html:41
+#: plinth/modules/tor/templates/tor.html:26
msgid "Tor configuration is being updated"
msgstr ""
-#: plinth/modules/tor/templates/tor.html:50
+#: plinth/modules/tor/templates/tor.html:35
msgid "Onion Service"
msgstr ""
-#: plinth/modules/tor/templates/tor.html:52
+#: plinth/modules/tor/templates/tor.html:37
msgid "Ports"
msgstr ""
-#: plinth/modules/tor/templates/tor.html:82
+#: plinth/modules/tor/templates/tor.html:67
msgid "Relay"
msgstr ""
-#: plinth/modules/tor/templates/tor.html:84
+#: plinth/modules/tor/templates/tor.html:69
#, python-format
msgid ""
"If your %(box_name)s is behind a router or firewall, you should make sure "
"the following ports are open, and port-forwarded, if necessary:"
msgstr ""
-#: plinth/modules/tor/templates/tor.html:112
+#: plinth/modules/tor/templates/tor.html:97
msgid "SOCKS"
msgstr ""
-#: plinth/modules/tor/templates/tor.html:115
+#: plinth/modules/tor/templates/tor.html:100
#, python-format
msgid "A Tor SOCKS port is available on your %(box_name)s on TCP port 9050."
msgstr ""
-#: plinth/modules/transmission/__init__.py:41
-#: plinth/modules/transmission/manifest.py:24
-msgid "Transmission"
-msgstr ""
-
-#: plinth/modules/transmission/__init__.py:48
+#: plinth/modules/transmission/__init__.py:27
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/ttrss/__init__.py:43 plinth/modules/ttrss/manifest.py:34
-msgid "Tiny Tiny RSS"
+#: plinth/modules/transmission/__init__.py:48
+#: plinth/modules/transmission/manifest.py:9
+msgid "Transmission"
msgstr ""
-#: plinth/modules/ttrss/__init__.py:47
-msgid "News Feed Reader"
-msgstr ""
-
-#: plinth/modules/ttrss/__init__.py:50
+#: plinth/modules/ttrss/__init__.py:29
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:54
+#: plinth/modules/ttrss/__init__.py:33
#, fuzzy, python-brace-format
#| msgid ""
#| "When enabled, Cockpit will be available from /"
@@ -5454,122 +5551,126 @@ msgstr ""
"\"{users_url}\">katerikoli uporabnik na {box_name}, ki je član skupine "
"skrbnikov."
-#: plinth/modules/ttrss/__init__.py:58
+#: plinth/modules/ttrss/__init__.py:37
msgid ""
"When using a mobile or desktop application for Tiny Tiny RSS, use the URL /tt-rss-app for "
"connecting."
msgstr ""
-#: plinth/modules/ttrss/__init__.py:65
+#: plinth/modules/ttrss/__init__.py:42
msgid "Read and subscribe to news feeds"
msgstr ""
-#: plinth/modules/ttrss/manifest.py:25
+#: plinth/modules/ttrss/__init__.py:56 plinth/modules/ttrss/manifest.py:19
+msgid "Tiny Tiny RSS"
+msgstr ""
+
+#: plinth/modules/ttrss/__init__.py:57
+msgid "News Feed Reader"
+msgstr ""
+
+#: plinth/modules/ttrss/manifest.py:10
msgid "Tiny Tiny RSS (Fork)"
msgstr ""
-#: plinth/modules/upgrades/__init__.py:37 plinth/templates/setup.html:89
-msgid "Update"
-msgstr ""
-
-#: plinth/modules/upgrades/__init__.py:40
+#: plinth/modules/upgrades/__init__.py:23
msgid "Check for and apply the latest software and security updates."
msgstr ""
-#: plinth/modules/upgrades/__init__.py:84
+#: plinth/modules/upgrades/__init__.py:38 plinth/templates/setup.html:74
+msgid "Update"
+msgstr ""
+
+#: plinth/modules/upgrades/__init__.py:71
#, fuzzy
#| msgid "FreedomBox"
msgid "FreedomBox Updated"
msgstr "FreedomBox"
-#: plinth/modules/upgrades/forms.py:28
+#: plinth/modules/upgrades/forms.py:13
msgid "Enable auto-update"
msgstr ""
-#: plinth/modules/upgrades/forms.py:29
+#: plinth/modules/upgrades/forms.py:14
msgid "When enabled, FreedomBox automatically updates once a day."
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades-new-release.html:24
+#: plinth/modules/upgrades/templates/upgrades-new-release.html:9
#, python-format
msgid "%(box_name)s Updated"
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades-new-release.html:28
+#: plinth/modules/upgrades/templates/upgrades-new-release.html:13
#, python-format
msgid ""
"%(box_name)s has been updated to version %(version)s. See the release announcement."
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades-new-release.html:37
-#: plinth/templates/notifications.html:59
+#: plinth/modules/upgrades/templates/upgrades-new-release.html:22
+#: plinth/templates/notifications.html:44
msgid "Dismiss"
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades.html:45
+#: plinth/modules/upgrades/templates/upgrades.html:30
msgid "Update now"
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades.html:54
+#: plinth/modules/upgrades/templates/upgrades.html:39
msgid "Updating..."
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades.html:59
+#: plinth/modules/upgrades/templates/upgrades.html:44
msgid ""
"This may take a long time to complete. During an update, "
"you cannot install apps. Also, this web interface may be temporarily "
"unavailable and show an error. In that case, refresh the page to continue."
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades.html:73
+#: plinth/modules/upgrades/templates/upgrades.html:58
msgid "Toggle recent update logs"
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades_configure.html:26
-#: plinth/modules/upgrades/templates/upgrades_configure.html:27
-#: plinth/modules/upgrades/views.py:107
+#: plinth/modules/upgrades/templates/upgrades_configure.html:11
+#: plinth/modules/upgrades/templates/upgrades_configure.html:12
+#: plinth/modules/upgrades/views.py:89
msgid "Manual update"
msgstr ""
-#: plinth/modules/upgrades/views.py:66
+#: plinth/modules/upgrades/views.py:48
#, python-brace-format
msgid "Error when configuring unattended-upgrades: {error}"
msgstr ""
-#: plinth/modules/upgrades/views.py:70
+#: plinth/modules/upgrades/views.py:52
msgid "Automatic upgrades enabled"
msgstr ""
-#: plinth/modules/upgrades/views.py:73
+#: plinth/modules/upgrades/views.py:55
msgid "Automatic upgrades disabled"
msgstr ""
-#: plinth/modules/upgrades/views.py:75
+#: plinth/modules/upgrades/views.py:57
msgid "Settings unchanged"
msgstr ""
-#: plinth/modules/upgrades/views.py:101
+#: plinth/modules/upgrades/views.py:83
msgid "Upgrade process started."
msgstr ""
-#: plinth/modules/upgrades/views.py:104
+#: plinth/modules/upgrades/views.py:86
msgid "Starting upgrade failed."
msgstr ""
-#: plinth/modules/users/__init__.py:51
-msgid "Users and Groups"
-msgstr ""
-
-#: plinth/modules/users/__init__.py:54
+#: plinth/modules/users/__init__.py:37
msgid ""
"Create and managed user accounts. These accounts serve as centralized "
"authentication mechanism for most apps. Some apps further require a user "
"account to be part of a group to authorize the user to access the app."
msgstr ""
-#: plinth/modules/users/__init__.py:59
+#: plinth/modules/users/__init__.py:42
#, python-brace-format
msgid ""
"Any user may login to {box_name} web interface to see a list of apps "
@@ -5577,35 +5678,39 @@ msgid ""
"group may alter apps or system settings."
msgstr ""
-#: plinth/modules/users/__init__.py:128
+#: plinth/modules/users/__init__.py:64
+msgid "Users and Groups"
+msgstr ""
+
+#: plinth/modules/users/__init__.py:115
#, python-brace-format
msgid "Check LDAP entry \"{search_item}\""
msgstr ""
-#: plinth/modules/users/forms.py:43
+#: plinth/modules/users/forms.py:28
msgid "Access to all services and system settings"
msgstr ""
-#: plinth/modules/users/forms.py:59
+#: plinth/modules/users/forms.py:44
msgid "Username is taken or is reserved."
msgstr ""
-#: plinth/modules/users/forms.py:87
+#: plinth/modules/users/forms.py:72
#, fuzzy
#| msgid "Invalid hostname"
msgid "Enter a valid username."
msgstr "Neveljavno ime gostitelja"
-#: plinth/modules/users/forms.py:93
+#: plinth/modules/users/forms.py:78
msgid ""
"Required. 150 characters or fewer. English letters, digits and @/./-/_ only."
msgstr ""
-#: plinth/modules/users/forms.py:106 plinth/modules/users/forms.py:222
+#: plinth/modules/users/forms.py:91 plinth/modules/users/forms.py:207
msgid "Permissions"
msgstr ""
-#: plinth/modules/users/forms.py:109
+#: plinth/modules/users/forms.py:94
msgid ""
"Select which services should be available to the new user. The user will be "
"able to log in to services that support single sign-on through LDAP, if they "
@@ -5614,187 +5719,182 @@ msgid ""
"SSH and have administrative privileges (sudo)."
msgstr ""
-#: plinth/modules/users/forms.py:148 plinth/modules/users/forms.py:372
+#: plinth/modules/users/forms.py:133 plinth/modules/users/forms.py:357
msgid "Creating LDAP user failed."
msgstr ""
-#: plinth/modules/users/forms.py:159
+#: plinth/modules/users/forms.py:144
#, python-brace-format
msgid "Failed to add new user to {group} group."
msgstr ""
-#: plinth/modules/users/forms.py:173
+#: plinth/modules/users/forms.py:158
msgid "Authorized SSH Keys"
msgstr ""
-#: plinth/modules/users/forms.py:175
+#: plinth/modules/users/forms.py:160
msgid ""
"Setting an SSH public key will allow this user to securely log in to the "
"system without using a password. You may enter multiple keys, one on each "
"line. Blank lines and lines starting with # will be ignored."
msgstr ""
-#: plinth/modules/users/forms.py:259
+#: plinth/modules/users/forms.py:244
msgid "Renaming LDAP user failed."
msgstr ""
-#: plinth/modules/users/forms.py:271
+#: plinth/modules/users/forms.py:256
msgid "Failed to remove user from group."
msgstr ""
-#: plinth/modules/users/forms.py:282
+#: plinth/modules/users/forms.py:267
msgid "Failed to add user to group."
msgstr ""
-#: plinth/modules/users/forms.py:291
+#: plinth/modules/users/forms.py:276
msgid "Unable to set SSH keys."
msgstr ""
-#: plinth/modules/users/forms.py:306
+#: plinth/modules/users/forms.py:291
msgid "Failed to change user status."
msgstr ""
-#: plinth/modules/users/forms.py:314
+#: plinth/modules/users/forms.py:299
msgid "Cannot delete the only administrator in the system."
msgstr ""
-#: plinth/modules/users/forms.py:346
+#: plinth/modules/users/forms.py:331
msgid "Changing LDAP user password failed."
msgstr ""
-#: plinth/modules/users/forms.py:381
+#: plinth/modules/users/forms.py:366
msgid "Failed to add new user to admin group."
msgstr ""
-#: plinth/modules/users/forms.py:398
+#: plinth/modules/users/forms.py:383
msgid "Failed to restrict console access."
msgstr ""
-#: plinth/modules/users/forms.py:410
+#: plinth/modules/users/forms.py:395
msgid "User account created, you are now logged in"
msgstr ""
-#: plinth/modules/users/templates/users_change_password.html:26
+#: plinth/modules/users/templates/users_change_password.html:11
#, python-format
msgid "Change Password for %(username)s"
msgstr ""
-#: plinth/modules/users/templates/users_change_password.html:36
+#: plinth/modules/users/templates/users_change_password.html:21
msgid "Save Password"
msgstr ""
-#: plinth/modules/users/templates/users_create.html:32
-#: plinth/modules/users/templates/users_list.html:42
-#: plinth/modules/users/templates/users_list.html:44
-#: plinth/modules/users/views.py:57
+#: plinth/modules/users/templates/users_create.html:17
+#: plinth/modules/users/templates/users_list.html:27
+#: plinth/modules/users/templates/users_list.html:29
+#: plinth/modules/users/views.py:42
msgid "Create User"
msgstr ""
-#: plinth/modules/users/templates/users_delete.html:26
-#: plinth/modules/users/views.py:139
+#: plinth/modules/users/templates/users_delete.html:11
+#: plinth/modules/users/views.py:121
msgid "Delete User"
msgstr ""
-#: plinth/modules/users/templates/users_delete.html:29
+#: plinth/modules/users/templates/users_delete.html:14
#, python-format
msgid "Delete user %(username)s permanently?"
msgstr ""
-#: plinth/modules/users/templates/users_delete.html:38
+#: plinth/modules/users/templates/users_delete.html:23
#, python-format
msgid "Delete %(username)s"
msgstr ""
-#: plinth/modules/users/templates/users_firstboot.html:26
+#: plinth/modules/users/templates/users_firstboot.html:11
msgid "Administrator Account"
msgstr ""
-#: plinth/modules/users/templates/users_firstboot.html:29
+#: plinth/modules/users/templates/users_firstboot.html:14
msgid ""
"Choose a username and password to access this web interface. The password "
"can be changed later. This user will be granted administrative privileges. "
"Other users can be added later."
msgstr ""
-#: plinth/modules/users/templates/users_firstboot.html:42
+#: plinth/modules/users/templates/users_firstboot.html:27
msgid "Create Account"
msgstr ""
-#: plinth/modules/users/templates/users_list.html:38
-#: plinth/modules/users/views.py:74
+#: plinth/modules/users/templates/users_list.html:23
+#: plinth/modules/users/views.py:59
msgid "Users"
msgstr ""
-#: plinth/modules/users/templates/users_list.html:57
+#: plinth/modules/users/templates/users_list.html:42
#, python-format
msgid "Delete user %(username)s"
msgstr ""
-#: plinth/modules/users/templates/users_list.html:65
+#: plinth/modules/users/templates/users_list.html:50
#, python-format
msgid "Edit user %(username)s"
msgstr ""
-#: plinth/modules/users/templates/users_update.html:30
+#: plinth/modules/users/templates/users_update.html:15
#, python-format
msgid ""
"Use the change password form to "
"change the password."
msgstr ""
-#: plinth/modules/users/templates/users_update.html:42
-#: plinth/templates/language-selection.html:32
+#: plinth/modules/users/templates/users_update.html:27
+#: plinth/templates/language-selection.html:17
msgid "Save Changes"
msgstr ""
-#: plinth/modules/users/views.py:55
+#: plinth/modules/users/views.py:40
#, python-format
msgid "User %(username)s created."
msgstr ""
-#: plinth/modules/users/views.py:93
+#: plinth/modules/users/views.py:75
#, python-format
msgid "User %(username)s updated."
msgstr ""
-#: plinth/modules/users/views.py:94
+#: plinth/modules/users/views.py:76
msgid "Edit User"
msgstr ""
-#: plinth/modules/users/views.py:149
+#: plinth/modules/users/views.py:131
#, python-brace-format
msgid "User {user} deleted."
msgstr ""
-#: plinth/modules/users/views.py:156
+#: plinth/modules/users/views.py:138
msgid "Deleting LDAP user failed."
msgstr ""
-#: plinth/modules/users/views.py:165
+#: plinth/modules/users/views.py:147
msgid "Change Password"
msgstr ""
-#: plinth/modules/users/views.py:166
+#: plinth/modules/users/views.py:148
msgid "Password changed successfully."
msgstr ""
-#: plinth/modules/wireguard/__init__.py:38
-#: plinth/modules/wireguard/manifest.py:29
-msgid "WireGuard"
-msgstr ""
-
-#: plinth/modules/wireguard/__init__.py:43
+#: plinth/modules/wireguard/__init__.py:24
msgid "WireGuard is a fast, modern, secure VPN tunnel."
msgstr ""
-#: plinth/modules/wireguard/__init__.py:45
+#: plinth/modules/wireguard/__init__.py:26
#, python-brace-format
msgid ""
"It can be used to connect to a VPN provider which supports WireGuard, and to "
"route all outgoing traffic from {box_name} through the VPN."
msgstr ""
-#: plinth/modules/wireguard/__init__.py:49
+#: plinth/modules/wireguard/__init__.py:30
#, python-brace-format
msgid ""
"A second use case is to connect a mobile device to {box_name} while "
@@ -5802,61 +5902,66 @@ msgid ""
"securely relayed through {box_name}."
msgstr ""
-#: plinth/modules/wireguard/forms.py:47
+#: plinth/modules/wireguard/__init__.py:52
+#: plinth/modules/wireguard/manifest.py:14
+msgid "WireGuard"
+msgstr ""
+
+#: plinth/modules/wireguard/forms.py:32
#, fuzzy
#| msgid "Invalid hostname"
msgid "Invalid key."
msgstr "Neveljavno ime gostitelja"
-#: plinth/modules/wireguard/forms.py:76
-#: plinth/modules/wireguard/templates/wireguard.html:32
-#: plinth/modules/wireguard/templates/wireguard.html:89
-#: plinth/modules/wireguard/templates/wireguard_delete_server.html:38
+#: plinth/modules/wireguard/forms.py:61
+#: plinth/modules/wireguard/templates/wireguard.html:17
+#: plinth/modules/wireguard/templates/wireguard.html:74
+#: plinth/modules/wireguard/templates/wireguard_delete_server.html:23
msgid "Public Key"
msgstr ""
-#: plinth/modules/wireguard/forms.py:77
+#: plinth/modules/wireguard/forms.py:62
msgid ""
"Public key of the peer. Example: "
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs= ."
msgstr ""
-#: plinth/modules/wireguard/forms.py:85
+#: plinth/modules/wireguard/forms.py:70
msgid "Endpoint of the server"
msgstr ""
-#: plinth/modules/wireguard/forms.py:86
+#: plinth/modules/wireguard/forms.py:71
msgid ""
"Domain name and port in the form \"ip:port\". Example: demo.wireguard."
"com:12912 ."
msgstr ""
-#: plinth/modules/wireguard/forms.py:91
+#: plinth/modules/wireguard/forms.py:76
msgid "Public key of the server"
msgstr ""
-#: plinth/modules/wireguard/forms.py:92
+#: plinth/modules/wireguard/forms.py:77
msgid ""
"Provided by the server operator, a long string of characters. Example: "
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs= ."
msgstr ""
-#: plinth/modules/wireguard/forms.py:97
+#: plinth/modules/wireguard/forms.py:82
msgid "Client IP address provided by server"
msgstr ""
-#: plinth/modules/wireguard/forms.py:98
+#: plinth/modules/wireguard/forms.py:83
msgid ""
"IP address assigned to this machine on the VPN after connecting to the "
"endpoint. This value is usually provided by the server operator. Example: "
"192.168.0.10."
msgstr ""
-#: plinth/modules/wireguard/forms.py:104
+#: plinth/modules/wireguard/forms.py:89
msgid "Private key of this machine"
msgstr ""
-#: plinth/modules/wireguard/forms.py:105
+#: plinth/modules/wireguard/forms.py:90
msgid ""
"Optional. New public/private keys are generated if left blank. Public key "
"can then be provided to the server. This is the recommended way. However, "
@@ -5864,169 +5969,169 @@ msgid ""
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs= ."
msgstr ""
-#: plinth/modules/wireguard/forms.py:113
+#: plinth/modules/wireguard/forms.py:98
msgid "Pre-shared key"
msgstr ""
-#: plinth/modules/wireguard/forms.py:114
+#: plinth/modules/wireguard/forms.py:99
msgid ""
"Optional. A shared secret key provided by the server to add an additional "
"layer of security. Fill in only if provided. Example: "
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs=."
msgstr ""
-#: plinth/modules/wireguard/forms.py:120
+#: plinth/modules/wireguard/forms.py:105
msgid "Use this connection to send all outgoing traffic"
msgstr ""
-#: plinth/modules/wireguard/forms.py:122
+#: plinth/modules/wireguard/forms.py:107
msgid "Typically checked for a VPN service though which all traffic is sent."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:25
+#: plinth/modules/wireguard/templates/wireguard.html:10
#, fuzzy
#| msgid "Domain Name Server"
msgid "As a Server"
msgstr "Strežnik z imenom domene"
-#: plinth/modules/wireguard/templates/wireguard.html:27
+#: plinth/modules/wireguard/templates/wireguard.html:12
msgid "Peers allowed to connect to this server:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:33
+#: plinth/modules/wireguard/templates/wireguard.html:18
msgid "Allowed IPs"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:34
-#: plinth/modules/wireguard/templates/wireguard.html:90
+#: plinth/modules/wireguard/templates/wireguard.html:19
+#: plinth/modules/wireguard/templates/wireguard.html:75
msgid "Last Connected Time"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:53
+#: plinth/modules/wireguard/templates/wireguard.html:38
#, python-format
msgid "No peers configured to connect to this %(box_name)s yet."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:62
+#: plinth/modules/wireguard/templates/wireguard.html:47
#, python-format
msgid "Public key for this %(box_name)s:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:68
+#: plinth/modules/wireguard/templates/wireguard.html:53
msgid "Not configured yet."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:72
+#: plinth/modules/wireguard/templates/wireguard.html:57
msgid "Add a new peer"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:76
-#: plinth/modules/wireguard/views.py:69
+#: plinth/modules/wireguard/templates/wireguard.html:61
+#: plinth/modules/wireguard/views.py:51
msgid "Add Allowed Client"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:79
+#: plinth/modules/wireguard/templates/wireguard.html:64
msgid "As a Client"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:81
+#: plinth/modules/wireguard/templates/wireguard.html:66
#, python-format
msgid "Servers that %(box_name)s will connect to:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:88
-#: plinth/modules/wireguard/templates/wireguard_delete_server.html:34
+#: plinth/modules/wireguard/templates/wireguard.html:73
+#: plinth/modules/wireguard/templates/wireguard_delete_server.html:19
msgid "Endpoint"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:111
+#: plinth/modules/wireguard/templates/wireguard.html:96
msgid "No connections to remote servers are configured yet."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:119
+#: plinth/modules/wireguard/templates/wireguard.html:104
msgid "Add a new server"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:123
-#: plinth/modules/wireguard/views.py:178
+#: plinth/modules/wireguard/templates/wireguard.html:108
+#: plinth/modules/wireguard/views.py:160
#, fuzzy
#| msgid "Connection refused"
msgid "Add Connection to Server"
msgstr "Povezava je zavrnjena"
-#: plinth/modules/wireguard/templates/wireguard_add_client.html:34
+#: plinth/modules/wireguard/templates/wireguard_add_client.html:19
msgid "Add Client"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_delete_client.html:29
+#: plinth/modules/wireguard/templates/wireguard_delete_client.html:14
#, fuzzy
#| msgid "Are you sure that you want to remove this repository?"
msgid "Are you sure that you want to delete this client?"
msgstr "Ali ste prepričani, da želite odstraniti to skladišče?"
-#: plinth/modules/wireguard/templates/wireguard_delete_server.html:29
+#: plinth/modules/wireguard/templates/wireguard_delete_server.html:14
#, fuzzy
#| msgid "Are you sure that you want to remove this repository?"
msgid "Are you sure that you want to delete this server?"
msgstr "Ali ste prepričani, da želite odstraniti to skladišče?"
-#: plinth/modules/wireguard/templates/wireguard_edit_client.html:34
+#: plinth/modules/wireguard/templates/wireguard_edit_client.html:19
msgid "Update Client"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_edit_server.html:34
+#: plinth/modules/wireguard/templates/wireguard_edit_server.html:19
#, fuzzy
#| msgid "Connection refused"
msgid "Update Connection"
msgstr "Povezava je zavrnjena"
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:27
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:12
#, python-format
msgid ""
"%(box_name)s will allow this client to connect to it. Ensure that the client "
"is configured with the following information."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:35
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:20
msgid "Client public key:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:39
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:24
msgid "IP address to use for client:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:43
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:46
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:28
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:31
msgid "Pre-shared key:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:47
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:32
#, fuzzy
#| msgid "Server Administration"
msgid "Server endpoints:"
msgstr "Skrbništvo strežnika"
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:55
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:42
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:40
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:27
msgid "Server public key:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:65
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:64
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:50
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:49
msgid "Data transmitted:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:69
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:68
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:54
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:53
msgid "Data received:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:73
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:72
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:58
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:57
msgid "Latest handshake:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:29
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:14
#, python-format
msgid ""
"%(box_name)s will attempt to reach a WireGuard server with the following "
@@ -6034,151 +6139,151 @@ msgid ""
"public key and IP address."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:38
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:23
#, fuzzy
#| msgid "Server Administration"
msgid "Server endpoint:"
msgstr "Skrbništvo strežnika"
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:50
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:35
msgid "Public key of this machine:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:54
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:39
msgid "IP address of this machine:"
msgstr ""
-#: plinth/modules/wireguard/views.py:64
+#: plinth/modules/wireguard/views.py:46
msgid "Added new client."
msgstr ""
-#: plinth/modules/wireguard/views.py:79 plinth/modules/wireguard/views.py:138
+#: plinth/modules/wireguard/views.py:61 plinth/modules/wireguard/views.py:120
#, fuzzy
#| msgid "Create remote backup repository"
msgid "Client with public key already exists"
msgstr "Ustvari oddaljeno skladišče za rezervne kopije"
-#: plinth/modules/wireguard/views.py:92
+#: plinth/modules/wireguard/views.py:74
msgid "Allowed Client"
msgstr ""
-#: plinth/modules/wireguard/views.py:114
+#: plinth/modules/wireguard/views.py:96
msgid "Updated client."
msgstr ""
-#: plinth/modules/wireguard/views.py:119
+#: plinth/modules/wireguard/views.py:101
msgid "Modify Client"
msgstr ""
-#: plinth/modules/wireguard/views.py:152
+#: plinth/modules/wireguard/views.py:134
msgid "Delete Allowed Client"
msgstr ""
-#: plinth/modules/wireguard/views.py:161
+#: plinth/modules/wireguard/views.py:143
#, fuzzy
#| msgid "Archive deleted."
msgid "Client deleted."
msgstr "Arhiv je izbrisan."
-#: plinth/modules/wireguard/views.py:163
+#: plinth/modules/wireguard/views.py:145
#, fuzzy
#| msgid "Repository not found"
msgid "Client not found"
msgstr "Ne najdem skladišča"
-#: plinth/modules/wireguard/views.py:173
+#: plinth/modules/wireguard/views.py:155
#, fuzzy
#| msgid "Added new repository."
msgid "Added new server."
msgstr "Dodano je novo skladišče."
-#: plinth/modules/wireguard/views.py:194
+#: plinth/modules/wireguard/views.py:176
#, fuzzy
#| msgid "Connection refused"
msgid "Connection to Server"
msgstr "Povezava je zavrnjena"
-#: plinth/modules/wireguard/views.py:212
+#: plinth/modules/wireguard/views.py:194
msgid "Updated server."
msgstr ""
-#: plinth/modules/wireguard/views.py:217
+#: plinth/modules/wireguard/views.py:199
#, fuzzy
#| msgid "Error installing application: {error}"
msgid "Modify Connection to Server"
msgstr "Napaka ob nameščanju aplikacije: {error}"
-#: plinth/modules/wireguard/views.py:254
+#: plinth/modules/wireguard/views.py:236
#, fuzzy
#| msgid "Error installing application: {error}"
msgid "Delete Connection to Server"
msgstr "Napaka ob nameščanju aplikacije: {error}"
-#: plinth/modules/wireguard/views.py:274
+#: plinth/modules/wireguard/views.py:256
#, fuzzy
#| msgid "Archive deleted."
msgid "Server deleted."
msgstr "Arhiv je izbrisan."
-#: plinth/network.py:42
+#: plinth/network.py:27
msgid "PPPoE"
msgstr ""
-#: plinth/network.py:43
+#: plinth/network.py:28
msgid "Generic"
msgstr ""
-#: plinth/package.py:137
+#: plinth/package.py:122
msgid "Error during installation"
msgstr ""
-#: plinth/package.py:159
+#: plinth/package.py:144
msgid "installing"
msgstr ""
-#: plinth/package.py:161
+#: plinth/package.py:146
msgid "downloading"
msgstr ""
-#: plinth/package.py:163
+#: plinth/package.py:148
msgid "media change"
msgstr ""
-#: plinth/package.py:165
+#: plinth/package.py:150
#, python-brace-format
msgid "configuration file: {file}"
msgstr ""
-#: plinth/templates/403.html:25
+#: plinth/templates/403.html:10
msgid "403 Forbidden"
msgstr ""
-#: plinth/templates/403.html:29
+#: plinth/templates/403.html:14
#, python-format
msgid "You don't have permission to access %(request_path)s on this server."
msgstr ""
-#: plinth/templates/404.html:25
+#: plinth/templates/404.html:10
msgid "404"
msgstr ""
-#: plinth/templates/404.html:28
+#: plinth/templates/404.html:13
#, python-format
msgid "Requested page %(request_path)s was not found."
msgstr ""
-#: plinth/templates/404.html:34
+#: plinth/templates/404.html:19
msgid ""
"If you believe this missing page should exist, please file a bug at the "
"FreedomBox Service (Plinth) project issue tracker."
msgstr ""
-#: plinth/templates/500.html:25
+#: plinth/templates/500.html:10
msgid "500"
msgstr ""
-#: plinth/templates/500.html:29
+#: plinth/templates/500.html:14
#, python-format
msgid ""
"This is an internal error and not something you caused or can fix. Please "
@@ -6187,137 +6292,137 @@ msgid ""
"href=\"%(status_log_url)s\">status log to the bug report."
msgstr ""
-#: plinth/templates/app.html:47
+#: plinth/templates/app-header.html:22
+msgid "Installation"
+msgstr ""
+
+#: plinth/templates/app.html:32
#, python-format
msgid "Service %(service_name)s is running."
msgstr ""
-#: plinth/templates/app.html:52
+#: plinth/templates/app.html:37
#, python-format
msgid "Service %(service_name)s is not running."
msgstr ""
-#: plinth/templates/base.html:50
+#: plinth/templates/base.html:35
#, python-format
msgid "Core functionality and web interface for %(box_name)s"
msgstr ""
-#: plinth/templates/base.html:96
+#: plinth/templates/base.html:81
msgid "Toggle navigation"
msgstr ""
-#: plinth/templates/base.html:120 plinth/templates/base.html:123
+#: plinth/templates/base.html:105 plinth/templates/base.html:108
msgid "Home"
msgstr ""
-#: plinth/templates/base.html:128 plinth/templates/base.html:132
+#: plinth/templates/base.html:113 plinth/templates/base.html:117
msgid "Apps"
msgstr ""
-#: plinth/templates/base.html:137 plinth/templates/base.html:141
+#: plinth/templates/base.html:122 plinth/templates/base.html:126
msgid "System"
msgstr ""
-#: plinth/templates/base.html:173 plinth/templates/base.html:174
+#: plinth/templates/base.html:158 plinth/templates/base.html:159
msgid "Change password"
msgstr ""
-#: plinth/templates/base.html:181 plinth/templates/base.html:182
+#: plinth/templates/base.html:166 plinth/templates/base.html:167
msgid "Restart"
msgstr ""
-#: plinth/templates/base.html:187 plinth/templates/base.html:188
+#: plinth/templates/base.html:172 plinth/templates/base.html:173
msgid "Shut down"
msgstr ""
-#: plinth/templates/base.html:195 plinth/templates/base.html:196
-#: plinth/templates/base.html:220 plinth/templates/base.html:222
+#: plinth/templates/base.html:180 plinth/templates/base.html:181
+#: plinth/templates/base.html:205 plinth/templates/base.html:207
msgid "Log out"
msgstr ""
-#: plinth/templates/base.html:204 plinth/templates/base.html:207
+#: plinth/templates/base.html:189 plinth/templates/base.html:192
msgid "Select language"
msgstr ""
-#: plinth/templates/base.html:212 plinth/templates/base.html:214
+#: plinth/templates/base.html:197 plinth/templates/base.html:199
msgid "Log in"
msgstr ""
-#: plinth/templates/clients.html:32
+#: plinth/templates/clients.html:17
msgid "Web"
msgstr ""
-#: plinth/templates/clients.html:57
+#: plinth/templates/clients.html:42
msgid "Desktop"
msgstr ""
-#: plinth/templates/clients.html:68
+#: plinth/templates/clients.html:53
msgid "GNU/Linux"
msgstr ""
-#: plinth/templates/clients.html:70
+#: plinth/templates/clients.html:55
msgid "Windows"
msgstr ""
-#: plinth/templates/clients.html:72
+#: plinth/templates/clients.html:57
msgid "macOS"
msgstr ""
-#: plinth/templates/clients.html:88
+#: plinth/templates/clients.html:73
msgid "Mobile"
msgstr ""
-#: plinth/templates/clients.html:99
+#: plinth/templates/clients.html:84
msgid "Play Store"
msgstr ""
-#: plinth/templates/clients.html:101
+#: plinth/templates/clients.html:86
msgid "F-Droid"
msgstr ""
-#: plinth/templates/clients.html:103
+#: plinth/templates/clients.html:88
msgid "App Store"
msgstr ""
-#: plinth/templates/clients.html:119
+#: plinth/templates/clients.html:104
msgid "Package"
msgstr ""
-#: plinth/templates/clients.html:126
+#: plinth/templates/clients.html:111
msgid "Debian:"
msgstr ""
-#: plinth/templates/clients.html:129
+#: plinth/templates/clients.html:114
msgid "Homebrew:"
msgstr ""
-#: plinth/templates/clients.html:132
+#: plinth/templates/clients.html:117
msgid "RPM:"
msgstr ""
-#: plinth/templates/first_setup.html:39
+#: plinth/templates/first_setup.html:24
#, python-format
msgid ""
"Please wait for %(box_name)s to finish installation. You can start using "
"your %(box_name)s once it is done."
msgstr ""
-#: plinth/templates/header.html:36
-msgid "Installation"
-msgstr ""
-
-#: plinth/templates/index.html:37
+#: plinth/templates/index.html:22
#, python-format
msgid ""
"Enable some applications to add shortcuts to "
"this page."
msgstr ""
-#: plinth/templates/index.html:59
+#: plinth/templates/index.html:44
msgid "Configure »"
msgstr ""
-#: plinth/templates/index.html:115
+#: plinth/templates/index.html:100
#, python-format
msgid ""
"%(box_name)s, a Debian pure blend, is a 100%% free software self-hosting web "
@@ -6325,7 +6430,7 @@ msgid ""
"communication tools respecting your privacy and data ownership."
msgstr ""
-#: plinth/templates/index.html:124
+#: plinth/templates/index.html:109
#, python-format
msgid ""
"This portal is a part of the %(box_name)s web interface. %(box_name)s is "
@@ -6333,55 +6438,55 @@ msgid ""
"Version 3 or later."
msgstr ""
-#: plinth/templates/index.html:144
+#: plinth/templates/index.html:129
msgid "Homepage"
msgstr ""
-#: plinth/templates/index.html:147
+#: plinth/templates/index.html:132
msgid "Source Code"
msgstr ""
-#: plinth/templates/index.html:150
+#: plinth/templates/index.html:135
msgid "Donate"
msgstr ""
-#: plinth/templates/index.html:154
+#: plinth/templates/index.html:139
msgid "FreedomBox Foundation"
msgstr ""
-#: plinth/templates/index.html:161
+#: plinth/templates/index.html:146
msgid "IRC Chatroom"
msgstr ""
-#: plinth/templates/index.html:166
+#: plinth/templates/index.html:151
msgid "Mailing list"
msgstr ""
-#: plinth/templates/internal-zone.html:26
+#: plinth/templates/internal-zone.html:11
#, python-format
msgid "%(service_name)s is available only on internal networks."
msgstr ""
-#: plinth/templates/internal-zone.html:32
+#: plinth/templates/internal-zone.html:17
msgid "Currently there are no network interfaces configured as internal."
msgstr ""
-#: plinth/templates/internal-zone.html:34
+#: plinth/templates/internal-zone.html:19
#, python-format
msgid ""
"Currently the following network interfaces are configured as internal: "
"%(interface_list)s"
msgstr ""
-#: plinth/templates/notifications-dropdown.html:26
+#: plinth/templates/notifications-dropdown.html:11
msgid "Notifications"
msgstr ""
-#: plinth/templates/port-forwarding-info.html:23
+#: plinth/templates/port-forwarding-info.html:8
msgid "Port Forwarding"
msgstr ""
-#: plinth/templates/port-forwarding-info.html:26
+#: plinth/templates/port-forwarding-info.html:11
#, python-format
msgid ""
"If your FreedomBox is behind a router, you will need to set up port "
@@ -6389,63 +6494,63 @@ msgid ""
"%(service_name)s:"
msgstr ""
-#: plinth/templates/setup.html:51
+#: plinth/templates/setup.html:36
msgid "Install this application?"
msgstr ""
-#: plinth/templates/setup.html:55
+#: plinth/templates/setup.html:40
msgid "This application needs an update. Update now?"
msgstr ""
-#: plinth/templates/setup.html:66
+#: plinth/templates/setup.html:51
msgid ""
"Another installation or upgrade is already running. Please wait for a few "
"moments before trying again."
msgstr ""
-#: plinth/templates/setup.html:73
+#: plinth/templates/setup.html:58
msgid "This application is currently not available in your distribution."
msgstr ""
-#: plinth/templates/setup.html:87
+#: plinth/templates/setup.html:72
msgid "Install"
msgstr ""
-#: plinth/templates/setup.html:98
+#: plinth/templates/setup.html:83
msgid "Performing pre-install operation"
msgstr ""
-#: plinth/templates/setup.html:102
+#: plinth/templates/setup.html:87
msgid "Performing post-install operation"
msgstr ""
-#: plinth/templates/setup.html:107
+#: plinth/templates/setup.html:92
#, python-format
msgid "Installing %(package_names)s: %(status)s"
msgstr ""
-#: plinth/templates/setup.html:117
+#: plinth/templates/setup.html:102
#, python-format
msgid "%(percentage)s%% complete"
msgstr ""
-#: plinth/templates/toolbar.html:38
+#: plinth/templates/toolbar.html:23
msgid "Launch web client"
msgstr ""
-#: plinth/templates/toolbar.html:47
+#: plinth/templates/toolbar.html:32
msgid "Client Apps"
msgstr ""
-#: plinth/views.py:179
+#: plinth/views.py:189
msgid "Application enabled"
msgstr ""
-#: plinth/views.py:182
+#: plinth/views.py:192
msgid "Application disabled"
msgstr ""
-#: plinth/web_framework.py:190
+#: plinth/web_framework.py:107
msgid "Gujarati"
msgstr ""
diff --git a/plinth/locale/sv/LC_MESSAGES/django.po b/plinth/locale/sv/LC_MESSAGES/django.po
index 6fbb188aa..f3a335fef 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: 2020-02-14 21:26+0200\n"
+"POT-Creation-Date: 2020-02-24 19:12-0500\n"
"PO-Revision-Date: 2020-02-24 21:32+0000\n"
"Last-Translator: Michael Breidenbach This means that devices on the Internet can reach you when you are " +"connected to the Internet. Every time you connect to the Internet with your " +"Internet Service Provider (ISP), you may get a different IP address, " +"especially after some offline time. Many ISPs offer this type of " +"connectivity. If you have a public IP address but are unsure if it changes " +"over time or not, it is safer to choose this option.
" +msgstr "" + #: plinth/modules/networks/forms.py:313 +#, python-brace-format +msgid "" +"I have a public IP address that does not change overtime (recommended)This means that devices on the Internet can reach you " +"when you are connected to the Internet. Every time you connect to the " +"Internet with your Internet Service Provider (ISP), you always get the same " +"IP address. This is the most trouble-free setup for many {box_name} services " +"but very few ISPs offer this. You may be able to get this service from your " +"ISP by making an additional payment.
" +msgstr "" + +#: plinth/modules/networks/forms.py:326 +#, python-brace-format +msgid "" +"I dont have a public IP addressThis means that " +"devices on the Internet can not reach you when you are connected to " +"the Internet. Every time you connect to the Internet with your Internet " +"Service Provider (ISP), you get an IP address that is only relevant for " +"local networks. Many ISPs offer this type of connectivity. This is the most " +"troublesome situation for hosting services at home. {box_name} provides many " +"workaround solutions but each solution has some limitations.
" +msgstr "" + +#: plinth/modules/networks/forms.py:351 msgid "Preferred router configuration" msgstr "Önskad routerkonfiguration" -#: plinth/modules/networks/forms.py:318 -#, python-brace-format +#: plinth/modules/networks/forms.py:356 +#, fuzzy, python-brace-format +#| msgid "" +#| "Use DMZ feature to forward all trafficMost " +#| "routers provide a configuration setting called DMZ. This will allow the " +#| "router to forward all incoming traffic from the internet to a single IP " +#| "address such as the {box_name}'s address. First remember to configure a " +#| "static local IP address for your {box_name} in your router's " +#| "configuration.
" msgid "" -"Use DMZ feature to forward all trafficMost routers " -"provide a configuration setting called DMZ. This will allow the router to " -"forward all incoming traffic from the internet to a single IP address such " -"as the {box_name}'s address. First remember to configure a static local IP " -"address for your {box_name} in your router's configuration.
" +"Use DMZ feature to forward all traffic (recommended)Most routers provide a configuration setting called DMZ. This will allow " +"the router to forward all incoming traffic from the Internet to a single IP " +"address such as the {box_name}'s IP address. First remember to configure a " +"static local IP address for your {box_name} in your router's configuration." +"p>" msgstr "" "Använd DMZ-funktionen för att vidarebefordra all trafik
De flesta routrar tillhandahåller en konfigurationsinställning som kallas " @@ -3502,10 +3580,19 @@ msgstr "" "adressen. Kom först ihåg att konfigurera en statisk lokal IP-adress för din " "{box_name} i routerns configuration.
" -#: plinth/modules/networks/forms.py:332 -#, python-brace-format +#: plinth/modules/networks/forms.py:368 +#, fuzzy, python-brace-format +#| msgid "" +#| "Forward Specific Traffic as needed by each applicationYou may alternatively choose to forward only specific traffic to " +#| "your {box_name}. This is ideal if you have other servers like {box_name} " +#| "in your network or if your router does not support DMZ feature. All " +#| "applications that provide a web interface need you to forward traffic " +#| "from ports 80 and 443 to work. Each of the other applications will " +#| "suggest which port(s) need to be forwarded for that application to work." +#| "p>" msgid "" -"Forward Specific Traffic as needed by each application
You may alternatively choose to forward only specific traffic to your " "{box_name}. This is ideal if you have other servers like {box_name} in your " "network or if your router does not support DMZ feature. All applications " @@ -3522,9 +3609,15 @@ msgstr "" "ansökningarna kommer att föreslå vilka portar som måste vidarebefordras för " "att programmet ska fungera.
" -#: plinth/modules/networks/forms.py:349 +#: plinth/modules/networks/forms.py:382 +#, fuzzy +#| msgid "" +#| "Router is currently unconfiguredChoose this if " +#| "you have not configured or are unable to configure the router currently " +#| "and wish to be reminded later. Some of the other configuration steps may " +#| "fail.
" msgid "" -"Router is currently unconfiguredChoose this if you " +"Router is currently unconfigured
Choose this if you " "have not configured or are unable to configure the router currently and wish " "to be reminded later. Some of the other configuration steps may fail.
" msgstr "" @@ -3533,257 +3626,263 @@ msgstr "" "och vill bli påmind senare. Vissa av de andra konfigurationsstegen kan " "misslyckas." -#: plinth/modules/networks/networks.py:43 +#: plinth/modules/networks/networks.py:32 msgid "Network Connections" msgstr "Nätverksanslutningar" -#: plinth/modules/networks/networks.py:59 +#: plinth/modules/networks/networks.py:46 msgid "Cannot show connection: Connection not found." msgstr "Kan inte visa anslutning: Ingen anslutning hittades." -#: plinth/modules/networks/networks.py:94 +#: plinth/modules/networks/networks.py:81 msgid "Connection Information" msgstr "Anslutningsinformation" -#: plinth/modules/networks/networks.py:108 +#: plinth/modules/networks/networks.py:95 msgid "Cannot edit connection: Connection not found." msgstr "Kan inte redigera anslutning: Ingen anslutning hittades." -#: plinth/modules/networks/networks.py:114 +#: plinth/modules/networks/networks.py:101 msgid "This type of connection is not yet understood." msgstr "Denna typ av anslutning är inte förstådd ännu." -#: plinth/modules/networks/networks.py:136 -#: plinth/modules/networks/networks.py:220 -#: plinth/modules/networks/templates/connections_edit.html:35 +#: plinth/modules/networks/networks.py:123 +#: plinth/modules/networks/networks.py:207 +#: plinth/modules/networks/templates/connections_edit.html:20 msgid "Edit Connection" msgstr "Redigera Anslutning" -#: plinth/modules/networks/networks.py:232 +#: plinth/modules/networks/networks.py:219 #, python-brace-format msgid "Activated connection {name}." msgstr "Aktiverad anslutning {name}." -#: plinth/modules/networks/networks.py:236 +#: plinth/modules/networks/networks.py:223 msgid "Failed to activate connection: Connection not found." msgstr "Det gick inte att aktivera anslutning: Ingen anslutning hittades." -#: plinth/modules/networks/networks.py:242 +#: plinth/modules/networks/networks.py:229 #, python-brace-format msgid "Failed to activate connection {name}: No suitable device is available." msgstr "" "Det gick inte att aktivera anslutningen {name}: Ingen lämplig enhet är " "tillgänglig." -#: plinth/modules/networks/networks.py:255 +#: plinth/modules/networks/networks.py:242 #, python-brace-format msgid "Deactivated connection {name}." msgstr "Inaktiverade anslutning {name}." -#: plinth/modules/networks/networks.py:259 +#: plinth/modules/networks/networks.py:246 msgid "Failed to de-activate connection: Connection not found." msgstr "Kunde inte de-aktivera anslutning: Anslutning hittades inte." -#: plinth/modules/networks/networks.py:269 -#: plinth/modules/networks/templates/connections_list.html:62 -#: plinth/modules/networks/templates/connections_list.html:64 +#: plinth/modules/networks/networks.py:256 +#: plinth/modules/networks/templates/connections_list.html:12 +#: plinth/modules/networks/templates/connections_list.html:14 msgid "Nearby Wi-Fi Networks" msgstr "Wi-Fi-nätverk i närheten" -#: plinth/modules/networks/networks.py:293 -#: plinth/modules/networks/templates/connections_list.html:67 -#: plinth/modules/networks/templates/connections_list.html:69 -#: plinth/modules/wireguard/templates/wireguard_add_server.html:34 +#: plinth/modules/networks/networks.py:280 +#: plinth/modules/networks/templates/connections_list.html:17 +#: plinth/modules/networks/templates/connections_list.html:19 +#: plinth/modules/wireguard/templates/wireguard_add_server.html:19 msgid "Add Connection" msgstr "Lägg till Anslutning" -#: plinth/modules/networks/networks.py:311 +#: plinth/modules/networks/networks.py:298 msgid "Adding New Generic Connection" msgstr "Lägga till ny generiska anslutning" -#: plinth/modules/networks/networks.py:329 +#: plinth/modules/networks/networks.py:316 msgid "Adding New Ethernet Connection" msgstr "Lägg Till Ny Ethernet-Anslutning" -#: plinth/modules/networks/networks.py:347 +#: plinth/modules/networks/networks.py:334 msgid "Adding New PPPoE Connection" msgstr "Lägg Till Ny PPPoE-Anslutning" -#: plinth/modules/networks/networks.py:382 +#: plinth/modules/networks/networks.py:369 msgid "Adding New Wi-Fi Connection" msgstr "Lägg Till Ny Wi-Fi-Anslutning" -#: plinth/modules/networks/networks.py:397 +#: plinth/modules/networks/networks.py:384 #, python-brace-format msgid "Connection {name} deleted." msgstr "Anslutning {name} borttagen." -#: plinth/modules/networks/networks.py:401 -#: plinth/modules/networks/networks.py:411 +#: plinth/modules/networks/networks.py:388 +#: plinth/modules/networks/networks.py:398 msgid "Failed to delete connection: Connection not found." msgstr "Det gick inte att ta bort anslutning: Anslutning hittades inte." -#: plinth/modules/networks/networks.py:416 -#: plinth/modules/networks/templates/connections_delete.html:26 +#: plinth/modules/networks/networks.py:403 +#: plinth/modules/networks/templates/connections_delete.html:11 msgid "Delete Connection" msgstr "Ta Bort Anslutning" -#: plinth/modules/networks/networks.py:442 +#: plinth/modules/networks/networks.py:428 msgid "Router configuration type saved." msgstr "Routerkonfigurationstyp sparade." -#: plinth/modules/networks/templates/connection_show.html:43 +#: plinth/modules/networks/networks.py:474 +#, fuzzy +#| msgid "Router configuration type saved." +msgid "Internet connection type saved." +msgstr "Routerkonfigurationstyp sparade." + +#: plinth/modules/networks/templates/connection_show.html:28 msgid "Edit connection" msgstr "Redigera anslutning" -#: plinth/modules/networks/templates/connection_show.html:43 -#: plinth/modules/wireguard/templates/wireguard_show_client.html:83 -#: plinth/modules/wireguard/templates/wireguard_show_server.html:84 -#: plinth/templates/base.html:167 plinth/templates/base.html:168 +#: plinth/modules/networks/templates/connection_show.html:28 +#: plinth/modules/wireguard/templates/wireguard_show_client.html:68 +#: plinth/modules/wireguard/templates/wireguard_show_server.html:69 +#: plinth/templates/base.html:152 plinth/templates/base.html:153 msgid "Edit" msgstr "Redigera" -#: plinth/modules/networks/templates/connection_show.html:50 -#: plinth/modules/networks/templates/connections_list.html:90 +#: plinth/modules/networks/templates/connection_show.html:35 +#: plinth/modules/networks/templates/connections_list.html:40 msgid "Deactivate" msgstr "Avaktivera" -#: plinth/modules/networks/templates/connection_show.html:57 -#: plinth/modules/networks/templates/connections_list.html:98 +#: plinth/modules/networks/templates/connection_show.html:42 +#: plinth/modules/networks/templates/connections_list.html:48 msgid "Activate" msgstr "Aktivera" -#: plinth/modules/networks/templates/connection_show.html:63 +#: plinth/modules/networks/templates/connection_show.html:48 msgid "Delete connection" msgstr "Ta bort anslutning" -#: plinth/modules/networks/templates/connection_show.html:66 -#: plinth/modules/networks/templates/connections_diagram.html:73 -#: plinth/modules/networks/templates/connections_diagram.html:76 -#: plinth/modules/networks/templates/connections_diagram.html:105 -#: plinth/modules/networks/templates/connections_diagram.html:127 +#: plinth/modules/networks/templates/connection_show.html:51 +#: plinth/modules/networks/templates/connections_diagram.html:58 +#: plinth/modules/networks/templates/connections_diagram.html:61 +#: plinth/modules/networks/templates/connections_diagram.html:90 +#: plinth/modules/networks/templates/connections_diagram.html:112 msgid "Connection" msgstr "Anslutning" -#: plinth/modules/networks/templates/connection_show.html:71 +#: plinth/modules/networks/templates/connection_show.html:56 msgid "Primary connection" msgstr "Primär anslutning" -#: plinth/modules/networks/templates/connection_show.html:73 -#: plinth/modules/networks/templates/connection_show.html:217 -#: plinth/modules/networks/templates/connection_show.html:256 +#: plinth/modules/networks/templates/connection_show.html:58 +#: plinth/modules/networks/templates/connection_show.html:202 +#: plinth/modules/networks/templates/connection_show.html:241 msgid "yes" msgstr "Ja" -#: plinth/modules/networks/templates/connection_show.html:84 -#: plinth/modules/storage/templates/storage.html:40 +#: plinth/modules/networks/templates/connection_show.html:69 +#: plinth/modules/storage/templates/storage.html:25 msgid "Device" msgstr "Enhet" -#: plinth/modules/networks/templates/connection_show.html:88 +#: plinth/modules/networks/templates/connection_show.html:73 msgid "State" msgstr "Tillstånd" -#: plinth/modules/networks/templates/connection_show.html:93 +#: plinth/modules/networks/templates/connection_show.html:78 msgid "State reason" msgstr "Anledning tillstånd" -#: plinth/modules/networks/templates/connection_show.html:102 +#: plinth/modules/networks/templates/connection_show.html:87 msgid "MAC address" msgstr "MAC-adress" -#: plinth/modules/networks/templates/connection_show.html:106 +#: plinth/modules/networks/templates/connection_show.html:91 msgid "Interface" msgstr "Gränssnitt" -#: plinth/modules/networks/templates/connection_show.html:110 -#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:33 -#: plinth/modules/snapshot/templates/snapshot_manage.html:45 -#: plinth/modules/snapshot/templates/snapshot_rollback.html:41 +#: plinth/modules/networks/templates/connection_show.html:95 +#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:18 +#: plinth/modules/snapshot/templates/snapshot_manage.html:30 +#: plinth/modules/snapshot/templates/snapshot_rollback.html:26 msgid "Description" msgstr "Beskrivning" -#: plinth/modules/networks/templates/connection_show.html:116 +#: plinth/modules/networks/templates/connection_show.html:101 msgid "Physical Link" msgstr "Fysisk länk" -#: plinth/modules/networks/templates/connection_show.html:121 +#: plinth/modules/networks/templates/connection_show.html:106 msgid "Link state" msgstr "Länktillstånd" -#: plinth/modules/networks/templates/connection_show.html:125 +#: plinth/modules/networks/templates/connection_show.html:110 msgid "cable is connected" msgstr "kabeln är ansluten" -#: plinth/modules/networks/templates/connection_show.html:128 +#: plinth/modules/networks/templates/connection_show.html:113 msgid "please check cable" msgstr "vänligen kontrollera kabel" -#: plinth/modules/networks/templates/connection_show.html:133 -#: plinth/modules/networks/templates/connection_show.html:149 +#: plinth/modules/networks/templates/connection_show.html:118 +#: plinth/modules/networks/templates/connection_show.html:134 msgid "Speed" msgstr "Hastighet" -#: plinth/modules/networks/templates/connection_show.html:135 +#: plinth/modules/networks/templates/connection_show.html:120 #, python-format msgid "%(ethernet_speed)s Mbit/s" msgstr "%(ethernet_speed)s Mbit/s" -#: plinth/modules/networks/templates/connection_show.html:151 +#: plinth/modules/networks/templates/connection_show.html:136 #, python-format msgid "%(wireless_bitrate)s Mbit/s" msgstr "%(wireless_bitrate)s Mbit/s" -#: plinth/modules/networks/templates/connection_show.html:163 +#: plinth/modules/networks/templates/connection_show.html:148 msgid "Signal strength" msgstr "Signalstyrka" -#: plinth/modules/networks/templates/connection_show.html:181 +#: plinth/modules/networks/templates/connection_show.html:166 msgid "IPv4" msgstr "IPv4" -#: plinth/modules/networks/templates/connection_show.html:186 -#: plinth/modules/networks/templates/connection_show.html:227 -#: plinth/modules/shadowsocks/forms.py:64 +#: plinth/modules/networks/templates/connection_show.html:171 +#: plinth/modules/networks/templates/connection_show.html:212 +#: plinth/modules/shadowsocks/forms.py:49 msgid "Method" msgstr "Metod" -#: plinth/modules/networks/templates/connection_show.html:193 -#: plinth/modules/networks/templates/connection_show.html:234 +#: plinth/modules/networks/templates/connection_show.html:178 +#: plinth/modules/networks/templates/connection_show.html:219 msgid "IP address" msgstr "IP-adress" -#: plinth/modules/networks/templates/connection_show.html:209 -#: plinth/modules/networks/templates/connection_show.html:248 +#: plinth/modules/networks/templates/connection_show.html:194 +#: plinth/modules/networks/templates/connection_show.html:233 msgid "DNS server" msgstr "DNS-Server" -#: plinth/modules/networks/templates/connection_show.html:216 -#: plinth/modules/networks/templates/connection_show.html:255 -#: plinth/modules/storage/forms.py:156 +#: plinth/modules/networks/templates/connection_show.html:201 +#: plinth/modules/networks/templates/connection_show.html:240 +#: plinth/modules/storage/forms.py:141 msgid "Default" msgstr "Standard" -#: plinth/modules/networks/templates/connection_show.html:222 +#: plinth/modules/networks/templates/connection_show.html:207 msgid "IPv6" msgstr "IPv6" -#: plinth/modules/networks/templates/connection_show.html:263 +#: plinth/modules/networks/templates/connection_show.html:248 msgid "This connection is not active." msgstr "Den här anslutningen är inte aktiv." -#: plinth/modules/networks/templates/connection_show.html:266 -#: plinth/modules/security/__init__.py:38 plinth/modules/security/views.py:47 +#: plinth/modules/networks/templates/connection_show.html:251 +#: plinth/modules/security/__init__.py:45 msgid "Security" msgstr "Säkerhet" -#: plinth/modules/networks/templates/connection_show.html:271 -#: plinth/modules/networks/templates/connection_show.html:291 -#: plinth/modules/networks/templates/connection_show.html:310 +#: plinth/modules/networks/templates/connection_show.html:256 +#: plinth/modules/networks/templates/connection_show.html:276 +#: plinth/modules/networks/templates/connection_show.html:295 msgid "Firewall zone" msgstr "Brandväggs zon" -#: plinth/modules/networks/templates/connection_show.html:280 +#: plinth/modules/networks/templates/connection_show.html:265 msgid "" "This interface should be connected to a local network/machine. If you " "connect this interface to a public network, services meant to be available " @@ -3794,7 +3893,7 @@ msgstr "" "som är avsedda att vara tillgängliga endast internt att bli tillgängliga " "externt. Detta är en säkerhetsrisk." -#: plinth/modules/networks/templates/connection_show.html:300 +#: plinth/modules/networks/templates/connection_show.html:285 msgid "" "This interface should receive your Internet connection. If you connect it to " "a local network/machine, many services meant to available only internally " @@ -3804,7 +3903,7 @@ msgstr "" "till ett lokalt nätverk/en maskin, kommer många tjänster som är avsedda att " "endast vara tillgängliga internt inte att vara tillgängliga." -#: plinth/modules/networks/templates/connection_show.html:319 +#: plinth/modules/networks/templates/connection_show.html:304 #, python-format msgid "" "This interface is not maintained by %(box_name)s. Its security status is " @@ -3817,107 +3916,145 @@ msgstr "" "kanske inte är tillgängliga i det här gränssnittet. Vi rekommenderar att du " "inaktiverar eller tar bort den här anslutningen och konfigurerar den igen." -#: plinth/modules/networks/templates/connections_create.html:34 +#: plinth/modules/networks/templates/connections_create.html:19 msgid "Create Connection" msgstr "Skapa anslutning" -#: plinth/modules/networks/templates/connections_delete.html:29 +#: plinth/modules/networks/templates/connections_delete.html:14 #, python-format msgid "Delete connection %(name)s permanently?" msgstr "Ta bort anslutning %(name)s permanent?" -#: plinth/modules/networks/templates/connections_diagram.html:65 +#: plinth/modules/networks/templates/connections_diagram.html:50 msgid "Internet" msgstr "Internet" -#: plinth/modules/networks/templates/connections_diagram.html:70 -#: plinth/modules/networks/templates/connections_diagram.html:102 +#: plinth/modules/networks/templates/connections_diagram.html:55 +#: plinth/modules/networks/templates/connections_diagram.html:87 msgid "Spacing" msgstr "Avstånd" -#: plinth/modules/networks/templates/connections_diagram.html:83 -#: plinth/modules/networks/templates/connections_diagram.html:113 -#: plinth/network.py:40 +#: plinth/modules/networks/templates/connections_diagram.html:68 +#: plinth/modules/networks/templates/connections_diagram.html:98 +#: plinth/network.py:25 msgid "Ethernet" msgstr "Ethernet" -#: plinth/modules/networks/templates/connections_diagram.html:86 -#: plinth/modules/networks/templates/connections_diagram.html:116 -#: plinth/network.py:41 +#: plinth/modules/networks/templates/connections_diagram.html:71 +#: plinth/modules/networks/templates/connections_diagram.html:101 +#: plinth/network.py:26 msgid "Wi-Fi" msgstr "Wi-Fi" -#: plinth/modules/networks/templates/connections_diagram.html:89 +#: plinth/modules/networks/templates/connections_diagram.html:74 #, python-format msgid "Show connection %(connection.name)s" msgstr "Visa anslutning %(connection.name)s" -#: plinth/modules/networks/templates/connections_diagram.html:119 +#: plinth/modules/networks/templates/connections_diagram.html:104 #, python-format msgid "Show connection %(name)s" msgstr "Visa anslutning %(name)s" -#: plinth/modules/networks/templates/connections_diagram.html:131 +#: plinth/modules/networks/templates/connections_diagram.html:116 msgid "Computer" msgstr "Dator" -#: plinth/modules/networks/templates/connections_list.html:58 +#: plinth/modules/networks/templates/connections_list.html:8 msgid "Connections" msgstr "Anslutningar" -#: plinth/modules/networks/templates/connections_list.html:79 +#: plinth/modules/networks/templates/connections_list.html:29 #, python-format msgid "Delete connection %(name)s" msgstr "Ta bort anslutning %(name)s" -#: plinth/modules/networks/templates/connections_list.html:104 +#: plinth/modules/networks/templates/connections_list.html:54 msgid "Active" msgstr "Aktiva" -#: plinth/modules/networks/templates/connections_list.html:107 +#: plinth/modules/networks/templates/connections_list.html:57 msgid "Inactive" msgstr "Inaktiva" -#: plinth/modules/networks/templates/connections_list.html:124 -#, python-format -msgid "%(box_name)s Internet Connectivity" -msgstr "%(box_name)s internet-anslutning" +#: plinth/modules/networks/templates/connections_type_select.html:19 +msgid "Create..." +msgstr "Skaffa..." -#: plinth/modules/networks/templates/connections_list.html:129 -#, python-format +#: plinth/modules/networks/templates/internet_connectivity_content.html:10 +msgid "What Type Of Internet Connection Do You Have?" +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_content.html:16 +#, fuzzy +#| msgid "" +#| "The following best describes how your %(box_name)s is connected in your " +#| "network. This information is used only to suggest necessary configuration " +#| "actions." msgid "" -"The following best describes how your %(box_name)s is connected in your " -"network. This information is used only to suggest necessary configuration " -"actions." +"Select an option that best describes the type of Internet connection. This " +"information is used only to guide you with further setup." msgstr "" "Följande beskriver bäst hur dina %(box_name)s är anslutna i nätverket. Den " "här informationen används bara för att föreslå nödvändiga " "konfigurationsåtgärder." -#: plinth/modules/networks/templates/connections_list.html:137 -#, python-format -msgid "" -"Your %(box_name)s gets its internet from your Router via WiFi or Ethernet " -"cable. This is a typical home setup." -msgstr "" -"Dina %(box_name)s får sitt internet från routern via WiFi eller Ethernet-" -"kabel. Detta är en typisk hem inställning." +#: plinth/modules/networks/templates/internet_connectivity_firstboot.html:18 +#: plinth/modules/networks/templates/router_configuration_firstboot.html:18 +#, fuzzy +#| msgid "skip this step" +msgid "Skip this step" +msgstr "hoppa över det här steget" -#: plinth/modules/networks/templates/connections_list.html:145 -#: plinth/modules/networks/templates/connections_list.html:147 +#: plinth/modules/networks/templates/internet_connectivity_firstboot.html:19 +#: plinth/modules/networks/templates/router_configuration_firstboot.html:19 +msgid "Next" +msgstr "Nästa" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:9 +#, fuzzy +#| msgid "Connection Type" +msgid "Your Internet Connection Type" +msgstr "Anslutningstyp" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:14 +#, fuzzy +#| msgid "" +#| "The following best describes how your %(box_name)s is connected in your " +#| "network. This information is used only to suggest necessary configuration " +#| "actions." +msgid "" +"The following best describes the type of Internet connection provided by " +"your ISP. This information is only used to suggest you necessary " +"configuration actions." +msgstr "" +"Följande beskriver bäst hur dina %(box_name)s är anslutna i nätverket. Den " +"här informationen används bara för att föreslå nödvändiga " +"konfigurationsåtgärder." + +#: plinth/modules/networks/templates/internet_connectivity_main.html:23 +msgid "My ISP provides a public IP address that does not change over time." +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:27 +msgid "My ISP provides a public IP address that may change over time." +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:31 +msgid "My ISP does not provide a public IP address." +msgstr "" + +#: plinth/modules/networks/templates/internet_connectivity_main.html:37 +#: plinth/modules/networks/templates/router_configuration_main.html:29 msgid "Update..." msgstr "Uppdatering..." -#: plinth/modules/networks/templates/connections_type_select.html:34 -msgid "Create..." -msgstr "Skaffa..." - -#: plinth/modules/networks/templates/router_configuration_content.html:25 +#: plinth/modules/networks/templates/router_configuration_content.html:10 #, python-format msgid "Setup %(box_name)s Behind a Router" msgstr "Setup %(box_name)s Bakom en Router" -#: plinth/modules/networks/templates/router_configuration_content.html:31 +#: plinth/modules/networks/templates/router_configuration_content.html:16 #, python-format msgid "" "Your %(box_name)s gets its internet connection from your router via Wi-Fi or " @@ -3926,7 +4063,7 @@ msgstr "" "Dina %(box_name)s får sin internetuppkoppling från routern via Wi-Fi eller " "Ethernet-kabel. Detta är en typisk hem inställning." -#: plinth/modules/networks/templates/router_configuration_content.html:38 +#: plinth/modules/networks/templates/router_configuration_content.html:23 #, python-format msgid "" "With this setup, any device on the internet trying to reach your " @@ -3939,21 +4076,26 @@ msgstr "" "vidarebefordra all trafik den tar emot så att %(box_name)s tillhandahåller " "tjänsterna." -#: plinth/modules/networks/templates/router_configuration_content.html:47 +#: plinth/modules/networks/templates/router_configuration_content.html:32 +#, fuzzy +#| msgid "" +#| "If you don't have control over your router, choose not to configure it. " +#| "To see options, to overcome this limitation, choose 'no public address' " +#| "option in Internet connection type selection." msgid "" "If you don't have control over your router, choose not to configure it. To " -"see options, to overcome this limitation, choose 'no public address' option " +"see options to overcome this limitation, choose 'no public address' option " "in Internet connection type selection." msgstr "" "Om du inte har kontroll över routern väljer du att inte konfigurera den. Om " "du vill visa alternativ väljer du alternativet \"ingen offentlig adress\" i " "valet av internetanslutningstyp för internetanslutning." -#: plinth/modules/networks/templates/router_configuration_content.html:54 +#: plinth/modules/networks/templates/router_configuration_content.html:39 msgid "Choose How You Wish to Configure Your Router" msgstr "Välj hur du vill konfigurera routern" -#: plinth/modules/networks/templates/router_configuration_content.html:57 +#: plinth/modules/networks/templates/router_configuration_content.html:42 msgid "" "You will need to login to your router's administration console provided by " "the router. This may look like one of the following:" @@ -3961,7 +4103,7 @@ msgstr "" "Du måste logga in på routerns administrationskonsol som tillhandahålls av " "routern. Detta kan se ut som något av följande:" -#: plinth/modules/networks/templates/router_configuration_content.html:69 +#: plinth/modules/networks/templates/router_configuration_content.html:54 msgid "" "The username and password is configured by you when you first setup the " "router. For many routers, this information is printed at the back of the " @@ -3977,24 +4119,35 @@ msgstr "" "din router modellnummer och sök online för routerns manual. Detta ger " "fullständiga instruktioner om hur du utför den här uppgiften." -#: plinth/modules/networks/templates/router_configuration_firstboot.html:33 -msgid "skip this step" -msgstr "hoppa över det här steget" +#: plinth/modules/networks/templates/router_configuration_main.html:9 +#, python-format +msgid "%(box_name)s Internet Connectivity" +msgstr "%(box_name)s internet-anslutning" -#: plinth/modules/networks/templates/router_configuration_firstboot.html:35 -msgid "Next" -msgstr "Nästa" +#: plinth/modules/networks/templates/router_configuration_main.html:15 +#, python-format +msgid "" +"The following best describes how your %(box_name)s is connected in your " +"network. This information is used only to suggest necessary configuration " +"actions." +msgstr "" +"Följande beskriver bäst hur dina %(box_name)s är anslutna i nätverket. Den " +"här informationen används bara för att föreslå nödvändiga " +"konfigurationsåtgärder." -#: plinth/modules/openvpn/__init__.py:39 plinth/modules/openvpn/manifest.py:33 -msgid "OpenVPN" -msgstr "OpenVPN" +#: plinth/modules/networks/templates/router_configuration_main.html:23 +#, fuzzy, python-format +#| msgid "" +#| "Your %(box_name)s gets its internet from your Router via WiFi or Ethernet " +#| "cable. This is a typical home setup." +msgid "" +"Your %(box_name)s gets its Internet from your Router via Wi-Fi or Ethernet " +"cable. This is a typical home setup." +msgstr "" +"Dina %(box_name)s får sitt internet från routern via WiFi eller Ethernet-" +"kabel. Detta är en typisk hem inställning." -#: plinth/modules/openvpn/__init__.py:43 -#: plinth/modules/wireguard/__init__.py:40 -msgid "Virtual Private Network" -msgstr "Virtuellt privat nätverk" - -#: plinth/modules/openvpn/__init__.py:47 +#: plinth/modules/openvpn/__init__.py:26 #, python-brace-format msgid "" "Virtual Private Network (VPN) is a technique for securely connecting two " @@ -4011,22 +4164,33 @@ msgstr "" "tillhandahålls av {box_name}. Du kan också komma åt resten av Internet via " "{box_name} för ökad säkerhet och anonymitet." -#: plinth/modules/openvpn/__init__.py:79 +#: plinth/modules/openvpn/__init__.py:49 plinth/modules/openvpn/manifest.py:18 +msgid "OpenVPN" +msgstr "OpenVPN" + +#: plinth/modules/openvpn/__init__.py:50 +#: plinth/modules/wireguard/__init__.py:53 +msgid "Virtual Private Network" +msgstr "Virtuellt privat nätverk" + +#: plinth/modules/openvpn/__init__.py:61 #, python-brace-format msgid "" "Download Profile" msgstr "" "Ladda ner profil" -#: plinth/modules/openvpn/forms.py:27 +#: plinth/modules/openvpn/forms.py:12 msgid "Enable OpenVPN server" msgstr "Aktivera OpenVPN server" -#: plinth/modules/openvpn/manifest.py:63 -msgid "TunnelBlick" +#: plinth/modules/openvpn/manifest.py:48 +#, fuzzy +#| msgid "TunnelBlick" +msgid "Tunnelblick" msgstr "TunnelBlick" -#: plinth/modules/openvpn/templates/openvpn.html:42 +#: plinth/modules/openvpn/templates/openvpn.html:27 #, python-format msgid "" "OpenVPN has not yet been setup. Performing a secure setup takes a very long " @@ -4037,15 +4201,15 @@ msgstr "" "säker installation. Beroende på hur snabbt din %(box_name)s är, kan det " "även ta timmar. Om installationen avbryts kan du starta den igen." -#: plinth/modules/openvpn/templates/openvpn.html:55 +#: plinth/modules/openvpn/templates/openvpn.html:40 msgid "Start setup" msgstr "Starta installation" -#: plinth/modules/openvpn/templates/openvpn.html:64 +#: plinth/modules/openvpn/templates/openvpn.html:49 msgid "OpenVPN setup is running" msgstr "OpenVPN-installationen körs" -#: plinth/modules/openvpn/templates/openvpn.html:68 +#: plinth/modules/openvpn/templates/openvpn.html:53 #, python-format msgid "" "To perform a secure setup, this process takes a very long time. Depending " @@ -4056,11 +4220,11 @@ msgstr "" "Beroende på hur snabbt din %(box_name)s är, kan det även ta timmar. Om " "installationen avbryts kan du starta den igen." -#: plinth/modules/openvpn/templates/openvpn.html:87 +#: plinth/modules/openvpn/templates/openvpn.html:72 msgid "Profile" msgstr "Profil" -#: plinth/modules/openvpn/templates/openvpn.html:90 +#: plinth/modules/openvpn/templates/openvpn.html:75 #, python-format msgid "" "To connect to %(box_name)s's VPN, you need to download a profile and feed it " @@ -4074,33 +4238,25 @@ msgstr "" "\" ovan för rekommenderade klienter och instruktioner om hur du konfigurerar " "dem." -#: plinth/modules/openvpn/templates/openvpn.html:100 +#: plinth/modules/openvpn/templates/openvpn.html:85 #, python-format msgid "Profile is specific to each user of %(box_name)s. Keep it a secret." msgstr "" "Profilen är specifik för varje användare av %(box_name)s Håll det hemligt." -#: plinth/modules/openvpn/templates/openvpn.html:111 +#: plinth/modules/openvpn/templates/openvpn.html:96 msgid "Download my profile" msgstr "Ladda ner min profil" -#: plinth/modules/openvpn/views.py:133 +#: plinth/modules/openvpn/views.py:114 msgid "Setup completed." msgstr "Installationen har slutförts." -#: plinth/modules/openvpn/views.py:135 +#: plinth/modules/openvpn/views.py:116 msgid "Setup failed." msgstr "Installationen misslyckades." -#: plinth/modules/pagekite/__init__.py:39 -msgid "PageKite" -msgstr "PageKite" - -#: plinth/modules/pagekite/__init__.py:41 -msgid "Public Visibility" -msgstr "Offentlig Synlighet" - -#: plinth/modules/pagekite/__init__.py:45 +#: plinth/modules/pagekite/__init__.py:26 #, python-brace-format msgid "" "PageKite is a system for exposing {box_name} services when you don't have a " @@ -4113,18 +4269,18 @@ msgstr "" "tjänster inte kan nås från resten av Internet. Detta inkluderar följande " "situationer:" -#: plinth/modules/pagekite/__init__.py:50 +#: plinth/modules/pagekite/__init__.py:31 #, python-brace-format msgid "{box_name} is behind a restricted firewall." msgstr "{box_name} är bakom en begränsad brandvägg." -#: plinth/modules/pagekite/__init__.py:53 +#: plinth/modules/pagekite/__init__.py:34 #, python-brace-format msgid "{box_name} is connected to a (wireless) router which you don't control." msgstr "" "{box_name} är anslutet till en (trådlös) router som du inte kontrollerar." -#: plinth/modules/pagekite/__init__.py:55 +#: plinth/modules/pagekite/__init__.py:36 msgid "" "Your ISP does not provide you an external IP address and instead provides " "Internet connection through NAT." @@ -4132,7 +4288,7 @@ msgstr "" "Din ISP ger dig inte en extern IP-adress och ger istället Internet " "uppkoppling via NAT." -#: plinth/modules/pagekite/__init__.py:57 +#: plinth/modules/pagekite/__init__.py:38 msgid "" "Your ISP does not provide you a static IP address and your IP address " "changes every time you connect to Internet." @@ -4140,11 +4296,11 @@ msgstr "" "Din ISP ger dig inte en statisk IP-adress och din IP-adress ändras varje " "gång du ansluter till Internet." -#: plinth/modules/pagekite/__init__.py:59 +#: plinth/modules/pagekite/__init__.py:40 msgid "Your ISP limits incoming connections." msgstr "Din ISP begränsar inkommande anslutningar." -#: plinth/modules/pagekite/__init__.py:61 +#: plinth/modules/pagekite/__init__.py:42 #, python-brace-format msgid "" "PageKite works around NAT, firewalls and IP address limitations by using a " @@ -4158,15 +4314,23 @@ msgstr "" "pagekite. net . I framtiden kan det vara möjligt att använda din kompis " "{box_name} för detta." -#: plinth/modules/pagekite/__init__.py:87 +#: plinth/modules/pagekite/__init__.py:62 +msgid "PageKite" +msgstr "PageKite" + +#: plinth/modules/pagekite/__init__.py:64 +msgid "Public Visibility" +msgstr "Offentlig Synlighet" + +#: plinth/modules/pagekite/__init__.py:74 msgid "PageKite Domain" msgstr "PageKite domän" -#: plinth/modules/pagekite/forms.py:66 +#: plinth/modules/pagekite/forms.py:51 msgid "Server domain" msgstr "Server-domän" -#: plinth/modules/pagekite/forms.py:68 +#: plinth/modules/pagekite/forms.py:53 msgid "" "Select your pagekite server. Set \"pagekite.net\" to use the default " "pagekite.net server." @@ -4174,31 +4338,31 @@ msgstr "" "Välj din pagekite-Server. Ange \"pagekite.net\" om du vill använda " "standardservern pagekite.net." -#: plinth/modules/pagekite/forms.py:71 plinth/modules/shadowsocks/forms.py:55 +#: plinth/modules/pagekite/forms.py:56 plinth/modules/shadowsocks/forms.py:40 msgid "Server port" msgstr "Server Port" -#: plinth/modules/pagekite/forms.py:72 +#: plinth/modules/pagekite/forms.py:57 msgid "Port of your pagekite server (default: 80)" msgstr "Port på din pagekite Server (standard: 80)" -#: plinth/modules/pagekite/forms.py:74 +#: plinth/modules/pagekite/forms.py:59 msgid "Kite name" msgstr "Kite namn" -#: plinth/modules/pagekite/forms.py:75 +#: plinth/modules/pagekite/forms.py:60 msgid "Example: mybox.pagekite.me" msgstr "Exempel: mybox.pagekite.me" -#: plinth/modules/pagekite/forms.py:77 +#: plinth/modules/pagekite/forms.py:62 msgid "Invalid kite name" msgstr "Ogiltigt kite-namn" -#: plinth/modules/pagekite/forms.py:81 +#: plinth/modules/pagekite/forms.py:66 msgid "Kite secret" msgstr "Kite hemlighet" -#: plinth/modules/pagekite/forms.py:82 +#: plinth/modules/pagekite/forms.py:67 msgid "" "A secret associated with the kite or the default secret for your account if " "no secret is set on the kite." @@ -4206,43 +4370,43 @@ msgstr "" "En hemlighet som är associerad med draken eller standard hemligheten för " "ditt konto om ingen hemlighet är inställd på draken." -#: plinth/modules/pagekite/forms.py:98 +#: plinth/modules/pagekite/forms.py:83 msgid "Kite details set" msgstr "Kite Detaljer set" -#: plinth/modules/pagekite/forms.py:105 +#: plinth/modules/pagekite/forms.py:90 msgid "Pagekite server set" msgstr "Pagekite Server uppsättning" -#: plinth/modules/pagekite/forms.py:129 +#: plinth/modules/pagekite/forms.py:114 msgid "PageKite enabled" msgstr "PageKite aktiverat" -#: plinth/modules/pagekite/forms.py:132 +#: plinth/modules/pagekite/forms.py:117 msgid "PageKite disabled" msgstr "PageKite inaktiverat" -#: plinth/modules/pagekite/forms.py:148 +#: plinth/modules/pagekite/forms.py:133 msgid "protocol" msgstr "Protokollet" -#: plinth/modules/pagekite/forms.py:151 +#: plinth/modules/pagekite/forms.py:136 msgid "external (frontend) port" msgstr "extern port (frontend)" -#: plinth/modules/pagekite/forms.py:154 +#: plinth/modules/pagekite/forms.py:139 msgid "internal (freedombox) port" msgstr "intern port (freedombox)" -#: plinth/modules/pagekite/forms.py:155 +#: plinth/modules/pagekite/forms.py:140 msgid "Enable Subdomains" msgstr "Aktivera underdomäner" -#: plinth/modules/pagekite/forms.py:189 +#: plinth/modules/pagekite/forms.py:174 msgid "Deleted custom service" msgstr "Borttagen anpassad tjänst" -#: plinth/modules/pagekite/forms.py:222 +#: plinth/modules/pagekite/forms.py:207 msgid "" "This service is available as a standard service. Please use the \"Standard " "Services\" page to enable it." @@ -4250,41 +4414,41 @@ msgstr "" "Denna tjänst är tillgänglig som standardtjänst. Använd sidan \"standard " "tjänster\" för att aktivera den." -#: plinth/modules/pagekite/forms.py:231 +#: plinth/modules/pagekite/forms.py:216 msgid "Added custom service" msgstr "Lade till anpassad service" -#: plinth/modules/pagekite/forms.py:234 +#: plinth/modules/pagekite/forms.py:219 msgid "This service already exists" msgstr "Den här tjänsten finns redan" -#: plinth/modules/pagekite/templates/pagekite_configure.html:47 +#: plinth/modules/pagekite/templates/pagekite_configure.html:32 msgid "Custom Services" msgstr "Anpassade tjänster" -#: plinth/modules/pagekite/templates/pagekite_configure.html:50 -#: plinth/modules/pagekite/templates/pagekite_configure.html:52 +#: plinth/modules/pagekite/templates/pagekite_configure.html:35 +#: plinth/modules/pagekite/templates/pagekite_configure.html:37 msgid "Add Custom Service" msgstr "Lägg till anpassad tjänst" -#: plinth/modules/pagekite/templates/pagekite_configure.html:57 +#: plinth/modules/pagekite/templates/pagekite_configure.html:42 msgid "Existing custom services" msgstr "Befintliga anpassade tjänster" -#: plinth/modules/pagekite/templates/pagekite_configure.html:71 +#: plinth/modules/pagekite/templates/pagekite_configure.html:56 #, python-format msgid "connected to %(backend_host)s:%(backend_port)s" msgstr "ansluten till %(backend_host)s:%(backend_port)s" -#: plinth/modules/pagekite/templates/pagekite_configure.html:83 +#: plinth/modules/pagekite/templates/pagekite_configure.html:68 msgid "Delete this service" msgstr "Ta bort den här tjänsten" -#: plinth/modules/pagekite/templates/pagekite_custom_services.html:30 +#: plinth/modules/pagekite/templates/pagekite_custom_services.html:15 msgid "Add custom PageKite service" msgstr "Lägg till anpassad PageKite-tjänst" -#: plinth/modules/pagekite/templates/pagekite_custom_services.html:32 +#: plinth/modules/pagekite/templates/pagekite_custom_services.html:17 msgid "" "Warning:imaps://imap.example.com"
"code>."
-#: plinth/modules/roundcube/__init__.py:53
+#: plinth/modules/roundcube/__init__.py:32
msgid ""
"For Gmail, username will be your Gmail address, password will be your Google "
"account password and server will be imaps://imap.gmail.com. "
@@ -4689,11 +4843,16 @@ msgstr ""
"security/lesssecureapps\" >https://www.Google.com/settings/Security/"
"lesssecureapps)."
-#: plinth/modules/samba/__init__.py:46
-msgid "Samba"
-msgstr "Samba"
+#: plinth/modules/roundcube/__init__.py:54
+#: plinth/modules/roundcube/manifest.py:9
+msgid "Roundcube"
+msgstr "Roundcube"
-#: plinth/modules/samba/__init__.py:53
+#: plinth/modules/roundcube/__init__.py:55
+msgid "Email Client"
+msgstr "E-postklient"
+
+#: plinth/modules/samba/__init__.py:32
msgid ""
"Samba allows to share files and folders between FreedomBox and other "
"computers in your local network."
@@ -4701,7 +4860,7 @@ msgstr ""
"Samba gör det möjligt att dela filer och mappar mellan FreedomBox och andra "
"datorer i ditt lokala nätverk."
-#: plinth/modules/samba/__init__.py:56
+#: plinth/modules/samba/__init__.py:35
#, python-brace-format
msgid ""
"After installation, you can choose which disks to use for sharing. Enabled "
@@ -4714,11 +4873,11 @@ msgstr ""
"\\{hostname} (på Windows) eller SMB://{hostname}. local (på Linux och Mac). "
"Det finns tre typer av shares som du kan välja mellan: "
-#: plinth/modules/samba/__init__.py:61
+#: plinth/modules/samba/__init__.py:40
msgid "Open share - accessible to everyone in your local network."
msgstr "Öppen delning - tillgänglig för alla i ditt lokala nätverk."
-#: plinth/modules/samba/__init__.py:62
+#: plinth/modules/samba/__init__.py:41
msgid ""
"Group share - accessible only to FreedomBox users who are in the freedombox-"
"share group."
@@ -4726,7 +4885,7 @@ msgstr ""
"Gruppdelning - endast tillgänglig för FreedomBox-användare som ingår i "
"freedombox-delningsgruppen."
-#: plinth/modules/samba/__init__.py:64
+#: plinth/modules/samba/__init__.py:43
msgid ""
"Home share - every user in the freedombox-share group can have their own "
"private space."
@@ -4734,36 +4893,40 @@ msgstr ""
"Hemdelning - varje användare i gruppen freedombox-share kan ha sitt eget "
"privata utrymme."
-#: plinth/modules/samba/__init__.py:68
+#: plinth/modules/samba/__init__.py:47
msgid "Access to the private shares"
msgstr "Tillgång till de privata shares"
-#: plinth/modules/samba/templates/samba.html:39
-#: plinth/modules/samba/templates/samba.html:50
+#: plinth/modules/samba/__init__.py:61
+msgid "Samba"
+msgstr "Samba"
+
+#: plinth/modules/samba/templates/samba.html:24
+#: plinth/modules/samba/templates/samba.html:35
msgid "Shares"
msgstr "Shares"
-#: plinth/modules/samba/templates/samba.html:41
+#: plinth/modules/samba/templates/samba.html:26
msgid ""
"Note: Only specially created directories will be shared on selected disks, "
"not the whole disk."
msgstr ""
"Endast specialskapade kataloger delas på valda diskar, inte hela disken."
-#: plinth/modules/samba/templates/samba.html:49
+#: plinth/modules/samba/templates/samba.html:34
msgid "Disk Name"
msgstr "Diskens namn"
-#: plinth/modules/samba/templates/samba.html:51
-#: plinth/modules/storage/templates/storage.html:44
+#: plinth/modules/samba/templates/samba.html:36
+#: plinth/modules/storage/templates/storage.html:29
msgid "Used"
msgstr "Används"
-#: plinth/modules/samba/templates/samba.html:72
+#: plinth/modules/samba/templates/samba.html:57
msgid "VFAT partitions are not supported"
msgstr "VFAT-partitioner stöds inte"
-#: plinth/modules/samba/templates/samba.html:103
+#: plinth/modules/samba/templates/samba.html:88
#, python-format
msgid ""
"You can find additional information about disks on the storage module och konfigurera åtkomsten till "
"resurserna på sidan usersmodule."
-#: plinth/modules/samba/templates/samba.html:109
+#: plinth/modules/samba/templates/samba.html:94
msgid "Users who can currently access group and home shares"
msgstr "Användare som för närvarande kan komma åt grupp-och hem resurser"
-#: plinth/modules/samba/templates/samba.html:113
+#: plinth/modules/samba/templates/samba.html:98
msgid ""
"Users needing to re-enter their password on the password change page to "
"access group and home shares"
@@ -4786,11 +4949,11 @@ msgstr ""
"Användare behöver ange sitt lösenord en gång till på sidan för ändring av "
"lösenord för att komma åt grupp- och hemresurser"
-#: plinth/modules/samba/templates/samba.html:118
+#: plinth/modules/samba/templates/samba.html:103
msgid "Unavailable Shares"
msgstr "Ej tillgängliga Shares"
-#: plinth/modules/samba/templates/samba.html:120
+#: plinth/modules/samba/templates/samba.html:105
msgid ""
"Shares that are configured but the disk is not available. If the disk is "
"plugged back in, sharing will be automatically enabled."
@@ -4798,53 +4961,45 @@ msgstr ""
"Resurser som är konfigurerade men disken är inte tillgänglig. Om disken "
"ansluts igen aktiveras delning automatiskt."
-#: plinth/modules/samba/templates/samba.html:128
+#: plinth/modules/samba/templates/samba.html:113
msgid "Share name"
msgstr "Resursnamn"
-#: plinth/modules/samba/templates/samba.html:129
+#: plinth/modules/samba/templates/samba.html:114
msgid "Action"
msgstr "Åtgärder"
-#: plinth/modules/samba/views.py:61 plinth/modules/storage/forms.py:164
+#: plinth/modules/samba/views.py:43 plinth/modules/storage/forms.py:149
msgid "Open Share"
msgstr "Öppna Share"
-#: plinth/modules/samba/views.py:62 plinth/modules/storage/forms.py:162
+#: plinth/modules/samba/views.py:44 plinth/modules/storage/forms.py:147
msgid "Group Share"
msgstr "Grupp Share"
-#: plinth/modules/samba/views.py:63
+#: plinth/modules/samba/views.py:45
msgid "Home Share"
msgstr "Hemma Share"
-#: plinth/modules/samba/views.py:96
+#: plinth/modules/samba/views.py:78
msgid "Share enabled."
msgstr "Resurs aktiverad."
-#: plinth/modules/samba/views.py:101
+#: plinth/modules/samba/views.py:83
#, python-brace-format
msgid "Error enabling share: {error_message}"
msgstr "Fel vid aktivering av resurs: {error_message}"
-#: plinth/modules/samba/views.py:106
+#: plinth/modules/samba/views.py:88
msgid "Share disabled."
msgstr "Share resurs inaktiverat."
-#: plinth/modules/samba/views.py:111
+#: plinth/modules/samba/views.py:93
#, python-brace-format
msgid "Error disabling share: {error_message}"
msgstr "Fel vid inaktivering av resurs: {error_message}"
-#: plinth/modules/searx/__init__.py:41 plinth/modules/searx/manifest.py:24
-msgid "Searx"
-msgstr "Searx"
-
-#: plinth/modules/searx/__init__.py:45
-msgid "Web Search"
-msgstr "Webbsökning"
-
-#: plinth/modules/searx/__init__.py:48
+#: plinth/modules/searx/__init__.py:25
msgid ""
"Searx is a privacy-respecting Internet metasearch engine. It aggregrates and "
"displays results from multiple search engines."
@@ -4852,7 +5007,7 @@ msgstr ""
"Searx är en sekretess-respektera Internet metasökning motor. Det aggregrates "
"och visar resultat från flera sökmotorer."
-#: plinth/modules/searx/__init__.py:50
+#: plinth/modules/searx/__init__.py:27
msgid ""
"Searx can be used to avoid tracking and profiling by search engines. It "
"stores no cookies by default."
@@ -4860,48 +5015,56 @@ msgstr ""
"Searx kan användas för att undvika spårning och profilering av sökmotorer. "
"Den lagrar inga cookies som standard."
-#: plinth/modules/searx/__init__.py:54
+#: plinth/modules/searx/__init__.py:31
msgid "Search the web"
msgstr "Sök på webben"
-#: plinth/modules/searx/forms.py:30
+#: plinth/modules/searx/__init__.py:47 plinth/modules/searx/manifest.py:9
+msgid "Searx"
+msgstr "Searx"
+
+#: plinth/modules/searx/__init__.py:48
+msgid "Web Search"
+msgstr "Webbsökning"
+
+#: plinth/modules/searx/forms.py:15
msgid "Safe Search"
msgstr "Säker sökning"
-#: plinth/modules/searx/forms.py:31
+#: plinth/modules/searx/forms.py:16
msgid "Select the default family filter to apply to your search results."
msgstr "Välj det standard familjefilter som ska användas för sökresultaten."
-#: plinth/modules/searx/forms.py:32
+#: plinth/modules/searx/forms.py:17
msgid "None"
msgstr "Ingen"
-#: plinth/modules/searx/forms.py:32
+#: plinth/modules/searx/forms.py:17
msgid "Moderate"
msgstr "Måttlig"
-#: plinth/modules/searx/forms.py:32
+#: plinth/modules/searx/forms.py:17
msgid "Strict"
msgstr "Strikt"
-#: plinth/modules/searx/forms.py:35
+#: plinth/modules/searx/forms.py:20
msgid "Allow Public Access"
msgstr "Tillåt offentlig åtkomst"
-#: plinth/modules/searx/forms.py:36
+#: plinth/modules/searx/forms.py:21
msgid "Allow this application to be used by anyone who can reach it."
msgstr "Tillåt att det här programmet används av alla som kan nå det."
-#: plinth/modules/searx/views.py:59 plinth/modules/searx/views.py:70
-#: plinth/modules/tor/views.py:149 plinth/modules/tor/views.py:176
+#: plinth/modules/searx/views.py:39 plinth/modules/searx/views.py:50
+#: plinth/modules/tor/views.py:130 plinth/modules/tor/views.py:157
msgid "Configuration updated."
msgstr "Konfiguration uppdaterad."
-#: plinth/modules/security/forms.py:28
+#: plinth/modules/security/forms.py:13
msgid "Restrict console logins (recommended)"
msgstr "Begränsa konsol inloggningar (rekommenderas)"
-#: plinth/modules/security/forms.py:29
+#: plinth/modules/security/forms.py:14
msgid ""
"When this option is enabled, only users in the \"admin\" group will be able "
"to log in to console or via SSH. Console users may be able to access some "
@@ -4911,11 +5074,11 @@ msgstr ""
"\"admin\" att kunna logga in på Console eller via SSH. Konsolanvändare kan "
"komma åt vissa tjänster utan ytterligare auktorisering."
-#: plinth/modules/security/forms.py:34
+#: plinth/modules/security/forms.py:19
msgid "Fail2Ban (recommended)"
msgstr "Fail2Ban (rekommenderas)"
-#: plinth/modules/security/forms.py:35
+#: plinth/modules/security/forms.py:20
msgid ""
"When this option is enabled, Fail2Ban will limit brute force break-in "
"attempts to the SSH server and other enabled password protected internet-"
@@ -4925,17 +5088,17 @@ msgstr ""
"inbrott försök till SSH-servern och andra aktiverade lösenordsskyddade "
"Internet-tjänster."
-#: plinth/modules/security/templates/security.html:26
-#: plinth/modules/security/templates/security.html:28
+#: plinth/modules/security/templates/security.html:11
+#: plinth/modules/security/templates/security.html:13
msgid "Show security report"
msgstr "Visa säkerhetsrapport"
-#: plinth/modules/security/templates/security_report.html:25
-#: plinth/modules/security/views.py:87
+#: plinth/modules/security/templates/security_report.html:10
+#: plinth/modules/security/views.py:71
msgid "Security Report"
msgstr "Säkerhetsrapport"
-#: plinth/modules/security/templates/security_report.html:27
+#: plinth/modules/security/templates/security_report.html:12
#, python-format
msgid ""
"The installed version of FreedomBox has %(count)s reported security "
@@ -4944,7 +5107,7 @@ msgstr ""
"Den installerade versionen av FreedomBox har%(count)s rapporterade "
"säkerhetsproblem."
-#: plinth/modules/security/templates/security_report.html:33
+#: plinth/modules/security/templates/security_report.html:18
msgid ""
"The following table lists the current reported number, and historical count, "
"of security vulnerabilities for each installed app."
@@ -4952,7 +5115,7 @@ msgstr ""
"I följande tabell visas det aktuella rapporterade antalet och historiska "
"antalet säkerhetsproblem för varje installerad app."
-#: plinth/modules/security/templates/security_report.html:39
+#: plinth/modules/security/templates/security_report.html:24
msgid ""
"For apps that provide services, the \"Sandboxed\" column shows whether "
"sandboxing features are in use. Sandboxing mitigates the impact of a "
@@ -4962,7 +5125,7 @@ msgstr ""
"sandboxningsfunktioner används. Sandboxing mildrar effekten av en "
"potentiellt komprometterad app till resten av systemet."
-#: plinth/modules/security/templates/security_report.html:46
+#: plinth/modules/security/templates/security_report.html:31
msgid ""
"\"Sandbox Coverage\" is a score of how effectively the service is isolated "
"from the rest of the system. It is only displayed while the service is "
@@ -4971,64 +5134,56 @@ msgstr ""
"\"Sandbox Coverage\" är en poäng av hur effektivt tjänsten isoleras från "
"resten av systemet. Den visas bara när tjänsten körs."
-#: plinth/modules/security/templates/security_report.html:55
+#: plinth/modules/security/templates/security_report.html:40
msgid "App Name"
msgstr "Appens namn"
-#: plinth/modules/security/templates/security_report.html:56
+#: plinth/modules/security/templates/security_report.html:41
msgid "Current Vulnerabilities"
msgstr "Aktuella sårbarheter"
-#: plinth/modules/security/templates/security_report.html:57
+#: plinth/modules/security/templates/security_report.html:42
msgid "Past Vulnerabilities"
msgstr "Tidigare sårbarheter"
-#: plinth/modules/security/templates/security_report.html:58
+#: plinth/modules/security/templates/security_report.html:43
msgid "Sandboxed"
msgstr "Sandboxed"
-#: plinth/modules/security/templates/security_report.html:59
+#: plinth/modules/security/templates/security_report.html:44
msgid "Sandbox Coverage"
msgstr "Sandbox Täckning"
-#: plinth/modules/security/templates/security_report.html:70
+#: plinth/modules/security/templates/security_report.html:55
msgid "N/A"
msgstr "N/A"
-#: plinth/modules/security/templates/security_report.html:72
+#: plinth/modules/security/templates/security_report.html:57
msgid "Yes"
msgstr "Ja"
-#: plinth/modules/security/templates/security_report.html:74
+#: plinth/modules/security/templates/security_report.html:59
msgid "No"
msgstr "Nej"
-#: plinth/modules/security/templates/security_report.html:81
+#: plinth/modules/security/templates/security_report.html:66
msgid "Not running"
msgstr "Körs inte"
-#: plinth/modules/security/views.py:69
+#: plinth/modules/security/views.py:53
#, python-brace-format
msgid "Error setting restricted access: {exception}"
msgstr "Fel vid inställning av begränsad åtkomst: {exception}"
-#: plinth/modules/security/views.py:72
+#: plinth/modules/security/views.py:56
msgid "Updated security configuration"
msgstr "Uppdaterad säkerhetskonfiguration"
-#: plinth/modules/shaarli/__init__.py:34 plinth/modules/shaarli/manifest.py:23
-msgid "Shaarli"
-msgstr "Shaarli"
-
-#: plinth/modules/shaarli/__init__.py:36
-msgid "Bookmarks"
-msgstr "Bokmärken"
-
-#: plinth/modules/shaarli/__init__.py:39
+#: plinth/modules/shaarli/__init__.py:20
msgid "Shaarli allows you to save and share bookmarks."
msgstr "Shaarli kan du spara och dela bokmärken."
-#: plinth/modules/shaarli/__init__.py:40
+#: plinth/modules/shaarli/__init__.py:21
msgid ""
"When enabled, Shaarli will be available from /shaarli path on the web server. Note that Shaarli "
@@ -5040,15 +5195,15 @@ msgstr ""
"Observera att Shaarli bara stöder ett enda användarkonto, som du kommer att "
"behöva ställa in på det första besöket."
-#: plinth/modules/shadowsocks/__init__.py:35
-msgid "Shadowsocks"
-msgstr "Shadowsocks"
+#: plinth/modules/shaarli/__init__.py:39 plinth/modules/shaarli/manifest.py:8
+msgid "Shaarli"
+msgstr "Shaarli"
-#: plinth/modules/shadowsocks/__init__.py:39
-msgid "Socks5 Proxy"
-msgstr "Socks5 proxy"
+#: plinth/modules/shaarli/__init__.py:40
+msgid "Bookmarks"
+msgstr "Bokmärken"
-#: plinth/modules/shadowsocks/__init__.py:46
+#: plinth/modules/shadowsocks/__init__.py:25
msgid ""
"Shadowsocks is a lightweight and secure SOCKS5 proxy, designed to protect "
"your Internet traffic. It can be used to bypass Internet filtering and "
@@ -5058,7 +5213,7 @@ msgstr ""
"Internet-trafik. Det kan användas för att kringgå Internetfiltrering och "
"censur."
-#: plinth/modules/shadowsocks/__init__.py:50
+#: plinth/modules/shadowsocks/__init__.py:29
#, python-brace-format
msgid ""
"Your {box_name} can run a Shadowsocks client, that can connect to a "
@@ -5071,7 +5226,7 @@ msgstr ""
"enheter kan ansluta till denna proxy och deras data kommer att krypteras och "
"proxied via Shadowsocks-servern."
-#: plinth/modules/shadowsocks/__init__.py:55
+#: plinth/modules/shadowsocks/__init__.py:34
msgid ""
"To use Shadowsocks after setup, set the SOCKS5 proxy URL in your device, "
"browser or application to http://freedombox_address:1080/"
@@ -5079,37 +5234,41 @@ msgstr ""
"Till använda Shadowsocks efter setup, sätta den SOCKS5 genom fullmakt URL i "
"din anordning, beter eller applicering till http://freedombox_address: 1080/"
-#: plinth/modules/shadowsocks/forms.py:28
-#: plinth/modules/shadowsocks/forms.py:29
+#: plinth/modules/shadowsocks/__init__.py:50
+msgid "Shadowsocks"
+msgstr "Shadowsocks"
+
+#: plinth/modules/shadowsocks/__init__.py:52
+msgid "Socks5 Proxy"
+msgstr "Socks5 proxy"
+
+#: plinth/modules/shadowsocks/forms.py:13
+#: plinth/modules/shadowsocks/forms.py:14
msgid "Recommended"
msgstr "Rekommenderas"
-#: plinth/modules/shadowsocks/forms.py:52
+#: plinth/modules/shadowsocks/forms.py:37
msgid "Server"
msgstr "Server"
-#: plinth/modules/shadowsocks/forms.py:53
+#: plinth/modules/shadowsocks/forms.py:38
msgid "Server hostname or IP address"
msgstr "Serverns värdnamn eller IP-adress"
-#: plinth/modules/shadowsocks/forms.py:57
+#: plinth/modules/shadowsocks/forms.py:42
msgid "Server port number"
msgstr "Server portnummer"
-#: plinth/modules/shadowsocks/forms.py:60
+#: plinth/modules/shadowsocks/forms.py:45
msgid "Password used to encrypt data. Must match server password."
msgstr ""
"Lösenord som används för att kryptera data. Måste matcha serverns lösenord."
-#: plinth/modules/shadowsocks/forms.py:65
+#: plinth/modules/shadowsocks/forms.py:50
msgid "Encryption method. Must match setting on server."
msgstr "Krypteringsmetod. Måste matcha inställningen på servern."
-#: plinth/modules/sharing/__init__.py:34
-msgid "Sharing"
-msgstr "Sharing"
-
-#: plinth/modules/sharing/__init__.py:38
+#: plinth/modules/sharing/__init__.py:21
#, python-brace-format
msgid ""
"Sharing allows you to share files and folders on your {box_name} over the "
@@ -5118,11 +5277,15 @@ msgstr ""
"Med Sharing kan du dela filer och mappar på din {box_name} över webben med "
"utvalda grupper av användare."
-#: plinth/modules/sharing/forms.py:33
+#: plinth/modules/sharing/__init__.py:38
+msgid "Sharing"
+msgstr "Sharing"
+
+#: plinth/modules/sharing/forms.py:18
msgid "Name of the share"
msgstr "Namn på Share-mappen"
-#: plinth/modules/sharing/forms.py:35
+#: plinth/modules/sharing/forms.py:20
msgid ""
"A lowercase alpha-numeric string that uniquely identifies a share. Example: "
"media."
@@ -5130,27 +5293,27 @@ msgstr ""
"En liten alfanumerisk sträng som unikt identifierar en resurs. Exempel: "
"Media ."
-#: plinth/modules/sharing/forms.py:39
+#: plinth/modules/sharing/forms.py:24
msgid "Path to share"
msgstr "Sökväg för Share"
-#: plinth/modules/sharing/forms.py:40
+#: plinth/modules/sharing/forms.py:25
msgid "Disk path to a folder on this server that you intend to share."
msgstr "Disk Sök väg till en mapp på den här servern som du tänker dela."
-#: plinth/modules/sharing/forms.py:43
+#: plinth/modules/sharing/forms.py:28
msgid "Public share"
msgstr "Offentlig Share"
-#: plinth/modules/sharing/forms.py:44
+#: plinth/modules/sharing/forms.py:29
msgid "Make files in this folder available to anyone with the link."
msgstr "Gör filer i den här mappen tillgängliga för alla med länken."
-#: plinth/modules/sharing/forms.py:48
+#: plinth/modules/sharing/forms.py:33
msgid "User groups that can read the files in the share"
msgstr "Användargrupper som kan läsa filerna i Share"
-#: plinth/modules/sharing/forms.py:50
+#: plinth/modules/sharing/forms.py:35
msgid ""
"Users of the selected user groups will be able to read the files in the "
"share."
@@ -5158,64 +5321,60 @@ msgstr ""
"Användare av de valda användargrupperna kommer att kunna läsa filerna i "
"Share."
-#: plinth/modules/sharing/forms.py:67
+#: plinth/modules/sharing/forms.py:52
msgid "A share with this name already exists."
msgstr "Det finns redan en share med det här namnet."
-#: plinth/modules/sharing/forms.py:78
+#: plinth/modules/sharing/forms.py:63
msgid "Shares should be either public or shared with at least one group"
msgstr "Shares ska antingen vara offentliga eller delas med minst en grupp"
-#: plinth/modules/sharing/templates/sharing.html:39
-#: plinth/modules/sharing/templates/sharing.html:42
+#: plinth/modules/sharing/templates/sharing.html:24
+#: plinth/modules/sharing/templates/sharing.html:27
msgid "Add share"
msgstr "Lägg till share"
-#: plinth/modules/sharing/templates/sharing.html:47
+#: plinth/modules/sharing/templates/sharing.html:32
msgid "No shares currently configured."
msgstr "Inga shares har konfigurerats."
-#: plinth/modules/sharing/templates/sharing.html:53
+#: plinth/modules/sharing/templates/sharing.html:38
msgid "Disk Path"
msgstr "Disk Sök väg"
-#: plinth/modules/sharing/templates/sharing.html:54
+#: plinth/modules/sharing/templates/sharing.html:39
msgid "Shared Over"
msgstr "Delas över"
-#: plinth/modules/sharing/templates/sharing.html:55
+#: plinth/modules/sharing/templates/sharing.html:40
msgid "With Groups"
msgstr "Med grupper"
-#: plinth/modules/sharing/templates/sharing.html:73
+#: plinth/modules/sharing/templates/sharing.html:58
msgid "public access"
msgstr "Publik tillgång"
-#: plinth/modules/sharing/views.py:55
+#: plinth/modules/sharing/views.py:39
msgid "Share added."
msgstr "Share tillagd."
-#: plinth/modules/sharing/views.py:60
+#: plinth/modules/sharing/views.py:44
msgid "Add Share"
msgstr "Lägg till share"
-#: plinth/modules/sharing/views.py:75
+#: plinth/modules/sharing/views.py:59
msgid "Share edited."
msgstr "Share redigerad."
-#: plinth/modules/sharing/views.py:80
+#: plinth/modules/sharing/views.py:64
msgid "Edit Share"
msgstr "Redigera share"
-#: plinth/modules/sharing/views.py:111
+#: plinth/modules/sharing/views.py:95
msgid "Share deleted."
msgstr "Share borttagen."
-#: plinth/modules/snapshot/__init__.py:37
-msgid "Storage Snapshots"
-msgstr "Ögonblicksbilder av lagring"
-
-#: plinth/modules/snapshot/__init__.py:40
+#: plinth/modules/snapshot/__init__.py:23
msgid ""
"Snapshots allows creating and managing btrfs file system snapshots. These "
"can be used to roll back the system to a previously known good state in case "
@@ -5225,7 +5384,7 @@ msgstr ""
"Dessa kan användas för att återställa systemet till ett tidigare känt skick "
"i händelse av oönskade ändringar i systemet."
-#: plinth/modules/snapshot/__init__.py:44
+#: plinth/modules/snapshot/__init__.py:27
#, no-python-format
msgid ""
"Snapshots are taken periodically (called timeline snapshots) and also before "
@@ -5236,7 +5395,7 @@ msgstr ""
"även före och efter en programvaruinstallation. Äldre ögonblicksbilder "
"kommer att rensas automatiskt enligt inställningarna nedan."
-#: plinth/modules/snapshot/__init__.py:47
+#: plinth/modules/snapshot/__init__.py:30
msgid ""
"Snapshots currently work on btrfs file systems only and on the root "
"partition only. Snapshots are not a replacement for säkerhetskopior eftersom de bara kan lagras på "
"samma partition. "
-#: plinth/modules/snapshot/forms.py:27
+#: plinth/modules/snapshot/__init__.py:52
+msgid "Storage Snapshots"
+msgstr "Ögonblicksbilder av lagring"
+
+#: plinth/modules/snapshot/forms.py:12
msgid "Free Disk Space to Maintain"
msgstr "Ledigt disk utrymme för att underhålla"
-#: plinth/modules/snapshot/forms.py:28
+#: plinth/modules/snapshot/forms.py:13
msgid ""
"Maintain this percentage of free space on the disk. If free space falls "
"below this value, older snapshots are removed until this much free space is "
@@ -5261,64 +5424,64 @@ msgstr ""
"utrymme sjunker under det här värdet tas äldre ögonblicksbilder bort tills "
"det här mycket lediga utrymmet har återfått. Standardvärdet är 30%."
-#: plinth/modules/snapshot/forms.py:35
+#: plinth/modules/snapshot/forms.py:20
msgid "Timeline Snapshots"
msgstr "Ögonblicksbilder av tidslinjen"
-#: plinth/modules/snapshot/forms.py:36
+#: plinth/modules/snapshot/forms.py:21
msgid ""
"Enable or disable timeline snapshots (hourly, daily, monthly and yearly)."
msgstr ""
"Aktivera eller inaktivera ögonblicksbilder av tidslinjen (varje timme, dag, "
"månad och år)."
-#: plinth/modules/snapshot/forms.py:41
+#: plinth/modules/snapshot/forms.py:26
msgid "Software Installation Snapshots"
msgstr "Ögonblicksbilder av programvaru installation"
-#: plinth/modules/snapshot/forms.py:42
+#: plinth/modules/snapshot/forms.py:27
msgid "Enable or disable snapshots before and after software installation"
msgstr ""
"Aktivera eller inaktivera ögonblicksbilder före och efter "
"programvaruinstallationen"
-#: plinth/modules/snapshot/forms.py:47
+#: plinth/modules/snapshot/forms.py:32
msgid "Hourly Snapshots Limit"
msgstr "Gräns för ögonblicksbilder per timme"
-#: plinth/modules/snapshot/forms.py:48
+#: plinth/modules/snapshot/forms.py:33
msgid "Keep a maximum of this many hourly snapshots."
msgstr "Behåll högst så många ögonblicksbilder per timme."
-#: plinth/modules/snapshot/forms.py:51
+#: plinth/modules/snapshot/forms.py:36
msgid "Daily Snapshots Limit"
msgstr "Dagliga ögonblicksbilder gräns"
-#: plinth/modules/snapshot/forms.py:52
+#: plinth/modules/snapshot/forms.py:37
msgid "Keep a maximum of this many daily snapshots."
msgstr "Behåll högst detta många dagliga ögonblicksbilder."
-#: plinth/modules/snapshot/forms.py:55
+#: plinth/modules/snapshot/forms.py:40
msgid "Weekly Snapshots Limit"
msgstr "Gräns för vecko ögonblicksbilder"
-#: plinth/modules/snapshot/forms.py:56
+#: plinth/modules/snapshot/forms.py:41
msgid "Keep a maximum of this many weekly snapshots."
msgstr "Behåll högst detta många veckovisa ögonblicksbilder."
-#: plinth/modules/snapshot/forms.py:59
+#: plinth/modules/snapshot/forms.py:44
msgid "Monthly Snapshots Limit"
msgstr "Månatliga ögonblicksbilder gräns"
-#: plinth/modules/snapshot/forms.py:60
+#: plinth/modules/snapshot/forms.py:45
msgid "Keep a maximum of this many monthly snapshots."
msgstr "Behåll högst detta många månatliga ögonblicksbilder."
-#: plinth/modules/snapshot/forms.py:63
+#: plinth/modules/snapshot/forms.py:48
msgid "Yearly Snapshots Limit"
msgstr "Årlig ögonblicksbild gräns"
-#: plinth/modules/snapshot/forms.py:64
+#: plinth/modules/snapshot/forms.py:49
msgid ""
"Keep a maximum of this many yearly snapshots. The default value is 0 "
"(disabled)."
@@ -5326,46 +5489,46 @@ msgstr ""
"Behåll högst detta många årliga ögonblicksbilder. Standardvärdet är 0 "
"(inaktiverat)."
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:27
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:12
msgid "Delete the following snapshots permanently?"
msgstr "Vill du ta bort följande ögonblicksbilder permanent?"
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:31
-#: plinth/modules/snapshot/templates/snapshot_manage.html:43
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:39
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:16
+#: plinth/modules/snapshot/templates/snapshot_manage.html:28
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:24
msgid "Number"
msgstr "Nummer"
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:32
-#: plinth/modules/snapshot/templates/snapshot_manage.html:44
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:40
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:17
+#: plinth/modules/snapshot/templates/snapshot_manage.html:29
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:25
msgid "Date"
msgstr "Datum"
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:52
-#: plinth/modules/snapshot/templates/snapshot_manage.html:37
-#: plinth/modules/snapshot/views.py:196
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:37
+#: plinth/modules/snapshot/templates/snapshot_manage.html:22
+#: plinth/modules/snapshot/views.py:175
msgid "Delete Snapshots"
msgstr "Ta bort ögonblicksbilder"
-#: plinth/modules/snapshot/templates/snapshot_manage.html:33
+#: plinth/modules/snapshot/templates/snapshot_manage.html:18
msgid "Create Snapshot"
msgstr "Skapa ögonblicksbild"
-#: plinth/modules/snapshot/templates/snapshot_manage.html:46
+#: plinth/modules/snapshot/templates/snapshot_manage.html:31
msgid "Rollback"
msgstr "Återställning"
-#: plinth/modules/snapshot/templates/snapshot_manage.html:57
+#: plinth/modules/snapshot/templates/snapshot_manage.html:42
msgid "active"
msgstr "Aktiva"
-#: plinth/modules/snapshot/templates/snapshot_manage.html:66
+#: plinth/modules/snapshot/templates/snapshot_manage.html:51
#, python-format
msgid "Rollback to snapshot #%(number)s"
msgstr "Återställning till ögonblicksbild #%(number)s"
-#: plinth/modules/snapshot/templates/snapshot_not_supported.html:26
+#: plinth/modules/snapshot/templates/snapshot_not_supported.html:11
#, python-format
msgid ""
"Your have a filesystem of type %(fs_type)s. Snapshots are "
@@ -5375,11 +5538,11 @@ msgstr ""
"Ögonblicksbilder är för närvarande endast tillgängliga på "
"%(types_supported)s filsystem."
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:27
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:12
msgid "Roll back the system to this snapshot?"
msgstr "Rulla tillbaka systemet till den här ögonblicksbilden?"
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:30
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:15
msgid ""
"A new snapshot with the current state of the file system will be "
"automatically created. You will be able to undo a rollback by reverting to "
@@ -5389,58 +5552,54 @@ msgstr ""
"skapas automatiskt. Du kommer att kunna ångra en återställning genom att "
"återgå till den nyligen skapade ögonblicksbilden."
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:57
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:42
#, python-format
msgid "Rollback to Snapshot #%(number)s"
msgstr "Återställning till ögonblicksbild #%(number)s"
-#: plinth/modules/snapshot/views.py:45
+#: plinth/modules/snapshot/views.py:30
msgid "Manage Snapshots"
msgstr "Hantera ögonblicksbilder"
-#: plinth/modules/snapshot/views.py:98
+#: plinth/modules/snapshot/views.py:79
msgid "Created snapshot."
msgstr "Skapade ögonblicksbild."
-#: plinth/modules/snapshot/views.py:156
+#: plinth/modules/snapshot/views.py:135
msgid "Storage snapshots configuration updated"
msgstr "Lagring ögonblicksbildkonfiguration uppdaterad"
-#: plinth/modules/snapshot/views.py:160 plinth/modules/tor/views.py:79
+#: plinth/modules/snapshot/views.py:139 plinth/modules/tor/views.py:60
#, python-brace-format
msgid "Action error: {0} [{1}] [{2}]"
msgstr "Åtgärdsfel: {0} [{1}] [{2}]"
-#: plinth/modules/snapshot/views.py:175
+#: plinth/modules/snapshot/views.py:154
msgid "Deleted all snapshots"
msgstr "Raderade alla ögonblicksbilder"
-#: plinth/modules/snapshot/views.py:179
+#: plinth/modules/snapshot/views.py:158
msgid "Deleted selected snapshots"
msgstr "Borttagna markerade ögonblicksbilder"
-#: plinth/modules/snapshot/views.py:184
+#: plinth/modules/snapshot/views.py:163
msgid "Snapshot is currently in use. Please try again later."
msgstr "Ögonblicksbild används för närvarande. Vänligen försök igen senare."
-#: plinth/modules/snapshot/views.py:207
+#: plinth/modules/snapshot/views.py:186
#, python-brace-format
msgid "Rolled back to snapshot #{number}."
msgstr "Återställs till Snapshot #{number}."
-#: plinth/modules/snapshot/views.py:210
+#: plinth/modules/snapshot/views.py:189
msgid "The system must be restarted to complete the rollback."
msgstr "Systemet måste startas om för att slutföra återställningen."
-#: plinth/modules/snapshot/views.py:222
+#: plinth/modules/snapshot/views.py:201
msgid "Rollback to Snapshot"
msgstr "Återställning till ögonblicksbild"
-#: plinth/modules/ssh/__init__.py:43
-msgid "Secure Shell (SSH) Server"
-msgstr "Secure Shell-Server (SSH)"
-
-#: plinth/modules/ssh/__init__.py:46
+#: plinth/modules/ssh/__init__.py:29
msgid ""
"A Secure Shell server uses the secure shell protocol to accept connections "
"from remote computers. An authorized remote computer can perform "
@@ -5452,11 +5611,15 @@ msgstr ""
"administrativa uppgifter, kopiera filer eller köra andra tjänster med sådana "
"anslutningar."
-#: plinth/modules/ssh/forms.py:30
+#: plinth/modules/ssh/__init__.py:50
+msgid "Secure Shell (SSH) Server"
+msgstr "Secure Shell-Server (SSH)"
+
+#: plinth/modules/ssh/forms.py:15
msgid "Disable password authentication"
msgstr "Inaktivera lösenordsautentisering"
-#: plinth/modules/ssh/forms.py:31
+#: plinth/modules/ssh/forms.py:16
msgid ""
"Improves security by preventing password guessing. Ensure that you have "
"setup SSH keys in your administrator user account before enabling this "
@@ -5466,11 +5629,11 @@ msgstr ""
"att du har installationsprogrammet SSH-nycklar i ditt "
"administratörsanvändarkonto innan du aktiverar det här alternativet."
-#: plinth/modules/ssh/templates/ssh.html:26
+#: plinth/modules/ssh/templates/ssh.html:11
msgid "Server Fingerprints"
msgstr "Server fingeravtryck"
-#: plinth/modules/ssh/templates/ssh.html:29
+#: plinth/modules/ssh/templates/ssh.html:14
msgid ""
"When connecting to the server, ensure that the fingerprint shown by the SSH "
"client matches one of these fingerprints."
@@ -5478,35 +5641,31 @@ msgstr ""
"När du ansluter till servern, se till att fingeravtryck som visas av SSH-"
"klienten matchar en av dessa fingeravtryck."
-#: plinth/modules/ssh/templates/ssh.html:38
+#: plinth/modules/ssh/templates/ssh.html:23
msgid "Algorithm"
msgstr "Algoritm"
-#: plinth/modules/ssh/templates/ssh.html:39
+#: plinth/modules/ssh/templates/ssh.html:24
msgid "Fingerprint"
msgstr "Fingeravtryck"
-#: plinth/modules/ssh/views.py:66
+#: plinth/modules/ssh/views.py:48
msgid "SSH authentication with password disabled."
msgstr "SSH-autentisering med lösenord inaktiverat."
-#: plinth/modules/ssh/views.py:69
+#: plinth/modules/ssh/views.py:51
msgid "SSH authentication with password enabled."
msgstr "SSH-autentisering med lösenord aktiverat."
-#: plinth/modules/sso/__init__.py:30
+#: plinth/modules/sso/__init__.py:33
msgid "Single Sign On"
msgstr "Enkel inloggning på"
-#: plinth/modules/sso/templates/login.html:35
+#: plinth/modules/sso/templates/login.html:20
msgid "Login"
msgstr "Logga in"
-#: plinth/modules/storage/__init__.py:39 plinth/modules/storage/__init__.py:331
-msgid "Storage"
-msgstr "Lagring"
-
-#: plinth/modules/storage/__init__.py:47
+#: plinth/modules/storage/__init__.py:30
#, python-brace-format
msgid ""
"This module allows you to manage storage media attached to your {box_name}. "
@@ -5517,147 +5676,151 @@ msgstr ""
"{box_name}. Du kan visa lagringsmedia som för närvarande används, montera "
"och demontera flyttbara media, expandera rotpartitionen etc."
-#: plinth/modules/storage/__init__.py:224
+#: plinth/modules/storage/__init__.py:52 plinth/modules/storage/__init__.py:318
+msgid "Storage"
+msgstr "Lagring"
+
+#: plinth/modules/storage/__init__.py:211
#, python-brace-format
msgid "{disk_size:.1f} bytes"
msgstr "{disk_size:.1f} byte"
-#: plinth/modules/storage/__init__.py:228
+#: plinth/modules/storage/__init__.py:215
#, python-brace-format
msgid "{disk_size:.1f} KiB"
msgstr "{disk_size:.1f} Kib"
-#: plinth/modules/storage/__init__.py:232
+#: plinth/modules/storage/__init__.py:219
#, python-brace-format
msgid "{disk_size:.1f} MiB"
msgstr "{disk_size:.1f} Mib"
-#: plinth/modules/storage/__init__.py:236
+#: plinth/modules/storage/__init__.py:223
#, python-brace-format
msgid "{disk_size:.1f} GiB"
msgstr "{disk_size:.1f} Gib"
-#: plinth/modules/storage/__init__.py:239
+#: plinth/modules/storage/__init__.py:226
#, python-brace-format
msgid "{disk_size:.1f} TiB"
msgstr "{disk_size:.1f} Tib"
-#: plinth/modules/storage/__init__.py:246
+#: plinth/modules/storage/__init__.py:233
msgid "The operation failed."
msgstr "Åtgärden misslyckades."
-#: plinth/modules/storage/__init__.py:248
+#: plinth/modules/storage/__init__.py:235
msgid "The operation was cancelled."
msgstr "Operationen avbröts."
-#: plinth/modules/storage/__init__.py:250
+#: plinth/modules/storage/__init__.py:237
msgid "The device is already unmounting."
msgstr "Enheten lossnar redan."
-#: plinth/modules/storage/__init__.py:252
+#: plinth/modules/storage/__init__.py:239
msgid "The operation is not supported due to missing driver/tool support."
msgstr "Åtgärden stöds inte på grund av saknade drivrutiner/verktygsstöd."
-#: plinth/modules/storage/__init__.py:255
+#: plinth/modules/storage/__init__.py:242
msgid "The operation timed out."
msgstr "Åtgärden orsakade timeout."
-#: plinth/modules/storage/__init__.py:257
+#: plinth/modules/storage/__init__.py:244
msgid "The operation would wake up a disk that is in a deep-sleep state."
msgstr "Åtgärden skulle väcka en disk som är i ett djupviloläge."
-#: plinth/modules/storage/__init__.py:260
+#: plinth/modules/storage/__init__.py:247
msgid "Attempting to unmount a device that is busy."
msgstr "Försöker avmontera en enhet som är upptagen."
-#: plinth/modules/storage/__init__.py:262
+#: plinth/modules/storage/__init__.py:249
msgid "The operation has already been cancelled."
msgstr "Operationen har redan avbrutits."
-#: plinth/modules/storage/__init__.py:268
+#: plinth/modules/storage/__init__.py:255
msgid "Not authorized to perform the requested operation."
msgstr "Inte behörig att utföra den begärda åtgärden."
-#: plinth/modules/storage/__init__.py:270
+#: plinth/modules/storage/__init__.py:257
msgid "The device is already mounted."
msgstr "Enheten är redan monterad."
-#: plinth/modules/storage/__init__.py:272
+#: plinth/modules/storage/__init__.py:259
msgid "The device is not mounted."
msgstr "Enheten är inte monterad."
-#: plinth/modules/storage/__init__.py:275
+#: plinth/modules/storage/__init__.py:262
msgid "Not permitted to use the requested option."
msgstr "Inte tillåtet att använda det begärda alternativet."
-#: plinth/modules/storage/__init__.py:278
+#: plinth/modules/storage/__init__.py:265
msgid "The device is mounted by another user."
msgstr "Enheten monteras av en annan användare."
-#: plinth/modules/storage/__init__.py:326
+#: plinth/modules/storage/__init__.py:313
#, no-python-format, python-brace-format
msgid "Low space on system partition: {percent_used}% used, {free_space} free."
msgstr ""
"Lågt utrymme på systempartitionen: {percent_used}% används, {free_space} "
"fritt."
-#: plinth/modules/storage/__init__.py:328
+#: plinth/modules/storage/__init__.py:315
msgid "Low disk space"
msgstr "Lågt diskutrymme"
-#: plinth/modules/storage/forms.py:79
+#: plinth/modules/storage/forms.py:64
msgid "Invalid directory name."
msgstr "Ogiltigt katalognamn."
-#: plinth/modules/storage/forms.py:97
+#: plinth/modules/storage/forms.py:82
msgid "Directory does not exist."
msgstr "Katalogen finns inte."
-#: plinth/modules/storage/forms.py:99
+#: plinth/modules/storage/forms.py:84
msgid "Path is not a directory."
msgstr "Sökvägen är inte en katalog."
-#: plinth/modules/storage/forms.py:102
+#: plinth/modules/storage/forms.py:87
msgid "Directory is not readable by the user."
msgstr "Katalogen är inte läsbar av användaren."
-#: plinth/modules/storage/forms.py:105
+#: plinth/modules/storage/forms.py:90
msgid "Directory is not writable by the user."
msgstr "Katalogen är inte skrivbar av användaren."
-#: plinth/modules/storage/forms.py:110
+#: plinth/modules/storage/forms.py:95
msgid "Directory"
msgstr "Katalog"
-#: plinth/modules/storage/forms.py:113
+#: plinth/modules/storage/forms.py:98
msgid "Subdirectory (optional)"
msgstr "Underkatalog (valfritt)"
-#: plinth/modules/storage/forms.py:160
+#: plinth/modules/storage/forms.py:145
msgid "Share"
msgstr "Share"
-#: plinth/modules/storage/forms.py:168
+#: plinth/modules/storage/forms.py:153
msgid "Other directory (specify below)"
msgstr "Annan katalog (specificera nedan)"
-#: plinth/modules/storage/templates/storage.html:35
+#: plinth/modules/storage/templates/storage.html:20
msgid "The following storage devices are in use:"
msgstr "Följande lagringsenheter används:"
-#: plinth/modules/storage/templates/storage.html:41
+#: plinth/modules/storage/templates/storage.html:26
msgid "Label"
msgstr "Etikett"
-#: plinth/modules/storage/templates/storage.html:42
+#: plinth/modules/storage/templates/storage.html:27
msgid "Mount Point"
msgstr "Monteringspunkt"
-#: plinth/modules/storage/templates/storage.html:90
+#: plinth/modules/storage/templates/storage.html:75
msgid "Partition Expansion"
msgstr "Partition expansion"
-#: plinth/modules/storage/templates/storage.html:92
+#: plinth/modules/storage/templates/storage.html:77
#, python-format
msgid ""
"There is %(expandable_root_size)s of unallocated space available after your "
@@ -5668,13 +5831,13 @@ msgstr ""
"rotpartitionen. Rotpartitionen kan utökas för att använda det här "
"utrymmet. Detta ger dig ytterligare ledigt utrymme för att lagra dina filer."
-#: plinth/modules/storage/templates/storage.html:102
-#: plinth/modules/storage/templates/storage_expand.html:39
-#: plinth/modules/storage/views.py:76
+#: plinth/modules/storage/templates/storage.html:87
+#: plinth/modules/storage/templates/storage_expand.html:24
+#: plinth/modules/storage/views.py:58
msgid "Expand Root Partition"
msgstr "Utöka root-partitionen"
-#: plinth/modules/storage/templates/storage_expand.html:29
+#: plinth/modules/storage/templates/storage_expand.html:14
#, python-format
msgid ""
"Please backup your data before proceeding. After this operation, "
@@ -5685,39 +5848,30 @@ msgstr ""
"åtgärden kommer %(expandable_root_size)s av ytterligare ledigt utrymme att "
"vara tillgängligt i rotpartitionen."
-#: plinth/modules/storage/views.py:88
+#: plinth/modules/storage/views.py:70
#, python-brace-format
msgid "Error expanding partition: {exception}"
msgstr "Fel vid utökning av partitionen: {exception}"
-#: plinth/modules/storage/views.py:91
+#: plinth/modules/storage/views.py:73
msgid "Partition expanded successfully."
msgstr "Partitionsutökning genomförd."
-#: plinth/modules/storage/views.py:109
+#: plinth/modules/storage/views.py:91
#, python-brace-format
msgid "{drive_vendor} {drive_model} can be safely unplugged."
msgstr "{drive_vendor} {drive_model} kan kopplas ur på ett säkert sätt."
-#: plinth/modules/storage/views.py:113
+#: plinth/modules/storage/views.py:95
msgid "Device can be safely unplugged."
msgstr "Enheten kan kopplas ur på ett säkert sätt."
-#: plinth/modules/storage/views.py:123
+#: plinth/modules/storage/views.py:105
#, python-brace-format
msgid "Error ejecting device: {error_message}"
msgstr "Fel mata ut enhet: {error_message}"
-#: plinth/modules/syncthing/__init__.py:40
-#: plinth/modules/syncthing/manifest.py:28
-msgid "Syncthing"
-msgstr "Syncthing"
-
-#: plinth/modules/syncthing/__init__.py:44
-msgid "File Synchronization"
-msgstr "Filsynkronisering"
-
-#: plinth/modules/syncthing/__init__.py:47
+#: plinth/modules/syncthing/__init__.py:26
msgid ""
"Syncthing is an application to synchronize files across multiple devices, e."
"g. your desktop computer and mobile phone. Creation, modification, or "
@@ -5729,7 +5883,7 @@ msgstr ""
"filer på en enhet kommer att replikeras automatiskt på alla andra enheter "
"som också kör Syncthing."
-#: plinth/modules/syncthing/__init__.py:52
+#: plinth/modules/syncthing/__init__.py:31
#, python-brace-format
msgid ""
"Running Syncthing on {box_name} provides an extra synchronization point for "
@@ -5747,19 +5901,20 @@ msgstr ""
"{box_name} är endast tillgängligt för användare som tillhör gruppen \"admin"
"\"."
-#: plinth/modules/syncthing/__init__.py:63
+#: plinth/modules/syncthing/__init__.py:40
msgid "Administer Syncthing application"
msgstr "Administrera Syncthing-program"
-#: plinth/modules/tahoe/__init__.py:43
-msgid "Tahoe-LAFS"
-msgstr "Tahoe-LAFS"
+#: plinth/modules/syncthing/__init__.py:54
+#: plinth/modules/syncthing/manifest.py:13
+msgid "Syncthing"
+msgstr "Syncthing"
-#: plinth/modules/tahoe/__init__.py:47
-msgid "Distributed File Storage"
-msgstr "Distribuerad fillagring"
+#: plinth/modules/syncthing/__init__.py:55
+msgid "File Synchronization"
+msgstr "Filsynkronisering"
-#: plinth/modules/tahoe/__init__.py:134
+#: plinth/modules/tahoe/__init__.py:30
msgid ""
"Tahoe-LAFS is a decentralized secure file storage system. It uses provider "
"independent security to store files over a distributed network of storage "
@@ -5771,7 +5926,7 @@ msgstr ""
"av lagringsnoder. Även om vissa noder misslyckas, kan dina filer hämtas från "
"de återstående noderna."
-#: plinth/modules/tahoe/__init__.py:139
+#: plinth/modules/tahoe/__init__.py:35
#, python-brace-format
msgid ""
"This {box_name} hosts a storage node and an introducer by default. "
@@ -5782,7 +5937,15 @@ msgstr ""
"standard. Ytterligare introducerare kan läggas till, vilket kommer att "
"introducera den här noden till andra lagringsnoder."
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:33
+#: plinth/modules/tahoe/__init__.py:66
+msgid "Tahoe-LAFS"
+msgstr "Tahoe-LAFS"
+
+#: plinth/modules/tahoe/__init__.py:68
+msgid "Distributed File Storage"
+msgstr "Distribuerad fillagring"
+
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:17
#, python-format
msgid ""
"The Tahoe-LAFS server domain is set to %(domain_name)s. Changing the "
@@ -5795,37 +5958,33 @@ msgstr ""
"ATT FÖRLORA DATA. Du kan komma åt Tahoe-LAFS på https://%(domain_name)s:5678."
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:55
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:39
msgid "Local introducer"
msgstr "Lokal introducerare"
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:43
#: plinth/modules/tahoe/templates/tahoe-post-setup.html:59
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:75
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:92
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:76
msgid "Pet Name"
msgstr "Namn på husdjur"
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:72
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:56
msgid "Add new introducer"
msgstr "Lägg till ny introduktören"
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:83
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:67
msgid "Add"
msgstr "Lägg till"
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:88
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:72
msgid "Connected introducers"
msgstr "Anslutna introducerare"
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:105
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:89
msgid "Remove"
msgstr "Ta bort"
-#: plinth/modules/tor/__init__.py:47
-msgid "Tor"
-msgstr "Tor"
-
-#: plinth/modules/tor/__init__.py:52
+#: plinth/modules/tor/__init__.py:33
msgid ""
"Tor is an anonymous communication system. You can learn more about it from "
"the Tor Project website. For "
@@ -5839,56 +5998,60 @@ msgstr ""
"använder TOR Browser."
-#: plinth/modules/tor/__init__.py:83
+#: plinth/modules/tor/__init__.py:55
+msgid "Tor"
+msgstr "Tor"
+
+#: plinth/modules/tor/__init__.py:66
msgid "Tor Onion Service"
msgstr "Tor Onion service"
-#: plinth/modules/tor/__init__.py:87
+#: plinth/modules/tor/__init__.py:70
msgid "Tor Socks Proxy"
msgstr "Tor SOCKS-proxy"
-#: plinth/modules/tor/__init__.py:91
+#: plinth/modules/tor/__init__.py:74
msgid "Tor Bridge Relay"
msgstr "Tor Bridge Relay"
-#: plinth/modules/tor/__init__.py:112
+#: plinth/modules/tor/__init__.py:95
msgid "Tor relay port available"
msgstr "Tor relä port tillgänglig"
-#: plinth/modules/tor/__init__.py:122
+#: plinth/modules/tor/__init__.py:105
msgid "Obfs3 transport registered"
msgstr "Obfs3 transport registrerad"
-#: plinth/modules/tor/__init__.py:132
+#: plinth/modules/tor/__init__.py:115
msgid "Obfs4 transport registered"
msgstr "Obfs4 transport registrerad"
-#: plinth/modules/tor/__init__.py:225
+#: plinth/modules/tor/__init__.py:208
#, python-brace-format
msgid "Access URL {url} on tcp{kind} via Tor"
msgstr "Tillgång URL {url} på TCP {kind} via Tor"
-#: plinth/modules/tor/__init__.py:236
+#: plinth/modules/tor/__init__.py:219
#, python-brace-format
msgid "Confirm Tor usage at {url} on tcp{kind}"
msgstr "Bekräfta Tor-användning vid {url} på TCP {kind}"
-#: plinth/modules/tor/forms.py:46
+#: plinth/modules/tor/forms.py:31
msgid ""
"Enter a valid bridge with this format: [transport] IP:ORPort [fingerprint]"
msgstr ""
"Ange en giltig brygga med det här formatet: [transport] IP:ORPort "
"[fingerprint]"
-#: plinth/modules/tor/forms.py:88
+#: plinth/modules/tor/forms.py:73
msgid "Enable Tor"
msgstr "Aktivera Tor"
-#: plinth/modules/tor/forms.py:90
+#: plinth/modules/tor/forms.py:75
msgid "Use upstream bridges to connect to Tor network"
msgstr "Använda uppströms broar för att ansluta till Tor-nätverket"
-#: plinth/modules/tor/forms.py:92
+#: plinth/modules/tor/forms.py:77
msgid ""
"When enabled, the bridges configured below will be used to connect to the "
"Tor network. Use this option if your Internet Service Provider (ISP) blocks "
@@ -5899,11 +6062,11 @@ msgstr ""
"leverantören blockerar eller censurerar anslutningar till Tor-nätverket. "
"Detta kommer att avaktivera relä lägen."
-#: plinth/modules/tor/forms.py:97
+#: plinth/modules/tor/forms.py:82
msgid "Upstream bridges"
msgstr "Uppströms broar"
-#: plinth/modules/tor/forms.py:99
+#: plinth/modules/tor/forms.py:84
msgid ""
"You can get some bridges from https://bridges.torproject.org/ and copy/paste the bridge information "
@@ -5914,11 +6077,11 @@ msgstr ""
"informationen här. För närvarande stöds transporter är ingen, obfs3, obfs4 "
"och scamblesuit."
-#: plinth/modules/tor/forms.py:105
+#: plinth/modules/tor/forms.py:90
msgid "Enable Tor relay"
msgstr "Aktivera Tor Relay"
-#: plinth/modules/tor/forms.py:106
+#: plinth/modules/tor/forms.py:91
#, python-brace-format
msgid ""
"When enabled, your {box_name} will run a Tor relay and donate bandwidth to "
@@ -5929,11 +6092,11 @@ msgstr ""
"bandbredd till Tor-nätverket. Gör detta om du har mer än 2 megabits/s av "
"uppladdning och nedladdning bandbredd."
-#: plinth/modules/tor/forms.py:111
+#: plinth/modules/tor/forms.py:96
msgid "Enable Tor bridge relay"
msgstr "Aktivera Tor Bridge Relay"
-#: plinth/modules/tor/forms.py:113
+#: plinth/modules/tor/forms.py:98
msgid ""
"When enabled, relay information is published in the Tor bridge database "
"instead of public Tor relay database making it harder to censor this node. "
@@ -5943,11 +6106,11 @@ msgstr ""
"stället för public Tor Relay-databasen, vilket gör det svårare att censurera "
"den här noden. Detta hjälper andra att kringgå censur."
-#: plinth/modules/tor/forms.py:118
+#: plinth/modules/tor/forms.py:103
msgid "Enable Tor Hidden Service"
msgstr "Aktivera Tor Hidden service"
-#: plinth/modules/tor/forms.py:120
+#: plinth/modules/tor/forms.py:105
#, python-brace-format
msgid ""
"A hidden service will allow {box_name} to provide selected services (such as "
@@ -5958,11 +6121,11 @@ msgstr ""
"tjänster (till exempel wiki eller chatt) utan att avslöja dess plats. Använd "
"inte detta för stark anonymitet ännu."
-#: plinth/modules/tor/forms.py:125
+#: plinth/modules/tor/forms.py:110
msgid "Download software packages over Tor"
msgstr "Ladda ner mjukvarupaket över Tor"
-#: plinth/modules/tor/forms.py:126
+#: plinth/modules/tor/forms.py:111
msgid ""
"When enabled, software will be downloaded over the Tor network for "
"installations and upgrades. This adds a degree of privacy and security "
@@ -5972,35 +6135,35 @@ msgstr ""
"installationer och uppgraderingar. Detta ger en viss grad av integritet och "
"säkerhet under Programnedladdningar."
-#: plinth/modules/tor/forms.py:141
+#: plinth/modules/tor/forms.py:126
msgid "Specify at least one upstream bridge to use upstream bridges."
msgstr "Ange minst en uppströms bro för att använda uppströms broar."
-#: plinth/modules/tor/manifest.py:29
+#: plinth/modules/tor/manifest.py:14
msgid "Tor Browser"
msgstr "TOR Browser"
-#: plinth/modules/tor/manifest.py:45
+#: plinth/modules/tor/manifest.py:30
msgid "Orbot: Proxy with Tor"
msgstr "Orbot: proxy med Tor"
-#: plinth/modules/tor/templates/tor.html:41
+#: plinth/modules/tor/templates/tor.html:26
msgid "Tor configuration is being updated"
msgstr "Konfigurationen av Tor uppdateras"
-#: plinth/modules/tor/templates/tor.html:50
+#: plinth/modules/tor/templates/tor.html:35
msgid "Onion Service"
msgstr "Onion tjänst"
-#: plinth/modules/tor/templates/tor.html:52
+#: plinth/modules/tor/templates/tor.html:37
msgid "Ports"
msgstr "Portar"
-#: plinth/modules/tor/templates/tor.html:82
+#: plinth/modules/tor/templates/tor.html:67
msgid "Relay"
msgstr "Relay"
-#: plinth/modules/tor/templates/tor.html:84
+#: plinth/modules/tor/templates/tor.html:69
#, python-format
msgid ""
"If your %(box_name)s is behind a router or firewall, you should make sure "
@@ -6009,21 +6172,16 @@ msgstr ""
"Om din %(box_name)s ligger bakom en router eller brandvägg bör du se till "
"att följande portar är öppna och port vidarebefordrade om det behövs:"
-#: plinth/modules/tor/templates/tor.html:112
+#: plinth/modules/tor/templates/tor.html:97
msgid "SOCKS"
msgstr "SOCKS"
-#: plinth/modules/tor/templates/tor.html:115
+#: plinth/modules/tor/templates/tor.html:100
#, python-format
msgid "A Tor SOCKS port is available on your %(box_name)s on TCP port 9050."
msgstr "En Tor SOCKS-port finns på din %(box_name)s på TCP-port 9050."
-#: plinth/modules/transmission/__init__.py:41
-#: plinth/modules/transmission/manifest.py:24
-msgid "Transmission"
-msgstr "Transmission"
-
-#: plinth/modules/transmission/__init__.py:48
+#: plinth/modules/transmission/__init__.py:27
msgid ""
"BitTorrent is a peer-to-peer file sharing protocol. Transmission daemon "
"handles Bitorrent file sharing. Note that BitTorrent is not anonymous."
@@ -6031,15 +6189,12 @@ msgstr ""
"BitTorrent är ett peer-to-peer-fildelningsprotokoll. Transmission daemon "
"hanterar bitorrent fildelning. Observera att BitTorrent inte är anonym."
-#: plinth/modules/ttrss/__init__.py:43 plinth/modules/ttrss/manifest.py:34
-msgid "Tiny Tiny RSS"
-msgstr "Tiny Tiny RSS"
+#: plinth/modules/transmission/__init__.py:48
+#: plinth/modules/transmission/manifest.py:9
+msgid "Transmission"
+msgstr "Transmission"
-#: plinth/modules/ttrss/__init__.py:47
-msgid "News Feed Reader"
-msgstr "Läsare för nyhetsflödet"
-
-#: plinth/modules/ttrss/__init__.py:50
+#: plinth/modules/ttrss/__init__.py:29
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 "
@@ -6049,7 +6204,7 @@ msgstr ""
"utformats för att läsa nyheter från vilken plats som helst, samtidigt som du "
"känner dig så nära en riktig stationär applikation som möjligt."
-#: plinth/modules/ttrss/__init__.py:54
+#: plinth/modules/ttrss/__init__.py:33
#, python-brace-format
msgid ""
"When enabled, Tiny Tiny RSS can be accessed by any användare med en {box_name} login."
-#: plinth/modules/ttrss/__init__.py:58
+#: plinth/modules/ttrss/__init__.py:37
msgid ""
"When using a mobile or desktop application for Tiny Tiny RSS, use the URL /tt-rss-app for "
@@ -6068,64 +6223,72 @@ msgstr ""
"Använd URL: en /tt-RSS-"
"app för att ansluta."
-#: plinth/modules/ttrss/__init__.py:65
+#: plinth/modules/ttrss/__init__.py:42
msgid "Read and subscribe to news feeds"
msgstr "Läsa och prenumerera på nyhetsflöden"
-#: plinth/modules/ttrss/manifest.py:25
+#: plinth/modules/ttrss/__init__.py:56 plinth/modules/ttrss/manifest.py:19
+msgid "Tiny Tiny RSS"
+msgstr "Tiny Tiny RSS"
+
+#: plinth/modules/ttrss/__init__.py:57
+msgid "News Feed Reader"
+msgstr "Läsare för nyhetsflödet"
+
+#: plinth/modules/ttrss/manifest.py:10
msgid "Tiny Tiny RSS (Fork)"
msgstr "Tiny Tiny RSS (Fork)"
-#: plinth/modules/upgrades/__init__.py:37 plinth/templates/setup.html:89
-msgid "Update"
-msgstr "Uppdatera"
-
-#: plinth/modules/upgrades/__init__.py:40
+#: plinth/modules/upgrades/__init__.py:23
msgid "Check for and apply the latest software and security updates."
msgstr ""
"Sök efter och installera de senaste program-och säkerhetsuppdateringarna."
-#: plinth/modules/upgrades/__init__.py:84
+#: plinth/modules/upgrades/__init__.py:38 plinth/templates/setup.html:74
+msgid "Update"
+msgstr "Uppdatera"
+
+#: plinth/modules/upgrades/__init__.py:71
msgid "FreedomBox Updated"
msgstr "FreedomBox uppdaterad"
-#: plinth/modules/upgrades/forms.py:28
+#: plinth/modules/upgrades/forms.py:13
msgid "Enable auto-update"
msgstr "Aktivera automatisk uppdatering"
-#: plinth/modules/upgrades/forms.py:29
+#: plinth/modules/upgrades/forms.py:14
msgid "When enabled, FreedomBox automatically updates once a day."
msgstr ""
"När den är aktiverad uppdateras FreedomBox automatiskt en gång om dagen."
-#: plinth/modules/upgrades/templates/upgrades-new-release.html:24
+#: plinth/modules/upgrades/templates/upgrades-new-release.html:9
#, python-format
msgid "%(box_name)s Updated"
msgstr "%(box_name)s uppdaterat"
-#: plinth/modules/upgrades/templates/upgrades-new-release.html:28
+#: plinth/modules/upgrades/templates/upgrades-new-release.html:13
#, python-format
msgid ""
"%(box_name)s has been updated to version %(version)s. See the release announcement."
msgstr ""
-"%(box_name)s har uppdaterats till version %(version)s. Se release-meddelande."
+"%(box_name)s har uppdaterats till version %(version)s. Se release-meddelande."
-#: plinth/modules/upgrades/templates/upgrades-new-release.html:37
-#: plinth/templates/notifications.html:59
+#: plinth/modules/upgrades/templates/upgrades-new-release.html:22
+#: plinth/templates/notifications.html:44
msgid "Dismiss"
msgstr "Avfärda"
-#: plinth/modules/upgrades/templates/upgrades.html:45
+#: plinth/modules/upgrades/templates/upgrades.html:30
msgid "Update now"
msgstr "Uppdatera nu"
-#: plinth/modules/upgrades/templates/upgrades.html:54
+#: plinth/modules/upgrades/templates/upgrades.html:39
msgid "Updating..."
msgstr "Uppdatera..."
-#: plinth/modules/upgrades/templates/upgrades.html:59
+#: plinth/modules/upgrades/templates/upgrades.html:44
msgid ""
"This may take a long time to complete. During an update, "
"you cannot install apps. Also, this web interface may be temporarily "
@@ -6136,46 +6299,42 @@ msgstr ""
"tillfälligt otillgänglig och visa ett fel. Uppdatera i så fall sidan för att "
"fortsätta."
-#: plinth/modules/upgrades/templates/upgrades.html:73
+#: plinth/modules/upgrades/templates/upgrades.html:58
msgid "Toggle recent update logs"
msgstr "Växla senaste uppdateringsloggar"
-#: plinth/modules/upgrades/templates/upgrades_configure.html:26
-#: plinth/modules/upgrades/templates/upgrades_configure.html:27
-#: plinth/modules/upgrades/views.py:107
+#: plinth/modules/upgrades/templates/upgrades_configure.html:11
+#: plinth/modules/upgrades/templates/upgrades_configure.html:12
+#: plinth/modules/upgrades/views.py:89
msgid "Manual update"
msgstr "Manuell uppdatering"
-#: plinth/modules/upgrades/views.py:66
+#: plinth/modules/upgrades/views.py:48
#, python-brace-format
msgid "Error when configuring unattended-upgrades: {error}"
msgstr "Fel vid konfigurering av obevakad uppgraderingar: {error}"
-#: plinth/modules/upgrades/views.py:70
+#: plinth/modules/upgrades/views.py:52
msgid "Automatic upgrades enabled"
msgstr "Automatiska uppgraderingar aktiverade"
-#: plinth/modules/upgrades/views.py:73
+#: plinth/modules/upgrades/views.py:55
msgid "Automatic upgrades disabled"
msgstr "Automatiska uppgraderingar inaktiverade"
-#: plinth/modules/upgrades/views.py:75
+#: plinth/modules/upgrades/views.py:57
msgid "Settings unchanged"
msgstr "Inställningarna är oförändrade"
-#: plinth/modules/upgrades/views.py:101
+#: plinth/modules/upgrades/views.py:83
msgid "Upgrade process started."
msgstr "Uppgraderingsprocessen påbörjades."
-#: plinth/modules/upgrades/views.py:104
+#: plinth/modules/upgrades/views.py:86
msgid "Starting upgrade failed."
msgstr "Det gick inte att starta uppgraderingen."
-#: plinth/modules/users/__init__.py:51
-msgid "Users and Groups"
-msgstr "Användare och grupper"
-
-#: plinth/modules/users/__init__.py:54
+#: plinth/modules/users/__init__.py:37
msgid ""
"Create and managed user accounts. These accounts serve as centralized "
"authentication mechanism for most apps. Some apps further require a user "
@@ -6186,7 +6345,7 @@ msgstr ""
"ett användarkonto för att vara en del av en grupp för att auktorisera "
"användaren att komma åt appen."
-#: plinth/modules/users/__init__.py:59
+#: plinth/modules/users/__init__.py:42
#, python-brace-format
msgid ""
"Any user may login to {box_name} web interface to see a list of apps "
@@ -6197,35 +6356,39 @@ msgstr ""
"över appar som är relevanta för dem på startsidan. Endast användare av "
"gruppen admin kan dock ändra appar eller Systeminställningar."
-#: plinth/modules/users/__init__.py:128
+#: plinth/modules/users/__init__.py:64
+msgid "Users and Groups"
+msgstr "Användare och grupper"
+
+#: plinth/modules/users/__init__.py:115
#, python-brace-format
msgid "Check LDAP entry \"{search_item}\""
msgstr "Kontrollera LDAP-posten \"{search_item}\""
-#: plinth/modules/users/forms.py:43
+#: plinth/modules/users/forms.py:28
msgid "Access to all services and system settings"
msgstr "Tillgång till alla tjänster och Systeminställningar"
-#: plinth/modules/users/forms.py:59
+#: plinth/modules/users/forms.py:44
msgid "Username is taken or is reserved."
msgstr "Användarnamnet är upptaget eller är reserverade."
-#: plinth/modules/users/forms.py:87
+#: plinth/modules/users/forms.py:72
msgid "Enter a valid username."
msgstr "Ange ett giltigt användarnamn."
-#: plinth/modules/users/forms.py:93
+#: plinth/modules/users/forms.py:78
msgid ""
"Required. 150 characters or fewer. English letters, digits and @/./-/_ only."
msgstr ""
"Krävs. 150 tecken eller färre. Engelska bokstäver, siffror och endast @/./-/"
"_ ."
-#: plinth/modules/users/forms.py:106 plinth/modules/users/forms.py:222
+#: plinth/modules/users/forms.py:91 plinth/modules/users/forms.py:207
msgid "Permissions"
msgstr "Behörigheter"
-#: plinth/modules/users/forms.py:109
+#: plinth/modules/users/forms.py:94
msgid ""
"Select which services should be available to the new user. The user will be "
"able to log in to services that support single sign-on through LDAP, if they "
@@ -6239,20 +6402,20 @@ msgstr ""
"administratörsgruppen kommer att kunna logga in på alla tjänster. De kan "
"också logga in på systemet via SSH och har administratörsprivilegier (sudo)."
-#: plinth/modules/users/forms.py:148 plinth/modules/users/forms.py:372
+#: plinth/modules/users/forms.py:133 plinth/modules/users/forms.py:357
msgid "Creating LDAP user failed."
msgstr "Det gick inte att skapa LDAP-användare."
-#: plinth/modules/users/forms.py:159
+#: plinth/modules/users/forms.py:144
#, python-brace-format
msgid "Failed to add new user to {group} group."
msgstr "Det gick inte att lägga till nya användare i gruppen {group}."
-#: plinth/modules/users/forms.py:173
+#: plinth/modules/users/forms.py:158
msgid "Authorized SSH Keys"
msgstr "Auktoriserade SSH-nycklar"
-#: plinth/modules/users/forms.py:175
+#: plinth/modules/users/forms.py:160
msgid ""
"Setting an SSH public key will allow this user to securely log in to the "
"system without using a password. You may enter multiple keys, one on each "
@@ -6262,82 +6425,82 @@ msgstr ""
"systemet utan att använda ett lösenord. Du kan ange flera nycklar, en på "
"varje rad. Tomma rader och rader som börjar med # kommer att ignoreras."
-#: plinth/modules/users/forms.py:259
+#: plinth/modules/users/forms.py:244
msgid "Renaming LDAP user failed."
msgstr "Det gick inte att byta namn på LDAP-användare."
-#: plinth/modules/users/forms.py:271
+#: plinth/modules/users/forms.py:256
msgid "Failed to remove user from group."
msgstr "Det gick inte att ta bort användare från gruppen."
-#: plinth/modules/users/forms.py:282
+#: plinth/modules/users/forms.py:267
msgid "Failed to add user to group."
msgstr "Det gick inte att lägga till användare i gruppen."
-#: plinth/modules/users/forms.py:291
+#: plinth/modules/users/forms.py:276
msgid "Unable to set SSH keys."
msgstr "Det går inte att ange SSH-nycklar."
-#: plinth/modules/users/forms.py:306
+#: plinth/modules/users/forms.py:291
msgid "Failed to change user status."
msgstr "Det gick inte att ändra användarstatus."
-#: plinth/modules/users/forms.py:314
+#: plinth/modules/users/forms.py:299
msgid "Cannot delete the only administrator in the system."
msgstr "Det går inte att ta bort den enda administratören i systemet."
-#: plinth/modules/users/forms.py:346
+#: plinth/modules/users/forms.py:331
msgid "Changing LDAP user password failed."
msgstr "Det gick inte att ändra användarlösenordet för LDAP."
-#: plinth/modules/users/forms.py:381
+#: plinth/modules/users/forms.py:366
msgid "Failed to add new user to admin group."
msgstr "Det gick inte att lägga till ny användare till administrationsgruppen."
-#: plinth/modules/users/forms.py:398
+#: plinth/modules/users/forms.py:383
msgid "Failed to restrict console access."
msgstr "Det gick inte att begränsa åtkomst till konsolen."
-#: plinth/modules/users/forms.py:410
+#: plinth/modules/users/forms.py:395
msgid "User account created, you are now logged in"
msgstr "Användarkonto skapat, du är nu inloggad"
-#: plinth/modules/users/templates/users_change_password.html:26
+#: plinth/modules/users/templates/users_change_password.html:11
#, python-format
msgid "Change Password for %(username)s"
msgstr "Ändra lösenord för %(username)s "
-#: plinth/modules/users/templates/users_change_password.html:36
+#: plinth/modules/users/templates/users_change_password.html:21
msgid "Save Password"
msgstr "Spara lösenord"
-#: plinth/modules/users/templates/users_create.html:32
-#: plinth/modules/users/templates/users_list.html:42
-#: plinth/modules/users/templates/users_list.html:44
-#: plinth/modules/users/views.py:57
+#: plinth/modules/users/templates/users_create.html:17
+#: plinth/modules/users/templates/users_list.html:27
+#: plinth/modules/users/templates/users_list.html:29
+#: plinth/modules/users/views.py:42
msgid "Create User"
msgstr "Skapa användare"
-#: plinth/modules/users/templates/users_delete.html:26
-#: plinth/modules/users/views.py:139
+#: plinth/modules/users/templates/users_delete.html:11
+#: plinth/modules/users/views.py:121
msgid "Delete User"
msgstr "Ta bort användare"
-#: plinth/modules/users/templates/users_delete.html:29
+#: plinth/modules/users/templates/users_delete.html:14
#, python-format
msgid "Delete user %(username)s permanently?"
msgstr "Ta bort användare %(username)s permanent?"
-#: plinth/modules/users/templates/users_delete.html:38
+#: plinth/modules/users/templates/users_delete.html:23
#, python-format
msgid "Delete %(username)s"
msgstr "Ta bort %(username)s"
-#: plinth/modules/users/templates/users_firstboot.html:26
+#: plinth/modules/users/templates/users_firstboot.html:11
msgid "Administrator Account"
msgstr "Administratörskonto"
-#: plinth/modules/users/templates/users_firstboot.html:29
+#: plinth/modules/users/templates/users_firstboot.html:14
msgid ""
"Choose a username and password to access this web interface. The password "
"can be changed later. This user will be granted administrative privileges. "
@@ -6347,26 +6510,26 @@ msgstr ""
"Lösenordet kan ändras senare. Denna användare kommer att beviljas "
"administrativa privilegier. Andra användare kan läggas till senare."
-#: plinth/modules/users/templates/users_firstboot.html:42
+#: plinth/modules/users/templates/users_firstboot.html:27
msgid "Create Account"
msgstr "Skapa konto"
-#: plinth/modules/users/templates/users_list.html:38
-#: plinth/modules/users/views.py:74
+#: plinth/modules/users/templates/users_list.html:23
+#: plinth/modules/users/views.py:59
msgid "Users"
msgstr "Användare"
-#: plinth/modules/users/templates/users_list.html:57
+#: plinth/modules/users/templates/users_list.html:42
#, python-format
msgid "Delete user %(username)s"
msgstr "Ta bort användare %(username)s"
-#: plinth/modules/users/templates/users_list.html:65
+#: plinth/modules/users/templates/users_list.html:50
#, python-format
msgid "Edit user %(username)s"
msgstr "Redigera användare %(username)s"
-#: plinth/modules/users/templates/users_update.html:30
+#: plinth/modules/users/templates/users_update.html:15
#, python-format
msgid ""
"Use the change password form to "
@@ -6375,52 +6538,47 @@ msgstr ""
"Använd formuläret ändra lösenord för "
"att ändra lösenordet."
-#: plinth/modules/users/templates/users_update.html:42
-#: plinth/templates/language-selection.html:32
+#: plinth/modules/users/templates/users_update.html:27
+#: plinth/templates/language-selection.html:17
msgid "Save Changes"
msgstr "Spara ändringar"
-#: plinth/modules/users/views.py:55
+#: plinth/modules/users/views.py:40
#, python-format
msgid "User %(username)s created."
msgstr "Användaren %(username)s skapades."
-#: plinth/modules/users/views.py:93
+#: plinth/modules/users/views.py:75
#, python-format
msgid "User %(username)s updated."
msgstr "Användaren %(username)s har uppdaterats."
-#: plinth/modules/users/views.py:94
+#: plinth/modules/users/views.py:76
msgid "Edit User"
msgstr "Redigera användar"
-#: plinth/modules/users/views.py:149
+#: plinth/modules/users/views.py:131
#, python-brace-format
msgid "User {user} deleted."
msgstr "Användare {user} borttagen."
-#: plinth/modules/users/views.py:156
+#: plinth/modules/users/views.py:138
msgid "Deleting LDAP user failed."
msgstr "Det gick inte att ta bort LDAP-användare."
-#: plinth/modules/users/views.py:165
+#: plinth/modules/users/views.py:147
msgid "Change Password"
msgstr "Ändra lösenord"
-#: plinth/modules/users/views.py:166
+#: plinth/modules/users/views.py:148
msgid "Password changed successfully."
msgstr "Lösenordet har ändrats."
-#: plinth/modules/wireguard/__init__.py:38
-#: plinth/modules/wireguard/manifest.py:29
-msgid "WireGuard"
-msgstr "WireGuard"
-
-#: plinth/modules/wireguard/__init__.py:43
+#: plinth/modules/wireguard/__init__.py:24
msgid "WireGuard is a fast, modern, secure VPN tunnel."
msgstr "WireGuard är en snabb, modern, säker VPN-tunnel."
-#: plinth/modules/wireguard/__init__.py:45
+#: plinth/modules/wireguard/__init__.py:26
#, python-brace-format
msgid ""
"It can be used to connect to a VPN provider which supports WireGuard, and to "
@@ -6429,7 +6587,7 @@ msgstr ""
"Den kan användas för att ansluta till en VPN-leverantör som stöder WireGuard "
"och för att dirigera all utgående trafik från {box_name} via VPN."
-#: plinth/modules/wireguard/__init__.py:49
+#: plinth/modules/wireguard/__init__.py:30
#, python-brace-format
msgid ""
"A second use case is to connect a mobile device to {box_name} while "
@@ -6440,18 +6598,23 @@ msgstr ""
"du reser. När all trafik är ansluten till ett offentligt Wi-Fi-nätverk kan "
"den vidarebefordras på ett säkert sätt via {box_name}."
-#: plinth/modules/wireguard/forms.py:47
+#: plinth/modules/wireguard/__init__.py:52
+#: plinth/modules/wireguard/manifest.py:14
+msgid "WireGuard"
+msgstr "WireGuard"
+
+#: plinth/modules/wireguard/forms.py:32
msgid "Invalid key."
msgstr "Ogiltig nyckel."
-#: plinth/modules/wireguard/forms.py:76
-#: plinth/modules/wireguard/templates/wireguard.html:32
-#: plinth/modules/wireguard/templates/wireguard.html:89
-#: plinth/modules/wireguard/templates/wireguard_delete_server.html:38
+#: plinth/modules/wireguard/forms.py:61
+#: plinth/modules/wireguard/templates/wireguard.html:17
+#: plinth/modules/wireguard/templates/wireguard.html:74
+#: plinth/modules/wireguard/templates/wireguard_delete_server.html:23
msgid "Public Key"
msgstr "Offentlig nyckel"
-#: plinth/modules/wireguard/forms.py:77
+#: plinth/modules/wireguard/forms.py:62
msgid ""
"Public key of the peer. Example: "
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs= ."
@@ -6459,11 +6622,11 @@ msgstr ""
"Offentlig nyckel för peer. Exempel: "
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs= ."
-#: plinth/modules/wireguard/forms.py:85
+#: plinth/modules/wireguard/forms.py:70
msgid "Endpoint of the server"
msgstr "Slutpunkt för servern"
-#: plinth/modules/wireguard/forms.py:86
+#: plinth/modules/wireguard/forms.py:71
msgid ""
"Domain name and port in the form \"ip:port\". Example: demo.wireguard."
"com:12912 ."
@@ -6471,11 +6634,11 @@ msgstr ""
"Domännamn och port i formuläret \"ip:port\". Exempel: demo.wireguard."
"com:12912 ."
-#: plinth/modules/wireguard/forms.py:91
+#: plinth/modules/wireguard/forms.py:76
msgid "Public key of the server"
msgstr "Offentlig nyckel för servern"
-#: plinth/modules/wireguard/forms.py:92
+#: plinth/modules/wireguard/forms.py:77
msgid ""
"Provided by the server operator, a long string of characters. Example: "
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs= ."
@@ -6483,11 +6646,11 @@ msgstr ""
"Tillhandahålls av serveroperatören, en lång sträng av tecken. Exempel: "
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs= ."
-#: plinth/modules/wireguard/forms.py:97
+#: plinth/modules/wireguard/forms.py:82
msgid "Client IP address provided by server"
msgstr "Klient-IP-adress som tillhandahålls av servern"
-#: plinth/modules/wireguard/forms.py:98
+#: plinth/modules/wireguard/forms.py:83
msgid ""
"IP address assigned to this machine on the VPN after connecting to the "
"endpoint. This value is usually provided by the server operator. Example: "
@@ -6497,11 +6660,11 @@ msgstr ""
"slutpunkten. Det här värdet tillhandahålls vanligtvis av serveroperatören. "
"Exempel: 192.168.0.10."
-#: plinth/modules/wireguard/forms.py:104
+#: plinth/modules/wireguard/forms.py:89
msgid "Private key of this machine"
msgstr "Maskinens privata nyckel"
-#: plinth/modules/wireguard/forms.py:105
+#: plinth/modules/wireguard/forms.py:90
msgid ""
"Optional. New public/private keys are generated if left blank. Public key "
"can then be provided to the server. This is the recommended way. However, "
@@ -6513,11 +6676,11 @@ msgstr ""
"rekommenderade sättet. Vissa serveroperatörer insisterar dock på att "
"tillhandahålla detta. Exempel: MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs= ."
-#: plinth/modules/wireguard/forms.py:113
+#: plinth/modules/wireguard/forms.py:98
msgid "Pre-shared key"
msgstr "I förväg delad nyckel"
-#: plinth/modules/wireguard/forms.py:114
+#: plinth/modules/wireguard/forms.py:99
msgid ""
"Optional. A shared secret key provided by the server to add an additional "
"layer of security. Fill in only if provided. Example: "
@@ -6527,104 +6690,104 @@ msgstr ""
"till ytterligare ett säkerhetslager. Fyll bara i om det finns. Exempel: "
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs=."
-#: plinth/modules/wireguard/forms.py:120
+#: plinth/modules/wireguard/forms.py:105
msgid "Use this connection to send all outgoing traffic"
msgstr "Använd den här anslutningen för att skicka all utgående trafik"
-#: plinth/modules/wireguard/forms.py:122
+#: plinth/modules/wireguard/forms.py:107
msgid "Typically checked for a VPN service though which all traffic is sent."
msgstr "Vanligtvis kontrolleras för en VPN-tjänst men som all trafik skickas."
-#: plinth/modules/wireguard/templates/wireguard.html:25
+#: plinth/modules/wireguard/templates/wireguard.html:10
msgid "As a Server"
msgstr "Som en server"
-#: plinth/modules/wireguard/templates/wireguard.html:27
+#: plinth/modules/wireguard/templates/wireguard.html:12
msgid "Peers allowed to connect to this server:"
msgstr "Peers får ansluta till den här servern:"
-#: plinth/modules/wireguard/templates/wireguard.html:33
+#: plinth/modules/wireguard/templates/wireguard.html:18
msgid "Allowed IPs"
msgstr "Tillåtna IPs"
-#: plinth/modules/wireguard/templates/wireguard.html:34
-#: plinth/modules/wireguard/templates/wireguard.html:90
+#: plinth/modules/wireguard/templates/wireguard.html:19
+#: plinth/modules/wireguard/templates/wireguard.html:75
msgid "Last Connected Time"
msgstr "Senast ansluten tid"
-#: plinth/modules/wireguard/templates/wireguard.html:53
+#: plinth/modules/wireguard/templates/wireguard.html:38
#, python-format
msgid "No peers configured to connect to this %(box_name)s yet."
msgstr ""
"Inga peer-datorer har konfigurerats för att ansluta till dessa %(box_name)s "
"ännu."
-#: plinth/modules/wireguard/templates/wireguard.html:62
+#: plinth/modules/wireguard/templates/wireguard.html:47
#, python-format
msgid "Public key for this %(box_name)s:"
msgstr "Offentlig nyckel för dessa %(box_name)s:"
-#: plinth/modules/wireguard/templates/wireguard.html:68
+#: plinth/modules/wireguard/templates/wireguard.html:53
msgid "Not configured yet."
msgstr "Inte konfigurerad än."
-#: plinth/modules/wireguard/templates/wireguard.html:72
+#: plinth/modules/wireguard/templates/wireguard.html:57
msgid "Add a new peer"
msgstr "Lägga till en ny peer"
-#: plinth/modules/wireguard/templates/wireguard.html:76
-#: plinth/modules/wireguard/views.py:69
+#: plinth/modules/wireguard/templates/wireguard.html:61
+#: plinth/modules/wireguard/views.py:51
msgid "Add Allowed Client"
msgstr "Lägga till tillåten klient"
-#: plinth/modules/wireguard/templates/wireguard.html:79
+#: plinth/modules/wireguard/templates/wireguard.html:64
msgid "As a Client"
msgstr "Som klient"
-#: plinth/modules/wireguard/templates/wireguard.html:81
+#: plinth/modules/wireguard/templates/wireguard.html:66
#, python-format
msgid "Servers that %(box_name)s will connect to:"
msgstr "Servrar som %(box_name)s kommer att ansluta till:"
-#: plinth/modules/wireguard/templates/wireguard.html:88
-#: plinth/modules/wireguard/templates/wireguard_delete_server.html:34
+#: plinth/modules/wireguard/templates/wireguard.html:73
+#: plinth/modules/wireguard/templates/wireguard_delete_server.html:19
msgid "Endpoint"
msgstr "Slutpunkt"
-#: plinth/modules/wireguard/templates/wireguard.html:111
+#: plinth/modules/wireguard/templates/wireguard.html:96
msgid "No connections to remote servers are configured yet."
msgstr "Inga anslutningar till fjärrservrar har konfigurerats ännu."
-#: plinth/modules/wireguard/templates/wireguard.html:119
+#: plinth/modules/wireguard/templates/wireguard.html:104
msgid "Add a new server"
msgstr "Lägga till en ny server"
-#: plinth/modules/wireguard/templates/wireguard.html:123
-#: plinth/modules/wireguard/views.py:178
+#: plinth/modules/wireguard/templates/wireguard.html:108
+#: plinth/modules/wireguard/views.py:160
msgid "Add Connection to Server"
msgstr "Lägga till anslutning till server"
-#: plinth/modules/wireguard/templates/wireguard_add_client.html:34
+#: plinth/modules/wireguard/templates/wireguard_add_client.html:19
msgid "Add Client"
msgstr "Lägg till klient"
-#: plinth/modules/wireguard/templates/wireguard_delete_client.html:29
+#: plinth/modules/wireguard/templates/wireguard_delete_client.html:14
msgid "Are you sure that you want to delete this client?"
msgstr "Är du säker på att du vill ta bort denna klient?"
-#: plinth/modules/wireguard/templates/wireguard_delete_server.html:29
+#: plinth/modules/wireguard/templates/wireguard_delete_server.html:14
msgid "Are you sure that you want to delete this server?"
msgstr "Är du säker på att du vill ta bort den här servern?"
-#: plinth/modules/wireguard/templates/wireguard_edit_client.html:34
+#: plinth/modules/wireguard/templates/wireguard_edit_client.html:19
msgid "Update Client"
msgstr "Uppdatera klient"
-#: plinth/modules/wireguard/templates/wireguard_edit_server.html:34
+#: plinth/modules/wireguard/templates/wireguard_edit_server.html:19
msgid "Update Connection"
msgstr "Uppdatera anslutningen"
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:27
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:12
#, python-format
msgid ""
"%(box_name)s will allow this client to connect to it. Ensure that the client "
@@ -6633,44 +6796,44 @@ msgstr ""
"%(box_name)s gör det möjligt för den här klienten att ansluta till den. "
"Kontrollera att klienten är konfigurerad med följande information."
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:35
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:20
msgid "Client public key:"
msgstr "Offentlig klientnyckel:"
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:39
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:24
msgid "IP address to use for client:"
msgstr "IP-adress som ska användas för klienten:"
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:43
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:46
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:28
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:31
msgid "Pre-shared key:"
msgstr "I förväg delad nyckel:"
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:47
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:32
msgid "Server endpoints:"
msgstr "Serverändpunkter:"
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:55
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:42
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:40
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:27
msgid "Server public key:"
msgstr "Serverns offentliga nyckel:"
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:65
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:64
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:50
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:49
msgid "Data transmitted:"
msgstr "Överförda uppgifter:"
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:69
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:68
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:54
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:53
msgid "Data received:"
msgstr "Mottagna uppgifter:"
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:73
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:72
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:58
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:57
msgid "Latest handshake:"
msgstr "Senaste handskakningen:"
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:29
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:14
#, python-format
msgid ""
"%(box_name)s will attempt to reach a WireGuard server with the following "
@@ -6681,123 +6844,123 @@ msgstr ""
"Kontrollera att servern är konfigurerad för att tillåta %(box_name)s "
"offentliga nyckel- och IP-adress."
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:38
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:23
msgid "Server endpoint:"
msgstr "Serverändpunkt:"
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:50
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:35
msgid "Public key of this machine:"
msgstr "Offentlig nyckel för denna maskin:"
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:54
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:39
msgid "IP address of this machine:"
msgstr "IP-adressen för denna maskin:"
-#: plinth/modules/wireguard/views.py:64
+#: plinth/modules/wireguard/views.py:46
msgid "Added new client."
msgstr "Lade till ny klient."
-#: plinth/modules/wireguard/views.py:79 plinth/modules/wireguard/views.py:138
+#: plinth/modules/wireguard/views.py:61 plinth/modules/wireguard/views.py:120
msgid "Client with public key already exists"
msgstr "Klient med offentlig nyckel finns redan"
-#: plinth/modules/wireguard/views.py:92
+#: plinth/modules/wireguard/views.py:74
msgid "Allowed Client"
msgstr "Tillåten klient"
-#: plinth/modules/wireguard/views.py:114
+#: plinth/modules/wireguard/views.py:96
msgid "Updated client."
msgstr "Uppdaterad klient."
-#: plinth/modules/wireguard/views.py:119
+#: plinth/modules/wireguard/views.py:101
msgid "Modify Client"
msgstr "Ändra klienten"
-#: plinth/modules/wireguard/views.py:152
+#: plinth/modules/wireguard/views.py:134
msgid "Delete Allowed Client"
msgstr "Ta bort tillåten klient"
-#: plinth/modules/wireguard/views.py:161
+#: plinth/modules/wireguard/views.py:143
msgid "Client deleted."
msgstr "Klienten har tagits bort."
-#: plinth/modules/wireguard/views.py:163
+#: plinth/modules/wireguard/views.py:145
msgid "Client not found"
msgstr "Klienten hittades inte"
-#: plinth/modules/wireguard/views.py:173
+#: plinth/modules/wireguard/views.py:155
msgid "Added new server."
msgstr "Lade till ny server."
-#: plinth/modules/wireguard/views.py:194
+#: plinth/modules/wireguard/views.py:176
msgid "Connection to Server"
msgstr "Anslutning till server"
-#: plinth/modules/wireguard/views.py:212
+#: plinth/modules/wireguard/views.py:194
msgid "Updated server."
msgstr "Uppdaterad server."
-#: plinth/modules/wireguard/views.py:217
+#: plinth/modules/wireguard/views.py:199
msgid "Modify Connection to Server"
msgstr "Ändra Anslutningen till Servern"
-#: plinth/modules/wireguard/views.py:254
+#: plinth/modules/wireguard/views.py:236
msgid "Delete Connection to Server"
msgstr "Ta bort anslutning till server"
-#: plinth/modules/wireguard/views.py:274
+#: plinth/modules/wireguard/views.py:256
msgid "Server deleted."
msgstr "Servern har tagits bort."
-#: plinth/network.py:42
+#: plinth/network.py:27
msgid "PPPoE"
msgstr "Pppoe"
-#: plinth/network.py:43
+#: plinth/network.py:28
msgid "Generic"
msgstr "Generiska"
-#: plinth/package.py:137
+#: plinth/package.py:122
msgid "Error during installation"
msgstr "Fel vid installation"
-#: plinth/package.py:159
+#: plinth/package.py:144
msgid "installing"
msgstr "Installera"
-#: plinth/package.py:161
+#: plinth/package.py:146
msgid "downloading"
msgstr "ladda ner"
-#: plinth/package.py:163
+#: plinth/package.py:148
msgid "media change"
msgstr "Mediabyte"
-#: plinth/package.py:165
+#: plinth/package.py:150
#, python-brace-format
msgid "configuration file: {file}"
msgstr "konfigurationsfil: {file}"
-#: plinth/templates/403.html:25
+#: plinth/templates/403.html:10
msgid "403 Forbidden"
msgstr "403 förbjuden"
-#: plinth/templates/403.html:29
+#: plinth/templates/403.html:14
#, python-format
msgid "You don't have permission to access %(request_path)s on this server."
msgstr ""
"Du har inte behörighet att komma åt %(request_path)s på den här servern."
-#: plinth/templates/404.html:25
+#: plinth/templates/404.html:10
msgid "404"
msgstr "404"
-#: plinth/templates/404.html:28
+#: plinth/templates/404.html:13
#, python-format
msgid "Requested page %(request_path)s was not found."
msgstr "Begärd sida %(request_path)s hittades inte."
-#: plinth/templates/404.html:34
+#: plinth/templates/404.html:19
msgid ""
"If you believe this missing page should exist, please file a bug at the "
"FreedomBox Service (Plinth) project issue tracker."
-#: plinth/templates/500.html:25
+#: plinth/templates/500.html:10
msgid "500"
msgstr "500"
-#: plinth/templates/500.html:29
+#: plinth/templates/500.html:14
#, python-format
msgid ""
"This is an internal error and not something you caused or can fix. Please "
@@ -6824,115 +6987,119 @@ msgstr ""
"plinth/issues\">bug tracker så att vi kan fixa det. Bifoga också status logg till felrapporten."
-#: plinth/templates/app.html:47
+#: plinth/templates/app-header.html:22
+msgid "Installation"
+msgstr "Installation"
+
+#: plinth/templates/app.html:32
#, python-format
msgid "Service %(service_name)s is running."
msgstr "Tjänsten %(service_name)s körs."
-#: plinth/templates/app.html:52
+#: plinth/templates/app.html:37
#, python-format
msgid "Service %(service_name)s is not running."
msgstr "Tjänsten %(service_name)s körs inte."
-#: plinth/templates/base.html:50
+#: plinth/templates/base.html:35
#, python-format
msgid "Core functionality and web interface for %(box_name)s"
msgstr "Kärnfunktioner och webbgränssnitt för %(box_name)s"
-#: plinth/templates/base.html:96
+#: plinth/templates/base.html:81
msgid "Toggle navigation"
msgstr "Växla navigation"
-#: plinth/templates/base.html:120 plinth/templates/base.html:123
+#: plinth/templates/base.html:105 plinth/templates/base.html:108
msgid "Home"
msgstr "Hem"
-#: plinth/templates/base.html:128 plinth/templates/base.html:132
+#: plinth/templates/base.html:113 plinth/templates/base.html:117
msgid "Apps"
msgstr "Appar"
-#: plinth/templates/base.html:137 plinth/templates/base.html:141
+#: plinth/templates/base.html:122 plinth/templates/base.html:126
msgid "System"
msgstr "System"
-#: plinth/templates/base.html:173 plinth/templates/base.html:174
+#: plinth/templates/base.html:158 plinth/templates/base.html:159
msgid "Change password"
msgstr "Ändra lösenord"
-#: plinth/templates/base.html:181 plinth/templates/base.html:182
+#: plinth/templates/base.html:166 plinth/templates/base.html:167
msgid "Restart"
msgstr "Starta om"
-#: plinth/templates/base.html:187 plinth/templates/base.html:188
+#: plinth/templates/base.html:172 plinth/templates/base.html:173
msgid "Shut down"
msgstr "Stänga ner"
-#: plinth/templates/base.html:195 plinth/templates/base.html:196
-#: plinth/templates/base.html:220 plinth/templates/base.html:222
+#: plinth/templates/base.html:180 plinth/templates/base.html:181
+#: plinth/templates/base.html:205 plinth/templates/base.html:207
msgid "Log out"
msgstr "Logga ut"
-#: plinth/templates/base.html:204 plinth/templates/base.html:207
+#: plinth/templates/base.html:189 plinth/templates/base.html:192
msgid "Select language"
msgstr "Välj språk"
-#: plinth/templates/base.html:212 plinth/templates/base.html:214
+#: plinth/templates/base.html:197 plinth/templates/base.html:199
msgid "Log in"
msgstr "Logga in"
-#: plinth/templates/clients.html:32
+#: plinth/templates/clients.html:17
msgid "Web"
msgstr "Webb"
-#: plinth/templates/clients.html:57
+#: plinth/templates/clients.html:42
msgid "Desktop"
msgstr "Skrivbord"
-#: plinth/templates/clients.html:68
+#: plinth/templates/clients.html:53
msgid "GNU/Linux"
msgstr "GNU/Linux"
-#: plinth/templates/clients.html:70
+#: plinth/templates/clients.html:55
msgid "Windows"
msgstr "Windows"
-#: plinth/templates/clients.html:72
+#: plinth/templates/clients.html:57
msgid "macOS"
msgstr "macOS"
-#: plinth/templates/clients.html:88
+#: plinth/templates/clients.html:73
msgid "Mobile"
msgstr "Mobil"
-#: plinth/templates/clients.html:99
+#: plinth/templates/clients.html:84
msgid "Play Store"
msgstr "Play Store"
-#: plinth/templates/clients.html:101
+#: plinth/templates/clients.html:86
msgid "F-Droid"
msgstr "F-Droid"
-#: plinth/templates/clients.html:103
+#: plinth/templates/clients.html:88
msgid "App Store"
msgstr "App Store"
-#: plinth/templates/clients.html:119
+#: plinth/templates/clients.html:104
msgid "Package"
msgstr "Paket"
-#: plinth/templates/clients.html:126
+#: plinth/templates/clients.html:111
msgid "Debian:"
msgstr "Debian:"
-#: plinth/templates/clients.html:129
+#: plinth/templates/clients.html:114
msgid "Homebrew:"
msgstr "Homebrew:"
-#: plinth/templates/clients.html:132
+#: plinth/templates/clients.html:117
msgid "RPM:"
msgstr "Rpm:"
-#: plinth/templates/first_setup.html:39
+#: plinth/templates/first_setup.html:24
#, python-format
msgid ""
"Please wait for %(box_name)s to finish installation. You can start using "
@@ -6941,11 +7108,7 @@ msgstr ""
"Vänligen vänta på %(box_name)s för att slutföra installationen. Du kan börja "
"använda din %(box_name)s när det är klart."
-#: plinth/templates/header.html:36
-msgid "Installation"
-msgstr "Installation"
-
-#: plinth/templates/index.html:37
+#: plinth/templates/index.html:22
#, python-format
msgid ""
"Enable some applications to add shortcuts to "
@@ -6954,11 +7117,11 @@ msgstr ""
"Aktivera vissa applicationer för att lägga till "
"genvägar till den här sidan."
-#: plinth/templates/index.html:59
+#: plinth/templates/index.html:44
msgid "Configure »"
msgstr "Konfigurera »"
-#: plinth/templates/index.html:115
+#: plinth/templates/index.html:100
#, python-format
msgid ""
"%(box_name)s, a Debian pure blend, is a 100%% free software self-hosting web "
@@ -6970,7 +7133,7 @@ msgstr ""
"maskiner. Det tillhandahåller online-kommunikationsverktyg som respekterar "
"din integritet och ägandet av data."
-#: plinth/templates/index.html:124
+#: plinth/templates/index.html:109
#, python-format
msgid ""
"This portal is a part of the %(box_name)s web interface. %(box_name)s is "
@@ -6981,42 +7144,42 @@ msgstr ""
"är fri programvara, distribueras under GNU Affero General Public License, "
"version 3 eller senare."
-#: plinth/templates/index.html:144
+#: plinth/templates/index.html:129
msgid "Homepage"
msgstr "Hemsida"
-#: plinth/templates/index.html:147
+#: plinth/templates/index.html:132
msgid "Source Code"
msgstr "Källkoden"
-#: plinth/templates/index.html:150
+#: plinth/templates/index.html:135
msgid "Donate"
msgstr "Donera"
-#: plinth/templates/index.html:154
+#: plinth/templates/index.html:139
msgid "FreedomBox Foundation"
msgstr "FreedomBox Foundation"
-#: plinth/templates/index.html:161
+#: plinth/templates/index.html:146
msgid "IRC Chatroom"
msgstr "IRC chatrum"
-#: plinth/templates/index.html:166
+#: plinth/templates/index.html:151
msgid "Mailing list"
msgstr "E-postlista"
-#: plinth/templates/internal-zone.html:26
+#: plinth/templates/internal-zone.html:11
#, python-format
msgid "%(service_name)s is available only on internal networks."
msgstr "%(service_name)s är endast tillgänglig på interna nätverk."
-#: plinth/templates/internal-zone.html:32
+#: plinth/templates/internal-zone.html:17
msgid "Currently there are no network interfaces configured as internal."
msgstr ""
"Det finns för närvarande inga nätverksgränssnitt som är konfigurerade som "
"interna."
-#: plinth/templates/internal-zone.html:34
+#: plinth/templates/internal-zone.html:19
#, python-format
msgid ""
"Currently the following network interfaces are configured as internal: "
@@ -7025,15 +7188,15 @@ msgstr ""
"För närvarande konfigureras följande nätverksgränssnitt som interna: "
"%(interface_list)s"
-#: plinth/templates/notifications-dropdown.html:26
+#: plinth/templates/notifications-dropdown.html:11
msgid "Notifications"
msgstr "Aviseringar"
-#: plinth/templates/port-forwarding-info.html:23
+#: plinth/templates/port-forwarding-info.html:8
msgid "Port Forwarding"
msgstr "Port Forwarding"
-#: plinth/templates/port-forwarding-info.html:26
+#: plinth/templates/port-forwarding-info.html:11
#, python-format
msgid ""
"If your FreedomBox is behind a router, you will need to set up port "
@@ -7043,15 +7206,15 @@ msgstr ""
"Om din FreedomBox är bakom en router, måste du ställa in Port Forwarding på "
"routern. Du bör vidarebefordra följande portar för %(service_name)s:"
-#: plinth/templates/setup.html:51
+#: plinth/templates/setup.html:36
msgid "Install this application?"
msgstr "Installera den här applikationen?"
-#: plinth/templates/setup.html:55
+#: plinth/templates/setup.html:40
msgid "This application needs an update. Update now?"
msgstr "Det här programmet behöver uppdateras. Uppdatera nu?"
-#: plinth/templates/setup.html:66
+#: plinth/templates/setup.html:51
msgid ""
"Another installation or upgrade is already running. Please wait for a few "
"moments before trying again."
@@ -7059,49 +7222,49 @@ msgstr ""
"En annan installation eller uppgradering körs redan. Vänta en stund innan du "
"försöker igen."
-#: plinth/templates/setup.html:73
+#: plinth/templates/setup.html:58
msgid "This application is currently not available in your distribution."
msgstr "Denna ansökan är för närvarande inte tillgänglig i din distribution."
-#: plinth/templates/setup.html:87
+#: plinth/templates/setup.html:72
msgid "Install"
msgstr "Installera"
-#: plinth/templates/setup.html:98
+#: plinth/templates/setup.html:83
msgid "Performing pre-install operation"
msgstr "Utföra för installationsåtgärd"
-#: plinth/templates/setup.html:102
+#: plinth/templates/setup.html:87
msgid "Performing post-install operation"
msgstr "Utföra åtgärder efter installationen"
-#: plinth/templates/setup.html:107
+#: plinth/templates/setup.html:92
#, python-format
msgid "Installing %(package_names)s: %(status)s"
msgstr "Installerar %(package_names)s:%(status)s"
-#: plinth/templates/setup.html:117
+#: plinth/templates/setup.html:102
#, python-format
msgid "%(percentage)s%% complete"
msgstr "%(percentage)s %% färdigt"
-#: plinth/templates/toolbar.html:38
+#: plinth/templates/toolbar.html:23
msgid "Launch web client"
msgstr "Starta webbklient"
-#: plinth/templates/toolbar.html:47
+#: plinth/templates/toolbar.html:32
msgid "Client Apps"
msgstr "Klientappar"
-#: plinth/views.py:179
+#: plinth/views.py:189
msgid "Application enabled"
msgstr "Program aktiverat"
-#: plinth/views.py:182
+#: plinth/views.py:192
msgid "Application disabled"
msgstr "Programmet är inaktiverat"
-#: plinth/web_framework.py:190
+#: plinth/web_framework.py:107
msgid "Gujarati"
msgstr "Gujarati"
diff --git a/plinth/locale/ta/LC_MESSAGES/django.po b/plinth/locale/ta/LC_MESSAGES/django.po
index 50bbe65fa..c6ef20dd8 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: 2020-02-14 21:26+0200\n"
+"POT-Creation-Date: 2020-02-24 19:12-0500\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME \n"
"Language-Team: LANGUAGE \n"
@@ -30,101 +30,97 @@ msgstr ""
msgid "Page source"
msgstr ""
-#: plinth/context_processors.py:38 plinth/views.py:69
+#: plinth/context_processors.py:23 plinth/views.py:53
msgid "FreedomBox"
msgstr ""
-#: plinth/daemon.py:85
+#: plinth/daemon.py:70
#, python-brace-format
msgid "Service {service_name} is running"
msgstr ""
-#: plinth/daemon.py:111
+#: plinth/daemon.py:96
#, python-brace-format
msgid "Listening on {kind} port {listen_address}:{port}"
msgstr ""
-#: plinth/daemon.py:114
+#: plinth/daemon.py:99
#, python-brace-format
msgid "Listening on {kind} port {port}"
msgstr ""
-#: plinth/daemon.py:182
+#: plinth/daemon.py:167
#, python-brace-format
msgid "Connect to {host}:{port}"
msgstr ""
-#: plinth/daemon.py:184
+#: plinth/daemon.py:169
#, python-brace-format
msgid "Cannot connect to {host}:{port}"
msgstr ""
-#: plinth/forms.py:39
+#: plinth/forms.py:24
msgid "Enable application"
msgstr ""
-#: plinth/forms.py:54
+#: plinth/forms.py:39
msgid "Select a domain name to be used with this application"
msgstr ""
-#: plinth/forms.py:56
+#: plinth/forms.py:41
msgid ""
"Warning! The application may not work properly if domain name is changed "
"later."
msgstr ""
-#: plinth/forms.py:64
+#: plinth/forms.py:49
msgid "Language"
msgstr ""
-#: plinth/forms.py:65
+#: plinth/forms.py:50
msgid "Language to use for presenting this web interface"
msgstr ""
-#: plinth/forms.py:72
+#: plinth/forms.py:57
msgid "Use the language preference set in the browser"
msgstr ""
-#: plinth/middleware.py:72 plinth/templates/setup.html:45
+#: plinth/middleware.py:57 plinth/templates/setup.html:30
msgid "Application installed."
msgstr ""
-#: plinth/middleware.py:78
+#: plinth/middleware.py:63
#, python-brace-format
msgid "Error installing application: {string} {details}"
msgstr ""
-#: plinth/middleware.py:82
+#: plinth/middleware.py:67
#, python-brace-format
msgid "Error installing application: {error}"
msgstr ""
-#: plinth/modules/apache/__init__.py:51
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:88
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:60
+#: plinth/modules/apache/__init__.py:40
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:73
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:45
msgid "Web Server"
msgstr ""
-#: plinth/modules/apache/__init__.py:57
+#: plinth/modules/apache/__init__.py:46
#, python-brace-format
msgid "{box_name} Web Interface (Plinth)"
msgstr ""
-#: plinth/modules/apache/components.py:135
+#: plinth/modules/apache/components.py:120
#, python-brace-format
msgid "Access URL {url} on tcp{kind}"
msgstr ""
-#: plinth/modules/apache/components.py:139
+#: plinth/modules/apache/components.py:124
#, python-brace-format
msgid "Access URL {url}"
msgstr ""
-#: plinth/modules/avahi/__init__.py:46
-msgid "Service Discovery"
-msgstr ""
-
-#: plinth/modules/avahi/__init__.py:50
+#: plinth/modules/avahi/__init__.py:33
#, python-brace-format
msgid ""
"Service discovery allows other devices on the network to discover your "
@@ -135,209 +131,213 @@ msgid ""
"network."
msgstr ""
-#: plinth/modules/avahi/__init__.py:77
+#: plinth/modules/avahi/__init__.py:57
+msgid "Service Discovery"
+msgstr ""
+
+#: plinth/modules/avahi/__init__.py:67
msgid "Local Network Domain"
msgstr ""
-#: plinth/modules/backups/__init__.py:40
-msgid "Backups"
-msgstr ""
-
-#: plinth/modules/backups/__init__.py:45
+#: plinth/modules/backups/__init__.py:28
msgid "Backups allows creating and managing backup archives."
msgstr ""
-#: plinth/modules/backups/forms.py:48
+#: plinth/modules/backups/__init__.py:47
+msgid "Backups"
+msgstr ""
+
+#: plinth/modules/backups/forms.py:33
#, python-brace-format
msgid "{app} (No data to backup)"
msgstr ""
-#: plinth/modules/backups/forms.py:67
+#: plinth/modules/backups/forms.py:52
msgid "Included apps"
msgstr ""
-#: plinth/modules/backups/forms.py:67
+#: plinth/modules/backups/forms.py:52
msgid "Apps to include in the backup"
msgstr ""
-#: plinth/modules/backups/forms.py:81
+#: plinth/modules/backups/forms.py:66
msgid "Select the apps you want to restore"
msgstr ""
-#: plinth/modules/backups/forms.py:94
+#: plinth/modules/backups/forms.py:79
msgid "Upload File"
msgstr ""
-#: plinth/modules/backups/forms.py:96
+#: plinth/modules/backups/forms.py:81
msgid "Backup files have to be in .tar.gz format"
msgstr ""
-#: plinth/modules/backups/forms.py:97
+#: plinth/modules/backups/forms.py:82
msgid "Select the backup file you want to upload"
msgstr ""
-#: plinth/modules/backups/forms.py:103
+#: plinth/modules/backups/forms.py:88
msgid "Repository path format incorrect."
msgstr ""
-#: plinth/modules/backups/forms.py:110
+#: plinth/modules/backups/forms.py:95
#, python-brace-format
msgid "Invalid username: {username}"
msgstr ""
-#: plinth/modules/backups/forms.py:120
+#: plinth/modules/backups/forms.py:105
#, python-brace-format
msgid "Invalid hostname: {hostname}"
msgstr ""
-#: plinth/modules/backups/forms.py:124
+#: plinth/modules/backups/forms.py:109
#, python-brace-format
msgid "Invalid directory path: {dir_path}"
msgstr ""
-#: plinth/modules/backups/forms.py:130
+#: plinth/modules/backups/forms.py:115
msgid "Encryption"
msgstr ""
-#: plinth/modules/backups/forms.py:131
+#: plinth/modules/backups/forms.py:116
msgid ""
"\"Key in Repository\" means that a password-protected key is stored with the "
"backup."
msgstr ""
-#: plinth/modules/backups/forms.py:135 plinth/modules/networks/forms.py:280
+#: plinth/modules/backups/forms.py:120 plinth/modules/networks/forms.py:262
msgid "Passphrase"
msgstr ""
-#: plinth/modules/backups/forms.py:136
+#: plinth/modules/backups/forms.py:121
msgid "Passphrase; Only needed when using encryption."
msgstr ""
-#: plinth/modules/backups/forms.py:139
+#: plinth/modules/backups/forms.py:124
msgid "Confirm Passphrase"
msgstr ""
-#: plinth/modules/backups/forms.py:139
+#: plinth/modules/backups/forms.py:124
msgid "Repeat the passphrase."
msgstr ""
-#: plinth/modules/backups/forms.py:150
+#: plinth/modules/backups/forms.py:135
msgid "The entered encryption passphrases do not match"
msgstr ""
-#: plinth/modules/backups/forms.py:154
+#: plinth/modules/backups/forms.py:139
msgid "Passphrase is needed for encryption."
msgstr ""
-#: plinth/modules/backups/forms.py:189
+#: plinth/modules/backups/forms.py:174
msgid "Select Disk or Partition"
msgstr ""
-#: plinth/modules/backups/forms.py:190
+#: plinth/modules/backups/forms.py:175
msgid "Backups will be stored in the directory FreedomBoxBackups"
msgstr ""
-#: plinth/modules/backups/forms.py:199
+#: plinth/modules/backups/forms.py:184
msgid "SSH Repository Path"
msgstr ""
-#: plinth/modules/backups/forms.py:200
+#: plinth/modules/backups/forms.py:185
msgid ""
"Path of a new or existing repository. Example: user@host:~/path/to/repo/"
"i>"
msgstr ""
-#: plinth/modules/backups/forms.py:204
+#: plinth/modules/backups/forms.py:189
msgid "SSH server password"
msgstr ""
-#: plinth/modules/backups/forms.py:205
+#: plinth/modules/backups/forms.py:190
msgid ""
"Password of the SSH Server.
SSH key-based authentication is not yet "
"possible."
msgstr ""
-#: plinth/modules/backups/forms.py:224
+#: plinth/modules/backups/forms.py:209
msgid "Remote backup repository already exists."
msgstr ""
-#: plinth/modules/backups/forms.py:230
+#: plinth/modules/backups/forms.py:215
msgid "Select verified SSH public key"
msgstr ""
-#: plinth/modules/backups/repository.py:48
+#: plinth/modules/backups/repository.py:33
msgid ""
"Connection refused - make sure you provided correct credentials and the "
"server is running."
msgstr ""
-#: plinth/modules/backups/repository.py:55
+#: plinth/modules/backups/repository.py:40
msgid "Connection refused"
msgstr ""
-#: plinth/modules/backups/repository.py:62
+#: plinth/modules/backups/repository.py:47
msgid "Repository not found"
msgstr ""
-#: plinth/modules/backups/repository.py:67
+#: plinth/modules/backups/repository.py:52
msgid "Incorrect encryption passphrase"
msgstr ""
-#: plinth/modules/backups/repository.py:72
+#: plinth/modules/backups/repository.py:57
msgid "SSH access denied"
msgstr ""
-#: plinth/modules/backups/repository.py:78
+#: plinth/modules/backups/repository.py:63
msgid "Repository path is neither empty nor is an existing backups repository."
msgstr ""
-#: plinth/modules/backups/repository.py:152
+#: plinth/modules/backups/repository.py:137
msgid "Existing repository is not encrypted."
msgstr ""
-#: plinth/modules/backups/repository.py:337
+#: plinth/modules/backups/repository.py:322
#, python-brace-format
msgid "{box_name} storage"
msgstr ""
-#: plinth/modules/backups/templates/backups.html:45
-#: plinth/modules/backups/views.py:77
+#: plinth/modules/backups/templates/backups.html:30
+#: plinth/modules/backups/views.py:60
msgid "Create a new backup"
msgstr ""
-#: plinth/modules/backups/templates/backups.html:49
+#: plinth/modules/backups/templates/backups.html:34
msgid "Create Backup"
msgstr ""
-#: plinth/modules/backups/templates/backups.html:52
+#: plinth/modules/backups/templates/backups.html:37
msgid "Upload and restore a backup archive"
msgstr ""
-#: plinth/modules/backups/templates/backups.html:56
+#: plinth/modules/backups/templates/backups.html:41
msgid "Upload and Restore"
msgstr ""
-#: plinth/modules/backups/templates/backups.html:59
+#: plinth/modules/backups/templates/backups.html:44
msgid "Add a backup location"
msgstr ""
-#: plinth/modules/backups/templates/backups.html:63
+#: plinth/modules/backups/templates/backups.html:48
msgid "Add Backup Location"
msgstr ""
-#: plinth/modules/backups/templates/backups.html:66
+#: plinth/modules/backups/templates/backups.html:51
msgid "Add a remote backup location"
msgstr ""
-#: plinth/modules/backups/templates/backups.html:70
+#: plinth/modules/backups/templates/backups.html:55
msgid "Add Remote Backup Location"
msgstr ""
-#: plinth/modules/backups/templates/backups.html:73
+#: plinth/modules/backups/templates/backups.html:58
msgid "Existing Backups"
msgstr ""
-#: plinth/modules/backups/templates/backups_add_remote_repository.html:34
+#: plinth/modules/backups/templates/backups_add_remote_repository.html:19
#, python-format
msgid ""
"The credentials for this repository are stored on your %(box_name)s.
"
@@ -345,71 +345,72 @@ msgid ""
"if chosen, the encryption passphrase."
msgstr ""
-#: plinth/modules/backups/templates/backups_add_remote_repository.html:43
+#: plinth/modules/backups/templates/backups_add_remote_repository.html:28
msgid "Create Location"
msgstr ""
-#: plinth/modules/backups/templates/backups_add_repository.html:34
-#: plinth/modules/gitweb/views.py:70
+#: plinth/modules/backups/templates/backups_add_repository.html:19
+#: plinth/modules/gitweb/views.py:50
msgid "Create Repository"
msgstr ""
-#: plinth/modules/backups/templates/backups_delete.html:27
+#: plinth/modules/backups/templates/backups_delete.html:12
msgid "Delete this archive permanently?"
msgstr ""
-#: plinth/modules/backups/templates/backups_delete.html:33
-#: plinth/modules/ikiwiki/forms.py:30
-#: plinth/modules/networks/templates/connection_show.html:78
-#: plinth/modules/sharing/templates/sharing.html:52
+#: plinth/modules/backups/templates/backups_delete.html:18
+#: plinth/modules/ikiwiki/forms.py:15
+#: plinth/modules/networks/templates/connection_show.html:63
+#: plinth/modules/sharing/templates/sharing.html:37
msgid "Name"
msgstr ""
-#: plinth/modules/backups/templates/backups_delete.html:34
+#: plinth/modules/backups/templates/backups_delete.html:19
msgid "Time"
msgstr ""
-#: plinth/modules/backups/templates/backups_delete.html:51
+#: plinth/modules/backups/templates/backups_delete.html:36
#, python-format
msgid "Delete Archive %(name)s"
msgstr ""
-#: plinth/modules/backups/templates/backups_form.html:35
-#: plinth/modules/gitweb/templates/gitweb_create_edit.html:35
-#: plinth/modules/networks/templates/router_configuration_update.html:34
-#: plinth/modules/pagekite/templates/pagekite_custom_services.html:47
-#: plinth/modules/sharing/templates/sharing_add_edit.html:35
+#: plinth/modules/backups/templates/backups_form.html:20
+#: plinth/modules/gitweb/templates/gitweb_create_edit.html:20
+#: plinth/modules/networks/templates/internet_connectivity_type.html:18
+#: plinth/modules/networks/templates/router_configuration_update.html:19
+#: plinth/modules/pagekite/templates/pagekite_custom_services.html:32
+#: plinth/modules/sharing/templates/sharing_add_edit.html:20
msgid "Submit"
msgstr ""
-#: plinth/modules/backups/templates/backups_repository_remove.html:28
+#: plinth/modules/backups/templates/backups_repository_remove.html:13
msgid "Are you sure that you want to remove this repository?"
msgstr ""
-#: plinth/modules/backups/templates/backups_repository_remove.html:34
+#: plinth/modules/backups/templates/backups_repository_remove.html:19
msgid ""
"The remote repository will not be deleted. This just removes the repository "
"from the listing on the backup page, you can add it again later on."
msgstr ""
-#: plinth/modules/backups/templates/backups_repository_remove.html:46
+#: plinth/modules/backups/templates/backups_repository_remove.html:31
msgid "Remove Location"
msgstr ""
-#: plinth/modules/backups/templates/backups_restore.html:30
+#: plinth/modules/backups/templates/backups_restore.html:15
msgid "Restore data from"
msgstr ""
-#: plinth/modules/backups/templates/backups_restore.html:43
-#: plinth/modules/backups/views.py:171
+#: plinth/modules/backups/templates/backups_restore.html:28
+#: plinth/modules/backups/views.py:154
msgid "Restore"
msgstr ""
-#: plinth/modules/backups/templates/backups_restore.html:47
+#: plinth/modules/backups/templates/backups_restore.html:32
msgid "Restoring"
msgstr ""
-#: plinth/modules/backups/templates/backups_upload.html:32
+#: plinth/modules/backups/templates/backups_upload.html:17
#, python-format
msgid ""
"\n"
@@ -421,154 +422,146 @@ msgid ""
" "
msgstr ""
-#: plinth/modules/backups/templates/backups_upload.html:42
-#: plinth/modules/help/templates/statuslog.html:38
+#: plinth/modules/backups/templates/backups_upload.html:27
+#: plinth/modules/help/templates/statuslog.html:23
msgid "Caution:"
msgstr ""
-#: plinth/modules/backups/templates/backups_upload.html:43
+#: plinth/modules/backups/templates/backups_upload.html:28
#, python-format
msgid ""
"You have %(max_filesize)s available to restore a backup. Exceeding this "
"limit can leave your %(box_name)s unusable."
msgstr ""
-#: plinth/modules/backups/templates/backups_upload.html:56
+#: plinth/modules/backups/templates/backups_upload.html:41
msgid "Upload file"
msgstr ""
-#: plinth/modules/backups/templates/verify_ssh_hostkey.html:33
+#: plinth/modules/backups/templates/verify_ssh_hostkey.html:18
#, python-format
msgid ""
"Could not reach SSH host %(hostname)s. Please verify that the host is up and "
"accepting connections."
msgstr ""
-#: plinth/modules/backups/templates/verify_ssh_hostkey.html:43
+#: plinth/modules/backups/templates/verify_ssh_hostkey.html:28
#, python-format
msgid ""
"The authenticity of SSH host %(hostname)s could not be established. The host "
"advertises the following SSH public keys. Please verify any one of them."
msgstr ""
-#: plinth/modules/backups/templates/verify_ssh_hostkey.html:55
+#: plinth/modules/backups/templates/verify_ssh_hostkey.html:40
msgid "How to verify?"
msgstr ""
-#: plinth/modules/backups/templates/verify_ssh_hostkey.html:60
+#: plinth/modules/backups/templates/verify_ssh_hostkey.html:45
msgid ""
"Run the following command on the SSH host machine. The output should match "
"one of the provided options. You can also use dsa, ecdsa, ed25519 etc. "
"instead of rsa, by choosing the corresponding file."
msgstr ""
-#: plinth/modules/backups/templates/verify_ssh_hostkey.html:75
+#: plinth/modules/backups/templates/verify_ssh_hostkey.html:60
msgid "Verify Host"
msgstr ""
-#: plinth/modules/backups/views.py:72
+#: plinth/modules/backups/views.py:55
msgid "Archive created."
msgstr ""
-#: plinth/modules/backups/views.py:99
+#: plinth/modules/backups/views.py:82
msgid "Delete Archive"
msgstr ""
-#: plinth/modules/backups/views.py:111
+#: plinth/modules/backups/views.py:94
msgid "Archive deleted."
msgstr ""
-#: plinth/modules/backups/views.py:124
+#: plinth/modules/backups/views.py:107
msgid "Upload and restore a backup"
msgstr ""
-#: plinth/modules/backups/views.py:159
+#: plinth/modules/backups/views.py:142
msgid "Restored files from backup."
msgstr ""
-#: plinth/modules/backups/views.py:186
+#: plinth/modules/backups/views.py:169
msgid "No backup file found."
msgstr ""
-#: plinth/modules/backups/views.py:194
+#: plinth/modules/backups/views.py:177
msgid "Restore from uploaded file"
msgstr ""
-#: plinth/modules/backups/views.py:251
+#: plinth/modules/backups/views.py:234
msgid "No additional disks available to add a repository."
msgstr ""
-#: plinth/modules/backups/views.py:259
+#: plinth/modules/backups/views.py:242
msgid "Create backup repository"
msgstr ""
-#: plinth/modules/backups/views.py:286
+#: plinth/modules/backups/views.py:269
msgid "Create remote backup repository"
msgstr ""
-#: plinth/modules/backups/views.py:305
+#: plinth/modules/backups/views.py:288
msgid "Added new remote SSH repository."
msgstr ""
-#: plinth/modules/backups/views.py:327
+#: plinth/modules/backups/views.py:310
msgid "Verify SSH hostkey"
msgstr ""
-#: plinth/modules/backups/views.py:353
+#: plinth/modules/backups/views.py:336
msgid "SSH host already verified."
msgstr ""
-#: plinth/modules/backups/views.py:363
+#: plinth/modules/backups/views.py:346
msgid "SSH host verified."
msgstr ""
-#: plinth/modules/backups/views.py:377
+#: plinth/modules/backups/views.py:360
msgid "SSH host public key could not be verified."
msgstr ""
-#: plinth/modules/backups/views.py:379
+#: plinth/modules/backups/views.py:362
msgid "Authentication to remote server failed."
msgstr ""
-#: plinth/modules/backups/views.py:381
+#: plinth/modules/backups/views.py:364
msgid "Error establishing connection to server: {}"
msgstr ""
-#: plinth/modules/backups/views.py:392
+#: plinth/modules/backups/views.py:375
msgid "Repository removed."
msgstr ""
-#: plinth/modules/backups/views.py:406
+#: plinth/modules/backups/views.py:389
msgid "Remove Repository"
msgstr ""
-#: plinth/modules/backups/views.py:415
+#: plinth/modules/backups/views.py:398
msgid "Repository removed. Backups were not deleted."
msgstr ""
-#: plinth/modules/backups/views.py:425
+#: plinth/modules/backups/views.py:408
msgid "Unmounting failed!"
msgstr ""
-#: plinth/modules/backups/views.py:440 plinth/modules/backups/views.py:444
+#: plinth/modules/backups/views.py:423 plinth/modules/backups/views.py:427
msgid "Mounting failed"
msgstr ""
-#: plinth/modules/bind/__init__.py:36
-msgid "BIND"
-msgstr ""
-
-#: plinth/modules/bind/__init__.py:38
-msgid "Domain Name Server"
-msgstr ""
-
-#: plinth/modules/bind/__init__.py:45
+#: plinth/modules/bind/__init__.py:29
msgid ""
"BIND enables you to publish your Domain Name System (DNS) information on the "
"Internet, and to resolve DNS queries for your user devices on your network."
msgstr ""
-#: plinth/modules/bind/__init__.py:49
+#: plinth/modules/bind/__init__.py:33
#, python-brace-format
msgid ""
"Currently, on {box_name}, BIND is only used to resolve DNS queries for other "
@@ -576,39 +569,67 @@ msgid ""
"connection from {box_name}."
msgstr ""
-#: plinth/modules/bind/forms.py:37
+#: plinth/modules/bind/__init__.py:82
+msgid "BIND"
+msgstr ""
+
+#: plinth/modules/bind/__init__.py:83
+msgid "Domain Name Server"
+msgstr ""
+
+#: plinth/modules/bind/forms.py:22
msgid "Forwarders"
msgstr ""
-#: plinth/modules/bind/forms.py:38
+#: plinth/modules/bind/forms.py:23
msgid ""
"A list DNS servers, separated by space, to which requests will be forwarded"
msgstr ""
-#: plinth/modules/bind/forms.py:42
+#: plinth/modules/bind/forms.py:27
msgid "Enable DNSSEC"
msgstr ""
-#: plinth/modules/bind/forms.py:43
+#: plinth/modules/bind/forms.py:28
msgid "Enable Domain Name System Security Extensions"
msgstr ""
-#: plinth/modules/bind/views.py:58 plinth/modules/deluge/views.py:67
-#: plinth/modules/dynamicdns/views.py:171 plinth/modules/openvpn/views.py:153
-#: plinth/modules/shadowsocks/views.py:79
-#: plinth/modules/transmission/views.py:73
+#: plinth/modules/bind/templates/bind.html:11
+msgid "Serving Domains"
+msgstr ""
+
+#: plinth/modules/bind/templates/bind.html:16
+#: plinth/modules/ikiwiki/forms.py:12
+#: plinth/modules/networks/templates/connection_show.html:83
+#: plinth/modules/storage/templates/storage.html:28
+msgid "Type"
+msgstr ""
+
+#: plinth/modules/bind/templates/bind.html:17
+msgid "Domain Names"
+msgstr ""
+
+#: plinth/modules/bind/templates/bind.html:18
+msgid "Serving"
+msgstr ""
+
+#: plinth/modules/bind/templates/bind.html:19
+msgid "IP addresses"
+msgstr ""
+
+#: plinth/modules/bind/templates/bind.html:35
+#: plinth/modules/bind/templates/bind.html:37
+msgid "Refresh IP address and domains"
+msgstr ""
+
+#: plinth/modules/bind/views.py:73 plinth/modules/deluge/views.py:46
+#: plinth/modules/dynamicdns/views.py:150 plinth/modules/openvpn/views.py:134
+#: plinth/modules/shadowsocks/views.py:59
+#: plinth/modules/transmission/views.py:52
msgid "Configuration updated"
msgstr ""
-#: plinth/modules/cockpit/__init__.py:45 plinth/modules/cockpit/manifest.py:27
-msgid "Cockpit"
-msgstr ""
-
-#: plinth/modules/cockpit/__init__.py:49
-msgid "Server Administration"
-msgstr ""
-
-#: plinth/modules/cockpit/__init__.py:53
+#: plinth/modules/cockpit/__init__.py:32
#, python-brace-format
msgid ""
"Cockpit is a server manager that makes it easy to administer GNU/Linux "
@@ -617,68 +638,76 @@ msgid ""
"console operations is also available."
msgstr ""
-#: plinth/modules/cockpit/__init__.py:59
+#: plinth/modules/cockpit/__init__.py:38
#, python-brace-format
msgid ""
"It can be accessed by any user on {box_name} "
"belonging to the admin group."
msgstr ""
-#: plinth/modules/cockpit/__init__.py:63
+#: plinth/modules/cockpit/__init__.py:42
msgid ""
"Cockpit requires that you access it through a domain name. It will not work "
"when accessed using an IP address as part of the URL."
msgstr ""
-#: plinth/modules/cockpit/templates/cockpit.html:26
+#: plinth/modules/cockpit/__init__.py:59 plinth/modules/cockpit/manifest.py:12
+msgid "Cockpit"
+msgstr ""
+
+#: plinth/modules/cockpit/__init__.py:61
+msgid "Server Administration"
+msgstr ""
+
+#: plinth/modules/cockpit/templates/cockpit.html:11
msgid "Access"
msgstr ""
-#: plinth/modules/cockpit/templates/cockpit.html:29
+#: plinth/modules/cockpit/templates/cockpit.html:14
msgid "Cockpit will only work when accessed using the following URLs."
msgstr ""
-#: plinth/modules/config/__init__.py:37
-msgid "General Configuration"
-msgstr ""
-
-#: plinth/modules/config/__init__.py:40
+#: plinth/modules/config/__init__.py:23
msgid ""
"Here you can set some general configuration options like hostname, domain "
"name, webserver home page etc."
msgstr ""
-#: plinth/modules/config/__init__.py:67 plinth/modules/dynamicdns/views.py:44
-#: plinth/modules/i2p/views.py:31 plinth/modules/names/templates/names.html:44
-#: plinth/modules/names/templates/names.html:58
-#: plinth/modules/snapshot/views.py:41
-#: plinth/modules/tahoe/templates/tahoe-pre-setup.html:39
+#: plinth/modules/config/__init__.py:50
+msgid "General Configuration"
+msgstr ""
+
+#: plinth/modules/config/__init__.py:55 plinth/modules/dynamicdns/views.py:29
+#: plinth/modules/i2p/views.py:16 plinth/modules/names/templates/names.html:29
+#: plinth/modules/names/templates/names.html:43
+#: plinth/modules/snapshot/views.py:26
+#: plinth/modules/tahoe/templates/tahoe-pre-setup.html:24
msgid "Configure"
msgstr ""
-#: plinth/modules/config/__init__.py:71 plinth/modules/config/forms.py:76
-#: plinth/modules/dynamicdns/forms.py:110
+#: plinth/modules/config/__init__.py:59 plinth/modules/config/forms.py:61
+#: plinth/modules/dynamicdns/forms.py:95
msgid "Domain Name"
msgstr ""
-#: plinth/modules/config/forms.py:42 plinth/modules/config/forms.py:88
-#: plinth/modules/dynamicdns/forms.py:113
+#: plinth/modules/config/forms.py:27 plinth/modules/config/forms.py:73
+#: plinth/modules/dynamicdns/forms.py:98
msgid "Invalid domain name"
msgstr ""
-#: plinth/modules/config/forms.py:50
+#: plinth/modules/config/forms.py:35
msgid "Apache Default"
msgstr ""
-#: plinth/modules/config/forms.py:51
+#: plinth/modules/config/forms.py:36
msgid "FreedomBox Service (Plinth)"
msgstr ""
-#: plinth/modules/config/forms.py:63
+#: plinth/modules/config/forms.py:48
msgid "Hostname"
msgstr ""
-#: plinth/modules/config/forms.py:65
+#: plinth/modules/config/forms.py:50
#, python-brace-format
msgid ""
"Hostname is the local name by which other devices on the local network can "
@@ -687,11 +716,11 @@ msgid ""
"length must be 63 characters or less."
msgstr ""
-#: plinth/modules/config/forms.py:72
+#: plinth/modules/config/forms.py:57
msgid "Invalid hostname"
msgstr ""
-#: plinth/modules/config/forms.py:78
+#: plinth/modules/config/forms.py:63
#, python-brace-format
msgid ""
"Domain name is the global name by which other devices on the Internet can "
@@ -702,11 +731,11 @@ msgid ""
"or less."
msgstr ""
-#: plinth/modules/config/forms.py:93
+#: plinth/modules/config/forms.py:78
msgid "Webserver Home Page"
msgstr ""
-#: plinth/modules/config/forms.py:95
+#: plinth/modules/config/forms.py:80
#, python-brace-format
msgid ""
"Choose the default page that must be served when someone visits your "
@@ -716,70 +745,62 @@ msgid ""
"explicitly type /plinth or /freedombox to reach {box_name} Service (Plinth)."
msgstr ""
-#: plinth/modules/config/forms.py:106
+#: plinth/modules/config/forms.py:91
msgid "Show advanced apps and features"
msgstr ""
-#: plinth/modules/config/forms.py:107
+#: plinth/modules/config/forms.py:92
msgid "Show apps and features that require more technical knowledge."
msgstr ""
-#: plinth/modules/config/views.py:65
+#: plinth/modules/config/views.py:47
#, python-brace-format
msgid "Error setting hostname: {exception}"
msgstr ""
-#: plinth/modules/config/views.py:68
+#: plinth/modules/config/views.py:50
msgid "Hostname set"
msgstr ""
-#: plinth/modules/config/views.py:77
+#: plinth/modules/config/views.py:59
#, python-brace-format
msgid "Error setting domain name: {exception}"
msgstr ""
-#: plinth/modules/config/views.py:80
+#: plinth/modules/config/views.py:62
msgid "Domain name set"
msgstr ""
-#: plinth/modules/config/views.py:88
+#: plinth/modules/config/views.py:70
#, python-brace-format
msgid "Error setting webserver home page: {exception}"
msgstr ""
-#: plinth/modules/config/views.py:91
+#: plinth/modules/config/views.py:73
msgid "Webserver home page set"
msgstr ""
-#: plinth/modules/config/views.py:99
+#: plinth/modules/config/views.py:81
#, python-brace-format
msgid "Error changing advanced mode: {exception}"
msgstr ""
-#: plinth/modules/config/views.py:104
+#: plinth/modules/config/views.py:86
msgid "Showing advanced apps and features"
msgstr ""
-#: plinth/modules/config/views.py:107
+#: plinth/modules/config/views.py:89
msgid "Hiding advanced apps and features"
msgstr ""
-#: plinth/modules/coquelicot/__init__.py:40
-msgid "Coquelicot"
-msgstr ""
-
-#: plinth/modules/coquelicot/__init__.py:42 plinth/modules/samba/__init__.py:50
-msgid "File Sharing"
-msgstr ""
-
-#: plinth/modules/coquelicot/__init__.py:45
+#: plinth/modules/coquelicot/__init__.py:24
msgid ""
"Coquelicot is a \"one-click\" file sharing web application with a focus on "
"protecting users' privacy. It is best used for quickly sharing a single "
"file. "
msgstr ""
-#: plinth/modules/coquelicot/__init__.py:48
+#: plinth/modules/coquelicot/__init__.py:27
msgid ""
"This Coquelicot instance is exposed to the public but requires an upload "
"password to prevent unauthorized access. You can set a new upload password "
@@ -787,193 +808,201 @@ msgid ""
"password is \"test\"."
msgstr ""
-#: plinth/modules/coquelicot/forms.py:30
+#: plinth/modules/coquelicot/__init__.py:45
+msgid "Coquelicot"
+msgstr ""
+
+#: plinth/modules/coquelicot/__init__.py:47 plinth/modules/samba/__init__.py:62
+msgid "File Sharing"
+msgstr ""
+
+#: plinth/modules/coquelicot/forms.py:15
msgid "Upload Password"
msgstr ""
-#: plinth/modules/coquelicot/forms.py:31
+#: plinth/modules/coquelicot/forms.py:16
msgid ""
"Set a new upload password for Coquelicot. Leave this field blank to keep the "
"current password."
msgstr ""
-#: plinth/modules/coquelicot/forms.py:35
+#: plinth/modules/coquelicot/forms.py:20
msgid "Maximum File Size (in MiB)"
msgstr ""
-#: plinth/modules/coquelicot/forms.py:36
+#: plinth/modules/coquelicot/forms.py:21
msgid "Set the maximum size of the files that can be uploaded to Coquelicot."
msgstr ""
-#: plinth/modules/coquelicot/manifest.py:24
+#: plinth/modules/coquelicot/manifest.py:9
msgid "coquelicot"
msgstr ""
-#: plinth/modules/coquelicot/views.py:58
+#: plinth/modules/coquelicot/views.py:37
msgid "Upload password updated"
msgstr ""
-#: plinth/modules/coquelicot/views.py:61
+#: plinth/modules/coquelicot/views.py:40
msgid "Failed to update upload password"
msgstr ""
-#: plinth/modules/coquelicot/views.py:69
+#: plinth/modules/coquelicot/views.py:48
msgid "Maximum file size updated"
msgstr ""
-#: plinth/modules/coquelicot/views.py:72
+#: plinth/modules/coquelicot/views.py:51
msgid "Failed to update maximum file size"
msgstr ""
-#: plinth/modules/datetime/__init__.py:39
-msgid "Date & Time"
-msgstr ""
-
-#: plinth/modules/datetime/__init__.py:42
+#: plinth/modules/datetime/__init__.py:25
msgid ""
"Network time server is a program that maintains the system time in "
"synchronization with servers on the Internet."
msgstr ""
-#: plinth/modules/datetime/__init__.py:97
+#: plinth/modules/datetime/__init__.py:42
+msgid "Date & Time"
+msgstr ""
+
+#: plinth/modules/datetime/__init__.py:85
msgid "Time synchronized to NTP server"
msgstr ""
-#: plinth/modules/datetime/forms.py:35
+#: plinth/modules/datetime/forms.py:20
msgid "Time Zone"
msgstr ""
-#: plinth/modules/datetime/forms.py:36
+#: plinth/modules/datetime/forms.py:21
msgid ""
"Set your time zone to get accurate timestamps. This will set the system-wide "
"time zone."
msgstr ""
-#: plinth/modules/datetime/forms.py:47
+#: plinth/modules/datetime/forms.py:32
msgid "-- no time zone set --"
msgstr ""
-#: plinth/modules/datetime/views.py:64
+#: plinth/modules/datetime/views.py:45
#, python-brace-format
msgid "Error setting time zone: {exception}"
msgstr ""
-#: plinth/modules/datetime/views.py:67
+#: plinth/modules/datetime/views.py:48
msgid "Time zone set"
msgstr ""
-#: plinth/modules/deluge/__init__.py:39 plinth/modules/deluge/manifest.py:24
-msgid "Deluge"
-msgstr ""
-
-#: plinth/modules/deluge/__init__.py:43
-#: plinth/modules/transmission/__init__.py:45
-msgid "BitTorrent Web Client"
-msgstr ""
-
-#: plinth/modules/deluge/__init__.py:46
+#: plinth/modules/deluge/__init__.py:25
msgid "Deluge is a BitTorrent client that features a Web UI."
msgstr ""
-#: plinth/modules/deluge/__init__.py:47
+#: plinth/modules/deluge/__init__.py:26
msgid ""
"The default password is 'deluge', but you should log in and change it "
"immediately after enabling this service."
msgstr ""
-#: plinth/modules/deluge/__init__.py:51
-#: plinth/modules/transmission/__init__.py:57
+#: plinth/modules/deluge/__init__.py:30
+#: plinth/modules/transmission/__init__.py:34
msgid "Download files using BitTorrent applications"
msgstr ""
-#: plinth/modules/deluge/forms.py:35 plinth/modules/transmission/forms.py:35
+#: plinth/modules/deluge/__init__.py:46 plinth/modules/deluge/manifest.py:9
+msgid "Deluge"
+msgstr ""
+
+#: plinth/modules/deluge/__init__.py:47
+#: plinth/modules/transmission/__init__.py:50
+msgid "BitTorrent Web Client"
+msgstr ""
+
+#: plinth/modules/deluge/forms.py:20 plinth/modules/transmission/forms.py:20
msgid "Download directory"
msgstr ""
-#: plinth/modules/deluge/manifest.py:25
+#: plinth/modules/deluge/manifest.py:10
msgid "Bittorrent client written in Python/PyGTK"
msgstr ""
-#: plinth/modules/diagnostics/__init__.py:33
-msgid "Diagnostics"
-msgstr ""
-
-#: plinth/modules/diagnostics/__init__.py:36
+#: plinth/modules/diagnostics/__init__.py:19
msgid ""
"The system diagnostic test will run a number of checks on your system to "
"confirm that applications and services are working as expected."
msgstr ""
-#: plinth/modules/diagnostics/diagnostics.py:65
+#: plinth/modules/diagnostics/__init__.py:37
+msgid "Diagnostics"
+msgstr ""
+
+#: plinth/modules/diagnostics/diagnostics.py:48
msgid "Diagnostic Test"
msgstr ""
-#: plinth/modules/diagnostics/templates/diagnostics.html:43
-#: plinth/modules/diagnostics/templates/diagnostics_button.html:28
-#: plinth/modules/diagnostics/templates/diagnostics_button.html:31
+#: plinth/modules/diagnostics/templates/diagnostics.html:28
+#: plinth/modules/diagnostics/templates/diagnostics_button.html:13
+#: plinth/modules/diagnostics/templates/diagnostics_button.html:16
msgid "Run Diagnostics"
msgstr ""
-#: plinth/modules/diagnostics/templates/diagnostics.html:46
+#: plinth/modules/diagnostics/templates/diagnostics.html:31
msgid "Diagnostics test is currently running"
msgstr ""
-#: plinth/modules/diagnostics/templates/diagnostics.html:59
+#: plinth/modules/diagnostics/templates/diagnostics.html:44
msgid "Results"
msgstr ""
-#: plinth/modules/diagnostics/templates/diagnostics.html:67
-#: plinth/modules/diagnostics/templates/diagnostics_app.html:27
+#: plinth/modules/diagnostics/templates/diagnostics.html:52
+#: plinth/modules/diagnostics/templates/diagnostics_app.html:12
#, python-format
msgid "App: %(app_id)s"
msgstr ""
-#: plinth/modules/diagnostics/templates/diagnostics_app.html:25
+#: plinth/modules/diagnostics/templates/diagnostics_app.html:10
msgid "Diagnostic Results"
msgstr ""
-#: plinth/modules/diagnostics/templates/diagnostics_app.html:32
+#: plinth/modules/diagnostics/templates/diagnostics_app.html:17
msgid "This app does not support diagnostics"
msgstr ""
-#: plinth/modules/diagnostics/templates/diagnostics_results.html:25
+#: plinth/modules/diagnostics/templates/diagnostics_results.html:10
msgid "Test"
msgstr ""
-#: plinth/modules/diagnostics/templates/diagnostics_results.html:26
+#: plinth/modules/diagnostics/templates/diagnostics_results.html:11
msgid "Result"
msgstr ""
-#: plinth/modules/diaspora/__init__.py:54
-#: plinth/modules/diaspora/manifest.py:38
-msgid "diaspora*"
-msgstr ""
-
-#: plinth/modules/diaspora/__init__.py:56
-msgid "Federated Social Network"
-msgstr ""
-
-#: plinth/modules/diaspora/__init__.py:63
+#: plinth/modules/diaspora/__init__.py:45
msgid ""
"diaspora* is a decentralized social network where you can store and control "
"your own data."
msgstr ""
-#: plinth/modules/diaspora/forms.py:30
+#: plinth/modules/diaspora/__init__.py:69
+#: plinth/modules/diaspora/manifest.py:23
+msgid "diaspora*"
+msgstr ""
+
+#: plinth/modules/diaspora/__init__.py:70
+msgid "Federated Social Network"
+msgstr ""
+
+#: plinth/modules/diaspora/forms.py:15
msgid "Enable new user registrations"
msgstr ""
-#: plinth/modules/diaspora/manifest.py:26
+#: plinth/modules/diaspora/manifest.py:11
msgid "dandelion*"
msgstr ""
-#: plinth/modules/diaspora/manifest.py:28
+#: plinth/modules/diaspora/manifest.py:13
msgid ""
"It is an unofficial webview based client for the community-run, distributed "
"social network diaspora*"
msgstr ""
-#: plinth/modules/diaspora/templates/diaspora-post-setup.html:32
+#: plinth/modules/diaspora/templates/diaspora-post-setup.html:16
#, python-format
msgid ""
"The diaspora* pod domain is set to %(domain_name)s. User IDs will "
@@ -983,39 +1012,35 @@ msgid ""
"href=\"https://diaspora.%(domain_name)s\"> diaspora.%(domain_name)s "
msgstr ""
-#: plinth/modules/diaspora/templates/diaspora-pre-setup.html:58
-#: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:40
-#: plinth/modules/ejabberd/templates/ejabberd.html:58
-#: plinth/modules/i2p/templates/i2p.html:34
-#: plinth/modules/ikiwiki/templates/ikiwiki_create.html:33
-#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:62
-#: plinth/modules/snapshot/templates/snapshot.html:30
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:51
-#: plinth/modules/tahoe/templates/tahoe-pre-setup.html:58
-#: plinth/templates/app.html:77
+#: plinth/modules/diaspora/templates/diaspora-pre-setup.html:43
+#: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:25
+#: plinth/modules/ejabberd/templates/ejabberd.html:43
+#: plinth/modules/i2p/templates/i2p.html:19
+#: plinth/modules/ikiwiki/templates/ikiwiki_create.html:18
+#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:47
+#: plinth/modules/snapshot/templates/snapshot.html:15
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:35
+#: plinth/modules/tahoe/templates/tahoe-pre-setup.html:43
+#: plinth/templates/app.html:62
msgid "Update setup"
msgstr ""
-#: plinth/modules/diaspora/views.py:93 plinth/modules/ejabberd/views.py:66
-#: plinth/modules/matrixsynapse/views.py:108
-#: plinth/modules/mediawiki/views.py:79 plinth/modules/openvpn/views.py:155
-#: plinth/modules/tor/views.py:156 plinth/views.py:175
+#: plinth/modules/diaspora/views.py:76 plinth/modules/ejabberd/views.py:46
+#: plinth/modules/matrixsynapse/views.py:85
+#: plinth/modules/mediawiki/views.py:59 plinth/modules/openvpn/views.py:136
+#: plinth/modules/tor/views.py:137 plinth/views.py:185
msgid "Setting unchanged"
msgstr ""
-#: plinth/modules/diaspora/views.py:97
+#: plinth/modules/diaspora/views.py:80
msgid "User registrations enabled"
msgstr ""
-#: plinth/modules/diaspora/views.py:101
+#: plinth/modules/diaspora/views.py:84
msgid "User registrations disabled"
msgstr ""
-#: plinth/modules/dynamicdns/__init__.py:40
-msgid "Dynamic DNS Client"
-msgstr ""
-
-#: plinth/modules/dynamicdns/__init__.py:44
+#: plinth/modules/dynamicdns/__init__.py:27
#, python-brace-format
msgid ""
"If your Internet provider changes your IP address periodically (i.e. every "
@@ -1023,7 +1048,7 @@ msgid ""
"prevent others from finding services which are provided by this {box_name}."
msgstr ""
-#: plinth/modules/dynamicdns/__init__.py:48
+#: plinth/modules/dynamicdns/__init__.py:31
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 "
@@ -1034,50 +1059,54 @@ msgid ""
"IP address."
msgstr ""
-#: plinth/modules/dynamicdns/__init__.py:78
+#: plinth/modules/dynamicdns/__init__.py:56
+msgid "Dynamic DNS Client"
+msgstr ""
+
+#: plinth/modules/dynamicdns/__init__.py:66
msgid "Dynamic Domain Name"
msgstr ""
-#: plinth/modules/dynamicdns/forms.py:42
+#: plinth/modules/dynamicdns/forms.py:27
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/forms.py:46
+#: plinth/modules/dynamicdns/forms.py:31
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/forms.py:51
+#: plinth/modules/dynamicdns/forms.py:36
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/forms.py:55
+#: plinth/modules/dynamicdns/forms.py:40
#, python-brace-format
msgid "The public domain name you want to use to reach your {box_name}."
msgstr ""
-#: plinth/modules/dynamicdns/forms.py:58
+#: plinth/modules/dynamicdns/forms.py:43
msgid "Use this option if your provider uses self signed certificates."
msgstr ""
-#: plinth/modules/dynamicdns/forms.py:61
+#: plinth/modules/dynamicdns/forms.py:46
msgid ""
"If this option is selected, your username and password will be used for HTTP "
"basic authentication."
msgstr ""
-#: plinth/modules/dynamicdns/forms.py:64
+#: plinth/modules/dynamicdns/forms.py:49
msgid "Leave this field empty if you want to keep your current password."
msgstr ""
-#: plinth/modules/dynamicdns/forms.py:67
+#: plinth/modules/dynamicdns/forms.py:52
#, python-brace-format
msgid ""
"Optional Value. If your {box_name} is not connected directly to the Internet "
@@ -1086,72 +1115,72 @@ msgid ""
"(example: http://myip.datasystems24.de)."
msgstr ""
-#: plinth/modules/dynamicdns/forms.py:75
+#: plinth/modules/dynamicdns/forms.py:60
msgid "The username that was used when the account was created."
msgstr ""
-#: plinth/modules/dynamicdns/forms.py:83
+#: plinth/modules/dynamicdns/forms.py:68
msgid "Enable Dynamic DNS"
msgstr ""
-#: plinth/modules/dynamicdns/forms.py:86
+#: plinth/modules/dynamicdns/forms.py:71
msgid "Service Type"
msgstr ""
-#: plinth/modules/dynamicdns/forms.py:91
+#: plinth/modules/dynamicdns/forms.py:76
msgid "GnuDIP Server Address"
msgstr ""
-#: plinth/modules/dynamicdns/forms.py:94
+#: plinth/modules/dynamicdns/forms.py:79
msgid "Invalid server name"
msgstr ""
-#: plinth/modules/dynamicdns/forms.py:97
+#: plinth/modules/dynamicdns/forms.py:82
msgid "Update URL"
msgstr ""
-#: plinth/modules/dynamicdns/forms.py:102
+#: plinth/modules/dynamicdns/forms.py:87
msgid "Accept all SSL certificates"
msgstr ""
-#: plinth/modules/dynamicdns/forms.py:106
+#: plinth/modules/dynamicdns/forms.py:91
msgid "Use HTTP basic authentication"
msgstr ""
-#: plinth/modules/dynamicdns/forms.py:116 plinth/modules/networks/forms.py:217
+#: plinth/modules/dynamicdns/forms.py:101 plinth/modules/networks/forms.py:199
msgid "Username"
msgstr ""
-#: plinth/modules/dynamicdns/forms.py:119 plinth/modules/networks/forms.py:218
-#: plinth/modules/shadowsocks/forms.py:60
+#: plinth/modules/dynamicdns/forms.py:104 plinth/modules/networks/forms.py:200
+#: plinth/modules/shadowsocks/forms.py:45
msgid "Password"
msgstr ""
-#: plinth/modules/dynamicdns/forms.py:123 plinth/modules/networks/forms.py:220
+#: plinth/modules/dynamicdns/forms.py:108 plinth/modules/networks/forms.py:202
msgid "Show password"
msgstr ""
-#: plinth/modules/dynamicdns/forms.py:127
+#: plinth/modules/dynamicdns/forms.py:112
msgid "URL to look up public IP"
msgstr ""
-#: plinth/modules/dynamicdns/forms.py:151
+#: plinth/modules/dynamicdns/forms.py:136
msgid "Please provide an update URL or a GnuDIP server address"
msgstr ""
-#: plinth/modules/dynamicdns/forms.py:156
+#: plinth/modules/dynamicdns/forms.py:141
msgid "Please provide a GnuDIP username"
msgstr ""
-#: plinth/modules/dynamicdns/forms.py:160
+#: plinth/modules/dynamicdns/forms.py:145
msgid "Please provide a GnuDIP domain name"
msgstr ""
-#: plinth/modules/dynamicdns/forms.py:165
+#: plinth/modules/dynamicdns/forms.py:150
msgid "Please provide a password"
msgstr ""
-#: plinth/modules/dynamicdns/templates/dynamicdns.html:27
+#: plinth/modules/dynamicdns/templates/dynamicdns.html:12
msgid ""
"If you are looking for a free dynamic DNS account, you may find a free "
"GnuDIP service at ."
msgstr ""
-#: plinth/modules/dynamicdns/templates/dynamicdns.html:38
+#: plinth/modules/dynamicdns/templates/dynamicdns.html:23
#, python-format
msgid ""
"If your %(box_name)s is connected behind a NAT router, don't forget to add "
@@ -1168,27 +1197,27 @@ msgid ""
"port 443 (HTTPS)."
msgstr ""
-#: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:30
+#: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:15
msgid ""
"You have disabled Javascript. Dynamic form mode is disabled and some helper "
"functions may not work (but the main functionality should work)."
msgstr ""
-#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:24
+#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:9
msgid "NAT type"
msgstr ""
-#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:28
+#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:13
msgid ""
"NAT type was not detected yet. If you do not provide an \"IP Check URL\", we "
"will not detect a NAT type."
msgstr ""
-#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:34
+#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:19
msgid "Direct connection to the Internet."
msgstr ""
-#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:36
+#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:21
#, python-format
msgid ""
"Behind NAT. This means that Dynamic DNS service will poll the \"URL to look "
@@ -1197,54 +1226,45 @@ msgid ""
"changes, it may take up to %(timer)s minutes until your DNS entry is updated."
msgstr ""
-#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:48
+#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:33
msgid "Last update"
msgstr ""
-#: plinth/modules/dynamicdns/views.py:41 plinth/modules/help/__init__.py:59
-#: plinth/templates/help-menu.html:61 plinth/templates/help-menu.html:62
+#: plinth/modules/dynamicdns/views.py:26 plinth/modules/help/__init__.py:49
+#: plinth/templates/help-menu.html:46 plinth/templates/help-menu.html:47
msgid "About"
msgstr ""
-#: plinth/modules/dynamicdns/views.py:47
-#: plinth/modules/firewall/templates/firewall.html:25
-#: plinth/modules/firewall/templates/firewall.html:45
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:38
-#: plinth/modules/networks/templates/connection_show.html:261
-#: plinth/modules/openvpn/templates/openvpn.html:39
-#: plinth/modules/openvpn/templates/openvpn.html:60
-#: plinth/modules/tor/templates/tor.html:37
-#: plinth/modules/tor/templates/tor.html:51
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:61
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:60
-#: plinth/templates/app.html:42
+#: plinth/modules/dynamicdns/views.py:32
+#: plinth/modules/firewall/templates/firewall.html:10
+#: plinth/modules/firewall/templates/firewall.html:30
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:23
+#: plinth/modules/networks/templates/connection_show.html:246
+#: plinth/modules/openvpn/templates/openvpn.html:24
+#: plinth/modules/openvpn/templates/openvpn.html:45
+#: plinth/modules/tor/templates/tor.html:22
+#: plinth/modules/tor/templates/tor.html:36
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:46
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:45
+#: plinth/templates/app.html:27
msgid "Status"
msgstr ""
-#: plinth/modules/dynamicdns/views.py:79
+#: plinth/modules/dynamicdns/views.py:62
msgid "Configure Dynamic DNS"
msgstr ""
-#: plinth/modules/dynamicdns/views.py:105
+#: plinth/modules/dynamicdns/views.py:86
msgid "Dynamic DNS Status"
msgstr ""
-#: plinth/modules/ejabberd/__init__.py:50
-msgid "ejabberd"
-msgstr ""
-
-#: plinth/modules/ejabberd/__init__.py:54
-#: plinth/modules/matrixsynapse/__init__.py:52
-msgid "Chat Server"
-msgstr ""
-
-#: plinth/modules/ejabberd/__init__.py:57
+#: plinth/modules/ejabberd/__init__.py:36
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:60
+#: plinth/modules/ejabberd/__init__.py:39
#, python-brace-format
msgid ""
"To actually communicate, you can use the web client"
@@ -1253,11 +1273,20 @@ msgid ""
"any user with a {box_name} login."
msgstr ""
-#: plinth/modules/ejabberd/forms.py:32
+#: plinth/modules/ejabberd/__init__.py:70
+msgid "ejabberd"
+msgstr ""
+
+#: plinth/modules/ejabberd/__init__.py:71
+#: plinth/modules/matrixsynapse/__init__.py:68
+msgid "Chat Server"
+msgstr ""
+
+#: plinth/modules/ejabberd/forms.py:17
msgid "Enable Message Archive Management"
msgstr ""
-#: plinth/modules/ejabberd/forms.py:34
+#: plinth/modules/ejabberd/forms.py:19
#, python-brace-format
msgid ""
"If enabled, your {box_name} will store chat message histories. This allows "
@@ -1266,29 +1295,29 @@ msgid ""
"the histories are stored as plain text or encrypted."
msgstr ""
-#: plinth/modules/ejabberd/manifest.py:26
+#: plinth/modules/ejabberd/manifest.py:11
msgid "Conversations"
msgstr ""
-#: plinth/modules/ejabberd/manifest.py:40
+#: plinth/modules/ejabberd/manifest.py:25
msgid "Xabber"
msgstr ""
-#: plinth/modules/ejabberd/manifest.py:42
+#: plinth/modules/ejabberd/manifest.py:27
msgid ""
"Open source Jabber (XMPP) client with multi-account support and clean and "
"simple interface. "
msgstr ""
-#: plinth/modules/ejabberd/manifest.py:57
+#: plinth/modules/ejabberd/manifest.py:42
msgid "Yaxim"
msgstr ""
-#: plinth/modules/ejabberd/manifest.py:71
+#: plinth/modules/ejabberd/manifest.py:56
msgid "ChatSecure"
msgstr ""
-#: plinth/modules/ejabberd/manifest.py:73
+#: plinth/modules/ejabberd/manifest.py:58
msgid ""
"ChatSecure is a free and open source messaging app that features OTR "
"encryption over XMPP. You can connect to an existing Google account, create "
@@ -1296,15 +1325,15 @@ msgid ""
"your own server for extra security."
msgstr ""
-#: plinth/modules/ejabberd/manifest.py:89
+#: plinth/modules/ejabberd/manifest.py:74
msgid "Dino"
msgstr ""
-#: plinth/modules/ejabberd/manifest.py:101
+#: plinth/modules/ejabberd/manifest.py:86
msgid "Gajim"
msgstr ""
-#: plinth/modules/ejabberd/templates/ejabberd.html:33
+#: plinth/modules/ejabberd/templates/ejabberd.html:18
#, python-format
msgid ""
"Your XMPP server domain is set to %(domainname)s. User IDs will look "
@@ -1312,28 +1341,24 @@ msgid ""
"Configure page."
msgstr ""
-#: plinth/modules/ejabberd/templates/ejabberd.html:50
-#: plinth/modules/i2p/templates/i2p.html:26
-#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:30
-#: plinth/modules/snapshot/templates/snapshot.html:27
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:43
-#: plinth/templates/app.html:70
+#: plinth/modules/ejabberd/templates/ejabberd.html:35
+#: plinth/modules/i2p/templates/i2p.html:11
+#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:15
+#: plinth/modules/snapshot/templates/snapshot.html:12
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:27
+#: plinth/templates/app.html:55
msgid "Configuration"
msgstr ""
-#: plinth/modules/ejabberd/views.py:78
+#: plinth/modules/ejabberd/views.py:58
msgid "Message Archive Management enabled"
msgstr ""
-#: plinth/modules/ejabberd/views.py:82
+#: plinth/modules/ejabberd/views.py:62
msgid "Message Archive Management disabled"
msgstr ""
-#: plinth/modules/firewall/__init__.py:39
-msgid "Firewall"
-msgstr ""
-
-#: plinth/modules/firewall/__init__.py:43
+#: plinth/modules/firewall/__init__.py:32
#, python-brace-format
msgid ""
"Firewall is a security system that controls the incoming and outgoing "
@@ -1341,22 +1366,26 @@ msgid ""
"configured reduces risk of security threat from the Internet."
msgstr ""
-#: plinth/modules/firewall/components.py:130
+#: plinth/modules/firewall/__init__.py:63
+msgid "Firewall"
+msgstr ""
+
+#: plinth/modules/firewall/components.py:118
#, python-brace-format
msgid "Port {name} ({details}) available for internal networks"
msgstr ""
-#: plinth/modules/firewall/components.py:138
+#: plinth/modules/firewall/components.py:126
#, python-brace-format
msgid "Port {name} ({details}) available for external networks"
msgstr ""
-#: plinth/modules/firewall/components.py:143
+#: plinth/modules/firewall/components.py:131
#, python-brace-format
msgid "Port {name} ({details}) unavailable for external networks"
msgstr ""
-#: plinth/modules/firewall/templates/firewall.html:30
+#: plinth/modules/firewall/templates/firewall.html:15
#, python-format
msgid ""
"Firewall daemon is not running. Please run it. Firewall comes enabled by "
@@ -1365,49 +1394,49 @@ msgid ""
"system with systemd 'systemctl start firewalld'."
msgstr ""
-#: plinth/modules/firewall/templates/firewall.html:43
+#: plinth/modules/firewall/templates/firewall.html:28
msgid "Show Ports"
msgstr ""
-#: plinth/modules/firewall/templates/firewall.html:44
+#: plinth/modules/firewall/templates/firewall.html:29
msgid "Service/Port"
msgstr ""
-#: plinth/modules/firewall/templates/firewall.html:63
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:89
+#: plinth/modules/firewall/templates/firewall.html:48
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:74
msgid "Enabled"
msgstr ""
-#: plinth/modules/firewall/templates/firewall.html:66
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:91
-#: plinth/modules/networks/forms.py:64 plinth/templates/cards.html:49
+#: plinth/modules/firewall/templates/firewall.html:51
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:76
+#: plinth/modules/networks/forms.py:47 plinth/templates/cards.html:34
msgid "Disabled"
msgstr ""
-#: plinth/modules/firewall/templates/firewall.html:78
+#: plinth/modules/firewall/templates/firewall.html:67
msgid "Permitted"
msgstr ""
-#: plinth/modules/firewall/templates/firewall.html:81
+#: plinth/modules/firewall/templates/firewall.html:70
msgid "Permitted (internal only)"
msgstr ""
-#: plinth/modules/firewall/templates/firewall.html:84
+#: plinth/modules/firewall/templates/firewall.html:73
msgid "Permitted (external only)"
msgstr ""
-#: plinth/modules/firewall/templates/firewall.html:87
+#: plinth/modules/firewall/templates/firewall.html:76
msgid "Blocked"
msgstr ""
-#: plinth/modules/firewall/templates/firewall.html:99
+#: plinth/modules/firewall/templates/firewall.html:88
msgid ""
"The operation of the firewall is automatic. When you enable a service it is "
"also permitted in the firewall and when you disable a service it is also "
"disabled in the firewall."
msgstr ""
-#: plinth/modules/first_boot/forms.py:29
+#: plinth/modules/first_boot/forms.py:14
#, python-brace-format
msgid ""
"Enter the secret generated during FreedomBox installation. This secret can "
@@ -1415,47 +1444,39 @@ msgid ""
"wizard-secret\" on your {box_name}"
msgstr ""
-#: plinth/modules/first_boot/forms.py:34
+#: plinth/modules/first_boot/forms.py:19
msgid "Firstboot Wizard Secret"
msgstr ""
-#: plinth/modules/first_boot/templates/firstboot_complete.html:26
+#: plinth/modules/first_boot/templates/firstboot_complete.html:11
msgid "Setup Complete!"
msgstr ""
-#: plinth/modules/first_boot/templates/firstboot_complete.html:29
+#: plinth/modules/first_boot/templates/firstboot_complete.html:14
#, python-format
msgid "Without any apps, your %(box_name)s cannot do very much."
msgstr ""
-#: plinth/modules/first_boot/templates/firstboot_complete.html:36
+#: plinth/modules/first_boot/templates/firstboot_complete.html:21
msgid "Install Apps"
msgstr ""
-#: plinth/modules/first_boot/templates/firstboot_complete.html:42
+#: plinth/modules/first_boot/templates/firstboot_complete.html:27
#, python-format
msgid ""
"You may want to check the network setup and "
"modify it if necessary."
msgstr ""
-#: plinth/modules/first_boot/templates/firstboot_welcome.html:52
+#: plinth/modules/first_boot/templates/firstboot_welcome.html:37
msgid "Start Setup"
msgstr ""
-#: plinth/modules/first_boot/views.py:64
+#: plinth/modules/first_boot/views.py:49
msgid "Setup Complete"
msgstr ""
-#: plinth/modules/gitweb/__init__.py:44 plinth/modules/gitweb/manifest.py:28
-msgid "Gitweb"
-msgstr ""
-
-#: plinth/modules/gitweb/__init__.py:48
-msgid "Simple Git Hosting"
-msgstr ""
-
-#: plinth/modules/gitweb/__init__.py:51
+#: plinth/modules/gitweb/__init__.py:28
msgid ""
"Git is a distributed version-control system for tracking changes in source "
"code during software development. Gitweb provides a web interface to Git "
@@ -1466,180 +1487,188 @@ msgid ""
"the world."
msgstr ""
-#: plinth/modules/gitweb/__init__.py:58
+#: plinth/modules/gitweb/__init__.py:35
msgid ""
"To learn more on how to use Git visit Git tutorial."
msgstr ""
-#: plinth/modules/gitweb/__init__.py:64
+#: plinth/modules/gitweb/__init__.py:39
msgid "Read-write access to Git repositories"
msgstr ""
-#: plinth/modules/gitweb/forms.py:59
+#: plinth/modules/gitweb/__init__.py:56 plinth/modules/gitweb/manifest.py:13
+msgid "Gitweb"
+msgstr ""
+
+#: plinth/modules/gitweb/__init__.py:57
+msgid "Simple Git Hosting"
+msgstr ""
+
+#: plinth/modules/gitweb/forms.py:44
msgid "Invalid repository URL."
msgstr ""
-#: plinth/modules/gitweb/forms.py:69
+#: plinth/modules/gitweb/forms.py:54
msgid "Invalid repository name."
msgstr ""
-#: plinth/modules/gitweb/forms.py:77
+#: plinth/modules/gitweb/forms.py:62
msgid "Name of a new repository or URL to import an existing repository."
msgstr ""
-#: plinth/modules/gitweb/forms.py:83
+#: plinth/modules/gitweb/forms.py:68
msgid "Description of the repository"
msgstr ""
-#: plinth/modules/gitweb/forms.py:84 plinth/modules/gitweb/forms.py:88
+#: plinth/modules/gitweb/forms.py:69 plinth/modules/gitweb/forms.py:73
msgid "Optional, for displaying on Gitweb."
msgstr ""
-#: plinth/modules/gitweb/forms.py:86
+#: plinth/modules/gitweb/forms.py:71
msgid "Repository's owner name"
msgstr ""
-#: plinth/modules/gitweb/forms.py:91
+#: plinth/modules/gitweb/forms.py:76
msgid "Private repository"
msgstr ""
-#: plinth/modules/gitweb/forms.py:92
+#: plinth/modules/gitweb/forms.py:77
msgid "Allow only authorized users to access this repository."
msgstr ""
-#: plinth/modules/gitweb/forms.py:113 plinth/modules/gitweb/forms.py:145
+#: plinth/modules/gitweb/forms.py:98 plinth/modules/gitweb/forms.py:130
msgid "A repository with this name already exists."
msgstr ""
-#: plinth/modules/gitweb/forms.py:126
+#: plinth/modules/gitweb/forms.py:111
msgid "Name of the repository"
msgstr ""
-#: plinth/modules/gitweb/forms.py:130
+#: plinth/modules/gitweb/forms.py:115
msgid "An alpha-numeric string that uniquely identifies a repository."
msgstr ""
-#: plinth/modules/gitweb/manifest.py:36
+#: plinth/modules/gitweb/manifest.py:21
msgid "Git"
msgstr ""
-#: plinth/modules/gitweb/templates/gitweb_configure.html:46
+#: plinth/modules/gitweb/templates/gitweb_configure.html:31
msgid "Manage Repositories"
msgstr ""
-#: plinth/modules/gitweb/templates/gitweb_configure.html:50
-#: plinth/modules/gitweb/templates/gitweb_configure.html:52
+#: plinth/modules/gitweb/templates/gitweb_configure.html:35
+#: plinth/modules/gitweb/templates/gitweb_configure.html:37
msgid "Create repository"
msgstr ""
-#: plinth/modules/gitweb/templates/gitweb_configure.html:59
+#: plinth/modules/gitweb/templates/gitweb_configure.html:44
msgid "No repositories available."
msgstr ""
-#: plinth/modules/gitweb/templates/gitweb_configure.html:67
+#: plinth/modules/gitweb/templates/gitweb_configure.html:52
#, python-format
msgid "Delete repository %(repo.name)s"
msgstr ""
-#: plinth/modules/gitweb/templates/gitweb_configure.html:83
+#: plinth/modules/gitweb/templates/gitweb_configure.html:68
msgid "Cloning..."
msgstr ""
-#: plinth/modules/gitweb/templates/gitweb_configure.html:89
+#: plinth/modules/gitweb/templates/gitweb_configure.html:74
#, python-format
msgid "Go to repository %(repo.name)s"
msgstr ""
-#: plinth/modules/gitweb/templates/gitweb_delete.html:27
+#: plinth/modules/gitweb/templates/gitweb_delete.html:12
#, python-format
msgid "Delete Git Repository %(name)s"
msgstr ""
-#: plinth/modules/gitweb/templates/gitweb_delete.html:33
+#: plinth/modules/gitweb/templates/gitweb_delete.html:18
msgid "Delete this repository permanently?"
msgstr ""
-#: plinth/modules/gitweb/templates/gitweb_delete.html:42
-#: plinth/modules/ikiwiki/templates/ikiwiki_delete.html:44
+#: plinth/modules/gitweb/templates/gitweb_delete.html:27
+#: plinth/modules/ikiwiki/templates/ikiwiki_delete.html:29
#, python-format
msgid "Delete %(name)s"
msgstr ""
-#: plinth/modules/gitweb/views.py:65
+#: plinth/modules/gitweb/views.py:45
msgid "Repository created."
msgstr ""
-#: plinth/modules/gitweb/views.py:87
+#: plinth/modules/gitweb/views.py:67
msgid "An error occurred while creating the repository."
msgstr ""
-#: plinth/modules/gitweb/views.py:100
+#: plinth/modules/gitweb/views.py:80
msgid "Repository edited."
msgstr ""
-#: plinth/modules/gitweb/views.py:105
+#: plinth/modules/gitweb/views.py:85
msgid "Edit repository"
msgstr ""
-#: plinth/modules/gitweb/views.py:133 plinth/modules/searx/views.py:62
-#: plinth/modules/searx/views.py:73 plinth/modules/tor/views.py:178
+#: plinth/modules/gitweb/views.py:113 plinth/modules/searx/views.py:42
+#: plinth/modules/searx/views.py:53 plinth/modules/tor/views.py:159
msgid "An error occurred during configuration."
msgstr ""
-#: plinth/modules/gitweb/views.py:154
+#: plinth/modules/gitweb/views.py:134
#, python-brace-format
msgid "{name} deleted."
msgstr ""
-#: plinth/modules/gitweb/views.py:158
+#: plinth/modules/gitweb/views.py:138
#, python-brace-format
msgid "Could not delete {name}: {error}"
msgstr ""
-#: plinth/modules/help/__init__.py:40
+#: plinth/modules/help/__init__.py:30
msgid "Documentation"
msgstr ""
-#: plinth/modules/help/__init__.py:43 plinth/modules/networks/forms.py:64
-#: plinth/modules/networks/forms.py:95 plinth/templates/help-menu.html:35
-#: plinth/templates/help-menu.html:36 plinth/templates/index.html:135
+#: plinth/modules/help/__init__.py:33 plinth/modules/networks/forms.py:47
+#: plinth/modules/networks/forms.py:77 plinth/templates/help-menu.html:20
+#: plinth/templates/help-menu.html:21 plinth/templates/index.html:120
msgid "Manual"
msgstr ""
-#: plinth/modules/help/__init__.py:47 plinth/modules/help/help.py:58
-#: plinth/modules/help/templates/help_support.html:24
-#: plinth/templates/help-menu.html:42 plinth/templates/help-menu.html:43
+#: plinth/modules/help/__init__.py:37 plinth/modules/help/help.py:43
+#: plinth/modules/help/templates/help_support.html:9
+#: plinth/templates/help-menu.html:27 plinth/templates/help-menu.html:28
msgid "Get Support"
msgstr ""
-#: plinth/modules/help/__init__.py:51 plinth/modules/help/help.py:52
-#: plinth/modules/help/templates/help_feedback.html:24
-#: plinth/templates/help-menu.html:48 plinth/templates/help-menu.html:49
+#: plinth/modules/help/__init__.py:41 plinth/modules/help/help.py:37
+#: plinth/modules/help/templates/help_feedback.html:9
+#: plinth/templates/help-menu.html:33 plinth/templates/help-menu.html:34
msgid "Submit Feedback"
msgstr ""
-#: plinth/modules/help/__init__.py:55 plinth/modules/help/help.py:46
-#: plinth/modules/help/templates/help_contribute.html:24
-#: plinth/templates/help-menu.html:54 plinth/templates/help-menu.html:55
+#: plinth/modules/help/__init__.py:45 plinth/modules/help/help.py:31
+#: plinth/modules/help/templates/help_contribute.html:9
+#: plinth/templates/help-menu.html:39 plinth/templates/help-menu.html:40
msgid "Contribute"
msgstr ""
-#: plinth/modules/help/help.py:40
+#: plinth/modules/help/help.py:25
msgid "Documentation and FAQ"
msgstr ""
-#: plinth/modules/help/help.py:66
+#: plinth/modules/help/help.py:51
#, python-brace-format
msgid "About {box_name}"
msgstr ""
-#: plinth/modules/help/help.py:101
+#: plinth/modules/help/help.py:86
#, python-brace-format
msgid "{box_name} Manual"
msgstr ""
-#: plinth/modules/help/templates/help_about.html:32
+#: plinth/modules/help/templates/help_about.html:17
#, python-format
msgid ""
"%(box_name)s is a community project to develop, design and promote personal "
@@ -1651,7 +1680,7 @@ msgid ""
"your data stays with you."
msgstr ""
-#: plinth/modules/help/templates/help_about.html:45
+#: plinth/modules/help/templates/help_about.html:30
msgid ""
"We live in a world where our use of the network is mediated by those who "
"often do not have our best interests at heart. By building software that "
@@ -1661,7 +1690,7 @@ msgid ""
"returning the Internet to its intended peer-to-peer architecture."
msgstr ""
-#: plinth/modules/help/templates/help_about.html:58
+#: plinth/modules/help/templates/help_about.html:43
#, python-format
msgid ""
"There are a number of projects working to realize a future of distributed "
@@ -1669,37 +1698,37 @@ msgid ""
"package."
msgstr ""
-#: plinth/modules/help/templates/help_about.html:66
+#: plinth/modules/help/templates/help_about.html:51
#, python-format
msgid ""
"For more information about the %(box_name)s project, see the %(box_name)s Wiki."
msgstr ""
-#: plinth/modules/help/templates/help_about.html:75
+#: plinth/modules/help/templates/help_about.html:60
msgid "Learn more »"
msgstr ""
-#: plinth/modules/help/templates/help_about.html:78
+#: plinth/modules/help/templates/help_about.html:63
#, python-format
msgid "You are running %(os_release)s and %(box_name)s version %(version)s."
msgstr ""
-#: plinth/modules/help/templates/help_about.html:83
+#: plinth/modules/help/templates/help_about.html:68
#, python-format
msgid "There is a new %(box_name)s version available."
msgstr ""
-#: plinth/modules/help/templates/help_about.html:87
+#: plinth/modules/help/templates/help_about.html:72
#, python-format
msgid "%(box_name)s is up to date."
msgstr ""
-#: plinth/modules/help/templates/help_about.html:94
+#: plinth/modules/help/templates/help_about.html:79
msgid "Security Notice"
msgstr ""
-#: plinth/modules/help/templates/help_about.html:96
+#: plinth/modules/help/templates/help_about.html:81
msgid ""
"You are using packages from Debian backports. Please note that these "
"packages do not have security support from Debian. However, they are "
@@ -1707,17 +1736,17 @@ msgid ""
"community."
msgstr ""
-#: plinth/modules/help/templates/help_base.html:36
-#: plinth/modules/help/templates/help_index.html:76
+#: plinth/modules/help/templates/help_base.html:21
+#: plinth/modules/help/templates/help_index.html:61
#, python-format
msgid "%(box_name)s Setup"
msgstr ""
-#: plinth/modules/help/templates/help_contribute.html:27
+#: plinth/modules/help/templates/help_contribute.html:12
msgid "The FreedomBox project welcomes contributions of all kinds."
msgstr ""
-#: plinth/modules/help/templates/help_contribute.html:33
+#: plinth/modules/help/templates/help_contribute.html:18
msgid ""
"You can contribute by writing code, testing and reporting bugs, discussing "
"new use cases and applications, designing logos and artwork, providing "
@@ -1726,7 +1755,7 @@ msgid ""
"the word."
msgstr ""
-#: plinth/modules/help/templates/help_contribute.html:43
+#: plinth/modules/help/templates/help_contribute.html:28
msgid ""
"You can also help the project financially by donating to the non-profit FreedomBox "
@@ -1738,26 +1767,26 @@ msgid ""
"supporters."
msgstr ""
-#: plinth/modules/help/templates/help_contribute.html:57
-#: plinth/modules/power/templates/power_restart.html:42
-#: plinth/modules/power/templates/power_shutdown.html:41
-#: plinth/templates/header.html:59
+#: plinth/modules/help/templates/help_contribute.html:42
+#: plinth/modules/power/templates/power_restart.html:27
+#: plinth/modules/power/templates/power_shutdown.html:26
+#: plinth/templates/app-header.html:51
msgid "Learn more..."
msgstr ""
-#: plinth/modules/help/templates/help_feedback.html:27
+#: plinth/modules/help/templates/help_feedback.html:12
#, python-format
msgid "Your feedback will help us improve %(box_name)s!"
msgstr ""
-#: plinth/modules/help/templates/help_feedback.html:33
+#: plinth/modules/help/templates/help_feedback.html:18
msgid ""
"Let us know about missing features, your favourite apps and how we can "
"improve them on our discussion forum."
msgstr ""
-#: plinth/modules/help/templates/help_feedback.html:41
+#: plinth/modules/help/templates/help_feedback.html:26
msgid ""
"If you find any bugs or issues, please use the issue tracker"
@@ -1765,30 +1794,30 @@ msgid ""
"already reported and then use the \"New issue\" button."
msgstr ""
-#: plinth/modules/help/templates/help_feedback.html:51
+#: plinth/modules/help/templates/help_feedback.html:36
msgid "Thank you!"
msgstr ""
-#: plinth/modules/help/templates/help_index.html:27
-#: plinth/templates/help-menu.html:23 plinth/templates/help-menu.html:28
+#: plinth/modules/help/templates/help_index.html:12
+#: plinth/templates/help-menu.html:8 plinth/templates/help-menu.html:13
msgid "Help"
msgstr ""
-#: plinth/modules/help/templates/help_index.html:31
+#: plinth/modules/help/templates/help_index.html:16
#, python-format
msgid ""
"The %(box_name)s Manual is the best place to "
"start for information regarding %(box_name)s."
msgstr ""
-#: plinth/modules/help/templates/help_index.html:38
+#: plinth/modules/help/templates/help_index.html:23
#, python-format
msgid ""
" "
"%(box_name)s project wiki contains further information."
msgstr ""
-#: plinth/modules/help/templates/help_index.html:45
+#: plinth/modules/help/templates/help_index.html:30
#, python-format
msgid ""
"To seek help from %(box_name)s community, queries may be posted on the discussion forum."
msgstr ""
-#: plinth/modules/help/templates/help_support.html:42
+#: plinth/modules/help/templates/help_support.html:27
msgid ""
"You can also chat with us on our IRC and Matrix channels (bridged): "
"- #freedombox on irc.oftc.net
- #freedombox:matrix.org
"
@@ -1832,11 +1861,11 @@ msgid ""
"debian.net\">mailing list."
msgstr ""
-#: plinth/modules/help/templates/statuslog.html:25
+#: plinth/modules/help/templates/statuslog.html:10
msgid "Status Log"
msgstr ""
-#: plinth/modules/help/templates/statuslog.html:28
+#: plinth/modules/help/templates/statuslog.html:13
#, python-format
msgid ""
"These are the last %(num_lines)s lines of the status log for this web "
@@ -1845,21 +1874,13 @@ msgid ""
"this status log to the bug report."
msgstr ""
-#: plinth/modules/help/templates/statuslog.html:39
+#: plinth/modules/help/templates/statuslog.html:24
msgid ""
"Please remove any passwords or other personal information from the log "
"before submitting the bug report."
msgstr ""
-#: plinth/modules/i2p/__init__.py:42 plinth/modules/i2p/manifest.py:31
-msgid "I2P"
-msgstr ""
-
-#: plinth/modules/i2p/__init__.py:46 plinth/modules/tor/__init__.py:49
-msgid "Anonymity Network"
-msgstr ""
-
-#: plinth/modules/i2p/__init__.py:49
+#: plinth/modules/i2p/__init__.py:28
msgid ""
"The Invisible Internet Project is an anonymous network layer intended to "
"protect communication from censorship and surveillance. I2P provides "
@@ -1867,83 +1888,83 @@ msgid ""
"distributed around the world."
msgstr ""
-#: plinth/modules/i2p/__init__.py:53
+#: plinth/modules/i2p/__init__.py:32
msgid ""
"Find more information about I2P on their project homepage."
msgstr ""
-#: plinth/modules/i2p/__init__.py:55
+#: plinth/modules/i2p/__init__.py:34
msgid ""
"The first visit to the provided web interface will initiate the "
"configuration process."
msgstr ""
-#: plinth/modules/i2p/__init__.py:61
+#: plinth/modules/i2p/__init__.py:38
msgid "Manage I2P application"
msgstr ""
-#: plinth/modules/i2p/__init__.py:103
+#: plinth/modules/i2p/__init__.py:64 plinth/modules/i2p/manifest.py:16
+msgid "I2P"
+msgstr ""
+
+#: plinth/modules/i2p/__init__.py:65 plinth/modules/tor/__init__.py:56
+msgid "Anonymity Network"
+msgstr ""
+
+#: plinth/modules/i2p/__init__.py:87
msgid "I2P Proxy"
msgstr ""
-#: plinth/modules/i2p/templates/i2p_service.html:31
-#: plinth/templates/clients.html:43
+#: plinth/modules/i2p/templates/i2p_service.html:16
+#: plinth/templates/clients.html:28
msgid "Launch"
msgstr ""
-#: plinth/modules/i2p/views.py:34
+#: plinth/modules/i2p/views.py:19
msgid "Proxies"
msgstr ""
-#: plinth/modules/i2p/views.py:37
+#: plinth/modules/i2p/views.py:22
msgid "Anonymous torrents"
msgstr ""
-#: plinth/modules/i2p/views.py:88
+#: plinth/modules/i2p/views.py:64
msgid "I2P Proxies and Tunnels"
msgstr ""
-#: plinth/modules/i2p/views.py:91
+#: plinth/modules/i2p/views.py:67
msgid ""
"I2P lets you browse the Internet and hidden services (eepsites) anonymously. "
"For this, your browser, preferably a Tor Browser, needs to be configured for "
"a proxy."
msgstr ""
-#: plinth/modules/i2p/views.py:94
+#: plinth/modules/i2p/views.py:70
msgid ""
"By default HTTP, HTTPS and IRC proxies are available. Additional proxies and "
"tunnels may be configured using the tunnel configuration interface."
msgstr ""
-#: plinth/modules/i2p/views.py:103
+#: plinth/modules/i2p/views.py:79
msgid "Anonymous Torrents"
msgstr ""
-#: plinth/modules/i2p/views.py:106
+#: plinth/modules/i2p/views.py:82
msgid ""
"I2P provides an application to download files anonymously in a peer-to-peer "
"network. Download files by adding torrents or create a new torrent to share "
"a file."
msgstr ""
-#: plinth/modules/ikiwiki/__init__.py:41 plinth/modules/ikiwiki/manifest.py:24
-msgid "ikiwiki"
-msgstr ""
-
-#: plinth/modules/ikiwiki/__init__.py:45
-msgid "Wiki and Blog"
-msgstr ""
-
-#: plinth/modules/ikiwiki/__init__.py:48
+#: plinth/modules/ikiwiki/__init__.py:27
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."
msgstr ""
-#: plinth/modules/ikiwiki/__init__.py:52
+#: plinth/modules/ikiwiki/__init__.py:31
#, python-brace-format
msgid ""
"Only {box_name} users in the admin group can create and "
@@ -1952,102 +1973,96 @@ msgid ""
"Configuration you can change these permissions or add new users."
msgstr ""
-#: plinth/modules/ikiwiki/__init__.py:62
+#: plinth/modules/ikiwiki/__init__.py:39
msgid "View and edit wiki applications"
msgstr ""
-#: plinth/modules/ikiwiki/forms.py:27
-#: plinth/modules/networks/templates/connection_show.html:98
-#: plinth/modules/storage/templates/storage.html:43
-msgid "Type"
+#: plinth/modules/ikiwiki/__init__.py:53 plinth/modules/ikiwiki/manifest.py:9
+msgid "ikiwiki"
msgstr ""
-#: plinth/modules/ikiwiki/forms.py:32
+#: plinth/modules/ikiwiki/__init__.py:54
+msgid "Wiki and Blog"
+msgstr ""
+
+#: plinth/modules/ikiwiki/forms.py:17
msgid "Admin Account Name"
msgstr ""
-#: plinth/modules/ikiwiki/forms.py:34
+#: plinth/modules/ikiwiki/forms.py:19
msgid "Admin Account Password"
msgstr ""
-#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:27
+#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:12
msgid "Manage Wikis and Blogs"
msgstr ""
-#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:31
-#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:33
-#: plinth/modules/ikiwiki/templates/ikiwiki_create.html:25
+#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:16
+#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:18
+#: plinth/modules/ikiwiki/templates/ikiwiki_create.html:10
msgid "Create Wiki or Blog"
msgstr ""
-#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:40
+#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:25
msgid "No wikis or blogs available."
msgstr ""
-#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:48
+#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:33
#, python-format
msgid "Delete site %(site)s"
msgstr ""
-#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:55
+#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:40
#, python-format
msgid "Go to site %(site)s"
msgstr ""
-#: plinth/modules/ikiwiki/templates/ikiwiki_delete.html:27
+#: plinth/modules/ikiwiki/templates/ikiwiki_delete.html:12
#, python-format
msgid "Delete Wiki or Blog %(name)s"
msgstr ""
-#: plinth/modules/ikiwiki/templates/ikiwiki_delete.html:33
+#: plinth/modules/ikiwiki/templates/ikiwiki_delete.html:18
msgid ""
"This action will remove all the posts, pages and comments including revision "
"history. Delete this wiki or blog permanently?"
msgstr ""
-#: plinth/modules/ikiwiki/views.py:96
+#: plinth/modules/ikiwiki/views.py:73
#, python-brace-format
msgid "Created wiki {name}."
msgstr ""
-#: plinth/modules/ikiwiki/views.py:99
+#: plinth/modules/ikiwiki/views.py:76
#, python-brace-format
msgid "Could not create wiki: {error}"
msgstr ""
-#: plinth/modules/ikiwiki/views.py:109
+#: plinth/modules/ikiwiki/views.py:86
#, python-brace-format
msgid "Created blog {name}."
msgstr ""
-#: plinth/modules/ikiwiki/views.py:112
+#: plinth/modules/ikiwiki/views.py:89
#, python-brace-format
msgid "Could not create blog: {error}"
msgstr ""
-#: plinth/modules/ikiwiki/views.py:127
+#: plinth/modules/ikiwiki/views.py:104
#, python-brace-format
msgid "{title} deleted."
msgstr ""
-#: plinth/modules/ikiwiki/views.py:131
+#: plinth/modules/ikiwiki/views.py:108
#, python-brace-format
msgid "Could not delete {title}: {error}"
msgstr ""
-#: plinth/modules/infinoted/__init__.py:42
-msgid "infinoted"
-msgstr ""
-
-#: plinth/modules/infinoted/__init__.py:46
-msgid "Gobby Server"
-msgstr ""
-
-#: plinth/modules/infinoted/__init__.py:49
+#: plinth/modules/infinoted/__init__.py:26
msgid "infinoted is a server for Gobby, a collaborative text editor."
msgstr ""
-#: plinth/modules/infinoted/__init__.py:51
+#: plinth/modules/infinoted/__init__.py:28
#, python-brace-format
msgid ""
"To use it, download Gobby, desktop "
@@ -2055,49 +2070,49 @@ msgid ""
"enter your {box_name}'s domain name."
msgstr ""
-#: plinth/modules/infinoted/manifest.py:27
+#: plinth/modules/infinoted/__init__.py:48
+msgid "infinoted"
+msgstr ""
+
+#: plinth/modules/infinoted/__init__.py:49
+msgid "Gobby Server"
+msgstr ""
+
+#: plinth/modules/infinoted/manifest.py:12
msgid "Gobby"
msgstr ""
-#: plinth/modules/infinoted/manifest.py:29
+#: plinth/modules/infinoted/manifest.py:14
msgid "Gobby is a collaborative text editor"
msgstr ""
-#: plinth/modules/infinoted/manifest.py:32
+#: plinth/modules/infinoted/manifest.py:17
#, python-brace-format
msgid ""
"Start Gobby and select \"Connect to Server\" and enter your {box_name}'s "
"domain name."
msgstr ""
-#: plinth/modules/jsxc/__init__.py:36 plinth/modules/jsxc/manifest.py:25
-msgid "JSXC"
-msgstr ""
-
-#: plinth/modules/jsxc/__init__.py:40
-msgid "Chat Client"
-msgstr ""
-
-#: plinth/modules/jsxc/__init__.py:43
+#: plinth/modules/jsxc/__init__.py:22
msgid ""
"JSXC is a web client for XMPP. Typically it is used with an XMPP server "
"running locally."
msgstr ""
-#: plinth/modules/jsxc/templates/jsxc_launch.html:140
-#: plinth/templates/base.html:253
+#: plinth/modules/jsxc/__init__.py:40 plinth/modules/jsxc/manifest.py:10
+msgid "JSXC"
+msgstr ""
+
+#: plinth/modules/jsxc/__init__.py:41
+msgid "Chat Client"
+msgstr ""
+
+#: plinth/modules/jsxc/templates/jsxc_launch.html:125
+#: plinth/templates/base.html:238
msgid "JavaScript license information"
msgstr ""
-#: plinth/modules/letsencrypt/__init__.py:48
-msgid "Let's Encrypt"
-msgstr ""
-
-#: plinth/modules/letsencrypt/__init__.py:50
-msgid "Certificates"
-msgstr ""
-
-#: plinth/modules/letsencrypt/__init__.py:54
+#: plinth/modules/letsencrypt/__init__.py:35
#, python-brace-format
msgid ""
"A digital certificate allows users of a web service to verify the identity "
@@ -2107,7 +2122,7 @@ msgid ""
"Encrypt, a certificate authority (CA)."
msgstr ""
-#: plinth/modules/letsencrypt/__init__.py:60
+#: plinth/modules/letsencrypt/__init__.py:41
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 "
@@ -2115,118 +2130,122 @@ msgid ""
"\">Let's Encrypt Subscriber Agreement before using this service."
msgstr ""
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:44
+#: plinth/modules/letsencrypt/__init__.py:65
+msgid "Let's Encrypt"
+msgstr ""
+
+#: plinth/modules/letsencrypt/__init__.py:66
+msgid "Certificates"
+msgstr ""
+
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:29
msgid "Domain"
msgstr ""
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:45
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:30
msgid "Certificate Status"
msgstr ""
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:46
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:31
msgid "Website Security"
msgstr ""
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:47
-#: plinth/modules/storage/templates/storage.html:45
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:32
+#: plinth/modules/storage/templates/storage.html:30
msgid "Actions"
msgstr ""
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:57
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:42
#, python-format
msgid "Valid, expires on %(expiry_date)s"
msgstr ""
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:64
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:49
msgid "Revoked"
msgstr ""
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:68
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:53
#, python-format
msgid "Expired on %(expiry_date)s"
msgstr ""
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:72
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:57
msgid "Invalid test certificate"
msgstr ""
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:76
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:61
#, python-format
msgid "Invalid (%(reason)s)"
msgstr ""
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:83
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:68
msgid "No certificate"
msgstr ""
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:100
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:85
msgid "Re-obtain"
msgstr ""
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:106
-#: plinth/modules/networks/templates/connection_show.html:63
-#: plinth/modules/samba/templates/samba.html:142
-#: plinth/modules/wireguard/templates/wireguard_delete_client.html:39
-#: plinth/modules/wireguard/templates/wireguard_delete_server.html:48
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:88
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:89
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:91
+#: plinth/modules/networks/templates/connection_show.html:48
+#: plinth/modules/samba/templates/samba.html:127
+#: plinth/modules/wireguard/templates/wireguard_delete_client.html:24
+#: plinth/modules/wireguard/templates/wireguard_delete_server.html:33
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:73
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:74
msgid "Delete"
msgstr ""
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:113
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:98
msgid "Revoke"
msgstr ""
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:121
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:106
msgid "Obtain"
msgstr ""
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:132
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:117
#, python-format
msgid ""
"No domains have been configured. Configure "
"domains to be able to obtain certificates for them."
msgstr ""
-#: plinth/modules/letsencrypt/views.py:58
+#: plinth/modules/letsencrypt/views.py:41
#, 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:64
+#: plinth/modules/letsencrypt/views.py:47
#, python-brace-format
msgid "Failed to revoke certificate for domain {domain}: {error}"
msgstr ""
+#: plinth/modules/letsencrypt/views.py:60
#: plinth/modules/letsencrypt/views.py:77
-#: plinth/modules/letsencrypt/views.py:94
#, python-brace-format
msgid "Certificate successfully obtained for domain {domain}"
msgstr ""
+#: plinth/modules/letsencrypt/views.py:65
#: plinth/modules/letsencrypt/views.py:82
-#: plinth/modules/letsencrypt/views.py:99
#, python-brace-format
msgid "Failed to obtain certificate for domain {domain}: {error}"
msgstr ""
-#: plinth/modules/letsencrypt/views.py:111
+#: plinth/modules/letsencrypt/views.py:94
#, python-brace-format
msgid "Certificate successfully deleted for domain {domain}"
msgstr ""
-#: plinth/modules/letsencrypt/views.py:116
+#: plinth/modules/letsencrypt/views.py:99
#, python-brace-format
msgid "Failed to delete certificate for domain {domain}: {error}"
msgstr ""
-#: plinth/modules/matrixsynapse/__init__.py:48
-msgid "Matrix Synapse"
-msgstr ""
-
-#: plinth/modules/matrixsynapse/__init__.py:55
+#: plinth/modules/matrixsynapse/__init__.py:34
msgid ""
"Matrix is an new "
"ecosystem for open, federated instant messaging and VoIP. Synapse is a "
@@ -2236,36 +2255,40 @@ msgid ""
"converse with users on all other Matrix servers via federation."
msgstr ""
-#: plinth/modules/matrixsynapse/__init__.py:62
+#: plinth/modules/matrixsynapse/__init__.py:41
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:29
+#: plinth/modules/matrixsynapse/__init__.py:66
+msgid "Matrix Synapse"
+msgstr ""
+
+#: plinth/modules/matrixsynapse/forms.py:14
msgid "Enable Public Registration"
msgstr ""
-#: plinth/modules/matrixsynapse/forms.py:30
+#: plinth/modules/matrixsynapse/forms.py:15
msgid ""
"Enabling public registration means that anyone on the Internet can register "
"a new account on your Matrix server. Disable this if you only want existing "
"users to be able to use it."
msgstr ""
-#: plinth/modules/matrixsynapse/manifest.py:28
+#: plinth/modules/matrixsynapse/manifest.py:13
msgid "Riot"
msgstr ""
-#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:33
+#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:18
msgid ""
"Matrix service needs to be configured for a domain. Users on other Matrix "
"servers will be able to reach users on this server using this domain name. "
"Matrix user IDs will look like @username:domainname."
msgstr ""
-#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:41
+#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:26
msgid ""
"\n"
" Warning! Changing the domain name after the initial\n"
@@ -2273,14 +2296,14 @@ msgid ""
" "
msgstr ""
-#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:50
+#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:35
#, python-format
msgid ""
"No domain(s) are available. Configure at "
"least one domain to be able to use Matrix Synapse."
msgstr ""
-#: plinth/modules/matrixsynapse/templates/matrix-synapse.html:29
+#: plinth/modules/matrixsynapse/templates/matrix-synapse.html:14
#, python-format
msgid ""
"The Matrix server domain is set to %(domain_name)s. User IDs will "
@@ -2288,13 +2311,13 @@ msgid ""
"the initial setup is currently not supported."
msgstr ""
-#: plinth/modules/matrixsynapse/templates/matrix-synapse.html:36
+#: plinth/modules/matrixsynapse/templates/matrix-synapse.html:21
msgid ""
"New users can be registered from any client if public registration is "
"enabled."
msgstr ""
-#: plinth/modules/matrixsynapse/templates/matrix-synapse.html:45
+#: plinth/modules/matrixsynapse/templates/matrix-synapse.html:30
#, python-format
msgid ""
"The configured domain name is using a self-signed certificate. Federation "
@@ -2302,24 +2325,15 @@ msgid ""
"go to Let's Encrypt to obtain one."
msgstr ""
-#: plinth/modules/matrixsynapse/views.py:121
+#: plinth/modules/matrixsynapse/views.py:98
msgid "Public registration enabled"
msgstr ""
-#: plinth/modules/matrixsynapse/views.py:126
+#: plinth/modules/matrixsynapse/views.py:103
msgid "Public registration disabled"
msgstr ""
-#: plinth/modules/mediawiki/__init__.py:40
-#: plinth/modules/mediawiki/manifest.py:24
-msgid "MediaWiki"
-msgstr ""
-
-#: plinth/modules/mediawiki/__init__.py:44 plinth/templates/index.html:139
-msgid "Wiki"
-msgstr ""
-
-#: plinth/modules/mediawiki/__init__.py:47
+#: plinth/modules/mediawiki/__init__.py:26
msgid ""
"MediaWiki is the wiki engine that powers Wikipedia and other WikiMedia "
"projects. A wiki engine is a program for creating a collaboratively edited "
@@ -2327,7 +2341,7 @@ msgid ""
"collaborate with friends on projects."
msgstr ""
-#: plinth/modules/mediawiki/__init__.py:51
+#: plinth/modules/mediawiki/__init__.py:30
msgid ""
"This MediaWiki instance comes with a randomly generated administrator "
"password. You can set a new password in the \"Configuration\" section and "
@@ -2336,86 +2350,86 @@ msgid ""
"CreateAccount\">Special:CreateAccount page."
msgstr ""
-#: plinth/modules/mediawiki/__init__.py:57
+#: plinth/modules/mediawiki/__init__.py:36
msgid ""
"Anyone with a link to this wiki can read it. Only users that are logged in "
"can make changes to the content."
msgstr ""
-#: plinth/modules/mediawiki/forms.py:42
+#: plinth/modules/mediawiki/__init__.py:54
+#: plinth/modules/mediawiki/manifest.py:9
+msgid "MediaWiki"
+msgstr ""
+
+#: plinth/modules/mediawiki/__init__.py:55 plinth/templates/index.html:124
+msgid "Wiki"
+msgstr ""
+
+#: plinth/modules/mediawiki/forms.py:27
msgid "Administrator Password"
msgstr ""
-#: plinth/modules/mediawiki/forms.py:43
+#: plinth/modules/mediawiki/forms.py:28
msgid ""
"Set a new password for MediaWiki's administrator account (admin). Leave this "
"field blank to keep the current password."
msgstr ""
-#: plinth/modules/mediawiki/forms.py:48
+#: plinth/modules/mediawiki/forms.py:33
msgid "Enable public registrations"
msgstr ""
-#: plinth/modules/mediawiki/forms.py:49
+#: plinth/modules/mediawiki/forms.py:34
msgid ""
"If enabled, anyone on the internet will be able to create an account on your "
"MediaWiki instance."
msgstr ""
-#: plinth/modules/mediawiki/forms.py:53
+#: plinth/modules/mediawiki/forms.py:38
msgid "Enable private mode"
msgstr ""
-#: plinth/modules/mediawiki/forms.py:54
+#: plinth/modules/mediawiki/forms.py:39
msgid ""
"If enabled, access will be restricted. Only people who have accounts can "
"read/write to the wiki. Public registrations will also be disabled."
msgstr ""
-#: plinth/modules/mediawiki/forms.py:59
+#: plinth/modules/mediawiki/forms.py:44
msgid "Default Skin"
msgstr ""
-#: plinth/modules/mediawiki/forms.py:60
+#: plinth/modules/mediawiki/forms.py:45
msgid ""
"Choose a default skin for your MediaWiki installation. Users have the option "
"to select their preferred skin."
msgstr ""
-#: plinth/modules/mediawiki/views.py:74
+#: plinth/modules/mediawiki/views.py:54
msgid "Password updated"
msgstr ""
-#: plinth/modules/mediawiki/views.py:93
+#: plinth/modules/mediawiki/views.py:73
msgid "Public registrations enabled"
msgstr ""
-#: plinth/modules/mediawiki/views.py:102
+#: plinth/modules/mediawiki/views.py:82
msgid "Public registrations disabled"
msgstr ""
-#: plinth/modules/mediawiki/views.py:107
+#: plinth/modules/mediawiki/views.py:87
msgid "Private mode enabled"
msgstr ""
-#: plinth/modules/mediawiki/views.py:114
+#: plinth/modules/mediawiki/views.py:94
msgid "Private mode disabled"
msgstr ""
-#: plinth/modules/mediawiki/views.py:122
+#: plinth/modules/mediawiki/views.py:102
msgid "Default skin changed"
msgstr ""
-#: plinth/modules/minetest/__init__.py:50
-#: plinth/modules/minetest/manifest.py:25
-msgid "Minetest"
-msgstr ""
-
-#: plinth/modules/minetest/__init__.py:54
-msgid "Block Sandbox"
-msgstr ""
-
-#: plinth/modules/minetest/__init__.py:58
+#: plinth/modules/minetest/__init__.py:37
#, python-brace-format
msgid ""
"Minetest is a multiplayer infinite-world block sandbox. This module enables "
@@ -2424,73 +2438,78 @@ msgid ""
"downloads/\">Minetest client is needed."
msgstr ""
-#: plinth/modules/minetest/forms.py:30
+#: plinth/modules/minetest/__init__.py:63
+#: plinth/modules/minetest/manifest.py:10
+msgid "Minetest"
+msgstr ""
+
+#: plinth/modules/minetest/__init__.py:64
+msgid "Block Sandbox"
+msgstr ""
+
+#: plinth/modules/minetest/forms.py:15
msgid "Maximum number of players"
msgstr ""
-#: plinth/modules/minetest/forms.py:32
+#: plinth/modules/minetest/forms.py:17
msgid ""
"You can change the maximum number of players playing minetest at a single "
"instance of time."
msgstr ""
-#: plinth/modules/minetest/forms.py:36
+#: plinth/modules/minetest/forms.py:21
msgid "Enable creative mode"
msgstr ""
-#: plinth/modules/minetest/forms.py:37
+#: plinth/modules/minetest/forms.py:22
msgid ""
"Creative mode changes the rules of the game to make it more suitable for "
"creative gameplay, rather than challenging \"survival\" gameplay."
msgstr ""
-#: plinth/modules/minetest/forms.py:42
+#: plinth/modules/minetest/forms.py:27
msgid "Enable PVP"
msgstr ""
-#: plinth/modules/minetest/forms.py:43
+#: plinth/modules/minetest/forms.py:28
msgid "Enabling Player Vs Player will allow players to damage other players."
msgstr ""
-#: plinth/modules/minetest/forms.py:47
+#: plinth/modules/minetest/forms.py:32
msgid "Enable damage"
msgstr ""
-#: plinth/modules/minetest/forms.py:48
+#: plinth/modules/minetest/forms.py:33
msgid "When disabled, players cannot die or receive damage of any kind."
msgstr ""
-#: plinth/modules/minetest/templates/minetest.html:33
-#: plinth/modules/networks/forms.py:66 plinth/modules/networks/forms.py:97
+#: plinth/modules/minetest/templates/minetest.html:18
+#: plinth/modules/networks/forms.py:49 plinth/modules/networks/forms.py:79
msgid "Address"
msgstr ""
-#: plinth/modules/minetest/templates/minetest.html:34
-#: plinth/modules/tor/templates/tor.html:96
+#: plinth/modules/minetest/templates/minetest.html:19
+#: plinth/modules/tor/templates/tor.html:81
msgid "Port"
msgstr ""
-#: plinth/modules/minetest/views.py:70
+#: plinth/modules/minetest/views.py:50
msgid "Maximum players configuration updated"
msgstr ""
-#: plinth/modules/minetest/views.py:77
+#: plinth/modules/minetest/views.py:57
msgid "Creative mode configuration updated"
msgstr ""
-#: plinth/modules/minetest/views.py:83
+#: plinth/modules/minetest/views.py:63
msgid "PVP configuration updated"
msgstr ""
-#: plinth/modules/minetest/views.py:89
+#: plinth/modules/minetest/views.py:69
msgid "Damage configuration updated"
msgstr ""
-#: plinth/modules/minidlna/__init__.py:41
-msgid "Simple Media Server"
-msgstr ""
-
-#: plinth/modules/minidlna/__init__.py:44
+#: plinth/modules/minidlna/__init__.py:23
msgid ""
"MiniDLNA is a simple media server software, with the aim of being fully "
"compliant with DLNA/UPnP-AV clients. The MiniDNLA daemon serves media files "
@@ -2501,15 +2520,19 @@ msgid ""
"Kodi."
msgstr ""
-#: plinth/modules/minidlna/__init__.py:56
+#: plinth/modules/minidlna/__init__.py:33
msgid "Media streaming server"
msgstr ""
-#: plinth/modules/minidlna/forms.py:30
+#: plinth/modules/minidlna/__init__.py:47
+msgid "Simple Media Server"
+msgstr ""
+
+#: plinth/modules/minidlna/forms.py:15
msgid "Media Files Directory"
msgstr ""
-#: plinth/modules/minidlna/forms.py:31
+#: plinth/modules/minidlna/forms.py:16
msgid ""
"Directory that MiniDLNA Server will read for content. All sub-directories of "
"this will be also scanned for media files. If you change the default ensure "
@@ -2517,77 +2540,72 @@ msgid ""
"user. Any user media directories (\"/home/username/\") will usually work."
msgstr ""
-#: plinth/modules/minidlna/manifest.py:25
+#: plinth/modules/minidlna/manifest.py:10
msgid "vlc"
msgstr ""
-#: plinth/modules/minidlna/manifest.py:64
+#: plinth/modules/minidlna/manifest.py:49
msgid "kodi"
msgstr ""
-#: plinth/modules/minidlna/manifest.py:103
+#: plinth/modules/minidlna/manifest.py:88
msgid "yaacc"
msgstr ""
-#: plinth/modules/minidlna/manifest.py:114
+#: plinth/modules/minidlna/manifest.py:99
msgid "totem"
msgstr ""
-#: plinth/modules/minidlna/views.py:57
+#: plinth/modules/minidlna/views.py:37
msgid "Specified directory does not exist."
msgstr ""
-#: plinth/modules/minidlna/views.py:62
+#: plinth/modules/minidlna/views.py:42
msgid "Updated media directory"
msgstr ""
-#: plinth/modules/mldonkey/__init__.py:40
-#: plinth/modules/mldonkey/manifest.py:27
-msgid "MLDonkey"
-msgstr ""
-
-#: plinth/modules/mldonkey/__init__.py:44
-msgid "Peer-to-peer File Sharing"
-msgstr ""
-
-#: plinth/modules/mldonkey/__init__.py:47
+#: plinth/modules/mldonkey/__init__.py:26
msgid ""
"MLDonkey is a peer-to-peer file sharing application used to exchange large "
"files. It can participate in multiple peer-to-peer networks including "
"eDonkey, Kademlia, Overnet, BitTorrent and DirectConnect."
msgstr ""
-#: plinth/modules/mldonkey/__init__.py:50
+#: plinth/modules/mldonkey/__init__.py:29
msgid ""
"Users belonging to admin and ed2k group can control it through the web "
"interface. Users in the admin group can also control it through any of the "
"separate mobile or desktop front-ends or a telnet interface. See manual."
msgstr ""
-#: plinth/modules/mldonkey/__init__.py:55
+#: plinth/modules/mldonkey/__init__.py:34
#, python-brace-format
msgid ""
"On {box_name}, downloaded files can be found in /var/lib/mldonkey/ directory."
msgstr ""
-#: plinth/modules/mldonkey/__init__.py:63
+#: plinth/modules/mldonkey/__init__.py:40
msgid "Download files using eDonkey applications"
msgstr ""
-#: plinth/modules/mldonkey/manifest.py:34
+#: plinth/modules/mldonkey/__init__.py:54
+#: plinth/modules/mldonkey/manifest.py:12
+msgid "MLDonkey"
+msgstr ""
+
+#: plinth/modules/mldonkey/__init__.py:56
+msgid "Peer-to-peer File Sharing"
+msgstr ""
+
+#: plinth/modules/mldonkey/manifest.py:19
msgid "KMLDonkey"
msgstr ""
-#: plinth/modules/mldonkey/manifest.py:46
+#: plinth/modules/mldonkey/manifest.py:31
msgid "AMLDonkey"
msgstr ""
-#: plinth/modules/monkeysphere/__init__.py:32
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:26
-msgid "Monkeysphere"
-msgstr ""
-
-#: plinth/modules/monkeysphere/__init__.py:35
+#: plinth/modules/monkeysphere/__init__.py:18
msgid ""
"With Monkeysphere, an OpenPGP key can be generated for each configured "
"domain serving SSH. The OpenPGP public key can then be uploaded to the "
@@ -2599,7 +2617,7 @@ msgid ""
"for more details."
msgstr ""
-#: plinth/modules/monkeysphere/__init__.py:43
+#: plinth/modules/monkeysphere/__init__.py:26
msgid ""
"Monkeysphere can also generate an OpenPGP key for each Secure Web Server "
"(HTTPS) certificate installed on this machine. The OpenPGP public key can "
@@ -2610,176 +2628,177 @@ msgid ""
"Monkeysphere website."
msgstr ""
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:60
+#: plinth/modules/monkeysphere/__init__.py:50
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:11
+msgid "Monkeysphere"
+msgstr ""
+
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:45
msgid "Publishing key to keyserver..."
msgstr ""
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:67
-#: plinth/modules/users/templates/users_delete.html:41
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:52
+#: plinth/modules/users/templates/users_delete.html:26
msgid "Cancel"
msgstr ""
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:75
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:55
-#: plinth/modules/tor/templates/tor.html:95
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:60
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:40
+#: plinth/modules/tor/templates/tor.html:80
msgid "Service"
msgstr ""
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:76
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:61
msgid "Domains"
msgstr ""
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:77
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:31
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:62
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:16
msgid "OpenPGP Fingerprint"
msgstr ""
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:86
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:58
-#: plinth/modules/names/components.py:39
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:71
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:43
+#: plinth/modules/names/components.py:24
msgid "Secure Shell"
msgstr ""
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:90
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:62
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:75
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:47
msgid "Other"
msgstr ""
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:127
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:112
#, python-format
msgid "Show details for key %(fingerprint)s"
msgstr ""
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:133
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:118
msgid "-"
msgstr ""
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:143
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:128
msgid "Import Key"
msgstr ""
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:152
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:137
msgid "Publish Key"
msgstr ""
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:161
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:146
msgid "Add Domains"
msgstr ""
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:35
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:20
msgid "OpenPGP User IDs"
msgstr ""
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:39
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:24
msgid "Key Import Date"
msgstr ""
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:43
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:28
msgid "SSH Key Type"
msgstr ""
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:47
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:32
msgid "SSH Key Size"
msgstr ""
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:51
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:36
msgid "SSH Fingerprint"
msgstr ""
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:67
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:52
msgid "Key File"
msgstr ""
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:71
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:56
msgid "Available Domains"
msgstr ""
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:75
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:60
msgid "Added Domains"
msgstr ""
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:82
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:67
msgid ""
"After this key is published to the keyservers, it can be signed using GnuPG with the following commands:"
msgstr ""
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:88
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:73
msgid "Download the key"
msgstr ""
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:91
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:76
msgid "Sign the key"
msgstr ""
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:94
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:79
msgid "Send the key back to the keyservers"
msgstr ""
-#: plinth/modules/monkeysphere/views.py:60
+#: plinth/modules/monkeysphere/views.py:43
msgid "Imported key."
msgstr ""
-#: plinth/modules/monkeysphere/views.py:96
+#: plinth/modules/monkeysphere/views.py:79
msgid "Cancelled key publishing."
msgstr ""
-#: plinth/modules/monkeysphere/views.py:147
+#: plinth/modules/monkeysphere/views.py:130
msgid "Published key to keyserver."
msgstr ""
-#: plinth/modules/monkeysphere/views.py:149
+#: plinth/modules/monkeysphere/views.py:132
msgid "Error occurred while publishing key."
msgstr ""
-#: plinth/modules/mumble/__init__.py:33 plinth/modules/mumble/manifest.py:27
-msgid "Mumble"
-msgstr ""
-
-#: plinth/modules/mumble/__init__.py:37
-msgid "Voice Chat"
-msgstr ""
-
-#: plinth/modules/mumble/__init__.py:44
+#: plinth/modules/mumble/__init__.py:23
msgid ""
"Mumble is an open source, low-latency, encrypted, high quality voice chat "
"software."
msgstr ""
-#: plinth/modules/mumble/__init__.py:46
+#: plinth/modules/mumble/__init__.py:25
msgid ""
"You can connect to your Mumble server on the regular Mumble port 64738. Clients to connect to Mumble from your "
"desktop and Android devices are available."
msgstr ""
-#: plinth/modules/mumble/forms.py:31
+#: plinth/modules/mumble/__init__.py:49 plinth/modules/mumble/manifest.py:12
+msgid "Mumble"
+msgstr ""
+
+#: plinth/modules/mumble/__init__.py:50
+msgid "Voice Chat"
+msgstr ""
+
+#: plinth/modules/mumble/forms.py:16
msgid "Set SuperUser Password"
msgstr ""
-#: plinth/modules/mumble/forms.py:34
+#: plinth/modules/mumble/forms.py:19
msgid ""
"Optional. Leave this field blank to keep the current password. SuperUser "
"password can be used to manage permissions in Mumble."
msgstr ""
-#: plinth/modules/mumble/manifest.py:52
+#: plinth/modules/mumble/manifest.py:37
msgid "Plumble"
msgstr ""
-#: plinth/modules/mumble/manifest.py:66
+#: plinth/modules/mumble/manifest.py:51
msgid "Mumblefly"
msgstr ""
-#: plinth/modules/mumble/views.py:50
+#: plinth/modules/mumble/views.py:29
msgid "SuperUser password successfully updated."
msgstr ""
-#: plinth/modules/names/__init__.py:37
-msgid "Name Services"
-msgstr ""
-
-#: plinth/modules/names/__init__.py:45
+#: plinth/modules/names/__init__.py:26
#, python-brace-format
msgid ""
"Name Services provides an overview of the ways {box_name} can be reached "
@@ -2788,76 +2807,80 @@ msgid ""
"enabled or disabled for incoming connections through the given name."
msgstr ""
-#: plinth/modules/names/components.py:27
+#: plinth/modules/names/__init__.py:46
+msgid "Name Services"
+msgstr ""
+
+#: plinth/modules/names/components.py:12
msgid "All"
msgstr ""
-#: plinth/modules/names/components.py:31 plinth/modules/names/components.py:35
+#: plinth/modules/names/components.py:16 plinth/modules/names/components.py:20
msgid "All web apps"
msgstr ""
-#: plinth/modules/networks/__init__.py:42
-msgid "Networks"
-msgstr ""
-
-#: plinth/modules/networks/__init__.py:45
+#: plinth/modules/networks/__init__.py:35
msgid ""
"Configure network devices. Connect to the Internet via Ethernet, Wi-Fi or "
"PPPoE. Share that connection with other devices on the network."
msgstr ""
-#: plinth/modules/networks/__init__.py:47
+#: plinth/modules/networks/__init__.py:37
msgid ""
"Devices administered through other methods may not be available for "
"configuration here."
msgstr ""
-#: plinth/modules/networks/__init__.py:156
+#: plinth/modules/networks/__init__.py:58
+msgid "Networks"
+msgstr ""
+
+#: plinth/modules/networks/__init__.py:151
#, python-brace-format
msgid "Using DNSSEC on IPv{kind}"
msgstr ""
-#: plinth/modules/networks/forms.py:32
+#: plinth/modules/networks/forms.py:16
msgid "Connection Type"
msgstr ""
-#: plinth/modules/networks/forms.py:44
+#: plinth/modules/networks/forms.py:28
msgid "Connection Name"
msgstr ""
-#: plinth/modules/networks/forms.py:46
+#: plinth/modules/networks/forms.py:30
msgid "Network Interface"
msgstr ""
-#: plinth/modules/networks/forms.py:47
+#: plinth/modules/networks/forms.py:31
msgid "The network device that this connection should be bound to."
msgstr ""
-#: plinth/modules/networks/forms.py:50
+#: plinth/modules/networks/forms.py:34
msgid "Firewall Zone"
msgstr ""
-#: plinth/modules/networks/forms.py:51
+#: plinth/modules/networks/forms.py:35
msgid ""
"The firewall zone will control which services are available over this "
"interfaces. Select Internal only for trusted networks."
msgstr ""
-#: plinth/modules/networks/forms.py:54
-#: plinth/modules/networks/templates/connections_diagram.html:78
+#: plinth/modules/networks/forms.py:38
+#: plinth/modules/networks/templates/connections_diagram.html:63
msgid "External"
msgstr ""
-#: plinth/modules/networks/forms.py:54
-#: plinth/modules/networks/templates/connections_diagram.html:107
+#: plinth/modules/networks/forms.py:38
+#: plinth/modules/networks/templates/connections_diagram.html:92
msgid "Internal"
msgstr ""
-#: plinth/modules/networks/forms.py:56
+#: plinth/modules/networks/forms.py:40
msgid "IPv4 Addressing Method"
msgstr ""
-#: plinth/modules/networks/forms.py:58
+#: plinth/modules/networks/forms.py:41
#, python-brace-format
msgid ""
"\"Automatic\" method will make {box_name} acquire configuration from this "
@@ -2865,197 +2888,237 @@ msgid ""
"router, configure clients on this network and share its Internet connection."
msgstr ""
-#: plinth/modules/networks/forms.py:63
+#: plinth/modules/networks/forms.py:46
msgid "Automatic (DHCP)"
msgstr ""
-#: plinth/modules/networks/forms.py:63
+#: plinth/modules/networks/forms.py:46
msgid "Shared"
msgstr ""
-#: plinth/modules/networks/forms.py:69
+#: plinth/modules/networks/forms.py:52
msgid "Netmask"
msgstr ""
-#: plinth/modules/networks/forms.py:70
+#: plinth/modules/networks/forms.py:53
msgid ""
"Optional value. If left blank, a default netmask based on the address will "
"be used."
msgstr ""
-#: plinth/modules/networks/forms.py:74 plinth/modules/networks/forms.py:104
-#: plinth/modules/networks/templates/connection_show.html:202
-#: plinth/modules/networks/templates/connection_show.html:241
+#: plinth/modules/networks/forms.py:57 plinth/modules/networks/forms.py:86
+#: plinth/modules/networks/templates/connection_show.html:187
+#: plinth/modules/networks/templates/connection_show.html:226
msgid "Gateway"
msgstr ""
-#: plinth/modules/networks/forms.py:74 plinth/modules/networks/forms.py:104
+#: plinth/modules/networks/forms.py:57 plinth/modules/networks/forms.py:86
msgid "Optional value."
msgstr ""
-#: plinth/modules/networks/forms.py:77 plinth/modules/networks/forms.py:107
+#: plinth/modules/networks/forms.py:60 plinth/modules/networks/forms.py:89
msgid "DNS Server"
msgstr ""
-#: plinth/modules/networks/forms.py:78
+#: plinth/modules/networks/forms.py:61
msgid ""
"Optional value. If this value is given and IPv4 addressing method is "
"\"Automatic\", the DNS Servers provided by a DHCP server will be ignored."
msgstr ""
-#: plinth/modules/networks/forms.py:83 plinth/modules/networks/forms.py:113
+#: plinth/modules/networks/forms.py:66 plinth/modules/networks/forms.py:95
msgid "Second DNS Server"
msgstr ""
-#: plinth/modules/networks/forms.py:84
+#: plinth/modules/networks/forms.py:67
msgid ""
"Optional value. If this value is given and IPv4 Addressing Method is "
"\"Automatic\", the DNS Servers provided by a DHCP server will be ignored."
msgstr ""
-#: plinth/modules/networks/forms.py:89
+#: plinth/modules/networks/forms.py:72
msgid "IPv6 Addressing Method"
msgstr ""
-#: plinth/modules/networks/forms.py:91
+#: plinth/modules/networks/forms.py:73
#, python-brace-format
msgid ""
"\"Automatic\" methods will make {box_name} acquire configuration from this "
"network making it a client."
msgstr ""
-#: plinth/modules/networks/forms.py:94 plinth/modules/networks/forms.py:259
+#: plinth/modules/networks/forms.py:76 plinth/modules/networks/forms.py:241
msgid "Automatic"
msgstr ""
-#: plinth/modules/networks/forms.py:94
+#: plinth/modules/networks/forms.py:76
msgid "Automatic, DHCP only"
msgstr ""
-#: plinth/modules/networks/forms.py:95
+#: plinth/modules/networks/forms.py:77
msgid "Ignore"
msgstr ""
-#: plinth/modules/networks/forms.py:99
+#: plinth/modules/networks/forms.py:81
msgid "Prefix"
msgstr ""
-#: plinth/modules/networks/forms.py:100
+#: plinth/modules/networks/forms.py:82
msgid "Value between 1 and 128."
msgstr ""
-#: plinth/modules/networks/forms.py:108
+#: plinth/modules/networks/forms.py:90
msgid ""
"Optional value. If this value is given and IPv6 addressing method is "
"\"Automatic\", the DNS Servers provided by a DHCP server will be ignored."
msgstr ""
-#: plinth/modules/networks/forms.py:114
+#: plinth/modules/networks/forms.py:96
msgid ""
"Optional value. If this value is given and IPv6 Addressing Method is "
"\"Automatic\", the DNS Servers provided by a DHCP server will be ignored."
msgstr ""
-#: plinth/modules/networks/forms.py:127
+#: plinth/modules/networks/forms.py:109
msgid "-- select --"
msgstr ""
-#: plinth/modules/networks/forms.py:252
-#: plinth/modules/networks/templates/connection_show.html:144
+#: plinth/modules/networks/forms.py:234
+#: plinth/modules/networks/templates/connection_show.html:129
msgid "SSID"
msgstr ""
-#: plinth/modules/networks/forms.py:253
+#: plinth/modules/networks/forms.py:235
msgid "The visible name of the network."
msgstr ""
-#: plinth/modules/networks/forms.py:255
-#: plinth/modules/networks/templates/connection_show.html:157
+#: plinth/modules/networks/forms.py:237
+#: plinth/modules/networks/templates/connection_show.html:142
msgid "Mode"
msgstr ""
-#: plinth/modules/networks/forms.py:255
+#: plinth/modules/networks/forms.py:237
msgid "Infrastructure"
msgstr ""
-#: plinth/modules/networks/forms.py:256
+#: plinth/modules/networks/forms.py:238
msgid "Access Point"
msgstr ""
-#: plinth/modules/networks/forms.py:257
+#: plinth/modules/networks/forms.py:239
msgid "Ad-hoc"
msgstr ""
-#: plinth/modules/networks/forms.py:259
+#: plinth/modules/networks/forms.py:241
msgid "Frequency Band"
msgstr ""
-#: plinth/modules/networks/forms.py:260
+#: plinth/modules/networks/forms.py:242
msgid "A (5 GHz)"
msgstr ""
-#: plinth/modules/networks/forms.py:261
+#: plinth/modules/networks/forms.py:243
msgid "B/G (2.4 GHz)"
msgstr ""
-#: plinth/modules/networks/forms.py:263
-#: plinth/modules/networks/templates/connection_show.html:173
+#: plinth/modules/networks/forms.py:245
+#: plinth/modules/networks/templates/connection_show.html:158
msgid "Channel"
msgstr ""
-#: plinth/modules/networks/forms.py:264
+#: plinth/modules/networks/forms.py:246
msgid ""
"Optional value. Wireless channel in the selected frequency band to restrict "
"to. Blank or 0 value means automatic selection."
msgstr ""
-#: plinth/modules/networks/forms.py:269
+#: plinth/modules/networks/forms.py:251
msgid "BSSID"
msgstr ""
-#: plinth/modules/networks/forms.py:270
+#: plinth/modules/networks/forms.py:252
msgid ""
"Optional value. Unique identifier for the access point. When connecting to "
"an access point, connect only if the BSSID of the access point matches the "
"one provided. Example: 00:11:22:aa:bb:cc."
msgstr ""
-#: plinth/modules/networks/forms.py:276
+#: plinth/modules/networks/forms.py:258
msgid "Authentication Mode"
msgstr ""
-#: plinth/modules/networks/forms.py:277
+#: plinth/modules/networks/forms.py:259
msgid ""
"Select WPA if the wireless network is secured and requires clients to have "
"the password to connect."
msgstr ""
-#: plinth/modules/networks/forms.py:279
+#: plinth/modules/networks/forms.py:261
msgid "WPA"
msgstr ""
-#: plinth/modules/networks/forms.py:279
+#: plinth/modules/networks/forms.py:261
msgid "Open"
msgstr ""
+#: plinth/modules/networks/forms.py:297
+msgid "Choose your internet connection type"
+msgstr ""
+
+#: plinth/modules/networks/forms.py:301
+msgid ""
+"I have a public IP address that may change over timeThis means that devices on the Internet can reach you when you are "
+"connected to the Internet. Every time you connect to the Internet with your "
+"Internet Service Provider (ISP), you may get a different IP address, "
+"especially after some offline time. Many ISPs offer this type of "
+"connectivity. If you have a public IP address but are unsure if it changes "
+"over time or not, it is safer to choose this option.
"
+msgstr ""
+
#: plinth/modules/networks/forms.py:313
+#, python-brace-format
+msgid ""
+"I have a public IP address that does not change overtime (recommended)This means that devices on the Internet can reach you "
+"when you are connected to the Internet. Every time you connect to the "
+"Internet with your Internet Service Provider (ISP), you always get the same "
+"IP address. This is the most trouble-free setup for many {box_name} services "
+"but very few ISPs offer this. You may be able to get this service from your "
+"ISP by making an additional payment.
"
+msgstr ""
+
+#: plinth/modules/networks/forms.py:326
+#, python-brace-format
+msgid ""
+"I dont have a public IP addressThis means that "
+"devices on the Internet can not reach you when you are connected to "
+"the Internet. Every time you connect to the Internet with your Internet "
+"Service Provider (ISP), you get an IP address that is only relevant for "
+"local networks. Many ISPs offer this type of connectivity. This is the most "
+"troublesome situation for hosting services at home. {box_name} provides many "
+"workaround solutions but each solution has some limitations.
"
+msgstr ""
+
+#: plinth/modules/networks/forms.py:351
msgid "Preferred router configuration"
msgstr ""
-#: plinth/modules/networks/forms.py:318
+#: plinth/modules/networks/forms.py:356
#, python-brace-format
msgid ""
-"Use DMZ feature to forward all trafficMost routers "
-"provide a configuration setting called DMZ. This will allow the router to "
-"forward all incoming traffic from the internet to a single IP address such "
-"as the {box_name}'s address. First remember to configure a static local IP "
-"address for your {box_name} in your router's configuration.
"
+"Use DMZ feature to forward all traffic (recommended) Most routers provide a configuration setting called DMZ. This will allow "
+"the router to forward all incoming traffic from the Internet to a single IP "
+"address such as the {box_name}'s IP address. First remember to configure a "
+"static local IP address for your {box_name} in your router's configuration."
+"p>"
msgstr ""
-#: plinth/modules/networks/forms.py:332
+#: plinth/modules/networks/forms.py:368
#, python-brace-format
msgid ""
-"Forward Specific Traffic as needed by each application
You may alternatively choose to forward only specific traffic to your "
"{box_name}. This is ideal if you have other servers like {box_name} in your "
"network or if your router does not support DMZ feature. All applications "
@@ -3064,276 +3127,280 @@ msgid ""
"to be forwarded for that application to work.
"
msgstr ""
-#: plinth/modules/networks/forms.py:349
+#: plinth/modules/networks/forms.py:382
msgid ""
-"Router is currently unconfiguredChoose this if you "
+"Router is currently unconfigured
Choose this if you "
"have not configured or are unable to configure the router currently and wish "
"to be reminded later. Some of the other configuration steps may fail.
"
msgstr ""
-#: plinth/modules/networks/networks.py:43
+#: plinth/modules/networks/networks.py:32
msgid "Network Connections"
msgstr ""
-#: plinth/modules/networks/networks.py:59
+#: plinth/modules/networks/networks.py:46
msgid "Cannot show connection: Connection not found."
msgstr ""
-#: plinth/modules/networks/networks.py:94
+#: plinth/modules/networks/networks.py:81
msgid "Connection Information"
msgstr ""
-#: plinth/modules/networks/networks.py:108
+#: plinth/modules/networks/networks.py:95
msgid "Cannot edit connection: Connection not found."
msgstr ""
-#: plinth/modules/networks/networks.py:114
+#: plinth/modules/networks/networks.py:101
msgid "This type of connection is not yet understood."
msgstr ""
-#: plinth/modules/networks/networks.py:136
-#: plinth/modules/networks/networks.py:220
-#: plinth/modules/networks/templates/connections_edit.html:35
+#: plinth/modules/networks/networks.py:123
+#: plinth/modules/networks/networks.py:207
+#: plinth/modules/networks/templates/connections_edit.html:20
msgid "Edit Connection"
msgstr ""
-#: plinth/modules/networks/networks.py:232
+#: plinth/modules/networks/networks.py:219
#, python-brace-format
msgid "Activated connection {name}."
msgstr ""
-#: plinth/modules/networks/networks.py:236
+#: plinth/modules/networks/networks.py:223
msgid "Failed to activate connection: Connection not found."
msgstr ""
-#: plinth/modules/networks/networks.py:242
+#: plinth/modules/networks/networks.py:229
#, python-brace-format
msgid "Failed to activate connection {name}: No suitable device is available."
msgstr ""
-#: plinth/modules/networks/networks.py:255
+#: plinth/modules/networks/networks.py:242
#, python-brace-format
msgid "Deactivated connection {name}."
msgstr ""
-#: plinth/modules/networks/networks.py:259
+#: plinth/modules/networks/networks.py:246
msgid "Failed to de-activate connection: Connection not found."
msgstr ""
-#: plinth/modules/networks/networks.py:269
-#: plinth/modules/networks/templates/connections_list.html:62
-#: plinth/modules/networks/templates/connections_list.html:64
+#: plinth/modules/networks/networks.py:256
+#: plinth/modules/networks/templates/connections_list.html:12
+#: plinth/modules/networks/templates/connections_list.html:14
msgid "Nearby Wi-Fi Networks"
msgstr ""
-#: plinth/modules/networks/networks.py:293
-#: plinth/modules/networks/templates/connections_list.html:67
-#: plinth/modules/networks/templates/connections_list.html:69
-#: plinth/modules/wireguard/templates/wireguard_add_server.html:34
+#: plinth/modules/networks/networks.py:280
+#: plinth/modules/networks/templates/connections_list.html:17
+#: plinth/modules/networks/templates/connections_list.html:19
+#: plinth/modules/wireguard/templates/wireguard_add_server.html:19
msgid "Add Connection"
msgstr ""
-#: plinth/modules/networks/networks.py:311
+#: plinth/modules/networks/networks.py:298
msgid "Adding New Generic Connection"
msgstr ""
-#: plinth/modules/networks/networks.py:329
+#: plinth/modules/networks/networks.py:316
msgid "Adding New Ethernet Connection"
msgstr ""
-#: plinth/modules/networks/networks.py:347
+#: plinth/modules/networks/networks.py:334
msgid "Adding New PPPoE Connection"
msgstr ""
-#: plinth/modules/networks/networks.py:382
+#: plinth/modules/networks/networks.py:369
msgid "Adding New Wi-Fi Connection"
msgstr ""
-#: plinth/modules/networks/networks.py:397
+#: plinth/modules/networks/networks.py:384
#, python-brace-format
msgid "Connection {name} deleted."
msgstr ""
-#: plinth/modules/networks/networks.py:401
-#: plinth/modules/networks/networks.py:411
+#: plinth/modules/networks/networks.py:388
+#: plinth/modules/networks/networks.py:398
msgid "Failed to delete connection: Connection not found."
msgstr ""
-#: plinth/modules/networks/networks.py:416
-#: plinth/modules/networks/templates/connections_delete.html:26
+#: plinth/modules/networks/networks.py:403
+#: plinth/modules/networks/templates/connections_delete.html:11
msgid "Delete Connection"
msgstr ""
-#: plinth/modules/networks/networks.py:442
+#: plinth/modules/networks/networks.py:428
msgid "Router configuration type saved."
msgstr ""
-#: plinth/modules/networks/templates/connection_show.html:43
+#: plinth/modules/networks/networks.py:474
+msgid "Internet connection type saved."
+msgstr ""
+
+#: plinth/modules/networks/templates/connection_show.html:28
msgid "Edit connection"
msgstr ""
-#: plinth/modules/networks/templates/connection_show.html:43
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:83
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:84
-#: plinth/templates/base.html:167 plinth/templates/base.html:168
+#: plinth/modules/networks/templates/connection_show.html:28
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:68
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:69
+#: plinth/templates/base.html:152 plinth/templates/base.html:153
msgid "Edit"
msgstr ""
-#: plinth/modules/networks/templates/connection_show.html:50
-#: plinth/modules/networks/templates/connections_list.html:90
+#: plinth/modules/networks/templates/connection_show.html:35
+#: plinth/modules/networks/templates/connections_list.html:40
msgid "Deactivate"
msgstr ""
-#: plinth/modules/networks/templates/connection_show.html:57
-#: plinth/modules/networks/templates/connections_list.html:98
+#: plinth/modules/networks/templates/connection_show.html:42
+#: plinth/modules/networks/templates/connections_list.html:48
msgid "Activate"
msgstr ""
-#: plinth/modules/networks/templates/connection_show.html:63
+#: plinth/modules/networks/templates/connection_show.html:48
msgid "Delete connection"
msgstr ""
-#: plinth/modules/networks/templates/connection_show.html:66
-#: plinth/modules/networks/templates/connections_diagram.html:73
-#: plinth/modules/networks/templates/connections_diagram.html:76
-#: plinth/modules/networks/templates/connections_diagram.html:105
-#: plinth/modules/networks/templates/connections_diagram.html:127
+#: plinth/modules/networks/templates/connection_show.html:51
+#: plinth/modules/networks/templates/connections_diagram.html:58
+#: plinth/modules/networks/templates/connections_diagram.html:61
+#: plinth/modules/networks/templates/connections_diagram.html:90
+#: plinth/modules/networks/templates/connections_diagram.html:112
msgid "Connection"
msgstr ""
-#: plinth/modules/networks/templates/connection_show.html:71
+#: plinth/modules/networks/templates/connection_show.html:56
msgid "Primary connection"
msgstr ""
-#: plinth/modules/networks/templates/connection_show.html:73
-#: plinth/modules/networks/templates/connection_show.html:217
-#: plinth/modules/networks/templates/connection_show.html:256
+#: plinth/modules/networks/templates/connection_show.html:58
+#: plinth/modules/networks/templates/connection_show.html:202
+#: plinth/modules/networks/templates/connection_show.html:241
msgid "yes"
msgstr ""
-#: plinth/modules/networks/templates/connection_show.html:84
-#: plinth/modules/storage/templates/storage.html:40
+#: plinth/modules/networks/templates/connection_show.html:69
+#: plinth/modules/storage/templates/storage.html:25
msgid "Device"
msgstr ""
-#: plinth/modules/networks/templates/connection_show.html:88
+#: plinth/modules/networks/templates/connection_show.html:73
msgid "State"
msgstr ""
-#: plinth/modules/networks/templates/connection_show.html:93
+#: plinth/modules/networks/templates/connection_show.html:78
msgid "State reason"
msgstr ""
-#: plinth/modules/networks/templates/connection_show.html:102
+#: plinth/modules/networks/templates/connection_show.html:87
msgid "MAC address"
msgstr ""
-#: plinth/modules/networks/templates/connection_show.html:106
+#: plinth/modules/networks/templates/connection_show.html:91
msgid "Interface"
msgstr ""
-#: plinth/modules/networks/templates/connection_show.html:110
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:33
-#: plinth/modules/snapshot/templates/snapshot_manage.html:45
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:41
+#: plinth/modules/networks/templates/connection_show.html:95
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:18
+#: plinth/modules/snapshot/templates/snapshot_manage.html:30
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:26
msgid "Description"
msgstr ""
-#: plinth/modules/networks/templates/connection_show.html:116
+#: plinth/modules/networks/templates/connection_show.html:101
msgid "Physical Link"
msgstr ""
-#: plinth/modules/networks/templates/connection_show.html:121
+#: plinth/modules/networks/templates/connection_show.html:106
msgid "Link state"
msgstr ""
-#: plinth/modules/networks/templates/connection_show.html:125
+#: plinth/modules/networks/templates/connection_show.html:110
msgid "cable is connected"
msgstr ""
-#: plinth/modules/networks/templates/connection_show.html:128
+#: plinth/modules/networks/templates/connection_show.html:113
msgid "please check cable"
msgstr ""
-#: plinth/modules/networks/templates/connection_show.html:133
-#: plinth/modules/networks/templates/connection_show.html:149
+#: plinth/modules/networks/templates/connection_show.html:118
+#: plinth/modules/networks/templates/connection_show.html:134
msgid "Speed"
msgstr ""
-#: plinth/modules/networks/templates/connection_show.html:135
+#: plinth/modules/networks/templates/connection_show.html:120
#, python-format
msgid "%(ethernet_speed)s Mbit/s"
msgstr ""
-#: plinth/modules/networks/templates/connection_show.html:151
+#: plinth/modules/networks/templates/connection_show.html:136
#, python-format
msgid "%(wireless_bitrate)s Mbit/s"
msgstr ""
-#: plinth/modules/networks/templates/connection_show.html:163
+#: plinth/modules/networks/templates/connection_show.html:148
msgid "Signal strength"
msgstr ""
-#: plinth/modules/networks/templates/connection_show.html:181
+#: plinth/modules/networks/templates/connection_show.html:166
msgid "IPv4"
msgstr ""
-#: plinth/modules/networks/templates/connection_show.html:186
-#: plinth/modules/networks/templates/connection_show.html:227
-#: plinth/modules/shadowsocks/forms.py:64
+#: plinth/modules/networks/templates/connection_show.html:171
+#: plinth/modules/networks/templates/connection_show.html:212
+#: plinth/modules/shadowsocks/forms.py:49
msgid "Method"
msgstr ""
-#: plinth/modules/networks/templates/connection_show.html:193
-#: plinth/modules/networks/templates/connection_show.html:234
+#: plinth/modules/networks/templates/connection_show.html:178
+#: plinth/modules/networks/templates/connection_show.html:219
msgid "IP address"
msgstr ""
-#: plinth/modules/networks/templates/connection_show.html:209
-#: plinth/modules/networks/templates/connection_show.html:248
+#: plinth/modules/networks/templates/connection_show.html:194
+#: plinth/modules/networks/templates/connection_show.html:233
msgid "DNS server"
msgstr ""
-#: plinth/modules/networks/templates/connection_show.html:216
-#: plinth/modules/networks/templates/connection_show.html:255
-#: plinth/modules/storage/forms.py:156
+#: plinth/modules/networks/templates/connection_show.html:201
+#: plinth/modules/networks/templates/connection_show.html:240
+#: plinth/modules/storage/forms.py:141
msgid "Default"
msgstr ""
-#: plinth/modules/networks/templates/connection_show.html:222
+#: plinth/modules/networks/templates/connection_show.html:207
msgid "IPv6"
msgstr ""
-#: plinth/modules/networks/templates/connection_show.html:263
+#: plinth/modules/networks/templates/connection_show.html:248
msgid "This connection is not active."
msgstr ""
-#: plinth/modules/networks/templates/connection_show.html:266
-#: plinth/modules/security/__init__.py:38 plinth/modules/security/views.py:47
+#: plinth/modules/networks/templates/connection_show.html:251
+#: plinth/modules/security/__init__.py:45
msgid "Security"
msgstr ""
-#: plinth/modules/networks/templates/connection_show.html:271
-#: plinth/modules/networks/templates/connection_show.html:291
-#: plinth/modules/networks/templates/connection_show.html:310
+#: plinth/modules/networks/templates/connection_show.html:256
+#: plinth/modules/networks/templates/connection_show.html:276
+#: plinth/modules/networks/templates/connection_show.html:295
msgid "Firewall zone"
msgstr ""
-#: plinth/modules/networks/templates/connection_show.html:280
+#: plinth/modules/networks/templates/connection_show.html:265
msgid ""
"This interface should be connected to a local network/machine. If you "
"connect this interface to a public network, services meant to be available "
"only internally will become available externally. This is a security risk."
msgstr ""
-#: plinth/modules/networks/templates/connection_show.html:300
+#: plinth/modules/networks/templates/connection_show.html:285
msgid ""
"This interface should receive your Internet connection. If you connect it to "
"a local network/machine, many services meant to available only internally "
"will not be available."
msgstr ""
-#: plinth/modules/networks/templates/connection_show.html:319
+#: plinth/modules/networks/templates/connection_show.html:304
#, python-format
msgid ""
"This interface is not maintained by %(box_name)s. Its security status is "
@@ -3342,109 +3409,132 @@ msgid ""
"connection and re-configure it."
msgstr ""
-#: plinth/modules/networks/templates/connections_create.html:34
+#: plinth/modules/networks/templates/connections_create.html:19
msgid "Create Connection"
msgstr ""
-#: plinth/modules/networks/templates/connections_delete.html:29
+#: plinth/modules/networks/templates/connections_delete.html:14
#, python-format
msgid "Delete connection %(name)s permanently?"
msgstr ""
-#: plinth/modules/networks/templates/connections_diagram.html:65
+#: plinth/modules/networks/templates/connections_diagram.html:50
msgid "Internet"
msgstr ""
-#: plinth/modules/networks/templates/connections_diagram.html:70
-#: plinth/modules/networks/templates/connections_diagram.html:102
+#: plinth/modules/networks/templates/connections_diagram.html:55
+#: plinth/modules/networks/templates/connections_diagram.html:87
msgid "Spacing"
msgstr ""
-#: plinth/modules/networks/templates/connections_diagram.html:83
-#: plinth/modules/networks/templates/connections_diagram.html:113
-#: plinth/network.py:40
+#: plinth/modules/networks/templates/connections_diagram.html:68
+#: plinth/modules/networks/templates/connections_diagram.html:98
+#: plinth/network.py:25
msgid "Ethernet"
msgstr ""
-#: plinth/modules/networks/templates/connections_diagram.html:86
-#: plinth/modules/networks/templates/connections_diagram.html:116
-#: plinth/network.py:41
+#: plinth/modules/networks/templates/connections_diagram.html:71
+#: plinth/modules/networks/templates/connections_diagram.html:101
+#: plinth/network.py:26
msgid "Wi-Fi"
msgstr ""
-#: plinth/modules/networks/templates/connections_diagram.html:89
+#: plinth/modules/networks/templates/connections_diagram.html:74
#, python-format
msgid "Show connection %(connection.name)s"
msgstr ""
-#: plinth/modules/networks/templates/connections_diagram.html:119
+#: plinth/modules/networks/templates/connections_diagram.html:104
#, python-format
msgid "Show connection %(name)s"
msgstr ""
-#: plinth/modules/networks/templates/connections_diagram.html:131
+#: plinth/modules/networks/templates/connections_diagram.html:116
msgid "Computer"
msgstr ""
-#: plinth/modules/networks/templates/connections_list.html:58
+#: plinth/modules/networks/templates/connections_list.html:8
msgid "Connections"
msgstr ""
-#: plinth/modules/networks/templates/connections_list.html:79
+#: plinth/modules/networks/templates/connections_list.html:29
#, python-format
msgid "Delete connection %(name)s"
msgstr ""
-#: plinth/modules/networks/templates/connections_list.html:104
+#: plinth/modules/networks/templates/connections_list.html:54
msgid "Active"
msgstr ""
-#: plinth/modules/networks/templates/connections_list.html:107
+#: plinth/modules/networks/templates/connections_list.html:57
msgid "Inactive"
msgstr ""
-#: plinth/modules/networks/templates/connections_list.html:124
-#, python-format
-msgid "%(box_name)s Internet Connectivity"
-msgstr ""
-
-#: plinth/modules/networks/templates/connections_list.html:129
-#, python-format
-msgid ""
-"The following best describes how your %(box_name)s is connected in your "
-"network. This information is used only to suggest necessary configuration "
-"actions."
-msgstr ""
-
-#: plinth/modules/networks/templates/connections_list.html:137
-#, python-format
-msgid ""
-"Your %(box_name)s gets its internet from your Router via WiFi or Ethernet "
-"cable. This is a typical home setup."
-msgstr ""
-
-#: plinth/modules/networks/templates/connections_list.html:145
-#: plinth/modules/networks/templates/connections_list.html:147
-msgid "Update..."
-msgstr ""
-
-#: plinth/modules/networks/templates/connections_type_select.html:34
+#: plinth/modules/networks/templates/connections_type_select.html:19
msgid "Create..."
msgstr ""
-#: plinth/modules/networks/templates/router_configuration_content.html:25
+#: plinth/modules/networks/templates/internet_connectivity_content.html:10
+msgid "What Type Of Internet Connection Do You Have?"
+msgstr ""
+
+#: plinth/modules/networks/templates/internet_connectivity_content.html:16
+msgid ""
+"Select an option that best describes the type of Internet connection. This "
+"information is used only to guide you with further setup."
+msgstr ""
+
+#: plinth/modules/networks/templates/internet_connectivity_firstboot.html:18
+#: plinth/modules/networks/templates/router_configuration_firstboot.html:18
+msgid "Skip this step"
+msgstr ""
+
+#: plinth/modules/networks/templates/internet_connectivity_firstboot.html:19
+#: plinth/modules/networks/templates/router_configuration_firstboot.html:19
+msgid "Next"
+msgstr ""
+
+#: plinth/modules/networks/templates/internet_connectivity_main.html:9
+msgid "Your Internet Connection Type"
+msgstr ""
+
+#: plinth/modules/networks/templates/internet_connectivity_main.html:14
+msgid ""
+"The following best describes the type of Internet connection provided by "
+"your ISP. This information is only used to suggest you necessary "
+"configuration actions."
+msgstr ""
+
+#: plinth/modules/networks/templates/internet_connectivity_main.html:23
+msgid "My ISP provides a public IP address that does not change over time."
+msgstr ""
+
+#: plinth/modules/networks/templates/internet_connectivity_main.html:27
+msgid "My ISP provides a public IP address that may change over time."
+msgstr ""
+
+#: plinth/modules/networks/templates/internet_connectivity_main.html:31
+msgid "My ISP does not provide a public IP address."
+msgstr ""
+
+#: plinth/modules/networks/templates/internet_connectivity_main.html:37
+#: plinth/modules/networks/templates/router_configuration_main.html:29
+msgid "Update..."
+msgstr ""
+
+#: plinth/modules/networks/templates/router_configuration_content.html:10
#, python-format
msgid "Setup %(box_name)s Behind a Router"
msgstr ""
-#: plinth/modules/networks/templates/router_configuration_content.html:31
+#: plinth/modules/networks/templates/router_configuration_content.html:16
#, python-format
msgid ""
"Your %(box_name)s gets its internet connection from your router via Wi-Fi or "
"Ethernet cable. This is a typical home setup."
msgstr ""
-#: plinth/modules/networks/templates/router_configuration_content.html:38
+#: plinth/modules/networks/templates/router_configuration_content.html:23
#, python-format
msgid ""
"With this setup, any device on the internet trying to reach your "
@@ -3453,24 +3543,24 @@ msgid ""
"the services."
msgstr ""
-#: plinth/modules/networks/templates/router_configuration_content.html:47
+#: plinth/modules/networks/templates/router_configuration_content.html:32
msgid ""
"If you don't have control over your router, choose not to configure it. To "
-"see options, to overcome this limitation, choose 'no public address' option "
+"see options to overcome this limitation, choose 'no public address' option "
"in Internet connection type selection."
msgstr ""
-#: plinth/modules/networks/templates/router_configuration_content.html:54
+#: plinth/modules/networks/templates/router_configuration_content.html:39
msgid "Choose How You Wish to Configure Your Router"
msgstr ""
-#: plinth/modules/networks/templates/router_configuration_content.html:57
+#: plinth/modules/networks/templates/router_configuration_content.html:42
msgid ""
"You will need to login to your router's administration console provided by "
"the router. This may look like one of the following:"
msgstr ""
-#: plinth/modules/networks/templates/router_configuration_content.html:69
+#: plinth/modules/networks/templates/router_configuration_content.html:54
msgid ""
"The username and password is configured by you when you first setup the "
"router. For many routers, this information is printed at the back of the "
@@ -3480,24 +3570,27 @@ msgid ""
"full instructions on how to perform this task."
msgstr ""
-#: plinth/modules/networks/templates/router_configuration_firstboot.html:33
-msgid "skip this step"
+#: plinth/modules/networks/templates/router_configuration_main.html:9
+#, python-format
+msgid "%(box_name)s Internet Connectivity"
msgstr ""
-#: plinth/modules/networks/templates/router_configuration_firstboot.html:35
-msgid "Next"
+#: plinth/modules/networks/templates/router_configuration_main.html:15
+#, python-format
+msgid ""
+"The following best describes how your %(box_name)s is connected in your "
+"network. This information is used only to suggest necessary configuration "
+"actions."
msgstr ""
-#: plinth/modules/openvpn/__init__.py:39 plinth/modules/openvpn/manifest.py:33
-msgid "OpenVPN"
+#: plinth/modules/networks/templates/router_configuration_main.html:23
+#, python-format
+msgid ""
+"Your %(box_name)s gets its Internet from your Router via Wi-Fi or Ethernet "
+"cable. This is a typical home setup."
msgstr ""
-#: plinth/modules/openvpn/__init__.py:43
-#: plinth/modules/wireguard/__init__.py:40
-msgid "Virtual Private Network"
-msgstr ""
-
-#: plinth/modules/openvpn/__init__.py:47
+#: plinth/modules/openvpn/__init__.py:26
#, python-brace-format
msgid ""
"Virtual Private Network (VPN) is a technique for securely connecting two "
@@ -3508,21 +3601,30 @@ msgid ""
"security and anonymity."
msgstr ""
-#: plinth/modules/openvpn/__init__.py:79
+#: plinth/modules/openvpn/__init__.py:49 plinth/modules/openvpn/manifest.py:18
+msgid "OpenVPN"
+msgstr ""
+
+#: plinth/modules/openvpn/__init__.py:50
+#: plinth/modules/wireguard/__init__.py:53
+msgid "Virtual Private Network"
+msgstr ""
+
+#: plinth/modules/openvpn/__init__.py:61
#, python-brace-format
msgid ""
"Download Profile"
msgstr ""
-#: plinth/modules/openvpn/forms.py:27
+#: plinth/modules/openvpn/forms.py:12
msgid "Enable OpenVPN server"
msgstr ""
-#: plinth/modules/openvpn/manifest.py:63
-msgid "TunnelBlick"
+#: plinth/modules/openvpn/manifest.py:48
+msgid "Tunnelblick"
msgstr ""
-#: plinth/modules/openvpn/templates/openvpn.html:42
+#: plinth/modules/openvpn/templates/openvpn.html:27
#, python-format
msgid ""
"OpenVPN has not yet been setup. Performing a secure setup takes a very long "
@@ -3530,15 +3632,15 @@ msgid ""
"If the setup is interrupted, you may start it again."
msgstr ""
-#: plinth/modules/openvpn/templates/openvpn.html:55
+#: plinth/modules/openvpn/templates/openvpn.html:40
msgid "Start setup"
msgstr ""
-#: plinth/modules/openvpn/templates/openvpn.html:64
+#: plinth/modules/openvpn/templates/openvpn.html:49
msgid "OpenVPN setup is running"
msgstr ""
-#: plinth/modules/openvpn/templates/openvpn.html:68
+#: plinth/modules/openvpn/templates/openvpn.html:53
#, python-format
msgid ""
"To perform a secure setup, this process takes a very long time. Depending "
@@ -3546,11 +3648,11 @@ msgid ""
"interrupted, you may start it again."
msgstr ""
-#: plinth/modules/openvpn/templates/openvpn.html:87
+#: plinth/modules/openvpn/templates/openvpn.html:72
msgid "Profile"
msgstr ""
-#: plinth/modules/openvpn/templates/openvpn.html:90
+#: plinth/modules/openvpn/templates/openvpn.html:75
#, python-format
msgid ""
"To connect to %(box_name)s's VPN, you need to download a profile and feed it "
@@ -3559,32 +3661,24 @@ msgid ""
"clients and instructions on how to configure them."
msgstr ""
-#: plinth/modules/openvpn/templates/openvpn.html:100
+#: plinth/modules/openvpn/templates/openvpn.html:85
#, python-format
msgid "Profile is specific to each user of %(box_name)s. Keep it a secret."
msgstr ""
-#: plinth/modules/openvpn/templates/openvpn.html:111
+#: plinth/modules/openvpn/templates/openvpn.html:96
msgid "Download my profile"
msgstr ""
-#: plinth/modules/openvpn/views.py:133
+#: plinth/modules/openvpn/views.py:114
msgid "Setup completed."
msgstr ""
-#: plinth/modules/openvpn/views.py:135
+#: plinth/modules/openvpn/views.py:116
msgid "Setup failed."
msgstr ""
-#: plinth/modules/pagekite/__init__.py:39
-msgid "PageKite"
-msgstr ""
-
-#: plinth/modules/pagekite/__init__.py:41
-msgid "Public Visibility"
-msgstr ""
-
-#: plinth/modules/pagekite/__init__.py:45
+#: plinth/modules/pagekite/__init__.py:26
#, python-brace-format
msgid ""
"PageKite is a system for exposing {box_name} services when you don't have a "
@@ -3593,33 +3687,33 @@ msgid ""
"following situations:"
msgstr ""
-#: plinth/modules/pagekite/__init__.py:50
+#: plinth/modules/pagekite/__init__.py:31
#, python-brace-format
msgid "{box_name} is behind a restricted firewall."
msgstr ""
-#: plinth/modules/pagekite/__init__.py:53
+#: plinth/modules/pagekite/__init__.py:34
#, python-brace-format
msgid "{box_name} is connected to a (wireless) router which you don't control."
msgstr ""
-#: plinth/modules/pagekite/__init__.py:55
+#: plinth/modules/pagekite/__init__.py:36
msgid ""
"Your ISP does not provide you an external IP address and instead provides "
"Internet connection through NAT."
msgstr ""
-#: plinth/modules/pagekite/__init__.py:57
+#: plinth/modules/pagekite/__init__.py:38
msgid ""
"Your ISP does not provide you a static IP address and your IP address "
"changes every time you connect to Internet."
msgstr ""
-#: plinth/modules/pagekite/__init__.py:59
+#: plinth/modules/pagekite/__init__.py:40
msgid "Your ISP limits incoming connections."
msgstr ""
-#: plinth/modules/pagekite/__init__.py:61
+#: plinth/modules/pagekite/__init__.py:42
#, python-brace-format
msgid ""
"PageKite works around NAT, firewalls and IP address limitations by using a "
@@ -3628,138 +3722,146 @@ msgid ""
"the future it might be possible to use your buddy's {box_name} for this."
msgstr ""
-#: plinth/modules/pagekite/__init__.py:87
+#: plinth/modules/pagekite/__init__.py:62
+msgid "PageKite"
+msgstr ""
+
+#: plinth/modules/pagekite/__init__.py:64
+msgid "Public Visibility"
+msgstr ""
+
+#: plinth/modules/pagekite/__init__.py:74
msgid "PageKite Domain"
msgstr ""
-#: plinth/modules/pagekite/forms.py:66
+#: plinth/modules/pagekite/forms.py:51
msgid "Server domain"
msgstr ""
-#: plinth/modules/pagekite/forms.py:68
+#: plinth/modules/pagekite/forms.py:53
msgid ""
"Select your pagekite server. Set \"pagekite.net\" to use the default "
"pagekite.net server."
msgstr ""
-#: plinth/modules/pagekite/forms.py:71 plinth/modules/shadowsocks/forms.py:55
+#: plinth/modules/pagekite/forms.py:56 plinth/modules/shadowsocks/forms.py:40
msgid "Server port"
msgstr ""
-#: plinth/modules/pagekite/forms.py:72
+#: plinth/modules/pagekite/forms.py:57
msgid "Port of your pagekite server (default: 80)"
msgstr ""
-#: plinth/modules/pagekite/forms.py:74
+#: plinth/modules/pagekite/forms.py:59
msgid "Kite name"
msgstr ""
-#: plinth/modules/pagekite/forms.py:75
+#: plinth/modules/pagekite/forms.py:60
msgid "Example: mybox.pagekite.me"
msgstr ""
-#: plinth/modules/pagekite/forms.py:77
+#: plinth/modules/pagekite/forms.py:62
msgid "Invalid kite name"
msgstr ""
-#: plinth/modules/pagekite/forms.py:81
+#: plinth/modules/pagekite/forms.py:66
msgid "Kite secret"
msgstr ""
-#: plinth/modules/pagekite/forms.py:82
+#: plinth/modules/pagekite/forms.py:67
msgid ""
"A secret associated with the kite or the default secret for your account if "
"no secret is set on the kite."
msgstr ""
-#: plinth/modules/pagekite/forms.py:98
+#: plinth/modules/pagekite/forms.py:83
msgid "Kite details set"
msgstr ""
-#: plinth/modules/pagekite/forms.py:105
+#: plinth/modules/pagekite/forms.py:90
msgid "Pagekite server set"
msgstr ""
-#: plinth/modules/pagekite/forms.py:129
+#: plinth/modules/pagekite/forms.py:114
msgid "PageKite enabled"
msgstr ""
-#: plinth/modules/pagekite/forms.py:132
+#: plinth/modules/pagekite/forms.py:117
msgid "PageKite disabled"
msgstr ""
-#: plinth/modules/pagekite/forms.py:148
+#: plinth/modules/pagekite/forms.py:133
msgid "protocol"
msgstr ""
-#: plinth/modules/pagekite/forms.py:151
+#: plinth/modules/pagekite/forms.py:136
msgid "external (frontend) port"
msgstr ""
-#: plinth/modules/pagekite/forms.py:154
+#: plinth/modules/pagekite/forms.py:139
msgid "internal (freedombox) port"
msgstr ""
-#: plinth/modules/pagekite/forms.py:155
+#: plinth/modules/pagekite/forms.py:140
msgid "Enable Subdomains"
msgstr ""
-#: plinth/modules/pagekite/forms.py:189
+#: plinth/modules/pagekite/forms.py:174
msgid "Deleted custom service"
msgstr ""
-#: plinth/modules/pagekite/forms.py:222
+#: plinth/modules/pagekite/forms.py:207
msgid ""
"This service is available as a standard service. Please use the \"Standard "
"Services\" page to enable it."
msgstr ""
-#: plinth/modules/pagekite/forms.py:231
+#: plinth/modules/pagekite/forms.py:216
msgid "Added custom service"
msgstr ""
-#: plinth/modules/pagekite/forms.py:234
+#: plinth/modules/pagekite/forms.py:219
msgid "This service already exists"
msgstr ""
-#: plinth/modules/pagekite/templates/pagekite_configure.html:47
+#: plinth/modules/pagekite/templates/pagekite_configure.html:32
msgid "Custom Services"
msgstr ""
-#: plinth/modules/pagekite/templates/pagekite_configure.html:50
-#: plinth/modules/pagekite/templates/pagekite_configure.html:52
+#: plinth/modules/pagekite/templates/pagekite_configure.html:35
+#: plinth/modules/pagekite/templates/pagekite_configure.html:37
msgid "Add Custom Service"
msgstr ""
-#: plinth/modules/pagekite/templates/pagekite_configure.html:57
+#: plinth/modules/pagekite/templates/pagekite_configure.html:42
msgid "Existing custom services"
msgstr ""
-#: plinth/modules/pagekite/templates/pagekite_configure.html:71
+#: plinth/modules/pagekite/templates/pagekite_configure.html:56
#, python-format
msgid "connected to %(backend_host)s:%(backend_port)s"
msgstr ""
-#: plinth/modules/pagekite/templates/pagekite_configure.html:83
+#: plinth/modules/pagekite/templates/pagekite_configure.html:68
msgid "Delete this service"
msgstr ""
-#: plinth/modules/pagekite/templates/pagekite_custom_services.html:30
+#: plinth/modules/pagekite/templates/pagekite_custom_services.html:15
msgid "Add custom PageKite service"
msgstr ""
-#: plinth/modules/pagekite/templates/pagekite_custom_services.html:32
+#: plinth/modules/pagekite/templates/pagekite_custom_services.html:17
msgid ""
"Warning:
Your PageKite frontend server may not support all the "
"protocol/port combinations that you are able to define here. For example, "
"HTTPS on ports other than 443 is known to cause problems."
msgstr ""
-#: plinth/modules/pagekite/templates/pagekite_firstboot.html:26
+#: plinth/modules/pagekite/templates/pagekite_firstboot.html:11
msgid "Setup a freedombox.me subdomain with your voucher"
msgstr ""
-#: plinth/modules/pagekite/templates/pagekite_firstboot.html:30
+#: plinth/modules/pagekite/templates/pagekite_firstboot.html:15
#, python-format
msgid ""
"Skip this step if you do not have a "
@@ -3767,134 +3869,125 @@ msgid ""
"credentials."
msgstr ""
-#: plinth/modules/pagekite/templates/pagekite_firstboot.html:38
+#: plinth/modules/pagekite/templates/pagekite_firstboot.html:23
msgid ""
"You can use an already redeemed voucher but it will only work with the "
"initially registered subdomain."
msgstr ""
-#: plinth/modules/pagekite/templates/pagekite_firstboot.html:52
+#: plinth/modules/pagekite/templates/pagekite_firstboot.html:37
msgid "Register"
msgstr ""
-#: plinth/modules/pagekite/templates/pagekite_firstboot.html:56
+#: plinth/modules/pagekite/templates/pagekite_firstboot.html:41
msgid "Skip Registration"
msgstr ""
-#: plinth/modules/pagekite/templates/pagekite_standard_services.html:40
+#: plinth/modules/pagekite/templates/pagekite_standard_services.html:25
msgid "Warning:
"
msgstr ""
-#: plinth/modules/pagekite/templates/pagekite_standard_services.html:43
+#: plinth/modules/pagekite/templates/pagekite_standard_services.html:28
msgid ""
"Published services are accessible and attackable from the evil Internet."
msgstr ""
-#: plinth/modules/pagekite/templates/pagekite_standard_services.html:58
+#: plinth/modules/pagekite/templates/pagekite_standard_services.html:43
msgid "Save Services"
msgstr ""
-#: plinth/modules/pagekite/utils.py:57
+#: plinth/modules/pagekite/utils.py:42
msgid "Web Server (HTTP)"
msgstr ""
-#: plinth/modules/pagekite/utils.py:59
+#: plinth/modules/pagekite/utils.py:44
#, python-brace-format
msgid "Site will be available at http://{0}"
msgstr ""
-#: plinth/modules/pagekite/utils.py:71
+#: plinth/modules/pagekite/utils.py:56
msgid "Web Server (HTTPS)"
msgstr ""
-#: plinth/modules/pagekite/utils.py:73
+#: plinth/modules/pagekite/utils.py:58
#, python-brace-format
msgid "Site will be available at https://{0}"
msgstr ""
-#: plinth/modules/pagekite/utils.py:85
+#: plinth/modules/pagekite/utils.py:70
msgid "Secure Shell (SSH)"
msgstr ""
-#: plinth/modules/pagekite/utils.py:87
+#: plinth/modules/pagekite/utils.py:72
msgid ""
"See SSH client setup instructions"
msgstr ""
-#: plinth/modules/power/__init__.py:29 plinth/modules/power/views.py:55
-#: plinth/modules/power/views.py:74
-msgid "Power"
-msgstr ""
-
-#: plinth/modules/power/__init__.py:31
+#: plinth/modules/power/__init__.py:16
msgid "Restart or shut down the system."
msgstr ""
-#: plinth/modules/power/templates/power.html:28
+#: plinth/modules/power/__init__.py:31
+msgid "Power"
+msgstr ""
+
+#: plinth/modules/power/templates/power.html:13
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
+#: plinth/modules/power/templates/power.html:22
msgid "Restart »"
msgstr ""
-#: plinth/modules/power/templates/power.html:40
+#: plinth/modules/power/templates/power.html:25
msgid "Shut Down »"
msgstr ""
-#: plinth/modules/power/templates/power_restart.html:32
+#: plinth/modules/power/templates/power_restart.html:17
msgid ""
"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."
msgstr ""
-#: plinth/modules/power/templates/power_restart.html:49
+#: plinth/modules/power/templates/power_restart.html:34
msgid ""
"Currently an installation or upgrade is running. Consider waiting until it's "
"finished before restarting."
msgstr ""
-#: plinth/modules/power/templates/power_restart.html:63
-#: plinth/modules/power/templates/power_restart.html:66
+#: plinth/modules/power/templates/power_restart.html:48
+#: plinth/modules/power/templates/power_restart.html:51
msgid "Restart Now"
msgstr ""
-#: plinth/modules/power/templates/power_shutdown.html:32
+#: plinth/modules/power/templates/power_shutdown.html:17
msgid ""
"Are you sure you want to shut down? You will not be able to access this web "
"interface after shut down."
msgstr ""
-#: plinth/modules/power/templates/power_shutdown.html:48
+#: plinth/modules/power/templates/power_shutdown.html:33
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:62
-#: plinth/modules/power/templates/power_shutdown.html:65
+#: plinth/modules/power/templates/power_shutdown.html:47
+#: plinth/modules/power/templates/power_shutdown.html:50
msgid "Shut Down Now"
msgstr ""
-#: plinth/modules/privoxy/__init__.py:43
-msgid "Privoxy"
-msgstr ""
-
-#: plinth/modules/privoxy/__init__.py:47
-msgid "Web Proxy"
-msgstr ""
-
-#: plinth/modules/privoxy/__init__.py:50
+#: plinth/modules/privoxy/__init__.py:29
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:55
+#: plinth/modules/privoxy/__init__.py:34
#, python-brace-format
msgid ""
"You can use Privoxy by modifying your browser proxy settings to your "
@@ -3904,20 +3997,20 @@ msgid ""
"\">http://p.p."
msgstr ""
-#: plinth/modules/privoxy/__init__.py:141
+#: plinth/modules/privoxy/__init__.py:57
+msgid "Privoxy"
+msgstr ""
+
+#: plinth/modules/privoxy/__init__.py:58
+msgid "Web Proxy"
+msgstr ""
+
+#: plinth/modules/privoxy/__init__.py:121
#, python-brace-format
msgid "Access {url} with proxy {proxy} on tcp{kind}"
msgstr ""
-#: plinth/modules/quassel/__init__.py:45 plinth/modules/quassel/manifest.py:25
-msgid "Quassel"
-msgstr ""
-
-#: plinth/modules/quassel/__init__.py:49
-msgid "IRC Client"
-msgstr ""
-
-#: plinth/modules/quassel/__init__.py:53
+#: plinth/modules/quassel/__init__.py:32
#, python-brace-format
msgid ""
"Quassel is an IRC application that is split into two parts, a \"core\" and a "
@@ -3928,7 +4021,7 @@ msgid ""
"connect and disconnect from it."
msgstr ""
-#: plinth/modules/quassel/__init__.py:60
+#: plinth/modules/quassel/__init__.py:39
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."
msgstr ""
-#: plinth/modules/quassel/forms.py:38
+#: plinth/modules/quassel/__init__.py:62 plinth/modules/quassel/manifest.py:10
+msgid "Quassel"
+msgstr ""
+
+#: plinth/modules/quassel/__init__.py:63
+msgid "IRC Client"
+msgstr ""
+
+#: plinth/modules/quassel/forms.py:23
msgid "TLS domain"
msgstr ""
-#: plinth/modules/quassel/forms.py:40
+#: plinth/modules/quassel/forms.py:25
msgid ""
"Select a domain to use TLS with. If the list is empty, please configure at "
"least one domain with certificates."
msgstr ""
-#: plinth/modules/quassel/manifest.py:49
+#: plinth/modules/quassel/manifest.py:34
msgid "Quasseldroid"
msgstr ""
-#: plinth/modules/radicale/__init__.py:45
-#: plinth/modules/radicale/manifest.py:90
-msgid "Radicale"
-msgstr ""
-
-#: plinth/modules/radicale/__init__.py:49
-msgid "Calendar and Addressbook"
-msgstr ""
-
-#: plinth/modules/radicale/__init__.py:53
+#: plinth/modules/radicale/__init__.py:32
#, python-brace-format
msgid ""
"Radicale is a CalDAV and CardDAV server. It allows synchronization and "
@@ -3968,61 +4060,70 @@ msgid ""
"can be accessed by any user with a {box_name} login."
msgstr ""
-#: plinth/modules/radicale/__init__.py:58
+#: plinth/modules/radicale/__init__.py:37
msgid ""
"Radicale provides a basic web interface, which only supports creating new "
"calendars and addressbooks. It does not support adding events or contacts, "
"which must be done using a separate client."
msgstr ""
-#: plinth/modules/radicale/forms.py:30
+#: plinth/modules/radicale/__init__.py:62
+#: plinth/modules/radicale/manifest.py:75
+msgid "Radicale"
+msgstr ""
+
+#: plinth/modules/radicale/__init__.py:63
+msgid "Calendar and Addressbook"
+msgstr ""
+
+#: plinth/modules/radicale/forms.py:15
msgid "Only the owner of a calendar/addressbook can view or make changes."
msgstr ""
-#: plinth/modules/radicale/forms.py:34
+#: plinth/modules/radicale/forms.py:19
#, python-brace-format
msgid ""
"Any user with a {box_name} login can view any calendar/addressbook, but only "
"the owner can make changes."
msgstr ""
-#: plinth/modules/radicale/forms.py:39
+#: plinth/modules/radicale/forms.py:24
#, python-brace-format
msgid ""
"Any user with a {box_name} login can view or make changes to any calendar/"
"addressbook."
msgstr ""
-#: plinth/modules/radicale/manifest.py:25
+#: plinth/modules/radicale/manifest.py:10
msgid "DAVx5"
msgstr ""
-#: plinth/modules/radicale/manifest.py:27
+#: plinth/modules/radicale/manifest.py:12
msgid ""
"Enter the URL of the Radicale server (e.g. https://) and your user name. DAVx5 will show all existing calendars and "
"address books and you can create new."
msgstr ""
-#: plinth/modules/radicale/manifest.py:44
+#: plinth/modules/radicale/manifest.py:29
msgid "GNOME Calendar"
msgstr ""
-#: plinth/modules/radicale/manifest.py:52
+#: plinth/modules/radicale/manifest.py:37
msgid "Mozilla Thunderbird"
msgstr ""
-#: plinth/modules/radicale/manifest.py:72
+#: plinth/modules/radicale/manifest.py:57
msgid "Evolution"
msgstr ""
-#: plinth/modules/radicale/manifest.py:74
+#: plinth/modules/radicale/manifest.py:59
msgid ""
"Evolution is a personal information management application that provides "
"integrated mail, calendaring and address book functionality."
msgstr ""
-#: plinth/modules/radicale/manifest.py:78
+#: plinth/modules/radicale/manifest.py:63
msgid ""
"In Evolution add a new calendar and address book respectively with WebDAV. "
"Enter the URL of the Radicale server (e.g. https:///roundcube. Provide the username and password of the email account "
@@ -4061,7 +4153,7 @@ msgid ""
"code>."
msgstr ""
-#: plinth/modules/roundcube/__init__.py:53
+#: plinth/modules/roundcube/__init__.py:32
msgid ""
"For Gmail, username will be your Gmail address, password will be your Google "
"account password and server will be imaps://imap.gmail.com. "
@@ -4071,17 +4163,22 @@ msgid ""
"a>)."
msgstr ""
-#: plinth/modules/samba/__init__.py:46
-msgid "Samba"
+#: plinth/modules/roundcube/__init__.py:54
+#: plinth/modules/roundcube/manifest.py:9
+msgid "Roundcube"
msgstr ""
-#: plinth/modules/samba/__init__.py:53
+#: plinth/modules/roundcube/__init__.py:55
+msgid "Email Client"
+msgstr ""
+
+#: plinth/modules/samba/__init__.py:32
msgid ""
"Samba allows to share files and folders between FreedomBox and other "
"computers in your local network."
msgstr ""
-#: plinth/modules/samba/__init__.py:56
+#: plinth/modules/samba/__init__.py:35
#, python-brace-format
msgid ""
"After installation, you can choose which disks to use for sharing. Enabled "
@@ -4090,51 +4187,55 @@ msgid ""
"There are three types of shares you can choose from: "
msgstr ""
-#: plinth/modules/samba/__init__.py:61
+#: plinth/modules/samba/__init__.py:40
msgid "Open share - accessible to everyone in your local network."
msgstr ""
-#: plinth/modules/samba/__init__.py:62
+#: plinth/modules/samba/__init__.py:41
msgid ""
"Group share - accessible only to FreedomBox users who are in the freedombox-"
"share group."
msgstr ""
-#: plinth/modules/samba/__init__.py:64
+#: plinth/modules/samba/__init__.py:43
msgid ""
"Home share - every user in the freedombox-share group can have their own "
"private space."
msgstr ""
-#: plinth/modules/samba/__init__.py:68
+#: plinth/modules/samba/__init__.py:47
msgid "Access to the private shares"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:39
-#: plinth/modules/samba/templates/samba.html:50
+#: plinth/modules/samba/__init__.py:61
+msgid "Samba"
+msgstr ""
+
+#: plinth/modules/samba/templates/samba.html:24
+#: plinth/modules/samba/templates/samba.html:35
msgid "Shares"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:41
+#: plinth/modules/samba/templates/samba.html:26
msgid ""
"Note: Only specially created directories will be shared on selected disks, "
"not the whole disk."
msgstr ""
-#: plinth/modules/samba/templates/samba.html:49
+#: plinth/modules/samba/templates/samba.html:34
msgid "Disk Name"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:51
-#: plinth/modules/storage/templates/storage.html:44
+#: plinth/modules/samba/templates/samba.html:36
+#: plinth/modules/storage/templates/storage.html:29
msgid "Used"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:72
+#: plinth/modules/samba/templates/samba.html:57
msgid "VFAT partitions are not supported"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:103
+#: plinth/modules/samba/templates/samba.html:88
#, python-format
msgid ""
"You can find additional information about disks on the users module page."
msgstr ""
-#: plinth/modules/samba/templates/samba.html:109
+#: plinth/modules/samba/templates/samba.html:94
msgid "Users who can currently access group and home shares"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:113
+#: plinth/modules/samba/templates/samba.html:98
msgid ""
"Users needing to re-enter their password on the password change page to "
"access group and home shares"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:118
+#: plinth/modules/samba/templates/samba.html:103
msgid "Unavailable Shares"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:120
+#: plinth/modules/samba/templates/samba.html:105
msgid ""
"Shares that are configured but the disk is not available. If the disk is "
"plugged back in, sharing will be automatically enabled."
msgstr ""
-#: plinth/modules/samba/templates/samba.html:128
+#: plinth/modules/samba/templates/samba.html:113
msgid "Share name"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:129
+#: plinth/modules/samba/templates/samba.html:114
msgid "Action"
msgstr ""
-#: plinth/modules/samba/views.py:61 plinth/modules/storage/forms.py:164
+#: plinth/modules/samba/views.py:43 plinth/modules/storage/forms.py:149
msgid "Open Share"
msgstr ""
-#: plinth/modules/samba/views.py:62 plinth/modules/storage/forms.py:162
+#: plinth/modules/samba/views.py:44 plinth/modules/storage/forms.py:147
msgid "Group Share"
msgstr ""
-#: plinth/modules/samba/views.py:63
+#: plinth/modules/samba/views.py:45
msgid "Home Share"
msgstr ""
-#: plinth/modules/samba/views.py:96
+#: plinth/modules/samba/views.py:78
msgid "Share enabled."
msgstr ""
-#: plinth/modules/samba/views.py:101
+#: plinth/modules/samba/views.py:83
#, python-brace-format
msgid "Error enabling share: {error_message}"
msgstr ""
-#: plinth/modules/samba/views.py:106
+#: plinth/modules/samba/views.py:88
msgid "Share disabled."
msgstr ""
-#: plinth/modules/samba/views.py:111
+#: plinth/modules/samba/views.py:93
#, python-brace-format
msgid "Error disabling share: {error_message}"
msgstr ""
-#: plinth/modules/searx/__init__.py:41 plinth/modules/searx/manifest.py:24
-msgid "Searx"
-msgstr ""
-
-#: plinth/modules/searx/__init__.py:45
-msgid "Web Search"
-msgstr ""
-
-#: plinth/modules/searx/__init__.py:48
+#: plinth/modules/searx/__init__.py:25
msgid ""
"Searx is a privacy-respecting Internet metasearch engine. It aggregrates and "
"displays results from multiple search engines."
msgstr ""
-#: plinth/modules/searx/__init__.py:50
+#: plinth/modules/searx/__init__.py:27
msgid ""
"Searx can be used to avoid tracking and profiling by search engines. It "
"stores no cookies by default."
msgstr ""
-#: plinth/modules/searx/__init__.py:54
+#: plinth/modules/searx/__init__.py:31
msgid "Search the web"
msgstr ""
-#: plinth/modules/searx/forms.py:30
+#: plinth/modules/searx/__init__.py:47 plinth/modules/searx/manifest.py:9
+msgid "Searx"
+msgstr ""
+
+#: plinth/modules/searx/__init__.py:48
+msgid "Web Search"
+msgstr ""
+
+#: plinth/modules/searx/forms.py:15
msgid "Safe Search"
msgstr ""
-#: plinth/modules/searx/forms.py:31
+#: plinth/modules/searx/forms.py:16
msgid "Select the default family filter to apply to your search results."
msgstr ""
-#: plinth/modules/searx/forms.py:32
+#: plinth/modules/searx/forms.py:17
msgid "None"
msgstr ""
-#: plinth/modules/searx/forms.py:32
+#: plinth/modules/searx/forms.py:17
msgid "Moderate"
msgstr ""
-#: plinth/modules/searx/forms.py:32
+#: plinth/modules/searx/forms.py:17
msgid "Strict"
msgstr ""
-#: plinth/modules/searx/forms.py:35
+#: plinth/modules/searx/forms.py:20
msgid "Allow Public Access"
msgstr ""
-#: plinth/modules/searx/forms.py:36
+#: plinth/modules/searx/forms.py:21
msgid "Allow this application to be used by anyone who can reach it."
msgstr ""
-#: plinth/modules/searx/views.py:59 plinth/modules/searx/views.py:70
-#: plinth/modules/tor/views.py:149 plinth/modules/tor/views.py:176
+#: plinth/modules/searx/views.py:39 plinth/modules/searx/views.py:50
+#: plinth/modules/tor/views.py:130 plinth/modules/tor/views.py:157
msgid "Configuration updated."
msgstr ""
-#: plinth/modules/security/forms.py:28
+#: plinth/modules/security/forms.py:13
msgid "Restrict console logins (recommended)"
msgstr ""
-#: plinth/modules/security/forms.py:29
+#: plinth/modules/security/forms.py:14
msgid ""
"When this option is enabled, only users in the \"admin\" group will be able "
"to log in to console or via SSH. Console users may be able to access some "
"services without further authorization."
msgstr ""
-#: plinth/modules/security/forms.py:34
+#: plinth/modules/security/forms.py:19
msgid "Fail2Ban (recommended)"
msgstr ""
-#: plinth/modules/security/forms.py:35
+#: plinth/modules/security/forms.py:20
msgid ""
"When this option is enabled, Fail2Ban will limit brute force break-in "
"attempts to the SSH server and other enabled password protected internet-"
"services."
msgstr ""
-#: plinth/modules/security/templates/security.html:26
-#: plinth/modules/security/templates/security.html:28
+#: plinth/modules/security/templates/security.html:11
+#: plinth/modules/security/templates/security.html:13
msgid "Show security report"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:25
-#: plinth/modules/security/views.py:87
+#: plinth/modules/security/templates/security_report.html:10
+#: plinth/modules/security/views.py:71
msgid "Security Report"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:27
+#: plinth/modules/security/templates/security_report.html:12
#, python-format
msgid ""
"The installed version of FreedomBox has %(count)s reported security "
"vulnerabilities."
msgstr ""
-#: plinth/modules/security/templates/security_report.html:33
+#: plinth/modules/security/templates/security_report.html:18
msgid ""
"The following table lists the current reported number, and historical count, "
"of security vulnerabilities for each installed app."
msgstr ""
-#: plinth/modules/security/templates/security_report.html:39
+#: plinth/modules/security/templates/security_report.html:24
msgid ""
"For apps that provide services, the \"Sandboxed\" column shows whether "
"sandboxing features are in use. Sandboxing mitigates the impact of a "
"potentially compromised app to the rest of the system."
msgstr ""
-#: plinth/modules/security/templates/security_report.html:46
+#: plinth/modules/security/templates/security_report.html:31
msgid ""
"\"Sandbox Coverage\" is a score of how effectively the service is isolated "
"from the rest of the system. It is only displayed while the service is "
"running."
msgstr ""
-#: plinth/modules/security/templates/security_report.html:55
+#: plinth/modules/security/templates/security_report.html:40
msgid "App Name"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:56
+#: plinth/modules/security/templates/security_report.html:41
msgid "Current Vulnerabilities"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:57
+#: plinth/modules/security/templates/security_report.html:42
msgid "Past Vulnerabilities"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:58
+#: plinth/modules/security/templates/security_report.html:43
msgid "Sandboxed"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:59
+#: plinth/modules/security/templates/security_report.html:44
msgid "Sandbox Coverage"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:70
+#: plinth/modules/security/templates/security_report.html:55
msgid "N/A"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:72
+#: plinth/modules/security/templates/security_report.html:57
msgid "Yes"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:74
+#: plinth/modules/security/templates/security_report.html:59
msgid "No"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:81
+#: plinth/modules/security/templates/security_report.html:66
msgid "Not running"
msgstr ""
-#: plinth/modules/security/views.py:69
+#: plinth/modules/security/views.py:53
#, python-brace-format
msgid "Error setting restricted access: {exception}"
msgstr ""
-#: plinth/modules/security/views.py:72
+#: plinth/modules/security/views.py:56
msgid "Updated security configuration"
msgstr ""
-#: plinth/modules/shaarli/__init__.py:34 plinth/modules/shaarli/manifest.py:23
-msgid "Shaarli"
-msgstr ""
-
-#: plinth/modules/shaarli/__init__.py:36
-msgid "Bookmarks"
-msgstr ""
-
-#: plinth/modules/shaarli/__init__.py:39
+#: plinth/modules/shaarli/__init__.py:20
msgid "Shaarli allows you to save and share bookmarks."
msgstr ""
-#: plinth/modules/shaarli/__init__.py:40
+#: plinth/modules/shaarli/__init__.py:21
msgid ""
"When enabled, Shaarli will be available from /shaarli path on the web server. Note that Shaarli "
@@ -4381,22 +4474,22 @@ msgid ""
"initial visit."
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:35
-msgid "Shadowsocks"
+#: plinth/modules/shaarli/__init__.py:39 plinth/modules/shaarli/manifest.py:8
+msgid "Shaarli"
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:39
-msgid "Socks5 Proxy"
+#: plinth/modules/shaarli/__init__.py:40
+msgid "Bookmarks"
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:46
+#: plinth/modules/shadowsocks/__init__.py:25
msgid ""
"Shadowsocks is a lightweight and secure SOCKS5 proxy, designed to protect "
"your Internet traffic. It can be used to bypass Internet filtering and "
"censorship."
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:50
+#: plinth/modules/shadowsocks/__init__.py:29
#, python-brace-format
msgid ""
"Your {box_name} can run a Shadowsocks client, that can connect to a "
@@ -4405,149 +4498,153 @@ msgid ""
"the Shadowsocks server."
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:55
+#: plinth/modules/shadowsocks/__init__.py:34
msgid ""
"To use Shadowsocks after setup, set the SOCKS5 proxy URL in your device, "
"browser or application to http://freedombox_address:1080/"
msgstr ""
-#: plinth/modules/shadowsocks/forms.py:28
-#: plinth/modules/shadowsocks/forms.py:29
+#: plinth/modules/shadowsocks/__init__.py:50
+msgid "Shadowsocks"
+msgstr ""
+
+#: plinth/modules/shadowsocks/__init__.py:52
+msgid "Socks5 Proxy"
+msgstr ""
+
+#: plinth/modules/shadowsocks/forms.py:13
+#: plinth/modules/shadowsocks/forms.py:14
msgid "Recommended"
msgstr ""
-#: plinth/modules/shadowsocks/forms.py:52
+#: plinth/modules/shadowsocks/forms.py:37
msgid "Server"
msgstr ""
-#: plinth/modules/shadowsocks/forms.py:53
+#: plinth/modules/shadowsocks/forms.py:38
msgid "Server hostname or IP address"
msgstr ""
-#: plinth/modules/shadowsocks/forms.py:57
+#: plinth/modules/shadowsocks/forms.py:42
msgid "Server port number"
msgstr ""
-#: plinth/modules/shadowsocks/forms.py:60
+#: plinth/modules/shadowsocks/forms.py:45
msgid "Password used to encrypt data. Must match server password."
msgstr ""
-#: plinth/modules/shadowsocks/forms.py:65
+#: plinth/modules/shadowsocks/forms.py:50
msgid "Encryption method. Must match setting on server."
msgstr ""
-#: plinth/modules/sharing/__init__.py:34
-msgid "Sharing"
-msgstr ""
-
-#: plinth/modules/sharing/__init__.py:38
+#: plinth/modules/sharing/__init__.py:21
#, python-brace-format
msgid ""
"Sharing allows you to share files and folders on your {box_name} over the "
"web with chosen groups of users."
msgstr ""
-#: plinth/modules/sharing/forms.py:33
+#: plinth/modules/sharing/__init__.py:38
+msgid "Sharing"
+msgstr ""
+
+#: plinth/modules/sharing/forms.py:18
msgid "Name of the share"
msgstr ""
-#: plinth/modules/sharing/forms.py:35
+#: plinth/modules/sharing/forms.py:20
msgid ""
"A lowercase alpha-numeric string that uniquely identifies a share. Example: "
"media."
msgstr ""
-#: plinth/modules/sharing/forms.py:39
+#: plinth/modules/sharing/forms.py:24
msgid "Path to share"
msgstr ""
-#: plinth/modules/sharing/forms.py:40
+#: plinth/modules/sharing/forms.py:25
msgid "Disk path to a folder on this server that you intend to share."
msgstr ""
-#: plinth/modules/sharing/forms.py:43
+#: plinth/modules/sharing/forms.py:28
msgid "Public share"
msgstr ""
-#: plinth/modules/sharing/forms.py:44
+#: plinth/modules/sharing/forms.py:29
msgid "Make files in this folder available to anyone with the link."
msgstr ""
-#: plinth/modules/sharing/forms.py:48
+#: plinth/modules/sharing/forms.py:33
msgid "User groups that can read the files in the share"
msgstr ""
-#: plinth/modules/sharing/forms.py:50
+#: plinth/modules/sharing/forms.py:35
msgid ""
"Users of the selected user groups will be able to read the files in the "
"share."
msgstr ""
-#: plinth/modules/sharing/forms.py:67
+#: plinth/modules/sharing/forms.py:52
msgid "A share with this name already exists."
msgstr ""
-#: plinth/modules/sharing/forms.py:78
+#: plinth/modules/sharing/forms.py:63
msgid "Shares should be either public or shared with at least one group"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:39
-#: plinth/modules/sharing/templates/sharing.html:42
+#: plinth/modules/sharing/templates/sharing.html:24
+#: plinth/modules/sharing/templates/sharing.html:27
msgid "Add share"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:47
+#: plinth/modules/sharing/templates/sharing.html:32
msgid "No shares currently configured."
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:53
+#: plinth/modules/sharing/templates/sharing.html:38
msgid "Disk Path"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:54
+#: plinth/modules/sharing/templates/sharing.html:39
msgid "Shared Over"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:55
+#: plinth/modules/sharing/templates/sharing.html:40
msgid "With Groups"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:73
+#: plinth/modules/sharing/templates/sharing.html:58
msgid "public access"
msgstr ""
-#: plinth/modules/sharing/views.py:55
+#: plinth/modules/sharing/views.py:39
msgid "Share added."
msgstr ""
-#: plinth/modules/sharing/views.py:60
+#: plinth/modules/sharing/views.py:44
msgid "Add Share"
msgstr ""
-#: plinth/modules/sharing/views.py:75
+#: plinth/modules/sharing/views.py:59
msgid "Share edited."
msgstr ""
-#: plinth/modules/sharing/views.py:80
+#: plinth/modules/sharing/views.py:64
msgid "Edit Share"
msgstr ""
-#: plinth/modules/sharing/views.py:111
+#: plinth/modules/sharing/views.py:95
msgid "Share deleted."
msgstr ""
-#: plinth/modules/snapshot/__init__.py:37
-msgid "Storage Snapshots"
-msgstr ""
-
-#: plinth/modules/snapshot/__init__.py:40
+#: plinth/modules/snapshot/__init__.py:23
msgid ""
"Snapshots allows creating and managing btrfs file system snapshots. These "
"can be used to roll back the system to a previously known good state in case "
"of unwanted changes to the system."
msgstr ""
-#: plinth/modules/snapshot/__init__.py:44
+#: plinth/modules/snapshot/__init__.py:27
#, no-python-format
msgid ""
"Snapshots are taken periodically (called timeline snapshots) and also before "
@@ -4555,192 +4652,192 @@ msgid ""
"cleaned up according to the settings below."
msgstr ""
-#: plinth/modules/snapshot/__init__.py:47
+#: plinth/modules/snapshot/__init__.py:30
msgid ""
"Snapshots currently work on btrfs file systems only and on the root "
"partition only. Snapshots are not a replacement for backups since they can only be stored on the same partition. "
msgstr ""
-#: plinth/modules/snapshot/forms.py:27
+#: plinth/modules/snapshot/__init__.py:52
+msgid "Storage Snapshots"
+msgstr ""
+
+#: plinth/modules/snapshot/forms.py:12
msgid "Free Disk Space to Maintain"
msgstr ""
-#: plinth/modules/snapshot/forms.py:28
+#: plinth/modules/snapshot/forms.py:13
msgid ""
"Maintain this percentage of free space on the disk. If free space falls "
"below this value, older snapshots are removed until this much free space is "
"regained. The default value is 30%."
msgstr ""
-#: plinth/modules/snapshot/forms.py:35
+#: plinth/modules/snapshot/forms.py:20
msgid "Timeline Snapshots"
msgstr ""
-#: plinth/modules/snapshot/forms.py:36
+#: plinth/modules/snapshot/forms.py:21
msgid ""
"Enable or disable timeline snapshots (hourly, daily, monthly and yearly)."
msgstr ""
-#: plinth/modules/snapshot/forms.py:41
+#: plinth/modules/snapshot/forms.py:26
msgid "Software Installation Snapshots"
msgstr ""
-#: plinth/modules/snapshot/forms.py:42
+#: plinth/modules/snapshot/forms.py:27
msgid "Enable or disable snapshots before and after software installation"
msgstr ""
-#: plinth/modules/snapshot/forms.py:47
+#: plinth/modules/snapshot/forms.py:32
msgid "Hourly Snapshots Limit"
msgstr ""
-#: plinth/modules/snapshot/forms.py:48
+#: plinth/modules/snapshot/forms.py:33
msgid "Keep a maximum of this many hourly snapshots."
msgstr ""
-#: plinth/modules/snapshot/forms.py:51
+#: plinth/modules/snapshot/forms.py:36
msgid "Daily Snapshots Limit"
msgstr ""
-#: plinth/modules/snapshot/forms.py:52
+#: plinth/modules/snapshot/forms.py:37
msgid "Keep a maximum of this many daily snapshots."
msgstr ""
-#: plinth/modules/snapshot/forms.py:55
+#: plinth/modules/snapshot/forms.py:40
msgid "Weekly Snapshots Limit"
msgstr ""
-#: plinth/modules/snapshot/forms.py:56
+#: plinth/modules/snapshot/forms.py:41
msgid "Keep a maximum of this many weekly snapshots."
msgstr ""
-#: plinth/modules/snapshot/forms.py:59
+#: plinth/modules/snapshot/forms.py:44
msgid "Monthly Snapshots Limit"
msgstr ""
-#: plinth/modules/snapshot/forms.py:60
+#: plinth/modules/snapshot/forms.py:45
msgid "Keep a maximum of this many monthly snapshots."
msgstr ""
-#: plinth/modules/snapshot/forms.py:63
+#: plinth/modules/snapshot/forms.py:48
msgid "Yearly Snapshots Limit"
msgstr ""
-#: plinth/modules/snapshot/forms.py:64
+#: plinth/modules/snapshot/forms.py:49
msgid ""
"Keep a maximum of this many yearly snapshots. The default value is 0 "
"(disabled)."
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:27
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:12
msgid "Delete the following snapshots permanently?"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:31
-#: plinth/modules/snapshot/templates/snapshot_manage.html:43
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:39
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:16
+#: plinth/modules/snapshot/templates/snapshot_manage.html:28
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:24
msgid "Number"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:32
-#: plinth/modules/snapshot/templates/snapshot_manage.html:44
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:40
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:17
+#: plinth/modules/snapshot/templates/snapshot_manage.html:29
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:25
msgid "Date"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:52
-#: plinth/modules/snapshot/templates/snapshot_manage.html:37
-#: plinth/modules/snapshot/views.py:196
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:37
+#: plinth/modules/snapshot/templates/snapshot_manage.html:22
+#: plinth/modules/snapshot/views.py:175
msgid "Delete Snapshots"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_manage.html:33
+#: plinth/modules/snapshot/templates/snapshot_manage.html:18
msgid "Create Snapshot"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_manage.html:46
+#: plinth/modules/snapshot/templates/snapshot_manage.html:31
msgid "Rollback"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_manage.html:57
+#: plinth/modules/snapshot/templates/snapshot_manage.html:42
msgid "active"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_manage.html:66
+#: plinth/modules/snapshot/templates/snapshot_manage.html:51
#, python-format
msgid "Rollback to snapshot #%(number)s"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_not_supported.html:26
+#: plinth/modules/snapshot/templates/snapshot_not_supported.html:11
#, python-format
msgid ""
"Your have a filesystem of type %(fs_type)s. Snapshots are "
"currently only available on %(types_supported)s filesystems."
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:27
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:12
msgid "Roll back the system to this snapshot?"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:30
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:15
msgid ""
"A new snapshot with the current state of the file system will be "
"automatically created. You will be able to undo a rollback by reverting to "
"the newly created snapshot."
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:57
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:42
#, python-format
msgid "Rollback to Snapshot #%(number)s"
msgstr ""
-#: plinth/modules/snapshot/views.py:45
+#: plinth/modules/snapshot/views.py:30
msgid "Manage Snapshots"
msgstr ""
-#: plinth/modules/snapshot/views.py:98
+#: plinth/modules/snapshot/views.py:79
msgid "Created snapshot."
msgstr ""
-#: plinth/modules/snapshot/views.py:156
+#: plinth/modules/snapshot/views.py:135
msgid "Storage snapshots configuration updated"
msgstr ""
-#: plinth/modules/snapshot/views.py:160 plinth/modules/tor/views.py:79
+#: plinth/modules/snapshot/views.py:139 plinth/modules/tor/views.py:60
#, python-brace-format
msgid "Action error: {0} [{1}] [{2}]"
msgstr ""
-#: plinth/modules/snapshot/views.py:175
+#: plinth/modules/snapshot/views.py:154
msgid "Deleted all snapshots"
msgstr ""
-#: plinth/modules/snapshot/views.py:179
+#: plinth/modules/snapshot/views.py:158
msgid "Deleted selected snapshots"
msgstr ""
-#: plinth/modules/snapshot/views.py:184
+#: plinth/modules/snapshot/views.py:163
msgid "Snapshot is currently in use. Please try again later."
msgstr ""
-#: plinth/modules/snapshot/views.py:207
+#: plinth/modules/snapshot/views.py:186
#, python-brace-format
msgid "Rolled back to snapshot #{number}."
msgstr ""
-#: plinth/modules/snapshot/views.py:210
+#: plinth/modules/snapshot/views.py:189
msgid "The system must be restarted to complete the rollback."
msgstr ""
-#: plinth/modules/snapshot/views.py:222
+#: plinth/modules/snapshot/views.py:201
msgid "Rollback to Snapshot"
msgstr ""
-#: plinth/modules/ssh/__init__.py:43
-msgid "Secure Shell (SSH) Server"
-msgstr ""
-
-#: plinth/modules/ssh/__init__.py:46
+#: plinth/modules/ssh/__init__.py:29
msgid ""
"A Secure Shell server uses the secure shell protocol to accept connections "
"from remote computers. An authorized remote computer can perform "
@@ -4748,56 +4845,56 @@ msgid ""
"connections."
msgstr ""
-#: plinth/modules/ssh/forms.py:30
+#: plinth/modules/ssh/__init__.py:50
+msgid "Secure Shell (SSH) Server"
+msgstr ""
+
+#: plinth/modules/ssh/forms.py:15
msgid "Disable password authentication"
msgstr ""
-#: plinth/modules/ssh/forms.py:31
+#: plinth/modules/ssh/forms.py:16
msgid ""
"Improves security by preventing password guessing. Ensure that you have "
"setup SSH keys in your administrator user account before enabling this "
"option."
msgstr ""
-#: plinth/modules/ssh/templates/ssh.html:26
+#: plinth/modules/ssh/templates/ssh.html:11
msgid "Server Fingerprints"
msgstr ""
-#: plinth/modules/ssh/templates/ssh.html:29
+#: plinth/modules/ssh/templates/ssh.html:14
msgid ""
"When connecting to the server, ensure that the fingerprint shown by the SSH "
"client matches one of these fingerprints."
msgstr ""
-#: plinth/modules/ssh/templates/ssh.html:38
+#: plinth/modules/ssh/templates/ssh.html:23
msgid "Algorithm"
msgstr ""
-#: plinth/modules/ssh/templates/ssh.html:39
+#: plinth/modules/ssh/templates/ssh.html:24
msgid "Fingerprint"
msgstr ""
-#: plinth/modules/ssh/views.py:66
+#: plinth/modules/ssh/views.py:48
msgid "SSH authentication with password disabled."
msgstr ""
-#: plinth/modules/ssh/views.py:69
+#: plinth/modules/ssh/views.py:51
msgid "SSH authentication with password enabled."
msgstr ""
-#: plinth/modules/sso/__init__.py:30
+#: plinth/modules/sso/__init__.py:33
msgid "Single Sign On"
msgstr ""
-#: plinth/modules/sso/templates/login.html:35
+#: plinth/modules/sso/templates/login.html:20
msgid "Login"
msgstr ""
-#: plinth/modules/storage/__init__.py:39 plinth/modules/storage/__init__.py:331
-msgid "Storage"
-msgstr ""
-
-#: plinth/modules/storage/__init__.py:47
+#: plinth/modules/storage/__init__.py:30
#, python-brace-format
msgid ""
"This module allows you to manage storage media attached to your {box_name}. "
@@ -4805,145 +4902,149 @@ msgid ""
"media, expand the root partition etc."
msgstr ""
-#: plinth/modules/storage/__init__.py:224
+#: plinth/modules/storage/__init__.py:52 plinth/modules/storage/__init__.py:318
+msgid "Storage"
+msgstr ""
+
+#: plinth/modules/storage/__init__.py:211
#, python-brace-format
msgid "{disk_size:.1f} bytes"
msgstr ""
-#: plinth/modules/storage/__init__.py:228
+#: plinth/modules/storage/__init__.py:215
#, python-brace-format
msgid "{disk_size:.1f} KiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:232
+#: plinth/modules/storage/__init__.py:219
#, python-brace-format
msgid "{disk_size:.1f} MiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:236
+#: plinth/modules/storage/__init__.py:223
#, python-brace-format
msgid "{disk_size:.1f} GiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:239
+#: plinth/modules/storage/__init__.py:226
#, python-brace-format
msgid "{disk_size:.1f} TiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:246
+#: plinth/modules/storage/__init__.py:233
msgid "The operation failed."
msgstr ""
-#: plinth/modules/storage/__init__.py:248
+#: plinth/modules/storage/__init__.py:235
msgid "The operation was cancelled."
msgstr ""
-#: plinth/modules/storage/__init__.py:250
+#: plinth/modules/storage/__init__.py:237
msgid "The device is already unmounting."
msgstr ""
-#: plinth/modules/storage/__init__.py:252
+#: plinth/modules/storage/__init__.py:239
msgid "The operation is not supported due to missing driver/tool support."
msgstr ""
-#: plinth/modules/storage/__init__.py:255
+#: plinth/modules/storage/__init__.py:242
msgid "The operation timed out."
msgstr ""
-#: plinth/modules/storage/__init__.py:257
+#: plinth/modules/storage/__init__.py:244
msgid "The operation would wake up a disk that is in a deep-sleep state."
msgstr ""
-#: plinth/modules/storage/__init__.py:260
+#: plinth/modules/storage/__init__.py:247
msgid "Attempting to unmount a device that is busy."
msgstr ""
-#: plinth/modules/storage/__init__.py:262
+#: plinth/modules/storage/__init__.py:249
msgid "The operation has already been cancelled."
msgstr ""
-#: plinth/modules/storage/__init__.py:268
+#: plinth/modules/storage/__init__.py:255
msgid "Not authorized to perform the requested operation."
msgstr ""
-#: plinth/modules/storage/__init__.py:270
+#: plinth/modules/storage/__init__.py:257
msgid "The device is already mounted."
msgstr ""
-#: plinth/modules/storage/__init__.py:272
+#: plinth/modules/storage/__init__.py:259
msgid "The device is not mounted."
msgstr ""
-#: plinth/modules/storage/__init__.py:275
+#: plinth/modules/storage/__init__.py:262
msgid "Not permitted to use the requested option."
msgstr ""
-#: plinth/modules/storage/__init__.py:278
+#: plinth/modules/storage/__init__.py:265
msgid "The device is mounted by another user."
msgstr ""
-#: plinth/modules/storage/__init__.py:326
+#: plinth/modules/storage/__init__.py:313
#, no-python-format, python-brace-format
msgid "Low space on system partition: {percent_used}% used, {free_space} free."
msgstr ""
-#: plinth/modules/storage/__init__.py:328
+#: plinth/modules/storage/__init__.py:315
msgid "Low disk space"
msgstr ""
-#: plinth/modules/storage/forms.py:79
+#: plinth/modules/storage/forms.py:64
msgid "Invalid directory name."
msgstr ""
-#: plinth/modules/storage/forms.py:97
+#: plinth/modules/storage/forms.py:82
msgid "Directory does not exist."
msgstr ""
-#: plinth/modules/storage/forms.py:99
+#: plinth/modules/storage/forms.py:84
msgid "Path is not a directory."
msgstr ""
-#: plinth/modules/storage/forms.py:102
+#: plinth/modules/storage/forms.py:87
msgid "Directory is not readable by the user."
msgstr ""
-#: plinth/modules/storage/forms.py:105
+#: plinth/modules/storage/forms.py:90
msgid "Directory is not writable by the user."
msgstr ""
-#: plinth/modules/storage/forms.py:110
+#: plinth/modules/storage/forms.py:95
msgid "Directory"
msgstr ""
-#: plinth/modules/storage/forms.py:113
+#: plinth/modules/storage/forms.py:98
msgid "Subdirectory (optional)"
msgstr ""
-#: plinth/modules/storage/forms.py:160
+#: plinth/modules/storage/forms.py:145
msgid "Share"
msgstr ""
-#: plinth/modules/storage/forms.py:168
+#: plinth/modules/storage/forms.py:153
msgid "Other directory (specify below)"
msgstr ""
-#: plinth/modules/storage/templates/storage.html:35
+#: plinth/modules/storage/templates/storage.html:20
msgid "The following storage devices are in use:"
msgstr ""
-#: plinth/modules/storage/templates/storage.html:41
+#: plinth/modules/storage/templates/storage.html:26
msgid "Label"
msgstr ""
-#: plinth/modules/storage/templates/storage.html:42
+#: plinth/modules/storage/templates/storage.html:27
msgid "Mount Point"
msgstr ""
-#: plinth/modules/storage/templates/storage.html:90
+#: plinth/modules/storage/templates/storage.html:75
msgid "Partition Expansion"
msgstr ""
-#: plinth/modules/storage/templates/storage.html:92
+#: plinth/modules/storage/templates/storage.html:77
#, python-format
msgid ""
"There is %(expandable_root_size)s of unallocated space available after your "
@@ -4951,13 +5052,13 @@ msgid ""
"will provide you additional free space to store your files."
msgstr ""
-#: plinth/modules/storage/templates/storage.html:102
-#: plinth/modules/storage/templates/storage_expand.html:39
-#: plinth/modules/storage/views.py:76
+#: plinth/modules/storage/templates/storage.html:87
+#: plinth/modules/storage/templates/storage_expand.html:24
+#: plinth/modules/storage/views.py:58
msgid "Expand Root Partition"
msgstr ""
-#: plinth/modules/storage/templates/storage_expand.html:29
+#: plinth/modules/storage/templates/storage_expand.html:14
#, python-format
msgid ""
"Please backup your data before proceeding. After this operation, "
@@ -4965,39 +5066,30 @@ msgid ""
"root partition."
msgstr ""
-#: plinth/modules/storage/views.py:88
+#: plinth/modules/storage/views.py:70
#, python-brace-format
msgid "Error expanding partition: {exception}"
msgstr ""
-#: plinth/modules/storage/views.py:91
+#: plinth/modules/storage/views.py:73
msgid "Partition expanded successfully."
msgstr ""
-#: plinth/modules/storage/views.py:109
+#: plinth/modules/storage/views.py:91
#, python-brace-format
msgid "{drive_vendor} {drive_model} can be safely unplugged."
msgstr ""
-#: plinth/modules/storage/views.py:113
+#: plinth/modules/storage/views.py:95
msgid "Device can be safely unplugged."
msgstr ""
-#: plinth/modules/storage/views.py:123
+#: plinth/modules/storage/views.py:105
#, python-brace-format
msgid "Error ejecting device: {error_message}"
msgstr ""
-#: plinth/modules/syncthing/__init__.py:40
-#: plinth/modules/syncthing/manifest.py:28
-msgid "Syncthing"
-msgstr ""
-
-#: plinth/modules/syncthing/__init__.py:44
-msgid "File Synchronization"
-msgstr ""
-
-#: plinth/modules/syncthing/__init__.py:47
+#: plinth/modules/syncthing/__init__.py:26
msgid ""
"Syncthing is an application to synchronize files across multiple devices, e."
"g. your desktop computer and mobile phone. Creation, modification, or "
@@ -5005,7 +5097,7 @@ msgid ""
"other devices that also run Syncthing."
msgstr ""
-#: plinth/modules/syncthing/__init__.py:52
+#: plinth/modules/syncthing/__init__.py:31
#, python-brace-format
msgid ""
"Running Syncthing on {box_name} provides an extra synchronization point for "
@@ -5016,19 +5108,20 @@ msgid ""
"{box_name} is only available for users belonging to the \"admin\" group."
msgstr ""
-#: plinth/modules/syncthing/__init__.py:63
+#: plinth/modules/syncthing/__init__.py:40
msgid "Administer Syncthing application"
msgstr ""
-#: plinth/modules/tahoe/__init__.py:43
-msgid "Tahoe-LAFS"
+#: plinth/modules/syncthing/__init__.py:54
+#: plinth/modules/syncthing/manifest.py:13
+msgid "Syncthing"
msgstr ""
-#: plinth/modules/tahoe/__init__.py:47
-msgid "Distributed File Storage"
+#: plinth/modules/syncthing/__init__.py:55
+msgid "File Synchronization"
msgstr ""
-#: plinth/modules/tahoe/__init__.py:134
+#: plinth/modules/tahoe/__init__.py:30
msgid ""
"Tahoe-LAFS is a decentralized secure file storage system. It uses provider "
"independent security to store files over a distributed network of storage "
@@ -5036,7 +5129,7 @@ msgid ""
"remaining nodes."
msgstr ""
-#: plinth/modules/tahoe/__init__.py:139
+#: plinth/modules/tahoe/__init__.py:35
#, python-brace-format
msgid ""
"This {box_name} hosts a storage node and an introducer by default. "
@@ -5044,7 +5137,15 @@ msgid ""
"other storage nodes."
msgstr ""
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:33
+#: plinth/modules/tahoe/__init__.py:66
+msgid "Tahoe-LAFS"
+msgstr ""
+
+#: plinth/modules/tahoe/__init__.py:68
+msgid "Distributed File Storage"
+msgstr ""
+
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:17
#, python-format
msgid ""
"The Tahoe-LAFS server domain is set to %(domain_name)s. Changing the "
@@ -5053,37 +5154,33 @@ msgid ""
"%(domain_name)s:5678\">https://%(domain_name)s:5678."
msgstr ""
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:55
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:39
msgid "Local introducer"
msgstr ""
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:43
#: plinth/modules/tahoe/templates/tahoe-post-setup.html:59
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:75
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:92
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:76
msgid "Pet Name"
msgstr ""
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:72
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:56
msgid "Add new introducer"
msgstr ""
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:83
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:67
msgid "Add"
msgstr ""
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:88
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:72
msgid "Connected introducers"
msgstr ""
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:105
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:89
msgid "Remove"
msgstr ""
-#: plinth/modules/tor/__init__.py:47
-msgid "Tor"
-msgstr ""
-
-#: plinth/modules/tor/__init__.py:52
+#: plinth/modules/tor/__init__.py:33
msgid ""
"Tor is an anonymous communication system. You can learn more about it from "
"the Tor Project website. For "
@@ -5092,76 +5189,80 @@ msgid ""
"\">Tor Browser."
msgstr ""
-#: plinth/modules/tor/__init__.py:83
+#: plinth/modules/tor/__init__.py:55
+msgid "Tor"
+msgstr ""
+
+#: plinth/modules/tor/__init__.py:66
msgid "Tor Onion Service"
msgstr ""
-#: plinth/modules/tor/__init__.py:87
+#: plinth/modules/tor/__init__.py:70
msgid "Tor Socks Proxy"
msgstr ""
-#: plinth/modules/tor/__init__.py:91
+#: plinth/modules/tor/__init__.py:74
msgid "Tor Bridge Relay"
msgstr ""
-#: plinth/modules/tor/__init__.py:112
+#: plinth/modules/tor/__init__.py:95
msgid "Tor relay port available"
msgstr ""
-#: plinth/modules/tor/__init__.py:122
+#: plinth/modules/tor/__init__.py:105
msgid "Obfs3 transport registered"
msgstr ""
-#: plinth/modules/tor/__init__.py:132
+#: plinth/modules/tor/__init__.py:115
msgid "Obfs4 transport registered"
msgstr ""
-#: plinth/modules/tor/__init__.py:225
+#: plinth/modules/tor/__init__.py:208
#, python-brace-format
msgid "Access URL {url} on tcp{kind} via Tor"
msgstr ""
-#: plinth/modules/tor/__init__.py:236
+#: plinth/modules/tor/__init__.py:219
#, python-brace-format
msgid "Confirm Tor usage at {url} on tcp{kind}"
msgstr ""
-#: plinth/modules/tor/forms.py:46
+#: plinth/modules/tor/forms.py:31
msgid ""
"Enter a valid bridge with this format: [transport] IP:ORPort [fingerprint]"
msgstr ""
-#: plinth/modules/tor/forms.py:88
+#: plinth/modules/tor/forms.py:73
msgid "Enable Tor"
msgstr ""
-#: plinth/modules/tor/forms.py:90
+#: plinth/modules/tor/forms.py:75
msgid "Use upstream bridges to connect to Tor network"
msgstr ""
-#: plinth/modules/tor/forms.py:92
+#: plinth/modules/tor/forms.py:77
msgid ""
"When enabled, the bridges configured below will be used to connect to the "
"Tor network. Use this option if your Internet Service Provider (ISP) blocks "
"or censors connections to the Tor Network. This will disable relay modes."
msgstr ""
-#: plinth/modules/tor/forms.py:97
+#: plinth/modules/tor/forms.py:82
msgid "Upstream bridges"
msgstr ""
-#: plinth/modules/tor/forms.py:99
+#: plinth/modules/tor/forms.py:84
msgid ""
"You can get some bridges from https://bridges.torproject.org/ and copy/paste the bridge information "
"here. Currently supported transports are none, obfs3, obfs4 and scamblesuit."
msgstr ""
-#: plinth/modules/tor/forms.py:105
+#: plinth/modules/tor/forms.py:90
msgid "Enable Tor relay"
msgstr ""
-#: plinth/modules/tor/forms.py:106
+#: plinth/modules/tor/forms.py:91
#, python-brace-format
msgid ""
"When enabled, your {box_name} will run a Tor relay and donate bandwidth to "
@@ -5169,22 +5270,22 @@ msgid ""
"download bandwidth."
msgstr ""
-#: plinth/modules/tor/forms.py:111
+#: plinth/modules/tor/forms.py:96
msgid "Enable Tor bridge relay"
msgstr ""
-#: plinth/modules/tor/forms.py:113
+#: plinth/modules/tor/forms.py:98
msgid ""
"When enabled, relay information is published in the Tor bridge database "
"instead of public Tor relay database making it harder to censor this node. "
"This helps others circumvent censorship."
msgstr ""
-#: plinth/modules/tor/forms.py:118
+#: plinth/modules/tor/forms.py:103
msgid "Enable Tor Hidden Service"
msgstr ""
-#: plinth/modules/tor/forms.py:120
+#: plinth/modules/tor/forms.py:105
#, python-brace-format
msgid ""
"A hidden service will allow {box_name} to provide selected services (such as "
@@ -5192,208 +5293,204 @@ msgid ""
"anonymity yet."
msgstr ""
-#: plinth/modules/tor/forms.py:125
+#: plinth/modules/tor/forms.py:110
msgid "Download software packages over Tor"
msgstr ""
-#: plinth/modules/tor/forms.py:126
+#: plinth/modules/tor/forms.py:111
msgid ""
"When enabled, software will be downloaded over the Tor network for "
"installations and upgrades. This adds a degree of privacy and security "
"during software downloads."
msgstr ""
-#: plinth/modules/tor/forms.py:141
+#: plinth/modules/tor/forms.py:126
msgid "Specify at least one upstream bridge to use upstream bridges."
msgstr ""
-#: plinth/modules/tor/manifest.py:29
+#: plinth/modules/tor/manifest.py:14
msgid "Tor Browser"
msgstr ""
-#: plinth/modules/tor/manifest.py:45
+#: plinth/modules/tor/manifest.py:30
msgid "Orbot: Proxy with Tor"
msgstr ""
-#: plinth/modules/tor/templates/tor.html:41
+#: plinth/modules/tor/templates/tor.html:26
msgid "Tor configuration is being updated"
msgstr ""
-#: plinth/modules/tor/templates/tor.html:50
+#: plinth/modules/tor/templates/tor.html:35
msgid "Onion Service"
msgstr ""
-#: plinth/modules/tor/templates/tor.html:52
+#: plinth/modules/tor/templates/tor.html:37
msgid "Ports"
msgstr ""
-#: plinth/modules/tor/templates/tor.html:82
+#: plinth/modules/tor/templates/tor.html:67
msgid "Relay"
msgstr ""
-#: plinth/modules/tor/templates/tor.html:84
+#: plinth/modules/tor/templates/tor.html:69
#, python-format
msgid ""
"If your %(box_name)s is behind a router or firewall, you should make sure "
"the following ports are open, and port-forwarded, if necessary:"
msgstr ""
-#: plinth/modules/tor/templates/tor.html:112
+#: plinth/modules/tor/templates/tor.html:97
msgid "SOCKS"
msgstr ""
-#: plinth/modules/tor/templates/tor.html:115
+#: plinth/modules/tor/templates/tor.html:100
#, python-format
msgid "A Tor SOCKS port is available on your %(box_name)s on TCP port 9050."
msgstr ""
-#: plinth/modules/transmission/__init__.py:41
-#: plinth/modules/transmission/manifest.py:24
-msgid "Transmission"
-msgstr ""
-
-#: plinth/modules/transmission/__init__.py:48
+#: plinth/modules/transmission/__init__.py:27
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/ttrss/__init__.py:43 plinth/modules/ttrss/manifest.py:34
-msgid "Tiny Tiny RSS"
+#: plinth/modules/transmission/__init__.py:48
+#: plinth/modules/transmission/manifest.py:9
+msgid "Transmission"
msgstr ""
-#: plinth/modules/ttrss/__init__.py:47
-msgid "News Feed Reader"
-msgstr ""
-
-#: plinth/modules/ttrss/__init__.py:50
+#: plinth/modules/ttrss/__init__.py:29
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:54
+#: plinth/modules/ttrss/__init__.py:33
#, python-brace-format
msgid ""
"When enabled, Tiny Tiny RSS can be accessed by any user with a {box_name} login."
msgstr ""
-#: plinth/modules/ttrss/__init__.py:58
+#: plinth/modules/ttrss/__init__.py:37
msgid ""
"When using a mobile or desktop application for Tiny Tiny RSS, use the URL /tt-rss-app for "
"connecting."
msgstr ""
-#: plinth/modules/ttrss/__init__.py:65
+#: plinth/modules/ttrss/__init__.py:42
msgid "Read and subscribe to news feeds"
msgstr ""
-#: plinth/modules/ttrss/manifest.py:25
+#: plinth/modules/ttrss/__init__.py:56 plinth/modules/ttrss/manifest.py:19
+msgid "Tiny Tiny RSS"
+msgstr ""
+
+#: plinth/modules/ttrss/__init__.py:57
+msgid "News Feed Reader"
+msgstr ""
+
+#: plinth/modules/ttrss/manifest.py:10
msgid "Tiny Tiny RSS (Fork)"
msgstr ""
-#: plinth/modules/upgrades/__init__.py:37 plinth/templates/setup.html:89
-msgid "Update"
-msgstr ""
-
-#: plinth/modules/upgrades/__init__.py:40
+#: plinth/modules/upgrades/__init__.py:23
msgid "Check for and apply the latest software and security updates."
msgstr ""
-#: plinth/modules/upgrades/__init__.py:84
+#: plinth/modules/upgrades/__init__.py:38 plinth/templates/setup.html:74
+msgid "Update"
+msgstr ""
+
+#: plinth/modules/upgrades/__init__.py:71
msgid "FreedomBox Updated"
msgstr ""
-#: plinth/modules/upgrades/forms.py:28
+#: plinth/modules/upgrades/forms.py:13
msgid "Enable auto-update"
msgstr ""
-#: plinth/modules/upgrades/forms.py:29
+#: plinth/modules/upgrades/forms.py:14
msgid "When enabled, FreedomBox automatically updates once a day."
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades-new-release.html:24
+#: plinth/modules/upgrades/templates/upgrades-new-release.html:9
#, python-format
msgid "%(box_name)s Updated"
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades-new-release.html:28
+#: plinth/modules/upgrades/templates/upgrades-new-release.html:13
#, python-format
msgid ""
"%(box_name)s has been updated to version %(version)s. See the release announcement."
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades-new-release.html:37
-#: plinth/templates/notifications.html:59
+#: plinth/modules/upgrades/templates/upgrades-new-release.html:22
+#: plinth/templates/notifications.html:44
msgid "Dismiss"
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades.html:45
+#: plinth/modules/upgrades/templates/upgrades.html:30
msgid "Update now"
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades.html:54
+#: plinth/modules/upgrades/templates/upgrades.html:39
msgid "Updating..."
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades.html:59
+#: plinth/modules/upgrades/templates/upgrades.html:44
msgid ""
"This may take a long time to complete. During an update, "
"you cannot install apps. Also, this web interface may be temporarily "
"unavailable and show an error. In that case, refresh the page to continue."
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades.html:73
+#: plinth/modules/upgrades/templates/upgrades.html:58
msgid "Toggle recent update logs"
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades_configure.html:26
-#: plinth/modules/upgrades/templates/upgrades_configure.html:27
-#: plinth/modules/upgrades/views.py:107
+#: plinth/modules/upgrades/templates/upgrades_configure.html:11
+#: plinth/modules/upgrades/templates/upgrades_configure.html:12
+#: plinth/modules/upgrades/views.py:89
msgid "Manual update"
msgstr ""
-#: plinth/modules/upgrades/views.py:66
+#: plinth/modules/upgrades/views.py:48
#, python-brace-format
msgid "Error when configuring unattended-upgrades: {error}"
msgstr ""
-#: plinth/modules/upgrades/views.py:70
+#: plinth/modules/upgrades/views.py:52
msgid "Automatic upgrades enabled"
msgstr ""
-#: plinth/modules/upgrades/views.py:73
+#: plinth/modules/upgrades/views.py:55
msgid "Automatic upgrades disabled"
msgstr ""
-#: plinth/modules/upgrades/views.py:75
+#: plinth/modules/upgrades/views.py:57
msgid "Settings unchanged"
msgstr ""
-#: plinth/modules/upgrades/views.py:101
+#: plinth/modules/upgrades/views.py:83
msgid "Upgrade process started."
msgstr ""
-#: plinth/modules/upgrades/views.py:104
+#: plinth/modules/upgrades/views.py:86
msgid "Starting upgrade failed."
msgstr ""
-#: plinth/modules/users/__init__.py:51
-msgid "Users and Groups"
-msgstr ""
-
-#: plinth/modules/users/__init__.py:54
+#: plinth/modules/users/__init__.py:37
msgid ""
"Create and managed user accounts. These accounts serve as centralized "
"authentication mechanism for most apps. Some apps further require a user "
"account to be part of a group to authorize the user to access the app."
msgstr ""
-#: plinth/modules/users/__init__.py:59
+#: plinth/modules/users/__init__.py:42
#, python-brace-format
msgid ""
"Any user may login to {box_name} web interface to see a list of apps "
@@ -5401,33 +5498,37 @@ msgid ""
"group may alter apps or system settings."
msgstr ""
-#: plinth/modules/users/__init__.py:128
+#: plinth/modules/users/__init__.py:64
+msgid "Users and Groups"
+msgstr ""
+
+#: plinth/modules/users/__init__.py:115
#, python-brace-format
msgid "Check LDAP entry \"{search_item}\""
msgstr ""
-#: plinth/modules/users/forms.py:43
+#: plinth/modules/users/forms.py:28
msgid "Access to all services and system settings"
msgstr ""
-#: plinth/modules/users/forms.py:59
+#: plinth/modules/users/forms.py:44
msgid "Username is taken or is reserved."
msgstr ""
-#: plinth/modules/users/forms.py:87
+#: plinth/modules/users/forms.py:72
msgid "Enter a valid username."
msgstr ""
-#: plinth/modules/users/forms.py:93
+#: plinth/modules/users/forms.py:78
msgid ""
"Required. 150 characters or fewer. English letters, digits and @/./-/_ only."
msgstr ""
-#: plinth/modules/users/forms.py:106 plinth/modules/users/forms.py:222
+#: plinth/modules/users/forms.py:91 plinth/modules/users/forms.py:207
msgid "Permissions"
msgstr ""
-#: plinth/modules/users/forms.py:109
+#: plinth/modules/users/forms.py:94
msgid ""
"Select which services should be available to the new user. The user will be "
"able to log in to services that support single sign-on through LDAP, if they "
@@ -5436,187 +5537,182 @@ msgid ""
"SSH and have administrative privileges (sudo)."
msgstr ""
-#: plinth/modules/users/forms.py:148 plinth/modules/users/forms.py:372
+#: plinth/modules/users/forms.py:133 plinth/modules/users/forms.py:357
msgid "Creating LDAP user failed."
msgstr ""
-#: plinth/modules/users/forms.py:159
+#: plinth/modules/users/forms.py:144
#, python-brace-format
msgid "Failed to add new user to {group} group."
msgstr ""
-#: plinth/modules/users/forms.py:173
+#: plinth/modules/users/forms.py:158
msgid "Authorized SSH Keys"
msgstr ""
-#: plinth/modules/users/forms.py:175
+#: plinth/modules/users/forms.py:160
msgid ""
"Setting an SSH public key will allow this user to securely log in to the "
"system without using a password. You may enter multiple keys, one on each "
"line. Blank lines and lines starting with # will be ignored."
msgstr ""
-#: plinth/modules/users/forms.py:259
+#: plinth/modules/users/forms.py:244
msgid "Renaming LDAP user failed."
msgstr ""
-#: plinth/modules/users/forms.py:271
+#: plinth/modules/users/forms.py:256
msgid "Failed to remove user from group."
msgstr ""
-#: plinth/modules/users/forms.py:282
+#: plinth/modules/users/forms.py:267
msgid "Failed to add user to group."
msgstr ""
-#: plinth/modules/users/forms.py:291
+#: plinth/modules/users/forms.py:276
msgid "Unable to set SSH keys."
msgstr ""
-#: plinth/modules/users/forms.py:306
+#: plinth/modules/users/forms.py:291
msgid "Failed to change user status."
msgstr ""
-#: plinth/modules/users/forms.py:314
+#: plinth/modules/users/forms.py:299
msgid "Cannot delete the only administrator in the system."
msgstr ""
-#: plinth/modules/users/forms.py:346
+#: plinth/modules/users/forms.py:331
msgid "Changing LDAP user password failed."
msgstr ""
-#: plinth/modules/users/forms.py:381
+#: plinth/modules/users/forms.py:366
msgid "Failed to add new user to admin group."
msgstr ""
-#: plinth/modules/users/forms.py:398
+#: plinth/modules/users/forms.py:383
msgid "Failed to restrict console access."
msgstr ""
-#: plinth/modules/users/forms.py:410
+#: plinth/modules/users/forms.py:395
msgid "User account created, you are now logged in"
msgstr ""
-#: plinth/modules/users/templates/users_change_password.html:26
+#: plinth/modules/users/templates/users_change_password.html:11
#, python-format
msgid "Change Password for %(username)s"
msgstr ""
-#: plinth/modules/users/templates/users_change_password.html:36
+#: plinth/modules/users/templates/users_change_password.html:21
msgid "Save Password"
msgstr ""
-#: plinth/modules/users/templates/users_create.html:32
-#: plinth/modules/users/templates/users_list.html:42
-#: plinth/modules/users/templates/users_list.html:44
-#: plinth/modules/users/views.py:57
+#: plinth/modules/users/templates/users_create.html:17
+#: plinth/modules/users/templates/users_list.html:27
+#: plinth/modules/users/templates/users_list.html:29
+#: plinth/modules/users/views.py:42
msgid "Create User"
msgstr ""
-#: plinth/modules/users/templates/users_delete.html:26
-#: plinth/modules/users/views.py:139
+#: plinth/modules/users/templates/users_delete.html:11
+#: plinth/modules/users/views.py:121
msgid "Delete User"
msgstr ""
-#: plinth/modules/users/templates/users_delete.html:29
+#: plinth/modules/users/templates/users_delete.html:14
#, python-format
msgid "Delete user %(username)s permanently?"
msgstr ""
-#: plinth/modules/users/templates/users_delete.html:38
+#: plinth/modules/users/templates/users_delete.html:23
#, python-format
msgid "Delete %(username)s"
msgstr ""
-#: plinth/modules/users/templates/users_firstboot.html:26
+#: plinth/modules/users/templates/users_firstboot.html:11
msgid "Administrator Account"
msgstr ""
-#: plinth/modules/users/templates/users_firstboot.html:29
+#: plinth/modules/users/templates/users_firstboot.html:14
msgid ""
"Choose a username and password to access this web interface. The password "
"can be changed later. This user will be granted administrative privileges. "
"Other users can be added later."
msgstr ""
-#: plinth/modules/users/templates/users_firstboot.html:42
+#: plinth/modules/users/templates/users_firstboot.html:27
msgid "Create Account"
msgstr ""
-#: plinth/modules/users/templates/users_list.html:38
-#: plinth/modules/users/views.py:74
+#: plinth/modules/users/templates/users_list.html:23
+#: plinth/modules/users/views.py:59
msgid "Users"
msgstr ""
-#: plinth/modules/users/templates/users_list.html:57
+#: plinth/modules/users/templates/users_list.html:42
#, python-format
msgid "Delete user %(username)s"
msgstr ""
-#: plinth/modules/users/templates/users_list.html:65
+#: plinth/modules/users/templates/users_list.html:50
#, python-format
msgid "Edit user %(username)s"
msgstr ""
-#: plinth/modules/users/templates/users_update.html:30
+#: plinth/modules/users/templates/users_update.html:15
#, python-format
msgid ""
"Use the change password form to "
"change the password."
msgstr ""
-#: plinth/modules/users/templates/users_update.html:42
-#: plinth/templates/language-selection.html:32
+#: plinth/modules/users/templates/users_update.html:27
+#: plinth/templates/language-selection.html:17
msgid "Save Changes"
msgstr ""
-#: plinth/modules/users/views.py:55
+#: plinth/modules/users/views.py:40
#, python-format
msgid "User %(username)s created."
msgstr ""
-#: plinth/modules/users/views.py:93
+#: plinth/modules/users/views.py:75
#, python-format
msgid "User %(username)s updated."
msgstr ""
-#: plinth/modules/users/views.py:94
+#: plinth/modules/users/views.py:76
msgid "Edit User"
msgstr ""
-#: plinth/modules/users/views.py:149
+#: plinth/modules/users/views.py:131
#, python-brace-format
msgid "User {user} deleted."
msgstr ""
-#: plinth/modules/users/views.py:156
+#: plinth/modules/users/views.py:138
msgid "Deleting LDAP user failed."
msgstr ""
-#: plinth/modules/users/views.py:165
+#: plinth/modules/users/views.py:147
msgid "Change Password"
msgstr ""
-#: plinth/modules/users/views.py:166
+#: plinth/modules/users/views.py:148
msgid "Password changed successfully."
msgstr ""
-#: plinth/modules/wireguard/__init__.py:38
-#: plinth/modules/wireguard/manifest.py:29
-msgid "WireGuard"
-msgstr ""
-
-#: plinth/modules/wireguard/__init__.py:43
+#: plinth/modules/wireguard/__init__.py:24
msgid "WireGuard is a fast, modern, secure VPN tunnel."
msgstr ""
-#: plinth/modules/wireguard/__init__.py:45
+#: plinth/modules/wireguard/__init__.py:26
#, python-brace-format
msgid ""
"It can be used to connect to a VPN provider which supports WireGuard, and to "
"route all outgoing traffic from {box_name} through the VPN."
msgstr ""
-#: plinth/modules/wireguard/__init__.py:49
+#: plinth/modules/wireguard/__init__.py:30
#, python-brace-format
msgid ""
"A second use case is to connect a mobile device to {box_name} while "
@@ -5624,59 +5720,64 @@ msgid ""
"securely relayed through {box_name}."
msgstr ""
-#: plinth/modules/wireguard/forms.py:47
+#: plinth/modules/wireguard/__init__.py:52
+#: plinth/modules/wireguard/manifest.py:14
+msgid "WireGuard"
+msgstr ""
+
+#: plinth/modules/wireguard/forms.py:32
msgid "Invalid key."
msgstr ""
-#: plinth/modules/wireguard/forms.py:76
-#: plinth/modules/wireguard/templates/wireguard.html:32
-#: plinth/modules/wireguard/templates/wireguard.html:89
-#: plinth/modules/wireguard/templates/wireguard_delete_server.html:38
+#: plinth/modules/wireguard/forms.py:61
+#: plinth/modules/wireguard/templates/wireguard.html:17
+#: plinth/modules/wireguard/templates/wireguard.html:74
+#: plinth/modules/wireguard/templates/wireguard_delete_server.html:23
msgid "Public Key"
msgstr ""
-#: plinth/modules/wireguard/forms.py:77
+#: plinth/modules/wireguard/forms.py:62
msgid ""
"Public key of the peer. Example: "
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs= ."
msgstr ""
-#: plinth/modules/wireguard/forms.py:85
+#: plinth/modules/wireguard/forms.py:70
msgid "Endpoint of the server"
msgstr ""
-#: plinth/modules/wireguard/forms.py:86
+#: plinth/modules/wireguard/forms.py:71
msgid ""
"Domain name and port in the form \"ip:port\". Example: demo.wireguard."
"com:12912 ."
msgstr ""
-#: plinth/modules/wireguard/forms.py:91
+#: plinth/modules/wireguard/forms.py:76
msgid "Public key of the server"
msgstr ""
-#: plinth/modules/wireguard/forms.py:92
+#: plinth/modules/wireguard/forms.py:77
msgid ""
"Provided by the server operator, a long string of characters. Example: "
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs= ."
msgstr ""
-#: plinth/modules/wireguard/forms.py:97
+#: plinth/modules/wireguard/forms.py:82
msgid "Client IP address provided by server"
msgstr ""
-#: plinth/modules/wireguard/forms.py:98
+#: plinth/modules/wireguard/forms.py:83
msgid ""
"IP address assigned to this machine on the VPN after connecting to the "
"endpoint. This value is usually provided by the server operator. Example: "
"192.168.0.10."
msgstr ""
-#: plinth/modules/wireguard/forms.py:104
+#: plinth/modules/wireguard/forms.py:89
msgid "Private key of this machine"
msgstr ""
-#: plinth/modules/wireguard/forms.py:105
+#: plinth/modules/wireguard/forms.py:90
msgid ""
"Optional. New public/private keys are generated if left blank. Public key "
"can then be provided to the server. This is the recommended way. However, "
@@ -5684,157 +5785,157 @@ msgid ""
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs= ."
msgstr ""
-#: plinth/modules/wireguard/forms.py:113
+#: plinth/modules/wireguard/forms.py:98
msgid "Pre-shared key"
msgstr ""
-#: plinth/modules/wireguard/forms.py:114
+#: plinth/modules/wireguard/forms.py:99
msgid ""
"Optional. A shared secret key provided by the server to add an additional "
"layer of security. Fill in only if provided. Example: "
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs=."
msgstr ""
-#: plinth/modules/wireguard/forms.py:120
+#: plinth/modules/wireguard/forms.py:105
msgid "Use this connection to send all outgoing traffic"
msgstr ""
-#: plinth/modules/wireguard/forms.py:122
+#: plinth/modules/wireguard/forms.py:107
msgid "Typically checked for a VPN service though which all traffic is sent."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:25
+#: plinth/modules/wireguard/templates/wireguard.html:10
msgid "As a Server"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:27
+#: plinth/modules/wireguard/templates/wireguard.html:12
msgid "Peers allowed to connect to this server:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:33
+#: plinth/modules/wireguard/templates/wireguard.html:18
msgid "Allowed IPs"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:34
-#: plinth/modules/wireguard/templates/wireguard.html:90
+#: plinth/modules/wireguard/templates/wireguard.html:19
+#: plinth/modules/wireguard/templates/wireguard.html:75
msgid "Last Connected Time"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:53
+#: plinth/modules/wireguard/templates/wireguard.html:38
#, python-format
msgid "No peers configured to connect to this %(box_name)s yet."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:62
+#: plinth/modules/wireguard/templates/wireguard.html:47
#, python-format
msgid "Public key for this %(box_name)s:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:68
+#: plinth/modules/wireguard/templates/wireguard.html:53
msgid "Not configured yet."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:72
+#: plinth/modules/wireguard/templates/wireguard.html:57
msgid "Add a new peer"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:76
-#: plinth/modules/wireguard/views.py:69
+#: plinth/modules/wireguard/templates/wireguard.html:61
+#: plinth/modules/wireguard/views.py:51
msgid "Add Allowed Client"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:79
+#: plinth/modules/wireguard/templates/wireguard.html:64
msgid "As a Client"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:81
+#: plinth/modules/wireguard/templates/wireguard.html:66
#, python-format
msgid "Servers that %(box_name)s will connect to:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:88
-#: plinth/modules/wireguard/templates/wireguard_delete_server.html:34
+#: plinth/modules/wireguard/templates/wireguard.html:73
+#: plinth/modules/wireguard/templates/wireguard_delete_server.html:19
msgid "Endpoint"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:111
+#: plinth/modules/wireguard/templates/wireguard.html:96
msgid "No connections to remote servers are configured yet."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:119
+#: plinth/modules/wireguard/templates/wireguard.html:104
msgid "Add a new server"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:123
-#: plinth/modules/wireguard/views.py:178
+#: plinth/modules/wireguard/templates/wireguard.html:108
+#: plinth/modules/wireguard/views.py:160
msgid "Add Connection to Server"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_add_client.html:34
+#: plinth/modules/wireguard/templates/wireguard_add_client.html:19
msgid "Add Client"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_delete_client.html:29
+#: plinth/modules/wireguard/templates/wireguard_delete_client.html:14
msgid "Are you sure that you want to delete this client?"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_delete_server.html:29
+#: plinth/modules/wireguard/templates/wireguard_delete_server.html:14
msgid "Are you sure that you want to delete this server?"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_edit_client.html:34
+#: plinth/modules/wireguard/templates/wireguard_edit_client.html:19
msgid "Update Client"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_edit_server.html:34
+#: plinth/modules/wireguard/templates/wireguard_edit_server.html:19
msgid "Update Connection"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:27
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:12
#, python-format
msgid ""
"%(box_name)s will allow this client to connect to it. Ensure that the client "
"is configured with the following information."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:35
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:20
msgid "Client public key:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:39
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:24
msgid "IP address to use for client:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:43
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:46
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:28
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:31
msgid "Pre-shared key:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:47
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:32
msgid "Server endpoints:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:55
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:42
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:40
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:27
msgid "Server public key:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:65
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:64
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:50
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:49
msgid "Data transmitted:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:69
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:68
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:54
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:53
msgid "Data received:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:73
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:72
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:58
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:57
msgid "Latest handshake:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:29
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:14
#, python-format
msgid ""
"%(box_name)s will attempt to reach a WireGuard server with the following "
@@ -5842,133 +5943,133 @@ msgid ""
"public key and IP address."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:38
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:23
msgid "Server endpoint:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:50
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:35
msgid "Public key of this machine:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:54
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:39
msgid "IP address of this machine:"
msgstr ""
-#: plinth/modules/wireguard/views.py:64
+#: plinth/modules/wireguard/views.py:46
msgid "Added new client."
msgstr ""
-#: plinth/modules/wireguard/views.py:79 plinth/modules/wireguard/views.py:138
+#: plinth/modules/wireguard/views.py:61 plinth/modules/wireguard/views.py:120
msgid "Client with public key already exists"
msgstr ""
-#: plinth/modules/wireguard/views.py:92
+#: plinth/modules/wireguard/views.py:74
msgid "Allowed Client"
msgstr ""
-#: plinth/modules/wireguard/views.py:114
+#: plinth/modules/wireguard/views.py:96
msgid "Updated client."
msgstr ""
-#: plinth/modules/wireguard/views.py:119
+#: plinth/modules/wireguard/views.py:101
msgid "Modify Client"
msgstr ""
-#: plinth/modules/wireguard/views.py:152
+#: plinth/modules/wireguard/views.py:134
msgid "Delete Allowed Client"
msgstr ""
-#: plinth/modules/wireguard/views.py:161
+#: plinth/modules/wireguard/views.py:143
msgid "Client deleted."
msgstr ""
-#: plinth/modules/wireguard/views.py:163
+#: plinth/modules/wireguard/views.py:145
msgid "Client not found"
msgstr ""
-#: plinth/modules/wireguard/views.py:173
+#: plinth/modules/wireguard/views.py:155
msgid "Added new server."
msgstr ""
-#: plinth/modules/wireguard/views.py:194
+#: plinth/modules/wireguard/views.py:176
msgid "Connection to Server"
msgstr ""
-#: plinth/modules/wireguard/views.py:212
+#: plinth/modules/wireguard/views.py:194
msgid "Updated server."
msgstr ""
-#: plinth/modules/wireguard/views.py:217
+#: plinth/modules/wireguard/views.py:199
msgid "Modify Connection to Server"
msgstr ""
-#: plinth/modules/wireguard/views.py:254
+#: plinth/modules/wireguard/views.py:236
msgid "Delete Connection to Server"
msgstr ""
-#: plinth/modules/wireguard/views.py:274
+#: plinth/modules/wireguard/views.py:256
msgid "Server deleted."
msgstr ""
-#: plinth/network.py:42
+#: plinth/network.py:27
msgid "PPPoE"
msgstr ""
-#: plinth/network.py:43
+#: plinth/network.py:28
msgid "Generic"
msgstr ""
-#: plinth/package.py:137
+#: plinth/package.py:122
msgid "Error during installation"
msgstr ""
-#: plinth/package.py:159
+#: plinth/package.py:144
msgid "installing"
msgstr ""
-#: plinth/package.py:161
+#: plinth/package.py:146
msgid "downloading"
msgstr ""
-#: plinth/package.py:163
+#: plinth/package.py:148
msgid "media change"
msgstr ""
-#: plinth/package.py:165
+#: plinth/package.py:150
#, python-brace-format
msgid "configuration file: {file}"
msgstr ""
-#: plinth/templates/403.html:25
+#: plinth/templates/403.html:10
msgid "403 Forbidden"
msgstr ""
-#: plinth/templates/403.html:29
+#: plinth/templates/403.html:14
#, python-format
msgid "You don't have permission to access %(request_path)s on this server."
msgstr ""
-#: plinth/templates/404.html:25
+#: plinth/templates/404.html:10
msgid "404"
msgstr ""
-#: plinth/templates/404.html:28
+#: plinth/templates/404.html:13
#, python-format
msgid "Requested page %(request_path)s was not found."
msgstr ""
-#: plinth/templates/404.html:34
+#: plinth/templates/404.html:19
msgid ""
"If you believe this missing page should exist, please file a bug at the "
"FreedomBox Service (Plinth) project issue tracker."
msgstr ""
-#: plinth/templates/500.html:25
+#: plinth/templates/500.html:10
msgid "500"
msgstr ""
-#: plinth/templates/500.html:29
+#: plinth/templates/500.html:14
#, python-format
msgid ""
"This is an internal error and not something you caused or can fix. Please "
@@ -5977,137 +6078,137 @@ msgid ""
"href=\"%(status_log_url)s\">status log to the bug report."
msgstr ""
-#: plinth/templates/app.html:47
+#: plinth/templates/app-header.html:22
+msgid "Installation"
+msgstr ""
+
+#: plinth/templates/app.html:32
#, python-format
msgid "Service %(service_name)s is running."
msgstr ""
-#: plinth/templates/app.html:52
+#: plinth/templates/app.html:37
#, python-format
msgid "Service %(service_name)s is not running."
msgstr ""
-#: plinth/templates/base.html:50
+#: plinth/templates/base.html:35
#, python-format
msgid "Core functionality and web interface for %(box_name)s"
msgstr ""
-#: plinth/templates/base.html:96
+#: plinth/templates/base.html:81
msgid "Toggle navigation"
msgstr ""
-#: plinth/templates/base.html:120 plinth/templates/base.html:123
+#: plinth/templates/base.html:105 plinth/templates/base.html:108
msgid "Home"
msgstr ""
-#: plinth/templates/base.html:128 plinth/templates/base.html:132
+#: plinth/templates/base.html:113 plinth/templates/base.html:117
msgid "Apps"
msgstr ""
-#: plinth/templates/base.html:137 plinth/templates/base.html:141
+#: plinth/templates/base.html:122 plinth/templates/base.html:126
msgid "System"
msgstr ""
-#: plinth/templates/base.html:173 plinth/templates/base.html:174
+#: plinth/templates/base.html:158 plinth/templates/base.html:159
msgid "Change password"
msgstr ""
-#: plinth/templates/base.html:181 plinth/templates/base.html:182
+#: plinth/templates/base.html:166 plinth/templates/base.html:167
msgid "Restart"
msgstr ""
-#: plinth/templates/base.html:187 plinth/templates/base.html:188
+#: plinth/templates/base.html:172 plinth/templates/base.html:173
msgid "Shut down"
msgstr ""
-#: plinth/templates/base.html:195 plinth/templates/base.html:196
-#: plinth/templates/base.html:220 plinth/templates/base.html:222
+#: plinth/templates/base.html:180 plinth/templates/base.html:181
+#: plinth/templates/base.html:205 plinth/templates/base.html:207
msgid "Log out"
msgstr ""
-#: plinth/templates/base.html:204 plinth/templates/base.html:207
+#: plinth/templates/base.html:189 plinth/templates/base.html:192
msgid "Select language"
msgstr ""
-#: plinth/templates/base.html:212 plinth/templates/base.html:214
+#: plinth/templates/base.html:197 plinth/templates/base.html:199
msgid "Log in"
msgstr ""
-#: plinth/templates/clients.html:32
+#: plinth/templates/clients.html:17
msgid "Web"
msgstr ""
-#: plinth/templates/clients.html:57
+#: plinth/templates/clients.html:42
msgid "Desktop"
msgstr ""
-#: plinth/templates/clients.html:68
+#: plinth/templates/clients.html:53
msgid "GNU/Linux"
msgstr ""
-#: plinth/templates/clients.html:70
+#: plinth/templates/clients.html:55
msgid "Windows"
msgstr ""
-#: plinth/templates/clients.html:72
+#: plinth/templates/clients.html:57
msgid "macOS"
msgstr ""
-#: plinth/templates/clients.html:88
+#: plinth/templates/clients.html:73
msgid "Mobile"
msgstr ""
-#: plinth/templates/clients.html:99
+#: plinth/templates/clients.html:84
msgid "Play Store"
msgstr ""
-#: plinth/templates/clients.html:101
+#: plinth/templates/clients.html:86
msgid "F-Droid"
msgstr ""
-#: plinth/templates/clients.html:103
+#: plinth/templates/clients.html:88
msgid "App Store"
msgstr ""
-#: plinth/templates/clients.html:119
+#: plinth/templates/clients.html:104
msgid "Package"
msgstr ""
-#: plinth/templates/clients.html:126
+#: plinth/templates/clients.html:111
msgid "Debian:"
msgstr ""
-#: plinth/templates/clients.html:129
+#: plinth/templates/clients.html:114
msgid "Homebrew:"
msgstr ""
-#: plinth/templates/clients.html:132
+#: plinth/templates/clients.html:117
msgid "RPM:"
msgstr ""
-#: plinth/templates/first_setup.html:39
+#: plinth/templates/first_setup.html:24
#, python-format
msgid ""
"Please wait for %(box_name)s to finish installation. You can start using "
"your %(box_name)s once it is done."
msgstr ""
-#: plinth/templates/header.html:36
-msgid "Installation"
-msgstr ""
-
-#: plinth/templates/index.html:37
+#: plinth/templates/index.html:22
#, python-format
msgid ""
"Enable some applications to add shortcuts to "
"this page."
msgstr ""
-#: plinth/templates/index.html:59
+#: plinth/templates/index.html:44
msgid "Configure »"
msgstr ""
-#: plinth/templates/index.html:115
+#: plinth/templates/index.html:100
#, python-format
msgid ""
"%(box_name)s, a Debian pure blend, is a 100%% free software self-hosting web "
@@ -6115,7 +6216,7 @@ msgid ""
"communication tools respecting your privacy and data ownership."
msgstr ""
-#: plinth/templates/index.html:124
+#: plinth/templates/index.html:109
#, python-format
msgid ""
"This portal is a part of the %(box_name)s web interface. %(box_name)s is "
@@ -6123,55 +6224,55 @@ msgid ""
"Version 3 or later."
msgstr ""
-#: plinth/templates/index.html:144
+#: plinth/templates/index.html:129
msgid "Homepage"
msgstr ""
-#: plinth/templates/index.html:147
+#: plinth/templates/index.html:132
msgid "Source Code"
msgstr ""
-#: plinth/templates/index.html:150
+#: plinth/templates/index.html:135
msgid "Donate"
msgstr ""
-#: plinth/templates/index.html:154
+#: plinth/templates/index.html:139
msgid "FreedomBox Foundation"
msgstr ""
-#: plinth/templates/index.html:161
+#: plinth/templates/index.html:146
msgid "IRC Chatroom"
msgstr ""
-#: plinth/templates/index.html:166
+#: plinth/templates/index.html:151
msgid "Mailing list"
msgstr ""
-#: plinth/templates/internal-zone.html:26
+#: plinth/templates/internal-zone.html:11
#, python-format
msgid "%(service_name)s is available only on internal networks."
msgstr ""
-#: plinth/templates/internal-zone.html:32
+#: plinth/templates/internal-zone.html:17
msgid "Currently there are no network interfaces configured as internal."
msgstr ""
-#: plinth/templates/internal-zone.html:34
+#: plinth/templates/internal-zone.html:19
#, python-format
msgid ""
"Currently the following network interfaces are configured as internal: "
"%(interface_list)s"
msgstr ""
-#: plinth/templates/notifications-dropdown.html:26
+#: plinth/templates/notifications-dropdown.html:11
msgid "Notifications"
msgstr ""
-#: plinth/templates/port-forwarding-info.html:23
+#: plinth/templates/port-forwarding-info.html:8
msgid "Port Forwarding"
msgstr ""
-#: plinth/templates/port-forwarding-info.html:26
+#: plinth/templates/port-forwarding-info.html:11
#, python-format
msgid ""
"If your FreedomBox is behind a router, you will need to set up port "
@@ -6179,62 +6280,62 @@ msgid ""
"%(service_name)s:"
msgstr ""
-#: plinth/templates/setup.html:51
+#: plinth/templates/setup.html:36
msgid "Install this application?"
msgstr ""
-#: plinth/templates/setup.html:55
+#: plinth/templates/setup.html:40
msgid "This application needs an update. Update now?"
msgstr ""
-#: plinth/templates/setup.html:66
+#: plinth/templates/setup.html:51
msgid ""
"Another installation or upgrade is already running. Please wait for a few "
"moments before trying again."
msgstr ""
-#: plinth/templates/setup.html:73
+#: plinth/templates/setup.html:58
msgid "This application is currently not available in your distribution."
msgstr ""
-#: plinth/templates/setup.html:87
+#: plinth/templates/setup.html:72
msgid "Install"
msgstr ""
-#: plinth/templates/setup.html:98
+#: plinth/templates/setup.html:83
msgid "Performing pre-install operation"
msgstr ""
-#: plinth/templates/setup.html:102
+#: plinth/templates/setup.html:87
msgid "Performing post-install operation"
msgstr ""
-#: plinth/templates/setup.html:107
+#: plinth/templates/setup.html:92
#, python-format
msgid "Installing %(package_names)s: %(status)s"
msgstr ""
-#: plinth/templates/setup.html:117
+#: plinth/templates/setup.html:102
#, python-format
msgid "%(percentage)s%% complete"
msgstr ""
-#: plinth/templates/toolbar.html:38
+#: plinth/templates/toolbar.html:23
msgid "Launch web client"
msgstr ""
-#: plinth/templates/toolbar.html:47
+#: plinth/templates/toolbar.html:32
msgid "Client Apps"
msgstr ""
-#: plinth/views.py:179
+#: plinth/views.py:189
msgid "Application enabled"
msgstr ""
-#: plinth/views.py:182
+#: plinth/views.py:192
msgid "Application disabled"
msgstr ""
-#: plinth/web_framework.py:190
+#: plinth/web_framework.py:107
msgid "Gujarati"
msgstr ""
diff --git a/plinth/locale/te/LC_MESSAGES/django.po b/plinth/locale/te/LC_MESSAGES/django.po
index 4155b4da1..b8280f50d 100644
--- a/plinth/locale/te/LC_MESSAGES/django.po
+++ b/plinth/locale/te/LC_MESSAGES/django.po
@@ -9,7 +9,7 @@ msgid ""
msgstr ""
"Project-Id-Version: FreedomBox UI\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2020-02-14 21:26+0200\n"
+"POT-Creation-Date: 2020-02-24 19:12-0500\n"
"PO-Revision-Date: 2020-02-10 05:50+0000\n"
"Last-Translator: Joseph Nuthalapati \n"
"Language-Team: Telugu user@host:~/path/to/repo/"
"i>"
msgstr ""
-#: plinth/modules/backups/forms.py:204
+#: plinth/modules/backups/forms.py:189
msgid "SSH server password"
msgstr "SSH సర్వర్ పాస్ వర్డ్"
-#: plinth/modules/backups/forms.py:205
+#: plinth/modules/backups/forms.py:190
msgid ""
"Password of the SSH Server.
SSH key-based authentication is not yet "
"possible."
msgstr ""
-#: plinth/modules/backups/forms.py:224
+#: plinth/modules/backups/forms.py:209
msgid "Remote backup repository already exists."
msgstr ""
-#: plinth/modules/backups/forms.py:230
+#: plinth/modules/backups/forms.py:215
msgid "Select verified SSH public key"
msgstr ""
-#: plinth/modules/backups/repository.py:48
+#: plinth/modules/backups/repository.py:33
msgid ""
"Connection refused - make sure you provided correct credentials and the "
"server is running."
msgstr ""
-#: plinth/modules/backups/repository.py:55
+#: plinth/modules/backups/repository.py:40
#, fuzzy
#| msgid "Connection Type"
msgid "Connection refused"
msgstr "అనుసంధాన రకం"
-#: plinth/modules/backups/repository.py:62
+#: plinth/modules/backups/repository.py:47
msgid "Repository not found"
msgstr ""
-#: plinth/modules/backups/repository.py:67
+#: plinth/modules/backups/repository.py:52
msgid "Incorrect encryption passphrase"
msgstr ""
-#: plinth/modules/backups/repository.py:72
+#: plinth/modules/backups/repository.py:57
msgid "SSH access denied"
msgstr ""
-#: plinth/modules/backups/repository.py:78
+#: plinth/modules/backups/repository.py:63
msgid "Repository path is neither empty nor is an existing backups repository."
msgstr ""
-#: plinth/modules/backups/repository.py:152
+#: plinth/modules/backups/repository.py:137
msgid "Existing repository is not encrypted."
msgstr ""
-#: plinth/modules/backups/repository.py:337
+#: plinth/modules/backups/repository.py:322
#, fuzzy, python-brace-format
#| msgid "{box_name} Manual"
msgid "{box_name} storage"
msgstr "{box_name} కరదీపిక"
-#: plinth/modules/backups/templates/backups.html:45
-#: plinth/modules/backups/views.py:77
+#: plinth/modules/backups/templates/backups.html:30
+#: plinth/modules/backups/views.py:60
#, fuzzy
#| msgid "Create Account"
msgid "Create a new backup"
msgstr "ఖాతా సృష్టించు"
-#: plinth/modules/backups/templates/backups.html:49
+#: plinth/modules/backups/templates/backups.html:34
#, fuzzy
#| msgid "Create Account"
msgid "Create Backup"
msgstr "ఖాతా సృష్టించు"
-#: plinth/modules/backups/templates/backups.html:52
+#: plinth/modules/backups/templates/backups.html:37
#, fuzzy
#| msgid "Name for new backup archive."
msgid "Upload and restore a backup archive"
msgstr "కొత్త బ్యాకప్ ఆర్కైవుకి పేరు."
-#: plinth/modules/backups/templates/backups.html:56
+#: plinth/modules/backups/templates/backups.html:41
#, fuzzy
#| msgid "Name for new backup archive."
msgid "Upload and Restore"
msgstr "కొత్త బ్యాకప్ ఆర్కైవుకి పేరు."
-#: plinth/modules/backups/templates/backups.html:59
+#: plinth/modules/backups/templates/backups.html:44
#, fuzzy
#| msgid "Existing custom services"
msgid "Add a backup location"
msgstr "ప్రస్థుత కస్టమ్ సేవలు"
-#: plinth/modules/backups/templates/backups.html:63
+#: plinth/modules/backups/templates/backups.html:48
#, fuzzy
#| msgid "Existing custom services"
msgid "Add Backup Location"
msgstr "ప్రస్థుత కస్టమ్ సేవలు"
-#: plinth/modules/backups/templates/backups.html:66
+#: plinth/modules/backups/templates/backups.html:51
#, fuzzy
#| msgid "Existing custom services"
msgid "Add a remote backup location"
msgstr "ప్రస్థుత కస్టమ్ సేవలు"
-#: plinth/modules/backups/templates/backups.html:70
+#: plinth/modules/backups/templates/backups.html:55
#, fuzzy
#| msgid "Existing custom services"
msgid "Add Remote Backup Location"
msgstr "ప్రస్థుత కస్టమ్ సేవలు"
-#: plinth/modules/backups/templates/backups.html:73
+#: plinth/modules/backups/templates/backups.html:58
msgid "Existing Backups"
msgstr "ఇప్పటికే ఉన్న బ్యాకప్లు"
-#: plinth/modules/backups/templates/backups_add_remote_repository.html:34
+#: plinth/modules/backups/templates/backups_add_remote_repository.html:19
#, python-format
msgid ""
"The credentials for this repository are stored on your %(box_name)s.
"
@@ -373,84 +373,85 @@ msgid ""
"if chosen, the encryption passphrase."
msgstr ""
-#: plinth/modules/backups/templates/backups_add_remote_repository.html:43
+#: plinth/modules/backups/templates/backups_add_remote_repository.html:28
#, fuzzy
#| msgid "Create Connection"
msgid "Create Location"
msgstr "అనుసంధానం సృష్టించు"
-#: plinth/modules/backups/templates/backups_add_repository.html:34
-#: plinth/modules/gitweb/views.py:70
+#: plinth/modules/backups/templates/backups_add_repository.html:19
+#: plinth/modules/gitweb/views.py:50
#, fuzzy
#| msgid "Create User"
msgid "Create Repository"
msgstr "వినియోగదారుని సృష్టించు"
-#: plinth/modules/backups/templates/backups_delete.html:27
+#: plinth/modules/backups/templates/backups_delete.html:12
#, fuzzy
#| msgid "Delete connection %(name)s permanently?"
msgid "Delete this archive permanently?"
msgstr "%(name)s అనుసంధానం శాశ్వతంగా తొలగించు ?"
-#: plinth/modules/backups/templates/backups_delete.html:33
-#: plinth/modules/ikiwiki/forms.py:30
-#: plinth/modules/networks/templates/connection_show.html:78
-#: plinth/modules/sharing/templates/sharing.html:52
+#: plinth/modules/backups/templates/backups_delete.html:18
+#: plinth/modules/ikiwiki/forms.py:15
+#: plinth/modules/networks/templates/connection_show.html:63
+#: plinth/modules/sharing/templates/sharing.html:37
msgid "Name"
msgstr "పేరు"
-#: plinth/modules/backups/templates/backups_delete.html:34
+#: plinth/modules/backups/templates/backups_delete.html:19
msgid "Time"
msgstr "సమయం"
-#: plinth/modules/backups/templates/backups_delete.html:51
+#: plinth/modules/backups/templates/backups_delete.html:36
#, fuzzy, python-format
#| msgid "Delete %(name)s"
msgid "Delete Archive %(name)s"
msgstr "%(name)s తొలగించు"
-#: plinth/modules/backups/templates/backups_form.html:35
-#: plinth/modules/gitweb/templates/gitweb_create_edit.html:35
-#: plinth/modules/networks/templates/router_configuration_update.html:34
-#: plinth/modules/pagekite/templates/pagekite_custom_services.html:47
-#: plinth/modules/sharing/templates/sharing_add_edit.html:35
+#: plinth/modules/backups/templates/backups_form.html:20
+#: plinth/modules/gitweb/templates/gitweb_create_edit.html:20
+#: plinth/modules/networks/templates/internet_connectivity_type.html:18
+#: plinth/modules/networks/templates/router_configuration_update.html:19
+#: plinth/modules/pagekite/templates/pagekite_custom_services.html:32
+#: plinth/modules/sharing/templates/sharing_add_edit.html:20
msgid "Submit"
msgstr "సమర్పించు"
-#: plinth/modules/backups/templates/backups_repository_remove.html:28
+#: plinth/modules/backups/templates/backups_repository_remove.html:13
msgid "Are you sure that you want to remove this repository?"
msgstr ""
-#: plinth/modules/backups/templates/backups_repository_remove.html:34
+#: plinth/modules/backups/templates/backups_repository_remove.html:19
msgid ""
"The remote repository will not be deleted. This just removes the repository "
"from the listing on the backup page, you can add it again later on."
msgstr ""
-#: plinth/modules/backups/templates/backups_repository_remove.html:46
+#: plinth/modules/backups/templates/backups_repository_remove.html:31
#, fuzzy
#| msgid "Documentation"
msgid "Remove Location"
msgstr "పత్రావళి"
-#: plinth/modules/backups/templates/backups_restore.html:30
+#: plinth/modules/backups/templates/backups_restore.html:15
#, fuzzy
#| msgid "Delete %(name)s"
msgid "Restore data from"
msgstr "%(name)s తొలగించు"
-#: plinth/modules/backups/templates/backups_restore.html:43
-#: plinth/modules/backups/views.py:171
+#: plinth/modules/backups/templates/backups_restore.html:28
+#: plinth/modules/backups/views.py:154
#, fuzzy
#| msgid "reStore"
msgid "Restore"
msgstr "పునరుద్ధరించు"
-#: plinth/modules/backups/templates/backups_restore.html:47
+#: plinth/modules/backups/templates/backups_restore.html:32
msgid "Restoring"
msgstr "పునరుద్ధరించబడుతోంది"
-#: plinth/modules/backups/templates/backups_upload.html:32
+#: plinth/modules/backups/templates/backups_upload.html:17
#, python-format
msgid ""
"\n"
@@ -462,43 +463,43 @@ msgid ""
" "
msgstr ""
-#: plinth/modules/backups/templates/backups_upload.html:42
-#: plinth/modules/help/templates/statuslog.html:38
+#: plinth/modules/backups/templates/backups_upload.html:27
+#: plinth/modules/help/templates/statuslog.html:23
msgid "Caution:"
msgstr "జాగ్రత్త:"
-#: plinth/modules/backups/templates/backups_upload.html:43
+#: plinth/modules/backups/templates/backups_upload.html:28
#, python-format
msgid ""
"You have %(max_filesize)s available to restore a backup. Exceeding this "
"limit can leave your %(box_name)s unusable."
msgstr ""
-#: plinth/modules/backups/templates/backups_upload.html:56
+#: plinth/modules/backups/templates/backups_upload.html:41
#, fuzzy
#| msgid "Download my profile"
msgid "Upload file"
msgstr "ఫైలు ఎగుమతించండి"
-#: plinth/modules/backups/templates/verify_ssh_hostkey.html:33
+#: plinth/modules/backups/templates/verify_ssh_hostkey.html:18
#, python-format
msgid ""
"Could not reach SSH host %(hostname)s. Please verify that the host is up and "
"accepting connections."
msgstr ""
-#: plinth/modules/backups/templates/verify_ssh_hostkey.html:43
+#: plinth/modules/backups/templates/verify_ssh_hostkey.html:28
#, python-format
msgid ""
"The authenticity of SSH host %(hostname)s could not be established. The host "
"advertises the following SSH public keys. Please verify any one of them."
msgstr ""
-#: plinth/modules/backups/templates/verify_ssh_hostkey.html:55
+#: plinth/modules/backups/templates/verify_ssh_hostkey.html:40
msgid "How to verify?"
msgstr "ఎలా ధృవీకరించాలి?"
-#: plinth/modules/backups/templates/verify_ssh_hostkey.html:60
+#: plinth/modules/backups/templates/verify_ssh_hostkey.html:45
#, fuzzy
msgid ""
"Run the following command on the SSH host machine. The output should match "
@@ -508,113 +509,105 @@ msgstr ""
"SSH హోస్ట్ మెషిన్ మీద దిగువ కమాండ్ రన్ చేయాలి. అవుట్ పుట్ ఇవ్వబడ్డ ఆప్షన్ ల్లో ఒకదానిని జతచేయాలి. సంబంధిత "
"ఫైలును ఎంచుకోవడం ద్వారా, rsa కు బదులుగా dsa, ecdsa, ed25519 మొదలైనవి కూడా ఉపయోగించవచ్చు."
-#: plinth/modules/backups/templates/verify_ssh_hostkey.html:75
+#: plinth/modules/backups/templates/verify_ssh_hostkey.html:60
msgid "Verify Host"
msgstr "హోస్ట్ ను నిర్ధారించండి"
-#: plinth/modules/backups/views.py:72
+#: plinth/modules/backups/views.py:55
msgid "Archive created."
msgstr "భాండాగారాము సృజింపబడింది."
-#: plinth/modules/backups/views.py:99
+#: plinth/modules/backups/views.py:82
msgid "Delete Archive"
msgstr "ఆర్కైవ్ తొలగించు"
-#: plinth/modules/backups/views.py:111
+#: plinth/modules/backups/views.py:94
msgid "Archive deleted."
msgstr "ఆర్కైవ్ తొలగించబడింది."
-#: plinth/modules/backups/views.py:124
+#: plinth/modules/backups/views.py:107
msgid "Upload and restore a backup"
msgstr "బ్యాకప్ను అప్లోడ్ చేసి పునరుద్ధరించండి"
-#: plinth/modules/backups/views.py:159
+#: plinth/modules/backups/views.py:142
msgid "Restored files from backup."
msgstr "బ్యాకప్ నుండి పునరుద్ధరించబడిన ఫైళ్లు."
-#: plinth/modules/backups/views.py:186
+#: plinth/modules/backups/views.py:169
msgid "No backup file found."
msgstr "ఏ బ్యాకప్ ఫైల్ దొరకలేదు."
-#: plinth/modules/backups/views.py:194
+#: plinth/modules/backups/views.py:177
msgid "Restore from uploaded file"
msgstr "అప్లోడ్ చేసిన ఫైల్ నుండి పునరుద్ధరించండి"
-#: plinth/modules/backups/views.py:251
+#: plinth/modules/backups/views.py:234
msgid "No additional disks available to add a repository."
msgstr ""
-#: plinth/modules/backups/views.py:259
+#: plinth/modules/backups/views.py:242
#, fuzzy
#| msgid "Create Snapshot"
msgid "Create backup repository"
msgstr "స్నాప్షాట్ని సృష్టించు"
-#: plinth/modules/backups/views.py:286
+#: plinth/modules/backups/views.py:269
msgid "Create remote backup repository"
msgstr ""
-#: plinth/modules/backups/views.py:305
+#: plinth/modules/backups/views.py:288
#, fuzzy
#| msgid "Add new introducer"
msgid "Added new remote SSH repository."
msgstr "కొత్త పరిచయకర్తని జోడించండి"
-#: plinth/modules/backups/views.py:327
+#: plinth/modules/backups/views.py:310
msgid "Verify SSH hostkey"
msgstr ""
-#: plinth/modules/backups/views.py:353
+#: plinth/modules/backups/views.py:336
msgid "SSH host already verified."
msgstr ""
-#: plinth/modules/backups/views.py:363
+#: plinth/modules/backups/views.py:346
msgid "SSH host verified."
msgstr ""
-#: plinth/modules/backups/views.py:377
+#: plinth/modules/backups/views.py:360
msgid "SSH host public key could not be verified."
msgstr ""
-#: plinth/modules/backups/views.py:379
+#: plinth/modules/backups/views.py:362
msgid "Authentication to remote server failed."
msgstr ""
-#: plinth/modules/backups/views.py:381
+#: plinth/modules/backups/views.py:364
#, fuzzy
#| msgid "Error installing application: {error}"
msgid "Error establishing connection to server: {}"
msgstr "అనువర్తనం స్థాపించుటలో దోషం: {error}"
-#: plinth/modules/backups/views.py:392
+#: plinth/modules/backups/views.py:375
msgid "Repository removed."
msgstr ""
-#: plinth/modules/backups/views.py:406
+#: plinth/modules/backups/views.py:389
msgid "Remove Repository"
msgstr ""
-#: plinth/modules/backups/views.py:415
+#: plinth/modules/backups/views.py:398
msgid "Repository removed. Backups were not deleted."
msgstr ""
-#: plinth/modules/backups/views.py:425
+#: plinth/modules/backups/views.py:408
msgid "Unmounting failed!"
msgstr ""
-#: plinth/modules/backups/views.py:440 plinth/modules/backups/views.py:444
+#: plinth/modules/backups/views.py:423 plinth/modules/backups/views.py:427
msgid "Mounting failed"
msgstr ""
-#: plinth/modules/bind/__init__.py:36
-msgid "BIND"
-msgstr "బైండ్"
-
-#: plinth/modules/bind/__init__.py:38
-msgid "Domain Name Server"
-msgstr "డొమైన్ పేరు సేవిక"
-
-#: plinth/modules/bind/__init__.py:45
+#: plinth/modules/bind/__init__.py:29
msgid ""
"BIND enables you to publish your Domain Name System (DNS) information on the "
"Internet, and to resolve DNS queries for your user devices on your network."
@@ -622,7 +615,7 @@ msgstr ""
"BIND ఇంటర్నెట్ లో మీ డొమైన్ నేమ్ సిస్టం (DNS) సమాచారాన్ని ప్రచురించడానికి, మరియు మీ నెట్వర్క్ లోని "
"వినియోగదారుల DNS విచారణలను పరిష్కరించడానికి అనుమతిస్తుంది."
-#: plinth/modules/bind/__init__.py:49
+#: plinth/modules/bind/__init__.py:33
#, python-brace-format
msgid ""
"Currently, on {box_name}, BIND is only used to resolve DNS queries for other "
@@ -633,39 +626,74 @@ msgstr ""
"పరిష్కరించడానికి బైండ్ మాత్రమే ఉపయోగించబడుతుంది. ఇది ఈ {box_name} నుంచి అంతర్జాల భాగస్వామ్యానికి "
"అననుకూలమైనది."
-#: plinth/modules/bind/forms.py:37
+#: plinth/modules/bind/__init__.py:82
+msgid "BIND"
+msgstr "బైండ్"
+
+#: plinth/modules/bind/__init__.py:83
+msgid "Domain Name Server"
+msgstr "డొమైన్ పేరు సేవిక"
+
+#: plinth/modules/bind/forms.py:22
msgid "Forwarders"
msgstr "బట్వాడ"
-#: plinth/modules/bind/forms.py:38
+#: plinth/modules/bind/forms.py:23
msgid ""
"A list DNS servers, separated by space, to which requests will be forwarded"
msgstr "ఒక DNS సర్వర్ల జాబితా, స్పేస్ ద్వారా వేరు చేయబడుతుంది, దీనిలో అభ్యర్థనలు ఫార్వార్డ్ చేయబడతాయి"
-#: plinth/modules/bind/forms.py:42
+#: plinth/modules/bind/forms.py:27
msgid "Enable DNSSEC"
msgstr "DNSSEC అమలుచెయ్యి"
-#: plinth/modules/bind/forms.py:43
+#: plinth/modules/bind/forms.py:28
msgid "Enable Domain Name System Security Extensions"
msgstr "డొమైన్ నేమ్ సిస్టం భద్రతా పొడిగింపు ని ప్రారంభించండి"
-#: plinth/modules/bind/views.py:58 plinth/modules/deluge/views.py:67
-#: plinth/modules/dynamicdns/views.py:171 plinth/modules/openvpn/views.py:153
-#: plinth/modules/shadowsocks/views.py:79
-#: plinth/modules/transmission/views.py:73
+#: plinth/modules/bind/templates/bind.html:11
+#, fuzzy
+msgid "Serving Domains"
+msgstr "సర్వర్ డొమైన్"
+
+#: plinth/modules/bind/templates/bind.html:16
+#: plinth/modules/ikiwiki/forms.py:12
+#: plinth/modules/networks/templates/connection_show.html:83
+#: plinth/modules/storage/templates/storage.html:28
+msgid "Type"
+msgstr "రకం"
+
+#: plinth/modules/bind/templates/bind.html:17
+#, fuzzy
+#| msgid "Domain Name"
+msgid "Domain Names"
+msgstr "డొమైను పేరు"
+
+#: plinth/modules/bind/templates/bind.html:18
+#, fuzzy
+#| msgid "Service"
+msgid "Serving"
+msgstr "సేవ"
+
+#: plinth/modules/bind/templates/bind.html:19
+#, fuzzy
+#| msgid "IP address"
+msgid "IP addresses"
+msgstr "IP చిరునామా"
+
+#: plinth/modules/bind/templates/bind.html:35
+#: plinth/modules/bind/templates/bind.html:37
+msgid "Refresh IP address and domains"
+msgstr ""
+
+#: plinth/modules/bind/views.py:73 plinth/modules/deluge/views.py:46
+#: plinth/modules/dynamicdns/views.py:150 plinth/modules/openvpn/views.py:134
+#: plinth/modules/shadowsocks/views.py:59
+#: plinth/modules/transmission/views.py:52
msgid "Configuration updated"
msgstr "ఆకృతీకరణ నవీకరించబడింది"
-#: plinth/modules/cockpit/__init__.py:45 plinth/modules/cockpit/manifest.py:27
-msgid "Cockpit"
-msgstr "కాక్పిట్"
-
-#: plinth/modules/cockpit/__init__.py:49
-msgid "Server Administration"
-msgstr "సేవిక పరిపాలాన"
-
-#: plinth/modules/cockpit/__init__.py:53
+#: plinth/modules/cockpit/__init__.py:32
#, python-brace-format
msgid ""
"Cockpit is a server manager that makes it easy to administer GNU/Linux "
@@ -677,7 +705,7 @@ msgstr ""
"చేస్తుంది. ఈ {box_name},లొ సాధారణంగా అవసరం లేని అనేక ఆధునిక ఫంక్షన్లకు నియంత్రణలు అందుబాటులో "
"ఉన్నాయి.కన్సోల్ ఆపరేషన్లకు వెబ్ ఆధారిత టెర్మినల్ కూడా అందుబాటులో ఉంది."
-#: plinth/modules/cockpit/__init__.py:59
+#: plinth/modules/cockpit/__init__.py:38
#, fuzzy, python-brace-format
#| msgid ""
#| "When enabled, Cockpit will be available from /"
@@ -694,65 +722,73 @@ msgstr ""
"ద్వారా పొందవచ్చు {box_name}.\n"
"అంగీకార సమాచారం మరియు సిస్టమ్ మార్చడం సామర్ధ్యాలు నిర్వాహక సమూహం చెందిన వినియోగదారులకు పరిమితం."
-#: plinth/modules/cockpit/__init__.py:63
+#: plinth/modules/cockpit/__init__.py:42
msgid ""
"Cockpit requires that you access it through a domain name. It will not work "
"when accessed using an IP address as part of the URL."
msgstr ""
-#: plinth/modules/cockpit/templates/cockpit.html:26
+#: plinth/modules/cockpit/__init__.py:59 plinth/modules/cockpit/manifest.py:12
+msgid "Cockpit"
+msgstr "కాక్పిట్"
+
+#: plinth/modules/cockpit/__init__.py:61
+msgid "Server Administration"
+msgstr "సేవిక పరిపాలాన"
+
+#: plinth/modules/cockpit/templates/cockpit.html:11
#, fuzzy
#| msgid "Access Point"
msgid "Access"
msgstr "ప్రాప్తి సూచి"
-#: plinth/modules/cockpit/templates/cockpit.html:29
+#: plinth/modules/cockpit/templates/cockpit.html:14
msgid "Cockpit will only work when accessed using the following URLs."
msgstr ""
-#: plinth/modules/config/__init__.py:37
-msgid "General Configuration"
-msgstr "సాధారణ ఆకృతీకరణ"
-
-#: plinth/modules/config/__init__.py:40
+#: plinth/modules/config/__init__.py:23
msgid ""
"Here you can set some general configuration options like hostname, domain "
"name, webserver home page etc."
msgstr ""
-#: plinth/modules/config/__init__.py:67 plinth/modules/dynamicdns/views.py:44
-#: plinth/modules/i2p/views.py:31 plinth/modules/names/templates/names.html:44
-#: plinth/modules/names/templates/names.html:58
-#: plinth/modules/snapshot/views.py:41
-#: plinth/modules/tahoe/templates/tahoe-pre-setup.html:39
+#: plinth/modules/config/__init__.py:50
+msgid "General Configuration"
+msgstr "సాధారణ ఆకృతీకరణ"
+
+#: plinth/modules/config/__init__.py:55 plinth/modules/dynamicdns/views.py:29
+#: plinth/modules/i2p/views.py:16 plinth/modules/names/templates/names.html:29
+#: plinth/modules/names/templates/names.html:43
+#: plinth/modules/snapshot/views.py:26
+#: plinth/modules/tahoe/templates/tahoe-pre-setup.html:24
msgid "Configure"
msgstr "ఆకృతీకరణ"
-#: plinth/modules/config/__init__.py:71 plinth/modules/config/forms.py:76
-#: plinth/modules/dynamicdns/forms.py:110
+#: plinth/modules/config/__init__.py:59 plinth/modules/config/forms.py:61
+#: plinth/modules/dynamicdns/forms.py:95
msgid "Domain Name"
msgstr "డొమైను పేరు"
-#: plinth/modules/config/forms.py:42 plinth/modules/config/forms.py:88
-#: plinth/modules/dynamicdns/forms.py:113
+#: plinth/modules/config/forms.py:27 plinth/modules/config/forms.py:73
+#: plinth/modules/dynamicdns/forms.py:98
msgid "Invalid domain name"
msgstr "డొమైన్ పేరు చెల్లదు"
-#: plinth/modules/config/forms.py:50
+#: plinth/modules/config/forms.py:35
#, fuzzy
#| msgid "Default"
msgid "Apache Default"
msgstr "అప్రమేయం"
-#: plinth/modules/config/forms.py:51
+#: plinth/modules/config/forms.py:36
msgid "FreedomBox Service (Plinth)"
msgstr ""
-#: plinth/modules/config/forms.py:63
+#: plinth/modules/config/forms.py:48
msgid "Hostname"
msgstr "అతిథ్యనామం"
-#: plinth/modules/config/forms.py:65
+#: plinth/modules/config/forms.py:50
#, python-brace-format
msgid ""
"Hostname is the local name by which other devices on the local network can "
@@ -764,11 +800,11 @@ msgstr ""
"ఇవ్వబడే పేరు. ఆది అక్షరంతో మొదలై అక్షారంతో ముగింపబడలి. ఆ మధ్యలో అంకెలు కానీ అక్షరాలు కానీ హైఫెన్(-) "
"మాత్రమే ఉండాలి. మొత్తం 63 అక్షరాలు లేదా అంత కన్నా తక్కువ ఉండవలెను."
-#: plinth/modules/config/forms.py:72
+#: plinth/modules/config/forms.py:57
msgid "Invalid hostname"
msgstr "ఆతిథ్యనామం చెల్లనిది"
-#: plinth/modules/config/forms.py:78
+#: plinth/modules/config/forms.py:63
#, python-brace-format
msgid ""
"Domain name is the global name by which other devices on the Internet can "
@@ -784,11 +820,11 @@ msgstr ""
"అక్షరాలు లేదా అంత కన్నా తక్కువే కలిగి ఉండాలి. మొత్తం డోమైన్ పేరు పొడవు ౨౫౩ అక్షరాలు లేదా అంత అత కంటే "
"తక్కువే ఉండాలి."
-#: plinth/modules/config/forms.py:93
+#: plinth/modules/config/forms.py:78
msgid "Webserver Home Page"
msgstr "వెబ్సర్వర్ హోమ్ పేజీ"
-#: plinth/modules/config/forms.py:95
+#: plinth/modules/config/forms.py:80
#, python-brace-format
msgid ""
"Choose the default page that must be served when someone visits your "
@@ -798,64 +834,56 @@ msgid ""
"explicitly type /plinth or /freedombox to reach {box_name} Service (Plinth)."
msgstr ""
-#: plinth/modules/config/forms.py:106
+#: plinth/modules/config/forms.py:91
msgid "Show advanced apps and features"
msgstr "అధునాతన అనువర్తనాలు మరియు విశేషాంశాలను చూపు"
-#: plinth/modules/config/forms.py:107
+#: plinth/modules/config/forms.py:92
msgid "Show apps and features that require more technical knowledge."
msgstr "మరింత సాంకేతిక పరిజ్ఞానం అవసరమయ్యే అనువర్తనాలు మరియు విశేషాంశాలను చూపించు."
-#: plinth/modules/config/views.py:65
+#: plinth/modules/config/views.py:47
#, python-brace-format
msgid "Error setting hostname: {exception}"
msgstr "ఆతిథ్యనామం అమర్చుటలో లోపం: {exception}"
-#: plinth/modules/config/views.py:68
+#: plinth/modules/config/views.py:50
msgid "Hostname set"
msgstr "ఆతిథ్యనామం అమర్చు"
-#: plinth/modules/config/views.py:77
+#: plinth/modules/config/views.py:59
#, python-brace-format
msgid "Error setting domain name: {exception}"
msgstr "అధికారక్షేత్రం పేరు అమర్పులోపం: {exception}"
-#: plinth/modules/config/views.py:80
+#: plinth/modules/config/views.py:62
msgid "Domain name set"
msgstr "అధికారక్షేత్రం పేరు అమర్పు"
-#: plinth/modules/config/views.py:88
+#: plinth/modules/config/views.py:70
#, python-brace-format
msgid "Error setting webserver home page: {exception}"
msgstr "వెబ్సర్వర్ హోమ్ పేజీని సెట్ చేయడంలో లోపం: {exception}"
-#: plinth/modules/config/views.py:91
+#: plinth/modules/config/views.py:73
msgid "Webserver home page set"
msgstr "వెబ్ సర్వర్ హోమ్ పేజీ సెట్ చేయబడింది"
-#: plinth/modules/config/views.py:99
+#: plinth/modules/config/views.py:81
#, fuzzy, python-brace-format
#| msgid "Error setting domain name: {exception}"
msgid "Error changing advanced mode: {exception}"
msgstr "అధికారక్షేత్రం పేరు అమర్పులోపం: {exception}"
-#: plinth/modules/config/views.py:104
+#: plinth/modules/config/views.py:86
msgid "Showing advanced apps and features"
msgstr "అధునాతన అనువర్తనాలు మరియు విశేషాంశాలు చూపబడుతున్నాయి"
-#: plinth/modules/config/views.py:107
+#: plinth/modules/config/views.py:89
msgid "Hiding advanced apps and features"
msgstr "అధునాతన అనువర్తనాలు మరియు విశేషాంశాలు దాచబడుతున్నాయి"
-#: plinth/modules/coquelicot/__init__.py:40
-msgid "Coquelicot"
-msgstr "కోక్లికో"
-
-#: plinth/modules/coquelicot/__init__.py:42 plinth/modules/samba/__init__.py:50
-msgid "File Sharing"
-msgstr "ఫైలు పంచుకొనుట"
-
-#: plinth/modules/coquelicot/__init__.py:45
+#: plinth/modules/coquelicot/__init__.py:24
#, fuzzy
#| msgid ""
#| "Coquelicot is a “one-click” file sharing web application with a focus on "
@@ -869,7 +897,7 @@ msgstr ""
"కోక్యూలికట్ అనేది వినియోగదారుని గోప్యతా కేంద్రీకృతమై \"ఒకే క్లిక్ విధానం\" తో నిర్మించబడిన ఫైల్స్ పంచుకునే వెబ్ "
"అప్లికేషన్. త్వరిత గతిన ఫైలు పంచుకోడానికి ఇది బాగా ఉపయోగపడుతుంది "
-#: plinth/modules/coquelicot/__init__.py:48
+#: plinth/modules/coquelicot/__init__.py:27
msgid ""
"This Coquelicot instance is exposed to the public but requires an upload "
"password to prevent unauthorized access. You can set a new upload password "
@@ -877,11 +905,19 @@ msgid ""
"password is \"test\"."
msgstr ""
-#: plinth/modules/coquelicot/forms.py:30
+#: plinth/modules/coquelicot/__init__.py:45
+msgid "Coquelicot"
+msgstr "కోక్లికో"
+
+#: plinth/modules/coquelicot/__init__.py:47 plinth/modules/samba/__init__.py:62
+msgid "File Sharing"
+msgstr "ఫైలు పంచుకొనుట"
+
+#: plinth/modules/coquelicot/forms.py:15
msgid "Upload Password"
msgstr "అప్లోడ్ పాస్వర్డ్"
-#: plinth/modules/coquelicot/forms.py:31
+#: plinth/modules/coquelicot/forms.py:16
msgid ""
"Set a new upload password for Coquelicot. Leave this field blank to keep the "
"current password."
@@ -889,39 +925,35 @@ msgstr ""
"కోక్లికోకు ఒక కొత్త అప్లోడ్ పాస్వర్డ్ ను సెట్ చెయ్యండి (అడ్మిన్). ప్రస్తుత అప్లోడ్ పాస్వర్డ్ ను ఉంచడానికి ఈ "
"ఫీల్డ్ను ఖాళీగా వదిలేయండి."
-#: plinth/modules/coquelicot/forms.py:35
+#: plinth/modules/coquelicot/forms.py:20
msgid "Maximum File Size (in MiB)"
msgstr "గరిష్ట ఫైలు పరిమాణము (MiBలో)"
-#: plinth/modules/coquelicot/forms.py:36
+#: plinth/modules/coquelicot/forms.py:21
msgid "Set the maximum size of the files that can be uploaded to Coquelicot."
msgstr "కోక్యూలికట్ లోకి అప్లోడ్ చేయగలిగిన గరిష్ట ఫైలు పరిమాణమును కేటాయించండి."
-#: plinth/modules/coquelicot/manifest.py:24
+#: plinth/modules/coquelicot/manifest.py:9
msgid "coquelicot"
msgstr "కోక్లికో"
-#: plinth/modules/coquelicot/views.py:58
+#: plinth/modules/coquelicot/views.py:37
msgid "Upload password updated"
msgstr "అప్లోడ్ చేయడం కోసమై కేటాయించిన రహస్యపదం నవీకరించబడింది"
-#: plinth/modules/coquelicot/views.py:61
+#: plinth/modules/coquelicot/views.py:40
msgid "Failed to update upload password"
msgstr "అప్లోడ్ చేయడం కోసమై కేటాయించిన రహస్యపదం నవీకరించడంలో వైఫల్యం"
-#: plinth/modules/coquelicot/views.py:69
+#: plinth/modules/coquelicot/views.py:48
msgid "Maximum file size updated"
msgstr "గరిష్ట ఫైలు పరిమాణం నవీకరించబడింది"
-#: plinth/modules/coquelicot/views.py:72
+#: plinth/modules/coquelicot/views.py:51
msgid "Failed to update maximum file size"
msgstr "గరిష్ట ఫైలు పరిమాణము మార్చుట విఫలమయ్యెను"
-#: plinth/modules/datetime/__init__.py:39
-msgid "Date & Time"
-msgstr "తేదీ & సమయం"
-
-#: plinth/modules/datetime/__init__.py:42
+#: plinth/modules/datetime/__init__.py:25
msgid ""
"Network time server is a program that maintains the system time in "
"synchronization with servers on the Internet."
@@ -929,48 +961,43 @@ msgstr ""
"నెట్వర్క్ టైమ్ సర్వర్ మీ కంప్యూటర్ లోని సమయాన్ని ఇంటర్నెట్లో ఉన్న సమయానికి సమకాలీకరించడానికి ఉపయోగపడే ఒక "
"ప్రోగ్రాం."
-#: plinth/modules/datetime/__init__.py:97
+#: plinth/modules/datetime/__init__.py:42
+msgid "Date & Time"
+msgstr "తేదీ & సమయం"
+
+#: plinth/modules/datetime/__init__.py:85
msgid "Time synchronized to NTP server"
msgstr ""
-#: plinth/modules/datetime/forms.py:35
+#: plinth/modules/datetime/forms.py:20
msgid "Time Zone"
msgstr "సమయమండలం"
-#: plinth/modules/datetime/forms.py:36
+#: plinth/modules/datetime/forms.py:21
msgid ""
"Set your time zone to get accurate timestamps. This will set the system-wide "
"time zone."
msgstr ""
"ఖచ్ఛితమైన సమయముద్ర పొందుటకు మీ సమయమండలాన్ని అమర్చండి. ఇది వ్యవస్థాపరమైన సమయ మండలాన్ని అమరుస్తుంది."
-#: plinth/modules/datetime/forms.py:47
+#: plinth/modules/datetime/forms.py:32
msgid "-- no time zone set --"
msgstr "-- ఏ సమయమండలం అమర్చలేదు --"
-#: plinth/modules/datetime/views.py:64
+#: plinth/modules/datetime/views.py:45
#, python-brace-format
msgid "Error setting time zone: {exception}"
msgstr "సమయమండలం అమర్పులోపం: {exception}"
-#: plinth/modules/datetime/views.py:67
+#: plinth/modules/datetime/views.py:48
msgid "Time zone set"
msgstr "సమయమండలం ఏర్పాటు చేయబడినది"
-#: plinth/modules/deluge/__init__.py:39 plinth/modules/deluge/manifest.py:24
-msgid "Deluge"
-msgstr "డెలూజ్"
-
-#: plinth/modules/deluge/__init__.py:43
-#: plinth/modules/transmission/__init__.py:45
-msgid "BitTorrent Web Client"
-msgstr "బిట్ టోరెంట్ క్లైంట్"
-
-#: plinth/modules/deluge/__init__.py:46
+#: plinth/modules/deluge/__init__.py:25
msgid "Deluge is a BitTorrent client that features a Web UI."
msgstr "డీలడ్జ్ అనేది జాల UI కలిగివున్న ఒక బిట్ టోరెంట్ కక్షిదారు."
-#: plinth/modules/deluge/__init__.py:47
+#: plinth/modules/deluge/__init__.py:26
#, fuzzy
#| msgid ""
#| "When enabled, the Deluge web client will be available from %(domain_name)s. User IDs will "
@@ -1098,39 +1134,35 @@ msgstr ""
"మునుపటి podname తో నమోదైన వినియోగదారుల యొక్క మొత్తం డేటా అందుబాటులో
మీరు డయాస్పోరా.%(domain_name)s లు లో డయాస్పోరా *"
-#: plinth/modules/diaspora/templates/diaspora-pre-setup.html:58
-#: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:40
-#: plinth/modules/ejabberd/templates/ejabberd.html:58
-#: plinth/modules/i2p/templates/i2p.html:34
-#: plinth/modules/ikiwiki/templates/ikiwiki_create.html:33
-#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:62
-#: plinth/modules/snapshot/templates/snapshot.html:30
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:51
-#: plinth/modules/tahoe/templates/tahoe-pre-setup.html:58
-#: plinth/templates/app.html:77
+#: plinth/modules/diaspora/templates/diaspora-pre-setup.html:43
+#: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:25
+#: plinth/modules/ejabberd/templates/ejabberd.html:43
+#: plinth/modules/i2p/templates/i2p.html:19
+#: plinth/modules/ikiwiki/templates/ikiwiki_create.html:18
+#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:47
+#: plinth/modules/snapshot/templates/snapshot.html:15
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:35
+#: plinth/modules/tahoe/templates/tahoe-pre-setup.html:43
+#: plinth/templates/app.html:62
msgid "Update setup"
msgstr "అమరికను నవీకరించు"
-#: plinth/modules/diaspora/views.py:93 plinth/modules/ejabberd/views.py:66
-#: plinth/modules/matrixsynapse/views.py:108
-#: plinth/modules/mediawiki/views.py:79 plinth/modules/openvpn/views.py:155
-#: plinth/modules/tor/views.py:156 plinth/views.py:175
+#: plinth/modules/diaspora/views.py:76 plinth/modules/ejabberd/views.py:46
+#: plinth/modules/matrixsynapse/views.py:85
+#: plinth/modules/mediawiki/views.py:59 plinth/modules/openvpn/views.py:136
+#: plinth/modules/tor/views.py:137 plinth/views.py:185
msgid "Setting unchanged"
msgstr "మారకుండా అమర్చుతోంది"
-#: plinth/modules/diaspora/views.py:97
+#: plinth/modules/diaspora/views.py:80
msgid "User registrations enabled"
msgstr "వినియోగదారుల నమోదు అనుమతించబడినది"
-#: plinth/modules/diaspora/views.py:101
+#: plinth/modules/diaspora/views.py:84
msgid "User registrations disabled"
msgstr "కొత్త వినియోగదారుల నమోదు నిలిపివేయబడినది"
-#: plinth/modules/dynamicdns/__init__.py:40
-msgid "Dynamic DNS Client"
-msgstr "గతిక DNS కక్షిదారు"
-
-#: plinth/modules/dynamicdns/__init__.py:44
+#: plinth/modules/dynamicdns/__init__.py:27
#, python-brace-format
msgid ""
"If your Internet provider changes your IP address periodically (i.e. every "
@@ -1141,7 +1173,7 @@ msgstr ""
"అప్పుడు ఇతరులు అంతర్జాలంలో మిమల్ని కనుగొనడానికి కష్టం ఆవతుంది. అప్పుడు వారు ఈ {box_name} "
"అందించే సేవలను కనుగోనలేరు."
-#: plinth/modules/dynamicdns/__init__.py:48
+#: plinth/modules/dynamicdns/__init__.py:31
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 "
@@ -1157,13 +1189,17 @@ msgstr ""
"అనుమతిస్తుంది. తరువాత, సర్వర్ కొత్త IP మీ DNS పేరు కేటాయిస్తుంది, మరియు ఇంటర్నెట్ నుండి ఎవరైనా మీ "
"DNS పేరు అడుగుతాడు ఉంటే, వారు మీ ప్రస్తుత ఐ.పీ. చిరునామాతో సమాధానం పొందుతారు."
-#: plinth/modules/dynamicdns/__init__.py:78
+#: plinth/modules/dynamicdns/__init__.py:56
+msgid "Dynamic DNS Client"
+msgstr "గతిక DNS కక్షిదారు"
+
+#: plinth/modules/dynamicdns/__init__.py:66
#, fuzzy
#| msgid "Domain Name"
msgid "Dynamic Domain Name"
msgstr "డొమైను పేరు"
-#: plinth/modules/dynamicdns/forms.py:42
+#: plinth/modules/dynamicdns/forms.py:27
msgid ""
"The Variables <User>, <Pass>, <Ip>, <Domain> may be "
"used within the URL. For details see the update URL templates of the example "
@@ -1172,7 +1208,7 @@ msgstr ""
"<వాడుకరి>, <పాస్>, <ఎల్.పి>, <డోమైన్> అనే వేరియబల్స్ మీ యూ.ఆర్.ఎల్ తో "
"వాడవచ్చును. వివరాల కోసం మీ యూ.ఆర్.ఎల్ నవీనికరణ టెంప్లేట్ ను చూడండి."
-#: plinth/modules/dynamicdns/forms.py:46
+#: plinth/modules/dynamicdns/forms.py:31
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 "
@@ -1181,7 +1217,7 @@ msgstr ""
"దయ చేసి మీ నవీకరణ ప్రోటొకాల్ ను ఎంచుకోండి. మీ ప్రదాత గ్నూడిప్ ప్రోటొకాల్ కు సహకరించకపోయిన లేదా మీ ప్రదాత "
"కింద జాబితా లో లేకపోయినా మీ ప్రదాత యొక్క నవీకరణ యూ.ఆర్.ఎల్ ను వాడగలరు."
-#: plinth/modules/dynamicdns/forms.py:51
+#: plinth/modules/dynamicdns/forms.py:36
msgid ""
"Please do not enter a URL here (like \"https://example.com/\") but only the "
"hostname of the GnuDIP server (like \"example.com\")."
@@ -1189,16 +1225,16 @@ msgstr ""
"దయ చేసి యూ.ఆర్.ఎల్ (ఉ.దా \"ఏచ్.టి.టి.పి.ఎస్://ఎగ్స్యాంపల్.కామ్\") ను తెలుపవద్దు కానీ కేవలం అతిధ్య "
"పేరును (ఉ.దా \"ఎగ్స్యాంపల్.కామ్\") మాత్రమే తెలుపండి."
-#: plinth/modules/dynamicdns/forms.py:55
+#: plinth/modules/dynamicdns/forms.py:40
#, python-brace-format
msgid "The public domain name you want to use to reach your {box_name}."
msgstr "మీ {box_name} ను చేరుకోవడానికి మీరు ఉపయోగించాలని కోరుకుంటున్న మీ పబ్లిక్ డొమైన్ పేరు."
-#: plinth/modules/dynamicdns/forms.py:58
+#: plinth/modules/dynamicdns/forms.py:43
msgid "Use this option if your provider uses self signed certificates."
msgstr "మీ అంతర్జాల సేవ ప్రదాత ఒకవేళ స్వీయ సంతక సర్టిఫికేట్లు ఉపయోగిస్తుంటే ఈ ఎంపికను ఉపయోగించండి."
-#: plinth/modules/dynamicdns/forms.py:61
+#: plinth/modules/dynamicdns/forms.py:46
msgid ""
"If this option is selected, your username and password will be used for HTTP "
"basic authentication."
@@ -1206,11 +1242,11 @@ msgstr ""
"ఈ ఎంపికను ఎంపిక చేస్తే, మీ వాడుకరి పేరు మరియు పాస్వర్డ్ హెచ్.టి.టి.పి ప్రాథమిక ప్రమాణీకరణ కోసం "
"ఉపయోగించబడుతుంది."
-#: plinth/modules/dynamicdns/forms.py:64
+#: plinth/modules/dynamicdns/forms.py:49
msgid "Leave this field empty if you want to keep your current password."
msgstr "మీరు మీ ప్రస్తుత పాస్వర్డ్ ను ఉంచుకోవాలనుకుంటే ఈ ఫీల్డ్ ఖాళీగా వదిలివేయండి."
-#: plinth/modules/dynamicdns/forms.py:67
+#: plinth/modules/dynamicdns/forms.py:52
#, python-brace-format
msgid ""
"Optional Value. If your {box_name} is not connected directly to the Internet "
@@ -1223,72 +1259,72 @@ msgstr ""
"ఎక్కడ నుండి వస్తుంది అనే ఐపీ మాత్రమే ఈ యూ.ఆర్.ఎల్ తిరిగివ్వాలి (ఉ.దా: ఏచ్.టి.టి.పి.://మైఐపి."
"డాటాసిస్టమ్స్24.దే)."
-#: plinth/modules/dynamicdns/forms.py:75
+#: plinth/modules/dynamicdns/forms.py:60
msgid "The username that was used when the account was created."
msgstr "మీరు మీ ఖాతాను సృష్టించినప్పుడు వాడిన వాడుకరి పేరు ."
-#: plinth/modules/dynamicdns/forms.py:83
+#: plinth/modules/dynamicdns/forms.py:68
msgid "Enable Dynamic DNS"
msgstr "చురుకైన DNS అమలుచెయ్యి"
-#: plinth/modules/dynamicdns/forms.py:86
+#: plinth/modules/dynamicdns/forms.py:71
msgid "Service Type"
msgstr "సేవా రకం"
-#: plinth/modules/dynamicdns/forms.py:91
+#: plinth/modules/dynamicdns/forms.py:76
msgid "GnuDIP Server Address"
msgstr "GnudIP సేవకం చిరునామా"
-#: plinth/modules/dynamicdns/forms.py:94
+#: plinth/modules/dynamicdns/forms.py:79
msgid "Invalid server name"
msgstr "సేవిక పేరు చెలదు"
-#: plinth/modules/dynamicdns/forms.py:97
+#: plinth/modules/dynamicdns/forms.py:82
msgid "Update URL"
msgstr "URL నవీకరణ"
-#: plinth/modules/dynamicdns/forms.py:102
+#: plinth/modules/dynamicdns/forms.py:87
msgid "Accept all SSL certificates"
msgstr "అన్ని ఎస్.ఎస్.ఎల్ సర్టిఫికెట్లు అంగీకరించు"
-#: plinth/modules/dynamicdns/forms.py:106
+#: plinth/modules/dynamicdns/forms.py:91
msgid "Use HTTP basic authentication"
msgstr "HTTP ప్రాథమిక ప్రమాణీకరణ ఉపయోగించు"
-#: plinth/modules/dynamicdns/forms.py:116 plinth/modules/networks/forms.py:217
+#: plinth/modules/dynamicdns/forms.py:101 plinth/modules/networks/forms.py:199
msgid "Username"
msgstr "వినియోగి పేరు"
-#: plinth/modules/dynamicdns/forms.py:119 plinth/modules/networks/forms.py:218
-#: plinth/modules/shadowsocks/forms.py:60
+#: plinth/modules/dynamicdns/forms.py:104 plinth/modules/networks/forms.py:200
+#: plinth/modules/shadowsocks/forms.py:45
msgid "Password"
msgstr "రహస్యపదం"
-#: plinth/modules/dynamicdns/forms.py:123 plinth/modules/networks/forms.py:220
+#: plinth/modules/dynamicdns/forms.py:108 plinth/modules/networks/forms.py:202
msgid "Show password"
msgstr "రహస్యపదం కనబర్చు"
-#: plinth/modules/dynamicdns/forms.py:127
+#: plinth/modules/dynamicdns/forms.py:112
msgid "URL to look up public IP"
msgstr "పబ్లిక్ IP చూసేందుకు URL"
-#: plinth/modules/dynamicdns/forms.py:151
+#: plinth/modules/dynamicdns/forms.py:136
msgid "Please provide an update URL or a GnuDIP server address"
msgstr "దయచేసి నవీకరణ యూ.ఆర్.ఎల్ ను లేక ఒక GnuDIP సేవిక ఐ.పీ చిరునామాను అందించండి"
-#: plinth/modules/dynamicdns/forms.py:156
+#: plinth/modules/dynamicdns/forms.py:141
msgid "Please provide a GnuDIP username"
msgstr "దయచేసి గ్నూ.డిప్ వాడుకరిపేరుని అందించండి"
-#: plinth/modules/dynamicdns/forms.py:160
+#: plinth/modules/dynamicdns/forms.py:145
msgid "Please provide a GnuDIP domain name"
msgstr "గ్నూ.డిప్ డోమైన్ పేరును దయచేసి అందించండి"
-#: plinth/modules/dynamicdns/forms.py:165
+#: plinth/modules/dynamicdns/forms.py:150
msgid "Please provide a password"
msgstr "ఒక రహస్యపదం అందించండి దయచేసి"
-#: plinth/modules/dynamicdns/templates/dynamicdns.html:27
+#: plinth/modules/dynamicdns/templates/dynamicdns.html:12
msgid ""
"If you are looking for a free dynamic DNS account, you may find a free "
"GnuDIP service at 3 freedns.afraid.org 4 ఉచిత నవీకరణ URL ఆధారిత సేవలు "
"కనుగొనవచ్చు."
-#: plinth/modules/dynamicdns/templates/dynamicdns.html:38
+#: plinth/modules/dynamicdns/templates/dynamicdns.html:23
#, python-format
msgid ""
"If your %(box_name)s is connected behind a NAT router, don't forget to add "
@@ -1313,7 +1349,7 @@ msgstr ""
"పి) మరియి టిసి.పి పోర్టు ౪౪౩ (హెచ్.టి.టి.పి.ఎస్) ప్రామాణిక పోర్ట్లకు పోర్ట్ ఫార్వర్డింగ్ను జోడించడం "
"మర్చిపోకండి."
-#: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:30
+#: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:15
msgid ""
"You have disabled Javascript. Dynamic form mode is disabled and some helper "
"functions may not work (but the main functionality should work)."
@@ -1321,11 +1357,11 @@ msgstr ""
"మీరు జావాస్క్రిప్ట్ ను పని చేయకుండా చేశారు. చలనశిల ఫొరము స్థితి మరియు కొన్ని సహాయక కార్యక్రమాలు పని "
"చేయవు (కానీ ప్రధాన కార్యాచరణ పని చేయాలి)."
-#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:24
+#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:9
msgid "NAT type"
msgstr "NAT రకం"
-#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:28
+#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:13
msgid ""
"NAT type was not detected yet. If you do not provide an \"IP Check URL\", we "
"will not detect a NAT type."
@@ -1333,11 +1369,11 @@ msgstr ""
"ఎన్.ఏ.టి రకము ఇంకా గుర్తింపబడలేదు. మీరు ఐ.పి తనిఖీ యూ.ఆర్.ఎల్ ఇవ్వకపోతే మేము ఎన్.ఏ.టి రకమును "
"గుర్తింపము."
-#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:34
+#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:19
msgid "Direct connection to the Internet."
msgstr "అంతర్జాలానికి నేరు బంధం."
-#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:36
+#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:21
#, fuzzy, python-format
msgid ""
"Behind NAT. This means that Dynamic DNS service will poll the \"URL to look "
@@ -1350,48 +1386,39 @@ msgstr ""
"కాదు) ఎన్నిక చేస్తాము. కేసు పాలిపోయిన ఐపీ మార్పులు, మీ DNS ఎంట్రీ నవీకరించబడింది వరకు% వరకు "
"ఉండవచ్చు %(టైమర్)s 1 నిమిషాల."
-#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:48
+#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:33
msgid "Last update"
msgstr "చివరి నవీకరణ"
-#: plinth/modules/dynamicdns/views.py:41 plinth/modules/help/__init__.py:59
-#: plinth/templates/help-menu.html:61 plinth/templates/help-menu.html:62
+#: plinth/modules/dynamicdns/views.py:26 plinth/modules/help/__init__.py:49
+#: plinth/templates/help-menu.html:46 plinth/templates/help-menu.html:47
msgid "About"
msgstr "గురించి"
-#: plinth/modules/dynamicdns/views.py:47
-#: plinth/modules/firewall/templates/firewall.html:25
-#: plinth/modules/firewall/templates/firewall.html:45
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:38
-#: plinth/modules/networks/templates/connection_show.html:261
-#: plinth/modules/openvpn/templates/openvpn.html:39
-#: plinth/modules/openvpn/templates/openvpn.html:60
-#: plinth/modules/tor/templates/tor.html:37
-#: plinth/modules/tor/templates/tor.html:51
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:61
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:60
-#: plinth/templates/app.html:42
+#: plinth/modules/dynamicdns/views.py:32
+#: plinth/modules/firewall/templates/firewall.html:10
+#: plinth/modules/firewall/templates/firewall.html:30
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:23
+#: plinth/modules/networks/templates/connection_show.html:246
+#: plinth/modules/openvpn/templates/openvpn.html:24
+#: plinth/modules/openvpn/templates/openvpn.html:45
+#: plinth/modules/tor/templates/tor.html:22
+#: plinth/modules/tor/templates/tor.html:36
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:46
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:45
+#: plinth/templates/app.html:27
msgid "Status"
msgstr "స్థితి"
-#: plinth/modules/dynamicdns/views.py:79
+#: plinth/modules/dynamicdns/views.py:62
msgid "Configure Dynamic DNS"
msgstr "చురుకైనDNS ఆకృతీకరించు"
-#: plinth/modules/dynamicdns/views.py:105
+#: plinth/modules/dynamicdns/views.py:86
msgid "Dynamic DNS Status"
msgstr "చలనశీల డి.ఎన్.ఎస్ స్థితి"
-#: plinth/modules/ejabberd/__init__.py:50
-msgid "ejabberd"
-msgstr "ఈజాబ్బర్డి"
-
-#: plinth/modules/ejabberd/__init__.py:54
-#: plinth/modules/matrixsynapse/__init__.py:52
-msgid "Chat Server"
-msgstr "కబుర్ల సేవిక"
-
-#: plinth/modules/ejabberd/__init__.py:57
+#: plinth/modules/ejabberd/__init__.py:36
msgid ""
"XMPP is an open and standardized communication protocol. Here you can run "
"and configure your XMPP server, called ejabberd."
@@ -1399,7 +1426,7 @@ msgstr ""
"XMPP ఓపెన్ మరియు ప్రామాణికమైన కమ్యూనికేషన్ ప్రోటోకాల్. ఇక్కడ మీరు మీ XMPP సర్వర్ ని రూపకరణ మరియు "
"అమలు చేయగలరు ejabberd అని ఆకృతీకరించవచ్చు."
-#: plinth/modules/ejabberd/__init__.py:60
+#: plinth/modules/ejabberd/__init__.py:39
#, fuzzy, python-brace-format
#| msgid ""
#| "To actually communicate, you can use the web client or any other XMPP క్లయింట్ ఉపయోగించవచ్చు."
-#: plinth/modules/ejabberd/forms.py:32
+#: plinth/modules/ejabberd/__init__.py:70
+msgid "ejabberd"
+msgstr "ఈజాబ్బర్డి"
+
+#: plinth/modules/ejabberd/__init__.py:71
+#: plinth/modules/matrixsynapse/__init__.py:68
+msgid "Chat Server"
+msgstr "కబుర్ల సేవిక"
+
+#: plinth/modules/ejabberd/forms.py:17
msgid "Enable Message Archive Management"
msgstr "ప్రాచీన సందేశ నిర్వహణ ప్రారంభించండి"
-#: plinth/modules/ejabberd/forms.py:34
+#: plinth/modules/ejabberd/forms.py:19
#, python-brace-format
msgid ""
"If enabled, your {box_name} will store chat message histories. This allows "
@@ -1430,15 +1466,15 @@ msgstr ""
"సంభాషణల సమకాలీకరణను అనుమతిస్తుంది మరియు బహుళ వినియోగదారు చాట్ రూమ్ చరిత్రను చదవగలదు. చరిత్రలు "
"సాదా టెక్స్ట్ లేదా గుప్తీకరించబడినాయినా లేదో క్లయింట్ సెట్టింగ్లపై ఆధారపడి ఉంటుంది."
-#: plinth/modules/ejabberd/manifest.py:26
+#: plinth/modules/ejabberd/manifest.py:11
msgid "Conversations"
msgstr "కాన్వర్సేషన్స్"
-#: plinth/modules/ejabberd/manifest.py:40
+#: plinth/modules/ejabberd/manifest.py:25
msgid "Xabber"
msgstr "ఎక్సాబ్బర్"
-#: plinth/modules/ejabberd/manifest.py:42
+#: plinth/modules/ejabberd/manifest.py:27
msgid ""
"Open source Jabber (XMPP) client with multi-account support and clean and "
"simple interface. "
@@ -1446,15 +1482,15 @@ msgstr ""
"అనేక ఖాతా సౌకర్యం మరియు సాధారణ మరియు సులభమైన సమన్వయము కలిగిన ఓపెన్ సోర్స్ జబ్బెర్ (ఎక్స్.ఎం.పి.పి) "
"క్లయింట్. "
-#: plinth/modules/ejabberd/manifest.py:57
+#: plinth/modules/ejabberd/manifest.py:42
msgid "Yaxim"
msgstr "యాక్సిమ్"
-#: plinth/modules/ejabberd/manifest.py:71
+#: plinth/modules/ejabberd/manifest.py:56
msgid "ChatSecure"
msgstr "చాట్ సెక్యూర్"
-#: plinth/modules/ejabberd/manifest.py:73
+#: plinth/modules/ejabberd/manifest.py:58
msgid ""
"ChatSecure is a free and open source messaging app that features OTR "
"encryption over XMPP. You can connect to an existing Google account, create "
@@ -1465,15 +1501,15 @@ msgstr ""
"ఉంది. మీరు ఇప్పటికే ఉన్న గూగుల్ ఖాతాకు కనెక్ట్ చేయవచ్చు, పబ్లిక్ XMPP సర్వర్లలో (టోర్ ద్వారా సహా) కొత్త "
"ఖాతాలను సృష్టించవచ్చు లేదా అదనపు భద్రత కోసం మీ స్వంత సర్వర్కు కనెక్ట్ చేయవచ్చు."
-#: plinth/modules/ejabberd/manifest.py:89
+#: plinth/modules/ejabberd/manifest.py:74
msgid "Dino"
msgstr "డినో"
-#: plinth/modules/ejabberd/manifest.py:101
+#: plinth/modules/ejabberd/manifest.py:86
msgid "Gajim"
msgstr "గజీం"
-#: plinth/modules/ejabberd/templates/ejabberd.html:33
+#: plinth/modules/ejabberd/templates/ejabberd.html:18
#, python-format
msgid ""
"Your XMPP server domain is set to %(domainname)s. User IDs will look "
@@ -1485,28 +1521,24 @@ msgstr ""
"కనిపిస్తాయి \n"
"మీరు మీ డొమైన్ను kaanfigar పేజీలో సెటప్ చేయవచ్చు."
-#: plinth/modules/ejabberd/templates/ejabberd.html:50
-#: plinth/modules/i2p/templates/i2p.html:26
-#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:30
-#: plinth/modules/snapshot/templates/snapshot.html:27
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:43
-#: plinth/templates/app.html:70
+#: plinth/modules/ejabberd/templates/ejabberd.html:35
+#: plinth/modules/i2p/templates/i2p.html:11
+#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:15
+#: plinth/modules/snapshot/templates/snapshot.html:12
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:27
+#: plinth/templates/app.html:55
msgid "Configuration"
msgstr "ఆకృతీకరణ"
-#: plinth/modules/ejabberd/views.py:78
+#: plinth/modules/ejabberd/views.py:58
msgid "Message Archive Management enabled"
msgstr "ప్రాచీన సందేశ నిర్వహణ ప్రారంభించబడింది"
-#: plinth/modules/ejabberd/views.py:82
+#: plinth/modules/ejabberd/views.py:62
msgid "Message Archive Management disabled"
msgstr "ప్రాచీన సందేశ నిర్వహణ నిలిపివేయబడింది"
-#: plinth/modules/firewall/__init__.py:39
-msgid "Firewall"
-msgstr "ఫైర్వాల్"
-
-#: plinth/modules/firewall/__init__.py:43
+#: plinth/modules/firewall/__init__.py:32
#, python-brace-format
msgid ""
"Firewall is a security system that controls the incoming and outgoing "
@@ -1516,24 +1548,28 @@ msgstr ""
"ఫైర్వాల్ అనేది మీ {box_name}కు జరిగే రవాణా రాకపోకలను నియంత్రించే ఒక భద్రతా వ్యవస్థ. దీనిని అనుమతించి "
"సరిగా ఆకృతీకరిస్తే అంతర్జాలం నుంచి భద్రతా ముప్పు తగ్గుతుంది."
-#: plinth/modules/firewall/components.py:130
+#: plinth/modules/firewall/__init__.py:63
+msgid "Firewall"
+msgstr "ఫైర్వాల్"
+
+#: plinth/modules/firewall/components.py:118
#, fuzzy, python-brace-format
#| msgid "Service discovery server is not running"
msgid "Port {name} ({details}) available for internal networks"
msgstr "సేవ ఆవిష్కరణ సేవికను నడుపటంలేదు"
-#: plinth/modules/firewall/components.py:138
+#: plinth/modules/firewall/components.py:126
#, fuzzy, python-brace-format
#| msgid "Service discovery server is not running"
msgid "Port {name} ({details}) available for external networks"
msgstr "సేవ ఆవిష్కరణ సేవికను నడుపటంలేదు"
-#: plinth/modules/firewall/components.py:143
+#: plinth/modules/firewall/components.py:131
#, python-brace-format
msgid "Port {name} ({details}) unavailable for external networks"
msgstr ""
-#: plinth/modules/firewall/templates/firewall.html:30
+#: plinth/modules/firewall/templates/firewall.html:15
#, python-format
msgid ""
"Firewall daemon is not running. Please run it. Firewall comes enabled by "
@@ -1546,42 +1582,42 @@ msgstr ""
"లేదా systemd systemctl ఒక వ్యవస్థ యొక్క సందర్భంలో ఉపయోగించి దీన్ని అమలు ఉండవచ్చు firewalld "
"మొదలు."
-#: plinth/modules/firewall/templates/firewall.html:43
+#: plinth/modules/firewall/templates/firewall.html:28
msgid "Show Ports"
msgstr "పోర్ట్స్ చూపించు"
-#: plinth/modules/firewall/templates/firewall.html:44
+#: plinth/modules/firewall/templates/firewall.html:29
msgid "Service/Port"
msgstr "సేవ/పోర్ట్"
-#: plinth/modules/firewall/templates/firewall.html:63
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:89
+#: plinth/modules/firewall/templates/firewall.html:48
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:74
msgid "Enabled"
msgstr "క్రియాశీలం"
-#: plinth/modules/firewall/templates/firewall.html:66
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:91
-#: plinth/modules/networks/forms.py:64 plinth/templates/cards.html:49
+#: plinth/modules/firewall/templates/firewall.html:51
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:76
+#: plinth/modules/networks/forms.py:47 plinth/templates/cards.html:34
msgid "Disabled"
msgstr "నిలిపివేయబడింది"
-#: plinth/modules/firewall/templates/firewall.html:78
+#: plinth/modules/firewall/templates/firewall.html:67
msgid "Permitted"
msgstr "అనుమతించబడిన"
-#: plinth/modules/firewall/templates/firewall.html:81
+#: plinth/modules/firewall/templates/firewall.html:70
msgid "Permitted (internal only)"
msgstr "అనుమతించబడిన (అంతర్గతంగా మాత్రమే)"
-#: plinth/modules/firewall/templates/firewall.html:84
+#: plinth/modules/firewall/templates/firewall.html:73
msgid "Permitted (external only)"
msgstr "అనుమతించబడిన(బాహ్యం మాత్రమే)"
-#: plinth/modules/firewall/templates/firewall.html:87
+#: plinth/modules/firewall/templates/firewall.html:76
msgid "Blocked"
msgstr "నిరోధించబడినవి"
-#: plinth/modules/firewall/templates/firewall.html:99
+#: plinth/modules/firewall/templates/firewall.html:88
msgid ""
"The operation of the firewall is automatic. When you enable a service it is "
"also permitted in the firewall and when you disable a service it is also "
@@ -1590,7 +1626,7 @@ msgstr ""
"ఫైర్వాల్ పనితీరు స్వయాంచలికమైనది. మీరు ఒక సేవను అనుమతిస్తే అది ఫైర్వాల్లోకి కూడా అనుమతిచబడుతుంది. అలాగే "
"మీరు ఒక సేవను ఆనుమతించకపోతే ఫైర్వాల్లో కూడా అది అనుమతింపబడదు."
-#: plinth/modules/first_boot/forms.py:29
+#: plinth/modules/first_boot/forms.py:14
#, python-brace-format
msgid ""
"Enter the secret generated during FreedomBox installation. This secret can "
@@ -1598,24 +1634,24 @@ msgid ""
"wizard-secret\" on your {box_name}"
msgstr ""
-#: plinth/modules/first_boot/forms.py:34
+#: plinth/modules/first_boot/forms.py:19
msgid "Firstboot Wizard Secret"
msgstr ""
-#: plinth/modules/first_boot/templates/firstboot_complete.html:26
+#: plinth/modules/first_boot/templates/firstboot_complete.html:11
msgid "Setup Complete!"
msgstr "అమరిక పూర్తయ్యింది!"
-#: plinth/modules/first_boot/templates/firstboot_complete.html:29
+#: plinth/modules/first_boot/templates/firstboot_complete.html:14
#, python-format
msgid "Without any apps, your %(box_name)s cannot do very much."
msgstr "ఏ అనువర్తనాలు లేకుండా, మీ%(box_name)s లు చాలా ఎక్కువ గా చేయలేవు."
-#: plinth/modules/first_boot/templates/firstboot_complete.html:36
+#: plinth/modules/first_boot/templates/firstboot_complete.html:21
msgid "Install Apps"
msgstr "అనువర్తనాలను నిక్షిప్తం చేద్దాం"
-#: plinth/modules/first_boot/templates/firstboot_complete.html:42
+#: plinth/modules/first_boot/templates/firstboot_complete.html:27
#, python-format
msgid ""
"You may want to check the network setup and "
@@ -1623,23 +1659,15 @@ msgid ""
msgstr ""
"మీరు నెట్వర్క్ సెటప్ తనిఖీ చేసి, అవసరమైతే దాన్ని సవరించవచ్చు."
-#: plinth/modules/first_boot/templates/firstboot_welcome.html:52
+#: plinth/modules/first_boot/templates/firstboot_welcome.html:37
msgid "Start Setup"
msgstr "అమరికను ప్రారంభించు"
-#: plinth/modules/first_boot/views.py:64
+#: plinth/modules/first_boot/views.py:49
msgid "Setup Complete"
msgstr "అమరక పూర్తయ్యింది"
-#: plinth/modules/gitweb/__init__.py:44 plinth/modules/gitweb/manifest.py:28
-msgid "Gitweb"
-msgstr ""
-
-#: plinth/modules/gitweb/__init__.py:48
-msgid "Simple Git Hosting"
-msgstr ""
-
-#: plinth/modules/gitweb/__init__.py:51
+#: plinth/modules/gitweb/__init__.py:28
msgid ""
"Git is a distributed version-control system for tracking changes in source "
"code during software development. Gitweb provides a web interface to Git "
@@ -1650,7 +1678,7 @@ msgid ""
"the world."
msgstr ""
-#: plinth/modules/gitweb/__init__.py:58
+#: plinth/modules/gitweb/__init__.py:35
#, fuzzy
msgid ""
"To learn more on how to use Git visit Git tutorial ని సందర్శించండి."
-#: plinth/modules/gitweb/__init__.py:64
+#: plinth/modules/gitweb/__init__.py:39
msgid "Read-write access to Git repositories"
msgstr ""
-#: plinth/modules/gitweb/forms.py:59
+#: plinth/modules/gitweb/__init__.py:56 plinth/modules/gitweb/manifest.py:13
+msgid "Gitweb"
+msgstr ""
+
+#: plinth/modules/gitweb/__init__.py:57
+msgid "Simple Git Hosting"
+msgstr ""
+
+#: plinth/modules/gitweb/forms.py:44
#, fuzzy
#| msgid "Invalid hostname"
msgid "Invalid repository URL."
msgstr "ఆతిథ్యనామం చెల్లనిది"
-#: plinth/modules/gitweb/forms.py:69
+#: plinth/modules/gitweb/forms.py:54
#, fuzzy
#| msgid "Invalid hostname"
msgid "Invalid repository name."
msgstr "ఆతిథ్యనామం చెల్లనిది"
-#: plinth/modules/gitweb/forms.py:77
+#: plinth/modules/gitweb/forms.py:62
msgid "Name of a new repository or URL to import an existing repository."
msgstr ""
-#: plinth/modules/gitweb/forms.py:83
+#: plinth/modules/gitweb/forms.py:68
msgid "Description of the repository"
msgstr ""
-#: plinth/modules/gitweb/forms.py:84 plinth/modules/gitweb/forms.py:88
+#: plinth/modules/gitweb/forms.py:69 plinth/modules/gitweb/forms.py:73
msgid "Optional, for displaying on Gitweb."
msgstr ""
-#: plinth/modules/gitweb/forms.py:86
+#: plinth/modules/gitweb/forms.py:71
msgid "Repository's owner name"
msgstr ""
-#: plinth/modules/gitweb/forms.py:91
+#: plinth/modules/gitweb/forms.py:76
#, fuzzy
#| msgid "Create User"
msgid "Private repository"
msgstr "వినియోగదారుని సృష్టించు"
-#: plinth/modules/gitweb/forms.py:92
+#: plinth/modules/gitweb/forms.py:77
msgid "Allow only authorized users to access this repository."
msgstr ""
-#: plinth/modules/gitweb/forms.py:113 plinth/modules/gitweb/forms.py:145
+#: plinth/modules/gitweb/forms.py:98 plinth/modules/gitweb/forms.py:130
#, fuzzy
msgid "A repository with this name already exists."
msgstr "ఈ సేవ ఇప్పటికే ఉంది"
-#: plinth/modules/gitweb/forms.py:126
+#: plinth/modules/gitweb/forms.py:111
#, fuzzy
#| msgid "Name of the share"
msgid "Name of the repository"
msgstr "షేర్ యొక్క పేరు"
-#: plinth/modules/gitweb/forms.py:130
+#: plinth/modules/gitweb/forms.py:115
#, fuzzy
#| msgid ""
#| "A lowercase alpha-numeric string that uniquely identifies a share. "
@@ -1720,141 +1756,141 @@ msgstr "షేర్ యొక్క పేరు"
msgid "An alpha-numeric string that uniquely identifies a repository."
msgstr "ప్రత్యేకంగా ఒక వాటాను గుర్తించే చిన్న అక్షర సంఖ్యా స్ట్రింగ్. ఉదాహరణ: media."
-#: plinth/modules/gitweb/manifest.py:36
+#: plinth/modules/gitweb/manifest.py:21
msgid "Git"
msgstr ""
-#: plinth/modules/gitweb/templates/gitweb_configure.html:46
+#: plinth/modules/gitweb/templates/gitweb_configure.html:31
#, fuzzy
#| msgid "Create User"
msgid "Manage Repositories"
msgstr "వినియోగదారుని సృష్టించు"
-#: plinth/modules/gitweb/templates/gitweb_configure.html:50
-#: plinth/modules/gitweb/templates/gitweb_configure.html:52
+#: plinth/modules/gitweb/templates/gitweb_configure.html:35
+#: plinth/modules/gitweb/templates/gitweb_configure.html:37
#, fuzzy
#| msgid "Create User"
msgid "Create repository"
msgstr "వినియోగదారుని సృష్టించు"
-#: plinth/modules/gitweb/templates/gitweb_configure.html:59
+#: plinth/modules/gitweb/templates/gitweb_configure.html:44
#, fuzzy
#| msgid "Tor relay port available"
msgid "No repositories available."
msgstr "టార్ రిలే పోర్ట్ అందుబాటులో ఉంది"
-#: plinth/modules/gitweb/templates/gitweb_configure.html:67
+#: plinth/modules/gitweb/templates/gitweb_configure.html:52
#, fuzzy, python-format
#| msgid "Delete user %(username)s"
msgid "Delete repository %(repo.name)s"
msgstr "వినియోగదారి %(username)s ను తొలగించు"
-#: plinth/modules/gitweb/templates/gitweb_configure.html:83
+#: plinth/modules/gitweb/templates/gitweb_configure.html:68
msgid "Cloning..."
msgstr ""
-#: plinth/modules/gitweb/templates/gitweb_configure.html:89
+#: plinth/modules/gitweb/templates/gitweb_configure.html:74
#, fuzzy, python-format
#| msgid "Go to site %(site)s"
msgid "Go to repository %(repo.name)s"
msgstr "ప్రదేశం కు వెళ్ళండి %(site)s"
-#: plinth/modules/gitweb/templates/gitweb_delete.html:27
+#: plinth/modules/gitweb/templates/gitweb_delete.html:12
#, fuzzy, python-format
#| msgid "Delete Wiki or Blog %(name)s"
msgid "Delete Git Repository %(name)s"
msgstr "వికీ లేదా బ్లాగ్ తొలగించు %(name)s"
-#: plinth/modules/gitweb/templates/gitweb_delete.html:33
+#: plinth/modules/gitweb/templates/gitweb_delete.html:18
#, fuzzy
#| msgid "Delete connection %(name)s permanently?"
msgid "Delete this repository permanently?"
msgstr "%(name)s అనుసంధానం శాశ్వతంగా తొలగించు ?"
-#: plinth/modules/gitweb/templates/gitweb_delete.html:42
-#: plinth/modules/ikiwiki/templates/ikiwiki_delete.html:44
+#: plinth/modules/gitweb/templates/gitweb_delete.html:27
+#: plinth/modules/ikiwiki/templates/ikiwiki_delete.html:29
#, python-format
msgid "Delete %(name)s"
msgstr "%(name)s తొలగించు"
-#: plinth/modules/gitweb/views.py:65
+#: plinth/modules/gitweb/views.py:45
msgid "Repository created."
msgstr ""
-#: plinth/modules/gitweb/views.py:87
+#: plinth/modules/gitweb/views.py:67
#, fuzzy
#| msgid "An error occurred during configuration."
msgid "An error occurred while creating the repository."
msgstr "అక్రుతీకరణలో ఒక పొరపాటు జరిగింది."
-#: plinth/modules/gitweb/views.py:100
+#: plinth/modules/gitweb/views.py:80
msgid "Repository edited."
msgstr ""
-#: plinth/modules/gitweb/views.py:105
+#: plinth/modules/gitweb/views.py:85
#, fuzzy
#| msgid "Create User"
msgid "Edit repository"
msgstr "వినియోగదారుని సృష్టించు"
-#: plinth/modules/gitweb/views.py:133 plinth/modules/searx/views.py:62
-#: plinth/modules/searx/views.py:73 plinth/modules/tor/views.py:178
+#: plinth/modules/gitweb/views.py:113 plinth/modules/searx/views.py:42
+#: plinth/modules/searx/views.py:53 plinth/modules/tor/views.py:159
msgid "An error occurred during configuration."
msgstr "అక్రుతీకరణలో ఒక పొరపాటు జరిగింది."
-#: plinth/modules/gitweb/views.py:154
+#: plinth/modules/gitweb/views.py:134
#, python-brace-format
msgid "{name} deleted."
msgstr "{name} తొలగించబడింది."
-#: plinth/modules/gitweb/views.py:158
+#: plinth/modules/gitweb/views.py:138
#, python-brace-format
msgid "Could not delete {name}: {error}"
msgstr "{name} ను తొలగించలేము: {error}"
-#: plinth/modules/help/__init__.py:40
+#: plinth/modules/help/__init__.py:30
msgid "Documentation"
msgstr "పత్రావళి"
-#: plinth/modules/help/__init__.py:43 plinth/modules/networks/forms.py:64
-#: plinth/modules/networks/forms.py:95 plinth/templates/help-menu.html:35
-#: plinth/templates/help-menu.html:36 plinth/templates/index.html:135
+#: plinth/modules/help/__init__.py:33 plinth/modules/networks/forms.py:47
+#: plinth/modules/networks/forms.py:77 plinth/templates/help-menu.html:20
+#: plinth/templates/help-menu.html:21 plinth/templates/index.html:120
msgid "Manual"
msgstr "కరదీపిక"
-#: plinth/modules/help/__init__.py:47 plinth/modules/help/help.py:58
-#: plinth/modules/help/templates/help_support.html:24
-#: plinth/templates/help-menu.html:42 plinth/templates/help-menu.html:43
+#: plinth/modules/help/__init__.py:37 plinth/modules/help/help.py:43
+#: plinth/modules/help/templates/help_support.html:9
+#: plinth/templates/help-menu.html:27 plinth/templates/help-menu.html:28
msgid "Get Support"
msgstr ""
-#: plinth/modules/help/__init__.py:51 plinth/modules/help/help.py:52
-#: plinth/modules/help/templates/help_feedback.html:24
-#: plinth/templates/help-menu.html:48 plinth/templates/help-menu.html:49
+#: plinth/modules/help/__init__.py:41 plinth/modules/help/help.py:37
+#: plinth/modules/help/templates/help_feedback.html:9
+#: plinth/templates/help-menu.html:33 plinth/templates/help-menu.html:34
msgid "Submit Feedback"
msgstr "అభిప్రాయాన్ని సమర్పించండి"
-#: plinth/modules/help/__init__.py:55 plinth/modules/help/help.py:46
-#: plinth/modules/help/templates/help_contribute.html:24
-#: plinth/templates/help-menu.html:54 plinth/templates/help-menu.html:55
+#: plinth/modules/help/__init__.py:45 plinth/modules/help/help.py:31
+#: plinth/modules/help/templates/help_contribute.html:9
+#: plinth/templates/help-menu.html:39 plinth/templates/help-menu.html:40
msgid "Contribute"
msgstr "సహకరించండి"
-#: plinth/modules/help/help.py:40
+#: plinth/modules/help/help.py:25
msgid "Documentation and FAQ"
msgstr "పత్రావళి మరియు తరచూ అడిగే ప్రశ్నలు"
-#: plinth/modules/help/help.py:66
+#: plinth/modules/help/help.py:51
#, python-brace-format
msgid "About {box_name}"
msgstr "{box_name} గురించి"
-#: plinth/modules/help/help.py:101
+#: plinth/modules/help/help.py:86
#, python-brace-format
msgid "{box_name} Manual"
msgstr "{box_name} కరదీపిక"
-#: plinth/modules/help/templates/help_about.html:32
+#: plinth/modules/help/templates/help_about.html:17
#, fuzzy, python-format
msgid ""
"%(box_name)s is a community project to develop, design and promote personal "
@@ -1868,7 +1904,7 @@ msgstr ""
"%(box_name)s వ్యక్తిగత మరియు స్వీయ సమాచార కార్యకలాపాలను నడుపుటకు రూపకల్పన చేయుటకు మరియు "
"అభివృద్ది"
-#: plinth/modules/help/templates/help_about.html:45
+#: plinth/modules/help/templates/help_about.html:30
msgid ""
"We live in a world where our use of the network is mediated by those who "
"often do not have our best interests at heart. By building software that "
@@ -1884,7 +1920,7 @@ msgstr ""
"పైన , నెట్వొర్క్ పైన తిరిగి అధికారాలు ఇవ్వదం వలన మనము ఇంతెర్నెట్ ను సంబంధిత వయ్క్థి-వ్యక్థి అర్చితెచ్తురె "
"కు ఇచిన వరిమి."
-#: plinth/modules/help/templates/help_about.html:58
+#: plinth/modules/help/templates/help_about.html:43
#, python-format
msgid ""
"There are a number of projects working to realize a future of distributed "
@@ -1894,7 +1930,7 @@ msgstr ""
"పంపిణీ సేవల భవిష్యత్తు గ్రహించడం కోసం పని చేస్తున్న ప్రాజెక్టులు చాలా ఉన్నాయి. వాటినన్నిటిని కలిపి ఒక "
"సౌలభ్యమైన ప్యాకేజీలో అందివ్వతమే %(box_name)s ధ్యేయం."
-#: plinth/modules/help/templates/help_about.html:66
+#: plinth/modules/help/templates/help_about.html:51
#, python-format
msgid ""
"For more information about the %(box_name)s project, see the %(box_name)s వికీ ను దర్శించండి."
-#: plinth/modules/help/templates/help_about.html:75
+#: plinth/modules/help/templates/help_about.html:60
msgid "Learn more »"
msgstr "మరింత తెలుసుకోండి »"
-#: plinth/modules/help/templates/help_about.html:78
+#: plinth/modules/help/templates/help_about.html:63
#, python-format
msgid "You are running %(os_release)s and %(box_name)s version %(version)s."
msgstr ""
"మీరు %(os_release)s మరియు %(box_name)s రూపాంతరం %(version)s ను నడుపుతున్నారు."
-#: plinth/modules/help/templates/help_about.html:83
+#: plinth/modules/help/templates/help_about.html:68
#, python-format
msgid "There is a new %(box_name)s version available."
msgstr "%(box_name)s యొక్క కొత్త వెర్షన్ అందుబాటులో ఉంది."
-#: plinth/modules/help/templates/help_about.html:87
+#: plinth/modules/help/templates/help_about.html:72
#, python-format
msgid "%(box_name)s is up to date."
msgstr "%(box_name)s తాజాగా ఉంది."
-#: plinth/modules/help/templates/help_about.html:94
+#: plinth/modules/help/templates/help_about.html:79
#, fuzzy
#| msgid "Security"
msgid "Security Notice"
msgstr "భద్రత"
-#: plinth/modules/help/templates/help_about.html:96
+#: plinth/modules/help/templates/help_about.html:81
msgid ""
"You are using packages from Debian backports. Please note that these "
"packages do not have security support from Debian. However, they are "
@@ -1940,17 +1976,17 @@ msgstr ""
"లేదని దయచేసి గమనించండి. ఏదేమైనా, డెబియన్ మరియు ఫ్రీడమ్బాక్స్ కమ్యూనిటీలోని సహాయకులు ఉత్తమ ప్రయత్న "
"ప్రాతిపదికన వాటిని నిర్వహిస్తారు."
-#: plinth/modules/help/templates/help_base.html:36
-#: plinth/modules/help/templates/help_index.html:76
+#: plinth/modules/help/templates/help_base.html:21
+#: plinth/modules/help/templates/help_index.html:61
#, python-format
msgid "%(box_name)s Setup"
msgstr "%(box_name)s అమరిక"
-#: plinth/modules/help/templates/help_contribute.html:27
+#: plinth/modules/help/templates/help_contribute.html:12
msgid "The FreedomBox project welcomes contributions of all kinds."
msgstr "ఫ్రీడమ్బాక్స్ ప్రాజెక్ట్ అన్ని రకాల తోడ్పాటును స్వాగతిస్తుంది."
-#: plinth/modules/help/templates/help_contribute.html:33
+#: plinth/modules/help/templates/help_contribute.html:18
msgid ""
"You can contribute by writing code, testing and reporting bugs, discussing "
"new use cases and applications, designing logos and artwork, providing "
@@ -1959,7 +1995,7 @@ msgid ""
"the word."
msgstr ""
-#: plinth/modules/help/templates/help_contribute.html:43
+#: plinth/modules/help/templates/help_contribute.html:28
msgid ""
"You can also help the project financially by donating to the non-profit FreedomBox "
@@ -1971,26 +2007,26 @@ msgid ""
"supporters."
msgstr ""
-#: plinth/modules/help/templates/help_contribute.html:57
-#: plinth/modules/power/templates/power_restart.html:42
-#: plinth/modules/power/templates/power_shutdown.html:41
-#: plinth/templates/header.html:59
+#: plinth/modules/help/templates/help_contribute.html:42
+#: plinth/modules/power/templates/power_restart.html:27
+#: plinth/modules/power/templates/power_shutdown.html:26
+#: plinth/templates/app-header.html:51
msgid "Learn more..."
msgstr "మరింత తెలుసుకోండి.."
-#: plinth/modules/help/templates/help_feedback.html:27
+#: plinth/modules/help/templates/help_feedback.html:12
#, python-format
msgid "Your feedback will help us improve %(box_name)s!"
msgstr "మీ అభిప్రాయం %(box_name)s ను మెరుగుపరచడంలో మాకు సహాయపడుతుంది!"
-#: plinth/modules/help/templates/help_feedback.html:33
+#: plinth/modules/help/templates/help_feedback.html:18
msgid ""
"Let us know about missing features, your favourite apps and how we can "
"improve them on our discussion forum."
msgstr ""
-#: plinth/modules/help/templates/help_feedback.html:41
+#: plinth/modules/help/templates/help_feedback.html:26
msgid ""
"If you find any bugs or issues, please use the issue tracker"
@@ -1998,16 +2034,16 @@ msgid ""
"already reported and then use the \"New issue\" button."
msgstr ""
-#: plinth/modules/help/templates/help_feedback.html:51
+#: plinth/modules/help/templates/help_feedback.html:36
msgid "Thank you!"
msgstr "ధన్యవాదాలు!"
-#: plinth/modules/help/templates/help_index.html:27
-#: plinth/templates/help-menu.html:23 plinth/templates/help-menu.html:28
+#: plinth/modules/help/templates/help_index.html:12
+#: plinth/templates/help-menu.html:8 plinth/templates/help-menu.html:13
msgid "Help"
msgstr "సహాయం"
-#: plinth/modules/help/templates/help_index.html:31
+#: plinth/modules/help/templates/help_index.html:16
#, python-format
msgid ""
"The %(box_name)s Manual is the best place to "
@@ -2016,7 +2052,7 @@ msgstr ""
"మీరు %(box_name)s సమాచారం కోసం తెలుసుకొనుటకు "
"%(box_name)s చేపుస్తకం అనేది సరి అయిన ప్రదేశం."
-#: plinth/modules/help/templates/help_index.html:38
+#: plinth/modules/help/templates/help_index.html:23
#, python-format
msgid ""
" "
@@ -2025,7 +2061,7 @@ msgstr ""
"%(box_name)s "
"ప్రాజెక్ట్ వికీ మరింత సమాచారం కలిగి ఉంటుంది."
-#: plinth/modules/help/templates/help_index.html:45
+#: plinth/modules/help/templates/help_index.html:30
#, python-format
msgid ""
"To seek help from %(box_name)s community, queries may be posted on the మెయిలింగ్ జాబితా లో పోస్ట్ "
"చెయ్యండి. జాబితా భాండాగారం ఇతర వినియోగదారులు ఎదుర్కొన్న సమస్యలు మరియు వాటి పరిష్కారాలు కలిగి ఉంటుంది."
-#: plinth/modules/help/templates/help_index.html:55
+#: plinth/modules/help/templates/help_index.html:40
#, python-format
msgid ""
"Many %(box_name)s contributors and users are also available on the irc.oftc."
@@ -2050,13 +2086,13 @@ msgstr ""
"randomnick=1&channels=freedombox&prompt=1\"> #ఫ్రీడమ్ బాక్స్ చ్యానెల్ లో చేరి సహాయం "
"కోరవచ్చు."
-#: plinth/modules/help/templates/help_manual.html:40
+#: plinth/modules/help/templates/help_manual.html:25
#, fuzzy
#| msgid "downloading"
msgid "Download as PDF"
msgstr "దిగుమతి అవుతోంది"
-#: plinth/modules/help/templates/help_support.html:27
+#: plinth/modules/help/templates/help_support.html:12
#, python-format
msgid ""
"If you need help in getting something done or if you are facing problems "
@@ -2064,13 +2100,13 @@ msgid ""
"contributors."
msgstr ""
-#: plinth/modules/help/templates/help_support.html:35
+#: plinth/modules/help/templates/help_support.html:20
msgid ""
"Search for past discussions or post a new query on our discussion forum."
msgstr ""
-#: plinth/modules/help/templates/help_support.html:42
+#: plinth/modules/help/templates/help_support.html:27
msgid ""
"You can also chat with us on our IRC and Matrix channels (bridged): "
"- #freedombox on irc.oftc.net
- #freedombox:matrix.org
"
@@ -2078,11 +2114,11 @@ msgid ""
"debian.net\">mailing list."
msgstr ""
-#: plinth/modules/help/templates/statuslog.html:25
+#: plinth/modules/help/templates/statuslog.html:10
msgid "Status Log"
msgstr "స్థితి లాగ్"
-#: plinth/modules/help/templates/statuslog.html:28
+#: plinth/modules/help/templates/statuslog.html:13
#, fuzzy, python-format
msgid ""
"These are the last %(num_lines)s lines of the status log for this web "
@@ -2094,7 +2130,7 @@ msgstr ""
"దయచేసి 2bug ట్రాకర్ "
"తప్పుల నివేదిక ఈ స్థితి లాగ్ అటాచ్ 3 మరియు ఉపయోగించడానికి."
-#: plinth/modules/help/templates/statuslog.html:39
+#: plinth/modules/help/templates/statuslog.html:24
msgid ""
"Please remove any passwords or other personal information from the log "
"before submitting the bug report."
@@ -2102,17 +2138,7 @@ msgstr ""
"బగ్ (తప్పుల) నివేదిక సమర్పించే ముందు దయచేసి లాగ్ నుండి ఏవైనా రహస్యపదాలను లేదా ఇతర వ్యక్తిగత సమాచారాన్ని "
"తొలగించగలరు."
-#: plinth/modules/i2p/__init__.py:42 plinth/modules/i2p/manifest.py:31
-msgid "I2P"
-msgstr ""
-
-#: plinth/modules/i2p/__init__.py:46 plinth/modules/tor/__init__.py:49
-#, fuzzy
-#| msgid "Tor Anonymity Network"
-msgid "Anonymity Network"
-msgstr "టోర్ అనామిక నెట్వర్క్"
-
-#: plinth/modules/i2p/__init__.py:49
+#: plinth/modules/i2p/__init__.py:28
msgid ""
"The Invisible Internet Project is an anonymous network layer intended to "
"protect communication from censorship and surveillance. I2P provides "
@@ -2120,7 +2146,7 @@ msgid ""
"distributed around the world."
msgstr ""
-#: plinth/modules/i2p/__init__.py:53
+#: plinth/modules/i2p/__init__.py:32
#, fuzzy
#| msgid ""
#| "For more information about the %(box_name)s project, see the %(box_name)s వికీ ను దర్శించండి."
-#: plinth/modules/i2p/__init__.py:55
+#: plinth/modules/i2p/__init__.py:34
msgid ""
"The first visit to the provided web interface will initiate the "
"configuration process."
msgstr ""
-#: plinth/modules/i2p/__init__.py:61
+#: plinth/modules/i2p/__init__.py:38
#, fuzzy
#| msgid "Enable application"
msgid "Manage I2P application"
msgstr "అనువర్తనాన్ని చేతనించు"
-#: plinth/modules/i2p/__init__.py:103
+#: plinth/modules/i2p/__init__.py:64 plinth/modules/i2p/manifest.py:16
+msgid "I2P"
+msgstr ""
+
+#: plinth/modules/i2p/__init__.py:65 plinth/modules/tor/__init__.py:56
+#, fuzzy
+#| msgid "Tor Anonymity Network"
+msgid "Anonymity Network"
+msgstr "టోర్ అనామిక నెట్వర్క్"
+
+#: plinth/modules/i2p/__init__.py:87
#, fuzzy
msgid "I2P Proxy"
msgstr "వెబ్ ప్రాక్సీ (Privoxy)"
-#: plinth/modules/i2p/templates/i2p_service.html:31
-#: plinth/templates/clients.html:43
+#: plinth/modules/i2p/templates/i2p_service.html:16
+#: plinth/templates/clients.html:28
msgid "Launch"
msgstr "ప్రారంభించు"
-#: plinth/modules/i2p/views.py:34
+#: plinth/modules/i2p/views.py:19
msgid "Proxies"
msgstr ""
-#: plinth/modules/i2p/views.py:37
+#: plinth/modules/i2p/views.py:22
msgid "Anonymous torrents"
msgstr "అనామక టోరెంట్స్"
-#: plinth/modules/i2p/views.py:88
+#: plinth/modules/i2p/views.py:64
msgid "I2P Proxies and Tunnels"
msgstr ""
-#: plinth/modules/i2p/views.py:91
+#: plinth/modules/i2p/views.py:67
msgid ""
"I2P lets you browse the Internet and hidden services (eepsites) anonymously. "
"For this, your browser, preferably a Tor Browser, needs to be configured for "
"a proxy."
msgstr ""
-#: plinth/modules/i2p/views.py:94
+#: plinth/modules/i2p/views.py:70
msgid ""
"By default HTTP, HTTPS and IRC proxies are available. Additional proxies and "
"tunnels may be configured using the tunnel configuration interface."
msgstr ""
-#: plinth/modules/i2p/views.py:103
+#: plinth/modules/i2p/views.py:79
msgid "Anonymous Torrents"
msgstr ""
-#: plinth/modules/i2p/views.py:106
+#: plinth/modules/i2p/views.py:82
msgid ""
"I2P provides an application to download files anonymously in a peer-to-peer "
"network. Download files by adding torrents or create a new torrent to share "
"a file."
msgstr ""
-#: plinth/modules/ikiwiki/__init__.py:41 plinth/modules/ikiwiki/manifest.py:24
-msgid "ikiwiki"
-msgstr "ఇకివికీ"
-
-#: plinth/modules/ikiwiki/__init__.py:45
-msgid "Wiki and Blog"
-msgstr "వికీ మరియు బ్లాగ్"
-
-#: plinth/modules/ikiwiki/__init__.py:48
+#: plinth/modules/ikiwiki/__init__.py:27
#, fuzzy
#| msgid ""
#| "ikiwiki is a simple wiki and blog application. It supports several "
@@ -2215,7 +2243,7 @@ msgstr ""
"ఎస్ ఫీడ్లు వంటి సాధారణ బ్లాగింగ్ కార్యాచరణకు సహకరిస్తుంది. దీన్ని ఆమోదించినప్పుడు మీ బ్లాగులు మరియు "
"వికీలు /ikiwiki వద్ద అందుబాటులో ఉంటాయి(తయారుచేసిన తరువాత)."
-#: plinth/modules/ikiwiki/__init__.py:52
+#: plinth/modules/ikiwiki/__init__.py:31
#, fuzzy, python-brace-format
#| msgid ""
#| "Only {box_name} users in the admin group can create and "
@@ -2233,54 +2261,56 @@ msgstr ""
"ఇప్పటికే ఉన్న వాటిని సవరించగలరు. వినియోగదారు "
"ఆకృతీకరణ లో మీరు అనుమతులను మార్చవచ్చు లేదా క్రొత్త వినియోగదారులను చేర్చవచ్చు."
-#: plinth/modules/ikiwiki/__init__.py:62
+#: plinth/modules/ikiwiki/__init__.py:39
msgid "View and edit wiki applications"
msgstr "వికీ అనువర్తనాలను చూడండి మరియు మార్చండి"
-#: plinth/modules/ikiwiki/forms.py:27
-#: plinth/modules/networks/templates/connection_show.html:98
-#: plinth/modules/storage/templates/storage.html:43
-msgid "Type"
-msgstr "రకం"
+#: plinth/modules/ikiwiki/__init__.py:53 plinth/modules/ikiwiki/manifest.py:9
+msgid "ikiwiki"
+msgstr "ఇకివికీ"
-#: plinth/modules/ikiwiki/forms.py:32
+#: plinth/modules/ikiwiki/__init__.py:54
+msgid "Wiki and Blog"
+msgstr "వికీ మరియు బ్లాగ్"
+
+#: plinth/modules/ikiwiki/forms.py:17
msgid "Admin Account Name"
msgstr "నిర్వాహకుని ఖాతా పేరు"
-#: plinth/modules/ikiwiki/forms.py:34
+#: plinth/modules/ikiwiki/forms.py:19
msgid "Admin Account Password"
msgstr "నిర్వాహకుని ఖాతా రహస్యపదం"
-#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:27
+#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:12
msgid "Manage Wikis and Blogs"
msgstr "వికీ మరియు బ్లాగులను నిర్వహించండి"
-#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:31
-#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:33
-#: plinth/modules/ikiwiki/templates/ikiwiki_create.html:25
+#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:16
+#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:18
+#: plinth/modules/ikiwiki/templates/ikiwiki_create.html:10
msgid "Create Wiki or Blog"
msgstr "వికీ లేదా బ్లాగును సృష్టించండి"
-#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:40
+#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:25
msgid "No wikis or blogs available."
msgstr "ఏ వికీలు లేదా బ్లాగులు అందుబాటులో లేవు."
-#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:48
+#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:33
#, python-format
msgid "Delete site %(site)s"
msgstr "ప్రదేశం తొలగించు %(site)s"
-#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:55
+#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:40
#, python-format
msgid "Go to site %(site)s"
msgstr "ప్రదేశం కు వెళ్ళండి %(site)s"
-#: plinth/modules/ikiwiki/templates/ikiwiki_delete.html:27
+#: plinth/modules/ikiwiki/templates/ikiwiki_delete.html:12
#, python-format
msgid "Delete Wiki or Blog %(name)s"
msgstr "వికీ లేదా బ్లాగ్ తొలగించు %(name)s"
-#: plinth/modules/ikiwiki/templates/ikiwiki_delete.html:33
+#: plinth/modules/ikiwiki/templates/ikiwiki_delete.html:18
msgid ""
"This action will remove all the posts, pages and comments including revision "
"history. Delete this wiki or blog permanently?"
@@ -2288,50 +2318,42 @@ msgstr ""
"ఈ చర్య పునర్విమర్శ చరిత్రతో సహా అన్ని పోస్ట్లు, పుటలు మరియు వ్యాఖ్యలు తొలగిస్తుంది. ఈ వికీ లేదా బ్లాగ్ "
"శాశ్వతంగా తొలగించాలా?"
-#: plinth/modules/ikiwiki/views.py:96
+#: plinth/modules/ikiwiki/views.py:73
#, python-brace-format
msgid "Created wiki {name}."
msgstr "{name} వికీ సృష్టించబడింది."
-#: plinth/modules/ikiwiki/views.py:99
+#: plinth/modules/ikiwiki/views.py:76
#, python-brace-format
msgid "Could not create wiki: {error}"
msgstr "వికీని సృష్టించలేము: {error}"
-#: plinth/modules/ikiwiki/views.py:109
+#: plinth/modules/ikiwiki/views.py:86
#, python-brace-format
msgid "Created blog {name}."
msgstr "{name} బ్లాగు సృష్టించబడింది."
-#: plinth/modules/ikiwiki/views.py:112
+#: plinth/modules/ikiwiki/views.py:89
#, python-brace-format
msgid "Could not create blog: {error}"
msgstr "బ్లాగు సృష్టించలేము: {error}"
-#: plinth/modules/ikiwiki/views.py:127
+#: plinth/modules/ikiwiki/views.py:104
#, fuzzy, python-brace-format
#| msgid "{name} deleted."
msgid "{title} deleted."
msgstr "{name} తొలగించబడింది."
-#: plinth/modules/ikiwiki/views.py:131
+#: plinth/modules/ikiwiki/views.py:108
#, python-brace-format
msgid "Could not delete {title}: {error}"
msgstr "{title} ను తొలగించలేము: {error}"
-#: plinth/modules/infinoted/__init__.py:42
-msgid "infinoted"
-msgstr "ఇన్ఫినోటెడ్"
-
-#: plinth/modules/infinoted/__init__.py:46
-msgid "Gobby Server"
-msgstr "గాబ్బీ సేవకం"
-
-#: plinth/modules/infinoted/__init__.py:49
+#: plinth/modules/infinoted/__init__.py:26
msgid "infinoted is a server for Gobby, a collaborative text editor."
msgstr "Gobby కోసం ఇన్ఫినోటెడ్ అనేది ఒక సర్వర్,ఒక సహకార టెక్స్ట్ ఎడిటర్."
-#: plinth/modules/infinoted/__init__.py:51
+#: plinth/modules/infinoted/__init__.py:28
#, python-brace-format
msgid ""
"To use it, download Gobby, desktop "
@@ -2342,15 +2364,23 @@ msgstr ""
"మరియు నిక్షిప్తం చెయుము. మొడటిగ గాబ్బి మరియు సెలెక్ట్ \"సర్వర్కు కనెక్ట్ చేయండి\" మరియు మీ ఎంటర్ చెయ్యండి "
"{box_name}'s డొమైన్ పేరు."
-#: plinth/modules/infinoted/manifest.py:27
+#: plinth/modules/infinoted/__init__.py:48
+msgid "infinoted"
+msgstr "ఇన్ఫినోటెడ్"
+
+#: plinth/modules/infinoted/__init__.py:49
+msgid "Gobby Server"
+msgstr "గాబ్బీ సేవకం"
+
+#: plinth/modules/infinoted/manifest.py:12
msgid "Gobby"
msgstr "గాబ్బి"
-#: plinth/modules/infinoted/manifest.py:29
+#: plinth/modules/infinoted/manifest.py:14
msgid "Gobby is a collaborative text editor"
msgstr "గాబ్బీ ఒక సహకార టెక్స్ట్ ఎడిటర్"
-#: plinth/modules/infinoted/manifest.py:32
+#: plinth/modules/infinoted/manifest.py:17
#, python-brace-format
msgid ""
"Start Gobby and select \"Connect to Server\" and enter your {box_name}'s "
@@ -2359,35 +2389,27 @@ msgstr ""
"గాబ్బీని ప్రారంభించి. \"సేవికకు కనెక్ట్ చేయండి\" ఎంచుకోండి మరియు మీ {box_name} యొక్క డొమైన్ పేరును "
"నమోదు చేయండి."
-#: plinth/modules/jsxc/__init__.py:36 plinth/modules/jsxc/manifest.py:25
-msgid "JSXC"
-msgstr "JSXC"
-
-#: plinth/modules/jsxc/__init__.py:40
-msgid "Chat Client"
-msgstr "చాట్ క్లయింట్"
-
-#: plinth/modules/jsxc/__init__.py:43
+#: plinth/modules/jsxc/__init__.py:22
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/templates/jsxc_launch.html:140
-#: plinth/templates/base.html:253
+#: plinth/modules/jsxc/__init__.py:40 plinth/modules/jsxc/manifest.py:10
+msgid "JSXC"
+msgstr "JSXC"
+
+#: plinth/modules/jsxc/__init__.py:41
+msgid "Chat Client"
+msgstr "చాట్ క్లయింట్"
+
+#: plinth/modules/jsxc/templates/jsxc_launch.html:125
+#: plinth/templates/base.html:238
msgid "JavaScript license information"
msgstr "జావాస్క్రిప్ట్ లైసెన్స్ సమాచరం"
-#: plinth/modules/letsencrypt/__init__.py:48
-msgid "Let's Encrypt"
-msgstr "లెట్స్ ఎన్క్రిప్ట్"
-
-#: plinth/modules/letsencrypt/__init__.py:50
-msgid "Certificates"
-msgstr "యోగ్యతాపత్రాలు"
-
-#: plinth/modules/letsencrypt/__init__.py:54
+#: plinth/modules/letsencrypt/__init__.py:35
#, fuzzy, python-brace-format
msgid ""
"A digital certificate allows users of a web service to verify the identity "
@@ -2401,7 +2423,7 @@ msgstr ""
"కొరకు సెటప్ డిజిటల్ సర్టిఫికెట్లు చేయవచ్చు. ఇది ఎన్క్రిప్ట్ తెలపండి ఒక డొమైన్ యొక్క యజమాని, ధృవపత్ర (CA) "
"ఉన్నట్లు రుజువు చేసుకుంటూ అవుతున్నారు."
-#: plinth/modules/letsencrypt/__init__.py:60
+#: plinth/modules/letsencrypt/__init__.py:41
#, fuzzy
msgid ""
"Let's Encrypt is a free, automated, and open certificate authority, run for "
@@ -2414,80 +2436,88 @@ msgstr ""
"\"https://letsencrypt.org/repository/\"> 1Let యొక్క ఎన్క్రిప్ట్ సబ్స్క్రయిబర్ ఒప్పందం "
"a> 2 తో అంగీకరిస్తున్నారు."
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:44
+#: plinth/modules/letsencrypt/__init__.py:65
+msgid "Let's Encrypt"
+msgstr "లెట్స్ ఎన్క్రిప్ట్"
+
+#: plinth/modules/letsencrypt/__init__.py:66
+msgid "Certificates"
+msgstr "యోగ్యతాపత్రాలు"
+
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:29
msgid "Domain"
msgstr "డొమైన్"
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:45
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:30
msgid "Certificate Status"
msgstr "యోగ్యతాపత్రం స్థితి"
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:46
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:31
msgid "Website Security"
msgstr "వెబ్సైటు భద్రత"
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:47
-#: plinth/modules/storage/templates/storage.html:45
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:32
+#: plinth/modules/storage/templates/storage.html:30
msgid "Actions"
msgstr "చర్యలు"
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:57
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:42
#, python-format
msgid "Valid, expires on %(expiry_date)s"
msgstr "చెల్లుతుంది, %(expiry_date)s న చెల్లుబాటు కాలం ముగుస్తుంది"
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:64
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:49
msgid "Revoked"
msgstr "ఉపసంహరించుకొనబడింది"
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:68
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:53
#, python-format
msgid "Expired on %(expiry_date)s"
msgstr "%(expiry_date)s న కాలం చెల్లినది"
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:72
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:57
msgid "Invalid test certificate"
msgstr "చెల్లని పరీక్ష దృవపత్రం"
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:76
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:61
#, python-format
msgid "Invalid (%(reason)s)"
msgstr "చెల్లనిది (%(reason)s)"
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:83
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:68
msgid "No certificate"
msgstr "ధృవీకరణ పత్రం లేదు"
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:100
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:85
msgid "Re-obtain"
msgstr "తిరిగి-పొందు"
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:106
-#: plinth/modules/networks/templates/connection_show.html:63
-#: plinth/modules/samba/templates/samba.html:142
-#: plinth/modules/wireguard/templates/wireguard_delete_client.html:39
-#: plinth/modules/wireguard/templates/wireguard_delete_server.html:48
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:88
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:89
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:91
+#: plinth/modules/networks/templates/connection_show.html:48
+#: plinth/modules/samba/templates/samba.html:127
+#: plinth/modules/wireguard/templates/wireguard_delete_client.html:24
+#: plinth/modules/wireguard/templates/wireguard_delete_server.html:33
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:73
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:74
msgid "Delete"
msgstr "తొలగించు"
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:113
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:98
msgid "Revoke"
msgstr "ఉపసంహరించుకొను"
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:121
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:106
msgid "Obtain"
msgstr "పొందు"
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:132
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:117
#, fuzzy, python-format
msgid ""
"No domains have been configured. Configure "
"domains to be able to obtain certificates for them."
msgstr "తోబుట్టువుల డొమైన్లు కన్ఫిగర్ చేయబడ్డాయి. వారికి సర్టిఫికేట్లు పొందగలగటం డొమైన్ ఆకృతీకరించుము."
-#: plinth/modules/letsencrypt/views.py:58
+#: plinth/modules/letsencrypt/views.py:41
#, fuzzy, python-brace-format
#| msgid "Certificate successfully revoked for domain {domain}"
msgid ""
@@ -2495,38 +2525,34 @@ msgid ""
"moments to take effect."
msgstr "{domain} డోమైన్ కొరకు సర్టిఫికేట్ ఉప్సంహరుంచుకొనబడింది"
-#: plinth/modules/letsencrypt/views.py:64
+#: plinth/modules/letsencrypt/views.py:47
#, python-brace-format
msgid "Failed to revoke certificate for domain {domain}: {error}"
msgstr "{domain} డోమైన్ కొరకు సర్టిఫికేట్ ఉప్సంహరుంచుకొనడంలో విఫలం: {error}"
+#: plinth/modules/letsencrypt/views.py:60
#: plinth/modules/letsencrypt/views.py:77
-#: plinth/modules/letsencrypt/views.py:94
#, python-brace-format
msgid "Certificate successfully obtained for domain {domain}"
msgstr "{domain} డోమైన్ కొరకు సర్టిఫికేట్ సంపాదింపబడింది"
+#: plinth/modules/letsencrypt/views.py:65
#: plinth/modules/letsencrypt/views.py:82
-#: plinth/modules/letsencrypt/views.py:99
#, python-brace-format
msgid "Failed to obtain certificate for domain {domain}: {error}"
msgstr "{domain} డోమైన్ కొరకు సర్టిఫికేట్ సంపాదించుటలో విఫలం: {error}"
-#: plinth/modules/letsencrypt/views.py:111
+#: plinth/modules/letsencrypt/views.py:94
#, python-brace-format
msgid "Certificate successfully deleted for domain {domain}"
msgstr "{domain} డోమైన్ కొరకు సర్టిఫికేట్ తొలగించబడింది"
-#: plinth/modules/letsencrypt/views.py:116
+#: plinth/modules/letsencrypt/views.py:99
#, python-brace-format
msgid "Failed to delete certificate for domain {domain}: {error}"
msgstr "{domain} డోమైన్ కొరకు ధృవీకరణపత్రం నిర్మూలించడంలో విఫలం: {error}"
-#: plinth/modules/matrixsynapse/__init__.py:48
-msgid "Matrix Synapse"
-msgstr "మ్యాట్రిక్స్ సినాప్స్"
-
-#: plinth/modules/matrixsynapse/__init__.py:55
+#: plinth/modules/matrixsynapse/__init__.py:34
msgid ""
"Matrix is an new "
"ecosystem for open, federated instant messaging and VoIP. Synapse is a "
@@ -2536,7 +2562,7 @@ msgid ""
"converse with users on all other Matrix servers via federation."
msgstr ""
-#: plinth/modules/matrixsynapse/__init__.py:62
+#: plinth/modules/matrixsynapse/__init__.py:41
msgid ""
"To communicate, you can use the available clients for mobile, desktop and the web. అందుబాటులో ఉన్న ఖాతాదారులను ఉపయోగించవచ్చు. ఇచట రయట్ క్లయింట్ సిఫార్సు చేయబడింది."
-#: plinth/modules/matrixsynapse/forms.py:29
+#: plinth/modules/matrixsynapse/__init__.py:66
+msgid "Matrix Synapse"
+msgstr "మ్యాట్రిక్స్ సినాప్స్"
+
+#: plinth/modules/matrixsynapse/forms.py:14
msgid "Enable Public Registration"
msgstr "పబ్లిక్ రిజిస్ట్రేషన్ ప్రారంభించండి"
-#: plinth/modules/matrixsynapse/forms.py:30
+#: plinth/modules/matrixsynapse/forms.py:15
msgid ""
"Enabling public registration means that anyone on the Internet can register "
"a new account on your Matrix server. Disable this if you only want existing "
@@ -2559,11 +2589,11 @@ msgstr ""
"ప్రజా నమోదును సశక్త పరచడం అంటే అంతర్జాలం లో ఉన్న ఎవరైనా కూడా మీ మాట్రిక్స్ సర్వర్ మీద ఖాతాను "
"సృష్టించుకోగలరు. ప్రస్తుతం ఉండే వినియోగదారులు మాత్రమే వినియోగించాలి అనుకుంటే దీనిని నిర్వీర్యం చేయగలరు."
-#: plinth/modules/matrixsynapse/manifest.py:28
+#: plinth/modules/matrixsynapse/manifest.py:13
msgid "Riot"
msgstr "రయట్"
-#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:33
+#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:18
msgid ""
"Matrix service needs to be configured for a domain. Users on other Matrix "
"servers will be able to reach users on this server using this domain name. "
@@ -2573,7 +2603,7 @@ msgstr ""
"ఉపయోగించి ఈ సర్వర్లోని వినియోగదారులను చేరుకోగలరు. మ్యాట్రిక్స్ వినియోగదారుడి ఐడిలు @username:"
"domainnameఇలా కనిపిస్తుంది."
-#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:41
+#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:26
msgid ""
"\n"
" Warning! Changing the domain name after the initial\n"
@@ -2585,7 +2615,7 @@ msgstr ""
"లేదు.\n"
" "
-#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:50
+#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:35
#, python-format
msgid ""
"No domain(s) are available. Configure at "
@@ -2594,7 +2624,7 @@ msgstr ""
"ఏ డొమైన్ (లు) అందుబాటులో లేవు. ఆక్రుతీకరించండి కనీసం ఒక "
"డొమైన్ మ్యాట్రిక్స్ సినాప్సేను ఉపయోగించగలదు."
-#: plinth/modules/matrixsynapse/templates/matrix-synapse.html:29
+#: plinth/modules/matrixsynapse/templates/matrix-synapse.html:14
#, python-format
msgid ""
"The Matrix server domain is set to %(domain_name)s. User IDs will "
@@ -2605,13 +2635,13 @@ msgstr ""
"@వినియోగదారిడి పేరు:%(domain_name)sఇలా కనిపిస్తుంది. ప్రారంభ సెట్టింగు తర్వాత డొమైన్ పేరు "
"మార్చడం ప్రస్తుతం మద్దతు లేదు."
-#: plinth/modules/matrixsynapse/templates/matrix-synapse.html:36
+#: plinth/modules/matrixsynapse/templates/matrix-synapse.html:21
msgid ""
"New users can be registered from any client if public registration is "
"enabled."
msgstr "పబ్లిక్ రిజిస్ట్రేషన్ ప్రారంభించబడితే ఏదైనా క్లయింట్ నుండి క్రొత్త వినియోగదారులను నమోదు చేసుకోవచ్చు."
-#: plinth/modules/matrixsynapse/templates/matrix-synapse.html:45
+#: plinth/modules/matrixsynapse/templates/matrix-synapse.html:30
#, python-format
msgid ""
"The configured domain name is using a self-signed certificate. Federation "
@@ -2619,24 +2649,15 @@ msgid ""
"go to Let's Encrypt to obtain one."
msgstr ""
-#: plinth/modules/matrixsynapse/views.py:121
+#: plinth/modules/matrixsynapse/views.py:98
msgid "Public registration enabled"
msgstr "పబ్లిక్ రిజిస్ట్రేషన్ ప్రారంభించబడింది"
-#: plinth/modules/matrixsynapse/views.py:126
+#: plinth/modules/matrixsynapse/views.py:103
msgid "Public registration disabled"
msgstr "పబ్లిక్ రిజిస్ట్రేషన్ నిలిపివేయబడింది"
-#: plinth/modules/mediawiki/__init__.py:40
-#: plinth/modules/mediawiki/manifest.py:24
-msgid "MediaWiki"
-msgstr "మీడియావికీ"
-
-#: plinth/modules/mediawiki/__init__.py:44 plinth/templates/index.html:139
-msgid "Wiki"
-msgstr "వికీ"
-
-#: plinth/modules/mediawiki/__init__.py:47
+#: plinth/modules/mediawiki/__init__.py:26
msgid ""
"MediaWiki is the wiki engine that powers Wikipedia and other WikiMedia "
"projects. A wiki engine is a program for creating a collaboratively edited "
@@ -2647,7 +2668,7 @@ msgstr ""
"వెబ్సైటు నిర్మించే ఒక ఉపకరం. మీరు మీడియావికీని ఉపయోగించి ఒక వికీ లాంటి వెబ్సైటును ఏర్పాటు చేస్కుని మీ "
"స్నేహితులతో సంయుక్తంగా నోట్స్ తీసుకొనవచ్చు."
-#: plinth/modules/mediawiki/__init__.py:51
+#: plinth/modules/mediawiki/__init__.py:30
msgid ""
"This MediaWiki instance comes with a randomly generated administrator "
"password. You can set a new password in the \"Configuration\" section and "
@@ -2656,18 +2677,27 @@ msgid ""
"CreateAccount\">Special:CreateAccount page."
msgstr ""
-#: plinth/modules/mediawiki/__init__.py:57
+#: plinth/modules/mediawiki/__init__.py:36
msgid ""
"Anyone with a link to this wiki can read it. Only users that are logged in "
"can make changes to the content."
msgstr ""
"ఈ వికీకి లింక్తో ఎవరైనా దానిని చదవగలరు. లాగిన్ చేయబడిన వినియోగదారులు మాత్రమే కంటెంట్కు మార్పులు చేయవచ్చు."
-#: plinth/modules/mediawiki/forms.py:42
+#: plinth/modules/mediawiki/__init__.py:54
+#: plinth/modules/mediawiki/manifest.py:9
+msgid "MediaWiki"
+msgstr "మీడియావికీ"
+
+#: plinth/modules/mediawiki/__init__.py:55 plinth/templates/index.html:124
+msgid "Wiki"
+msgstr "వికీ"
+
+#: plinth/modules/mediawiki/forms.py:27
msgid "Administrator Password"
msgstr "నిర్వాహకుని రహస్యపదం"
-#: plinth/modules/mediawiki/forms.py:43
+#: plinth/modules/mediawiki/forms.py:28
msgid ""
"Set a new password for MediaWiki's administrator account (admin). Leave this "
"field blank to keep the current password."
@@ -2675,21 +2705,21 @@ msgstr ""
"మీడియావికీ యొక్క అడ్మినిస్ట్రేటర్ ఖాతా కోసం ఒక కొత్త పాస్ వర్డ్ ను సెట్ చెయ్యండి (అడ్మిన్). ప్రస్తుత రహస్యపదం "
"ఉంచడానికి ఈ ఫీల్డ్ను ఖాళీగా వదిలేయండి."
-#: plinth/modules/mediawiki/forms.py:48
+#: plinth/modules/mediawiki/forms.py:33
msgid "Enable public registrations"
msgstr "పబ్లిక్ రిజిస్ట్రేషన్లను ప్రారంభించండి"
-#: plinth/modules/mediawiki/forms.py:49
+#: plinth/modules/mediawiki/forms.py:34
msgid ""
"If enabled, anyone on the internet will be able to create an account on your "
"MediaWiki instance."
msgstr "ఇది సశక్త పరిచినట్లయితే, అంతర్జాలంలో ఉన్న ఎవరైనా మీ మీడియావికీ ఉదాహరణ మీద ఖాతాను సృజించుకోగలరు."
-#: plinth/modules/mediawiki/forms.py:53
+#: plinth/modules/mediawiki/forms.py:38
msgid "Enable private mode"
msgstr "ప్రైవేట్ మోడ్ను ప్రారంభించండి"
-#: plinth/modules/mediawiki/forms.py:54
+#: plinth/modules/mediawiki/forms.py:39
#, fuzzy
#| msgid ""
#| "If enabled, Access will be restricted. Only people who have accounts can "
@@ -2701,11 +2731,11 @@ msgstr ""
"ఇది సశక్త పరిచినట్లయితే, ప్రవేశము నియంత్రించబడుతుంది. ఎవరికీ అయితే ఇప్పటికే ఖాతా ఉందో, వారే మీ వికీని "
"చదవగలరు/మార్చగలరు. ప్రజా నమోదు కూడా ఆపివేయబడుతింది."
-#: plinth/modules/mediawiki/forms.py:59
+#: plinth/modules/mediawiki/forms.py:44
msgid "Default Skin"
msgstr "డిఫాల్ట్ చర్మం"
-#: plinth/modules/mediawiki/forms.py:60
+#: plinth/modules/mediawiki/forms.py:45
msgid ""
"Choose a default skin for your MediaWiki installation. Users have the option "
"to select their preferred skin."
@@ -2713,40 +2743,31 @@ msgstr ""
"మీ మీడియావికీ ఇన్స్టాలేషన్ కోసం డిఫాల్ట్ చర్మాన్ని ఎంచుకోండి. వినియోగదారులు తమకు నచ్చిన చర్మాన్ని ఎంచుకునే "
"అవకాశం ఉంటుంది."
-#: plinth/modules/mediawiki/views.py:74
+#: plinth/modules/mediawiki/views.py:54
msgid "Password updated"
msgstr "అనుమతిపదం నవీకరించబడింది"
-#: plinth/modules/mediawiki/views.py:93
+#: plinth/modules/mediawiki/views.py:73
msgid "Public registrations enabled"
msgstr "పబ్లిక్ రిజిస్ట్రేషన్లు ప్రారంభించబడ్డాయి"
-#: plinth/modules/mediawiki/views.py:102
+#: plinth/modules/mediawiki/views.py:82
msgid "Public registrations disabled"
msgstr "పబ్లిక్ రిజిస్ట్రేషన్లు నిలిపివేయబడ్డాయి"
-#: plinth/modules/mediawiki/views.py:107
+#: plinth/modules/mediawiki/views.py:87
msgid "Private mode enabled"
msgstr "ప్రైవేట్ మోడ్ ప్రారంభించబడింది"
-#: plinth/modules/mediawiki/views.py:114
+#: plinth/modules/mediawiki/views.py:94
msgid "Private mode disabled"
msgstr "ప్రైవేట్ మోడ్ నిలిపివేయబడింది"
-#: plinth/modules/mediawiki/views.py:122
+#: plinth/modules/mediawiki/views.py:102
msgid "Default skin changed"
msgstr "డిఫాల్ట్ చర్మం మార్చబడింది"
-#: plinth/modules/minetest/__init__.py:50
-#: plinth/modules/minetest/manifest.py:25
-msgid "Minetest"
-msgstr "మైన్ టెస్ట్"
-
-#: plinth/modules/minetest/__init__.py:54
-msgid "Block Sandbox"
-msgstr "బ్లాక్ శాండ్బాక్స్"
-
-#: plinth/modules/minetest/__init__.py:58
+#: plinth/modules/minetest/__init__.py:37
#, fuzzy, python-brace-format
msgid ""
"Minetest is a multiplayer infinite-world block sandbox. This module enables "
@@ -2758,21 +2779,30 @@ msgstr ""
"Minetest సర్వర్ ఈ {box_name} 1 అమలు సహకరిస్తుంది. సర్వర్కు కనెక్ట్ చెయ్యడానికి ఒక 2Minetest క్లైంట్ 3 అవసరమవుతుంది."
-#: plinth/modules/minetest/forms.py:30
+#: plinth/modules/minetest/__init__.py:63
+#: plinth/modules/minetest/manifest.py:10
+msgid "Minetest"
+msgstr "మైన్ టెస్ట్"
+
+#: plinth/modules/minetest/__init__.py:64
+msgid "Block Sandbox"
+msgstr "బ్లాక్ శాండ్బాక్స్"
+
+#: plinth/modules/minetest/forms.py:15
msgid "Maximum number of players"
msgstr "క్రీడాకారుల గరిష్ట సంఖ్య"
-#: plinth/modules/minetest/forms.py:32
+#: plinth/modules/minetest/forms.py:17
msgid ""
"You can change the maximum number of players playing minetest at a single "
"instance of time."
msgstr "మీరు మైన్డెస్ట్ ఒకే సమయంలో ఆడుతున్న క్రీడాకారుల గరిష్ట సంఖ్య మార్చవచ్చు."
-#: plinth/modules/minetest/forms.py:36
+#: plinth/modules/minetest/forms.py:21
msgid "Enable creative mode"
msgstr "క్రియేటివ్ మోడ్ను ప్రారంభించండి"
-#: plinth/modules/minetest/forms.py:37
+#: plinth/modules/minetest/forms.py:22
#, fuzzy
#| msgid ""
#| "Creative mode changes the rules of the game to make "
@@ -2784,21 +2814,21 @@ msgid ""
msgstr ""
"క్రియేటివ్ మోడ్ \"మనుగడ\" గేమ్ప్లే సవాలు కంటే, సృజనాత్మక గేమ్ప్లే అనువుగా ఆట నియమాలు మారుస్తుంది."
-#: plinth/modules/minetest/forms.py:42
+#: plinth/modules/minetest/forms.py:27
msgid "Enable PVP"
msgstr "పివిపిని ప్రారంభించండి"
-#: plinth/modules/minetest/forms.py:43
+#: plinth/modules/minetest/forms.py:28
#, fuzzy
msgid "Enabling Player Vs Player will allow players to damage other players."
msgstr "ప్లేయర్ Vs ప్లేయర్ అనే ఆప్షన్ ని అనుమతిస్తే క్రీడాకారులు ఇతర క్రీడాకారులు దెబ్బతినేలా చూస్తుంది"
-#: plinth/modules/minetest/forms.py:47
+#: plinth/modules/minetest/forms.py:32
#, fuzzy
msgid "Enable damage"
msgstr "PageKite ప్రారంభించు"
-#: plinth/modules/minetest/forms.py:48
+#: plinth/modules/minetest/forms.py:33
#, fuzzy
#| msgid ""
#| "When disabled, players cannot die or receive damage "
@@ -2806,47 +2836,41 @@ msgstr "PageKite ప్రారంభించు"
msgid "When disabled, players cannot die or receive damage of any kind."
msgstr "డిసేబుల్ లో ఉన్నప్పుడు, క్రీడాకారులు చనిపోయే లేదా ఏ రకమైన నష్టం అందుకోలేరు"
-#: plinth/modules/minetest/templates/minetest.html:33
-#: plinth/modules/networks/forms.py:66 plinth/modules/networks/forms.py:97
+#: plinth/modules/minetest/templates/minetest.html:18
+#: plinth/modules/networks/forms.py:49 plinth/modules/networks/forms.py:79
msgid "Address"
msgstr "చిరునామా"
-#: plinth/modules/minetest/templates/minetest.html:34
-#: plinth/modules/tor/templates/tor.html:96
+#: plinth/modules/minetest/templates/minetest.html:19
+#: plinth/modules/tor/templates/tor.html:81
msgid "Port"
msgstr "పోర్టు"
-#: plinth/modules/minetest/views.py:70
+#: plinth/modules/minetest/views.py:50
#, fuzzy
#| msgid "Configuration updated"
msgid "Maximum players configuration updated"
msgstr "ఆకృతీకరణ నవీకరించబడింది"
-#: plinth/modules/minetest/views.py:77
+#: plinth/modules/minetest/views.py:57
#, fuzzy
#| msgid "Configuration updated"
msgid "Creative mode configuration updated"
msgstr "ఆకృతీకరణ నవీకరించబడింది"
-#: plinth/modules/minetest/views.py:83
+#: plinth/modules/minetest/views.py:63
#, fuzzy
#| msgid "Configuration updated"
msgid "PVP configuration updated"
msgstr "ఆకృతీకరణ నవీకరించబడింది"
-#: plinth/modules/minetest/views.py:89
+#: plinth/modules/minetest/views.py:69
#, fuzzy
#| msgid "Configuration updated"
msgid "Damage configuration updated"
msgstr "ఆకృతీకరణ నవీకరించబడింది"
-#: plinth/modules/minidlna/__init__.py:41
-#, fuzzy
-#| msgid "Mumble Voice Chat Server"
-msgid "Simple Media Server"
-msgstr "మంబ్లు సేవిక మాటామంతి గాత్రం"
-
-#: plinth/modules/minidlna/__init__.py:44
+#: plinth/modules/minidlna/__init__.py:23
msgid ""
"MiniDLNA is a simple media server software, with the aim of being fully "
"compliant with DLNA/UPnP-AV clients. The MiniDNLA daemon serves media files "
@@ -2857,15 +2881,21 @@ msgid ""
"Kodi."
msgstr ""
-#: plinth/modules/minidlna/__init__.py:56
+#: plinth/modules/minidlna/__init__.py:33
msgid "Media streaming server"
msgstr ""
-#: plinth/modules/minidlna/forms.py:30
+#: plinth/modules/minidlna/__init__.py:47
+#, fuzzy
+#| msgid "Mumble Voice Chat Server"
+msgid "Simple Media Server"
+msgstr "మంబ్లు సేవిక మాటామంతి గాత్రం"
+
+#: plinth/modules/minidlna/forms.py:15
msgid "Media Files Directory"
msgstr ""
-#: plinth/modules/minidlna/forms.py:31
+#: plinth/modules/minidlna/forms.py:16
msgid ""
"Directory that MiniDLNA Server will read for content. All sub-directories of "
"this will be also scanned for media files. If you change the default ensure "
@@ -2873,83 +2903,78 @@ msgid ""
"user. Any user media directories (\"/home/username/\") will usually work."
msgstr ""
-#: plinth/modules/minidlna/manifest.py:25
+#: plinth/modules/minidlna/manifest.py:10
msgid "vlc"
msgstr ""
-#: plinth/modules/minidlna/manifest.py:64
+#: plinth/modules/minidlna/manifest.py:49
msgid "kodi"
msgstr ""
-#: plinth/modules/minidlna/manifest.py:103
+#: plinth/modules/minidlna/manifest.py:88
msgid "yaacc"
msgstr ""
-#: plinth/modules/minidlna/manifest.py:114
+#: plinth/modules/minidlna/manifest.py:99
msgid "totem"
msgstr "టోటెమ్"
-#: plinth/modules/minidlna/views.py:57
+#: plinth/modules/minidlna/views.py:37
msgid "Specified directory does not exist."
msgstr "నిర్దేశిత డైరెక్టరీ ఉనికిలో లేదు."
-#: plinth/modules/minidlna/views.py:62
+#: plinth/modules/minidlna/views.py:42
msgid "Updated media directory"
msgstr "మీడియా డైరెక్టరీని నవీకరించబడింది"
-#: plinth/modules/mldonkey/__init__.py:40
-#: plinth/modules/mldonkey/manifest.py:27
-msgid "MLDonkey"
-msgstr "ఎంఎల్ డాంకీ"
-
-#: plinth/modules/mldonkey/__init__.py:44
-msgid "Peer-to-peer File Sharing"
-msgstr "పీర్-టు-పీర్ ఫైల్ షేరింగ్"
-
-#: plinth/modules/mldonkey/__init__.py:47
+#: plinth/modules/mldonkey/__init__.py:26
msgid ""
"MLDonkey is a peer-to-peer file sharing application used to exchange large "
"files. It can participate in multiple peer-to-peer networks including "
"eDonkey, Kademlia, Overnet, BitTorrent and DirectConnect."
msgstr ""
-#: plinth/modules/mldonkey/__init__.py:50
+#: plinth/modules/mldonkey/__init__.py:29
msgid ""
"Users belonging to admin and ed2k group can control it through the web "
"interface. Users in the admin group can also control it through any of the "
"separate mobile or desktop front-ends or a telnet interface. See manual."
msgstr ""
-#: plinth/modules/mldonkey/__init__.py:55
+#: plinth/modules/mldonkey/__init__.py:34
#, python-brace-format
msgid ""
"On {box_name}, downloaded files can be found in /var/lib/mldonkey/ directory."
msgstr ""
-#: plinth/modules/mldonkey/__init__.py:63
+#: plinth/modules/mldonkey/__init__.py:40
#, fuzzy
#| msgid "Download files using BitTorrent applications"
msgid "Download files using eDonkey applications"
msgstr "బిట్ టోరెంట్ అనువర్తనాలను ఉపయోగించి ఫైళ్లను డౌన్లోడ్ చేయండి"
-#: plinth/modules/mldonkey/manifest.py:34
+#: plinth/modules/mldonkey/__init__.py:54
+#: plinth/modules/mldonkey/manifest.py:12
+msgid "MLDonkey"
+msgstr "ఎంఎల్ డాంకీ"
+
+#: plinth/modules/mldonkey/__init__.py:56
+msgid "Peer-to-peer File Sharing"
+msgstr "పీర్-టు-పీర్ ఫైల్ షేరింగ్"
+
+#: plinth/modules/mldonkey/manifest.py:19
#, fuzzy
#| msgid "Monkeysphere"
msgid "KMLDonkey"
msgstr "మంకీస్ఫియర్"
-#: plinth/modules/mldonkey/manifest.py:46
+#: plinth/modules/mldonkey/manifest.py:31
#, fuzzy
#| msgid "Monkeysphere"
msgid "AMLDonkey"
msgstr "మంకీస్ఫియర్"
-#: plinth/modules/monkeysphere/__init__.py:32
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:26
-msgid "Monkeysphere"
-msgstr "మంకీస్ఫియర్"
-
-#: plinth/modules/monkeysphere/__init__.py:35
+#: plinth/modules/monkeysphere/__init__.py:18
#, fuzzy
msgid ""
"With Monkeysphere, an OpenPGP key can be generated for each configured "
@@ -2967,7 +2992,7 @@ msgstr ""
"వినియోగదారులు కోసం, కనీసం ఒక వ్యక్తి (సాధారణంగా యంత్రం యజమాని) సాధారణ OpenPGP తాలమ్ సంతకం "
"ప్రక్రియను ఉపయోగించి ప్రవేశ ద్వారం చేయాలి."
-#: plinth/modules/monkeysphere/__init__.py:43
+#: plinth/modules/monkeysphere/__init__.py:26
#, fuzzy
msgid ""
"Monkeysphere can also generate an OpenPGP key for each Secure Web Server "
@@ -2984,95 +3009,100 @@ msgstr ""
"ధ్రువీకరించడానికి, వినియోగదారుడు "
"1 Monkeysphere వెబ్సైట్ అందుబాటులో ఉంది కొన్ని సాఫ్ట్వేర్ ఇన్స్టాల్ చెయ్యాలి"
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:60
+#: plinth/modules/monkeysphere/__init__.py:50
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:11
+msgid "Monkeysphere"
+msgstr "మంకీస్ఫియర్"
+
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:45
msgid "Publishing key to keyserver..."
msgstr "కీని కీసేవకానికి ప్రచురిస్తున్నాము..."
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:67
-#: plinth/modules/users/templates/users_delete.html:41
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:52
+#: plinth/modules/users/templates/users_delete.html:26
msgid "Cancel"
msgstr "రద్దుచేయి"
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:75
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:55
-#: plinth/modules/tor/templates/tor.html:95
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:60
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:40
+#: plinth/modules/tor/templates/tor.html:80
msgid "Service"
msgstr "సేవ"
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:76
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:61
msgid "Domains"
msgstr "డొమైన్లు"
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:77
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:31
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:62
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:16
msgid "OpenPGP Fingerprint"
msgstr "ఓపెన్పిజిపి వేలిముద్ర"
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:86
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:58
-#: plinth/modules/names/components.py:39
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:71
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:43
+#: plinth/modules/names/components.py:24
msgid "Secure Shell"
msgstr "సెక్యూర్ షెల్"
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:90
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:62
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:75
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:47
msgid "Other"
msgstr "ఇతరాలు"
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:127
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:112
#, python-format
msgid "Show details for key %(fingerprint)s"
msgstr "%(fingerprint)s కీ వివరాలను చూపించు"
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:133
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:118
msgid "-"
msgstr "-"
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:143
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:128
msgid "Import Key"
msgstr "కీని దింపుకోండి"
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:152
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:137
msgid "Publish Key"
msgstr "కీని ప్రచురించండి"
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:161
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:146
msgid "Add Domains"
msgstr "డొమైన్లను జతచేయి"
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:35
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:20
msgid "OpenPGP User IDs"
msgstr "ఓపెన్పిజిపి వాడుకరి ఐడీలు"
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:39
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:24
msgid "Key Import Date"
msgstr "కీ దిగుమతి తేదీ"
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:43
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:28
msgid "SSH Key Type"
msgstr "SSH కీ రకం"
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:47
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:32
msgid "SSH Key Size"
msgstr "SSH కీ పరిమాణం"
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:51
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:36
msgid "SSH Fingerprint"
msgstr "SSH వేలిముద్ర"
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:67
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:52
msgid "Key File"
msgstr "కీ దస్త్రం"
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:71
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:56
msgid "Available Domains"
msgstr "అందుబాటులో ఉన్న డొమైన్లు"
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:75
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:60
msgid "Added Domains"
msgstr "జతచేసిన డొమైన్లు"
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:82
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:67
msgid ""
"After this key is published to the keyservers, it can be signed using GnuPG with the following commands:"
@@ -3080,49 +3110,35 @@ msgstr ""
"ఈ కియ్ తరువత కిసెర్వెర్స్ కి ప్రచరిన్చపదుతున్ది, ఈధి గుర్తిమ్ప పడిన ఆగ్న్ణ్పిపిన్చుకు GnuPG :"
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:88
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:73
msgid "Download the key"
msgstr "కీని దింపుకోండి"
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:91
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:76
msgid "Sign the key"
msgstr "కీని సంతకం చేయండి"
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:94
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:79
msgid "Send the key back to the keyservers"
msgstr "కీని తిరిగి కీసేవకాలకు పంపు"
-#: plinth/modules/monkeysphere/views.py:60
+#: plinth/modules/monkeysphere/views.py:43
msgid "Imported key."
msgstr "కీ దిగుమతి చేయబడింది."
-#: plinth/modules/monkeysphere/views.py:96
+#: plinth/modules/monkeysphere/views.py:79
msgid "Cancelled key publishing."
msgstr "కీ ప్రచురణ రద్దుచేయబడింది."
-#: plinth/modules/monkeysphere/views.py:147
+#: plinth/modules/monkeysphere/views.py:130
msgid "Published key to keyserver."
msgstr "కీ కీసేవకానికి ప్రచురించబడింది."
-#: plinth/modules/monkeysphere/views.py:149
+#: plinth/modules/monkeysphere/views.py:132
msgid "Error occurred while publishing key."
msgstr "కీని ప్రచురించేటప్పుడు దోషం సంభవించింది."
-#: plinth/modules/mumble/__init__.py:33 plinth/modules/mumble/manifest.py:27
-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:23
msgid ""
"Mumble is an open source, low-latency, encrypted, high quality voice chat "
"software."
@@ -3130,7 +3146,7 @@ msgstr ""
"మంబుల్ అనేది తక్కువ-జాప్యత, ఎన్క్రిప్టెడ్, అధిక నాణ్యతా వంటి విశిష్టలతో కూడిన ఒక ఓపెన్ సోర్స్ స్వర సంభాషణా "
"సాఫ్ట్వేర్."
-#: plinth/modules/mumble/__init__.py:46
+#: plinth/modules/mumble/__init__.py:25
#, fuzzy
msgid ""
"You can connect to your Mumble server on the regular Mumble port 64738. 1Clients 2 మీ నమలు సర్వర్ కనెక్ట్ చేయవచ్చు మరియు Android పరికరాలు "
"అందుబాటులో ఉన్నాయి."
-#: plinth/modules/mumble/forms.py:31
+#: plinth/modules/mumble/__init__.py:49 plinth/modules/mumble/manifest.py:12
+msgid "Mumble"
+msgstr "మంబుల్"
+
+#: plinth/modules/mumble/__init__.py:50
+#, fuzzy
+#| msgid ""
+#| "Voice Chat \n"
+#| " (Mumble)"
+msgid "Voice Chat"
+msgstr ""
+"స్వర సంభాషణ \n"
+" (Mumble)"
+
+#: plinth/modules/mumble/forms.py:16
#, fuzzy
#| msgid "SSH server password"
msgid "Set SuperUser Password"
msgstr "SSH సర్వర్ పాస్ వర్డ్"
-#: plinth/modules/mumble/forms.py:34
+#: plinth/modules/mumble/forms.py:19
msgid ""
"Optional. Leave this field blank to keep the current password. SuperUser "
"password can be used to manage permissions in Mumble."
msgstr ""
-#: plinth/modules/mumble/manifest.py:52
+#: plinth/modules/mumble/manifest.py:37
msgid "Plumble"
msgstr "ప్లంబుల్"
-#: plinth/modules/mumble/manifest.py:66
+#: plinth/modules/mumble/manifest.py:51
msgid "Mumblefly"
msgstr "ముంబుల్ ఫ్లై"
-#: plinth/modules/mumble/views.py:50
+#: plinth/modules/mumble/views.py:29
#, fuzzy
#| msgid "Password changed successfully."
msgid "SuperUser password successfully updated."
msgstr "పాస్వర్డ్ విజయవంతంగా మార్చబడినది."
-#: plinth/modules/names/__init__.py:37
-msgid "Name Services"
-msgstr "పేరు సేవలు"
-
-#: plinth/modules/names/__init__.py:45
+#: plinth/modules/names/__init__.py:26
#, python-brace-format
msgid ""
"Name Services provides an overview of the ways {box_name} can be reached "
@@ -3180,58 +3206,62 @@ msgid ""
"enabled or disabled for incoming connections through the given name."
msgstr ""
-#: plinth/modules/names/components.py:27
+#: plinth/modules/names/__init__.py:46
+msgid "Name Services"
+msgstr "పేరు సేవలు"
+
+#: plinth/modules/names/components.py:12
msgid "All"
msgstr ""
-#: plinth/modules/names/components.py:31 plinth/modules/names/components.py:35
+#: plinth/modules/names/components.py:16 plinth/modules/names/components.py:20
msgid "All web apps"
msgstr ""
-#: plinth/modules/networks/__init__.py:42
-msgid "Networks"
-msgstr "అల్లికలు"
-
-#: plinth/modules/networks/__init__.py:45
+#: plinth/modules/networks/__init__.py:35
msgid ""
"Configure network devices. Connect to the Internet via Ethernet, Wi-Fi or "
"PPPoE. Share that connection with other devices on the network."
msgstr ""
-#: plinth/modules/networks/__init__.py:47
+#: plinth/modules/networks/__init__.py:37
msgid ""
"Devices administered through other methods may not be available for "
"configuration here."
msgstr "ఇతర పద్ధతుల ద్వారా నిర్వహించబడే పరికరాలు ఇక్కడ ఆకృతీకరణకు అందుబాటులో ఉండకపోవచ్చు."
-#: plinth/modules/networks/__init__.py:156
+#: plinth/modules/networks/__init__.py:58
+msgid "Networks"
+msgstr "అల్లికలు"
+
+#: plinth/modules/networks/__init__.py:151
#, python-brace-format
msgid "Using DNSSEC on IPv{kind}"
msgstr "IPv{kind} పై DNSSEC ఉపయోగించు"
-#: plinth/modules/networks/forms.py:32
+#: plinth/modules/networks/forms.py:16
msgid "Connection Type"
msgstr "అనుసంధాన రకం"
-#: plinth/modules/networks/forms.py:44
+#: plinth/modules/networks/forms.py:28
msgid "Connection Name"
msgstr "అనుసంధానం పేరు"
-#: plinth/modules/networks/forms.py:46
+#: plinth/modules/networks/forms.py:30
#, fuzzy
#| msgid "Interface"
msgid "Network Interface"
msgstr "అంతర్ముఖం"
-#: plinth/modules/networks/forms.py:47
+#: plinth/modules/networks/forms.py:31
msgid "The network device that this connection should be bound to."
msgstr "ఈ కనెక్షన్కు కట్టుబడి ఉండే నెట్వర్క్ పరికరం."
-#: plinth/modules/networks/forms.py:50
+#: plinth/modules/networks/forms.py:34
msgid "Firewall Zone"
msgstr "కంచుకోట క్షేత్రాం"
-#: plinth/modules/networks/forms.py:51
+#: plinth/modules/networks/forms.py:35
#, fuzzy
msgid ""
"The firewall zone will control which services are available over this "
@@ -3240,21 +3270,21 @@ msgstr ""
"ఫైర్వాల్ జోన్ ఇది సేవలు ఇంటర్ఫేస్లు అందుబాటులో ఉన్నాయి నియంత్రిస్తాయి. నమ్మదగిన నెట్వర్కులలో మాత్రమే అంతర్గత "
"ఎంచుకోండి."
-#: plinth/modules/networks/forms.py:54
-#: plinth/modules/networks/templates/connections_diagram.html:78
+#: plinth/modules/networks/forms.py:38
+#: plinth/modules/networks/templates/connections_diagram.html:63
msgid "External"
msgstr "బహిర్గత"
-#: plinth/modules/networks/forms.py:54
-#: plinth/modules/networks/templates/connections_diagram.html:107
+#: plinth/modules/networks/forms.py:38
+#: plinth/modules/networks/templates/connections_diagram.html:92
msgid "Internal"
msgstr "అంతర్గత"
-#: plinth/modules/networks/forms.py:56
+#: plinth/modules/networks/forms.py:40
msgid "IPv4 Addressing Method"
msgstr "IPv4 చిరునామా ఇచ్చు పద్ధతి"
-#: plinth/modules/networks/forms.py:58
+#: plinth/modules/networks/forms.py:41
#, fuzzy, python-brace-format
msgid ""
"\"Automatic\" method will make {box_name} acquire configuration from this "
@@ -3265,39 +3295,39 @@ msgstr ""
"{box_name}. \"భాగస్వామ్యం\" పద్దతి ఈ నెట్వర్క్ ఖాతాదారులతో ఆకృతీకరించుటకు మరియు దాని ఇంటర్నెట్ "
"కనెక్షన్ భాగస్వామ్యం, ఆపోర్టును చేస్తుంది {box_name} 2 చట్టం"
-#: plinth/modules/networks/forms.py:63
+#: plinth/modules/networks/forms.py:46
msgid "Automatic (DHCP)"
msgstr "స్వయం చాలకం (DHCP)"
-#: plinth/modules/networks/forms.py:63
+#: plinth/modules/networks/forms.py:46
msgid "Shared"
msgstr "పంచుకోబడ్డ"
-#: plinth/modules/networks/forms.py:69
+#: plinth/modules/networks/forms.py:52
msgid "Netmask"
msgstr "నెట్ మాస్క్"
-#: plinth/modules/networks/forms.py:70
+#: plinth/modules/networks/forms.py:53
msgid ""
"Optional value. If left blank, a default netmask based on the address will "
"be used."
msgstr "ఐచ్ఛిక విలువ. ఖాళీగా ఉంటే, చిరునామాపై ఆధారపడి ఒక డిఫాల్ట్ నెట్మాస్క్ ఉపయోగించబడుతుంది."
-#: plinth/modules/networks/forms.py:74 plinth/modules/networks/forms.py:104
-#: plinth/modules/networks/templates/connection_show.html:202
-#: plinth/modules/networks/templates/connection_show.html:241
+#: plinth/modules/networks/forms.py:57 plinth/modules/networks/forms.py:86
+#: plinth/modules/networks/templates/connection_show.html:187
+#: plinth/modules/networks/templates/connection_show.html:226
msgid "Gateway"
msgstr "గేట్వే"
-#: plinth/modules/networks/forms.py:74 plinth/modules/networks/forms.py:104
+#: plinth/modules/networks/forms.py:57 plinth/modules/networks/forms.py:86
msgid "Optional value."
msgstr "ఐచ్ఛిక విలువ."
-#: plinth/modules/networks/forms.py:77 plinth/modules/networks/forms.py:107
+#: plinth/modules/networks/forms.py:60 plinth/modules/networks/forms.py:89
msgid "DNS Server"
msgstr "DNS సేవకం"
-#: plinth/modules/networks/forms.py:78
+#: plinth/modules/networks/forms.py:61
#, fuzzy
msgid ""
"Optional value. If this value is given and IPv4 addressing method is "
@@ -3306,11 +3336,11 @@ msgstr ""
"ఐచ్ఛికము విలువ. ఈ విలువ ఇచ్చిన మరియు IPv4 ప్రసంగిస్తున్న పద్ధతి \"ఆటోమేటిక్\" కాకపోతే, DHCP సర్వర్ "
"అందించిన DNS సర్వర్లు విస్మరించబడుతుంది."
-#: plinth/modules/networks/forms.py:83 plinth/modules/networks/forms.py:113
+#: plinth/modules/networks/forms.py:66 plinth/modules/networks/forms.py:95
msgid "Second DNS Server"
msgstr "ద్వితీయ DNS సేవకం"
-#: plinth/modules/networks/forms.py:84
+#: plinth/modules/networks/forms.py:67
#, fuzzy
msgid ""
"Optional value. If this value is given and IPv4 Addressing Method is "
@@ -3319,11 +3349,11 @@ msgstr ""
"ఐచ్ఛికము విలువ. ఈ విలువ ఇచ్చిన మరియు IPv4 ప్రసంగిస్తూ విధానం \"ఆటోమేటిక్\" కాకపోతే, DHCP సర్వర్ "
"అందించిన DNS సర్వర్లు విస్మరించబడుతుంది."
-#: plinth/modules/networks/forms.py:89
+#: plinth/modules/networks/forms.py:72
msgid "IPv6 Addressing Method"
msgstr "IPv6 చిరునామా ఇచ్చు పద్ధతి"
-#: plinth/modules/networks/forms.py:91
+#: plinth/modules/networks/forms.py:73
#, fuzzy, python-brace-format
msgid ""
"\"Automatic\" methods will make {box_name} acquire configuration from this "
@@ -3332,31 +3362,31 @@ msgstr ""
"\"ఆటోమేటిక్\" పద్ధతులు ఒక క్లయింట్ మేకింగ్ ఈ నెట్వర్క్ నుండి {box_name} 1 ఆర్జనకు ఆకృతీకరణ "
"చేస్తుంది."
-#: plinth/modules/networks/forms.py:94 plinth/modules/networks/forms.py:259
+#: plinth/modules/networks/forms.py:76 plinth/modules/networks/forms.py:241
#, fuzzy
msgid "Automatic"
msgstr "స్వయంచాలక"
-#: plinth/modules/networks/forms.py:94
+#: plinth/modules/networks/forms.py:76
#, fuzzy
#| msgid "Automatic (DHCP)"
msgid "Automatic, DHCP only"
msgstr "స్వయం చాలకం (DHCP)"
-#: plinth/modules/networks/forms.py:95
+#: plinth/modules/networks/forms.py:77
msgid "Ignore"
msgstr "పట్టించుకోకండి"
-#: plinth/modules/networks/forms.py:99
+#: plinth/modules/networks/forms.py:81
#, fuzzy
msgid "Prefix"
msgstr "ఉపసర్గ"
-#: plinth/modules/networks/forms.py:100
+#: plinth/modules/networks/forms.py:82
msgid "Value between 1 and 128."
msgstr "1 మరియు 128 మధ్యగల విలువ."
-#: plinth/modules/networks/forms.py:108
+#: plinth/modules/networks/forms.py:90
#, fuzzy
msgid ""
"Optional value. If this value is given and IPv6 addressing method is "
@@ -3365,7 +3395,7 @@ msgstr ""
"ఐచ్ఛికము విలువ. ఈ విలువ ఇవ్వబడుతుంది ఉంటే మరియు IPv6 ప్రసంగిస్తున్న పద్ధతి \"ఆటోమేటిక్\" ఉంది, "
"DHCP సర్వర్ అందించిన DNS సర్వర్లు విస్మరించబడుతుంది"
-#: plinth/modules/networks/forms.py:114
+#: plinth/modules/networks/forms.py:96
#, fuzzy
msgid ""
"Optional value. If this value is given and IPv6 Addressing Method is "
@@ -3374,55 +3404,55 @@ msgstr ""
"ఐచ్ఛికము విలువ. ఈ విలువ ఇచ్చిన మరియు IPv6 ప్రసంగిస్తూ విధానం \"ఆటోమేటిక్\" కాకపోతే, DHCP సర్వర్ "
"అందించిన DNS సర్వర్లు విస్మరించబడుతుంది."
-#: plinth/modules/networks/forms.py:127
+#: plinth/modules/networks/forms.py:109
msgid "-- select --"
msgstr "--ఎంచుకోండి--"
-#: plinth/modules/networks/forms.py:252
-#: plinth/modules/networks/templates/connection_show.html:144
+#: plinth/modules/networks/forms.py:234
+#: plinth/modules/networks/templates/connection_show.html:129
msgid "SSID"
msgstr "SSID"
-#: plinth/modules/networks/forms.py:253
+#: plinth/modules/networks/forms.py:235
msgid "The visible name of the network."
msgstr "నెట్వర్క్ యొక్క కనిపించే పేరు."
-#: plinth/modules/networks/forms.py:255
-#: plinth/modules/networks/templates/connection_show.html:157
+#: plinth/modules/networks/forms.py:237
+#: plinth/modules/networks/templates/connection_show.html:142
msgid "Mode"
msgstr "విధం"
-#: plinth/modules/networks/forms.py:255
+#: plinth/modules/networks/forms.py:237
msgid "Infrastructure"
msgstr "ఇన్ఫ్రాస్ట్రక్చర్"
-#: plinth/modules/networks/forms.py:256
+#: plinth/modules/networks/forms.py:238
msgid "Access Point"
msgstr "ప్రాప్తి సూచి"
-#: plinth/modules/networks/forms.py:257
+#: plinth/modules/networks/forms.py:239
#, fuzzy
msgid "Ad-hoc"
msgstr "తదర్థ"
-#: plinth/modules/networks/forms.py:259
+#: plinth/modules/networks/forms.py:241
msgid "Frequency Band"
msgstr "ఫ్రీక్వెన్సీ బ్యాండ్"
-#: plinth/modules/networks/forms.py:260
+#: plinth/modules/networks/forms.py:242
msgid "A (5 GHz)"
msgstr "ఎ (5 GHz)"
-#: plinth/modules/networks/forms.py:261
+#: plinth/modules/networks/forms.py:243
msgid "B/G (2.4 GHz)"
msgstr "బి/జి(2.4GHz)"
-#: plinth/modules/networks/forms.py:263
-#: plinth/modules/networks/templates/connection_show.html:173
+#: plinth/modules/networks/forms.py:245
+#: plinth/modules/networks/templates/connection_show.html:158
msgid "Channel"
msgstr "మార్గం"
-#: plinth/modules/networks/forms.py:264
+#: plinth/modules/networks/forms.py:246
#, fuzzy
msgid ""
"Optional value. Wireless channel in the selected frequency band to restrict "
@@ -3431,11 +3461,11 @@ msgstr ""
"ఐచ్ఛికము విలువ. ఎంపిక ఫ్రీక్వెన్సీ బ్యాండ్ వైర్లెస్ ఇన్ ఛానెల్కు నిరోధించండి. ఖాళీ లేదా 0 విలువ స్వయంచాలక "
"ఎంపిక అర్థం."
-#: plinth/modules/networks/forms.py:269
+#: plinth/modules/networks/forms.py:251
msgid "BSSID"
msgstr "BSSID"
-#: plinth/modules/networks/forms.py:270
+#: plinth/modules/networks/forms.py:252
#, fuzzy
msgid ""
"Optional value. Unique identifier for the access point. When connecting to "
@@ -3445,45 +3475,85 @@ msgstr ""
"ఐచ్ఛికము విలువ. ప్రవేశ బిందువు కోసం ప్రత్యేక ఐడెంటిఫైయర్. ఒక యాక్సెస్ పాయింట్ కనెక్ట్ చేసినప్పుడు, యాక్సెస్ "
"పాయింట్ BSSID అందించిన మ్యాచ్లు మాత్రమే ఉంటే కనెక్ట్. ఉదాహరణ: 00: 11: 22: aa: BB: సిసి."
-#: plinth/modules/networks/forms.py:276
+#: plinth/modules/networks/forms.py:258
msgid "Authentication Mode"
msgstr "ప్రామాణీకరణ విధం"
-#: plinth/modules/networks/forms.py:277
+#: plinth/modules/networks/forms.py:259
#, fuzzy
msgid ""
"Select WPA if the wireless network is secured and requires clients to have "
"the password to connect."
msgstr "వైర్లెస్ నెట్వర్క్ భద్రతతో కనెక్ట్ పాస్వర్డ్ను ఖాతాదారులకు అవసరం ఉంటే WPA ఎంచుకోండి."
-#: plinth/modules/networks/forms.py:279
+#: plinth/modules/networks/forms.py:261
msgid "WPA"
msgstr "WPA (వైఫై రక్షిత యాక్సెస్)"
-#: plinth/modules/networks/forms.py:279
+#: plinth/modules/networks/forms.py:261
msgid "Open"
msgstr "తెరచిన"
+#: plinth/modules/networks/forms.py:297
+msgid "Choose your internet connection type"
+msgstr ""
+
+#: plinth/modules/networks/forms.py:301
+msgid ""
+"I have a public IP address that may change over timeThis means that devices on the Internet can reach you when you are "
+"connected to the Internet. Every time you connect to the Internet with your "
+"Internet Service Provider (ISP), you may get a different IP address, "
+"especially after some offline time. Many ISPs offer this type of "
+"connectivity. If you have a public IP address but are unsure if it changes "
+"over time or not, it is safer to choose this option.
"
+msgstr ""
+
#: plinth/modules/networks/forms.py:313
+#, python-brace-format
+msgid ""
+"I have a public IP address that does not change overtime (recommended)This means that devices on the Internet can reach you "
+"when you are connected to the Internet. Every time you connect to the "
+"Internet with your Internet Service Provider (ISP), you always get the same "
+"IP address. This is the most trouble-free setup for many {box_name} services "
+"but very few ISPs offer this. You may be able to get this service from your "
+"ISP by making an additional payment.
"
+msgstr ""
+
+#: plinth/modules/networks/forms.py:326
+#, python-brace-format
+msgid ""
+"I dont have a public IP addressThis means that "
+"devices on the Internet can not reach you when you are connected to "
+"the Internet. Every time you connect to the Internet with your Internet "
+"Service Provider (ISP), you get an IP address that is only relevant for "
+"local networks. Many ISPs offer this type of connectivity. This is the most "
+"troublesome situation for hosting services at home. {box_name} provides many "
+"workaround solutions but each solution has some limitations.
"
+msgstr ""
+
+#: plinth/modules/networks/forms.py:351
#, fuzzy
#| msgid "Current Network Configuration"
msgid "Preferred router configuration"
msgstr "ప్రస్తుత అల్లిక ఆకృతీకరణ"
-#: plinth/modules/networks/forms.py:318
+#: plinth/modules/networks/forms.py:356
#, python-brace-format
msgid ""
-"Use DMZ feature to forward all trafficMost routers "
-"provide a configuration setting called DMZ. This will allow the router to "
-"forward all incoming traffic from the internet to a single IP address such "
-"as the {box_name}'s address. First remember to configure a static local IP "
-"address for your {box_name} in your router's configuration.
"
+"Use DMZ feature to forward all traffic (recommended) Most routers provide a configuration setting called DMZ. This will allow "
+"the router to forward all incoming traffic from the Internet to a single IP "
+"address such as the {box_name}'s IP address. First remember to configure a "
+"static local IP address for your {box_name} in your router's configuration."
+"p>"
msgstr ""
-#: plinth/modules/networks/forms.py:332
+#: plinth/modules/networks/forms.py:368
#, python-brace-format
msgid ""
-"Forward Specific Traffic as needed by each application
You may alternatively choose to forward only specific traffic to your "
"{box_name}. This is ideal if you have other servers like {box_name} in your "
"network or if your router does not support DMZ feature. All applications "
@@ -3492,266 +3562,272 @@ msgid ""
"to be forwarded for that application to work.
"
msgstr ""
-#: plinth/modules/networks/forms.py:349
+#: plinth/modules/networks/forms.py:382
msgid ""
-"Router is currently unconfiguredChoose this if you "
+"Router is currently unconfigured
Choose this if you "
"have not configured or are unable to configure the router currently and wish "
"to be reminded later. Some of the other configuration steps may fail.
"
msgstr ""
-#: plinth/modules/networks/networks.py:43
+#: plinth/modules/networks/networks.py:32
msgid "Network Connections"
msgstr "నెట్వర్క్ అనుసంధానాలు"
-#: plinth/modules/networks/networks.py:59
+#: plinth/modules/networks/networks.py:46
msgid "Cannot show connection: Connection not found."
msgstr "అనుసంధానం చూపించలేము: అనుసంధానం దొరకలేదు."
-#: plinth/modules/networks/networks.py:94
+#: plinth/modules/networks/networks.py:81
msgid "Connection Information"
msgstr "అనుసంధాన సమాచారం"
-#: plinth/modules/networks/networks.py:108
+#: plinth/modules/networks/networks.py:95
msgid "Cannot edit connection: Connection not found."
msgstr "దొరకలేదు అనుసంధానం: అనుసంధానని సవరించడం సాధ్యపడదు."
-#: plinth/modules/networks/networks.py:114
+#: plinth/modules/networks/networks.py:101
msgid "This type of connection is not yet understood."
msgstr "ఇటువంటి అనుసంధాన రకం ఇంకా అర్థంకాలేదు."
-#: plinth/modules/networks/networks.py:136
-#: plinth/modules/networks/networks.py:220
-#: plinth/modules/networks/templates/connections_edit.html:35
+#: plinth/modules/networks/networks.py:123
+#: plinth/modules/networks/networks.py:207
+#: plinth/modules/networks/templates/connections_edit.html:20
msgid "Edit Connection"
msgstr "అనుసంధానాన్ని సవరించండి"
-#: plinth/modules/networks/networks.py:232
+#: plinth/modules/networks/networks.py:219
#, python-brace-format
msgid "Activated connection {name}."
msgstr "{name} అనుసంధానం ఉత్తేజించబడింది."
-#: plinth/modules/networks/networks.py:236
+#: plinth/modules/networks/networks.py:223
msgid "Failed to activate connection: Connection not found."
msgstr "అనుసంధానాన్ని ఉత్తేజించుటలో విఫలమైంది: అనుసంధానం దొరకలేదు."
-#: plinth/modules/networks/networks.py:242
+#: plinth/modules/networks/networks.py:229
#, python-brace-format
msgid "Failed to activate connection {name}: No suitable device is available."
msgstr "{name} అనుసంధానాన్ని ఉత్తేజించుటలో విఫలమైంది: సరైన పరికరం అందుబాటులో లేదు."
-#: plinth/modules/networks/networks.py:255
+#: plinth/modules/networks/networks.py:242
#, python-brace-format
msgid "Deactivated connection {name}."
msgstr "{name} అనుసంధానం క్రియారహితం చేయబడింది."
-#: plinth/modules/networks/networks.py:259
+#: plinth/modules/networks/networks.py:246
msgid "Failed to de-activate connection: Connection not found."
msgstr "అనుసంధానం క్రియారహితం విఫలమైంది: అనుసంధానం దొరకలేదు."
-#: plinth/modules/networks/networks.py:269
-#: plinth/modules/networks/templates/connections_list.html:62
-#: plinth/modules/networks/templates/connections_list.html:64
+#: plinth/modules/networks/networks.py:256
+#: plinth/modules/networks/templates/connections_list.html:12
+#: plinth/modules/networks/templates/connections_list.html:14
msgid "Nearby Wi-Fi Networks"
msgstr "సమీప వై-ఫై నెట్వర్కులు"
-#: plinth/modules/networks/networks.py:293
-#: plinth/modules/networks/templates/connections_list.html:67
-#: plinth/modules/networks/templates/connections_list.html:69
-#: plinth/modules/wireguard/templates/wireguard_add_server.html:34
+#: plinth/modules/networks/networks.py:280
+#: plinth/modules/networks/templates/connections_list.html:17
+#: plinth/modules/networks/templates/connections_list.html:19
+#: plinth/modules/wireguard/templates/wireguard_add_server.html:19
msgid "Add Connection"
msgstr "అనుసంధానాన్ని జతచేయండి"
-#: plinth/modules/networks/networks.py:311
+#: plinth/modules/networks/networks.py:298
#, fuzzy
#| msgid "Adding New Ethernet Connection"
msgid "Adding New Generic Connection"
msgstr "కొత్త ఈథర్నెట్ అనుసంధానాన్ని కలుపుతోంది"
-#: plinth/modules/networks/networks.py:329
+#: plinth/modules/networks/networks.py:316
msgid "Adding New Ethernet Connection"
msgstr "కొత్త ఈథర్నెట్ అనుసంధానాన్ని కలుపుతోంది"
-#: plinth/modules/networks/networks.py:347
+#: plinth/modules/networks/networks.py:334
msgid "Adding New PPPoE Connection"
msgstr "కొత్త PPPoE అనుసంధానాన్ని కలుపుతోంది"
-#: plinth/modules/networks/networks.py:382
+#: plinth/modules/networks/networks.py:369
msgid "Adding New Wi-Fi Connection"
msgstr "కొత్త వై-ఫై అనుసంధానాన్ని కలుపుతోంది"
-#: plinth/modules/networks/networks.py:397
+#: plinth/modules/networks/networks.py:384
#, python-brace-format
msgid "Connection {name} deleted."
msgstr "{name} అనుసంధానం తొలగించబడింది."
-#: plinth/modules/networks/networks.py:401
-#: plinth/modules/networks/networks.py:411
+#: plinth/modules/networks/networks.py:388
+#: plinth/modules/networks/networks.py:398
msgid "Failed to delete connection: Connection not found."
msgstr "అనుసంధానం తొలగించడం విఫలమైంది: అనుసంధానం దొరకలేదు."
-#: plinth/modules/networks/networks.py:416
-#: plinth/modules/networks/templates/connections_delete.html:26
+#: plinth/modules/networks/networks.py:403
+#: plinth/modules/networks/templates/connections_delete.html:11
msgid "Delete Connection"
msgstr "అనుసంధానం తొలగించు"
-#: plinth/modules/networks/networks.py:442
+#: plinth/modules/networks/networks.py:428
#, fuzzy
#| msgid "Tor configuration is being updated"
msgid "Router configuration type saved."
msgstr "టోర్ ఆకృతీకరణ నవీకరించబడుతుంది"
-#: plinth/modules/networks/templates/connection_show.html:43
+#: plinth/modules/networks/networks.py:474
+#, fuzzy
+#| msgid "Tor configuration is being updated"
+msgid "Internet connection type saved."
+msgstr "టోర్ ఆకృతీకరణ నవీకరించబడుతుంది"
+
+#: plinth/modules/networks/templates/connection_show.html:28
msgid "Edit connection"
msgstr "అనుసంధానాన్ని సవరించు"
-#: plinth/modules/networks/templates/connection_show.html:43
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:83
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:84
-#: plinth/templates/base.html:167 plinth/templates/base.html:168
+#: plinth/modules/networks/templates/connection_show.html:28
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:68
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:69
+#: plinth/templates/base.html:152 plinth/templates/base.html:153
msgid "Edit"
msgstr "సవరించు"
-#: plinth/modules/networks/templates/connection_show.html:50
-#: plinth/modules/networks/templates/connections_list.html:90
+#: plinth/modules/networks/templates/connection_show.html:35
+#: plinth/modules/networks/templates/connections_list.html:40
msgid "Deactivate"
msgstr "క్రియారహితం చేయి"
-#: plinth/modules/networks/templates/connection_show.html:57
-#: plinth/modules/networks/templates/connections_list.html:98
+#: plinth/modules/networks/templates/connection_show.html:42
+#: plinth/modules/networks/templates/connections_list.html:48
msgid "Activate"
msgstr "క్రియాశీలించు"
-#: plinth/modules/networks/templates/connection_show.html:63
+#: plinth/modules/networks/templates/connection_show.html:48
msgid "Delete connection"
msgstr "అనుసంధానం తొలగించండి"
-#: plinth/modules/networks/templates/connection_show.html:66
-#: plinth/modules/networks/templates/connections_diagram.html:73
-#: plinth/modules/networks/templates/connections_diagram.html:76
-#: plinth/modules/networks/templates/connections_diagram.html:105
-#: plinth/modules/networks/templates/connections_diagram.html:127
+#: plinth/modules/networks/templates/connection_show.html:51
+#: plinth/modules/networks/templates/connections_diagram.html:58
+#: plinth/modules/networks/templates/connections_diagram.html:61
+#: plinth/modules/networks/templates/connections_diagram.html:90
+#: plinth/modules/networks/templates/connections_diagram.html:112
msgid "Connection"
msgstr "అనుసంధానం"
-#: plinth/modules/networks/templates/connection_show.html:71
+#: plinth/modules/networks/templates/connection_show.html:56
msgid "Primary connection"
msgstr "ప్రాథమిక అనుసంధానం"
-#: plinth/modules/networks/templates/connection_show.html:73
-#: plinth/modules/networks/templates/connection_show.html:217
-#: plinth/modules/networks/templates/connection_show.html:256
+#: plinth/modules/networks/templates/connection_show.html:58
+#: plinth/modules/networks/templates/connection_show.html:202
+#: plinth/modules/networks/templates/connection_show.html:241
msgid "yes"
msgstr "అవును"
-#: plinth/modules/networks/templates/connection_show.html:84
-#: plinth/modules/storage/templates/storage.html:40
+#: plinth/modules/networks/templates/connection_show.html:69
+#: plinth/modules/storage/templates/storage.html:25
msgid "Device"
msgstr "పరికరం"
-#: plinth/modules/networks/templates/connection_show.html:88
+#: plinth/modules/networks/templates/connection_show.html:73
msgid "State"
msgstr "స్థితి"
-#: plinth/modules/networks/templates/connection_show.html:93
+#: plinth/modules/networks/templates/connection_show.html:78
msgid "State reason"
msgstr "స్థితి కారణాం"
-#: plinth/modules/networks/templates/connection_show.html:102
+#: plinth/modules/networks/templates/connection_show.html:87
msgid "MAC address"
msgstr "MAC చిరునామా"
-#: plinth/modules/networks/templates/connection_show.html:106
+#: plinth/modules/networks/templates/connection_show.html:91
msgid "Interface"
msgstr "అంతర్ముఖం"
-#: plinth/modules/networks/templates/connection_show.html:110
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:33
-#: plinth/modules/snapshot/templates/snapshot_manage.html:45
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:41
+#: plinth/modules/networks/templates/connection_show.html:95
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:18
+#: plinth/modules/snapshot/templates/snapshot_manage.html:30
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:26
msgid "Description"
msgstr "వివరణ"
-#: plinth/modules/networks/templates/connection_show.html:116
+#: plinth/modules/networks/templates/connection_show.html:101
msgid "Physical Link"
msgstr "శారీరక జోడింపు"
-#: plinth/modules/networks/templates/connection_show.html:121
+#: plinth/modules/networks/templates/connection_show.html:106
msgid "Link state"
msgstr "జోడింపు స్థితి"
-#: plinth/modules/networks/templates/connection_show.html:125
+#: plinth/modules/networks/templates/connection_show.html:110
msgid "cable is connected"
msgstr "కేబుల్ అనుసంధానించబడిన"
-#: plinth/modules/networks/templates/connection_show.html:128
+#: plinth/modules/networks/templates/connection_show.html:113
msgid "please check cable"
msgstr "దయచేసి కేబుల్ తనిఖీ చెయ్యండి"
-#: plinth/modules/networks/templates/connection_show.html:133
-#: plinth/modules/networks/templates/connection_show.html:149
+#: plinth/modules/networks/templates/connection_show.html:118
+#: plinth/modules/networks/templates/connection_show.html:134
msgid "Speed"
msgstr "వేగం"
-#: plinth/modules/networks/templates/connection_show.html:135
+#: plinth/modules/networks/templates/connection_show.html:120
#, python-format
msgid "%(ethernet_speed)s Mbit/s"
msgstr "%(ethernet_speed)s Mbit/s"
-#: plinth/modules/networks/templates/connection_show.html:151
+#: plinth/modules/networks/templates/connection_show.html:136
#, python-format
msgid "%(wireless_bitrate)s Mbit/s"
msgstr "%(wireless_bitrate)s Mbit/s"
-#: plinth/modules/networks/templates/connection_show.html:163
+#: plinth/modules/networks/templates/connection_show.html:148
msgid "Signal strength"
msgstr "సంకేత బలం"
-#: plinth/modules/networks/templates/connection_show.html:181
+#: plinth/modules/networks/templates/connection_show.html:166
msgid "IPv4"
msgstr "IPv4"
-#: plinth/modules/networks/templates/connection_show.html:186
-#: plinth/modules/networks/templates/connection_show.html:227
-#: plinth/modules/shadowsocks/forms.py:64
+#: plinth/modules/networks/templates/connection_show.html:171
+#: plinth/modules/networks/templates/connection_show.html:212
+#: plinth/modules/shadowsocks/forms.py:49
msgid "Method"
msgstr "పద్దతి"
-#: plinth/modules/networks/templates/connection_show.html:193
-#: plinth/modules/networks/templates/connection_show.html:234
+#: plinth/modules/networks/templates/connection_show.html:178
+#: plinth/modules/networks/templates/connection_show.html:219
msgid "IP address"
msgstr "IP చిరునామా"
-#: plinth/modules/networks/templates/connection_show.html:209
-#: plinth/modules/networks/templates/connection_show.html:248
+#: plinth/modules/networks/templates/connection_show.html:194
+#: plinth/modules/networks/templates/connection_show.html:233
msgid "DNS server"
msgstr "సేవిక"
-#: plinth/modules/networks/templates/connection_show.html:216
-#: plinth/modules/networks/templates/connection_show.html:255
-#: plinth/modules/storage/forms.py:156
+#: plinth/modules/networks/templates/connection_show.html:201
+#: plinth/modules/networks/templates/connection_show.html:240
+#: plinth/modules/storage/forms.py:141
msgid "Default"
msgstr "అప్రమేయం"
-#: plinth/modules/networks/templates/connection_show.html:222
+#: plinth/modules/networks/templates/connection_show.html:207
msgid "IPv6"
msgstr "IPv6"
-#: plinth/modules/networks/templates/connection_show.html:263
+#: plinth/modules/networks/templates/connection_show.html:248
msgid "This connection is not active."
msgstr "ఈ అనుసంధానం చురుకుగాలేదు."
-#: plinth/modules/networks/templates/connection_show.html:266
-#: plinth/modules/security/__init__.py:38 plinth/modules/security/views.py:47
+#: plinth/modules/networks/templates/connection_show.html:251
+#: plinth/modules/security/__init__.py:45
msgid "Security"
msgstr "భద్రత"
-#: plinth/modules/networks/templates/connection_show.html:271
-#: plinth/modules/networks/templates/connection_show.html:291
-#: plinth/modules/networks/templates/connection_show.html:310
+#: plinth/modules/networks/templates/connection_show.html:256
+#: plinth/modules/networks/templates/connection_show.html:276
+#: plinth/modules/networks/templates/connection_show.html:295
msgid "Firewall zone"
msgstr "ఫైర్వాల్ క్షేత్రాం"
-#: plinth/modules/networks/templates/connection_show.html:280
+#: plinth/modules/networks/templates/connection_show.html:265
#, fuzzy
msgid ""
"This interface should be connected to a local network/machine. If you "
@@ -3761,7 +3837,7 @@ msgstr ""
"ఈ ఇంటర్ఫేస్ ఒక స్థానిక నెట్వర్క్ / యంత్రానికి కనెక్ట్ చేయాలి. మీరు పబ్లిక్ నెట్వర్క్ ఈ ఇంటర్ఫేస్ కనెక్ట్ ఉంటే, "
"సేవలు కేవలం అంతర్గతంగానే బాహ్యంగా అందుబాటులో అవుతుంది అందుబాటులో ఉండాలి అర్థం. ఈ ప్రమాదం ఉంది."
-#: plinth/modules/networks/templates/connection_show.html:300
+#: plinth/modules/networks/templates/connection_show.html:285
#, fuzzy
msgid ""
"This interface should receive your Internet connection. If you connect it to "
@@ -3771,7 +3847,7 @@ msgstr ""
"ఈ ఇంటర్ఫేస్ మీ ఇంటర్నెట్ కనెక్షన్ అందుకోవాలి. మీరు ఒక స్థానిక నెట్వర్క్ / యంత్రానికి దానిని కనెక్ట్ ఉంటే, "
"కేవలం అంతర్గతంగానే అందుబాటులో అనేది అనేక సేవలు అందుబాటులో వుండదు."
-#: plinth/modules/networks/templates/connection_show.html:319
+#: plinth/modules/networks/templates/connection_show.html:304
#, fuzzy, python-format
msgid ""
"This interface is not maintained by %(box_name)s. Its security status is "
@@ -3783,114 +3859,141 @@ msgstr ""
"% (box_name) లు 3 సేవలు ఇంటర్ఫేస్ అందుబాటులో కాకపోవచ్చు. ఇది మీరు సోమరిగాచేయు లేదా ఈ కనెక్షన్ "
"తొలగించి దీన్ని తిరిగి ఆకృతీకరించుటకు మద్దతిస్తుంది."
-#: plinth/modules/networks/templates/connections_create.html:34
+#: plinth/modules/networks/templates/connections_create.html:19
msgid "Create Connection"
msgstr "అనుసంధానం సృష్టించు"
-#: plinth/modules/networks/templates/connections_delete.html:29
+#: plinth/modules/networks/templates/connections_delete.html:14
#, python-format
msgid "Delete connection %(name)s permanently?"
msgstr "%(name)s అనుసంధానం శాశ్వతంగా తొలగించు ?"
-#: plinth/modules/networks/templates/connections_diagram.html:65
+#: plinth/modules/networks/templates/connections_diagram.html:50
msgid "Internet"
msgstr "ఇంటర్ నెట్"
-#: plinth/modules/networks/templates/connections_diagram.html:70
-#: plinth/modules/networks/templates/connections_diagram.html:102
+#: plinth/modules/networks/templates/connections_diagram.html:55
+#: plinth/modules/networks/templates/connections_diagram.html:87
msgid "Spacing"
msgstr "అంతరం"
-#: plinth/modules/networks/templates/connections_diagram.html:83
-#: plinth/modules/networks/templates/connections_diagram.html:113
-#: plinth/network.py:40
+#: plinth/modules/networks/templates/connections_diagram.html:68
+#: plinth/modules/networks/templates/connections_diagram.html:98
+#: plinth/network.py:25
msgid "Ethernet"
msgstr "ఈథర్నెట్"
-#: plinth/modules/networks/templates/connections_diagram.html:86
-#: plinth/modules/networks/templates/connections_diagram.html:116
-#: plinth/network.py:41
+#: plinth/modules/networks/templates/connections_diagram.html:71
+#: plinth/modules/networks/templates/connections_diagram.html:101
+#: plinth/network.py:26
msgid "Wi-Fi"
msgstr "Wi-Fi"
-#: plinth/modules/networks/templates/connections_diagram.html:89
+#: plinth/modules/networks/templates/connections_diagram.html:74
#, python-format
msgid "Show connection %(connection.name)s"
msgstr "అనుసంధానం చూపించు %(connection.name)s"
-#: plinth/modules/networks/templates/connections_diagram.html:119
+#: plinth/modules/networks/templates/connections_diagram.html:104
#, python-format
msgid "Show connection %(name)s"
msgstr "అనుసంధానం చూపించు %(name)s"
-#: plinth/modules/networks/templates/connections_diagram.html:131
+#: plinth/modules/networks/templates/connections_diagram.html:116
msgid "Computer"
msgstr "కంప్యూటర్"
-#: plinth/modules/networks/templates/connections_list.html:58
+#: plinth/modules/networks/templates/connections_list.html:8
#, fuzzy
#| msgid "Connection"
msgid "Connections"
msgstr "అనుసంధానం"
-#: plinth/modules/networks/templates/connections_list.html:79
+#: plinth/modules/networks/templates/connections_list.html:29
#, python-format
msgid "Delete connection %(name)s"
msgstr "అనుసంధానం తొలగించు %(name)s"
-#: plinth/modules/networks/templates/connections_list.html:104
+#: plinth/modules/networks/templates/connections_list.html:54
msgid "Active"
msgstr "క్రియాశీల"
-#: plinth/modules/networks/templates/connections_list.html:107
+#: plinth/modules/networks/templates/connections_list.html:57
msgid "Inactive"
msgstr "క్రియారహిత"
-#: plinth/modules/networks/templates/connections_list.html:124
-#, python-format
-msgid "%(box_name)s Internet Connectivity"
+#: plinth/modules/networks/templates/connections_type_select.html:19
+msgid "Create..."
+msgstr "సృష్టించు..."
+
+#: plinth/modules/networks/templates/internet_connectivity_content.html:10
+msgid "What Type Of Internet Connection Do You Have?"
msgstr ""
-#: plinth/modules/networks/templates/connections_list.html:129
-#, python-format
+#: plinth/modules/networks/templates/internet_connectivity_content.html:16
msgid ""
-"The following best describes how your %(box_name)s is connected in your "
-"network. This information is used only to suggest necessary configuration "
-"actions."
+"Select an option that best describes the type of Internet connection. This "
+"information is used only to guide you with further setup."
msgstr ""
-#: plinth/modules/networks/templates/connections_list.html:137
-#, python-format
+#: plinth/modules/networks/templates/internet_connectivity_firstboot.html:18
+#: plinth/modules/networks/templates/router_configuration_firstboot.html:18
+#, fuzzy
+#| msgid "skip this step"
+msgid "Skip this step"
+msgstr "ఈ దశను దాటవేయి"
+
+#: plinth/modules/networks/templates/internet_connectivity_firstboot.html:19
+#: plinth/modules/networks/templates/router_configuration_firstboot.html:19
+msgid "Next"
+msgstr "తర్వాత"
+
+#: plinth/modules/networks/templates/internet_connectivity_main.html:9
+#, fuzzy
+#| msgid "Connection Type"
+msgid "Your Internet Connection Type"
+msgstr "అనుసంధాన రకం"
+
+#: plinth/modules/networks/templates/internet_connectivity_main.html:14
msgid ""
-"Your %(box_name)s gets its internet from your Router via WiFi or Ethernet "
-"cable. This is a typical home setup."
+"The following best describes the type of Internet connection provided by "
+"your ISP. This information is only used to suggest you necessary "
+"configuration actions."
msgstr ""
-#: plinth/modules/networks/templates/connections_list.html:145
-#: plinth/modules/networks/templates/connections_list.html:147
+#: plinth/modules/networks/templates/internet_connectivity_main.html:23
+msgid "My ISP provides a public IP address that does not change over time."
+msgstr ""
+
+#: plinth/modules/networks/templates/internet_connectivity_main.html:27
+msgid "My ISP provides a public IP address that may change over time."
+msgstr ""
+
+#: plinth/modules/networks/templates/internet_connectivity_main.html:31
+msgid "My ISP does not provide a public IP address."
+msgstr ""
+
+#: plinth/modules/networks/templates/internet_connectivity_main.html:37
+#: plinth/modules/networks/templates/router_configuration_main.html:29
#, fuzzy
#| msgid "Update"
msgid "Update..."
msgstr "నవీకరణ యూ.ఆర్.ఎల్"
-#: plinth/modules/networks/templates/connections_type_select.html:34
-msgid "Create..."
-msgstr "సృష్టించు..."
-
-#: plinth/modules/networks/templates/router_configuration_content.html:25
+#: plinth/modules/networks/templates/router_configuration_content.html:10
#, fuzzy, python-format
#| msgid "%(box_name)s is up to date."
msgid "Setup %(box_name)s Behind a Router"
msgstr "%(box_name)s తాజాగా ఉంది."
-#: plinth/modules/networks/templates/router_configuration_content.html:31
+#: plinth/modules/networks/templates/router_configuration_content.html:16
#, python-format
msgid ""
"Your %(box_name)s gets its internet connection from your router via Wi-Fi or "
"Ethernet cable. This is a typical home setup."
msgstr ""
-#: plinth/modules/networks/templates/router_configuration_content.html:38
+#: plinth/modules/networks/templates/router_configuration_content.html:23
#, python-format
msgid ""
"With this setup, any device on the internet trying to reach your "
@@ -3899,24 +4002,24 @@ msgid ""
"the services."
msgstr ""
-#: plinth/modules/networks/templates/router_configuration_content.html:47
+#: plinth/modules/networks/templates/router_configuration_content.html:32
msgid ""
"If you don't have control over your router, choose not to configure it. To "
-"see options, to overcome this limitation, choose 'no public address' option "
+"see options to overcome this limitation, choose 'no public address' option "
"in Internet connection type selection."
msgstr ""
-#: plinth/modules/networks/templates/router_configuration_content.html:54
+#: plinth/modules/networks/templates/router_configuration_content.html:39
msgid "Choose How You Wish to Configure Your Router"
msgstr ""
-#: plinth/modules/networks/templates/router_configuration_content.html:57
+#: plinth/modules/networks/templates/router_configuration_content.html:42
msgid ""
"You will need to login to your router's administration console provided by "
"the router. This may look like one of the following:"
msgstr ""
-#: plinth/modules/networks/templates/router_configuration_content.html:69
+#: plinth/modules/networks/templates/router_configuration_content.html:54
msgid ""
"The username and password is configured by you when you first setup the "
"router. For many routers, this information is printed at the back of the "
@@ -3926,28 +4029,27 @@ msgid ""
"full instructions on how to perform this task."
msgstr ""
-#: plinth/modules/networks/templates/router_configuration_firstboot.html:33
-msgid "skip this step"
-msgstr "ఈ దశను దాటవేయి"
+#: plinth/modules/networks/templates/router_configuration_main.html:9
+#, python-format
+msgid "%(box_name)s Internet Connectivity"
+msgstr ""
-#: plinth/modules/networks/templates/router_configuration_firstboot.html:35
-msgid "Next"
-msgstr "తర్వాత"
+#: plinth/modules/networks/templates/router_configuration_main.html:15
+#, python-format
+msgid ""
+"The following best describes how your %(box_name)s is connected in your "
+"network. This information is used only to suggest necessary configuration "
+"actions."
+msgstr ""
-#: plinth/modules/openvpn/__init__.py:39 plinth/modules/openvpn/manifest.py:33
-#, fuzzy
-#| msgid "Open"
-msgid "OpenVPN"
-msgstr "తెరచిన"
+#: plinth/modules/networks/templates/router_configuration_main.html:23
+#, python-format
+msgid ""
+"Your %(box_name)s gets its Internet from your Router via Wi-Fi or Ethernet "
+"cable. This is a typical home setup."
+msgstr ""
-#: plinth/modules/openvpn/__init__.py:43
-#: plinth/modules/wireguard/__init__.py:40
-#, fuzzy
-#| msgid "Virtual Private Network (OpenVPN)"
-msgid "Virtual Private Network"
-msgstr "స్వంత్ర అల్లిక వాస్తవప్రతిరూపం (OpenVPN)"
-
-#: plinth/modules/openvpn/__init__.py:47
+#: plinth/modules/openvpn/__init__.py:26
#, fuzzy, python-brace-format
msgid ""
"Virtual Private Network (VPN) is a technique for securely connecting two "
@@ -3963,22 +4065,35 @@ msgstr ""
"మిగిలిన ఇంటర్నెట్ను యాక్సెస్ చేయవచ్చు మీ {box_name} 1 అనుసంధానించవచ్చు అదనపు భద్రత మరియు "
"అనామకత్వం కోసం."
-#: plinth/modules/openvpn/__init__.py:79
+#: plinth/modules/openvpn/__init__.py:49 plinth/modules/openvpn/manifest.py:18
+#, fuzzy
+#| msgid "Open"
+msgid "OpenVPN"
+msgstr "తెరచిన"
+
+#: plinth/modules/openvpn/__init__.py:50
+#: plinth/modules/wireguard/__init__.py:53
+#, fuzzy
+#| msgid "Virtual Private Network (OpenVPN)"
+msgid "Virtual Private Network"
+msgstr "స్వంత్ర అల్లిక వాస్తవప్రతిరూపం (OpenVPN)"
+
+#: plinth/modules/openvpn/__init__.py:61
#, python-brace-format
msgid ""
"Download Profile"
msgstr ""
"స్థూల వివరం దిగుమతి"
-#: plinth/modules/openvpn/forms.py:27
+#: plinth/modules/openvpn/forms.py:12
msgid "Enable OpenVPN server"
msgstr "సేవిక తెరవండిVPN అమలుచెయ్యి"
-#: plinth/modules/openvpn/manifest.py:63
-msgid "TunnelBlick"
+#: plinth/modules/openvpn/manifest.py:48
+msgid "Tunnelblick"
msgstr ""
-#: plinth/modules/openvpn/templates/openvpn.html:42
+#: plinth/modules/openvpn/templates/openvpn.html:27
#, fuzzy, python-format
msgid ""
"OpenVPN has not yet been setup. Performing a secure setup takes a very long "
@@ -3989,15 +4104,15 @@ msgstr ""
"(box_name) లు 1 ఆధారపడి, అది కూడా గంటల సమయం పట్టవచ్చు. సెటప్ ఆటకం, మీరు మళ్ళీ దాన్ని మొదలు "
"పెడతాయి."
-#: plinth/modules/openvpn/templates/openvpn.html:55
+#: plinth/modules/openvpn/templates/openvpn.html:40
msgid "Start setup"
msgstr "అమర్చిపెట్టు ప్రారంభం"
-#: plinth/modules/openvpn/templates/openvpn.html:64
+#: plinth/modules/openvpn/templates/openvpn.html:49
msgid "OpenVPN setup is running"
msgstr "అమర్చిపెటినా తెరిచినVPNనడుస్తుంది"
-#: plinth/modules/openvpn/templates/openvpn.html:68
+#: plinth/modules/openvpn/templates/openvpn.html:53
#, fuzzy, python-format
msgid ""
"To perform a secure setup, this process takes a very long time. Depending "
@@ -4007,11 +4122,11 @@ msgstr ""
"సురక్షిత సెటప్ చెయ్యడానికి, ఈ ప్రక్రియ చాలా కాలం పడుతుంది. మీ% ఎంత వేగంగా (box_name) లు 1 "
"ఆధారపడి, అది కూడా గంటల సమయం పట్టవచ్చు. సెటప్ ఆటకం, మీరు మళ్ళీ దాన్ని మొదలు పెడతాయి."
-#: plinth/modules/openvpn/templates/openvpn.html:87
+#: plinth/modules/openvpn/templates/openvpn.html:72
msgid "Profile"
msgstr "స్థూల వివరం"
-#: plinth/modules/openvpn/templates/openvpn.html:90
+#: plinth/modules/openvpn/templates/openvpn.html:75
#, fuzzy, python-format
msgid ""
"To connect to %(box_name)s's VPN, you need to download a profile and feed it "
@@ -4025,35 +4140,24 @@ msgstr ""
"OpenVPN\"> 2documentation 3 title=\"%(box_name)s ఆకృతీకరించుటకు ఎలా సిఫార్సు "
"ఖాతాదారులకు మరియు సూచనలతో వాటిని."
-#: plinth/modules/openvpn/templates/openvpn.html:100
+#: plinth/modules/openvpn/templates/openvpn.html:85
#, python-format
msgid "Profile is specific to each user of %(box_name)s. Keep it a secret."
msgstr "ప్రొఫైల్ ప్రతి %(box_name)s వాడుకరికి నిర్ధిష్టమైనది. దాన్ని రహస్యంగా ఉంచండి."
-#: plinth/modules/openvpn/templates/openvpn.html:111
+#: plinth/modules/openvpn/templates/openvpn.html:96
msgid "Download my profile"
msgstr "నా స్థూలవివరంల దిగుమతి"
-#: plinth/modules/openvpn/views.py:133
+#: plinth/modules/openvpn/views.py:114
msgid "Setup completed."
msgstr "అమరక పూర్తయ్యింది."
-#: plinth/modules/openvpn/views.py:135
+#: plinth/modules/openvpn/views.py:116
msgid "Setup failed."
msgstr "అమరక విఫలమైంది."
-#: plinth/modules/pagekite/__init__.py:39
-#, fuzzy
-#| msgid "Pagekite"
-msgid "PageKite"
-msgstr "పేజ్ కైట్"
-
-#: plinth/modules/pagekite/__init__.py:41
-#, fuzzy
-msgid "Public Visibility"
-msgstr "పబ్లిక్ దృష్టి గోచరత (PageKite)"
-
-#: plinth/modules/pagekite/__init__.py:45
+#: plinth/modules/pagekite/__init__.py:26
#, fuzzy, python-brace-format
msgid ""
"PageKite is a system for exposing {box_name} services when you don't have a "
@@ -4065,17 +4169,17 @@ msgstr ""
"లేనప్పుడు కోసం ఒక వ్యవస్థ. మీ {box_name} 2 సేవలు ఇంటర్నెట్ మిగిలిన నుండి అందుబాటులో ఉంటే మీరు "
"మాత్రమే ఈ అవసరం. ఈ క్రింది సందర్భాలలో కలిగి:"
-#: plinth/modules/pagekite/__init__.py:50
+#: plinth/modules/pagekite/__init__.py:31
#, fuzzy, python-brace-format
msgid "{box_name} is behind a restricted firewall."
msgstr "{Box_name} 1 నిరోధిత ఫైర్వాల్ వెనుక ఉంది."
-#: plinth/modules/pagekite/__init__.py:53
+#: plinth/modules/pagekite/__init__.py:34
#, 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:55
+#: plinth/modules/pagekite/__init__.py:36
#, fuzzy
msgid ""
"Your ISP does not provide you an external IP address and instead provides "
@@ -4084,7 +4188,7 @@ msgstr ""
"మీ ISP మీరు ఒక బాహ్య IP చిరునామా అందించడం లేదు మరియు బదులుగా NAT ద్వారా ఇంటర్నెట్ కనెక్షన్ "
"అందిస్తుంది."
-#: plinth/modules/pagekite/__init__.py:57
+#: plinth/modules/pagekite/__init__.py:38
#, fuzzy
msgid ""
"Your ISP does not provide you a static IP address and your IP address "
@@ -4093,12 +4197,12 @@ msgstr ""
"మీ ISP మీరు స్టాటిక్ IP చిరునామా అందించడం లేదు మరియు మీ IP చిరునామా మీరు ఇంటర్నెట్ కు కనెక్ట్ ప్రతి "
"సమయ మార్పులు."
-#: plinth/modules/pagekite/__init__.py:59
+#: plinth/modules/pagekite/__init__.py:40
#, fuzzy
msgid "Your ISP limits incoming connections."
msgstr "మీ ISP ఇన్కమింగ్ కనెక్షన్లను పరిమితం చేస్తుంది."
-#: plinth/modules/pagekite/__init__.py:61
+#: plinth/modules/pagekite/__init__.py:42
#, fuzzy, python-brace-format
#| msgid ""
#| "PageKite works around NAT, firewalls and IP-address limitations by using "
@@ -4117,17 +4221,28 @@ msgstr ""
"ఉపయోగించడానికి 3 సాధ్యం కావచ్చు ఉదాహరణకు pagekite."
"net కోసం, ఏ pagekite సేవా ప్రదాత ఉపయోగించవచ్చు."
-#: plinth/modules/pagekite/__init__.py:87
+#: plinth/modules/pagekite/__init__.py:62
+#, fuzzy
+#| msgid "Pagekite"
+msgid "PageKite"
+msgstr "పేజ్ కైట్"
+
+#: plinth/modules/pagekite/__init__.py:64
+#, fuzzy
+msgid "Public Visibility"
+msgstr "పబ్లిక్ దృష్టి గోచరత (PageKite)"
+
+#: plinth/modules/pagekite/__init__.py:74
#, fuzzy
msgid "PageKite Domain"
msgstr "PageKite ఖాతా"
-#: plinth/modules/pagekite/forms.py:66
+#: plinth/modules/pagekite/forms.py:51
#, fuzzy
msgid "Server domain"
msgstr "సర్వర్ డొమైన్"
-#: plinth/modules/pagekite/forms.py:68
+#: plinth/modules/pagekite/forms.py:53
#, fuzzy
msgid ""
"Select your pagekite server. Set \"pagekite.net\" to use the default "
@@ -4136,81 +4251,81 @@ msgstr ""
"మీ pagekite సర్వర్ ఎంచుకోండి. డిఫాల్ట్ pagekite.net సర్వర్ ఉపయోగించడానికి \"pagekite.net\" "
"సెట్."
-#: plinth/modules/pagekite/forms.py:71 plinth/modules/shadowsocks/forms.py:55
+#: plinth/modules/pagekite/forms.py:56 plinth/modules/shadowsocks/forms.py:40
msgid "Server port"
msgstr "సర్వర్ పోర్ట్"
-#: plinth/modules/pagekite/forms.py:72
+#: plinth/modules/pagekite/forms.py:57
msgid "Port of your pagekite server (default: 80)"
msgstr "మీ పేజ్కైట్ సర్వర్ యొక్క పోర్ట్ (డిఫాల్ట్: 80)"
-#: plinth/modules/pagekite/forms.py:74
+#: plinth/modules/pagekite/forms.py:59
msgid "Kite name"
msgstr "కైట్ పేరు"
-#: plinth/modules/pagekite/forms.py:75
+#: plinth/modules/pagekite/forms.py:60
msgid "Example: mybox.pagekite.me"
msgstr "ఉదాహరణ: mybox.pagekite.me"
-#: plinth/modules/pagekite/forms.py:77
+#: plinth/modules/pagekite/forms.py:62
msgid "Invalid kite name"
msgstr "చెల్లని కైట్ పేరు"
-#: plinth/modules/pagekite/forms.py:81
+#: plinth/modules/pagekite/forms.py:66
msgid "Kite secret"
msgstr "కైట్ రహస్యము"
-#: plinth/modules/pagekite/forms.py:82
+#: plinth/modules/pagekite/forms.py:67
#, fuzzy
msgid ""
"A secret associated with the kite or the default secret for your account if "
"no secret is set on the kite."
msgstr "గాలిపటం లేదా రహస్యం గాలిపటం సెట్ అయితే మీ ఖాతా కోసం డిఫాల్ట్ రహస్య అనుబంధించబడిన ఒక రహస్య."
-#: plinth/modules/pagekite/forms.py:98
+#: plinth/modules/pagekite/forms.py:83
msgid "Kite details set"
msgstr "కైట్ వివరాలు సెట్ చేయబడ్డాయి"
-#: plinth/modules/pagekite/forms.py:105
+#: plinth/modules/pagekite/forms.py:90
#, fuzzy
msgid "Pagekite server set"
msgstr "Pagekite సర్వర్ సెట్"
-#: plinth/modules/pagekite/forms.py:129
+#: plinth/modules/pagekite/forms.py:114
#, fuzzy
msgid "PageKite enabled"
msgstr "PageKite ఎనేబుల్"
-#: plinth/modules/pagekite/forms.py:132
+#: plinth/modules/pagekite/forms.py:117
#, fuzzy
msgid "PageKite disabled"
msgstr "PageKite వికలాంగ"
-#: plinth/modules/pagekite/forms.py:148
+#: plinth/modules/pagekite/forms.py:133
#, fuzzy
msgid "protocol"
msgstr "ప్రోటోకాల్"
-#: plinth/modules/pagekite/forms.py:151
+#: plinth/modules/pagekite/forms.py:136
#, fuzzy
msgid "external (frontend) port"
msgstr "బాహ్య (ఫ్రంటెండ్) పోర్ట్"
-#: plinth/modules/pagekite/forms.py:154
+#: plinth/modules/pagekite/forms.py:139
#, fuzzy
msgid "internal (freedombox) port"
msgstr "అంతర్గత (freedombox) పోర్ట్"
-#: plinth/modules/pagekite/forms.py:155
+#: plinth/modules/pagekite/forms.py:140
msgid "Enable Subdomains"
msgstr "సబ్డొమైన్లు క్రియాశీలీకరించు"
-#: plinth/modules/pagekite/forms.py:189
+#: plinth/modules/pagekite/forms.py:174
#, fuzzy
msgid "Deleted custom service"
msgstr "తొలగించినవి కస్టమ్ సేవ"
-#: plinth/modules/pagekite/forms.py:222
+#: plinth/modules/pagekite/forms.py:207
#, fuzzy
msgid ""
"This service is available as a standard service. Please use the \"Standard "
@@ -4218,46 +4333,46 @@ msgid ""
msgstr ""
"ఈ సేవను ప్రమాణం సేవగా అందుబాటులో ఉంది. దయచేసి దాన్ని ఎనేబుల్ \"ప్రామాణిక సేవలు\" పేజీ ఉపయోగించడానికి."
-#: plinth/modules/pagekite/forms.py:231
+#: plinth/modules/pagekite/forms.py:216
#, fuzzy
msgid "Added custom service"
msgstr "కస్టమ్ సేవ చేర్చబడింది"
-#: plinth/modules/pagekite/forms.py:234
+#: plinth/modules/pagekite/forms.py:219
#, fuzzy
msgid "This service already exists"
msgstr "ఈ సేవ ఇప్పటికే ఉంది"
-#: plinth/modules/pagekite/templates/pagekite_configure.html:47
+#: plinth/modules/pagekite/templates/pagekite_configure.html:32
#, fuzzy
msgid "Custom Services"
msgstr "కస్టమ్ సేవలు"
-#: plinth/modules/pagekite/templates/pagekite_configure.html:50
-#: plinth/modules/pagekite/templates/pagekite_configure.html:52
+#: plinth/modules/pagekite/templates/pagekite_configure.html:35
+#: plinth/modules/pagekite/templates/pagekite_configure.html:37
#, fuzzy
msgid "Add Custom Service"
msgstr "కస్టమ్ సేవలు"
-#: plinth/modules/pagekite/templates/pagekite_configure.html:57
+#: plinth/modules/pagekite/templates/pagekite_configure.html:42
msgid "Existing custom services"
msgstr "ప్రస్థుత కస్టమ్ సేవలు"
-#: plinth/modules/pagekite/templates/pagekite_configure.html:71
+#: plinth/modules/pagekite/templates/pagekite_configure.html:56
#, python-format
msgid "connected to %(backend_host)s:%(backend_port)s"
msgstr "సంబంధం కలిగిఉన్నది %(backend_host)s:%(backend_port)s"
-#: plinth/modules/pagekite/templates/pagekite_configure.html:83
+#: plinth/modules/pagekite/templates/pagekite_configure.html:68
msgid "Delete this service"
msgstr "ఈ సేవను తొలగించు"
-#: plinth/modules/pagekite/templates/pagekite_custom_services.html:30
+#: plinth/modules/pagekite/templates/pagekite_custom_services.html:15
#, fuzzy
msgid "Add custom PageKite service"
msgstr "కస్టమ్ సేవ చేర్చబడింది"
-#: plinth/modules/pagekite/templates/pagekite_custom_services.html:32
+#: plinth/modules/pagekite/templates/pagekite_custom_services.html:17
msgid ""
"Warning:
Your PageKite frontend server may not support all the "
"protocol/port combinations that you are able to define here. For example, "
@@ -4266,11 +4381,11 @@ msgstr ""
"హెచ్చరిక:
మా PageKite ఫ్రంటెండ్ సర్వర్ మీరు ఇక్కడ నిర్వచించే చేయగల అన్ని ప్రోటోకాల్ / పోర్ట్ "
"కాంబినేషన్ మద్దతు ఇవ్వకపోవచ్చు. ఉదాహరణకు, HTTPS 443 పోర్ట్లకు సమస్యలు కారణమవుతుంది."
-#: plinth/modules/pagekite/templates/pagekite_firstboot.html:26
+#: plinth/modules/pagekite/templates/pagekite_firstboot.html:11
msgid "Setup a freedombox.me subdomain with your voucher"
msgstr "ఫ్రీడమ్ బాక్స్.మీ ఉప డోమైన్ ను మీ రశీదుతో ఏర్పాటు చేస్కోండి"
-#: plinth/modules/pagekite/templates/pagekite_firstboot.html:30
+#: plinth/modules/pagekite/templates/pagekite_firstboot.html:15
#, python-format
msgid ""
"Skip this step if you do not have a "
@@ -4280,57 +4395,57 @@ msgstr ""
"మీకు రశీదు లేకపోయినా లేక మీ పేజెకైట్ ను వేరే డోమైన్ లేదా ఆధారాలతో తరువాత ఏర్పాటు చేస్కుందాం అనుకున్న ఈ అంకంను దాటి వేయండి."
-#: plinth/modules/pagekite/templates/pagekite_firstboot.html:38
+#: plinth/modules/pagekite/templates/pagekite_firstboot.html:23
msgid ""
"You can use an already redeemed voucher but it will only work with the "
"initially registered subdomain."
msgstr ""
"మీరు ఇప్పటికే వాడిన రశీదును వాడవచ్చు కానీ ముందే మీరు నమోదు చేసుకున్న ఉపడొమైన్తో మాత్రమే పని చేస్తుంది."
-#: plinth/modules/pagekite/templates/pagekite_firstboot.html:52
+#: plinth/modules/pagekite/templates/pagekite_firstboot.html:37
msgid "Register"
msgstr "నమోదు చేసుకోండి"
-#: plinth/modules/pagekite/templates/pagekite_firstboot.html:56
+#: plinth/modules/pagekite/templates/pagekite_firstboot.html:41
msgid "Skip Registration"
msgstr "నమోదు చేసుకొనుట దాటి వేయండి"
-#: plinth/modules/pagekite/templates/pagekite_standard_services.html:40
+#: plinth/modules/pagekite/templates/pagekite_standard_services.html:25
msgid "Warning:
"
msgstr "హెచ్చరిక
"
-#: plinth/modules/pagekite/templates/pagekite_standard_services.html:43
+#: plinth/modules/pagekite/templates/pagekite_standard_services.html:28
msgid ""
"Published services are accessible and attackable from the evil Internet."
msgstr "చెడు ఇంటర్నెట్ కి ప్రచురరించిన సేవలు అందుబాటులో మరియు దాడికి గురవుతాయి."
-#: plinth/modules/pagekite/templates/pagekite_standard_services.html:58
+#: plinth/modules/pagekite/templates/pagekite_standard_services.html:43
msgid "Save Services"
msgstr "సేవలను భద్రపరుచుకోండి"
-#: plinth/modules/pagekite/utils.py:57
+#: plinth/modules/pagekite/utils.py:42
msgid "Web Server (HTTP)"
msgstr "వెబ్ సేవిక (HTTP)"
-#: plinth/modules/pagekite/utils.py:59
+#: plinth/modules/pagekite/utils.py:44
#, python-brace-format
msgid "Site will be available at http://{0}"
msgstr "సైట్ http://{0} వద్ద అందుబాటులో ఉంటుంది"
-#: plinth/modules/pagekite/utils.py:71
+#: plinth/modules/pagekite/utils.py:56
msgid "Web Server (HTTPS)"
msgstr "వెబ్ సేవిక (HTTPS)"
-#: plinth/modules/pagekite/utils.py:73
+#: plinth/modules/pagekite/utils.py:58
#, python-brace-format
msgid "Site will be available at https://{0}"
msgstr "సైట్ https://{0} వద్ద అందుబాటులో ఉంటుంది"
-#: plinth/modules/pagekite/utils.py:85
+#: plinth/modules/pagekite/utils.py:70
msgid "Secure Shell (SSH)"
msgstr "సెక్యూర్ షెల్ (SSH)"
-#: plinth/modules/pagekite/utils.py:87
+#: plinth/modules/pagekite/utils.py:72
msgid ""
"See SSH client setup instructions"
@@ -4338,16 +4453,15 @@ msgstr ""
"SSH క్లైంట్ సెటప్ చూడండి సూచనలు "
-#: plinth/modules/power/__init__.py:29 plinth/modules/power/views.py:55
-#: plinth/modules/power/views.py:74
-msgid "Power"
-msgstr "శక్తి"
-
-#: plinth/modules/power/__init__.py:31
+#: plinth/modules/power/__init__.py:16
msgid "Restart or shut down the system."
msgstr "పునఃప్రారంభించండి లేదా సిస్టమ్ మూసివేయండి."
-#: plinth/modules/power/templates/power.html:28
+#: plinth/modules/power/__init__.py:31
+msgid "Power"
+msgstr "శక్తి"
+
+#: plinth/modules/power/templates/power.html:13
msgid ""
"Currently an installation or upgrade is running. Consider waiting until it's "
"finished before shutting down or restarting."
@@ -4355,15 +4469,15 @@ msgstr ""
"ప్రస్తుతం సంస్థాపన లేదా నవీకరణ నడుస్తోంది. మూసివేయడానికి లేదా పునఃప్రారంభించడానికి ముందు ఇది పూర్తి "
"అయ్యే వరకు వేచి ఉండండి."
-#: plinth/modules/power/templates/power.html:37
+#: plinth/modules/power/templates/power.html:22
msgid "Restart »"
msgstr "» ని పునఃప్రారంభించండి;"
-#: plinth/modules/power/templates/power.html:40
+#: plinth/modules/power/templates/power.html:25
msgid "Shut Down »"
msgstr "» ని మూసివేయండి;"
-#: plinth/modules/power/templates/power_restart.html:32
+#: plinth/modules/power/templates/power_restart.html:17
msgid ""
"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."
@@ -4371,7 +4485,7 @@ msgstr ""
"మీరు ఖచ్చితంగా మళ్ళీ ప్రారంభించాలని మీరు భావిస్తున్నారా? మీరు సిస్టమ్ ని పునఃప్రారంభిచెంత వరకు కొన్ని "
"నిమిషాలు ఈ వెబ్ ఇంటర్ఫేస్ ని యాక్సెస్ చేయలేరు."
-#: plinth/modules/power/templates/power_restart.html:49
+#: plinth/modules/power/templates/power_restart.html:34
msgid ""
"Currently an installation or upgrade is running. Consider waiting until it's "
"finished before restarting."
@@ -4379,19 +4493,19 @@ msgstr ""
"ప్రస్తుతం సంస్థాపన లేదా నవీకరణ నడుస్తోంది. మూసివేయడానికి లేదా పునఃప్రారంభించడానికి ముందు ఇది పూర్తి "
"అయ్యే వరకు వేచి ఉండండి."
-#: plinth/modules/power/templates/power_restart.html:63
-#: plinth/modules/power/templates/power_restart.html:66
+#: plinth/modules/power/templates/power_restart.html:48
+#: plinth/modules/power/templates/power_restart.html:51
msgid "Restart Now"
msgstr "మళ్ళీ పునఃప్రారంభించండి"
-#: plinth/modules/power/templates/power_shutdown.html:32
+#: plinth/modules/power/templates/power_shutdown.html:17
msgid ""
"Are you sure you want to shut down? You will not be able to access this web "
"interface after shut down."
msgstr ""
"మీరు ఖచ్చితంగా మూసివేయాలనుకుంటున్నారా ? మీరు మూసివేసిన తరువాత ఈ వెబ్ ఇంటర్ఫేస్ ని యాక్సెస్ చేయలేరు."
-#: plinth/modules/power/templates/power_shutdown.html:48
+#: plinth/modules/power/templates/power_shutdown.html:33
msgid ""
"Currently an installation or upgrade is running. Consider waiting until it's "
"finished before shutting down."
@@ -4399,21 +4513,12 @@ msgstr ""
"ప్రస్తుతం సంస్థాపన లేదా నవీకరణ నడుస్తోంది. మూసివేయడానికి లేదా పునఃప్రారంభించడానికి ముందు ఇది పూర్తి "
"అయ్యే వరకు వేచి ఉండండి."
-#: plinth/modules/power/templates/power_shutdown.html:62
-#: plinth/modules/power/templates/power_shutdown.html:65
+#: plinth/modules/power/templates/power_shutdown.html:47
+#: plinth/modules/power/templates/power_shutdown.html:50
msgid "Shut Down Now"
msgstr "ఇపుడు మూసివేయండి"
-#: plinth/modules/privoxy/__init__.py:43
-msgid "Privoxy"
-msgstr "ప్రివొక్సి"
-
-#: plinth/modules/privoxy/__init__.py:47
-#, fuzzy
-msgid "Web Proxy"
-msgstr "వెబ్ ప్రాక్సీ (Privoxy)"
-
-#: plinth/modules/privoxy/__init__.py:50
+#: plinth/modules/privoxy/__init__.py:29
msgid ""
"Privoxy is a non-caching web proxy with advanced filtering capabilities for "
"enhancing privacy, modifying web page data and HTTP headers, controlling "
@@ -4423,7 +4528,7 @@ msgstr ""
"నియంత్రించడం మరియు ప్రకటనలను మరియు ఇతర చెడ్డ ఇంటర్నెట్ వ్యర్థాలను తొలగించడం కోసం ఆధునిక ఫిల్టరింగ్ "
"సామర్థ్యాలతో ఒక కాని క్యాచింగ్ వెబ్ ప్రాక్సీ. "
-#: plinth/modules/privoxy/__init__.py:55
+#: plinth/modules/privoxy/__init__.py:34
#, python-brace-format
msgid ""
"You can use Privoxy by modifying your browser proxy settings to your "
@@ -4437,21 +4542,21 @@ msgstr ""
"డాక్యుమెంటేషన్ http://config.privoxy.org/"
"a> లేదా http://p.p లో చూడవచ్చు."
-#: plinth/modules/privoxy/__init__.py:141
+#: plinth/modules/privoxy/__init__.py:57
+msgid "Privoxy"
+msgstr "ప్రివొక్సి"
+
+#: plinth/modules/privoxy/__init__.py:58
+#, fuzzy
+msgid "Web Proxy"
+msgstr "వెబ్ ప్రాక్సీ (Privoxy)"
+
+#: plinth/modules/privoxy/__init__.py:121
#, python-brace-format
msgid "Access {url} with proxy {proxy} on tcp{kind}"
msgstr "టీసీపీ{kind} పై{proxy} తో యాక్సిస్ {url} చేయండి"
-#: plinth/modules/quassel/__init__.py:45 plinth/modules/quassel/manifest.py:25
-msgid "Quassel"
-msgstr "క్వాసెల్"
-
-#: plinth/modules/quassel/__init__.py:49
-#, fuzzy
-msgid "IRC Client"
-msgstr "ఐ ర్ సి క్లయింట్ (Quassel)"
-
-#: plinth/modules/quassel/__init__.py:53
+#: plinth/modules/quassel/__init__.py:32
#, python-brace-format
msgid ""
"Quassel is an IRC application that is split into two parts, a \"core\" and a "
@@ -4462,7 +4567,7 @@ msgid ""
"connect and disconnect from it."
msgstr ""
-#: plinth/modules/quassel/__init__.py:60
+#: plinth/modules/quassel/__init__.py:39
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."
msgstr ""
-#: plinth/modules/quassel/forms.py:38
+#: plinth/modules/quassel/__init__.py:62 plinth/modules/quassel/manifest.py:10
+msgid "Quassel"
+msgstr "క్వాసెల్"
+
+#: plinth/modules/quassel/__init__.py:63
+#, fuzzy
+msgid "IRC Client"
+msgstr "ఐ ర్ సి క్లయింట్ (Quassel)"
+
+#: plinth/modules/quassel/forms.py:23
#, fuzzy
#| msgid "Subdomain"
msgid "TLS domain"
msgstr "ఉప డోమైన్ పేరు"
-#: plinth/modules/quassel/forms.py:40
+#: plinth/modules/quassel/forms.py:25
msgid ""
"Select a domain to use TLS with. If the list is empty, please configure at "
"least one domain with certificates."
@@ -4484,22 +4598,11 @@ msgstr ""
"TLS ఉపయోగించడం కొరకు ఒక డొమైన్ ఎంచుకోండి. ఒకవేళ జాబితా ఖాళీగా ఉన్నట్లయితే, దయచేసి సర్టిఫికేట్ లతో కనీసం "
"ఒక డొమైన్ ని కాన్ఫిగర్ చేయండి."
-#: plinth/modules/quassel/manifest.py:49
+#: plinth/modules/quassel/manifest.py:34
msgid "Quasseldroid"
msgstr "క్వాసెల్ డ్రొఇడ్"
-#: plinth/modules/radicale/__init__.py:45
-#: plinth/modules/radicale/manifest.py:90
-msgid "Radicale"
-msgstr "రాడికల్"
-
-#: plinth/modules/radicale/__init__.py:49
-#, fuzzy
-#| msgid "Calendar and Addressbook (Radicale)"
-msgid "Calendar and Addressbook"
-msgstr "క్యాలెండర్ మరియు అడ్రెస్ బుక్ (Radicale)"
-
-#: plinth/modules/radicale/__init__.py:53
+#: plinth/modules/radicale/__init__.py:32
#, fuzzy, python-brace-format
msgid ""
"Radicale is a CalDAV and CardDAV server. It allows synchronization and "
@@ -4512,18 +4615,29 @@ msgstr ""
"\"> supported client application అవసరం.\n"
"రాడికల్ ఏ యూజర్ అయినా {box_name}లాగిన్ తో యాక్సెస్ చేయవచ్చు"
-#: plinth/modules/radicale/__init__.py:58
+#: plinth/modules/radicale/__init__.py:37
msgid ""
"Radicale provides a basic web interface, which only supports creating new "
"calendars and addressbooks. It does not support adding events or contacts, "
"which must be done using a separate client."
msgstr ""
-#: plinth/modules/radicale/forms.py:30
+#: plinth/modules/radicale/__init__.py:62
+#: plinth/modules/radicale/manifest.py:75
+msgid "Radicale"
+msgstr "రాడికల్"
+
+#: plinth/modules/radicale/__init__.py:63
+#, fuzzy
+#| msgid "Calendar and Addressbook (Radicale)"
+msgid "Calendar and Addressbook"
+msgstr "క్యాలెండర్ మరియు అడ్రెస్ బుక్ (Radicale)"
+
+#: plinth/modules/radicale/forms.py:15
msgid "Only the owner of a calendar/addressbook can view or make changes."
msgstr "క్యాలెండర్ / ఆడ్రస్ బుక్ యజమాని మాత్రమే వీక్షించగలరు లేదా మార్పులు చేయగలరు."
-#: plinth/modules/radicale/forms.py:34
+#: plinth/modules/radicale/forms.py:19
#, fuzzy, python-brace-format
#| msgid ""
#| "Any user can view any calendar/addressbook, but only the owner can make "
@@ -4534,7 +4648,7 @@ msgid ""
msgstr ""
"ఏ వినియోగదారుడు అయినా క్యాలెండరు /ఆడ్రస్ బుక్ ని చూడవచ్చు, కానీ కేవలం యజమాని మాత్రమే మార్పులు చేయగలరు."
-#: plinth/modules/radicale/forms.py:39
+#: plinth/modules/radicale/forms.py:24
#, fuzzy, python-brace-format
#| msgid "Any user can view or make changes to any calendar/addressbook."
msgid ""
@@ -4542,30 +4656,30 @@ msgid ""
"addressbook."
msgstr "ఏ వినియోగదారుడు అయినా క్యాలెండరు /ఆడ్రస్ బుక్ ని చూడగలరు లేదా మార్పులు చేయగలరు."
-#: plinth/modules/radicale/manifest.py:25
+#: plinth/modules/radicale/manifest.py:10
msgid "DAVx5"
msgstr "DAVx5"
-#: plinth/modules/radicale/manifest.py:27
+#: plinth/modules/radicale/manifest.py:12
msgid ""
"Enter the URL of the Radicale server (e.g. https://) and your user name. DAVx5 will show all existing calendars and "
"address books and you can create new."
msgstr ""
-#: plinth/modules/radicale/manifest.py:44
+#: plinth/modules/radicale/manifest.py:29
msgid "GNOME Calendar"
msgstr "కేలండర్"
-#: plinth/modules/radicale/manifest.py:52
+#: plinth/modules/radicale/manifest.py:37
msgid "Mozilla Thunderbird"
msgstr "మొజిల్లా థండర్ బర్డ్"
-#: plinth/modules/radicale/manifest.py:72
+#: plinth/modules/radicale/manifest.py:57
msgid "Evolution"
msgstr "పరిణామం"
-#: plinth/modules/radicale/manifest.py:74
+#: plinth/modules/radicale/manifest.py:59
msgid ""
"Evolution is a personal information management application that provides "
"integrated mail, calendaring and address book functionality."
@@ -4573,7 +4687,7 @@ msgstr ""
"ఎవల్యూషన్ అనేది ఒక వ్యక్తిగత సమాచార నిర్వహణ అనువర్తనం, ఇది ఇంటిగ్రేటెడ్ మెయిల్, క్యాలెండింగ్ మరియు బుక్ "
"ఫంక్షనాలిటీని అందించేది."
-#: plinth/modules/radicale/manifest.py:78
+#: plinth/modules/radicale/manifest.py:63
msgid ""
"In Evolution add a new calendar and address book respectively with WebDAV. "
"Enter the URL of the Radicale server (e.g. https:///roundcube. Provide the username and password of the email account "
@@ -4618,7 +4722,7 @@ msgid ""
"code>."
msgstr ""
-#: plinth/modules/roundcube/__init__.py:53
+#: plinth/modules/roundcube/__init__.py:32
msgid ""
"For Gmail, username will be your Gmail address, password will be your Google "
"account password and server will be imaps://imap.gmail.com. "
@@ -4628,11 +4732,17 @@ msgid ""
"a>)."
msgstr ""
-#: plinth/modules/samba/__init__.py:46
-msgid "Samba"
-msgstr "సాంబా"
+#: plinth/modules/roundcube/__init__.py:54
+#: plinth/modules/roundcube/manifest.py:9
+msgid "Roundcube"
+msgstr "రౌండ్ క్యూబ్"
-#: plinth/modules/samba/__init__.py:53
+#: plinth/modules/roundcube/__init__.py:55
+#, fuzzy
+msgid "Email Client"
+msgstr "తపాల బంట్రౌతు(Roundcube)"
+
+#: plinth/modules/samba/__init__.py:32
msgid ""
"Samba allows to share files and folders between FreedomBox and other "
"computers in your local network."
@@ -4640,7 +4750,7 @@ msgstr ""
"మీ స్థానిక నెట్వర్క్లోని ఫ్రీడమ్బాక్స్ మరియు ఇతర కంప్యూటర్ల మధ్య ఫైల్లు మరియు ఫోల్డర్లను పంచుకోవడానికి సాంబా "
"అనుమతిస్తుంది."
-#: plinth/modules/samba/__init__.py:56
+#: plinth/modules/samba/__init__.py:35
#, python-brace-format
msgid ""
"After installation, you can choose which disks to use for sharing. Enabled "
@@ -4649,11 +4759,11 @@ msgid ""
"There are three types of shares you can choose from: "
msgstr ""
-#: plinth/modules/samba/__init__.py:61
+#: plinth/modules/samba/__init__.py:40
msgid "Open share - accessible to everyone in your local network."
msgstr "ఓపెన్ షేర్ - మీ స్థానిక నెట్వర్క్లోని ప్రతి ఒక్కరికీ అందుబాటులో ఉంటుంది."
-#: plinth/modules/samba/__init__.py:62
+#: plinth/modules/samba/__init__.py:41
msgid ""
"Group share - accessible only to FreedomBox users who are in the freedombox-"
"share group."
@@ -4661,7 +4771,7 @@ msgstr ""
"గ్రూప్ షేర్ - freedombox-share గ్రూపులో ఉన్న ఫ్రీడమ్బాక్స్ వినియోగదారులకు మాత్రమే అందుబాటులో "
"ఉంటుంది."
-#: plinth/modules/samba/__init__.py:64
+#: plinth/modules/samba/__init__.py:43
msgid ""
"Home share - every user in the freedombox-share group can have their own "
"private space."
@@ -4669,18 +4779,22 @@ msgstr ""
"హోమ్ షేర్ - freedombox-share గ్రూపులో ఉన్న ప్రతి వినియోగదారుడు వారి స్వంత ప్రైవేట్ స్థలాన్ని కలిగి "
"ఉంటారు."
-#: plinth/modules/samba/__init__.py:68
+#: plinth/modules/samba/__init__.py:47
msgid "Access to the private shares"
msgstr "ప్రైవేటు షేర్లలో ప్రవేశం"
-#: plinth/modules/samba/templates/samba.html:39
-#: plinth/modules/samba/templates/samba.html:50
+#: plinth/modules/samba/__init__.py:61
+msgid "Samba"
+msgstr "సాంబా"
+
+#: plinth/modules/samba/templates/samba.html:24
+#: plinth/modules/samba/templates/samba.html:35
#, fuzzy
#| msgid "Shared"
msgid "Shares"
msgstr "పంచుకోబడ్డ"
-#: plinth/modules/samba/templates/samba.html:41
+#: plinth/modules/samba/templates/samba.html:26
msgid ""
"Note: Only specially created directories will be shared on selected disks, "
"not the whole disk."
@@ -4688,22 +4802,22 @@ msgstr ""
"గమనిక: ప్రత్యేకంగా సృష్టించిన డైరెక్టరీలు మాత్రమే ఎంచుకున్న డిస్కులలో భాగస్వామ్యం చేయబడతాయి, మొత్తం డిస్క్ "
"కాదు."
-#: plinth/modules/samba/templates/samba.html:49
+#: plinth/modules/samba/templates/samba.html:34
#, fuzzy
#| msgid "Domain Name"
msgid "Disk Name"
msgstr "డొమైను పేరు"
-#: plinth/modules/samba/templates/samba.html:51
-#: plinth/modules/storage/templates/storage.html:44
+#: plinth/modules/samba/templates/samba.html:36
+#: plinth/modules/storage/templates/storage.html:29
msgid "Used"
msgstr "ఉపయోగించబడినది"
-#: plinth/modules/samba/templates/samba.html:72
+#: plinth/modules/samba/templates/samba.html:57
msgid "VFAT partitions are not supported"
msgstr "VFAT విభజనలకు మద్దతు లేదు"
-#: plinth/modules/samba/templates/samba.html:103
+#: plinth/modules/samba/templates/samba.html:88
#, python-format
msgid ""
"You can find additional information about disks on the users module page."
msgstr ""
-#: plinth/modules/samba/templates/samba.html:109
+#: plinth/modules/samba/templates/samba.html:94
msgid "Users who can currently access group and home shares"
msgstr "ప్రస్తుతం గ్రూప్ మరియు హోమ్ షేర్లను యాక్సెస్ చేయగల వినియోగదారులు"
-#: plinth/modules/samba/templates/samba.html:113
+#: plinth/modules/samba/templates/samba.html:98
msgid ""
"Users needing to re-enter their password on the password change page to "
"access group and home shares"
@@ -4723,13 +4837,13 @@ msgstr ""
"గ్రూపు మరియు హోమ్ షేర్లను యాక్సెస్ చేసుకోవడానికి పాస్వర్డ్ ఛేంజ్ పేజీపై తమ పాస్వర్డ్ ని తిరిగి నమోదు చేయాల్సిన "
"అవసరం ఉన్న వినియోగదారులు"
-#: plinth/modules/samba/templates/samba.html:118
+#: plinth/modules/samba/templates/samba.html:103
#, fuzzy
#| msgid "Available Domains"
msgid "Unavailable Shares"
msgstr "అందుబాటులో ఉన్న డొమైన్లు"
-#: plinth/modules/samba/templates/samba.html:120
+#: plinth/modules/samba/templates/samba.html:105
msgid ""
"Shares that are configured but the disk is not available. If the disk is "
"plugged back in, sharing will be automatically enabled."
@@ -4737,71 +4851,61 @@ msgstr ""
"కాన్ఫిగర్ చేయబడిన షేర్లు కానీ డిస్క్ అందుబాటులో లేదు. డిస్క్ తిరిగి ప్లగిన్ చేయబడితే, భాగస్వామ్యం స్వయంచాలకంగా "
"ప్రారంభించబడుతుంది."
-#: plinth/modules/samba/templates/samba.html:128
+#: plinth/modules/samba/templates/samba.html:113
#, fuzzy
#| msgid "Shared"
msgid "Share name"
msgstr "పంచుకోబడ్డ"
-#: plinth/modules/samba/templates/samba.html:129
+#: plinth/modules/samba/templates/samba.html:114
#, fuzzy
#| msgid "Actions"
msgid "Action"
msgstr "చర్యలు"
-#: plinth/modules/samba/views.py:61 plinth/modules/storage/forms.py:164
+#: plinth/modules/samba/views.py:43 plinth/modules/storage/forms.py:149
#, fuzzy
#| msgid "Add Service"
msgid "Open Share"
msgstr "సేవ జోడించండి"
-#: plinth/modules/samba/views.py:62 plinth/modules/storage/forms.py:162
+#: plinth/modules/samba/views.py:44 plinth/modules/storage/forms.py:147
#, fuzzy
#| msgid "Add Service"
msgid "Group Share"
msgstr "సేవ జోడించండి"
-#: plinth/modules/samba/views.py:63
+#: plinth/modules/samba/views.py:45
#, fuzzy
#| msgid "Homepage"
msgid "Home Share"
msgstr "హోంపేజ్"
-#: plinth/modules/samba/views.py:96
+#: plinth/modules/samba/views.py:78
#, fuzzy
#| msgid "{name} deleted."
msgid "Share enabled."
msgstr "{name} తొలగించబడింది."
-#: plinth/modules/samba/views.py:101
+#: plinth/modules/samba/views.py:83
#, fuzzy, python-brace-format
#| msgid "Error installing application: {error}"
msgid "Error enabling share: {error_message}"
msgstr "అనువర్తనం స్థాపించుటలో దోషం: {error}"
-#: plinth/modules/samba/views.py:106
+#: plinth/modules/samba/views.py:88
#, fuzzy
#| msgid "Shared"
msgid "Share disabled."
msgstr "పంచుకోబడ్డ"
-#: plinth/modules/samba/views.py:111
+#: plinth/modules/samba/views.py:93
#, fuzzy, python-brace-format
#| msgid "Error installing application: {error}"
msgid "Error disabling share: {error_message}"
msgstr "అనువర్తనం స్థాపించుటలో దోషం: {error}"
-#: plinth/modules/searx/__init__.py:41 plinth/modules/searx/manifest.py:24
-msgid "Searx"
-msgstr "సేర్క్స్"
-
-#: plinth/modules/searx/__init__.py:45
-#, fuzzy
-#| msgid "Web Server"
-msgid "Web Search"
-msgstr "జాల సేవకం"
-
-#: plinth/modules/searx/__init__.py:48
+#: plinth/modules/searx/__init__.py:25
msgid ""
"Searx is a privacy-respecting Internet metasearch engine. It aggregrates and "
"displays results from multiple search engines."
@@ -4809,7 +4913,7 @@ msgstr ""
"సెర్క్స్ అనేది గోప్యతను గౌరవించే ఒక మెటా-శోధన ఇంజిన్. ఇది బహుళ శోధన ఇంజిన్ల నుండి ఫలితాలను సమీకరించి, "
"ప్రదర్శిస్తుంది."
-#: plinth/modules/searx/__init__.py:50
+#: plinth/modules/searx/__init__.py:27
msgid ""
"Searx can be used to avoid tracking and profiling by search engines. It "
"stores no cookies by default."
@@ -4817,48 +4921,58 @@ msgstr ""
"శోధన యంత్రాలు ద్వారా ట్రాకింగ్ మరియు ప్రొఫైలింగ్ను నివారించడానికి సెర్క్స్ ను ఉపయోగించవచ్చు. ఇది మాములుగా "
"కుకీలను నిల్వ ఉంచుకోదు."
-#: plinth/modules/searx/__init__.py:54
+#: plinth/modules/searx/__init__.py:31
msgid "Search the web"
msgstr "అంతర్జాలమును శోధింపుము"
-#: plinth/modules/searx/forms.py:30
+#: plinth/modules/searx/__init__.py:47 plinth/modules/searx/manifest.py:9
+msgid "Searx"
+msgstr "సేర్క్స్"
+
+#: plinth/modules/searx/__init__.py:48
+#, fuzzy
+#| msgid "Web Server"
+msgid "Web Search"
+msgstr "జాల సేవకం"
+
+#: plinth/modules/searx/forms.py:15
msgid "Safe Search"
msgstr "సురక్షితశోధన"
-#: plinth/modules/searx/forms.py:31
+#: plinth/modules/searx/forms.py:16
msgid "Select the default family filter to apply to your search results."
msgstr "మీ శోధన ఫలితాలపైన అమలు చేయబడే కుటుంబ వడపోత విధానమును ఎంచుకొనండి."
-#: plinth/modules/searx/forms.py:32
+#: plinth/modules/searx/forms.py:17
msgid "None"
msgstr "ఏమీ లేదు"
-#: plinth/modules/searx/forms.py:32
+#: plinth/modules/searx/forms.py:17
msgid "Moderate"
msgstr "మితమైన"
-#: plinth/modules/searx/forms.py:32
+#: plinth/modules/searx/forms.py:17
msgid "Strict"
msgstr "కఠినమైన"
-#: plinth/modules/searx/forms.py:35
+#: plinth/modules/searx/forms.py:20
msgid "Allow Public Access"
msgstr "ప్రజా ప్రాప్తి అనుమతించు"
-#: plinth/modules/searx/forms.py:36
+#: plinth/modules/searx/forms.py:21
msgid "Allow this application to be used by anyone who can reach it."
msgstr "ఈ అనువర్తనాన్ని చేరుకోగల ఎవరైనా ఉపయోగించడానికి అనుమతించండి."
-#: plinth/modules/searx/views.py:59 plinth/modules/searx/views.py:70
-#: plinth/modules/tor/views.py:149 plinth/modules/tor/views.py:176
+#: plinth/modules/searx/views.py:39 plinth/modules/searx/views.py:50
+#: plinth/modules/tor/views.py:130 plinth/modules/tor/views.py:157
msgid "Configuration updated."
msgstr "ఆకృతీకరణ నవీకరించబడింది."
-#: plinth/modules/security/forms.py:28
+#: plinth/modules/security/forms.py:13
msgid "Restrict console logins (recommended)"
msgstr "కన్సోల్ లాగిన్ ని పరిమితించండి (సిఫార్సు)"
-#: plinth/modules/security/forms.py:29
+#: plinth/modules/security/forms.py:14
msgid ""
"When this option is enabled, only users in the \"admin\" group will be able "
"to log in to console or via SSH. Console users may be able to access some "
@@ -4868,11 +4982,11 @@ msgstr ""
"అవగలరు లేదా ఎస్ ఎస్ అహ్ ద్వారా . కన్సోల్ వాడుకదారులు మరింత అనుమతి లేకుండా కొన్ని సేవలు యాక్సెస్ "
"చేయవచ్చు."
-#: plinth/modules/security/forms.py:34
+#: plinth/modules/security/forms.py:19
msgid "Fail2Ban (recommended)"
msgstr "ఫెయిల్2బ్యాన్ (సిఫారసుచేయబడినవి)"
-#: plinth/modules/security/forms.py:35
+#: plinth/modules/security/forms.py:20
msgid ""
"When this option is enabled, Fail2Ban will limit brute force break-in "
"attempts to the SSH server and other enabled password protected internet-"
@@ -4881,123 +4995,112 @@ msgstr ""
"ఈ ఎంపిక ఎనేబుల్ చేసినప్పుడు, ఫెయిల్2బ్యాన్ SSH సర్వర్కు మరియు ఇతర ప్రారంభించబడిన పాస్వర్డ్ను రక్షిత "
"అంతర్జాల-సేవలకు బ్రూట్ ఫోర్స్ బ్రేక్-ఇన్ ప్రయత్నాలను పరిమితం చేస్తుంది."
-#: plinth/modules/security/templates/security.html:26
-#: plinth/modules/security/templates/security.html:28
+#: plinth/modules/security/templates/security.html:11
+#: plinth/modules/security/templates/security.html:13
#, fuzzy
#| msgid "Security"
msgid "Show security report"
msgstr "భద్రత"
-#: plinth/modules/security/templates/security_report.html:25
-#: plinth/modules/security/views.py:87
+#: plinth/modules/security/templates/security_report.html:10
+#: plinth/modules/security/views.py:71
#, fuzzy
#| msgid "Security"
msgid "Security Report"
msgstr "భద్రత"
-#: plinth/modules/security/templates/security_report.html:27
+#: plinth/modules/security/templates/security_report.html:12
#, python-format
msgid ""
"The installed version of FreedomBox has %(count)s reported security "
"vulnerabilities."
msgstr ""
-#: plinth/modules/security/templates/security_report.html:33
+#: plinth/modules/security/templates/security_report.html:18
msgid ""
"The following table lists the current reported number, and historical count, "
"of security vulnerabilities for each installed app."
msgstr ""
-#: plinth/modules/security/templates/security_report.html:39
+#: plinth/modules/security/templates/security_report.html:24
msgid ""
"For apps that provide services, the \"Sandboxed\" column shows whether "
"sandboxing features are in use. Sandboxing mitigates the impact of a "
"potentially compromised app to the rest of the system."
msgstr ""
-#: plinth/modules/security/templates/security_report.html:46
+#: plinth/modules/security/templates/security_report.html:31
msgid ""
"\"Sandbox Coverage\" is a score of how effectively the service is isolated "
"from the rest of the system. It is only displayed while the service is "
"running."
msgstr ""
-#: plinth/modules/security/templates/security_report.html:55
+#: plinth/modules/security/templates/security_report.html:40
#, fuzzy
#| msgid "Name"
msgid "App Name"
msgstr "పేరు"
-#: plinth/modules/security/templates/security_report.html:56
+#: plinth/modules/security/templates/security_report.html:41
msgid "Current Vulnerabilities"
msgstr "ప్రస్తుత దుర్బలతలు"
-#: plinth/modules/security/templates/security_report.html:57
+#: plinth/modules/security/templates/security_report.html:42
msgid "Past Vulnerabilities"
msgstr "గత దుర్బలతలు"
-#: plinth/modules/security/templates/security_report.html:58
+#: plinth/modules/security/templates/security_report.html:43
#, fuzzy
#| msgid "Block Sandbox (Minetest)"
msgid "Sandboxed"
msgstr "స్యాండ్ బాక్స్ ను అడ్డగించు (మైన్ పరీక్ష)"
-#: plinth/modules/security/templates/security_report.html:59
+#: plinth/modules/security/templates/security_report.html:44
#, fuzzy
#| msgid "Block Sandbox (Minetest)"
msgid "Sandbox Coverage"
msgstr "స్యాండ్ బాక్స్ ను అడ్డగించు (మైన్ పరీక్ష)"
-#: plinth/modules/security/templates/security_report.html:70
+#: plinth/modules/security/templates/security_report.html:55
msgid "N/A"
msgstr "N/A"
-#: plinth/modules/security/templates/security_report.html:72
+#: plinth/modules/security/templates/security_report.html:57
#, fuzzy
#| msgid "yes"
msgid "Yes"
msgstr "అవును"
-#: plinth/modules/security/templates/security_report.html:74
+#: plinth/modules/security/templates/security_report.html:59
#, fuzzy
#| msgid "None"
msgid "No"
msgstr "ఏమీ లేదు"
-#: plinth/modules/security/templates/security_report.html:81
+#: plinth/modules/security/templates/security_report.html:66
#, fuzzy
#| msgid "is not running"
msgid "Not running"
msgstr "డెల్యూజ్ నడవడంలేదు"
-#: plinth/modules/security/views.py:69
+#: plinth/modules/security/views.py:53
#, fuzzy, python-brace-format
#| msgid "Error setting time zone: {exception}"
msgid "Error setting restricted access: {exception}"
msgstr "సమయమండలం అమర్పులోపం: {exception}"
-#: plinth/modules/security/views.py:72
+#: plinth/modules/security/views.py:56
#, fuzzy
#| msgid "General Configuration"
msgid "Updated security configuration"
msgstr "సాధారణ ఆకృతీకరణ"
-#: plinth/modules/shaarli/__init__.py:34 plinth/modules/shaarli/manifest.py:23
-msgid "Shaarli"
-msgstr "షార్లి"
-
-#: plinth/modules/shaarli/__init__.py:36
-#, fuzzy
-msgid "Bookmarks"
-msgstr ""
-"గుర్తుంచు\n"
-" (Shaarli)"
-
-#: plinth/modules/shaarli/__init__.py:39
+#: plinth/modules/shaarli/__init__.py:20
msgid "Shaarli allows you to save and share bookmarks."
msgstr "రు బుక్మార్క్లు ని సేవ్ మరియు పంచుకొనుటకు షార్లి అనుమతిస్తుంది."
-#: plinth/modules/shaarli/__init__.py:40
+#: plinth/modules/shaarli/__init__.py:21
msgid ""
"When enabled, Shaarli will be available from /shaarli path on the web server. Note that Shaarli "
@@ -5005,15 +5108,18 @@ msgid ""
"initial visit."
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:35
-msgid "Shadowsocks"
-msgstr "షాడోసాక్స్"
+#: plinth/modules/shaarli/__init__.py:39 plinth/modules/shaarli/manifest.py:8
+msgid "Shaarli"
+msgstr "షార్లి"
-#: plinth/modules/shadowsocks/__init__.py:39
-msgid "Socks5 Proxy"
-msgstr "సాక్స్5 ప్రాక్సీ"
+#: plinth/modules/shaarli/__init__.py:40
+#, fuzzy
+msgid "Bookmarks"
+msgstr ""
+"గుర్తుంచు\n"
+" (Shaarli)"
-#: plinth/modules/shadowsocks/__init__.py:46
+#: plinth/modules/shadowsocks/__init__.py:25
msgid ""
"Shadowsocks is a lightweight and secure SOCKS5 proxy, designed to protect "
"your Internet traffic. It can be used to bypass Internet filtering and "
@@ -5022,7 +5128,7 @@ msgstr ""
"షాడోసాక్స్ మీ ఇంటర్నెట్ ట్రాఫిక్ను రక్షించేందుకు రూపొందించబడిన ఒక తేలికైన మరియు సురక్షిత సాక్స్5 ప్రాక్సీ. "
"ఇది ఇంటర్నెట్ వడపోత మరియు సెన్సార్షిప్ను దాటడానికి ఉపయోగించవచ్చు."
-#: plinth/modules/shadowsocks/__init__.py:50
+#: plinth/modules/shadowsocks/__init__.py:29
#, python-brace-format
msgid ""
"Your {box_name} can run a Shadowsocks client, that can connect to a "
@@ -5031,87 +5137,95 @@ msgid ""
"the Shadowsocks server."
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:55
+#: plinth/modules/shadowsocks/__init__.py:34
msgid ""
"To use Shadowsocks after setup, set the SOCKS5 proxy URL in your device, "
"browser or application to http://freedombox_address:1080/"
msgstr ""
-#: plinth/modules/shadowsocks/forms.py:28
-#: plinth/modules/shadowsocks/forms.py:29
+#: plinth/modules/shadowsocks/__init__.py:50
+msgid "Shadowsocks"
+msgstr "షాడోసాక్స్"
+
+#: plinth/modules/shadowsocks/__init__.py:52
+msgid "Socks5 Proxy"
+msgstr "సాక్స్5 ప్రాక్సీ"
+
+#: plinth/modules/shadowsocks/forms.py:13
+#: plinth/modules/shadowsocks/forms.py:14
msgid "Recommended"
msgstr "సిఫార్సు చేయబడింది"
-#: plinth/modules/shadowsocks/forms.py:52
+#: plinth/modules/shadowsocks/forms.py:37
#, fuzzy
#| msgid "Service"
msgid "Server"
msgstr "సేవ"
-#: plinth/modules/shadowsocks/forms.py:53
+#: plinth/modules/shadowsocks/forms.py:38
msgid "Server hostname or IP address"
msgstr "సర్వర్ హోస్ట్ పేరు లేదా ఐపి చిరునామా"
-#: plinth/modules/shadowsocks/forms.py:57
+#: plinth/modules/shadowsocks/forms.py:42
#, fuzzy
msgid "Server port number"
msgstr "సర్వర్ పోర్ట్"
-#: plinth/modules/shadowsocks/forms.py:60
+#: plinth/modules/shadowsocks/forms.py:45
msgid "Password used to encrypt data. Must match server password."
msgstr "సమాచారాన్ని గుప్తీకరించాడానికి ఉపయోగించబడిన పాస్వర్డ్. తప్పకుండ సర్వర్ పాస్వర్డ్ తో సరిపోలాలి."
-#: plinth/modules/shadowsocks/forms.py:65
+#: plinth/modules/shadowsocks/forms.py:50
msgid "Encryption method. Must match setting on server."
msgstr "గుప్తీకరించు పద్దతి. సర్వర్ లోని సెట్టింగ్తో సరిపోలాలి."
-#: plinth/modules/sharing/__init__.py:34
-#, fuzzy
-msgid "Sharing"
-msgstr "ఫైలు సమకాలీకరించబడుచున్నధి"
-
-#: plinth/modules/sharing/__init__.py:38
+#: plinth/modules/sharing/__init__.py:21
#, python-brace-format
msgid ""
"Sharing allows you to share files and folders on your {box_name} over the "
"web with chosen groups of users."
msgstr ""
-#: plinth/modules/sharing/forms.py:33
+#: plinth/modules/sharing/__init__.py:38
+#, fuzzy
+msgid "Sharing"
+msgstr "ఫైలు సమకాలీకరించబడుచున్నధి"
+
+#: plinth/modules/sharing/forms.py:18
msgid "Name of the share"
msgstr "షేర్ యొక్క పేరు"
-#: plinth/modules/sharing/forms.py:35
+#: plinth/modules/sharing/forms.py:20
msgid ""
"A lowercase alpha-numeric string that uniquely identifies a share. Example: "
"media."
msgstr "ప్రత్యేకంగా ఒక వాటాను గుర్తించే చిన్న అక్షర సంఖ్యా స్ట్రింగ్. ఉదాహరణ: media."
-#: plinth/modules/sharing/forms.py:39
+#: plinth/modules/sharing/forms.py:24
msgid "Path to share"
msgstr "షేర్ యొక్క మార్గం"
-#: plinth/modules/sharing/forms.py:40
+#: plinth/modules/sharing/forms.py:25
msgid "Disk path to a folder on this server that you intend to share."
msgstr "ఈ సర్వర్ పైన మీరు పంచుకోవాలి అనుకుంటున్న ఫోల్డర్ యొక్క డిస్క్ మార్గం."
-#: plinth/modules/sharing/forms.py:43
+#: plinth/modules/sharing/forms.py:28
#, fuzzy
#| msgid "Publish Key"
msgid "Public share"
msgstr "కీని ప్రచురించండి"
-#: plinth/modules/sharing/forms.py:44
+#: plinth/modules/sharing/forms.py:29
msgid "Make files in this folder available to anyone with the link."
msgstr "ఈ ఫోల్డర్లోని ఫైల్లను లింక్ ఉన్న ఎవరికైనా అందుబాటులో ఉంచండి."
-#: plinth/modules/sharing/forms.py:48
+#: plinth/modules/sharing/forms.py:33
#, fuzzy
#| msgid "User groups who can read the files in the share"
msgid "User groups that can read the files in the share"
msgstr "వాటాలోని ఫైళ్లను చదవగలిగే వినియోగదారు సమూహాలు"
-#: plinth/modules/sharing/forms.py:50
+#: plinth/modules/sharing/forms.py:35
#, fuzzy
#| msgid ""
#| "Users who have these permissions will also be able to read the files in "
@@ -5121,86 +5235,82 @@ msgid ""
"share."
msgstr "ఈ అనుమతులను కలిగి ఉన్న వినియోగదారులు వాటాలోని ఫైళ్ళను కూడా చదవగలరు."
-#: plinth/modules/sharing/forms.py:67
+#: plinth/modules/sharing/forms.py:52
#, fuzzy
msgid "A share with this name already exists."
msgstr "ఈ సేవ ఇప్పటికే ఉంది"
-#: plinth/modules/sharing/forms.py:78
+#: plinth/modules/sharing/forms.py:63
msgid "Shares should be either public or shared with at least one group"
msgstr "షేర్లు పబ్లిక్ గా ఉండాలి లేదా కనీసం ఒక గ్రూపుతో పంచుకోవాలి"
-#: plinth/modules/sharing/templates/sharing.html:39
-#: plinth/modules/sharing/templates/sharing.html:42
+#: plinth/modules/sharing/templates/sharing.html:24
+#: plinth/modules/sharing/templates/sharing.html:27
#, fuzzy
#| msgid "Add Service"
msgid "Add share"
msgstr "సేవ జోడించండి"
-#: plinth/modules/sharing/templates/sharing.html:47
+#: plinth/modules/sharing/templates/sharing.html:32
msgid "No shares currently configured."
msgstr "ప్రస్తుతం ఏ షేర్లు ఏర్పాటు చేయబడలేదు."
-#: plinth/modules/sharing/templates/sharing.html:53
+#: plinth/modules/sharing/templates/sharing.html:38
msgid "Disk Path"
msgstr "డిస్క్ మార్గం"
-#: plinth/modules/sharing/templates/sharing.html:54
+#: plinth/modules/sharing/templates/sharing.html:39
#, fuzzy
#| msgid "Shared"
msgid "Shared Over"
msgstr "పంచుకోబడ్డ"
-#: plinth/modules/sharing/templates/sharing.html:55
+#: plinth/modules/sharing/templates/sharing.html:40
msgid "With Groups"
msgstr "గుంపులతో"
-#: plinth/modules/sharing/templates/sharing.html:73
+#: plinth/modules/sharing/templates/sharing.html:58
msgid "public access"
msgstr "ప్రజా ప్రాప్తి"
-#: plinth/modules/sharing/views.py:55
+#: plinth/modules/sharing/views.py:39
#, fuzzy
#| msgid "Shared"
msgid "Share added."
msgstr "పంచుకోబడ్డ"
-#: plinth/modules/sharing/views.py:60
+#: plinth/modules/sharing/views.py:44
#, fuzzy
#| msgid "Add Service"
msgid "Add Share"
msgstr "సేవ జోడించండి"
-#: plinth/modules/sharing/views.py:75
+#: plinth/modules/sharing/views.py:59
#, fuzzy
#| msgid "Shared"
msgid "Share edited."
msgstr "పంచుకోబడ్డ"
-#: plinth/modules/sharing/views.py:80
+#: plinth/modules/sharing/views.py:64
#, fuzzy
#| msgid "Edit User"
msgid "Edit Share"
msgstr "వినియోగదారి మార్పు"
-#: plinth/modules/sharing/views.py:111
+#: plinth/modules/sharing/views.py:95
#, fuzzy
#| msgid "{name} deleted."
msgid "Share deleted."
msgstr "{name} తొలగించబడింది."
-#: plinth/modules/snapshot/__init__.py:37
-msgid "Storage Snapshots"
-msgstr "నిల్వ దృశ్యములు"
-
-#: plinth/modules/snapshot/__init__.py:40
+#: plinth/modules/snapshot/__init__.py:23
msgid ""
"Snapshots allows creating and managing btrfs file system snapshots. These "
"can be used to roll back the system to a previously known good state in case "
"of unwanted changes to the system."
msgstr ""
-#: plinth/modules/snapshot/__init__.py:44
+#: plinth/modules/snapshot/__init__.py:27
#, no-python-format
msgid ""
"Snapshots are taken periodically (called timeline snapshots) and also before "
@@ -5208,31 +5318,35 @@ msgid ""
"cleaned up according to the settings below."
msgstr ""
-#: plinth/modules/snapshot/__init__.py:47
+#: plinth/modules/snapshot/__init__.py:30
msgid ""
"Snapshots currently work on btrfs file systems only and on the root "
"partition only. Snapshots are not a replacement for backups since they can only be stored on the same partition. "
msgstr ""
-#: plinth/modules/snapshot/forms.py:27
+#: plinth/modules/snapshot/__init__.py:52
+msgid "Storage Snapshots"
+msgstr "నిల్వ దృశ్యములు"
+
+#: plinth/modules/snapshot/forms.py:12
msgid "Free Disk Space to Maintain"
msgstr ""
-#: plinth/modules/snapshot/forms.py:28
+#: plinth/modules/snapshot/forms.py:13
msgid ""
"Maintain this percentage of free space on the disk. If free space falls "
"below this value, older snapshots are removed until this much free space is "
"regained. The default value is 30%."
msgstr ""
-#: plinth/modules/snapshot/forms.py:35
+#: plinth/modules/snapshot/forms.py:20
#, fuzzy
#| msgid "Enable Timeline Snapshots"
msgid "Timeline Snapshots"
msgstr "కాలక్రమం స్నాప్షాట్లు ఉపయోగించండి"
-#: plinth/modules/snapshot/forms.py:36
+#: plinth/modules/snapshot/forms.py:21
#, fuzzy
#| msgid ""
#| "Uncheck this to disable timeline snapshots (hourly, daily, monthly and "
@@ -5241,59 +5355,59 @@ msgid ""
"Enable or disable timeline snapshots (hourly, daily, monthly and yearly)."
msgstr "కాలపట్టిక స్నాప్షాట్లను (గంట, రోజువారీ, నెలవారీ మరియు వార్షిక) నిలిపివేయడానికి దీనికి టిక్కు తీసివేయండి."
-#: plinth/modules/snapshot/forms.py:41
+#: plinth/modules/snapshot/forms.py:26
msgid "Software Installation Snapshots"
msgstr "సాఫ్ట్వేర్ సంస్థాపన స్నాప్షాట్లు"
-#: plinth/modules/snapshot/forms.py:42
+#: plinth/modules/snapshot/forms.py:27
msgid "Enable or disable snapshots before and after software installation"
msgstr "సాఫ్ట్వేర్ ఇన్స్టాలేషన్కు ముందు మరియు తర్వాత స్నాప్షాట్లను అనుమతించండి లేదా అనుమతి నిరాకరించండి"
-#: plinth/modules/snapshot/forms.py:47
+#: plinth/modules/snapshot/forms.py:32
#, fuzzy
#| msgid "Storage Snapshots"
msgid "Hourly Snapshots Limit"
msgstr "నిల్వ దృశ్యములు"
-#: plinth/modules/snapshot/forms.py:48
+#: plinth/modules/snapshot/forms.py:33
msgid "Keep a maximum of this many hourly snapshots."
msgstr "ఒక గంటలో స్నాప్షాట్స్ ని ఇంతకు నియంత్రించుము."
-#: plinth/modules/snapshot/forms.py:51
+#: plinth/modules/snapshot/forms.py:36
#, fuzzy
#| msgid "Delete Snapshots"
msgid "Daily Snapshots Limit"
msgstr "స్నాప్షాట్లను తొలగించు"
-#: plinth/modules/snapshot/forms.py:52
+#: plinth/modules/snapshot/forms.py:37
msgid "Keep a maximum of this many daily snapshots."
msgstr "ఒక రోజులో స్నాప్షాట్స్ ని ఇంతకు నియంత్రించుము."
-#: plinth/modules/snapshot/forms.py:55
+#: plinth/modules/snapshot/forms.py:40
#, fuzzy
#| msgid "Delete Snapshots"
msgid "Weekly Snapshots Limit"
msgstr "స్నాప్షాట్లను తొలగించు"
-#: plinth/modules/snapshot/forms.py:56
+#: plinth/modules/snapshot/forms.py:41
msgid "Keep a maximum of this many weekly snapshots."
msgstr "ఒక వారంలో స్నాప్షాట్స్ ని ఇంతకు నియంత్రించుము."
-#: plinth/modules/snapshot/forms.py:59
+#: plinth/modules/snapshot/forms.py:44
msgid "Monthly Snapshots Limit"
msgstr "స్నాప్షాట్ల నెలవారీ పరిమితి"
-#: plinth/modules/snapshot/forms.py:60
+#: plinth/modules/snapshot/forms.py:45
msgid "Keep a maximum of this many monthly snapshots."
msgstr "గరిష్టంగా ఒక నెలకు ఇన్ని స్నాప్షాట్లను ఉంచండి."
-#: plinth/modules/snapshot/forms.py:63
+#: plinth/modules/snapshot/forms.py:48
#, fuzzy
#| msgid "Delete Snapshots"
msgid "Yearly Snapshots Limit"
msgstr "స్నాప్షాట్లను తొలగించు"
-#: plinth/modules/snapshot/forms.py:64
+#: plinth/modules/snapshot/forms.py:49
#, fuzzy
#| msgid ""
#| "Keep a maximum of this many yearly snapshots. The default is 0 (disabled)."
@@ -5302,60 +5416,60 @@ msgid ""
"(disabled)."
msgstr "ఒక సవంత్సరంలో స్నాప్షాట్స్ ని ఇంతకు నియంత్రించుము. ప్రస్తుత సంఖ్యా 0 (సశక్తపరచబడలేదు)."
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:27
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:12
msgid "Delete the following snapshots permanently?"
msgstr "క్రింది స్నాప్షాట్లను శాశ్వతంగా తొలగించు ?"
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:31
-#: plinth/modules/snapshot/templates/snapshot_manage.html:43
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:39
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:16
+#: plinth/modules/snapshot/templates/snapshot_manage.html:28
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:24
msgid "Number"
msgstr "సంఖ్య"
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:32
-#: plinth/modules/snapshot/templates/snapshot_manage.html:44
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:40
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:17
+#: plinth/modules/snapshot/templates/snapshot_manage.html:29
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:25
msgid "Date"
msgstr "తేదీ"
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:52
-#: plinth/modules/snapshot/templates/snapshot_manage.html:37
-#: plinth/modules/snapshot/views.py:196
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:37
+#: plinth/modules/snapshot/templates/snapshot_manage.html:22
+#: plinth/modules/snapshot/views.py:175
msgid "Delete Snapshots"
msgstr "స్నాప్షాట్లను తొలగించు"
-#: plinth/modules/snapshot/templates/snapshot_manage.html:33
+#: plinth/modules/snapshot/templates/snapshot_manage.html:18
msgid "Create Snapshot"
msgstr "స్నాప్షాట్ని సృష్టించు"
-#: plinth/modules/snapshot/templates/snapshot_manage.html:46
+#: plinth/modules/snapshot/templates/snapshot_manage.html:31
msgid "Rollback"
msgstr "యథాస్థితి"
-#: plinth/modules/snapshot/templates/snapshot_manage.html:57
+#: plinth/modules/snapshot/templates/snapshot_manage.html:42
#, fuzzy
#| msgid "Inactive"
msgid "active"
msgstr "క్రియాశీల"
-#: plinth/modules/snapshot/templates/snapshot_manage.html:66
+#: plinth/modules/snapshot/templates/snapshot_manage.html:51
#, python-format
msgid "Rollback to snapshot #%(number)s"
msgstr "స్నాప్షాట్కు రోల్బ్యాక్ చేయండి #%(number)s"
-#: plinth/modules/snapshot/templates/snapshot_not_supported.html:26
+#: plinth/modules/snapshot/templates/snapshot_not_supported.html:11
#, python-format
msgid ""
"Your have a filesystem of type %(fs_type)s. Snapshots are "
"currently only available on %(types_supported)s filesystems."
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:27
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:12
#, fuzzy
msgid "Roll back the system to this snapshot?"
msgstr "ఈ వ్యవస్థ ని స్నాప్షాట్ కి రొల్ల్బచ్క్ చేయగలరా?"
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:30
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:15
msgid ""
"A new snapshot with the current state of the file system will be "
"automatically created. You will be able to undo a rollback by reverting to "
@@ -5364,66 +5478,62 @@ msgstr ""
"ఫైల్ సిస్టమ్ యొక్క ప్రస్తుత స్థితితో కొత్త స్నాప్షాట్ స్వయంచాలకంగా సృష్టించబడుతుంది. కొత్తగా సృష్టించిన "
"స్నాప్షాట్కు తిరిగి మారడం ద్వారా మీరు ఒక పునరుద్ధరణను తీసివెయ్యగలరు."
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:57
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:42
#, python-format
msgid "Rollback to Snapshot #%(number)s"
msgstr "స్నాప్షాట్ #%(number)s కు రోల్బ్యాక్ చేయండి"
-#: plinth/modules/snapshot/views.py:45
+#: plinth/modules/snapshot/views.py:30
#, fuzzy
#| msgid "Storage Snapshots"
msgid "Manage Snapshots"
msgstr "నిల్వ దృశ్యములు"
-#: plinth/modules/snapshot/views.py:98
+#: plinth/modules/snapshot/views.py:79
msgid "Created snapshot."
msgstr "స్నాప్షాట్ సృష్టించబడినది."
-#: plinth/modules/snapshot/views.py:156
+#: plinth/modules/snapshot/views.py:135
#, fuzzy
#| msgid "Configuration updated"
msgid "Storage snapshots configuration updated"
msgstr "ఆకృతీకరణ నవీకరించబడింది"
-#: plinth/modules/snapshot/views.py:160 plinth/modules/tor/views.py:79
+#: plinth/modules/snapshot/views.py:139 plinth/modules/tor/views.py:60
#, python-brace-format
msgid "Action error: {0} [{1}] [{2}]"
msgstr "చర్య లోపం:{0}{1}{2}"
-#: plinth/modules/snapshot/views.py:175
+#: plinth/modules/snapshot/views.py:154
#, fuzzy
#| msgid "Deleted all snapshots."
msgid "Deleted all snapshots"
msgstr "అన్ని స్నాప్షాట్స్ ని తొలగించండి."
-#: plinth/modules/snapshot/views.py:179
+#: plinth/modules/snapshot/views.py:158
#, fuzzy
#| msgid "Delete all the snapshots"
msgid "Deleted selected snapshots"
msgstr "అన్ని స్నాప్షాట్లను తొలగించు"
-#: plinth/modules/snapshot/views.py:184
+#: plinth/modules/snapshot/views.py:163
msgid "Snapshot is currently in use. Please try again later."
msgstr ""
-#: plinth/modules/snapshot/views.py:207
+#: plinth/modules/snapshot/views.py:186
#, python-brace-format
msgid "Rolled back to snapshot #{number}."
msgstr "స్నాప్షాట్ #{number} కు తీస్కుని వెళ్ళబడింది."
-#: plinth/modules/snapshot/views.py:210
+#: plinth/modules/snapshot/views.py:189
msgid "The system must be restarted to complete the rollback."
msgstr "రొల్ల్బచ్క్ ని పూర్తి చేయడానికి వ్యవస్థను పునరుద్ధరించాలి."
-#: plinth/modules/snapshot/views.py:222
+#: plinth/modules/snapshot/views.py:201
msgid "Rollback to Snapshot"
msgstr "చాయాచిత్రం కు రొల్ల్బచ్క్ చేయండి"
-#: plinth/modules/ssh/__init__.py:43
-msgid "Secure Shell (SSH) Server"
-msgstr "సెక్యూర్ షెల్ (SSH) సర్వర్"
-
-#: plinth/modules/ssh/__init__.py:46
+#: plinth/modules/ssh/__init__.py:29
msgid ""
"A Secure Shell server uses the secure shell protocol to accept connections "
"from remote computers. An authorized remote computer can perform "
@@ -5431,63 +5541,62 @@ msgid ""
"connections."
msgstr ""
-#: plinth/modules/ssh/forms.py:30
+#: plinth/modules/ssh/__init__.py:50
+msgid "Secure Shell (SSH) Server"
+msgstr "సెక్యూర్ షెల్ (SSH) సర్వర్"
+
+#: plinth/modules/ssh/forms.py:15
#, fuzzy
#| msgid "Use HTTP basic authentication"
msgid "Disable password authentication"
msgstr "HTTP ప్రాథమిక ప్రమాణీకరణ ఉపయోగించు"
-#: plinth/modules/ssh/forms.py:31
+#: plinth/modules/ssh/forms.py:16
msgid ""
"Improves security by preventing password guessing. Ensure that you have "
"setup SSH keys in your administrator user account before enabling this "
"option."
msgstr ""
-#: plinth/modules/ssh/templates/ssh.html:26
+#: plinth/modules/ssh/templates/ssh.html:11
#, fuzzy
#| msgid "SSH Fingerprint"
msgid "Server Fingerprints"
msgstr "SSH వేలిముద్ర"
-#: plinth/modules/ssh/templates/ssh.html:29
+#: plinth/modules/ssh/templates/ssh.html:14
msgid ""
"When connecting to the server, ensure that the fingerprint shown by the SSH "
"client matches one of these fingerprints."
msgstr ""
-#: plinth/modules/ssh/templates/ssh.html:38
+#: plinth/modules/ssh/templates/ssh.html:23
msgid "Algorithm"
msgstr "అల్గారిథం"
-#: plinth/modules/ssh/templates/ssh.html:39
+#: plinth/modules/ssh/templates/ssh.html:24
#, fuzzy
#| msgid "SSH Fingerprint"
msgid "Fingerprint"
msgstr "SSH వేలిముద్ర"
-#: plinth/modules/ssh/views.py:66
+#: plinth/modules/ssh/views.py:48
msgid "SSH authentication with password disabled."
msgstr ""
-#: plinth/modules/ssh/views.py:69
+#: plinth/modules/ssh/views.py:51
msgid "SSH authentication with password enabled."
msgstr ""
-#: plinth/modules/sso/__init__.py:30
+#: plinth/modules/sso/__init__.py:33
msgid "Single Sign On"
msgstr "సింగిల్ సైన్ ఆన్"
-#: plinth/modules/sso/templates/login.html:35
+#: plinth/modules/sso/templates/login.html:20
msgid "Login"
msgstr "ప్రవేశించు"
-#: plinth/modules/storage/__init__.py:39 plinth/modules/storage/__init__.py:331
-#, fuzzy
-msgid "Storage"
-msgstr "అన్హొస్టెడ్ స్టోరేజ్ ని (పునరుద్ధరించండి)"
-
-#: plinth/modules/storage/__init__.py:47
+#: plinth/modules/storage/__init__.py:30
#, python-brace-format
msgid ""
"This module allows you to manage storage media attached to your {box_name}. "
@@ -5495,161 +5604,166 @@ msgid ""
"media, expand the root partition etc."
msgstr ""
-#: plinth/modules/storage/__init__.py:224
+#: plinth/modules/storage/__init__.py:52 plinth/modules/storage/__init__.py:318
+#, fuzzy
+msgid "Storage"
+msgstr "అన్హొస్టెడ్ స్టోరేజ్ ని (పునరుద్ధరించండి)"
+
+#: plinth/modules/storage/__init__.py:211
#, python-brace-format
msgid "{disk_size:.1f} bytes"
msgstr "{disk_size:.1f} బైట్లు"
-#: plinth/modules/storage/__init__.py:228
+#: plinth/modules/storage/__init__.py:215
#, python-brace-format
msgid "{disk_size:.1f} KiB"
msgstr "{disk_size:.1f} కిలోబైట్లు"
-#: plinth/modules/storage/__init__.py:232
+#: plinth/modules/storage/__init__.py:219
#, python-brace-format
msgid "{disk_size:.1f} MiB"
msgstr "{disk_size:.1f} మెగాబైట్లు"
-#: plinth/modules/storage/__init__.py:236
+#: plinth/modules/storage/__init__.py:223
#, python-brace-format
msgid "{disk_size:.1f} GiB"
msgstr "{disk_size:.1f} గిగాబైట్లు"
-#: plinth/modules/storage/__init__.py:239
+#: plinth/modules/storage/__init__.py:226
#, python-brace-format
msgid "{disk_size:.1f} TiB"
msgstr "{disk_size:.1f} టెరాబైట్లు"
-#: plinth/modules/storage/__init__.py:246
+#: plinth/modules/storage/__init__.py:233
msgid "The operation failed."
msgstr ""
-#: plinth/modules/storage/__init__.py:248
+#: plinth/modules/storage/__init__.py:235
msgid "The operation was cancelled."
msgstr ""
-#: plinth/modules/storage/__init__.py:250
+#: plinth/modules/storage/__init__.py:237
#, fuzzy
#| msgid "Mumble server is running"
msgid "The device is already unmounting."
msgstr "మంబ్లు సేవిక నడుస్తుంది"
-#: plinth/modules/storage/__init__.py:252
+#: plinth/modules/storage/__init__.py:239
msgid "The operation is not supported due to missing driver/tool support."
msgstr ""
-#: plinth/modules/storage/__init__.py:255
+#: plinth/modules/storage/__init__.py:242
msgid "The operation timed out."
msgstr "ఆపరేషన్ టైమవుట్ అయింది."
-#: plinth/modules/storage/__init__.py:257
+#: plinth/modules/storage/__init__.py:244
msgid "The operation would wake up a disk that is in a deep-sleep state."
msgstr "ఈ ఆపరేషన్ గాఢ నిద్రలో ఉన్న ఒక డిస్క్ ను మేల్కొలుపుతుంది."
-#: plinth/modules/storage/__init__.py:260
+#: plinth/modules/storage/__init__.py:247
#, fuzzy
msgid "Attempting to unmount a device that is busy."
msgstr "బిజీగా ఉన్న పరికరాన్ని అన్ మౌంట్ చేయడానికి ప్రయత్నిస్తోంది."
-#: plinth/modules/storage/__init__.py:262
+#: plinth/modules/storage/__init__.py:249
msgid "The operation has already been cancelled."
msgstr "ఆపరేషన్ ఇప్పటికే రద్దు చేయబడింది."
-#: plinth/modules/storage/__init__.py:268
+#: plinth/modules/storage/__init__.py:255
msgid "Not authorized to perform the requested operation."
msgstr "అభ్యర్థించిన ఆపరేషన్ చేయడానికి అధికారం లేదు."
-#: plinth/modules/storage/__init__.py:270
+#: plinth/modules/storage/__init__.py:257
#, fuzzy
msgid "The device is already mounted."
msgstr "ఈ సేవ ఇప్పటికే ఉంది"
-#: plinth/modules/storage/__init__.py:272
+#: plinth/modules/storage/__init__.py:259
#, fuzzy
#| msgid "Mumble server is not running"
msgid "The device is not mounted."
msgstr "మంబ్లు సేవిక నడవంలేదు"
-#: plinth/modules/storage/__init__.py:275
+#: plinth/modules/storage/__init__.py:262
msgid "Not permitted to use the requested option."
msgstr "అభ్యర్థించిన ఎంపికను ఉపయోగించడానికి అనుమతి లేదు."
-#: plinth/modules/storage/__init__.py:278
+#: plinth/modules/storage/__init__.py:265
msgid "The device is mounted by another user."
msgstr "పరికరం మరొక వినియోగదారుచే మౌంట్ చేయబడింది."
-#: plinth/modules/storage/__init__.py:326
+#: plinth/modules/storage/__init__.py:313
#, no-python-format, python-brace-format
msgid "Low space on system partition: {percent_used}% used, {free_space} free."
msgstr ""
-#: plinth/modules/storage/__init__.py:328
+#: plinth/modules/storage/__init__.py:315
msgid "Low disk space"
msgstr ""
-#: plinth/modules/storage/forms.py:79
+#: plinth/modules/storage/forms.py:64
#, fuzzy
#| msgid "Invalid hostname"
msgid "Invalid directory name."
msgstr "ఆతిథ్యనామం చెల్లనిది"
-#: plinth/modules/storage/forms.py:97
+#: plinth/modules/storage/forms.py:82
msgid "Directory does not exist."
msgstr "డైరెక్టరీ ఉనికిలో లేదు."
-#: plinth/modules/storage/forms.py:99
+#: plinth/modules/storage/forms.py:84
#, fuzzy
#| msgid "Download directory"
msgid "Path is not a directory."
msgstr "డైరెక్టరీని దిగుమతి చేయు"
-#: plinth/modules/storage/forms.py:102
+#: plinth/modules/storage/forms.py:87
msgid "Directory is not readable by the user."
msgstr "వినియోగదారు ద్వారా డైరెక్టరీ చదవబడలేదు."
-#: plinth/modules/storage/forms.py:105
+#: plinth/modules/storage/forms.py:90
msgid "Directory is not writable by the user."
msgstr "వినియోగదారు ద్వారా డైరెక్టరీ వ్రాయబడలేదు."
-#: plinth/modules/storage/forms.py:110
+#: plinth/modules/storage/forms.py:95
#, fuzzy
#| msgid "Download directory"
msgid "Directory"
msgstr "డైరెక్టరీని దిగుమతి చేయు"
-#: plinth/modules/storage/forms.py:113
+#: plinth/modules/storage/forms.py:98
msgid "Subdirectory (optional)"
msgstr "ఉప డైరెక్టరీ (ఐచ్ఛికం)"
-#: plinth/modules/storage/forms.py:160
+#: plinth/modules/storage/forms.py:145
#, fuzzy
#| msgid "Shared"
msgid "Share"
msgstr "పంచుకోబడ్డ"
-#: plinth/modules/storage/forms.py:168
+#: plinth/modules/storage/forms.py:153
msgid "Other directory (specify below)"
msgstr "ఇతర డైరెక్టరీ (దిగువన పేర్కొనండి)"
-#: plinth/modules/storage/templates/storage.html:35
+#: plinth/modules/storage/templates/storage.html:20
#, fuzzy
#| msgid "The following disks are in use:"
msgid "The following storage devices are in use:"
msgstr "క్రింది డిస్కులు ఉపయోగంలో ఉన్నాయి:"
-#: plinth/modules/storage/templates/storage.html:41
+#: plinth/modules/storage/templates/storage.html:26
msgid "Label"
msgstr "లేబుల్"
-#: plinth/modules/storage/templates/storage.html:42
+#: plinth/modules/storage/templates/storage.html:27
msgid "Mount Point"
msgstr "ఆరొహించు కోన"
-#: plinth/modules/storage/templates/storage.html:90
+#: plinth/modules/storage/templates/storage.html:75
msgid "Partition Expansion"
msgstr "విభజన విస్తరణ"
-#: plinth/modules/storage/templates/storage.html:92
+#: plinth/modules/storage/templates/storage.html:77
#, python-format
msgid ""
"There is %(expandable_root_size)s of unallocated space available after your "
@@ -5660,13 +5774,13 @@ msgstr ""
"రూట్ విభజనను మీరు విస్తరించుకోగలరు. మీ ఫైళ్లు భద్రపరుచుకునేందుకు అది మీకు అదనపు సామర్ధ్యాన్ని "
"అందిస్తుంది."
-#: plinth/modules/storage/templates/storage.html:102
-#: plinth/modules/storage/templates/storage_expand.html:39
-#: plinth/modules/storage/views.py:76
+#: plinth/modules/storage/templates/storage.html:87
+#: plinth/modules/storage/templates/storage_expand.html:24
+#: plinth/modules/storage/views.py:58
msgid "Expand Root Partition"
msgstr "రూట్ విభజనను విస్తరించు"
-#: plinth/modules/storage/templates/storage_expand.html:29
+#: plinth/modules/storage/templates/storage_expand.html:14
#, python-format
msgid ""
"Please backup your data before proceeding. After this operation, "
@@ -5676,40 +5790,30 @@ msgstr ""
"దయచేసి మీ సమాచారాన్ని బ్యాకప్ (భద్రపరచు కొనుట) చేస్కోండి. ఈ క్రియ తర్వాత %(expandable_root_size)s "
"అధనపు సామర్ధ్యం మీ రూ విభజనలో అందుబాటులోకి వస్తుంది."
-#: plinth/modules/storage/views.py:88
+#: plinth/modules/storage/views.py:70
#, python-brace-format
msgid "Error expanding partition: {exception}"
msgstr "విభజన విస్తరణలో దోషం: {exception}"
-#: plinth/modules/storage/views.py:91
+#: plinth/modules/storage/views.py:73
msgid "Partition expanded successfully."
msgstr "విభజనను విస్తరించడం విజయవంతమైనది."
-#: plinth/modules/storage/views.py:109
+#: plinth/modules/storage/views.py:91
#, python-brace-format
msgid "{drive_vendor} {drive_model} can be safely unplugged."
msgstr "{drive_vendor} {drive_model} ని సురక్షితంగా తొలగించవచ్చు."
-#: plinth/modules/storage/views.py:113
+#: plinth/modules/storage/views.py:95
msgid "Device can be safely unplugged."
msgstr "పరికరాన్ని సురక్షితంగా తొలగించవచ్చు."
-#: plinth/modules/storage/views.py:123
+#: plinth/modules/storage/views.py:105
#, python-brace-format
msgid "Error ejecting device: {error_message}"
msgstr "పరికరాన్ని తొలగించడంలో లోపం: {error_message}"
-#: plinth/modules/syncthing/__init__.py:40
-#: plinth/modules/syncthing/manifest.py:28
-msgid "Syncthing"
-msgstr "సమకాలీకరించుచున్నది"
-
-#: plinth/modules/syncthing/__init__.py:44
-#, fuzzy
-msgid "File Synchronization"
-msgstr "ఫైలు సమకాలీకరించబడుచున్నధి"
-
-#: plinth/modules/syncthing/__init__.py:47
+#: plinth/modules/syncthing/__init__.py:26
#, fuzzy
msgid ""
"Syncthing is an application to synchronize files across multiple devices, e."
@@ -5721,7 +5825,7 @@ msgstr ""
"ఒక ఉపకరణంలో ఒక ఫైలు యొక్క తయారీ,మార్పులు, లేదా నిర్మూలిస్తే అది మిగిలిన అన్ని ఉపకరణాలలో దానికి "
"సంబందించిన మార్పులు చెయ్యడం సమకాలీకరించడం"
-#: plinth/modules/syncthing/__init__.py:52
+#: plinth/modules/syncthing/__init__.py:31
#, python-brace-format
msgid ""
"Running Syncthing on {box_name} provides an extra synchronization point for "
@@ -5732,21 +5836,23 @@ msgid ""
"{box_name} is only available for users belonging to the \"admin\" group."
msgstr ""
-#: plinth/modules/syncthing/__init__.py:63
+#: plinth/modules/syncthing/__init__.py:40
#, fuzzy
#| msgid "Install this application?"
msgid "Administer Syncthing application"
msgstr "ఈ అనువర్తనాన్ని నిక్షిప్తం చేయాలా?"
-#: plinth/modules/tahoe/__init__.py:43
-msgid "Tahoe-LAFS"
-msgstr "తాహో-LAFS"
+#: plinth/modules/syncthing/__init__.py:54
+#: plinth/modules/syncthing/manifest.py:13
+msgid "Syncthing"
+msgstr "సమకాలీకరించుచున్నది"
-#: plinth/modules/tahoe/__init__.py:47
-msgid "Distributed File Storage"
-msgstr "పంపిణీ ఫైల్ నిల్వ"
+#: plinth/modules/syncthing/__init__.py:55
+#, fuzzy
+msgid "File Synchronization"
+msgstr "ఫైలు సమకాలీకరించబడుచున్నధి"
-#: plinth/modules/tahoe/__init__.py:134
+#: plinth/modules/tahoe/__init__.py:30
msgid ""
"Tahoe-LAFS is a decentralized secure file storage system. It uses provider "
"independent security to store files over a distributed network of storage "
@@ -5754,7 +5860,7 @@ msgid ""
"remaining nodes."
msgstr ""
-#: plinth/modules/tahoe/__init__.py:139
+#: plinth/modules/tahoe/__init__.py:35
#, python-brace-format
msgid ""
"This {box_name} hosts a storage node and an introducer by default. "
@@ -5762,7 +5868,15 @@ msgid ""
"other storage nodes."
msgstr ""
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:33
+#: plinth/modules/tahoe/__init__.py:66
+msgid "Tahoe-LAFS"
+msgstr "తాహో-LAFS"
+
+#: plinth/modules/tahoe/__init__.py:68
+msgid "Distributed File Storage"
+msgstr "పంపిణీ ఫైల్ నిల్వ"
+
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:17
#, python-format
msgid ""
"The Tahoe-LAFS server domain is set to %(domain_name)s. Changing the "
@@ -5774,39 +5888,35 @@ msgstr ""
"మార్చడం Tahoe-LAFS యొక్క పునఃస్థాపన అవసరం మరియు మీ డేటా కోల్పోతారు. మీరు Tahoe-LAFS ను %(domain_name)s వద్ద పొందవచ్చు."
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:55
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:39
msgid "Local introducer"
msgstr "స్థానిక పరిచయకర్త"
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:43
#: plinth/modules/tahoe/templates/tahoe-post-setup.html:59
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:75
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:92
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:76
#, fuzzy
#| msgid "Name"
msgid "Pet Name"
msgstr "పేరు"
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:72
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:56
msgid "Add new introducer"
msgstr "కొత్త పరిచయకర్తని జోడించండి"
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:83
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:67
msgid "Add"
msgstr "జోడించు"
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:88
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:72
msgid "Connected introducers"
msgstr "కలిసియున్న పరిచయకర్తలు"
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:105
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:89
msgid "Remove"
msgstr "తొలగించు"
-#: plinth/modules/tor/__init__.py:47
-msgid "Tor"
-msgstr "టార్"
-
-#: plinth/modules/tor/__init__.py:52
+#: plinth/modules/tor/__init__.py:33
msgid ""
"Tor is an anonymous communication system. You can learn more about it from "
"the Tor Project website. For "
@@ -5819,69 +5929,73 @@ msgstr ""
"టార్ ప్రాజెక్ట్ మీరు టార్ బ్రౌజర్ ను ఉపయోగించాలని సిఫార్సు చేస్తున్నారు."
-#: plinth/modules/tor/__init__.py:83
+#: plinth/modules/tor/__init__.py:55
+msgid "Tor"
+msgstr "టార్"
+
+#: plinth/modules/tor/__init__.py:66
#, fuzzy
#| msgid "Tor Hidden Service"
msgid "Tor Onion Service"
msgstr "దాచిన టార్ సర్వీస్"
-#: plinth/modules/tor/__init__.py:87
+#: plinth/modules/tor/__init__.py:70
#, fuzzy
#| msgid "Socks5 Proxy"
msgid "Tor Socks Proxy"
msgstr "సాక్స్5 ప్రాక్సీ"
-#: plinth/modules/tor/__init__.py:91
+#: plinth/modules/tor/__init__.py:74
msgid "Tor Bridge Relay"
msgstr "టార్ బ్రిడ్జ్ రిలే"
-#: plinth/modules/tor/__init__.py:112
+#: plinth/modules/tor/__init__.py:95
msgid "Tor relay port available"
msgstr "టార్ రిలే పోర్ట్ అందుబాటులో ఉంది"
-#: plinth/modules/tor/__init__.py:122
+#: plinth/modules/tor/__init__.py:105
msgid "Obfs3 transport registered"
msgstr "Obfs3 రవాణా నమోదు చేయబడింది"
-#: plinth/modules/tor/__init__.py:132
+#: plinth/modules/tor/__init__.py:115
msgid "Obfs4 transport registered"
msgstr "Obfs4 రవాణా నమోదు చేయబడింది"
-#: plinth/modules/tor/__init__.py:225
+#: plinth/modules/tor/__init__.py:208
#, python-brace-format
msgid "Access URL {url} on tcp{kind} via Tor"
msgstr "టార్ ద్వారా {kind} లో {url} ను ఆక్సెస్ చెయ్యండి"
-#: plinth/modules/tor/__init__.py:236
+#: plinth/modules/tor/__init__.py:219
#, python-brace-format
msgid "Confirm Tor usage at {url} on tcp{kind}"
msgstr "టోర్ వాడుకను నిర్ధారించండి{url} టీ సి పి పై{kind}"
-#: plinth/modules/tor/forms.py:46
+#: plinth/modules/tor/forms.py:31
msgid ""
"Enter a valid bridge with this format: [transport] IP:ORPort [fingerprint]"
msgstr ""
-#: plinth/modules/tor/forms.py:88
+#: plinth/modules/tor/forms.py:73
msgid "Enable Tor"
msgstr "టోర్ ను ప్రారంభించండి"
-#: plinth/modules/tor/forms.py:90
+#: plinth/modules/tor/forms.py:75
msgid "Use upstream bridges to connect to Tor network"
msgstr "టార్ నెట్వర్క్కు కనెక్ట్ చేయడానికి అప్స్ట్రీమ్ వారది ఉపయోగించండి"
-#: plinth/modules/tor/forms.py:92
+#: plinth/modules/tor/forms.py:77
msgid ""
"When enabled, the bridges configured below will be used to connect to the "
"Tor network. Use this option if your Internet Service Provider (ISP) blocks "
"or censors connections to the Tor Network. This will disable relay modes."
msgstr ""
-#: plinth/modules/tor/forms.py:97
+#: plinth/modules/tor/forms.py:82
msgid "Upstream bridges"
msgstr "అప్స్ట్రీమ్ బ్రిడ్జెస్"
-#: plinth/modules/tor/forms.py:99
+#: plinth/modules/tor/forms.py:84
msgid ""
"You can get some bridges from https://bridges.torproject.org/ and copy/paste the bridge information "
@@ -5891,13 +6005,13 @@ msgstr ""
"torproject.org/ నుండి కొన్ని బ్రిడ్జెస్ పొందవచ్చు మరియు ఇక్కడ బ్రిడ్జె సమాచారాన్ని కాపీ / పేస్ట్ "
"చెయ్యండి. ప్రస్తుతం మద్దతిచ్చే ట్రాన్స్పోర్ట్ లు none, obfs3, obfs4 మరియు scamblesuit."
-#: plinth/modules/tor/forms.py:105
+#: plinth/modules/tor/forms.py:90
#, fuzzy
#| msgid "Enable network time"
msgid "Enable Tor relay"
msgstr "అల్లిక సమయం చేతనించు"
-#: plinth/modules/tor/forms.py:106
+#: plinth/modules/tor/forms.py:91
#, python-brace-format
msgid ""
"When enabled, your {box_name} will run a Tor relay and donate bandwidth to "
@@ -5907,11 +6021,11 @@ msgstr ""
"ప్రారంభించినప్పుడు, మీ {box_name} 1 టోర్ రిలేని అమలు చేస్తుంది మరియు టార్ నెట్వర్క్కి బ్యాండ్విడ్త్ని దానం "
"చేస్తుంది. మీరు 2 megabits / s కంటే ఎక్కువ అప్లోడ్ మరియు డౌన్లోడ్ బ్యాండ్విడ్త్ ఉంటే దీన్ని చేయండి."
-#: plinth/modules/tor/forms.py:111
+#: plinth/modules/tor/forms.py:96
msgid "Enable Tor bridge relay"
msgstr "టార్ వంతెన రిలేను ప్రారంభించండి"
-#: plinth/modules/tor/forms.py:113
+#: plinth/modules/tor/forms.py:98
msgid ""
"When enabled, relay information is published in the Tor bridge database "
"instead of public Tor relay database making it harder to censor this node. "
@@ -5921,13 +6035,13 @@ msgstr ""
"ప్రచురించబడుతుంది, ఇది ఈ నోడ్ను సెన్సార్ చేయడానికి కష్టతరం చేస్తుంది.ఇతరులు సెన్సార్షిప్ను "
"తప్పించుకునేందుకు ఇది దోహదపడుతుంది."
-#: plinth/modules/tor/forms.py:118
+#: plinth/modules/tor/forms.py:103
#, fuzzy
#| msgid "Enable Tor Hidden Service"
msgid "Enable Tor Hidden Service"
msgstr "టార్ దాచిన సేవని ప్రారంభించండి"
-#: plinth/modules/tor/forms.py:120
+#: plinth/modules/tor/forms.py:105
#, fuzzy, python-brace-format
#| msgid ""
#| "A hidden service will allow {box_name} to provide selected services (such "
@@ -5941,11 +6055,11 @@ msgstr ""
"ఎంపిక చేసిన సేవలను (వికీ లేదా చాట్ వంటివి) దాని స్థానాన్ని బహిర్గతం చేయకుండా ఒక రహస్య సేవ {box_name} "
"1 ను అనుమతిస్తుంది. ఇది ఇంకా బలమైన పేరు కోసం ఉపయోగించకండి."
-#: plinth/modules/tor/forms.py:125
+#: plinth/modules/tor/forms.py:110
msgid "Download software packages over Tor"
msgstr "టార్ పై సాఫ్ట్వేర్ ప్యాకేజీలను డౌన్లోడ్ చేయండి"
-#: plinth/modules/tor/forms.py:126
+#: plinth/modules/tor/forms.py:111
msgid ""
"When enabled, software will be downloaded over the Tor network for "
"installations and upgrades. This adds a degree of privacy and security "
@@ -5954,37 +6068,37 @@ msgstr ""
"ప్రారంభించబడినప్పుడు, సంస్థాపనలు మరియు నవీకరణలు కోసం సాఫ్ట్వేర్ టార్ నెట్వర్క్ ద్వారా డౌన్లోడ్ "
"చేయబడుతుంది. ఇది సాఫ్ట్ వేర్ డౌన్లోడ్ సమయంలో గోప్యత మరియు భద్రత యొక్క డిగ్రీని జతచేస్తుంది."
-#: plinth/modules/tor/forms.py:141
+#: plinth/modules/tor/forms.py:126
msgid "Specify at least one upstream bridge to use upstream bridges."
msgstr "అప్స్ట్రీమ్ వంతెనలను ఉపయోగించడానికి కనీసం ఒక అప్స్ట్రీమ్ వంతెనను పేర్కొనండి."
-#: plinth/modules/tor/manifest.py:29
+#: plinth/modules/tor/manifest.py:14
msgid "Tor Browser"
msgstr "టార్ బ్రౌజర్"
-#: plinth/modules/tor/manifest.py:45
+#: plinth/modules/tor/manifest.py:30
msgid "Orbot: Proxy with Tor"
msgstr ""
-#: plinth/modules/tor/templates/tor.html:41
+#: plinth/modules/tor/templates/tor.html:26
msgid "Tor configuration is being updated"
msgstr "టోర్ ఆకృతీకరణ నవీకరించబడుతుంది"
-#: plinth/modules/tor/templates/tor.html:50
+#: plinth/modules/tor/templates/tor.html:35
#, fuzzy
#| msgid "Hidden Service"
msgid "Onion Service"
msgstr "దాగిన సేవ"
-#: plinth/modules/tor/templates/tor.html:52
+#: plinth/modules/tor/templates/tor.html:37
msgid "Ports"
msgstr "పోర్ట్స్"
-#: plinth/modules/tor/templates/tor.html:82
+#: plinth/modules/tor/templates/tor.html:67
msgid "Relay"
msgstr "రిలే"
-#: plinth/modules/tor/templates/tor.html:84
+#: plinth/modules/tor/templates/tor.html:69
#, python-format
msgid ""
"If your %(box_name)s is behind a router or firewall, you should make sure "
@@ -5993,21 +6107,16 @@ msgstr ""
"మీ %(box_name)s లు రౌటర్ లేదా ఫైర్వాల్ వెనుక ఉంటే, మీరు ఈ క్రింది పోర్టులు తెరిచి ఉన్నారని "
"నిర్ధారించుకోండి మరియు అవసరమైతే పోర్ట్-ఫార్వార్డ్ చేయబడిందని నిర్ధారించుకోండి:"
-#: plinth/modules/tor/templates/tor.html:112
+#: plinth/modules/tor/templates/tor.html:97
msgid "SOCKS"
msgstr "సాక్స్లు"
-#: plinth/modules/tor/templates/tor.html:115
+#: plinth/modules/tor/templates/tor.html:100
#, python-format
msgid "A Tor SOCKS port is available on your %(box_name)s on TCP port 9050."
msgstr "టిసిపి పోర్ట్ 9050 పై ఒక టార్ సొక్స్ పోర్ట్ మీ %(box_name)sలో అందుబాటులో ఉంది."
-#: plinth/modules/transmission/__init__.py:41
-#: plinth/modules/transmission/manifest.py:24
-msgid "Transmission"
-msgstr "ప్రసారం"
-
-#: plinth/modules/transmission/__init__.py:48
+#: plinth/modules/transmission/__init__.py:27
msgid ""
"BitTorrent is a peer-to-peer file sharing protocol. Transmission daemon "
"handles Bitorrent file sharing. Note that BitTorrent is not anonymous."
@@ -6015,22 +6124,19 @@ msgstr ""
"బిట్ టోర్రెంట్ పీర్-టు-పీర్ ఫైల్ షేరింగ్ ప్రోటోకాల్. ట్రాన్స్మిషన్ డెమోన్ బిట్ టోర్రెంట్ ఫైల్ భాగస్వామ్యాన్ని నిర్వహిస్తుంది. "
"బిట్ టోర్రెంట్ అజ్ఞాత కాదని గమనించండి."
-#: plinth/modules/ttrss/__init__.py:43 plinth/modules/ttrss/manifest.py:34
-msgid "Tiny Tiny RSS"
-msgstr "టైనీ టైనీ RSS"
+#: plinth/modules/transmission/__init__.py:48
+#: plinth/modules/transmission/manifest.py:9
+msgid "Transmission"
+msgstr "ప్రసారం"
-#: plinth/modules/ttrss/__init__.py:47
-msgid "News Feed Reader"
-msgstr "న్యూస్ ఫీడ్ రీడర్"
-
-#: plinth/modules/ttrss/__init__.py:50
+#: plinth/modules/ttrss/__init__.py:29
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:54
+#: plinth/modules/ttrss/__init__.py:33
#, fuzzy, python-brace-format
#| msgid ""
#| "When enabled, Cockpit will be available from /"
@@ -6047,131 +6153,135 @@ msgstr ""
"ద్వారా పొందవచ్చు {box_name}.\n"
"అంగీకార సమాచారం మరియు సిస్టమ్ మార్చడం సామర్ధ్యాలు నిర్వాహక సమూహం చెందిన వినియోగదారులకు పరిమితం."
-#: plinth/modules/ttrss/__init__.py:58
+#: plinth/modules/ttrss/__init__.py:37
msgid ""
"When using a mobile or desktop application for Tiny Tiny RSS, use the URL /tt-rss-app for "
"connecting."
msgstr ""
-#: plinth/modules/ttrss/__init__.py:65
+#: plinth/modules/ttrss/__init__.py:42
msgid "Read and subscribe to news feeds"
msgstr "న్యూస్ ఫీడ్లను చదవడం మరియు చందాదారునిగా చేరు"
-#: plinth/modules/ttrss/manifest.py:25
+#: plinth/modules/ttrss/__init__.py:56 plinth/modules/ttrss/manifest.py:19
+msgid "Tiny Tiny RSS"
+msgstr "టైనీ టైనీ RSS"
+
+#: plinth/modules/ttrss/__init__.py:57
+msgid "News Feed Reader"
+msgstr "న్యూస్ ఫీడ్ రీడర్"
+
+#: plinth/modules/ttrss/manifest.py:10
#, fuzzy
#| msgid "Tiny Tiny RSS"
msgid "Tiny Tiny RSS (Fork)"
msgstr "టైనీ టైనీ RSS"
-#: plinth/modules/upgrades/__init__.py:37 plinth/templates/setup.html:89
-msgid "Update"
-msgstr "నవీకరణ యూ.ఆర్.ఎల్"
-
-#: plinth/modules/upgrades/__init__.py:40
+#: plinth/modules/upgrades/__init__.py:23
msgid "Check for and apply the latest software and security updates."
msgstr ""
-#: plinth/modules/upgrades/__init__.py:84
+#: plinth/modules/upgrades/__init__.py:38 plinth/templates/setup.html:74
+msgid "Update"
+msgstr "నవీకరణ యూ.ఆర్.ఎల్"
+
+#: plinth/modules/upgrades/__init__.py:71
#, fuzzy
#| msgid "FreedomBox Manual"
msgid "FreedomBox Updated"
msgstr "ఫ్రీడమ్ బాక్స్ నిర్దేశిక"
-#: plinth/modules/upgrades/forms.py:28
+#: plinth/modules/upgrades/forms.py:13
#, fuzzy
#| msgid "Enable automatic upgrades"
msgid "Enable auto-update"
msgstr "స్వయంచాలక నవీకరణలు ప్రారంభించు"
-#: plinth/modules/upgrades/forms.py:29
+#: plinth/modules/upgrades/forms.py:14
msgid "When enabled, FreedomBox automatically updates once a day."
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades-new-release.html:24
+#: plinth/modules/upgrades/templates/upgrades-new-release.html:9
#, fuzzy, python-format
#| msgid "%(box_name)s is up to date."
msgid "%(box_name)s Updated"
msgstr "%(box_name)s తాజాగా ఉంది."
-#: plinth/modules/upgrades/templates/upgrades-new-release.html:28
+#: plinth/modules/upgrades/templates/upgrades-new-release.html:13
#, python-format
msgid ""
"%(box_name)s has been updated to version %(version)s. See the release announcement."
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades-new-release.html:37
-#: plinth/templates/notifications.html:59
+#: plinth/modules/upgrades/templates/upgrades-new-release.html:22
+#: plinth/templates/notifications.html:44
msgid "Dismiss"
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades.html:45
+#: plinth/modules/upgrades/templates/upgrades.html:30
#, fuzzy
#| msgid "Update"
msgid "Update now"
msgstr "నవీకరణ యూ.ఆర్.ఎల్"
-#: plinth/modules/upgrades/templates/upgrades.html:54
+#: plinth/modules/upgrades/templates/upgrades.html:39
msgid "Updating..."
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades.html:59
+#: plinth/modules/upgrades/templates/upgrades.html:44
msgid ""
"This may take a long time to complete. During an update, "
"you cannot install apps. Also, this web interface may be temporarily "
"unavailable and show an error. In that case, refresh the page to continue."
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades.html:73
+#: plinth/modules/upgrades/templates/upgrades.html:58
msgid "Toggle recent update logs"
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades_configure.html:26
-#: plinth/modules/upgrades/templates/upgrades_configure.html:27
-#: plinth/modules/upgrades/views.py:107
+#: plinth/modules/upgrades/templates/upgrades_configure.html:11
+#: plinth/modules/upgrades/templates/upgrades_configure.html:12
+#: plinth/modules/upgrades/views.py:89
#, fuzzy
#| msgid "Last update"
msgid "Manual update"
msgstr "చివరి నవీకరణ"
-#: plinth/modules/upgrades/views.py:66
+#: plinth/modules/upgrades/views.py:48
#, python-brace-format
msgid "Error when configuring unattended-upgrades: {error}"
msgstr "గమనింపబడని-నవీకరణలు ఆకృతీకరించునప్పుడు దోషం: {error}"
-#: plinth/modules/upgrades/views.py:70
+#: plinth/modules/upgrades/views.py:52
msgid "Automatic upgrades enabled"
msgstr "స్వయంచాలక నవీకరణలు ప్రారంభించబడ్డాయి"
-#: plinth/modules/upgrades/views.py:73
+#: plinth/modules/upgrades/views.py:55
msgid "Automatic upgrades disabled"
msgstr "స్వయంచాలక నవీకరణలు నిలిపివేయబడ్డాయి"
-#: plinth/modules/upgrades/views.py:75
+#: plinth/modules/upgrades/views.py:57
msgid "Settings unchanged"
msgstr "ఆకృతీకరణ మార్చబడలేదు"
-#: plinth/modules/upgrades/views.py:101
+#: plinth/modules/upgrades/views.py:83
msgid "Upgrade process started."
msgstr "అప్గ్రేడ్ ప్రక్రియ ప్రారంభించబడింది."
-#: plinth/modules/upgrades/views.py:104
+#: plinth/modules/upgrades/views.py:86
msgid "Starting upgrade failed."
msgstr "నవీకరణ ప్రారంభం విఫలమైంది."
-#: plinth/modules/users/__init__.py:51
-msgid "Users and Groups"
-msgstr "వినియోగదారులు మరియు సమూహాలు"
-
-#: plinth/modules/users/__init__.py:54
+#: plinth/modules/users/__init__.py:37
msgid ""
"Create and managed user accounts. These accounts serve as centralized "
"authentication mechanism for most apps. Some apps further require a user "
"account to be part of a group to authorize the user to access the app."
msgstr ""
-#: plinth/modules/users/__init__.py:59
+#: plinth/modules/users/__init__.py:42
#, python-brace-format
msgid ""
"Any user may login to {box_name} web interface to see a list of apps "
@@ -6179,35 +6289,39 @@ msgid ""
"group may alter apps or system settings."
msgstr ""
-#: plinth/modules/users/__init__.py:128
+#: plinth/modules/users/__init__.py:64
+msgid "Users and Groups"
+msgstr "వినియోగదారులు మరియు సమూహాలు"
+
+#: plinth/modules/users/__init__.py:115
#, python-brace-format
msgid "Check LDAP entry \"{search_item}\""
msgstr "LDAP నమోదు \"{search_item}\" తనిఖీ"
-#: plinth/modules/users/forms.py:43
+#: plinth/modules/users/forms.py:28
msgid "Access to all services and system settings"
msgstr "అన్ని సేవలకు మరియు వ్యవస్థ అమరికలకు అనుమతించు"
-#: plinth/modules/users/forms.py:59
+#: plinth/modules/users/forms.py:44
msgid "Username is taken or is reserved."
msgstr "యూజర్ పేరు తీసుకోబడింది లేదా రిజర్వ్ చేయబడింది."
-#: plinth/modules/users/forms.py:87
+#: plinth/modules/users/forms.py:72
#, fuzzy
#| msgid "Invalid server name"
msgid "Enter a valid username."
msgstr "సేవిక పేరు చెలదు"
-#: plinth/modules/users/forms.py:93
+#: plinth/modules/users/forms.py:78
msgid ""
"Required. 150 characters or fewer. English letters, digits and @/./-/_ only."
msgstr ""
-#: plinth/modules/users/forms.py:106 plinth/modules/users/forms.py:222
+#: plinth/modules/users/forms.py:91 plinth/modules/users/forms.py:207
msgid "Permissions"
msgstr "అనుమతులు"
-#: plinth/modules/users/forms.py:109
+#: plinth/modules/users/forms.py:94
msgid ""
"Select which services should be available to the new user. The user will be "
"able to log in to services that support single sign-on through LDAP, if they "
@@ -6216,104 +6330,104 @@ msgid ""
"SSH and have administrative privileges (sudo)."
msgstr ""
-#: plinth/modules/users/forms.py:148 plinth/modules/users/forms.py:372
+#: plinth/modules/users/forms.py:133 plinth/modules/users/forms.py:357
msgid "Creating LDAP user failed."
msgstr "ఎల్.డి.ఏ.పి వాడుకరి సృష్టించడంలో విఫలమైంది."
-#: plinth/modules/users/forms.py:159
+#: plinth/modules/users/forms.py:144
#, python-brace-format
msgid "Failed to add new user to {group} group."
msgstr "వినియోగదారుని {group} సముహానికి జోడించడంలో విఫలం."
-#: plinth/modules/users/forms.py:173
+#: plinth/modules/users/forms.py:158
msgid "Authorized SSH Keys"
msgstr "అధీకృత SSH కీలు"
-#: plinth/modules/users/forms.py:175
+#: plinth/modules/users/forms.py:160
msgid ""
"Setting an SSH public key will allow this user to securely log in to the "
"system without using a password. You may enter multiple keys, one on each "
"line. Blank lines and lines starting with # will be ignored."
msgstr ""
-#: plinth/modules/users/forms.py:259
+#: plinth/modules/users/forms.py:244
msgid "Renaming LDAP user failed."
msgstr "ఎల్.డి.ఏ.పి వాడుకరి పేరుమార్పులో విఫలం."
-#: plinth/modules/users/forms.py:271
+#: plinth/modules/users/forms.py:256
msgid "Failed to remove user from group."
msgstr "సమూహంలోంచి వినియోగదారుని తొలగించడంలో విఫలం."
-#: plinth/modules/users/forms.py:282
+#: plinth/modules/users/forms.py:267
msgid "Failed to add user to group."
msgstr "సమూహంలోకి వినియోగదారుని జోడించడంలో విఫలం."
-#: plinth/modules/users/forms.py:291
+#: plinth/modules/users/forms.py:276
msgid "Unable to set SSH keys."
msgstr "SSH కీలను సెట్ చేయడం సాధ్యం కాలేదు."
-#: plinth/modules/users/forms.py:306
+#: plinth/modules/users/forms.py:291
#, fuzzy
#| msgid "Failed to add user to group."
msgid "Failed to change user status."
msgstr "సమూహంలోకి వినియోగదారుని జోడించడంలో విఫలం."
-#: plinth/modules/users/forms.py:314
+#: plinth/modules/users/forms.py:299
msgid "Cannot delete the only administrator in the system."
msgstr "సిస్టమ్లోని ఏకైక నిర్వాహకుడిని తొలగించలేరు."
-#: plinth/modules/users/forms.py:346
+#: plinth/modules/users/forms.py:331
msgid "Changing LDAP user password failed."
msgstr "ఎల్.డి.ఏ.పి వాడుకరి పాస్వర్డ్ మార్పిడి విఫలం."
-#: plinth/modules/users/forms.py:381
+#: plinth/modules/users/forms.py:366
msgid "Failed to add new user to admin group."
msgstr "కొత్త వాడుకరి ను అడ్మిన్ సమూహంలో జోడించడం విఫలమైనది."
-#: plinth/modules/users/forms.py:398
+#: plinth/modules/users/forms.py:383
msgid "Failed to restrict console access."
msgstr "console ప్రవేశమును పరిమితి చెయడంలొ విఫలమైంది."
-#: plinth/modules/users/forms.py:410
+#: plinth/modules/users/forms.py:395
msgid "User account created, you are now logged in"
msgstr "వాడుకరి ఖాతా సృస్టించబడింది, మీరు లాగిన్ చేయబడ్డారు"
-#: plinth/modules/users/templates/users_change_password.html:26
+#: plinth/modules/users/templates/users_change_password.html:11
#, python-format
msgid "Change Password for %(username)s"
msgstr "%(username)sకు పాస్వర్డ్ ను మార్చండి"
-#: plinth/modules/users/templates/users_change_password.html:36
+#: plinth/modules/users/templates/users_change_password.html:21
msgid "Save Password"
msgstr "పాస్వర్డ్ను సేవ్ చేయి"
-#: plinth/modules/users/templates/users_create.html:32
-#: plinth/modules/users/templates/users_list.html:42
-#: plinth/modules/users/templates/users_list.html:44
-#: plinth/modules/users/views.py:57
+#: plinth/modules/users/templates/users_create.html:17
+#: plinth/modules/users/templates/users_list.html:27
+#: plinth/modules/users/templates/users_list.html:29
+#: plinth/modules/users/views.py:42
msgid "Create User"
msgstr "వినియోగదారుని సృష్టించు"
-#: plinth/modules/users/templates/users_delete.html:26
-#: plinth/modules/users/views.py:139
+#: plinth/modules/users/templates/users_delete.html:11
+#: plinth/modules/users/views.py:121
msgid "Delete User"
msgstr "వినియోగదారుని తొలగించు"
-#: plinth/modules/users/templates/users_delete.html:29
+#: plinth/modules/users/templates/users_delete.html:14
#, python-format
msgid "Delete user %(username)s permanently?"
msgstr "%(username)s వినియోగదారుని శాశ్వతంగా తొలగించు?"
-#: plinth/modules/users/templates/users_delete.html:38
+#: plinth/modules/users/templates/users_delete.html:23
#, python-format
msgid "Delete %(username)s"
msgstr "%(username)s తొలగించు"
-#: plinth/modules/users/templates/users_firstboot.html:26
+#: plinth/modules/users/templates/users_firstboot.html:11
msgid "Administrator Account"
msgstr "నిర్వాహక ఖాతా"
-#: plinth/modules/users/templates/users_firstboot.html:29
+#: plinth/modules/users/templates/users_firstboot.html:14
msgid ""
"Choose a username and password to access this web interface. The password "
"can be changed later. This user will be granted administrative privileges. "
@@ -6322,26 +6436,26 @@ msgstr ""
"దయచేసి ఈ సంవిదనం కోసం ఒక వాడుకరి పేరు మరియు పాస్వర్డ్ ను ఎంచుకోండి. తర్వాత పాస్వర్డ్ ను "
"మార్చుకోగలరు. ఈ వినియోగడారునికి పరిపాలనా అధికారాలు ఇవ్వబడుతాయి. మిగిలిన వినియోగదారులను తరువాత జోడించగలరు."
-#: plinth/modules/users/templates/users_firstboot.html:42
+#: plinth/modules/users/templates/users_firstboot.html:27
msgid "Create Account"
msgstr "ఖాతా సృష్టించు"
-#: plinth/modules/users/templates/users_list.html:38
-#: plinth/modules/users/views.py:74
+#: plinth/modules/users/templates/users_list.html:23
+#: plinth/modules/users/views.py:59
msgid "Users"
msgstr "వినియోగదారులు"
-#: plinth/modules/users/templates/users_list.html:57
+#: plinth/modules/users/templates/users_list.html:42
#, python-format
msgid "Delete user %(username)s"
msgstr "వినియోగదారి %(username)s ను తొలగించు"
-#: plinth/modules/users/templates/users_list.html:65
+#: plinth/modules/users/templates/users_list.html:50
#, python-format
msgid "Edit user %(username)s"
msgstr "%(username)s వినియోగదారుని మార్చు"
-#: plinth/modules/users/templates/users_update.html:30
+#: plinth/modules/users/templates/users_update.html:15
#, python-format
msgid ""
"Use the change password form to "
@@ -6350,60 +6464,55 @@ msgstr ""
"పాస్వర్డ్ను మార్చడానికి పాస్వర్డ్ రూపాన్ని మార్చండి ని "
"ఉపయోగించండి."
-#: plinth/modules/users/templates/users_update.html:42
-#: plinth/templates/language-selection.html:32
+#: plinth/modules/users/templates/users_update.html:27
+#: plinth/templates/language-selection.html:17
msgid "Save Changes"
msgstr "మార్పులను భద్రపరుచు"
-#: plinth/modules/users/views.py:55
+#: plinth/modules/users/views.py:40
#, python-format
msgid "User %(username)s created."
msgstr "వినియోగదారి %(username)s సృష్టించబడ్డారు."
-#: plinth/modules/users/views.py:93
+#: plinth/modules/users/views.py:75
#, python-format
msgid "User %(username)s updated."
msgstr "వినియోగదారి %(username)s నావీకరించబడ్డాడు."
-#: plinth/modules/users/views.py:94
+#: plinth/modules/users/views.py:76
msgid "Edit User"
msgstr "వినియోగదారి మార్పు"
-#: plinth/modules/users/views.py:149
+#: plinth/modules/users/views.py:131
#, python-brace-format
msgid "User {user} deleted."
msgstr "వినియోగదారి {user} తొలగించబడ్డాడు."
-#: plinth/modules/users/views.py:156
+#: plinth/modules/users/views.py:138
msgid "Deleting LDAP user failed."
msgstr "ఎల్.డి.ఏ.పి వినియోగదారి తొలగింపు విఫలం."
-#: plinth/modules/users/views.py:165
+#: plinth/modules/users/views.py:147
msgid "Change Password"
msgstr "పాస్వర్డ్ మార్చు"
-#: plinth/modules/users/views.py:166
+#: plinth/modules/users/views.py:148
msgid "Password changed successfully."
msgstr "పాస్వర్డ్ విజయవంతంగా మార్చబడినది."
-#: plinth/modules/wireguard/__init__.py:38
-#: plinth/modules/wireguard/manifest.py:29
-msgid "WireGuard"
-msgstr "వైర్గార్డ్"
-
-#: plinth/modules/wireguard/__init__.py:43
+#: plinth/modules/wireguard/__init__.py:24
#, fuzzy
msgid "WireGuard is a fast, modern, secure VPN tunnel."
msgstr "వైర్గార్డ్ వేగవంతమైన, ఆధునిక, సురక్షితమైన VPN సొరంగం."
-#: plinth/modules/wireguard/__init__.py:45
+#: plinth/modules/wireguard/__init__.py:26
#, python-brace-format
msgid ""
"It can be used to connect to a VPN provider which supports WireGuard, and to "
"route all outgoing traffic from {box_name} through the VPN."
msgstr ""
-#: plinth/modules/wireguard/__init__.py:49
+#: plinth/modules/wireguard/__init__.py:30
#, python-brace-format
msgid ""
"A second use case is to connect a mobile device to {box_name} while "
@@ -6411,67 +6520,72 @@ msgid ""
"securely relayed through {box_name}."
msgstr ""
-#: plinth/modules/wireguard/forms.py:47
+#: plinth/modules/wireguard/__init__.py:52
+#: plinth/modules/wireguard/manifest.py:14
+msgid "WireGuard"
+msgstr "వైర్గార్డ్"
+
+#: plinth/modules/wireguard/forms.py:32
#, fuzzy
#| msgid "Invalid kite name"
msgid "Invalid key."
msgstr "చెల్లని కైట్ పేరు"
-#: plinth/modules/wireguard/forms.py:76
-#: plinth/modules/wireguard/templates/wireguard.html:32
-#: plinth/modules/wireguard/templates/wireguard.html:89
-#: plinth/modules/wireguard/templates/wireguard_delete_server.html:38
+#: plinth/modules/wireguard/forms.py:61
+#: plinth/modules/wireguard/templates/wireguard.html:17
+#: plinth/modules/wireguard/templates/wireguard.html:74
+#: plinth/modules/wireguard/templates/wireguard_delete_server.html:23
#, fuzzy
#| msgid "Publish Key"
msgid "Public Key"
msgstr "కీని ప్రచురించండి"
-#: plinth/modules/wireguard/forms.py:77
+#: plinth/modules/wireguard/forms.py:62
msgid ""
"Public key of the peer. Example: "
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs= ."
msgstr ""
-#: plinth/modules/wireguard/forms.py:85
+#: plinth/modules/wireguard/forms.py:70
msgid "Endpoint of the server"
msgstr ""
-#: plinth/modules/wireguard/forms.py:86
+#: plinth/modules/wireguard/forms.py:71
msgid ""
"Domain name and port in the form \"ip:port\". Example: demo.wireguard."
"com:12912 ."
msgstr ""
-#: plinth/modules/wireguard/forms.py:91
+#: plinth/modules/wireguard/forms.py:76
#, fuzzy
#| msgid "Published key to keyserver."
msgid "Public key of the server"
msgstr "కీ కీసేవకానికి ప్రచురించబడింది."
-#: plinth/modules/wireguard/forms.py:92
+#: plinth/modules/wireguard/forms.py:77
msgid ""
"Provided by the server operator, a long string of characters. Example: "
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs= ."
msgstr ""
-#: plinth/modules/wireguard/forms.py:97
+#: plinth/modules/wireguard/forms.py:82
#, fuzzy
#| msgid "A list of IP addresses, separated by space"
msgid "Client IP address provided by server"
msgstr "IP చిరునామాల జాబితా, స్పేస్ ద్వారా వేరుచేయటమయినది"
-#: plinth/modules/wireguard/forms.py:98
+#: plinth/modules/wireguard/forms.py:83
msgid ""
"IP address assigned to this machine on the VPN after connecting to the "
"endpoint. This value is usually provided by the server operator. Example: "
"192.168.0.10."
msgstr ""
-#: plinth/modules/wireguard/forms.py:104
+#: plinth/modules/wireguard/forms.py:89
msgid "Private key of this machine"
msgstr ""
-#: plinth/modules/wireguard/forms.py:105
+#: plinth/modules/wireguard/forms.py:90
msgid ""
"Optional. New public/private keys are generated if left blank. Public key "
"can then be provided to the server. This is the recommended way. However, "
@@ -6479,179 +6593,179 @@ msgid ""
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs= ."
msgstr ""
-#: plinth/modules/wireguard/forms.py:113
+#: plinth/modules/wireguard/forms.py:98
msgid "Pre-shared key"
msgstr ""
-#: plinth/modules/wireguard/forms.py:114
+#: plinth/modules/wireguard/forms.py:99
msgid ""
"Optional. A shared secret key provided by the server to add an additional "
"layer of security. Fill in only if provided. Example: "
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs=."
msgstr ""
-#: plinth/modules/wireguard/forms.py:120
+#: plinth/modules/wireguard/forms.py:105
msgid "Use this connection to send all outgoing traffic"
msgstr ""
-#: plinth/modules/wireguard/forms.py:122
+#: plinth/modules/wireguard/forms.py:107
msgid "Typically checked for a VPN service though which all traffic is sent."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:25
+#: plinth/modules/wireguard/templates/wireguard.html:10
#, fuzzy
#| msgid "Chat Server"
msgid "As a Server"
msgstr "కబుర్ల సేవిక"
-#: plinth/modules/wireguard/templates/wireguard.html:27
+#: plinth/modules/wireguard/templates/wireguard.html:12
msgid "Peers allowed to connect to this server:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:33
+#: plinth/modules/wireguard/templates/wireguard.html:18
msgid "Allowed IPs"
msgstr "అనుమతించబడిన ఐపిలు"
-#: plinth/modules/wireguard/templates/wireguard.html:34
-#: plinth/modules/wireguard/templates/wireguard.html:90
+#: plinth/modules/wireguard/templates/wireguard.html:19
+#: plinth/modules/wireguard/templates/wireguard.html:75
#, fuzzy
#| msgid "Create Connection"
msgid "Last Connected Time"
msgstr "అనుసంధానం సృష్టించు"
-#: plinth/modules/wireguard/templates/wireguard.html:53
+#: plinth/modules/wireguard/templates/wireguard.html:38
#, python-format
msgid "No peers configured to connect to this %(box_name)s yet."
msgstr "ఈ %(box_name)s కు కనెక్ట్ చేయడానికి సహచరులు ఇంకా కాన్ఫిగర్ చేయబడలేదు."
-#: plinth/modules/wireguard/templates/wireguard.html:62
+#: plinth/modules/wireguard/templates/wireguard.html:47
#, fuzzy, python-format
#| msgid "Public key of this machine:"
msgid "Public key for this %(box_name)s:"
msgstr "ఈ యంత్రం యొక్క పబ్లిక్ కీ:"
-#: plinth/modules/wireguard/templates/wireguard.html:68
+#: plinth/modules/wireguard/templates/wireguard.html:53
#, fuzzy
#| msgid "No shares currently configured."
msgid "Not configured yet."
msgstr "ప్రస్తుతం ఏ షేర్లు ఏర్పాటు చేయబడలేదు."
-#: plinth/modules/wireguard/templates/wireguard.html:72
+#: plinth/modules/wireguard/templates/wireguard.html:57
#, fuzzy
#| msgid "Add new introducer"
msgid "Add a new peer"
msgstr "కొత్త పరిచయకర్తని జోడించండి"
-#: plinth/modules/wireguard/templates/wireguard.html:76
-#: plinth/modules/wireguard/views.py:69
+#: plinth/modules/wireguard/templates/wireguard.html:61
+#: plinth/modules/wireguard/views.py:51
msgid "Add Allowed Client"
msgstr "అనుమతించబడిన క్లయింట్ను జోడించండి"
-#: plinth/modules/wireguard/templates/wireguard.html:79
+#: plinth/modules/wireguard/templates/wireguard.html:64
#, fuzzy
#| msgid "Chat Client"
msgid "As a Client"
msgstr "చాట్ క్లయింట్"
-#: plinth/modules/wireguard/templates/wireguard.html:81
+#: plinth/modules/wireguard/templates/wireguard.html:66
#, python-format
msgid "Servers that %(box_name)s will connect to:"
msgstr "%(box_name)s కి కనెక్ట్ అయ్యే సర్వర్లు:"
-#: plinth/modules/wireguard/templates/wireguard.html:88
-#: plinth/modules/wireguard/templates/wireguard_delete_server.html:34
+#: plinth/modules/wireguard/templates/wireguard.html:73
+#: plinth/modules/wireguard/templates/wireguard_delete_server.html:19
msgid "Endpoint"
msgstr "ఎండ్ పాయింట్"
-#: plinth/modules/wireguard/templates/wireguard.html:111
+#: plinth/modules/wireguard/templates/wireguard.html:96
msgid "No connections to remote servers are configured yet."
msgstr "రిమోట్ సర్వర్ లకు కనెక్షన్ లు ఇంకా కాన్ఫిగర్ చేయబడలేదు."
-#: plinth/modules/wireguard/templates/wireguard.html:119
+#: plinth/modules/wireguard/templates/wireguard.html:104
#, fuzzy
#| msgid "Add new introducer"
msgid "Add a new server"
msgstr "కొత్త పరిచయకర్తని జోడించండి"
-#: plinth/modules/wireguard/templates/wireguard.html:123
-#: plinth/modules/wireguard/views.py:178
+#: plinth/modules/wireguard/templates/wireguard.html:108
+#: plinth/modules/wireguard/views.py:160
#, fuzzy
#| msgid "Add Connection"
msgid "Add Connection to Server"
msgstr "అనుసంధానాన్ని జతచేయండి"
-#: plinth/modules/wireguard/templates/wireguard_add_client.html:34
+#: plinth/modules/wireguard/templates/wireguard_add_client.html:19
#, fuzzy
msgid "Add Client"
msgstr "ఐ ర్ సి క్లయింట్ (Quassel)"
-#: plinth/modules/wireguard/templates/wireguard_delete_client.html:29
+#: plinth/modules/wireguard/templates/wireguard_delete_client.html:14
msgid "Are you sure that you want to delete this client?"
msgstr "ఈ క్లయింట్ ని మీరు కచ్చితంగా డిలీట్ చేయాలని అనుకుంటున్నారా?"
-#: plinth/modules/wireguard/templates/wireguard_delete_server.html:29
+#: plinth/modules/wireguard/templates/wireguard_delete_server.html:14
msgid "Are you sure that you want to delete this server?"
msgstr "ఈ సర్వర్ ని మీరు కచ్చితంగా డిలీట్ చేయాలని అనుకుంటున్నారా?"
-#: plinth/modules/wireguard/templates/wireguard_edit_client.html:34
+#: plinth/modules/wireguard/templates/wireguard_edit_client.html:19
#, fuzzy
#| msgid "Chat Client"
msgid "Update Client"
msgstr "చాట్ క్లయింట్"
-#: plinth/modules/wireguard/templates/wireguard_edit_server.html:34
+#: plinth/modules/wireguard/templates/wireguard_edit_server.html:19
#, fuzzy
#| msgid "Create Connection"
msgid "Update Connection"
msgstr "అనుసంధానం సృష్టించు"
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:27
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:12
#, python-format
msgid ""
"%(box_name)s will allow this client to connect to it. Ensure that the client "
"is configured with the following information."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:35
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:20
msgid "Client public key:"
msgstr "క్లయింట్ పబ్లిక్ కీ:"
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:39
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:24
msgid "IP address to use for client:"
msgstr "క్లయింట్ కోసం ఉపయోగించాల్సిన IP చిరునామా:"
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:43
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:46
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:28
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:31
msgid "Pre-shared key:"
msgstr "ముందే పంచుకున్న కీ:"
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:47
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:32
#, fuzzy
msgid "Server endpoints:"
msgstr "సర్వర్ డొమైన్"
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:55
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:42
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:40
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:27
#, fuzzy
msgid "Server public key:"
msgstr "సర్వర్ పోర్ట్"
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:65
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:64
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:50
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:49
msgid "Data transmitted:"
msgstr "డేటా బదిలీ:"
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:69
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:68
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:54
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:53
msgid "Data received:"
msgstr "అందిన సమాచారం:"
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:73
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:72
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:58
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:57
msgid "Latest handshake:"
msgstr "తాజా హ్యాండ్షేక్:"
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:29
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:14
#, python-format
msgid ""
"%(box_name)s will attempt to reach a WireGuard server with the following "
@@ -6659,156 +6773,156 @@ msgid ""
"public key and IP address."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:38
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:23
#, fuzzy
msgid "Server endpoint:"
msgstr "సర్వర్ డొమైన్"
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:50
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:35
msgid "Public key of this machine:"
msgstr "ఈ యంత్రం యొక్క పబ్లిక్ కీ:"
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:54
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:39
msgid "IP address of this machine:"
msgstr "ఈ యంత్రం యొక్క IP చిరునామా:"
-#: plinth/modules/wireguard/views.py:64
+#: plinth/modules/wireguard/views.py:46
#, fuzzy
#| msgid "Add new introducer"
msgid "Added new client."
msgstr "కొత్త పరిచయకర్తని జోడించండి"
-#: plinth/modules/wireguard/views.py:79 plinth/modules/wireguard/views.py:138
+#: plinth/modules/wireguard/views.py:61 plinth/modules/wireguard/views.py:120
#, fuzzy
msgid "Client with public key already exists"
msgstr "ఈ సేవ ఇప్పటికే ఉంది"
-#: plinth/modules/wireguard/views.py:92
+#: plinth/modules/wireguard/views.py:74
#, fuzzy
msgid "Allowed Client"
msgstr "తపాల బంట్రౌతు(Roundcube)"
-#: plinth/modules/wireguard/views.py:114
+#: plinth/modules/wireguard/views.py:96
#, fuzzy
#| msgid "Update setup"
msgid "Updated client."
msgstr "అమరికను నవీకరించు"
-#: plinth/modules/wireguard/views.py:119
+#: plinth/modules/wireguard/views.py:101
#, fuzzy
msgid "Modify Client"
msgstr "తపాల బంట్రౌతు(Roundcube)"
-#: plinth/modules/wireguard/views.py:152
+#: plinth/modules/wireguard/views.py:134
#, fuzzy
#| msgid "Delete All"
msgid "Delete Allowed Client"
msgstr "అన్నింటిని తొలగించు"
-#: plinth/modules/wireguard/views.py:161
+#: plinth/modules/wireguard/views.py:143
#, fuzzy
#| msgid "{name} deleted."
msgid "Client deleted."
msgstr "{name} తొలగించబడింది."
-#: plinth/modules/wireguard/views.py:163
+#: plinth/modules/wireguard/views.py:145
msgid "Client not found"
msgstr "క్లయింట్ దొరకలేదు"
-#: plinth/modules/wireguard/views.py:173
+#: plinth/modules/wireguard/views.py:155
#, fuzzy
msgid "Added new server."
msgstr "కస్టమ్ సేవ చేర్చబడింది"
-#: plinth/modules/wireguard/views.py:194
+#: plinth/modules/wireguard/views.py:176
#, fuzzy
#| msgid "Connection Type"
msgid "Connection to Server"
msgstr "అనుసంధాన రకం"
-#: plinth/modules/wireguard/views.py:212
+#: plinth/modules/wireguard/views.py:194
#, fuzzy
#| msgid "Update setup"
msgid "Updated server."
msgstr "అమరికను నవీకరించు"
-#: plinth/modules/wireguard/views.py:217
+#: plinth/modules/wireguard/views.py:199
#, fuzzy
#| msgid "Edit Connection"
msgid "Modify Connection to Server"
msgstr "అనుసంధానాన్ని సవరించండి"
-#: plinth/modules/wireguard/views.py:254
+#: plinth/modules/wireguard/views.py:236
#, fuzzy
#| msgid "Delete Connection"
msgid "Delete Connection to Server"
msgstr "అనుసంధానం తొలగించు"
-#: plinth/modules/wireguard/views.py:274
+#: plinth/modules/wireguard/views.py:256
#, fuzzy
#| msgid "{name} deleted."
msgid "Server deleted."
msgstr "{name} తొలగించబడింది."
-#: plinth/network.py:42
+#: plinth/network.py:27
msgid "PPPoE"
msgstr "పిపిపిఒఇ"
-#: plinth/network.py:43
+#: plinth/network.py:28
msgid "Generic"
msgstr "సాధారణమైన"
-#: plinth/package.py:137
+#: plinth/package.py:122
msgid "Error during installation"
msgstr "సంస్థాపన ఒక పొరపాటు జరిగింది"
-#: plinth/package.py:159
+#: plinth/package.py:144
msgid "installing"
msgstr "వ్యవస్థాపిస్తోంది"
-#: plinth/package.py:161
+#: plinth/package.py:146
msgid "downloading"
msgstr "దిగుమతి అవుతోంది"
-#: plinth/package.py:163
+#: plinth/package.py:148
msgid "media change"
msgstr "ప్రసార మాధ్యమం మార్పు"
-#: plinth/package.py:165
+#: plinth/package.py:150
#, python-brace-format
msgid "configuration file: {file}"
msgstr "ఆకృతీకరణ ఫైలు: {file}"
-#: plinth/templates/403.html:25
+#: plinth/templates/403.html:10
msgid "403 Forbidden"
msgstr "403 నిషేధించబడింది"
-#: plinth/templates/403.html:29
+#: plinth/templates/403.html:14
#, python-format
msgid "You don't have permission to access %(request_path)s on this server."
msgstr "ఈ సర్వర్ లొ మీకు ప్రాప్యత చేయడానికి అనుమతి లేదు%(request_path)s."
-#: plinth/templates/404.html:25
+#: plinth/templates/404.html:10
msgid "404"
msgstr "404"
-#: plinth/templates/404.html:28
+#: plinth/templates/404.html:13
#, python-format
msgid "Requested page %(request_path)s was not found."
msgstr "అభ్యర్థించిన పేజీ %(request_path)s కనుగొనబడలేదు."
-#: plinth/templates/404.html:34
+#: plinth/templates/404.html:19
msgid ""
"If you believe this missing page should exist, please file a bug at the "
"FreedomBox Service (Plinth) project issue tracker."
msgstr ""
-#: plinth/templates/500.html:25
+#: plinth/templates/500.html:10
msgid "500"
msgstr "500"
-#: plinth/templates/500.html:29
+#: plinth/templates/500.html:14
#, python-format
msgid ""
"This is an internal error and not something you caused or can fix. Please "
@@ -6817,126 +6931,130 @@ msgid ""
"href=\"%(status_log_url)s\">status log to the bug report."
msgstr ""
-#: plinth/templates/app.html:47
+#: plinth/templates/app-header.html:22
+msgid "Installation"
+msgstr "నిక్షిప్తం"
+
+#: plinth/templates/app.html:32
#, fuzzy, python-format
#| msgid "Service discovery server is running"
msgid "Service %(service_name)s is running."
msgstr "సేవ ఆవిష్కరణ సేవికను నడుపుతోంది"
-#: plinth/templates/app.html:52
+#: plinth/templates/app.html:37
#, fuzzy, python-format
#| msgid "Service discovery server is not running"
msgid "Service %(service_name)s is not running."
msgstr "సేవ ఆవిష్కరణ సేవికను నడుపటంలేదు"
-#: plinth/templates/base.html:50
+#: plinth/templates/base.html:35
#, python-format
msgid "Core functionality and web interface for %(box_name)s"
msgstr ""
-#: plinth/templates/base.html:96
+#: plinth/templates/base.html:81
msgid "Toggle navigation"
msgstr ""
-#: plinth/templates/base.html:120 plinth/templates/base.html:123
+#: plinth/templates/base.html:105 plinth/templates/base.html:108
msgid "Home"
msgstr "ముంగిలి"
-#: plinth/templates/base.html:128 plinth/templates/base.html:132
+#: plinth/templates/base.html:113 plinth/templates/base.html:117
msgid "Apps"
msgstr "అనువర్తనాలు"
-#: plinth/templates/base.html:137 plinth/templates/base.html:141
+#: plinth/templates/base.html:122 plinth/templates/base.html:126
msgid "System"
msgstr "వ్యవస్థ"
-#: plinth/templates/base.html:173 plinth/templates/base.html:174
+#: plinth/templates/base.html:158 plinth/templates/base.html:159
msgid "Change password"
msgstr "సంకేతపదాన్ని మార్చు"
-#: plinth/templates/base.html:181 plinth/templates/base.html:182
+#: plinth/templates/base.html:166 plinth/templates/base.html:167
msgid "Restart"
msgstr "పునఃప్రారంభించండి"
-#: plinth/templates/base.html:187 plinth/templates/base.html:188
+#: plinth/templates/base.html:172 plinth/templates/base.html:173
#, fuzzy
#| msgid "Shut Down Now"
msgid "Shut down"
msgstr "ఇపుడు మూసివేయండి"
-#: plinth/templates/base.html:195 plinth/templates/base.html:196
-#: plinth/templates/base.html:220 plinth/templates/base.html:222
+#: plinth/templates/base.html:180 plinth/templates/base.html:181
+#: plinth/templates/base.html:205 plinth/templates/base.html:207
msgid "Log out"
msgstr "నిష్క్రమించు"
-#: plinth/templates/base.html:204 plinth/templates/base.html:207
+#: plinth/templates/base.html:189 plinth/templates/base.html:192
#, fuzzy
#| msgid "Language"
msgid "Select language"
msgstr "భాష"
-#: plinth/templates/base.html:212 plinth/templates/base.html:214
+#: plinth/templates/base.html:197 plinth/templates/base.html:199
msgid "Log in"
msgstr "లోనికి ప్రవేశించండి"
-#: plinth/templates/clients.html:32
+#: plinth/templates/clients.html:17
msgid "Web"
msgstr "వెబ్"
-#: plinth/templates/clients.html:57
+#: plinth/templates/clients.html:42
#, fuzzy
msgid "Desktop"
msgstr ""
"చాట్ క్లయింట్\n"
" (JSXC)"
-#: plinth/templates/clients.html:68
+#: plinth/templates/clients.html:53
msgid "GNU/Linux"
msgstr "గ్నూ/లినక్స్"
-#: plinth/templates/clients.html:70
+#: plinth/templates/clients.html:55
msgid "Windows"
msgstr "విండోస్"
-#: plinth/templates/clients.html:72
+#: plinth/templates/clients.html:57
msgid "macOS"
msgstr "మ్యాక్ ఓయస్"
-#: plinth/templates/clients.html:88
+#: plinth/templates/clients.html:73
#, fuzzy
msgid "Mobile"
msgstr "తపాల బంట్రౌతు(Roundcube)"
-#: plinth/templates/clients.html:99
+#: plinth/templates/clients.html:84
msgid "Play Store"
msgstr "ప్లే స్టోర్"
-#: plinth/templates/clients.html:101
+#: plinth/templates/clients.html:86
msgid "F-Droid"
msgstr "ఎఫ్-డ్రాయిడ్"
-#: plinth/templates/clients.html:103
+#: plinth/templates/clients.html:88
#, fuzzy
msgid "App Store"
msgstr "అన్హొస్టెడ్ స్టోరేజ్ ని (పునరుద్ధరించండి)"
-#: plinth/templates/clients.html:119
+#: plinth/templates/clients.html:104
msgid "Package"
msgstr "ప్యాకేజి"
-#: plinth/templates/clients.html:126
+#: plinth/templates/clients.html:111
msgid "Debian:"
msgstr "డెబియన్:"
-#: plinth/templates/clients.html:129
+#: plinth/templates/clients.html:114
msgid "Homebrew:"
msgstr "హోమ్ బ్రూ:"
-#: plinth/templates/clients.html:132
+#: plinth/templates/clients.html:117
msgid "RPM:"
msgstr "RPM:"
-#: plinth/templates/first_setup.html:39
+#: plinth/templates/first_setup.html:24
#, python-format
msgid ""
"Please wait for %(box_name)s to finish installation. You can start using "
@@ -6945,24 +7063,20 @@ msgstr ""
"సంస్థాపన పూర్తి కావడానికి %(box_name)s కోసం వేచి ఉండండి. పూర్తయిన తర్వాత మీ %(box_name)s ను "
"ఉపయోగించడం ప్రారంభించవచ్చు."
-#: plinth/templates/header.html:36
-msgid "Installation"
-msgstr "నిక్షిప్తం"
-
-#: plinth/templates/index.html:37
+#: plinth/templates/index.html:22
#, python-format
msgid ""
"Enable some applications to add shortcuts to "
"this page."
msgstr ""
-#: plinth/templates/index.html:59
+#: plinth/templates/index.html:44
#, fuzzy
#| msgid "Configure"
msgid "Configure »"
msgstr "ఆకృతీకరణ"
-#: plinth/templates/index.html:115
+#: plinth/templates/index.html:100
#, python-format
msgid ""
"%(box_name)s, a Debian pure blend, is a 100%% free software self-hosting web "
@@ -6970,7 +7084,7 @@ msgid ""
"communication tools respecting your privacy and data ownership."
msgstr ""
-#: plinth/templates/index.html:124
+#: plinth/templates/index.html:109
#, python-format
msgid ""
"This portal is a part of the %(box_name)s web interface. %(box_name)s is "
@@ -6978,43 +7092,43 @@ msgid ""
"Version 3 or later."
msgstr ""
-#: plinth/templates/index.html:144
+#: plinth/templates/index.html:129
msgid "Homepage"
msgstr "హోంపేజ్"
-#: plinth/templates/index.html:147
+#: plinth/templates/index.html:132
msgid "Source Code"
msgstr "మూలాధార కోడ్"
-#: plinth/templates/index.html:150
+#: plinth/templates/index.html:135
msgid "Donate"
msgstr "దానం చేయు"
-#: plinth/templates/index.html:154
+#: plinth/templates/index.html:139
#, fuzzy
#| msgid "FreedomBox Manual"
msgid "FreedomBox Foundation"
msgstr "ఫ్రీడమ్ బాక్స్ నిర్దేశిక"
-#: plinth/templates/index.html:161
+#: plinth/templates/index.html:146
msgid "IRC Chatroom"
msgstr "IRC చాట్ రూమ్"
-#: plinth/templates/index.html:166
+#: plinth/templates/index.html:151
msgid "Mailing list"
msgstr "మెయిలింగ్ జాబితా"
-#: plinth/templates/internal-zone.html:26
+#: plinth/templates/internal-zone.html:11
#, fuzzy, python-format
#| msgid "Service discovery server is not running"
msgid "%(service_name)s is available only on internal networks."
msgstr "సేవ ఆవిష్కరణ సేవికను నడుపటంలేదు"
-#: plinth/templates/internal-zone.html:32
+#: plinth/templates/internal-zone.html:17
msgid "Currently there are no network interfaces configured as internal."
msgstr "ప్రస్తుతం ఇంటర్నల్ గా కాన్ఫిగర్ చేయబడ్డ నెట్ వర్క్ ఇంటర్ ఫేస్ లు ఏవీ లేవు."
-#: plinth/templates/internal-zone.html:34
+#: plinth/templates/internal-zone.html:19
#, python-format
msgid ""
"Currently the following network interfaces are configured as internal: "
@@ -7022,18 +7136,18 @@ msgid ""
msgstr ""
"ప్రస్తుతం దిగువ నెట్ వర్క్ ఇంటర్ ఫేస్ లు ఇంటర్నల్ గా కాన్ఫిగర్ చేయబడ్డాయి: %(interface_list)s"
-#: plinth/templates/notifications-dropdown.html:26
+#: plinth/templates/notifications-dropdown.html:11
#, fuzzy
#| msgid "No certificate"
msgid "Notifications"
msgstr "ధృవీకరణ పత్రం లేదు"
-#: plinth/templates/port-forwarding-info.html:23
+#: plinth/templates/port-forwarding-info.html:8
#, fuzzy
msgid "Port Forwarding"
msgstr "సబ్డొమైన్లు ప్రారంభించు"
-#: plinth/templates/port-forwarding-info.html:26
+#: plinth/templates/port-forwarding-info.html:11
#, python-format
msgid ""
"If your FreedomBox is behind a router, you will need to set up port "
@@ -7043,65 +7157,65 @@ msgstr ""
"మీ ఫ్రీడమ్బాక్స్ ఒక రౌటర్ వెనుక ఉంటే, మీరు మీ రౌటర్లో పోర్ట్ ఫార్వడింగ్ ను ఏర్పాటు చేయాల్సి ఉంటుంది. "
"%(service_name)s కొరకు దిగువ పోర్టులను మీరు ఫార్వర్డ్ చేయాలి:"
-#: plinth/templates/setup.html:51
+#: plinth/templates/setup.html:36
msgid "Install this application?"
msgstr "ఈ అనువర్తనాన్ని నిక్షిప్తం చేయాలా?"
-#: plinth/templates/setup.html:55
+#: plinth/templates/setup.html:40
msgid "This application needs an update. Update now?"
msgstr "ఈ అనువర్తనానికి నవీకరణ అవసరం. ఇప్పుడే నవీకరిస్తారా?"
-#: plinth/templates/setup.html:66
+#: plinth/templates/setup.html:51
msgid ""
"Another installation or upgrade is already running. Please wait for a few "
"moments before trying again."
msgstr ""
"మరొక సంస్థాపన లేదా నవీకరణ ఇప్పటికే నడుస్తోంది. మళ్ళీ ప్రయత్నించే ముందు కొన్ని క్షణాలు వేచి ఉండండి."
-#: plinth/templates/setup.html:73
+#: plinth/templates/setup.html:58
msgid "This application is currently not available in your distribution."
msgstr "ప్రస్తుతం ఈ అనువర్తనం మీ పంపిణీకి అందుబాటులో లేదు."
-#: plinth/templates/setup.html:87
+#: plinth/templates/setup.html:72
msgid "Install"
msgstr "నిక్షిప్తం చేయు"
-#: plinth/templates/setup.html:98
+#: plinth/templates/setup.html:83
msgid "Performing pre-install operation"
msgstr "ప్రీ-ఇన్స్టాల్ ఆపరేషన్ జరుగుతోంది"
-#: plinth/templates/setup.html:102
+#: plinth/templates/setup.html:87
msgid "Performing post-install operation"
msgstr "ఇన్స్తల్ల్ తర్వాత ప్రక్రియ జరుగుతోంది"
-#: plinth/templates/setup.html:107
+#: plinth/templates/setup.html:92
#, fuzzy, python-format
msgid "Installing %(package_names)s: %(status)s"
msgstr "సంస్థాపన %(package_names)s%:(status)s"
-#: plinth/templates/setup.html:117
+#: plinth/templates/setup.html:102
#, python-format
msgid "%(percentage)s%% complete"
msgstr "%(percentage)s %% పూర్తి"
-#: plinth/templates/toolbar.html:38
+#: plinth/templates/toolbar.html:23
msgid "Launch web client"
msgstr "వెబ్ క్లయింట్ ని ప్రారంభించండి"
-#: plinth/templates/toolbar.html:47
+#: plinth/templates/toolbar.html:32
#, fuzzy
msgid "Client Apps"
msgstr "క్లయింట్ అనువర్తనాలు"
-#: plinth/views.py:179
+#: plinth/views.py:189
msgid "Application enabled"
msgstr "అనువర్తనం ఆమోదింపబడింది"
-#: plinth/views.py:182
+#: plinth/views.py:192
msgid "Application disabled"
msgstr "అనువర్తనం ఆమోదింపబడలేదు"
-#: plinth/web_framework.py:190
+#: plinth/web_framework.py:107
msgid "Gujarati"
msgstr "గుజరాతీ"
diff --git a/plinth/locale/tr/LC_MESSAGES/django.po b/plinth/locale/tr/LC_MESSAGES/django.po
index 5ba0f764a..824e57c12 100644
--- a/plinth/locale/tr/LC_MESSAGES/django.po
+++ b/plinth/locale/tr/LC_MESSAGES/django.po
@@ -6,7 +6,7 @@ msgid ""
msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2020-02-14 21:26+0200\n"
+"POT-Creation-Date: 2020-02-24 19:12-0500\n"
"PO-Revision-Date: 2019-08-08 00:22+0000\n"
"Last-Translator: Mesut Akcan \n"
"Language-Team: Turkish %(service_name)s is running."
msgid "Service {service_name} is running"
msgstr "%(service_name)s servisi çalışmaktadır."
-#: plinth/daemon.py:111
+#: plinth/daemon.py:96
#, python-brace-format
msgid "Listening on {kind} port {listen_address}:{port}"
msgstr "{kind} port {listen_address}:{port} dinleniyor"
-#: plinth/daemon.py:114
+#: plinth/daemon.py:99
#, python-brace-format
msgid "Listening on {kind} port {port}"
msgstr "{kind} port {port} dinleniyor"
-#: plinth/daemon.py:182
+#: plinth/daemon.py:167
#, python-brace-format
msgid "Connect to {host}:{port}"
msgstr "{host}:{port} konumuna bağlan"
-#: plinth/daemon.py:184
+#: plinth/daemon.py:169
#, python-brace-format
msgid "Cannot connect to {host}:{port}"
msgstr "{host}:{port} konumuna bağlanılamadı"
-#: plinth/forms.py:39
+#: plinth/forms.py:24
msgid "Enable application"
msgstr "Uygulamayı etkinleştir"
-#: plinth/forms.py:54
+#: plinth/forms.py:39
msgid "Select a domain name to be used with this application"
msgstr "Bu uygulamayla kullanılacak bir alan ismi seç"
-#: plinth/forms.py:56
+#: plinth/forms.py:41
msgid ""
"Warning! The application may not work properly if domain name is changed "
"later."
@@ -78,58 +78,54 @@ msgstr ""
"İkaz! Alan adı daha sonra değiştirilirse uygulama beklendiği gibi "
"çalışmayabilir."
-#: plinth/forms.py:64
+#: plinth/forms.py:49
msgid "Language"
msgstr "Lisan"
-#: plinth/forms.py:65
+#: plinth/forms.py:50
msgid "Language to use for presenting this web interface"
msgstr "Bu web yönetim arayüzü için kullanılacak dil"
-#: plinth/forms.py:72
+#: plinth/forms.py:57
msgid "Use the language preference set in the browser"
msgstr "Tarayıcıda ayarlanan dil tercihini kullanın"
-#: plinth/middleware.py:72 plinth/templates/setup.html:45
+#: plinth/middleware.py:57 plinth/templates/setup.html:30
msgid "Application installed."
msgstr "Uygulama kuruldu."
-#: plinth/middleware.py:78
+#: plinth/middleware.py:63
#, python-brace-format
msgid "Error installing application: {string} {details}"
msgstr "Uygulamanın kurulmasında hata: {string} {details}"
-#: plinth/middleware.py:82
+#: plinth/middleware.py:67
#, python-brace-format
msgid "Error installing application: {error}"
msgstr "Uygulamanın kurulmasında hata: {error}"
-#: plinth/modules/apache/__init__.py:51
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:88
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:60
+#: plinth/modules/apache/__init__.py:40
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:73
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:45
msgid "Web Server"
msgstr "Web Sunucusu"
-#: plinth/modules/apache/__init__.py:57
+#: plinth/modules/apache/__init__.py:46
#, python-brace-format
msgid "{box_name} Web Interface (Plinth)"
msgstr "{box_name} Ağ Arayüzü (Plinth)"
-#: plinth/modules/apache/components.py:135
+#: plinth/modules/apache/components.py:120
#, python-brace-format
msgid "Access URL {url} on tcp{kind}"
msgstr "tcp{kind} üzerinden {url} bağlantısına eriş"
-#: plinth/modules/apache/components.py:139
+#: plinth/modules/apache/components.py:124
#, python-brace-format
msgid "Access URL {url}"
msgstr "{url} bağlantısına eriş"
-#: plinth/modules/avahi/__init__.py:46
-msgid "Service Discovery"
-msgstr "Servis Keşfi"
-
-#: plinth/modules/avahi/__init__.py:50
+#: plinth/modules/avahi/__init__.py:33
#, python-brace-format
msgid ""
"Service discovery allows other devices on the network to discover your "
@@ -146,71 +142,75 @@ msgstr ""
"çalışır. Özellikle düşman bir yerel ağa bağlanıldığında güvenliği arttırmak "
"için devre dışı bırakılabilir."
-#: plinth/modules/avahi/__init__.py:77
+#: plinth/modules/avahi/__init__.py:57
+msgid "Service Discovery"
+msgstr "Servis Keşfi"
+
+#: plinth/modules/avahi/__init__.py:67
msgid "Local Network Domain"
msgstr ""
-#: plinth/modules/backups/__init__.py:40
-msgid "Backups"
-msgstr "Yedeklemeler"
-
-#: plinth/modules/backups/__init__.py:45
+#: plinth/modules/backups/__init__.py:28
msgid "Backups allows creating and managing backup archives."
msgstr "Yedeklemeler, yedekleme arşivleri oluşturmayı ve yönetmeyi sağlar."
-#: plinth/modules/backups/forms.py:48
+#: plinth/modules/backups/__init__.py:47
+msgid "Backups"
+msgstr "Yedeklemeler"
+
+#: plinth/modules/backups/forms.py:33
#, python-brace-format
msgid "{app} (No data to backup)"
msgstr "{app} (Yedeklenecek veri yok)"
-#: plinth/modules/backups/forms.py:67
+#: plinth/modules/backups/forms.py:52
msgid "Included apps"
msgstr "Dahil edilen uygulamalar"
-#: plinth/modules/backups/forms.py:67
+#: plinth/modules/backups/forms.py:52
msgid "Apps to include in the backup"
msgstr "Yedeklemeye dahil edilecek uygulamalar"
-#: plinth/modules/backups/forms.py:81
+#: plinth/modules/backups/forms.py:66
msgid "Select the apps you want to restore"
msgstr "Geri yüklemek istediğiniz uygulamaları seçin"
-#: plinth/modules/backups/forms.py:94
+#: plinth/modules/backups/forms.py:79
msgid "Upload File"
msgstr "Dosya Yükle"
-#: plinth/modules/backups/forms.py:96
+#: plinth/modules/backups/forms.py:81
msgid "Backup files have to be in .tar.gz format"
msgstr "Yedekleme dosyaları .tar.gz türünde olmalıdır"
-#: plinth/modules/backups/forms.py:97
+#: plinth/modules/backups/forms.py:82
msgid "Select the backup file you want to upload"
msgstr "Yüklemek istediğiniz yedekleme dosyasını seçiniz"
-#: plinth/modules/backups/forms.py:103
+#: plinth/modules/backups/forms.py:88
msgid "Repository path format incorrect."
msgstr "Havuz yolu biçimi yanlış."
-#: plinth/modules/backups/forms.py:110
+#: plinth/modules/backups/forms.py:95
#, python-brace-format
msgid "Invalid username: {username}"
msgstr "Geçersiz kullanıcı adı: {username}"
-#: plinth/modules/backups/forms.py:120
+#: plinth/modules/backups/forms.py:105
#, python-brace-format
msgid "Invalid hostname: {hostname}"
msgstr "Geçersiz sunucu adı: {hostname}"
-#: plinth/modules/backups/forms.py:124
+#: plinth/modules/backups/forms.py:109
#, python-brace-format
msgid "Invalid directory path: {dir_path}"
msgstr "Geçersiz klasör yolu: {dir_path}"
-#: plinth/modules/backups/forms.py:130
+#: plinth/modules/backups/forms.py:115
msgid "Encryption"
msgstr "Şifreleme"
-#: plinth/modules/backups/forms.py:131
+#: plinth/modules/backups/forms.py:116
msgid ""
"\"Key in Repository\" means that a password-protected key is stored with the "
"backup."
@@ -218,54 +218,54 @@ msgstr ""
"\"Havuz anahtarı\", parola korumalı bir anahtarın yedek ile depolanacağı "
"anlamına gelir."
-#: plinth/modules/backups/forms.py:135 plinth/modules/networks/forms.py:280
+#: plinth/modules/backups/forms.py:120 plinth/modules/networks/forms.py:262
msgid "Passphrase"
msgstr "Parola"
-#: plinth/modules/backups/forms.py:136
+#: plinth/modules/backups/forms.py:121
msgid "Passphrase; Only needed when using encryption."
msgstr "Parola; Yalnızca şifreleme kullanırken gerekli."
-#: plinth/modules/backups/forms.py:139
+#: plinth/modules/backups/forms.py:124
msgid "Confirm Passphrase"
msgstr "Parolayı Onayla"
-#: plinth/modules/backups/forms.py:139
+#: plinth/modules/backups/forms.py:124
msgid "Repeat the passphrase."
msgstr "Parolayı tekrarlayın."
-#: plinth/modules/backups/forms.py:150
+#: plinth/modules/backups/forms.py:135
msgid "The entered encryption passphrases do not match"
msgstr "Girilen şifreleme parolaları eşleşmiyor"
-#: plinth/modules/backups/forms.py:154
+#: plinth/modules/backups/forms.py:139
msgid "Passphrase is needed for encryption."
msgstr "Şifreleme için parola gerekli."
-#: plinth/modules/backups/forms.py:189
+#: plinth/modules/backups/forms.py:174
msgid "Select Disk or Partition"
msgstr ""
-#: plinth/modules/backups/forms.py:190
+#: plinth/modules/backups/forms.py:175
msgid "Backups will be stored in the directory FreedomBoxBackups"
msgstr ""
-#: plinth/modules/backups/forms.py:199
+#: plinth/modules/backups/forms.py:184
msgid "SSH Repository Path"
msgstr "SSH havuzu yolu"
-#: plinth/modules/backups/forms.py:200
+#: plinth/modules/backups/forms.py:185
msgid ""
"Path of a new or existing repository. Example: user@host:~/path/to/repo/"
"i>"
msgstr ""
"Yeni veya varolan bir havuz yolu. Örnek: user@host:~/path/to/repo/"
-#: plinth/modules/backups/forms.py:204
+#: plinth/modules/backups/forms.py:189
msgid "SSH server password"
msgstr "SSH sunucu parolası"
-#: plinth/modules/backups/forms.py:205
+#: plinth/modules/backups/forms.py:190
msgid ""
"Password of the SSH Server.
SSH key-based authentication is not yet "
"possible."
@@ -273,15 +273,15 @@ msgstr ""
"SSH sunucusunun parolası.
SSH anahtar tabanlı kimlik doğrulaması henüz "
"mümkün değildir."
-#: plinth/modules/backups/forms.py:224
+#: plinth/modules/backups/forms.py:209
msgid "Remote backup repository already exists."
msgstr "Uzaktan yedekleme deposu zaten var."
-#: plinth/modules/backups/forms.py:230
+#: plinth/modules/backups/forms.py:215
msgid "Select verified SSH public key"
msgstr ""
-#: plinth/modules/backups/repository.py:48
+#: plinth/modules/backups/repository.py:33
msgid ""
"Connection refused - make sure you provided correct credentials and the "
"server is running."
@@ -289,79 +289,79 @@ msgstr ""
"Bağlantı reddedildi - doğru kimlik bilgilerini girdiğinizden ve sunucunun "
"çalıştığından emin olun."
-#: plinth/modules/backups/repository.py:55
+#: plinth/modules/backups/repository.py:40
msgid "Connection refused"
msgstr "Bağlantı reddedildi"
-#: plinth/modules/backups/repository.py:62
+#: plinth/modules/backups/repository.py:47
msgid "Repository not found"
msgstr "Havuz bulunamadı"
-#: plinth/modules/backups/repository.py:67
+#: plinth/modules/backups/repository.py:52
msgid "Incorrect encryption passphrase"
msgstr "Yanlış şifreleme parolası"
-#: plinth/modules/backups/repository.py:72
+#: plinth/modules/backups/repository.py:57
msgid "SSH access denied"
msgstr "SSH erişimi reddedildi"
-#: plinth/modules/backups/repository.py:78
+#: plinth/modules/backups/repository.py:63
msgid "Repository path is neither empty nor is an existing backups repository."
msgstr ""
-#: plinth/modules/backups/repository.py:152
+#: plinth/modules/backups/repository.py:137
msgid "Existing repository is not encrypted."
msgstr ""
-#: plinth/modules/backups/repository.py:337
+#: plinth/modules/backups/repository.py:322
#, python-brace-format
msgid "{box_name} storage"
msgstr "{box_name} depolama"
-#: plinth/modules/backups/templates/backups.html:45
-#: plinth/modules/backups/views.py:77
+#: plinth/modules/backups/templates/backups.html:30
+#: plinth/modules/backups/views.py:60
msgid "Create a new backup"
msgstr "Yeni bir yedekleme oluştur"
-#: plinth/modules/backups/templates/backups.html:49
+#: plinth/modules/backups/templates/backups.html:34
msgid "Create Backup"
msgstr "Yedekleme Oluştur"
-#: plinth/modules/backups/templates/backups.html:52
+#: plinth/modules/backups/templates/backups.html:37
msgid "Upload and restore a backup archive"
msgstr ""
-#: plinth/modules/backups/templates/backups.html:56
+#: plinth/modules/backups/templates/backups.html:41
msgid "Upload and Restore"
msgstr "Yükle ve Geri Yükle"
-#: plinth/modules/backups/templates/backups.html:59
+#: plinth/modules/backups/templates/backups.html:44
#, fuzzy
#| msgid "Add a remote backup location"
msgid "Add a backup location"
msgstr "Uzak yedekleme konumu ekle"
-#: plinth/modules/backups/templates/backups.html:63
+#: plinth/modules/backups/templates/backups.html:48
#, fuzzy
#| msgid "Add a remote backup location"
msgid "Add Backup Location"
msgstr "Uzak yedekleme konumu ekle"
-#: plinth/modules/backups/templates/backups.html:66
+#: plinth/modules/backups/templates/backups.html:51
msgid "Add a remote backup location"
msgstr "Uzak yedekleme konumu ekle"
-#: plinth/modules/backups/templates/backups.html:70
+#: plinth/modules/backups/templates/backups.html:55
#, fuzzy
#| msgid "Add a remote backup location"
msgid "Add Remote Backup Location"
msgstr "Uzak yedekleme konumu ekle"
-#: plinth/modules/backups/templates/backups.html:73
+#: plinth/modules/backups/templates/backups.html:58
msgid "Existing Backups"
msgstr "Mevcut Yedeklemeler"
-#: plinth/modules/backups/templates/backups_add_remote_repository.html:34
+#: plinth/modules/backups/templates/backups_add_remote_repository.html:19
#, python-format
msgid ""
"The credentials for this repository are stored on your %(box_name)s.
"
@@ -372,48 +372,49 @@ msgstr ""
"yedeklemeyi yeni bir %(box_name)s sinde geri yüklemek için ssh kimlik "
"bilgilerine ve seçiliyse, şifreleme parolasına ihtiyacınız vardır."
-#: plinth/modules/backups/templates/backups_add_remote_repository.html:43
+#: plinth/modules/backups/templates/backups_add_remote_repository.html:28
msgid "Create Location"
msgstr "Konum Oluştur"
-#: plinth/modules/backups/templates/backups_add_repository.html:34
-#: plinth/modules/gitweb/views.py:70
+#: plinth/modules/backups/templates/backups_add_repository.html:19
+#: plinth/modules/gitweb/views.py:50
msgid "Create Repository"
msgstr "Depo oluştur"
-#: plinth/modules/backups/templates/backups_delete.html:27
+#: plinth/modules/backups/templates/backups_delete.html:12
msgid "Delete this archive permanently?"
msgstr "Bu arşiv kalıcı olarak silinsin mi?"
-#: plinth/modules/backups/templates/backups_delete.html:33
-#: plinth/modules/ikiwiki/forms.py:30
-#: plinth/modules/networks/templates/connection_show.html:78
-#: plinth/modules/sharing/templates/sharing.html:52
+#: plinth/modules/backups/templates/backups_delete.html:18
+#: plinth/modules/ikiwiki/forms.py:15
+#: plinth/modules/networks/templates/connection_show.html:63
+#: plinth/modules/sharing/templates/sharing.html:37
msgid "Name"
msgstr "İsim"
-#: plinth/modules/backups/templates/backups_delete.html:34
+#: plinth/modules/backups/templates/backups_delete.html:19
msgid "Time"
msgstr "Zaman"
-#: plinth/modules/backups/templates/backups_delete.html:51
+#: plinth/modules/backups/templates/backups_delete.html:36
#, python-format
msgid "Delete Archive %(name)s"
msgstr "%(name)s arşivini sil"
-#: plinth/modules/backups/templates/backups_form.html:35
-#: plinth/modules/gitweb/templates/gitweb_create_edit.html:35
-#: plinth/modules/networks/templates/router_configuration_update.html:34
-#: plinth/modules/pagekite/templates/pagekite_custom_services.html:47
-#: plinth/modules/sharing/templates/sharing_add_edit.html:35
+#: plinth/modules/backups/templates/backups_form.html:20
+#: plinth/modules/gitweb/templates/gitweb_create_edit.html:20
+#: plinth/modules/networks/templates/internet_connectivity_type.html:18
+#: plinth/modules/networks/templates/router_configuration_update.html:19
+#: plinth/modules/pagekite/templates/pagekite_custom_services.html:32
+#: plinth/modules/sharing/templates/sharing_add_edit.html:20
msgid "Submit"
msgstr "İbraz Et"
-#: plinth/modules/backups/templates/backups_repository_remove.html:28
+#: plinth/modules/backups/templates/backups_repository_remove.html:13
msgid "Are you sure that you want to remove this repository?"
msgstr "Bu depoyu kaldırmak istediğinizden emin misiniz?"
-#: plinth/modules/backups/templates/backups_repository_remove.html:34
+#: plinth/modules/backups/templates/backups_repository_remove.html:19
#, fuzzy
#| msgid ""
#| "\n"
@@ -432,24 +433,24 @@ msgstr ""
" daha sonra tekrar ekleyebilirsiniz.\n"
" "
-#: plinth/modules/backups/templates/backups_repository_remove.html:46
+#: plinth/modules/backups/templates/backups_repository_remove.html:31
msgid "Remove Location"
msgstr "Konumu Kaldır"
-#: plinth/modules/backups/templates/backups_restore.html:30
+#: plinth/modules/backups/templates/backups_restore.html:15
msgid "Restore data from"
msgstr "Verileri şuradan geri yükle"
-#: plinth/modules/backups/templates/backups_restore.html:43
-#: plinth/modules/backups/views.py:171
+#: plinth/modules/backups/templates/backups_restore.html:28
+#: plinth/modules/backups/views.py:154
msgid "Restore"
msgstr "Geri yükle"
-#: plinth/modules/backups/templates/backups_restore.html:47
+#: plinth/modules/backups/templates/backups_restore.html:32
msgid "Restoring"
msgstr "Geri yükleniyor"
-#: plinth/modules/backups/templates/backups_upload.html:32
+#: plinth/modules/backups/templates/backups_upload.html:17
#, fuzzy, python-format
#| msgid ""
#| "\n"
@@ -476,152 +477,144 @@ msgstr ""
" uygulamaları seçebilirsiniz.\n"
" "
-#: plinth/modules/backups/templates/backups_upload.html:42
-#: plinth/modules/help/templates/statuslog.html:38
+#: plinth/modules/backups/templates/backups_upload.html:27
+#: plinth/modules/help/templates/statuslog.html:23
msgid "Caution:"
msgstr "Dikkat:"
-#: plinth/modules/backups/templates/backups_upload.html:43
+#: plinth/modules/backups/templates/backups_upload.html:28
#, python-format
msgid ""
"You have %(max_filesize)s available to restore a backup. Exceeding this "
"limit can leave your %(box_name)s unusable."
msgstr ""
-#: plinth/modules/backups/templates/backups_upload.html:56
+#: plinth/modules/backups/templates/backups_upload.html:41
msgid "Upload file"
msgstr "Dosya Yükle"
-#: plinth/modules/backups/templates/verify_ssh_hostkey.html:33
+#: plinth/modules/backups/templates/verify_ssh_hostkey.html:18
#, python-format
msgid ""
"Could not reach SSH host %(hostname)s. Please verify that the host is up and "
"accepting connections."
msgstr ""
-#: plinth/modules/backups/templates/verify_ssh_hostkey.html:43
+#: plinth/modules/backups/templates/verify_ssh_hostkey.html:28
#, python-format
msgid ""
"The authenticity of SSH host %(hostname)s could not be established. The host "
"advertises the following SSH public keys. Please verify any one of them."
msgstr ""
-#: plinth/modules/backups/templates/verify_ssh_hostkey.html:55
+#: plinth/modules/backups/templates/verify_ssh_hostkey.html:40
msgid "How to verify?"
msgstr ""
-#: plinth/modules/backups/templates/verify_ssh_hostkey.html:60
+#: plinth/modules/backups/templates/verify_ssh_hostkey.html:45
msgid ""
"Run the following command on the SSH host machine. The output should match "
"one of the provided options. You can also use dsa, ecdsa, ed25519 etc. "
"instead of rsa, by choosing the corresponding file."
msgstr ""
-#: plinth/modules/backups/templates/verify_ssh_hostkey.html:75
+#: plinth/modules/backups/templates/verify_ssh_hostkey.html:60
msgid "Verify Host"
msgstr ""
-#: plinth/modules/backups/views.py:72
+#: plinth/modules/backups/views.py:55
msgid "Archive created."
msgstr "Arşiv oluşturuldu."
-#: plinth/modules/backups/views.py:99
+#: plinth/modules/backups/views.py:82
msgid "Delete Archive"
msgstr "Arşivi Sil"
-#: plinth/modules/backups/views.py:111
+#: plinth/modules/backups/views.py:94
msgid "Archive deleted."
msgstr "Arşiv silindi."
-#: plinth/modules/backups/views.py:124
+#: plinth/modules/backups/views.py:107
msgid "Upload and restore a backup"
msgstr ""
-#: plinth/modules/backups/views.py:159
+#: plinth/modules/backups/views.py:142
msgid "Restored files from backup."
msgstr "Yedeklemeden geri yüklenen dosyalar."
-#: plinth/modules/backups/views.py:186
+#: plinth/modules/backups/views.py:169
msgid "No backup file found."
msgstr "Yedekleme dosyası bulunamadı."
-#: plinth/modules/backups/views.py:194
+#: plinth/modules/backups/views.py:177
msgid "Restore from uploaded file"
msgstr "Yüklenen dosyadan geri yükle"
-#: plinth/modules/backups/views.py:251
+#: plinth/modules/backups/views.py:234
msgid "No additional disks available to add a repository."
msgstr ""
-#: plinth/modules/backups/views.py:259
+#: plinth/modules/backups/views.py:242
#, fuzzy
#| msgid "Create remote backup repository"
msgid "Create backup repository"
msgstr "Uzak yedekleme deposu oluştur"
-#: plinth/modules/backups/views.py:286
+#: plinth/modules/backups/views.py:269
msgid "Create remote backup repository"
msgstr "Uzak yedekleme deposu oluştur"
-#: plinth/modules/backups/views.py:305
+#: plinth/modules/backups/views.py:288
msgid "Added new remote SSH repository."
msgstr "Yeni uzak SSH deposu eklendi."
-#: plinth/modules/backups/views.py:327
+#: plinth/modules/backups/views.py:310
msgid "Verify SSH hostkey"
msgstr ""
-#: plinth/modules/backups/views.py:353
+#: plinth/modules/backups/views.py:336
msgid "SSH host already verified."
msgstr ""
-#: plinth/modules/backups/views.py:363
+#: plinth/modules/backups/views.py:346
msgid "SSH host verified."
msgstr ""
-#: plinth/modules/backups/views.py:377
+#: plinth/modules/backups/views.py:360
msgid "SSH host public key could not be verified."
msgstr ""
-#: plinth/modules/backups/views.py:379
+#: plinth/modules/backups/views.py:362
msgid "Authentication to remote server failed."
msgstr ""
-#: plinth/modules/backups/views.py:381
+#: plinth/modules/backups/views.py:364
msgid "Error establishing connection to server: {}"
msgstr "Sunucuyla bağlantı kurulurken hata oluştu: {}"
-#: plinth/modules/backups/views.py:392
+#: plinth/modules/backups/views.py:375
msgid "Repository removed."
msgstr "Depo kaldırıldı."
-#: plinth/modules/backups/views.py:406
+#: plinth/modules/backups/views.py:389
msgid "Remove Repository"
msgstr "Depoyu kaldır"
-#: plinth/modules/backups/views.py:415
+#: plinth/modules/backups/views.py:398
#, fuzzy
#| msgid "Repository removed. The remote backup itself was not deleted."
msgid "Repository removed. Backups were not deleted."
msgstr "Depo kaldırıldı. Uzaktan yedeklemenin kendisi silinmedi."
-#: plinth/modules/backups/views.py:425
+#: plinth/modules/backups/views.py:408
msgid "Unmounting failed!"
msgstr "Çıkarma işlemi başarısız oldu!"
-#: plinth/modules/backups/views.py:440 plinth/modules/backups/views.py:444
+#: plinth/modules/backups/views.py:423 plinth/modules/backups/views.py:427
msgid "Mounting failed"
msgstr "Montaj başarısız oldu"
-#: plinth/modules/bind/__init__.py:36
-msgid "BIND"
-msgstr "BIND"
-
-#: plinth/modules/bind/__init__.py:38
-msgid "Domain Name Server"
-msgstr "Alan Adı Sunucusu"
-
-#: plinth/modules/bind/__init__.py:45
+#: plinth/modules/bind/__init__.py:29
msgid ""
"BIND enables you to publish your Domain Name System (DNS) information on the "
"Internet, and to resolve DNS queries for your user devices on your network."
@@ -630,7 +623,7 @@ msgstr ""
"ağınızdaki kullanıcı cihazlarının DNS sorgularının çözümlenmesine imkan "
"verir."
-#: plinth/modules/bind/__init__.py:49
+#: plinth/modules/bind/__init__.py:33
#, python-brace-format
msgid ""
"Currently, on {box_name}, BIND is only used to resolve DNS queries for other "
@@ -641,40 +634,76 @@ msgstr ""
"makinelerin DNS sorgularını çözümlemek için kullanılmaktadır. Ayrıca "
"{box_name} kutusu ile İnternet bağlantısını paylaşmayla uyumsuzdur."
-#: plinth/modules/bind/forms.py:37
+#: plinth/modules/bind/__init__.py:82
+msgid "BIND"
+msgstr "BIND"
+
+#: plinth/modules/bind/__init__.py:83
+msgid "Domain Name Server"
+msgstr "Alan Adı Sunucusu"
+
+#: plinth/modules/bind/forms.py:22
msgid "Forwarders"
msgstr "Göndericiler"
-#: plinth/modules/bind/forms.py:38
+#: plinth/modules/bind/forms.py:23
msgid ""
"A list DNS servers, separated by space, to which requests will be forwarded"
msgstr ""
"Sorguların iletilecekleri, boşluklar ile ayrılmış DNS sunucuları listesi"
-#: plinth/modules/bind/forms.py:42
+#: plinth/modules/bind/forms.py:27
msgid "Enable DNSSEC"
msgstr "Dinamik DNSSEC'i Etkinleştir"
-#: plinth/modules/bind/forms.py:43
+#: plinth/modules/bind/forms.py:28
msgid "Enable Domain Name System Security Extensions"
msgstr "Alan Adı Sistemi Güvenlik Uzantılarını Etkinleştir"
-#: plinth/modules/bind/views.py:58 plinth/modules/deluge/views.py:67
-#: plinth/modules/dynamicdns/views.py:171 plinth/modules/openvpn/views.py:153
-#: plinth/modules/shadowsocks/views.py:79
-#: plinth/modules/transmission/views.py:73
+#: plinth/modules/bind/templates/bind.html:11
+#, fuzzy
+#| msgid "Server domain"
+msgid "Serving Domains"
+msgstr "Sunucu alanı"
+
+#: plinth/modules/bind/templates/bind.html:16
+#: plinth/modules/ikiwiki/forms.py:12
+#: plinth/modules/networks/templates/connection_show.html:83
+#: plinth/modules/storage/templates/storage.html:28
+msgid "Type"
+msgstr "Tür"
+
+#: plinth/modules/bind/templates/bind.html:17
+#, fuzzy
+#| msgid "Domain Name"
+msgid "Domain Names"
+msgstr "Alan Adı"
+
+#: plinth/modules/bind/templates/bind.html:18
+#, fuzzy
+#| msgid "Service"
+msgid "Serving"
+msgstr "Servis"
+
+#: plinth/modules/bind/templates/bind.html:19
+#, fuzzy
+#| msgid "IP address"
+msgid "IP addresses"
+msgstr "IP adresi"
+
+#: plinth/modules/bind/templates/bind.html:35
+#: plinth/modules/bind/templates/bind.html:37
+msgid "Refresh IP address and domains"
+msgstr ""
+
+#: plinth/modules/bind/views.py:73 plinth/modules/deluge/views.py:46
+#: plinth/modules/dynamicdns/views.py:150 plinth/modules/openvpn/views.py:134
+#: plinth/modules/shadowsocks/views.py:59
+#: plinth/modules/transmission/views.py:52
msgid "Configuration updated"
msgstr "Kurulum güncellendi"
-#: plinth/modules/cockpit/__init__.py:45 plinth/modules/cockpit/manifest.py:27
-msgid "Cockpit"
-msgstr "Cockpit"
-
-#: plinth/modules/cockpit/__init__.py:49
-msgid "Server Administration"
-msgstr "Sunucu Yönetimi"
-
-#: plinth/modules/cockpit/__init__.py:53
+#: plinth/modules/cockpit/__init__.py:32
#, python-brace-format
msgid ""
"Cockpit is a server manager that makes it easy to administer GNU/Linux "
@@ -687,7 +716,7 @@ msgstr ""
"genellikle gerekli olmayan birçok gelişmiş işlev için kontrol bulunur. "
"Konsol işlemleri için ağ tabanlı bir terminal de mevcuttur."
-#: plinth/modules/cockpit/__init__.py:59
+#: plinth/modules/cockpit/__init__.py:38
#, fuzzy, python-brace-format
#| msgid ""
#| "When enabled, Cockpit will be available from /"
@@ -705,63 +734,71 @@ msgstr ""
"kullanılabilir. Hassas bilgiler ve sistem değiştirme kabiliyeti, yönetici "
"(yani admin) grubuna ait kullanıcılar ile sınırlıdır."
-#: plinth/modules/cockpit/__init__.py:63
+#: plinth/modules/cockpit/__init__.py:42
msgid ""
"Cockpit requires that you access it through a domain name. It will not work "
"when accessed using an IP address as part of the URL."
msgstr ""
-#: plinth/modules/cockpit/templates/cockpit.html:26
+#: plinth/modules/cockpit/__init__.py:59 plinth/modules/cockpit/manifest.py:12
+msgid "Cockpit"
+msgstr "Cockpit"
+
+#: plinth/modules/cockpit/__init__.py:61
+msgid "Server Administration"
+msgstr "Sunucu Yönetimi"
+
+#: plinth/modules/cockpit/templates/cockpit.html:11
#, fuzzy
#| msgid "Access Point"
msgid "Access"
msgstr "Erişim Noktası"
-#: plinth/modules/cockpit/templates/cockpit.html:29
+#: plinth/modules/cockpit/templates/cockpit.html:14
msgid "Cockpit will only work when accessed using the following URLs."
msgstr ""
-#: plinth/modules/config/__init__.py:37
-msgid "General Configuration"
-msgstr "Genel Yapılandırma"
-
-#: plinth/modules/config/__init__.py:40
+#: plinth/modules/config/__init__.py:23
msgid ""
"Here you can set some general configuration options like hostname, domain "
"name, webserver home page etc."
msgstr ""
-#: plinth/modules/config/__init__.py:67 plinth/modules/dynamicdns/views.py:44
-#: plinth/modules/i2p/views.py:31 plinth/modules/names/templates/names.html:44
-#: plinth/modules/names/templates/names.html:58
-#: plinth/modules/snapshot/views.py:41
-#: plinth/modules/tahoe/templates/tahoe-pre-setup.html:39
+#: plinth/modules/config/__init__.py:50
+msgid "General Configuration"
+msgstr "Genel Yapılandırma"
+
+#: plinth/modules/config/__init__.py:55 plinth/modules/dynamicdns/views.py:29
+#: plinth/modules/i2p/views.py:16 plinth/modules/names/templates/names.html:29
+#: plinth/modules/names/templates/names.html:43
+#: plinth/modules/snapshot/views.py:26
+#: plinth/modules/tahoe/templates/tahoe-pre-setup.html:24
msgid "Configure"
msgstr "Yapılandır"
-#: plinth/modules/config/__init__.py:71 plinth/modules/config/forms.py:76
-#: plinth/modules/dynamicdns/forms.py:110
+#: plinth/modules/config/__init__.py:59 plinth/modules/config/forms.py:61
+#: plinth/modules/dynamicdns/forms.py:95
msgid "Domain Name"
msgstr "Alan Adı"
-#: plinth/modules/config/forms.py:42 plinth/modules/config/forms.py:88
-#: plinth/modules/dynamicdns/forms.py:113
+#: plinth/modules/config/forms.py:27 plinth/modules/config/forms.py:73
+#: plinth/modules/dynamicdns/forms.py:98
msgid "Invalid domain name"
msgstr "Geçersiz alan ismi"
-#: plinth/modules/config/forms.py:50
+#: plinth/modules/config/forms.py:35
msgid "Apache Default"
msgstr "Apache Varsayılan"
-#: plinth/modules/config/forms.py:51
+#: plinth/modules/config/forms.py:36
msgid "FreedomBox Service (Plinth)"
msgstr "FreedomBox Servisi (Plinth)"
-#: plinth/modules/config/forms.py:63
+#: plinth/modules/config/forms.py:48
msgid "Hostname"
msgstr "Makine ismi"
-#: plinth/modules/config/forms.py:65
+#: plinth/modules/config/forms.py:50
#, python-brace-format
msgid ""
"Hostname is the local name by which other devices on the local network can "
@@ -774,11 +811,11 @@ msgstr ""
"başlayıp sona ermesi gerekir ve sadece alfabe harfleri, sayılar ve tireler "
"içerebilir. Toplam uzunluğun 63 karakter veya daha azı olması gerekmektedir."
-#: plinth/modules/config/forms.py:72
+#: plinth/modules/config/forms.py:57
msgid "Invalid hostname"
msgstr "Geçersiz makine ismi"
-#: plinth/modules/config/forms.py:78
+#: plinth/modules/config/forms.py:63
#, python-brace-format
msgid ""
"Domain name is the global name by which other devices on the Internet can "
@@ -795,11 +832,11 @@ msgstr ""
"kalmalıdır. Her grubun uzunluğu 63 karakter ya da daha azı olmalıdır. Alan "
"adının toplam uzunluğu 253 karakter ya da daha azı olmalıdır."
-#: plinth/modules/config/forms.py:93
+#: plinth/modules/config/forms.py:78
msgid "Webserver Home Page"
msgstr "Web Sunucusu Ana Sayfası"
-#: plinth/modules/config/forms.py:95
+#: plinth/modules/config/forms.py:80
#, python-brace-format
msgid ""
"Choose the default page that must be served when someone visits your "
@@ -809,70 +846,62 @@ msgid ""
"explicitly type /plinth or /freedombox to reach {box_name} Service (Plinth)."
msgstr ""
-#: plinth/modules/config/forms.py:106
+#: plinth/modules/config/forms.py:91
msgid "Show advanced apps and features"
msgstr ""
-#: plinth/modules/config/forms.py:107
+#: plinth/modules/config/forms.py:92
msgid "Show apps and features that require more technical knowledge."
msgstr ""
-#: plinth/modules/config/views.py:65
+#: plinth/modules/config/views.py:47
#, python-brace-format
msgid "Error setting hostname: {exception}"
msgstr "Makine isminin ayarlanmasında hata: {exception}"
-#: plinth/modules/config/views.py:68
+#: plinth/modules/config/views.py:50
msgid "Hostname set"
msgstr "Makine ismi ayarlandı"
-#: plinth/modules/config/views.py:77
+#: plinth/modules/config/views.py:59
#, python-brace-format
msgid "Error setting domain name: {exception}"
msgstr "Alan adının ayarlanmasında hata: {exception}"
-#: plinth/modules/config/views.py:80
+#: plinth/modules/config/views.py:62
msgid "Domain name set"
msgstr "Alan adı ayarlandı"
-#: plinth/modules/config/views.py:88
+#: plinth/modules/config/views.py:70
#, python-brace-format
msgid "Error setting webserver home page: {exception}"
msgstr "Web sunucusu ana sayfasını ayarlama hatası: {exception}"
-#: plinth/modules/config/views.py:91
+#: plinth/modules/config/views.py:73
msgid "Webserver home page set"
msgstr ""
-#: plinth/modules/config/views.py:99
+#: plinth/modules/config/views.py:81
#, python-brace-format
msgid "Error changing advanced mode: {exception}"
msgstr "Gelişmiş mod değiştirilirken hata oluştu: {exception}"
-#: plinth/modules/config/views.py:104
+#: plinth/modules/config/views.py:86
msgid "Showing advanced apps and features"
msgstr ""
-#: plinth/modules/config/views.py:107
+#: plinth/modules/config/views.py:89
msgid "Hiding advanced apps and features"
msgstr ""
-#: plinth/modules/coquelicot/__init__.py:40
-msgid "Coquelicot"
-msgstr ""
-
-#: plinth/modules/coquelicot/__init__.py:42 plinth/modules/samba/__init__.py:50
-msgid "File Sharing"
-msgstr "Dosya paylaşımı"
-
-#: plinth/modules/coquelicot/__init__.py:45
+#: plinth/modules/coquelicot/__init__.py:24
msgid ""
"Coquelicot is a \"one-click\" file sharing web application with a focus on "
"protecting users' privacy. It is best used for quickly sharing a single "
"file. "
msgstr ""
-#: plinth/modules/coquelicot/__init__.py:48
+#: plinth/modules/coquelicot/__init__.py:27
msgid ""
"This Coquelicot instance is exposed to the public but requires an upload "
"password to prevent unauthorized access. You can set a new upload password "
@@ -880,11 +909,19 @@ msgid ""
"password is \"test\"."
msgstr ""
-#: plinth/modules/coquelicot/forms.py:30
+#: plinth/modules/coquelicot/__init__.py:45
+msgid "Coquelicot"
+msgstr ""
+
+#: plinth/modules/coquelicot/__init__.py:47 plinth/modules/samba/__init__.py:62
+msgid "File Sharing"
+msgstr "Dosya paylaşımı"
+
+#: plinth/modules/coquelicot/forms.py:15
msgid "Upload Password"
msgstr "Parola Yükle"
-#: plinth/modules/coquelicot/forms.py:31
+#: plinth/modules/coquelicot/forms.py:16
msgid ""
"Set a new upload password for Coquelicot. Leave this field blank to keep the "
"current password."
@@ -892,41 +929,37 @@ msgstr ""
"Coquelicot için yeni bir yükleme şifresi ayarlayın. Geçerli şifreyi korumak "
"için bu alanı boş bırakın."
-#: plinth/modules/coquelicot/forms.py:35
+#: plinth/modules/coquelicot/forms.py:20
msgid "Maximum File Size (in MiB)"
msgstr ""
-#: plinth/modules/coquelicot/forms.py:36
+#: plinth/modules/coquelicot/forms.py:21
msgid "Set the maximum size of the files that can be uploaded to Coquelicot."
msgstr ""
-#: plinth/modules/coquelicot/manifest.py:24
+#: plinth/modules/coquelicot/manifest.py:9
msgid "coquelicot"
msgstr ""
-#: plinth/modules/coquelicot/views.py:58
+#: plinth/modules/coquelicot/views.py:37
#, fuzzy
#| msgid "Password updated"
msgid "Upload password updated"
msgstr "Parola güncellendi"
-#: plinth/modules/coquelicot/views.py:61
+#: plinth/modules/coquelicot/views.py:40
msgid "Failed to update upload password"
msgstr ""
-#: plinth/modules/coquelicot/views.py:69
+#: plinth/modules/coquelicot/views.py:48
msgid "Maximum file size updated"
msgstr "Azami dosya boyutu güncellendi"
-#: plinth/modules/coquelicot/views.py:72
+#: plinth/modules/coquelicot/views.py:51
msgid "Failed to update maximum file size"
msgstr ""
-#: plinth/modules/datetime/__init__.py:39
-msgid "Date & Time"
-msgstr "Tarih & Zaman"
-
-#: plinth/modules/datetime/__init__.py:42
+#: plinth/modules/datetime/__init__.py:25
msgid ""
"Network time server is a program that maintains the system time in "
"synchronization with servers on the Internet."
@@ -934,15 +967,19 @@ msgstr ""
"Ağ zaman sunucusu, İnternet'teki sunucular ile sistem zamanını eş tutan bir "
"programdır."
-#: plinth/modules/datetime/__init__.py:97
+#: plinth/modules/datetime/__init__.py:42
+msgid "Date & Time"
+msgstr "Tarih & Zaman"
+
+#: plinth/modules/datetime/__init__.py:85
msgid "Time synchronized to NTP server"
msgstr "NTP sunucusuna senkronize edilen süre"
-#: plinth/modules/datetime/forms.py:35
+#: plinth/modules/datetime/forms.py:20
msgid "Time Zone"
msgstr "Saat Dilimi"
-#: plinth/modules/datetime/forms.py:36
+#: plinth/modules/datetime/forms.py:21
msgid ""
"Set your time zone to get accurate timestamps. This will set the system-wide "
"time zone."
@@ -950,33 +987,24 @@ msgstr ""
"Zaman damgalarının doğru olması için saat diliminizi ayarlayın. Bu, tüm "
"sistem için saat dilimini ayarlayacaktır."
-#: plinth/modules/datetime/forms.py:47
+#: plinth/modules/datetime/forms.py:32
msgid "-- no time zone set --"
msgstr "-- hiçbir saat dilimi girilmemiştir --"
-#: plinth/modules/datetime/views.py:64
+#: plinth/modules/datetime/views.py:45
#, python-brace-format
msgid "Error setting time zone: {exception}"
msgstr "Saat diliminin ayarlanmasında hata: {exception}"
-#: plinth/modules/datetime/views.py:67
+#: plinth/modules/datetime/views.py:48
msgid "Time zone set"
msgstr "Saat dilimi ayarlandı"
-#: plinth/modules/deluge/__init__.py:39 plinth/modules/deluge/manifest.py:24
-msgid "Deluge"
-msgstr "Deluge"
-
-#: plinth/modules/deluge/__init__.py:43
-#: plinth/modules/transmission/__init__.py:45
-msgid "BitTorrent Web Client"
-msgstr "BitTorrent Web İstemcisi"
-
-#: plinth/modules/deluge/__init__.py:46
+#: plinth/modules/deluge/__init__.py:25
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:47
+#: plinth/modules/deluge/__init__.py:26
#, fuzzy
#| msgid ""
#| "When enabled, the Deluge web client will be available from %(domain_name)s. User IDs will "
@@ -1108,39 +1145,35 @@ msgstr ""
"diaspora* kozasına diaspora."
"%(domain_name)s konumundan erişebilirsiniz"
-#: plinth/modules/diaspora/templates/diaspora-pre-setup.html:58
-#: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:40
-#: plinth/modules/ejabberd/templates/ejabberd.html:58
-#: plinth/modules/i2p/templates/i2p.html:34
-#: plinth/modules/ikiwiki/templates/ikiwiki_create.html:33
-#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:62
-#: plinth/modules/snapshot/templates/snapshot.html:30
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:51
-#: plinth/modules/tahoe/templates/tahoe-pre-setup.html:58
-#: plinth/templates/app.html:77
+#: plinth/modules/diaspora/templates/diaspora-pre-setup.html:43
+#: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:25
+#: plinth/modules/ejabberd/templates/ejabberd.html:43
+#: plinth/modules/i2p/templates/i2p.html:19
+#: plinth/modules/ikiwiki/templates/ikiwiki_create.html:18
+#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:47
+#: plinth/modules/snapshot/templates/snapshot.html:15
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:35
+#: plinth/modules/tahoe/templates/tahoe-pre-setup.html:43
+#: plinth/templates/app.html:62
msgid "Update setup"
msgstr "Kurulumu güncelle"
-#: plinth/modules/diaspora/views.py:93 plinth/modules/ejabberd/views.py:66
-#: plinth/modules/matrixsynapse/views.py:108
-#: plinth/modules/mediawiki/views.py:79 plinth/modules/openvpn/views.py:155
-#: plinth/modules/tor/views.py:156 plinth/views.py:175
+#: plinth/modules/diaspora/views.py:76 plinth/modules/ejabberd/views.py:46
+#: plinth/modules/matrixsynapse/views.py:85
+#: plinth/modules/mediawiki/views.py:59 plinth/modules/openvpn/views.py:136
+#: plinth/modules/tor/views.py:137 plinth/views.py:185
msgid "Setting unchanged"
msgstr "Ayar değiştirilmedi"
-#: plinth/modules/diaspora/views.py:97
+#: plinth/modules/diaspora/views.py:80
msgid "User registrations enabled"
msgstr "Kullanıcı kayıtları etkinleştirildi"
-#: plinth/modules/diaspora/views.py:101
+#: plinth/modules/diaspora/views.py:84
msgid "User registrations disabled"
msgstr "Kullanıcı kayıtları devre dışı bırakıldı"
-#: plinth/modules/dynamicdns/__init__.py:40
-msgid "Dynamic DNS Client"
-msgstr "Dinamik DNS istemcisi"
-
-#: plinth/modules/dynamicdns/__init__.py:44
+#: plinth/modules/dynamicdns/__init__.py:27
#, python-brace-format
msgid ""
"If your Internet provider changes your IP address periodically (i.e. every "
@@ -1152,7 +1185,7 @@ msgstr ""
"zorlanabilir. Ve bu sebeple kimse sizin ownCloud'unuz gibi {box_name} "
"tarafından sunulan servisleri bulamayabilir."
-#: plinth/modules/dynamicdns/__init__.py:48
+#: plinth/modules/dynamicdns/__init__.py:31
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 "
@@ -1169,13 +1202,17 @@ 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/__init__.py:78
+#: plinth/modules/dynamicdns/__init__.py:56
+msgid "Dynamic DNS Client"
+msgstr "Dinamik DNS istemcisi"
+
+#: plinth/modules/dynamicdns/__init__.py:66
#, fuzzy
#| msgid "Domain Name"
msgid "Dynamic Domain Name"
msgstr "Alan Adı"
-#: plinth/modules/dynamicdns/forms.py:42
+#: plinth/modules/dynamicdns/forms.py:27
msgid ""
"The Variables <User>, <Pass>, <Ip>, <Domain> may be "
"used within the URL. For details see the update URL templates of the example "
@@ -1185,7 +1222,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/forms.py:46
+#: plinth/modules/dynamicdns/forms.py:31
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 "
@@ -1195,7 +1232,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/forms.py:51
+#: plinth/modules/dynamicdns/forms.py:36
msgid ""
"Please do not enter a URL here (like \"https://example.com/\") but only the "
"hostname of the GnuDIP server (like \"example.com\")."
@@ -1203,19 +1240,19 @@ msgstr ""
"Buraya lütfen \"https://example.com/\" gibi bir URL girmeyin, sadece GnuDIP "
"sunucusunun makine ismini girin (\"example.com\" gibi)."
-#: plinth/modules/dynamicdns/forms.py:55
+#: plinth/modules/dynamicdns/forms.py:40
#, 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/forms.py:58
+#: plinth/modules/dynamicdns/forms.py:43
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/forms.py:61
+#: plinth/modules/dynamicdns/forms.py:46
msgid ""
"If this option is selected, your username and password will be used for HTTP "
"basic authentication."
@@ -1223,11 +1260,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/forms.py:64
+#: plinth/modules/dynamicdns/forms.py:49
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/forms.py:67
+#: plinth/modules/dynamicdns/forms.py:52
#, python-brace-format
msgid ""
"Optional Value. If your {box_name} is not connected directly to the Internet "
@@ -1240,72 +1277,72 @@ msgstr ""
"belirlemek için kullanılır. URL sadece istemcinin bulunduğu yerin IP'sini "
"vermelidir (mesela: http://myip.datasystems24.de)."
-#: plinth/modules/dynamicdns/forms.py:75
+#: plinth/modules/dynamicdns/forms.py:60
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/forms.py:83
+#: plinth/modules/dynamicdns/forms.py:68
msgid "Enable Dynamic DNS"
msgstr "Dinamik DNS'i Etkinleştir"
-#: plinth/modules/dynamicdns/forms.py:86
+#: plinth/modules/dynamicdns/forms.py:71
msgid "Service Type"
msgstr "Servis Türü"
-#: plinth/modules/dynamicdns/forms.py:91
+#: plinth/modules/dynamicdns/forms.py:76
msgid "GnuDIP Server Address"
msgstr "GnuDIP Sunucu Adresi"
-#: plinth/modules/dynamicdns/forms.py:94
+#: plinth/modules/dynamicdns/forms.py:79
msgid "Invalid server name"
msgstr "Geçersiz sunucu ismi"
-#: plinth/modules/dynamicdns/forms.py:97
+#: plinth/modules/dynamicdns/forms.py:82
msgid "Update URL"
msgstr "Güncelleme URL'i"
-#: plinth/modules/dynamicdns/forms.py:102
+#: plinth/modules/dynamicdns/forms.py:87
msgid "Accept all SSL certificates"
msgstr "Tüm SSL sertifikalarını kabul et"
-#: plinth/modules/dynamicdns/forms.py:106
+#: plinth/modules/dynamicdns/forms.py:91
msgid "Use HTTP basic authentication"
msgstr "Temel HTTP kimlik doğrulamasını kullan"
-#: plinth/modules/dynamicdns/forms.py:116 plinth/modules/networks/forms.py:217
+#: plinth/modules/dynamicdns/forms.py:101 plinth/modules/networks/forms.py:199
msgid "Username"
msgstr "Kullanıcı ismi"
-#: plinth/modules/dynamicdns/forms.py:119 plinth/modules/networks/forms.py:218
-#: plinth/modules/shadowsocks/forms.py:60
+#: plinth/modules/dynamicdns/forms.py:104 plinth/modules/networks/forms.py:200
+#: plinth/modules/shadowsocks/forms.py:45
msgid "Password"
msgstr "Parola"
-#: plinth/modules/dynamicdns/forms.py:123 plinth/modules/networks/forms.py:220
+#: plinth/modules/dynamicdns/forms.py:108 plinth/modules/networks/forms.py:202
msgid "Show password"
msgstr "Parolayı göster"
-#: plinth/modules/dynamicdns/forms.py:127
+#: plinth/modules/dynamicdns/forms.py:112
msgid "URL to look up public IP"
msgstr "Genel IP adresini bulmak için URL"
-#: plinth/modules/dynamicdns/forms.py:151
+#: plinth/modules/dynamicdns/forms.py:136
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/forms.py:156
+#: plinth/modules/dynamicdns/forms.py:141
msgid "Please provide a GnuDIP username"
msgstr "Lütfen bir GnuDIP kullanıcı ismi belirtin"
-#: plinth/modules/dynamicdns/forms.py:160
+#: plinth/modules/dynamicdns/forms.py:145
msgid "Please provide a GnuDIP domain name"
msgstr "Lütfen bir GnuDIP alan ismi belirtin"
-#: plinth/modules/dynamicdns/forms.py:165
+#: plinth/modules/dynamicdns/forms.py:150
msgid "Please provide a password"
msgstr "Lütfen bir parola girin"
-#: plinth/modules/dynamicdns/templates/dynamicdns.html:27
+#: plinth/modules/dynamicdns/templates/dynamicdns.html:12
msgid ""
"If you are looking for a free dynamic DNS account, you may find a free "
"GnuDIP service at freedns."
"afraid.org adresinde bulabilirsiniz."
-#: plinth/modules/dynamicdns/templates/dynamicdns.html:38
+#: plinth/modules/dynamicdns/templates/dynamicdns.html:23
#, python-format
msgid ""
"If your %(box_name)s is connected behind a NAT router, don't forget to add "
@@ -1330,7 +1367,7 @@ msgstr ""
"portu (HTTP) ve 443 numaralı TCP portu (HTTPS) dahil olmak üzere port "
"yönlendirme eklemeyi unutmayınız."
-#: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:30
+#: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:15
msgid ""
"You have disabled Javascript. Dynamic form mode is disabled and some helper "
"functions may not work (but the main functionality should work)."
@@ -1338,11 +1375,11 @@ msgstr ""
"Javascript'i devre dışı bırakmışsınız. Dinamik form kipi devre dışıdır ve "
"bazı yardımcı işlevler çalışmayabilir (fakat ana işlevler çalışmalıdır)."
-#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:24
+#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:9
msgid "NAT type"
msgstr "NAT türü"
-#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:28
+#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:13
msgid ""
"NAT type was not detected yet. If you do not provide an \"IP Check URL\", we "
"will not detect a NAT type."
@@ -1350,11 +1387,11 @@ msgstr ""
"NAT türü henüz tespit edilmemiştir. Eğer bir \"IP Kontrolü Bağlantısı\" "
"girmezseniz NAT türü tespit edilmeyecektir."
-#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:34
+#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:19
msgid "Direct connection to the Internet."
msgstr "İnternet'e doğrudan bağlantı."
-#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:36
+#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:21
#, python-format
msgid ""
"Behind NAT. This means that Dynamic DNS service will poll the \"URL to look "
@@ -1368,48 +1405,39 @@ msgstr ""
"edilemez). WAN IP değişikliği durumunda DNS girdinizin güncellenmesi "
"%(timer)s dakika alabilir."
-#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:48
+#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:33
msgid "Last update"
msgstr "Son güncelleme"
-#: plinth/modules/dynamicdns/views.py:41 plinth/modules/help/__init__.py:59
-#: plinth/templates/help-menu.html:61 plinth/templates/help-menu.html:62
+#: plinth/modules/dynamicdns/views.py:26 plinth/modules/help/__init__.py:49
+#: plinth/templates/help-menu.html:46 plinth/templates/help-menu.html:47
msgid "About"
msgstr "Hakkında"
-#: plinth/modules/dynamicdns/views.py:47
-#: plinth/modules/firewall/templates/firewall.html:25
-#: plinth/modules/firewall/templates/firewall.html:45
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:38
-#: plinth/modules/networks/templates/connection_show.html:261
-#: plinth/modules/openvpn/templates/openvpn.html:39
-#: plinth/modules/openvpn/templates/openvpn.html:60
-#: plinth/modules/tor/templates/tor.html:37
-#: plinth/modules/tor/templates/tor.html:51
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:61
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:60
-#: plinth/templates/app.html:42
+#: plinth/modules/dynamicdns/views.py:32
+#: plinth/modules/firewall/templates/firewall.html:10
+#: plinth/modules/firewall/templates/firewall.html:30
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:23
+#: plinth/modules/networks/templates/connection_show.html:246
+#: plinth/modules/openvpn/templates/openvpn.html:24
+#: plinth/modules/openvpn/templates/openvpn.html:45
+#: plinth/modules/tor/templates/tor.html:22
+#: plinth/modules/tor/templates/tor.html:36
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:46
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:45
+#: plinth/templates/app.html:27
msgid "Status"
msgstr "Durum"
-#: plinth/modules/dynamicdns/views.py:79
+#: plinth/modules/dynamicdns/views.py:62
msgid "Configure Dynamic DNS"
msgstr "Dİnamik DNS'i Yapılandır"
-#: plinth/modules/dynamicdns/views.py:105
+#: plinth/modules/dynamicdns/views.py:86
msgid "Dynamic DNS Status"
msgstr "Dinamik DNS Durumu"
-#: plinth/modules/ejabberd/__init__.py:50
-msgid "ejabberd"
-msgstr "ejabberd"
-
-#: plinth/modules/ejabberd/__init__.py:54
-#: plinth/modules/matrixsynapse/__init__.py:52
-msgid "Chat Server"
-msgstr "Sohbet Sunucusu"
-
-#: plinth/modules/ejabberd/__init__.py:57
+#: plinth/modules/ejabberd/__init__.py:36
msgid ""
"XMPP is an open and standardized communication protocol. Here you can run "
"and configure your XMPP server, called ejabberd."
@@ -1417,7 +1445,7 @@ 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:60
+#: plinth/modules/ejabberd/__init__.py:39
#, fuzzy, python-brace-format
#| msgid ""
#| "To actually communicate, you can use the kullanıcıları, "
"ki {box_name}hesabı olan tarafından kullanılabilir."
-#: plinth/modules/ejabberd/forms.py:32
+#: plinth/modules/ejabberd/__init__.py:70
+msgid "ejabberd"
+msgstr "ejabberd"
+
+#: plinth/modules/ejabberd/__init__.py:71
+#: plinth/modules/matrixsynapse/__init__.py:68
+msgid "Chat Server"
+msgstr "Sohbet Sunucusu"
+
+#: plinth/modules/ejabberd/forms.py:17
msgid "Enable Message Archive Management"
msgstr "Mesaj Arşivi Yönetimini Etkinleştir"
-#: plinth/modules/ejabberd/forms.py:34
+#: plinth/modules/ejabberd/forms.py:19
#, python-brace-format
msgid ""
"If enabled, your {box_name} will store chat message histories. This allows "
@@ -1455,17 +1492,17 @@ msgstr ""
"okunmasına imkân tanır. Tarihçelerin sade metin ya da şifrelenmiş olarak "
"saklanmaları istemci ayarlarına bağlıdır."
-#: plinth/modules/ejabberd/manifest.py:26
+#: plinth/modules/ejabberd/manifest.py:11
msgid "Conversations"
msgstr "Sohbetler"
-#: plinth/modules/ejabberd/manifest.py:40
+#: plinth/modules/ejabberd/manifest.py:25
#, fuzzy
#| msgid "ejabberd"
msgid "Xabber"
msgstr "ejabberd"
-#: plinth/modules/ejabberd/manifest.py:42
+#: plinth/modules/ejabberd/manifest.py:27
msgid ""
"Open source Jabber (XMPP) client with multi-account support and clean and "
"simple interface. "
@@ -1473,15 +1510,15 @@ msgstr ""
"Açık kaynaklı Jabber (XMPP) istemcisi, çoklu hesap desteği ve temiz ve basit "
"bir arayüz. "
-#: plinth/modules/ejabberd/manifest.py:57
+#: plinth/modules/ejabberd/manifest.py:42
msgid "Yaxim"
msgstr "Yaxim"
-#: plinth/modules/ejabberd/manifest.py:71
+#: plinth/modules/ejabberd/manifest.py:56
msgid "ChatSecure"
msgstr "ChatSecure"
-#: plinth/modules/ejabberd/manifest.py:73
+#: plinth/modules/ejabberd/manifest.py:58
msgid ""
"ChatSecure is a free and open source messaging app that features OTR "
"encryption over XMPP. You can connect to an existing Google account, create "
@@ -1494,15 +1531,15 @@ msgstr ""
"ile de olabilir), ya da ek güvenlik için kendi sunucunuza bile "
"bağlanabilirsiniz."
-#: plinth/modules/ejabberd/manifest.py:89
+#: plinth/modules/ejabberd/manifest.py:74
msgid "Dino"
msgstr "Dino"
-#: plinth/modules/ejabberd/manifest.py:101
+#: plinth/modules/ejabberd/manifest.py:86
msgid "Gajim"
msgstr "Gajim"
-#: plinth/modules/ejabberd/templates/ejabberd.html:33
+#: plinth/modules/ejabberd/templates/ejabberd.html:18
#, python-format
msgid ""
"Your XMPP server domain is set to %(domainname)s. User IDs will look "
@@ -1514,28 +1551,24 @@ msgstr ""
"sistem Yapılandırma sayfasında "
"ayarlayabilirsiniz."
-#: plinth/modules/ejabberd/templates/ejabberd.html:50
-#: plinth/modules/i2p/templates/i2p.html:26
-#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:30
-#: plinth/modules/snapshot/templates/snapshot.html:27
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:43
-#: plinth/templates/app.html:70
+#: plinth/modules/ejabberd/templates/ejabberd.html:35
+#: plinth/modules/i2p/templates/i2p.html:11
+#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:15
+#: plinth/modules/snapshot/templates/snapshot.html:12
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:27
+#: plinth/templates/app.html:55
msgid "Configuration"
msgstr "Yapılandırma"
-#: plinth/modules/ejabberd/views.py:78
+#: plinth/modules/ejabberd/views.py:58
msgid "Message Archive Management enabled"
msgstr "Mesaj Arşivi Yönetimi etkinleştirilmiştir"
-#: plinth/modules/ejabberd/views.py:82
+#: plinth/modules/ejabberd/views.py:62
msgid "Message Archive Management disabled"
msgstr "Mesaj Arşivi Yönetimi devre dışı bırakılmıştır"
-#: plinth/modules/firewall/__init__.py:39
-msgid "Firewall"
-msgstr "Güvenlik Duvarı"
-
-#: plinth/modules/firewall/__init__.py:43
+#: plinth/modules/firewall/__init__.py:32
#, python-brace-format
msgid ""
"Firewall is a security system that controls the incoming and outgoing "
@@ -1547,24 +1580,28 @@ msgstr ""
"etkinleştirip gerektiği gibi yapılandırmak İnternet'ten gelen güvenlik "
"tehditlerini azaltır."
-#: plinth/modules/firewall/components.py:130
+#: plinth/modules/firewall/__init__.py:63
+msgid "Firewall"
+msgstr "Güvenlik Duvarı"
+
+#: plinth/modules/firewall/components.py:118
#, fuzzy, python-brace-format
#| msgid "Service %(service_name)s is not running."
msgid "Port {name} ({details}) available for internal networks"
msgstr "%(service_name)s servisi çalışmamaktadır."
-#: plinth/modules/firewall/components.py:138
+#: plinth/modules/firewall/components.py:126
#, fuzzy, python-brace-format
#| msgid "Service %(service_name)s is not running."
msgid "Port {name} ({details}) available for external networks"
msgstr "%(service_name)s servisi çalışmamaktadır."
-#: plinth/modules/firewall/components.py:143
+#: plinth/modules/firewall/components.py:131
#, python-brace-format
msgid "Port {name} ({details}) unavailable for external networks"
msgstr ""
-#: plinth/modules/firewall/templates/firewall.html:30
+#: plinth/modules/firewall/templates/firewall.html:15
#, python-format
msgid ""
"Firewall daemon is not running. Please run it. Firewall comes enabled by "
@@ -1578,42 +1615,42 @@ msgstr ""
"firewalld start' komutunu çalıştırarak ya da systemd bulunan bir sistemde "
"'systemctl start firewalld' komutunu çalıştırarak etkinleştirebilirsiniz."
-#: plinth/modules/firewall/templates/firewall.html:43
+#: plinth/modules/firewall/templates/firewall.html:28
msgid "Show Ports"
msgstr "Portları Göster"
-#: plinth/modules/firewall/templates/firewall.html:44
+#: plinth/modules/firewall/templates/firewall.html:29
msgid "Service/Port"
msgstr "Servis/Port"
-#: plinth/modules/firewall/templates/firewall.html:63
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:89
+#: plinth/modules/firewall/templates/firewall.html:48
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:74
msgid "Enabled"
msgstr "Etkin"
-#: plinth/modules/firewall/templates/firewall.html:66
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:91
-#: plinth/modules/networks/forms.py:64 plinth/templates/cards.html:49
+#: plinth/modules/firewall/templates/firewall.html:51
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:76
+#: plinth/modules/networks/forms.py:47 plinth/templates/cards.html:34
msgid "Disabled"
msgstr "Devre dışı"
-#: plinth/modules/firewall/templates/firewall.html:78
+#: plinth/modules/firewall/templates/firewall.html:67
msgid "Permitted"
msgstr "İzinli"
-#: plinth/modules/firewall/templates/firewall.html:81
+#: plinth/modules/firewall/templates/firewall.html:70
msgid "Permitted (internal only)"
msgstr "İzinli (sadece dahili)"
-#: plinth/modules/firewall/templates/firewall.html:84
+#: plinth/modules/firewall/templates/firewall.html:73
msgid "Permitted (external only)"
msgstr "İzinli (sadece harici)"
-#: plinth/modules/firewall/templates/firewall.html:87
+#: plinth/modules/firewall/templates/firewall.html:76
msgid "Blocked"
msgstr "Engellenmiş"
-#: plinth/modules/firewall/templates/firewall.html:99
+#: plinth/modules/firewall/templates/firewall.html:88
msgid ""
"The operation of the firewall is automatic. When you enable a service it is "
"also permitted in the firewall and when you disable a service it is also "
@@ -1623,7 +1660,7 @@ msgstr ""
"güvenlik duvarında da izinli hale gelir ve devre dışı bıraktığınızda "
"güvenlik duvarında da devre dışı bırakılır."
-#: plinth/modules/first_boot/forms.py:29
+#: plinth/modules/first_boot/forms.py:14
#, python-brace-format
msgid ""
"Enter the secret generated during FreedomBox installation. This secret can "
@@ -1631,24 +1668,24 @@ msgid ""
"wizard-secret\" on your {box_name}"
msgstr ""
-#: plinth/modules/first_boot/forms.py:34
+#: plinth/modules/first_boot/forms.py:19
msgid "Firstboot Wizard Secret"
msgstr ""
-#: plinth/modules/first_boot/templates/firstboot_complete.html:26
+#: plinth/modules/first_boot/templates/firstboot_complete.html:11
msgid "Setup Complete!"
msgstr "Yapılandırma Tamamlandı!"
-#: plinth/modules/first_boot/templates/firstboot_complete.html:29
+#: plinth/modules/first_boot/templates/firstboot_complete.html:14
#, python-format
msgid "Without any apps, your %(box_name)s cannot do very much."
msgstr "Hİçbir uygulama olmadan %(box_name)s kutunuz pek bir şey yapamaz."
-#: plinth/modules/first_boot/templates/firstboot_complete.html:36
+#: plinth/modules/first_boot/templates/firstboot_complete.html:21
msgid "Install Apps"
msgstr "Uygulama Kur"
-#: plinth/modules/first_boot/templates/firstboot_complete.html:42
+#: plinth/modules/first_boot/templates/firstboot_complete.html:27
#, python-format
msgid ""
"You may want to check the network setup and "
@@ -1657,23 +1694,15 @@ msgstr ""
"Şebeke kurulumunu kontrol edip gerekirse "
"değiştirmek isteyebilirsiniz."
-#: plinth/modules/first_boot/templates/firstboot_welcome.html:52
+#: plinth/modules/first_boot/templates/firstboot_welcome.html:37
msgid "Start Setup"
msgstr "Kuruluma Başla"
-#: plinth/modules/first_boot/views.py:64
+#: plinth/modules/first_boot/views.py:49
msgid "Setup Complete"
msgstr "Yapılandırma Tamamlandı"
-#: plinth/modules/gitweb/__init__.py:44 plinth/modules/gitweb/manifest.py:28
-msgid "Gitweb"
-msgstr ""
-
-#: plinth/modules/gitweb/__init__.py:48
-msgid "Simple Git Hosting"
-msgstr ""
-
-#: plinth/modules/gitweb/__init__.py:51
+#: plinth/modules/gitweb/__init__.py:28
msgid ""
"Git is a distributed version-control system for tracking changes in source "
"code during software development. Gitweb provides a web interface to Git "
@@ -1684,213 +1713,221 @@ msgid ""
"the world."
msgstr ""
-#: plinth/modules/gitweb/__init__.py:58
+#: plinth/modules/gitweb/__init__.py:35
msgid ""
"To learn more on how to use Git visit Git tutorial."
msgstr ""
-#: plinth/modules/gitweb/__init__.py:64
+#: plinth/modules/gitweb/__init__.py:39
msgid "Read-write access to Git repositories"
msgstr ""
-#: plinth/modules/gitweb/forms.py:59
+#: plinth/modules/gitweb/__init__.py:56 plinth/modules/gitweb/manifest.py:13
+msgid "Gitweb"
+msgstr ""
+
+#: plinth/modules/gitweb/__init__.py:57
+msgid "Simple Git Hosting"
+msgstr ""
+
+#: plinth/modules/gitweb/forms.py:44
#, fuzzy
#| msgid "Invalid hostname"
msgid "Invalid repository URL."
msgstr "Geçersiz makine ismi"
-#: plinth/modules/gitweb/forms.py:69
+#: plinth/modules/gitweb/forms.py:54
#, fuzzy
#| msgid "Invalid hostname"
msgid "Invalid repository name."
msgstr "Geçersiz makine ismi"
-#: plinth/modules/gitweb/forms.py:77
+#: plinth/modules/gitweb/forms.py:62
msgid "Name of a new repository or URL to import an existing repository."
msgstr ""
-#: plinth/modules/gitweb/forms.py:83
+#: plinth/modules/gitweb/forms.py:68
#, fuzzy
#| msgid "Create new repository"
msgid "Description of the repository"
msgstr "Yeni depo oluştur"
-#: plinth/modules/gitweb/forms.py:84 plinth/modules/gitweb/forms.py:88
+#: plinth/modules/gitweb/forms.py:69 plinth/modules/gitweb/forms.py:73
msgid "Optional, for displaying on Gitweb."
msgstr ""
-#: plinth/modules/gitweb/forms.py:86
+#: plinth/modules/gitweb/forms.py:71
#, fuzzy
#| msgid "Repository removed."
msgid "Repository's owner name"
msgstr "Depo kaldırıldı."
-#: plinth/modules/gitweb/forms.py:91
+#: plinth/modules/gitweb/forms.py:76
#, fuzzy
#| msgid "Create Repository"
msgid "Private repository"
msgstr "Depo oluştur"
-#: plinth/modules/gitweb/forms.py:92
+#: plinth/modules/gitweb/forms.py:77
msgid "Allow only authorized users to access this repository."
msgstr ""
-#: plinth/modules/gitweb/forms.py:113 plinth/modules/gitweb/forms.py:145
+#: plinth/modules/gitweb/forms.py:98 plinth/modules/gitweb/forms.py:130
#, fuzzy
#| msgid "This service already exists"
msgid "A repository with this name already exists."
msgstr "Bu servis zaten mevcuttur"
-#: plinth/modules/gitweb/forms.py:126
+#: plinth/modules/gitweb/forms.py:111
#, fuzzy
#| msgid "Create new repository"
msgid "Name of the repository"
msgstr "Yeni depo oluştur"
-#: plinth/modules/gitweb/forms.py:130
+#: plinth/modules/gitweb/forms.py:115
msgid "An alpha-numeric string that uniquely identifies a repository."
msgstr ""
-#: plinth/modules/gitweb/manifest.py:36
+#: plinth/modules/gitweb/manifest.py:21
msgid "Git"
msgstr ""
-#: plinth/modules/gitweb/templates/gitweb_configure.html:46
+#: plinth/modules/gitweb/templates/gitweb_configure.html:31
#, fuzzy
#| msgid "Create Repository"
msgid "Manage Repositories"
msgstr "Depo oluştur"
-#: plinth/modules/gitweb/templates/gitweb_configure.html:50
-#: plinth/modules/gitweb/templates/gitweb_configure.html:52
+#: plinth/modules/gitweb/templates/gitweb_configure.html:35
+#: plinth/modules/gitweb/templates/gitweb_configure.html:37
#, fuzzy
#| msgid "Create Repository"
msgid "Create repository"
msgstr "Depo oluştur"
-#: plinth/modules/gitweb/templates/gitweb_configure.html:59
+#: plinth/modules/gitweb/templates/gitweb_configure.html:44
#, fuzzy
#| msgid "Tor relay port available"
msgid "No repositories available."
msgstr "Tor geçit portu mevcuttur"
-#: plinth/modules/gitweb/templates/gitweb_configure.html:67
+#: plinth/modules/gitweb/templates/gitweb_configure.html:52
#, fuzzy, python-format
#| msgid "Delete user %(username)s"
msgid "Delete repository %(repo.name)s"
msgstr "%(username)s kullanıcısını sil"
-#: plinth/modules/gitweb/templates/gitweb_configure.html:83
+#: plinth/modules/gitweb/templates/gitweb_configure.html:68
msgid "Cloning..."
msgstr ""
-#: plinth/modules/gitweb/templates/gitweb_configure.html:89
+#: plinth/modules/gitweb/templates/gitweb_configure.html:74
#, fuzzy, python-format
#| msgid "Go to site %(site)s"
msgid "Go to repository %(repo.name)s"
msgstr "%(site)s sitesine git"
-#: plinth/modules/gitweb/templates/gitweb_delete.html:27
+#: plinth/modules/gitweb/templates/gitweb_delete.html:12
#, fuzzy, python-format
#| msgid "Delete Wiki or Blog %(name)s"
msgid "Delete Git Repository %(name)s"
msgstr "%(name)s isimli Viki ya da Blogu sil"
-#: plinth/modules/gitweb/templates/gitweb_delete.html:33
+#: plinth/modules/gitweb/templates/gitweb_delete.html:18
#, fuzzy
#| msgid "Delete this snapshot permanently?"
msgid "Delete this repository permanently?"
msgstr "Bu anlık daimi olarak silinsin mi?"
-#: plinth/modules/gitweb/templates/gitweb_delete.html:42
-#: plinth/modules/ikiwiki/templates/ikiwiki_delete.html:44
+#: plinth/modules/gitweb/templates/gitweb_delete.html:27
+#: plinth/modules/ikiwiki/templates/ikiwiki_delete.html:29
#, python-format
msgid "Delete %(name)s"
msgstr "%(name)s unsurunu sil"
-#: plinth/modules/gitweb/views.py:65
+#: plinth/modules/gitweb/views.py:45
#, fuzzy
#| msgid "Repository removed."
msgid "Repository created."
msgstr "Depo kaldırıldı."
-#: plinth/modules/gitweb/views.py:87
+#: plinth/modules/gitweb/views.py:67
#, fuzzy
#| msgid "An error occurred during configuration."
msgid "An error occurred while creating the repository."
msgstr "Yapılandırma sırasında bir hata meydana geldi."
-#: plinth/modules/gitweb/views.py:100
+#: plinth/modules/gitweb/views.py:80
#, fuzzy
#| msgid "Repository removed."
msgid "Repository edited."
msgstr "Depo kaldırıldı."
-#: plinth/modules/gitweb/views.py:105
+#: plinth/modules/gitweb/views.py:85
#, fuzzy
#| msgid "Create Repository"
msgid "Edit repository"
msgstr "Depo oluştur"
-#: plinth/modules/gitweb/views.py:133 plinth/modules/searx/views.py:62
-#: plinth/modules/searx/views.py:73 plinth/modules/tor/views.py:178
+#: plinth/modules/gitweb/views.py:113 plinth/modules/searx/views.py:42
+#: plinth/modules/searx/views.py:53 plinth/modules/tor/views.py:159
msgid "An error occurred during configuration."
msgstr "Yapılandırma sırasında bir hata meydana geldi."
-#: plinth/modules/gitweb/views.py:154
+#: plinth/modules/gitweb/views.py:134
#, python-brace-format
msgid "{name} deleted."
msgstr "{name} silindi."
-#: plinth/modules/gitweb/views.py:158
+#: plinth/modules/gitweb/views.py:138
#, python-brace-format
msgid "Could not delete {name}: {error}"
msgstr "{name} silinemedi: {error}"
-#: plinth/modules/help/__init__.py:40
+#: plinth/modules/help/__init__.py:30
msgid "Documentation"
msgstr "Belgelendirme"
-#: plinth/modules/help/__init__.py:43 plinth/modules/networks/forms.py:64
-#: plinth/modules/networks/forms.py:95 plinth/templates/help-menu.html:35
-#: plinth/templates/help-menu.html:36 plinth/templates/index.html:135
+#: plinth/modules/help/__init__.py:33 plinth/modules/networks/forms.py:47
+#: plinth/modules/networks/forms.py:77 plinth/templates/help-menu.html:20
+#: plinth/templates/help-menu.html:21 plinth/templates/index.html:120
msgid "Manual"
msgstr "Kullanım Kılavuzu"
-#: plinth/modules/help/__init__.py:47 plinth/modules/help/help.py:58
-#: plinth/modules/help/templates/help_support.html:24
-#: plinth/templates/help-menu.html:42 plinth/templates/help-menu.html:43
+#: plinth/modules/help/__init__.py:37 plinth/modules/help/help.py:43
+#: plinth/modules/help/templates/help_support.html:9
+#: plinth/templates/help-menu.html:27 plinth/templates/help-menu.html:28
msgid "Get Support"
msgstr ""
-#: plinth/modules/help/__init__.py:51 plinth/modules/help/help.py:52
-#: plinth/modules/help/templates/help_feedback.html:24
-#: plinth/templates/help-menu.html:48 plinth/templates/help-menu.html:49
+#: plinth/modules/help/__init__.py:41 plinth/modules/help/help.py:37
+#: plinth/modules/help/templates/help_feedback.html:9
+#: plinth/templates/help-menu.html:33 plinth/templates/help-menu.html:34
msgid "Submit Feedback"
msgstr ""
-#: plinth/modules/help/__init__.py:55 plinth/modules/help/help.py:46
-#: plinth/modules/help/templates/help_contribute.html:24
-#: plinth/templates/help-menu.html:54 plinth/templates/help-menu.html:55
+#: plinth/modules/help/__init__.py:45 plinth/modules/help/help.py:31
+#: plinth/modules/help/templates/help_contribute.html:9
+#: plinth/templates/help-menu.html:39 plinth/templates/help-menu.html:40
msgid "Contribute"
msgstr ""
-#: plinth/modules/help/help.py:40
+#: plinth/modules/help/help.py:25
msgid "Documentation and FAQ"
msgstr "Belgelendirme ve SSS"
-#: plinth/modules/help/help.py:66
+#: plinth/modules/help/help.py:51
#, python-brace-format
msgid "About {box_name}"
msgstr "{box_name} hakkında"
-#: plinth/modules/help/help.py:101
+#: plinth/modules/help/help.py:86
#, python-brace-format
msgid "{box_name} Manual"
msgstr "{box_name} Kılavuzu"
-#: plinth/modules/help/templates/help_about.html:32
+#: plinth/modules/help/templates/help_about.html:17
#, python-format
msgid ""
"%(box_name)s is a community project to develop, design and promote personal "
@@ -1909,7 +1946,7 @@ msgstr ""
"viki, ağ sitesi, sosyal ağ, e-posta, vekil sunucu ve Tor aktarıcısı gibi "
"uygulamalar barındırır."
-#: plinth/modules/help/templates/help_about.html:45
+#: plinth/modules/help/templates/help_about.html:30
msgid ""
"We live in a world where our use of the network is mediated by those who "
"often do not have our best interests at heart. By building software that "
@@ -1925,7 +1962,7 @@ msgstr ""
"Ağları ve makinelerinin kontrolünü kullanıcılara tekrar kazandırarak "
"İnternet'i amaçlanan eşten eşe mimarisine geri getiriyoruz."
-#: plinth/modules/help/templates/help_about.html:58
+#: plinth/modules/help/templates/help_about.html:43
#, python-format
msgid ""
"There are a number of projects working to realize a future of distributed "
@@ -1936,7 +1973,7 @@ msgstr ""
"bulunmaktadır: %(box_name)s kutusunun amacı onların tümünü kişisel bir "
"sunucuda bir araya getirmektir."
-#: plinth/modules/help/templates/help_about.html:66
+#: plinth/modules/help/templates/help_about.html:51
#, python-format
msgid ""
"For more information about the %(box_name)s project, see the %(box_name)s Vikisini okuyunuz."
-#: plinth/modules/help/templates/help_about.html:75
+#: plinth/modules/help/templates/help_about.html:60
msgid "Learn more »"
msgstr "Daha fazla bilgi edinin »"
-#: plinth/modules/help/templates/help_about.html:78
+#: plinth/modules/help/templates/help_about.html:63
#, fuzzy, python-format
#| msgid "You are running %(os_release)s and Plinth version %(version)s."
msgid "You are running %(os_release)s and %(box_name)s version %(version)s."
msgstr ""
"%(os_release)s ve Plinth yazılımının %(version)s sürümünü kullanmaktasınız."
-#: plinth/modules/help/templates/help_about.html:83
+#: plinth/modules/help/templates/help_about.html:68
#, fuzzy, python-format
#| msgid "There is a new Plinth version available."
msgid "There is a new %(box_name)s version available."
msgstr "Yeni bir Plinth sürüm mevcuttur."
-#: plinth/modules/help/templates/help_about.html:87
+#: plinth/modules/help/templates/help_about.html:72
#, fuzzy, python-format
#| msgid "Plinth is up to date."
msgid "%(box_name)s is up to date."
msgstr "Plinth günceldir."
-#: plinth/modules/help/templates/help_about.html:94
+#: plinth/modules/help/templates/help_about.html:79
#, fuzzy
#| msgid "Security"
msgid "Security Notice"
msgstr "Güvenlik"
-#: plinth/modules/help/templates/help_about.html:96
+#: plinth/modules/help/templates/help_about.html:81
msgid ""
"You are using packages from Debian backports. Please note that these "
"packages do not have security support from Debian. However, they are "
@@ -1982,17 +2019,17 @@ msgid ""
"community."
msgstr ""
-#: plinth/modules/help/templates/help_base.html:36
-#: plinth/modules/help/templates/help_index.html:76
+#: plinth/modules/help/templates/help_base.html:21
+#: plinth/modules/help/templates/help_index.html:61
#, python-format
msgid "%(box_name)s Setup"
msgstr "%(box_name)s Kurulumu"
-#: plinth/modules/help/templates/help_contribute.html:27
+#: plinth/modules/help/templates/help_contribute.html:12
msgid "The FreedomBox project welcomes contributions of all kinds."
msgstr ""
-#: plinth/modules/help/templates/help_contribute.html:33
+#: plinth/modules/help/templates/help_contribute.html:18
msgid ""
"You can contribute by writing code, testing and reporting bugs, discussing "
"new use cases and applications, designing logos and artwork, providing "
@@ -2001,7 +2038,7 @@ msgid ""
"the word."
msgstr ""
-#: plinth/modules/help/templates/help_contribute.html:43
+#: plinth/modules/help/templates/help_contribute.html:28
msgid ""
"You can also help the project financially by donating to the non-profit FreedomBox "
@@ -2013,26 +2050,26 @@ msgid ""
"supporters."
msgstr ""
-#: plinth/modules/help/templates/help_contribute.html:57
-#: plinth/modules/power/templates/power_restart.html:42
-#: plinth/modules/power/templates/power_shutdown.html:41
-#: plinth/templates/header.html:59
+#: plinth/modules/help/templates/help_contribute.html:42
+#: plinth/modules/power/templates/power_restart.html:27
+#: plinth/modules/power/templates/power_shutdown.html:26
+#: plinth/templates/app-header.html:51
msgid "Learn more..."
msgstr "Daha fazla bilgi edin..."
-#: plinth/modules/help/templates/help_feedback.html:27
+#: plinth/modules/help/templates/help_feedback.html:12
#, python-format
msgid "Your feedback will help us improve %(box_name)s!"
msgstr ""
-#: plinth/modules/help/templates/help_feedback.html:33
+#: plinth/modules/help/templates/help_feedback.html:18
msgid ""
"Let us know about missing features, your favourite apps and how we can "
"improve them on our discussion forum."
msgstr ""
-#: plinth/modules/help/templates/help_feedback.html:41
+#: plinth/modules/help/templates/help_feedback.html:26
msgid ""
"If you find any bugs or issues, please use the issue tracker"
@@ -2040,16 +2077,16 @@ msgid ""
"already reported and then use the \"New issue\" button."
msgstr ""
-#: plinth/modules/help/templates/help_feedback.html:51
+#: plinth/modules/help/templates/help_feedback.html:36
msgid "Thank you!"
msgstr ""
-#: plinth/modules/help/templates/help_index.html:27
-#: plinth/templates/help-menu.html:23 plinth/templates/help-menu.html:28
+#: plinth/modules/help/templates/help_index.html:12
+#: plinth/templates/help-menu.html:8 plinth/templates/help-menu.html:13
msgid "Help"
msgstr "Yardım"
-#: plinth/modules/help/templates/help_index.html:31
+#: plinth/modules/help/templates/help_index.html:16
#, python-format
msgid ""
"The %(box_name)s Manual is the best place to "
@@ -2058,7 +2095,7 @@ msgstr ""
"%(box_name)s. hakkında daha fazla bilgi edinmeye başlamak için en uygun yer "
"%(box_name)s Kullanım Kılavuzudur."
-#: plinth/modules/help/templates/help_index.html:38
+#: plinth/modules/help/templates/help_index.html:23
#, python-format
msgid ""
" "
@@ -2067,7 +2104,7 @@ msgstr ""
" "
"%(box_name)s proje vikisi daha fazla bilgi içerir."
-#: plinth/modules/help/templates/help_index.html:45
+#: plinth/modules/help/templates/help_index.html:30
#, python-format
msgid ""
"To seek help from %(box_name)s community, queries may be posted on the #freedombox kanalına "
"katılın ve yardım talebinde bulunun."
-#: plinth/modules/help/templates/help_manual.html:40
+#: plinth/modules/help/templates/help_manual.html:25
#, fuzzy
#| msgid "downloading"
msgid "Download as PDF"
msgstr "indiriliyor"
-#: plinth/modules/help/templates/help_support.html:27
+#: plinth/modules/help/templates/help_support.html:12
#, python-format
msgid ""
"If you need help in getting something done or if you are facing problems "
@@ -2108,13 +2145,13 @@ msgid ""
"contributors."
msgstr ""
-#: plinth/modules/help/templates/help_support.html:35
+#: plinth/modules/help/templates/help_support.html:20
msgid ""
"Search for past discussions or post a new query on our discussion forum."
msgstr ""
-#: plinth/modules/help/templates/help_support.html:42
+#: plinth/modules/help/templates/help_support.html:27
msgid ""
"You can also chat with us on our IRC and Matrix channels (bridged): "
"- #freedombox on irc.oftc.net
- #freedombox:matrix.org
"
@@ -2122,11 +2159,11 @@ msgid ""
"debian.net\">mailing list."
msgstr ""
-#: plinth/modules/help/templates/statuslog.html:25
+#: plinth/modules/help/templates/statuslog.html:10
msgid "Status Log"
msgstr "Durum Kütüğü"
-#: plinth/modules/help/templates/statuslog.html:28
+#: plinth/modules/help/templates/statuslog.html:13
#, fuzzy, python-format
#| msgid ""
#| "These are the last %(num_lines)s lines of the status log for this web "
@@ -2144,7 +2181,7 @@ msgstr ""
"freedombox/Plinth/issues\">hata izleyicisini kullanınız ve bu durum "
"kütüğünü ekleyiniz."
-#: plinth/modules/help/templates/statuslog.html:39
+#: plinth/modules/help/templates/statuslog.html:24
msgid ""
"Please remove any passwords or other personal information from the log "
"before submitting the bug report."
@@ -2152,15 +2189,7 @@ msgstr ""
"Hata raporunu göndermeden önce lütfen kütükten parolaları ve diğer kişisel "
"verileri kaldırınız."
-#: plinth/modules/i2p/__init__.py:42 plinth/modules/i2p/manifest.py:31
-msgid "I2P"
-msgstr "I2P"
-
-#: plinth/modules/i2p/__init__.py:46 plinth/modules/tor/__init__.py:49
-msgid "Anonymity Network"
-msgstr "Anonimlik Ağı"
-
-#: plinth/modules/i2p/__init__.py:49
+#: plinth/modules/i2p/__init__.py:28
msgid ""
"The Invisible Internet Project is an anonymous network layer intended to "
"protect communication from censorship and surveillance. I2P provides "
@@ -2168,7 +2197,7 @@ msgid ""
"distributed around the world."
msgstr ""
-#: plinth/modules/i2p/__init__.py:53
+#: plinth/modules/i2p/__init__.py:32
#, fuzzy
#| msgid ""
#| "For more information about the %(box_name)s project, see the %(box_name)s Vikisini okuyunuz."
-#: plinth/modules/i2p/__init__.py:55
+#: plinth/modules/i2p/__init__.py:34
msgid ""
"The first visit to the provided web interface will initiate the "
"configuration process."
msgstr ""
-#: plinth/modules/i2p/__init__.py:61
+#: plinth/modules/i2p/__init__.py:38
#, fuzzy
#| msgid "Enable application"
msgid "Manage I2P application"
msgstr "Uygulamayı etkinleştir"
-#: plinth/modules/i2p/__init__.py:103
+#: plinth/modules/i2p/__init__.py:64 plinth/modules/i2p/manifest.py:16
+msgid "I2P"
+msgstr "I2P"
+
+#: plinth/modules/i2p/__init__.py:65 plinth/modules/tor/__init__.py:56
+msgid "Anonymity Network"
+msgstr "Anonimlik Ağı"
+
+#: plinth/modules/i2p/__init__.py:87
#, fuzzy
#| msgid "Web Proxy"
msgid "I2P Proxy"
msgstr "Ağ Vekil Sunucusu"
-#: plinth/modules/i2p/templates/i2p_service.html:31
-#: plinth/templates/clients.html:43
+#: plinth/modules/i2p/templates/i2p_service.html:16
+#: plinth/templates/clients.html:28
msgid "Launch"
msgstr "Başlat"
-#: plinth/modules/i2p/views.py:34
+#: plinth/modules/i2p/views.py:19
msgid "Proxies"
msgstr ""
-#: plinth/modules/i2p/views.py:37
+#: plinth/modules/i2p/views.py:22
msgid "Anonymous torrents"
msgstr "Anonim torrentler"
-#: plinth/modules/i2p/views.py:88
+#: plinth/modules/i2p/views.py:64
msgid "I2P Proxies and Tunnels"
msgstr ""
-#: plinth/modules/i2p/views.py:91
+#: plinth/modules/i2p/views.py:67
msgid ""
"I2P lets you browse the Internet and hidden services (eepsites) anonymously. "
"For this, your browser, preferably a Tor Browser, needs to be configured for "
"a proxy."
msgstr ""
-#: plinth/modules/i2p/views.py:94
+#: plinth/modules/i2p/views.py:70
msgid ""
"By default HTTP, HTTPS and IRC proxies are available. Additional proxies and "
"tunnels may be configured using the tunnel configuration interface."
msgstr ""
-#: plinth/modules/i2p/views.py:103
+#: plinth/modules/i2p/views.py:79
msgid "Anonymous Torrents"
msgstr ""
-#: plinth/modules/i2p/views.py:106
+#: plinth/modules/i2p/views.py:82
msgid ""
"I2P provides an application to download files anonymously in a peer-to-peer "
"network. Download files by adding torrents or create a new torrent to share "
"a file."
msgstr ""
-#: plinth/modules/ikiwiki/__init__.py:41 plinth/modules/ikiwiki/manifest.py:24
-msgid "ikiwiki"
-msgstr "ikiwiki"
-
-#: plinth/modules/ikiwiki/__init__.py:45
-msgid "Wiki and Blog"
-msgstr "Viki ve Blog"
-
-#: plinth/modules/ikiwiki/__init__.py:48
+#: plinth/modules/ikiwiki/__init__.py:27
#, fuzzy
#| msgid ""
#| "ikiwiki is a simple wiki and blog application. It supports several "
@@ -2266,7 +2295,7 @@ msgstr ""
"bloglar ve vikiler (oluşturulduklarında) /ikiwiki "
"adresinde erişilebilir olacaklardır."
-#: plinth/modules/ikiwiki/__init__.py:52
+#: plinth/modules/ikiwiki/__init__.py:31
#, fuzzy, python-brace-format
#| msgid ""
#| "Only {box_name} users in the admin group can create and "
@@ -2285,54 +2314,56 @@ msgstr ""
"href=\"/plinth/sys/users\">Kullanıcı Yapılandırması bölümünde bu "
"izinleri değiştirebilir ya da yeni kullanıcı ekleyebilirsiniz."
-#: plinth/modules/ikiwiki/__init__.py:62
+#: plinth/modules/ikiwiki/__init__.py:39
msgid "View and edit wiki applications"
msgstr "Viki uygulamalarını görüntüle ve düzenle"
-#: plinth/modules/ikiwiki/forms.py:27
-#: plinth/modules/networks/templates/connection_show.html:98
-#: plinth/modules/storage/templates/storage.html:43
-msgid "Type"
-msgstr "Tür"
+#: plinth/modules/ikiwiki/__init__.py:53 plinth/modules/ikiwiki/manifest.py:9
+msgid "ikiwiki"
+msgstr "ikiwiki"
-#: plinth/modules/ikiwiki/forms.py:32
+#: plinth/modules/ikiwiki/__init__.py:54
+msgid "Wiki and Blog"
+msgstr "Viki ve Blog"
+
+#: plinth/modules/ikiwiki/forms.py:17
msgid "Admin Account Name"
msgstr "Yönetici Hesap İsmi"
-#: plinth/modules/ikiwiki/forms.py:34
+#: plinth/modules/ikiwiki/forms.py:19
msgid "Admin Account Password"
msgstr "Yönetici Hesap Parolası"
-#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:27
+#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:12
msgid "Manage Wikis and Blogs"
msgstr "Viki ve Blogları Yönet"
-#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:31
-#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:33
-#: plinth/modules/ikiwiki/templates/ikiwiki_create.html:25
+#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:16
+#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:18
+#: plinth/modules/ikiwiki/templates/ikiwiki_create.html:10
msgid "Create Wiki or Blog"
msgstr "Viki ya da Blog oluştur"
-#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:40
+#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:25
msgid "No wikis or blogs available."
msgstr "Hiçbir viki ya da blog mevcut değil."
-#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:48
+#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:33
#, python-format
msgid "Delete site %(site)s"
msgstr "%(site)s sitesini sil"
-#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:55
+#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:40
#, python-format
msgid "Go to site %(site)s"
msgstr "%(site)s sitesine git"
-#: plinth/modules/ikiwiki/templates/ikiwiki_delete.html:27
+#: plinth/modules/ikiwiki/templates/ikiwiki_delete.html:12
#, python-format
msgid "Delete Wiki or Blog %(name)s"
msgstr "%(name)s isimli Viki ya da Blogu sil"
-#: plinth/modules/ikiwiki/templates/ikiwiki_delete.html:33
+#: plinth/modules/ikiwiki/templates/ikiwiki_delete.html:18
msgid ""
"This action will remove all the posts, pages and comments including revision "
"history. Delete this wiki or blog permanently?"
@@ -2341,53 +2372,45 @@ msgstr ""
"yorumları silecektir. Bu viki ya da blogu daimi olarak silmek istiyor "
"musunuz?"
-#: plinth/modules/ikiwiki/views.py:96
+#: plinth/modules/ikiwiki/views.py:73
#, python-brace-format
msgid "Created wiki {name}."
msgstr "{name} isimli viki oluşturuldu."
-#: plinth/modules/ikiwiki/views.py:99
+#: plinth/modules/ikiwiki/views.py:76
#, python-brace-format
msgid "Could not create wiki: {error}"
msgstr "Viki oluşturulamadı: {error}"
-#: plinth/modules/ikiwiki/views.py:109
+#: plinth/modules/ikiwiki/views.py:86
#, python-brace-format
msgid "Created blog {name}."
msgstr "{name} isimli blog oluşturuldu."
-#: plinth/modules/ikiwiki/views.py:112
+#: plinth/modules/ikiwiki/views.py:89
#, python-brace-format
msgid "Could not create blog: {error}"
msgstr "Blog oluşturulamadı: {error}"
-#: plinth/modules/ikiwiki/views.py:127
+#: plinth/modules/ikiwiki/views.py:104
#, fuzzy, python-brace-format
#| msgid "{name} deleted."
msgid "{title} deleted."
msgstr "{name} silindi."
-#: plinth/modules/ikiwiki/views.py:131
+#: plinth/modules/ikiwiki/views.py:108
#, fuzzy, python-brace-format
#| msgid "Could not delete {name}: {error}"
msgid "Could not delete {title}: {error}"
msgstr "{name} silinemedi: {error}"
-#: plinth/modules/infinoted/__init__.py:42
-msgid "infinoted"
-msgstr "infinoted"
-
-#: plinth/modules/infinoted/__init__.py:46
-msgid "Gobby Server"
-msgstr "Gobby Sunucusu"
-
-#: plinth/modules/infinoted/__init__.py:49
+#: plinth/modules/infinoted/__init__.py:26
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:51
+#: plinth/modules/infinoted/__init__.py:28
#, python-brace-format
msgid ""
"To use it, download Gobby, desktop "
@@ -2398,15 +2421,23 @@ msgstr ""
"istemcisini indirip kurun. Ardından Gobby'yi başlatın, \"Sunucuya Bağlan"
"\" seçeneğini seçin ve {box_name} kutunuzun alan adını girin."
-#: plinth/modules/infinoted/manifest.py:27
+#: plinth/modules/infinoted/__init__.py:48
+msgid "infinoted"
+msgstr "infinoted"
+
+#: plinth/modules/infinoted/__init__.py:49
+msgid "Gobby Server"
+msgstr "Gobby Sunucusu"
+
+#: plinth/modules/infinoted/manifest.py:12
msgid "Gobby"
msgstr "Gobby"
-#: plinth/modules/infinoted/manifest.py:29
+#: plinth/modules/infinoted/manifest.py:14
msgid "Gobby is a collaborative text editor"
msgstr "Gobby, işbirliğine imkân sağlayan bir metin düzenleyicisidir"
-#: plinth/modules/infinoted/manifest.py:32
+#: plinth/modules/infinoted/manifest.py:17
#, python-brace-format
msgid ""
"Start Gobby and select \"Connect to Server\" and enter your {box_name}'s "
@@ -2415,15 +2446,7 @@ msgstr ""
"Gobby'yi başlatın, \"Sunucuya Bağlan\" seçeneğini seçin ve {box_name} "
"kutunuzun alan adını girin."
-#: plinth/modules/jsxc/__init__.py:36 plinth/modules/jsxc/manifest.py:25
-msgid "JSXC"
-msgstr "JSXC"
-
-#: plinth/modules/jsxc/__init__.py:40
-msgid "Chat Client"
-msgstr "Sohbet İstemcisi"
-
-#: plinth/modules/jsxc/__init__.py:43
+#: plinth/modules/jsxc/__init__.py:22
msgid ""
"JSXC is a web client for XMPP. Typically it is used with an XMPP server "
"running locally."
@@ -2431,20 +2454,20 @@ msgstr ""
"JSXC, XMPP için bir web istemcisidir. Tipik olarak yerel şekilde çalışan bir "
"XMPP sunucusuyla kullanılır."
-#: plinth/modules/jsxc/templates/jsxc_launch.html:140
-#: plinth/templates/base.html:253
+#: plinth/modules/jsxc/__init__.py:40 plinth/modules/jsxc/manifest.py:10
+msgid "JSXC"
+msgstr "JSXC"
+
+#: plinth/modules/jsxc/__init__.py:41
+msgid "Chat Client"
+msgstr "Sohbet İstemcisi"
+
+#: plinth/modules/jsxc/templates/jsxc_launch.html:125
+#: plinth/templates/base.html:238
msgid "JavaScript license information"
msgstr "JavaScript lisans bilgileri"
-#: plinth/modules/letsencrypt/__init__.py:48
-msgid "Let's Encrypt"
-msgstr "Let's Encrypt"
-
-#: plinth/modules/letsencrypt/__init__.py:50
-msgid "Certificates"
-msgstr "Sertifikalar"
-
-#: plinth/modules/letsencrypt/__init__.py:54
+#: plinth/modules/letsencrypt/__init__.py:35
#, python-brace-format
msgid ""
"A digital certificate allows users of a web service to verify the identity "
@@ -2460,7 +2483,7 @@ msgstr ""
"bir sertifika otoritesi (Certificate Authority, CA) olan Let's Encrypt'e "
"ispatlayarak yapar."
-#: plinth/modules/letsencrypt/__init__.py:60
+#: plinth/modules/letsencrypt/__init__.py:41
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 "
@@ -2473,73 +2496,81 @@ msgstr ""
"letsencrypt.org/repository/\">Let's Encrypt Abone Sözleşmesini okuyup "
"kabul edin."
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:44
+#: plinth/modules/letsencrypt/__init__.py:65
+msgid "Let's Encrypt"
+msgstr "Let's Encrypt"
+
+#: plinth/modules/letsencrypt/__init__.py:66
+msgid "Certificates"
+msgstr "Sertifikalar"
+
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:29
msgid "Domain"
msgstr "Alan"
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:45
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:30
msgid "Certificate Status"
msgstr "Sertifika Durumu"
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:46
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:31
msgid "Website Security"
msgstr "Site Güvenliği"
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:47
-#: plinth/modules/storage/templates/storage.html:45
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:32
+#: plinth/modules/storage/templates/storage.html:30
msgid "Actions"
msgstr "Eylemler"
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:57
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:42
#, 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:64
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:49
msgid "Revoked"
msgstr "İptal edilmiş"
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:68
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:53
#, python-format
msgid "Expired on %(expiry_date)s"
msgstr "%(expiry_date)s tarihinde süresi dolmuş"
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:72
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:57
msgid "Invalid test certificate"
msgstr "Geçersiz test sertifikası"
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:76
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:61
#, python-format
msgid "Invalid (%(reason)s)"
msgstr "Geçersiz %(reason)s"
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:83
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:68
msgid "No certificate"
msgstr "Sertifika yok"
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:100
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:85
msgid "Re-obtain"
msgstr "Tekrar edin"
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:106
-#: plinth/modules/networks/templates/connection_show.html:63
-#: plinth/modules/samba/templates/samba.html:142
-#: plinth/modules/wireguard/templates/wireguard_delete_client.html:39
-#: plinth/modules/wireguard/templates/wireguard_delete_server.html:48
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:88
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:89
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:91
+#: plinth/modules/networks/templates/connection_show.html:48
+#: plinth/modules/samba/templates/samba.html:127
+#: plinth/modules/wireguard/templates/wireguard_delete_client.html:24
+#: plinth/modules/wireguard/templates/wireguard_delete_server.html:33
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:73
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:74
msgid "Delete"
msgstr "Sil"
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:113
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:98
msgid "Revoke"
msgstr "İptal et"
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:121
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:106
msgid "Obtain"
msgstr "Edin"
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:132
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:117
#, fuzzy, python-format
#| msgid ""
#| "No domains have been configured. Configure domains to be able to obtain "
@@ -2551,7 +2582,7 @@ msgstr ""
"Hiçbir alan yapılandırılmamış. Onlardan sertifika edinmek için alan "
"yapılandırın."
-#: plinth/modules/letsencrypt/views.py:58
+#: plinth/modules/letsencrypt/views.py:41
#, python-brace-format
msgid ""
"Certificate successfully revoked for domain {domain}.This may take a few "
@@ -2560,39 +2591,35 @@ 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:64
+#: plinth/modules/letsencrypt/views.py:47
#, 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:60
#: plinth/modules/letsencrypt/views.py:77
-#: plinth/modules/letsencrypt/views.py:94
#, 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:65
#: plinth/modules/letsencrypt/views.py:82
-#: plinth/modules/letsencrypt/views.py:99
#, 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:111
+#: plinth/modules/letsencrypt/views.py:94
#, 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:116
+#: plinth/modules/letsencrypt/views.py:99
#, 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:48
-msgid "Matrix Synapse"
-msgstr "Matrix Synapse"
-
-#: plinth/modules/matrixsynapse/__init__.py:55
+#: plinth/modules/matrixsynapse/__init__.py:34
msgid ""
"Matrix is an new "
"ecosystem for open, federated instant messaging and VoIP. Synapse is a "
@@ -2609,7 +2636,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:62
+#: plinth/modules/matrixsynapse/__init__.py:41
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:29
+#: plinth/modules/matrixsynapse/__init__.py:66
+msgid "Matrix Synapse"
+msgstr "Matrix Synapse"
+
+#: plinth/modules/matrixsynapse/forms.py:14
msgid "Enable Public Registration"
msgstr "Herkese Açık Kaydı Etkinleştir"
-#: plinth/modules/matrixsynapse/forms.py:30
+#: plinth/modules/matrixsynapse/forms.py:15
msgid ""
"Enabling public registration means that anyone on the Internet can register "
"a new account on your Matrix server. Disable this if you only want existing "
@@ -2633,11 +2664,11 @@ msgstr ""
"birinin yeni bir hesap açabileceği anlamına gelir. Sadece mevcut "
"kullanıcıların kullanabilmesini istiyorsanız bunu devre dışı bırakın."
-#: plinth/modules/matrixsynapse/manifest.py:28
+#: plinth/modules/matrixsynapse/manifest.py:13
msgid "Riot"
msgstr "Riot"
-#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:33
+#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:18
msgid ""
"Matrix service needs to be configured for a domain. Users on other Matrix "
"servers will be able to reach users on this server using this domain name. "
@@ -2648,7 +2679,7 @@ msgstr ""
"alan adını kullanacaklardır. Matrix kullanıcı kimlikleri @kullanıcıismi:"
"alanismi şeklinde olacaktır."
-#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:41
+#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:26
msgid ""
"\n"
" Warning! Changing the domain name after the initial\n"
@@ -2661,7 +2692,7 @@ msgstr ""
" olarak desteklenmemektedir.\n"
" "
-#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:50
+#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:35
#, python-format
msgid ""
"No domain(s) are available. Configure at "
@@ -2670,7 +2701,7 @@ msgstr ""
"Hiçbir alan mevcut değildir. En az bir alan yapılandırın ki Matrix Synapse kullanılabilsin."
-#: plinth/modules/matrixsynapse/templates/matrix-synapse.html:29
+#: plinth/modules/matrixsynapse/templates/matrix-synapse.html:14
#, python-format
msgid ""
"The Matrix server domain is set to %(domain_name)s. User IDs will "
@@ -2681,13 +2712,13 @@ msgstr ""
"kimlikleri @kullanıcıismi:%(domain_name)s şeklinde olacaktır. Alan "
"adını ilk yapılandırmadan sonra değiştirmek şimdilik desteklenmemektedir."
-#: plinth/modules/matrixsynapse/templates/matrix-synapse.html:36
+#: plinth/modules/matrixsynapse/templates/matrix-synapse.html:21
msgid ""
"New users can be registered from any client if public registration is "
"enabled."
msgstr ""
-#: plinth/modules/matrixsynapse/templates/matrix-synapse.html:45
+#: plinth/modules/matrixsynapse/templates/matrix-synapse.html:30
#, python-format
msgid ""
"The configured domain name is using a self-signed certificate. Federation "
@@ -2695,24 +2726,15 @@ msgid ""
"go to Let's Encrypt to obtain one."
msgstr ""
-#: plinth/modules/matrixsynapse/views.py:121
+#: plinth/modules/matrixsynapse/views.py:98
msgid "Public registration enabled"
msgstr "Herkese açık kayıt etkinleştirildi"
-#: plinth/modules/matrixsynapse/views.py:126
+#: plinth/modules/matrixsynapse/views.py:103
msgid "Public registration disabled"
msgstr "Herkese açık kayıt devre dışı bırakıldı"
-#: plinth/modules/mediawiki/__init__.py:40
-#: plinth/modules/mediawiki/manifest.py:24
-msgid "MediaWiki"
-msgstr "MediaWiki"
-
-#: plinth/modules/mediawiki/__init__.py:44 plinth/templates/index.html:139
-msgid "Wiki"
-msgstr "Viki"
-
-#: plinth/modules/mediawiki/__init__.py:47
+#: plinth/modules/mediawiki/__init__.py:26
msgid ""
"MediaWiki is the wiki engine that powers Wikipedia and other WikiMedia "
"projects. A wiki engine is a program for creating a collaboratively edited "
@@ -2725,7 +2747,7 @@ msgstr ""
"not almak ya da herhangi bir proje için arkadaşlarınızla işbirliği yapmak "
"için kullanabilirsiniz."
-#: plinth/modules/mediawiki/__init__.py:51
+#: plinth/modules/mediawiki/__init__.py:30
#, fuzzy
#| msgid ""
#| "This MediaWiki instance comes with a randomly generated administrator "
@@ -2746,7 +2768,7 @@ msgstr ""
"hesabı oluşturmak için Özel:HesapOluştur sayfasına gidebilirsiniz"
-#: plinth/modules/mediawiki/__init__.py:57
+#: plinth/modules/mediawiki/__init__.py:36
#, fuzzy
#| msgid ""
#| "Anyone with a link to this Wiki can read it. Only users that are logged "
@@ -2758,11 +2780,20 @@ msgstr ""
"Bu viki için bağlantısı olan herkes onu okuyabilir. İçeriğe değişiklikleri "
"sadece oturum açmış olan kullanıcılar yapabilir."
-#: plinth/modules/mediawiki/forms.py:42
+#: plinth/modules/mediawiki/__init__.py:54
+#: plinth/modules/mediawiki/manifest.py:9
+msgid "MediaWiki"
+msgstr "MediaWiki"
+
+#: plinth/modules/mediawiki/__init__.py:55 plinth/templates/index.html:124
+msgid "Wiki"
+msgstr "Viki"
+
+#: plinth/modules/mediawiki/forms.py:27
msgid "Administrator Password"
msgstr "Yönetici Parolası"
-#: plinth/modules/mediawiki/forms.py:43
+#: plinth/modules/mediawiki/forms.py:28
msgid ""
"Set a new password for MediaWiki's administrator account (admin). Leave this "
"field blank to keep the current password."
@@ -2770,86 +2801,77 @@ msgstr ""
"MediaWiki'nin yönetici hesabı (admin) için yeni bir parola ayarlayın. Güncel "
"parolayı muhafaza etmek için bu alanı boş bırakın."
-#: plinth/modules/mediawiki/forms.py:48
+#: plinth/modules/mediawiki/forms.py:33
#, fuzzy
#| msgid "Enable Public Registration"
msgid "Enable public registrations"
msgstr "Herkese Açık Kaydı Etkinleştir"
-#: plinth/modules/mediawiki/forms.py:49
+#: plinth/modules/mediawiki/forms.py:34
msgid ""
"If enabled, anyone on the internet will be able to create an account on your "
"MediaWiki instance."
msgstr ""
-#: plinth/modules/mediawiki/forms.py:53
+#: plinth/modules/mediawiki/forms.py:38
#, fuzzy
#| msgid "Enable creative mode"
msgid "Enable private mode"
msgstr "Yaratıcı kipi etkinleştir"
-#: plinth/modules/mediawiki/forms.py:54
+#: plinth/modules/mediawiki/forms.py:39
msgid ""
"If enabled, access will be restricted. Only people who have accounts can "
"read/write to the wiki. Public registrations will also be disabled."
msgstr ""
-#: plinth/modules/mediawiki/forms.py:59
+#: plinth/modules/mediawiki/forms.py:44
#, fuzzy
#| msgid "Default"
msgid "Default Skin"
msgstr "Varsayılan"
-#: plinth/modules/mediawiki/forms.py:60
+#: plinth/modules/mediawiki/forms.py:45
msgid ""
"Choose a default skin for your MediaWiki installation. Users have the option "
"to select their preferred skin."
msgstr ""
-#: plinth/modules/mediawiki/views.py:74
+#: plinth/modules/mediawiki/views.py:54
msgid "Password updated"
msgstr "Parola güncellendi"
-#: plinth/modules/mediawiki/views.py:93
+#: plinth/modules/mediawiki/views.py:73
#, fuzzy
#| msgid "Public registration enabled"
msgid "Public registrations enabled"
msgstr "Herkese açık kayıt etkinleştirildi"
-#: plinth/modules/mediawiki/views.py:102
+#: plinth/modules/mediawiki/views.py:82
#, fuzzy
#| msgid "Public registration disabled"
msgid "Public registrations disabled"
msgstr "Herkese açık kayıt devre dışı bırakıldı"
-#: plinth/modules/mediawiki/views.py:107
+#: plinth/modules/mediawiki/views.py:87
#, fuzzy
#| msgid "PageKite enabled"
msgid "Private mode enabled"
msgstr "PageKite etkinleştirildi"
-#: plinth/modules/mediawiki/views.py:114
+#: plinth/modules/mediawiki/views.py:94
#, fuzzy
#| msgid "PageKite disabled"
msgid "Private mode disabled"
msgstr "PageKite devre dışı"
-#: plinth/modules/mediawiki/views.py:122
+#: plinth/modules/mediawiki/views.py:102
#, fuzzy
#| msgid "Setting unchanged"
msgid "Default skin changed"
msgstr "Ayar değiştirilmedi"
-#: plinth/modules/minetest/__init__.py:50
-#: plinth/modules/minetest/manifest.py:25
-msgid "Minetest"
-msgstr "Minetest"
-
-#: plinth/modules/minetest/__init__.py:54
-msgid "Block Sandbox"
-msgstr "Blok Kum Havuzu"
-
-#: plinth/modules/minetest/__init__.py:58
+#: plinth/modules/minetest/__init__.py:37
#, python-brace-format
msgid ""
"Minetest is a multiplayer infinite-world block sandbox. This module enables "
@@ -2862,22 +2884,31 @@ msgstr ""
"etkinleştirir. Sunucuya bağlanmak için bir Minetest istemcisi gereklidir."
-#: plinth/modules/minetest/forms.py:30
+#: plinth/modules/minetest/__init__.py:63
+#: plinth/modules/minetest/manifest.py:10
+msgid "Minetest"
+msgstr "Minetest"
+
+#: plinth/modules/minetest/__init__.py:64
+msgid "Block Sandbox"
+msgstr "Blok Kum Havuzu"
+
+#: plinth/modules/minetest/forms.py:15
msgid "Maximum number of players"
msgstr "Azami oyuncu sayısı"
-#: plinth/modules/minetest/forms.py:32
+#: plinth/modules/minetest/forms.py:17
msgid ""
"You can change the maximum number of players playing minetest at a single "
"instance of time."
msgstr ""
"Tek bir vakitte minetest oynayan azami oyuncu sayısını değiştirebilirsiniz."
-#: plinth/modules/minetest/forms.py:36
+#: plinth/modules/minetest/forms.py:21
msgid "Enable creative mode"
msgstr "Yaratıcı kipi etkinleştir"
-#: plinth/modules/minetest/forms.py:37
+#: plinth/modules/minetest/forms.py:22
msgid ""
"Creative mode changes the rules of the game to make it more suitable for "
"creative gameplay, rather than challenging \"survival\" gameplay."
@@ -2885,58 +2916,52 @@ msgstr ""
"Yaratıcı kip, oyunun kurallarını \"hayatta kalma\" oyun stili yerine "
"yaratıcı oyun stiline daha uygun olarak değiştirir."
-#: plinth/modules/minetest/forms.py:42
+#: plinth/modules/minetest/forms.py:27
msgid "Enable PVP"
msgstr "PVP'yi Etkinleştir"
-#: plinth/modules/minetest/forms.py:43
+#: plinth/modules/minetest/forms.py:28
msgid "Enabling Player Vs Player will allow players to damage other players."
msgstr ""
"PVP'yi (oyuncuya karşı oyuncu) etkinleştirmek, oyuncuların diğer oyunculara "
"zarar vermesine izin verecektir."
-#: plinth/modules/minetest/forms.py:47
+#: plinth/modules/minetest/forms.py:32
msgid "Enable damage"
msgstr "Zararı etkinleştir"
-#: plinth/modules/minetest/forms.py:48
+#: plinth/modules/minetest/forms.py:33
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."
-#: plinth/modules/minetest/templates/minetest.html:33
-#: plinth/modules/networks/forms.py:66 plinth/modules/networks/forms.py:97
+#: plinth/modules/minetest/templates/minetest.html:18
+#: plinth/modules/networks/forms.py:49 plinth/modules/networks/forms.py:79
msgid "Address"
msgstr "Adres"
-#: plinth/modules/minetest/templates/minetest.html:34
-#: plinth/modules/tor/templates/tor.html:96
+#: plinth/modules/minetest/templates/minetest.html:19
+#: plinth/modules/tor/templates/tor.html:81
msgid "Port"
msgstr "Port"
-#: plinth/modules/minetest/views.py:70
+#: plinth/modules/minetest/views.py:50
msgid "Maximum players configuration updated"
msgstr "Azami oyuncu sayısı yapılandırması güncellendi"
-#: plinth/modules/minetest/views.py:77
+#: plinth/modules/minetest/views.py:57
msgid "Creative mode configuration updated"
msgstr "Yaratıcı kip kurulumu güncellendi"
-#: plinth/modules/minetest/views.py:83
+#: plinth/modules/minetest/views.py:63
msgid "PVP configuration updated"
msgstr "PVP kurulumu güncellendi"
-#: plinth/modules/minetest/views.py:89
+#: plinth/modules/minetest/views.py:69
msgid "Damage configuration updated"
msgstr "Zarar verme kurulumu güncellendi"
-#: plinth/modules/minidlna/__init__.py:41
-#, fuzzy
-#| msgid "Mumble Voice Chat Server"
-msgid "Simple Media Server"
-msgstr "Mumble Ses ile Sohbet Sunucusu"
-
-#: plinth/modules/minidlna/__init__.py:44
+#: plinth/modules/minidlna/__init__.py:23
msgid ""
"MiniDLNA is a simple media server software, with the aim of being fully "
"compliant with DLNA/UPnP-AV clients. The MiniDNLA daemon serves media files "
@@ -2947,15 +2972,21 @@ msgid ""
"Kodi."
msgstr ""
-#: plinth/modules/minidlna/__init__.py:56
+#: plinth/modules/minidlna/__init__.py:33
msgid "Media streaming server"
msgstr ""
-#: plinth/modules/minidlna/forms.py:30
+#: plinth/modules/minidlna/__init__.py:47
+#, fuzzy
+#| msgid "Mumble Voice Chat Server"
+msgid "Simple Media Server"
+msgstr "Mumble Ses ile Sohbet Sunucusu"
+
+#: plinth/modules/minidlna/forms.py:15
msgid "Media Files Directory"
msgstr ""
-#: plinth/modules/minidlna/forms.py:31
+#: plinth/modules/minidlna/forms.py:16
msgid ""
"Directory that MiniDLNA Server will read for content. All sub-directories of "
"this will be also scanned for media files. If you change the default ensure "
@@ -2963,87 +2994,82 @@ msgid ""
"user. Any user media directories (\"/home/username/\") will usually work."
msgstr ""
-#: plinth/modules/minidlna/manifest.py:25
+#: plinth/modules/minidlna/manifest.py:10
msgid "vlc"
msgstr ""
-#: plinth/modules/minidlna/manifest.py:64
+#: plinth/modules/minidlna/manifest.py:49
msgid "kodi"
msgstr ""
-#: plinth/modules/minidlna/manifest.py:103
+#: plinth/modules/minidlna/manifest.py:88
msgid "yaacc"
msgstr ""
-#: plinth/modules/minidlna/manifest.py:114
+#: plinth/modules/minidlna/manifest.py:99
msgid "totem"
msgstr ""
-#: plinth/modules/minidlna/views.py:57
+#: plinth/modules/minidlna/views.py:37
msgid "Specified directory does not exist."
msgstr ""
-#: plinth/modules/minidlna/views.py:62
+#: plinth/modules/minidlna/views.py:42
msgid "Updated media directory"
msgstr ""
-#: plinth/modules/mldonkey/__init__.py:40
-#: plinth/modules/mldonkey/manifest.py:27
-#, fuzzy
-#| msgid "Monkeysphere"
-msgid "MLDonkey"
-msgstr "Monkeysphere"
-
-#: plinth/modules/mldonkey/__init__.py:44
-#, fuzzy
-#| msgid "File Synchronization"
-msgid "Peer-to-peer File Sharing"
-msgstr "Dosya eşleşmesi"
-
-#: plinth/modules/mldonkey/__init__.py:47
+#: plinth/modules/mldonkey/__init__.py:26
msgid ""
"MLDonkey is a peer-to-peer file sharing application used to exchange large "
"files. It can participate in multiple peer-to-peer networks including "
"eDonkey, Kademlia, Overnet, BitTorrent and DirectConnect."
msgstr ""
-#: plinth/modules/mldonkey/__init__.py:50
+#: plinth/modules/mldonkey/__init__.py:29
msgid ""
"Users belonging to admin and ed2k group can control it through the web "
"interface. Users in the admin group can also control it through any of the "
"separate mobile or desktop front-ends or a telnet interface. See manual."
msgstr ""
-#: plinth/modules/mldonkey/__init__.py:55
+#: plinth/modules/mldonkey/__init__.py:34
#, python-brace-format
msgid ""
"On {box_name}, downloaded files can be found in /var/lib/mldonkey/ directory."
msgstr ""
-#: plinth/modules/mldonkey/__init__.py:63
+#: plinth/modules/mldonkey/__init__.py:40
#, fuzzy
#| msgid "Download files using BitTorrent applications"
msgid "Download files using eDonkey applications"
msgstr "BitTorrent uygulamaları kullanarak dosya indir"
-#: plinth/modules/mldonkey/manifest.py:34
+#: plinth/modules/mldonkey/__init__.py:54
+#: plinth/modules/mldonkey/manifest.py:12
+#, fuzzy
+#| msgid "Monkeysphere"
+msgid "MLDonkey"
+msgstr "Monkeysphere"
+
+#: plinth/modules/mldonkey/__init__.py:56
+#, fuzzy
+#| msgid "File Synchronization"
+msgid "Peer-to-peer File Sharing"
+msgstr "Dosya eşleşmesi"
+
+#: plinth/modules/mldonkey/manifest.py:19
#, fuzzy
#| msgid "Monkeysphere"
msgid "KMLDonkey"
msgstr "Monkeysphere"
-#: plinth/modules/mldonkey/manifest.py:46
+#: plinth/modules/mldonkey/manifest.py:31
#, fuzzy
#| msgid "Monkeysphere"
msgid "AMLDonkey"
msgstr "Monkeysphere"
-#: plinth/modules/monkeysphere/__init__.py:32
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:26
-msgid "Monkeysphere"
-msgstr "Monkeysphere"
-
-#: plinth/modules/monkeysphere/__init__.py:35
+#: plinth/modules/monkeysphere/__init__.py:18
msgid ""
"With Monkeysphere, an OpenPGP key can be generated for each configured "
"domain serving SSH. The OpenPGP public key can then be uploaded to the "
@@ -3063,7 +3089,7 @@ msgstr ""
"gerekir. Daha fazla bilgi için Monkeysphere SSH belgelendirmesine bakınız."
-#: plinth/modules/monkeysphere/__init__.py:43
+#: plinth/modules/monkeysphere/__init__.py:26
msgid ""
"Monkeysphere can also generate an OpenPGP key for each Secure Web Server "
"(HTTPS) certificate installed on this machine. The OpenPGP public key can "
@@ -3081,95 +3107,100 @@ msgstr ""
"Monkeysphere sitesinde"
"a> mevcut olan bazı yazılımları yükleyip kurması gerekecektir."
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:60
+#: plinth/modules/monkeysphere/__init__.py:50
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:11
+msgid "Monkeysphere"
+msgstr "Monkeysphere"
+
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:45
msgid "Publishing key to keyserver..."
msgstr "Anahtar, anahtar sunucusuna yayınlanıyor..."
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:67
-#: plinth/modules/users/templates/users_delete.html:41
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:52
+#: plinth/modules/users/templates/users_delete.html:26
msgid "Cancel"
msgstr "İptal"
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:75
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:55
-#: plinth/modules/tor/templates/tor.html:95
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:60
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:40
+#: plinth/modules/tor/templates/tor.html:80
msgid "Service"
msgstr "Servis"
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:76
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:61
msgid "Domains"
msgstr "Alan"
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:77
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:31
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:62
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:16
msgid "OpenPGP Fingerprint"
msgstr "OpenPGP Parmak izi"
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:86
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:58
-#: plinth/modules/names/components.py:39
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:71
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:43
+#: plinth/modules/names/components.py:24
msgid "Secure Shell"
msgstr "Güvenli Kabuk"
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:90
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:62
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:75
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:47
msgid "Other"
msgstr "Diğer"
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:127
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:112
#, python-format
msgid "Show details for key %(fingerprint)s"
msgstr "%(fingerprint)s anahtarı için detayları göster"
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:133
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:118
msgid "-"
msgstr "-"
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:143
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:128
msgid "Import Key"
msgstr "Anahtarı İçe Aktar"
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:152
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:137
msgid "Publish Key"
msgstr "Anahtarı Yayınla"
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:161
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:146
msgid "Add Domains"
msgstr "Alan Ekle"
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:35
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:20
msgid "OpenPGP User IDs"
msgstr "OpenPGP Kullanıcı Kimlikleri"
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:39
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:24
msgid "Key Import Date"
msgstr "Anahtar İçe Aktarma Tarihi"
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:43
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:28
msgid "SSH Key Type"
msgstr "SSH Anahtar Türü"
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:47
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:32
msgid "SSH Key Size"
msgstr "SSH Anahtar Boyutu"
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:51
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:36
msgid "SSH Fingerprint"
msgstr "SSH Parmak izi"
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:67
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:52
msgid "Key File"
msgstr "Anahtar Dosyası"
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:71
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:56
msgid "Available Domains"
msgstr "Mevcut Alanlar"
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:75
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:60
msgid "Added Domains"
msgstr "Eklenen Alanlar"
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:82
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:67
msgid ""
"After this key is published to the keyservers, it can be signed using GnuPG with the following commands:"
@@ -3178,43 +3209,35 @@ msgstr ""
"komutlarla GnuPG kullanılarak "
"imzalanması mümkündür:"
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:88
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:73
msgid "Download the key"
msgstr "Anahtarı indir"
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:91
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:76
msgid "Sign the key"
msgstr "Anahtarı imzala"
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:94
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:79
msgid "Send the key back to the keyservers"
msgstr "Anahtarı anahtar sunucularına geri gönder"
-#: plinth/modules/monkeysphere/views.py:60
+#: plinth/modules/monkeysphere/views.py:43
msgid "Imported key."
msgstr "Anahtar içe aktarıldı."
-#: plinth/modules/monkeysphere/views.py:96
+#: plinth/modules/monkeysphere/views.py:79
msgid "Cancelled key publishing."
msgstr "Anahtar yayını iptal edildi."
-#: plinth/modules/monkeysphere/views.py:147
+#: plinth/modules/monkeysphere/views.py:130
msgid "Published key to keyserver."
msgstr "Anahtar, anahtar sunucusuna yayınlandı."
-#: plinth/modules/monkeysphere/views.py:149
+#: plinth/modules/monkeysphere/views.py:132
msgid "Error occurred while publishing key."
msgstr "Anahtarın yayınlanmasında bir hata meydana geldi."
-#: plinth/modules/mumble/__init__.py:33 plinth/modules/mumble/manifest.py:27
-msgid "Mumble"
-msgstr "Mumble"
-
-#: plinth/modules/mumble/__init__.py:37
-msgid "Voice Chat"
-msgstr "Ses ile Sohbet"
-
-#: plinth/modules/mumble/__init__.py:44
+#: plinth/modules/mumble/__init__.py:23
msgid ""
"Mumble is an open source, low-latency, encrypted, high quality voice chat "
"software."
@@ -3222,7 +3245,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:46
+#: plinth/modules/mumble/__init__.py:25
msgid ""
"You can connect to your Mumble server on the regular Mumble port 64738. Clients to connect to Mumble from your "
@@ -3232,37 +3255,41 @@ msgstr ""
"bağlanabilirsiniz. Mumble'a masaüstünden ya da Android cihazlarından "
"bağlanmak için istemciler mevcuttur."
-#: plinth/modules/mumble/forms.py:31
+#: plinth/modules/mumble/__init__.py:49 plinth/modules/mumble/manifest.py:12
+msgid "Mumble"
+msgstr "Mumble"
+
+#: plinth/modules/mumble/__init__.py:50
+msgid "Voice Chat"
+msgstr "Ses ile Sohbet"
+
+#: plinth/modules/mumble/forms.py:16
#, fuzzy
#| msgid "SSH server password"
msgid "Set SuperUser Password"
msgstr "SSH sunucu parolası"
-#: plinth/modules/mumble/forms.py:34
+#: plinth/modules/mumble/forms.py:19
msgid ""
"Optional. Leave this field blank to keep the current password. SuperUser "
"password can be used to manage permissions in Mumble."
msgstr ""
-#: plinth/modules/mumble/manifest.py:52
+#: plinth/modules/mumble/manifest.py:37
msgid "Plumble"
msgstr "Plumble"
-#: plinth/modules/mumble/manifest.py:66
+#: plinth/modules/mumble/manifest.py:51
msgid "Mumblefly"
msgstr "Mumblefly"
-#: plinth/modules/mumble/views.py:50
+#: plinth/modules/mumble/views.py:29
#, fuzzy
#| msgid "Password changed successfully."
msgid "SuperUser password successfully updated."
msgstr "Parola başarılı bir şekilde değiştirildi."
-#: plinth/modules/names/__init__.py:37
-msgid "Name Services"
-msgstr "İsim Servisleri"
-
-#: plinth/modules/names/__init__.py:45
+#: plinth/modules/names/__init__.py:26
#, python-brace-format
msgid ""
"Name Services provides an overview of the ways {box_name} can be reached "
@@ -3271,58 +3298,62 @@ msgid ""
"enabled or disabled for incoming connections through the given name."
msgstr ""
-#: plinth/modules/names/components.py:27
+#: plinth/modules/names/__init__.py:46
+msgid "Name Services"
+msgstr "İsim Servisleri"
+
+#: plinth/modules/names/components.py:12
msgid "All"
msgstr ""
-#: plinth/modules/names/components.py:31 plinth/modules/names/components.py:35
+#: plinth/modules/names/components.py:16 plinth/modules/names/components.py:20
msgid "All web apps"
msgstr ""
-#: plinth/modules/networks/__init__.py:42
-msgid "Networks"
-msgstr "Ağlar"
-
-#: plinth/modules/networks/__init__.py:45
+#: plinth/modules/networks/__init__.py:35
msgid ""
"Configure network devices. Connect to the Internet via Ethernet, Wi-Fi or "
"PPPoE. Share that connection with other devices on the network."
msgstr ""
-#: plinth/modules/networks/__init__.py:47
+#: plinth/modules/networks/__init__.py:37
msgid ""
"Devices administered through other methods may not be available for "
"configuration here."
msgstr ""
-#: plinth/modules/networks/__init__.py:156
+#: plinth/modules/networks/__init__.py:58
+msgid "Networks"
+msgstr "Ağlar"
+
+#: plinth/modules/networks/__init__.py:151
#, python-brace-format
msgid "Using DNSSEC on IPv{kind}"
msgstr "IPv{kind} üzerinde DNSSEC kullanılıyor"
-#: plinth/modules/networks/forms.py:32
+#: plinth/modules/networks/forms.py:16
msgid "Connection Type"
msgstr "Bağlantı Türü"
-#: plinth/modules/networks/forms.py:44
+#: plinth/modules/networks/forms.py:28
msgid "Connection Name"
msgstr "Bağlantı İsmi"
-#: plinth/modules/networks/forms.py:46
+#: plinth/modules/networks/forms.py:30
#, fuzzy
#| msgid "Interface"
msgid "Network Interface"
msgstr "Arayüz"
-#: plinth/modules/networks/forms.py:47
+#: plinth/modules/networks/forms.py:31
msgid "The network device that this connection should be bound to."
msgstr "Bu bağlantının bağlanacağı ağ cihazı."
-#: plinth/modules/networks/forms.py:50
+#: plinth/modules/networks/forms.py:34
msgid "Firewall Zone"
msgstr "Güvenlik Duvarı Alanı"
-#: plinth/modules/networks/forms.py:51
+#: plinth/modules/networks/forms.py:35
msgid ""
"The firewall zone will control which services are available over this "
"interfaces. Select Internal only for trusted networks."
@@ -3330,21 +3361,21 @@ msgstr ""
"Güvenlik duvarı alanı bu arayüzlerde hangi servislerin mevcut olacağını "
"kontrol eder. Dahiliyi sadece güvenilir şebekeler için seçin."
-#: plinth/modules/networks/forms.py:54
-#: plinth/modules/networks/templates/connections_diagram.html:78
+#: plinth/modules/networks/forms.py:38
+#: plinth/modules/networks/templates/connections_diagram.html:63
msgid "External"
msgstr "Harici"
-#: plinth/modules/networks/forms.py:54
-#: plinth/modules/networks/templates/connections_diagram.html:107
+#: plinth/modules/networks/forms.py:38
+#: plinth/modules/networks/templates/connections_diagram.html:92
msgid "Internal"
msgstr "Dahili"
-#: plinth/modules/networks/forms.py:56
+#: plinth/modules/networks/forms.py:40
msgid "IPv4 Addressing Method"
msgstr "IPv4 Adresleme Metodu"
-#: plinth/modules/networks/forms.py:58
+#: plinth/modules/networks/forms.py:41
#, python-brace-format
msgid ""
"\"Automatic\" method will make {box_name} acquire configuration from this "
@@ -3356,19 +3387,19 @@ msgstr ""
"kutusunun bir yönlendirici olarak iş görmesini, bu ağdaki istemcileri "
"yapılandırmasını ve İnternet bağlantısını paylaşmasını sağlayacaktır."
-#: plinth/modules/networks/forms.py:63
+#: plinth/modules/networks/forms.py:46
msgid "Automatic (DHCP)"
msgstr "Otomatik (DHCP)"
-#: plinth/modules/networks/forms.py:63
+#: plinth/modules/networks/forms.py:46
msgid "Shared"
msgstr "Paylaşılan"
-#: plinth/modules/networks/forms.py:69
+#: plinth/modules/networks/forms.py:52
msgid "Netmask"
msgstr "Ağ Maskesi"
-#: plinth/modules/networks/forms.py:70
+#: plinth/modules/networks/forms.py:53
msgid ""
"Optional value. If left blank, a default netmask based on the address will "
"be used."
@@ -3376,21 +3407,21 @@ msgstr ""
"Seçime dayalı değer. Boş bırakılırsa adrese dayalı varsayılan bir ağ maskesi "
"kullanılacaktır."
-#: plinth/modules/networks/forms.py:74 plinth/modules/networks/forms.py:104
-#: plinth/modules/networks/templates/connection_show.html:202
-#: plinth/modules/networks/templates/connection_show.html:241
+#: plinth/modules/networks/forms.py:57 plinth/modules/networks/forms.py:86
+#: plinth/modules/networks/templates/connection_show.html:187
+#: plinth/modules/networks/templates/connection_show.html:226
msgid "Gateway"
msgstr "Geçit"
-#: plinth/modules/networks/forms.py:74 plinth/modules/networks/forms.py:104
+#: plinth/modules/networks/forms.py:57 plinth/modules/networks/forms.py:86
msgid "Optional value."
msgstr "Seçime dayalı değer."
-#: plinth/modules/networks/forms.py:77 plinth/modules/networks/forms.py:107
+#: plinth/modules/networks/forms.py:60 plinth/modules/networks/forms.py:89
msgid "DNS Server"
msgstr "DNS Sunucusu"
-#: plinth/modules/networks/forms.py:78
+#: plinth/modules/networks/forms.py:61
msgid ""
"Optional value. If this value is given and IPv4 addressing method is "
"\"Automatic\", the DNS Servers provided by a DHCP server will be ignored."
@@ -3399,11 +3430,11 @@ msgstr ""
"\"Otomatik\" ise, DHCP sunucusu tarafından sunulan DNS sunucuları görmezden "
"gelinecektir."
-#: plinth/modules/networks/forms.py:83 plinth/modules/networks/forms.py:113
+#: plinth/modules/networks/forms.py:66 plinth/modules/networks/forms.py:95
msgid "Second DNS Server"
msgstr "İkinci DNS Sunucusu"
-#: plinth/modules/networks/forms.py:84
+#: plinth/modules/networks/forms.py:67
msgid ""
"Optional value. If this value is given and IPv4 Addressing Method is "
"\"Automatic\", the DNS Servers provided by a DHCP server will be ignored."
@@ -3412,11 +3443,11 @@ msgstr ""
"\"Otomatik\" ise, DHCP sunucusu tarafından sunulan DNS sunucuları görmezden "
"gelinecektir."
-#: plinth/modules/networks/forms.py:89
+#: plinth/modules/networks/forms.py:72
msgid "IPv6 Addressing Method"
msgstr "IPv6 Adresleme Metodu"
-#: plinth/modules/networks/forms.py:91
+#: plinth/modules/networks/forms.py:73
#, python-brace-format
msgid ""
"\"Automatic\" methods will make {box_name} acquire configuration from this "
@@ -3425,27 +3456,27 @@ msgstr ""
"\"Otomatik\" metodları {box_name} kutusunun yapılandırmasını bu ağdan "
"almasını sağlayacak ve onu bir istemci yapacaktır."
-#: plinth/modules/networks/forms.py:94 plinth/modules/networks/forms.py:259
+#: plinth/modules/networks/forms.py:76 plinth/modules/networks/forms.py:241
msgid "Automatic"
msgstr "Otomatik"
-#: plinth/modules/networks/forms.py:94
+#: plinth/modules/networks/forms.py:76
msgid "Automatic, DHCP only"
msgstr "Otomatik, sadece DHCP"
-#: plinth/modules/networks/forms.py:95
+#: plinth/modules/networks/forms.py:77
msgid "Ignore"
msgstr "Yok say"
-#: plinth/modules/networks/forms.py:99
+#: plinth/modules/networks/forms.py:81
msgid "Prefix"
msgstr "Önek"
-#: plinth/modules/networks/forms.py:100
+#: plinth/modules/networks/forms.py:82
msgid "Value between 1 and 128."
msgstr "1 ilâ 128 arasında bir değer."
-#: plinth/modules/networks/forms.py:108
+#: plinth/modules/networks/forms.py:90
msgid ""
"Optional value. If this value is given and IPv6 addressing method is "
"\"Automatic\", the DNS Servers provided by a DHCP server will be ignored."
@@ -3454,7 +3485,7 @@ msgstr ""
"\"Otomatik\" ise, DHCP sunucusu tarafından sunulan DNS sunucuları görmezden "
"gelinecektir."
-#: plinth/modules/networks/forms.py:114
+#: plinth/modules/networks/forms.py:96
msgid ""
"Optional value. If this value is given and IPv6 Addressing Method is "
"\"Automatic\", the DNS Servers provided by a DHCP server will be ignored."
@@ -3463,54 +3494,54 @@ msgstr ""
"\"Otomatik\" ise, DHCP sunucusu tarafından sunulan DNS sunucuları görmezden "
"gelinecektir."
-#: plinth/modules/networks/forms.py:127
+#: plinth/modules/networks/forms.py:109
msgid "-- select --"
msgstr "-- seç --"
-#: plinth/modules/networks/forms.py:252
-#: plinth/modules/networks/templates/connection_show.html:144
+#: plinth/modules/networks/forms.py:234
+#: plinth/modules/networks/templates/connection_show.html:129
msgid "SSID"
msgstr "SSID"
-#: plinth/modules/networks/forms.py:253
+#: plinth/modules/networks/forms.py:235
msgid "The visible name of the network."
msgstr "Şebekenin görünür ismi."
-#: plinth/modules/networks/forms.py:255
-#: plinth/modules/networks/templates/connection_show.html:157
+#: plinth/modules/networks/forms.py:237
+#: plinth/modules/networks/templates/connection_show.html:142
msgid "Mode"
msgstr "Kip"
-#: plinth/modules/networks/forms.py:255
+#: plinth/modules/networks/forms.py:237
msgid "Infrastructure"
msgstr "Altyapı"
-#: plinth/modules/networks/forms.py:256
+#: plinth/modules/networks/forms.py:238
msgid "Access Point"
msgstr "Erişim Noktası"
-#: plinth/modules/networks/forms.py:257
+#: plinth/modules/networks/forms.py:239
msgid "Ad-hoc"
msgstr "Geçici"
-#: plinth/modules/networks/forms.py:259
+#: plinth/modules/networks/forms.py:241
msgid "Frequency Band"
msgstr "Frekans Bandı"
-#: plinth/modules/networks/forms.py:260
+#: plinth/modules/networks/forms.py:242
msgid "A (5 GHz)"
msgstr "A (5 GHz)"
-#: plinth/modules/networks/forms.py:261
+#: plinth/modules/networks/forms.py:243
msgid "B/G (2.4 GHz)"
msgstr "B/G (2,4 GHz)"
-#: plinth/modules/networks/forms.py:263
-#: plinth/modules/networks/templates/connection_show.html:173
+#: plinth/modules/networks/forms.py:245
+#: plinth/modules/networks/templates/connection_show.html:158
msgid "Channel"
msgstr "Kanal"
-#: plinth/modules/networks/forms.py:264
+#: plinth/modules/networks/forms.py:246
msgid ""
"Optional value. Wireless channel in the selected frequency band to restrict "
"to. Blank or 0 value means automatic selection."
@@ -3518,11 +3549,11 @@ msgstr ""
"Seçime dayalı değer. Seçili frekans bandına sınırlanacak kablosuz kanal. Boş "
"ya da 0 değeri otomatik seçim anlamına gelir."
-#: plinth/modules/networks/forms.py:269
+#: plinth/modules/networks/forms.py:251
msgid "BSSID"
msgstr "BSSID"
-#: plinth/modules/networks/forms.py:270
+#: plinth/modules/networks/forms.py:252
msgid ""
"Optional value. Unique identifier for the access point. When connecting to "
"an access point, connect only if the BSSID of the access point matches the "
@@ -3532,11 +3563,11 @@ msgstr ""
"noktasına bağlantı kurulduğunda, sadece erişim noktasının BSSID'si "
"sağlananla eşleşiyorsa bağlanın. Örnek: 00:11:22:aa:bb:cc."
-#: plinth/modules/networks/forms.py:276
+#: plinth/modules/networks/forms.py:258
msgid "Authentication Mode"
msgstr "Kimlik Doğrulama Kipi"
-#: plinth/modules/networks/forms.py:277
+#: plinth/modules/networks/forms.py:259
msgid ""
"Select WPA if the wireless network is secured and requires clients to have "
"the password to connect."
@@ -3544,34 +3575,74 @@ msgstr ""
"Eğer kablosuz ağ güvenli ise ve istemcilerin bağlantı için parolaları "
"olmasını gerektiriyorsa WPA'yi seçin."
-#: plinth/modules/networks/forms.py:279
+#: plinth/modules/networks/forms.py:261
msgid "WPA"
msgstr "WPA"
-#: plinth/modules/networks/forms.py:279
+#: plinth/modules/networks/forms.py:261
msgid "Open"
msgstr "Açık"
+#: plinth/modules/networks/forms.py:297
+msgid "Choose your internet connection type"
+msgstr ""
+
+#: plinth/modules/networks/forms.py:301
+msgid ""
+"I have a public IP address that may change over timeThis means that devices on the Internet can reach you when you are "
+"connected to the Internet. Every time you connect to the Internet with your "
+"Internet Service Provider (ISP), you may get a different IP address, "
+"especially after some offline time. Many ISPs offer this type of "
+"connectivity. If you have a public IP address but are unsure if it changes "
+"over time or not, it is safer to choose this option.
"
+msgstr ""
+
#: plinth/modules/networks/forms.py:313
+#, python-brace-format
+msgid ""
+"I have a public IP address that does not change overtime (recommended)This means that devices on the Internet can reach you "
+"when you are connected to the Internet. Every time you connect to the "
+"Internet with your Internet Service Provider (ISP), you always get the same "
+"IP address. This is the most trouble-free setup for many {box_name} services "
+"but very few ISPs offer this. You may be able to get this service from your "
+"ISP by making an additional payment.
"
+msgstr ""
+
+#: plinth/modules/networks/forms.py:326
+#, python-brace-format
+msgid ""
+"I dont have a public IP addressThis means that "
+"devices on the Internet can not reach you when you are connected to "
+"the Internet. Every time you connect to the Internet with your Internet "
+"Service Provider (ISP), you get an IP address that is only relevant for "
+"local networks. Many ISPs offer this type of connectivity. This is the most "
+"troublesome situation for hosting services at home. {box_name} provides many "
+"workaround solutions but each solution has some limitations.
"
+msgstr ""
+
+#: plinth/modules/networks/forms.py:351
#, fuzzy
#| msgid "Current Network Configuration"
msgid "Preferred router configuration"
msgstr "Güncel Şebeke Yapılandırması"
-#: plinth/modules/networks/forms.py:318
+#: plinth/modules/networks/forms.py:356
#, python-brace-format
msgid ""
-"Use DMZ feature to forward all trafficMost routers "
-"provide a configuration setting called DMZ. This will allow the router to "
-"forward all incoming traffic from the internet to a single IP address such "
-"as the {box_name}'s address. First remember to configure a static local IP "
-"address for your {box_name} in your router's configuration.
"
+"Use DMZ feature to forward all traffic (recommended) Most routers provide a configuration setting called DMZ. This will allow "
+"the router to forward all incoming traffic from the Internet to a single IP "
+"address such as the {box_name}'s IP address. First remember to configure a "
+"static local IP address for your {box_name} in your router's configuration."
+"p>"
msgstr ""
-#: plinth/modules/networks/forms.py:332
+#: plinth/modules/networks/forms.py:368
#, python-brace-format
msgid ""
-"Forward Specific Traffic as needed by each application
You may alternatively choose to forward only specific traffic to your "
"{box_name}. This is ideal if you have other servers like {box_name} in your "
"network or if your router does not support DMZ feature. All applications "
@@ -3580,266 +3651,272 @@ msgid ""
"to be forwarded for that application to work.
"
msgstr ""
-#: plinth/modules/networks/forms.py:349
+#: plinth/modules/networks/forms.py:382
msgid ""
-"Router is currently unconfiguredChoose this if you "
+"Router is currently unconfigured
Choose this if you "
"have not configured or are unable to configure the router currently and wish "
"to be reminded later. Some of the other configuration steps may fail.
"
msgstr ""
-#: plinth/modules/networks/networks.py:43
+#: plinth/modules/networks/networks.py:32
msgid "Network Connections"
msgstr "Ağ Bağlantıları"
-#: plinth/modules/networks/networks.py:59
+#: plinth/modules/networks/networks.py:46
msgid "Cannot show connection: Connection not found."
msgstr "Bağlantı gösterilemez: bağlantı bulunamadı."
-#: plinth/modules/networks/networks.py:94
+#: plinth/modules/networks/networks.py:81
msgid "Connection Information"
msgstr "Bağlantı Verileri"
-#: plinth/modules/networks/networks.py:108
+#: plinth/modules/networks/networks.py:95
msgid "Cannot edit connection: Connection not found."
msgstr "Bağlantı düzenlenemez: bağlantı bulunamadı."
-#: plinth/modules/networks/networks.py:114
+#: plinth/modules/networks/networks.py:101
msgid "This type of connection is not yet understood."
msgstr "Bu tip bağlantı henüz anlaşılamamaktadır."
-#: plinth/modules/networks/networks.py:136
-#: plinth/modules/networks/networks.py:220
-#: plinth/modules/networks/templates/connections_edit.html:35
+#: plinth/modules/networks/networks.py:123
+#: plinth/modules/networks/networks.py:207
+#: plinth/modules/networks/templates/connections_edit.html:20
msgid "Edit Connection"
msgstr "Bağlantıyı Düzenle"
-#: plinth/modules/networks/networks.py:232
+#: plinth/modules/networks/networks.py:219
#, python-brace-format
msgid "Activated connection {name}."
msgstr "{name} bağlantısı etkinleştirildi."
-#: plinth/modules/networks/networks.py:236
+#: plinth/modules/networks/networks.py:223
msgid "Failed to activate connection: Connection not found."
msgstr "Bağlantı etkinleştirilemedi: bağlantı bulunamadı."
-#: plinth/modules/networks/networks.py:242
+#: plinth/modules/networks/networks.py:229
#, python-brace-format
msgid "Failed to activate connection {name}: No suitable device is available."
msgstr ""
"{name} isimli bağlantı etkinleştirilemedi: hiçbir uygun cihaz mevcut değil."
-#: plinth/modules/networks/networks.py:255
+#: plinth/modules/networks/networks.py:242
#, python-brace-format
msgid "Deactivated connection {name}."
msgstr "{name} isimli bağlantı devre dışı bırakıldı."
-#: plinth/modules/networks/networks.py:259
+#: plinth/modules/networks/networks.py:246
msgid "Failed to de-activate connection: Connection not found."
msgstr ""
"Bağlantının devre dışı bırakılması başarısız oldu: bağlantı bulunamadı."
-#: plinth/modules/networks/networks.py:269
-#: plinth/modules/networks/templates/connections_list.html:62
-#: plinth/modules/networks/templates/connections_list.html:64
+#: plinth/modules/networks/networks.py:256
+#: plinth/modules/networks/templates/connections_list.html:12
+#: plinth/modules/networks/templates/connections_list.html:14
msgid "Nearby Wi-Fi Networks"
msgstr "Yakındaki Wi-Fi Ağları"
-#: plinth/modules/networks/networks.py:293
-#: plinth/modules/networks/templates/connections_list.html:67
-#: plinth/modules/networks/templates/connections_list.html:69
-#: plinth/modules/wireguard/templates/wireguard_add_server.html:34
+#: plinth/modules/networks/networks.py:280
+#: plinth/modules/networks/templates/connections_list.html:17
+#: plinth/modules/networks/templates/connections_list.html:19
+#: plinth/modules/wireguard/templates/wireguard_add_server.html:19
msgid "Add Connection"
msgstr "Bağlantı Ekle"
-#: plinth/modules/networks/networks.py:311
+#: plinth/modules/networks/networks.py:298
msgid "Adding New Generic Connection"
msgstr "Yeni Jenerik Bağlantı Ekleniyor"
-#: plinth/modules/networks/networks.py:329
+#: plinth/modules/networks/networks.py:316
msgid "Adding New Ethernet Connection"
msgstr "Yeni Ethernet Bağlantısı Ekleniyor"
-#: plinth/modules/networks/networks.py:347
+#: plinth/modules/networks/networks.py:334
msgid "Adding New PPPoE Connection"
msgstr "Yeni PPPoE Bağlantısı Ekleniyor"
-#: plinth/modules/networks/networks.py:382
+#: plinth/modules/networks/networks.py:369
msgid "Adding New Wi-Fi Connection"
msgstr "Yeni Kablosuz Bağlantı Ekleniyor"
-#: plinth/modules/networks/networks.py:397
+#: plinth/modules/networks/networks.py:384
#, python-brace-format
msgid "Connection {name} deleted."
msgstr "{name} isimli bağlantı silindi."
-#: plinth/modules/networks/networks.py:401
-#: plinth/modules/networks/networks.py:411
+#: plinth/modules/networks/networks.py:388
+#: plinth/modules/networks/networks.py:398
msgid "Failed to delete connection: Connection not found."
msgstr "Bağlantının silinmesi başarısız oldu: bağlantı bulunamadı."
-#: plinth/modules/networks/networks.py:416
-#: plinth/modules/networks/templates/connections_delete.html:26
+#: plinth/modules/networks/networks.py:403
+#: plinth/modules/networks/templates/connections_delete.html:11
msgid "Delete Connection"
msgstr "Bağlantıyı Sil"
-#: plinth/modules/networks/networks.py:442
+#: plinth/modules/networks/networks.py:428
#, fuzzy
#| msgid "Tor configuration is being updated"
msgid "Router configuration type saved."
msgstr "Tor yapılandırması güncellenmektedir"
-#: plinth/modules/networks/templates/connection_show.html:43
+#: plinth/modules/networks/networks.py:474
+#, fuzzy
+#| msgid "Tor configuration is being updated"
+msgid "Internet connection type saved."
+msgstr "Tor yapılandırması güncellenmektedir"
+
+#: plinth/modules/networks/templates/connection_show.html:28
msgid "Edit connection"
msgstr "Bağlantıyı Düzenle"
-#: plinth/modules/networks/templates/connection_show.html:43
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:83
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:84
-#: plinth/templates/base.html:167 plinth/templates/base.html:168
+#: plinth/modules/networks/templates/connection_show.html:28
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:68
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:69
+#: plinth/templates/base.html:152 plinth/templates/base.html:153
msgid "Edit"
msgstr "Düzenle"
-#: plinth/modules/networks/templates/connection_show.html:50
-#: plinth/modules/networks/templates/connections_list.html:90
+#: plinth/modules/networks/templates/connection_show.html:35
+#: plinth/modules/networks/templates/connections_list.html:40
msgid "Deactivate"
msgstr "Devre Dışı Bırak"
-#: plinth/modules/networks/templates/connection_show.html:57
-#: plinth/modules/networks/templates/connections_list.html:98
+#: plinth/modules/networks/templates/connection_show.html:42
+#: plinth/modules/networks/templates/connections_list.html:48
msgid "Activate"
msgstr "Etkinleştir"
-#: plinth/modules/networks/templates/connection_show.html:63
+#: plinth/modules/networks/templates/connection_show.html:48
msgid "Delete connection"
msgstr "Bağlantıyı sil"
-#: plinth/modules/networks/templates/connection_show.html:66
-#: plinth/modules/networks/templates/connections_diagram.html:73
-#: plinth/modules/networks/templates/connections_diagram.html:76
-#: plinth/modules/networks/templates/connections_diagram.html:105
-#: plinth/modules/networks/templates/connections_diagram.html:127
+#: plinth/modules/networks/templates/connection_show.html:51
+#: plinth/modules/networks/templates/connections_diagram.html:58
+#: plinth/modules/networks/templates/connections_diagram.html:61
+#: plinth/modules/networks/templates/connections_diagram.html:90
+#: plinth/modules/networks/templates/connections_diagram.html:112
msgid "Connection"
msgstr "Bağlantı"
-#: plinth/modules/networks/templates/connection_show.html:71
+#: plinth/modules/networks/templates/connection_show.html:56
msgid "Primary connection"
msgstr "Birincil bağlantı"
-#: plinth/modules/networks/templates/connection_show.html:73
-#: plinth/modules/networks/templates/connection_show.html:217
-#: plinth/modules/networks/templates/connection_show.html:256
+#: plinth/modules/networks/templates/connection_show.html:58
+#: plinth/modules/networks/templates/connection_show.html:202
+#: plinth/modules/networks/templates/connection_show.html:241
msgid "yes"
msgstr "evet"
-#: plinth/modules/networks/templates/connection_show.html:84
-#: plinth/modules/storage/templates/storage.html:40
+#: plinth/modules/networks/templates/connection_show.html:69
+#: plinth/modules/storage/templates/storage.html:25
msgid "Device"
msgstr "Cihaz"
-#: plinth/modules/networks/templates/connection_show.html:88
+#: plinth/modules/networks/templates/connection_show.html:73
msgid "State"
msgstr "Durum"
-#: plinth/modules/networks/templates/connection_show.html:93
+#: plinth/modules/networks/templates/connection_show.html:78
msgid "State reason"
msgstr "Durum nedeni"
-#: plinth/modules/networks/templates/connection_show.html:102
+#: plinth/modules/networks/templates/connection_show.html:87
msgid "MAC address"
msgstr "MAC adresi"
-#: plinth/modules/networks/templates/connection_show.html:106
+#: plinth/modules/networks/templates/connection_show.html:91
msgid "Interface"
msgstr "Arayüz"
-#: plinth/modules/networks/templates/connection_show.html:110
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:33
-#: plinth/modules/snapshot/templates/snapshot_manage.html:45
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:41
+#: plinth/modules/networks/templates/connection_show.html:95
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:18
+#: plinth/modules/snapshot/templates/snapshot_manage.html:30
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:26
msgid "Description"
msgstr "Açıklama"
-#: plinth/modules/networks/templates/connection_show.html:116
+#: plinth/modules/networks/templates/connection_show.html:101
msgid "Physical Link"
msgstr "Fiziki Bağlantı"
-#: plinth/modules/networks/templates/connection_show.html:121
+#: plinth/modules/networks/templates/connection_show.html:106
msgid "Link state"
msgstr "Bağlantı durumu"
-#: plinth/modules/networks/templates/connection_show.html:125
+#: plinth/modules/networks/templates/connection_show.html:110
msgid "cable is connected"
msgstr "kablo bağlı"
-#: plinth/modules/networks/templates/connection_show.html:128
+#: plinth/modules/networks/templates/connection_show.html:113
msgid "please check cable"
msgstr "lütfen kabloyu kontrol edin"
-#: plinth/modules/networks/templates/connection_show.html:133
-#: plinth/modules/networks/templates/connection_show.html:149
+#: plinth/modules/networks/templates/connection_show.html:118
+#: plinth/modules/networks/templates/connection_show.html:134
msgid "Speed"
msgstr "Hız"
-#: plinth/modules/networks/templates/connection_show.html:135
+#: plinth/modules/networks/templates/connection_show.html:120
#, python-format
msgid "%(ethernet_speed)s Mbit/s"
msgstr "%(ethernet_speed)s Mbit/s"
-#: plinth/modules/networks/templates/connection_show.html:151
+#: plinth/modules/networks/templates/connection_show.html:136
#, python-format
msgid "%(wireless_bitrate)s Mbit/s"
msgstr "%(wireless_bitrate)s Mbit/s"
-#: plinth/modules/networks/templates/connection_show.html:163
+#: plinth/modules/networks/templates/connection_show.html:148
msgid "Signal strength"
msgstr "Sinyal kuvveti"
-#: plinth/modules/networks/templates/connection_show.html:181
+#: plinth/modules/networks/templates/connection_show.html:166
msgid "IPv4"
msgstr "IPv4"
-#: plinth/modules/networks/templates/connection_show.html:186
-#: plinth/modules/networks/templates/connection_show.html:227
-#: plinth/modules/shadowsocks/forms.py:64
+#: plinth/modules/networks/templates/connection_show.html:171
+#: plinth/modules/networks/templates/connection_show.html:212
+#: plinth/modules/shadowsocks/forms.py:49
msgid "Method"
msgstr "Metot"
-#: plinth/modules/networks/templates/connection_show.html:193
-#: plinth/modules/networks/templates/connection_show.html:234
+#: plinth/modules/networks/templates/connection_show.html:178
+#: plinth/modules/networks/templates/connection_show.html:219
msgid "IP address"
msgstr "IP adresi"
-#: plinth/modules/networks/templates/connection_show.html:209
-#: plinth/modules/networks/templates/connection_show.html:248
+#: plinth/modules/networks/templates/connection_show.html:194
+#: plinth/modules/networks/templates/connection_show.html:233
msgid "DNS server"
msgstr "DNS sunucusu"
-#: plinth/modules/networks/templates/connection_show.html:216
-#: plinth/modules/networks/templates/connection_show.html:255
-#: plinth/modules/storage/forms.py:156
+#: plinth/modules/networks/templates/connection_show.html:201
+#: plinth/modules/networks/templates/connection_show.html:240
+#: plinth/modules/storage/forms.py:141
msgid "Default"
msgstr "Varsayılan"
-#: plinth/modules/networks/templates/connection_show.html:222
+#: plinth/modules/networks/templates/connection_show.html:207
msgid "IPv6"
msgstr "IPv6"
-#: plinth/modules/networks/templates/connection_show.html:263
+#: plinth/modules/networks/templates/connection_show.html:248
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:38 plinth/modules/security/views.py:47
+#: plinth/modules/networks/templates/connection_show.html:251
+#: plinth/modules/security/__init__.py:45
msgid "Security"
msgstr "Güvenlik"
-#: plinth/modules/networks/templates/connection_show.html:271
-#: plinth/modules/networks/templates/connection_show.html:291
-#: plinth/modules/networks/templates/connection_show.html:310
+#: plinth/modules/networks/templates/connection_show.html:256
+#: plinth/modules/networks/templates/connection_show.html:276
+#: plinth/modules/networks/templates/connection_show.html:295
msgid "Firewall zone"
msgstr "Güvenlik duvarı alanı"
-#: plinth/modules/networks/templates/connection_show.html:280
+#: plinth/modules/networks/templates/connection_show.html:265
msgid ""
"This interface should be connected to a local network/machine. If you "
"connect this interface to a public network, services meant to be available "
@@ -3849,7 +3926,7 @@ msgstr ""
"açık bir şebekeye bağlarsanız, sadece dahili olması amaçlanan servislere "
"harici erişim mümkün olacaktır. Bu bir güvenlik riskidir."
-#: plinth/modules/networks/templates/connection_show.html:300
+#: plinth/modules/networks/templates/connection_show.html:285
msgid ""
"This interface should receive your Internet connection. If you connect it to "
"a local network/machine, many services meant to available only internally "
@@ -3859,7 +3936,7 @@ msgstr ""
"makineye bağlarsanız, sadece dahili olarak erişilebilir olması amaçlanan "
"servislerin birçoğuna erişim mümkün olmayacaktır."
-#: plinth/modules/networks/templates/connection_show.html:319
+#: plinth/modules/networks/templates/connection_show.html:304
#, python-format
msgid ""
"This interface is not maintained by %(box_name)s. Its security status is "
@@ -3872,114 +3949,139 @@ msgstr ""
"arayüzde mevcut olmayabilir. Bu bağlantıyı devre dışı bırakmanız/silmeniz ve "
"yeniden yapılandırmanız tavsiye edilir."
-#: plinth/modules/networks/templates/connections_create.html:34
+#: plinth/modules/networks/templates/connections_create.html:19
msgid "Create Connection"
msgstr "Bağlantı Oluştur"
-#: plinth/modules/networks/templates/connections_delete.html:29
+#: plinth/modules/networks/templates/connections_delete.html:14
#, python-format
msgid "Delete connection %(name)s permanently?"
msgstr "%(name)s isimli bağlantı daimi olarak silinsin mi?"
-#: plinth/modules/networks/templates/connections_diagram.html:65
+#: plinth/modules/networks/templates/connections_diagram.html:50
msgid "Internet"
msgstr "İnternet"
-#: plinth/modules/networks/templates/connections_diagram.html:70
-#: plinth/modules/networks/templates/connections_diagram.html:102
+#: plinth/modules/networks/templates/connections_diagram.html:55
+#: plinth/modules/networks/templates/connections_diagram.html:87
msgid "Spacing"
msgstr "Aralık"
-#: plinth/modules/networks/templates/connections_diagram.html:83
-#: plinth/modules/networks/templates/connections_diagram.html:113
-#: plinth/network.py:40
+#: plinth/modules/networks/templates/connections_diagram.html:68
+#: plinth/modules/networks/templates/connections_diagram.html:98
+#: plinth/network.py:25
msgid "Ethernet"
msgstr "Ethernet"
-#: plinth/modules/networks/templates/connections_diagram.html:86
-#: plinth/modules/networks/templates/connections_diagram.html:116
-#: plinth/network.py:41
+#: plinth/modules/networks/templates/connections_diagram.html:71
+#: plinth/modules/networks/templates/connections_diagram.html:101
+#: plinth/network.py:26
msgid "Wi-Fi"
msgstr "Wi-Fi"
-#: plinth/modules/networks/templates/connections_diagram.html:89
+#: plinth/modules/networks/templates/connections_diagram.html:74
#, python-format
msgid "Show connection %(connection.name)s"
msgstr "%(connection.name)s isimli bağlantıyı göster"
-#: plinth/modules/networks/templates/connections_diagram.html:119
+#: plinth/modules/networks/templates/connections_diagram.html:104
#, python-format
msgid "Show connection %(name)s"
msgstr "%(name)s isimli bağlantıyı göster"
-#: plinth/modules/networks/templates/connections_diagram.html:131
+#: plinth/modules/networks/templates/connections_diagram.html:116
msgid "Computer"
msgstr "Bilgisayar"
-#: plinth/modules/networks/templates/connections_list.html:58
+#: plinth/modules/networks/templates/connections_list.html:8
#, fuzzy
#| msgid "Connection"
msgid "Connections"
msgstr "Bağlantı"
-#: plinth/modules/networks/templates/connections_list.html:79
+#: plinth/modules/networks/templates/connections_list.html:29
#, python-format
msgid "Delete connection %(name)s"
msgstr "%(name)s isimli bağlantıyı sil"
-#: plinth/modules/networks/templates/connections_list.html:104
+#: plinth/modules/networks/templates/connections_list.html:54
msgid "Active"
msgstr "Etkin"
-#: plinth/modules/networks/templates/connections_list.html:107
+#: plinth/modules/networks/templates/connections_list.html:57
msgid "Inactive"
msgstr "Devre Dışı"
-#: plinth/modules/networks/templates/connections_list.html:124
-#, python-format
-msgid "%(box_name)s Internet Connectivity"
+#: plinth/modules/networks/templates/connections_type_select.html:19
+msgid "Create..."
+msgstr "Oluştur..."
+
+#: plinth/modules/networks/templates/internet_connectivity_content.html:10
+msgid "What Type Of Internet Connection Do You Have?"
msgstr ""
-#: plinth/modules/networks/templates/connections_list.html:129
-#, python-format
+#: plinth/modules/networks/templates/internet_connectivity_content.html:16
msgid ""
-"The following best describes how your %(box_name)s is connected in your "
-"network. This information is used only to suggest necessary configuration "
-"actions."
+"Select an option that best describes the type of Internet connection. This "
+"information is used only to guide you with further setup."
msgstr ""
-#: plinth/modules/networks/templates/connections_list.html:137
-#, python-format
+#: plinth/modules/networks/templates/internet_connectivity_firstboot.html:18
+#: plinth/modules/networks/templates/router_configuration_firstboot.html:18
+msgid "Skip this step"
+msgstr ""
+
+#: plinth/modules/networks/templates/internet_connectivity_firstboot.html:19
+#: plinth/modules/networks/templates/router_configuration_firstboot.html:19
+msgid "Next"
+msgstr ""
+
+#: plinth/modules/networks/templates/internet_connectivity_main.html:9
+#, fuzzy
+#| msgid "Connection Type"
+msgid "Your Internet Connection Type"
+msgstr "Bağlantı Türü"
+
+#: plinth/modules/networks/templates/internet_connectivity_main.html:14
msgid ""
-"Your %(box_name)s gets its internet from your Router via WiFi or Ethernet "
-"cable. This is a typical home setup."
+"The following best describes the type of Internet connection provided by "
+"your ISP. This information is only used to suggest you necessary "
+"configuration actions."
msgstr ""
-#: plinth/modules/networks/templates/connections_list.html:145
-#: plinth/modules/networks/templates/connections_list.html:147
+#: plinth/modules/networks/templates/internet_connectivity_main.html:23
+msgid "My ISP provides a public IP address that does not change over time."
+msgstr ""
+
+#: plinth/modules/networks/templates/internet_connectivity_main.html:27
+msgid "My ISP provides a public IP address that may change over time."
+msgstr ""
+
+#: plinth/modules/networks/templates/internet_connectivity_main.html:31
+msgid "My ISP does not provide a public IP address."
+msgstr ""
+
+#: plinth/modules/networks/templates/internet_connectivity_main.html:37
+#: plinth/modules/networks/templates/router_configuration_main.html:29
#, fuzzy
#| msgid "Update"
msgid "Update..."
msgstr "Güncelle"
-#: plinth/modules/networks/templates/connections_type_select.html:34
-msgid "Create..."
-msgstr "Oluştur..."
-
-#: plinth/modules/networks/templates/router_configuration_content.html:25
+#: plinth/modules/networks/templates/router_configuration_content.html:10
#, fuzzy, python-format
#| msgid "Plinth is up to date."
msgid "Setup %(box_name)s Behind a Router"
msgstr "Plinth günceldir."
-#: plinth/modules/networks/templates/router_configuration_content.html:31
+#: plinth/modules/networks/templates/router_configuration_content.html:16
#, python-format
msgid ""
"Your %(box_name)s gets its internet connection from your router via Wi-Fi or "
"Ethernet cable. This is a typical home setup."
msgstr ""
-#: plinth/modules/networks/templates/router_configuration_content.html:38
+#: plinth/modules/networks/templates/router_configuration_content.html:23
#, python-format
msgid ""
"With this setup, any device on the internet trying to reach your "
@@ -3988,24 +4090,24 @@ msgid ""
"the services."
msgstr ""
-#: plinth/modules/networks/templates/router_configuration_content.html:47
+#: plinth/modules/networks/templates/router_configuration_content.html:32
msgid ""
"If you don't have control over your router, choose not to configure it. To "
-"see options, to overcome this limitation, choose 'no public address' option "
+"see options to overcome this limitation, choose 'no public address' option "
"in Internet connection type selection."
msgstr ""
-#: plinth/modules/networks/templates/router_configuration_content.html:54
+#: plinth/modules/networks/templates/router_configuration_content.html:39
msgid "Choose How You Wish to Configure Your Router"
msgstr ""
-#: plinth/modules/networks/templates/router_configuration_content.html:57
+#: plinth/modules/networks/templates/router_configuration_content.html:42
msgid ""
"You will need to login to your router's administration console provided by "
"the router. This may look like one of the following:"
msgstr ""
-#: plinth/modules/networks/templates/router_configuration_content.html:69
+#: plinth/modules/networks/templates/router_configuration_content.html:54
msgid ""
"The username and password is configured by you when you first setup the "
"router. For many routers, this information is printed at the back of the "
@@ -4015,24 +4117,27 @@ msgid ""
"full instructions on how to perform this task."
msgstr ""
-#: plinth/modules/networks/templates/router_configuration_firstboot.html:33
-msgid "skip this step"
+#: plinth/modules/networks/templates/router_configuration_main.html:9
+#, python-format
+msgid "%(box_name)s Internet Connectivity"
msgstr ""
-#: plinth/modules/networks/templates/router_configuration_firstboot.html:35
-msgid "Next"
+#: plinth/modules/networks/templates/router_configuration_main.html:15
+#, python-format
+msgid ""
+"The following best describes how your %(box_name)s is connected in your "
+"network. This information is used only to suggest necessary configuration "
+"actions."
msgstr ""
-#: plinth/modules/openvpn/__init__.py:39 plinth/modules/openvpn/manifest.py:33
-msgid "OpenVPN"
-msgstr "OpenVPN"
+#: plinth/modules/networks/templates/router_configuration_main.html:23
+#, python-format
+msgid ""
+"Your %(box_name)s gets its Internet from your Router via Wi-Fi or Ethernet "
+"cable. This is a typical home setup."
+msgstr ""
-#: plinth/modules/openvpn/__init__.py:43
-#: plinth/modules/wireguard/__init__.py:40
-msgid "Virtual Private Network"
-msgstr "Sanal Özel Şebeke"
-
-#: plinth/modules/openvpn/__init__.py:47
+#: plinth/modules/openvpn/__init__.py:26
#, python-brace-format
msgid ""
"Virtual Private Network (VPN) is a technique for securely connecting two "
@@ -4049,21 +4154,30 @@ 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:79
+#: plinth/modules/openvpn/__init__.py:49 plinth/modules/openvpn/manifest.py:18
+msgid "OpenVPN"
+msgstr "OpenVPN"
+
+#: plinth/modules/openvpn/__init__.py:50
+#: plinth/modules/wireguard/__init__.py:53
+msgid "Virtual Private Network"
+msgstr "Sanal Özel Şebeke"
+
+#: plinth/modules/openvpn/__init__.py:61
#, python-brace-format
msgid ""
"Download Profile"
msgstr "Profil İndir"
-#: plinth/modules/openvpn/forms.py:27
+#: plinth/modules/openvpn/forms.py:12
msgid "Enable OpenVPN server"
msgstr "OpenVPN sunucusunu etkinleştir"
-#: plinth/modules/openvpn/manifest.py:63
-msgid "TunnelBlick"
+#: plinth/modules/openvpn/manifest.py:48
+msgid "Tunnelblick"
msgstr ""
-#: plinth/modules/openvpn/templates/openvpn.html:42
+#: plinth/modules/openvpn/templates/openvpn.html:27
#, python-format
msgid ""
"OpenVPN has not yet been setup. Performing a secure setup takes a very long "
@@ -4074,15 +4188,15 @@ msgstr ""
"süre alır. %(box_name)s kutunuzun hızına bağlı olarak saatler sürmesi bile "
"mümkündür. Eğer kurulum kesilirse, tekrar başlatabilirsiniz."
-#: plinth/modules/openvpn/templates/openvpn.html:55
+#: plinth/modules/openvpn/templates/openvpn.html:40
msgid "Start setup"
msgstr "Kuruluma başla"
-#: plinth/modules/openvpn/templates/openvpn.html:64
+#: plinth/modules/openvpn/templates/openvpn.html:49
msgid "OpenVPN setup is running"
msgstr "OpenVPN kurulumu çalışmaktadır"
-#: plinth/modules/openvpn/templates/openvpn.html:68
+#: plinth/modules/openvpn/templates/openvpn.html:53
#, python-format
msgid ""
"To perform a secure setup, this process takes a very long time. Depending "
@@ -4093,11 +4207,11 @@ msgstr ""
"bağlı olarak saatler sürmesi bile mümkündür. Eğer kurulum kesilirse, tekrar "
"başlatabilirsiniz."
-#: plinth/modules/openvpn/templates/openvpn.html:87
+#: plinth/modules/openvpn/templates/openvpn.html:72
msgid "Profile"
msgstr "Profil"
-#: plinth/modules/openvpn/templates/openvpn.html:90
+#: plinth/modules/openvpn/templates/openvpn.html:75
#, fuzzy, python-format
#| msgid ""
#| "To connect to %(box_name)s's VPN, you need to download a profile and feed "
@@ -4119,34 +4233,26 @@ msgstr ""
"Manual/OpenVPN\" title=\"%(box_name)s Manual - OpenVPN\">belgelendirmeyi "
"okuyun."
-#: plinth/modules/openvpn/templates/openvpn.html:100
+#: plinth/modules/openvpn/templates/openvpn.html:85
#, python-format
msgid "Profile is specific to each user of %(box_name)s. Keep it a secret."
msgstr ""
"Profil, %(box_name)s kutusunun her kullanıcısı için özeldir. Onun "
"gizliliğini koruyun."
-#: plinth/modules/openvpn/templates/openvpn.html:111
+#: plinth/modules/openvpn/templates/openvpn.html:96
msgid "Download my profile"
msgstr "Profilimi indir"
-#: plinth/modules/openvpn/views.py:133
+#: plinth/modules/openvpn/views.py:114
msgid "Setup completed."
msgstr "Kurulum tamamlandı."
-#: plinth/modules/openvpn/views.py:135
+#: plinth/modules/openvpn/views.py:116
msgid "Setup failed."
msgstr "Kurulum başarısız oldu."
-#: plinth/modules/pagekite/__init__.py:39
-msgid "PageKite"
-msgstr "PageKite"
-
-#: plinth/modules/pagekite/__init__.py:41
-msgid "Public Visibility"
-msgstr "Herkese Açık Görünülürlük"
-
-#: plinth/modules/pagekite/__init__.py:45
+#: plinth/modules/pagekite/__init__.py:26
#, python-brace-format
msgid ""
"PageKite is a system for exposing {box_name} services when you don't have a "
@@ -4158,19 +4264,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:50
+#: plinth/modules/pagekite/__init__.py:31
#, 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:53
+#: plinth/modules/pagekite/__init__.py:34
#, 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:55
+#: plinth/modules/pagekite/__init__.py:36
msgid ""
"Your ISP does not provide you an external IP address and instead provides "
"Internet connection through NAT."
@@ -4178,7 +4284,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:57
+#: plinth/modules/pagekite/__init__.py:38
#, fuzzy
#| msgid ""
#| "Your ISP does not provide you a static IP address and your IP address "
@@ -4190,11 +4296,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:59
+#: plinth/modules/pagekite/__init__.py:40
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:61
+#: plinth/modules/pagekite/__init__.py:42
#, fuzzy, python-brace-format
#| msgid ""
#| "PageKite works around NAT, firewalls and IP-address limitations by using "
@@ -4214,17 +4320,25 @@ msgstr ""
"pagekite.net\">pagekite.net. Gelecekte bunun için arkadaşlarınızın "
"{box_name} kutusunu kullanmanız mümkün olacaktır."
-#: plinth/modules/pagekite/__init__.py:87
+#: plinth/modules/pagekite/__init__.py:62
+msgid "PageKite"
+msgstr "PageKite"
+
+#: plinth/modules/pagekite/__init__.py:64
+msgid "Public Visibility"
+msgstr "Herkese Açık Görünülürlük"
+
+#: plinth/modules/pagekite/__init__.py:74
#, fuzzy
#| msgid "PageKite Account"
msgid "PageKite Domain"
msgstr "PageKite Hesabı"
-#: plinth/modules/pagekite/forms.py:66
+#: plinth/modules/pagekite/forms.py:51
msgid "Server domain"
msgstr "Sunucu alanı"
-#: plinth/modules/pagekite/forms.py:68
+#: plinth/modules/pagekite/forms.py:53
msgid ""
"Select your pagekite server. Set \"pagekite.net\" to use the default "
"pagekite.net server."
@@ -4232,31 +4346,31 @@ msgstr ""
"PageKite sunucunuzu seçin. Varsayılan pagekite.net sunucusunu kullanmak için "
"\"pagekite.net\" değerini kullanın."
-#: plinth/modules/pagekite/forms.py:71 plinth/modules/shadowsocks/forms.py:55
+#: plinth/modules/pagekite/forms.py:56 plinth/modules/shadowsocks/forms.py:40
msgid "Server port"
msgstr "Sunucu portu"
-#: plinth/modules/pagekite/forms.py:72
+#: plinth/modules/pagekite/forms.py:57
msgid "Port of your pagekite server (default: 80)"
msgstr "PageKite sunucunuzun portu (varsayılan: 80)"
-#: plinth/modules/pagekite/forms.py:74
+#: plinth/modules/pagekite/forms.py:59
msgid "Kite name"
msgstr "Kite ismi"
-#: plinth/modules/pagekite/forms.py:75
+#: plinth/modules/pagekite/forms.py:60
msgid "Example: mybox.pagekite.me"
msgstr "Örnek: mybox.pagekite.me"
-#: plinth/modules/pagekite/forms.py:77
+#: plinth/modules/pagekite/forms.py:62
msgid "Invalid kite name"
msgstr "Geçersiz kite ismi"
-#: plinth/modules/pagekite/forms.py:81
+#: plinth/modules/pagekite/forms.py:66
msgid "Kite secret"
msgstr "Kite sırrı"
-#: plinth/modules/pagekite/forms.py:82
+#: plinth/modules/pagekite/forms.py:67
msgid ""
"A secret associated with the kite or the default secret for your account if "
"no secret is set on the kite."
@@ -4264,43 +4378,43 @@ msgstr ""
"Kite ile ilişkilendirilmiş bir sır ya da kite üzerinde hiçbir sır "
"ayarlanmamışsa hesabınız için varsayılan sır."
-#: plinth/modules/pagekite/forms.py:98
+#: plinth/modules/pagekite/forms.py:83
msgid "Kite details set"
msgstr "Kite detayları ayarlandı"
-#: plinth/modules/pagekite/forms.py:105
+#: plinth/modules/pagekite/forms.py:90
msgid "Pagekite server set"
msgstr "Pagekite sunucusu ayarlandı"
-#: plinth/modules/pagekite/forms.py:129
+#: plinth/modules/pagekite/forms.py:114
msgid "PageKite enabled"
msgstr "PageKite etkinleştirildi"
-#: plinth/modules/pagekite/forms.py:132
+#: plinth/modules/pagekite/forms.py:117
msgid "PageKite disabled"
msgstr "PageKite devre dışı"
-#: plinth/modules/pagekite/forms.py:148
+#: plinth/modules/pagekite/forms.py:133
msgid "protocol"
msgstr "protokol"
-#: plinth/modules/pagekite/forms.py:151
+#: plinth/modules/pagekite/forms.py:136
msgid "external (frontend) port"
msgstr "harici (ön arayüz) port"
-#: plinth/modules/pagekite/forms.py:154
+#: plinth/modules/pagekite/forms.py:139
msgid "internal (freedombox) port"
msgstr "dahili (freedombox) port"
-#: plinth/modules/pagekite/forms.py:155
+#: plinth/modules/pagekite/forms.py:140
msgid "Enable Subdomains"
msgstr "Alt Alanları Etkinleştir"
-#: plinth/modules/pagekite/forms.py:189
+#: plinth/modules/pagekite/forms.py:174
msgid "Deleted custom service"
msgstr "Özel servis silindi"
-#: plinth/modules/pagekite/forms.py:222
+#: plinth/modules/pagekite/forms.py:207
msgid ""
"This service is available as a standard service. Please use the \"Standard "
"Services\" page to enable it."
@@ -4308,45 +4422,45 @@ msgstr ""
"Bu servis standart bir servis olarak mevcuttur. Etkinleştirmek için lütfen "
"\"Standart Servisler\" sayfasını kullanın."
-#: plinth/modules/pagekite/forms.py:231
+#: plinth/modules/pagekite/forms.py:216
msgid "Added custom service"
msgstr "Özel servis eklendi"
-#: plinth/modules/pagekite/forms.py:234
+#: plinth/modules/pagekite/forms.py:219
msgid "This service already exists"
msgstr "Bu servis zaten mevcuttur"
-#: plinth/modules/pagekite/templates/pagekite_configure.html:47
+#: plinth/modules/pagekite/templates/pagekite_configure.html:32
msgid "Custom Services"
msgstr "Özel Servisler"
-#: plinth/modules/pagekite/templates/pagekite_configure.html:50
-#: plinth/modules/pagekite/templates/pagekite_configure.html:52
+#: plinth/modules/pagekite/templates/pagekite_configure.html:35
+#: plinth/modules/pagekite/templates/pagekite_configure.html:37
#, fuzzy
#| msgid "Custom Services"
msgid "Add Custom Service"
msgstr "Özel Servisler"
-#: plinth/modules/pagekite/templates/pagekite_configure.html:57
+#: plinth/modules/pagekite/templates/pagekite_configure.html:42
msgid "Existing custom services"
msgstr "Mevcut özel servisler"
-#: plinth/modules/pagekite/templates/pagekite_configure.html:71
+#: plinth/modules/pagekite/templates/pagekite_configure.html:56
#, python-format
msgid "connected to %(backend_host)s:%(backend_port)s"
msgstr "%(backend_host)s:%(backend_port)s unsuruna bağlandı"
-#: plinth/modules/pagekite/templates/pagekite_configure.html:83
+#: plinth/modules/pagekite/templates/pagekite_configure.html:68
msgid "Delete this service"
msgstr "Bu servisi sil"
-#: plinth/modules/pagekite/templates/pagekite_custom_services.html:30
+#: plinth/modules/pagekite/templates/pagekite_custom_services.html:15
#, fuzzy
#| msgid "Added custom service"
msgid "Add custom PageKite service"
msgstr "Özel servis eklendi"
-#: plinth/modules/pagekite/templates/pagekite_custom_services.html:32
+#: plinth/modules/pagekite/templates/pagekite_custom_services.html:17
msgid ""
"Warning:
Your PageKite frontend server may not support all the "
"protocol/port combinations that you are able to define here. For example, "
@@ -4357,11 +4471,11 @@ msgstr ""
"bağlantı noktasından değişik bağlantı noktalarında HTTPS protokolünün sorun "
"çıkardığı bilinir."
-#: plinth/modules/pagekite/templates/pagekite_firstboot.html:26
+#: plinth/modules/pagekite/templates/pagekite_firstboot.html:11
msgid "Setup a freedombox.me subdomain with your voucher"
msgstr "Fişinizle bir freedombox.me alt alanı kurun"
-#: plinth/modules/pagekite/templates/pagekite_firstboot.html:30
+#: plinth/modules/pagekite/templates/pagekite_firstboot.html:15
#, python-format
msgid ""
"Skip this step if you do not have a "
@@ -4372,7 +4486,7 @@ msgstr ""
"bilgileri ile yapılandırmak istiyorsanız bu adımı atlayın."
-#: plinth/modules/pagekite/templates/pagekite_firstboot.html:38
+#: plinth/modules/pagekite/templates/pagekite_firstboot.html:23
msgid ""
"You can use an already redeemed voucher but it will only work with the "
"initially registered subdomain."
@@ -4380,52 +4494,52 @@ msgstr ""
"Zaten itfa edilmiş bir fişi kullanabilirsiniz ancak bu sadece başlangıçta "
"kaydedilen alt alan ile çalışacaktır."
-#: plinth/modules/pagekite/templates/pagekite_firstboot.html:52
+#: plinth/modules/pagekite/templates/pagekite_firstboot.html:37
msgid "Register"
msgstr "Kaydet"
-#: plinth/modules/pagekite/templates/pagekite_firstboot.html:56
+#: plinth/modules/pagekite/templates/pagekite_firstboot.html:41
msgid "Skip Registration"
msgstr "Kaydı Atla"
-#: plinth/modules/pagekite/templates/pagekite_standard_services.html:40
+#: plinth/modules/pagekite/templates/pagekite_standard_services.html:25
msgid "Warning:
"
msgstr "İkaz:
"
-#: plinth/modules/pagekite/templates/pagekite_standard_services.html:43
+#: plinth/modules/pagekite/templates/pagekite_standard_services.html:28
msgid ""
"Published services are accessible and attackable from the evil Internet."
msgstr "Yayınlanan servislere İnternet'ten erişim ve saldırı mümkündür."
-#: plinth/modules/pagekite/templates/pagekite_standard_services.html:58
+#: plinth/modules/pagekite/templates/pagekite_standard_services.html:43
msgid "Save Services"
msgstr "Servisleri Kaydet"
-#: plinth/modules/pagekite/utils.py:57
+#: plinth/modules/pagekite/utils.py:42
msgid "Web Server (HTTP)"
msgstr "Ağ Sunucusu (HTTP)"
-#: plinth/modules/pagekite/utils.py:59
+#: plinth/modules/pagekite/utils.py:44
#, python-brace-format
msgid "Site will be available at http://{0}"
msgstr ""
"Siteye http://{0} adresinde erişilebilecektir"
-#: plinth/modules/pagekite/utils.py:71
+#: plinth/modules/pagekite/utils.py:56
msgid "Web Server (HTTPS)"
msgstr "Ağ Sunucusu (HTTPS)"
-#: plinth/modules/pagekite/utils.py:73
+#: plinth/modules/pagekite/utils.py:58
#, python-brace-format
msgid "Site will be available at https://{0}"
msgstr ""
"Siteye https://{0} adresinde erişilebilecektir"
-#: plinth/modules/pagekite/utils.py:85
+#: plinth/modules/pagekite/utils.py:70
msgid "Secure Shell (SSH)"
msgstr "Güvenli Kabuk (SSH)"
-#: plinth/modules/pagekite/utils.py:87
+#: plinth/modules/pagekite/utils.py:72
msgid ""
"See SSH client setup instructions"
@@ -4433,16 +4547,15 @@ msgstr ""
"SSH istemci kurulum talimatlarını okuyun"
-#: plinth/modules/power/__init__.py:29 plinth/modules/power/views.py:55
-#: plinth/modules/power/views.py:74
-msgid "Power"
-msgstr "Enerji"
-
-#: plinth/modules/power/__init__.py:31
+#: plinth/modules/power/__init__.py:16
msgid "Restart or shut down the system."
msgstr "Sistemi tekrar başlat ya da kapat."
-#: plinth/modules/power/templates/power.html:28
+#: plinth/modules/power/__init__.py:31
+msgid "Power"
+msgstr "Enerji"
+
+#: plinth/modules/power/templates/power.html:13
msgid ""
"Currently an installation or upgrade is running. Consider waiting until it's "
"finished before shutting down or restarting."
@@ -4450,15 +4563,15 @@ msgstr ""
"Şu anda bir kurulum ya da yükseltme çalışmaktadır. Kapatmadan ya da yeniden "
"başlatmadan önce bunun sona ermesini beklemeyi değerlendirin."
-#: plinth/modules/power/templates/power.html:37
+#: plinth/modules/power/templates/power.html:22
msgid "Restart »"
msgstr "Tekrar başlat »"
-#: plinth/modules/power/templates/power.html:40
+#: plinth/modules/power/templates/power.html:25
msgid "Shut Down »"
msgstr "Kapat »"
-#: plinth/modules/power/templates/power_restart.html:32
+#: plinth/modules/power/templates/power_restart.html:17
msgid ""
"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."
@@ -4466,7 +4579,7 @@ 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:49
+#: plinth/modules/power/templates/power_restart.html:34
msgid ""
"Currently an installation or upgrade is running. Consider waiting until it's "
"finished before restarting."
@@ -4474,12 +4587,12 @@ msgstr ""
"Şu anda bir kurulum ya da yükseltme çalışmaktadır. Yeniden başlatmadan önce "
"bunun sona ermesini beklemeyi değerlendirin."
-#: plinth/modules/power/templates/power_restart.html:63
-#: plinth/modules/power/templates/power_restart.html:66
+#: plinth/modules/power/templates/power_restart.html:48
+#: plinth/modules/power/templates/power_restart.html:51
msgid "Restart Now"
msgstr "Şimdi Tekrar Başlat"
-#: plinth/modules/power/templates/power_shutdown.html:32
+#: plinth/modules/power/templates/power_shutdown.html:17
msgid ""
"Are you sure you want to shut down? You will not be able to access this web "
"interface after shut down."
@@ -4487,7 +4600,7 @@ 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:48
+#: plinth/modules/power/templates/power_shutdown.html:33
msgid ""
"Currently an installation or upgrade is running. Consider waiting until it's "
"finished before shutting down."
@@ -4495,20 +4608,12 @@ msgstr ""
"Şu anda bir kurulum ya da yükseltme çalışmaktadır. Kapatmadan önce bunun "
"sona ermesini beklemeyi değerlendirin."
-#: plinth/modules/power/templates/power_shutdown.html:62
-#: plinth/modules/power/templates/power_shutdown.html:65
+#: plinth/modules/power/templates/power_shutdown.html:47
+#: plinth/modules/power/templates/power_shutdown.html:50
msgid "Shut Down Now"
msgstr "Şimdi Kapat"
-#: plinth/modules/privoxy/__init__.py:43
-msgid "Privoxy"
-msgstr "Privoxy"
-
-#: plinth/modules/privoxy/__init__.py:47
-msgid "Web Proxy"
-msgstr "Ağ Vekil Sunucusu"
-
-#: plinth/modules/privoxy/__init__.py:50
+#: plinth/modules/privoxy/__init__.py:29
msgid ""
"Privoxy is a non-caching web proxy with advanced filtering capabilities for "
"enhancing privacy, modifying web page data and HTTP headers, controlling "
@@ -4519,7 +4624,7 @@ msgstr ""
"gelişmiş filtreleme özellikleri bulunan ve önbelleğe veri almayan bir ağ "
"vekil sunucusudur. "
-#: plinth/modules/privoxy/__init__.py:55
+#: plinth/modules/privoxy/__init__.py:34
#, python-brace-format
msgid ""
"You can use Privoxy by modifying your browser proxy settings to your "
@@ -4535,20 +4640,20 @@ msgstr ""
"org/ veya http://p.p adresinde "
"görebilirsiniz."
-#: plinth/modules/privoxy/__init__.py:141
+#: plinth/modules/privoxy/__init__.py:57
+msgid "Privoxy"
+msgstr "Privoxy"
+
+#: plinth/modules/privoxy/__init__.py:58
+msgid "Web Proxy"
+msgstr "Ağ Vekil Sunucusu"
+
+#: plinth/modules/privoxy/__init__.py:121
#, 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:45 plinth/modules/quassel/manifest.py:25
-msgid "Quassel"
-msgstr "Quassel"
-
-#: plinth/modules/quassel/__init__.py:49
-msgid "IRC Client"
-msgstr "IRC İstemcisi"
-
-#: plinth/modules/quassel/__init__.py:53
+#: plinth/modules/quassel/__init__.py:32
#, python-brace-format
msgid ""
"Quassel is an IRC application that is split into two parts, a \"core\" and a "
@@ -4565,7 +4670,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:60
+#: plinth/modules/quassel/__init__.py:39
msgid ""
"You can connect to your Quassel core on the default Quassel port 4242. "
"Clients to connect to Quassel from your masaüstü ve mobil cihaz istemcileri mevcuttur."
-#: plinth/modules/quassel/forms.py:38
+#: plinth/modules/quassel/__init__.py:62 plinth/modules/quassel/manifest.py:10
+msgid "Quassel"
+msgstr "Quassel"
+
+#: plinth/modules/quassel/__init__.py:63
+msgid "IRC Client"
+msgstr "IRC İstemcisi"
+
+#: plinth/modules/quassel/forms.py:23
#, fuzzy
#| msgid "Subdomain"
msgid "TLS domain"
msgstr "Alt Alan"
-#: plinth/modules/quassel/forms.py:40
+#: plinth/modules/quassel/forms.py:25
msgid ""
"Select a domain to use TLS with. If the list is empty, please configure at "
"least one domain with certificates."
msgstr ""
-#: plinth/modules/quassel/manifest.py:49
+#: plinth/modules/quassel/manifest.py:34
msgid "Quasseldroid"
msgstr "Quasseldroid"
-#: plinth/modules/radicale/__init__.py:45
-#: plinth/modules/radicale/manifest.py:90
-msgid "Radicale"
-msgstr "Radicale"
-
-#: plinth/modules/radicale/__init__.py:49
-msgid "Calendar and Addressbook"
-msgstr "Takvim ve Adres Defteri"
-
-#: plinth/modules/radicale/__init__.py:53
+#: plinth/modules/radicale/__init__.py:32
#, python-brace-format
msgid ""
"Radicale is a CalDAV and CardDAV server. It allows synchronization and "
@@ -4616,20 +4720,29 @@ msgstr ""
"gereklidir. Radicale'e erişim {box_name} girişi olan herhangi bir kullanıcı "
"tarafından yapılabilir."
-#: plinth/modules/radicale/__init__.py:58
+#: plinth/modules/radicale/__init__.py:37
msgid ""
"Radicale provides a basic web interface, which only supports creating new "
"calendars and addressbooks. It does not support adding events or contacts, "
"which must be done using a separate client."
msgstr ""
-#: plinth/modules/radicale/forms.py:30
+#: plinth/modules/radicale/__init__.py:62
+#: plinth/modules/radicale/manifest.py:75
+msgid "Radicale"
+msgstr "Radicale"
+
+#: plinth/modules/radicale/__init__.py:63
+msgid "Calendar and Addressbook"
+msgstr "Takvim ve Adres Defteri"
+
+#: plinth/modules/radicale/forms.py:15
msgid "Only the owner of a calendar/addressbook can view or make changes."
msgstr ""
"Sadece takvim/adres defterinin sahibi görüntüleyebilir ya da değişiklik "
"yapabilir."
-#: plinth/modules/radicale/forms.py:34
+#: plinth/modules/radicale/forms.py:19
#, fuzzy, python-brace-format
#| msgid ""
#| "Any user can view any calendar/addressbook, but only the owner can make "
@@ -4641,7 +4754,7 @@ msgstr ""
"Herhangi bir kullanıcı takvim/adres defterini görüntüleyebilir ancak sadece "
"sahibi değişiklik yapabilir."
-#: plinth/modules/radicale/forms.py:39
+#: plinth/modules/radicale/forms.py:24
#, fuzzy, python-brace-format
#| msgid "Any user can view or make changes to any calendar/addressbook."
msgid ""
@@ -4651,11 +4764,11 @@ msgstr ""
"Takvim/adres defterini herhangi bir kullanıcı görüntüleyebilir ya da "
"değişiklik yapabilir."
-#: plinth/modules/radicale/manifest.py:25
+#: plinth/modules/radicale/manifest.py:10
msgid "DAVx5"
msgstr ""
-#: plinth/modules/radicale/manifest.py:27
+#: plinth/modules/radicale/manifest.py:12
#, fuzzy
#| msgid ""
#| "Enter the URL of the Radicale server (e.g. http://localhost:5232) and "
@@ -4670,19 +4783,19 @@ msgstr ""
"isminizi girin. DAVdroid mevcut tüm takvimleri ve adres defterlerini "
"gösterecektir ve yenilerini oluşturabileceksiniz."
-#: plinth/modules/radicale/manifest.py:44
+#: plinth/modules/radicale/manifest.py:29
msgid "GNOME Calendar"
msgstr "GNOME Takvim"
-#: plinth/modules/radicale/manifest.py:52
+#: plinth/modules/radicale/manifest.py:37
msgid "Mozilla Thunderbird"
msgstr ""
-#: plinth/modules/radicale/manifest.py:72
+#: plinth/modules/radicale/manifest.py:57
msgid "Evolution"
msgstr "Evolution"
-#: plinth/modules/radicale/manifest.py:74
+#: plinth/modules/radicale/manifest.py:59
msgid ""
"Evolution is a personal information management application that provides "
"integrated mail, calendaring and address book functionality."
@@ -4690,7 +4803,7 @@ msgstr ""
"Evolution, tümleşik adres defteri, takvim ve e-posta sunan kişisel bilgi "
"yönetimi uygulamasıdır."
-#: plinth/modules/radicale/manifest.py:78
+#: plinth/modules/radicale/manifest.py:63
#, fuzzy
#| msgid ""
#| "In Evolution add a new calendar and address book respectively with "
@@ -4708,20 +4821,11 @@ msgstr ""
"isminizi girin. Arama düğmesine tıklamanız mevcut takvimleri ve adres "
"defterlerini listeleyecektir."
-#: plinth/modules/radicale/views.py:56
+#: plinth/modules/radicale/views.py:35
msgid "Access rights configuration updated"
msgstr "Erişim izinleri yapılandırması güncellendi"
-#: plinth/modules/roundcube/__init__.py:35
-#: plinth/modules/roundcube/manifest.py:24
-msgid "Roundcube"
-msgstr "Roundcube"
-
-#: plinth/modules/roundcube/__init__.py:39
-msgid "Email Client"
-msgstr "E-posta İstemcisi"
-
-#: plinth/modules/roundcube/__init__.py:42
+#: plinth/modules/roundcube/__init__.py:21
msgid ""
"Roundcube webmail is a browser-based multilingual IMAP client with an "
"application-like user interface. It provides full functionality you expect "
@@ -4733,7 +4837,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:47
+#: plinth/modules/roundcube/__init__.py:26
#, fuzzy
#| msgid ""
#| "You can access Roundcube from /roundcube. "
@@ -4756,7 +4860,7 @@ msgstr ""
"tavsiye edilir), sunucu alanını imaps://imap.example.com gibi "
"doldurun."
-#: plinth/modules/roundcube/__init__.py:53
+#: plinth/modules/roundcube/__init__.py:32
msgid ""
"For Gmail, username will be your Gmail address, password will be your Google "
"account password and server will be imaps://imap.gmail.com. "
@@ -4771,17 +4875,22 @@ msgstr ""
"lesssecureapps\">https://www.google.com/settings/security/lesssecureapps"
"a>) \"daha az güvenli uygulamalara\" müsaade etmeniz gerekeceğini unutmayın."
-#: plinth/modules/samba/__init__.py:46
-msgid "Samba"
-msgstr ""
+#: plinth/modules/roundcube/__init__.py:54
+#: plinth/modules/roundcube/manifest.py:9
+msgid "Roundcube"
+msgstr "Roundcube"
-#: plinth/modules/samba/__init__.py:53
+#: plinth/modules/roundcube/__init__.py:55
+msgid "Email Client"
+msgstr "E-posta İstemcisi"
+
+#: plinth/modules/samba/__init__.py:32
msgid ""
"Samba allows to share files and folders between FreedomBox and other "
"computers in your local network."
msgstr ""
-#: plinth/modules/samba/__init__.py:56
+#: plinth/modules/samba/__init__.py:35
#, python-brace-format
msgid ""
"After installation, you can choose which disks to use for sharing. Enabled "
@@ -4790,55 +4899,59 @@ msgid ""
"There are three types of shares you can choose from: "
msgstr ""
-#: plinth/modules/samba/__init__.py:61
+#: plinth/modules/samba/__init__.py:40
msgid "Open share - accessible to everyone in your local network."
msgstr ""
-#: plinth/modules/samba/__init__.py:62
+#: plinth/modules/samba/__init__.py:41
msgid ""
"Group share - accessible only to FreedomBox users who are in the freedombox-"
"share group."
msgstr ""
-#: plinth/modules/samba/__init__.py:64
+#: plinth/modules/samba/__init__.py:43
msgid ""
"Home share - every user in the freedombox-share group can have their own "
"private space."
msgstr ""
-#: plinth/modules/samba/__init__.py:68
+#: plinth/modules/samba/__init__.py:47
msgid "Access to the private shares"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:39
-#: plinth/modules/samba/templates/samba.html:50
+#: plinth/modules/samba/__init__.py:61
+msgid "Samba"
+msgstr ""
+
+#: plinth/modules/samba/templates/samba.html:24
+#: plinth/modules/samba/templates/samba.html:35
#, fuzzy
#| msgid "Shared"
msgid "Shares"
msgstr "Paylaşılan"
-#: plinth/modules/samba/templates/samba.html:41
+#: plinth/modules/samba/templates/samba.html:26
msgid ""
"Note: Only specially created directories will be shared on selected disks, "
"not the whole disk."
msgstr ""
-#: plinth/modules/samba/templates/samba.html:49
+#: plinth/modules/samba/templates/samba.html:34
#, fuzzy
#| msgid "Domain Name"
msgid "Disk Name"
msgstr "Alan Adı"
-#: plinth/modules/samba/templates/samba.html:51
-#: plinth/modules/storage/templates/storage.html:44
+#: plinth/modules/samba/templates/samba.html:36
+#: plinth/modules/storage/templates/storage.html:29
msgid "Used"
msgstr "Kullanılan"
-#: plinth/modules/samba/templates/samba.html:72
+#: plinth/modules/samba/templates/samba.html:57
msgid "VFAT partitions are not supported"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:103
+#: plinth/modules/samba/templates/samba.html:88
#, python-format
msgid ""
"You can find additional information about disks on the users module page."
msgstr ""
-#: plinth/modules/samba/templates/samba.html:109
+#: plinth/modules/samba/templates/samba.html:94
msgid "Users who can currently access group and home shares"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:113
+#: plinth/modules/samba/templates/samba.html:98
msgid ""
"Users needing to re-enter their password on the password change page to "
"access group and home shares"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:118
+#: plinth/modules/samba/templates/samba.html:103
#, fuzzy
#| msgid "Available Domains"
msgid "Unavailable Shares"
msgstr "Mevcut Alanlar"
-#: plinth/modules/samba/templates/samba.html:120
+#: plinth/modules/samba/templates/samba.html:105
msgid ""
"Shares that are configured but the disk is not available. If the disk is "
"plugged back in, sharing will be automatically enabled."
msgstr ""
-#: plinth/modules/samba/templates/samba.html:128
+#: plinth/modules/samba/templates/samba.html:113
#, fuzzy
#| msgid "Shared"
msgid "Share name"
msgstr "Paylaşılan"
-#: plinth/modules/samba/templates/samba.html:129
+#: plinth/modules/samba/templates/samba.html:114
#, fuzzy
#| msgid "Actions"
msgid "Action"
msgstr "Eylemler"
-#: plinth/modules/samba/views.py:61 plinth/modules/storage/forms.py:164
+#: plinth/modules/samba/views.py:43 plinth/modules/storage/forms.py:149
#, fuzzy
#| msgid "Add Service"
msgid "Open Share"
msgstr "Servis Ekle"
-#: plinth/modules/samba/views.py:62 plinth/modules/storage/forms.py:162
+#: plinth/modules/samba/views.py:44 plinth/modules/storage/forms.py:147
#, fuzzy
#| msgid "Add Service"
msgid "Group Share"
msgstr "Servis Ekle"
-#: plinth/modules/samba/views.py:63
+#: plinth/modules/samba/views.py:45
#, fuzzy
#| msgid "Homepage"
msgid "Home Share"
msgstr "Ana sayfa"
-#: plinth/modules/samba/views.py:96
+#: plinth/modules/samba/views.py:78
#, fuzzy
#| msgid "{name} deleted."
msgid "Share enabled."
msgstr "{name} silindi."
-#: plinth/modules/samba/views.py:101
+#: plinth/modules/samba/views.py:83
#, fuzzy, python-brace-format
#| msgid "Error installing application: {error}"
msgid "Error enabling share: {error_message}"
msgstr "Uygulamanın kurulmasında hata: {error}"
-#: plinth/modules/samba/views.py:106
+#: plinth/modules/samba/views.py:88
#, fuzzy
#| msgid "Shared"
msgid "Share disabled."
msgstr "Paylaşılan"
-#: plinth/modules/samba/views.py:111
+#: plinth/modules/samba/views.py:93
#, fuzzy, python-brace-format
#| msgid "Error installing application: {error}"
msgid "Error disabling share: {error_message}"
msgstr "Uygulamanın kurulmasında hata: {error}"
-#: plinth/modules/searx/__init__.py:41 plinth/modules/searx/manifest.py:24
-msgid "Searx"
-msgstr ""
-
-#: plinth/modules/searx/__init__.py:45
-#, fuzzy
-#| msgid "Web Server"
-msgid "Web Search"
-msgstr "Web Sunucusu"
-
-#: plinth/modules/searx/__init__.py:48
+#: plinth/modules/searx/__init__.py:25
msgid ""
"Searx is a privacy-respecting Internet metasearch engine. It aggregrates and "
"displays results from multiple search engines."
msgstr ""
-#: plinth/modules/searx/__init__.py:50
+#: plinth/modules/searx/__init__.py:27
msgid ""
"Searx can be used to avoid tracking and profiling by search engines. It "
"stores no cookies by default."
msgstr ""
-#: plinth/modules/searx/__init__.py:54
+#: plinth/modules/searx/__init__.py:31
msgid "Search the web"
msgstr ""
-#: plinth/modules/searx/forms.py:30
+#: plinth/modules/searx/__init__.py:47 plinth/modules/searx/manifest.py:9
+msgid "Searx"
+msgstr ""
+
+#: plinth/modules/searx/__init__.py:48
+#, fuzzy
+#| msgid "Web Server"
+msgid "Web Search"
+msgstr "Web Sunucusu"
+
+#: plinth/modules/searx/forms.py:15
#, fuzzy
#| msgid "Save Services"
msgid "Safe Search"
msgstr "Servisleri Kaydet"
-#: plinth/modules/searx/forms.py:31
+#: plinth/modules/searx/forms.py:16
msgid "Select the default family filter to apply to your search results."
msgstr ""
-#: plinth/modules/searx/forms.py:32
+#: plinth/modules/searx/forms.py:17
msgid "None"
msgstr ""
-#: plinth/modules/searx/forms.py:32
+#: plinth/modules/searx/forms.py:17
#, fuzzy
#| msgid "Mode"
msgid "Moderate"
msgstr "Kip"
-#: plinth/modules/searx/forms.py:32
+#: plinth/modules/searx/forms.py:17
msgid "Strict"
msgstr ""
-#: plinth/modules/searx/forms.py:35
+#: plinth/modules/searx/forms.py:20
msgid "Allow Public Access"
msgstr ""
-#: plinth/modules/searx/forms.py:36
+#: plinth/modules/searx/forms.py:21
msgid "Allow this application to be used by anyone who can reach it."
msgstr ""
-#: plinth/modules/searx/views.py:59 plinth/modules/searx/views.py:70
-#: plinth/modules/tor/views.py:149 plinth/modules/tor/views.py:176
+#: plinth/modules/searx/views.py:39 plinth/modules/searx/views.py:50
+#: plinth/modules/tor/views.py:130 plinth/modules/tor/views.py:157
msgid "Configuration updated."
msgstr "Kurulum güncellendi."
-#: plinth/modules/security/forms.py:28
+#: plinth/modules/security/forms.py:13
msgid "Restrict console logins (recommended)"
msgstr "Konsol girişlerini kısıtla (tavsiye edilir)"
-#: plinth/modules/security/forms.py:29
+#: plinth/modules/security/forms.py:14
msgid ""
"When this option is enabled, only users in the \"admin\" group will be able "
"to log in to console or via SSH. Console users may be able to access some "
@@ -5000,11 +5113,11 @@ msgstr ""
"kullanıcılarının bazı hizmetlere ek izne gerek olmadan erişebilmesi mümkün "
"olabilir."
-#: plinth/modules/security/forms.py:34
+#: plinth/modules/security/forms.py:19
msgid "Fail2Ban (recommended)"
msgstr "Fail2Ban (tavsiye edilir)"
-#: plinth/modules/security/forms.py:35
+#: plinth/modules/security/forms.py:20
msgid ""
"When this option is enabled, Fail2Ban will limit brute force break-in "
"attempts to the SSH server and other enabled password protected internet-"
@@ -5014,115 +5127,107 @@ msgstr ""
"ile korunmuş İnternet servislerine yapılan kaba kuvvetle parola bulma "
"saldırı teşebbüslerini sınırlayacaktır."
-#: plinth/modules/security/templates/security.html:26
-#: plinth/modules/security/templates/security.html:28
+#: plinth/modules/security/templates/security.html:11
+#: plinth/modules/security/templates/security.html:13
#, fuzzy
#| msgid "Security"
msgid "Show security report"
msgstr "Güvenlik"
-#: plinth/modules/security/templates/security_report.html:25
-#: plinth/modules/security/views.py:87
+#: plinth/modules/security/templates/security_report.html:10
+#: plinth/modules/security/views.py:71
#, fuzzy
#| msgid "Security"
msgid "Security Report"
msgstr "Güvenlik"
-#: plinth/modules/security/templates/security_report.html:27
+#: plinth/modules/security/templates/security_report.html:12
#, python-format
msgid ""
"The installed version of FreedomBox has %(count)s reported security "
"vulnerabilities."
msgstr ""
-#: plinth/modules/security/templates/security_report.html:33
+#: plinth/modules/security/templates/security_report.html:18
msgid ""
"The following table lists the current reported number, and historical count, "
"of security vulnerabilities for each installed app."
msgstr ""
-#: plinth/modules/security/templates/security_report.html:39
+#: plinth/modules/security/templates/security_report.html:24
msgid ""
"For apps that provide services, the \"Sandboxed\" column shows whether "
"sandboxing features are in use. Sandboxing mitigates the impact of a "
"potentially compromised app to the rest of the system."
msgstr ""
-#: plinth/modules/security/templates/security_report.html:46
+#: plinth/modules/security/templates/security_report.html:31
msgid ""
"\"Sandbox Coverage\" is a score of how effectively the service is isolated "
"from the rest of the system. It is only displayed while the service is "
"running."
msgstr ""
-#: plinth/modules/security/templates/security_report.html:55
+#: plinth/modules/security/templates/security_report.html:40
#, fuzzy
#| msgid "Name"
msgid "App Name"
msgstr "İsim"
-#: plinth/modules/security/templates/security_report.html:56
+#: plinth/modules/security/templates/security_report.html:41
msgid "Current Vulnerabilities"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:57
+#: plinth/modules/security/templates/security_report.html:42
msgid "Past Vulnerabilities"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:58
+#: plinth/modules/security/templates/security_report.html:43
#, fuzzy
#| msgid "Block Sandbox"
msgid "Sandboxed"
msgstr "Blok Kum Havuzu"
-#: plinth/modules/security/templates/security_report.html:59
+#: plinth/modules/security/templates/security_report.html:44
#, fuzzy
#| msgid "Block Sandbox"
msgid "Sandbox Coverage"
msgstr "Blok Kum Havuzu"
-#: plinth/modules/security/templates/security_report.html:70
+#: plinth/modules/security/templates/security_report.html:55
msgid "N/A"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:72
+#: plinth/modules/security/templates/security_report.html:57
#, fuzzy
#| msgid "yes"
msgid "Yes"
msgstr "evet"
-#: plinth/modules/security/templates/security_report.html:74
+#: plinth/modules/security/templates/security_report.html:59
msgid "No"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:81
+#: plinth/modules/security/templates/security_report.html:66
#, fuzzy
#| msgid "is not running"
msgid "Not running"
msgstr "çalışmamaktadır"
-#: plinth/modules/security/views.py:69
+#: plinth/modules/security/views.py:53
#, python-brace-format
msgid "Error setting restricted access: {exception}"
msgstr "Kısıtlı erişimin ayarlanmasında hata: {exception}"
-#: plinth/modules/security/views.py:72
+#: plinth/modules/security/views.py:56
msgid "Updated security configuration"
msgstr "Güvenlik yapılandırması güncellendi"
-#: plinth/modules/shaarli/__init__.py:34 plinth/modules/shaarli/manifest.py:23
-msgid "Shaarli"
-msgstr "Shaarli"
-
-#: plinth/modules/shaarli/__init__.py:36
-msgid "Bookmarks"
-msgstr "Yer İmleri"
-
-#: plinth/modules/shaarli/__init__.py:39
+#: plinth/modules/shaarli/__init__.py:20
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:21
#, fuzzy
#| msgid ""
#| "When enabled, Shaarli will be available from /"
@@ -5139,15 +5244,15 @@ msgstr ""
"ayarlamanız gerekecek olan sadece tek bir kullanıcı hesabını desteklediğini "
"unutmayın."
-#: plinth/modules/shadowsocks/__init__.py:35
-msgid "Shadowsocks"
-msgstr "Shadowsocks"
+#: plinth/modules/shaarli/__init__.py:39 plinth/modules/shaarli/manifest.py:8
+msgid "Shaarli"
+msgstr "Shaarli"
-#: plinth/modules/shadowsocks/__init__.py:39
-msgid "Socks5 Proxy"
-msgstr "Socks5 Vekil Sunucusu"
+#: plinth/modules/shaarli/__init__.py:40
+msgid "Bookmarks"
+msgstr "Yer İmleri"
-#: plinth/modules/shadowsocks/__init__.py:46
+#: plinth/modules/shadowsocks/__init__.py:25
msgid ""
"Shadowsocks is a lightweight and secure SOCKS5 proxy, designed to protect "
"your Internet traffic. It can be used to bypass Internet filtering and "
@@ -5157,7 +5262,7 @@ msgstr ""
"bir SOCKS5 vekil sunucusudur. İnternet filtreleme ve sansürünü atlatmak için "
"kullanılabilir."
-#: plinth/modules/shadowsocks/__init__.py:50
+#: plinth/modules/shadowsocks/__init__.py:29
#, python-brace-format
msgid ""
"Your {box_name} can run a Shadowsocks client, that can connect to a "
@@ -5170,7 +5275,7 @@ msgstr ""
"çalıştıracaktır. Yerel cihazlar bu vekil sunucuya bağlanacaktır ve verileri "
"şifrelenip Shadowsocks sunucusu aracılığıyla aktarılacaktır."
-#: plinth/modules/shadowsocks/__init__.py:55
+#: plinth/modules/shadowsocks/__init__.py:34
msgid ""
"To use Shadowsocks after setup, set the SOCKS5 proxy URL in your device, "
"browser or application to http://freedombox_address:1080/"
@@ -5179,160 +5284,164 @@ msgstr ""
"tarayıcınızda ya da uygulamanızda SOCKS5 adresini http://"
"freedombox_address:1080/ olarak ayarlayın"
-#: plinth/modules/shadowsocks/forms.py:28
-#: plinth/modules/shadowsocks/forms.py:29
+#: plinth/modules/shadowsocks/__init__.py:50
+msgid "Shadowsocks"
+msgstr "Shadowsocks"
+
+#: plinth/modules/shadowsocks/__init__.py:52
+msgid "Socks5 Proxy"
+msgstr "Socks5 Vekil Sunucusu"
+
+#: plinth/modules/shadowsocks/forms.py:13
+#: plinth/modules/shadowsocks/forms.py:14
msgid "Recommended"
msgstr "Tavsiye edilir"
-#: plinth/modules/shadowsocks/forms.py:52
+#: plinth/modules/shadowsocks/forms.py:37
msgid "Server"
msgstr "Sunucu"
-#: plinth/modules/shadowsocks/forms.py:53
+#: plinth/modules/shadowsocks/forms.py:38
msgid "Server hostname or IP address"
msgstr "Sunucu makine ismi ya da IP adresi"
-#: plinth/modules/shadowsocks/forms.py:57
+#: plinth/modules/shadowsocks/forms.py:42
msgid "Server port number"
msgstr "Sunucu port numarası"
-#: plinth/modules/shadowsocks/forms.py:60
+#: plinth/modules/shadowsocks/forms.py:45
msgid "Password used to encrypt data. Must match server password."
msgstr ""
"Verileri şifrelemek için kullanılacak parola. Sunucu parolasıyla eşleşmesi "
"gerekir."
-#: plinth/modules/shadowsocks/forms.py:65
+#: plinth/modules/shadowsocks/forms.py:50
msgid "Encryption method. Must match setting on server."
msgstr "Şifreleme metodu. Sunucudaki ayarla eşleşmesi gerekir."
-#: plinth/modules/sharing/__init__.py:34
-#, fuzzy
-#| msgid "File Synchronization"
-msgid "Sharing"
-msgstr "Dosya eşleşmesi"
-
-#: plinth/modules/sharing/__init__.py:38
+#: plinth/modules/sharing/__init__.py:21
#, python-brace-format
msgid ""
"Sharing allows you to share files and folders on your {box_name} over the "
"web with chosen groups of users."
msgstr ""
-#: plinth/modules/sharing/forms.py:33
+#: plinth/modules/sharing/__init__.py:38
+#, fuzzy
+#| msgid "File Synchronization"
+msgid "Sharing"
+msgstr "Dosya eşleşmesi"
+
+#: plinth/modules/sharing/forms.py:18
msgid "Name of the share"
msgstr ""
-#: plinth/modules/sharing/forms.py:35
+#: plinth/modules/sharing/forms.py:20
msgid ""
"A lowercase alpha-numeric string that uniquely identifies a share. Example: "
"media."
msgstr ""
-#: plinth/modules/sharing/forms.py:39
+#: plinth/modules/sharing/forms.py:24
msgid "Path to share"
msgstr ""
-#: plinth/modules/sharing/forms.py:40
+#: plinth/modules/sharing/forms.py:25
msgid "Disk path to a folder on this server that you intend to share."
msgstr ""
-#: plinth/modules/sharing/forms.py:43
+#: plinth/modules/sharing/forms.py:28
#, fuzzy
#| msgid "Publish Key"
msgid "Public share"
msgstr "Anahtarı Yayınla"
-#: plinth/modules/sharing/forms.py:44
+#: plinth/modules/sharing/forms.py:29
msgid "Make files in this folder available to anyone with the link."
msgstr ""
-#: plinth/modules/sharing/forms.py:48
+#: plinth/modules/sharing/forms.py:33
msgid "User groups that can read the files in the share"
msgstr ""
-#: plinth/modules/sharing/forms.py:50
+#: plinth/modules/sharing/forms.py:35
msgid ""
"Users of the selected user groups will be able to read the files in the "
"share."
msgstr ""
-#: plinth/modules/sharing/forms.py:67
+#: plinth/modules/sharing/forms.py:52
#, fuzzy
#| msgid "This service already exists"
msgid "A share with this name already exists."
msgstr "Bu servis zaten mevcuttur"
-#: plinth/modules/sharing/forms.py:78
+#: plinth/modules/sharing/forms.py:63
msgid "Shares should be either public or shared with at least one group"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:39
-#: plinth/modules/sharing/templates/sharing.html:42
+#: plinth/modules/sharing/templates/sharing.html:24
+#: plinth/modules/sharing/templates/sharing.html:27
#, fuzzy
#| msgid "Add Service"
msgid "Add share"
msgstr "Servis Ekle"
-#: plinth/modules/sharing/templates/sharing.html:47
+#: plinth/modules/sharing/templates/sharing.html:32
msgid "No shares currently configured."
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:53
+#: plinth/modules/sharing/templates/sharing.html:38
msgid "Disk Path"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:54
+#: plinth/modules/sharing/templates/sharing.html:39
#, fuzzy
#| msgid "Shared"
msgid "Shared Over"
msgstr "Paylaşılan"
-#: plinth/modules/sharing/templates/sharing.html:55
+#: plinth/modules/sharing/templates/sharing.html:40
#, fuzzy
#| msgid "Groups"
msgid "With Groups"
msgstr "Gruplar"
-#: plinth/modules/sharing/templates/sharing.html:73
+#: plinth/modules/sharing/templates/sharing.html:58
msgid "public access"
msgstr ""
-#: plinth/modules/sharing/views.py:55
+#: plinth/modules/sharing/views.py:39
#, fuzzy
#| msgid "Shared"
msgid "Share added."
msgstr "Paylaşılan"
-#: plinth/modules/sharing/views.py:60
+#: plinth/modules/sharing/views.py:44
#, fuzzy
#| msgid "Add Service"
msgid "Add Share"
msgstr "Servis Ekle"
-#: plinth/modules/sharing/views.py:75
+#: plinth/modules/sharing/views.py:59
#, fuzzy
#| msgid "Shared"
msgid "Share edited."
msgstr "Paylaşılan"
-#: plinth/modules/sharing/views.py:80
+#: plinth/modules/sharing/views.py:64
#, fuzzy
#| msgid "Edit User"
msgid "Edit Share"
msgstr "Kullanıcıyı Düzenle"
-#: plinth/modules/sharing/views.py:111
+#: plinth/modules/sharing/views.py:95
#, fuzzy
#| msgid "{name} deleted."
msgid "Share deleted."
msgstr "{name} silindi."
-#: plinth/modules/snapshot/__init__.py:37
-msgid "Storage Snapshots"
-msgstr "Depolama Anlıkları"
-
-#: plinth/modules/snapshot/__init__.py:40
+#: plinth/modules/snapshot/__init__.py:23
#, fuzzy
#| msgid ""
#| "Snapshots allows creating and managing filesystem snapshots. These can be "
@@ -5347,7 +5456,7 @@ msgstr ""
"verir. Bunlar, sisteme istenmeyen değişiklikler yapılması durumunda sistemin "
"daha önce bilinen iyi bir duruma geri getirilmesini sağlar."
-#: plinth/modules/snapshot/__init__.py:44
+#: plinth/modules/snapshot/__init__.py:27
#, no-python-format
msgid ""
"Snapshots are taken periodically (called timeline snapshots) and also before "
@@ -5355,31 +5464,35 @@ msgid ""
"cleaned up according to the settings below."
msgstr ""
-#: plinth/modules/snapshot/__init__.py:47
+#: plinth/modules/snapshot/__init__.py:30
msgid ""
"Snapshots currently work on btrfs file systems only and on the root "
"partition only. Snapshots are not a replacement for backups since they can only be stored on the same partition. "
msgstr ""
-#: plinth/modules/snapshot/forms.py:27
+#: plinth/modules/snapshot/__init__.py:52
+msgid "Storage Snapshots"
+msgstr "Depolama Anlıkları"
+
+#: plinth/modules/snapshot/forms.py:12
msgid "Free Disk Space to Maintain"
msgstr ""
-#: plinth/modules/snapshot/forms.py:28
+#: plinth/modules/snapshot/forms.py:13
msgid ""
"Maintain this percentage of free space on the disk. If free space falls "
"below this value, older snapshots are removed until this much free space is "
"regained. The default value is 30%."
msgstr ""
-#: plinth/modules/snapshot/forms.py:35
+#: plinth/modules/snapshot/forms.py:20
#, fuzzy
#| msgid "Enable Timeline Snapshots"
msgid "Timeline Snapshots"
msgstr "Zaman Çizelgesi Anlıklarını Etkinleştir"
-#: plinth/modules/snapshot/forms.py:36
+#: plinth/modules/snapshot/forms.py:21
#, fuzzy
#| msgid ""
#| "Uncheck this to disable timeline snapshots (hourly, daily, monthly and "
@@ -5390,115 +5503,115 @@ msgstr ""
"Zaman çizelgesi anlıklarını (saat, gün, ay ve yıl başı) devre dışı bırakmak "
"için bu şıkkı boş bırakın."
-#: plinth/modules/snapshot/forms.py:41
+#: plinth/modules/snapshot/forms.py:26
msgid "Software Installation Snapshots"
msgstr ""
-#: plinth/modules/snapshot/forms.py:42
+#: plinth/modules/snapshot/forms.py:27
msgid "Enable or disable snapshots before and after software installation"
msgstr ""
-#: plinth/modules/snapshot/forms.py:47
+#: plinth/modules/snapshot/forms.py:32
#, fuzzy
#| msgid "Storage Snapshots"
msgid "Hourly Snapshots Limit"
msgstr "Depolama Anlıkları"
-#: plinth/modules/snapshot/forms.py:48
+#: plinth/modules/snapshot/forms.py:33
msgid "Keep a maximum of this many hourly snapshots."
msgstr ""
-#: plinth/modules/snapshot/forms.py:51
+#: plinth/modules/snapshot/forms.py:36
#, fuzzy
#| msgid "Delete Snapshots"
msgid "Daily Snapshots Limit"
msgstr "Anlıkları Sil"
-#: plinth/modules/snapshot/forms.py:52
+#: plinth/modules/snapshot/forms.py:37
msgid "Keep a maximum of this many daily snapshots."
msgstr ""
-#: plinth/modules/snapshot/forms.py:55
+#: plinth/modules/snapshot/forms.py:40
#, fuzzy
#| msgid "Delete Snapshots"
msgid "Weekly Snapshots Limit"
msgstr "Anlıkları Sil"
-#: plinth/modules/snapshot/forms.py:56
+#: plinth/modules/snapshot/forms.py:41
msgid "Keep a maximum of this many weekly snapshots."
msgstr ""
-#: plinth/modules/snapshot/forms.py:59
+#: plinth/modules/snapshot/forms.py:44
msgid "Monthly Snapshots Limit"
msgstr ""
-#: plinth/modules/snapshot/forms.py:60
+#: plinth/modules/snapshot/forms.py:45
msgid "Keep a maximum of this many monthly snapshots."
msgstr ""
-#: plinth/modules/snapshot/forms.py:63
+#: plinth/modules/snapshot/forms.py:48
#, fuzzy
#| msgid "Delete Snapshots"
msgid "Yearly Snapshots Limit"
msgstr "Anlıkları Sil"
-#: plinth/modules/snapshot/forms.py:64
+#: plinth/modules/snapshot/forms.py:49
msgid ""
"Keep a maximum of this many yearly snapshots. The default value is 0 "
"(disabled)."
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:27
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:12
msgid "Delete the following snapshots permanently?"
msgstr "Bu anlıklar daimi olarak silinsin mi?"
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:31
-#: plinth/modules/snapshot/templates/snapshot_manage.html:43
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:39
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:16
+#: plinth/modules/snapshot/templates/snapshot_manage.html:28
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:24
msgid "Number"
msgstr "Sayı"
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:32
-#: plinth/modules/snapshot/templates/snapshot_manage.html:44
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:40
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:17
+#: plinth/modules/snapshot/templates/snapshot_manage.html:29
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:25
msgid "Date"
msgstr "Tarih"
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:52
-#: plinth/modules/snapshot/templates/snapshot_manage.html:37
-#: plinth/modules/snapshot/views.py:196
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:37
+#: plinth/modules/snapshot/templates/snapshot_manage.html:22
+#: plinth/modules/snapshot/views.py:175
msgid "Delete Snapshots"
msgstr "Anlıkları Sil"
-#: plinth/modules/snapshot/templates/snapshot_manage.html:33
+#: plinth/modules/snapshot/templates/snapshot_manage.html:18
msgid "Create Snapshot"
msgstr "Anlık Oluştur"
-#: plinth/modules/snapshot/templates/snapshot_manage.html:46
+#: plinth/modules/snapshot/templates/snapshot_manage.html:31
msgid "Rollback"
msgstr "Geri getir"
-#: plinth/modules/snapshot/templates/snapshot_manage.html:57
+#: plinth/modules/snapshot/templates/snapshot_manage.html:42
msgid "active"
msgstr "etkin"
-#: plinth/modules/snapshot/templates/snapshot_manage.html:66
+#: plinth/modules/snapshot/templates/snapshot_manage.html:51
#, python-format
msgid "Rollback to snapshot #%(number)s"
msgstr "#%(number)s sayılı anlığa geri getir"
-#: plinth/modules/snapshot/templates/snapshot_not_supported.html:26
+#: plinth/modules/snapshot/templates/snapshot_not_supported.html:11
#, python-format
msgid ""
"Your have a filesystem of type %(fs_type)s. Snapshots are "
"currently only available on %(types_supported)s filesystems."
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:27
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:12
msgid "Roll back the system to this snapshot?"
msgstr "Sistem bu anlığa geri getirilsin mi?"
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:30
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:15
msgid ""
"A new snapshot with the current state of the file system will be "
"automatically created. You will be able to undo a rollback by reverting to "
@@ -5508,67 +5621,63 @@ msgstr ""
"oluşturulacaktır. Herhangi bir anlığa geri getirmek, yeni oluşturulan anlığa "
"geri getirmek suretiyle iptal edilebilecektir."
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:57
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:42
#, python-format
msgid "Rollback to Snapshot #%(number)s"
msgstr "#%(number)s sayılı anlığa geri al"
-#: plinth/modules/snapshot/views.py:45
+#: plinth/modules/snapshot/views.py:30
#, fuzzy
#| msgid "Storage Snapshots"
msgid "Manage Snapshots"
msgstr "Depolama Anlıkları"
-#: plinth/modules/snapshot/views.py:98
+#: plinth/modules/snapshot/views.py:79
msgid "Created snapshot."
msgstr "Anlık oluşturuldu."
-#: plinth/modules/snapshot/views.py:156
+#: plinth/modules/snapshot/views.py:135
#, fuzzy
#| msgid "Timeline Snapshots configuration updated"
msgid "Storage snapshots configuration updated"
msgstr "Zaman Çizelgesi Anlıklarının yapılandırması güncellendi"
-#: plinth/modules/snapshot/views.py:160 plinth/modules/tor/views.py:79
+#: plinth/modules/snapshot/views.py:139 plinth/modules/tor/views.py:60
#, python-brace-format
msgid "Action error: {0} [{1}] [{2}]"
msgstr "Eylem hatası: {0} [{1}] [{2}]"
-#: plinth/modules/snapshot/views.py:175
+#: plinth/modules/snapshot/views.py:154
#, fuzzy
#| msgid "Deleted all snapshots."
msgid "Deleted all snapshots"
msgstr "Tüm anlıklar silindi."
-#: plinth/modules/snapshot/views.py:179
+#: plinth/modules/snapshot/views.py:158
#, fuzzy
#| msgid "Delete all the snapshots"
msgid "Deleted selected snapshots"
msgstr "Tüm anlıkları sil"
-#: plinth/modules/snapshot/views.py:184
+#: plinth/modules/snapshot/views.py:163
msgid "Snapshot is currently in use. Please try again later."
msgstr ""
-#: plinth/modules/snapshot/views.py:207
+#: plinth/modules/snapshot/views.py:186
#, python-brace-format
msgid "Rolled back to snapshot #{number}."
msgstr "#{number} sayılı anlığa geri alındı."
-#: plinth/modules/snapshot/views.py:210
+#: plinth/modules/snapshot/views.py:189
msgid "The system must be restarted to complete the rollback."
msgstr ""
"Geri alınmanın tamamlanması için sistemin yeniden başlatılması gereklidir."
-#: plinth/modules/snapshot/views.py:222
+#: plinth/modules/snapshot/views.py:201
msgid "Rollback to Snapshot"
msgstr "Anlığa Geri Al"
-#: plinth/modules/ssh/__init__.py:43
-msgid "Secure Shell (SSH) Server"
-msgstr "Güvenli Kabuk (SSH) Sunucusu"
-
-#: plinth/modules/ssh/__init__.py:46
+#: plinth/modules/ssh/__init__.py:29
msgid ""
"A Secure Shell server uses the secure shell protocol to accept connections "
"from remote computers. An authorized remote computer can perform "
@@ -5580,62 +5689,62 @@ msgstr ""
"bilgisayar bu bağlantıları vasıtasıyla yönetim işlemleri yapabilir, dosya "
"kopyalayabilir ve diğer servisleri çalıştırabilir."
-#: plinth/modules/ssh/forms.py:30
+#: plinth/modules/ssh/__init__.py:50
+msgid "Secure Shell (SSH) Server"
+msgstr "Güvenli Kabuk (SSH) Sunucusu"
+
+#: plinth/modules/ssh/forms.py:15
#, fuzzy
#| msgid "Use HTTP basic authentication"
msgid "Disable password authentication"
msgstr "Temel HTTP kimlik doğrulamasını kullan"
-#: plinth/modules/ssh/forms.py:31
+#: plinth/modules/ssh/forms.py:16
msgid ""
"Improves security by preventing password guessing. Ensure that you have "
"setup SSH keys in your administrator user account before enabling this "
"option."
msgstr ""
-#: plinth/modules/ssh/templates/ssh.html:26
+#: plinth/modules/ssh/templates/ssh.html:11
#, fuzzy
#| msgid "SSH Fingerprint"
msgid "Server Fingerprints"
msgstr "SSH Parmak izi"
-#: plinth/modules/ssh/templates/ssh.html:29
+#: plinth/modules/ssh/templates/ssh.html:14
msgid ""
"When connecting to the server, ensure that the fingerprint shown by the SSH "
"client matches one of these fingerprints."
msgstr ""
-#: plinth/modules/ssh/templates/ssh.html:38
+#: plinth/modules/ssh/templates/ssh.html:23
msgid "Algorithm"
msgstr ""
-#: plinth/modules/ssh/templates/ssh.html:39
+#: plinth/modules/ssh/templates/ssh.html:24
#, fuzzy
#| msgid "SSH Fingerprint"
msgid "Fingerprint"
msgstr "SSH Parmak izi"
-#: plinth/modules/ssh/views.py:66
+#: plinth/modules/ssh/views.py:48
msgid "SSH authentication with password disabled."
msgstr ""
-#: plinth/modules/ssh/views.py:69
+#: plinth/modules/ssh/views.py:51
msgid "SSH authentication with password enabled."
msgstr ""
-#: plinth/modules/sso/__init__.py:30
+#: plinth/modules/sso/__init__.py:33
msgid "Single Sign On"
msgstr "Tekli Oturum Açma"
-#: plinth/modules/sso/templates/login.html:35
+#: plinth/modules/sso/templates/login.html:20
msgid "Login"
msgstr "Giriş"
-#: plinth/modules/storage/__init__.py:39 plinth/modules/storage/__init__.py:331
-msgid "Storage"
-msgstr "Depolama"
-
-#: plinth/modules/storage/__init__.py:47
+#: plinth/modules/storage/__init__.py:30
#, python-brace-format
msgid ""
"This module allows you to manage storage media attached to your {box_name}. "
@@ -5643,90 +5752,94 @@ msgid ""
"media, expand the root partition etc."
msgstr ""
-#: plinth/modules/storage/__init__.py:224
+#: plinth/modules/storage/__init__.py:52 plinth/modules/storage/__init__.py:318
+msgid "Storage"
+msgstr "Depolama"
+
+#: plinth/modules/storage/__init__.py:211
#, python-brace-format
msgid "{disk_size:.1f} bytes"
msgstr "{disk_size:.1f} bayt"
-#: plinth/modules/storage/__init__.py:228
+#: plinth/modules/storage/__init__.py:215
#, python-brace-format
msgid "{disk_size:.1f} KiB"
msgstr "{disk_size:.1f} KiB"
-#: plinth/modules/storage/__init__.py:232
+#: plinth/modules/storage/__init__.py:219
#, python-brace-format
msgid "{disk_size:.1f} MiB"
msgstr "{disk_size:.1f} MiB"
-#: plinth/modules/storage/__init__.py:236
+#: plinth/modules/storage/__init__.py:223
#, python-brace-format
msgid "{disk_size:.1f} GiB"
msgstr "{disk_size:.1f} GiB"
-#: plinth/modules/storage/__init__.py:239
+#: plinth/modules/storage/__init__.py:226
#, python-brace-format
msgid "{disk_size:.1f} TiB"
msgstr "{disk_size:.1f} TiB"
-#: plinth/modules/storage/__init__.py:246
+#: plinth/modules/storage/__init__.py:233
msgid "The operation failed."
msgstr ""
-#: plinth/modules/storage/__init__.py:248
+#: plinth/modules/storage/__init__.py:235
msgid "The operation was cancelled."
msgstr ""
-#: plinth/modules/storage/__init__.py:250
+#: plinth/modules/storage/__init__.py:237
#, fuzzy
#| msgid "repro service is running"
msgid "The device is already unmounting."
msgstr "repro servisi çalışmaktadır"
-#: plinth/modules/storage/__init__.py:252
+#: plinth/modules/storage/__init__.py:239
msgid "The operation is not supported due to missing driver/tool support."
msgstr ""
-#: plinth/modules/storage/__init__.py:255
+#: plinth/modules/storage/__init__.py:242
msgid "The operation timed out."
msgstr ""
-#: plinth/modules/storage/__init__.py:257
+#: plinth/modules/storage/__init__.py:244
msgid "The operation would wake up a disk that is in a deep-sleep state."
msgstr ""
-#: plinth/modules/storage/__init__.py:260
+#: plinth/modules/storage/__init__.py:247
msgid "Attempting to unmount a device that is busy."
msgstr ""
-#: plinth/modules/storage/__init__.py:262
+#: plinth/modules/storage/__init__.py:249
msgid "The operation has already been cancelled."
msgstr ""
-#: plinth/modules/storage/__init__.py:268
+#: plinth/modules/storage/__init__.py:255
msgid "Not authorized to perform the requested operation."
msgstr ""
-#: plinth/modules/storage/__init__.py:270
+#: plinth/modules/storage/__init__.py:257
#, fuzzy
#| msgid "This service already exists"
msgid "The device is already mounted."
msgstr "Bu servis zaten mevcuttur"
-#: plinth/modules/storage/__init__.py:272
+#: plinth/modules/storage/__init__.py:259
#, fuzzy
#| msgid "repro service is not running"
msgid "The device is not mounted."
msgstr "repro servisi çalışmamaktadır"
-#: plinth/modules/storage/__init__.py:275
+#: plinth/modules/storage/__init__.py:262
msgid "Not permitted to use the requested option."
msgstr ""
-#: plinth/modules/storage/__init__.py:278
+#: plinth/modules/storage/__init__.py:265
msgid "The device is mounted by another user."
msgstr ""
-#: plinth/modules/storage/__init__.py:326
+#: plinth/modules/storage/__init__.py:313
#, fuzzy, no-python-format, python-brace-format
#| msgid ""
#| "Warning: Low space on system partition ({percent_used}% used, "
@@ -5736,73 +5849,73 @@ msgstr ""
"İkaz: sistem disk bölümünde düşük alan (%{percent_used} kullanıldı, "
"{free_space} boş)."
-#: plinth/modules/storage/__init__.py:328
+#: plinth/modules/storage/__init__.py:315
msgid "Low disk space"
msgstr ""
-#: plinth/modules/storage/forms.py:79
+#: plinth/modules/storage/forms.py:64
#, fuzzy
#| msgid "Invalid hostname"
msgid "Invalid directory name."
msgstr "Geçersiz makine ismi"
-#: plinth/modules/storage/forms.py:97
+#: plinth/modules/storage/forms.py:82
msgid "Directory does not exist."
msgstr ""
-#: plinth/modules/storage/forms.py:99
+#: plinth/modules/storage/forms.py:84
#, fuzzy
#| msgid "Download directory"
msgid "Path is not a directory."
msgstr "İndirme klasörü"
-#: plinth/modules/storage/forms.py:102
+#: plinth/modules/storage/forms.py:87
msgid "Directory is not readable by the user."
msgstr ""
-#: plinth/modules/storage/forms.py:105
+#: plinth/modules/storage/forms.py:90
msgid "Directory is not writable by the user."
msgstr ""
-#: plinth/modules/storage/forms.py:110
+#: plinth/modules/storage/forms.py:95
#, fuzzy
#| msgid "Download directory"
msgid "Directory"
msgstr "İndirme klasörü"
-#: plinth/modules/storage/forms.py:113
+#: plinth/modules/storage/forms.py:98
msgid "Subdirectory (optional)"
msgstr ""
-#: plinth/modules/storage/forms.py:160
+#: plinth/modules/storage/forms.py:145
#, fuzzy
#| msgid "Shared"
msgid "Share"
msgstr "Paylaşılan"
-#: plinth/modules/storage/forms.py:168
+#: plinth/modules/storage/forms.py:153
msgid "Other directory (specify below)"
msgstr ""
-#: plinth/modules/storage/templates/storage.html:35
+#: plinth/modules/storage/templates/storage.html:20
#, fuzzy
#| msgid "The following disks are in use:"
msgid "The following storage devices are in use:"
msgstr "Aşağıdaki diskler kullanımdadır:"
-#: plinth/modules/storage/templates/storage.html:41
+#: plinth/modules/storage/templates/storage.html:26
msgid "Label"
msgstr ""
-#: plinth/modules/storage/templates/storage.html:42
+#: plinth/modules/storage/templates/storage.html:27
msgid "Mount Point"
msgstr "Bağlama Noktası"
-#: plinth/modules/storage/templates/storage.html:90
+#: plinth/modules/storage/templates/storage.html:75
msgid "Partition Expansion"
msgstr "Bölüm Genişletme"
-#: plinth/modules/storage/templates/storage.html:92
+#: plinth/modules/storage/templates/storage.html:77
#, python-format
msgid ""
"There is %(expandable_root_size)s of unallocated space available after your "
@@ -5814,13 +5927,13 @@ msgstr ""
"genişletilebilir. Bu, size dosyalarınızı saklamak için ilave boş alan "
"sunacaktır."
-#: plinth/modules/storage/templates/storage.html:102
-#: plinth/modules/storage/templates/storage_expand.html:39
-#: plinth/modules/storage/views.py:76
+#: plinth/modules/storage/templates/storage.html:87
+#: plinth/modules/storage/templates/storage_expand.html:24
+#: plinth/modules/storage/views.py:58
msgid "Expand Root Partition"
msgstr "Kök Bölümünü Genişlet"
-#: plinth/modules/storage/templates/storage_expand.html:29
+#: plinth/modules/storage/templates/storage_expand.html:14
#, python-format
msgid ""
"Please backup your data before proceeding. After this operation, "
@@ -5831,39 +5944,30 @@ msgstr ""
"bölümünüzde ilave %(expandable_root_size)s değerinde boş alan "
"kullanılabilir olacaktır."
-#: plinth/modules/storage/views.py:88
+#: plinth/modules/storage/views.py:70
#, python-brace-format
msgid "Error expanding partition: {exception}"
msgstr "Bölümün genişletilmesinde hata: {exception}"
-#: plinth/modules/storage/views.py:91
+#: plinth/modules/storage/views.py:73
msgid "Partition expanded successfully."
msgstr "Bölüm başarılı bir şekilde genişletildi."
-#: plinth/modules/storage/views.py:109
+#: plinth/modules/storage/views.py:91
#, python-brace-format
msgid "{drive_vendor} {drive_model} can be safely unplugged."
msgstr ""
-#: plinth/modules/storage/views.py:113
+#: plinth/modules/storage/views.py:95
msgid "Device can be safely unplugged."
msgstr ""
-#: plinth/modules/storage/views.py:123
+#: plinth/modules/storage/views.py:105
#, python-brace-format
msgid "Error ejecting device: {error_message}"
msgstr ""
-#: plinth/modules/syncthing/__init__.py:40
-#: plinth/modules/syncthing/manifest.py:28
-msgid "Syncthing"
-msgstr "Syncthing"
-
-#: plinth/modules/syncthing/__init__.py:44
-msgid "File Synchronization"
-msgstr "Dosya eşleşmesi"
-
-#: plinth/modules/syncthing/__init__.py:47
+#: plinth/modules/syncthing/__init__.py:26
msgid ""
"Syncthing is an application to synchronize files across multiple devices, e."
"g. your desktop computer and mobile phone. Creation, modification, or "
@@ -5875,7 +5979,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:52
+#: plinth/modules/syncthing/__init__.py:31
#, python-brace-format
msgid ""
"Running Syncthing on {box_name} provides an extra synchronization point for "
@@ -5893,21 +5997,22 @@ 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:63
+#: plinth/modules/syncthing/__init__.py:40
#, fuzzy
#| msgid "Install this application?"
msgid "Administer Syncthing application"
msgstr "Bu uygulama kurulsun mu?"
-#: plinth/modules/tahoe/__init__.py:43
-msgid "Tahoe-LAFS"
-msgstr "Tahoe-LAFS"
+#: plinth/modules/syncthing/__init__.py:54
+#: plinth/modules/syncthing/manifest.py:13
+msgid "Syncthing"
+msgstr "Syncthing"
-#: plinth/modules/tahoe/__init__.py:47
-msgid "Distributed File Storage"
-msgstr "Dağıtılmış Dosya Depolaması"
+#: plinth/modules/syncthing/__init__.py:55
+msgid "File Synchronization"
+msgstr "Dosya eşleşmesi"
-#: plinth/modules/tahoe/__init__.py:134
+#: plinth/modules/tahoe/__init__.py:30
msgid ""
"Tahoe-LAFS is a decentralized secure file storage system. It uses provider "
"independent security to store files over a distributed network of storage "
@@ -5919,7 +6024,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:139
+#: plinth/modules/tahoe/__init__.py:35
#, python-brace-format
msgid ""
"This {box_name} hosts a storage node and an introducer by default. "
@@ -5930,7 +6035,15 @@ msgstr ""
"barındırmaktadır. Ek tanıtıcılar ilâve edilebilir ve bu, bu düğümü diğer "
"depolama düğümlerine tanıtır."
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:33
+#: plinth/modules/tahoe/__init__.py:66
+msgid "Tahoe-LAFS"
+msgstr "Tahoe-LAFS"
+
+#: plinth/modules/tahoe/__init__.py:68
+msgid "Distributed File Storage"
+msgstr "Dağıtılmış Dosya Depolaması"
+
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:17
#, python-format
msgid ""
"The Tahoe-LAFS server domain is set to %(domain_name)s. Changing the "
@@ -5943,37 +6056,33 @@ msgstr ""
"gerektirir ve VERİ KAYBEDERSİNİZ. Tahoe-LAFS, şu konumdan erişilebilir "
"durumdadır: %(domain_name)s."
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:55
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:39
msgid "Local introducer"
msgstr "Yerel tanıtıcı"
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:43
#: plinth/modules/tahoe/templates/tahoe-post-setup.html:59
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:75
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:92
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:76
msgid "Pet Name"
msgstr "Evcil Hayvan İsmi"
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:72
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:56
msgid "Add new introducer"
msgstr "Yeni tanıtıcı ekle"
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:83
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:67
msgid "Add"
msgstr "Ekle"
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:88
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:72
msgid "Connected introducers"
msgstr "Bağlı tanıtıcılar"
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:105
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:89
msgid "Remove"
msgstr "Kaldır"
-#: plinth/modules/tor/__init__.py:47
-msgid "Tor"
-msgstr "Tor"
-
-#: plinth/modules/tor/__init__.py:52
+#: plinth/modules/tor/__init__.py:33
msgid ""
"Tor is an anonymous communication system. You can learn more about it from "
"the Tor Project website. For "
@@ -5987,58 +6096,62 @@ msgstr ""
"href=\"https://www.torproject.org/download/download-easy.html\">Tor "
"Tarayıcısını kullanmanızı tavsiye eder."
-#: plinth/modules/tor/__init__.py:83
+#: plinth/modules/tor/__init__.py:55
+msgid "Tor"
+msgstr "Tor"
+
+#: plinth/modules/tor/__init__.py:66
#, fuzzy
#| msgid "Tor Hidden Service"
msgid "Tor Onion Service"
msgstr "Tor Gizli Servisi"
-#: plinth/modules/tor/__init__.py:87
+#: plinth/modules/tor/__init__.py:70
#, fuzzy
#| msgid "Socks5 Proxy"
msgid "Tor Socks Proxy"
msgstr "Socks5 Vekil Sunucusu"
-#: plinth/modules/tor/__init__.py:91
+#: plinth/modules/tor/__init__.py:74
msgid "Tor Bridge Relay"
msgstr "Tor Köprü Aktarması"
-#: plinth/modules/tor/__init__.py:112
+#: plinth/modules/tor/__init__.py:95
msgid "Tor relay port available"
msgstr "Tor geçit portu mevcuttur"
-#: plinth/modules/tor/__init__.py:122
+#: plinth/modules/tor/__init__.py:105
msgid "Obfs3 transport registered"
msgstr "Obfs3 taşıma kayıtlıdır"
-#: plinth/modules/tor/__init__.py:132
+#: plinth/modules/tor/__init__.py:115
msgid "Obfs4 transport registered"
msgstr "Obfs4 taşıma kayıtlıdır"
-#: plinth/modules/tor/__init__.py:225
+#: plinth/modules/tor/__init__.py:208
#, 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:236
+#: plinth/modules/tor/__init__.py:219
#, python-brace-format
msgid "Confirm Tor usage at {url} on tcp{kind}"
msgstr "tcp{kind} üzerinden {url} konumunda Tor kullanımını teyit et"
-#: plinth/modules/tor/forms.py:46
+#: plinth/modules/tor/forms.py:31
msgid ""
"Enter a valid bridge with this format: [transport] IP:ORPort [fingerprint]"
msgstr "Şu biçemde geçerli bir köprü girin: [taşıma] IP:ORPort [parmakizi]"
-#: plinth/modules/tor/forms.py:88
+#: plinth/modules/tor/forms.py:73
msgid "Enable Tor"
msgstr "Tor'u Etkinleştir"
-#: plinth/modules/tor/forms.py:90
+#: plinth/modules/tor/forms.py:75
msgid "Use upstream bridges to connect to Tor network"
msgstr "Tor şebekesine bağlanmak için upstream köprüleri kullan"
-#: plinth/modules/tor/forms.py:92
+#: plinth/modules/tor/forms.py:77
msgid ""
"When enabled, the bridges configured below will be used to connect to the "
"Tor network. Use this option if your Internet Service Provider (ISP) blocks "
@@ -6049,11 +6162,11 @@ msgstr ""
"ağına bağlantıları engelliyor ya da sansürlüyorsa kullanın. Bu, aktarım "
"kiplerini devre dışı bırakacaktır."
-#: plinth/modules/tor/forms.py:97
+#: plinth/modules/tor/forms.py:82
msgid "Upstream bridges"
msgstr "Upstream köprüler"
-#: plinth/modules/tor/forms.py:99
+#: plinth/modules/tor/forms.py:84
msgid ""
"You can get some bridges from https://bridges.torproject.org/ and copy/paste the bridge information "
@@ -6064,11 +6177,11 @@ msgstr ""
"yapıştırabilirsiniz. Güncel olarak desteklenen taşımalar şunlardır: hiçbiri, "
"obfs3, obfs4 ve scamblesuit."
-#: plinth/modules/tor/forms.py:105
+#: plinth/modules/tor/forms.py:90
msgid "Enable Tor relay"
msgstr "Tor aktarımını etkinleştir"
-#: plinth/modules/tor/forms.py:106
+#: plinth/modules/tor/forms.py:91
#, python-brace-format
msgid ""
"When enabled, your {box_name} will run a Tor relay and donate bandwidth to "
@@ -6079,11 +6192,11 @@ msgstr ""
"şebekesine bant genişliği bağışlayacaktır. Bunu, saniyede 2 megabitten fazla "
"indirme ve gönderme bant genişliğiniz varsa yapınız."
-#: plinth/modules/tor/forms.py:111
+#: plinth/modules/tor/forms.py:96
msgid "Enable Tor bridge relay"
msgstr "Tor köprü aktarmasını etkinleştir"
-#: plinth/modules/tor/forms.py:113
+#: plinth/modules/tor/forms.py:98
msgid ""
"When enabled, relay information is published in the Tor bridge database "
"instead of public Tor relay database making it harder to censor this node. "
@@ -6094,13 +6207,13 @@ msgstr ""
"sansürlenmesini zorlaştıracaktır. Bunu yapmanız, başkalarının sansürü "
"aşmasına yardımcı olur."
-#: plinth/modules/tor/forms.py:118
+#: plinth/modules/tor/forms.py:103
#, fuzzy
#| msgid "Enable Tor Hidden Service"
msgid "Enable Tor Hidden Service"
msgstr "Tor Gizli Servisi Etkinleştir"
-#: plinth/modules/tor/forms.py:120
+#: plinth/modules/tor/forms.py:105
#, fuzzy, python-brace-format
#| msgid ""
#| "A hidden service will allow {box_name} to provide selected services (such "
@@ -6115,11 +6228,11 @@ msgstr ""
"servisleri konumunu ortaya çıkarmadan sağlamasına imkân verir. Güçlü "
"anonimlik için henüz kullanmayın."
-#: plinth/modules/tor/forms.py:125
+#: plinth/modules/tor/forms.py:110
msgid "Download software packages over Tor"
msgstr "Yazılım paketlerini Tor üzerinden indir"
-#: plinth/modules/tor/forms.py:126
+#: plinth/modules/tor/forms.py:111
msgid ""
"When enabled, software will be downloaded over the Tor network for "
"installations and upgrades. This adds a degree of privacy and security "
@@ -6129,37 +6242,37 @@ msgstr ""
"üzerinden indirilecektir. Bu, yazılım indirmeleri sırasında bir derece "
"güvenlilik ve gizlilik ekler."
-#: plinth/modules/tor/forms.py:141
+#: plinth/modules/tor/forms.py:126
msgid "Specify at least one upstream bridge to use upstream bridges."
msgstr "Upstream köprüleri kullanmak için en az bir upstream köprü belirtiniz."
-#: plinth/modules/tor/manifest.py:29
+#: plinth/modules/tor/manifest.py:14
msgid "Tor Browser"
msgstr "Tor Tarayıcısı"
-#: plinth/modules/tor/manifest.py:45
+#: plinth/modules/tor/manifest.py:30
msgid "Orbot: Proxy with Tor"
msgstr "Orbot: Tor ile Vekil Sunucusu"
-#: plinth/modules/tor/templates/tor.html:41
+#: plinth/modules/tor/templates/tor.html:26
msgid "Tor configuration is being updated"
msgstr "Tor yapılandırması güncellenmektedir"
-#: plinth/modules/tor/templates/tor.html:50
+#: plinth/modules/tor/templates/tor.html:35
#, fuzzy
#| msgid "Hidden Service"
msgid "Onion Service"
msgstr "Gizli Servis"
-#: plinth/modules/tor/templates/tor.html:52
+#: plinth/modules/tor/templates/tor.html:37
msgid "Ports"
msgstr "Portlar"
-#: plinth/modules/tor/templates/tor.html:82
+#: plinth/modules/tor/templates/tor.html:67
msgid "Relay"
msgstr "Aktarıcı"
-#: plinth/modules/tor/templates/tor.html:84
+#: plinth/modules/tor/templates/tor.html:69
#, python-format
msgid ""
"If your %(box_name)s is behind a router or firewall, you should make sure "
@@ -6169,23 +6282,18 @@ msgstr ""
"gerekiyorsa aşağıdaki bağlantı noktalarının (port) açık ve yönlendirilmiş "
"olduğundan emin olun:"
-#: plinth/modules/tor/templates/tor.html:112
+#: plinth/modules/tor/templates/tor.html:97
msgid "SOCKS"
msgstr "SOCKS"
-#: plinth/modules/tor/templates/tor.html:115
+#: plinth/modules/tor/templates/tor.html:100
#, python-format
msgid "A Tor SOCKS port is available on your %(box_name)s on TCP port 9050."
msgstr ""
"Bir Tor SOCKS bağlantı noktası %(box_name)s kutunuzda TCP 9050 numaralı "
"portta mevcuttur."
-#: plinth/modules/transmission/__init__.py:41
-#: plinth/modules/transmission/manifest.py:24
-msgid "Transmission"
-msgstr "Transmission"
-
-#: plinth/modules/transmission/__init__.py:48
+#: plinth/modules/transmission/__init__.py:27
msgid ""
"BitTorrent is a peer-to-peer file sharing protocol. Transmission daemon "
"handles Bitorrent file sharing. Note that BitTorrent is not anonymous."
@@ -6194,15 +6302,12 @@ msgstr ""
"BitTorrent dosya paylaşımını idare eder. BitTorrent'ın anonim olmadığını "
"unutmayın."
-#: plinth/modules/ttrss/__init__.py:43 plinth/modules/ttrss/manifest.py:34
-msgid "Tiny Tiny RSS"
-msgstr "Tiny Tiny RSS"
+#: plinth/modules/transmission/__init__.py:48
+#: plinth/modules/transmission/manifest.py:9
+msgid "Transmission"
+msgstr "Transmission"
-#: plinth/modules/ttrss/__init__.py:47
-msgid "News Feed Reader"
-msgstr "Haber Besleme Okuyucusu"
-
-#: plinth/modules/ttrss/__init__.py:50
+#: plinth/modules/ttrss/__init__.py:29
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 "
@@ -6212,7 +6317,7 @@ 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:54
+#: plinth/modules/ttrss/__init__.py:33
#, fuzzy, python-brace-format
#| msgid ""
#| "When enabled, Tiny Tiny RSS will be available from /"
@@ -6227,7 +6332,7 @@ msgstr ""
"users\">{box_name} kullanıcısı, ki oturumu olmalıdır tarafından "
"kullanılabilir."
-#: plinth/modules/ttrss/__init__.py:58
+#: plinth/modules/ttrss/__init__.py:37
#, fuzzy
#| msgid ""
#| "When using a mobile or desktop application for Tiny Tiny RSS, use the URL "
@@ -6240,69 +6345,77 @@ msgstr ""
"Tiny Tiny RSS ile mobil ya da masaüstü uygulama kullanırken bağlantı için /tt-rss-app URL'ini kullanın."
-#: plinth/modules/ttrss/__init__.py:65
+#: plinth/modules/ttrss/__init__.py:42
msgid "Read and subscribe to news feeds"
msgstr "Haber beslemelerini oku ve onlara abone ol"
-#: plinth/modules/ttrss/manifest.py:25
+#: plinth/modules/ttrss/__init__.py:56 plinth/modules/ttrss/manifest.py:19
+msgid "Tiny Tiny RSS"
+msgstr "Tiny Tiny RSS"
+
+#: plinth/modules/ttrss/__init__.py:57
+msgid "News Feed Reader"
+msgstr "Haber Besleme Okuyucusu"
+
+#: plinth/modules/ttrss/manifest.py:10
#, fuzzy
#| msgid "Tiny Tiny RSS"
msgid "Tiny Tiny RSS (Fork)"
msgstr "Tiny Tiny RSS"
-#: plinth/modules/upgrades/__init__.py:37 plinth/templates/setup.html:89
-msgid "Update"
-msgstr "Güncelle"
-
-#: plinth/modules/upgrades/__init__.py:40
+#: plinth/modules/upgrades/__init__.py:23
msgid "Check for and apply the latest software and security updates."
msgstr ""
-#: plinth/modules/upgrades/__init__.py:84
+#: plinth/modules/upgrades/__init__.py:38 plinth/templates/setup.html:74
+msgid "Update"
+msgstr "Güncelle"
+
+#: plinth/modules/upgrades/__init__.py:71
#, fuzzy
#| msgid "FreedomBox Foundation"
msgid "FreedomBox Updated"
msgstr "FreedomBox Vakfı"
-#: plinth/modules/upgrades/forms.py:28
+#: plinth/modules/upgrades/forms.py:13
#, fuzzy
#| msgid "Enable automatic upgrades"
msgid "Enable auto-update"
msgstr "Otomatik güncellemeleri etkinleştir"
-#: plinth/modules/upgrades/forms.py:29
+#: plinth/modules/upgrades/forms.py:14
msgid "When enabled, FreedomBox automatically updates once a day."
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades-new-release.html:24
+#: plinth/modules/upgrades/templates/upgrades-new-release.html:9
#, fuzzy, python-format
#| msgid "Plinth is up to date."
msgid "%(box_name)s Updated"
msgstr "Plinth günceldir."
-#: plinth/modules/upgrades/templates/upgrades-new-release.html:28
+#: plinth/modules/upgrades/templates/upgrades-new-release.html:13
#, python-format
msgid ""
"%(box_name)s has been updated to version %(version)s. See the release announcement."
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades-new-release.html:37
-#: plinth/templates/notifications.html:59
+#: plinth/modules/upgrades/templates/upgrades-new-release.html:22
+#: plinth/templates/notifications.html:44
msgid "Dismiss"
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades.html:45
+#: plinth/modules/upgrades/templates/upgrades.html:30
#, fuzzy
#| msgid "Update"
msgid "Update now"
msgstr "Güncelle"
-#: plinth/modules/upgrades/templates/upgrades.html:54
+#: plinth/modules/upgrades/templates/upgrades.html:39
msgid "Updating..."
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades.html:59
+#: plinth/modules/upgrades/templates/upgrades.html:44
#, fuzzy
#| msgid ""
#| "Depending on the number of packages to install, this may take a long time "
@@ -6319,55 +6432,51 @@ msgstr ""
"Yükseltme sırasında bu ağ arayüzüne geçici olarak erişim mümkün olmayabilir "
"ve bir hata gösterebilir. Devam etmek için sayfayı tazeleyin."
-#: plinth/modules/upgrades/templates/upgrades.html:73
+#: plinth/modules/upgrades/templates/upgrades.html:58
msgid "Toggle recent update logs"
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades_configure.html:26
-#: plinth/modules/upgrades/templates/upgrades_configure.html:27
-#: plinth/modules/upgrades/views.py:107
+#: plinth/modules/upgrades/templates/upgrades_configure.html:11
+#: plinth/modules/upgrades/templates/upgrades_configure.html:12
+#: plinth/modules/upgrades/views.py:89
#, fuzzy
#| msgid "Last update"
msgid "Manual update"
msgstr "Son güncelleme"
-#: plinth/modules/upgrades/views.py:66
+#: plinth/modules/upgrades/views.py:48
#, python-brace-format
msgid "Error when configuring unattended-upgrades: {error}"
msgstr "unattended-upgrades yapılandırılırken bir hata oluştu: {error}"
-#: plinth/modules/upgrades/views.py:70
+#: plinth/modules/upgrades/views.py:52
msgid "Automatic upgrades enabled"
msgstr "Otomatik yükseltmeler etkinleştirildi"
-#: plinth/modules/upgrades/views.py:73
+#: plinth/modules/upgrades/views.py:55
msgid "Automatic upgrades disabled"
msgstr "Otomatik yükseltmeler devre dışı bırakıldı"
-#: plinth/modules/upgrades/views.py:75
+#: plinth/modules/upgrades/views.py:57
msgid "Settings unchanged"
msgstr "Ayarlar değiştirilmedi"
-#: plinth/modules/upgrades/views.py:101
+#: plinth/modules/upgrades/views.py:83
msgid "Upgrade process started."
msgstr "Yükseltme süreci başlamıştır."
-#: plinth/modules/upgrades/views.py:104
+#: plinth/modules/upgrades/views.py:86
msgid "Starting upgrade failed."
msgstr "Yükseltmenin başlatılması başarısız oldu."
-#: plinth/modules/users/__init__.py:51
-msgid "Users and Groups"
-msgstr "Kullanıcılar ve Gruplar"
-
-#: plinth/modules/users/__init__.py:54
+#: plinth/modules/users/__init__.py:37
msgid ""
"Create and managed user accounts. These accounts serve as centralized "
"authentication mechanism for most apps. Some apps further require a user "
"account to be part of a group to authorize the user to access the app."
msgstr ""
-#: plinth/modules/users/__init__.py:59
+#: plinth/modules/users/__init__.py:42
#, python-brace-format
msgid ""
"Any user may login to {box_name} web interface to see a list of apps "
@@ -6375,35 +6484,39 @@ msgid ""
"group may alter apps or system settings."
msgstr ""
-#: plinth/modules/users/__init__.py:128
+#: plinth/modules/users/__init__.py:64
+msgid "Users and Groups"
+msgstr "Kullanıcılar ve Gruplar"
+
+#: plinth/modules/users/__init__.py:115
#, python-brace-format
msgid "Check LDAP entry \"{search_item}\""
msgstr "\"{search_item}\" LDAP unsurunu kontrol et"
-#: plinth/modules/users/forms.py:43
+#: plinth/modules/users/forms.py:28
msgid "Access to all services and system settings"
msgstr "Tüm servislere ve sistem ayarlarına erişim"
-#: plinth/modules/users/forms.py:59
+#: plinth/modules/users/forms.py:44
msgid "Username is taken or is reserved."
msgstr "Kullanıcı ismi zaten alınmış ya da ayrılmıştır."
-#: plinth/modules/users/forms.py:87
+#: plinth/modules/users/forms.py:72
#, fuzzy
#| msgid "Invalid server name"
msgid "Enter a valid username."
msgstr "Geçersiz sunucu ismi"
-#: plinth/modules/users/forms.py:93
+#: plinth/modules/users/forms.py:78
msgid ""
"Required. 150 characters or fewer. English letters, digits and @/./-/_ only."
msgstr ""
-#: plinth/modules/users/forms.py:106 plinth/modules/users/forms.py:222
+#: plinth/modules/users/forms.py:91 plinth/modules/users/forms.py:207
msgid "Permissions"
msgstr "İzinler"
-#: plinth/modules/users/forms.py:109
+#: plinth/modules/users/forms.py:94
msgid ""
"Select which services should be available to the new user. The user will be "
"able to log in to services that support single sign-on through LDAP, if they "
@@ -6417,20 +6530,20 @@ msgstr ""
"servislere giriş yapabilecektir. Aynı zamanda sisteme SSH aracılığıyla giriş "
"yapıp yönetici izinlerine (sudo) erişebileceklerdir."
-#: plinth/modules/users/forms.py:148 plinth/modules/users/forms.py:372
+#: plinth/modules/users/forms.py:133 plinth/modules/users/forms.py:357
msgid "Creating LDAP user failed."
msgstr "LDAP kullanıcısı oluşturması başarısız oldu."
-#: plinth/modules/users/forms.py:159
+#: plinth/modules/users/forms.py:144
#, python-brace-format
msgid "Failed to add new user to {group} group."
msgstr "{group} grubuna yeni kullanıcı ilâve edilmesi başarısız oldu."
-#: plinth/modules/users/forms.py:173
+#: plinth/modules/users/forms.py:158
msgid "Authorized SSH Keys"
msgstr ""
-#: plinth/modules/users/forms.py:175
+#: plinth/modules/users/forms.py:160
msgid ""
"Setting an SSH public key will allow this user to securely log in to the "
"system without using a password. You may enter multiple keys, one on each "
@@ -6441,84 +6554,84 @@ msgstr ""
"çok anahtar girebilirsiniz, her anahtarı yeni bir satırda girin. Boş "
"satırlar ve # ile başlayan satırlar görmezden gelinecektir."
-#: plinth/modules/users/forms.py:259
+#: plinth/modules/users/forms.py:244
msgid "Renaming LDAP user failed."
msgstr "LDAP kullanıcısının tekrar adlandırılması başarısız oldu."
-#: plinth/modules/users/forms.py:271
+#: plinth/modules/users/forms.py:256
msgid "Failed to remove user from group."
msgstr "Kullanıcının gruptan kaldırılması başarısız oldu."
-#: plinth/modules/users/forms.py:282
+#: plinth/modules/users/forms.py:267
msgid "Failed to add user to group."
msgstr "Kullanıcının gruba eklenmesi başarısız oldu."
-#: plinth/modules/users/forms.py:291
+#: plinth/modules/users/forms.py:276
msgid "Unable to set SSH keys."
msgstr "SSH anahtarları ayarlanamadı."
-#: plinth/modules/users/forms.py:306
+#: plinth/modules/users/forms.py:291
#, fuzzy
#| msgid "Failed to add user to group."
msgid "Failed to change user status."
msgstr "Kullanıcının gruba eklenmesi başarısız oldu."
-#: plinth/modules/users/forms.py:314
+#: plinth/modules/users/forms.py:299
msgid "Cannot delete the only administrator in the system."
msgstr ""
-#: plinth/modules/users/forms.py:346
+#: plinth/modules/users/forms.py:331
msgid "Changing LDAP user password failed."
msgstr "LDAP kullanıcı parolasının değiştirilmesi başarısız oldu."
-#: plinth/modules/users/forms.py:381
+#: plinth/modules/users/forms.py:366
msgid "Failed to add new user to admin group."
msgstr "Yeni kullanıcının admin (yönetici) grubuna eklenmesi başarısız oldu."
-#: plinth/modules/users/forms.py:398
+#: plinth/modules/users/forms.py:383
msgid "Failed to restrict console access."
msgstr "Konsol erişiminin kısıtlanması başarısız oldu."
-#: plinth/modules/users/forms.py:410
+#: plinth/modules/users/forms.py:395
msgid "User account created, you are now logged in"
msgstr "Kullanıcı hesabı oluşturuldu, artık giriş yaptınız"
-#: plinth/modules/users/templates/users_change_password.html:26
+#: plinth/modules/users/templates/users_change_password.html:11
#, python-format
msgid "Change Password for %(username)s"
msgstr "%(username)s için Parola Değiştir"
-#: plinth/modules/users/templates/users_change_password.html:36
+#: plinth/modules/users/templates/users_change_password.html:21
msgid "Save Password"
msgstr "Parolayı Kaydet"
-#: plinth/modules/users/templates/users_create.html:32
-#: plinth/modules/users/templates/users_list.html:42
-#: plinth/modules/users/templates/users_list.html:44
-#: plinth/modules/users/views.py:57
+#: plinth/modules/users/templates/users_create.html:17
+#: plinth/modules/users/templates/users_list.html:27
+#: plinth/modules/users/templates/users_list.html:29
+#: plinth/modules/users/views.py:42
msgid "Create User"
msgstr "Kullanıcı Oluştur"
-#: plinth/modules/users/templates/users_delete.html:26
-#: plinth/modules/users/views.py:139
+#: plinth/modules/users/templates/users_delete.html:11
+#: plinth/modules/users/views.py:121
msgid "Delete User"
msgstr "Kullanıcıyı Sil"
-#: plinth/modules/users/templates/users_delete.html:29
+#: plinth/modules/users/templates/users_delete.html:14
#, python-format
msgid "Delete user %(username)s permanently?"
msgstr "%(username)s kullanıcısı daimi olarak silinsin mi?"
-#: plinth/modules/users/templates/users_delete.html:38
+#: plinth/modules/users/templates/users_delete.html:23
#, python-format
msgid "Delete %(username)s"
msgstr "%(username)s kullanıcısını sil"
-#: plinth/modules/users/templates/users_firstboot.html:26
+#: plinth/modules/users/templates/users_firstboot.html:11
msgid "Administrator Account"
msgstr "Yönetici Hesabı"
-#: plinth/modules/users/templates/users_firstboot.html:29
+#: plinth/modules/users/templates/users_firstboot.html:14
msgid ""
"Choose a username and password to access this web interface. The password "
"can be changed later. This user will be granted administrative privileges. "
@@ -6528,26 +6641,26 @@ msgstr ""
"sonra değiştirilebilir. Kullanıcıya yönetici yetkileri verilecektir. Başka "
"kullanıcılar daha sonra ilave edilebilir."
-#: plinth/modules/users/templates/users_firstboot.html:42
+#: plinth/modules/users/templates/users_firstboot.html:27
msgid "Create Account"
msgstr "Hesap Oluştur"
-#: plinth/modules/users/templates/users_list.html:38
-#: plinth/modules/users/views.py:74
+#: plinth/modules/users/templates/users_list.html:23
+#: plinth/modules/users/views.py:59
msgid "Users"
msgstr "Kullanıcılar"
-#: plinth/modules/users/templates/users_list.html:57
+#: plinth/modules/users/templates/users_list.html:42
#, python-format
msgid "Delete user %(username)s"
msgstr "%(username)s kullanıcısını sil"
-#: plinth/modules/users/templates/users_list.html:65
+#: plinth/modules/users/templates/users_list.html:50
#, python-format
msgid "Edit user %(username)s"
msgstr "%(username)s kullanıcısını düzenle"
-#: plinth/modules/users/templates/users_update.html:30
+#: plinth/modules/users/templates/users_update.html:15
#, python-format
msgid ""
"Use the change password form to "
@@ -6556,59 +6669,54 @@ msgstr ""
"Parolayı değiştirmek için parola "
"değiştirme formunu kullanın."
-#: plinth/modules/users/templates/users_update.html:42
-#: plinth/templates/language-selection.html:32
+#: plinth/modules/users/templates/users_update.html:27
+#: plinth/templates/language-selection.html:17
msgid "Save Changes"
msgstr "Değişiklikleri Kaydet"
-#: plinth/modules/users/views.py:55
+#: plinth/modules/users/views.py:40
#, python-format
msgid "User %(username)s created."
msgstr "%(username)s kullanıcısı oluşturuldu."
-#: plinth/modules/users/views.py:93
+#: plinth/modules/users/views.py:75
#, python-format
msgid "User %(username)s updated."
msgstr "%(username)s kullanıcısı güncellendi."
-#: plinth/modules/users/views.py:94
+#: plinth/modules/users/views.py:76
msgid "Edit User"
msgstr "Kullanıcıyı Düzenle"
-#: plinth/modules/users/views.py:149
+#: plinth/modules/users/views.py:131
#, python-brace-format
msgid "User {user} deleted."
msgstr "{user} kullanıcısı silindi."
-#: plinth/modules/users/views.py:156
+#: plinth/modules/users/views.py:138
msgid "Deleting LDAP user failed."
msgstr "LDAP kullanıcısının silinmesi başarısız oldu."
-#: plinth/modules/users/views.py:165
+#: plinth/modules/users/views.py:147
msgid "Change Password"
msgstr "Parolayı Değiştir"
-#: plinth/modules/users/views.py:166
+#: plinth/modules/users/views.py:148
msgid "Password changed successfully."
msgstr "Parola başarılı bir şekilde değiştirildi."
-#: plinth/modules/wireguard/__init__.py:38
-#: plinth/modules/wireguard/manifest.py:29
-msgid "WireGuard"
-msgstr ""
-
-#: plinth/modules/wireguard/__init__.py:43
+#: plinth/modules/wireguard/__init__.py:24
msgid "WireGuard is a fast, modern, secure VPN tunnel."
msgstr ""
-#: plinth/modules/wireguard/__init__.py:45
+#: plinth/modules/wireguard/__init__.py:26
#, python-brace-format
msgid ""
"It can be used to connect to a VPN provider which supports WireGuard, and to "
"route all outgoing traffic from {box_name} through the VPN."
msgstr ""
-#: plinth/modules/wireguard/__init__.py:49
+#: plinth/modules/wireguard/__init__.py:30
#, python-brace-format
msgid ""
"A second use case is to connect a mobile device to {box_name} while "
@@ -6616,67 +6724,72 @@ msgid ""
"securely relayed through {box_name}."
msgstr ""
-#: plinth/modules/wireguard/forms.py:47
+#: plinth/modules/wireguard/__init__.py:52
+#: plinth/modules/wireguard/manifest.py:14
+msgid "WireGuard"
+msgstr ""
+
+#: plinth/modules/wireguard/forms.py:32
#, fuzzy
#| msgid "Invalid kite name"
msgid "Invalid key."
msgstr "Geçersiz kite ismi"
-#: plinth/modules/wireguard/forms.py:76
-#: plinth/modules/wireguard/templates/wireguard.html:32
-#: plinth/modules/wireguard/templates/wireguard.html:89
-#: plinth/modules/wireguard/templates/wireguard_delete_server.html:38
+#: plinth/modules/wireguard/forms.py:61
+#: plinth/modules/wireguard/templates/wireguard.html:17
+#: plinth/modules/wireguard/templates/wireguard.html:74
+#: plinth/modules/wireguard/templates/wireguard_delete_server.html:23
#, fuzzy
#| msgid "Publish Key"
msgid "Public Key"
msgstr "Anahtarı Yayınla"
-#: plinth/modules/wireguard/forms.py:77
+#: plinth/modules/wireguard/forms.py:62
msgid ""
"Public key of the peer. Example: "
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs= ."
msgstr ""
-#: plinth/modules/wireguard/forms.py:85
+#: plinth/modules/wireguard/forms.py:70
msgid "Endpoint of the server"
msgstr ""
-#: plinth/modules/wireguard/forms.py:86
+#: plinth/modules/wireguard/forms.py:71
msgid ""
"Domain name and port in the form \"ip:port\". Example: demo.wireguard."
"com:12912 ."
msgstr ""
-#: plinth/modules/wireguard/forms.py:91
+#: plinth/modules/wireguard/forms.py:76
#, fuzzy
#| msgid "Published key to keyserver."
msgid "Public key of the server"
msgstr "Anahtar, anahtar sunucusuna yayınlandı."
-#: plinth/modules/wireguard/forms.py:92
+#: plinth/modules/wireguard/forms.py:77
msgid ""
"Provided by the server operator, a long string of characters. Example: "
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs= ."
msgstr ""
-#: plinth/modules/wireguard/forms.py:97
+#: plinth/modules/wireguard/forms.py:82
#, fuzzy
#| msgid "A list of IP addresses, separated by space"
msgid "Client IP address provided by server"
msgstr "Boşluklarla ayrılmış IP adresleri listesi"
-#: plinth/modules/wireguard/forms.py:98
+#: plinth/modules/wireguard/forms.py:83
msgid ""
"IP address assigned to this machine on the VPN after connecting to the "
"endpoint. This value is usually provided by the server operator. Example: "
"192.168.0.10."
msgstr ""
-#: plinth/modules/wireguard/forms.py:104
+#: plinth/modules/wireguard/forms.py:89
msgid "Private key of this machine"
msgstr ""
-#: plinth/modules/wireguard/forms.py:105
+#: plinth/modules/wireguard/forms.py:90
msgid ""
"Optional. New public/private keys are generated if left blank. Public key "
"can then be provided to the server. This is the recommended way. However, "
@@ -6684,183 +6797,183 @@ msgid ""
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs= ."
msgstr ""
-#: plinth/modules/wireguard/forms.py:113
+#: plinth/modules/wireguard/forms.py:98
msgid "Pre-shared key"
msgstr ""
-#: plinth/modules/wireguard/forms.py:114
+#: plinth/modules/wireguard/forms.py:99
msgid ""
"Optional. A shared secret key provided by the server to add an additional "
"layer of security. Fill in only if provided. Example: "
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs=."
msgstr ""
-#: plinth/modules/wireguard/forms.py:120
+#: plinth/modules/wireguard/forms.py:105
msgid "Use this connection to send all outgoing traffic"
msgstr ""
-#: plinth/modules/wireguard/forms.py:122
+#: plinth/modules/wireguard/forms.py:107
msgid "Typically checked for a VPN service though which all traffic is sent."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:25
+#: plinth/modules/wireguard/templates/wireguard.html:10
#, fuzzy
#| msgid "Chat Server"
msgid "As a Server"
msgstr "Sohbet Sunucusu"
-#: plinth/modules/wireguard/templates/wireguard.html:27
+#: plinth/modules/wireguard/templates/wireguard.html:12
msgid "Peers allowed to connect to this server:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:33
+#: plinth/modules/wireguard/templates/wireguard.html:18
msgid "Allowed IPs"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:34
-#: plinth/modules/wireguard/templates/wireguard.html:90
+#: plinth/modules/wireguard/templates/wireguard.html:19
+#: plinth/modules/wireguard/templates/wireguard.html:75
#, fuzzy
#| msgid "Create Connection"
msgid "Last Connected Time"
msgstr "Bağlantı Oluştur"
-#: plinth/modules/wireguard/templates/wireguard.html:53
+#: plinth/modules/wireguard/templates/wireguard.html:38
#, python-format
msgid "No peers configured to connect to this %(box_name)s yet."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:62
+#: plinth/modules/wireguard/templates/wireguard.html:47
#, python-format
msgid "Public key for this %(box_name)s:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:68
+#: plinth/modules/wireguard/templates/wireguard.html:53
msgid "Not configured yet."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:72
+#: plinth/modules/wireguard/templates/wireguard.html:57
#, fuzzy
#| msgid "Add new introducer"
msgid "Add a new peer"
msgstr "Yeni tanıtıcı ekle"
-#: plinth/modules/wireguard/templates/wireguard.html:76
-#: plinth/modules/wireguard/views.py:69
+#: plinth/modules/wireguard/templates/wireguard.html:61
+#: plinth/modules/wireguard/views.py:51
msgid "Add Allowed Client"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:79
+#: plinth/modules/wireguard/templates/wireguard.html:64
#, fuzzy
#| msgid "Chat Client"
msgid "As a Client"
msgstr "Sohbet İstemcisi"
-#: plinth/modules/wireguard/templates/wireguard.html:81
+#: plinth/modules/wireguard/templates/wireguard.html:66
#, python-format
msgid "Servers that %(box_name)s will connect to:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:88
-#: plinth/modules/wireguard/templates/wireguard_delete_server.html:34
+#: plinth/modules/wireguard/templates/wireguard.html:73
+#: plinth/modules/wireguard/templates/wireguard_delete_server.html:19
msgid "Endpoint"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:111
+#: plinth/modules/wireguard/templates/wireguard.html:96
msgid "No connections to remote servers are configured yet."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:119
+#: plinth/modules/wireguard/templates/wireguard.html:104
#, fuzzy
#| msgid "Add new introducer"
msgid "Add a new server"
msgstr "Yeni tanıtıcı ekle"
-#: plinth/modules/wireguard/templates/wireguard.html:123
-#: plinth/modules/wireguard/views.py:178
+#: plinth/modules/wireguard/templates/wireguard.html:108
+#: plinth/modules/wireguard/views.py:160
#, fuzzy
#| msgid "Add Connection"
msgid "Add Connection to Server"
msgstr "Bağlantı Ekle"
-#: plinth/modules/wireguard/templates/wireguard_add_client.html:34
+#: plinth/modules/wireguard/templates/wireguard_add_client.html:19
#, fuzzy
#| msgid "IRC Client"
msgid "Add Client"
msgstr "IRC İstemcisi"
-#: plinth/modules/wireguard/templates/wireguard_delete_client.html:29
+#: plinth/modules/wireguard/templates/wireguard_delete_client.html:14
#, fuzzy
#| msgid "Are you sure that you want to remove this repository?"
msgid "Are you sure that you want to delete this client?"
msgstr "Bu depoyu kaldırmak istediğinizden emin misiniz?"
-#: plinth/modules/wireguard/templates/wireguard_delete_server.html:29
+#: plinth/modules/wireguard/templates/wireguard_delete_server.html:14
#, fuzzy
#| msgid "Are you sure that you want to remove this repository?"
msgid "Are you sure that you want to delete this server?"
msgstr "Bu depoyu kaldırmak istediğinizden emin misiniz?"
-#: plinth/modules/wireguard/templates/wireguard_edit_client.html:34
+#: plinth/modules/wireguard/templates/wireguard_edit_client.html:19
#, fuzzy
#| msgid "Chat Client"
msgid "Update Client"
msgstr "Sohbet İstemcisi"
-#: plinth/modules/wireguard/templates/wireguard_edit_server.html:34
+#: plinth/modules/wireguard/templates/wireguard_edit_server.html:19
#, fuzzy
#| msgid "Create Connection"
msgid "Update Connection"
msgstr "Bağlantı Oluştur"
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:27
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:12
#, python-format
msgid ""
"%(box_name)s will allow this client to connect to it. Ensure that the client "
"is configured with the following information."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:35
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:20
msgid "Client public key:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:39
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:24
msgid "IP address to use for client:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:43
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:46
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:28
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:31
msgid "Pre-shared key:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:47
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:32
#, fuzzy
#| msgid "Server domain"
msgid "Server endpoints:"
msgstr "Sunucu alanı"
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:55
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:42
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:40
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:27
#, fuzzy
#| msgid "Server port number"
msgid "Server public key:"
msgstr "Sunucu port numarası"
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:65
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:64
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:50
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:49
msgid "Data transmitted:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:69
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:68
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:54
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:53
msgid "Data received:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:73
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:72
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:58
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:57
msgid "Latest handshake:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:29
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:14
#, python-format
msgid ""
"%(box_name)s will attempt to reach a WireGuard server with the following "
@@ -6868,152 +6981,152 @@ msgid ""
"public key and IP address."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:38
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:23
#, fuzzy
#| msgid "Server domain"
msgid "Server endpoint:"
msgstr "Sunucu alanı"
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:50
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:35
msgid "Public key of this machine:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:54
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:39
msgid "IP address of this machine:"
msgstr ""
-#: plinth/modules/wireguard/views.py:64
+#: plinth/modules/wireguard/views.py:46
#, fuzzy
#| msgid "Add new introducer"
msgid "Added new client."
msgstr "Yeni tanıtıcı ekle"
-#: plinth/modules/wireguard/views.py:79 plinth/modules/wireguard/views.py:138
+#: plinth/modules/wireguard/views.py:61 plinth/modules/wireguard/views.py:120
#, fuzzy
#| msgid "This service already exists"
msgid "Client with public key already exists"
msgstr "Bu servis zaten mevcuttur"
-#: plinth/modules/wireguard/views.py:92
+#: plinth/modules/wireguard/views.py:74
#, fuzzy
#| msgid "Email Client"
msgid "Allowed Client"
msgstr "E-posta İstemcisi"
-#: plinth/modules/wireguard/views.py:114
+#: plinth/modules/wireguard/views.py:96
#, fuzzy
#| msgid "Update setup"
msgid "Updated client."
msgstr "Kurulumu güncelle"
-#: plinth/modules/wireguard/views.py:119
+#: plinth/modules/wireguard/views.py:101
#, fuzzy
#| msgid "Email Client"
msgid "Modify Client"
msgstr "E-posta İstemcisi"
-#: plinth/modules/wireguard/views.py:152
+#: plinth/modules/wireguard/views.py:134
#, fuzzy
#| msgid "Delete All"
msgid "Delete Allowed Client"
msgstr "Tümünü Sil"
-#: plinth/modules/wireguard/views.py:161
+#: plinth/modules/wireguard/views.py:143
#, fuzzy
#| msgid "Archive deleted."
msgid "Client deleted."
msgstr "Arşiv silindi."
-#: plinth/modules/wireguard/views.py:163
+#: plinth/modules/wireguard/views.py:145
#, fuzzy
#| msgid "Repository not found"
msgid "Client not found"
msgstr "Havuz bulunamadı"
-#: plinth/modules/wireguard/views.py:173
+#: plinth/modules/wireguard/views.py:155
#, fuzzy
#| msgid "Added custom service"
msgid "Added new server."
msgstr "Özel servis eklendi"
-#: plinth/modules/wireguard/views.py:194
+#: plinth/modules/wireguard/views.py:176
#, fuzzy
#| msgid "Connection Type"
msgid "Connection to Server"
msgstr "Bağlantı Türü"
-#: plinth/modules/wireguard/views.py:212
+#: plinth/modules/wireguard/views.py:194
#, fuzzy
#| msgid "Update setup"
msgid "Updated server."
msgstr "Kurulumu güncelle"
-#: plinth/modules/wireguard/views.py:217
+#: plinth/modules/wireguard/views.py:199
#, fuzzy
#| msgid "Edit Connection"
msgid "Modify Connection to Server"
msgstr "Bağlantıyı Düzenle"
-#: plinth/modules/wireguard/views.py:254
+#: plinth/modules/wireguard/views.py:236
#, fuzzy
#| msgid "Delete Connection"
msgid "Delete Connection to Server"
msgstr "Bağlantıyı Sil"
-#: plinth/modules/wireguard/views.py:274
+#: plinth/modules/wireguard/views.py:256
#, fuzzy
#| msgid "{name} deleted."
msgid "Server deleted."
msgstr "{name} silindi."
-#: plinth/network.py:42
+#: plinth/network.py:27
msgid "PPPoE"
msgstr "PPPoE"
-#: plinth/network.py:43
+#: plinth/network.py:28
msgid "Generic"
msgstr "Jenerik"
-#: plinth/package.py:137
+#: plinth/package.py:122
msgid "Error during installation"
msgstr "Kurulum sırasında hata"
-#: plinth/package.py:159
+#: plinth/package.py:144
msgid "installing"
msgstr "kuruluyor"
-#: plinth/package.py:161
+#: plinth/package.py:146
msgid "downloading"
msgstr "indiriliyor"
-#: plinth/package.py:163
+#: plinth/package.py:148
msgid "media change"
msgstr "ortam değiştirme"
-#: plinth/package.py:165
+#: plinth/package.py:150
#, python-brace-format
msgid "configuration file: {file}"
msgstr "Yapılandırma dosyası: {file}"
-#: plinth/templates/403.html:25
+#: plinth/templates/403.html:10
msgid "403 Forbidden"
msgstr "403 Yasaklanmış"
-#: plinth/templates/403.html:29
+#: plinth/templates/403.html:14
#, python-format
msgid "You don't have permission to access %(request_path)s on this server."
msgstr "Bu sunucuda %(request_path)s erişimi izniniz yoktur."
-#: plinth/templates/404.html:25
+#: plinth/templates/404.html:10
msgid "404"
msgstr "404"
-#: plinth/templates/404.html:28
+#: plinth/templates/404.html:13
#, python-format
msgid "Requested page %(request_path)s was not found."
msgstr "Talep edilen sayfa %(request_path)s bulunamadı."
-#: plinth/templates/404.html:34
+#: plinth/templates/404.html:19
#, fuzzy
#| msgid ""
#| "If you believe this missing page should exist, please file a bug at the "
@@ -7028,11 +7141,11 @@ msgstr ""
"projesinin hata "
"izleyicisine bir hata raporu bırakın."
-#: plinth/templates/500.html:25
+#: plinth/templates/500.html:10
msgid "500"
msgstr "500"
-#: plinth/templates/500.html:29
+#: plinth/templates/500.html:14
#, fuzzy, python-format
#| msgid ""
#| "This is an internal error and not something you caused or can fix. "
@@ -7050,118 +7163,122 @@ msgstr ""
"\">hata izleyicisinde rapor edin ki sorunu giderebilelim. Hata raporuna "
"durum kütüğünü eklemeyi unutmayınız."
-#: plinth/templates/app.html:47
+#: plinth/templates/app-header.html:22
+msgid "Installation"
+msgstr "Kurulum"
+
+#: plinth/templates/app.html:32
#, python-format
msgid "Service %(service_name)s is running."
msgstr "%(service_name)s servisi çalışmaktadır."
-#: plinth/templates/app.html:52
+#: plinth/templates/app.html:37
#, python-format
msgid "Service %(service_name)s is not running."
msgstr "%(service_name)s servisi çalışmamaktadır."
-#: plinth/templates/base.html:50
+#: plinth/templates/base.html:35
#, fuzzy, python-format
#| msgid "Plinth administrative interface for the %(box_name)s"
msgid "Core functionality and web interface for %(box_name)s"
msgstr "%(box_name)s için Plinth yönetim arayüzü"
-#: plinth/templates/base.html:96
+#: plinth/templates/base.html:81
msgid "Toggle navigation"
msgstr "Tarama Geçişi"
-#: plinth/templates/base.html:120 plinth/templates/base.html:123
+#: plinth/templates/base.html:105 plinth/templates/base.html:108
msgid "Home"
msgstr "Ev"
-#: plinth/templates/base.html:128 plinth/templates/base.html:132
+#: plinth/templates/base.html:113 plinth/templates/base.html:117
msgid "Apps"
msgstr "Uygulamalar"
-#: plinth/templates/base.html:137 plinth/templates/base.html:141
+#: plinth/templates/base.html:122 plinth/templates/base.html:126
msgid "System"
msgstr "Sistem"
-#: plinth/templates/base.html:173 plinth/templates/base.html:174
+#: plinth/templates/base.html:158 plinth/templates/base.html:159
msgid "Change password"
msgstr "Parolayı değiştir"
-#: plinth/templates/base.html:181 plinth/templates/base.html:182
+#: plinth/templates/base.html:166 plinth/templates/base.html:167
msgid "Restart"
msgstr "Tekrar Başlat"
-#: plinth/templates/base.html:187 plinth/templates/base.html:188
+#: plinth/templates/base.html:172 plinth/templates/base.html:173
msgid "Shut down"
msgstr "Kapat"
-#: plinth/templates/base.html:195 plinth/templates/base.html:196
-#: plinth/templates/base.html:220 plinth/templates/base.html:222
+#: plinth/templates/base.html:180 plinth/templates/base.html:181
+#: plinth/templates/base.html:205 plinth/templates/base.html:207
msgid "Log out"
msgstr "Çıkış yap"
-#: plinth/templates/base.html:204 plinth/templates/base.html:207
+#: plinth/templates/base.html:189 plinth/templates/base.html:192
#, fuzzy
#| msgid "Language"
msgid "Select language"
msgstr "Lisan"
-#: plinth/templates/base.html:212 plinth/templates/base.html:214
+#: plinth/templates/base.html:197 plinth/templates/base.html:199
msgid "Log in"
msgstr "Giriş yap"
-#: plinth/templates/clients.html:32
+#: plinth/templates/clients.html:17
msgid "Web"
msgstr "Web"
-#: plinth/templates/clients.html:57
+#: plinth/templates/clients.html:42
msgid "Desktop"
msgstr "Masaüstü"
-#: plinth/templates/clients.html:68
+#: plinth/templates/clients.html:53
msgid "GNU/Linux"
msgstr ""
-#: plinth/templates/clients.html:70
+#: plinth/templates/clients.html:55
msgid "Windows"
msgstr "Windows"
-#: plinth/templates/clients.html:72
+#: plinth/templates/clients.html:57
msgid "macOS"
msgstr "macOS"
-#: plinth/templates/clients.html:88
+#: plinth/templates/clients.html:73
msgid "Mobile"
msgstr "Mobil"
-#: plinth/templates/clients.html:99
+#: plinth/templates/clients.html:84
msgid "Play Store"
msgstr "Play Store"
-#: plinth/templates/clients.html:101
+#: plinth/templates/clients.html:86
msgid "F-Droid"
msgstr "F-Droid"
-#: plinth/templates/clients.html:103
+#: plinth/templates/clients.html:88
msgid "App Store"
msgstr "App Store"
-#: plinth/templates/clients.html:119
+#: plinth/templates/clients.html:104
msgid "Package"
msgstr "Paket"
-#: plinth/templates/clients.html:126
+#: plinth/templates/clients.html:111
msgid "Debian:"
msgstr "Debian:"
-#: plinth/templates/clients.html:129
+#: plinth/templates/clients.html:114
msgid "Homebrew:"
msgstr "Homebrew:"
-#: plinth/templates/clients.html:132
+#: plinth/templates/clients.html:117
msgid "RPM:"
msgstr "RPM:"
-#: plinth/templates/first_setup.html:39
+#: plinth/templates/first_setup.html:24
#, python-format
msgid ""
"Please wait for %(box_name)s to finish installation. You can start using "
@@ -7170,11 +7287,7 @@ msgstr ""
"Lütfen %(box_name)s kutusunun kurulumu bitirmesini bekleyin. Kurulum sona "
"erdiğinde %(box_name)s kutusunu kullanabileceksiniz."
-#: plinth/templates/header.html:36
-msgid "Installation"
-msgstr "Kurulum"
-
-#: plinth/templates/index.html:37
+#: plinth/templates/index.html:22
#, python-format
msgid ""
"Enable some applications to add shortcuts to "
@@ -7183,11 +7296,11 @@ msgstr ""
"Bu sayfaya kısayol eklemek için uygulama "
"etkinleştiriniz."
-#: plinth/templates/index.html:59
+#: plinth/templates/index.html:44
msgid "Configure »"
msgstr "Yapılandır »"
-#: plinth/templates/index.html:115
+#: plinth/templates/index.html:100
#, python-format
msgid ""
"%(box_name)s, a Debian pure blend, is a 100%% free software self-hosting web "
@@ -7199,7 +7312,7 @@ msgstr ""
"sunucusudur. Veri sahipliğinize ve gizliliğinize saygı gösteren çevrimiçi "
"iletişim araçları sunar."
-#: plinth/templates/index.html:124
+#: plinth/templates/index.html:109
#, fuzzy, python-format
#| msgid ""
#| "This portal is a part of Plinth, the %(box_name)s web interface. Plinth "
@@ -7214,60 +7327,60 @@ msgstr ""
"Plinth özgür yazılımdır ve GNU Affero Genel Kamu Lisansının 3. ya da daha "
"sonraki sürümleri kapsamında yayınlanmıştır."
-#: plinth/templates/index.html:144
+#: plinth/templates/index.html:129
msgid "Homepage"
msgstr "Ana sayfa"
-#: plinth/templates/index.html:147
+#: plinth/templates/index.html:132
msgid "Source Code"
msgstr "Kaynak kod"
-#: plinth/templates/index.html:150
+#: plinth/templates/index.html:135
msgid "Donate"
msgstr "Bağış"
-#: plinth/templates/index.html:154
+#: plinth/templates/index.html:139
msgid "FreedomBox Foundation"
msgstr "FreedomBox Vakfı"
-#: plinth/templates/index.html:161
+#: plinth/templates/index.html:146
msgid "IRC Chatroom"
msgstr "IRC sohbet odası"
-#: plinth/templates/index.html:166
+#: plinth/templates/index.html:151
msgid "Mailing list"
msgstr "E-posta listesi"
-#: plinth/templates/internal-zone.html:26
+#: plinth/templates/internal-zone.html:11
#, fuzzy, python-format
#| msgid "Service %(service_name)s is not running."
msgid "%(service_name)s is available only on internal networks."
msgstr "%(service_name)s servisi çalışmamaktadır."
-#: plinth/templates/internal-zone.html:32
+#: plinth/templates/internal-zone.html:17
msgid "Currently there are no network interfaces configured as internal."
msgstr ""
-#: plinth/templates/internal-zone.html:34
+#: plinth/templates/internal-zone.html:19
#, python-format
msgid ""
"Currently the following network interfaces are configured as internal: "
"%(interface_list)s"
msgstr ""
-#: plinth/templates/notifications-dropdown.html:26
+#: plinth/templates/notifications-dropdown.html:11
#, fuzzy
#| msgid "No certificate"
msgid "Notifications"
msgstr "Sertifika yok"
-#: plinth/templates/port-forwarding-info.html:23
+#: plinth/templates/port-forwarding-info.html:8
#, fuzzy
#| msgid "Enable forwarding"
msgid "Port Forwarding"
msgstr "İletmeyi etkinleştir"
-#: plinth/templates/port-forwarding-info.html:26
+#: plinth/templates/port-forwarding-info.html:11
#, python-format
msgid ""
"If your FreedomBox is behind a router, you will need to set up port "
@@ -7275,15 +7388,15 @@ msgid ""
"%(service_name)s:"
msgstr ""
-#: plinth/templates/setup.html:51
+#: plinth/templates/setup.html:36
msgid "Install this application?"
msgstr "Bu uygulama kurulsun mu?"
-#: plinth/templates/setup.html:55
+#: plinth/templates/setup.html:40
msgid "This application needs an update. Update now?"
msgstr "Bu uygulamanın güncellemeye ihtiyacı var. Şimdi güncellensin mi?"
-#: plinth/templates/setup.html:66
+#: plinth/templates/setup.html:51
msgid ""
"Another installation or upgrade is already running. Please wait for a few "
"moments before trying again."
@@ -7291,49 +7404,49 @@ msgstr ""
"Başka bir kurulum ya da güncelleme zaten çalışmaktadır. Lütfen tekrar "
"denemeden önce biraz bekleyin."
-#: plinth/templates/setup.html:73
+#: plinth/templates/setup.html:58
msgid "This application is currently not available in your distribution."
msgstr ""
-#: plinth/templates/setup.html:87
+#: plinth/templates/setup.html:72
msgid "Install"
msgstr "Kur"
-#: plinth/templates/setup.html:98
+#: plinth/templates/setup.html:83
msgid "Performing pre-install operation"
msgstr "Kurulum öncesi işlemleri yapılıyor"
-#: plinth/templates/setup.html:102
+#: plinth/templates/setup.html:87
msgid "Performing post-install operation"
msgstr "Kurulum sonrası işlemleri yapılıyor"
-#: plinth/templates/setup.html:107
+#: plinth/templates/setup.html:92
#, python-format
msgid "Installing %(package_names)s: %(status)s"
msgstr "%(package_names)s kuruluyor: %(status)s"
-#: plinth/templates/setup.html:117
+#: plinth/templates/setup.html:102
#, python-format
msgid "%(percentage)s%% complete"
msgstr "%(percentage)s%% tamamlandı"
-#: plinth/templates/toolbar.html:38
+#: plinth/templates/toolbar.html:23
msgid "Launch web client"
msgstr "Ağ istemcisini başlat"
-#: plinth/templates/toolbar.html:47
+#: plinth/templates/toolbar.html:32
msgid "Client Apps"
msgstr "İstemci Uygulamalar"
-#: plinth/views.py:179
+#: plinth/views.py:189
msgid "Application enabled"
msgstr "Uygulama etkinleştirildi"
-#: plinth/views.py:182
+#: plinth/views.py:192
msgid "Application disabled"
msgstr "Uygulama devre dışı bırakıldı"
-#: plinth/web_framework.py:190
+#: plinth/web_framework.py:107
msgid "Gujarati"
msgstr ""
diff --git a/plinth/locale/uk/LC_MESSAGES/django.po b/plinth/locale/uk/LC_MESSAGES/django.po
index 80ccac813..28ffdd4e4 100644
--- a/plinth/locale/uk/LC_MESSAGES/django.po
+++ b/plinth/locale/uk/LC_MESSAGES/django.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2020-02-14 21:26+0200\n"
+"POT-Creation-Date: 2020-02-24 19:12-0500\n"
"PO-Revision-Date: 2019-01-04 17:06+0000\n"
"Last-Translator: prolinux ukraine \n"
"Language-Team: Ukrainian user@host:~/path/to/repo/"
"i>"
msgstr ""
-#: plinth/modules/backups/forms.py:204
+#: plinth/modules/backups/forms.py:189
msgid "SSH server password"
msgstr "пароль SSH серверу"
-#: plinth/modules/backups/forms.py:205
+#: plinth/modules/backups/forms.py:190
msgid ""
"Password of the SSH Server.
SSH key-based authentication is not yet "
"possible."
@@ -276,100 +276,100 @@ msgstr ""
"Пароль для SSH серверу.
Аутентифікація на основі SSH ключа поки не "
"підтримується."
-#: plinth/modules/backups/forms.py:224
+#: plinth/modules/backups/forms.py:209
msgid "Remote backup repository already exists."
msgstr ""
-#: plinth/modules/backups/forms.py:230
+#: plinth/modules/backups/forms.py:215
msgid "Select verified SSH public key"
msgstr ""
-#: plinth/modules/backups/repository.py:48
+#: plinth/modules/backups/repository.py:33
msgid ""
"Connection refused - make sure you provided correct credentials and the "
"server is running."
msgstr ""
-#: plinth/modules/backups/repository.py:55
+#: plinth/modules/backups/repository.py:40
msgid "Connection refused"
msgstr "З’єднання відхилено"
-#: plinth/modules/backups/repository.py:62
+#: plinth/modules/backups/repository.py:47
msgid "Repository not found"
msgstr "Сховище не знайдено"
-#: plinth/modules/backups/repository.py:67
+#: plinth/modules/backups/repository.py:52
#, fuzzy
msgid "Incorrect encryption passphrase"
msgstr "Неправильне гасло шифрування"
-#: plinth/modules/backups/repository.py:72
+#: plinth/modules/backups/repository.py:57
msgid "SSH access denied"
msgstr ""
-#: plinth/modules/backups/repository.py:78
+#: plinth/modules/backups/repository.py:63
msgid "Repository path is neither empty nor is an existing backups repository."
msgstr ""
-#: plinth/modules/backups/repository.py:152
+#: plinth/modules/backups/repository.py:137
msgid "Existing repository is not encrypted."
msgstr ""
-#: plinth/modules/backups/repository.py:337
+#: plinth/modules/backups/repository.py:322
#, python-brace-format
msgid "{box_name} storage"
msgstr "{box_name} сховище"
-#: plinth/modules/backups/templates/backups.html:45
-#: plinth/modules/backups/views.py:77
+#: plinth/modules/backups/templates/backups.html:30
+#: plinth/modules/backups/views.py:60
#, fuzzy
#| msgid "Create new repository"
msgid "Create a new backup"
msgstr "Створити нове сховище"
-#: plinth/modules/backups/templates/backups.html:49
+#: plinth/modules/backups/templates/backups.html:34
#, fuzzy
#| msgid "Create"
msgid "Create Backup"
msgstr "Створити"
-#: plinth/modules/backups/templates/backups.html:52
+#: plinth/modules/backups/templates/backups.html:37
msgid "Upload and restore a backup archive"
msgstr ""
-#: plinth/modules/backups/templates/backups.html:56
+#: plinth/modules/backups/templates/backups.html:41
msgid "Upload and Restore"
msgstr ""
-#: plinth/modules/backups/templates/backups.html:59
+#: plinth/modules/backups/templates/backups.html:44
#, fuzzy
#| msgid "+ Add Remote Repository"
msgid "Add a backup location"
msgstr "+ Додати зовнішнє сховище"
-#: plinth/modules/backups/templates/backups.html:63
+#: plinth/modules/backups/templates/backups.html:48
#, fuzzy
#| msgid "+ Add Remote Repository"
msgid "Add Backup Location"
msgstr "+ Додати зовнішнє сховище"
-#: plinth/modules/backups/templates/backups.html:66
+#: plinth/modules/backups/templates/backups.html:51
msgid "Add a remote backup location"
msgstr ""
-#: plinth/modules/backups/templates/backups.html:70
+#: plinth/modules/backups/templates/backups.html:55
#, fuzzy
#| msgid "+ Add Remote Repository"
msgid "Add Remote Backup Location"
msgstr "+ Додати зовнішнє сховище"
-#: plinth/modules/backups/templates/backups.html:73
+#: plinth/modules/backups/templates/backups.html:58
#, fuzzy
#| msgid "Backups"
msgid "Existing Backups"
msgstr "Резервні копії"
-#: plinth/modules/backups/templates/backups_add_remote_repository.html:34
+#: plinth/modules/backups/templates/backups_add_remote_repository.html:19
#, python-format
msgid ""
"The credentials for this repository are stored on your %(box_name)s.
"
@@ -377,79 +377,80 @@ msgid ""
"if chosen, the encryption passphrase."
msgstr ""
-#: plinth/modules/backups/templates/backups_add_remote_repository.html:43
+#: plinth/modules/backups/templates/backups_add_remote_repository.html:28
#, fuzzy
#| msgid "Create Repository"
msgid "Create Location"
msgstr "Створити сховище"
-#: plinth/modules/backups/templates/backups_add_repository.html:34
-#: plinth/modules/gitweb/views.py:70
+#: plinth/modules/backups/templates/backups_add_repository.html:19
+#: plinth/modules/gitweb/views.py:50
#, fuzzy
#| msgid "Remove Repository"
msgid "Create Repository"
msgstr "Видалити сховище"
-#: plinth/modules/backups/templates/backups_delete.html:27
+#: plinth/modules/backups/templates/backups_delete.html:12
msgid "Delete this archive permanently?"
msgstr "Остаточно видалити цей архів?"
-#: plinth/modules/backups/templates/backups_delete.html:33
-#: plinth/modules/ikiwiki/forms.py:30
-#: plinth/modules/networks/templates/connection_show.html:78
-#: plinth/modules/sharing/templates/sharing.html:52
+#: plinth/modules/backups/templates/backups_delete.html:18
+#: plinth/modules/ikiwiki/forms.py:15
+#: plinth/modules/networks/templates/connection_show.html:63
+#: plinth/modules/sharing/templates/sharing.html:37
msgid "Name"
msgstr "Ім’я"
-#: plinth/modules/backups/templates/backups_delete.html:34
+#: plinth/modules/backups/templates/backups_delete.html:19
msgid "Time"
msgstr "Час"
-#: plinth/modules/backups/templates/backups_delete.html:51
+#: plinth/modules/backups/templates/backups_delete.html:36
#, python-format
msgid "Delete Archive %(name)s"
msgstr "Видалити архів %(name)s"
-#: plinth/modules/backups/templates/backups_form.html:35
-#: plinth/modules/gitweb/templates/gitweb_create_edit.html:35
-#: plinth/modules/networks/templates/router_configuration_update.html:34
-#: plinth/modules/pagekite/templates/pagekite_custom_services.html:47
-#: plinth/modules/sharing/templates/sharing_add_edit.html:35
+#: plinth/modules/backups/templates/backups_form.html:20
+#: plinth/modules/gitweb/templates/gitweb_create_edit.html:20
+#: plinth/modules/networks/templates/internet_connectivity_type.html:18
+#: plinth/modules/networks/templates/router_configuration_update.html:19
+#: plinth/modules/pagekite/templates/pagekite_custom_services.html:32
+#: plinth/modules/sharing/templates/sharing_add_edit.html:20
msgid "Submit"
msgstr "Надіслати"
-#: plinth/modules/backups/templates/backups_repository_remove.html:28
+#: plinth/modules/backups/templates/backups_repository_remove.html:13
msgid "Are you sure that you want to remove this repository?"
msgstr "Ви впевнені, що хочете видалити це сховище?"
-#: plinth/modules/backups/templates/backups_repository_remove.html:34
+#: plinth/modules/backups/templates/backups_repository_remove.html:19
msgid ""
"The remote repository will not be deleted. This just removes the repository "
"from the listing on the backup page, you can add it again later on."
msgstr ""
-#: plinth/modules/backups/templates/backups_repository_remove.html:46
+#: plinth/modules/backups/templates/backups_repository_remove.html:31
#, fuzzy
#| msgid "Remove Repository"
msgid "Remove Location"
msgstr "Видалити сховище"
-#: plinth/modules/backups/templates/backups_restore.html:30
+#: plinth/modules/backups/templates/backups_restore.html:15
msgid "Restore data from"
msgstr "Відновити дані з"
-#: plinth/modules/backups/templates/backups_restore.html:43
-#: plinth/modules/backups/views.py:171
+#: plinth/modules/backups/templates/backups_restore.html:28
+#: plinth/modules/backups/views.py:154
msgid "Restore"
msgstr "Відновити"
-#: plinth/modules/backups/templates/backups_restore.html:47
+#: plinth/modules/backups/templates/backups_restore.html:32
#, fuzzy
#| msgid "Restore"
msgid "Restoring"
msgstr "Відновити"
-#: plinth/modules/backups/templates/backups_upload.html:32
+#: plinth/modules/backups/templates/backups_upload.html:17
#, python-format
msgid ""
"\n"
@@ -461,156 +462,148 @@ msgid ""
" "
msgstr ""
-#: plinth/modules/backups/templates/backups_upload.html:42
-#: plinth/modules/help/templates/statuslog.html:38
+#: plinth/modules/backups/templates/backups_upload.html:27
+#: plinth/modules/help/templates/statuslog.html:23
msgid "Caution:"
msgstr ""
-#: plinth/modules/backups/templates/backups_upload.html:43
+#: plinth/modules/backups/templates/backups_upload.html:28
#, python-format
msgid ""
"You have %(max_filesize)s available to restore a backup. Exceeding this "
"limit can leave your %(box_name)s unusable."
msgstr ""
-#: plinth/modules/backups/templates/backups_upload.html:56
+#: plinth/modules/backups/templates/backups_upload.html:41
msgid "Upload file"
msgstr ""
-#: plinth/modules/backups/templates/verify_ssh_hostkey.html:33
+#: plinth/modules/backups/templates/verify_ssh_hostkey.html:18
#, python-format
msgid ""
"Could not reach SSH host %(hostname)s. Please verify that the host is up and "
"accepting connections."
msgstr ""
-#: plinth/modules/backups/templates/verify_ssh_hostkey.html:43
+#: plinth/modules/backups/templates/verify_ssh_hostkey.html:28
#, python-format
msgid ""
"The authenticity of SSH host %(hostname)s could not be established. The host "
"advertises the following SSH public keys. Please verify any one of them."
msgstr ""
-#: plinth/modules/backups/templates/verify_ssh_hostkey.html:55
+#: plinth/modules/backups/templates/verify_ssh_hostkey.html:40
msgid "How to verify?"
msgstr ""
-#: plinth/modules/backups/templates/verify_ssh_hostkey.html:60
+#: plinth/modules/backups/templates/verify_ssh_hostkey.html:45
msgid ""
"Run the following command on the SSH host machine. The output should match "
"one of the provided options. You can also use dsa, ecdsa, ed25519 etc. "
"instead of rsa, by choosing the corresponding file."
msgstr ""
-#: plinth/modules/backups/templates/verify_ssh_hostkey.html:75
+#: plinth/modules/backups/templates/verify_ssh_hostkey.html:60
msgid "Verify Host"
msgstr ""
-#: plinth/modules/backups/views.py:72
+#: plinth/modules/backups/views.py:55
msgid "Archive created."
msgstr "Архів створено."
-#: plinth/modules/backups/views.py:99
+#: plinth/modules/backups/views.py:82
msgid "Delete Archive"
msgstr "Видалити архів"
-#: plinth/modules/backups/views.py:111
+#: plinth/modules/backups/views.py:94
msgid "Archive deleted."
msgstr "Архів видалено."
-#: plinth/modules/backups/views.py:124
+#: plinth/modules/backups/views.py:107
msgid "Upload and restore a backup"
msgstr ""
-#: plinth/modules/backups/views.py:159
+#: plinth/modules/backups/views.py:142
msgid "Restored files from backup."
msgstr ""
-#: plinth/modules/backups/views.py:186
+#: plinth/modules/backups/views.py:169
msgid "No backup file found."
msgstr ""
-#: plinth/modules/backups/views.py:194
+#: plinth/modules/backups/views.py:177
msgid "Restore from uploaded file"
msgstr ""
-#: plinth/modules/backups/views.py:251
+#: plinth/modules/backups/views.py:234
msgid "No additional disks available to add a repository."
msgstr ""
-#: plinth/modules/backups/views.py:259
+#: plinth/modules/backups/views.py:242
#, fuzzy
#| msgid "Create"
msgid "Create backup repository"
msgstr "Створити"
-#: plinth/modules/backups/views.py:286
+#: plinth/modules/backups/views.py:269
msgid "Create remote backup repository"
msgstr ""
-#: plinth/modules/backups/views.py:305
+#: plinth/modules/backups/views.py:288
#, fuzzy
#| msgid "Added new repository."
msgid "Added new remote SSH repository."
msgstr "Додано нове сховище."
-#: plinth/modules/backups/views.py:327
+#: plinth/modules/backups/views.py:310
msgid "Verify SSH hostkey"
msgstr ""
-#: plinth/modules/backups/views.py:353
+#: plinth/modules/backups/views.py:336
msgid "SSH host already verified."
msgstr ""
-#: plinth/modules/backups/views.py:363
+#: plinth/modules/backups/views.py:346
msgid "SSH host verified."
msgstr ""
-#: plinth/modules/backups/views.py:377
+#: plinth/modules/backups/views.py:360
msgid "SSH host public key could not be verified."
msgstr ""
-#: plinth/modules/backups/views.py:379
+#: plinth/modules/backups/views.py:362
msgid "Authentication to remote server failed."
msgstr ""
-#: plinth/modules/backups/views.py:381
+#: plinth/modules/backups/views.py:364
#, fuzzy
#| msgid "Error installing application: {error}"
msgid "Error establishing connection to server: {}"
msgstr "Помилка при встановлені застосунку: {error}"
-#: plinth/modules/backups/views.py:392
+#: plinth/modules/backups/views.py:375
#, fuzzy
#| msgid "Repository not found"
msgid "Repository removed."
msgstr "Сховище не знайдено"
-#: plinth/modules/backups/views.py:406
+#: plinth/modules/backups/views.py:389
msgid "Remove Repository"
msgstr "Видалити сховище"
-#: plinth/modules/backups/views.py:415
+#: plinth/modules/backups/views.py:398
msgid "Repository removed. Backups were not deleted."
msgstr ""
-#: plinth/modules/backups/views.py:425
+#: plinth/modules/backups/views.py:408
msgid "Unmounting failed!"
msgstr ""
-#: plinth/modules/backups/views.py:440 plinth/modules/backups/views.py:444
+#: plinth/modules/backups/views.py:423 plinth/modules/backups/views.py:427
msgid "Mounting failed"
msgstr ""
-#: plinth/modules/bind/__init__.py:36
-msgid "BIND"
-msgstr ""
-
-#: plinth/modules/bind/__init__.py:38
-msgid "Domain Name Server"
-msgstr "Сервер доменних імен"
-
-#: plinth/modules/bind/__init__.py:45
+#: plinth/modules/bind/__init__.py:29
msgid ""
"BIND enables you to publish your Domain Name System (DNS) information on the "
"Internet, and to resolve DNS queries for your user devices on your network."
@@ -618,7 +611,7 @@ msgstr ""
"BIND дозволяє публікувати інформацію про доменні імена (DNS) і надає дозволи "
"на DNS запити пристроїв у вашій мережі."
-#: plinth/modules/bind/__init__.py:49
+#: plinth/modules/bind/__init__.py:33
#, python-brace-format
msgid ""
"Currently, on {box_name}, BIND is only used to resolve DNS queries for other "
@@ -626,39 +619,69 @@ msgid ""
"connection from {box_name}."
msgstr ""
-#: plinth/modules/bind/forms.py:37
+#: plinth/modules/bind/__init__.py:82
+msgid "BIND"
+msgstr ""
+
+#: plinth/modules/bind/__init__.py:83
+msgid "Domain Name Server"
+msgstr "Сервер доменних імен"
+
+#: plinth/modules/bind/forms.py:22
msgid "Forwarders"
msgstr ""
-#: plinth/modules/bind/forms.py:38
+#: plinth/modules/bind/forms.py:23
msgid ""
"A list DNS servers, separated by space, to which requests will be forwarded"
msgstr ""
-#: plinth/modules/bind/forms.py:42
+#: plinth/modules/bind/forms.py:27
msgid "Enable DNSSEC"
msgstr "Увімкнути DNSSEC"
-#: plinth/modules/bind/forms.py:43
+#: plinth/modules/bind/forms.py:28
msgid "Enable Domain Name System Security Extensions"
msgstr ""
-#: plinth/modules/bind/views.py:58 plinth/modules/deluge/views.py:67
-#: plinth/modules/dynamicdns/views.py:171 plinth/modules/openvpn/views.py:153
-#: plinth/modules/shadowsocks/views.py:79
-#: plinth/modules/transmission/views.py:73
+#: plinth/modules/bind/templates/bind.html:11
+msgid "Serving Domains"
+msgstr ""
+
+#: plinth/modules/bind/templates/bind.html:16
+#: plinth/modules/ikiwiki/forms.py:12
+#: plinth/modules/networks/templates/connection_show.html:83
+#: plinth/modules/storage/templates/storage.html:28
+msgid "Type"
+msgstr ""
+
+#: plinth/modules/bind/templates/bind.html:17
+#, fuzzy
+#| msgid "Domain Name"
+msgid "Domain Names"
+msgstr "Доменне ім’я"
+
+#: plinth/modules/bind/templates/bind.html:18
+msgid "Serving"
+msgstr ""
+
+#: plinth/modules/bind/templates/bind.html:19
+msgid "IP addresses"
+msgstr ""
+
+#: plinth/modules/bind/templates/bind.html:35
+#: plinth/modules/bind/templates/bind.html:37
+msgid "Refresh IP address and domains"
+msgstr ""
+
+#: plinth/modules/bind/views.py:73 plinth/modules/deluge/views.py:46
+#: plinth/modules/dynamicdns/views.py:150 plinth/modules/openvpn/views.py:134
+#: plinth/modules/shadowsocks/views.py:59
+#: plinth/modules/transmission/views.py:52
msgid "Configuration updated"
msgstr "Конфігурацію оновлено"
-#: plinth/modules/cockpit/__init__.py:45 plinth/modules/cockpit/manifest.py:27
-msgid "Cockpit"
-msgstr "Cockpit"
-
-#: plinth/modules/cockpit/__init__.py:49
-msgid "Server Administration"
-msgstr ""
-
-#: plinth/modules/cockpit/__init__.py:53
+#: plinth/modules/cockpit/__init__.py:32
#, python-brace-format
msgid ""
"Cockpit is a server manager that makes it easy to administer GNU/Linux "
@@ -667,68 +690,76 @@ msgid ""
"console operations is also available."
msgstr ""
-#: plinth/modules/cockpit/__init__.py:59
+#: plinth/modules/cockpit/__init__.py:38
#, python-brace-format
msgid ""
"It can be accessed by any user on {box_name} "
"belonging to the admin group."
msgstr ""
-#: plinth/modules/cockpit/__init__.py:63
+#: plinth/modules/cockpit/__init__.py:42
msgid ""
"Cockpit requires that you access it through a domain name. It will not work "
"when accessed using an IP address as part of the URL."
msgstr ""
-#: plinth/modules/cockpit/templates/cockpit.html:26
+#: plinth/modules/cockpit/__init__.py:59 plinth/modules/cockpit/manifest.py:12
+msgid "Cockpit"
+msgstr "Cockpit"
+
+#: plinth/modules/cockpit/__init__.py:61
+msgid "Server Administration"
+msgstr ""
+
+#: plinth/modules/cockpit/templates/cockpit.html:11
msgid "Access"
msgstr ""
-#: plinth/modules/cockpit/templates/cockpit.html:29
+#: plinth/modules/cockpit/templates/cockpit.html:14
msgid "Cockpit will only work when accessed using the following URLs."
msgstr ""
-#: plinth/modules/config/__init__.py:37
-msgid "General Configuration"
-msgstr "Загальні налаштування"
-
-#: plinth/modules/config/__init__.py:40
+#: plinth/modules/config/__init__.py:23
msgid ""
"Here you can set some general configuration options like hostname, domain "
"name, webserver home page etc."
msgstr ""
-#: plinth/modules/config/__init__.py:67 plinth/modules/dynamicdns/views.py:44
-#: plinth/modules/i2p/views.py:31 plinth/modules/names/templates/names.html:44
-#: plinth/modules/names/templates/names.html:58
-#: plinth/modules/snapshot/views.py:41
-#: plinth/modules/tahoe/templates/tahoe-pre-setup.html:39
+#: plinth/modules/config/__init__.py:50
+msgid "General Configuration"
+msgstr "Загальні налаштування"
+
+#: plinth/modules/config/__init__.py:55 plinth/modules/dynamicdns/views.py:29
+#: plinth/modules/i2p/views.py:16 plinth/modules/names/templates/names.html:29
+#: plinth/modules/names/templates/names.html:43
+#: plinth/modules/snapshot/views.py:26
+#: plinth/modules/tahoe/templates/tahoe-pre-setup.html:24
msgid "Configure"
msgstr "Налаштувати"
-#: plinth/modules/config/__init__.py:71 plinth/modules/config/forms.py:76
-#: plinth/modules/dynamicdns/forms.py:110
+#: plinth/modules/config/__init__.py:59 plinth/modules/config/forms.py:61
+#: plinth/modules/dynamicdns/forms.py:95
msgid "Domain Name"
msgstr "Доменне ім’я"
-#: plinth/modules/config/forms.py:42 plinth/modules/config/forms.py:88
-#: plinth/modules/dynamicdns/forms.py:113
+#: plinth/modules/config/forms.py:27 plinth/modules/config/forms.py:73
+#: plinth/modules/dynamicdns/forms.py:98
msgid "Invalid domain name"
msgstr ""
-#: plinth/modules/config/forms.py:50
+#: plinth/modules/config/forms.py:35
msgid "Apache Default"
msgstr ""
-#: plinth/modules/config/forms.py:51
+#: plinth/modules/config/forms.py:36
msgid "FreedomBox Service (Plinth)"
msgstr ""
-#: plinth/modules/config/forms.py:63
+#: plinth/modules/config/forms.py:48
msgid "Hostname"
msgstr "Ім’я хоста"
-#: plinth/modules/config/forms.py:65
+#: plinth/modules/config/forms.py:50
#, python-brace-format
msgid ""
"Hostname is the local name by which other devices on the local network can "
@@ -737,11 +768,11 @@ msgid ""
"length must be 63 characters or less."
msgstr ""
-#: plinth/modules/config/forms.py:72
+#: plinth/modules/config/forms.py:57
msgid "Invalid hostname"
msgstr ""
-#: plinth/modules/config/forms.py:78
+#: plinth/modules/config/forms.py:63
#, python-brace-format
msgid ""
"Domain name is the global name by which other devices on the Internet can "
@@ -752,11 +783,11 @@ msgid ""
"or less."
msgstr ""
-#: plinth/modules/config/forms.py:93
+#: plinth/modules/config/forms.py:78
msgid "Webserver Home Page"
msgstr ""
-#: plinth/modules/config/forms.py:95
+#: plinth/modules/config/forms.py:80
#, python-brace-format
msgid ""
"Choose the default page that must be served when someone visits your "
@@ -766,72 +797,64 @@ msgid ""
"explicitly type /plinth or /freedombox to reach {box_name} Service (Plinth)."
msgstr ""
-#: plinth/modules/config/forms.py:106
+#: plinth/modules/config/forms.py:91
msgid "Show advanced apps and features"
msgstr ""
-#: plinth/modules/config/forms.py:107
+#: plinth/modules/config/forms.py:92
msgid "Show apps and features that require more technical knowledge."
msgstr ""
-#: plinth/modules/config/views.py:65
+#: plinth/modules/config/views.py:47
#, python-brace-format
msgid "Error setting hostname: {exception}"
msgstr "Помилка параметру hostname: {exception}"
-#: plinth/modules/config/views.py:68
+#: plinth/modules/config/views.py:50
msgid "Hostname set"
msgstr ""
-#: plinth/modules/config/views.py:77
+#: plinth/modules/config/views.py:59
#, python-brace-format
msgid "Error setting domain name: {exception}"
msgstr ""
-#: plinth/modules/config/views.py:80
+#: plinth/modules/config/views.py:62
msgid "Domain name set"
msgstr ""
-#: plinth/modules/config/views.py:88
+#: plinth/modules/config/views.py:70
#, fuzzy, python-brace-format
#| msgid "Error setting hostname: {exception}"
msgid "Error setting webserver home page: {exception}"
msgstr "Помилка параметру hostname: {exception}"
-#: plinth/modules/config/views.py:91
+#: plinth/modules/config/views.py:73
msgid "Webserver home page set"
msgstr ""
-#: plinth/modules/config/views.py:99
+#: plinth/modules/config/views.py:81
#, fuzzy, python-brace-format
#| msgid "Error setting hostname: {exception}"
msgid "Error changing advanced mode: {exception}"
msgstr "Помилка параметру hostname: {exception}"
-#: plinth/modules/config/views.py:104
+#: plinth/modules/config/views.py:86
msgid "Showing advanced apps and features"
msgstr ""
-#: plinth/modules/config/views.py:107
+#: plinth/modules/config/views.py:89
msgid "Hiding advanced apps and features"
msgstr ""
-#: plinth/modules/coquelicot/__init__.py:40
-msgid "Coquelicot"
-msgstr "Coquelicot"
-
-#: plinth/modules/coquelicot/__init__.py:42 plinth/modules/samba/__init__.py:50
-msgid "File Sharing"
-msgstr ""
-
-#: plinth/modules/coquelicot/__init__.py:45
+#: plinth/modules/coquelicot/__init__.py:24
msgid ""
"Coquelicot is a \"one-click\" file sharing web application with a focus on "
"protecting users' privacy. It is best used for quickly sharing a single "
"file. "
msgstr ""
-#: plinth/modules/coquelicot/__init__.py:48
+#: plinth/modules/coquelicot/__init__.py:27
msgid ""
"This Coquelicot instance is exposed to the public but requires an upload "
"password to prevent unauthorized access. You can set a new upload password "
@@ -839,197 +862,205 @@ msgid ""
"password is \"test\"."
msgstr ""
-#: plinth/modules/coquelicot/forms.py:30
+#: plinth/modules/coquelicot/__init__.py:45
+msgid "Coquelicot"
+msgstr "Coquelicot"
+
+#: plinth/modules/coquelicot/__init__.py:47 plinth/modules/samba/__init__.py:62
+msgid "File Sharing"
+msgstr ""
+
+#: plinth/modules/coquelicot/forms.py:15
msgid "Upload Password"
msgstr ""
-#: plinth/modules/coquelicot/forms.py:31
+#: plinth/modules/coquelicot/forms.py:16
msgid ""
"Set a new upload password for Coquelicot. Leave this field blank to keep the "
"current password."
msgstr ""
-#: plinth/modules/coquelicot/forms.py:35
+#: plinth/modules/coquelicot/forms.py:20
msgid "Maximum File Size (in MiB)"
msgstr "Максимальний розмір файлу (в Мб)"
-#: plinth/modules/coquelicot/forms.py:36
+#: plinth/modules/coquelicot/forms.py:21
msgid "Set the maximum size of the files that can be uploaded to Coquelicot."
msgstr ""
"Встановити максимальний розмір файлів, які можуть бути завантажені до "
"Coquelicot."
-#: plinth/modules/coquelicot/manifest.py:24
+#: plinth/modules/coquelicot/manifest.py:9
msgid "coquelicot"
msgstr ""
-#: plinth/modules/coquelicot/views.py:58
+#: plinth/modules/coquelicot/views.py:37
msgid "Upload password updated"
msgstr ""
-#: plinth/modules/coquelicot/views.py:61
+#: plinth/modules/coquelicot/views.py:40
msgid "Failed to update upload password"
msgstr ""
-#: plinth/modules/coquelicot/views.py:69
+#: plinth/modules/coquelicot/views.py:48
msgid "Maximum file size updated"
msgstr "Максимальний розмір файлу оновлено"
-#: plinth/modules/coquelicot/views.py:72
+#: plinth/modules/coquelicot/views.py:51
msgid "Failed to update maximum file size"
msgstr ""
-#: plinth/modules/datetime/__init__.py:39
-msgid "Date & Time"
-msgstr "Дата і Час"
-
-#: plinth/modules/datetime/__init__.py:42
+#: plinth/modules/datetime/__init__.py:25
msgid ""
"Network time server is a program that maintains the system time in "
"synchronization with servers on the Internet."
msgstr ""
-#: plinth/modules/datetime/__init__.py:97
+#: plinth/modules/datetime/__init__.py:42
+msgid "Date & Time"
+msgstr "Дата і Час"
+
+#: plinth/modules/datetime/__init__.py:85
msgid "Time synchronized to NTP server"
msgstr ""
-#: plinth/modules/datetime/forms.py:35
+#: plinth/modules/datetime/forms.py:20
msgid "Time Zone"
msgstr "Часовий пояс"
-#: plinth/modules/datetime/forms.py:36
+#: plinth/modules/datetime/forms.py:21
msgid ""
"Set your time zone to get accurate timestamps. This will set the system-wide "
"time zone."
msgstr ""
-#: plinth/modules/datetime/forms.py:47
+#: plinth/modules/datetime/forms.py:32
msgid "-- no time zone set --"
msgstr "-- часовий пояс не обрано --"
-#: plinth/modules/datetime/views.py:64
+#: plinth/modules/datetime/views.py:45
#, python-brace-format
msgid "Error setting time zone: {exception}"
msgstr ""
-#: plinth/modules/datetime/views.py:67
+#: plinth/modules/datetime/views.py:48
msgid "Time zone set"
msgstr ""
-#: plinth/modules/deluge/__init__.py:39 plinth/modules/deluge/manifest.py:24
-msgid "Deluge"
-msgstr "Deluge"
-
-#: plinth/modules/deluge/__init__.py:43
-#: plinth/modules/transmission/__init__.py:45
-msgid "BitTorrent Web Client"
-msgstr ""
-
-#: plinth/modules/deluge/__init__.py:46
+#: plinth/modules/deluge/__init__.py:25
msgid "Deluge is a BitTorrent client that features a Web UI."
msgstr "Deluge це BitTorrent клієнт з веб-інтерфейсом."
-#: plinth/modules/deluge/__init__.py:47
+#: plinth/modules/deluge/__init__.py:26
msgid ""
"The default password is 'deluge', but you should log in and change it "
"immediately after enabling this service."
msgstr ""
-#: plinth/modules/deluge/__init__.py:51
-#: plinth/modules/transmission/__init__.py:57
+#: plinth/modules/deluge/__init__.py:30
+#: plinth/modules/transmission/__init__.py:34
msgid "Download files using BitTorrent applications"
msgstr ""
-#: plinth/modules/deluge/forms.py:35 plinth/modules/transmission/forms.py:35
+#: plinth/modules/deluge/__init__.py:46 plinth/modules/deluge/manifest.py:9
+msgid "Deluge"
+msgstr "Deluge"
+
+#: plinth/modules/deluge/__init__.py:47
+#: plinth/modules/transmission/__init__.py:50
+msgid "BitTorrent Web Client"
+msgstr ""
+
+#: plinth/modules/deluge/forms.py:20 plinth/modules/transmission/forms.py:20
msgid "Download directory"
msgstr ""
-#: plinth/modules/deluge/manifest.py:25
+#: plinth/modules/deluge/manifest.py:10
msgid "Bittorrent client written in Python/PyGTK"
msgstr ""
-#: plinth/modules/diagnostics/__init__.py:33
-msgid "Diagnostics"
-msgstr "Діагностика"
-
-#: plinth/modules/diagnostics/__init__.py:36
+#: plinth/modules/diagnostics/__init__.py:19
msgid ""
"The system diagnostic test will run a number of checks on your system to "
"confirm that applications and services are working as expected."
msgstr ""
-#: plinth/modules/diagnostics/diagnostics.py:65
+#: plinth/modules/diagnostics/__init__.py:37
+msgid "Diagnostics"
+msgstr "Діагностика"
+
+#: plinth/modules/diagnostics/diagnostics.py:48
msgid "Diagnostic Test"
msgstr ""
-#: plinth/modules/diagnostics/templates/diagnostics.html:43
-#: plinth/modules/diagnostics/templates/diagnostics_button.html:28
-#: plinth/modules/diagnostics/templates/diagnostics_button.html:31
+#: plinth/modules/diagnostics/templates/diagnostics.html:28
+#: plinth/modules/diagnostics/templates/diagnostics_button.html:13
+#: plinth/modules/diagnostics/templates/diagnostics_button.html:16
msgid "Run Diagnostics"
msgstr ""
-#: plinth/modules/diagnostics/templates/diagnostics.html:46
+#: plinth/modules/diagnostics/templates/diagnostics.html:31
msgid "Diagnostics test is currently running"
msgstr ""
-#: plinth/modules/diagnostics/templates/diagnostics.html:59
+#: plinth/modules/diagnostics/templates/diagnostics.html:44
msgid "Results"
msgstr "Результати"
-#: plinth/modules/diagnostics/templates/diagnostics.html:67
-#: plinth/modules/diagnostics/templates/diagnostics_app.html:27
+#: plinth/modules/diagnostics/templates/diagnostics.html:52
+#: plinth/modules/diagnostics/templates/diagnostics_app.html:12
#, python-format
msgid "App: %(app_id)s"
msgstr ""
-#: plinth/modules/diagnostics/templates/diagnostics_app.html:25
+#: plinth/modules/diagnostics/templates/diagnostics_app.html:10
msgid "Diagnostic Results"
msgstr "Результати діагностики"
-#: plinth/modules/diagnostics/templates/diagnostics_app.html:32
+#: plinth/modules/diagnostics/templates/diagnostics_app.html:17
#, fuzzy
#| msgid "This module does not support diagnostics"
msgid "This app does not support diagnostics"
msgstr "Цей модуль не підтримує діагностику"
-#: plinth/modules/diagnostics/templates/diagnostics_results.html:25
+#: plinth/modules/diagnostics/templates/diagnostics_results.html:10
msgid "Test"
msgstr "Тест"
-#: plinth/modules/diagnostics/templates/diagnostics_results.html:26
+#: plinth/modules/diagnostics/templates/diagnostics_results.html:11
msgid "Result"
msgstr "Результат"
-#: plinth/modules/diaspora/__init__.py:54
-#: plinth/modules/diaspora/manifest.py:38
-msgid "diaspora*"
-msgstr "diaspora*"
-
-#: plinth/modules/diaspora/__init__.py:56
-msgid "Federated Social Network"
-msgstr ""
-
-#: plinth/modules/diaspora/__init__.py:63
+#: plinth/modules/diaspora/__init__.py:45
msgid ""
"diaspora* is a decentralized social network where you can store and control "
"your own data."
msgstr ""
-#: plinth/modules/diaspora/forms.py:30
+#: plinth/modules/diaspora/__init__.py:69
+#: plinth/modules/diaspora/manifest.py:23
+msgid "diaspora*"
+msgstr "diaspora*"
+
+#: plinth/modules/diaspora/__init__.py:70
+msgid "Federated Social Network"
+msgstr ""
+
+#: plinth/modules/diaspora/forms.py:15
msgid "Enable new user registrations"
msgstr ""
-#: plinth/modules/diaspora/manifest.py:26
+#: plinth/modules/diaspora/manifest.py:11
msgid "dandelion*"
msgstr ""
-#: plinth/modules/diaspora/manifest.py:28
+#: plinth/modules/diaspora/manifest.py:13
msgid ""
"It is an unofficial webview based client for the community-run, distributed "
"social network diaspora*"
msgstr ""
-#: plinth/modules/diaspora/templates/diaspora-post-setup.html:32
+#: plinth/modules/diaspora/templates/diaspora-post-setup.html:16
#, python-format
msgid ""
"The diaspora* pod domain is set to %(domain_name)s. User IDs will "
@@ -1039,39 +1070,35 @@ msgid ""
"href=\"https://diaspora.%(domain_name)s\"> diaspora.%(domain_name)s "
msgstr ""
-#: plinth/modules/diaspora/templates/diaspora-pre-setup.html:58
-#: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:40
-#: plinth/modules/ejabberd/templates/ejabberd.html:58
-#: plinth/modules/i2p/templates/i2p.html:34
-#: plinth/modules/ikiwiki/templates/ikiwiki_create.html:33
-#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:62
-#: plinth/modules/snapshot/templates/snapshot.html:30
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:51
-#: plinth/modules/tahoe/templates/tahoe-pre-setup.html:58
-#: plinth/templates/app.html:77
+#: plinth/modules/diaspora/templates/diaspora-pre-setup.html:43
+#: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:25
+#: plinth/modules/ejabberd/templates/ejabberd.html:43
+#: plinth/modules/i2p/templates/i2p.html:19
+#: plinth/modules/ikiwiki/templates/ikiwiki_create.html:18
+#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:47
+#: plinth/modules/snapshot/templates/snapshot.html:15
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:35
+#: plinth/modules/tahoe/templates/tahoe-pre-setup.html:43
+#: plinth/templates/app.html:62
msgid "Update setup"
msgstr "Оновити налаштування"
-#: plinth/modules/diaspora/views.py:93 plinth/modules/ejabberd/views.py:66
-#: plinth/modules/matrixsynapse/views.py:108
-#: plinth/modules/mediawiki/views.py:79 plinth/modules/openvpn/views.py:155
-#: plinth/modules/tor/views.py:156 plinth/views.py:175
+#: plinth/modules/diaspora/views.py:76 plinth/modules/ejabberd/views.py:46
+#: plinth/modules/matrixsynapse/views.py:85
+#: plinth/modules/mediawiki/views.py:59 plinth/modules/openvpn/views.py:136
+#: plinth/modules/tor/views.py:137 plinth/views.py:185
msgid "Setting unchanged"
msgstr ""
-#: plinth/modules/diaspora/views.py:97
+#: plinth/modules/diaspora/views.py:80
msgid "User registrations enabled"
msgstr ""
-#: plinth/modules/diaspora/views.py:101
+#: plinth/modules/diaspora/views.py:84
msgid "User registrations disabled"
msgstr ""
-#: plinth/modules/dynamicdns/__init__.py:40
-msgid "Dynamic DNS Client"
-msgstr ""
-
-#: plinth/modules/dynamicdns/__init__.py:44
+#: plinth/modules/dynamicdns/__init__.py:27
#, python-brace-format
msgid ""
"If your Internet provider changes your IP address periodically (i.e. every "
@@ -1079,7 +1106,7 @@ msgid ""
"prevent others from finding services which are provided by this {box_name}."
msgstr ""
-#: plinth/modules/dynamicdns/__init__.py:48
+#: plinth/modules/dynamicdns/__init__.py:31
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 "
@@ -1090,52 +1117,56 @@ msgid ""
"IP address."
msgstr ""
-#: plinth/modules/dynamicdns/__init__.py:78
+#: plinth/modules/dynamicdns/__init__.py:56
+msgid "Dynamic DNS Client"
+msgstr ""
+
+#: plinth/modules/dynamicdns/__init__.py:66
#, fuzzy
#| msgid "Domain Name"
msgid "Dynamic Domain Name"
msgstr "Доменне ім’я"
-#: plinth/modules/dynamicdns/forms.py:42
+#: plinth/modules/dynamicdns/forms.py:27
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/forms.py:46
+#: plinth/modules/dynamicdns/forms.py:31
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/forms.py:51
+#: plinth/modules/dynamicdns/forms.py:36
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/forms.py:55
+#: plinth/modules/dynamicdns/forms.py:40
#, python-brace-format
msgid "The public domain name you want to use to reach your {box_name}."
msgstr ""
-#: plinth/modules/dynamicdns/forms.py:58
+#: plinth/modules/dynamicdns/forms.py:43
msgid "Use this option if your provider uses self signed certificates."
msgstr ""
-#: plinth/modules/dynamicdns/forms.py:61
+#: plinth/modules/dynamicdns/forms.py:46
msgid ""
"If this option is selected, your username and password will be used for HTTP "
"basic authentication."
msgstr ""
-#: plinth/modules/dynamicdns/forms.py:64
+#: plinth/modules/dynamicdns/forms.py:49
msgid "Leave this field empty if you want to keep your current password."
msgstr ""
-#: plinth/modules/dynamicdns/forms.py:67
+#: plinth/modules/dynamicdns/forms.py:52
#, python-brace-format
msgid ""
"Optional Value. If your {box_name} is not connected directly to the Internet "
@@ -1144,72 +1175,72 @@ msgid ""
"(example: http://myip.datasystems24.de)."
msgstr ""
-#: plinth/modules/dynamicdns/forms.py:75
+#: plinth/modules/dynamicdns/forms.py:60
msgid "The username that was used when the account was created."
msgstr ""
-#: plinth/modules/dynamicdns/forms.py:83
+#: plinth/modules/dynamicdns/forms.py:68
msgid "Enable Dynamic DNS"
msgstr ""
-#: plinth/modules/dynamicdns/forms.py:86
+#: plinth/modules/dynamicdns/forms.py:71
msgid "Service Type"
msgstr ""
-#: plinth/modules/dynamicdns/forms.py:91
+#: plinth/modules/dynamicdns/forms.py:76
msgid "GnuDIP Server Address"
msgstr ""
-#: plinth/modules/dynamicdns/forms.py:94
+#: plinth/modules/dynamicdns/forms.py:79
msgid "Invalid server name"
msgstr ""
-#: plinth/modules/dynamicdns/forms.py:97
+#: plinth/modules/dynamicdns/forms.py:82
msgid "Update URL"
msgstr ""
-#: plinth/modules/dynamicdns/forms.py:102
+#: plinth/modules/dynamicdns/forms.py:87
msgid "Accept all SSL certificates"
msgstr "Приймати всі SSL-сертифікати"
-#: plinth/modules/dynamicdns/forms.py:106
+#: plinth/modules/dynamicdns/forms.py:91
msgid "Use HTTP basic authentication"
msgstr ""
-#: plinth/modules/dynamicdns/forms.py:116 plinth/modules/networks/forms.py:217
+#: plinth/modules/dynamicdns/forms.py:101 plinth/modules/networks/forms.py:199
msgid "Username"
msgstr "Ім’я користувача"
-#: plinth/modules/dynamicdns/forms.py:119 plinth/modules/networks/forms.py:218
-#: plinth/modules/shadowsocks/forms.py:60
+#: plinth/modules/dynamicdns/forms.py:104 plinth/modules/networks/forms.py:200
+#: plinth/modules/shadowsocks/forms.py:45
msgid "Password"
msgstr "Пароль"
-#: plinth/modules/dynamicdns/forms.py:123 plinth/modules/networks/forms.py:220
+#: plinth/modules/dynamicdns/forms.py:108 plinth/modules/networks/forms.py:202
msgid "Show password"
msgstr "Показати пароль"
-#: plinth/modules/dynamicdns/forms.py:127
+#: plinth/modules/dynamicdns/forms.py:112
msgid "URL to look up public IP"
msgstr ""
-#: plinth/modules/dynamicdns/forms.py:151
+#: plinth/modules/dynamicdns/forms.py:136
msgid "Please provide an update URL or a GnuDIP server address"
msgstr ""
-#: plinth/modules/dynamicdns/forms.py:156
+#: plinth/modules/dynamicdns/forms.py:141
msgid "Please provide a GnuDIP username"
msgstr ""
-#: plinth/modules/dynamicdns/forms.py:160
+#: plinth/modules/dynamicdns/forms.py:145
msgid "Please provide a GnuDIP domain name"
msgstr ""
-#: plinth/modules/dynamicdns/forms.py:165
+#: plinth/modules/dynamicdns/forms.py:150
msgid "Please provide a password"
msgstr ""
-#: plinth/modules/dynamicdns/templates/dynamicdns.html:27
+#: plinth/modules/dynamicdns/templates/dynamicdns.html:12
msgid ""
"If you are looking for a free dynamic DNS account, you may find a free "
"GnuDIP service at ."
msgstr ""
-#: plinth/modules/dynamicdns/templates/dynamicdns.html:38
+#: plinth/modules/dynamicdns/templates/dynamicdns.html:23
#, python-format
msgid ""
"If your %(box_name)s is connected behind a NAT router, don't forget to add "
@@ -1226,27 +1257,27 @@ msgid ""
"port 443 (HTTPS)."
msgstr ""
-#: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:30
+#: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:15
msgid ""
"You have disabled Javascript. Dynamic form mode is disabled and some helper "
"functions may not work (but the main functionality should work)."
msgstr ""
-#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:24
+#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:9
msgid "NAT type"
msgstr ""
-#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:28
+#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:13
msgid ""
"NAT type was not detected yet. If you do not provide an \"IP Check URL\", we "
"will not detect a NAT type."
msgstr ""
-#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:34
+#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:19
msgid "Direct connection to the Internet."
msgstr ""
-#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:36
+#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:21
#, python-format
msgid ""
"Behind NAT. This means that Dynamic DNS service will poll the \"URL to look "
@@ -1255,54 +1286,45 @@ msgid ""
"changes, it may take up to %(timer)s minutes until your DNS entry is updated."
msgstr ""
-#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:48
+#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:33
msgid "Last update"
msgstr ""
-#: plinth/modules/dynamicdns/views.py:41 plinth/modules/help/__init__.py:59
-#: plinth/templates/help-menu.html:61 plinth/templates/help-menu.html:62
+#: plinth/modules/dynamicdns/views.py:26 plinth/modules/help/__init__.py:49
+#: plinth/templates/help-menu.html:46 plinth/templates/help-menu.html:47
msgid "About"
msgstr ""
-#: plinth/modules/dynamicdns/views.py:47
-#: plinth/modules/firewall/templates/firewall.html:25
-#: plinth/modules/firewall/templates/firewall.html:45
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:38
-#: plinth/modules/networks/templates/connection_show.html:261
-#: plinth/modules/openvpn/templates/openvpn.html:39
-#: plinth/modules/openvpn/templates/openvpn.html:60
-#: plinth/modules/tor/templates/tor.html:37
-#: plinth/modules/tor/templates/tor.html:51
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:61
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:60
-#: plinth/templates/app.html:42
+#: plinth/modules/dynamicdns/views.py:32
+#: plinth/modules/firewall/templates/firewall.html:10
+#: plinth/modules/firewall/templates/firewall.html:30
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:23
+#: plinth/modules/networks/templates/connection_show.html:246
+#: plinth/modules/openvpn/templates/openvpn.html:24
+#: plinth/modules/openvpn/templates/openvpn.html:45
+#: plinth/modules/tor/templates/tor.html:22
+#: plinth/modules/tor/templates/tor.html:36
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:46
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:45
+#: plinth/templates/app.html:27
msgid "Status"
msgstr "Статус"
-#: plinth/modules/dynamicdns/views.py:79
+#: plinth/modules/dynamicdns/views.py:62
msgid "Configure Dynamic DNS"
msgstr ""
-#: plinth/modules/dynamicdns/views.py:105
+#: plinth/modules/dynamicdns/views.py:86
msgid "Dynamic DNS Status"
msgstr ""
-#: plinth/modules/ejabberd/__init__.py:50
-msgid "ejabberd"
-msgstr ""
-
-#: plinth/modules/ejabberd/__init__.py:54
-#: plinth/modules/matrixsynapse/__init__.py:52
-msgid "Chat Server"
-msgstr ""
-
-#: plinth/modules/ejabberd/__init__.py:57
+#: plinth/modules/ejabberd/__init__.py:36
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:60
+#: plinth/modules/ejabberd/__init__.py:39
#, python-brace-format
msgid ""
"To actually communicate, you can use the web client"
@@ -1311,11 +1333,20 @@ msgid ""
"any user with a {box_name} login."
msgstr ""
-#: plinth/modules/ejabberd/forms.py:32
+#: plinth/modules/ejabberd/__init__.py:70
+msgid "ejabberd"
+msgstr ""
+
+#: plinth/modules/ejabberd/__init__.py:71
+#: plinth/modules/matrixsynapse/__init__.py:68
+msgid "Chat Server"
+msgstr ""
+
+#: plinth/modules/ejabberd/forms.py:17
msgid "Enable Message Archive Management"
msgstr ""
-#: plinth/modules/ejabberd/forms.py:34
+#: plinth/modules/ejabberd/forms.py:19
#, python-brace-format
msgid ""
"If enabled, your {box_name} will store chat message histories. This allows "
@@ -1324,29 +1355,29 @@ msgid ""
"the histories are stored as plain text or encrypted."
msgstr ""
-#: plinth/modules/ejabberd/manifest.py:26
+#: plinth/modules/ejabberd/manifest.py:11
msgid "Conversations"
msgstr ""
-#: plinth/modules/ejabberd/manifest.py:40
+#: plinth/modules/ejabberd/manifest.py:25
msgid "Xabber"
msgstr ""
-#: plinth/modules/ejabberd/manifest.py:42
+#: plinth/modules/ejabberd/manifest.py:27
msgid ""
"Open source Jabber (XMPP) client with multi-account support and clean and "
"simple interface. "
msgstr ""
-#: plinth/modules/ejabberd/manifest.py:57
+#: plinth/modules/ejabberd/manifest.py:42
msgid "Yaxim"
msgstr ""
-#: plinth/modules/ejabberd/manifest.py:71
+#: plinth/modules/ejabberd/manifest.py:56
msgid "ChatSecure"
msgstr ""
-#: plinth/modules/ejabberd/manifest.py:73
+#: plinth/modules/ejabberd/manifest.py:58
msgid ""
"ChatSecure is a free and open source messaging app that features OTR "
"encryption over XMPP. You can connect to an existing Google account, create "
@@ -1354,15 +1385,15 @@ msgid ""
"your own server for extra security."
msgstr ""
-#: plinth/modules/ejabberd/manifest.py:89
+#: plinth/modules/ejabberd/manifest.py:74
msgid "Dino"
msgstr ""
-#: plinth/modules/ejabberd/manifest.py:101
+#: plinth/modules/ejabberd/manifest.py:86
msgid "Gajim"
msgstr ""
-#: plinth/modules/ejabberd/templates/ejabberd.html:33
+#: plinth/modules/ejabberd/templates/ejabberd.html:18
#, python-format
msgid ""
"Your XMPP server domain is set to %(domainname)s. User IDs will look "
@@ -1370,28 +1401,24 @@ msgid ""
"Configure page."
msgstr ""
-#: plinth/modules/ejabberd/templates/ejabberd.html:50
-#: plinth/modules/i2p/templates/i2p.html:26
-#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:30
-#: plinth/modules/snapshot/templates/snapshot.html:27
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:43
-#: plinth/templates/app.html:70
+#: plinth/modules/ejabberd/templates/ejabberd.html:35
+#: plinth/modules/i2p/templates/i2p.html:11
+#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:15
+#: plinth/modules/snapshot/templates/snapshot.html:12
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:27
+#: plinth/templates/app.html:55
msgid "Configuration"
msgstr ""
-#: plinth/modules/ejabberd/views.py:78
+#: plinth/modules/ejabberd/views.py:58
msgid "Message Archive Management enabled"
msgstr ""
-#: plinth/modules/ejabberd/views.py:82
+#: plinth/modules/ejabberd/views.py:62
msgid "Message Archive Management disabled"
msgstr ""
-#: plinth/modules/firewall/__init__.py:39
-msgid "Firewall"
-msgstr ""
-
-#: plinth/modules/firewall/__init__.py:43
+#: plinth/modules/firewall/__init__.py:32
#, python-brace-format
msgid ""
"Firewall is a security system that controls the incoming and outgoing "
@@ -1399,22 +1426,26 @@ msgid ""
"configured reduces risk of security threat from the Internet."
msgstr ""
-#: plinth/modules/firewall/components.py:130
+#: plinth/modules/firewall/__init__.py:63
+msgid "Firewall"
+msgstr ""
+
+#: plinth/modules/firewall/components.py:118
#, python-brace-format
msgid "Port {name} ({details}) available for internal networks"
msgstr ""
-#: plinth/modules/firewall/components.py:138
+#: plinth/modules/firewall/components.py:126
#, python-brace-format
msgid "Port {name} ({details}) available for external networks"
msgstr ""
-#: plinth/modules/firewall/components.py:143
+#: plinth/modules/firewall/components.py:131
#, python-brace-format
msgid "Port {name} ({details}) unavailable for external networks"
msgstr ""
-#: plinth/modules/firewall/templates/firewall.html:30
+#: plinth/modules/firewall/templates/firewall.html:15
#, python-format
msgid ""
"Firewall daemon is not running. Please run it. Firewall comes enabled by "
@@ -1423,49 +1454,49 @@ msgid ""
"system with systemd 'systemctl start firewalld'."
msgstr ""
-#: plinth/modules/firewall/templates/firewall.html:43
+#: plinth/modules/firewall/templates/firewall.html:28
msgid "Show Ports"
msgstr ""
-#: plinth/modules/firewall/templates/firewall.html:44
+#: plinth/modules/firewall/templates/firewall.html:29
msgid "Service/Port"
msgstr ""
-#: plinth/modules/firewall/templates/firewall.html:63
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:89
+#: plinth/modules/firewall/templates/firewall.html:48
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:74
msgid "Enabled"
msgstr ""
-#: plinth/modules/firewall/templates/firewall.html:66
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:91
-#: plinth/modules/networks/forms.py:64 plinth/templates/cards.html:49
+#: plinth/modules/firewall/templates/firewall.html:51
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:76
+#: plinth/modules/networks/forms.py:47 plinth/templates/cards.html:34
msgid "Disabled"
msgstr ""
-#: plinth/modules/firewall/templates/firewall.html:78
+#: plinth/modules/firewall/templates/firewall.html:67
msgid "Permitted"
msgstr ""
-#: plinth/modules/firewall/templates/firewall.html:81
+#: plinth/modules/firewall/templates/firewall.html:70
msgid "Permitted (internal only)"
msgstr ""
-#: plinth/modules/firewall/templates/firewall.html:84
+#: plinth/modules/firewall/templates/firewall.html:73
msgid "Permitted (external only)"
msgstr ""
-#: plinth/modules/firewall/templates/firewall.html:87
+#: plinth/modules/firewall/templates/firewall.html:76
msgid "Blocked"
msgstr ""
-#: plinth/modules/firewall/templates/firewall.html:99
+#: plinth/modules/firewall/templates/firewall.html:88
msgid ""
"The operation of the firewall is automatic. When you enable a service it is "
"also permitted in the firewall and when you disable a service it is also "
"disabled in the firewall."
msgstr ""
-#: plinth/modules/first_boot/forms.py:29
+#: plinth/modules/first_boot/forms.py:14
#, python-brace-format
msgid ""
"Enter the secret generated during FreedomBox installation. This secret can "
@@ -1473,47 +1504,39 @@ msgid ""
"wizard-secret\" on your {box_name}"
msgstr ""
-#: plinth/modules/first_boot/forms.py:34
+#: plinth/modules/first_boot/forms.py:19
msgid "Firstboot Wizard Secret"
msgstr ""
-#: plinth/modules/first_boot/templates/firstboot_complete.html:26
+#: plinth/modules/first_boot/templates/firstboot_complete.html:11
msgid "Setup Complete!"
msgstr ""
-#: plinth/modules/first_boot/templates/firstboot_complete.html:29
+#: plinth/modules/first_boot/templates/firstboot_complete.html:14
#, python-format
msgid "Without any apps, your %(box_name)s cannot do very much."
msgstr ""
-#: plinth/modules/first_boot/templates/firstboot_complete.html:36
+#: plinth/modules/first_boot/templates/firstboot_complete.html:21
msgid "Install Apps"
msgstr ""
-#: plinth/modules/first_boot/templates/firstboot_complete.html:42
+#: plinth/modules/first_boot/templates/firstboot_complete.html:27
#, python-format
msgid ""
"You may want to check the network setup and "
"modify it if necessary."
msgstr ""
-#: plinth/modules/first_boot/templates/firstboot_welcome.html:52
+#: plinth/modules/first_boot/templates/firstboot_welcome.html:37
msgid "Start Setup"
msgstr ""
-#: plinth/modules/first_boot/views.py:64
+#: plinth/modules/first_boot/views.py:49
msgid "Setup Complete"
msgstr ""
-#: plinth/modules/gitweb/__init__.py:44 plinth/modules/gitweb/manifest.py:28
-msgid "Gitweb"
-msgstr ""
-
-#: plinth/modules/gitweb/__init__.py:48
-msgid "Simple Git Hosting"
-msgstr ""
-
-#: plinth/modules/gitweb/__init__.py:51
+#: plinth/modules/gitweb/__init__.py:28
msgid ""
"Git is a distributed version-control system for tracking changes in source "
"code during software development. Gitweb provides a web interface to Git "
@@ -1524,203 +1547,211 @@ msgid ""
"the world."
msgstr ""
-#: plinth/modules/gitweb/__init__.py:58
+#: plinth/modules/gitweb/__init__.py:35
msgid ""
"To learn more on how to use Git visit Git tutorial."
msgstr ""
-#: plinth/modules/gitweb/__init__.py:64
+#: plinth/modules/gitweb/__init__.py:39
msgid "Read-write access to Git repositories"
msgstr ""
-#: plinth/modules/gitweb/forms.py:59
+#: plinth/modules/gitweb/__init__.py:56 plinth/modules/gitweb/manifest.py:13
+msgid "Gitweb"
+msgstr ""
+
+#: plinth/modules/gitweb/__init__.py:57
+msgid "Simple Git Hosting"
+msgstr ""
+
+#: plinth/modules/gitweb/forms.py:44
#, fuzzy
#| msgid "Repository not found"
msgid "Invalid repository URL."
msgstr "Сховище не знайдено"
-#: plinth/modules/gitweb/forms.py:69
+#: plinth/modules/gitweb/forms.py:54
#, fuzzy
#| msgid "Repository not found"
msgid "Invalid repository name."
msgstr "Сховище не знайдено"
-#: plinth/modules/gitweb/forms.py:77
+#: plinth/modules/gitweb/forms.py:62
msgid "Name of a new repository or URL to import an existing repository."
msgstr ""
-#: plinth/modules/gitweb/forms.py:83
+#: plinth/modules/gitweb/forms.py:68
msgid "Description of the repository"
msgstr ""
-#: plinth/modules/gitweb/forms.py:84 plinth/modules/gitweb/forms.py:88
+#: plinth/modules/gitweb/forms.py:69 plinth/modules/gitweb/forms.py:73
msgid "Optional, for displaying on Gitweb."
msgstr ""
-#: plinth/modules/gitweb/forms.py:86
+#: plinth/modules/gitweb/forms.py:71
#, fuzzy
#| msgid "Repository not found"
msgid "Repository's owner name"
msgstr "Сховище не знайдено"
-#: plinth/modules/gitweb/forms.py:91
+#: plinth/modules/gitweb/forms.py:76
#, fuzzy
#| msgid "Remove Repository"
msgid "Private repository"
msgstr "Видалити сховище"
-#: plinth/modules/gitweb/forms.py:92
+#: plinth/modules/gitweb/forms.py:77
msgid "Allow only authorized users to access this repository."
msgstr ""
-#: plinth/modules/gitweb/forms.py:113 plinth/modules/gitweb/forms.py:145
+#: plinth/modules/gitweb/forms.py:98 plinth/modules/gitweb/forms.py:130
msgid "A repository with this name already exists."
msgstr ""
-#: plinth/modules/gitweb/forms.py:126
+#: plinth/modules/gitweb/forms.py:111
#, fuzzy
#| msgid "Remove Repository"
msgid "Name of the repository"
msgstr "Видалити сховище"
-#: plinth/modules/gitweb/forms.py:130
+#: plinth/modules/gitweb/forms.py:115
msgid "An alpha-numeric string that uniquely identifies a repository."
msgstr ""
-#: plinth/modules/gitweb/manifest.py:36
+#: plinth/modules/gitweb/manifest.py:21
msgid "Git"
msgstr ""
-#: plinth/modules/gitweb/templates/gitweb_configure.html:46
+#: plinth/modules/gitweb/templates/gitweb_configure.html:31
#, fuzzy
#| msgid "Remove Repository"
msgid "Manage Repositories"
msgstr "Видалити сховище"
-#: plinth/modules/gitweb/templates/gitweb_configure.html:50
-#: plinth/modules/gitweb/templates/gitweb_configure.html:52
+#: plinth/modules/gitweb/templates/gitweb_configure.html:35
+#: plinth/modules/gitweb/templates/gitweb_configure.html:37
#, fuzzy
#| msgid "Remove Repository"
msgid "Create repository"
msgstr "Видалити сховище"
-#: plinth/modules/gitweb/templates/gitweb_configure.html:59
+#: plinth/modules/gitweb/templates/gitweb_configure.html:44
msgid "No repositories available."
msgstr ""
-#: plinth/modules/gitweb/templates/gitweb_configure.html:67
+#: plinth/modules/gitweb/templates/gitweb_configure.html:52
#, fuzzy, python-format
#| msgid "Delete Archive %(name)s"
msgid "Delete repository %(repo.name)s"
msgstr "Видалити архів %(name)s"
-#: plinth/modules/gitweb/templates/gitweb_configure.html:83
+#: plinth/modules/gitweb/templates/gitweb_configure.html:68
msgid "Cloning..."
msgstr ""
-#: plinth/modules/gitweb/templates/gitweb_configure.html:89
+#: plinth/modules/gitweb/templates/gitweb_configure.html:74
#, python-format
msgid "Go to repository %(repo.name)s"
msgstr ""
-#: plinth/modules/gitweb/templates/gitweb_delete.html:27
+#: plinth/modules/gitweb/templates/gitweb_delete.html:12
#, python-format
msgid "Delete Git Repository %(name)s"
msgstr ""
-#: plinth/modules/gitweb/templates/gitweb_delete.html:33
+#: plinth/modules/gitweb/templates/gitweb_delete.html:18
#, fuzzy
#| msgid "Delete this archive permanently?"
msgid "Delete this repository permanently?"
msgstr "Остаточно видалити цей архів?"
-#: plinth/modules/gitweb/templates/gitweb_delete.html:42
-#: plinth/modules/ikiwiki/templates/ikiwiki_delete.html:44
+#: plinth/modules/gitweb/templates/gitweb_delete.html:27
+#: plinth/modules/ikiwiki/templates/ikiwiki_delete.html:29
#, python-format
msgid "Delete %(name)s"
msgstr ""
-#: plinth/modules/gitweb/views.py:65
+#: plinth/modules/gitweb/views.py:45
#, fuzzy
#| msgid "Repository not found"
msgid "Repository created."
msgstr "Сховище не знайдено"
-#: plinth/modules/gitweb/views.py:87
+#: plinth/modules/gitweb/views.py:67
msgid "An error occurred while creating the repository."
msgstr ""
-#: plinth/modules/gitweb/views.py:100
+#: plinth/modules/gitweb/views.py:80
#, fuzzy
#| msgid "Repository not found"
msgid "Repository edited."
msgstr "Сховище не знайдено"
-#: plinth/modules/gitweb/views.py:105
+#: plinth/modules/gitweb/views.py:85
#, fuzzy
#| msgid "Remove Repository"
msgid "Edit repository"
msgstr "Видалити сховище"
-#: plinth/modules/gitweb/views.py:133 plinth/modules/searx/views.py:62
-#: plinth/modules/searx/views.py:73 plinth/modules/tor/views.py:178
+#: plinth/modules/gitweb/views.py:113 plinth/modules/searx/views.py:42
+#: plinth/modules/searx/views.py:53 plinth/modules/tor/views.py:159
msgid "An error occurred during configuration."
msgstr ""
-#: plinth/modules/gitweb/views.py:154
+#: plinth/modules/gitweb/views.py:134
#, python-brace-format
msgid "{name} deleted."
msgstr ""
-#: plinth/modules/gitweb/views.py:158
+#: plinth/modules/gitweb/views.py:138
#, python-brace-format
msgid "Could not delete {name}: {error}"
msgstr ""
-#: plinth/modules/help/__init__.py:40
+#: plinth/modules/help/__init__.py:30
msgid "Documentation"
msgstr ""
-#: plinth/modules/help/__init__.py:43 plinth/modules/networks/forms.py:64
-#: plinth/modules/networks/forms.py:95 plinth/templates/help-menu.html:35
-#: plinth/templates/help-menu.html:36 plinth/templates/index.html:135
+#: plinth/modules/help/__init__.py:33 plinth/modules/networks/forms.py:47
+#: plinth/modules/networks/forms.py:77 plinth/templates/help-menu.html:20
+#: plinth/templates/help-menu.html:21 plinth/templates/index.html:120
msgid "Manual"
msgstr ""
-#: plinth/modules/help/__init__.py:47 plinth/modules/help/help.py:58
-#: plinth/modules/help/templates/help_support.html:24
-#: plinth/templates/help-menu.html:42 plinth/templates/help-menu.html:43
+#: plinth/modules/help/__init__.py:37 plinth/modules/help/help.py:43
+#: plinth/modules/help/templates/help_support.html:9
+#: plinth/templates/help-menu.html:27 plinth/templates/help-menu.html:28
msgid "Get Support"
msgstr ""
-#: plinth/modules/help/__init__.py:51 plinth/modules/help/help.py:52
-#: plinth/modules/help/templates/help_feedback.html:24
-#: plinth/templates/help-menu.html:48 plinth/templates/help-menu.html:49
+#: plinth/modules/help/__init__.py:41 plinth/modules/help/help.py:37
+#: plinth/modules/help/templates/help_feedback.html:9
+#: plinth/templates/help-menu.html:33 plinth/templates/help-menu.html:34
msgid "Submit Feedback"
msgstr ""
-#: plinth/modules/help/__init__.py:55 plinth/modules/help/help.py:46
-#: plinth/modules/help/templates/help_contribute.html:24
-#: plinth/templates/help-menu.html:54 plinth/templates/help-menu.html:55
+#: plinth/modules/help/__init__.py:45 plinth/modules/help/help.py:31
+#: plinth/modules/help/templates/help_contribute.html:9
+#: plinth/templates/help-menu.html:39 plinth/templates/help-menu.html:40
msgid "Contribute"
msgstr ""
-#: plinth/modules/help/help.py:40
+#: plinth/modules/help/help.py:25
msgid "Documentation and FAQ"
msgstr ""
-#: plinth/modules/help/help.py:66
+#: plinth/modules/help/help.py:51
#, python-brace-format
msgid "About {box_name}"
msgstr ""
-#: plinth/modules/help/help.py:101
+#: plinth/modules/help/help.py:86
#, python-brace-format
msgid "{box_name} Manual"
msgstr ""
-#: plinth/modules/help/templates/help_about.html:32
+#: plinth/modules/help/templates/help_about.html:17
#, python-format
msgid ""
"%(box_name)s is a community project to develop, design and promote personal "
@@ -1732,7 +1763,7 @@ msgid ""
"your data stays with you."
msgstr ""
-#: plinth/modules/help/templates/help_about.html:45
+#: plinth/modules/help/templates/help_about.html:30
msgid ""
"We live in a world where our use of the network is mediated by those who "
"often do not have our best interests at heart. By building software that "
@@ -1742,7 +1773,7 @@ msgid ""
"returning the Internet to its intended peer-to-peer architecture."
msgstr ""
-#: plinth/modules/help/templates/help_about.html:58
+#: plinth/modules/help/templates/help_about.html:43
#, python-format
msgid ""
"There are a number of projects working to realize a future of distributed "
@@ -1750,37 +1781,37 @@ msgid ""
"package."
msgstr ""
-#: plinth/modules/help/templates/help_about.html:66
+#: plinth/modules/help/templates/help_about.html:51
#, python-format
msgid ""
"For more information about the %(box_name)s project, see the %(box_name)s Wiki."
msgstr ""
-#: plinth/modules/help/templates/help_about.html:75
+#: plinth/modules/help/templates/help_about.html:60
msgid "Learn more »"
msgstr ""
-#: plinth/modules/help/templates/help_about.html:78
+#: plinth/modules/help/templates/help_about.html:63
#, python-format
msgid "You are running %(os_release)s and %(box_name)s version %(version)s."
msgstr ""
-#: plinth/modules/help/templates/help_about.html:83
+#: plinth/modules/help/templates/help_about.html:68
#, python-format
msgid "There is a new %(box_name)s version available."
msgstr ""
-#: plinth/modules/help/templates/help_about.html:87
+#: plinth/modules/help/templates/help_about.html:72
#, python-format
msgid "%(box_name)s is up to date."
msgstr ""
-#: plinth/modules/help/templates/help_about.html:94
+#: plinth/modules/help/templates/help_about.html:79
msgid "Security Notice"
msgstr ""
-#: plinth/modules/help/templates/help_about.html:96
+#: plinth/modules/help/templates/help_about.html:81
msgid ""
"You are using packages from Debian backports. Please note that these "
"packages do not have security support from Debian. However, they are "
@@ -1788,17 +1819,17 @@ msgid ""
"community."
msgstr ""
-#: plinth/modules/help/templates/help_base.html:36
-#: plinth/modules/help/templates/help_index.html:76
+#: plinth/modules/help/templates/help_base.html:21
+#: plinth/modules/help/templates/help_index.html:61
#, python-format
msgid "%(box_name)s Setup"
msgstr ""
-#: plinth/modules/help/templates/help_contribute.html:27
+#: plinth/modules/help/templates/help_contribute.html:12
msgid "The FreedomBox project welcomes contributions of all kinds."
msgstr ""
-#: plinth/modules/help/templates/help_contribute.html:33
+#: plinth/modules/help/templates/help_contribute.html:18
msgid ""
"You can contribute by writing code, testing and reporting bugs, discussing "
"new use cases and applications, designing logos and artwork, providing "
@@ -1807,7 +1838,7 @@ msgid ""
"the word."
msgstr ""
-#: plinth/modules/help/templates/help_contribute.html:43
+#: plinth/modules/help/templates/help_contribute.html:28
msgid ""
"You can also help the project financially by donating to the non-profit FreedomBox "
@@ -1819,26 +1850,26 @@ msgid ""
"supporters."
msgstr ""
-#: plinth/modules/help/templates/help_contribute.html:57
-#: plinth/modules/power/templates/power_restart.html:42
-#: plinth/modules/power/templates/power_shutdown.html:41
-#: plinth/templates/header.html:59
+#: plinth/modules/help/templates/help_contribute.html:42
+#: plinth/modules/power/templates/power_restart.html:27
+#: plinth/modules/power/templates/power_shutdown.html:26
+#: plinth/templates/app-header.html:51
msgid "Learn more..."
msgstr ""
-#: plinth/modules/help/templates/help_feedback.html:27
+#: plinth/modules/help/templates/help_feedback.html:12
#, python-format
msgid "Your feedback will help us improve %(box_name)s!"
msgstr ""
-#: plinth/modules/help/templates/help_feedback.html:33
+#: plinth/modules/help/templates/help_feedback.html:18
msgid ""
"Let us know about missing features, your favourite apps and how we can "
"improve them on our discussion forum."
msgstr ""
-#: plinth/modules/help/templates/help_feedback.html:41
+#: plinth/modules/help/templates/help_feedback.html:26
msgid ""
"If you find any bugs or issues, please use the issue tracker"
@@ -1846,30 +1877,30 @@ msgid ""
"already reported and then use the \"New issue\" button."
msgstr ""
-#: plinth/modules/help/templates/help_feedback.html:51
+#: plinth/modules/help/templates/help_feedback.html:36
msgid "Thank you!"
msgstr ""
-#: plinth/modules/help/templates/help_index.html:27
-#: plinth/templates/help-menu.html:23 plinth/templates/help-menu.html:28
+#: plinth/modules/help/templates/help_index.html:12
+#: plinth/templates/help-menu.html:8 plinth/templates/help-menu.html:13
msgid "Help"
msgstr ""
-#: plinth/modules/help/templates/help_index.html:31
+#: plinth/modules/help/templates/help_index.html:16
#, python-format
msgid ""
"The %(box_name)s Manual is the best place to "
"start for information regarding %(box_name)s."
msgstr ""
-#: plinth/modules/help/templates/help_index.html:38
+#: plinth/modules/help/templates/help_index.html:23
#, python-format
msgid ""
" "
"%(box_name)s project wiki contains further information."
msgstr ""
-#: plinth/modules/help/templates/help_index.html:45
+#: plinth/modules/help/templates/help_index.html:30
#, python-format
msgid ""
"To seek help from %(box_name)s community, queries may be posted on the discussion forum."
msgstr ""
-#: plinth/modules/help/templates/help_support.html:42
+#: plinth/modules/help/templates/help_support.html:27
msgid ""
"You can also chat with us on our IRC and Matrix channels (bridged): "
"- #freedombox on irc.oftc.net
- #freedombox:matrix.org
"
@@ -1913,11 +1944,11 @@ msgid ""
"debian.net\">mailing list."
msgstr ""
-#: plinth/modules/help/templates/statuslog.html:25
+#: plinth/modules/help/templates/statuslog.html:10
msgid "Status Log"
msgstr ""
-#: plinth/modules/help/templates/statuslog.html:28
+#: plinth/modules/help/templates/statuslog.html:13
#, python-format
msgid ""
"These are the last %(num_lines)s lines of the status log for this web "
@@ -1926,21 +1957,13 @@ msgid ""
"this status log to the bug report."
msgstr ""
-#: plinth/modules/help/templates/statuslog.html:39
+#: plinth/modules/help/templates/statuslog.html:24
msgid ""
"Please remove any passwords or other personal information from the log "
"before submitting the bug report."
msgstr ""
-#: plinth/modules/i2p/__init__.py:42 plinth/modules/i2p/manifest.py:31
-msgid "I2P"
-msgstr ""
-
-#: plinth/modules/i2p/__init__.py:46 plinth/modules/tor/__init__.py:49
-msgid "Anonymity Network"
-msgstr ""
-
-#: plinth/modules/i2p/__init__.py:49
+#: plinth/modules/i2p/__init__.py:28
msgid ""
"The Invisible Internet Project is an anonymous network layer intended to "
"protect communication from censorship and surveillance. I2P provides "
@@ -1948,85 +1971,85 @@ msgid ""
"distributed around the world."
msgstr ""
-#: plinth/modules/i2p/__init__.py:53
+#: plinth/modules/i2p/__init__.py:32
msgid ""
"Find more information about I2P on their project homepage."
msgstr ""
-#: plinth/modules/i2p/__init__.py:55
+#: plinth/modules/i2p/__init__.py:34
msgid ""
"The first visit to the provided web interface will initiate the "
"configuration process."
msgstr ""
-#: plinth/modules/i2p/__init__.py:61
+#: plinth/modules/i2p/__init__.py:38
#, fuzzy
#| msgid "Enable application"
msgid "Manage I2P application"
msgstr "Влючити застосунок"
-#: plinth/modules/i2p/__init__.py:103
+#: plinth/modules/i2p/__init__.py:64 plinth/modules/i2p/manifest.py:16
+msgid "I2P"
+msgstr ""
+
+#: plinth/modules/i2p/__init__.py:65 plinth/modules/tor/__init__.py:56
+msgid "Anonymity Network"
+msgstr ""
+
+#: plinth/modules/i2p/__init__.py:87
msgid "I2P Proxy"
msgstr ""
-#: plinth/modules/i2p/templates/i2p_service.html:31
-#: plinth/templates/clients.html:43
+#: plinth/modules/i2p/templates/i2p_service.html:16
+#: plinth/templates/clients.html:28
msgid "Launch"
msgstr ""
-#: plinth/modules/i2p/views.py:34
+#: plinth/modules/i2p/views.py:19
msgid "Proxies"
msgstr ""
-#: plinth/modules/i2p/views.py:37
+#: plinth/modules/i2p/views.py:22
msgid "Anonymous torrents"
msgstr ""
-#: plinth/modules/i2p/views.py:88
+#: plinth/modules/i2p/views.py:64
msgid "I2P Proxies and Tunnels"
msgstr ""
-#: plinth/modules/i2p/views.py:91
+#: plinth/modules/i2p/views.py:67
msgid ""
"I2P lets you browse the Internet and hidden services (eepsites) anonymously. "
"For this, your browser, preferably a Tor Browser, needs to be configured for "
"a proxy."
msgstr ""
-#: plinth/modules/i2p/views.py:94
+#: plinth/modules/i2p/views.py:70
msgid ""
"By default HTTP, HTTPS and IRC proxies are available. Additional proxies and "
"tunnels may be configured using the tunnel configuration interface."
msgstr ""
-#: plinth/modules/i2p/views.py:103
+#: plinth/modules/i2p/views.py:79
msgid "Anonymous Torrents"
msgstr ""
-#: plinth/modules/i2p/views.py:106
+#: plinth/modules/i2p/views.py:82
msgid ""
"I2P provides an application to download files anonymously in a peer-to-peer "
"network. Download files by adding torrents or create a new torrent to share "
"a file."
msgstr ""
-#: plinth/modules/ikiwiki/__init__.py:41 plinth/modules/ikiwiki/manifest.py:24
-msgid "ikiwiki"
-msgstr ""
-
-#: plinth/modules/ikiwiki/__init__.py:45
-msgid "Wiki and Blog"
-msgstr ""
-
-#: plinth/modules/ikiwiki/__init__.py:48
+#: plinth/modules/ikiwiki/__init__.py:27
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."
msgstr ""
-#: plinth/modules/ikiwiki/__init__.py:52
+#: plinth/modules/ikiwiki/__init__.py:31
#, python-brace-format
msgid ""
"Only {box_name} users in the admin group can create and "
@@ -2035,103 +2058,97 @@ msgid ""
"Configuration you can change these permissions or add new users."
msgstr ""
-#: plinth/modules/ikiwiki/__init__.py:62
+#: plinth/modules/ikiwiki/__init__.py:39
msgid "View and edit wiki applications"
msgstr ""
-#: plinth/modules/ikiwiki/forms.py:27
-#: plinth/modules/networks/templates/connection_show.html:98
-#: plinth/modules/storage/templates/storage.html:43
-msgid "Type"
+#: plinth/modules/ikiwiki/__init__.py:53 plinth/modules/ikiwiki/manifest.py:9
+msgid "ikiwiki"
msgstr ""
-#: plinth/modules/ikiwiki/forms.py:32
+#: plinth/modules/ikiwiki/__init__.py:54
+msgid "Wiki and Blog"
+msgstr ""
+
+#: plinth/modules/ikiwiki/forms.py:17
msgid "Admin Account Name"
msgstr ""
-#: plinth/modules/ikiwiki/forms.py:34
+#: plinth/modules/ikiwiki/forms.py:19
msgid "Admin Account Password"
msgstr ""
-#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:27
+#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:12
msgid "Manage Wikis and Blogs"
msgstr ""
-#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:31
-#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:33
-#: plinth/modules/ikiwiki/templates/ikiwiki_create.html:25
+#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:16
+#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:18
+#: plinth/modules/ikiwiki/templates/ikiwiki_create.html:10
msgid "Create Wiki or Blog"
msgstr ""
-#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:40
+#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:25
msgid "No wikis or blogs available."
msgstr ""
-#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:48
+#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:33
#, python-format
msgid "Delete site %(site)s"
msgstr ""
-#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:55
+#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:40
#, python-format
msgid "Go to site %(site)s"
msgstr ""
-#: plinth/modules/ikiwiki/templates/ikiwiki_delete.html:27
+#: plinth/modules/ikiwiki/templates/ikiwiki_delete.html:12
#, python-format
msgid "Delete Wiki or Blog %(name)s"
msgstr ""
-#: plinth/modules/ikiwiki/templates/ikiwiki_delete.html:33
+#: plinth/modules/ikiwiki/templates/ikiwiki_delete.html:18
msgid ""
"This action will remove all the posts, pages and comments including revision "
"history. Delete this wiki or blog permanently?"
msgstr ""
-#: plinth/modules/ikiwiki/views.py:96
+#: plinth/modules/ikiwiki/views.py:73
#, python-brace-format
msgid "Created wiki {name}."
msgstr ""
-#: plinth/modules/ikiwiki/views.py:99
+#: plinth/modules/ikiwiki/views.py:76
#, python-brace-format
msgid "Could not create wiki: {error}"
msgstr ""
-#: plinth/modules/ikiwiki/views.py:109
+#: plinth/modules/ikiwiki/views.py:86
#, python-brace-format
msgid "Created blog {name}."
msgstr ""
-#: plinth/modules/ikiwiki/views.py:112
+#: plinth/modules/ikiwiki/views.py:89
#, python-brace-format
msgid "Could not create blog: {error}"
msgstr ""
-#: plinth/modules/ikiwiki/views.py:127
+#: plinth/modules/ikiwiki/views.py:104
#, fuzzy, python-brace-format
#| msgid "Archive deleted."
msgid "{title} deleted."
msgstr "Архів видалено."
-#: plinth/modules/ikiwiki/views.py:131
+#: plinth/modules/ikiwiki/views.py:108
#, python-brace-format
msgid "Could not delete {title}: {error}"
msgstr ""
-#: plinth/modules/infinoted/__init__.py:42
-msgid "infinoted"
-msgstr ""
-
-#: plinth/modules/infinoted/__init__.py:46
-msgid "Gobby Server"
-msgstr ""
-
-#: plinth/modules/infinoted/__init__.py:49
+#: plinth/modules/infinoted/__init__.py:26
msgid "infinoted is a server for Gobby, a collaborative text editor."
msgstr ""
-#: plinth/modules/infinoted/__init__.py:51
+#: plinth/modules/infinoted/__init__.py:28
#, python-brace-format
msgid ""
"To use it, download Gobby, desktop "
@@ -2139,49 +2156,49 @@ msgid ""
"enter your {box_name}'s domain name."
msgstr ""
-#: plinth/modules/infinoted/manifest.py:27
+#: plinth/modules/infinoted/__init__.py:48
+msgid "infinoted"
+msgstr ""
+
+#: plinth/modules/infinoted/__init__.py:49
+msgid "Gobby Server"
+msgstr ""
+
+#: plinth/modules/infinoted/manifest.py:12
msgid "Gobby"
msgstr ""
-#: plinth/modules/infinoted/manifest.py:29
+#: plinth/modules/infinoted/manifest.py:14
msgid "Gobby is a collaborative text editor"
msgstr ""
-#: plinth/modules/infinoted/manifest.py:32
+#: plinth/modules/infinoted/manifest.py:17
#, python-brace-format
msgid ""
"Start Gobby and select \"Connect to Server\" and enter your {box_name}'s "
"domain name."
msgstr ""
-#: plinth/modules/jsxc/__init__.py:36 plinth/modules/jsxc/manifest.py:25
-msgid "JSXC"
-msgstr ""
-
-#: plinth/modules/jsxc/__init__.py:40
-msgid "Chat Client"
-msgstr ""
-
-#: plinth/modules/jsxc/__init__.py:43
+#: plinth/modules/jsxc/__init__.py:22
msgid ""
"JSXC is a web client for XMPP. Typically it is used with an XMPP server "
"running locally."
msgstr ""
-#: plinth/modules/jsxc/templates/jsxc_launch.html:140
-#: plinth/templates/base.html:253
+#: plinth/modules/jsxc/__init__.py:40 plinth/modules/jsxc/manifest.py:10
+msgid "JSXC"
+msgstr ""
+
+#: plinth/modules/jsxc/__init__.py:41
+msgid "Chat Client"
+msgstr ""
+
+#: plinth/modules/jsxc/templates/jsxc_launch.html:125
+#: plinth/templates/base.html:238
msgid "JavaScript license information"
msgstr ""
-#: plinth/modules/letsencrypt/__init__.py:48
-msgid "Let's Encrypt"
-msgstr ""
-
-#: plinth/modules/letsencrypt/__init__.py:50
-msgid "Certificates"
-msgstr ""
-
-#: plinth/modules/letsencrypt/__init__.py:54
+#: plinth/modules/letsencrypt/__init__.py:35
#, python-brace-format
msgid ""
"A digital certificate allows users of a web service to verify the identity "
@@ -2191,7 +2208,7 @@ msgid ""
"Encrypt, a certificate authority (CA)."
msgstr ""
-#: plinth/modules/letsencrypt/__init__.py:60
+#: plinth/modules/letsencrypt/__init__.py:41
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 "
@@ -2199,118 +2216,122 @@ msgid ""
"\">Let's Encrypt Subscriber Agreement before using this service."
msgstr ""
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:44
+#: plinth/modules/letsencrypt/__init__.py:65
+msgid "Let's Encrypt"
+msgstr ""
+
+#: plinth/modules/letsencrypt/__init__.py:66
+msgid "Certificates"
+msgstr ""
+
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:29
msgid "Domain"
msgstr ""
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:45
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:30
msgid "Certificate Status"
msgstr ""
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:46
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:31
msgid "Website Security"
msgstr ""
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:47
-#: plinth/modules/storage/templates/storage.html:45
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:32
+#: plinth/modules/storage/templates/storage.html:30
msgid "Actions"
msgstr ""
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:57
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:42
#, python-format
msgid "Valid, expires on %(expiry_date)s"
msgstr ""
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:64
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:49
msgid "Revoked"
msgstr ""
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:68
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:53
#, python-format
msgid "Expired on %(expiry_date)s"
msgstr ""
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:72
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:57
msgid "Invalid test certificate"
msgstr ""
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:76
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:61
#, python-format
msgid "Invalid (%(reason)s)"
msgstr ""
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:83
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:68
msgid "No certificate"
msgstr ""
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:100
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:85
msgid "Re-obtain"
msgstr ""
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:106
-#: plinth/modules/networks/templates/connection_show.html:63
-#: plinth/modules/samba/templates/samba.html:142
-#: plinth/modules/wireguard/templates/wireguard_delete_client.html:39
-#: plinth/modules/wireguard/templates/wireguard_delete_server.html:48
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:88
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:89
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:91
+#: plinth/modules/networks/templates/connection_show.html:48
+#: plinth/modules/samba/templates/samba.html:127
+#: plinth/modules/wireguard/templates/wireguard_delete_client.html:24
+#: plinth/modules/wireguard/templates/wireguard_delete_server.html:33
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:73
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:74
msgid "Delete"
msgstr ""
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:113
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:98
msgid "Revoke"
msgstr ""
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:121
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:106
msgid "Obtain"
msgstr ""
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:132
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:117
#, python-format
msgid ""
"No domains have been configured. Configure "
"domains to be able to obtain certificates for them."
msgstr ""
-#: plinth/modules/letsencrypt/views.py:58
+#: plinth/modules/letsencrypt/views.py:41
#, 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:64
+#: plinth/modules/letsencrypt/views.py:47
#, python-brace-format
msgid "Failed to revoke certificate for domain {domain}: {error}"
msgstr ""
+#: plinth/modules/letsencrypt/views.py:60
#: plinth/modules/letsencrypt/views.py:77
-#: plinth/modules/letsencrypt/views.py:94
#, python-brace-format
msgid "Certificate successfully obtained for domain {domain}"
msgstr ""
+#: plinth/modules/letsencrypt/views.py:65
#: plinth/modules/letsencrypt/views.py:82
-#: plinth/modules/letsencrypt/views.py:99
#, python-brace-format
msgid "Failed to obtain certificate for domain {domain}: {error}"
msgstr ""
-#: plinth/modules/letsencrypt/views.py:111
+#: plinth/modules/letsencrypt/views.py:94
#, python-brace-format
msgid "Certificate successfully deleted for domain {domain}"
msgstr ""
-#: plinth/modules/letsencrypt/views.py:116
+#: plinth/modules/letsencrypt/views.py:99
#, python-brace-format
msgid "Failed to delete certificate for domain {domain}: {error}"
msgstr ""
-#: plinth/modules/matrixsynapse/__init__.py:48
-msgid "Matrix Synapse"
-msgstr ""
-
-#: plinth/modules/matrixsynapse/__init__.py:55
+#: plinth/modules/matrixsynapse/__init__.py:34
msgid ""
"Matrix is an new "
"ecosystem for open, federated instant messaging and VoIP. Synapse is a "
@@ -2320,36 +2341,40 @@ msgid ""
"converse with users on all other Matrix servers via federation."
msgstr ""
-#: plinth/modules/matrixsynapse/__init__.py:62
+#: plinth/modules/matrixsynapse/__init__.py:41
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:29
+#: plinth/modules/matrixsynapse/__init__.py:66
+msgid "Matrix Synapse"
+msgstr ""
+
+#: plinth/modules/matrixsynapse/forms.py:14
msgid "Enable Public Registration"
msgstr ""
-#: plinth/modules/matrixsynapse/forms.py:30
+#: plinth/modules/matrixsynapse/forms.py:15
msgid ""
"Enabling public registration means that anyone on the Internet can register "
"a new account on your Matrix server. Disable this if you only want existing "
"users to be able to use it."
msgstr ""
-#: plinth/modules/matrixsynapse/manifest.py:28
+#: plinth/modules/matrixsynapse/manifest.py:13
msgid "Riot"
msgstr ""
-#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:33
+#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:18
msgid ""
"Matrix service needs to be configured for a domain. Users on other Matrix "
"servers will be able to reach users on this server using this domain name. "
"Matrix user IDs will look like @username:domainname."
msgstr ""
-#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:41
+#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:26
msgid ""
"\n"
" Warning! Changing the domain name after the initial\n"
@@ -2357,14 +2382,14 @@ msgid ""
" "
msgstr ""
-#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:50
+#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:35
#, python-format
msgid ""
"No domain(s) are available. Configure at "
"least one domain to be able to use Matrix Synapse."
msgstr ""
-#: plinth/modules/matrixsynapse/templates/matrix-synapse.html:29
+#: plinth/modules/matrixsynapse/templates/matrix-synapse.html:14
#, python-format
msgid ""
"The Matrix server domain is set to %(domain_name)s. User IDs will "
@@ -2372,13 +2397,13 @@ msgid ""
"the initial setup is currently not supported."
msgstr ""
-#: plinth/modules/matrixsynapse/templates/matrix-synapse.html:36
+#: plinth/modules/matrixsynapse/templates/matrix-synapse.html:21
msgid ""
"New users can be registered from any client if public registration is "
"enabled."
msgstr ""
-#: plinth/modules/matrixsynapse/templates/matrix-synapse.html:45
+#: plinth/modules/matrixsynapse/templates/matrix-synapse.html:30
#, python-format
msgid ""
"The configured domain name is using a self-signed certificate. Federation "
@@ -2386,24 +2411,15 @@ msgid ""
"go to Let's Encrypt to obtain one."
msgstr ""
-#: plinth/modules/matrixsynapse/views.py:121
+#: plinth/modules/matrixsynapse/views.py:98
msgid "Public registration enabled"
msgstr ""
-#: plinth/modules/matrixsynapse/views.py:126
+#: plinth/modules/matrixsynapse/views.py:103
msgid "Public registration disabled"
msgstr ""
-#: plinth/modules/mediawiki/__init__.py:40
-#: plinth/modules/mediawiki/manifest.py:24
-msgid "MediaWiki"
-msgstr ""
-
-#: plinth/modules/mediawiki/__init__.py:44 plinth/templates/index.html:139
-msgid "Wiki"
-msgstr ""
-
-#: plinth/modules/mediawiki/__init__.py:47
+#: plinth/modules/mediawiki/__init__.py:26
msgid ""
"MediaWiki is the wiki engine that powers Wikipedia and other WikiMedia "
"projects. A wiki engine is a program for creating a collaboratively edited "
@@ -2411,7 +2427,7 @@ msgid ""
"collaborate with friends on projects."
msgstr ""
-#: plinth/modules/mediawiki/__init__.py:51
+#: plinth/modules/mediawiki/__init__.py:30
msgid ""
"This MediaWiki instance comes with a randomly generated administrator "
"password. You can set a new password in the \"Configuration\" section and "
@@ -2420,86 +2436,86 @@ msgid ""
"CreateAccount\">Special:CreateAccount page."
msgstr ""
-#: plinth/modules/mediawiki/__init__.py:57
+#: plinth/modules/mediawiki/__init__.py:36
msgid ""
"Anyone with a link to this wiki can read it. Only users that are logged in "
"can make changes to the content."
msgstr ""
-#: plinth/modules/mediawiki/forms.py:42
+#: plinth/modules/mediawiki/__init__.py:54
+#: plinth/modules/mediawiki/manifest.py:9
+msgid "MediaWiki"
+msgstr ""
+
+#: plinth/modules/mediawiki/__init__.py:55 plinth/templates/index.html:124
+msgid "Wiki"
+msgstr ""
+
+#: plinth/modules/mediawiki/forms.py:27
msgid "Administrator Password"
msgstr ""
-#: plinth/modules/mediawiki/forms.py:43
+#: plinth/modules/mediawiki/forms.py:28
msgid ""
"Set a new password for MediaWiki's administrator account (admin). Leave this "
"field blank to keep the current password."
msgstr ""
-#: plinth/modules/mediawiki/forms.py:48
+#: plinth/modules/mediawiki/forms.py:33
msgid "Enable public registrations"
msgstr ""
-#: plinth/modules/mediawiki/forms.py:49
+#: plinth/modules/mediawiki/forms.py:34
msgid ""
"If enabled, anyone on the internet will be able to create an account on your "
"MediaWiki instance."
msgstr ""
-#: plinth/modules/mediawiki/forms.py:53
+#: plinth/modules/mediawiki/forms.py:38
msgid "Enable private mode"
msgstr ""
-#: plinth/modules/mediawiki/forms.py:54
+#: plinth/modules/mediawiki/forms.py:39
msgid ""
"If enabled, access will be restricted. Only people who have accounts can "
"read/write to the wiki. Public registrations will also be disabled."
msgstr ""
-#: plinth/modules/mediawiki/forms.py:59
+#: plinth/modules/mediawiki/forms.py:44
msgid "Default Skin"
msgstr ""
-#: plinth/modules/mediawiki/forms.py:60
+#: plinth/modules/mediawiki/forms.py:45
msgid ""
"Choose a default skin for your MediaWiki installation. Users have the option "
"to select their preferred skin."
msgstr ""
-#: plinth/modules/mediawiki/views.py:74
+#: plinth/modules/mediawiki/views.py:54
msgid "Password updated"
msgstr ""
-#: plinth/modules/mediawiki/views.py:93
+#: plinth/modules/mediawiki/views.py:73
msgid "Public registrations enabled"
msgstr ""
-#: plinth/modules/mediawiki/views.py:102
+#: plinth/modules/mediawiki/views.py:82
msgid "Public registrations disabled"
msgstr ""
-#: plinth/modules/mediawiki/views.py:107
+#: plinth/modules/mediawiki/views.py:87
msgid "Private mode enabled"
msgstr ""
-#: plinth/modules/mediawiki/views.py:114
+#: plinth/modules/mediawiki/views.py:94
msgid "Private mode disabled"
msgstr ""
-#: plinth/modules/mediawiki/views.py:122
+#: plinth/modules/mediawiki/views.py:102
msgid "Default skin changed"
msgstr ""
-#: plinth/modules/minetest/__init__.py:50
-#: plinth/modules/minetest/manifest.py:25
-msgid "Minetest"
-msgstr ""
-
-#: plinth/modules/minetest/__init__.py:54
-msgid "Block Sandbox"
-msgstr ""
-
-#: plinth/modules/minetest/__init__.py:58
+#: plinth/modules/minetest/__init__.py:37
#, python-brace-format
msgid ""
"Minetest is a multiplayer infinite-world block sandbox. This module enables "
@@ -2508,73 +2524,78 @@ msgid ""
"downloads/\">Minetest client is needed."
msgstr ""
-#: plinth/modules/minetest/forms.py:30
+#: plinth/modules/minetest/__init__.py:63
+#: plinth/modules/minetest/manifest.py:10
+msgid "Minetest"
+msgstr ""
+
+#: plinth/modules/minetest/__init__.py:64
+msgid "Block Sandbox"
+msgstr ""
+
+#: plinth/modules/minetest/forms.py:15
msgid "Maximum number of players"
msgstr ""
-#: plinth/modules/minetest/forms.py:32
+#: plinth/modules/minetest/forms.py:17
msgid ""
"You can change the maximum number of players playing minetest at a single "
"instance of time."
msgstr ""
-#: plinth/modules/minetest/forms.py:36
+#: plinth/modules/minetest/forms.py:21
msgid "Enable creative mode"
msgstr ""
-#: plinth/modules/minetest/forms.py:37
+#: plinth/modules/minetest/forms.py:22
msgid ""
"Creative mode changes the rules of the game to make it more suitable for "
"creative gameplay, rather than challenging \"survival\" gameplay."
msgstr ""
-#: plinth/modules/minetest/forms.py:42
+#: plinth/modules/minetest/forms.py:27
msgid "Enable PVP"
msgstr ""
-#: plinth/modules/minetest/forms.py:43
+#: plinth/modules/minetest/forms.py:28
msgid "Enabling Player Vs Player will allow players to damage other players."
msgstr ""
-#: plinth/modules/minetest/forms.py:47
+#: plinth/modules/minetest/forms.py:32
msgid "Enable damage"
msgstr ""
-#: plinth/modules/minetest/forms.py:48
+#: plinth/modules/minetest/forms.py:33
msgid "When disabled, players cannot die or receive damage of any kind."
msgstr ""
-#: plinth/modules/minetest/templates/minetest.html:33
-#: plinth/modules/networks/forms.py:66 plinth/modules/networks/forms.py:97
+#: plinth/modules/minetest/templates/minetest.html:18
+#: plinth/modules/networks/forms.py:49 plinth/modules/networks/forms.py:79
msgid "Address"
msgstr ""
-#: plinth/modules/minetest/templates/minetest.html:34
-#: plinth/modules/tor/templates/tor.html:96
+#: plinth/modules/minetest/templates/minetest.html:19
+#: plinth/modules/tor/templates/tor.html:81
msgid "Port"
msgstr ""
-#: plinth/modules/minetest/views.py:70
+#: plinth/modules/minetest/views.py:50
msgid "Maximum players configuration updated"
msgstr ""
-#: plinth/modules/minetest/views.py:77
+#: plinth/modules/minetest/views.py:57
msgid "Creative mode configuration updated"
msgstr ""
-#: plinth/modules/minetest/views.py:83
+#: plinth/modules/minetest/views.py:63
msgid "PVP configuration updated"
msgstr ""
-#: plinth/modules/minetest/views.py:89
+#: plinth/modules/minetest/views.py:69
msgid "Damage configuration updated"
msgstr ""
-#: plinth/modules/minidlna/__init__.py:41
-msgid "Simple Media Server"
-msgstr ""
-
-#: plinth/modules/minidlna/__init__.py:44
+#: plinth/modules/minidlna/__init__.py:23
msgid ""
"MiniDLNA is a simple media server software, with the aim of being fully "
"compliant with DLNA/UPnP-AV clients. The MiniDNLA daemon serves media files "
@@ -2585,15 +2606,19 @@ msgid ""
"Kodi."
msgstr ""
-#: plinth/modules/minidlna/__init__.py:56
+#: plinth/modules/minidlna/__init__.py:33
msgid "Media streaming server"
msgstr ""
-#: plinth/modules/minidlna/forms.py:30
+#: plinth/modules/minidlna/__init__.py:47
+msgid "Simple Media Server"
+msgstr ""
+
+#: plinth/modules/minidlna/forms.py:15
msgid "Media Files Directory"
msgstr ""
-#: plinth/modules/minidlna/forms.py:31
+#: plinth/modules/minidlna/forms.py:16
msgid ""
"Directory that MiniDLNA Server will read for content. All sub-directories of "
"this will be also scanned for media files. If you change the default ensure "
@@ -2601,77 +2626,72 @@ msgid ""
"user. Any user media directories (\"/home/username/\") will usually work."
msgstr ""
-#: plinth/modules/minidlna/manifest.py:25
+#: plinth/modules/minidlna/manifest.py:10
msgid "vlc"
msgstr ""
-#: plinth/modules/minidlna/manifest.py:64
+#: plinth/modules/minidlna/manifest.py:49
msgid "kodi"
msgstr ""
-#: plinth/modules/minidlna/manifest.py:103
+#: plinth/modules/minidlna/manifest.py:88
msgid "yaacc"
msgstr ""
-#: plinth/modules/minidlna/manifest.py:114
+#: plinth/modules/minidlna/manifest.py:99
msgid "totem"
msgstr ""
-#: plinth/modules/minidlna/views.py:57
+#: plinth/modules/minidlna/views.py:37
msgid "Specified directory does not exist."
msgstr ""
-#: plinth/modules/minidlna/views.py:62
+#: plinth/modules/minidlna/views.py:42
msgid "Updated media directory"
msgstr ""
-#: plinth/modules/mldonkey/__init__.py:40
-#: plinth/modules/mldonkey/manifest.py:27
-msgid "MLDonkey"
-msgstr ""
-
-#: plinth/modules/mldonkey/__init__.py:44
-msgid "Peer-to-peer File Sharing"
-msgstr ""
-
-#: plinth/modules/mldonkey/__init__.py:47
+#: plinth/modules/mldonkey/__init__.py:26
msgid ""
"MLDonkey is a peer-to-peer file sharing application used to exchange large "
"files. It can participate in multiple peer-to-peer networks including "
"eDonkey, Kademlia, Overnet, BitTorrent and DirectConnect."
msgstr ""
-#: plinth/modules/mldonkey/__init__.py:50
+#: plinth/modules/mldonkey/__init__.py:29
msgid ""
"Users belonging to admin and ed2k group can control it through the web "
"interface. Users in the admin group can also control it through any of the "
"separate mobile or desktop front-ends or a telnet interface. See manual."
msgstr ""
-#: plinth/modules/mldonkey/__init__.py:55
+#: plinth/modules/mldonkey/__init__.py:34
#, python-brace-format
msgid ""
"On {box_name}, downloaded files can be found in /var/lib/mldonkey/ directory."
msgstr ""
-#: plinth/modules/mldonkey/__init__.py:63
+#: plinth/modules/mldonkey/__init__.py:40
msgid "Download files using eDonkey applications"
msgstr ""
-#: plinth/modules/mldonkey/manifest.py:34
+#: plinth/modules/mldonkey/__init__.py:54
+#: plinth/modules/mldonkey/manifest.py:12
+msgid "MLDonkey"
+msgstr ""
+
+#: plinth/modules/mldonkey/__init__.py:56
+msgid "Peer-to-peer File Sharing"
+msgstr ""
+
+#: plinth/modules/mldonkey/manifest.py:19
msgid "KMLDonkey"
msgstr ""
-#: plinth/modules/mldonkey/manifest.py:46
+#: plinth/modules/mldonkey/manifest.py:31
msgid "AMLDonkey"
msgstr ""
-#: plinth/modules/monkeysphere/__init__.py:32
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:26
-msgid "Monkeysphere"
-msgstr ""
-
-#: plinth/modules/monkeysphere/__init__.py:35
+#: plinth/modules/monkeysphere/__init__.py:18
msgid ""
"With Monkeysphere, an OpenPGP key can be generated for each configured "
"domain serving SSH. The OpenPGP public key can then be uploaded to the "
@@ -2683,7 +2703,7 @@ msgid ""
"for more details."
msgstr ""
-#: plinth/modules/monkeysphere/__init__.py:43
+#: plinth/modules/monkeysphere/__init__.py:26
msgid ""
"Monkeysphere can also generate an OpenPGP key for each Secure Web Server "
"(HTTPS) certificate installed on this machine. The OpenPGP public key can "
@@ -2694,178 +2714,179 @@ msgid ""
"Monkeysphere website."
msgstr ""
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:60
+#: plinth/modules/monkeysphere/__init__.py:50
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:11
+msgid "Monkeysphere"
+msgstr ""
+
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:45
msgid "Publishing key to keyserver..."
msgstr ""
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:67
-#: plinth/modules/users/templates/users_delete.html:41
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:52
+#: plinth/modules/users/templates/users_delete.html:26
msgid "Cancel"
msgstr ""
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:75
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:55
-#: plinth/modules/tor/templates/tor.html:95
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:60
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:40
+#: plinth/modules/tor/templates/tor.html:80
msgid "Service"
msgstr ""
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:76
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:61
msgid "Domains"
msgstr ""
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:77
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:31
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:62
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:16
msgid "OpenPGP Fingerprint"
msgstr ""
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:86
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:58
-#: plinth/modules/names/components.py:39
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:71
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:43
+#: plinth/modules/names/components.py:24
msgid "Secure Shell"
msgstr ""
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:90
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:62
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:75
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:47
msgid "Other"
msgstr ""
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:127
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:112
#, python-format
msgid "Show details for key %(fingerprint)s"
msgstr ""
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:133
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:118
msgid "-"
msgstr ""
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:143
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:128
msgid "Import Key"
msgstr ""
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:152
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:137
msgid "Publish Key"
msgstr ""
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:161
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:146
msgid "Add Domains"
msgstr ""
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:35
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:20
msgid "OpenPGP User IDs"
msgstr ""
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:39
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:24
msgid "Key Import Date"
msgstr ""
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:43
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:28
msgid "SSH Key Type"
msgstr ""
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:47
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:32
msgid "SSH Key Size"
msgstr ""
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:51
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:36
msgid "SSH Fingerprint"
msgstr ""
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:67
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:52
msgid "Key File"
msgstr ""
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:71
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:56
msgid "Available Domains"
msgstr ""
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:75
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:60
msgid "Added Domains"
msgstr ""
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:82
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:67
msgid ""
"After this key is published to the keyservers, it can be signed using GnuPG with the following commands:"
msgstr ""
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:88
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:73
msgid "Download the key"
msgstr ""
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:91
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:76
msgid "Sign the key"
msgstr ""
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:94
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:79
msgid "Send the key back to the keyservers"
msgstr ""
-#: plinth/modules/monkeysphere/views.py:60
+#: plinth/modules/monkeysphere/views.py:43
msgid "Imported key."
msgstr ""
-#: plinth/modules/monkeysphere/views.py:96
+#: plinth/modules/monkeysphere/views.py:79
msgid "Cancelled key publishing."
msgstr ""
-#: plinth/modules/monkeysphere/views.py:147
+#: plinth/modules/monkeysphere/views.py:130
msgid "Published key to keyserver."
msgstr ""
-#: plinth/modules/monkeysphere/views.py:149
+#: plinth/modules/monkeysphere/views.py:132
msgid "Error occurred while publishing key."
msgstr ""
-#: plinth/modules/mumble/__init__.py:33 plinth/modules/mumble/manifest.py:27
-msgid "Mumble"
-msgstr ""
-
-#: plinth/modules/mumble/__init__.py:37
-msgid "Voice Chat"
-msgstr ""
-
-#: plinth/modules/mumble/__init__.py:44
+#: plinth/modules/mumble/__init__.py:23
msgid ""
"Mumble is an open source, low-latency, encrypted, high quality voice chat "
"software."
msgstr ""
-#: plinth/modules/mumble/__init__.py:46
+#: plinth/modules/mumble/__init__.py:25
msgid ""
"You can connect to your Mumble server on the regular Mumble port 64738. Clients to connect to Mumble from your "
"desktop and Android devices are available."
msgstr ""
-#: plinth/modules/mumble/forms.py:31
+#: plinth/modules/mumble/__init__.py:49 plinth/modules/mumble/manifest.py:12
+msgid "Mumble"
+msgstr ""
+
+#: plinth/modules/mumble/__init__.py:50
+msgid "Voice Chat"
+msgstr ""
+
+#: plinth/modules/mumble/forms.py:16
#, fuzzy
#| msgid "SSH server password"
msgid "Set SuperUser Password"
msgstr "пароль SSH серверу"
-#: plinth/modules/mumble/forms.py:34
+#: plinth/modules/mumble/forms.py:19
msgid ""
"Optional. Leave this field blank to keep the current password. SuperUser "
"password can be used to manage permissions in Mumble."
msgstr ""
-#: plinth/modules/mumble/manifest.py:52
+#: plinth/modules/mumble/manifest.py:37
msgid "Plumble"
msgstr ""
-#: plinth/modules/mumble/manifest.py:66
+#: plinth/modules/mumble/manifest.py:51
msgid "Mumblefly"
msgstr ""
-#: plinth/modules/mumble/views.py:50
+#: plinth/modules/mumble/views.py:29
msgid "SuperUser password successfully updated."
msgstr ""
-#: plinth/modules/names/__init__.py:37
-msgid "Name Services"
-msgstr ""
-
-#: plinth/modules/names/__init__.py:45
+#: plinth/modules/names/__init__.py:26
#, python-brace-format
msgid ""
"Name Services provides an overview of the ways {box_name} can be reached "
@@ -2874,76 +2895,80 @@ msgid ""
"enabled or disabled for incoming connections through the given name."
msgstr ""
-#: plinth/modules/names/components.py:27
+#: plinth/modules/names/__init__.py:46
+msgid "Name Services"
+msgstr ""
+
+#: plinth/modules/names/components.py:12
msgid "All"
msgstr ""
-#: plinth/modules/names/components.py:31 plinth/modules/names/components.py:35
+#: plinth/modules/names/components.py:16 plinth/modules/names/components.py:20
msgid "All web apps"
msgstr ""
-#: plinth/modules/networks/__init__.py:42
-msgid "Networks"
-msgstr ""
-
-#: plinth/modules/networks/__init__.py:45
+#: plinth/modules/networks/__init__.py:35
msgid ""
"Configure network devices. Connect to the Internet via Ethernet, Wi-Fi or "
"PPPoE. Share that connection with other devices on the network."
msgstr ""
-#: plinth/modules/networks/__init__.py:47
+#: plinth/modules/networks/__init__.py:37
msgid ""
"Devices administered through other methods may not be available for "
"configuration here."
msgstr ""
-#: plinth/modules/networks/__init__.py:156
+#: plinth/modules/networks/__init__.py:58
+msgid "Networks"
+msgstr ""
+
+#: plinth/modules/networks/__init__.py:151
#, python-brace-format
msgid "Using DNSSEC on IPv{kind}"
msgstr ""
-#: plinth/modules/networks/forms.py:32
+#: plinth/modules/networks/forms.py:16
msgid "Connection Type"
msgstr ""
-#: plinth/modules/networks/forms.py:44
+#: plinth/modules/networks/forms.py:28
msgid "Connection Name"
msgstr ""
-#: plinth/modules/networks/forms.py:46
+#: plinth/modules/networks/forms.py:30
msgid "Network Interface"
msgstr ""
-#: plinth/modules/networks/forms.py:47
+#: plinth/modules/networks/forms.py:31
msgid "The network device that this connection should be bound to."
msgstr ""
-#: plinth/modules/networks/forms.py:50
+#: plinth/modules/networks/forms.py:34
msgid "Firewall Zone"
msgstr ""
-#: plinth/modules/networks/forms.py:51
+#: plinth/modules/networks/forms.py:35
msgid ""
"The firewall zone will control which services are available over this "
"interfaces. Select Internal only for trusted networks."
msgstr ""
-#: plinth/modules/networks/forms.py:54
-#: plinth/modules/networks/templates/connections_diagram.html:78
+#: plinth/modules/networks/forms.py:38
+#: plinth/modules/networks/templates/connections_diagram.html:63
msgid "External"
msgstr ""
-#: plinth/modules/networks/forms.py:54
-#: plinth/modules/networks/templates/connections_diagram.html:107
+#: plinth/modules/networks/forms.py:38
+#: plinth/modules/networks/templates/connections_diagram.html:92
msgid "Internal"
msgstr ""
-#: plinth/modules/networks/forms.py:56
+#: plinth/modules/networks/forms.py:40
msgid "IPv4 Addressing Method"
msgstr ""
-#: plinth/modules/networks/forms.py:58
+#: plinth/modules/networks/forms.py:41
#, python-brace-format
msgid ""
"\"Automatic\" method will make {box_name} acquire configuration from this "
@@ -2951,199 +2976,239 @@ msgid ""
"router, configure clients on this network and share its Internet connection."
msgstr ""
-#: plinth/modules/networks/forms.py:63
+#: plinth/modules/networks/forms.py:46
msgid "Automatic (DHCP)"
msgstr ""
-#: plinth/modules/networks/forms.py:63
+#: plinth/modules/networks/forms.py:46
msgid "Shared"
msgstr ""
-#: plinth/modules/networks/forms.py:69
+#: plinth/modules/networks/forms.py:52
msgid "Netmask"
msgstr ""
-#: plinth/modules/networks/forms.py:70
+#: plinth/modules/networks/forms.py:53
msgid ""
"Optional value. If left blank, a default netmask based on the address will "
"be used."
msgstr ""
-#: plinth/modules/networks/forms.py:74 plinth/modules/networks/forms.py:104
-#: plinth/modules/networks/templates/connection_show.html:202
-#: plinth/modules/networks/templates/connection_show.html:241
+#: plinth/modules/networks/forms.py:57 plinth/modules/networks/forms.py:86
+#: plinth/modules/networks/templates/connection_show.html:187
+#: plinth/modules/networks/templates/connection_show.html:226
msgid "Gateway"
msgstr ""
-#: plinth/modules/networks/forms.py:74 plinth/modules/networks/forms.py:104
+#: plinth/modules/networks/forms.py:57 plinth/modules/networks/forms.py:86
msgid "Optional value."
msgstr ""
-#: plinth/modules/networks/forms.py:77 plinth/modules/networks/forms.py:107
+#: plinth/modules/networks/forms.py:60 plinth/modules/networks/forms.py:89
msgid "DNS Server"
msgstr ""
-#: plinth/modules/networks/forms.py:78
+#: plinth/modules/networks/forms.py:61
msgid ""
"Optional value. If this value is given and IPv4 addressing method is "
"\"Automatic\", the DNS Servers provided by a DHCP server will be ignored."
msgstr ""
-#: plinth/modules/networks/forms.py:83 plinth/modules/networks/forms.py:113
+#: plinth/modules/networks/forms.py:66 plinth/modules/networks/forms.py:95
msgid "Second DNS Server"
msgstr ""
-#: plinth/modules/networks/forms.py:84
+#: plinth/modules/networks/forms.py:67
msgid ""
"Optional value. If this value is given and IPv4 Addressing Method is "
"\"Automatic\", the DNS Servers provided by a DHCP server will be ignored."
msgstr ""
-#: plinth/modules/networks/forms.py:89
+#: plinth/modules/networks/forms.py:72
msgid "IPv6 Addressing Method"
msgstr ""
-#: plinth/modules/networks/forms.py:91
+#: plinth/modules/networks/forms.py:73
#, python-brace-format
msgid ""
"\"Automatic\" methods will make {box_name} acquire configuration from this "
"network making it a client."
msgstr ""
-#: plinth/modules/networks/forms.py:94 plinth/modules/networks/forms.py:259
+#: plinth/modules/networks/forms.py:76 plinth/modules/networks/forms.py:241
msgid "Automatic"
msgstr ""
-#: plinth/modules/networks/forms.py:94
+#: plinth/modules/networks/forms.py:76
msgid "Automatic, DHCP only"
msgstr ""
-#: plinth/modules/networks/forms.py:95
+#: plinth/modules/networks/forms.py:77
msgid "Ignore"
msgstr ""
-#: plinth/modules/networks/forms.py:99
+#: plinth/modules/networks/forms.py:81
msgid "Prefix"
msgstr ""
-#: plinth/modules/networks/forms.py:100
+#: plinth/modules/networks/forms.py:82
msgid "Value between 1 and 128."
msgstr ""
-#: plinth/modules/networks/forms.py:108
+#: plinth/modules/networks/forms.py:90
msgid ""
"Optional value. If this value is given and IPv6 addressing method is "
"\"Automatic\", the DNS Servers provided by a DHCP server will be ignored."
msgstr ""
-#: plinth/modules/networks/forms.py:114
+#: plinth/modules/networks/forms.py:96
msgid ""
"Optional value. If this value is given and IPv6 Addressing Method is "
"\"Automatic\", the DNS Servers provided by a DHCP server will be ignored."
msgstr ""
-#: plinth/modules/networks/forms.py:127
+#: plinth/modules/networks/forms.py:109
msgid "-- select --"
msgstr ""
-#: plinth/modules/networks/forms.py:252
-#: plinth/modules/networks/templates/connection_show.html:144
+#: plinth/modules/networks/forms.py:234
+#: plinth/modules/networks/templates/connection_show.html:129
msgid "SSID"
msgstr ""
-#: plinth/modules/networks/forms.py:253
+#: plinth/modules/networks/forms.py:235
msgid "The visible name of the network."
msgstr ""
-#: plinth/modules/networks/forms.py:255
-#: plinth/modules/networks/templates/connection_show.html:157
+#: plinth/modules/networks/forms.py:237
+#: plinth/modules/networks/templates/connection_show.html:142
msgid "Mode"
msgstr ""
-#: plinth/modules/networks/forms.py:255
+#: plinth/modules/networks/forms.py:237
msgid "Infrastructure"
msgstr ""
-#: plinth/modules/networks/forms.py:256
+#: plinth/modules/networks/forms.py:238
msgid "Access Point"
msgstr ""
-#: plinth/modules/networks/forms.py:257
+#: plinth/modules/networks/forms.py:239
msgid "Ad-hoc"
msgstr ""
-#: plinth/modules/networks/forms.py:259
+#: plinth/modules/networks/forms.py:241
msgid "Frequency Band"
msgstr ""
-#: plinth/modules/networks/forms.py:260
+#: plinth/modules/networks/forms.py:242
msgid "A (5 GHz)"
msgstr ""
-#: plinth/modules/networks/forms.py:261
+#: plinth/modules/networks/forms.py:243
msgid "B/G (2.4 GHz)"
msgstr ""
-#: plinth/modules/networks/forms.py:263
-#: plinth/modules/networks/templates/connection_show.html:173
+#: plinth/modules/networks/forms.py:245
+#: plinth/modules/networks/templates/connection_show.html:158
msgid "Channel"
msgstr ""
-#: plinth/modules/networks/forms.py:264
+#: plinth/modules/networks/forms.py:246
msgid ""
"Optional value. Wireless channel in the selected frequency band to restrict "
"to. Blank or 0 value means automatic selection."
msgstr ""
-#: plinth/modules/networks/forms.py:269
+#: plinth/modules/networks/forms.py:251
msgid "BSSID"
msgstr ""
-#: plinth/modules/networks/forms.py:270
+#: plinth/modules/networks/forms.py:252
msgid ""
"Optional value. Unique identifier for the access point. When connecting to "
"an access point, connect only if the BSSID of the access point matches the "
"one provided. Example: 00:11:22:aa:bb:cc."
msgstr ""
-#: plinth/modules/networks/forms.py:276
+#: plinth/modules/networks/forms.py:258
msgid "Authentication Mode"
msgstr ""
-#: plinth/modules/networks/forms.py:277
+#: plinth/modules/networks/forms.py:259
msgid ""
"Select WPA if the wireless network is secured and requires clients to have "
"the password to connect."
msgstr ""
-#: plinth/modules/networks/forms.py:279
+#: plinth/modules/networks/forms.py:261
msgid "WPA"
msgstr ""
-#: plinth/modules/networks/forms.py:279
+#: plinth/modules/networks/forms.py:261
msgid "Open"
msgstr ""
+#: plinth/modules/networks/forms.py:297
+msgid "Choose your internet connection type"
+msgstr ""
+
+#: plinth/modules/networks/forms.py:301
+msgid ""
+"I have a public IP address that may change over timeThis means that devices on the Internet can reach you when you are "
+"connected to the Internet. Every time you connect to the Internet with your "
+"Internet Service Provider (ISP), you may get a different IP address, "
+"especially after some offline time. Many ISPs offer this type of "
+"connectivity. If you have a public IP address but are unsure if it changes "
+"over time or not, it is safer to choose this option.
"
+msgstr ""
+
#: plinth/modules/networks/forms.py:313
+#, python-brace-format
+msgid ""
+"I have a public IP address that does not change overtime (recommended)This means that devices on the Internet can reach you "
+"when you are connected to the Internet. Every time you connect to the "
+"Internet with your Internet Service Provider (ISP), you always get the same "
+"IP address. This is the most trouble-free setup for many {box_name} services "
+"but very few ISPs offer this. You may be able to get this service from your "
+"ISP by making an additional payment.
"
+msgstr ""
+
+#: plinth/modules/networks/forms.py:326
+#, python-brace-format
+msgid ""
+"I dont have a public IP addressThis means that "
+"devices on the Internet can not reach you when you are connected to "
+"the Internet. Every time you connect to the Internet with your Internet "
+"Service Provider (ISP), you get an IP address that is only relevant for "
+"local networks. Many ISPs offer this type of connectivity. This is the most "
+"troublesome situation for hosting services at home. {box_name} provides many "
+"workaround solutions but each solution has some limitations.
"
+msgstr ""
+
+#: plinth/modules/networks/forms.py:351
#, fuzzy
#| msgid "General Configuration"
msgid "Preferred router configuration"
msgstr "Загальні налаштування"
-#: plinth/modules/networks/forms.py:318
+#: plinth/modules/networks/forms.py:356
#, python-brace-format
msgid ""
-"Use DMZ feature to forward all trafficMost routers "
-"provide a configuration setting called DMZ. This will allow the router to "
-"forward all incoming traffic from the internet to a single IP address such "
-"as the {box_name}'s address. First remember to configure a static local IP "
-"address for your {box_name} in your router's configuration.
"
+"Use DMZ feature to forward all traffic (recommended) Most routers provide a configuration setting called DMZ. This will allow "
+"the router to forward all incoming traffic from the Internet to a single IP "
+"address such as the {box_name}'s IP address. First remember to configure a "
+"static local IP address for your {box_name} in your router's configuration."
+"p>"
msgstr ""
-#: plinth/modules/networks/forms.py:332
+#: plinth/modules/networks/forms.py:368
#, python-brace-format
msgid ""
-"Forward Specific Traffic as needed by each application
You may alternatively choose to forward only specific traffic to your "
"{box_name}. This is ideal if you have other servers like {box_name} in your "
"network or if your router does not support DMZ feature. All applications "
@@ -3152,278 +3217,284 @@ msgid ""
"to be forwarded for that application to work.
"
msgstr ""
-#: plinth/modules/networks/forms.py:349
+#: plinth/modules/networks/forms.py:382
msgid ""
-"Router is currently unconfiguredChoose this if you "
+"Router is currently unconfigured
Choose this if you "
"have not configured or are unable to configure the router currently and wish "
"to be reminded later. Some of the other configuration steps may fail.
"
msgstr ""
-#: plinth/modules/networks/networks.py:43
+#: plinth/modules/networks/networks.py:32
msgid "Network Connections"
msgstr ""
-#: plinth/modules/networks/networks.py:59
+#: plinth/modules/networks/networks.py:46
msgid "Cannot show connection: Connection not found."
msgstr ""
-#: plinth/modules/networks/networks.py:94
+#: plinth/modules/networks/networks.py:81
msgid "Connection Information"
msgstr ""
-#: plinth/modules/networks/networks.py:108
+#: plinth/modules/networks/networks.py:95
msgid "Cannot edit connection: Connection not found."
msgstr ""
-#: plinth/modules/networks/networks.py:114
+#: plinth/modules/networks/networks.py:101
msgid "This type of connection is not yet understood."
msgstr ""
-#: plinth/modules/networks/networks.py:136
-#: plinth/modules/networks/networks.py:220
-#: plinth/modules/networks/templates/connections_edit.html:35
+#: plinth/modules/networks/networks.py:123
+#: plinth/modules/networks/networks.py:207
+#: plinth/modules/networks/templates/connections_edit.html:20
msgid "Edit Connection"
msgstr ""
-#: plinth/modules/networks/networks.py:232
+#: plinth/modules/networks/networks.py:219
#, python-brace-format
msgid "Activated connection {name}."
msgstr ""
-#: plinth/modules/networks/networks.py:236
+#: plinth/modules/networks/networks.py:223
msgid "Failed to activate connection: Connection not found."
msgstr ""
-#: plinth/modules/networks/networks.py:242
+#: plinth/modules/networks/networks.py:229
#, python-brace-format
msgid "Failed to activate connection {name}: No suitable device is available."
msgstr ""
-#: plinth/modules/networks/networks.py:255
+#: plinth/modules/networks/networks.py:242
#, python-brace-format
msgid "Deactivated connection {name}."
msgstr ""
-#: plinth/modules/networks/networks.py:259
+#: plinth/modules/networks/networks.py:246
msgid "Failed to de-activate connection: Connection not found."
msgstr ""
-#: plinth/modules/networks/networks.py:269
-#: plinth/modules/networks/templates/connections_list.html:62
-#: plinth/modules/networks/templates/connections_list.html:64
+#: plinth/modules/networks/networks.py:256
+#: plinth/modules/networks/templates/connections_list.html:12
+#: plinth/modules/networks/templates/connections_list.html:14
msgid "Nearby Wi-Fi Networks"
msgstr ""
-#: plinth/modules/networks/networks.py:293
-#: plinth/modules/networks/templates/connections_list.html:67
-#: plinth/modules/networks/templates/connections_list.html:69
-#: plinth/modules/wireguard/templates/wireguard_add_server.html:34
+#: plinth/modules/networks/networks.py:280
+#: plinth/modules/networks/templates/connections_list.html:17
+#: plinth/modules/networks/templates/connections_list.html:19
+#: plinth/modules/wireguard/templates/wireguard_add_server.html:19
msgid "Add Connection"
msgstr ""
-#: plinth/modules/networks/networks.py:311
+#: plinth/modules/networks/networks.py:298
msgid "Adding New Generic Connection"
msgstr ""
-#: plinth/modules/networks/networks.py:329
+#: plinth/modules/networks/networks.py:316
msgid "Adding New Ethernet Connection"
msgstr ""
-#: plinth/modules/networks/networks.py:347
+#: plinth/modules/networks/networks.py:334
msgid "Adding New PPPoE Connection"
msgstr ""
-#: plinth/modules/networks/networks.py:382
+#: plinth/modules/networks/networks.py:369
msgid "Adding New Wi-Fi Connection"
msgstr ""
-#: plinth/modules/networks/networks.py:397
+#: plinth/modules/networks/networks.py:384
#, python-brace-format
msgid "Connection {name} deleted."
msgstr ""
-#: plinth/modules/networks/networks.py:401
-#: plinth/modules/networks/networks.py:411
+#: plinth/modules/networks/networks.py:388
+#: plinth/modules/networks/networks.py:398
msgid "Failed to delete connection: Connection not found."
msgstr ""
-#: plinth/modules/networks/networks.py:416
-#: plinth/modules/networks/templates/connections_delete.html:26
+#: plinth/modules/networks/networks.py:403
+#: plinth/modules/networks/templates/connections_delete.html:11
msgid "Delete Connection"
msgstr ""
-#: plinth/modules/networks/networks.py:442
+#: plinth/modules/networks/networks.py:428
#, fuzzy
#| msgid "Configuration updated"
msgid "Router configuration type saved."
msgstr "Конфігурацію оновлено"
-#: plinth/modules/networks/templates/connection_show.html:43
+#: plinth/modules/networks/networks.py:474
+#, fuzzy
+#| msgid "Configuration updated"
+msgid "Internet connection type saved."
+msgstr "Конфігурацію оновлено"
+
+#: plinth/modules/networks/templates/connection_show.html:28
msgid "Edit connection"
msgstr ""
-#: plinth/modules/networks/templates/connection_show.html:43
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:83
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:84
-#: plinth/templates/base.html:167 plinth/templates/base.html:168
+#: plinth/modules/networks/templates/connection_show.html:28
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:68
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:69
+#: plinth/templates/base.html:152 plinth/templates/base.html:153
msgid "Edit"
msgstr ""
-#: plinth/modules/networks/templates/connection_show.html:50
-#: plinth/modules/networks/templates/connections_list.html:90
+#: plinth/modules/networks/templates/connection_show.html:35
+#: plinth/modules/networks/templates/connections_list.html:40
msgid "Deactivate"
msgstr ""
-#: plinth/modules/networks/templates/connection_show.html:57
-#: plinth/modules/networks/templates/connections_list.html:98
+#: plinth/modules/networks/templates/connection_show.html:42
+#: plinth/modules/networks/templates/connections_list.html:48
msgid "Activate"
msgstr ""
-#: plinth/modules/networks/templates/connection_show.html:63
+#: plinth/modules/networks/templates/connection_show.html:48
msgid "Delete connection"
msgstr ""
-#: plinth/modules/networks/templates/connection_show.html:66
-#: plinth/modules/networks/templates/connections_diagram.html:73
-#: plinth/modules/networks/templates/connections_diagram.html:76
-#: plinth/modules/networks/templates/connections_diagram.html:105
-#: plinth/modules/networks/templates/connections_diagram.html:127
+#: plinth/modules/networks/templates/connection_show.html:51
+#: plinth/modules/networks/templates/connections_diagram.html:58
+#: plinth/modules/networks/templates/connections_diagram.html:61
+#: plinth/modules/networks/templates/connections_diagram.html:90
+#: plinth/modules/networks/templates/connections_diagram.html:112
msgid "Connection"
msgstr ""
-#: plinth/modules/networks/templates/connection_show.html:71
+#: plinth/modules/networks/templates/connection_show.html:56
msgid "Primary connection"
msgstr ""
-#: plinth/modules/networks/templates/connection_show.html:73
-#: plinth/modules/networks/templates/connection_show.html:217
-#: plinth/modules/networks/templates/connection_show.html:256
+#: plinth/modules/networks/templates/connection_show.html:58
+#: plinth/modules/networks/templates/connection_show.html:202
+#: plinth/modules/networks/templates/connection_show.html:241
msgid "yes"
msgstr ""
-#: plinth/modules/networks/templates/connection_show.html:84
-#: plinth/modules/storage/templates/storage.html:40
+#: plinth/modules/networks/templates/connection_show.html:69
+#: plinth/modules/storage/templates/storage.html:25
msgid "Device"
msgstr ""
-#: plinth/modules/networks/templates/connection_show.html:88
+#: plinth/modules/networks/templates/connection_show.html:73
msgid "State"
msgstr ""
-#: plinth/modules/networks/templates/connection_show.html:93
+#: plinth/modules/networks/templates/connection_show.html:78
msgid "State reason"
msgstr ""
-#: plinth/modules/networks/templates/connection_show.html:102
+#: plinth/modules/networks/templates/connection_show.html:87
msgid "MAC address"
msgstr ""
-#: plinth/modules/networks/templates/connection_show.html:106
+#: plinth/modules/networks/templates/connection_show.html:91
msgid "Interface"
msgstr ""
-#: plinth/modules/networks/templates/connection_show.html:110
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:33
-#: plinth/modules/snapshot/templates/snapshot_manage.html:45
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:41
+#: plinth/modules/networks/templates/connection_show.html:95
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:18
+#: plinth/modules/snapshot/templates/snapshot_manage.html:30
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:26
msgid "Description"
msgstr ""
-#: plinth/modules/networks/templates/connection_show.html:116
+#: plinth/modules/networks/templates/connection_show.html:101
msgid "Physical Link"
msgstr ""
-#: plinth/modules/networks/templates/connection_show.html:121
+#: plinth/modules/networks/templates/connection_show.html:106
msgid "Link state"
msgstr ""
-#: plinth/modules/networks/templates/connection_show.html:125
+#: plinth/modules/networks/templates/connection_show.html:110
msgid "cable is connected"
msgstr ""
-#: plinth/modules/networks/templates/connection_show.html:128
+#: plinth/modules/networks/templates/connection_show.html:113
msgid "please check cable"
msgstr ""
-#: plinth/modules/networks/templates/connection_show.html:133
-#: plinth/modules/networks/templates/connection_show.html:149
+#: plinth/modules/networks/templates/connection_show.html:118
+#: plinth/modules/networks/templates/connection_show.html:134
msgid "Speed"
msgstr ""
-#: plinth/modules/networks/templates/connection_show.html:135
+#: plinth/modules/networks/templates/connection_show.html:120
#, python-format
msgid "%(ethernet_speed)s Mbit/s"
msgstr ""
-#: plinth/modules/networks/templates/connection_show.html:151
+#: plinth/modules/networks/templates/connection_show.html:136
#, python-format
msgid "%(wireless_bitrate)s Mbit/s"
msgstr ""
-#: plinth/modules/networks/templates/connection_show.html:163
+#: plinth/modules/networks/templates/connection_show.html:148
msgid "Signal strength"
msgstr ""
-#: plinth/modules/networks/templates/connection_show.html:181
+#: plinth/modules/networks/templates/connection_show.html:166
msgid "IPv4"
msgstr ""
-#: plinth/modules/networks/templates/connection_show.html:186
-#: plinth/modules/networks/templates/connection_show.html:227
-#: plinth/modules/shadowsocks/forms.py:64
+#: plinth/modules/networks/templates/connection_show.html:171
+#: plinth/modules/networks/templates/connection_show.html:212
+#: plinth/modules/shadowsocks/forms.py:49
msgid "Method"
msgstr ""
-#: plinth/modules/networks/templates/connection_show.html:193
-#: plinth/modules/networks/templates/connection_show.html:234
+#: plinth/modules/networks/templates/connection_show.html:178
+#: plinth/modules/networks/templates/connection_show.html:219
msgid "IP address"
msgstr ""
-#: plinth/modules/networks/templates/connection_show.html:209
-#: plinth/modules/networks/templates/connection_show.html:248
+#: plinth/modules/networks/templates/connection_show.html:194
+#: plinth/modules/networks/templates/connection_show.html:233
msgid "DNS server"
msgstr ""
-#: plinth/modules/networks/templates/connection_show.html:216
-#: plinth/modules/networks/templates/connection_show.html:255
-#: plinth/modules/storage/forms.py:156
+#: plinth/modules/networks/templates/connection_show.html:201
+#: plinth/modules/networks/templates/connection_show.html:240
+#: plinth/modules/storage/forms.py:141
msgid "Default"
msgstr ""
-#: plinth/modules/networks/templates/connection_show.html:222
+#: plinth/modules/networks/templates/connection_show.html:207
msgid "IPv6"
msgstr ""
-#: plinth/modules/networks/templates/connection_show.html:263
+#: plinth/modules/networks/templates/connection_show.html:248
msgid "This connection is not active."
msgstr ""
-#: plinth/modules/networks/templates/connection_show.html:266
-#: plinth/modules/security/__init__.py:38 plinth/modules/security/views.py:47
+#: plinth/modules/networks/templates/connection_show.html:251
+#: plinth/modules/security/__init__.py:45
msgid "Security"
msgstr ""
-#: plinth/modules/networks/templates/connection_show.html:271
-#: plinth/modules/networks/templates/connection_show.html:291
-#: plinth/modules/networks/templates/connection_show.html:310
+#: plinth/modules/networks/templates/connection_show.html:256
+#: plinth/modules/networks/templates/connection_show.html:276
+#: plinth/modules/networks/templates/connection_show.html:295
msgid "Firewall zone"
msgstr ""
-#: plinth/modules/networks/templates/connection_show.html:280
+#: plinth/modules/networks/templates/connection_show.html:265
msgid ""
"This interface should be connected to a local network/machine. If you "
"connect this interface to a public network, services meant to be available "
"only internally will become available externally. This is a security risk."
msgstr ""
-#: plinth/modules/networks/templates/connection_show.html:300
+#: plinth/modules/networks/templates/connection_show.html:285
msgid ""
"This interface should receive your Internet connection. If you connect it to "
"a local network/machine, many services meant to available only internally "
"will not be available."
msgstr ""
-#: plinth/modules/networks/templates/connection_show.html:319
+#: plinth/modules/networks/templates/connection_show.html:304
#, python-format
msgid ""
"This interface is not maintained by %(box_name)s. Its security status is "
@@ -3432,111 +3503,134 @@ msgid ""
"connection and re-configure it."
msgstr ""
-#: plinth/modules/networks/templates/connections_create.html:34
+#: plinth/modules/networks/templates/connections_create.html:19
msgid "Create Connection"
msgstr ""
-#: plinth/modules/networks/templates/connections_delete.html:29
+#: plinth/modules/networks/templates/connections_delete.html:14
#, python-format
msgid "Delete connection %(name)s permanently?"
msgstr ""
-#: plinth/modules/networks/templates/connections_diagram.html:65
+#: plinth/modules/networks/templates/connections_diagram.html:50
msgid "Internet"
msgstr ""
-#: plinth/modules/networks/templates/connections_diagram.html:70
-#: plinth/modules/networks/templates/connections_diagram.html:102
+#: plinth/modules/networks/templates/connections_diagram.html:55
+#: plinth/modules/networks/templates/connections_diagram.html:87
msgid "Spacing"
msgstr ""
-#: plinth/modules/networks/templates/connections_diagram.html:83
-#: plinth/modules/networks/templates/connections_diagram.html:113
-#: plinth/network.py:40
+#: plinth/modules/networks/templates/connections_diagram.html:68
+#: plinth/modules/networks/templates/connections_diagram.html:98
+#: plinth/network.py:25
msgid "Ethernet"
msgstr ""
-#: plinth/modules/networks/templates/connections_diagram.html:86
-#: plinth/modules/networks/templates/connections_diagram.html:116
-#: plinth/network.py:41
+#: plinth/modules/networks/templates/connections_diagram.html:71
+#: plinth/modules/networks/templates/connections_diagram.html:101
+#: plinth/network.py:26
msgid "Wi-Fi"
msgstr ""
-#: plinth/modules/networks/templates/connections_diagram.html:89
+#: plinth/modules/networks/templates/connections_diagram.html:74
#, python-format
msgid "Show connection %(connection.name)s"
msgstr ""
-#: plinth/modules/networks/templates/connections_diagram.html:119
+#: plinth/modules/networks/templates/connections_diagram.html:104
#, python-format
msgid "Show connection %(name)s"
msgstr ""
-#: plinth/modules/networks/templates/connections_diagram.html:131
+#: plinth/modules/networks/templates/connections_diagram.html:116
msgid "Computer"
msgstr ""
-#: plinth/modules/networks/templates/connections_list.html:58
+#: plinth/modules/networks/templates/connections_list.html:8
#, fuzzy
#| msgid "Connection refused"
msgid "Connections"
msgstr "З’єднання відхилено"
-#: plinth/modules/networks/templates/connections_list.html:79
+#: plinth/modules/networks/templates/connections_list.html:29
#, python-format
msgid "Delete connection %(name)s"
msgstr ""
-#: plinth/modules/networks/templates/connections_list.html:104
+#: plinth/modules/networks/templates/connections_list.html:54
msgid "Active"
msgstr ""
-#: plinth/modules/networks/templates/connections_list.html:107
+#: plinth/modules/networks/templates/connections_list.html:57
msgid "Inactive"
msgstr ""
-#: plinth/modules/networks/templates/connections_list.html:124
-#, python-format
-msgid "%(box_name)s Internet Connectivity"
-msgstr ""
-
-#: plinth/modules/networks/templates/connections_list.html:129
-#, python-format
-msgid ""
-"The following best describes how your %(box_name)s is connected in your "
-"network. This information is used only to suggest necessary configuration "
-"actions."
-msgstr ""
-
-#: plinth/modules/networks/templates/connections_list.html:137
-#, python-format
-msgid ""
-"Your %(box_name)s gets its internet from your Router via WiFi or Ethernet "
-"cable. This is a typical home setup."
-msgstr ""
-
-#: plinth/modules/networks/templates/connections_list.html:145
-#: plinth/modules/networks/templates/connections_list.html:147
-msgid "Update..."
-msgstr ""
-
-#: plinth/modules/networks/templates/connections_type_select.html:34
+#: plinth/modules/networks/templates/connections_type_select.html:19
msgid "Create..."
msgstr ""
-#: plinth/modules/networks/templates/router_configuration_content.html:25
+#: plinth/modules/networks/templates/internet_connectivity_content.html:10
+msgid "What Type Of Internet Connection Do You Have?"
+msgstr ""
+
+#: plinth/modules/networks/templates/internet_connectivity_content.html:16
+msgid ""
+"Select an option that best describes the type of Internet connection. This "
+"information is used only to guide you with further setup."
+msgstr ""
+
+#: plinth/modules/networks/templates/internet_connectivity_firstboot.html:18
+#: plinth/modules/networks/templates/router_configuration_firstboot.html:18
+msgid "Skip this step"
+msgstr ""
+
+#: plinth/modules/networks/templates/internet_connectivity_firstboot.html:19
+#: plinth/modules/networks/templates/router_configuration_firstboot.html:19
+msgid "Next"
+msgstr ""
+
+#: plinth/modules/networks/templates/internet_connectivity_main.html:9
+msgid "Your Internet Connection Type"
+msgstr ""
+
+#: plinth/modules/networks/templates/internet_connectivity_main.html:14
+msgid ""
+"The following best describes the type of Internet connection provided by "
+"your ISP. This information is only used to suggest you necessary "
+"configuration actions."
+msgstr ""
+
+#: plinth/modules/networks/templates/internet_connectivity_main.html:23
+msgid "My ISP provides a public IP address that does not change over time."
+msgstr ""
+
+#: plinth/modules/networks/templates/internet_connectivity_main.html:27
+msgid "My ISP provides a public IP address that may change over time."
+msgstr ""
+
+#: plinth/modules/networks/templates/internet_connectivity_main.html:31
+msgid "My ISP does not provide a public IP address."
+msgstr ""
+
+#: plinth/modules/networks/templates/internet_connectivity_main.html:37
+#: plinth/modules/networks/templates/router_configuration_main.html:29
+msgid "Update..."
+msgstr ""
+
+#: plinth/modules/networks/templates/router_configuration_content.html:10
#, python-format
msgid "Setup %(box_name)s Behind a Router"
msgstr ""
-#: plinth/modules/networks/templates/router_configuration_content.html:31
+#: plinth/modules/networks/templates/router_configuration_content.html:16
#, python-format
msgid ""
"Your %(box_name)s gets its internet connection from your router via Wi-Fi or "
"Ethernet cable. This is a typical home setup."
msgstr ""
-#: plinth/modules/networks/templates/router_configuration_content.html:38
+#: plinth/modules/networks/templates/router_configuration_content.html:23
#, python-format
msgid ""
"With this setup, any device on the internet trying to reach your "
@@ -3545,24 +3639,24 @@ msgid ""
"the services."
msgstr ""
-#: plinth/modules/networks/templates/router_configuration_content.html:47
+#: plinth/modules/networks/templates/router_configuration_content.html:32
msgid ""
"If you don't have control over your router, choose not to configure it. To "
-"see options, to overcome this limitation, choose 'no public address' option "
+"see options to overcome this limitation, choose 'no public address' option "
"in Internet connection type selection."
msgstr ""
-#: plinth/modules/networks/templates/router_configuration_content.html:54
+#: plinth/modules/networks/templates/router_configuration_content.html:39
msgid "Choose How You Wish to Configure Your Router"
msgstr ""
-#: plinth/modules/networks/templates/router_configuration_content.html:57
+#: plinth/modules/networks/templates/router_configuration_content.html:42
msgid ""
"You will need to login to your router's administration console provided by "
"the router. This may look like one of the following:"
msgstr ""
-#: plinth/modules/networks/templates/router_configuration_content.html:69
+#: plinth/modules/networks/templates/router_configuration_content.html:54
msgid ""
"The username and password is configured by you when you first setup the "
"router. For many routers, this information is printed at the back of the "
@@ -3572,24 +3666,27 @@ msgid ""
"full instructions on how to perform this task."
msgstr ""
-#: plinth/modules/networks/templates/router_configuration_firstboot.html:33
-msgid "skip this step"
+#: plinth/modules/networks/templates/router_configuration_main.html:9
+#, python-format
+msgid "%(box_name)s Internet Connectivity"
msgstr ""
-#: plinth/modules/networks/templates/router_configuration_firstboot.html:35
-msgid "Next"
+#: plinth/modules/networks/templates/router_configuration_main.html:15
+#, python-format
+msgid ""
+"The following best describes how your %(box_name)s is connected in your "
+"network. This information is used only to suggest necessary configuration "
+"actions."
msgstr ""
-#: plinth/modules/openvpn/__init__.py:39 plinth/modules/openvpn/manifest.py:33
-msgid "OpenVPN"
+#: plinth/modules/networks/templates/router_configuration_main.html:23
+#, python-format
+msgid ""
+"Your %(box_name)s gets its Internet from your Router via Wi-Fi or Ethernet "
+"cable. This is a typical home setup."
msgstr ""
-#: plinth/modules/openvpn/__init__.py:43
-#: plinth/modules/wireguard/__init__.py:40
-msgid "Virtual Private Network"
-msgstr ""
-
-#: plinth/modules/openvpn/__init__.py:47
+#: plinth/modules/openvpn/__init__.py:26
#, python-brace-format
msgid ""
"Virtual Private Network (VPN) is a technique for securely connecting two "
@@ -3600,21 +3697,30 @@ msgid ""
"security and anonymity."
msgstr ""
-#: plinth/modules/openvpn/__init__.py:79
+#: plinth/modules/openvpn/__init__.py:49 plinth/modules/openvpn/manifest.py:18
+msgid "OpenVPN"
+msgstr ""
+
+#: plinth/modules/openvpn/__init__.py:50
+#: plinth/modules/wireguard/__init__.py:53
+msgid "Virtual Private Network"
+msgstr ""
+
+#: plinth/modules/openvpn/__init__.py:61
#, python-brace-format
msgid ""
"Download Profile"
msgstr ""
-#: plinth/modules/openvpn/forms.py:27
+#: plinth/modules/openvpn/forms.py:12
msgid "Enable OpenVPN server"
msgstr ""
-#: plinth/modules/openvpn/manifest.py:63
-msgid "TunnelBlick"
+#: plinth/modules/openvpn/manifest.py:48
+msgid "Tunnelblick"
msgstr ""
-#: plinth/modules/openvpn/templates/openvpn.html:42
+#: plinth/modules/openvpn/templates/openvpn.html:27
#, python-format
msgid ""
"OpenVPN has not yet been setup. Performing a secure setup takes a very long "
@@ -3622,15 +3728,15 @@ msgid ""
"If the setup is interrupted, you may start it again."
msgstr ""
-#: plinth/modules/openvpn/templates/openvpn.html:55
+#: plinth/modules/openvpn/templates/openvpn.html:40
msgid "Start setup"
msgstr ""
-#: plinth/modules/openvpn/templates/openvpn.html:64
+#: plinth/modules/openvpn/templates/openvpn.html:49
msgid "OpenVPN setup is running"
msgstr ""
-#: plinth/modules/openvpn/templates/openvpn.html:68
+#: plinth/modules/openvpn/templates/openvpn.html:53
#, python-format
msgid ""
"To perform a secure setup, this process takes a very long time. Depending "
@@ -3638,11 +3744,11 @@ msgid ""
"interrupted, you may start it again."
msgstr ""
-#: plinth/modules/openvpn/templates/openvpn.html:87
+#: plinth/modules/openvpn/templates/openvpn.html:72
msgid "Profile"
msgstr ""
-#: plinth/modules/openvpn/templates/openvpn.html:90
+#: plinth/modules/openvpn/templates/openvpn.html:75
#, python-format
msgid ""
"To connect to %(box_name)s's VPN, you need to download a profile and feed it "
@@ -3651,32 +3757,24 @@ msgid ""
"clients and instructions on how to configure them."
msgstr ""
-#: plinth/modules/openvpn/templates/openvpn.html:100
+#: plinth/modules/openvpn/templates/openvpn.html:85
#, python-format
msgid "Profile is specific to each user of %(box_name)s. Keep it a secret."
msgstr ""
-#: plinth/modules/openvpn/templates/openvpn.html:111
+#: plinth/modules/openvpn/templates/openvpn.html:96
msgid "Download my profile"
msgstr ""
-#: plinth/modules/openvpn/views.py:133
+#: plinth/modules/openvpn/views.py:114
msgid "Setup completed."
msgstr ""
-#: plinth/modules/openvpn/views.py:135
+#: plinth/modules/openvpn/views.py:116
msgid "Setup failed."
msgstr ""
-#: plinth/modules/pagekite/__init__.py:39
-msgid "PageKite"
-msgstr ""
-
-#: plinth/modules/pagekite/__init__.py:41
-msgid "Public Visibility"
-msgstr ""
-
-#: plinth/modules/pagekite/__init__.py:45
+#: plinth/modules/pagekite/__init__.py:26
#, python-brace-format
msgid ""
"PageKite is a system for exposing {box_name} services when you don't have a "
@@ -3685,33 +3783,33 @@ msgid ""
"following situations:"
msgstr ""
-#: plinth/modules/pagekite/__init__.py:50
+#: plinth/modules/pagekite/__init__.py:31
#, python-brace-format
msgid "{box_name} is behind a restricted firewall."
msgstr ""
-#: plinth/modules/pagekite/__init__.py:53
+#: plinth/modules/pagekite/__init__.py:34
#, python-brace-format
msgid "{box_name} is connected to a (wireless) router which you don't control."
msgstr ""
-#: plinth/modules/pagekite/__init__.py:55
+#: plinth/modules/pagekite/__init__.py:36
msgid ""
"Your ISP does not provide you an external IP address and instead provides "
"Internet connection through NAT."
msgstr ""
-#: plinth/modules/pagekite/__init__.py:57
+#: plinth/modules/pagekite/__init__.py:38
msgid ""
"Your ISP does not provide you a static IP address and your IP address "
"changes every time you connect to Internet."
msgstr ""
-#: plinth/modules/pagekite/__init__.py:59
+#: plinth/modules/pagekite/__init__.py:40
msgid "Your ISP limits incoming connections."
msgstr ""
-#: plinth/modules/pagekite/__init__.py:61
+#: plinth/modules/pagekite/__init__.py:42
#, python-brace-format
msgid ""
"PageKite works around NAT, firewalls and IP address limitations by using a "
@@ -3720,138 +3818,146 @@ msgid ""
"the future it might be possible to use your buddy's {box_name} for this."
msgstr ""
-#: plinth/modules/pagekite/__init__.py:87
+#: plinth/modules/pagekite/__init__.py:62
+msgid "PageKite"
+msgstr ""
+
+#: plinth/modules/pagekite/__init__.py:64
+msgid "Public Visibility"
+msgstr ""
+
+#: plinth/modules/pagekite/__init__.py:74
msgid "PageKite Domain"
msgstr ""
-#: plinth/modules/pagekite/forms.py:66
+#: plinth/modules/pagekite/forms.py:51
msgid "Server domain"
msgstr ""
-#: plinth/modules/pagekite/forms.py:68
+#: plinth/modules/pagekite/forms.py:53
msgid ""
"Select your pagekite server. Set \"pagekite.net\" to use the default "
"pagekite.net server."
msgstr ""
-#: plinth/modules/pagekite/forms.py:71 plinth/modules/shadowsocks/forms.py:55
+#: plinth/modules/pagekite/forms.py:56 plinth/modules/shadowsocks/forms.py:40
msgid "Server port"
msgstr ""
-#: plinth/modules/pagekite/forms.py:72
+#: plinth/modules/pagekite/forms.py:57
msgid "Port of your pagekite server (default: 80)"
msgstr ""
-#: plinth/modules/pagekite/forms.py:74
+#: plinth/modules/pagekite/forms.py:59
msgid "Kite name"
msgstr ""
-#: plinth/modules/pagekite/forms.py:75
+#: plinth/modules/pagekite/forms.py:60
msgid "Example: mybox.pagekite.me"
msgstr ""
-#: plinth/modules/pagekite/forms.py:77
+#: plinth/modules/pagekite/forms.py:62
msgid "Invalid kite name"
msgstr ""
-#: plinth/modules/pagekite/forms.py:81
+#: plinth/modules/pagekite/forms.py:66
msgid "Kite secret"
msgstr ""
-#: plinth/modules/pagekite/forms.py:82
+#: plinth/modules/pagekite/forms.py:67
msgid ""
"A secret associated with the kite or the default secret for your account if "
"no secret is set on the kite."
msgstr ""
-#: plinth/modules/pagekite/forms.py:98
+#: plinth/modules/pagekite/forms.py:83
msgid "Kite details set"
msgstr ""
-#: plinth/modules/pagekite/forms.py:105
+#: plinth/modules/pagekite/forms.py:90
msgid "Pagekite server set"
msgstr ""
-#: plinth/modules/pagekite/forms.py:129
+#: plinth/modules/pagekite/forms.py:114
msgid "PageKite enabled"
msgstr ""
-#: plinth/modules/pagekite/forms.py:132
+#: plinth/modules/pagekite/forms.py:117
msgid "PageKite disabled"
msgstr ""
-#: plinth/modules/pagekite/forms.py:148
+#: plinth/modules/pagekite/forms.py:133
msgid "protocol"
msgstr ""
-#: plinth/modules/pagekite/forms.py:151
+#: plinth/modules/pagekite/forms.py:136
msgid "external (frontend) port"
msgstr ""
-#: plinth/modules/pagekite/forms.py:154
+#: plinth/modules/pagekite/forms.py:139
msgid "internal (freedombox) port"
msgstr ""
-#: plinth/modules/pagekite/forms.py:155
+#: plinth/modules/pagekite/forms.py:140
msgid "Enable Subdomains"
msgstr ""
-#: plinth/modules/pagekite/forms.py:189
+#: plinth/modules/pagekite/forms.py:174
msgid "Deleted custom service"
msgstr ""
-#: plinth/modules/pagekite/forms.py:222
+#: plinth/modules/pagekite/forms.py:207
msgid ""
"This service is available as a standard service. Please use the \"Standard "
"Services\" page to enable it."
msgstr ""
-#: plinth/modules/pagekite/forms.py:231
+#: plinth/modules/pagekite/forms.py:216
msgid "Added custom service"
msgstr ""
-#: plinth/modules/pagekite/forms.py:234
+#: plinth/modules/pagekite/forms.py:219
msgid "This service already exists"
msgstr ""
-#: plinth/modules/pagekite/templates/pagekite_configure.html:47
+#: plinth/modules/pagekite/templates/pagekite_configure.html:32
msgid "Custom Services"
msgstr ""
-#: plinth/modules/pagekite/templates/pagekite_configure.html:50
-#: plinth/modules/pagekite/templates/pagekite_configure.html:52
+#: plinth/modules/pagekite/templates/pagekite_configure.html:35
+#: plinth/modules/pagekite/templates/pagekite_configure.html:37
msgid "Add Custom Service"
msgstr ""
-#: plinth/modules/pagekite/templates/pagekite_configure.html:57
+#: plinth/modules/pagekite/templates/pagekite_configure.html:42
msgid "Existing custom services"
msgstr ""
-#: plinth/modules/pagekite/templates/pagekite_configure.html:71
+#: plinth/modules/pagekite/templates/pagekite_configure.html:56
#, python-format
msgid "connected to %(backend_host)s:%(backend_port)s"
msgstr ""
-#: plinth/modules/pagekite/templates/pagekite_configure.html:83
+#: plinth/modules/pagekite/templates/pagekite_configure.html:68
msgid "Delete this service"
msgstr ""
-#: plinth/modules/pagekite/templates/pagekite_custom_services.html:30
+#: plinth/modules/pagekite/templates/pagekite_custom_services.html:15
msgid "Add custom PageKite service"
msgstr ""
-#: plinth/modules/pagekite/templates/pagekite_custom_services.html:32
+#: plinth/modules/pagekite/templates/pagekite_custom_services.html:17
msgid ""
"Warning:
Your PageKite frontend server may not support all the "
"protocol/port combinations that you are able to define here. For example, "
"HTTPS on ports other than 443 is known to cause problems."
msgstr ""
-#: plinth/modules/pagekite/templates/pagekite_firstboot.html:26
+#: plinth/modules/pagekite/templates/pagekite_firstboot.html:11
msgid "Setup a freedombox.me subdomain with your voucher"
msgstr ""
-#: plinth/modules/pagekite/templates/pagekite_firstboot.html:30
+#: plinth/modules/pagekite/templates/pagekite_firstboot.html:15
#, python-format
msgid ""
"Skip this step if you do not have a "
@@ -3859,134 +3965,125 @@ msgid ""
"credentials."
msgstr ""
-#: plinth/modules/pagekite/templates/pagekite_firstboot.html:38
+#: plinth/modules/pagekite/templates/pagekite_firstboot.html:23
msgid ""
"You can use an already redeemed voucher but it will only work with the "
"initially registered subdomain."
msgstr ""
-#: plinth/modules/pagekite/templates/pagekite_firstboot.html:52
+#: plinth/modules/pagekite/templates/pagekite_firstboot.html:37
msgid "Register"
msgstr ""
-#: plinth/modules/pagekite/templates/pagekite_firstboot.html:56
+#: plinth/modules/pagekite/templates/pagekite_firstboot.html:41
msgid "Skip Registration"
msgstr ""
-#: plinth/modules/pagekite/templates/pagekite_standard_services.html:40
+#: plinth/modules/pagekite/templates/pagekite_standard_services.html:25
msgid "Warning:
"
msgstr ""
-#: plinth/modules/pagekite/templates/pagekite_standard_services.html:43
+#: plinth/modules/pagekite/templates/pagekite_standard_services.html:28
msgid ""
"Published services are accessible and attackable from the evil Internet."
msgstr ""
-#: plinth/modules/pagekite/templates/pagekite_standard_services.html:58
+#: plinth/modules/pagekite/templates/pagekite_standard_services.html:43
msgid "Save Services"
msgstr ""
-#: plinth/modules/pagekite/utils.py:57
+#: plinth/modules/pagekite/utils.py:42
msgid "Web Server (HTTP)"
msgstr ""
-#: plinth/modules/pagekite/utils.py:59
+#: plinth/modules/pagekite/utils.py:44
#, python-brace-format
msgid "Site will be available at http://{0}"
msgstr ""
-#: plinth/modules/pagekite/utils.py:71
+#: plinth/modules/pagekite/utils.py:56
msgid "Web Server (HTTPS)"
msgstr ""
-#: plinth/modules/pagekite/utils.py:73
+#: plinth/modules/pagekite/utils.py:58
#, python-brace-format
msgid "Site will be available at https://{0}"
msgstr ""
-#: plinth/modules/pagekite/utils.py:85
+#: plinth/modules/pagekite/utils.py:70
msgid "Secure Shell (SSH)"
msgstr ""
-#: plinth/modules/pagekite/utils.py:87
+#: plinth/modules/pagekite/utils.py:72
msgid ""
"See SSH client setup instructions"
msgstr ""
-#: plinth/modules/power/__init__.py:29 plinth/modules/power/views.py:55
-#: plinth/modules/power/views.py:74
-msgid "Power"
-msgstr ""
-
-#: plinth/modules/power/__init__.py:31
+#: plinth/modules/power/__init__.py:16
msgid "Restart or shut down the system."
msgstr ""
-#: plinth/modules/power/templates/power.html:28
+#: plinth/modules/power/__init__.py:31
+msgid "Power"
+msgstr ""
+
+#: plinth/modules/power/templates/power.html:13
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
+#: plinth/modules/power/templates/power.html:22
msgid "Restart »"
msgstr ""
-#: plinth/modules/power/templates/power.html:40
+#: plinth/modules/power/templates/power.html:25
msgid "Shut Down »"
msgstr ""
-#: plinth/modules/power/templates/power_restart.html:32
+#: plinth/modules/power/templates/power_restart.html:17
msgid ""
"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."
msgstr ""
-#: plinth/modules/power/templates/power_restart.html:49
+#: plinth/modules/power/templates/power_restart.html:34
msgid ""
"Currently an installation or upgrade is running. Consider waiting until it's "
"finished before restarting."
msgstr ""
-#: plinth/modules/power/templates/power_restart.html:63
-#: plinth/modules/power/templates/power_restart.html:66
+#: plinth/modules/power/templates/power_restart.html:48
+#: plinth/modules/power/templates/power_restart.html:51
msgid "Restart Now"
msgstr ""
-#: plinth/modules/power/templates/power_shutdown.html:32
+#: plinth/modules/power/templates/power_shutdown.html:17
msgid ""
"Are you sure you want to shut down? You will not be able to access this web "
"interface after shut down."
msgstr ""
-#: plinth/modules/power/templates/power_shutdown.html:48
+#: plinth/modules/power/templates/power_shutdown.html:33
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:62
-#: plinth/modules/power/templates/power_shutdown.html:65
+#: plinth/modules/power/templates/power_shutdown.html:47
+#: plinth/modules/power/templates/power_shutdown.html:50
msgid "Shut Down Now"
msgstr ""
-#: plinth/modules/privoxy/__init__.py:43
-msgid "Privoxy"
-msgstr ""
-
-#: plinth/modules/privoxy/__init__.py:47
-msgid "Web Proxy"
-msgstr ""
-
-#: plinth/modules/privoxy/__init__.py:50
+#: plinth/modules/privoxy/__init__.py:29
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:55
+#: plinth/modules/privoxy/__init__.py:34
#, python-brace-format
msgid ""
"You can use Privoxy by modifying your browser proxy settings to your "
@@ -3996,20 +4093,20 @@ msgid ""
"\">http://p.p."
msgstr ""
-#: plinth/modules/privoxy/__init__.py:141
+#: plinth/modules/privoxy/__init__.py:57
+msgid "Privoxy"
+msgstr ""
+
+#: plinth/modules/privoxy/__init__.py:58
+msgid "Web Proxy"
+msgstr ""
+
+#: plinth/modules/privoxy/__init__.py:121
#, python-brace-format
msgid "Access {url} with proxy {proxy} on tcp{kind}"
msgstr ""
-#: plinth/modules/quassel/__init__.py:45 plinth/modules/quassel/manifest.py:25
-msgid "Quassel"
-msgstr ""
-
-#: plinth/modules/quassel/__init__.py:49
-msgid "IRC Client"
-msgstr ""
-
-#: plinth/modules/quassel/__init__.py:53
+#: plinth/modules/quassel/__init__.py:32
#, python-brace-format
msgid ""
"Quassel is an IRC application that is split into two parts, a \"core\" and a "
@@ -4020,7 +4117,7 @@ msgid ""
"connect and disconnect from it."
msgstr ""
-#: plinth/modules/quassel/__init__.py:60
+#: plinth/modules/quassel/__init__.py:39
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."
msgstr ""
-#: plinth/modules/quassel/forms.py:38
+#: plinth/modules/quassel/__init__.py:62 plinth/modules/quassel/manifest.py:10
+msgid "Quassel"
+msgstr ""
+
+#: plinth/modules/quassel/__init__.py:63
+msgid "IRC Client"
+msgstr ""
+
+#: plinth/modules/quassel/forms.py:23
msgid "TLS domain"
msgstr ""
-#: plinth/modules/quassel/forms.py:40
+#: plinth/modules/quassel/forms.py:25
msgid ""
"Select a domain to use TLS with. If the list is empty, please configure at "
"least one domain with certificates."
msgstr ""
-#: plinth/modules/quassel/manifest.py:49
+#: plinth/modules/quassel/manifest.py:34
msgid "Quasseldroid"
msgstr ""
-#: plinth/modules/radicale/__init__.py:45
-#: plinth/modules/radicale/manifest.py:90
-msgid "Radicale"
-msgstr ""
-
-#: plinth/modules/radicale/__init__.py:49
-msgid "Calendar and Addressbook"
-msgstr ""
-
-#: plinth/modules/radicale/__init__.py:53
+#: plinth/modules/radicale/__init__.py:32
#, python-brace-format
msgid ""
"Radicale is a CalDAV and CardDAV server. It allows synchronization and "
@@ -4060,61 +4156,70 @@ msgid ""
"can be accessed by any user with a {box_name} login."
msgstr ""
-#: plinth/modules/radicale/__init__.py:58
+#: plinth/modules/radicale/__init__.py:37
msgid ""
"Radicale provides a basic web interface, which only supports creating new "
"calendars and addressbooks. It does not support adding events or contacts, "
"which must be done using a separate client."
msgstr ""
-#: plinth/modules/radicale/forms.py:30
+#: plinth/modules/radicale/__init__.py:62
+#: plinth/modules/radicale/manifest.py:75
+msgid "Radicale"
+msgstr ""
+
+#: plinth/modules/radicale/__init__.py:63
+msgid "Calendar and Addressbook"
+msgstr ""
+
+#: plinth/modules/radicale/forms.py:15
msgid "Only the owner of a calendar/addressbook can view or make changes."
msgstr ""
-#: plinth/modules/radicale/forms.py:34
+#: plinth/modules/radicale/forms.py:19
#, python-brace-format
msgid ""
"Any user with a {box_name} login can view any calendar/addressbook, but only "
"the owner can make changes."
msgstr ""
-#: plinth/modules/radicale/forms.py:39
+#: plinth/modules/radicale/forms.py:24
#, python-brace-format
msgid ""
"Any user with a {box_name} login can view or make changes to any calendar/"
"addressbook."
msgstr ""
-#: plinth/modules/radicale/manifest.py:25
+#: plinth/modules/radicale/manifest.py:10
msgid "DAVx5"
msgstr ""
-#: plinth/modules/radicale/manifest.py:27
+#: plinth/modules/radicale/manifest.py:12
msgid ""
"Enter the URL of the Radicale server (e.g. https://) and your user name. DAVx5 will show all existing calendars and "
"address books and you can create new."
msgstr ""
-#: plinth/modules/radicale/manifest.py:44
+#: plinth/modules/radicale/manifest.py:29
msgid "GNOME Calendar"
msgstr ""
-#: plinth/modules/radicale/manifest.py:52
+#: plinth/modules/radicale/manifest.py:37
msgid "Mozilla Thunderbird"
msgstr ""
-#: plinth/modules/radicale/manifest.py:72
+#: plinth/modules/radicale/manifest.py:57
msgid "Evolution"
msgstr ""
-#: plinth/modules/radicale/manifest.py:74
+#: plinth/modules/radicale/manifest.py:59
msgid ""
"Evolution is a personal information management application that provides "
"integrated mail, calendaring and address book functionality."
msgstr ""
-#: plinth/modules/radicale/manifest.py:78
+#: plinth/modules/radicale/manifest.py:63
msgid ""
"In Evolution add a new calendar and address book respectively with WebDAV. "
"Enter the URL of the Radicale server (e.g. https:///roundcube. Provide the username and password of the email account "
@@ -4153,7 +4249,7 @@ msgid ""
"code>."
msgstr ""
-#: plinth/modules/roundcube/__init__.py:53
+#: plinth/modules/roundcube/__init__.py:32
msgid ""
"For Gmail, username will be your Gmail address, password will be your Google "
"account password and server will be imaps://imap.gmail.com. "
@@ -4163,17 +4259,22 @@ msgid ""
"a>)."
msgstr ""
-#: plinth/modules/samba/__init__.py:46
-msgid "Samba"
+#: plinth/modules/roundcube/__init__.py:54
+#: plinth/modules/roundcube/manifest.py:9
+msgid "Roundcube"
msgstr ""
-#: plinth/modules/samba/__init__.py:53
+#: plinth/modules/roundcube/__init__.py:55
+msgid "Email Client"
+msgstr ""
+
+#: plinth/modules/samba/__init__.py:32
msgid ""
"Samba allows to share files and folders between FreedomBox and other "
"computers in your local network."
msgstr ""
-#: plinth/modules/samba/__init__.py:56
+#: plinth/modules/samba/__init__.py:35
#, python-brace-format
msgid ""
"After installation, you can choose which disks to use for sharing. Enabled "
@@ -4182,53 +4283,57 @@ msgid ""
"There are three types of shares you can choose from: "
msgstr ""
-#: plinth/modules/samba/__init__.py:61
+#: plinth/modules/samba/__init__.py:40
msgid "Open share - accessible to everyone in your local network."
msgstr ""
-#: plinth/modules/samba/__init__.py:62
+#: plinth/modules/samba/__init__.py:41
msgid ""
"Group share - accessible only to FreedomBox users who are in the freedombox-"
"share group."
msgstr ""
-#: plinth/modules/samba/__init__.py:64
+#: plinth/modules/samba/__init__.py:43
msgid ""
"Home share - every user in the freedombox-share group can have their own "
"private space."
msgstr ""
-#: plinth/modules/samba/__init__.py:68
+#: plinth/modules/samba/__init__.py:47
msgid "Access to the private shares"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:39
-#: plinth/modules/samba/templates/samba.html:50
+#: plinth/modules/samba/__init__.py:61
+msgid "Samba"
+msgstr ""
+
+#: plinth/modules/samba/templates/samba.html:24
+#: plinth/modules/samba/templates/samba.html:35
msgid "Shares"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:41
+#: plinth/modules/samba/templates/samba.html:26
msgid ""
"Note: Only specially created directories will be shared on selected disks, "
"not the whole disk."
msgstr ""
-#: plinth/modules/samba/templates/samba.html:49
+#: plinth/modules/samba/templates/samba.html:34
#, fuzzy
#| msgid "Domain Name"
msgid "Disk Name"
msgstr "Доменне ім’я"
-#: plinth/modules/samba/templates/samba.html:51
-#: plinth/modules/storage/templates/storage.html:44
+#: plinth/modules/samba/templates/samba.html:36
+#: plinth/modules/storage/templates/storage.html:29
msgid "Used"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:72
+#: plinth/modules/samba/templates/samba.html:57
msgid "VFAT partitions are not supported"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:103
+#: plinth/modules/samba/templates/samba.html:88
#, python-format
msgid ""
"You can find additional information about disks on the users module page."
msgstr ""
-#: plinth/modules/samba/templates/samba.html:109
+#: plinth/modules/samba/templates/samba.html:94
msgid "Users who can currently access group and home shares"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:113
+#: plinth/modules/samba/templates/samba.html:98
msgid ""
"Users needing to re-enter their password on the password change page to "
"access group and home shares"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:118
+#: plinth/modules/samba/templates/samba.html:103
msgid "Unavailable Shares"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:120
+#: plinth/modules/samba/templates/samba.html:105
msgid ""
"Shares that are configured but the disk is not available. If the disk is "
"plugged back in, sharing will be automatically enabled."
msgstr ""
-#: plinth/modules/samba/templates/samba.html:128
+#: plinth/modules/samba/templates/samba.html:113
msgid "Share name"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:129
+#: plinth/modules/samba/templates/samba.html:114
#, fuzzy
#| msgid "Encryption"
msgid "Action"
msgstr "Шифрування"
-#: plinth/modules/samba/views.py:61 plinth/modules/storage/forms.py:164
+#: plinth/modules/samba/views.py:43 plinth/modules/storage/forms.py:149
msgid "Open Share"
msgstr ""
-#: plinth/modules/samba/views.py:62 plinth/modules/storage/forms.py:162
+#: plinth/modules/samba/views.py:44 plinth/modules/storage/forms.py:147
msgid "Group Share"
msgstr ""
-#: plinth/modules/samba/views.py:63
+#: plinth/modules/samba/views.py:45
msgid "Home Share"
msgstr ""
-#: plinth/modules/samba/views.py:96
+#: plinth/modules/samba/views.py:78
msgid "Share enabled."
msgstr ""
-#: plinth/modules/samba/views.py:101
+#: plinth/modules/samba/views.py:83
#, fuzzy, python-brace-format
#| msgid "Error installing application: {error}"
msgid "Error enabling share: {error_message}"
msgstr "Помилка при встановлені застосунку: {error}"
-#: plinth/modules/samba/views.py:106
+#: plinth/modules/samba/views.py:88
msgid "Share disabled."
msgstr ""
-#: plinth/modules/samba/views.py:111
+#: plinth/modules/samba/views.py:93
#, fuzzy, python-brace-format
#| msgid "Error installing application: {error}"
msgid "Error disabling share: {error_message}"
msgstr "Помилка при встановлені застосунку: {error}"
-#: plinth/modules/searx/__init__.py:41 plinth/modules/searx/manifest.py:24
-msgid "Searx"
-msgstr ""
-
-#: plinth/modules/searx/__init__.py:45
-msgid "Web Search"
-msgstr ""
-
-#: plinth/modules/searx/__init__.py:48
+#: plinth/modules/searx/__init__.py:25
msgid ""
"Searx is a privacy-respecting Internet metasearch engine. It aggregrates and "
"displays results from multiple search engines."
msgstr ""
-#: plinth/modules/searx/__init__.py:50
+#: plinth/modules/searx/__init__.py:27
msgid ""
"Searx can be used to avoid tracking and profiling by search engines. It "
"stores no cookies by default."
msgstr ""
-#: plinth/modules/searx/__init__.py:54
+#: plinth/modules/searx/__init__.py:31
msgid "Search the web"
msgstr ""
-#: plinth/modules/searx/forms.py:30
+#: plinth/modules/searx/__init__.py:47 plinth/modules/searx/manifest.py:9
+msgid "Searx"
+msgstr ""
+
+#: plinth/modules/searx/__init__.py:48
+msgid "Web Search"
+msgstr ""
+
+#: plinth/modules/searx/forms.py:15
msgid "Safe Search"
msgstr ""
-#: plinth/modules/searx/forms.py:31
+#: plinth/modules/searx/forms.py:16
msgid "Select the default family filter to apply to your search results."
msgstr ""
-#: plinth/modules/searx/forms.py:32
+#: plinth/modules/searx/forms.py:17
msgid "None"
msgstr ""
-#: plinth/modules/searx/forms.py:32
+#: plinth/modules/searx/forms.py:17
msgid "Moderate"
msgstr ""
-#: plinth/modules/searx/forms.py:32
+#: plinth/modules/searx/forms.py:17
msgid "Strict"
msgstr ""
-#: plinth/modules/searx/forms.py:35
+#: plinth/modules/searx/forms.py:20
msgid "Allow Public Access"
msgstr ""
-#: plinth/modules/searx/forms.py:36
+#: plinth/modules/searx/forms.py:21
msgid "Allow this application to be used by anyone who can reach it."
msgstr ""
-#: plinth/modules/searx/views.py:59 plinth/modules/searx/views.py:70
-#: plinth/modules/tor/views.py:149 plinth/modules/tor/views.py:176
+#: plinth/modules/searx/views.py:39 plinth/modules/searx/views.py:50
+#: plinth/modules/tor/views.py:130 plinth/modules/tor/views.py:157
msgid "Configuration updated."
msgstr ""
-#: plinth/modules/security/forms.py:28
+#: plinth/modules/security/forms.py:13
msgid "Restrict console logins (recommended)"
msgstr ""
-#: plinth/modules/security/forms.py:29
+#: plinth/modules/security/forms.py:14
msgid ""
"When this option is enabled, only users in the \"admin\" group will be able "
"to log in to console or via SSH. Console users may be able to access some "
"services without further authorization."
msgstr ""
-#: plinth/modules/security/forms.py:34
+#: plinth/modules/security/forms.py:19
msgid "Fail2Ban (recommended)"
msgstr ""
-#: plinth/modules/security/forms.py:35
+#: plinth/modules/security/forms.py:20
msgid ""
"When this option is enabled, Fail2Ban will limit brute force break-in "
"attempts to the SSH server and other enabled password protected internet-"
"services."
msgstr ""
-#: plinth/modules/security/templates/security.html:26
-#: plinth/modules/security/templates/security.html:28
+#: plinth/modules/security/templates/security.html:11
+#: plinth/modules/security/templates/security.html:13
msgid "Show security report"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:25
-#: plinth/modules/security/views.py:87
+#: plinth/modules/security/templates/security_report.html:10
+#: plinth/modules/security/views.py:71
msgid "Security Report"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:27
+#: plinth/modules/security/templates/security_report.html:12
#, python-format
msgid ""
"The installed version of FreedomBox has %(count)s reported security "
"vulnerabilities."
msgstr ""
-#: plinth/modules/security/templates/security_report.html:33
+#: plinth/modules/security/templates/security_report.html:18
msgid ""
"The following table lists the current reported number, and historical count, "
"of security vulnerabilities for each installed app."
msgstr ""
-#: plinth/modules/security/templates/security_report.html:39
+#: plinth/modules/security/templates/security_report.html:24
msgid ""
"For apps that provide services, the \"Sandboxed\" column shows whether "
"sandboxing features are in use. Sandboxing mitigates the impact of a "
"potentially compromised app to the rest of the system."
msgstr ""
-#: plinth/modules/security/templates/security_report.html:46
+#: plinth/modules/security/templates/security_report.html:31
msgid ""
"\"Sandbox Coverage\" is a score of how effectively the service is isolated "
"from the rest of the system. It is only displayed while the service is "
"running."
msgstr ""
-#: plinth/modules/security/templates/security_report.html:55
+#: plinth/modules/security/templates/security_report.html:40
#, fuzzy
#| msgid "Name"
msgid "App Name"
msgstr "Ім’я"
-#: plinth/modules/security/templates/security_report.html:56
+#: plinth/modules/security/templates/security_report.html:41
msgid "Current Vulnerabilities"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:57
+#: plinth/modules/security/templates/security_report.html:42
msgid "Past Vulnerabilities"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:58
+#: plinth/modules/security/templates/security_report.html:43
msgid "Sandboxed"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:59
+#: plinth/modules/security/templates/security_report.html:44
msgid "Sandbox Coverage"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:70
+#: plinth/modules/security/templates/security_report.html:55
msgid "N/A"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:72
+#: plinth/modules/security/templates/security_report.html:57
msgid "Yes"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:74
+#: plinth/modules/security/templates/security_report.html:59
msgid "No"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:81
+#: plinth/modules/security/templates/security_report.html:66
msgid "Not running"
msgstr ""
-#: plinth/modules/security/views.py:69
+#: plinth/modules/security/views.py:53
#, python-brace-format
msgid "Error setting restricted access: {exception}"
msgstr ""
-#: plinth/modules/security/views.py:72
+#: plinth/modules/security/views.py:56
msgid "Updated security configuration"
msgstr ""
-#: plinth/modules/shaarli/__init__.py:34 plinth/modules/shaarli/manifest.py:23
-msgid "Shaarli"
-msgstr ""
-
-#: plinth/modules/shaarli/__init__.py:36
-msgid "Bookmarks"
-msgstr ""
-
-#: plinth/modules/shaarli/__init__.py:39
+#: plinth/modules/shaarli/__init__.py:20
msgid "Shaarli allows you to save and share bookmarks."
msgstr ""
-#: plinth/modules/shaarli/__init__.py:40
+#: plinth/modules/shaarli/__init__.py:21
msgid ""
"When enabled, Shaarli will be available from /shaarli path on the web server. Note that Shaarli "
@@ -4481,22 +4578,22 @@ msgid ""
"initial visit."
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:35
-msgid "Shadowsocks"
+#: plinth/modules/shaarli/__init__.py:39 plinth/modules/shaarli/manifest.py:8
+msgid "Shaarli"
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:39
-msgid "Socks5 Proxy"
+#: plinth/modules/shaarli/__init__.py:40
+msgid "Bookmarks"
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:46
+#: plinth/modules/shadowsocks/__init__.py:25
msgid ""
"Shadowsocks is a lightweight and secure SOCKS5 proxy, designed to protect "
"your Internet traffic. It can be used to bypass Internet filtering and "
"censorship."
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:50
+#: plinth/modules/shadowsocks/__init__.py:29
#, python-brace-format
msgid ""
"Your {box_name} can run a Shadowsocks client, that can connect to a "
@@ -4505,149 +4602,153 @@ msgid ""
"the Shadowsocks server."
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:55
+#: plinth/modules/shadowsocks/__init__.py:34
msgid ""
"To use Shadowsocks after setup, set the SOCKS5 proxy URL in your device, "
"browser or application to http://freedombox_address:1080/"
msgstr ""
-#: plinth/modules/shadowsocks/forms.py:28
-#: plinth/modules/shadowsocks/forms.py:29
+#: plinth/modules/shadowsocks/__init__.py:50
+msgid "Shadowsocks"
+msgstr ""
+
+#: plinth/modules/shadowsocks/__init__.py:52
+msgid "Socks5 Proxy"
+msgstr ""
+
+#: plinth/modules/shadowsocks/forms.py:13
+#: plinth/modules/shadowsocks/forms.py:14
msgid "Recommended"
msgstr ""
-#: plinth/modules/shadowsocks/forms.py:52
+#: plinth/modules/shadowsocks/forms.py:37
msgid "Server"
msgstr ""
-#: plinth/modules/shadowsocks/forms.py:53
+#: plinth/modules/shadowsocks/forms.py:38
msgid "Server hostname or IP address"
msgstr ""
-#: plinth/modules/shadowsocks/forms.py:57
+#: plinth/modules/shadowsocks/forms.py:42
msgid "Server port number"
msgstr ""
-#: plinth/modules/shadowsocks/forms.py:60
+#: plinth/modules/shadowsocks/forms.py:45
msgid "Password used to encrypt data. Must match server password."
msgstr ""
-#: plinth/modules/shadowsocks/forms.py:65
+#: plinth/modules/shadowsocks/forms.py:50
msgid "Encryption method. Must match setting on server."
msgstr ""
-#: plinth/modules/sharing/__init__.py:34
-msgid "Sharing"
-msgstr ""
-
-#: plinth/modules/sharing/__init__.py:38
+#: plinth/modules/sharing/__init__.py:21
#, python-brace-format
msgid ""
"Sharing allows you to share files and folders on your {box_name} over the "
"web with chosen groups of users."
msgstr ""
-#: plinth/modules/sharing/forms.py:33
+#: plinth/modules/sharing/__init__.py:38
+msgid "Sharing"
+msgstr ""
+
+#: plinth/modules/sharing/forms.py:18
msgid "Name of the share"
msgstr ""
-#: plinth/modules/sharing/forms.py:35
+#: plinth/modules/sharing/forms.py:20
msgid ""
"A lowercase alpha-numeric string that uniquely identifies a share. Example: "
"media."
msgstr ""
-#: plinth/modules/sharing/forms.py:39
+#: plinth/modules/sharing/forms.py:24
msgid "Path to share"
msgstr ""
-#: plinth/modules/sharing/forms.py:40
+#: plinth/modules/sharing/forms.py:25
msgid "Disk path to a folder on this server that you intend to share."
msgstr ""
-#: plinth/modules/sharing/forms.py:43
+#: plinth/modules/sharing/forms.py:28
msgid "Public share"
msgstr ""
-#: plinth/modules/sharing/forms.py:44
+#: plinth/modules/sharing/forms.py:29
msgid "Make files in this folder available to anyone with the link."
msgstr ""
-#: plinth/modules/sharing/forms.py:48
+#: plinth/modules/sharing/forms.py:33
msgid "User groups that can read the files in the share"
msgstr ""
-#: plinth/modules/sharing/forms.py:50
+#: plinth/modules/sharing/forms.py:35
msgid ""
"Users of the selected user groups will be able to read the files in the "
"share."
msgstr ""
-#: plinth/modules/sharing/forms.py:67
+#: plinth/modules/sharing/forms.py:52
msgid "A share with this name already exists."
msgstr ""
-#: plinth/modules/sharing/forms.py:78
+#: plinth/modules/sharing/forms.py:63
msgid "Shares should be either public or shared with at least one group"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:39
-#: plinth/modules/sharing/templates/sharing.html:42
+#: plinth/modules/sharing/templates/sharing.html:24
+#: plinth/modules/sharing/templates/sharing.html:27
msgid "Add share"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:47
+#: plinth/modules/sharing/templates/sharing.html:32
msgid "No shares currently configured."
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:53
+#: plinth/modules/sharing/templates/sharing.html:38
msgid "Disk Path"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:54
+#: plinth/modules/sharing/templates/sharing.html:39
msgid "Shared Over"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:55
+#: plinth/modules/sharing/templates/sharing.html:40
msgid "With Groups"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:73
+#: plinth/modules/sharing/templates/sharing.html:58
msgid "public access"
msgstr ""
-#: plinth/modules/sharing/views.py:55
+#: plinth/modules/sharing/views.py:39
msgid "Share added."
msgstr ""
-#: plinth/modules/sharing/views.py:60
+#: plinth/modules/sharing/views.py:44
msgid "Add Share"
msgstr ""
-#: plinth/modules/sharing/views.py:75
+#: plinth/modules/sharing/views.py:59
msgid "Share edited."
msgstr ""
-#: plinth/modules/sharing/views.py:80
+#: plinth/modules/sharing/views.py:64
msgid "Edit Share"
msgstr ""
-#: plinth/modules/sharing/views.py:111
+#: plinth/modules/sharing/views.py:95
msgid "Share deleted."
msgstr ""
-#: plinth/modules/snapshot/__init__.py:37
-msgid "Storage Snapshots"
-msgstr ""
-
-#: plinth/modules/snapshot/__init__.py:40
+#: plinth/modules/snapshot/__init__.py:23
msgid ""
"Snapshots allows creating and managing btrfs file system snapshots. These "
"can be used to roll back the system to a previously known good state in case "
"of unwanted changes to the system."
msgstr ""
-#: plinth/modules/snapshot/__init__.py:44
+#: plinth/modules/snapshot/__init__.py:27
#, no-python-format
msgid ""
"Snapshots are taken periodically (called timeline snapshots) and also before "
@@ -4655,192 +4756,192 @@ msgid ""
"cleaned up according to the settings below."
msgstr ""
-#: plinth/modules/snapshot/__init__.py:47
+#: plinth/modules/snapshot/__init__.py:30
msgid ""
"Snapshots currently work on btrfs file systems only and on the root "
"partition only. Snapshots are not a replacement for backups since they can only be stored on the same partition. "
msgstr ""
-#: plinth/modules/snapshot/forms.py:27
+#: plinth/modules/snapshot/__init__.py:52
+msgid "Storage Snapshots"
+msgstr ""
+
+#: plinth/modules/snapshot/forms.py:12
msgid "Free Disk Space to Maintain"
msgstr ""
-#: plinth/modules/snapshot/forms.py:28
+#: plinth/modules/snapshot/forms.py:13
msgid ""
"Maintain this percentage of free space on the disk. If free space falls "
"below this value, older snapshots are removed until this much free space is "
"regained. The default value is 30%."
msgstr ""
-#: plinth/modules/snapshot/forms.py:35
+#: plinth/modules/snapshot/forms.py:20
msgid "Timeline Snapshots"
msgstr ""
-#: plinth/modules/snapshot/forms.py:36
+#: plinth/modules/snapshot/forms.py:21
msgid ""
"Enable or disable timeline snapshots (hourly, daily, monthly and yearly)."
msgstr ""
-#: plinth/modules/snapshot/forms.py:41
+#: plinth/modules/snapshot/forms.py:26
msgid "Software Installation Snapshots"
msgstr ""
-#: plinth/modules/snapshot/forms.py:42
+#: plinth/modules/snapshot/forms.py:27
msgid "Enable or disable snapshots before and after software installation"
msgstr ""
-#: plinth/modules/snapshot/forms.py:47
+#: plinth/modules/snapshot/forms.py:32
msgid "Hourly Snapshots Limit"
msgstr ""
-#: plinth/modules/snapshot/forms.py:48
+#: plinth/modules/snapshot/forms.py:33
msgid "Keep a maximum of this many hourly snapshots."
msgstr ""
-#: plinth/modules/snapshot/forms.py:51
+#: plinth/modules/snapshot/forms.py:36
msgid "Daily Snapshots Limit"
msgstr ""
-#: plinth/modules/snapshot/forms.py:52
+#: plinth/modules/snapshot/forms.py:37
msgid "Keep a maximum of this many daily snapshots."
msgstr ""
-#: plinth/modules/snapshot/forms.py:55
+#: plinth/modules/snapshot/forms.py:40
msgid "Weekly Snapshots Limit"
msgstr ""
-#: plinth/modules/snapshot/forms.py:56
+#: plinth/modules/snapshot/forms.py:41
msgid "Keep a maximum of this many weekly snapshots."
msgstr ""
-#: plinth/modules/snapshot/forms.py:59
+#: plinth/modules/snapshot/forms.py:44
msgid "Monthly Snapshots Limit"
msgstr ""
-#: plinth/modules/snapshot/forms.py:60
+#: plinth/modules/snapshot/forms.py:45
msgid "Keep a maximum of this many monthly snapshots."
msgstr ""
-#: plinth/modules/snapshot/forms.py:63
+#: plinth/modules/snapshot/forms.py:48
msgid "Yearly Snapshots Limit"
msgstr ""
-#: plinth/modules/snapshot/forms.py:64
+#: plinth/modules/snapshot/forms.py:49
msgid ""
"Keep a maximum of this many yearly snapshots. The default value is 0 "
"(disabled)."
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:27
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:12
msgid "Delete the following snapshots permanently?"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:31
-#: plinth/modules/snapshot/templates/snapshot_manage.html:43
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:39
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:16
+#: plinth/modules/snapshot/templates/snapshot_manage.html:28
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:24
msgid "Number"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:32
-#: plinth/modules/snapshot/templates/snapshot_manage.html:44
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:40
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:17
+#: plinth/modules/snapshot/templates/snapshot_manage.html:29
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:25
msgid "Date"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:52
-#: plinth/modules/snapshot/templates/snapshot_manage.html:37
-#: plinth/modules/snapshot/views.py:196
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:37
+#: plinth/modules/snapshot/templates/snapshot_manage.html:22
+#: plinth/modules/snapshot/views.py:175
msgid "Delete Snapshots"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_manage.html:33
+#: plinth/modules/snapshot/templates/snapshot_manage.html:18
msgid "Create Snapshot"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_manage.html:46
+#: plinth/modules/snapshot/templates/snapshot_manage.html:31
msgid "Rollback"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_manage.html:57
+#: plinth/modules/snapshot/templates/snapshot_manage.html:42
msgid "active"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_manage.html:66
+#: plinth/modules/snapshot/templates/snapshot_manage.html:51
#, python-format
msgid "Rollback to snapshot #%(number)s"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_not_supported.html:26
+#: plinth/modules/snapshot/templates/snapshot_not_supported.html:11
#, python-format
msgid ""
"Your have a filesystem of type %(fs_type)s. Snapshots are "
"currently only available on %(types_supported)s filesystems."
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:27
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:12
msgid "Roll back the system to this snapshot?"
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:30
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:15
msgid ""
"A new snapshot with the current state of the file system will be "
"automatically created. You will be able to undo a rollback by reverting to "
"the newly created snapshot."
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:57
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:42
#, python-format
msgid "Rollback to Snapshot #%(number)s"
msgstr ""
-#: plinth/modules/snapshot/views.py:45
+#: plinth/modules/snapshot/views.py:30
msgid "Manage Snapshots"
msgstr ""
-#: plinth/modules/snapshot/views.py:98
+#: plinth/modules/snapshot/views.py:79
msgid "Created snapshot."
msgstr ""
-#: plinth/modules/snapshot/views.py:156
+#: plinth/modules/snapshot/views.py:135
msgid "Storage snapshots configuration updated"
msgstr ""
-#: plinth/modules/snapshot/views.py:160 plinth/modules/tor/views.py:79
+#: plinth/modules/snapshot/views.py:139 plinth/modules/tor/views.py:60
#, python-brace-format
msgid "Action error: {0} [{1}] [{2}]"
msgstr ""
-#: plinth/modules/snapshot/views.py:175
+#: plinth/modules/snapshot/views.py:154
msgid "Deleted all snapshots"
msgstr ""
-#: plinth/modules/snapshot/views.py:179
+#: plinth/modules/snapshot/views.py:158
msgid "Deleted selected snapshots"
msgstr ""
-#: plinth/modules/snapshot/views.py:184
+#: plinth/modules/snapshot/views.py:163
msgid "Snapshot is currently in use. Please try again later."
msgstr ""
-#: plinth/modules/snapshot/views.py:207
+#: plinth/modules/snapshot/views.py:186
#, python-brace-format
msgid "Rolled back to snapshot #{number}."
msgstr ""
-#: plinth/modules/snapshot/views.py:210
+#: plinth/modules/snapshot/views.py:189
msgid "The system must be restarted to complete the rollback."
msgstr ""
-#: plinth/modules/snapshot/views.py:222
+#: plinth/modules/snapshot/views.py:201
msgid "Rollback to Snapshot"
msgstr ""
-#: plinth/modules/ssh/__init__.py:43
-msgid "Secure Shell (SSH) Server"
-msgstr ""
-
-#: plinth/modules/ssh/__init__.py:46
+#: plinth/modules/ssh/__init__.py:29
msgid ""
"A Secure Shell server uses the secure shell protocol to accept connections "
"from remote computers. An authorized remote computer can perform "
@@ -4848,56 +4949,56 @@ msgid ""
"connections."
msgstr ""
-#: plinth/modules/ssh/forms.py:30
+#: plinth/modules/ssh/__init__.py:50
+msgid "Secure Shell (SSH) Server"
+msgstr ""
+
+#: plinth/modules/ssh/forms.py:15
msgid "Disable password authentication"
msgstr ""
-#: plinth/modules/ssh/forms.py:31
+#: plinth/modules/ssh/forms.py:16
msgid ""
"Improves security by preventing password guessing. Ensure that you have "
"setup SSH keys in your administrator user account before enabling this "
"option."
msgstr ""
-#: plinth/modules/ssh/templates/ssh.html:26
+#: plinth/modules/ssh/templates/ssh.html:11
msgid "Server Fingerprints"
msgstr ""
-#: plinth/modules/ssh/templates/ssh.html:29
+#: plinth/modules/ssh/templates/ssh.html:14
msgid ""
"When connecting to the server, ensure that the fingerprint shown by the SSH "
"client matches one of these fingerprints."
msgstr ""
-#: plinth/modules/ssh/templates/ssh.html:38
+#: plinth/modules/ssh/templates/ssh.html:23
msgid "Algorithm"
msgstr ""
-#: plinth/modules/ssh/templates/ssh.html:39
+#: plinth/modules/ssh/templates/ssh.html:24
msgid "Fingerprint"
msgstr ""
-#: plinth/modules/ssh/views.py:66
+#: plinth/modules/ssh/views.py:48
msgid "SSH authentication with password disabled."
msgstr ""
-#: plinth/modules/ssh/views.py:69
+#: plinth/modules/ssh/views.py:51
msgid "SSH authentication with password enabled."
msgstr ""
-#: plinth/modules/sso/__init__.py:30
+#: plinth/modules/sso/__init__.py:33
msgid "Single Sign On"
msgstr ""
-#: plinth/modules/sso/templates/login.html:35
+#: plinth/modules/sso/templates/login.html:20
msgid "Login"
msgstr ""
-#: plinth/modules/storage/__init__.py:39 plinth/modules/storage/__init__.py:331
-msgid "Storage"
-msgstr ""
-
-#: plinth/modules/storage/__init__.py:47
+#: plinth/modules/storage/__init__.py:30
#, python-brace-format
msgid ""
"This module allows you to manage storage media attached to your {box_name}. "
@@ -4905,147 +5006,151 @@ msgid ""
"media, expand the root partition etc."
msgstr ""
-#: plinth/modules/storage/__init__.py:224
+#: plinth/modules/storage/__init__.py:52 plinth/modules/storage/__init__.py:318
+msgid "Storage"
+msgstr ""
+
+#: plinth/modules/storage/__init__.py:211
#, python-brace-format
msgid "{disk_size:.1f} bytes"
msgstr ""
-#: plinth/modules/storage/__init__.py:228
+#: plinth/modules/storage/__init__.py:215
#, python-brace-format
msgid "{disk_size:.1f} KiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:232
+#: plinth/modules/storage/__init__.py:219
#, python-brace-format
msgid "{disk_size:.1f} MiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:236
+#: plinth/modules/storage/__init__.py:223
#, python-brace-format
msgid "{disk_size:.1f} GiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:239
+#: plinth/modules/storage/__init__.py:226
#, python-brace-format
msgid "{disk_size:.1f} TiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:246
+#: plinth/modules/storage/__init__.py:233
msgid "The operation failed."
msgstr ""
-#: plinth/modules/storage/__init__.py:248
+#: plinth/modules/storage/__init__.py:235
msgid "The operation was cancelled."
msgstr ""
-#: plinth/modules/storage/__init__.py:250
+#: plinth/modules/storage/__init__.py:237
msgid "The device is already unmounting."
msgstr ""
-#: plinth/modules/storage/__init__.py:252
+#: plinth/modules/storage/__init__.py:239
msgid "The operation is not supported due to missing driver/tool support."
msgstr ""
-#: plinth/modules/storage/__init__.py:255
+#: plinth/modules/storage/__init__.py:242
msgid "The operation timed out."
msgstr ""
-#: plinth/modules/storage/__init__.py:257
+#: plinth/modules/storage/__init__.py:244
msgid "The operation would wake up a disk that is in a deep-sleep state."
msgstr ""
-#: plinth/modules/storage/__init__.py:260
+#: plinth/modules/storage/__init__.py:247
msgid "Attempting to unmount a device that is busy."
msgstr ""
-#: plinth/modules/storage/__init__.py:262
+#: plinth/modules/storage/__init__.py:249
msgid "The operation has already been cancelled."
msgstr ""
-#: plinth/modules/storage/__init__.py:268
+#: plinth/modules/storage/__init__.py:255
msgid "Not authorized to perform the requested operation."
msgstr ""
-#: plinth/modules/storage/__init__.py:270
+#: plinth/modules/storage/__init__.py:257
msgid "The device is already mounted."
msgstr ""
-#: plinth/modules/storage/__init__.py:272
+#: plinth/modules/storage/__init__.py:259
msgid "The device is not mounted."
msgstr ""
-#: plinth/modules/storage/__init__.py:275
+#: plinth/modules/storage/__init__.py:262
msgid "Not permitted to use the requested option."
msgstr ""
-#: plinth/modules/storage/__init__.py:278
+#: plinth/modules/storage/__init__.py:265
msgid "The device is mounted by another user."
msgstr ""
-#: plinth/modules/storage/__init__.py:326
+#: plinth/modules/storage/__init__.py:313
#, no-python-format, python-brace-format
msgid "Low space on system partition: {percent_used}% used, {free_space} free."
msgstr ""
-#: plinth/modules/storage/__init__.py:328
+#: plinth/modules/storage/__init__.py:315
msgid "Low disk space"
msgstr ""
-#: plinth/modules/storage/forms.py:79
+#: plinth/modules/storage/forms.py:64
#, fuzzy
#| msgid "Repository not found"
msgid "Invalid directory name."
msgstr "Сховище не знайдено"
-#: plinth/modules/storage/forms.py:97
+#: plinth/modules/storage/forms.py:82
msgid "Directory does not exist."
msgstr ""
-#: plinth/modules/storage/forms.py:99
+#: plinth/modules/storage/forms.py:84
msgid "Path is not a directory."
msgstr ""
-#: plinth/modules/storage/forms.py:102
+#: plinth/modules/storage/forms.py:87
msgid "Directory is not readable by the user."
msgstr ""
-#: plinth/modules/storage/forms.py:105
+#: plinth/modules/storage/forms.py:90
msgid "Directory is not writable by the user."
msgstr ""
-#: plinth/modules/storage/forms.py:110
+#: plinth/modules/storage/forms.py:95
msgid "Directory"
msgstr ""
-#: plinth/modules/storage/forms.py:113
+#: plinth/modules/storage/forms.py:98
msgid "Subdirectory (optional)"
msgstr ""
-#: plinth/modules/storage/forms.py:160
+#: plinth/modules/storage/forms.py:145
msgid "Share"
msgstr ""
-#: plinth/modules/storage/forms.py:168
+#: plinth/modules/storage/forms.py:153
msgid "Other directory (specify below)"
msgstr ""
-#: plinth/modules/storage/templates/storage.html:35
+#: plinth/modules/storage/templates/storage.html:20
msgid "The following storage devices are in use:"
msgstr ""
-#: plinth/modules/storage/templates/storage.html:41
+#: plinth/modules/storage/templates/storage.html:26
msgid "Label"
msgstr ""
-#: plinth/modules/storage/templates/storage.html:42
+#: plinth/modules/storage/templates/storage.html:27
msgid "Mount Point"
msgstr ""
-#: plinth/modules/storage/templates/storage.html:90
+#: plinth/modules/storage/templates/storage.html:75
msgid "Partition Expansion"
msgstr ""
-#: plinth/modules/storage/templates/storage.html:92
+#: plinth/modules/storage/templates/storage.html:77
#, python-format
msgid ""
"There is %(expandable_root_size)s of unallocated space available after your "
@@ -5053,13 +5158,13 @@ msgid ""
"will provide you additional free space to store your files."
msgstr ""
-#: plinth/modules/storage/templates/storage.html:102
-#: plinth/modules/storage/templates/storage_expand.html:39
-#: plinth/modules/storage/views.py:76
+#: plinth/modules/storage/templates/storage.html:87
+#: plinth/modules/storage/templates/storage_expand.html:24
+#: plinth/modules/storage/views.py:58
msgid "Expand Root Partition"
msgstr ""
-#: plinth/modules/storage/templates/storage_expand.html:29
+#: plinth/modules/storage/templates/storage_expand.html:14
#, python-format
msgid ""
"Please backup your data before proceeding. After this operation, "
@@ -5067,39 +5172,30 @@ msgid ""
"root partition."
msgstr ""
-#: plinth/modules/storage/views.py:88
+#: plinth/modules/storage/views.py:70
#, python-brace-format
msgid "Error expanding partition: {exception}"
msgstr ""
-#: plinth/modules/storage/views.py:91
+#: plinth/modules/storage/views.py:73
msgid "Partition expanded successfully."
msgstr ""
-#: plinth/modules/storage/views.py:109
+#: plinth/modules/storage/views.py:91
#, python-brace-format
msgid "{drive_vendor} {drive_model} can be safely unplugged."
msgstr ""
-#: plinth/modules/storage/views.py:113
+#: plinth/modules/storage/views.py:95
msgid "Device can be safely unplugged."
msgstr ""
-#: plinth/modules/storage/views.py:123
+#: plinth/modules/storage/views.py:105
#, python-brace-format
msgid "Error ejecting device: {error_message}"
msgstr ""
-#: plinth/modules/syncthing/__init__.py:40
-#: plinth/modules/syncthing/manifest.py:28
-msgid "Syncthing"
-msgstr ""
-
-#: plinth/modules/syncthing/__init__.py:44
-msgid "File Synchronization"
-msgstr ""
-
-#: plinth/modules/syncthing/__init__.py:47
+#: plinth/modules/syncthing/__init__.py:26
msgid ""
"Syncthing is an application to synchronize files across multiple devices, e."
"g. your desktop computer and mobile phone. Creation, modification, or "
@@ -5107,7 +5203,7 @@ msgid ""
"other devices that also run Syncthing."
msgstr ""
-#: plinth/modules/syncthing/__init__.py:52
+#: plinth/modules/syncthing/__init__.py:31
#, python-brace-format
msgid ""
"Running Syncthing on {box_name} provides an extra synchronization point for "
@@ -5118,19 +5214,20 @@ msgid ""
"{box_name} is only available for users belonging to the \"admin\" group."
msgstr ""
-#: plinth/modules/syncthing/__init__.py:63
+#: plinth/modules/syncthing/__init__.py:40
msgid "Administer Syncthing application"
msgstr ""
-#: plinth/modules/tahoe/__init__.py:43
-msgid "Tahoe-LAFS"
+#: plinth/modules/syncthing/__init__.py:54
+#: plinth/modules/syncthing/manifest.py:13
+msgid "Syncthing"
msgstr ""
-#: plinth/modules/tahoe/__init__.py:47
-msgid "Distributed File Storage"
+#: plinth/modules/syncthing/__init__.py:55
+msgid "File Synchronization"
msgstr ""
-#: plinth/modules/tahoe/__init__.py:134
+#: plinth/modules/tahoe/__init__.py:30
msgid ""
"Tahoe-LAFS is a decentralized secure file storage system. It uses provider "
"independent security to store files over a distributed network of storage "
@@ -5138,7 +5235,7 @@ msgid ""
"remaining nodes."
msgstr ""
-#: plinth/modules/tahoe/__init__.py:139
+#: plinth/modules/tahoe/__init__.py:35
#, python-brace-format
msgid ""
"This {box_name} hosts a storage node and an introducer by default. "
@@ -5146,7 +5243,15 @@ msgid ""
"other storage nodes."
msgstr ""
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:33
+#: plinth/modules/tahoe/__init__.py:66
+msgid "Tahoe-LAFS"
+msgstr ""
+
+#: plinth/modules/tahoe/__init__.py:68
+msgid "Distributed File Storage"
+msgstr ""
+
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:17
#, python-format
msgid ""
"The Tahoe-LAFS server domain is set to %(domain_name)s. Changing the "
@@ -5155,37 +5260,33 @@ msgid ""
"%(domain_name)s:5678\">https://%(domain_name)s:5678."
msgstr ""
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:55
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:39
msgid "Local introducer"
msgstr ""
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:43
#: plinth/modules/tahoe/templates/tahoe-post-setup.html:59
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:75
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:92
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:76
msgid "Pet Name"
msgstr ""
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:72
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:56
msgid "Add new introducer"
msgstr ""
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:83
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:67
msgid "Add"
msgstr ""
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:88
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:72
msgid "Connected introducers"
msgstr ""
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:105
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:89
msgid "Remove"
msgstr ""
-#: plinth/modules/tor/__init__.py:47
-msgid "Tor"
-msgstr ""
-
-#: plinth/modules/tor/__init__.py:52
+#: plinth/modules/tor/__init__.py:33
msgid ""
"Tor is an anonymous communication system. You can learn more about it from "
"the Tor Project website. For "
@@ -5194,76 +5295,80 @@ msgid ""
"\">Tor Browser."
msgstr ""
-#: plinth/modules/tor/__init__.py:83
+#: plinth/modules/tor/__init__.py:55
+msgid "Tor"
+msgstr ""
+
+#: plinth/modules/tor/__init__.py:66
msgid "Tor Onion Service"
msgstr ""
-#: plinth/modules/tor/__init__.py:87
+#: plinth/modules/tor/__init__.py:70
msgid "Tor Socks Proxy"
msgstr ""
-#: plinth/modules/tor/__init__.py:91
+#: plinth/modules/tor/__init__.py:74
msgid "Tor Bridge Relay"
msgstr ""
-#: plinth/modules/tor/__init__.py:112
+#: plinth/modules/tor/__init__.py:95
msgid "Tor relay port available"
msgstr ""
-#: plinth/modules/tor/__init__.py:122
+#: plinth/modules/tor/__init__.py:105
msgid "Obfs3 transport registered"
msgstr ""
-#: plinth/modules/tor/__init__.py:132
+#: plinth/modules/tor/__init__.py:115
msgid "Obfs4 transport registered"
msgstr ""
-#: plinth/modules/tor/__init__.py:225
+#: plinth/modules/tor/__init__.py:208
#, python-brace-format
msgid "Access URL {url} on tcp{kind} via Tor"
msgstr ""
-#: plinth/modules/tor/__init__.py:236
+#: plinth/modules/tor/__init__.py:219
#, python-brace-format
msgid "Confirm Tor usage at {url} on tcp{kind}"
msgstr ""
-#: plinth/modules/tor/forms.py:46
+#: plinth/modules/tor/forms.py:31
msgid ""
"Enter a valid bridge with this format: [transport] IP:ORPort [fingerprint]"
msgstr ""
-#: plinth/modules/tor/forms.py:88
+#: plinth/modules/tor/forms.py:73
msgid "Enable Tor"
msgstr ""
-#: plinth/modules/tor/forms.py:90
+#: plinth/modules/tor/forms.py:75
msgid "Use upstream bridges to connect to Tor network"
msgstr ""
-#: plinth/modules/tor/forms.py:92
+#: plinth/modules/tor/forms.py:77
msgid ""
"When enabled, the bridges configured below will be used to connect to the "
"Tor network. Use this option if your Internet Service Provider (ISP) blocks "
"or censors connections to the Tor Network. This will disable relay modes."
msgstr ""
-#: plinth/modules/tor/forms.py:97
+#: plinth/modules/tor/forms.py:82
msgid "Upstream bridges"
msgstr ""
-#: plinth/modules/tor/forms.py:99
+#: plinth/modules/tor/forms.py:84
msgid ""
"You can get some bridges from https://bridges.torproject.org/ and copy/paste the bridge information "
"here. Currently supported transports are none, obfs3, obfs4 and scamblesuit."
msgstr ""
-#: plinth/modules/tor/forms.py:105
+#: plinth/modules/tor/forms.py:90
msgid "Enable Tor relay"
msgstr ""
-#: plinth/modules/tor/forms.py:106
+#: plinth/modules/tor/forms.py:91
#, python-brace-format
msgid ""
"When enabled, your {box_name} will run a Tor relay and donate bandwidth to "
@@ -5271,22 +5376,22 @@ msgid ""
"download bandwidth."
msgstr ""
-#: plinth/modules/tor/forms.py:111
+#: plinth/modules/tor/forms.py:96
msgid "Enable Tor bridge relay"
msgstr ""
-#: plinth/modules/tor/forms.py:113
+#: plinth/modules/tor/forms.py:98
msgid ""
"When enabled, relay information is published in the Tor bridge database "
"instead of public Tor relay database making it harder to censor this node. "
"This helps others circumvent censorship."
msgstr ""
-#: plinth/modules/tor/forms.py:118
+#: plinth/modules/tor/forms.py:103
msgid "Enable Tor Hidden Service"
msgstr ""
-#: plinth/modules/tor/forms.py:120
+#: plinth/modules/tor/forms.py:105
#, python-brace-format
msgid ""
"A hidden service will allow {box_name} to provide selected services (such as "
@@ -5294,210 +5399,206 @@ msgid ""
"anonymity yet."
msgstr ""
-#: plinth/modules/tor/forms.py:125
+#: plinth/modules/tor/forms.py:110
msgid "Download software packages over Tor"
msgstr ""
-#: plinth/modules/tor/forms.py:126
+#: plinth/modules/tor/forms.py:111
msgid ""
"When enabled, software will be downloaded over the Tor network for "
"installations and upgrades. This adds a degree of privacy and security "
"during software downloads."
msgstr ""
-#: plinth/modules/tor/forms.py:141
+#: plinth/modules/tor/forms.py:126
msgid "Specify at least one upstream bridge to use upstream bridges."
msgstr ""
-#: plinth/modules/tor/manifest.py:29
+#: plinth/modules/tor/manifest.py:14
msgid "Tor Browser"
msgstr ""
-#: plinth/modules/tor/manifest.py:45
+#: plinth/modules/tor/manifest.py:30
msgid "Orbot: Proxy with Tor"
msgstr ""
-#: plinth/modules/tor/templates/tor.html:41
+#: plinth/modules/tor/templates/tor.html:26
msgid "Tor configuration is being updated"
msgstr ""
-#: plinth/modules/tor/templates/tor.html:50
+#: plinth/modules/tor/templates/tor.html:35
msgid "Onion Service"
msgstr ""
-#: plinth/modules/tor/templates/tor.html:52
+#: plinth/modules/tor/templates/tor.html:37
msgid "Ports"
msgstr ""
-#: plinth/modules/tor/templates/tor.html:82
+#: plinth/modules/tor/templates/tor.html:67
msgid "Relay"
msgstr ""
-#: plinth/modules/tor/templates/tor.html:84
+#: plinth/modules/tor/templates/tor.html:69
#, python-format
msgid ""
"If your %(box_name)s is behind a router or firewall, you should make sure "
"the following ports are open, and port-forwarded, if necessary:"
msgstr ""
-#: plinth/modules/tor/templates/tor.html:112
+#: plinth/modules/tor/templates/tor.html:97
msgid "SOCKS"
msgstr ""
-#: plinth/modules/tor/templates/tor.html:115
+#: plinth/modules/tor/templates/tor.html:100
#, python-format
msgid "A Tor SOCKS port is available on your %(box_name)s on TCP port 9050."
msgstr ""
-#: plinth/modules/transmission/__init__.py:41
-#: plinth/modules/transmission/manifest.py:24
-msgid "Transmission"
-msgstr ""
-
-#: plinth/modules/transmission/__init__.py:48
+#: plinth/modules/transmission/__init__.py:27
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/ttrss/__init__.py:43 plinth/modules/ttrss/manifest.py:34
-msgid "Tiny Tiny RSS"
+#: plinth/modules/transmission/__init__.py:48
+#: plinth/modules/transmission/manifest.py:9
+msgid "Transmission"
msgstr ""
-#: plinth/modules/ttrss/__init__.py:47
-msgid "News Feed Reader"
-msgstr ""
-
-#: plinth/modules/ttrss/__init__.py:50
+#: plinth/modules/ttrss/__init__.py:29
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:54
+#: plinth/modules/ttrss/__init__.py:33
#, python-brace-format
msgid ""
"When enabled, Tiny Tiny RSS can be accessed by any user with a {box_name} login."
msgstr ""
-#: plinth/modules/ttrss/__init__.py:58
+#: plinth/modules/ttrss/__init__.py:37
msgid ""
"When using a mobile or desktop application for Tiny Tiny RSS, use the URL /tt-rss-app for "
"connecting."
msgstr ""
-#: plinth/modules/ttrss/__init__.py:65
+#: plinth/modules/ttrss/__init__.py:42
msgid "Read and subscribe to news feeds"
msgstr ""
-#: plinth/modules/ttrss/manifest.py:25
+#: plinth/modules/ttrss/__init__.py:56 plinth/modules/ttrss/manifest.py:19
+msgid "Tiny Tiny RSS"
+msgstr ""
+
+#: plinth/modules/ttrss/__init__.py:57
+msgid "News Feed Reader"
+msgstr ""
+
+#: plinth/modules/ttrss/manifest.py:10
msgid "Tiny Tiny RSS (Fork)"
msgstr ""
-#: plinth/modules/upgrades/__init__.py:37 plinth/templates/setup.html:89
-msgid "Update"
-msgstr ""
-
-#: plinth/modules/upgrades/__init__.py:40
+#: plinth/modules/upgrades/__init__.py:23
msgid "Check for and apply the latest software and security updates."
msgstr ""
-#: plinth/modules/upgrades/__init__.py:84
+#: plinth/modules/upgrades/__init__.py:38 plinth/templates/setup.html:74
+msgid "Update"
+msgstr ""
+
+#: plinth/modules/upgrades/__init__.py:71
#, fuzzy
#| msgid "FreedomBox"
msgid "FreedomBox Updated"
msgstr "FreedomBox"
-#: plinth/modules/upgrades/forms.py:28
+#: plinth/modules/upgrades/forms.py:13
msgid "Enable auto-update"
msgstr ""
-#: plinth/modules/upgrades/forms.py:29
+#: plinth/modules/upgrades/forms.py:14
msgid "When enabled, FreedomBox automatically updates once a day."
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades-new-release.html:24
+#: plinth/modules/upgrades/templates/upgrades-new-release.html:9
#, python-format
msgid "%(box_name)s Updated"
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades-new-release.html:28
+#: plinth/modules/upgrades/templates/upgrades-new-release.html:13
#, python-format
msgid ""
"%(box_name)s has been updated to version %(version)s. See the release announcement."
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades-new-release.html:37
-#: plinth/templates/notifications.html:59
+#: plinth/modules/upgrades/templates/upgrades-new-release.html:22
+#: plinth/templates/notifications.html:44
msgid "Dismiss"
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades.html:45
+#: plinth/modules/upgrades/templates/upgrades.html:30
msgid "Update now"
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades.html:54
+#: plinth/modules/upgrades/templates/upgrades.html:39
msgid "Updating..."
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades.html:59
+#: plinth/modules/upgrades/templates/upgrades.html:44
msgid ""
"This may take a long time to complete. During an update, "
"you cannot install apps. Also, this web interface may be temporarily "
"unavailable and show an error. In that case, refresh the page to continue."
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades.html:73
+#: plinth/modules/upgrades/templates/upgrades.html:58
msgid "Toggle recent update logs"
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades_configure.html:26
-#: plinth/modules/upgrades/templates/upgrades_configure.html:27
-#: plinth/modules/upgrades/views.py:107
+#: plinth/modules/upgrades/templates/upgrades_configure.html:11
+#: plinth/modules/upgrades/templates/upgrades_configure.html:12
+#: plinth/modules/upgrades/views.py:89
msgid "Manual update"
msgstr ""
-#: plinth/modules/upgrades/views.py:66
+#: plinth/modules/upgrades/views.py:48
#, python-brace-format
msgid "Error when configuring unattended-upgrades: {error}"
msgstr ""
-#: plinth/modules/upgrades/views.py:70
+#: plinth/modules/upgrades/views.py:52
msgid "Automatic upgrades enabled"
msgstr ""
-#: plinth/modules/upgrades/views.py:73
+#: plinth/modules/upgrades/views.py:55
msgid "Automatic upgrades disabled"
msgstr ""
-#: plinth/modules/upgrades/views.py:75
+#: plinth/modules/upgrades/views.py:57
msgid "Settings unchanged"
msgstr ""
-#: plinth/modules/upgrades/views.py:101
+#: plinth/modules/upgrades/views.py:83
msgid "Upgrade process started."
msgstr ""
-#: plinth/modules/upgrades/views.py:104
+#: plinth/modules/upgrades/views.py:86
msgid "Starting upgrade failed."
msgstr ""
-#: plinth/modules/users/__init__.py:51
-msgid "Users and Groups"
-msgstr ""
-
-#: plinth/modules/users/__init__.py:54
+#: plinth/modules/users/__init__.py:37
msgid ""
"Create and managed user accounts. These accounts serve as centralized "
"authentication mechanism for most apps. Some apps further require a user "
"account to be part of a group to authorize the user to access the app."
msgstr ""
-#: plinth/modules/users/__init__.py:59
+#: plinth/modules/users/__init__.py:42
#, python-brace-format
msgid ""
"Any user may login to {box_name} web interface to see a list of apps "
@@ -5505,35 +5606,39 @@ msgid ""
"group may alter apps or system settings."
msgstr ""
-#: plinth/modules/users/__init__.py:128
+#: plinth/modules/users/__init__.py:64
+msgid "Users and Groups"
+msgstr ""
+
+#: plinth/modules/users/__init__.py:115
#, python-brace-format
msgid "Check LDAP entry \"{search_item}\""
msgstr ""
-#: plinth/modules/users/forms.py:43
+#: plinth/modules/users/forms.py:28
msgid "Access to all services and system settings"
msgstr ""
-#: plinth/modules/users/forms.py:59
+#: plinth/modules/users/forms.py:44
msgid "Username is taken or is reserved."
msgstr ""
-#: plinth/modules/users/forms.py:87
+#: plinth/modules/users/forms.py:72
#, fuzzy
#| msgid "Repository not found"
msgid "Enter a valid username."
msgstr "Сховище не знайдено"
-#: plinth/modules/users/forms.py:93
+#: plinth/modules/users/forms.py:78
msgid ""
"Required. 150 characters or fewer. English letters, digits and @/./-/_ only."
msgstr ""
-#: plinth/modules/users/forms.py:106 plinth/modules/users/forms.py:222
+#: plinth/modules/users/forms.py:91 plinth/modules/users/forms.py:207
msgid "Permissions"
msgstr ""
-#: plinth/modules/users/forms.py:109
+#: plinth/modules/users/forms.py:94
msgid ""
"Select which services should be available to the new user. The user will be "
"able to log in to services that support single sign-on through LDAP, if they "
@@ -5542,187 +5647,182 @@ msgid ""
"SSH and have administrative privileges (sudo)."
msgstr ""
-#: plinth/modules/users/forms.py:148 plinth/modules/users/forms.py:372
+#: plinth/modules/users/forms.py:133 plinth/modules/users/forms.py:357
msgid "Creating LDAP user failed."
msgstr ""
-#: plinth/modules/users/forms.py:159
+#: plinth/modules/users/forms.py:144
#, python-brace-format
msgid "Failed to add new user to {group} group."
msgstr ""
-#: plinth/modules/users/forms.py:173
+#: plinth/modules/users/forms.py:158
msgid "Authorized SSH Keys"
msgstr ""
-#: plinth/modules/users/forms.py:175
+#: plinth/modules/users/forms.py:160
msgid ""
"Setting an SSH public key will allow this user to securely log in to the "
"system without using a password. You may enter multiple keys, one on each "
"line. Blank lines and lines starting with # will be ignored."
msgstr ""
-#: plinth/modules/users/forms.py:259
+#: plinth/modules/users/forms.py:244
msgid "Renaming LDAP user failed."
msgstr ""
-#: plinth/modules/users/forms.py:271
+#: plinth/modules/users/forms.py:256
msgid "Failed to remove user from group."
msgstr ""
-#: plinth/modules/users/forms.py:282
+#: plinth/modules/users/forms.py:267
msgid "Failed to add user to group."
msgstr ""
-#: plinth/modules/users/forms.py:291
+#: plinth/modules/users/forms.py:276
msgid "Unable to set SSH keys."
msgstr ""
-#: plinth/modules/users/forms.py:306
+#: plinth/modules/users/forms.py:291
msgid "Failed to change user status."
msgstr ""
-#: plinth/modules/users/forms.py:314
+#: plinth/modules/users/forms.py:299
msgid "Cannot delete the only administrator in the system."
msgstr ""
-#: plinth/modules/users/forms.py:346
+#: plinth/modules/users/forms.py:331
msgid "Changing LDAP user password failed."
msgstr ""
-#: plinth/modules/users/forms.py:381
+#: plinth/modules/users/forms.py:366
msgid "Failed to add new user to admin group."
msgstr ""
-#: plinth/modules/users/forms.py:398
+#: plinth/modules/users/forms.py:383
msgid "Failed to restrict console access."
msgstr ""
-#: plinth/modules/users/forms.py:410
+#: plinth/modules/users/forms.py:395
msgid "User account created, you are now logged in"
msgstr ""
-#: plinth/modules/users/templates/users_change_password.html:26
+#: plinth/modules/users/templates/users_change_password.html:11
#, python-format
msgid "Change Password for %(username)s"
msgstr ""
-#: plinth/modules/users/templates/users_change_password.html:36
+#: plinth/modules/users/templates/users_change_password.html:21
msgid "Save Password"
msgstr ""
-#: plinth/modules/users/templates/users_create.html:32
-#: plinth/modules/users/templates/users_list.html:42
-#: plinth/modules/users/templates/users_list.html:44
-#: plinth/modules/users/views.py:57
+#: plinth/modules/users/templates/users_create.html:17
+#: plinth/modules/users/templates/users_list.html:27
+#: plinth/modules/users/templates/users_list.html:29
+#: plinth/modules/users/views.py:42
msgid "Create User"
msgstr ""
-#: plinth/modules/users/templates/users_delete.html:26
-#: plinth/modules/users/views.py:139
+#: plinth/modules/users/templates/users_delete.html:11
+#: plinth/modules/users/views.py:121
msgid "Delete User"
msgstr ""
-#: plinth/modules/users/templates/users_delete.html:29
+#: plinth/modules/users/templates/users_delete.html:14
#, python-format
msgid "Delete user %(username)s permanently?"
msgstr ""
-#: plinth/modules/users/templates/users_delete.html:38
+#: plinth/modules/users/templates/users_delete.html:23
#, python-format
msgid "Delete %(username)s"
msgstr ""
-#: plinth/modules/users/templates/users_firstboot.html:26
+#: plinth/modules/users/templates/users_firstboot.html:11
msgid "Administrator Account"
msgstr ""
-#: plinth/modules/users/templates/users_firstboot.html:29
+#: plinth/modules/users/templates/users_firstboot.html:14
msgid ""
"Choose a username and password to access this web interface. The password "
"can be changed later. This user will be granted administrative privileges. "
"Other users can be added later."
msgstr ""
-#: plinth/modules/users/templates/users_firstboot.html:42
+#: plinth/modules/users/templates/users_firstboot.html:27
msgid "Create Account"
msgstr ""
-#: plinth/modules/users/templates/users_list.html:38
-#: plinth/modules/users/views.py:74
+#: plinth/modules/users/templates/users_list.html:23
+#: plinth/modules/users/views.py:59
msgid "Users"
msgstr ""
-#: plinth/modules/users/templates/users_list.html:57
+#: plinth/modules/users/templates/users_list.html:42
#, python-format
msgid "Delete user %(username)s"
msgstr ""
-#: plinth/modules/users/templates/users_list.html:65
+#: plinth/modules/users/templates/users_list.html:50
#, python-format
msgid "Edit user %(username)s"
msgstr ""
-#: plinth/modules/users/templates/users_update.html:30
+#: plinth/modules/users/templates/users_update.html:15
#, python-format
msgid ""
"Use the change password form to "
"change the password."
msgstr ""
-#: plinth/modules/users/templates/users_update.html:42
-#: plinth/templates/language-selection.html:32
+#: plinth/modules/users/templates/users_update.html:27
+#: plinth/templates/language-selection.html:17
msgid "Save Changes"
msgstr ""
-#: plinth/modules/users/views.py:55
+#: plinth/modules/users/views.py:40
#, python-format
msgid "User %(username)s created."
msgstr ""
-#: plinth/modules/users/views.py:93
+#: plinth/modules/users/views.py:75
#, python-format
msgid "User %(username)s updated."
msgstr ""
-#: plinth/modules/users/views.py:94
+#: plinth/modules/users/views.py:76
msgid "Edit User"
msgstr ""
-#: plinth/modules/users/views.py:149
+#: plinth/modules/users/views.py:131
#, python-brace-format
msgid "User {user} deleted."
msgstr ""
-#: plinth/modules/users/views.py:156
+#: plinth/modules/users/views.py:138
msgid "Deleting LDAP user failed."
msgstr ""
-#: plinth/modules/users/views.py:165
+#: plinth/modules/users/views.py:147
msgid "Change Password"
msgstr ""
-#: plinth/modules/users/views.py:166
+#: plinth/modules/users/views.py:148
msgid "Password changed successfully."
msgstr ""
-#: plinth/modules/wireguard/__init__.py:38
-#: plinth/modules/wireguard/manifest.py:29
-msgid "WireGuard"
-msgstr ""
-
-#: plinth/modules/wireguard/__init__.py:43
+#: plinth/modules/wireguard/__init__.py:24
msgid "WireGuard is a fast, modern, secure VPN tunnel."
msgstr ""
-#: plinth/modules/wireguard/__init__.py:45
+#: plinth/modules/wireguard/__init__.py:26
#, python-brace-format
msgid ""
"It can be used to connect to a VPN provider which supports WireGuard, and to "
"route all outgoing traffic from {box_name} through the VPN."
msgstr ""
-#: plinth/modules/wireguard/__init__.py:49
+#: plinth/modules/wireguard/__init__.py:30
#, python-brace-format
msgid ""
"A second use case is to connect a mobile device to {box_name} while "
@@ -5730,61 +5830,66 @@ msgid ""
"securely relayed through {box_name}."
msgstr ""
-#: plinth/modules/wireguard/forms.py:47
+#: plinth/modules/wireguard/__init__.py:52
+#: plinth/modules/wireguard/manifest.py:14
+msgid "WireGuard"
+msgstr ""
+
+#: plinth/modules/wireguard/forms.py:32
#, fuzzy
#| msgid "Repository not found"
msgid "Invalid key."
msgstr "Сховище не знайдено"
-#: plinth/modules/wireguard/forms.py:76
-#: plinth/modules/wireguard/templates/wireguard.html:32
-#: plinth/modules/wireguard/templates/wireguard.html:89
-#: plinth/modules/wireguard/templates/wireguard_delete_server.html:38
+#: plinth/modules/wireguard/forms.py:61
+#: plinth/modules/wireguard/templates/wireguard.html:17
+#: plinth/modules/wireguard/templates/wireguard.html:74
+#: plinth/modules/wireguard/templates/wireguard_delete_server.html:23
msgid "Public Key"
msgstr ""
-#: plinth/modules/wireguard/forms.py:77
+#: plinth/modules/wireguard/forms.py:62
msgid ""
"Public key of the peer. Example: "
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs= ."
msgstr ""
-#: plinth/modules/wireguard/forms.py:85
+#: plinth/modules/wireguard/forms.py:70
msgid "Endpoint of the server"
msgstr ""
-#: plinth/modules/wireguard/forms.py:86
+#: plinth/modules/wireguard/forms.py:71
msgid ""
"Domain name and port in the form \"ip:port\". Example: demo.wireguard."
"com:12912 ."
msgstr ""
-#: plinth/modules/wireguard/forms.py:91
+#: plinth/modules/wireguard/forms.py:76
msgid "Public key of the server"
msgstr ""
-#: plinth/modules/wireguard/forms.py:92
+#: plinth/modules/wireguard/forms.py:77
msgid ""
"Provided by the server operator, a long string of characters. Example: "
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs= ."
msgstr ""
-#: plinth/modules/wireguard/forms.py:97
+#: plinth/modules/wireguard/forms.py:82
msgid "Client IP address provided by server"
msgstr ""
-#: plinth/modules/wireguard/forms.py:98
+#: plinth/modules/wireguard/forms.py:83
msgid ""
"IP address assigned to this machine on the VPN after connecting to the "
"endpoint. This value is usually provided by the server operator. Example: "
"192.168.0.10."
msgstr ""
-#: plinth/modules/wireguard/forms.py:104
+#: plinth/modules/wireguard/forms.py:89
msgid "Private key of this machine"
msgstr ""
-#: plinth/modules/wireguard/forms.py:105
+#: plinth/modules/wireguard/forms.py:90
msgid ""
"Optional. New public/private keys are generated if left blank. Public key "
"can then be provided to the server. This is the recommended way. However, "
@@ -5792,169 +5897,169 @@ msgid ""
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs= ."
msgstr ""
-#: plinth/modules/wireguard/forms.py:113
+#: plinth/modules/wireguard/forms.py:98
msgid "Pre-shared key"
msgstr ""
-#: plinth/modules/wireguard/forms.py:114
+#: plinth/modules/wireguard/forms.py:99
msgid ""
"Optional. A shared secret key provided by the server to add an additional "
"layer of security. Fill in only if provided. Example: "
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs=."
msgstr ""
-#: plinth/modules/wireguard/forms.py:120
+#: plinth/modules/wireguard/forms.py:105
msgid "Use this connection to send all outgoing traffic"
msgstr ""
-#: plinth/modules/wireguard/forms.py:122
+#: plinth/modules/wireguard/forms.py:107
msgid "Typically checked for a VPN service though which all traffic is sent."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:25
+#: plinth/modules/wireguard/templates/wireguard.html:10
#, fuzzy
#| msgid "Domain Name Server"
msgid "As a Server"
msgstr "Сервер доменних імен"
-#: plinth/modules/wireguard/templates/wireguard.html:27
+#: plinth/modules/wireguard/templates/wireguard.html:12
msgid "Peers allowed to connect to this server:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:33
+#: plinth/modules/wireguard/templates/wireguard.html:18
msgid "Allowed IPs"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:34
-#: plinth/modules/wireguard/templates/wireguard.html:90
+#: plinth/modules/wireguard/templates/wireguard.html:19
+#: plinth/modules/wireguard/templates/wireguard.html:75
msgid "Last Connected Time"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:53
+#: plinth/modules/wireguard/templates/wireguard.html:38
#, python-format
msgid "No peers configured to connect to this %(box_name)s yet."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:62
+#: plinth/modules/wireguard/templates/wireguard.html:47
#, python-format
msgid "Public key for this %(box_name)s:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:68
+#: plinth/modules/wireguard/templates/wireguard.html:53
msgid "Not configured yet."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:72
+#: plinth/modules/wireguard/templates/wireguard.html:57
msgid "Add a new peer"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:76
-#: plinth/modules/wireguard/views.py:69
+#: plinth/modules/wireguard/templates/wireguard.html:61
+#: plinth/modules/wireguard/views.py:51
msgid "Add Allowed Client"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:79
+#: plinth/modules/wireguard/templates/wireguard.html:64
msgid "As a Client"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:81
+#: plinth/modules/wireguard/templates/wireguard.html:66
#, python-format
msgid "Servers that %(box_name)s will connect to:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:88
-#: plinth/modules/wireguard/templates/wireguard_delete_server.html:34
+#: plinth/modules/wireguard/templates/wireguard.html:73
+#: plinth/modules/wireguard/templates/wireguard_delete_server.html:19
msgid "Endpoint"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:111
+#: plinth/modules/wireguard/templates/wireguard.html:96
msgid "No connections to remote servers are configured yet."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:119
+#: plinth/modules/wireguard/templates/wireguard.html:104
msgid "Add a new server"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:123
-#: plinth/modules/wireguard/views.py:178
+#: plinth/modules/wireguard/templates/wireguard.html:108
+#: plinth/modules/wireguard/views.py:160
#, fuzzy
#| msgid "Connection refused"
msgid "Add Connection to Server"
msgstr "З’єднання відхилено"
-#: plinth/modules/wireguard/templates/wireguard_add_client.html:34
+#: plinth/modules/wireguard/templates/wireguard_add_client.html:19
msgid "Add Client"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_delete_client.html:29
+#: plinth/modules/wireguard/templates/wireguard_delete_client.html:14
#, fuzzy
#| msgid "Are you sure that you want to remove this repository?"
msgid "Are you sure that you want to delete this client?"
msgstr "Ви впевнені, що хочете видалити це сховище?"
-#: plinth/modules/wireguard/templates/wireguard_delete_server.html:29
+#: plinth/modules/wireguard/templates/wireguard_delete_server.html:14
#, fuzzy
#| msgid "Are you sure that you want to remove this repository?"
msgid "Are you sure that you want to delete this server?"
msgstr "Ви впевнені, що хочете видалити це сховище?"
-#: plinth/modules/wireguard/templates/wireguard_edit_client.html:34
+#: plinth/modules/wireguard/templates/wireguard_edit_client.html:19
#, fuzzy
#| msgid "Update setup"
msgid "Update Client"
msgstr "Оновити налаштування"
-#: plinth/modules/wireguard/templates/wireguard_edit_server.html:34
+#: plinth/modules/wireguard/templates/wireguard_edit_server.html:19
#, fuzzy
#| msgid "Connection refused"
msgid "Update Connection"
msgstr "З’єднання відхилено"
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:27
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:12
#, python-format
msgid ""
"%(box_name)s will allow this client to connect to it. Ensure that the client "
"is configured with the following information."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:35
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:20
msgid "Client public key:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:39
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:24
msgid "IP address to use for client:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:43
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:46
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:28
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:31
msgid "Pre-shared key:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:47
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:32
msgid "Server endpoints:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:55
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:42
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:40
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:27
msgid "Server public key:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:65
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:64
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:50
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:49
msgid "Data transmitted:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:69
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:68
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:54
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:53
msgid "Data received:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:73
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:72
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:58
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:57
msgid "Latest handshake:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:29
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:14
#, python-format
msgid ""
"%(box_name)s will attempt to reach a WireGuard server with the following "
@@ -5962,151 +6067,151 @@ msgid ""
"public key and IP address."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:38
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:23
msgid "Server endpoint:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:50
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:35
msgid "Public key of this machine:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:54
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:39
msgid "IP address of this machine:"
msgstr ""
-#: plinth/modules/wireguard/views.py:64
+#: plinth/modules/wireguard/views.py:46
msgid "Added new client."
msgstr ""
-#: plinth/modules/wireguard/views.py:79 plinth/modules/wireguard/views.py:138
+#: plinth/modules/wireguard/views.py:61 plinth/modules/wireguard/views.py:120
msgid "Client with public key already exists"
msgstr ""
-#: plinth/modules/wireguard/views.py:92
+#: plinth/modules/wireguard/views.py:74
msgid "Allowed Client"
msgstr ""
-#: plinth/modules/wireguard/views.py:114
+#: plinth/modules/wireguard/views.py:96
#, fuzzy
#| msgid "Update setup"
msgid "Updated client."
msgstr "Оновити налаштування"
-#: plinth/modules/wireguard/views.py:119
+#: plinth/modules/wireguard/views.py:101
msgid "Modify Client"
msgstr ""
-#: plinth/modules/wireguard/views.py:152
+#: plinth/modules/wireguard/views.py:134
msgid "Delete Allowed Client"
msgstr ""
-#: plinth/modules/wireguard/views.py:161
+#: plinth/modules/wireguard/views.py:143
#, fuzzy
#| msgid "Archive deleted."
msgid "Client deleted."
msgstr "Архів видалено."
-#: plinth/modules/wireguard/views.py:163
+#: plinth/modules/wireguard/views.py:145
#, fuzzy
#| msgid "Repository not found"
msgid "Client not found"
msgstr "Сховище не знайдено"
-#: plinth/modules/wireguard/views.py:173
+#: plinth/modules/wireguard/views.py:155
#, fuzzy
#| msgid "Added new repository."
msgid "Added new server."
msgstr "Додано нове сховище."
-#: plinth/modules/wireguard/views.py:194
+#: plinth/modules/wireguard/views.py:176
#, fuzzy
#| msgid "Connection refused"
msgid "Connection to Server"
msgstr "З’єднання відхилено"
-#: plinth/modules/wireguard/views.py:212
+#: plinth/modules/wireguard/views.py:194
#, fuzzy
#| msgid "Update setup"
msgid "Updated server."
msgstr "Оновити налаштування"
-#: plinth/modules/wireguard/views.py:217
+#: plinth/modules/wireguard/views.py:199
#, fuzzy
#| msgid "Error installing application: {error}"
msgid "Modify Connection to Server"
msgstr "Помилка при встановлені застосунку: {error}"
-#: plinth/modules/wireguard/views.py:254
+#: plinth/modules/wireguard/views.py:236
#, fuzzy
#| msgid "Error installing application: {error}"
msgid "Delete Connection to Server"
msgstr "Помилка при встановлені застосунку: {error}"
-#: plinth/modules/wireguard/views.py:274
+#: plinth/modules/wireguard/views.py:256
#, fuzzy
#| msgid "Archive deleted."
msgid "Server deleted."
msgstr "Архів видалено."
-#: plinth/network.py:42
+#: plinth/network.py:27
msgid "PPPoE"
msgstr ""
-#: plinth/network.py:43
+#: plinth/network.py:28
msgid "Generic"
msgstr ""
-#: plinth/package.py:137
+#: plinth/package.py:122
msgid "Error during installation"
msgstr ""
-#: plinth/package.py:159
+#: plinth/package.py:144
msgid "installing"
msgstr ""
-#: plinth/package.py:161
+#: plinth/package.py:146
msgid "downloading"
msgstr ""
-#: plinth/package.py:163
+#: plinth/package.py:148
msgid "media change"
msgstr ""
-#: plinth/package.py:165
+#: plinth/package.py:150
#, python-brace-format
msgid "configuration file: {file}"
msgstr ""
-#: plinth/templates/403.html:25
+#: plinth/templates/403.html:10
msgid "403 Forbidden"
msgstr ""
-#: plinth/templates/403.html:29
+#: plinth/templates/403.html:14
#, python-format
msgid "You don't have permission to access %(request_path)s on this server."
msgstr ""
-#: plinth/templates/404.html:25
+#: plinth/templates/404.html:10
msgid "404"
msgstr ""
-#: plinth/templates/404.html:28
+#: plinth/templates/404.html:13
#, python-format
msgid "Requested page %(request_path)s was not found."
msgstr ""
-#: plinth/templates/404.html:34
+#: plinth/templates/404.html:19
msgid ""
"If you believe this missing page should exist, please file a bug at the "
"FreedomBox Service (Plinth) project issue tracker."
msgstr ""
-#: plinth/templates/500.html:25
+#: plinth/templates/500.html:10
msgid "500"
msgstr ""
-#: plinth/templates/500.html:29
+#: plinth/templates/500.html:14
#, python-format
msgid ""
"This is an internal error and not something you caused or can fix. Please "
@@ -6115,137 +6220,137 @@ msgid ""
"href=\"%(status_log_url)s\">status log to the bug report."
msgstr ""
-#: plinth/templates/app.html:47
+#: plinth/templates/app-header.html:22
+msgid "Installation"
+msgstr ""
+
+#: plinth/templates/app.html:32
#, python-format
msgid "Service %(service_name)s is running."
msgstr ""
-#: plinth/templates/app.html:52
+#: plinth/templates/app.html:37
#, python-format
msgid "Service %(service_name)s is not running."
msgstr ""
-#: plinth/templates/base.html:50
+#: plinth/templates/base.html:35
#, python-format
msgid "Core functionality and web interface for %(box_name)s"
msgstr ""
-#: plinth/templates/base.html:96
+#: plinth/templates/base.html:81
msgid "Toggle navigation"
msgstr ""
-#: plinth/templates/base.html:120 plinth/templates/base.html:123
+#: plinth/templates/base.html:105 plinth/templates/base.html:108
msgid "Home"
msgstr ""
-#: plinth/templates/base.html:128 plinth/templates/base.html:132
+#: plinth/templates/base.html:113 plinth/templates/base.html:117
msgid "Apps"
msgstr ""
-#: plinth/templates/base.html:137 plinth/templates/base.html:141
+#: plinth/templates/base.html:122 plinth/templates/base.html:126
msgid "System"
msgstr ""
-#: plinth/templates/base.html:173 plinth/templates/base.html:174
+#: plinth/templates/base.html:158 plinth/templates/base.html:159
msgid "Change password"
msgstr ""
-#: plinth/templates/base.html:181 plinth/templates/base.html:182
+#: plinth/templates/base.html:166 plinth/templates/base.html:167
msgid "Restart"
msgstr ""
-#: plinth/templates/base.html:187 plinth/templates/base.html:188
+#: plinth/templates/base.html:172 plinth/templates/base.html:173
msgid "Shut down"
msgstr ""
-#: plinth/templates/base.html:195 plinth/templates/base.html:196
-#: plinth/templates/base.html:220 plinth/templates/base.html:222
+#: plinth/templates/base.html:180 plinth/templates/base.html:181
+#: plinth/templates/base.html:205 plinth/templates/base.html:207
msgid "Log out"
msgstr ""
-#: plinth/templates/base.html:204 plinth/templates/base.html:207
+#: plinth/templates/base.html:189 plinth/templates/base.html:192
msgid "Select language"
msgstr ""
-#: plinth/templates/base.html:212 plinth/templates/base.html:214
+#: plinth/templates/base.html:197 plinth/templates/base.html:199
msgid "Log in"
msgstr ""
-#: plinth/templates/clients.html:32
+#: plinth/templates/clients.html:17
msgid "Web"
msgstr ""
-#: plinth/templates/clients.html:57
+#: plinth/templates/clients.html:42
msgid "Desktop"
msgstr ""
-#: plinth/templates/clients.html:68
+#: plinth/templates/clients.html:53
msgid "GNU/Linux"
msgstr ""
-#: plinth/templates/clients.html:70
+#: plinth/templates/clients.html:55
msgid "Windows"
msgstr ""
-#: plinth/templates/clients.html:72
+#: plinth/templates/clients.html:57
msgid "macOS"
msgstr ""
-#: plinth/templates/clients.html:88
+#: plinth/templates/clients.html:73
msgid "Mobile"
msgstr ""
-#: plinth/templates/clients.html:99
+#: plinth/templates/clients.html:84
msgid "Play Store"
msgstr ""
-#: plinth/templates/clients.html:101
+#: plinth/templates/clients.html:86
msgid "F-Droid"
msgstr ""
-#: plinth/templates/clients.html:103
+#: plinth/templates/clients.html:88
msgid "App Store"
msgstr ""
-#: plinth/templates/clients.html:119
+#: plinth/templates/clients.html:104
msgid "Package"
msgstr ""
-#: plinth/templates/clients.html:126
+#: plinth/templates/clients.html:111
msgid "Debian:"
msgstr ""
-#: plinth/templates/clients.html:129
+#: plinth/templates/clients.html:114
msgid "Homebrew:"
msgstr ""
-#: plinth/templates/clients.html:132
+#: plinth/templates/clients.html:117
msgid "RPM:"
msgstr ""
-#: plinth/templates/first_setup.html:39
+#: plinth/templates/first_setup.html:24
#, python-format
msgid ""
"Please wait for %(box_name)s to finish installation. You can start using "
"your %(box_name)s once it is done."
msgstr ""
-#: plinth/templates/header.html:36
-msgid "Installation"
-msgstr ""
-
-#: plinth/templates/index.html:37
+#: plinth/templates/index.html:22
#, python-format
msgid ""
"Enable some applications to add shortcuts to "
"this page."
msgstr ""
-#: plinth/templates/index.html:59
+#: plinth/templates/index.html:44
msgid "Configure »"
msgstr ""
-#: plinth/templates/index.html:115
+#: plinth/templates/index.html:100
#, python-format
msgid ""
"%(box_name)s, a Debian pure blend, is a 100%% free software self-hosting web "
@@ -6253,7 +6358,7 @@ msgid ""
"communication tools respecting your privacy and data ownership."
msgstr ""
-#: plinth/templates/index.html:124
+#: plinth/templates/index.html:109
#, python-format
msgid ""
"This portal is a part of the %(box_name)s web interface. %(box_name)s is "
@@ -6261,55 +6366,55 @@ msgid ""
"Version 3 or later."
msgstr ""
-#: plinth/templates/index.html:144
+#: plinth/templates/index.html:129
msgid "Homepage"
msgstr ""
-#: plinth/templates/index.html:147
+#: plinth/templates/index.html:132
msgid "Source Code"
msgstr ""
-#: plinth/templates/index.html:150
+#: plinth/templates/index.html:135
msgid "Donate"
msgstr ""
-#: plinth/templates/index.html:154
+#: plinth/templates/index.html:139
msgid "FreedomBox Foundation"
msgstr ""
-#: plinth/templates/index.html:161
+#: plinth/templates/index.html:146
msgid "IRC Chatroom"
msgstr ""
-#: plinth/templates/index.html:166
+#: plinth/templates/index.html:151
msgid "Mailing list"
msgstr ""
-#: plinth/templates/internal-zone.html:26
+#: plinth/templates/internal-zone.html:11
#, python-format
msgid "%(service_name)s is available only on internal networks."
msgstr ""
-#: plinth/templates/internal-zone.html:32
+#: plinth/templates/internal-zone.html:17
msgid "Currently there are no network interfaces configured as internal."
msgstr ""
-#: plinth/templates/internal-zone.html:34
+#: plinth/templates/internal-zone.html:19
#, python-format
msgid ""
"Currently the following network interfaces are configured as internal: "
"%(interface_list)s"
msgstr ""
-#: plinth/templates/notifications-dropdown.html:26
+#: plinth/templates/notifications-dropdown.html:11
msgid "Notifications"
msgstr ""
-#: plinth/templates/port-forwarding-info.html:23
+#: plinth/templates/port-forwarding-info.html:8
msgid "Port Forwarding"
msgstr ""
-#: plinth/templates/port-forwarding-info.html:26
+#: plinth/templates/port-forwarding-info.html:11
#, python-format
msgid ""
"If your FreedomBox is behind a router, you will need to set up port "
@@ -6317,63 +6422,63 @@ msgid ""
"%(service_name)s:"
msgstr ""
-#: plinth/templates/setup.html:51
+#: plinth/templates/setup.html:36
msgid "Install this application?"
msgstr ""
-#: plinth/templates/setup.html:55
+#: plinth/templates/setup.html:40
msgid "This application needs an update. Update now?"
msgstr ""
-#: plinth/templates/setup.html:66
+#: plinth/templates/setup.html:51
msgid ""
"Another installation or upgrade is already running. Please wait for a few "
"moments before trying again."
msgstr ""
-#: plinth/templates/setup.html:73
+#: plinth/templates/setup.html:58
msgid "This application is currently not available in your distribution."
msgstr ""
-#: plinth/templates/setup.html:87
+#: plinth/templates/setup.html:72
msgid "Install"
msgstr ""
-#: plinth/templates/setup.html:98
+#: plinth/templates/setup.html:83
msgid "Performing pre-install operation"
msgstr ""
-#: plinth/templates/setup.html:102
+#: plinth/templates/setup.html:87
msgid "Performing post-install operation"
msgstr ""
-#: plinth/templates/setup.html:107
+#: plinth/templates/setup.html:92
#, python-format
msgid "Installing %(package_names)s: %(status)s"
msgstr ""
-#: plinth/templates/setup.html:117
+#: plinth/templates/setup.html:102
#, python-format
msgid "%(percentage)s%% complete"
msgstr ""
-#: plinth/templates/toolbar.html:38
+#: plinth/templates/toolbar.html:23
msgid "Launch web client"
msgstr ""
-#: plinth/templates/toolbar.html:47
+#: plinth/templates/toolbar.html:32
msgid "Client Apps"
msgstr ""
-#: plinth/views.py:179
+#: plinth/views.py:189
msgid "Application enabled"
msgstr ""
-#: plinth/views.py:182
+#: plinth/views.py:192
msgid "Application disabled"
msgstr ""
-#: plinth/web_framework.py:190
+#: plinth/web_framework.py:107
msgid "Gujarati"
msgstr ""
diff --git a/plinth/locale/zh_Hans/LC_MESSAGES/django.po b/plinth/locale/zh_Hans/LC_MESSAGES/django.po
index 93b5f397d..bb4703d22 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: 2020-02-14 21:26+0200\n"
+"POT-Creation-Date: 2020-02-24 19:12-0500\n"
"PO-Revision-Date: 2019-09-13 05:23+0000\n"
"Last-Translator: Anxin YI <2732146152@qq.com>\n"
"Language-Team: Chinese (Simplified) user@host:~/path/to/repo/"
"i>"
msgstr "新的或已有存储库的路径。例如:user@host:~/path/to/repo/"
-#: plinth/modules/backups/forms.py:204
+#: plinth/modules/backups/forms.py:189
msgid "SSH server password"
msgstr "SSH 服务器密码"
-#: plinth/modules/backups/forms.py:205
+#: plinth/modules/backups/forms.py:190
msgid ""
"Password of the SSH Server.
SSH key-based authentication is not yet "
"possible."
msgstr "SSH 服务器的密码。
基于密钥的 SSH 验证暂不支持。"
-#: plinth/modules/backups/forms.py:224
+#: plinth/modules/backups/forms.py:209
msgid "Remote backup repository already exists."
msgstr "远程备份存储库已存在。"
-#: plinth/modules/backups/forms.py:230
+#: plinth/modules/backups/forms.py:215
msgid "Select verified SSH public key"
msgstr "选择经过验证的 SSH 公钥"
-#: plinth/modules/backups/repository.py:48
+#: plinth/modules/backups/repository.py:33
msgid ""
"Connection refused - make sure you provided correct credentials and the "
"server is running."
msgstr "连接被拒绝——请确认您提供了正确的凭证并且服务器在运行。"
-#: plinth/modules/backups/repository.py:55
+#: plinth/modules/backups/repository.py:40
msgid "Connection refused"
msgstr "连接被拒绝"
-#: plinth/modules/backups/repository.py:62
+#: plinth/modules/backups/repository.py:47
msgid "Repository not found"
msgstr "找不到存储库"
-#: plinth/modules/backups/repository.py:67
+#: plinth/modules/backups/repository.py:52
msgid "Incorrect encryption passphrase"
msgstr "加密密码不正确"
-#: plinth/modules/backups/repository.py:72
+#: plinth/modules/backups/repository.py:57
msgid "SSH access denied"
msgstr "SSH 访问被拒绝"
-#: plinth/modules/backups/repository.py:78
+#: plinth/modules/backups/repository.py:63
msgid "Repository path is neither empty nor is an existing backups repository."
msgstr "存储库的路径为空或已有备份。"
-#: plinth/modules/backups/repository.py:152
+#: plinth/modules/backups/repository.py:137
msgid "Existing repository is not encrypted."
msgstr ""
-#: plinth/modules/backups/repository.py:337
+#: plinth/modules/backups/repository.py:322
#, python-brace-format
msgid "{box_name} storage"
msgstr "{box_name} 存储"
-#: plinth/modules/backups/templates/backups.html:45
-#: plinth/modules/backups/views.py:77
+#: plinth/modules/backups/templates/backups.html:30
+#: plinth/modules/backups/views.py:60
msgid "Create a new backup"
msgstr "创建新备份"
-#: plinth/modules/backups/templates/backups.html:49
+#: plinth/modules/backups/templates/backups.html:34
msgid "Create Backup"
msgstr "创建备份"
-#: plinth/modules/backups/templates/backups.html:52
+#: plinth/modules/backups/templates/backups.html:37
msgid "Upload and restore a backup archive"
msgstr "上传一个备份文件并从中恢复"
-#: plinth/modules/backups/templates/backups.html:56
+#: plinth/modules/backups/templates/backups.html:41
msgid "Upload and Restore"
msgstr "上传并恢复"
-#: plinth/modules/backups/templates/backups.html:59
+#: plinth/modules/backups/templates/backups.html:44
#, fuzzy
#| msgid "Add a remote backup location"
msgid "Add a backup location"
msgstr "添加一个远程备份位置"
-#: plinth/modules/backups/templates/backups.html:63
+#: plinth/modules/backups/templates/backups.html:48
#, fuzzy
#| msgid "Add a remote backup location"
msgid "Add Backup Location"
msgstr "添加一个远程备份位置"
-#: plinth/modules/backups/templates/backups.html:66
+#: plinth/modules/backups/templates/backups.html:51
msgid "Add a remote backup location"
msgstr "添加一个远程备份位置"
-#: plinth/modules/backups/templates/backups.html:70
+#: plinth/modules/backups/templates/backups.html:55
#, fuzzy
#| msgid "Add a remote backup location"
msgid "Add Remote Backup Location"
msgstr "添加一个远程备份位置"
-#: plinth/modules/backups/templates/backups.html:73
+#: plinth/modules/backups/templates/backups.html:58
msgid "Existing Backups"
msgstr "现有的备份"
-#: plinth/modules/backups/templates/backups_add_remote_repository.html:34
+#: plinth/modules/backups/templates/backups_add_remote_repository.html:19
#, python-format
msgid ""
"The credentials for this repository are stored on your %(box_name)s.
"
@@ -361,50 +361,51 @@ msgstr ""
"这个存储库的凭证存储在您的 %(box_name)s。
要在新的 %(box_name)s 中恢复备"
"份,你需要这个 ssh 凭证,如果当时选择了加密,则也需要密码。"
-#: plinth/modules/backups/templates/backups_add_remote_repository.html:43
+#: plinth/modules/backups/templates/backups_add_remote_repository.html:28
msgid "Create Location"
msgstr "创建存储位置"
-#: plinth/modules/backups/templates/backups_add_repository.html:34
-#: plinth/modules/gitweb/views.py:70
+#: plinth/modules/backups/templates/backups_add_repository.html:19
+#: plinth/modules/gitweb/views.py:50
#, fuzzy
#| msgid "Create User"
msgid "Create Repository"
msgstr "创建用户"
-#: plinth/modules/backups/templates/backups_delete.html:27
+#: plinth/modules/backups/templates/backups_delete.html:12
msgid "Delete this archive permanently?"
msgstr "永久删除此归档?"
-#: plinth/modules/backups/templates/backups_delete.html:33
-#: plinth/modules/ikiwiki/forms.py:30
-#: plinth/modules/networks/templates/connection_show.html:78
-#: plinth/modules/sharing/templates/sharing.html:52
+#: plinth/modules/backups/templates/backups_delete.html:18
+#: plinth/modules/ikiwiki/forms.py:15
+#: plinth/modules/networks/templates/connection_show.html:63
+#: plinth/modules/sharing/templates/sharing.html:37
msgid "Name"
msgstr "名称"
-#: plinth/modules/backups/templates/backups_delete.html:34
+#: plinth/modules/backups/templates/backups_delete.html:19
msgid "Time"
msgstr "时间"
-#: plinth/modules/backups/templates/backups_delete.html:51
+#: plinth/modules/backups/templates/backups_delete.html:36
#, python-format
msgid "Delete Archive %(name)s"
msgstr "删除名为 %(name)s 的存档"
-#: plinth/modules/backups/templates/backups_form.html:35
-#: plinth/modules/gitweb/templates/gitweb_create_edit.html:35
-#: plinth/modules/networks/templates/router_configuration_update.html:34
-#: plinth/modules/pagekite/templates/pagekite_custom_services.html:47
-#: plinth/modules/sharing/templates/sharing_add_edit.html:35
+#: plinth/modules/backups/templates/backups_form.html:20
+#: plinth/modules/gitweb/templates/gitweb_create_edit.html:20
+#: plinth/modules/networks/templates/internet_connectivity_type.html:18
+#: plinth/modules/networks/templates/router_configuration_update.html:19
+#: plinth/modules/pagekite/templates/pagekite_custom_services.html:32
+#: plinth/modules/sharing/templates/sharing_add_edit.html:20
msgid "Submit"
msgstr "提交"
-#: plinth/modules/backups/templates/backups_repository_remove.html:28
+#: plinth/modules/backups/templates/backups_repository_remove.html:13
msgid "Are you sure that you want to remove this repository?"
msgstr "你确定你想移除这一项存储吗?"
-#: plinth/modules/backups/templates/backups_repository_remove.html:34
+#: plinth/modules/backups/templates/backups_repository_remove.html:19
#, fuzzy
#| msgid ""
#| "\n"
@@ -422,24 +423,24 @@ msgstr ""
"⋯⋯这项操作只是将备份页面列表上的存储删除掉了,你只有可以再加上去。\n"
" "
-#: plinth/modules/backups/templates/backups_repository_remove.html:46
+#: plinth/modules/backups/templates/backups_repository_remove.html:31
msgid "Remove Location"
msgstr "移除存储位置"
-#: plinth/modules/backups/templates/backups_restore.html:30
+#: plinth/modules/backups/templates/backups_restore.html:15
msgid "Restore data from"
msgstr "从 恢复数据"
-#: plinth/modules/backups/templates/backups_restore.html:43
-#: plinth/modules/backups/views.py:171
+#: plinth/modules/backups/templates/backups_restore.html:28
+#: plinth/modules/backups/views.py:154
msgid "Restore"
msgstr "恢复"
-#: plinth/modules/backups/templates/backups_restore.html:47
+#: plinth/modules/backups/templates/backups_restore.html:32
msgid "Restoring"
msgstr "恢复中"
-#: plinth/modules/backups/templates/backups_upload.html:32
+#: plinth/modules/backups/templates/backups_upload.html:17
#, fuzzy, python-format
#| msgid ""
#| "\n"
@@ -463,12 +464,12 @@ msgstr ""
" 备份上传完成后,你可以选择你想要恢复的应用。\n"
" "
-#: plinth/modules/backups/templates/backups_upload.html:42
-#: plinth/modules/help/templates/statuslog.html:38
+#: plinth/modules/backups/templates/backups_upload.html:27
+#: plinth/modules/help/templates/statuslog.html:23
msgid "Caution:"
msgstr "注意:"
-#: plinth/modules/backups/templates/backups_upload.html:43
+#: plinth/modules/backups/templates/backups_upload.html:28
#, python-format
msgid ""
"You have %(max_filesize)s available to restore a backup. Exceeding this "
@@ -477,29 +478,29 @@ msgstr ""
"您有 %(max_filesize)s 的可用空间来恢复备份。超出此大小将会使您的 "
"%(box_name)s 不可用。"
-#: plinth/modules/backups/templates/backups_upload.html:56
+#: plinth/modules/backups/templates/backups_upload.html:41
msgid "Upload file"
msgstr "上传文件"
-#: plinth/modules/backups/templates/verify_ssh_hostkey.html:33
+#: plinth/modules/backups/templates/verify_ssh_hostkey.html:18
#, python-format
msgid ""
"Could not reach SSH host %(hostname)s. Please verify that the host is up and "
"accepting connections."
msgstr ""
-#: plinth/modules/backups/templates/verify_ssh_hostkey.html:43
+#: plinth/modules/backups/templates/verify_ssh_hostkey.html:28
#, python-format
msgid ""
"The authenticity of SSH host %(hostname)s could not be established. The host "
"advertises the following SSH public keys. Please verify any one of them."
msgstr ""
-#: plinth/modules/backups/templates/verify_ssh_hostkey.html:55
+#: plinth/modules/backups/templates/verify_ssh_hostkey.html:40
msgid "How to verify?"
msgstr "如何核实?"
-#: plinth/modules/backups/templates/verify_ssh_hostkey.html:60
+#: plinth/modules/backups/templates/verify_ssh_hostkey.html:45
msgid ""
"Run the following command on the SSH host machine. The output should match "
"one of the provided options. You can also use dsa, ecdsa, ed25519 etc. "
@@ -508,111 +509,103 @@ msgstr ""
"请在 SSH 主机上运行下面的命令。输出应该和提供的选项之一相符。您也可以选择相对"
"应的文件来使用 dsa、ecdsa、ed25519 等。"
-#: plinth/modules/backups/templates/verify_ssh_hostkey.html:75
+#: plinth/modules/backups/templates/verify_ssh_hostkey.html:60
msgid "Verify Host"
msgstr "核实本地计算机"
-#: plinth/modules/backups/views.py:72
+#: plinth/modules/backups/views.py:55
msgid "Archive created."
msgstr "文档已创建。"
-#: plinth/modules/backups/views.py:99
+#: plinth/modules/backups/views.py:82
msgid "Delete Archive"
msgstr "删除文档"
-#: plinth/modules/backups/views.py:111
+#: plinth/modules/backups/views.py:94
msgid "Archive deleted."
msgstr "归档已删除。"
-#: plinth/modules/backups/views.py:124
+#: plinth/modules/backups/views.py:107
msgid "Upload and restore a backup"
msgstr "上传并且储存一个备份"
-#: plinth/modules/backups/views.py:159
+#: plinth/modules/backups/views.py:142
msgid "Restored files from backup."
msgstr "从备份中恢复文件"
-#: plinth/modules/backups/views.py:186
+#: plinth/modules/backups/views.py:169
msgid "No backup file found."
msgstr "没有找到备份文件。"
-#: plinth/modules/backups/views.py:194
+#: plinth/modules/backups/views.py:177
msgid "Restore from uploaded file"
msgstr "从已上传的文件中恢复"
-#: plinth/modules/backups/views.py:251
+#: plinth/modules/backups/views.py:234
msgid "No additional disks available to add a repository."
msgstr "没有可增加到信息库的额外可用磁盘。"
-#: plinth/modules/backups/views.py:259
+#: plinth/modules/backups/views.py:242
#, fuzzy
#| msgid "Create remote backup repository"
msgid "Create backup repository"
msgstr "创建远程备份存储库"
-#: plinth/modules/backups/views.py:286
+#: plinth/modules/backups/views.py:269
msgid "Create remote backup repository"
msgstr "创建远程备份存储库"
-#: plinth/modules/backups/views.py:305
+#: plinth/modules/backups/views.py:288
msgid "Added new remote SSH repository."
msgstr "已添加新的远程 SSH 存储库。"
-#: plinth/modules/backups/views.py:327
+#: plinth/modules/backups/views.py:310
msgid "Verify SSH hostkey"
msgstr "验证 SSH hostkey"
-#: plinth/modules/backups/views.py:353
+#: plinth/modules/backups/views.py:336
msgid "SSH host already verified."
msgstr "SSH 主机已经验证过了。"
-#: plinth/modules/backups/views.py:363
+#: plinth/modules/backups/views.py:346
msgid "SSH host verified."
msgstr "SSH 主机已验证。"
-#: plinth/modules/backups/views.py:377
+#: plinth/modules/backups/views.py:360
msgid "SSH host public key could not be verified."
msgstr "SSH 主机的公钥无法被验证。"
-#: plinth/modules/backups/views.py:379
+#: plinth/modules/backups/views.py:362
msgid "Authentication to remote server failed."
msgstr "远程服务器认证失败。"
-#: plinth/modules/backups/views.py:381
+#: plinth/modules/backups/views.py:364
msgid "Error establishing connection to server: {}"
msgstr "启用到服务器的连接时错误:{}"
-#: plinth/modules/backups/views.py:392
+#: plinth/modules/backups/views.py:375
msgid "Repository removed."
msgstr "储存库被移除。"
-#: plinth/modules/backups/views.py:406
+#: plinth/modules/backups/views.py:389
msgid "Remove Repository"
msgstr "移除存储"
-#: plinth/modules/backups/views.py:415
+#: plinth/modules/backups/views.py:398
#, fuzzy
#| msgid "Repository removed. The remote backup itself was not deleted."
msgid "Repository removed. Backups were not deleted."
msgstr "存储库已移除。已有的远程备份未删除。"
-#: plinth/modules/backups/views.py:425
+#: plinth/modules/backups/views.py:408
msgid "Unmounting failed!"
msgstr "卸载失败!"
-#: plinth/modules/backups/views.py:440 plinth/modules/backups/views.py:444
+#: plinth/modules/backups/views.py:423 plinth/modules/backups/views.py:427
msgid "Mounting failed"
msgstr "安装失败"
-#: plinth/modules/bind/__init__.py:36
-msgid "BIND"
-msgstr "结合"
-
-#: plinth/modules/bind/__init__.py:38
-msgid "Domain Name Server"
-msgstr "域名服务器"
-
-#: plinth/modules/bind/__init__.py:45
+#: plinth/modules/bind/__init__.py:29
msgid ""
"BIND enables you to publish your Domain Name System (DNS) information on the "
"Internet, and to resolve DNS queries for your user devices on your network."
@@ -620,7 +613,7 @@ msgstr ""
"BIND 使您能够在网络上发布您的域名系统(DNS)信息,并解决您网络上用户设备的 "
"DNS 查询。"
-#: plinth/modules/bind/__init__.py:49
+#: plinth/modules/bind/__init__.py:33
#, python-brace-format
msgid ""
"Currently, on {box_name}, BIND is only used to resolve DNS queries for other "
@@ -630,39 +623,75 @@ msgstr ""
"目前,在 {box_name} 上,BIND 只用于解决本地网络其它机器的 DNS 查询。它也不适"
"用于从 {box_name} 分享来的互联网连接。"
-#: plinth/modules/bind/forms.py:37
+#: plinth/modules/bind/__init__.py:82
+msgid "BIND"
+msgstr "结合"
+
+#: plinth/modules/bind/__init__.py:83
+msgid "Domain Name Server"
+msgstr "域名服务器"
+
+#: plinth/modules/bind/forms.py:22
msgid "Forwarders"
msgstr "转发器"
-#: plinth/modules/bind/forms.py:38
+#: plinth/modules/bind/forms.py:23
msgid ""
"A list DNS servers, separated by space, to which requests will be forwarded"
msgstr "DNS 服务器列表,请求将会被转发到这里,使用空格分割。"
-#: plinth/modules/bind/forms.py:42
+#: plinth/modules/bind/forms.py:27
msgid "Enable DNSSEC"
msgstr "启用 DNSSEC"
-#: plinth/modules/bind/forms.py:43
+#: plinth/modules/bind/forms.py:28
msgid "Enable Domain Name System Security Extensions"
msgstr "启用域名系统安全扩展(DNSSEC)"
-#: plinth/modules/bind/views.py:58 plinth/modules/deluge/views.py:67
-#: plinth/modules/dynamicdns/views.py:171 plinth/modules/openvpn/views.py:153
-#: plinth/modules/shadowsocks/views.py:79
-#: plinth/modules/transmission/views.py:73
+#: plinth/modules/bind/templates/bind.html:11
+#, fuzzy
+#| msgid "Server domain"
+msgid "Serving Domains"
+msgstr "服务器域"
+
+#: plinth/modules/bind/templates/bind.html:16
+#: plinth/modules/ikiwiki/forms.py:12
+#: plinth/modules/networks/templates/connection_show.html:83
+#: plinth/modules/storage/templates/storage.html:28
+msgid "Type"
+msgstr "类型"
+
+#: plinth/modules/bind/templates/bind.html:17
+#, fuzzy
+#| msgid "Domain Name"
+msgid "Domain Names"
+msgstr "域名"
+
+#: plinth/modules/bind/templates/bind.html:18
+#, fuzzy
+#| msgid "Service"
+msgid "Serving"
+msgstr "服务"
+
+#: plinth/modules/bind/templates/bind.html:19
+#, fuzzy
+#| msgid "IP address"
+msgid "IP addresses"
+msgstr "IP 地址"
+
+#: plinth/modules/bind/templates/bind.html:35
+#: plinth/modules/bind/templates/bind.html:37
+msgid "Refresh IP address and domains"
+msgstr ""
+
+#: plinth/modules/bind/views.py:73 plinth/modules/deluge/views.py:46
+#: plinth/modules/dynamicdns/views.py:150 plinth/modules/openvpn/views.py:134
+#: plinth/modules/shadowsocks/views.py:59
+#: plinth/modules/transmission/views.py:52
msgid "Configuration updated"
msgstr "配置已更新"
-#: plinth/modules/cockpit/__init__.py:45 plinth/modules/cockpit/manifest.py:27
-msgid "Cockpit"
-msgstr "Cockpit"
-
-#: plinth/modules/cockpit/__init__.py:49
-msgid "Server Administration"
-msgstr "服务器管理"
-
-#: plinth/modules/cockpit/__init__.py:53
+#: plinth/modules/cockpit/__init__.py:32
#, python-brace-format
msgid ""
"Cockpit is a server manager that makes it easy to administer GNU/Linux "
@@ -674,7 +703,7 @@ msgstr ""
"个 {box_name} 上,许多通常不会需要的高级功能也可被控制。您也可以使用基于网页"
"的终端来进行控制台操作。"
-#: plinth/modules/cockpit/__init__.py:59
+#: plinth/modules/cockpit/__init__.py:38
#, fuzzy, python-brace-format
#| msgid ""
#| "When enabled, Cockpit will be available from /"
@@ -688,63 +717,71 @@ msgstr ""
"径访问。它将能被该 {box_name} 上任何属于 admin 组的用"
"户访问。"
-#: plinth/modules/cockpit/__init__.py:63
+#: plinth/modules/cockpit/__init__.py:42
msgid ""
"Cockpit requires that you access it through a domain name. It will not work "
"when accessed using an IP address as part of the URL."
msgstr ""
-#: plinth/modules/cockpit/templates/cockpit.html:26
+#: plinth/modules/cockpit/__init__.py:59 plinth/modules/cockpit/manifest.py:12
+msgid "Cockpit"
+msgstr "Cockpit"
+
+#: plinth/modules/cockpit/__init__.py:61
+msgid "Server Administration"
+msgstr "服务器管理"
+
+#: plinth/modules/cockpit/templates/cockpit.html:11
#, fuzzy
#| msgid "Access Point"
msgid "Access"
msgstr "访问点"
-#: plinth/modules/cockpit/templates/cockpit.html:29
+#: plinth/modules/cockpit/templates/cockpit.html:14
msgid "Cockpit will only work when accessed using the following URLs."
msgstr ""
-#: plinth/modules/config/__init__.py:37
-msgid "General Configuration"
-msgstr "常规配置"
-
-#: plinth/modules/config/__init__.py:40
+#: plinth/modules/config/__init__.py:23
msgid ""
"Here you can set some general configuration options like hostname, domain "
"name, webserver home page etc."
msgstr ""
-#: plinth/modules/config/__init__.py:67 plinth/modules/dynamicdns/views.py:44
-#: plinth/modules/i2p/views.py:31 plinth/modules/names/templates/names.html:44
-#: plinth/modules/names/templates/names.html:58
-#: plinth/modules/snapshot/views.py:41
-#: plinth/modules/tahoe/templates/tahoe-pre-setup.html:39
+#: plinth/modules/config/__init__.py:50
+msgid "General Configuration"
+msgstr "常规配置"
+
+#: plinth/modules/config/__init__.py:55 plinth/modules/dynamicdns/views.py:29
+#: plinth/modules/i2p/views.py:16 plinth/modules/names/templates/names.html:29
+#: plinth/modules/names/templates/names.html:43
+#: plinth/modules/snapshot/views.py:26
+#: plinth/modules/tahoe/templates/tahoe-pre-setup.html:24
msgid "Configure"
msgstr "配置"
-#: plinth/modules/config/__init__.py:71 plinth/modules/config/forms.py:76
-#: plinth/modules/dynamicdns/forms.py:110
+#: plinth/modules/config/__init__.py:59 plinth/modules/config/forms.py:61
+#: plinth/modules/dynamicdns/forms.py:95
msgid "Domain Name"
msgstr "域名"
-#: plinth/modules/config/forms.py:42 plinth/modules/config/forms.py:88
-#: plinth/modules/dynamicdns/forms.py:113
+#: plinth/modules/config/forms.py:27 plinth/modules/config/forms.py:73
+#: plinth/modules/dynamicdns/forms.py:98
msgid "Invalid domain name"
msgstr "无效的域名"
-#: plinth/modules/config/forms.py:50
+#: plinth/modules/config/forms.py:35
msgid "Apache Default"
msgstr "Apache 默认"
-#: plinth/modules/config/forms.py:51
+#: plinth/modules/config/forms.py:36
msgid "FreedomBox Service (Plinth)"
msgstr "FreedomBox 服务(Plinth)"
-#: plinth/modules/config/forms.py:63
+#: plinth/modules/config/forms.py:48
msgid "Hostname"
msgstr "主机名"
-#: plinth/modules/config/forms.py:65
+#: plinth/modules/config/forms.py:50
#, python-brace-format
msgid ""
"Hostname is the local name by which other devices on the local network can "
@@ -756,11 +793,11 @@ msgstr ""
"数字结束和开始作为内部字符只有字母、数字和连字符。总长度必须为 63 个字符或更"
"少。"
-#: plinth/modules/config/forms.py:72
+#: plinth/modules/config/forms.py:57
msgid "Invalid hostname"
msgstr "无效的主机名"
-#: plinth/modules/config/forms.py:78
+#: plinth/modules/config/forms.py:63
#, python-brace-format
msgid ""
"Domain name is the global name by which other devices on the Internet can "
@@ -775,11 +812,11 @@ msgstr ""
"为内部字符。每个标签的长度必须为 63 个字符或更少。域名总长度不得超过 253 个字"
"符。"
-#: plinth/modules/config/forms.py:93
+#: plinth/modules/config/forms.py:78
msgid "Webserver Home Page"
msgstr "Web 服务器首页"
-#: plinth/modules/config/forms.py:95
+#: plinth/modules/config/forms.py:80
#, python-brace-format
msgid ""
"Choose the default page that must be served when someone visits your "
@@ -793,63 +830,55 @@ msgstr ""
"{box_name} 服务(Plinth)之外的其它地方,您的用户必须明确输入 /plinth 或 /"
"freedombox 来访问 {box_name} 服务(Plinth)。"
-#: plinth/modules/config/forms.py:106
+#: plinth/modules/config/forms.py:91
msgid "Show advanced apps and features"
msgstr "展示先进的应用和特点"
-#: plinth/modules/config/forms.py:107
+#: plinth/modules/config/forms.py:92
msgid "Show apps and features that require more technical knowledge."
msgstr "展示需要更多专业知识的应用和特点。"
-#: plinth/modules/config/views.py:65
+#: plinth/modules/config/views.py:47
#, python-brace-format
msgid "Error setting hostname: {exception}"
msgstr "设置主机名错误:{exception}"
-#: plinth/modules/config/views.py:68
+#: plinth/modules/config/views.py:50
msgid "Hostname set"
msgstr "主机名设置"
-#: plinth/modules/config/views.py:77
+#: plinth/modules/config/views.py:59
#, python-brace-format
msgid "Error setting domain name: {exception}"
msgstr "设置域名错误:{exception}"
-#: plinth/modules/config/views.py:80
+#: plinth/modules/config/views.py:62
msgid "Domain name set"
msgstr "域名集"
-#: plinth/modules/config/views.py:88
+#: plinth/modules/config/views.py:70
#, python-brace-format
msgid "Error setting webserver home page: {exception}"
msgstr "设置主机名错误:{exception}"
-#: plinth/modules/config/views.py:91
+#: plinth/modules/config/views.py:73
msgid "Webserver home page set"
msgstr "网页服务器主页已设置"
-#: plinth/modules/config/views.py:99
+#: plinth/modules/config/views.py:81
#, python-brace-format
msgid "Error changing advanced mode: {exception}"
msgstr "更改为高级模式时错误:{exception}"
-#: plinth/modules/config/views.py:104
+#: plinth/modules/config/views.py:86
msgid "Showing advanced apps and features"
msgstr "展现先进的应用和特征"
-#: plinth/modules/config/views.py:107
+#: plinth/modules/config/views.py:89
msgid "Hiding advanced apps and features"
msgstr "隐藏先进的应用和特征"
-#: plinth/modules/coquelicot/__init__.py:40
-msgid "Coquelicot"
-msgstr "Coquelicot"
-
-#: plinth/modules/coquelicot/__init__.py:42 plinth/modules/samba/__init__.py:50
-msgid "File Sharing"
-msgstr "文件分享"
-
-#: plinth/modules/coquelicot/__init__.py:45
+#: plinth/modules/coquelicot/__init__.py:24
#, fuzzy
#| msgid ""
#| "Coquelicot is a “one-click” file sharing web application with a focus on "
@@ -863,7 +892,7 @@ msgstr ""
"Coquelicot 是一个“即点即用”的文件分享应用,注重保护用户隐私。适宜快速分享单个"
"文件。 "
-#: plinth/modules/coquelicot/__init__.py:48
+#: plinth/modules/coquelicot/__init__.py:27
msgid ""
"This Coquelicot instance is exposed to the public but requires an upload "
"password to prevent unauthorized access. You can set a new upload password "
@@ -871,97 +900,94 @@ msgid ""
"password is \"test\"."
msgstr ""
-#: plinth/modules/coquelicot/forms.py:30
+#: plinth/modules/coquelicot/__init__.py:45
+msgid "Coquelicot"
+msgstr "Coquelicot"
+
+#: plinth/modules/coquelicot/__init__.py:47 plinth/modules/samba/__init__.py:62
+msgid "File Sharing"
+msgstr "文件分享"
+
+#: plinth/modules/coquelicot/forms.py:15
msgid "Upload Password"
msgstr "保存密码"
-#: plinth/modules/coquelicot/forms.py:31
+#: plinth/modules/coquelicot/forms.py:16
msgid ""
"Set a new upload password for Coquelicot. Leave this field blank to keep the "
"current password."
msgstr ""
-#: plinth/modules/coquelicot/forms.py:35
+#: plinth/modules/coquelicot/forms.py:20
msgid "Maximum File Size (in MiB)"
msgstr "最大的文件容量(以MiB计算)"
-#: plinth/modules/coquelicot/forms.py:36
+#: plinth/modules/coquelicot/forms.py:21
msgid "Set the maximum size of the files that can be uploaded to Coquelicot."
msgstr ""
-#: plinth/modules/coquelicot/manifest.py:24
+#: plinth/modules/coquelicot/manifest.py:9
msgid "coquelicot"
msgstr ""
-#: plinth/modules/coquelicot/views.py:58
+#: plinth/modules/coquelicot/views.py:37
msgid "Upload password updated"
msgstr "上传密码已更新"
-#: plinth/modules/coquelicot/views.py:61
+#: plinth/modules/coquelicot/views.py:40
msgid "Failed to update upload password"
msgstr "更新上传的密码失败"
-#: plinth/modules/coquelicot/views.py:69
+#: plinth/modules/coquelicot/views.py:48
msgid "Maximum file size updated"
msgstr "最大玩家配置已更新"
-#: plinth/modules/coquelicot/views.py:72
+#: plinth/modules/coquelicot/views.py:51
msgid "Failed to update maximum file size"
msgstr "更新最大文件容量失败"
-#: plinth/modules/datetime/__init__.py:39
-msgid "Date & Time"
-msgstr "日期与时间"
-
-#: plinth/modules/datetime/__init__.py:42
+#: plinth/modules/datetime/__init__.py:25
msgid ""
"Network time server is a program that maintains the system time in "
"synchronization with servers on the Internet."
msgstr "网络时间服务是与 Internet 上的服务器同步系统时间的一个程序。"
-#: plinth/modules/datetime/__init__.py:97
+#: plinth/modules/datetime/__init__.py:42
+msgid "Date & Time"
+msgstr "日期与时间"
+
+#: plinth/modules/datetime/__init__.py:85
msgid "Time synchronized to NTP server"
msgstr ""
-#: plinth/modules/datetime/forms.py:35
+#: plinth/modules/datetime/forms.py:20
msgid "Time Zone"
msgstr "时区"
-#: plinth/modules/datetime/forms.py:36
+#: plinth/modules/datetime/forms.py:21
msgid ""
"Set your time zone to get accurate timestamps. This will set the system-wide "
"time zone."
msgstr "设置您的时区来得到准确的时间戳。这将影响全系统时区。"
-#: plinth/modules/datetime/forms.py:47
+#: plinth/modules/datetime/forms.py:32
msgid "-- no time zone set --"
msgstr "-- 时区未设置 --"
-#: plinth/modules/datetime/views.py:64
+#: plinth/modules/datetime/views.py:45
#, python-brace-format
msgid "Error setting time zone: {exception}"
msgstr "设置时区错误:{exception}"
-#: plinth/modules/datetime/views.py:67
+#: plinth/modules/datetime/views.py:48
msgid "Time zone set"
msgstr "时区设置"
-#: plinth/modules/deluge/__init__.py:39 plinth/modules/deluge/manifest.py:24
-msgid "Deluge"
-msgstr "启用 Deluge"
-
-#: plinth/modules/deluge/__init__.py:43
-#: plinth/modules/transmission/__init__.py:45
-msgid "BitTorrent Web Client"
-msgstr ""
-"BitTorrent 网页客户端\n"
-"(Deluge)"
-
-#: plinth/modules/deluge/__init__.py:46
+#: plinth/modules/deluge/__init__.py:25
msgid "Deluge is a BitTorrent client that features a Web UI."
msgstr "Deluge 是一个有网页界面的 BitTorrent 客户端。"
-#: plinth/modules/deluge/__init__.py:47
+#: plinth/modules/deluge/__init__.py:26
#, fuzzy
#| msgid ""
#| "When enabled, the Deluge web client will be available from /deluge 路径访问网页"
"服务器。默认密码是“deluge”,但是你需要在启用此服务以后立刻登录并修改它。"
-#: plinth/modules/deluge/__init__.py:51
-#: plinth/modules/transmission/__init__.py:57
+#: plinth/modules/deluge/__init__.py:30
+#: plinth/modules/transmission/__init__.py:34
msgid "Download files using BitTorrent applications"
msgstr ""
-#: plinth/modules/deluge/forms.py:35 plinth/modules/transmission/forms.py:35
+#: plinth/modules/deluge/__init__.py:46 plinth/modules/deluge/manifest.py:9
+msgid "Deluge"
+msgstr "启用 Deluge"
+
+#: plinth/modules/deluge/__init__.py:47
+#: plinth/modules/transmission/__init__.py:50
+msgid "BitTorrent Web Client"
+msgstr ""
+"BitTorrent 网页客户端\n"
+"(Deluge)"
+
+#: plinth/modules/deluge/forms.py:20 plinth/modules/transmission/forms.py:20
msgid "Download directory"
msgstr "下载目录"
-#: plinth/modules/deluge/manifest.py:25
+#: plinth/modules/deluge/manifest.py:10
msgid "Bittorrent client written in Python/PyGTK"
msgstr ""
-#: plinth/modules/diagnostics/__init__.py:33
-msgid "Diagnostics"
-msgstr "诊断程序"
-
-#: plinth/modules/diagnostics/__init__.py:36
+#: plinth/modules/diagnostics/__init__.py:19
msgid ""
"The system diagnostic test will run a number of checks on your system to "
"confirm that applications and services are working as expected."
msgstr ""
"系统诊断将运行测试程序检查您的系统以确认应用程序和服务正在按预期方式运行。"
-#: plinth/modules/diagnostics/diagnostics.py:65
+#: plinth/modules/diagnostics/__init__.py:37
+msgid "Diagnostics"
+msgstr "诊断程序"
+
+#: plinth/modules/diagnostics/diagnostics.py:48
msgid "Diagnostic Test"
msgstr "诊断测试"
-#: plinth/modules/diagnostics/templates/diagnostics.html:43
-#: plinth/modules/diagnostics/templates/diagnostics_button.html:28
-#: plinth/modules/diagnostics/templates/diagnostics_button.html:31
+#: plinth/modules/diagnostics/templates/diagnostics.html:28
+#: plinth/modules/diagnostics/templates/diagnostics_button.html:13
+#: plinth/modules/diagnostics/templates/diagnostics_button.html:16
msgid "Run Diagnostics"
msgstr "运行诊断程序"
-#: plinth/modules/diagnostics/templates/diagnostics.html:46
+#: plinth/modules/diagnostics/templates/diagnostics.html:31
msgid "Diagnostics test is currently running"
msgstr "当前正在运行诊断测试"
-#: plinth/modules/diagnostics/templates/diagnostics.html:59
+#: plinth/modules/diagnostics/templates/diagnostics.html:44
msgid "Results"
msgstr "结果"
-#: plinth/modules/diagnostics/templates/diagnostics.html:67
-#: plinth/modules/diagnostics/templates/diagnostics_app.html:27
+#: plinth/modules/diagnostics/templates/diagnostics.html:52
+#: plinth/modules/diagnostics/templates/diagnostics_app.html:12
#, python-format
msgid "App: %(app_id)s"
msgstr ""
-#: plinth/modules/diagnostics/templates/diagnostics_app.html:25
+#: plinth/modules/diagnostics/templates/diagnostics_app.html:10
msgid "Diagnostic Results"
msgstr "诊断结果"
-#: plinth/modules/diagnostics/templates/diagnostics_app.html:32
+#: plinth/modules/diagnostics/templates/diagnostics_app.html:17
#, fuzzy
#| msgid "This module does not support diagnostics"
msgid "This app does not support diagnostics"
msgstr "此模块不支持诊断"
-#: plinth/modules/diagnostics/templates/diagnostics_results.html:25
+#: plinth/modules/diagnostics/templates/diagnostics_results.html:10
msgid "Test"
msgstr "测试"
-#: plinth/modules/diagnostics/templates/diagnostics_results.html:26
+#: plinth/modules/diagnostics/templates/diagnostics_results.html:11
msgid "Result"
msgstr "结果"
-#: plinth/modules/diaspora/__init__.py:54
-#: plinth/modules/diaspora/manifest.py:38
-msgid "diaspora*"
-msgstr ""
-
-#: plinth/modules/diaspora/__init__.py:56
-msgid "Federated Social Network"
-msgstr ""
-
-#: plinth/modules/diaspora/__init__.py:63
+#: plinth/modules/diaspora/__init__.py:45
msgid ""
"diaspora* is a decentralized social network where you can store and control "
"your own data."
msgstr ""
-#: plinth/modules/diaspora/forms.py:30
+#: plinth/modules/diaspora/__init__.py:69
+#: plinth/modules/diaspora/manifest.py:23
+msgid "diaspora*"
+msgstr ""
+
+#: plinth/modules/diaspora/__init__.py:70
+msgid "Federated Social Network"
+msgstr ""
+
+#: plinth/modules/diaspora/forms.py:15
msgid "Enable new user registrations"
msgstr "实现新用户注册"
-#: plinth/modules/diaspora/manifest.py:26
+#: plinth/modules/diaspora/manifest.py:11
msgid "dandelion*"
msgstr ""
-#: plinth/modules/diaspora/manifest.py:28
+#: plinth/modules/diaspora/manifest.py:13
msgid ""
"It is an unofficial webview based client for the community-run, distributed "
"social network diaspora*"
msgstr ""
-#: plinth/modules/diaspora/templates/diaspora-post-setup.html:32
+#: plinth/modules/diaspora/templates/diaspora-post-setup.html:16
#, python-format
msgid ""
"The diaspora* pod domain is set to %(domain_name)s. User IDs will "
@@ -1080,43 +1117,39 @@ msgid ""
"href=\"https://diaspora.%(domain_name)s\"> diaspora.%(domain_name)s "
msgstr ""
-#: plinth/modules/diaspora/templates/diaspora-pre-setup.html:58
-#: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:40
-#: plinth/modules/ejabberd/templates/ejabberd.html:58
-#: plinth/modules/i2p/templates/i2p.html:34
-#: plinth/modules/ikiwiki/templates/ikiwiki_create.html:33
-#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:62
-#: plinth/modules/snapshot/templates/snapshot.html:30
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:51
-#: plinth/modules/tahoe/templates/tahoe-pre-setup.html:58
-#: plinth/templates/app.html:77
+#: plinth/modules/diaspora/templates/diaspora-pre-setup.html:43
+#: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:25
+#: plinth/modules/ejabberd/templates/ejabberd.html:43
+#: plinth/modules/i2p/templates/i2p.html:19
+#: plinth/modules/ikiwiki/templates/ikiwiki_create.html:18
+#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:47
+#: plinth/modules/snapshot/templates/snapshot.html:15
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:35
+#: plinth/modules/tahoe/templates/tahoe-pre-setup.html:43
+#: plinth/templates/app.html:62
msgid "Update setup"
msgstr "更新安装程序"
-#: plinth/modules/diaspora/views.py:93 plinth/modules/ejabberd/views.py:66
-#: plinth/modules/matrixsynapse/views.py:108
-#: plinth/modules/mediawiki/views.py:79 plinth/modules/openvpn/views.py:155
-#: plinth/modules/tor/views.py:156 plinth/views.py:175
+#: plinth/modules/diaspora/views.py:76 plinth/modules/ejabberd/views.py:46
+#: plinth/modules/matrixsynapse/views.py:85
+#: plinth/modules/mediawiki/views.py:59 plinth/modules/openvpn/views.py:136
+#: plinth/modules/tor/views.py:137 plinth/views.py:185
msgid "Setting unchanged"
msgstr "设置未改变"
-#: plinth/modules/diaspora/views.py:97
+#: plinth/modules/diaspora/views.py:80
#, fuzzy
#| msgid "Application enabled"
msgid "User registrations enabled"
msgstr "应用程序已启用"
-#: plinth/modules/diaspora/views.py:101
+#: plinth/modules/diaspora/views.py:84
#, fuzzy
#| msgid "Application disabled"
msgid "User registrations disabled"
msgstr "应用程序已禁用"
-#: plinth/modules/dynamicdns/__init__.py:40
-msgid "Dynamic DNS Client"
-msgstr "动态 DNS 客户端"
-
-#: plinth/modules/dynamicdns/__init__.py:44
+#: plinth/modules/dynamicdns/__init__.py:27
#, python-brace-format
msgid ""
"If your Internet provider changes your IP address periodically (i.e. every "
@@ -1126,7 +1159,7 @@ msgstr ""
"如果您的互联网提供商定期(例如每24小时)更改您的IP地址,其他人可能很难在互联"
"网上找到您。这会阻止其他人找到由此 {box_name} 提供的服务。"
-#: plinth/modules/dynamicdns/__init__.py:48
+#: plinth/modules/dynamicdns/__init__.py:31
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 "
@@ -1142,13 +1175,17 @@ msgstr ""
"将您的 DNS 名称分配给新的 IP,如果互联网上的某人要求您的 DNS 名称,他们将收到"
"一个带有您当前 IP 地址的响应。"
-#: plinth/modules/dynamicdns/__init__.py:78
+#: plinth/modules/dynamicdns/__init__.py:56
+msgid "Dynamic DNS Client"
+msgstr "动态 DNS 客户端"
+
+#: plinth/modules/dynamicdns/__init__.py:66
#, fuzzy
#| msgid "Domain Name"
msgid "Dynamic Domain Name"
msgstr "域名"
-#: plinth/modules/dynamicdns/forms.py:42
+#: plinth/modules/dynamicdns/forms.py:27
msgid ""
"The Variables <User>, <Pass>, <Ip>, <Domain> may be "
"used within the URL. For details see the update URL templates of the example "
@@ -1157,7 +1194,7 @@ msgstr ""
"变量 < 用户 > < 传递 > < Ip > < 域 > 可能在 URL 内使"
"用。详细信息请参见更新 URL 模板的示例提供程序。"
-#: plinth/modules/dynamicdns/forms.py:46
+#: plinth/modules/dynamicdns/forms.py:31
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 "
@@ -1166,7 +1203,7 @@ msgstr ""
"请选择您的提供商更新协议。如果您的提供商不支持 GnuDIP 协议或未列出您的提供商"
"可能会使用您的提供商的更新 URL。"
-#: plinth/modules/dynamicdns/forms.py:51
+#: plinth/modules/dynamicdns/forms.py:36
msgid ""
"Please do not enter a URL here (like \"https://example.com/\") but only the "
"hostname of the GnuDIP server (like \"example.com\")."
@@ -1174,26 +1211,26 @@ msgstr ""
"请不要在此输入 URL(如\"https://example.com/\"),只输入 GnuDIP 服务器的主机"
"名(例如“example.com”)。"
-#: plinth/modules/dynamicdns/forms.py:55
+#: plinth/modules/dynamicdns/forms.py:40
#, python-brace-format
msgid "The public domain name you want to use to reach your {box_name}."
msgstr "你访问你的 {box_name} 时想使用的公开域名。"
-#: plinth/modules/dynamicdns/forms.py:58
+#: plinth/modules/dynamicdns/forms.py:43
msgid "Use this option if your provider uses self signed certificates."
msgstr "如果您的提供商使用自签名的证书,请使用此选项。"
-#: plinth/modules/dynamicdns/forms.py:61
+#: plinth/modules/dynamicdns/forms.py:46
msgid ""
"If this option is selected, your username and password will be used for HTTP "
"basic authentication."
msgstr "如果选择了此选项,您的用户名和密码将用于 HTTP 基本身份验证。"
-#: plinth/modules/dynamicdns/forms.py:64
+#: plinth/modules/dynamicdns/forms.py:49
msgid "Leave this field empty if you want to keep your current password."
msgstr "如果你想保持你的当前密码,请将此字段留空。"
-#: plinth/modules/dynamicdns/forms.py:67
+#: plinth/modules/dynamicdns/forms.py:52
#, python-brace-format
msgid ""
"Optional Value. If your {box_name} is not connected directly to the Internet "
@@ -1205,72 +1242,72 @@ msgstr ""
"此 URL 用于确定真实的IP地址。URL应该简单地返回客户端来自的 IP (例如:http://"
"myip.datasystems24.de)。"
-#: plinth/modules/dynamicdns/forms.py:75
+#: plinth/modules/dynamicdns/forms.py:60
msgid "The username that was used when the account was created."
msgstr "账户创建时使用的用户名"
-#: plinth/modules/dynamicdns/forms.py:83
+#: plinth/modules/dynamicdns/forms.py:68
msgid "Enable Dynamic DNS"
msgstr "启用动态 DNS"
-#: plinth/modules/dynamicdns/forms.py:86
+#: plinth/modules/dynamicdns/forms.py:71
msgid "Service Type"
msgstr "服务类型"
-#: plinth/modules/dynamicdns/forms.py:91
+#: plinth/modules/dynamicdns/forms.py:76
msgid "GnuDIP Server Address"
msgstr "GnuDIP 服务器地址"
-#: plinth/modules/dynamicdns/forms.py:94
+#: plinth/modules/dynamicdns/forms.py:79
msgid "Invalid server name"
msgstr "服务器名称无效"
-#: plinth/modules/dynamicdns/forms.py:97
+#: plinth/modules/dynamicdns/forms.py:82
msgid "Update URL"
msgstr "更新 URL"
-#: plinth/modules/dynamicdns/forms.py:102
+#: plinth/modules/dynamicdns/forms.py:87
msgid "Accept all SSL certificates"
msgstr "接受所有 SSL 证书"
-#: plinth/modules/dynamicdns/forms.py:106
+#: plinth/modules/dynamicdns/forms.py:91
msgid "Use HTTP basic authentication"
msgstr "使用 HTTP 基本身份验证"
-#: plinth/modules/dynamicdns/forms.py:116 plinth/modules/networks/forms.py:217
+#: plinth/modules/dynamicdns/forms.py:101 plinth/modules/networks/forms.py:199
msgid "Username"
msgstr "用户名"
-#: plinth/modules/dynamicdns/forms.py:119 plinth/modules/networks/forms.py:218
-#: plinth/modules/shadowsocks/forms.py:60
+#: plinth/modules/dynamicdns/forms.py:104 plinth/modules/networks/forms.py:200
+#: plinth/modules/shadowsocks/forms.py:45
msgid "Password"
msgstr "密码"
-#: plinth/modules/dynamicdns/forms.py:123 plinth/modules/networks/forms.py:220
+#: plinth/modules/dynamicdns/forms.py:108 plinth/modules/networks/forms.py:202
msgid "Show password"
msgstr "显示密码"
-#: plinth/modules/dynamicdns/forms.py:127
+#: plinth/modules/dynamicdns/forms.py:112
msgid "URL to look up public IP"
msgstr "查寻公开 IP 的 URL"
-#: plinth/modules/dynamicdns/forms.py:151
+#: plinth/modules/dynamicdns/forms.py:136
msgid "Please provide an update URL or a GnuDIP server address"
msgstr "请提供一个更新 URL 或者 GnuDIP 服务器地址"
-#: plinth/modules/dynamicdns/forms.py:156
+#: plinth/modules/dynamicdns/forms.py:141
msgid "Please provide a GnuDIP username"
msgstr "请提供一个 GnuDIP 用户名"
-#: plinth/modules/dynamicdns/forms.py:160
+#: plinth/modules/dynamicdns/forms.py:145
msgid "Please provide a GnuDIP domain name"
msgstr "请提供一个 GnuDIP 域名"
-#: plinth/modules/dynamicdns/forms.py:165
+#: plinth/modules/dynamicdns/forms.py:150
msgid "Please provide a password"
msgstr "请提供一个密码"
-#: plinth/modules/dynamicdns/templates/dynamicdns.html:27
+#: plinth/modules/dynamicdns/templates/dynamicdns.html:12
msgid ""
"If you are looking for a free dynamic DNS account, you may find a free "
"GnuDIP service at "
"freedns.afraid.org 找到免费更新网址服务。"
-#: plinth/modules/dynamicdns/templates/dynamicdns.html:38
+#: plinth/modules/dynamicdns/templates/dynamicdns.html:23
#, python-format
msgid ""
"If your %(box_name)s is connected behind a NAT router, don't forget to add "
@@ -1293,7 +1330,7 @@ msgstr ""
"如果您的 %(box_name)s 经过 NAT 方式的路由连接,别忘了添加标准端口的转发,包"
"括 TCP 端口 80 (HTTP) 和 TCP 端口 443 (HTTPS)。"
-#: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:30
+#: plinth/modules/dynamicdns/templates/dynamicdns_configure.html:15
msgid ""
"You have disabled Javascript. Dynamic form mode is disabled and some helper "
"functions may not work (but the main functionality should work)."
@@ -1301,21 +1338,21 @@ msgstr ""
"您已禁用 Javascript。禁用动态表单模式和一些 helper 函数可能无法工作(但主要功"
"能应该工作)。"
-#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:24
+#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:9
msgid "NAT type"
msgstr "NAT 类型"
-#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:28
+#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:13
msgid ""
"NAT type was not detected yet. If you do not provide an \"IP Check URL\", we "
"will not detect a NAT type."
msgstr "不能检测 NAT 类型。如果你不提供”IP 检查 URL“,我们将不检测 NAT 类型。"
-#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:34
+#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:19
msgid "Direct connection to the Internet."
msgstr "直接连接到互联网。"
-#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:36
+#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:21
#, python-format
msgid ""
"Behind NAT. This means that Dynamic DNS service will poll the \"URL to look "
@@ -1327,50 +1364,39 @@ msgstr ""
"入“查找公共 IP 的 URL”),否则将不会检测到 IP 更改)。 如果 WAN IP 更改,可能"
"需要最多 %(timer)s 分钟,直到您的DNS条目更新。"
-#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:48
+#: plinth/modules/dynamicdns/templates/dynamicdns_status.html:33
msgid "Last update"
msgstr "最后一次更新"
-#: plinth/modules/dynamicdns/views.py:41 plinth/modules/help/__init__.py:59
-#: plinth/templates/help-menu.html:61 plinth/templates/help-menu.html:62
+#: plinth/modules/dynamicdns/views.py:26 plinth/modules/help/__init__.py:49
+#: plinth/templates/help-menu.html:46 plinth/templates/help-menu.html:47
msgid "About"
msgstr "关于"
-#: plinth/modules/dynamicdns/views.py:47
-#: plinth/modules/firewall/templates/firewall.html:25
-#: plinth/modules/firewall/templates/firewall.html:45
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:38
-#: plinth/modules/networks/templates/connection_show.html:261
-#: plinth/modules/openvpn/templates/openvpn.html:39
-#: plinth/modules/openvpn/templates/openvpn.html:60
-#: plinth/modules/tor/templates/tor.html:37
-#: plinth/modules/tor/templates/tor.html:51
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:61
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:60
-#: plinth/templates/app.html:42
+#: plinth/modules/dynamicdns/views.py:32
+#: plinth/modules/firewall/templates/firewall.html:10
+#: plinth/modules/firewall/templates/firewall.html:30
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:23
+#: plinth/modules/networks/templates/connection_show.html:246
+#: plinth/modules/openvpn/templates/openvpn.html:24
+#: plinth/modules/openvpn/templates/openvpn.html:45
+#: plinth/modules/tor/templates/tor.html:22
+#: plinth/modules/tor/templates/tor.html:36
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:46
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:45
+#: plinth/templates/app.html:27
msgid "Status"
msgstr "状态"
-#: plinth/modules/dynamicdns/views.py:79
+#: plinth/modules/dynamicdns/views.py:62
msgid "Configure Dynamic DNS"
msgstr "配置动态 DNS"
-#: plinth/modules/dynamicdns/views.py:105
+#: plinth/modules/dynamicdns/views.py:86
msgid "Dynamic DNS Status"
msgstr "动态 DNS 状态"
-#: plinth/modules/ejabberd/__init__.py:50
-msgid "ejabberd"
-msgstr ""
-
-#: plinth/modules/ejabberd/__init__.py:54
-#: plinth/modules/matrixsynapse/__init__.py:52
-#, fuzzy
-#| msgid "Web Server"
-msgid "Chat Server"
-msgstr "Web 服务器"
-
-#: plinth/modules/ejabberd/__init__.py:57
+#: plinth/modules/ejabberd/__init__.py:36
msgid ""
"XMPP is an open and standardized communication protocol. Here you can run "
"and configure your XMPP server, called ejabberd."
@@ -1378,7 +1404,7 @@ msgstr ""
"XMPP 是一种开放标准的通信协议。在这里你可以运行并配置您的 XMPP 服务器,称为 "
"ejabberd。"
-#: plinth/modules/ejabberd/__init__.py:60
+#: plinth/modules/ejabberd/__init__.py:39
#, fuzzy, python-brace-format
#| msgid ""
#| "To actually communicate, you can use the web client or any other XMPP 客户端。"
-#: plinth/modules/ejabberd/forms.py:32
+#: plinth/modules/ejabberd/__init__.py:70
+msgid "ejabberd"
+msgstr ""
+
+#: plinth/modules/ejabberd/__init__.py:71
+#: plinth/modules/matrixsynapse/__init__.py:68
+#, fuzzy
+#| msgid "Web Server"
+msgid "Chat Server"
+msgstr "Web 服务器"
+
+#: plinth/modules/ejabberd/forms.py:17
msgid "Enable Message Archive Management"
msgstr ""
-#: plinth/modules/ejabberd/forms.py:34
+#: plinth/modules/ejabberd/forms.py:19
#, python-brace-format
msgid ""
"If enabled, your {box_name} will store chat message histories. This allows "
@@ -1406,33 +1443,33 @@ msgid ""
"the histories are stored as plain text or encrypted."
msgstr ""
-#: plinth/modules/ejabberd/manifest.py:26
+#: plinth/modules/ejabberd/manifest.py:11
#, fuzzy
#| msgid "Connection"
msgid "Conversations"
msgstr "连接"
-#: plinth/modules/ejabberd/manifest.py:40
+#: plinth/modules/ejabberd/manifest.py:25
msgid "Xabber"
msgstr ""
-#: plinth/modules/ejabberd/manifest.py:42
+#: plinth/modules/ejabberd/manifest.py:27
msgid ""
"Open source Jabber (XMPP) client with multi-account support and clean and "
"simple interface. "
msgstr ""
-#: plinth/modules/ejabberd/manifest.py:57
+#: plinth/modules/ejabberd/manifest.py:42
msgid "Yaxim"
msgstr ""
-#: plinth/modules/ejabberd/manifest.py:71
+#: plinth/modules/ejabberd/manifest.py:56
#, fuzzy
#| msgid "Web Server"
msgid "ChatSecure"
msgstr "Web 服务器"
-#: plinth/modules/ejabberd/manifest.py:73
+#: plinth/modules/ejabberd/manifest.py:58
msgid ""
"ChatSecure is a free and open source messaging app that features OTR "
"encryption over XMPP. You can connect to an existing Google account, create "
@@ -1440,15 +1477,15 @@ msgid ""
"your own server for extra security."
msgstr ""
-#: plinth/modules/ejabberd/manifest.py:89
+#: plinth/modules/ejabberd/manifest.py:74
msgid "Dino"
msgstr ""
-#: plinth/modules/ejabberd/manifest.py:101
+#: plinth/modules/ejabberd/manifest.py:86
msgid "Gajim"
msgstr ""
-#: plinth/modules/ejabberd/templates/ejabberd.html:33
+#: plinth/modules/ejabberd/templates/ejabberd.html:18
#, python-format
msgid ""
"Your XMPP server domain is set to %(domainname)s. User IDs will look "
@@ -1459,28 +1496,24 @@ msgstr ""
"%(domainname)s。你可以在系统的配置中设置你"
"的域名。"
-#: plinth/modules/ejabberd/templates/ejabberd.html:50
-#: plinth/modules/i2p/templates/i2p.html:26
-#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:30
-#: plinth/modules/snapshot/templates/snapshot.html:27
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:43
-#: plinth/templates/app.html:70
+#: plinth/modules/ejabberd/templates/ejabberd.html:35
+#: plinth/modules/i2p/templates/i2p.html:11
+#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:15
+#: plinth/modules/snapshot/templates/snapshot.html:12
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:27
+#: plinth/templates/app.html:55
msgid "Configuration"
msgstr "配置"
-#: plinth/modules/ejabberd/views.py:78
+#: plinth/modules/ejabberd/views.py:58
msgid "Message Archive Management enabled"
msgstr ""
-#: plinth/modules/ejabberd/views.py:82
+#: plinth/modules/ejabberd/views.py:62
msgid "Message Archive Management disabled"
msgstr ""
-#: plinth/modules/firewall/__init__.py:39
-msgid "Firewall"
-msgstr "防火墙"
-
-#: plinth/modules/firewall/__init__.py:43
+#: plinth/modules/firewall/__init__.py:32
#, python-brace-format
msgid ""
"Firewall is a security system that controls the incoming and outgoing "
@@ -1490,24 +1523,28 @@ msgstr ""
"防火墙控制你的 {box_name} 上的进出网络流量。启用并正确配置防火墙上可以减少来"
"自互联网的安全威胁。"
-#: plinth/modules/firewall/components.py:130
+#: plinth/modules/firewall/__init__.py:63
+msgid "Firewall"
+msgstr "防火墙"
+
+#: plinth/modules/firewall/components.py:118
#, fuzzy, python-brace-format
#| msgid "Service discovery server is not running"
msgid "Port {name} ({details}) available for internal networks"
msgstr "服务发现服务未运行"
-#: plinth/modules/firewall/components.py:138
+#: plinth/modules/firewall/components.py:126
#, fuzzy, python-brace-format
#| msgid "Service discovery server is not running"
msgid "Port {name} ({details}) available for external networks"
msgstr "服务发现服务未运行"
-#: plinth/modules/firewall/components.py:143
+#: plinth/modules/firewall/components.py:131
#, python-brace-format
msgid "Port {name} ({details}) unavailable for external networks"
msgstr ""
-#: plinth/modules/firewall/templates/firewall.html:30
+#: plinth/modules/firewall/templates/firewall.html:15
#, python-format
msgid ""
"Firewall daemon is not running. Please run it. Firewall comes enabled by "
@@ -1519,42 +1556,42 @@ msgstr ""
"何基于 Debian 的系统(例如 %(box_name)s)上,您可以使用命令“service "
"firewalld start”或使用 systemd 的“systemctl start firewalld”命令运行它。"
-#: plinth/modules/firewall/templates/firewall.html:43
+#: plinth/modules/firewall/templates/firewall.html:28
msgid "Show Ports"
msgstr "显示端口"
-#: plinth/modules/firewall/templates/firewall.html:44
+#: plinth/modules/firewall/templates/firewall.html:29
msgid "Service/Port"
msgstr "服务/端口"
-#: plinth/modules/firewall/templates/firewall.html:63
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:89
+#: plinth/modules/firewall/templates/firewall.html:48
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:74
msgid "Enabled"
msgstr "启用"
-#: plinth/modules/firewall/templates/firewall.html:66
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:91
-#: plinth/modules/networks/forms.py:64 plinth/templates/cards.html:49
+#: plinth/modules/firewall/templates/firewall.html:51
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:76
+#: plinth/modules/networks/forms.py:47 plinth/templates/cards.html:34
msgid "Disabled"
msgstr "已禁用"
-#: plinth/modules/firewall/templates/firewall.html:78
+#: plinth/modules/firewall/templates/firewall.html:67
msgid "Permitted"
msgstr "允许"
-#: plinth/modules/firewall/templates/firewall.html:81
+#: plinth/modules/firewall/templates/firewall.html:70
msgid "Permitted (internal only)"
msgstr "允许(只允许内部连接)"
-#: plinth/modules/firewall/templates/firewall.html:84
+#: plinth/modules/firewall/templates/firewall.html:73
msgid "Permitted (external only)"
msgstr "允许(只允许外部连接)"
-#: plinth/modules/firewall/templates/firewall.html:87
+#: plinth/modules/firewall/templates/firewall.html:76
msgid "Blocked"
msgstr "已阻止"
-#: plinth/modules/firewall/templates/firewall.html:99
+#: plinth/modules/firewall/templates/firewall.html:88
msgid ""
"The operation of the firewall is automatic. When you enable a service it is "
"also permitted in the firewall and when you disable a service it is also "
@@ -1563,7 +1600,7 @@ msgstr ""
"防火墙的操作是自动的。当您启用服务时它也在防火墙中允许,当禁用一项服务时也会"
"禁用防火墙中的相应服务。"
-#: plinth/modules/first_boot/forms.py:29
+#: plinth/modules/first_boot/forms.py:14
#, python-brace-format
msgid ""
"Enter the secret generated during FreedomBox installation. This secret can "
@@ -1571,49 +1608,41 @@ msgid ""
"wizard-secret\" on your {box_name}"
msgstr ""
-#: plinth/modules/first_boot/forms.py:34
+#: plinth/modules/first_boot/forms.py:19
msgid "Firstboot Wizard Secret"
msgstr ""
-#: plinth/modules/first_boot/templates/firstboot_complete.html:26
+#: plinth/modules/first_boot/templates/firstboot_complete.html:11
msgid "Setup Complete!"
msgstr "安装已完成!"
-#: plinth/modules/first_boot/templates/firstboot_complete.html:29
+#: plinth/modules/first_boot/templates/firstboot_complete.html:14
#, python-format
msgid "Without any apps, your %(box_name)s cannot do very much."
msgstr ""
-#: plinth/modules/first_boot/templates/firstboot_complete.html:36
+#: plinth/modules/first_boot/templates/firstboot_complete.html:21
#, fuzzy
#| msgid "Install"
msgid "Install Apps"
msgstr "安装"
-#: plinth/modules/first_boot/templates/firstboot_complete.html:42
+#: plinth/modules/first_boot/templates/firstboot_complete.html:27
#, python-format
msgid ""
"You may want to check the network setup and "
"modify it if necessary."
msgstr ""
-#: plinth/modules/first_boot/templates/firstboot_welcome.html:52
+#: plinth/modules/first_boot/templates/firstboot_welcome.html:37
msgid "Start Setup"
msgstr "启动安装程序"
-#: plinth/modules/first_boot/views.py:64
+#: plinth/modules/first_boot/views.py:49
msgid "Setup Complete"
msgstr "安装完成"
-#: plinth/modules/gitweb/__init__.py:44 plinth/modules/gitweb/manifest.py:28
-msgid "Gitweb"
-msgstr ""
-
-#: plinth/modules/gitweb/__init__.py:48
-msgid "Simple Git Hosting"
-msgstr ""
-
-#: plinth/modules/gitweb/__init__.py:51
+#: plinth/modules/gitweb/__init__.py:28
msgid ""
"Git is a distributed version-control system for tracking changes in source "
"code during software development. Gitweb provides a web interface to Git "
@@ -1624,216 +1653,224 @@ msgid ""
"the world."
msgstr ""
-#: plinth/modules/gitweb/__init__.py:58
+#: plinth/modules/gitweb/__init__.py:35
msgid ""
"To learn more on how to use Git visit Git tutorial."
msgstr ""
-#: plinth/modules/gitweb/__init__.py:64
+#: plinth/modules/gitweb/__init__.py:39
msgid "Read-write access to Git repositories"
msgstr ""
-#: plinth/modules/gitweb/forms.py:59
+#: plinth/modules/gitweb/__init__.py:56 plinth/modules/gitweb/manifest.py:13
+msgid "Gitweb"
+msgstr ""
+
+#: plinth/modules/gitweb/__init__.py:57
+msgid "Simple Git Hosting"
+msgstr ""
+
+#: plinth/modules/gitweb/forms.py:44
#, fuzzy
#| msgid "Invalid hostname"
msgid "Invalid repository URL."
msgstr "无效的主机名"
-#: plinth/modules/gitweb/forms.py:69
+#: plinth/modules/gitweb/forms.py:54
#, fuzzy
#| msgid "Invalid hostname"
msgid "Invalid repository name."
msgstr "无效的主机名"
-#: plinth/modules/gitweb/forms.py:77
+#: plinth/modules/gitweb/forms.py:62
#, fuzzy
#| msgid ""
#| "Repository path is neither empty nor is an existing backups repository."
msgid "Name of a new repository or URL to import an existing repository."
msgstr "存储库的路径为空或已有备份。"
-#: plinth/modules/gitweb/forms.py:83
+#: plinth/modules/gitweb/forms.py:68
#, fuzzy
#| msgid "Create new repository"
msgid "Description of the repository"
msgstr "创建新存储库"
-#: plinth/modules/gitweb/forms.py:84 plinth/modules/gitweb/forms.py:88
+#: plinth/modules/gitweb/forms.py:69 plinth/modules/gitweb/forms.py:73
msgid "Optional, for displaying on Gitweb."
msgstr ""
-#: plinth/modules/gitweb/forms.py:86
+#: plinth/modules/gitweb/forms.py:71
#, fuzzy
#| msgid "Repository removed."
msgid "Repository's owner name"
msgstr "储存库被移除。"
-#: plinth/modules/gitweb/forms.py:91
+#: plinth/modules/gitweb/forms.py:76
#, fuzzy
#| msgid "Create User"
msgid "Private repository"
msgstr "创建用户"
-#: plinth/modules/gitweb/forms.py:92
+#: plinth/modules/gitweb/forms.py:77
msgid "Allow only authorized users to access this repository."
msgstr ""
-#: plinth/modules/gitweb/forms.py:113 plinth/modules/gitweb/forms.py:145
+#: plinth/modules/gitweb/forms.py:98 plinth/modules/gitweb/forms.py:130
#, fuzzy
#| msgid "This service already exists"
msgid "A repository with this name already exists."
msgstr "此服务已存在"
-#: plinth/modules/gitweb/forms.py:126
+#: plinth/modules/gitweb/forms.py:111
#, fuzzy
#| msgid "Create new repository"
msgid "Name of the repository"
msgstr "创建新存储库"
-#: plinth/modules/gitweb/forms.py:130
+#: plinth/modules/gitweb/forms.py:115
msgid "An alpha-numeric string that uniquely identifies a repository."
msgstr ""
-#: plinth/modules/gitweb/manifest.py:36
+#: plinth/modules/gitweb/manifest.py:21
msgid "Git"
msgstr ""
-#: plinth/modules/gitweb/templates/gitweb_configure.html:46
+#: plinth/modules/gitweb/templates/gitweb_configure.html:31
#, fuzzy
#| msgid "Create User"
msgid "Manage Repositories"
msgstr "创建用户"
-#: plinth/modules/gitweb/templates/gitweb_configure.html:50
-#: plinth/modules/gitweb/templates/gitweb_configure.html:52
+#: plinth/modules/gitweb/templates/gitweb_configure.html:35
+#: plinth/modules/gitweb/templates/gitweb_configure.html:37
#, fuzzy
#| msgid "Create User"
msgid "Create repository"
msgstr "创建用户"
-#: plinth/modules/gitweb/templates/gitweb_configure.html:59
+#: plinth/modules/gitweb/templates/gitweb_configure.html:44
#, fuzzy
#| msgid "Tor relay port available"
msgid "No repositories available."
msgstr "Tor 中继端口可用"
-#: plinth/modules/gitweb/templates/gitweb_configure.html:67
+#: plinth/modules/gitweb/templates/gitweb_configure.html:52
#, fuzzy, python-format
#| msgid "Delete user %(username)s"
msgid "Delete repository %(repo.name)s"
msgstr "删除用户 %(username)s"
-#: plinth/modules/gitweb/templates/gitweb_configure.html:83
+#: plinth/modules/gitweb/templates/gitweb_configure.html:68
msgid "Cloning..."
msgstr ""
-#: plinth/modules/gitweb/templates/gitweb_configure.html:89
+#: plinth/modules/gitweb/templates/gitweb_configure.html:74
#, fuzzy, python-format
#| msgid "Go to site %(site)s"
msgid "Go to repository %(repo.name)s"
msgstr "转到站点 %(site)s"
-#: plinth/modules/gitweb/templates/gitweb_delete.html:27
+#: plinth/modules/gitweb/templates/gitweb_delete.html:12
#, fuzzy, python-format
#| msgid "Delete Wiki or Blog %(name)s"
msgid "Delete Git Repository %(name)s"
msgstr "删除 wiki 页面或博客 %(name)s "
-#: plinth/modules/gitweb/templates/gitweb_delete.html:33
+#: plinth/modules/gitweb/templates/gitweb_delete.html:18
#, fuzzy
#| msgid "Delete this snapshot permanently?"
msgid "Delete this repository permanently?"
msgstr "永久删除此快照?"
-#: plinth/modules/gitweb/templates/gitweb_delete.html:42
-#: plinth/modules/ikiwiki/templates/ikiwiki_delete.html:44
+#: plinth/modules/gitweb/templates/gitweb_delete.html:27
+#: plinth/modules/ikiwiki/templates/ikiwiki_delete.html:29
#, python-format
msgid "Delete %(name)s"
msgstr "删除 %(name)s"
-#: plinth/modules/gitweb/views.py:65
+#: plinth/modules/gitweb/views.py:45
#, fuzzy
#| msgid "Repository removed."
msgid "Repository created."
msgstr "储存库被移除。"
-#: plinth/modules/gitweb/views.py:87
+#: plinth/modules/gitweb/views.py:67
#, fuzzy
#| msgid "An error occurred during configuration."
msgid "An error occurred while creating the repository."
msgstr "在配置过程中出错。"
-#: plinth/modules/gitweb/views.py:100
+#: plinth/modules/gitweb/views.py:80
#, fuzzy
#| msgid "Repository removed."
msgid "Repository edited."
msgstr "储存库被移除。"
-#: plinth/modules/gitweb/views.py:105
+#: plinth/modules/gitweb/views.py:85
#, fuzzy
#| msgid "Create User"
msgid "Edit repository"
msgstr "创建用户"
-#: plinth/modules/gitweb/views.py:133 plinth/modules/searx/views.py:62
-#: plinth/modules/searx/views.py:73 plinth/modules/tor/views.py:178
+#: plinth/modules/gitweb/views.py:113 plinth/modules/searx/views.py:42
+#: plinth/modules/searx/views.py:53 plinth/modules/tor/views.py:159
msgid "An error occurred during configuration."
msgstr "在配置过程中出错。"
-#: plinth/modules/gitweb/views.py:154
+#: plinth/modules/gitweb/views.py:134
#, python-brace-format
msgid "{name} deleted."
msgstr "{name} 已删除。"
-#: plinth/modules/gitweb/views.py:158
+#: plinth/modules/gitweb/views.py:138
#, python-brace-format
msgid "Could not delete {name}: {error}"
msgstr "不能删除 {name}:{error}"
-#: plinth/modules/help/__init__.py:40
+#: plinth/modules/help/__init__.py:30
msgid "Documentation"
msgstr "文档"
-#: plinth/modules/help/__init__.py:43 plinth/modules/networks/forms.py:64
-#: plinth/modules/networks/forms.py:95 plinth/templates/help-menu.html:35
-#: plinth/templates/help-menu.html:36 plinth/templates/index.html:135
+#: plinth/modules/help/__init__.py:33 plinth/modules/networks/forms.py:47
+#: plinth/modules/networks/forms.py:77 plinth/templates/help-menu.html:20
+#: plinth/templates/help-menu.html:21 plinth/templates/index.html:120
msgid "Manual"
msgstr "手册"
-#: plinth/modules/help/__init__.py:47 plinth/modules/help/help.py:58
-#: plinth/modules/help/templates/help_support.html:24
-#: plinth/templates/help-menu.html:42 plinth/templates/help-menu.html:43
+#: plinth/modules/help/__init__.py:37 plinth/modules/help/help.py:43
+#: plinth/modules/help/templates/help_support.html:9
+#: plinth/templates/help-menu.html:27 plinth/templates/help-menu.html:28
msgid "Get Support"
msgstr ""
-#: plinth/modules/help/__init__.py:51 plinth/modules/help/help.py:52
-#: plinth/modules/help/templates/help_feedback.html:24
-#: plinth/templates/help-menu.html:48 plinth/templates/help-menu.html:49
+#: plinth/modules/help/__init__.py:41 plinth/modules/help/help.py:37
+#: plinth/modules/help/templates/help_feedback.html:9
+#: plinth/templates/help-menu.html:33 plinth/templates/help-menu.html:34
msgid "Submit Feedback"
msgstr ""
-#: plinth/modules/help/__init__.py:55 plinth/modules/help/help.py:46
-#: plinth/modules/help/templates/help_contribute.html:24
-#: plinth/templates/help-menu.html:54 plinth/templates/help-menu.html:55
+#: plinth/modules/help/__init__.py:45 plinth/modules/help/help.py:31
+#: plinth/modules/help/templates/help_contribute.html:9
+#: plinth/templates/help-menu.html:39 plinth/templates/help-menu.html:40
msgid "Contribute"
msgstr ""
-#: plinth/modules/help/help.py:40
+#: plinth/modules/help/help.py:25
msgid "Documentation and FAQ"
msgstr "文档和 FAQ"
-#: plinth/modules/help/help.py:66
+#: plinth/modules/help/help.py:51
#, python-brace-format
msgid "About {box_name}"
msgstr "关于 {box_name}"
-#: plinth/modules/help/help.py:101
+#: plinth/modules/help/help.py:86
#, python-brace-format
msgid "{box_name} Manual"
msgstr "{box_name} 手册"
-#: plinth/modules/help/templates/help_about.html:32
+#: plinth/modules/help/templates/help_about.html:17
#, python-format
msgid ""
"%(box_name)s is a community project to develop, design and promote personal "
@@ -1850,7 +1887,7 @@ msgstr ""
"wiki、网站、社交网络、电子邮件、Web 代理和 Tor 中继,以便让您的数据与您在一"
"起。"
-#: plinth/modules/help/templates/help_about.html:45
+#: plinth/modules/help/templates/help_about.html:30
msgid ""
"We live in a world where our use of the network is mediated by those who "
"often do not have our best interests at heart. By building software that "
@@ -1864,7 +1901,7 @@ msgstr ""
"据保存在家中,我们可以获得有用的法律保护。通过在用户的网络和机器重获权力,我"
"们将互联网返回到应有的对等架构。"
-#: plinth/modules/help/templates/help_about.html:58
+#: plinth/modules/help/templates/help_about.html:43
#, python-format
msgid ""
"There are a number of projects working to realize a future of distributed "
@@ -1874,7 +1911,7 @@ msgstr ""
"有一些项目致力于实现未来的分布式服务;%(box_name)s 旨在将它们集中在一个方便的"
"软件包中。"
-#: plinth/modules/help/templates/help_about.html:66
+#: plinth/modules/help/templates/help_about.html:51
#, python-format
msgid ""
"For more information about the %(box_name)s project, see the %(box_name)s Wiki。"
-#: plinth/modules/help/templates/help_about.html:75
+#: plinth/modules/help/templates/help_about.html:60
msgid "Learn more »"
msgstr "了解更多»"
-#: plinth/modules/help/templates/help_about.html:78
+#: plinth/modules/help/templates/help_about.html:63
#, fuzzy, python-format
#| msgid "You are running Plinth version %(version)s."
msgid "You are running %(os_release)s and %(box_name)s version %(version)s."
msgstr "您正在运行 Plinth 版本 %(version)s。"
-#: plinth/modules/help/templates/help_about.html:83
+#: plinth/modules/help/templates/help_about.html:68
#, fuzzy, python-format
#| msgid "There is a new version available."
msgid "There is a new %(box_name)s version available."
msgstr "有新版本可用"
-#: plinth/modules/help/templates/help_about.html:87
+#: plinth/modules/help/templates/help_about.html:72
#, fuzzy, python-format
#| msgid "%(box_name)s Setup"
msgid "%(box_name)s is up to date."
msgstr "%(box_name)s 安装程序"
-#: plinth/modules/help/templates/help_about.html:94
+#: plinth/modules/help/templates/help_about.html:79
#, fuzzy
#| msgid "Security"
msgid "Security Notice"
msgstr "安全"
-#: plinth/modules/help/templates/help_about.html:96
+#: plinth/modules/help/templates/help_about.html:81
msgid ""
"You are using packages from Debian backports. Please note that these "
"packages do not have security support from Debian. However, they are "
@@ -1919,17 +1956,17 @@ msgid ""
"community."
msgstr ""
-#: plinth/modules/help/templates/help_base.html:36
-#: plinth/modules/help/templates/help_index.html:76
+#: plinth/modules/help/templates/help_base.html:21
+#: plinth/modules/help/templates/help_index.html:61
#, python-format
msgid "%(box_name)s Setup"
msgstr "%(box_name)s 安装程序"
-#: plinth/modules/help/templates/help_contribute.html:27
+#: plinth/modules/help/templates/help_contribute.html:12
msgid "The FreedomBox project welcomes contributions of all kinds."
msgstr ""
-#: plinth/modules/help/templates/help_contribute.html:33
+#: plinth/modules/help/templates/help_contribute.html:18
msgid ""
"You can contribute by writing code, testing and reporting bugs, discussing "
"new use cases and applications, designing logos and artwork, providing "
@@ -1938,7 +1975,7 @@ msgid ""
"the word."
msgstr ""
-#: plinth/modules/help/templates/help_contribute.html:43
+#: plinth/modules/help/templates/help_contribute.html:28
msgid ""
"You can also help the project financially by donating to the non-profit FreedomBox "
@@ -1950,26 +1987,26 @@ msgid ""
"supporters."
msgstr ""
-#: plinth/modules/help/templates/help_contribute.html:57
-#: plinth/modules/power/templates/power_restart.html:42
-#: plinth/modules/power/templates/power_shutdown.html:41
-#: plinth/templates/header.html:59
+#: plinth/modules/help/templates/help_contribute.html:42
+#: plinth/modules/power/templates/power_restart.html:27
+#: plinth/modules/power/templates/power_shutdown.html:26
+#: plinth/templates/app-header.html:51
msgid "Learn more..."
msgstr "了解更多……"
-#: plinth/modules/help/templates/help_feedback.html:27
+#: plinth/modules/help/templates/help_feedback.html:12
#, python-format
msgid "Your feedback will help us improve %(box_name)s!"
msgstr ""
-#: plinth/modules/help/templates/help_feedback.html:33
+#: plinth/modules/help/templates/help_feedback.html:18
msgid ""
"Let us know about missing features, your favourite apps and how we can "
"improve them on our discussion forum."
msgstr ""
-#: plinth/modules/help/templates/help_feedback.html:41
+#: plinth/modules/help/templates/help_feedback.html:26
msgid ""
"If you find any bugs or issues, please use the issue tracker"
@@ -1977,16 +2014,16 @@ msgid ""
"already reported and then use the \"New issue\" button."
msgstr ""
-#: plinth/modules/help/templates/help_feedback.html:51
+#: plinth/modules/help/templates/help_feedback.html:36
msgid "Thank you!"
msgstr ""
-#: plinth/modules/help/templates/help_index.html:27
-#: plinth/templates/help-menu.html:23 plinth/templates/help-menu.html:28
+#: plinth/modules/help/templates/help_index.html:12
+#: plinth/templates/help-menu.html:8 plinth/templates/help-menu.html:13
msgid "Help"
msgstr "帮助"
-#: plinth/modules/help/templates/help_index.html:31
+#: plinth/modules/help/templates/help_index.html:16
#, python-format
msgid ""
"The %(box_name)s Manual is the best place to "
@@ -1995,7 +2032,7 @@ msgstr ""
" %(box_name)s 手册 是开始了解 %(box_name)s 有"
"关信息最好的地方。"
-#: plinth/modules/help/templates/help_index.html:38
+#: plinth/modules/help/templates/help_index.html:23
#, python-format
msgid ""
" "
@@ -2004,7 +2041,7 @@ msgstr ""
" "
"%(box_name)s 项目 wiki 包含更多信息。"
-#: plinth/modules/help/templates/help_index.html:45
+#: plinth/modules/help/templates/help_index.html:30
#, python-format
msgid ""
"To seek help from %(box_name)s community, queries may be posted on the 邮件列表 上发布问题。邮"
"件列表存档还包含其他用户面临的问题和可能的解决方案的信息。"
-#: plinth/modules/help/templates/help_index.html:55
+#: plinth/modules/help/templates/help_index.html:40
#, python-format
msgid ""
"Many %(box_name)s contributors and users are also available on the irc.oftc."
@@ -2029,13 +2066,13 @@ msgstr ""
"randomnick=1&channels=freedombox&prompt=1\"> #freedombox 频道并在上面请求"
"帮助。"
-#: plinth/modules/help/templates/help_manual.html:40
+#: plinth/modules/help/templates/help_manual.html:25
#, fuzzy
#| msgid "downloading"
msgid "Download as PDF"
msgstr "下载中"
-#: plinth/modules/help/templates/help_support.html:27
+#: plinth/modules/help/templates/help_support.html:12
#, python-format
msgid ""
"If you need help in getting something done or if you are facing problems "
@@ -2043,13 +2080,13 @@ msgid ""
"contributors."
msgstr ""
-#: plinth/modules/help/templates/help_support.html:35
+#: plinth/modules/help/templates/help_support.html:20
msgid ""
"Search for past discussions or post a new query on our discussion forum."
msgstr ""
-#: plinth/modules/help/templates/help_support.html:42
+#: plinth/modules/help/templates/help_support.html:27
msgid ""
"You can also chat with us on our IRC and Matrix channels (bridged): "
"- #freedombox on irc.oftc.net
- #freedombox:matrix.org
"
@@ -2057,11 +2094,11 @@ msgid ""
"debian.net\">mailing list."
msgstr ""
-#: plinth/modules/help/templates/statuslog.html:25
+#: plinth/modules/help/templates/statuslog.html:10
msgid "Status Log"
msgstr "状态日志"
-#: plinth/modules/help/templates/statuslog.html:28
+#: plinth/modules/help/templates/statuslog.html:13
#, fuzzy, python-format
#| msgid ""
#| "These are the last %(num_lines)s lines of the status log for this web "
@@ -2078,23 +2115,13 @@ msgstr ""
"href=\"https://github.com/freedombox/Plinth/issues\"> bug 追踪器 并附上此"
"状态日志。"
-#: plinth/modules/help/templates/statuslog.html:39
+#: plinth/modules/help/templates/statuslog.html:24
msgid ""
"Please remove any passwords or other personal information from the log "
"before submitting the bug report."
msgstr "提交日志报告前,请从日志中删除任何密码和其他个人信息。"
-#: plinth/modules/i2p/__init__.py:42 plinth/modules/i2p/manifest.py:31
-msgid "I2P"
-msgstr ""
-
-#: plinth/modules/i2p/__init__.py:46 plinth/modules/tor/__init__.py:49
-#, fuzzy
-#| msgid "Tor Anonymity Network"
-msgid "Anonymity Network"
-msgstr "Tor 匿名网络"
-
-#: plinth/modules/i2p/__init__.py:49
+#: plinth/modules/i2p/__init__.py:28
msgid ""
"The Invisible Internet Project is an anonymous network layer intended to "
"protect communication from censorship and surveillance. I2P provides "
@@ -2102,7 +2129,7 @@ msgid ""
"distributed around the world."
msgstr ""
-#: plinth/modules/i2p/__init__.py:53
+#: plinth/modules/i2p/__init__.py:32
#, fuzzy
#| msgid ""
#| "For more information about the %(box_name)s project, see the %(box_name)s Wiki。"
-#: plinth/modules/i2p/__init__.py:55
+#: plinth/modules/i2p/__init__.py:34
msgid ""
"The first visit to the provided web interface will initiate the "
"configuration process."
msgstr ""
-#: plinth/modules/i2p/__init__.py:61
+#: plinth/modules/i2p/__init__.py:38
#, fuzzy
#| msgid "Enable application"
msgid "Manage I2P application"
msgstr "启用应用程序"
-#: plinth/modules/i2p/__init__.py:103
+#: plinth/modules/i2p/__init__.py:64 plinth/modules/i2p/manifest.py:16
+msgid "I2P"
+msgstr ""
+
+#: plinth/modules/i2p/__init__.py:65 plinth/modules/tor/__init__.py:56
+#, fuzzy
+#| msgid "Tor Anonymity Network"
+msgid "Anonymity Network"
+msgstr "Tor 匿名网络"
+
+#: plinth/modules/i2p/__init__.py:87
#, fuzzy
#| msgid "Privoxy Web Proxy"
msgid "I2P Proxy"
msgstr "Privoxy 网页代理"
-#: plinth/modules/i2p/templates/i2p_service.html:31
-#: plinth/templates/clients.html:43
+#: plinth/modules/i2p/templates/i2p_service.html:16
+#: plinth/templates/clients.html:28
msgid "Launch"
msgstr ""
-#: plinth/modules/i2p/views.py:34
+#: plinth/modules/i2p/views.py:19
msgid "Proxies"
msgstr ""
-#: plinth/modules/i2p/views.py:37
+#: plinth/modules/i2p/views.py:22
msgid "Anonymous torrents"
msgstr ""
-#: plinth/modules/i2p/views.py:88
+#: plinth/modules/i2p/views.py:64
msgid "I2P Proxies and Tunnels"
msgstr ""
-#: plinth/modules/i2p/views.py:91
+#: plinth/modules/i2p/views.py:67
msgid ""
"I2P lets you browse the Internet and hidden services (eepsites) anonymously. "
"For this, your browser, preferably a Tor Browser, needs to be configured for "
"a proxy."
msgstr ""
-#: plinth/modules/i2p/views.py:94
+#: plinth/modules/i2p/views.py:70
msgid ""
"By default HTTP, HTTPS and IRC proxies are available. Additional proxies and "
"tunnels may be configured using the tunnel configuration interface."
msgstr ""
-#: plinth/modules/i2p/views.py:103
+#: plinth/modules/i2p/views.py:79
msgid "Anonymous Torrents"
msgstr ""
-#: plinth/modules/i2p/views.py:106
+#: plinth/modules/i2p/views.py:82
msgid ""
"I2P provides an application to download files anonymously in a peer-to-peer "
"network. Download files by adding torrents or create a new torrent to share "
"a file."
msgstr ""
-#: plinth/modules/ikiwiki/__init__.py:41 plinth/modules/ikiwiki/manifest.py:24
-#, fuzzy
-#| msgid "wiki"
-msgid "ikiwiki"
-msgstr "维基"
-
-#: plinth/modules/ikiwiki/__init__.py:45
-msgid "Wiki and Blog"
-msgstr "Wiki 和博客"
-
-#: plinth/modules/ikiwiki/__init__.py:48
+#: plinth/modules/ikiwiki/__init__.py:27
#, fuzzy
#| msgid ""
#| "ikiwiki is a simple wiki and blog application. It supports several "
@@ -2199,7 +2226,7 @@ msgstr ""
"Markdown 和常见的博客功能,如评论和 RSS 源。启用后,博客和 Wiki 将可从 /ikiwiki 访问。"
-#: plinth/modules/ikiwiki/__init__.py:52
+#: plinth/modules/ikiwiki/__init__.py:31
#, python-brace-format
msgid ""
"Only {box_name} users in the admin group can create and "
@@ -2208,109 +2235,103 @@ msgid ""
"Configuration you can change these permissions or add new users."
msgstr ""
-#: plinth/modules/ikiwiki/__init__.py:62
+#: plinth/modules/ikiwiki/__init__.py:39
#, fuzzy
#| msgid "Services and Applications"
msgid "View and edit wiki applications"
msgstr "服务和应用程序"
-#: plinth/modules/ikiwiki/forms.py:27
-#: plinth/modules/networks/templates/connection_show.html:98
-#: plinth/modules/storage/templates/storage.html:43
-msgid "Type"
-msgstr "类型"
+#: plinth/modules/ikiwiki/__init__.py:53 plinth/modules/ikiwiki/manifest.py:9
+#, fuzzy
+#| msgid "wiki"
+msgid "ikiwiki"
+msgstr "维基"
-#: plinth/modules/ikiwiki/forms.py:32
+#: plinth/modules/ikiwiki/__init__.py:54
+msgid "Wiki and Blog"
+msgstr "Wiki 和博客"
+
+#: plinth/modules/ikiwiki/forms.py:17
msgid "Admin Account Name"
msgstr "管理员帐户名称"
-#: plinth/modules/ikiwiki/forms.py:34
+#: plinth/modules/ikiwiki/forms.py:19
msgid "Admin Account Password"
msgstr "管理员帐户密码"
-#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:27
+#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:12
msgid "Manage Wikis and Blogs"
msgstr "管理 Wiki 和博客"
-#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:31
-#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:33
-#: plinth/modules/ikiwiki/templates/ikiwiki_create.html:25
+#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:16
+#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:18
+#: plinth/modules/ikiwiki/templates/ikiwiki_create.html:10
msgid "Create Wiki or Blog"
msgstr "创建 Wiki 或博客"
-#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:40
+#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:25
msgid "No wikis or blogs available."
msgstr "没有 wiki 或博客可用。"
-#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:48
+#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:33
#, python-format
msgid "Delete site %(site)s"
msgstr "删除站点 %(site)s"
-#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:55
+#: plinth/modules/ikiwiki/templates/ikiwiki_configure.html:40
#, python-format
msgid "Go to site %(site)s"
msgstr "转到站点 %(site)s"
-#: plinth/modules/ikiwiki/templates/ikiwiki_delete.html:27
+#: plinth/modules/ikiwiki/templates/ikiwiki_delete.html:12
#, python-format
msgid "Delete Wiki or Blog %(name)s"
msgstr "删除 wiki 页面或博客 %(name)s "
-#: plinth/modules/ikiwiki/templates/ikiwiki_delete.html:33
+#: plinth/modules/ikiwiki/templates/ikiwiki_delete.html:18
msgid ""
"This action will remove all the posts, pages and comments including revision "
"history. Delete this wiki or blog permanently?"
msgstr ""
"此操作将删除所有文章、 网页和评论包括修订历史记录。 永久删除此 wiki 或博客吗?"
-#: plinth/modules/ikiwiki/views.py:96
+#: plinth/modules/ikiwiki/views.py:73
#, python-brace-format
msgid "Created wiki {name}."
msgstr "创建 wiki {name}。"
-#: plinth/modules/ikiwiki/views.py:99
+#: plinth/modules/ikiwiki/views.py:76
#, python-brace-format
msgid "Could not create wiki: {error}"
msgstr "不能创建 wiki:{error}"
-#: plinth/modules/ikiwiki/views.py:109
+#: plinth/modules/ikiwiki/views.py:86
#, python-brace-format
msgid "Created blog {name}."
msgstr "已创建的博客 {name}。"
-#: plinth/modules/ikiwiki/views.py:112
+#: plinth/modules/ikiwiki/views.py:89
#, python-brace-format
msgid "Could not create blog: {error}"
msgstr "不能创建博客:{error}"
-#: plinth/modules/ikiwiki/views.py:127
+#: plinth/modules/ikiwiki/views.py:104
#, fuzzy, python-brace-format
#| msgid "{name} deleted."
msgid "{title} deleted."
msgstr "{name} 已删除。"
-#: plinth/modules/ikiwiki/views.py:131
+#: plinth/modules/ikiwiki/views.py:108
#, fuzzy, python-brace-format
#| msgid "Could not delete {name}: {error}"
msgid "Could not delete {title}: {error}"
msgstr "不能删除 {name}:{error}"
-#: plinth/modules/infinoted/__init__.py:42
-msgid "infinoted"
-msgstr ""
-
-#: plinth/modules/infinoted/__init__.py:46
-#, fuzzy
-#| msgid "Web Server"
-msgid "Gobby Server"
-msgstr "Web 服务器"
-
-#: plinth/modules/infinoted/__init__.py:49
+#: plinth/modules/infinoted/__init__.py:26
msgid "infinoted is a server for Gobby, a collaborative text editor."
msgstr "infinoted 是一个 Gobby 服务器,Gobby 是一个协作化的文本编辑器。"
-#: plinth/modules/infinoted/__init__.py:51
+#: plinth/modules/infinoted/__init__.py:28
#, python-brace-format
msgid ""
"To use it, download Gobby, desktop "
@@ -2320,17 +2341,27 @@ msgstr ""
"要使用它, 下载 Gobby 的桌面客户端并"
"安装。然后启动 Gobby 并选择“连接到服务器”并书入你的 {box_name} 域名即可。"
-#: plinth/modules/infinoted/manifest.py:27
+#: plinth/modules/infinoted/__init__.py:48
+msgid "infinoted"
+msgstr ""
+
+#: plinth/modules/infinoted/__init__.py:49
+#, fuzzy
+#| msgid "Web Server"
+msgid "Gobby Server"
+msgstr "Web 服务器"
+
+#: plinth/modules/infinoted/manifest.py:12
msgid "Gobby"
msgstr ""
-#: plinth/modules/infinoted/manifest.py:29
+#: plinth/modules/infinoted/manifest.py:14
#, fuzzy
#| msgid "infinoted is a server for Gobby, a collaborative text editor."
msgid "Gobby is a collaborative text editor"
msgstr "infinoted 是一个 Gobby 服务器,Gobby 是一个协作化的文本编辑器。"
-#: plinth/modules/infinoted/manifest.py:32
+#: plinth/modules/infinoted/manifest.py:17
#, fuzzy, python-brace-format
#| msgid ""
#| "To use it, download Gobby, "
@@ -2343,11 +2374,17 @@ msgstr ""
"要使用它, 下载 Gobby 的桌面客户"
"端并安装。然后启动 Gobby 并选择“连接到服务器”并书入你的 {box_name} 域名即可。"
-#: plinth/modules/jsxc/__init__.py:36 plinth/modules/jsxc/manifest.py:25
+#: plinth/modules/jsxc/__init__.py:22
+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:40 plinth/modules/jsxc/manifest.py:10
msgid "JSXC"
msgstr ""
-#: plinth/modules/jsxc/__init__.py:40
+#: plinth/modules/jsxc/__init__.py:41
#, fuzzy
#| msgid ""
#| "Chat Client \n"
@@ -2357,30 +2394,12 @@ msgstr ""
"聊天客户端\n"
"(JSXC)"
-#: plinth/modules/jsxc/__init__.py:43
-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/templates/jsxc_launch.html:140
-#: plinth/templates/base.html:253
+#: plinth/modules/jsxc/templates/jsxc_launch.html:125
+#: plinth/templates/base.html:238
msgid "JavaScript license information"
msgstr ""
-#: plinth/modules/letsencrypt/__init__.py:48
-#, fuzzy
-#| msgid "Certificates (Let's Encrypt)"
-msgid "Let's Encrypt"
-msgstr "证书(Let's Encrypt)"
-
-#: plinth/modules/letsencrypt/__init__.py:50
-#, fuzzy
-#| msgid "Certificate Status"
-msgid "Certificates"
-msgstr "证书状态"
-
-#: plinth/modules/letsencrypt/__init__.py:54
+#: plinth/modules/letsencrypt/__init__.py:35
#, python-brace-format
msgid ""
"A digital certificate allows users of a web service to verify the identity "
@@ -2393,7 +2412,7 @@ msgstr ""
"动获取和设置每个可用域名的数字证书。它通过向 Let's Encrypt 证明自己是一个域名"
"的所有者。Let's Encrypt 是一个证书颁发机构(CA)。"
-#: plinth/modules/letsencrypt/__init__.py:60
+#: plinth/modules/letsencrypt/__init__.py:41
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 "
@@ -2404,79 +2423,91 @@ msgstr ""
"(ISRG)为公众利益而设立。请在使用此服务之前阅读并同意 Let's Encypt 订阅者协议。"
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:44
+#: plinth/modules/letsencrypt/__init__.py:65
+#, fuzzy
+#| msgid "Certificates (Let's Encrypt)"
+msgid "Let's Encrypt"
+msgstr "证书(Let's Encrypt)"
+
+#: plinth/modules/letsencrypt/__init__.py:66
+#, fuzzy
+#| msgid "Certificate Status"
+msgid "Certificates"
+msgstr "证书状态"
+
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:29
msgid "Domain"
msgstr "域名"
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:45
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:30
msgid "Certificate Status"
msgstr "证书状态"
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:46
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:31
msgid "Website Security"
msgstr "网站安全"
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:47
-#: plinth/modules/storage/templates/storage.html:45
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:32
+#: plinth/modules/storage/templates/storage.html:30
msgid "Actions"
msgstr "行动"
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:57
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:42
#, 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:64
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:49
#, fuzzy
#| msgid "Revoke"
msgid "Revoked"
msgstr "撤销"
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:68
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:53
#, 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:72
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:57
#, fuzzy
#| msgid "Invalid kite name"
msgid "Invalid test certificate"
msgstr "无效的 Kite 名称"
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:76
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:61
#, python-format
msgid "Invalid (%(reason)s)"
msgstr ""
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:83
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:68
msgid "No certificate"
msgstr "没有证书"
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:100
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:85
msgid "Re-obtain"
msgstr "重新获取"
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:106
-#: plinth/modules/networks/templates/connection_show.html:63
-#: plinth/modules/samba/templates/samba.html:142
-#: plinth/modules/wireguard/templates/wireguard_delete_client.html:39
-#: plinth/modules/wireguard/templates/wireguard_delete_server.html:48
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:88
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:89
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:91
+#: plinth/modules/networks/templates/connection_show.html:48
+#: plinth/modules/samba/templates/samba.html:127
+#: plinth/modules/wireguard/templates/wireguard_delete_client.html:24
+#: plinth/modules/wireguard/templates/wireguard_delete_server.html:33
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:73
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:74
msgid "Delete"
msgstr "删除"
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:113
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:98
msgid "Revoke"
msgstr "撤销"
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:121
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:106
msgid "Obtain"
msgstr "获取"
-#: plinth/modules/letsencrypt/templates/letsencrypt.html:132
+#: plinth/modules/letsencrypt/templates/letsencrypt.html:117
#, fuzzy, python-format
#| msgid ""
#| "No domains have been configured. Configure domains to be able to obtain "
@@ -2486,7 +2517,7 @@ msgid ""
"domains to be able to obtain certificates for them."
msgstr "没有配置域名。配置域名可以为它们获得相应的证书。"
-#: plinth/modules/letsencrypt/views.py:58
+#: plinth/modules/letsencrypt/views.py:41
#, fuzzy, python-brace-format
#| msgid "Certificate successfully revoked for domain {domain}"
msgid ""
@@ -2494,46 +2525,36 @@ msgid ""
"moments to take effect."
msgstr "成功为域名 {domain} 吊销证书"
-#: plinth/modules/letsencrypt/views.py:64
+#: plinth/modules/letsencrypt/views.py:47
#, python-brace-format
msgid "Failed to revoke certificate for domain {domain}: {error}"
msgstr "无法为 {domain} 撤销证书:{error}"
+#: plinth/modules/letsencrypt/views.py:60
#: plinth/modules/letsencrypt/views.py:77
-#: plinth/modules/letsencrypt/views.py:94
#, python-brace-format
msgid "Certificate successfully obtained for domain {domain}"
msgstr "为域名 {domain} 成功获得证书"
+#: plinth/modules/letsencrypt/views.py:65
#: plinth/modules/letsencrypt/views.py:82
-#: plinth/modules/letsencrypt/views.py:99
#, python-brace-format
msgid "Failed to obtain certificate for domain {domain}: {error}"
msgstr "未能为域名 {domain} 获取证书:{error}"
-#: plinth/modules/letsencrypt/views.py:111
+#: plinth/modules/letsencrypt/views.py:94
#, 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:116
+#: plinth/modules/letsencrypt/views.py:99
#, 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:48
-#, fuzzy
-#| msgid ""
-#| "Chat Server \n"
-#| " (Matrix Synapse)"
-msgid "Matrix Synapse"
-msgstr ""
-"聊天服务器\n"
-"(Matrix Synapse)"
-
-#: plinth/modules/matrixsynapse/__init__.py:55
+#: plinth/modules/matrixsynapse/__init__.py:34
msgid ""
"Matrix is an new "
"ecosystem for open, federated instant messaging and VoIP. Synapse is a "
@@ -2543,38 +2564,48 @@ msgid ""
"converse with users on all other Matrix servers via federation."
msgstr ""
-#: plinth/modules/matrixsynapse/__init__.py:62
+#: plinth/modules/matrixsynapse/__init__.py:41
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:29
+#: plinth/modules/matrixsynapse/__init__.py:66
+#, fuzzy
+#| msgid ""
+#| "Chat Server \n"
+#| " (Matrix Synapse)"
+msgid "Matrix Synapse"
+msgstr ""
+"聊天服务器\n"
+"(Matrix Synapse)"
+
+#: plinth/modules/matrixsynapse/forms.py:14
#, fuzzy
#| msgid "Enable application"
msgid "Enable Public Registration"
msgstr "启用应用程序"
-#: plinth/modules/matrixsynapse/forms.py:30
+#: plinth/modules/matrixsynapse/forms.py:15
msgid ""
"Enabling public registration means that anyone on the Internet can register "
"a new account on your Matrix server. Disable this if you only want existing "
"users to be able to use it."
msgstr ""
-#: plinth/modules/matrixsynapse/manifest.py:28
+#: plinth/modules/matrixsynapse/manifest.py:13
msgid "Riot"
msgstr ""
-#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:33
+#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:18
msgid ""
"Matrix service needs to be configured for a domain. Users on other Matrix "
"servers will be able to reach users on this server using this domain name. "
"Matrix user IDs will look like @username:domainname."
msgstr ""
-#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:41
+#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:26
msgid ""
"\n"
" Warning! Changing the domain name after the initial\n"
@@ -2582,14 +2613,14 @@ msgid ""
" "
msgstr ""
-#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:50
+#: plinth/modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:35
#, python-format
msgid ""
"No domain(s) are available. Configure at "
"least one domain to be able to use Matrix Synapse."
msgstr ""
-#: plinth/modules/matrixsynapse/templates/matrix-synapse.html:29
+#: plinth/modules/matrixsynapse/templates/matrix-synapse.html:14
#, fuzzy, python-format
#| msgid ""
#| "Your XMPP server domain is set to %(domainname)s. User IDs will "
@@ -2604,13 +2635,13 @@ msgstr ""
"%(domainname)s。你可以在系统的配置中设"
"置你的域名。"
-#: plinth/modules/matrixsynapse/templates/matrix-synapse.html:36
+#: plinth/modules/matrixsynapse/templates/matrix-synapse.html:21
msgid ""
"New users can be registered from any client if public registration is "
"enabled."
msgstr ""
-#: plinth/modules/matrixsynapse/templates/matrix-synapse.html:45
+#: plinth/modules/matrixsynapse/templates/matrix-synapse.html:30
#, python-format
msgid ""
"The configured domain name is using a self-signed certificate. Federation "
@@ -2618,28 +2649,19 @@ msgid ""
"go to Let's Encrypt to obtain one."
msgstr ""
-#: plinth/modules/matrixsynapse/views.py:121
+#: plinth/modules/matrixsynapse/views.py:98
#, fuzzy
#| msgid "Application enabled"
msgid "Public registration enabled"
msgstr "应用程序已启用"
-#: plinth/modules/matrixsynapse/views.py:126
+#: plinth/modules/matrixsynapse/views.py:103
#, fuzzy
#| msgid "Application disabled"
msgid "Public registration disabled"
msgstr "应用程序已禁用"
-#: plinth/modules/mediawiki/__init__.py:40
-#: plinth/modules/mediawiki/manifest.py:24
-msgid "MediaWiki"
-msgstr ""
-
-#: plinth/modules/mediawiki/__init__.py:44 plinth/templates/index.html:139
-msgid "Wiki"
-msgstr ""
-
-#: plinth/modules/mediawiki/__init__.py:47
+#: plinth/modules/mediawiki/__init__.py:26
msgid ""
"MediaWiki is the wiki engine that powers Wikipedia and other WikiMedia "
"projects. A wiki engine is a program for creating a collaboratively edited "
@@ -2647,7 +2669,7 @@ msgid ""
"collaborate with friends on projects."
msgstr ""
-#: plinth/modules/mediawiki/__init__.py:51
+#: plinth/modules/mediawiki/__init__.py:30
msgid ""
"This MediaWiki instance comes with a randomly generated administrator "
"password. You can set a new password in the \"Configuration\" section and "
@@ -2656,112 +2678,106 @@ msgid ""
"CreateAccount\">Special:CreateAccount page."
msgstr ""
-#: plinth/modules/mediawiki/__init__.py:57
+#: plinth/modules/mediawiki/__init__.py:36
msgid ""
"Anyone with a link to this wiki can read it. Only users that are logged in "
"can make changes to the content."
msgstr ""
-#: plinth/modules/mediawiki/forms.py:42
+#: plinth/modules/mediawiki/__init__.py:54
+#: plinth/modules/mediawiki/manifest.py:9
+msgid "MediaWiki"
+msgstr ""
+
+#: plinth/modules/mediawiki/__init__.py:55 plinth/templates/index.html:124
+msgid "Wiki"
+msgstr ""
+
+#: plinth/modules/mediawiki/forms.py:27
#, fuzzy
#| msgid "Administrator Account"
msgid "Administrator Password"
msgstr "管理员帐户"
-#: plinth/modules/mediawiki/forms.py:43
+#: plinth/modules/mediawiki/forms.py:28
msgid ""
"Set a new password for MediaWiki's administrator account (admin). Leave this "
"field blank to keep the current password."
msgstr ""
-#: plinth/modules/mediawiki/forms.py:48
+#: plinth/modules/mediawiki/forms.py:33
#, fuzzy
#| msgid "Enable application"
msgid "Enable public registrations"
msgstr "启用应用程序"
-#: plinth/modules/mediawiki/forms.py:49
+#: plinth/modules/mediawiki/forms.py:34
msgid ""
"If enabled, anyone on the internet will be able to create an account on your "
"MediaWiki instance."
msgstr ""
-#: plinth/modules/mediawiki/forms.py:53
+#: plinth/modules/mediawiki/forms.py:38
#, fuzzy
#| msgid "Enable creative mode"
msgid "Enable private mode"
msgstr "启用创意模式"
-#: plinth/modules/mediawiki/forms.py:54
+#: plinth/modules/mediawiki/forms.py:39
msgid ""
"If enabled, access will be restricted. Only people who have accounts can "
"read/write to the wiki. Public registrations will also be disabled."
msgstr ""
-#: plinth/modules/mediawiki/forms.py:59
+#: plinth/modules/mediawiki/forms.py:44
#, fuzzy
#| msgid "Default"
msgid "Default Skin"
msgstr "默认"
-#: plinth/modules/mediawiki/forms.py:60
+#: plinth/modules/mediawiki/forms.py:45
msgid ""
"Choose a default skin for your MediaWiki installation. Users have the option "
"to select their preferred skin."
msgstr ""
-#: plinth/modules/mediawiki/views.py:74
+#: plinth/modules/mediawiki/views.py:54
#, fuzzy
#| msgid "Password"
msgid "Password updated"
msgstr "密码"
-#: plinth/modules/mediawiki/views.py:93
+#: plinth/modules/mediawiki/views.py:73
#, fuzzy
#| msgid "Application enabled"
msgid "Public registrations enabled"
msgstr "应用程序已启用"
-#: plinth/modules/mediawiki/views.py:102
+#: plinth/modules/mediawiki/views.py:82
#, fuzzy
#| msgid "Application disabled"
msgid "Public registrations disabled"
msgstr "应用程序已禁用"
-#: plinth/modules/mediawiki/views.py:107
+#: plinth/modules/mediawiki/views.py:87
#, fuzzy
#| msgid "PageKite enabled"
msgid "Private mode enabled"
msgstr "PageKite 已启用"
-#: plinth/modules/mediawiki/views.py:114
+#: plinth/modules/mediawiki/views.py:94
#, fuzzy
#| msgid "PageKite disabled"
msgid "Private mode disabled"
msgstr "PageKite 已禁用"
-#: plinth/modules/mediawiki/views.py:122
+#: plinth/modules/mediawiki/views.py:102
#, fuzzy
#| msgid "Setting unchanged"
msgid "Default skin changed"
msgstr "设置未改变"
-#: plinth/modules/minetest/__init__.py:50
-#: plinth/modules/minetest/manifest.py:25
-msgid "Minetest"
-msgstr ""
-
-#: plinth/modules/minetest/__init__.py:54
-#, fuzzy
-#| msgid ""
-#| "Block Sandbox \n"
-#| " (Minetest)"
-msgid "Block Sandbox"
-msgstr ""
-"方块沙盒\n"
-"(Minetest)"
-
-#: plinth/modules/minetest/__init__.py:58
+#: plinth/modules/minetest/__init__.py:37
#, python-brace-format
msgid ""
"Minetest is a multiplayer infinite-world block sandbox. This module enables "
@@ -2773,11 +2789,26 @@ msgstr ""
"(30000)上运行 Minetest 服务器。要连接到服务器,需要 Minetest 客户端。"
-#: plinth/modules/minetest/forms.py:30
+#: plinth/modules/minetest/__init__.py:63
+#: plinth/modules/minetest/manifest.py:10
+msgid "Minetest"
+msgstr ""
+
+#: plinth/modules/minetest/__init__.py:64
+#, fuzzy
+#| msgid ""
+#| "Block Sandbox \n"
+#| " (Minetest)"
+msgid "Block Sandbox"
+msgstr ""
+"方块沙盒\n"
+"(Minetest)"
+
+#: plinth/modules/minetest/forms.py:15
msgid "Maximum number of players"
msgstr "最大玩家数量"
-#: plinth/modules/minetest/forms.py:32
+#: plinth/modules/minetest/forms.py:17
#, fuzzy
#| msgid ""
#| "You can change the maximum number of players playing "
@@ -2787,11 +2818,11 @@ msgid ""
"instance of time."
msgstr "你可以修改 minetest 单位时间单一实例里的最大玩家数量"
-#: plinth/modules/minetest/forms.py:36
+#: plinth/modules/minetest/forms.py:21
msgid "Enable creative mode"
msgstr "启用创意模式"
-#: plinth/modules/minetest/forms.py:37
+#: plinth/modules/minetest/forms.py:22
#, fuzzy
#| msgid ""
#| "Creative mode changes the rules of the game to make "
@@ -2802,11 +2833,11 @@ msgid ""
"creative gameplay, rather than challenging \"survival\" gameplay."
msgstr "创意模式可以修改游戏模式以便适合创意玩法,而非“逃生”模式。"
-#: plinth/modules/minetest/forms.py:42
+#: plinth/modules/minetest/forms.py:27
msgid "Enable PVP"
msgstr "启用玩家对战(PVP)"
-#: plinth/modules/minetest/forms.py:43
+#: plinth/modules/minetest/forms.py:28
#, fuzzy
#| msgid ""
#| "Enabling Player Vs Player will allow players to "
@@ -2814,11 +2845,11 @@ msgstr "启用玩家对战(PVP)"
msgid "Enabling Player Vs Player will allow players to damage other players."
msgstr "启用玩家对战模式允许玩家伤害另一个玩家"
-#: plinth/modules/minetest/forms.py:47
+#: plinth/modules/minetest/forms.py:32
msgid "Enable damage"
msgstr "启用伤害"
-#: plinth/modules/minetest/forms.py:48
+#: plinth/modules/minetest/forms.py:33
#, fuzzy
#| msgid ""
#| "When disabled, players cannot die or receive damage "
@@ -2826,39 +2857,33 @@ msgstr "启用伤害"
msgid "When disabled, players cannot die or receive damage of any kind."
msgstr "禁用时,玩家间不能互相伤害也不能死"
-#: plinth/modules/minetest/templates/minetest.html:33
-#: plinth/modules/networks/forms.py:66 plinth/modules/networks/forms.py:97
+#: plinth/modules/minetest/templates/minetest.html:18
+#: plinth/modules/networks/forms.py:49 plinth/modules/networks/forms.py:79
msgid "Address"
msgstr "地址"
-#: plinth/modules/minetest/templates/minetest.html:34
-#: plinth/modules/tor/templates/tor.html:96
+#: plinth/modules/minetest/templates/minetest.html:19
+#: plinth/modules/tor/templates/tor.html:81
msgid "Port"
msgstr "端口"
-#: plinth/modules/minetest/views.py:70
+#: plinth/modules/minetest/views.py:50
msgid "Maximum players configuration updated"
msgstr "最大玩家配置已更新"
-#: plinth/modules/minetest/views.py:77
+#: plinth/modules/minetest/views.py:57
msgid "Creative mode configuration updated"
msgstr "创意模式配置已更新"
-#: plinth/modules/minetest/views.py:83
+#: plinth/modules/minetest/views.py:63
msgid "PVP configuration updated"
msgstr "玩家对战(PVP)配置已更新"
-#: plinth/modules/minetest/views.py:89
+#: plinth/modules/minetest/views.py:69
msgid "Damage configuration updated"
msgstr "伤害配置已更新"
-#: plinth/modules/minidlna/__init__.py:41
-#, fuzzy
-#| msgid "Mumble Voice Chat Server"
-msgid "Simple Media Server"
-msgstr "Mumble 语音聊天服务器"
-
-#: plinth/modules/minidlna/__init__.py:44
+#: plinth/modules/minidlna/__init__.py:23
msgid ""
"MiniDLNA is a simple media server software, with the aim of being fully "
"compliant with DLNA/UPnP-AV clients. The MiniDNLA daemon serves media files "
@@ -2869,15 +2894,21 @@ msgid ""
"Kodi."
msgstr ""
-#: plinth/modules/minidlna/__init__.py:56
+#: plinth/modules/minidlna/__init__.py:33
msgid "Media streaming server"
msgstr ""
-#: plinth/modules/minidlna/forms.py:30
+#: plinth/modules/minidlna/__init__.py:47
+#, fuzzy
+#| msgid "Mumble Voice Chat Server"
+msgid "Simple Media Server"
+msgstr "Mumble 语音聊天服务器"
+
+#: plinth/modules/minidlna/forms.py:15
msgid "Media Files Directory"
msgstr ""
-#: plinth/modules/minidlna/forms.py:31
+#: plinth/modules/minidlna/forms.py:16
msgid ""
"Directory that MiniDLNA Server will read for content. All sub-directories of "
"this will be also scanned for media files. If you change the default ensure "
@@ -2885,85 +2916,80 @@ msgid ""
"user. Any user media directories (\"/home/username/\") will usually work."
msgstr ""
-#: plinth/modules/minidlna/manifest.py:25
+#: plinth/modules/minidlna/manifest.py:10
msgid "vlc"
msgstr ""
-#: plinth/modules/minidlna/manifest.py:64
+#: plinth/modules/minidlna/manifest.py:49
msgid "kodi"
msgstr ""
-#: plinth/modules/minidlna/manifest.py:103
+#: plinth/modules/minidlna/manifest.py:88
msgid "yaacc"
msgstr ""
-#: plinth/modules/minidlna/manifest.py:114
+#: plinth/modules/minidlna/manifest.py:99
msgid "totem"
msgstr ""
-#: plinth/modules/minidlna/views.py:57
+#: plinth/modules/minidlna/views.py:37
msgid "Specified directory does not exist."
msgstr ""
-#: plinth/modules/minidlna/views.py:62
+#: plinth/modules/minidlna/views.py:42
msgid "Updated media directory"
msgstr ""
-#: plinth/modules/mldonkey/__init__.py:40
-#: plinth/modules/mldonkey/manifest.py:27
-#, fuzzy
-#| msgid "Monkeysphere"
-msgid "MLDonkey"
-msgstr "Monkeysphere"
-
-#: plinth/modules/mldonkey/__init__.py:44
-#, fuzzy
-#| msgid "Enable Shaarli"
-msgid "Peer-to-peer File Sharing"
-msgstr "启用 Shaarli"
-
-#: plinth/modules/mldonkey/__init__.py:47
+#: plinth/modules/mldonkey/__init__.py:26
msgid ""
"MLDonkey is a peer-to-peer file sharing application used to exchange large "
"files. It can participate in multiple peer-to-peer networks including "
"eDonkey, Kademlia, Overnet, BitTorrent and DirectConnect."
msgstr ""
-#: plinth/modules/mldonkey/__init__.py:50
+#: plinth/modules/mldonkey/__init__.py:29
msgid ""
"Users belonging to admin and ed2k group can control it through the web "
"interface. Users in the admin group can also control it through any of the "
"separate mobile or desktop front-ends or a telnet interface. See manual."
msgstr ""
-#: plinth/modules/mldonkey/__init__.py:55
+#: plinth/modules/mldonkey/__init__.py:34
#, python-brace-format
msgid ""
"On {box_name}, downloaded files can be found in /var/lib/mldonkey/ directory."
msgstr ""
-#: plinth/modules/mldonkey/__init__.py:63
+#: plinth/modules/mldonkey/__init__.py:40
msgid "Download files using eDonkey applications"
msgstr ""
-#: plinth/modules/mldonkey/manifest.py:34
+#: plinth/modules/mldonkey/__init__.py:54
+#: plinth/modules/mldonkey/manifest.py:12
+#, fuzzy
+#| msgid "Monkeysphere"
+msgid "MLDonkey"
+msgstr "Monkeysphere"
+
+#: plinth/modules/mldonkey/__init__.py:56
+#, fuzzy
+#| msgid "Enable Shaarli"
+msgid "Peer-to-peer File Sharing"
+msgstr "启用 Shaarli"
+
+#: plinth/modules/mldonkey/manifest.py:19
#, fuzzy
#| msgid "Monkeysphere"
msgid "KMLDonkey"
msgstr "Monkeysphere"
-#: plinth/modules/mldonkey/manifest.py:46
+#: plinth/modules/mldonkey/manifest.py:31
#, fuzzy
#| msgid "Monkeysphere"
msgid "AMLDonkey"
msgstr "Monkeysphere"
-#: plinth/modules/monkeysphere/__init__.py:32
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:26
-msgid "Monkeysphere"
-msgstr "Monkeysphere"
-
-#: plinth/modules/monkeysphere/__init__.py:35
+#: plinth/modules/monkeysphere/__init__.py:18
msgid ""
"With Monkeysphere, an OpenPGP key can be generated for each configured "
"domain serving SSH. The OpenPGP public key can then be uploaded to the "
@@ -2981,7 +3007,7 @@ msgstr ""
"Monkeysphere "
"SSH 文档。"
-#: plinth/modules/monkeysphere/__init__.py:43
+#: plinth/modules/monkeysphere/__init__.py:26
msgid ""
"Monkeysphere can also generate an OpenPGP key for each Secure Web Server "
"(HTTPS) certificate installed on this machine. The OpenPGP public key can "
@@ -2997,95 +3023,100 @@ msgstr ""
"装 Monkeysphere网站上"
"提供的一些软件。"
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:60
+#: plinth/modules/monkeysphere/__init__.py:50
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:11
+msgid "Monkeysphere"
+msgstr "Monkeysphere"
+
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:45
msgid "Publishing key to keyserver..."
msgstr "正在发布密钥到密钥服务器..."
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:67
-#: plinth/modules/users/templates/users_delete.html:41
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:52
+#: plinth/modules/users/templates/users_delete.html:26
msgid "Cancel"
msgstr "取消"
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:75
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:55
-#: plinth/modules/tor/templates/tor.html:95
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:60
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:40
+#: plinth/modules/tor/templates/tor.html:80
msgid "Service"
msgstr "服务"
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:76
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:61
msgid "Domains"
msgstr "域名"
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:77
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:31
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:62
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:16
msgid "OpenPGP Fingerprint"
msgstr "OpenPGP 指纹"
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:86
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:58
-#: plinth/modules/names/components.py:39
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:71
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:43
+#: plinth/modules/names/components.py:24
msgid "Secure Shell"
msgstr "安全 Shell"
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:90
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:62
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:75
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:47
msgid "Other"
msgstr "其他"
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:127
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:112
#, python-format
msgid "Show details for key %(fingerprint)s"
msgstr "显示密钥 %(fingerprint)s 的详细信息"
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:133
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:118
msgid "-"
msgstr "-"
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:143
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:128
msgid "Import Key"
msgstr "导入密钥"
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:152
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:137
msgid "Publish Key"
msgstr "发布密钥"
-#: plinth/modules/monkeysphere/templates/monkeysphere.html:161
+#: plinth/modules/monkeysphere/templates/monkeysphere.html:146
msgid "Add Domains"
msgstr "添加域名"
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:35
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:20
msgid "OpenPGP User IDs"
msgstr "OpenPGP 用户ID"
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:39
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:24
msgid "Key Import Date"
msgstr "密钥导入日期"
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:43
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:28
msgid "SSH Key Type"
msgstr "SSH 密钥类型"
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:47
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:32
msgid "SSH Key Size"
msgstr "SSH 密钥大小"
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:51
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:36
msgid "SSH Fingerprint"
msgstr "SSH 指纹"
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:67
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:52
msgid "Key File"
msgstr "密钥文件"
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:71
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:56
msgid "Available Domains"
msgstr "可用域名"
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:75
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:60
msgid "Added Domains"
msgstr "已添加域名"
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:82
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:67
msgid ""
"After this key is published to the keyservers, it can be signed using GnuPG with the following commands:"
@@ -3093,39 +3124,54 @@ msgstr ""
"此密钥发布到密钥服务器后。可以使用如下的 GnuPG 命令来签名:"
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:88
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:73
msgid "Download the key"
msgstr "下载该密钥"
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:91
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:76
msgid "Sign the key"
msgstr "签名该密钥"
-#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:94
+#: plinth/modules/monkeysphere/templates/monkeysphere_details.html:79
msgid "Send the key back to the keyservers"
msgstr "将密钥发回密钥服务器"
-#: plinth/modules/monkeysphere/views.py:60
+#: plinth/modules/monkeysphere/views.py:43
msgid "Imported key."
msgstr "已导入密钥。"
-#: plinth/modules/monkeysphere/views.py:96
+#: plinth/modules/monkeysphere/views.py:79
msgid "Cancelled key publishing."
msgstr "已取消的密钥发布。"
-#: plinth/modules/monkeysphere/views.py:147
+#: plinth/modules/monkeysphere/views.py:130
msgid "Published key to keyserver."
msgstr "已发布到密钥服务器的密钥。"
-#: plinth/modules/monkeysphere/views.py:149
+#: plinth/modules/monkeysphere/views.py:132
msgid "Error occurred while publishing key."
msgstr "发布密钥时出现错误。"
-#: plinth/modules/mumble/__init__.py:33 plinth/modules/mumble/manifest.py:27
+#: plinth/modules/mumble/__init__.py:23
+msgid ""
+"Mumble is an open source, low-latency, encrypted, high quality voice chat "
+"software."
+msgstr "Mumble 是一个开放源码的低延迟、 加密、 高品质语音聊天软件。"
+
+#: plinth/modules/mumble/__init__.py:25
+msgid ""
+"You can connect to your Mumble server on the regular Mumble port 64738. Clients to connect to Mumble from your "
+"desktop and Android devices are available."
+msgstr ""
+"您可以使用常规端口 64738 连接到您的 Mumble 服务器。您可以从桌面和 Android 设"
+"备连接 Mumble 客户端。"
+
+#: plinth/modules/mumble/__init__.py:49 plinth/modules/mumble/manifest.py:12
msgid "Mumble"
msgstr ""
-#: plinth/modules/mumble/__init__.py:37
+#: plinth/modules/mumble/__init__.py:50
#, fuzzy
#| msgid ""
#| "Voice Chat \n"
@@ -3135,52 +3181,33 @@ msgstr ""
"语音聊天\n"
"(Mumble)"
-#: plinth/modules/mumble/__init__.py:44
-msgid ""
-"Mumble is an open source, low-latency, encrypted, high quality voice chat "
-"software."
-msgstr "Mumble 是一个开放源码的低延迟、 加密、 高品质语音聊天软件。"
-
-#: plinth/modules/mumble/__init__.py:46
-msgid ""
-"You can connect to your Mumble server on the regular Mumble port 64738. Clients to connect to Mumble from your "
-"desktop and Android devices are available."
-msgstr ""
-"您可以使用常规端口 64738 连接到您的 Mumble 服务器。您可以从桌面和 Android 设"
-"备连接 Mumble 客户端。"
-
-#: plinth/modules/mumble/forms.py:31
+#: plinth/modules/mumble/forms.py:16
#, fuzzy
#| msgid "SSH server password"
msgid "Set SuperUser Password"
msgstr "SSH 服务器密码"
-#: plinth/modules/mumble/forms.py:34
+#: plinth/modules/mumble/forms.py:19
msgid ""
"Optional. Leave this field blank to keep the current password. SuperUser "
"password can be used to manage permissions in Mumble."
msgstr ""
-#: plinth/modules/mumble/manifest.py:52
+#: plinth/modules/mumble/manifest.py:37
msgid "Plumble"
msgstr ""
-#: plinth/modules/mumble/manifest.py:66
+#: plinth/modules/mumble/manifest.py:51
msgid "Mumblefly"
msgstr ""
-#: plinth/modules/mumble/views.py:50
+#: plinth/modules/mumble/views.py:29
#, fuzzy
#| msgid "Password changed successfully."
msgid "SuperUser password successfully updated."
msgstr "已成功更改密码。"
-#: plinth/modules/names/__init__.py:37
-msgid "Name Services"
-msgstr "名称服务"
-
-#: plinth/modules/names/__init__.py:45
+#: plinth/modules/names/__init__.py:26
#, python-brace-format
msgid ""
"Name Services provides an overview of the ways {box_name} can be reached "
@@ -3189,78 +3216,82 @@ msgid ""
"enabled or disabled for incoming connections through the given name."
msgstr ""
-#: plinth/modules/names/components.py:27
+#: plinth/modules/names/__init__.py:46
+msgid "Name Services"
+msgstr "名称服务"
+
+#: plinth/modules/names/components.py:12
msgid "All"
msgstr ""
-#: plinth/modules/names/components.py:31 plinth/modules/names/components.py:35
+#: plinth/modules/names/components.py:16 plinth/modules/names/components.py:20
msgid "All web apps"
msgstr ""
-#: plinth/modules/networks/__init__.py:42
-msgid "Networks"
-msgstr "网络"
-
-#: plinth/modules/networks/__init__.py:45
+#: plinth/modules/networks/__init__.py:35
msgid ""
"Configure network devices. Connect to the Internet via Ethernet, Wi-Fi or "
"PPPoE. Share that connection with other devices on the network."
msgstr ""
-#: plinth/modules/networks/__init__.py:47
+#: plinth/modules/networks/__init__.py:37
msgid ""
"Devices administered through other methods may not be available for "
"configuration here."
msgstr ""
-#: plinth/modules/networks/__init__.py:156
+#: plinth/modules/networks/__init__.py:58
+msgid "Networks"
+msgstr "网络"
+
+#: plinth/modules/networks/__init__.py:151
#, python-brace-format
msgid "Using DNSSEC on IPv{kind}"
msgstr "在 IPv{kind} 上使用 DNSSEC"
-#: plinth/modules/networks/forms.py:32
+#: plinth/modules/networks/forms.py:16
msgid "Connection Type"
msgstr "连接类型"
-#: plinth/modules/networks/forms.py:44
+#: plinth/modules/networks/forms.py:28
msgid "Connection Name"
msgstr "连接名称"
-#: plinth/modules/networks/forms.py:46
+#: plinth/modules/networks/forms.py:30
#, fuzzy
#| msgid "Interface"
msgid "Network Interface"
msgstr "接口"
-#: plinth/modules/networks/forms.py:47
+#: plinth/modules/networks/forms.py:31
msgid "The network device that this connection should be bound to."
msgstr "连接应绑定到的网络设备。"
-#: plinth/modules/networks/forms.py:50
+#: plinth/modules/networks/forms.py:34
msgid "Firewall Zone"
msgstr "防火墙区域"
-#: plinth/modules/networks/forms.py:51
+#: plinth/modules/networks/forms.py:35
msgid ""
"The firewall zone will control which services are available over this "
"interfaces. Select Internal only for trusted networks."
msgstr "防火墙区域将控制哪些服务可用在此接口。选择内部只有受信任的网络。"
-#: plinth/modules/networks/forms.py:54
-#: plinth/modules/networks/templates/connections_diagram.html:78
+#: plinth/modules/networks/forms.py:38
+#: plinth/modules/networks/templates/connections_diagram.html:63
msgid "External"
msgstr "外网"
-#: plinth/modules/networks/forms.py:54
-#: plinth/modules/networks/templates/connections_diagram.html:107
+#: plinth/modules/networks/forms.py:38
+#: plinth/modules/networks/templates/connections_diagram.html:92
msgid "Internal"
msgstr "内网"
-#: plinth/modules/networks/forms.py:56
+#: plinth/modules/networks/forms.py:40
msgid "IPv4 Addressing Method"
msgstr "IPv4 寻址方式"
-#: plinth/modules/networks/forms.py:58
+#: plinth/modules/networks/forms.py:41
#, python-brace-format
msgid ""
"\"Automatic\" method will make {box_name} acquire configuration from this "
@@ -3270,39 +3301,39 @@ msgstr ""
"“自动”方式可以让 {box_name} 从此网络请求一个配置使其成为一个客户端。“共享”方"
"式会让 {box_name} 作为一个路由器,配置此网络上的客户端并共享互联网连接。"
-#: plinth/modules/networks/forms.py:63
+#: plinth/modules/networks/forms.py:46
msgid "Automatic (DHCP)"
msgstr "自动 (DHCP)"
-#: plinth/modules/networks/forms.py:63
+#: plinth/modules/networks/forms.py:46
msgid "Shared"
msgstr "共享"
-#: plinth/modules/networks/forms.py:69
+#: plinth/modules/networks/forms.py:52
msgid "Netmask"
msgstr "子网掩码"
-#: plinth/modules/networks/forms.py:70
+#: plinth/modules/networks/forms.py:53
msgid ""
"Optional value. If left blank, a default netmask based on the address will "
"be used."
msgstr "可选的值。如果为空,则将使用基于地址的默认子网掩码。"
-#: plinth/modules/networks/forms.py:74 plinth/modules/networks/forms.py:104
-#: plinth/modules/networks/templates/connection_show.html:202
-#: plinth/modules/networks/templates/connection_show.html:241
+#: plinth/modules/networks/forms.py:57 plinth/modules/networks/forms.py:86
+#: plinth/modules/networks/templates/connection_show.html:187
+#: plinth/modules/networks/templates/connection_show.html:226
msgid "Gateway"
msgstr "网关"
-#: plinth/modules/networks/forms.py:74 plinth/modules/networks/forms.py:104
+#: plinth/modules/networks/forms.py:57 plinth/modules/networks/forms.py:86
msgid "Optional value."
msgstr "可选的值。"
-#: plinth/modules/networks/forms.py:77 plinth/modules/networks/forms.py:107
+#: plinth/modules/networks/forms.py:60 plinth/modules/networks/forms.py:89
msgid "DNS Server"
msgstr "DNS 服务器"
-#: plinth/modules/networks/forms.py:78
+#: plinth/modules/networks/forms.py:61
msgid ""
"Optional value. If this value is given and IPv4 addressing method is "
"\"Automatic\", the DNS Servers provided by a DHCP server will be ignored."
@@ -3310,11 +3341,11 @@ msgstr ""
"可选的值。如果给出了此值和 IPv4 寻址方法是\"自动\",将忽略由 DHCP 服务器提供"
"的 DNS 服务器。"
-#: plinth/modules/networks/forms.py:83 plinth/modules/networks/forms.py:113
+#: plinth/modules/networks/forms.py:66 plinth/modules/networks/forms.py:95
msgid "Second DNS Server"
msgstr "备选 DNS 服务器"
-#: plinth/modules/networks/forms.py:84
+#: plinth/modules/networks/forms.py:67
msgid ""
"Optional value. If this value is given and IPv4 Addressing Method is "
"\"Automatic\", the DNS Servers provided by a DHCP server will be ignored."
@@ -3322,38 +3353,38 @@ msgstr ""
"可选的值。如果给出了此值和 IPv4 寻址方式是\"自动\",将忽略由 DHCP 服务器提供"
"的 DNS 服务器。"
-#: plinth/modules/networks/forms.py:89
+#: plinth/modules/networks/forms.py:72
msgid "IPv6 Addressing Method"
msgstr "IPv6 寻址方式"
-#: plinth/modules/networks/forms.py:91
+#: plinth/modules/networks/forms.py:73
#, python-brace-format
msgid ""
"\"Automatic\" methods will make {box_name} acquire configuration from this "
"network making it a client."
msgstr "“自动”方式可以让 {box_name} 从此网络请求一个配置使其成为一个客户端。"
-#: plinth/modules/networks/forms.py:94 plinth/modules/networks/forms.py:259
+#: plinth/modules/networks/forms.py:76 plinth/modules/networks/forms.py:241
msgid "Automatic"
msgstr "自动"
-#: plinth/modules/networks/forms.py:94
+#: plinth/modules/networks/forms.py:76
msgid "Automatic, DHCP only"
msgstr "自动,只使用 DHCP"
-#: plinth/modules/networks/forms.py:95
+#: plinth/modules/networks/forms.py:77
msgid "Ignore"
msgstr "忽略"
-#: plinth/modules/networks/forms.py:99
+#: plinth/modules/networks/forms.py:81
msgid "Prefix"
msgstr "前缀"
-#: plinth/modules/networks/forms.py:100
+#: plinth/modules/networks/forms.py:82
msgid "Value between 1 and 128."
msgstr "在 1 到 128 之间取值。"
-#: plinth/modules/networks/forms.py:108
+#: plinth/modules/networks/forms.py:90
msgid ""
"Optional value. If this value is given and IPv6 addressing method is "
"\"Automatic\", the DNS Servers provided by a DHCP server will be ignored."
@@ -3361,7 +3392,7 @@ msgstr ""
"可选的值。如果给出了此值和 IPv6 寻址方法是\"自动\",将忽略由 DHCP 服务器提供"
"的 DNS 服务器。"
-#: plinth/modules/networks/forms.py:114
+#: plinth/modules/networks/forms.py:96
msgid ""
"Optional value. If this value is given and IPv6 Addressing Method is "
"\"Automatic\", the DNS Servers provided by a DHCP server will be ignored."
@@ -3369,64 +3400,64 @@ msgstr ""
"可选的值。如果给出了此值和 IPv6 寻址方式是\"自动\",将忽略由 DHCP 服务器提供"
"的 DNS 服务器。"
-#: plinth/modules/networks/forms.py:127
+#: plinth/modules/networks/forms.py:109
msgid "-- select --"
msgstr "-- 选择 --"
-#: plinth/modules/networks/forms.py:252
-#: plinth/modules/networks/templates/connection_show.html:144
+#: plinth/modules/networks/forms.py:234
+#: plinth/modules/networks/templates/connection_show.html:129
msgid "SSID"
msgstr "SSID"
-#: plinth/modules/networks/forms.py:253
+#: plinth/modules/networks/forms.py:235
msgid "The visible name of the network."
msgstr "可见网络的名称。"
-#: plinth/modules/networks/forms.py:255
-#: plinth/modules/networks/templates/connection_show.html:157
+#: plinth/modules/networks/forms.py:237
+#: plinth/modules/networks/templates/connection_show.html:142
msgid "Mode"
msgstr "模式"
-#: plinth/modules/networks/forms.py:255
+#: plinth/modules/networks/forms.py:237
msgid "Infrastructure"
msgstr "基础架构"
-#: plinth/modules/networks/forms.py:256
+#: plinth/modules/networks/forms.py:238
msgid "Access Point"
msgstr "访问点"
-#: plinth/modules/networks/forms.py:257
+#: plinth/modules/networks/forms.py:239
msgid "Ad-hoc"
msgstr "Ad-hoc"
-#: plinth/modules/networks/forms.py:259
+#: plinth/modules/networks/forms.py:241
msgid "Frequency Band"
msgstr "频带"
-#: plinth/modules/networks/forms.py:260
+#: plinth/modules/networks/forms.py:242
msgid "A (5 GHz)"
msgstr "A (5 GHz)"
-#: plinth/modules/networks/forms.py:261
+#: plinth/modules/networks/forms.py:243
msgid "B/G (2.4 GHz)"
msgstr "B/G (2.4 GHz)"
-#: plinth/modules/networks/forms.py:263
-#: plinth/modules/networks/templates/connection_show.html:173
+#: plinth/modules/networks/forms.py:245
+#: plinth/modules/networks/templates/connection_show.html:158
msgid "Channel"
msgstr "信道"
-#: plinth/modules/networks/forms.py:264
+#: plinth/modules/networks/forms.py:246
msgid ""
"Optional value. Wireless channel in the selected frequency band to restrict "
"to. Blank or 0 value means automatic selection."
msgstr "可选值。可通过指定频宽限制无线信道。为空或者填 0 表示自动选择。"
-#: plinth/modules/networks/forms.py:269
+#: plinth/modules/networks/forms.py:251
msgid "BSSID"
msgstr "BSSID"
-#: plinth/modules/networks/forms.py:270
+#: plinth/modules/networks/forms.py:252
msgid ""
"Optional value. Unique identifier for the access point. When connecting to "
"an access point, connect only if the BSSID of the access point matches the "
@@ -3435,44 +3466,84 @@ msgstr ""
"可选的值。指定接入点的标识。当要连接到一个接入点时,只会连接到符合给出值的提"
"供者。例如:00:11:22:aa:bb:cc。"
-#: plinth/modules/networks/forms.py:276
+#: plinth/modules/networks/forms.py:258
msgid "Authentication Mode"
msgstr "身份验证模式"
-#: plinth/modules/networks/forms.py:277
+#: plinth/modules/networks/forms.py:259
msgid ""
"Select WPA if the wireless network is secured and requires clients to have "
"the password to connect."
msgstr "如果无线网络安全的和要求客户端具有密码才能连接,请选择 WPA。"
-#: plinth/modules/networks/forms.py:279
+#: plinth/modules/networks/forms.py:261
msgid "WPA"
msgstr "WPA"
-#: plinth/modules/networks/forms.py:279
+#: plinth/modules/networks/forms.py:261
msgid "Open"
msgstr "打开"
+#: plinth/modules/networks/forms.py:297
+msgid "Choose your internet connection type"
+msgstr ""
+
+#: plinth/modules/networks/forms.py:301
+msgid ""
+"I have a public IP address that may change over timeThis means that devices on the Internet can reach you when you are "
+"connected to the Internet. Every time you connect to the Internet with your "
+"Internet Service Provider (ISP), you may get a different IP address, "
+"especially after some offline time. Many ISPs offer this type of "
+"connectivity. If you have a public IP address but are unsure if it changes "
+"over time or not, it is safer to choose this option.
"
+msgstr ""
+
#: plinth/modules/networks/forms.py:313
+#, python-brace-format
+msgid ""
+"I have a public IP address that does not change overtime (recommended)This means that devices on the Internet can reach you "
+"when you are connected to the Internet. Every time you connect to the "
+"Internet with your Internet Service Provider (ISP), you always get the same "
+"IP address. This is the most trouble-free setup for many {box_name} services "
+"but very few ISPs offer this. You may be able to get this service from your "
+"ISP by making an additional payment.
"
+msgstr ""
+
+#: plinth/modules/networks/forms.py:326
+#, python-brace-format
+msgid ""
+"I dont have a public IP addressThis means that "
+"devices on the Internet can not reach you when you are connected to "
+"the Internet. Every time you connect to the Internet with your Internet "
+"Service Provider (ISP), you get an IP address that is only relevant for "
+"local networks. Many ISPs offer this type of connectivity. This is the most "
+"troublesome situation for hosting services at home. {box_name} provides many "
+"workaround solutions but each solution has some limitations.
"
+msgstr ""
+
+#: plinth/modules/networks/forms.py:351
#, fuzzy
#| msgid "Current Network Configuration"
msgid "Preferred router configuration"
msgstr "当前的网络配置"
-#: plinth/modules/networks/forms.py:318
+#: plinth/modules/networks/forms.py:356
#, python-brace-format
msgid ""
-"Use DMZ feature to forward all trafficMost routers "
-"provide a configuration setting called DMZ. This will allow the router to "
-"forward all incoming traffic from the internet to a single IP address such "
-"as the {box_name}'s address. First remember to configure a static local IP "
-"address for your {box_name} in your router's configuration.
"
+"Use DMZ feature to forward all traffic (recommended) Most routers provide a configuration setting called DMZ. This will allow "
+"the router to forward all incoming traffic from the Internet to a single IP "
+"address such as the {box_name}'s IP address. First remember to configure a "
+"static local IP address for your {box_name} in your router's configuration."
+"p>"
msgstr ""
-#: plinth/modules/networks/forms.py:332
+#: plinth/modules/networks/forms.py:368
#, python-brace-format
msgid ""
-"Forward Specific Traffic as needed by each application
You may alternatively choose to forward only specific traffic to your "
"{box_name}. This is ideal if you have other servers like {box_name} in your "
"network or if your router does not support DMZ feature. All applications "
@@ -3481,264 +3552,270 @@ msgid ""
"to be forwarded for that application to work.
"
msgstr ""
-#: plinth/modules/networks/forms.py:349
+#: plinth/modules/networks/forms.py:382
msgid ""
-"Router is currently unconfiguredChoose this if you "
+"Router is currently unconfigured
Choose this if you "
"have not configured or are unable to configure the router currently and wish "
"to be reminded later. Some of the other configuration steps may fail.
"
msgstr ""
-#: plinth/modules/networks/networks.py:43
+#: plinth/modules/networks/networks.py:32
msgid "Network Connections"
msgstr "网络连接"
-#: plinth/modules/networks/networks.py:59
+#: plinth/modules/networks/networks.py:46
msgid "Cannot show connection: Connection not found."
msgstr "不能显示连接: 找不到连接。"
-#: plinth/modules/networks/networks.py:94
+#: plinth/modules/networks/networks.py:81
msgid "Connection Information"
msgstr "连接信息"
-#: plinth/modules/networks/networks.py:108
+#: plinth/modules/networks/networks.py:95
msgid "Cannot edit connection: Connection not found."
msgstr "不能编辑连接: 找不到连接。"
-#: plinth/modules/networks/networks.py:114
+#: plinth/modules/networks/networks.py:101
msgid "This type of connection is not yet understood."
msgstr "这种类型的连接尚没有引入。"
-#: plinth/modules/networks/networks.py:136
-#: plinth/modules/networks/networks.py:220
-#: plinth/modules/networks/templates/connections_edit.html:35
+#: plinth/modules/networks/networks.py:123
+#: plinth/modules/networks/networks.py:207
+#: plinth/modules/networks/templates/connections_edit.html:20
msgid "Edit Connection"
msgstr "编辑连接"
-#: plinth/modules/networks/networks.py:232
+#: plinth/modules/networks/networks.py:219
#, python-brace-format
msgid "Activated connection {name}."
msgstr "激活的连接 {name}。"
-#: plinth/modules/networks/networks.py:236
+#: plinth/modules/networks/networks.py:223
msgid "Failed to activate connection: Connection not found."
msgstr "未能激活连接: 找不到连接。"
-#: plinth/modules/networks/networks.py:242
+#: plinth/modules/networks/networks.py:229
#, python-brace-format
msgid "Failed to activate connection {name}: No suitable device is available."
msgstr "未能激活连接 {name}: 没有合适的设备是可用。"
-#: plinth/modules/networks/networks.py:255
+#: plinth/modules/networks/networks.py:242
#, python-brace-format
msgid "Deactivated connection {name}."
msgstr "停用的连接 {name}。"
-#: plinth/modules/networks/networks.py:259
+#: plinth/modules/networks/networks.py:246
msgid "Failed to de-activate connection: Connection not found."
msgstr "无法取消激活连接: 找不到连接。"
-#: plinth/modules/networks/networks.py:269
-#: plinth/modules/networks/templates/connections_list.html:62
-#: plinth/modules/networks/templates/connections_list.html:64
+#: plinth/modules/networks/networks.py:256
+#: plinth/modules/networks/templates/connections_list.html:12
+#: plinth/modules/networks/templates/connections_list.html:14
msgid "Nearby Wi-Fi Networks"
msgstr "附近的无线网络"
-#: plinth/modules/networks/networks.py:293
-#: plinth/modules/networks/templates/connections_list.html:67
-#: plinth/modules/networks/templates/connections_list.html:69
-#: plinth/modules/wireguard/templates/wireguard_add_server.html:34
+#: plinth/modules/networks/networks.py:280
+#: plinth/modules/networks/templates/connections_list.html:17
+#: plinth/modules/networks/templates/connections_list.html:19
+#: plinth/modules/wireguard/templates/wireguard_add_server.html:19
msgid "Add Connection"
msgstr "添加连接"
-#: plinth/modules/networks/networks.py:311
+#: plinth/modules/networks/networks.py:298
msgid "Adding New Generic Connection"
msgstr "添加新的常规连接"
-#: plinth/modules/networks/networks.py:329
+#: plinth/modules/networks/networks.py:316
msgid "Adding New Ethernet Connection"
msgstr "添加新的以太网连接"
-#: plinth/modules/networks/networks.py:347
+#: plinth/modules/networks/networks.py:334
msgid "Adding New PPPoE Connection"
msgstr "添加新的 PPPoE 连接"
-#: plinth/modules/networks/networks.py:382
+#: plinth/modules/networks/networks.py:369
msgid "Adding New Wi-Fi Connection"
msgstr "添加新的 Wi-Fi 连接"
-#: plinth/modules/networks/networks.py:397
+#: plinth/modules/networks/networks.py:384
#, python-brace-format
msgid "Connection {name} deleted."
msgstr "连接 {name} 已删除。"
-#: plinth/modules/networks/networks.py:401
-#: plinth/modules/networks/networks.py:411
+#: plinth/modules/networks/networks.py:388
+#: plinth/modules/networks/networks.py:398
msgid "Failed to delete connection: Connection not found."
msgstr "删除连接失败: 找不到连接。"
-#: plinth/modules/networks/networks.py:416
-#: plinth/modules/networks/templates/connections_delete.html:26
+#: plinth/modules/networks/networks.py:403
+#: plinth/modules/networks/templates/connections_delete.html:11
msgid "Delete Connection"
msgstr "删除连接"
-#: plinth/modules/networks/networks.py:442
+#: plinth/modules/networks/networks.py:428
#, fuzzy
#| msgid "Tor configuration is being updated"
msgid "Router configuration type saved."
msgstr "Tor 配置已更新"
-#: plinth/modules/networks/templates/connection_show.html:43
+#: plinth/modules/networks/networks.py:474
+#, fuzzy
+#| msgid "Tor configuration is being updated"
+msgid "Internet connection type saved."
+msgstr "Tor 配置已更新"
+
+#: plinth/modules/networks/templates/connection_show.html:28
msgid "Edit connection"
msgstr "编辑连接"
-#: plinth/modules/networks/templates/connection_show.html:43
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:83
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:84
-#: plinth/templates/base.html:167 plinth/templates/base.html:168
+#: plinth/modules/networks/templates/connection_show.html:28
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:68
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:69
+#: plinth/templates/base.html:152 plinth/templates/base.html:153
msgid "Edit"
msgstr "編輯"
-#: plinth/modules/networks/templates/connection_show.html:50
-#: plinth/modules/networks/templates/connections_list.html:90
+#: plinth/modules/networks/templates/connection_show.html:35
+#: plinth/modules/networks/templates/connections_list.html:40
msgid "Deactivate"
msgstr "停用"
-#: plinth/modules/networks/templates/connection_show.html:57
-#: plinth/modules/networks/templates/connections_list.html:98
+#: plinth/modules/networks/templates/connection_show.html:42
+#: plinth/modules/networks/templates/connections_list.html:48
msgid "Activate"
msgstr "激活"
-#: plinth/modules/networks/templates/connection_show.html:63
+#: plinth/modules/networks/templates/connection_show.html:48
msgid "Delete connection"
msgstr "删除连接"
-#: plinth/modules/networks/templates/connection_show.html:66
-#: plinth/modules/networks/templates/connections_diagram.html:73
-#: plinth/modules/networks/templates/connections_diagram.html:76
-#: plinth/modules/networks/templates/connections_diagram.html:105
-#: plinth/modules/networks/templates/connections_diagram.html:127
+#: plinth/modules/networks/templates/connection_show.html:51
+#: plinth/modules/networks/templates/connections_diagram.html:58
+#: plinth/modules/networks/templates/connections_diagram.html:61
+#: plinth/modules/networks/templates/connections_diagram.html:90
+#: plinth/modules/networks/templates/connections_diagram.html:112
msgid "Connection"
msgstr "连接"
-#: plinth/modules/networks/templates/connection_show.html:71
+#: plinth/modules/networks/templates/connection_show.html:56
msgid "Primary connection"
msgstr "主连接"
-#: plinth/modules/networks/templates/connection_show.html:73
-#: plinth/modules/networks/templates/connection_show.html:217
-#: plinth/modules/networks/templates/connection_show.html:256
+#: plinth/modules/networks/templates/connection_show.html:58
+#: plinth/modules/networks/templates/connection_show.html:202
+#: plinth/modules/networks/templates/connection_show.html:241
msgid "yes"
msgstr "是的"
-#: plinth/modules/networks/templates/connection_show.html:84
-#: plinth/modules/storage/templates/storage.html:40
+#: plinth/modules/networks/templates/connection_show.html:69
+#: plinth/modules/storage/templates/storage.html:25
msgid "Device"
msgstr "设备"
-#: plinth/modules/networks/templates/connection_show.html:88
+#: plinth/modules/networks/templates/connection_show.html:73
msgid "State"
msgstr "状态"
-#: plinth/modules/networks/templates/connection_show.html:93
+#: plinth/modules/networks/templates/connection_show.html:78
msgid "State reason"
msgstr "状态原因"
-#: plinth/modules/networks/templates/connection_show.html:102
+#: plinth/modules/networks/templates/connection_show.html:87
msgid "MAC address"
msgstr "MAC 地址"
-#: plinth/modules/networks/templates/connection_show.html:106
+#: plinth/modules/networks/templates/connection_show.html:91
msgid "Interface"
msgstr "接口"
-#: plinth/modules/networks/templates/connection_show.html:110
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:33
-#: plinth/modules/snapshot/templates/snapshot_manage.html:45
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:41
+#: plinth/modules/networks/templates/connection_show.html:95
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:18
+#: plinth/modules/snapshot/templates/snapshot_manage.html:30
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:26
msgid "Description"
msgstr "描述"
-#: plinth/modules/networks/templates/connection_show.html:116
+#: plinth/modules/networks/templates/connection_show.html:101
msgid "Physical Link"
msgstr "物理链路"
-#: plinth/modules/networks/templates/connection_show.html:121
+#: plinth/modules/networks/templates/connection_show.html:106
msgid "Link state"
msgstr "链路状态"
-#: plinth/modules/networks/templates/connection_show.html:125
+#: plinth/modules/networks/templates/connection_show.html:110
msgid "cable is connected"
msgstr "线缆已连接"
-#: plinth/modules/networks/templates/connection_show.html:128
+#: plinth/modules/networks/templates/connection_show.html:113
msgid "please check cable"
msgstr "请检查线缆"
-#: plinth/modules/networks/templates/connection_show.html:133
-#: plinth/modules/networks/templates/connection_show.html:149
+#: plinth/modules/networks/templates/connection_show.html:118
+#: plinth/modules/networks/templates/connection_show.html:134
msgid "Speed"
msgstr "速度"
-#: plinth/modules/networks/templates/connection_show.html:135
+#: plinth/modules/networks/templates/connection_show.html:120
#, python-format
msgid "%(ethernet_speed)s Mbit/s"
msgstr "%(ethernet_speed)s Mbit/s"
-#: plinth/modules/networks/templates/connection_show.html:151
+#: plinth/modules/networks/templates/connection_show.html:136
#, python-format
msgid "%(wireless_bitrate)s Mbit/s"
msgstr "%(wireless_bitrate)s Mbit/s"
-#: plinth/modules/networks/templates/connection_show.html:163
+#: plinth/modules/networks/templates/connection_show.html:148
msgid "Signal strength"
msgstr "信号强度"
-#: plinth/modules/networks/templates/connection_show.html:181
+#: plinth/modules/networks/templates/connection_show.html:166
msgid "IPv4"
msgstr "IPv4"
-#: plinth/modules/networks/templates/connection_show.html:186
-#: plinth/modules/networks/templates/connection_show.html:227
-#: plinth/modules/shadowsocks/forms.py:64
+#: plinth/modules/networks/templates/connection_show.html:171
+#: plinth/modules/networks/templates/connection_show.html:212
+#: plinth/modules/shadowsocks/forms.py:49
msgid "Method"
msgstr "方法"
-#: plinth/modules/networks/templates/connection_show.html:193
-#: plinth/modules/networks/templates/connection_show.html:234
+#: plinth/modules/networks/templates/connection_show.html:178
+#: plinth/modules/networks/templates/connection_show.html:219
msgid "IP address"
msgstr "IP 地址"
-#: plinth/modules/networks/templates/connection_show.html:209
-#: plinth/modules/networks/templates/connection_show.html:248
+#: plinth/modules/networks/templates/connection_show.html:194
+#: plinth/modules/networks/templates/connection_show.html:233
msgid "DNS server"
msgstr "DNS 服务器"
-#: plinth/modules/networks/templates/connection_show.html:216
-#: plinth/modules/networks/templates/connection_show.html:255
-#: plinth/modules/storage/forms.py:156
+#: plinth/modules/networks/templates/connection_show.html:201
+#: plinth/modules/networks/templates/connection_show.html:240
+#: plinth/modules/storage/forms.py:141
msgid "Default"
msgstr "默认"
-#: plinth/modules/networks/templates/connection_show.html:222
+#: plinth/modules/networks/templates/connection_show.html:207
msgid "IPv6"
msgstr "IPv6"
-#: plinth/modules/networks/templates/connection_show.html:263
+#: plinth/modules/networks/templates/connection_show.html:248
msgid "This connection is not active."
msgstr "此连接未处于激活状态。"
-#: plinth/modules/networks/templates/connection_show.html:266
-#: plinth/modules/security/__init__.py:38 plinth/modules/security/views.py:47
+#: plinth/modules/networks/templates/connection_show.html:251
+#: plinth/modules/security/__init__.py:45
msgid "Security"
msgstr "安全"
-#: plinth/modules/networks/templates/connection_show.html:271
-#: plinth/modules/networks/templates/connection_show.html:291
-#: plinth/modules/networks/templates/connection_show.html:310
+#: plinth/modules/networks/templates/connection_show.html:256
+#: plinth/modules/networks/templates/connection_show.html:276
+#: plinth/modules/networks/templates/connection_show.html:295
msgid "Firewall zone"
msgstr "防火墙区域"
-#: plinth/modules/networks/templates/connection_show.html:280
+#: plinth/modules/networks/templates/connection_show.html:265
msgid ""
"This interface should be connected to a local network/machine. If you "
"connect this interface to a public network, services meant to be available "
@@ -3747,7 +3824,7 @@ msgstr ""
"此接口应该连接到本地网络。 如果您将此接口连接到公用网络,意味着只为内网提供的"
"服务将成开放给外网。这会产生安全风险。"
-#: plinth/modules/networks/templates/connection_show.html:300
+#: plinth/modules/networks/templates/connection_show.html:285
msgid ""
"This interface should receive your Internet connection. If you connect it to "
"a local network/machine, many services meant to available only internally "
@@ -3756,7 +3833,7 @@ msgstr ""
"此接口应该接收您的 Internet 连接。如果你将其连接到本地网络,这意味着很多仅在"
"内网可用的服务将不可用。"
-#: plinth/modules/networks/templates/connection_show.html:319
+#: plinth/modules/networks/templates/connection_show.html:304
#, python-format
msgid ""
"This interface is not maintained by %(box_name)s. Its security status is "
@@ -3767,114 +3844,139 @@ msgstr ""
"此接口不由 %(box_name)s 维护。 其安全状态对 %(box_name)s 来说未知。许多 "
"%(box_name)s 的服务可能不在此接口上可用。建议您停用或删除此连接并重新配置它。"
-#: plinth/modules/networks/templates/connections_create.html:34
+#: plinth/modules/networks/templates/connections_create.html:19
msgid "Create Connection"
msgstr "创建连接"
-#: plinth/modules/networks/templates/connections_delete.html:29
+#: plinth/modules/networks/templates/connections_delete.html:14
#, python-format
msgid "Delete connection %(name)s permanently?"
msgstr "永久删除连接 %(name)s?"
-#: plinth/modules/networks/templates/connections_diagram.html:65
+#: plinth/modules/networks/templates/connections_diagram.html:50
msgid "Internet"
msgstr "互联网"
-#: plinth/modules/networks/templates/connections_diagram.html:70
-#: plinth/modules/networks/templates/connections_diagram.html:102
+#: plinth/modules/networks/templates/connections_diagram.html:55
+#: plinth/modules/networks/templates/connections_diagram.html:87
msgid "Spacing"
msgstr "间距"
-#: plinth/modules/networks/templates/connections_diagram.html:83
-#: plinth/modules/networks/templates/connections_diagram.html:113
-#: plinth/network.py:40
+#: plinth/modules/networks/templates/connections_diagram.html:68
+#: plinth/modules/networks/templates/connections_diagram.html:98
+#: plinth/network.py:25
msgid "Ethernet"
msgstr "以太网"
-#: plinth/modules/networks/templates/connections_diagram.html:86
-#: plinth/modules/networks/templates/connections_diagram.html:116
-#: plinth/network.py:41
+#: plinth/modules/networks/templates/connections_diagram.html:71
+#: plinth/modules/networks/templates/connections_diagram.html:101
+#: plinth/network.py:26
msgid "Wi-Fi"
msgstr "Wi-Fi"
-#: plinth/modules/networks/templates/connections_diagram.html:89
+#: plinth/modules/networks/templates/connections_diagram.html:74
#, python-format
msgid "Show connection %(connection.name)s"
msgstr "显示连接 %(connection.name)s"
-#: plinth/modules/networks/templates/connections_diagram.html:119
+#: plinth/modules/networks/templates/connections_diagram.html:104
#, python-format
msgid "Show connection %(name)s"
msgstr "显示连接 %(name)s"
-#: plinth/modules/networks/templates/connections_diagram.html:131
+#: plinth/modules/networks/templates/connections_diagram.html:116
msgid "Computer"
msgstr "计算机"
-#: plinth/modules/networks/templates/connections_list.html:58
+#: plinth/modules/networks/templates/connections_list.html:8
#, fuzzy
#| msgid "Connection"
msgid "Connections"
msgstr "连接"
-#: plinth/modules/networks/templates/connections_list.html:79
+#: plinth/modules/networks/templates/connections_list.html:29
#, python-format
msgid "Delete connection %(name)s"
msgstr "删除连接 %(name)s"
-#: plinth/modules/networks/templates/connections_list.html:104
+#: plinth/modules/networks/templates/connections_list.html:54
msgid "Active"
msgstr "激活"
-#: plinth/modules/networks/templates/connections_list.html:107
+#: plinth/modules/networks/templates/connections_list.html:57
msgid "Inactive"
msgstr "未激活"
-#: plinth/modules/networks/templates/connections_list.html:124
-#, python-format
-msgid "%(box_name)s Internet Connectivity"
+#: plinth/modules/networks/templates/connections_type_select.html:19
+msgid "Create..."
+msgstr "创建..."
+
+#: plinth/modules/networks/templates/internet_connectivity_content.html:10
+msgid "What Type Of Internet Connection Do You Have?"
msgstr ""
-#: plinth/modules/networks/templates/connections_list.html:129
-#, python-format
+#: plinth/modules/networks/templates/internet_connectivity_content.html:16
msgid ""
-"The following best describes how your %(box_name)s is connected in your "
-"network. This information is used only to suggest necessary configuration "
-"actions."
+"Select an option that best describes the type of Internet connection. This "
+"information is used only to guide you with further setup."
msgstr ""
-#: plinth/modules/networks/templates/connections_list.html:137
-#, python-format
+#: plinth/modules/networks/templates/internet_connectivity_firstboot.html:18
+#: plinth/modules/networks/templates/router_configuration_firstboot.html:18
+msgid "Skip this step"
+msgstr ""
+
+#: plinth/modules/networks/templates/internet_connectivity_firstboot.html:19
+#: plinth/modules/networks/templates/router_configuration_firstboot.html:19
+msgid "Next"
+msgstr ""
+
+#: plinth/modules/networks/templates/internet_connectivity_main.html:9
+#, fuzzy
+#| msgid "Connection Type"
+msgid "Your Internet Connection Type"
+msgstr "连接类型"
+
+#: plinth/modules/networks/templates/internet_connectivity_main.html:14
msgid ""
-"Your %(box_name)s gets its internet from your Router via WiFi or Ethernet "
-"cable. This is a typical home setup."
+"The following best describes the type of Internet connection provided by "
+"your ISP. This information is only used to suggest you necessary "
+"configuration actions."
msgstr ""
-#: plinth/modules/networks/templates/connections_list.html:145
-#: plinth/modules/networks/templates/connections_list.html:147
+#: plinth/modules/networks/templates/internet_connectivity_main.html:23
+msgid "My ISP provides a public IP address that does not change over time."
+msgstr ""
+
+#: plinth/modules/networks/templates/internet_connectivity_main.html:27
+msgid "My ISP provides a public IP address that may change over time."
+msgstr ""
+
+#: plinth/modules/networks/templates/internet_connectivity_main.html:31
+msgid "My ISP does not provide a public IP address."
+msgstr ""
+
+#: plinth/modules/networks/templates/internet_connectivity_main.html:37
+#: plinth/modules/networks/templates/router_configuration_main.html:29
#, fuzzy
#| msgid "Update"
msgid "Update..."
msgstr "更新"
-#: plinth/modules/networks/templates/connections_type_select.html:34
-msgid "Create..."
-msgstr "创建..."
-
-#: plinth/modules/networks/templates/router_configuration_content.html:25
+#: plinth/modules/networks/templates/router_configuration_content.html:10
#, fuzzy, python-format
#| msgid "%(box_name)s Setup"
msgid "Setup %(box_name)s Behind a Router"
msgstr "%(box_name)s 安装程序"
-#: plinth/modules/networks/templates/router_configuration_content.html:31
+#: plinth/modules/networks/templates/router_configuration_content.html:16
#, python-format
msgid ""
"Your %(box_name)s gets its internet connection from your router via Wi-Fi or "
"Ethernet cable. This is a typical home setup."
msgstr ""
-#: plinth/modules/networks/templates/router_configuration_content.html:38
+#: plinth/modules/networks/templates/router_configuration_content.html:23
#, python-format
msgid ""
"With this setup, any device on the internet trying to reach your "
@@ -3883,24 +3985,24 @@ msgid ""
"the services."
msgstr ""
-#: plinth/modules/networks/templates/router_configuration_content.html:47
+#: plinth/modules/networks/templates/router_configuration_content.html:32
msgid ""
"If you don't have control over your router, choose not to configure it. To "
-"see options, to overcome this limitation, choose 'no public address' option "
+"see options to overcome this limitation, choose 'no public address' option "
"in Internet connection type selection."
msgstr ""
-#: plinth/modules/networks/templates/router_configuration_content.html:54
+#: plinth/modules/networks/templates/router_configuration_content.html:39
msgid "Choose How You Wish to Configure Your Router"
msgstr ""
-#: plinth/modules/networks/templates/router_configuration_content.html:57
+#: plinth/modules/networks/templates/router_configuration_content.html:42
msgid ""
"You will need to login to your router's administration console provided by "
"the router. This may look like one of the following:"
msgstr ""
-#: plinth/modules/networks/templates/router_configuration_content.html:69
+#: plinth/modules/networks/templates/router_configuration_content.html:54
msgid ""
"The username and password is configured by you when you first setup the "
"router. For many routers, this information is printed at the back of the "
@@ -3910,28 +4012,27 @@ msgid ""
"full instructions on how to perform this task."
msgstr ""
-#: plinth/modules/networks/templates/router_configuration_firstboot.html:33
-msgid "skip this step"
+#: plinth/modules/networks/templates/router_configuration_main.html:9
+#, python-format
+msgid "%(box_name)s Internet Connectivity"
msgstr ""
-#: plinth/modules/networks/templates/router_configuration_firstboot.html:35
-msgid "Next"
+#: plinth/modules/networks/templates/router_configuration_main.html:15
+#, python-format
+msgid ""
+"The following best describes how your %(box_name)s is connected in your "
+"network. This information is used only to suggest necessary configuration "
+"actions."
msgstr ""
-#: plinth/modules/openvpn/__init__.py:39 plinth/modules/openvpn/manifest.py:33
-#, fuzzy
-#| msgid "Open"
-msgid "OpenVPN"
-msgstr "打开"
+#: plinth/modules/networks/templates/router_configuration_main.html:23
+#, python-format
+msgid ""
+"Your %(box_name)s gets its Internet from your Router via Wi-Fi or Ethernet "
+"cable. This is a typical home setup."
+msgstr ""
-#: plinth/modules/openvpn/__init__.py:43
-#: plinth/modules/wireguard/__init__.py:40
-#, fuzzy
-#| msgid "Virtual Private Network (OpenVPN)"
-msgid "Virtual Private Network"
-msgstr "虚拟专用网络(OpenVPN)"
-
-#: plinth/modules/openvpn/__init__.py:47
+#: plinth/modules/openvpn/__init__.py:26
#, python-brace-format
msgid ""
"Virtual Private Network (VPN) is a technique for securely connecting two "
@@ -3946,21 +4047,34 @@ msgstr ""
"供的私人/内部服务。您还可以通过 {box_name} 访问互联网的其他部分,以增加安全性"
"和匿名性。"
-#: plinth/modules/openvpn/__init__.py:79
+#: plinth/modules/openvpn/__init__.py:49 plinth/modules/openvpn/manifest.py:18
+#, fuzzy
+#| msgid "Open"
+msgid "OpenVPN"
+msgstr "打开"
+
+#: plinth/modules/openvpn/__init__.py:50
+#: plinth/modules/wireguard/__init__.py:53
+#, fuzzy
+#| msgid "Virtual Private Network (OpenVPN)"
+msgid "Virtual Private Network"
+msgstr "虚拟专用网络(OpenVPN)"
+
+#: plinth/modules/openvpn/__init__.py:61
#, python-brace-format
msgid ""
"Download Profile"
msgstr ""
-#: plinth/modules/openvpn/forms.py:27
+#: plinth/modules/openvpn/forms.py:12
msgid "Enable OpenVPN server"
msgstr "启用 OpenVPN 服务器"
-#: plinth/modules/openvpn/manifest.py:63
-msgid "TunnelBlick"
+#: plinth/modules/openvpn/manifest.py:48
+msgid "Tunnelblick"
msgstr ""
-#: plinth/modules/openvpn/templates/openvpn.html:42
+#: plinth/modules/openvpn/templates/openvpn.html:27
#, python-format
msgid ""
"OpenVPN has not yet been setup. Performing a secure setup takes a very long "
@@ -3970,15 +4084,15 @@ msgstr ""
"OpenVPN 尚未安装。 执行安全的安装需要很长的时间。 根据您的 %(box_name)s 运行"
"速度,它甚至可能需要小时。 如果安装程序中断,您可以重新启动。"
-#: plinth/modules/openvpn/templates/openvpn.html:55
+#: plinth/modules/openvpn/templates/openvpn.html:40
msgid "Start setup"
msgstr "启动安装程序"
-#: plinth/modules/openvpn/templates/openvpn.html:64
+#: plinth/modules/openvpn/templates/openvpn.html:49
msgid "OpenVPN setup is running"
msgstr "OpenVPN 安装程序正在运行"
-#: plinth/modules/openvpn/templates/openvpn.html:68
+#: plinth/modules/openvpn/templates/openvpn.html:53
#, python-format
msgid ""
"To perform a secure setup, this process takes a very long time. Depending "
@@ -3988,11 +4102,11 @@ msgstr ""
"若要执行更安全的安装,此过程需要很长的时间。根据您的 %(box_name)s 运行速度,"
"它甚至可能需要数小时。如果安装程序中断,您可以重新启动。"
-#: plinth/modules/openvpn/templates/openvpn.html:87
+#: plinth/modules/openvpn/templates/openvpn.html:72
msgid "Profile"
msgstr "配置文件"
-#: plinth/modules/openvpn/templates/openvpn.html:90
+#: plinth/modules/openvpn/templates/openvpn.html:75
#, fuzzy, python-format
#| msgid ""
#| "To connect to %(box_name)s's VPN, you need to download a profile and feed "
@@ -4012,36 +4126,24 @@ msgstr ""
"文档 以及有关如何配置它们的说明。"
-#: plinth/modules/openvpn/templates/openvpn.html:100
+#: plinth/modules/openvpn/templates/openvpn.html:85
#, python-format
msgid "Profile is specific to each user of %(box_name)s. Keep it a secret."
msgstr "配置文件是特定于每个 %(box_name)s 用户的。请保持其私密。"
-#: plinth/modules/openvpn/templates/openvpn.html:111
+#: plinth/modules/openvpn/templates/openvpn.html:96
msgid "Download my profile"
msgstr "下载我的配置文件"
-#: plinth/modules/openvpn/views.py:133
+#: plinth/modules/openvpn/views.py:114
msgid "Setup completed."
msgstr "安装已完成。"
-#: plinth/modules/openvpn/views.py:135
+#: plinth/modules/openvpn/views.py:116
msgid "Setup failed."
msgstr "安装失败。"
-#: plinth/modules/pagekite/__init__.py:39
-#, fuzzy
-#| msgid "Pagekite"
-msgid "PageKite"
-msgstr "Pagekite"
-
-#: plinth/modules/pagekite/__init__.py:41
-#, fuzzy
-#| msgid "Public Visibility (PageKite)"
-msgid "Public Visibility"
-msgstr "公开可见性(PageKite)"
-
-#: plinth/modules/pagekite/__init__.py:45
+#: plinth/modules/pagekite/__init__.py:26
#, python-brace-format
msgid ""
"PageKite is a system for exposing {box_name} services when you don't have a "
@@ -4052,23 +4154,23 @@ msgstr ""
"PageKite 是一种在您没有直接连接到互联网时暴露 {box_name} 服务的系统。 如果您"
"的 {box_name} 服务无法从互联网访问,您只需要设置 PageKite。这包括以下情况:"
-#: plinth/modules/pagekite/__init__.py:50
+#: plinth/modules/pagekite/__init__.py:31
#, python-brace-format
msgid "{box_name} is behind a restricted firewall."
msgstr "{box_name} 位于受限的防火墙的后面。"
-#: plinth/modules/pagekite/__init__.py:53
+#: plinth/modules/pagekite/__init__.py:34
#, 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:55
+#: plinth/modules/pagekite/__init__.py:36
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:57
+#: plinth/modules/pagekite/__init__.py:38
#, fuzzy
#| msgid ""
#| "Your ISP does not provide you a static IP address and your IP address "
@@ -4079,11 +4181,11 @@ msgid ""
msgstr ""
"您的 ISP 不提供你一个静态的 IP 地址且你连接到互联网的 IP 地址每次会更改。"
-#: plinth/modules/pagekite/__init__.py:59
+#: plinth/modules/pagekite/__init__.py:40
msgid "Your ISP limits incoming connections."
msgstr "您的 ISP 限制传入的连接。"
-#: plinth/modules/pagekite/__init__.py:61
+#: plinth/modules/pagekite/__init__.py:42
#, fuzzy, python-brace-format
#| msgid ""
#| "PageKite works around NAT, firewalls and IP-address limitations by using "
@@ -4101,17 +4203,29 @@ msgstr ""
"使用任何 pagekite 服务提供商,例如pagekite."
"net。将来,您甚至可以使用好友的 {box_name}。"
-#: plinth/modules/pagekite/__init__.py:87
+#: plinth/modules/pagekite/__init__.py:62
+#, fuzzy
+#| msgid "Pagekite"
+msgid "PageKite"
+msgstr "Pagekite"
+
+#: plinth/modules/pagekite/__init__.py:64
+#, fuzzy
+#| msgid "Public Visibility (PageKite)"
+msgid "Public Visibility"
+msgstr "公开可见性(PageKite)"
+
+#: plinth/modules/pagekite/__init__.py:74
#, fuzzy
#| msgid "PageKite Account"
msgid "PageKite Domain"
msgstr "PageKite 帐户"
-#: plinth/modules/pagekite/forms.py:66
+#: plinth/modules/pagekite/forms.py:51
msgid "Server domain"
msgstr "服务器域"
-#: plinth/modules/pagekite/forms.py:68
+#: plinth/modules/pagekite/forms.py:53
msgid ""
"Select your pagekite server. Set \"pagekite.net\" to use the default "
"pagekite.net server."
@@ -4119,117 +4233,117 @@ msgstr ""
"选择您的 pagekite 服务器。设置\"pagekite.net\"以便使用默认的 pagekite.net 服"
"务器。"
-#: plinth/modules/pagekite/forms.py:71 plinth/modules/shadowsocks/forms.py:55
+#: plinth/modules/pagekite/forms.py:56 plinth/modules/shadowsocks/forms.py:40
msgid "Server port"
msgstr "服务器端口"
-#: plinth/modules/pagekite/forms.py:72
+#: plinth/modules/pagekite/forms.py:57
msgid "Port of your pagekite server (default: 80)"
msgstr "你 pagekite 服务器的端口 (默认: 80)"
-#: plinth/modules/pagekite/forms.py:74
+#: plinth/modules/pagekite/forms.py:59
msgid "Kite name"
msgstr "Kite 名字"
-#: plinth/modules/pagekite/forms.py:75
+#: plinth/modules/pagekite/forms.py:60
msgid "Example: mybox.pagekite.me"
msgstr "示例: mybox.pagekite.me"
-#: plinth/modules/pagekite/forms.py:77
+#: plinth/modules/pagekite/forms.py:62
msgid "Invalid kite name"
msgstr "无效的 Kite 名称"
-#: plinth/modules/pagekite/forms.py:81
+#: plinth/modules/pagekite/forms.py:66
msgid "Kite secret"
msgstr "Kite 密码"
-#: plinth/modules/pagekite/forms.py:82
+#: plinth/modules/pagekite/forms.py:67
msgid ""
"A secret associated with the kite or the default secret for your account if "
"no secret is set on the kite."
msgstr "为 kite 设置的密码,如果没有为 kite 设置密码则会使用你账号的默认密码。"
-#: plinth/modules/pagekite/forms.py:98
+#: plinth/modules/pagekite/forms.py:83
msgid "Kite details set"
msgstr "Kite 详细信息设置"
-#: plinth/modules/pagekite/forms.py:105
+#: plinth/modules/pagekite/forms.py:90
msgid "Pagekite server set"
msgstr "Pagekite 服务器设置"
-#: plinth/modules/pagekite/forms.py:129
+#: plinth/modules/pagekite/forms.py:114
msgid "PageKite enabled"
msgstr "PageKite 已启用"
-#: plinth/modules/pagekite/forms.py:132
+#: plinth/modules/pagekite/forms.py:117
msgid "PageKite disabled"
msgstr "PageKite 已禁用"
-#: plinth/modules/pagekite/forms.py:148
+#: plinth/modules/pagekite/forms.py:133
msgid "protocol"
msgstr "协议"
-#: plinth/modules/pagekite/forms.py:151
+#: plinth/modules/pagekite/forms.py:136
msgid "external (frontend) port"
msgstr "外网(前端)端口"
-#: plinth/modules/pagekite/forms.py:154
+#: plinth/modules/pagekite/forms.py:139
msgid "internal (freedombox) port"
msgstr "内网(freedombox)端口"
-#: plinth/modules/pagekite/forms.py:155
+#: plinth/modules/pagekite/forms.py:140
msgid "Enable Subdomains"
msgstr "启用子域"
-#: plinth/modules/pagekite/forms.py:189
+#: plinth/modules/pagekite/forms.py:174
msgid "Deleted custom service"
msgstr "删除自定义服务"
-#: plinth/modules/pagekite/forms.py:222
+#: plinth/modules/pagekite/forms.py:207
msgid ""
"This service is available as a standard service. Please use the \"Standard "
"Services\" page to enable it."
msgstr "这项服务是可作为标准的服务。请使用\"标准服务\"页启用它。"
-#: plinth/modules/pagekite/forms.py:231
+#: plinth/modules/pagekite/forms.py:216
msgid "Added custom service"
msgstr "已添加的自定义服务"
-#: plinth/modules/pagekite/forms.py:234
+#: plinth/modules/pagekite/forms.py:219
msgid "This service already exists"
msgstr "此服务已存在"
-#: plinth/modules/pagekite/templates/pagekite_configure.html:47
+#: plinth/modules/pagekite/templates/pagekite_configure.html:32
msgid "Custom Services"
msgstr "定制服务"
-#: plinth/modules/pagekite/templates/pagekite_configure.html:50
-#: plinth/modules/pagekite/templates/pagekite_configure.html:52
+#: plinth/modules/pagekite/templates/pagekite_configure.html:35
+#: plinth/modules/pagekite/templates/pagekite_configure.html:37
#, fuzzy
#| msgid "Custom Services"
msgid "Add Custom Service"
msgstr "定制服务"
-#: plinth/modules/pagekite/templates/pagekite_configure.html:57
+#: plinth/modules/pagekite/templates/pagekite_configure.html:42
msgid "Existing custom services"
msgstr "现有的自定义服务"
-#: plinth/modules/pagekite/templates/pagekite_configure.html:71
+#: plinth/modules/pagekite/templates/pagekite_configure.html:56
#, python-format
msgid "connected to %(backend_host)s:%(backend_port)s"
msgstr "连接到 %(backend_host)s:%(backend_port)s"
-#: plinth/modules/pagekite/templates/pagekite_configure.html:83
+#: plinth/modules/pagekite/templates/pagekite_configure.html:68
msgid "Delete this service"
msgstr "删除此服务"
-#: plinth/modules/pagekite/templates/pagekite_custom_services.html:30
+#: plinth/modules/pagekite/templates/pagekite_custom_services.html:15
#, fuzzy
#| msgid "Added custom service"
msgid "Add custom PageKite service"
msgstr "已添加的自定义服务"
-#: plinth/modules/pagekite/templates/pagekite_custom_services.html:32
+#: plinth/modules/pagekite/templates/pagekite_custom_services.html:17
msgid ""
"Warning:
Your PageKite frontend server may not support all the "
"protocol/port combinations that you are able to define here. For example, "
@@ -4238,11 +4352,11 @@ msgstr ""
"警告:
您的 PageKite 前端服务器可能不支持您在此处定义的所有协议/端"
"口组合。例如,已知443以外的端口上的HTTPS会导致问题。"
-#: plinth/modules/pagekite/templates/pagekite_firstboot.html:26
+#: plinth/modules/pagekite/templates/pagekite_firstboot.html:11
msgid "Setup a freedombox.me subdomain with your voucher"
msgstr "使用你的凭证安装一个 freedombox.me 子域名"
-#: plinth/modules/pagekite/templates/pagekite_firstboot.html:30
+#: plinth/modules/pagekite/templates/pagekite_firstboot.html:15
#, python-format
msgid ""
"Skip this step if you do not have a "
@@ -4252,56 +4366,56 @@ msgstr ""
"跳过这一步 如果你没有凭证或想一会使"
"用不同的域名或认证来配置 PageKite。"
-#: plinth/modules/pagekite/templates/pagekite_firstboot.html:38
+#: plinth/modules/pagekite/templates/pagekite_firstboot.html:23
msgid ""
"You can use an already redeemed voucher but it will only work with the "
"initially registered subdomain."
msgstr "可以使用已兑换的凭证但只能在初始注册子域名时可用。"
-#: plinth/modules/pagekite/templates/pagekite_firstboot.html:52
+#: plinth/modules/pagekite/templates/pagekite_firstboot.html:37
msgid "Register"
msgstr "注册"
-#: plinth/modules/pagekite/templates/pagekite_firstboot.html:56
+#: plinth/modules/pagekite/templates/pagekite_firstboot.html:41
msgid "Skip Registration"
msgstr "跳过注册"
-#: plinth/modules/pagekite/templates/pagekite_standard_services.html:40
+#: plinth/modules/pagekite/templates/pagekite_standard_services.html:25
msgid "Warning:
"
msgstr "警告:
"
-#: plinth/modules/pagekite/templates/pagekite_standard_services.html:43
+#: plinth/modules/pagekite/templates/pagekite_standard_services.html:28
msgid ""
"Published services are accessible and attackable from the evil Internet."
msgstr "已发布的服务可从互联网访问并受到邪恶攻击。"
-#: plinth/modules/pagekite/templates/pagekite_standard_services.html:58
+#: plinth/modules/pagekite/templates/pagekite_standard_services.html:43
msgid "Save Services"
msgstr "保存服务"
-#: plinth/modules/pagekite/utils.py:57
+#: plinth/modules/pagekite/utils.py:42
msgid "Web Server (HTTP)"
msgstr "Web 服务器(HTTP)"
-#: plinth/modules/pagekite/utils.py:59
+#: plinth/modules/pagekite/utils.py:44
#, python-brace-format
msgid "Site will be available at http://{0}"
msgstr "网站可从 http://{0} 访问"
-#: plinth/modules/pagekite/utils.py:71
+#: plinth/modules/pagekite/utils.py:56
msgid "Web Server (HTTPS)"
msgstr "Web 服务器(HTTPS)"
-#: plinth/modules/pagekite/utils.py:73
+#: plinth/modules/pagekite/utils.py:58
#, python-brace-format
msgid "Site will be available at https://{0}"
msgstr "网站可从 https://{0} 访问"
-#: plinth/modules/pagekite/utils.py:85
+#: plinth/modules/pagekite/utils.py:70
msgid "Secure Shell (SSH)"
msgstr "安全 Shell(SSH)"
-#: plinth/modules/pagekite/utils.py:87
+#: plinth/modules/pagekite/utils.py:72
msgid ""
"See SSH client setup instructions"
@@ -4309,77 +4423,64 @@ msgstr ""
"请参见 SSH 客户端安装 说明"
-#: plinth/modules/power/__init__.py:29 plinth/modules/power/views.py:55
-#: plinth/modules/power/views.py:74
-msgid "Power"
-msgstr "电源"
-
-#: plinth/modules/power/__init__.py:31
+#: plinth/modules/power/__init__.py:16
msgid "Restart or shut down the system."
msgstr "重新启动或关闭系统。"
-#: plinth/modules/power/templates/power.html:28
+#: plinth/modules/power/__init__.py:31
+msgid "Power"
+msgstr "电源"
+
+#: plinth/modules/power/templates/power.html:13
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
+#: plinth/modules/power/templates/power.html:22
msgid "Restart »"
msgstr "重新启动 »"
-#: plinth/modules/power/templates/power.html:40
+#: plinth/modules/power/templates/power.html:25
msgid "Shut Down »"
msgstr "关闭 »"
-#: plinth/modules/power/templates/power_restart.html:32
+#: plinth/modules/power/templates/power_restart.html:17
msgid ""
"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."
msgstr ""
"你确定要重新启动?你将在几分钟内不能访问此 web 界面,直到重新启动系统。"
-#: plinth/modules/power/templates/power_restart.html:49
+#: plinth/modules/power/templates/power_restart.html:34
msgid ""
"Currently an installation or upgrade is running. Consider waiting until it's "
"finished before restarting."
msgstr ""
-#: plinth/modules/power/templates/power_restart.html:63
-#: plinth/modules/power/templates/power_restart.html:66
+#: plinth/modules/power/templates/power_restart.html:48
+#: plinth/modules/power/templates/power_restart.html:51
msgid "Restart Now"
msgstr "现在重新启动"
-#: plinth/modules/power/templates/power_shutdown.html:32
+#: plinth/modules/power/templates/power_shutdown.html:17
msgid ""
"Are you sure you want to shut down? You will not be able to access this web "
"interface after shut down."
msgstr "你确定要关闭? 关闭以后将不能访问此 web 界面。"
-#: plinth/modules/power/templates/power_shutdown.html:48
+#: plinth/modules/power/templates/power_shutdown.html:33
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:62
-#: plinth/modules/power/templates/power_shutdown.html:65
+#: plinth/modules/power/templates/power_shutdown.html:47
+#: plinth/modules/power/templates/power_shutdown.html:50
msgid "Shut Down Now"
msgstr "现在关闭"
-#: plinth/modules/privoxy/__init__.py:43
-#, fuzzy
-#| msgid "Enable Privoxy"
-msgid "Privoxy"
-msgstr "启用 Privoxy"
-
-#: plinth/modules/privoxy/__init__.py:47
-#, fuzzy
-#| msgid "Privoxy Web Proxy"
-msgid "Web Proxy"
-msgstr "Privoxy 网页代理"
-
-#: plinth/modules/privoxy/__init__.py:50
+#: plinth/modules/privoxy/__init__.py:29
msgid ""
"Privoxy is a non-caching web proxy with advanced filtering capabilities for "
"enhancing privacy, modifying web page data and HTTP headers, controlling "
@@ -4388,7 +4489,7 @@ msgstr ""
"Privoxy 是一个非缓存Web代理,具有高级过滤功能,用于增强隐私,修改网页数据和 "
"HTTP 标头,控制访问,以及删除广告和其他令人讨厌的互联网垃圾。"
-#: plinth/modules/privoxy/__init__.py:55
+#: plinth/modules/privoxy/__init__.py:34
#, python-brace-format
msgid ""
"You can use Privoxy by modifying your browser proxy settings to your "
@@ -4402,22 +4503,24 @@ msgstr ""
"privoxy.org\">http://config.privoxy.org/ 或 http://p.p 中查看其配置详细信息和文档"
-#: plinth/modules/privoxy/__init__.py:141
+#: plinth/modules/privoxy/__init__.py:57
+#, fuzzy
+#| msgid "Enable Privoxy"
+msgid "Privoxy"
+msgstr "启用 Privoxy"
+
+#: plinth/modules/privoxy/__init__.py:58
+#, fuzzy
+#| msgid "Privoxy Web Proxy"
+msgid "Web Proxy"
+msgstr "Privoxy 网页代理"
+
+#: plinth/modules/privoxy/__init__.py:121
#, python-brace-format
msgid "Access {url} with proxy {proxy} on tcp{kind}"
msgstr "在 tcp{kind} 上通过 {proxy} 访问 {url}"
-#: plinth/modules/quassel/__init__.py:45 plinth/modules/quassel/manifest.py:25
-msgid "Quassel"
-msgstr ""
-
-#: plinth/modules/quassel/__init__.py:49
-#, fuzzy
-#| msgid "Quassel IRC Client"
-msgid "IRC Client"
-msgstr "Quassel IRC 客户端"
-
-#: plinth/modules/quassel/__init__.py:53
+#: plinth/modules/quassel/__init__.py:32
#, python-brace-format
msgid ""
"Quassel is an IRC application that is split into two parts, a \"core\" and a "
@@ -4432,7 +4535,7 @@ msgstr ""
"以运行 Quassel 核心服务,使您始终在线,并且可以使用桌面或移动设备上的一个或多"
"个 Quassel 客户端连接和断开连接。"
-#: plinth/modules/quassel/__init__.py:60
+#: plinth/modules/quassel/__init__.py:39
msgid ""
"You can connect to your Quassel core on the default Quassel port 4242. "
"Clients to connect to Quassel from your 桌面和移动设备客户端连接到 Quassel 的核心。"
-#: plinth/modules/quassel/forms.py:38
+#: plinth/modules/quassel/__init__.py:62 plinth/modules/quassel/manifest.py:10
+msgid "Quassel"
+msgstr ""
+
+#: plinth/modules/quassel/__init__.py:63
+#, fuzzy
+#| msgid "Quassel IRC Client"
+msgid "IRC Client"
+msgstr "Quassel IRC 客户端"
+
+#: plinth/modules/quassel/forms.py:23
#, fuzzy
#| msgid "Subdomain"
msgid "TLS domain"
msgstr "子域"
-#: plinth/modules/quassel/forms.py:40
+#: plinth/modules/quassel/forms.py:25
msgid ""
"Select a domain to use TLS with. If the list is empty, please configure at "
"least one domain with certificates."
msgstr ""
-#: plinth/modules/quassel/manifest.py:49
+#: plinth/modules/quassel/manifest.py:34
msgid "Quasseldroid"
msgstr ""
-#: plinth/modules/radicale/__init__.py:45
-#: plinth/modules/radicale/manifest.py:90
-msgid "Radicale"
-msgstr ""
-
-#: plinth/modules/radicale/__init__.py:49
-#, fuzzy
-#| msgid ""
-#| "Calendar and Addressbook \n"
-#| " (Radicale)"
-msgid "Calendar and Addressbook"
-msgstr ""
-"日历和通讯录\n"
-"(Radicale)"
-
-#: plinth/modules/radicale/__init__.py:53
+#: plinth/modules/radicale/__init__.py:32
#, fuzzy, python-brace-format
#| msgid ""
#| "Radicale is a CalDAV and CardDAV server. It allows synchronization and "
@@ -4493,18 +4591,33 @@ msgstr ""
"user_documentation/#idcaldav-and-carddav-client\">支持的客户端应用程序。"
"任何拥有 {box_name} 登录名的用户都可以访问 Radicale。"
-#: plinth/modules/radicale/__init__.py:58
+#: plinth/modules/radicale/__init__.py:37
msgid ""
"Radicale provides a basic web interface, which only supports creating new "
"calendars and addressbooks. It does not support adding events or contacts, "
"which must be done using a separate client."
msgstr ""
-#: plinth/modules/radicale/forms.py:30
+#: plinth/modules/radicale/__init__.py:62
+#: plinth/modules/radicale/manifest.py:75
+msgid "Radicale"
+msgstr ""
+
+#: plinth/modules/radicale/__init__.py:63
+#, fuzzy
+#| msgid ""
+#| "Calendar and Addressbook \n"
+#| " (Radicale)"
+msgid "Calendar and Addressbook"
+msgstr ""
+"日历和通讯录\n"
+"(Radicale)"
+
+#: plinth/modules/radicale/forms.py:15
msgid "Only the owner of a calendar/addressbook can view or make changes."
msgstr "只有日历/通训录的所有者可以查看或做出改动。"
-#: plinth/modules/radicale/forms.py:34
+#: plinth/modules/radicale/forms.py:19
#, fuzzy, python-brace-format
#| msgid ""
#| "Any user can view any calendar/addressbook, but only the owner can make "
@@ -4514,7 +4627,7 @@ msgid ""
"the owner can make changes."
msgstr "任何用户都可以查看任何日历/通训录,但是只有所有者可以作出修改。"
-#: plinth/modules/radicale/forms.py:39
+#: plinth/modules/radicale/forms.py:24
#, fuzzy, python-brace-format
#| msgid "Any user can view or make changes to any calendar/addressbook."
msgid ""
@@ -4522,36 +4635,36 @@ msgid ""
"addressbook."
msgstr "任何用户都可以查看和修改任何日历/通训录。"
-#: plinth/modules/radicale/manifest.py:25
+#: plinth/modules/radicale/manifest.py:10
msgid "DAVx5"
msgstr ""
-#: plinth/modules/radicale/manifest.py:27
+#: plinth/modules/radicale/manifest.py:12
msgid ""
"Enter the URL of the Radicale server (e.g. https://) and your user name. DAVx5 will show all existing calendars and "
"address books and you can create new."
msgstr ""
-#: plinth/modules/radicale/manifest.py:44
+#: plinth/modules/radicale/manifest.py:29
msgid "GNOME Calendar"
msgstr ""
-#: plinth/modules/radicale/manifest.py:52
+#: plinth/modules/radicale/manifest.py:37
msgid "Mozilla Thunderbird"
msgstr ""
-#: plinth/modules/radicale/manifest.py:72
+#: plinth/modules/radicale/manifest.py:57
msgid "Evolution"
msgstr ""
-#: plinth/modules/radicale/manifest.py:74
+#: plinth/modules/radicale/manifest.py:59
msgid ""
"Evolution is a personal information management application that provides "
"integrated mail, calendaring and address book functionality."
msgstr ""
-#: plinth/modules/radicale/manifest.py:78
+#: plinth/modules/radicale/manifest.py:63
msgid ""
"In Evolution add a new calendar and address book respectively with WebDAV. "
"Enter the URL of the Radicale server (e.g. https:///roundcube. "
@@ -4612,7 +4708,7 @@ msgstr ""
"如 imap.example.com。对于基于 SSL 的 IMAP(建议),服务器填写为"
"类似 imaps://imap.example.com。"
-#: plinth/modules/roundcube/__init__.py:53
+#: plinth/modules/roundcube/__init__.py:32
msgid ""
"For Gmail, username will be your Gmail address, password will be your Google "
"account password and server will be imaps://imap.gmail.com. "
@@ -4626,17 +4722,30 @@ msgstr ""
"href=\"https://www.google.com/settings/security/lesssecureapps\">https://www."
"google.com/settings/security/lesssecureapps)中启用“安全性较低的应用”。"
-#: plinth/modules/samba/__init__.py:46
-msgid "Samba"
-msgstr ""
+#: plinth/modules/roundcube/__init__.py:54
+#: plinth/modules/roundcube/manifest.py:9
+#, fuzzy
+#| msgid "Enable Roundcube"
+msgid "Roundcube"
+msgstr "启用 Roundcube"
-#: plinth/modules/samba/__init__.py:53
+#: plinth/modules/roundcube/__init__.py:55
+#, fuzzy
+#| msgid ""
+#| "Email Client \n"
+#| " (Roundcube)"
+msgid "Email Client"
+msgstr ""
+"邮件客户端\n"
+"(Roundcube)"
+
+#: plinth/modules/samba/__init__.py:32
msgid ""
"Samba allows to share files and folders between FreedomBox and other "
"computers in your local network."
msgstr ""
-#: plinth/modules/samba/__init__.py:56
+#: plinth/modules/samba/__init__.py:35
#, python-brace-format
msgid ""
"After installation, you can choose which disks to use for sharing. Enabled "
@@ -4645,55 +4754,59 @@ msgid ""
"There are three types of shares you can choose from: "
msgstr ""
-#: plinth/modules/samba/__init__.py:61
+#: plinth/modules/samba/__init__.py:40
msgid "Open share - accessible to everyone in your local network."
msgstr ""
-#: plinth/modules/samba/__init__.py:62
+#: plinth/modules/samba/__init__.py:41
msgid ""
"Group share - accessible only to FreedomBox users who are in the freedombox-"
"share group."
msgstr ""
-#: plinth/modules/samba/__init__.py:64
+#: plinth/modules/samba/__init__.py:43
msgid ""
"Home share - every user in the freedombox-share group can have their own "
"private space."
msgstr ""
-#: plinth/modules/samba/__init__.py:68
+#: plinth/modules/samba/__init__.py:47
msgid "Access to the private shares"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:39
-#: plinth/modules/samba/templates/samba.html:50
+#: plinth/modules/samba/__init__.py:61
+msgid "Samba"
+msgstr ""
+
+#: plinth/modules/samba/templates/samba.html:24
+#: plinth/modules/samba/templates/samba.html:35
#, fuzzy
#| msgid "Shared"
msgid "Shares"
msgstr "共享"
-#: plinth/modules/samba/templates/samba.html:41
+#: plinth/modules/samba/templates/samba.html:26
msgid ""
"Note: Only specially created directories will be shared on selected disks, "
"not the whole disk."
msgstr ""
-#: plinth/modules/samba/templates/samba.html:49
+#: plinth/modules/samba/templates/samba.html:34
#, fuzzy
#| msgid "Domain Name"
msgid "Disk Name"
msgstr "域名"
-#: plinth/modules/samba/templates/samba.html:51
-#: plinth/modules/storage/templates/storage.html:44
+#: plinth/modules/samba/templates/samba.html:36
+#: plinth/modules/storage/templates/storage.html:29
msgid "Used"
msgstr "已使用"
-#: plinth/modules/samba/templates/samba.html:72
+#: plinth/modules/samba/templates/samba.html:57
msgid "VFAT partitions are not supported"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:103
+#: plinth/modules/samba/templates/samba.html:88
#, python-format
msgid ""
"You can find additional information about disks on the users module page."
msgstr ""
-#: plinth/modules/samba/templates/samba.html:109
+#: plinth/modules/samba/templates/samba.html:94
msgid "Users who can currently access group and home shares"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:113
+#: plinth/modules/samba/templates/samba.html:98
msgid ""
"Users needing to re-enter their password on the password change page to "
"access group and home shares"
msgstr ""
-#: plinth/modules/samba/templates/samba.html:118
+#: plinth/modules/samba/templates/samba.html:103
#, fuzzy
#| msgid "Available Domains"
msgid "Unavailable Shares"
msgstr "可用域名"
-#: plinth/modules/samba/templates/samba.html:120
+#: plinth/modules/samba/templates/samba.html:105
msgid ""
"Shares that are configured but the disk is not available. If the disk is "
"plugged back in, sharing will be automatically enabled."
msgstr ""
-#: plinth/modules/samba/templates/samba.html:128
+#: plinth/modules/samba/templates/samba.html:113
#, fuzzy
#| msgid "Shared"
msgid "Share name"
msgstr "共享"
-#: plinth/modules/samba/templates/samba.html:129
+#: plinth/modules/samba/templates/samba.html:114
#, fuzzy
#| msgid "Actions"
msgid "Action"
msgstr "行动"
-#: plinth/modules/samba/views.py:61 plinth/modules/storage/forms.py:164
+#: plinth/modules/samba/views.py:43 plinth/modules/storage/forms.py:149
#, fuzzy
#| msgid "Add Service"
msgid "Open Share"
msgstr "添加服务"
-#: plinth/modules/samba/views.py:62 plinth/modules/storage/forms.py:162
+#: plinth/modules/samba/views.py:44 plinth/modules/storage/forms.py:147
#, fuzzy
#| msgid "Add Service"
msgid "Group Share"
msgstr "添加服务"
-#: plinth/modules/samba/views.py:63
+#: plinth/modules/samba/views.py:45
#, fuzzy
#| msgid "Homepage"
msgid "Home Share"
msgstr "主页"
-#: plinth/modules/samba/views.py:96
+#: plinth/modules/samba/views.py:78
#, fuzzy
#| msgid "{name} deleted."
msgid "Share enabled."
msgstr "{name} 已删除。"
-#: plinth/modules/samba/views.py:101
+#: plinth/modules/samba/views.py:83
#, fuzzy, python-brace-format
#| msgid "Error installing application: {error}"
msgid "Error enabling share: {error_message}"
msgstr "安装应用程序出错:{error}"
-#: plinth/modules/samba/views.py:106
+#: plinth/modules/samba/views.py:88
#, fuzzy
#| msgid "Shared"
msgid "Share disabled."
msgstr "共享"
-#: plinth/modules/samba/views.py:111
+#: plinth/modules/samba/views.py:93
#, fuzzy, python-brace-format
#| msgid "Error installing application: {error}"
msgid "Error disabling share: {error_message}"
msgstr "安装应用程序出错:{error}"
-#: plinth/modules/searx/__init__.py:41 plinth/modules/searx/manifest.py:24
-msgid "Searx"
-msgstr ""
-
-#: plinth/modules/searx/__init__.py:45
-#, fuzzy
-#| msgid "Web Server"
-msgid "Web Search"
-msgstr "Web 服务器"
-
-#: plinth/modules/searx/__init__.py:48
+#: plinth/modules/searx/__init__.py:25
msgid ""
"Searx is a privacy-respecting Internet metasearch engine. It aggregrates and "
"displays results from multiple search engines."
msgstr ""
-#: plinth/modules/searx/__init__.py:50
+#: plinth/modules/searx/__init__.py:27
msgid ""
"Searx can be used to avoid tracking and profiling by search engines. It "
"stores no cookies by default."
msgstr ""
-#: plinth/modules/searx/__init__.py:54
+#: plinth/modules/searx/__init__.py:31
msgid "Search the web"
msgstr ""
-#: plinth/modules/searx/forms.py:30
+#: plinth/modules/searx/__init__.py:47 plinth/modules/searx/manifest.py:9
+msgid "Searx"
+msgstr ""
+
+#: plinth/modules/searx/__init__.py:48
+#, fuzzy
+#| msgid "Web Server"
+msgid "Web Search"
+msgstr "Web 服务器"
+
+#: plinth/modules/searx/forms.py:15
#, fuzzy
#| msgid "Save Services"
msgid "Safe Search"
msgstr "保存服务"
-#: plinth/modules/searx/forms.py:31
+#: plinth/modules/searx/forms.py:16
msgid "Select the default family filter to apply to your search results."
msgstr ""
-#: plinth/modules/searx/forms.py:32
+#: plinth/modules/searx/forms.py:17
msgid "None"
msgstr ""
-#: plinth/modules/searx/forms.py:32
+#: plinth/modules/searx/forms.py:17
#, fuzzy
#| msgid "Mode"
msgid "Moderate"
msgstr "模式"
-#: plinth/modules/searx/forms.py:32
+#: plinth/modules/searx/forms.py:17
msgid "Strict"
msgstr ""
-#: plinth/modules/searx/forms.py:35
+#: plinth/modules/searx/forms.py:20
msgid "Allow Public Access"
msgstr ""
-#: plinth/modules/searx/forms.py:36
+#: plinth/modules/searx/forms.py:21
msgid "Allow this application to be used by anyone who can reach it."
msgstr ""
-#: plinth/modules/searx/views.py:59 plinth/modules/searx/views.py:70
-#: plinth/modules/tor/views.py:149 plinth/modules/tor/views.py:176
+#: plinth/modules/searx/views.py:39 plinth/modules/searx/views.py:50
+#: plinth/modules/tor/views.py:130 plinth/modules/tor/views.py:157
msgid "Configuration updated."
msgstr "配置已更新。"
-#: plinth/modules/security/forms.py:28
+#: plinth/modules/security/forms.py:13
msgid "Restrict console logins (recommended)"
msgstr "限制控制台访问(建议)"
-#: plinth/modules/security/forms.py:29
+#: plinth/modules/security/forms.py:14
msgid ""
"When this option is enabled, only users in the \"admin\" group will be able "
"to log in to console or via SSH. Console users may be able to access some "
@@ -4853,73 +4966,73 @@ msgstr ""
"若启用此项,只有处于“admin”组中的用户能够通过 SSH 访问控制台。控制台用户可以"
"访问一些服务而不需要认证。"
-#: plinth/modules/security/forms.py:34
+#: plinth/modules/security/forms.py:19
msgid "Fail2Ban (recommended)"
msgstr ""
-#: plinth/modules/security/forms.py:35
+#: plinth/modules/security/forms.py:20
msgid ""
"When this option is enabled, Fail2Ban will limit brute force break-in "
"attempts to the SSH server and other enabled password protected internet-"
"services."
msgstr ""
-#: plinth/modules/security/templates/security.html:26
-#: plinth/modules/security/templates/security.html:28
+#: plinth/modules/security/templates/security.html:11
+#: plinth/modules/security/templates/security.html:13
#, fuzzy
#| msgid "Security"
msgid "Show security report"
msgstr "安全"
-#: plinth/modules/security/templates/security_report.html:25
-#: plinth/modules/security/views.py:87
+#: plinth/modules/security/templates/security_report.html:10
+#: plinth/modules/security/views.py:71
#, fuzzy
#| msgid "Security"
msgid "Security Report"
msgstr "安全"
-#: plinth/modules/security/templates/security_report.html:27
+#: plinth/modules/security/templates/security_report.html:12
#, python-format
msgid ""
"The installed version of FreedomBox has %(count)s reported security "
"vulnerabilities."
msgstr ""
-#: plinth/modules/security/templates/security_report.html:33
+#: plinth/modules/security/templates/security_report.html:18
msgid ""
"The following table lists the current reported number, and historical count, "
"of security vulnerabilities for each installed app."
msgstr ""
-#: plinth/modules/security/templates/security_report.html:39
+#: plinth/modules/security/templates/security_report.html:24
msgid ""
"For apps that provide services, the \"Sandboxed\" column shows whether "
"sandboxing features are in use. Sandboxing mitigates the impact of a "
"potentially compromised app to the rest of the system."
msgstr ""
-#: plinth/modules/security/templates/security_report.html:46
+#: plinth/modules/security/templates/security_report.html:31
msgid ""
"\"Sandbox Coverage\" is a score of how effectively the service is isolated "
"from the rest of the system. It is only displayed while the service is "
"running."
msgstr ""
-#: plinth/modules/security/templates/security_report.html:55
+#: plinth/modules/security/templates/security_report.html:40
#, fuzzy
#| msgid "Name"
msgid "App Name"
msgstr "名称"
-#: plinth/modules/security/templates/security_report.html:56
+#: plinth/modules/security/templates/security_report.html:41
msgid "Current Vulnerabilities"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:57
+#: plinth/modules/security/templates/security_report.html:42
msgid "Past Vulnerabilities"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:58
+#: plinth/modules/security/templates/security_report.html:43
#, fuzzy
#| msgid ""
#| "Block Sandbox \n"
@@ -4929,7 +5042,7 @@ msgstr ""
"方块沙盒\n"
"(Minetest)"
-#: plinth/modules/security/templates/security_report.html:59
+#: plinth/modules/security/templates/security_report.html:44
#, fuzzy
#| msgid ""
#| "Block Sandbox \n"
@@ -4939,54 +5052,40 @@ msgstr ""
"方块沙盒\n"
"(Minetest)"
-#: plinth/modules/security/templates/security_report.html:70
+#: plinth/modules/security/templates/security_report.html:55
msgid "N/A"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:72
+#: plinth/modules/security/templates/security_report.html:57
#, fuzzy
#| msgid "yes"
msgid "Yes"
msgstr "是的"
-#: plinth/modules/security/templates/security_report.html:74
+#: plinth/modules/security/templates/security_report.html:59
msgid "No"
msgstr ""
-#: plinth/modules/security/templates/security_report.html:81
+#: plinth/modules/security/templates/security_report.html:66
#, fuzzy
#| msgid "is not running"
msgid "Not running"
msgstr " 未运行"
-#: plinth/modules/security/views.py:69
+#: plinth/modules/security/views.py:53
#, python-brace-format
msgid "Error setting restricted access: {exception}"
msgstr "设置限制访问错误:{exception}"
-#: plinth/modules/security/views.py:72
+#: plinth/modules/security/views.py:56
msgid "Updated security configuration"
msgstr "安全配置已更新"
-#: plinth/modules/shaarli/__init__.py:34 plinth/modules/shaarli/manifest.py:23
-msgid "Shaarli"
-msgstr "Shaarli"
-
-#: plinth/modules/shaarli/__init__.py:36
-#, fuzzy
-#| msgid ""
-#| "Bookmarks \n"
-#| " (Shaarli)"
-msgid "Bookmarks"
-msgstr ""
-"书签\n"
-"(Shaarli)"
-
-#: plinth/modules/shaarli/__init__.py:39
+#: plinth/modules/shaarli/__init__.py:20
msgid "Shaarli allows you to save and share bookmarks."
msgstr "Shaarli 允许您保存和共享书签。"
-#: plinth/modules/shaarli/__init__.py:40
+#: plinth/modules/shaarli/__init__.py:21
#, fuzzy
#| msgid ""
#| "When enabled, Shaarli will be available from /"
@@ -5001,22 +5100,28 @@ msgstr ""
"当启用时,Shaarli 将可从 /shaarli 路径访问。请注"
"意,Shaarli 只支持单用户帐户,您在首次访问时安装程序。"
-#: plinth/modules/shadowsocks/__init__.py:35
-msgid "Shadowsocks"
-msgstr ""
+#: plinth/modules/shaarli/__init__.py:39 plinth/modules/shaarli/manifest.py:8
+msgid "Shaarli"
+msgstr "Shaarli"
-#: plinth/modules/shadowsocks/__init__.py:39
-msgid "Socks5 Proxy"
+#: plinth/modules/shaarli/__init__.py:40
+#, fuzzy
+#| msgid ""
+#| "Bookmarks \n"
+#| " (Shaarli)"
+msgid "Bookmarks"
msgstr ""
+"书签\n"
+"(Shaarli)"
-#: plinth/modules/shadowsocks/__init__.py:46
+#: plinth/modules/shadowsocks/__init__.py:25
msgid ""
"Shadowsocks is a lightweight and secure SOCKS5 proxy, designed to protect "
"your Internet traffic. It can be used to bypass Internet filtering and "
"censorship."
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:50
+#: plinth/modules/shadowsocks/__init__.py:29
#, python-brace-format
msgid ""
"Your {box_name} can run a Shadowsocks client, that can connect to a "
@@ -5025,170 +5130,172 @@ msgid ""
"the Shadowsocks server."
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:55
+#: plinth/modules/shadowsocks/__init__.py:34
msgid ""
"To use Shadowsocks after setup, set the SOCKS5 proxy URL in your device, "
"browser or application to http://freedombox_address:1080/"
msgstr ""
-#: plinth/modules/shadowsocks/forms.py:28
-#: plinth/modules/shadowsocks/forms.py:29
+#: plinth/modules/shadowsocks/__init__.py:50
+msgid "Shadowsocks"
+msgstr ""
+
+#: plinth/modules/shadowsocks/__init__.py:52
+msgid "Socks5 Proxy"
+msgstr ""
+
+#: plinth/modules/shadowsocks/forms.py:13
+#: plinth/modules/shadowsocks/forms.py:14
msgid "Recommended"
msgstr ""
-#: plinth/modules/shadowsocks/forms.py:52
+#: plinth/modules/shadowsocks/forms.py:37
#, fuzzy
#| msgid "Service"
msgid "Server"
msgstr "服务"
-#: plinth/modules/shadowsocks/forms.py:53
+#: plinth/modules/shadowsocks/forms.py:38
msgid "Server hostname or IP address"
msgstr ""
-#: plinth/modules/shadowsocks/forms.py:57
+#: plinth/modules/shadowsocks/forms.py:42
#, fuzzy
#| msgid "Server port"
msgid "Server port number"
msgstr "服务器端口"
-#: plinth/modules/shadowsocks/forms.py:60
+#: plinth/modules/shadowsocks/forms.py:45
msgid "Password used to encrypt data. Must match server password."
msgstr ""
-#: plinth/modules/shadowsocks/forms.py:65
+#: plinth/modules/shadowsocks/forms.py:50
msgid "Encryption method. Must match setting on server."
msgstr ""
-#: plinth/modules/sharing/__init__.py:34
-#, fuzzy
-#| msgid "Enable Shaarli"
-msgid "Sharing"
-msgstr "启用 Shaarli"
-
-#: plinth/modules/sharing/__init__.py:38
+#: plinth/modules/sharing/__init__.py:21
#, python-brace-format
msgid ""
"Sharing allows you to share files and folders on your {box_name} over the "
"web with chosen groups of users."
msgstr ""
-#: plinth/modules/sharing/forms.py:33
+#: plinth/modules/sharing/__init__.py:38
+#, fuzzy
+#| msgid "Enable Shaarli"
+msgid "Sharing"
+msgstr "启用 Shaarli"
+
+#: plinth/modules/sharing/forms.py:18
msgid "Name of the share"
msgstr ""
-#: plinth/modules/sharing/forms.py:35
+#: plinth/modules/sharing/forms.py:20
msgid ""
"A lowercase alpha-numeric string that uniquely identifies a share. Example: "
"media."
msgstr ""
-#: plinth/modules/sharing/forms.py:39
+#: plinth/modules/sharing/forms.py:24
msgid "Path to share"
msgstr ""
-#: plinth/modules/sharing/forms.py:40
+#: plinth/modules/sharing/forms.py:25
msgid "Disk path to a folder on this server that you intend to share."
msgstr ""
-#: plinth/modules/sharing/forms.py:43
+#: plinth/modules/sharing/forms.py:28
#, fuzzy
#| msgid "Publish Key"
msgid "Public share"
msgstr "发布密钥"
-#: plinth/modules/sharing/forms.py:44
+#: plinth/modules/sharing/forms.py:29
msgid "Make files in this folder available to anyone with the link."
msgstr ""
-#: plinth/modules/sharing/forms.py:48
+#: plinth/modules/sharing/forms.py:33
msgid "User groups that can read the files in the share"
msgstr ""
-#: plinth/modules/sharing/forms.py:50
+#: plinth/modules/sharing/forms.py:35
msgid ""
"Users of the selected user groups will be able to read the files in the "
"share."
msgstr ""
-#: plinth/modules/sharing/forms.py:67
+#: plinth/modules/sharing/forms.py:52
#, fuzzy
#| msgid "This service already exists"
msgid "A share with this name already exists."
msgstr "此服务已存在"
-#: plinth/modules/sharing/forms.py:78
+#: plinth/modules/sharing/forms.py:63
msgid "Shares should be either public or shared with at least one group"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:39
-#: plinth/modules/sharing/templates/sharing.html:42
+#: plinth/modules/sharing/templates/sharing.html:24
+#: plinth/modules/sharing/templates/sharing.html:27
#, fuzzy
#| msgid "Add Service"
msgid "Add share"
msgstr "添加服务"
-#: plinth/modules/sharing/templates/sharing.html:47
+#: plinth/modules/sharing/templates/sharing.html:32
msgid "No shares currently configured."
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:53
+#: plinth/modules/sharing/templates/sharing.html:38
msgid "Disk Path"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:54
+#: plinth/modules/sharing/templates/sharing.html:39
#, fuzzy
#| msgid "Shared"
msgid "Shared Over"
msgstr "共享"
-#: plinth/modules/sharing/templates/sharing.html:55
+#: plinth/modules/sharing/templates/sharing.html:40
#, fuzzy
#| msgid "Groups"
msgid "With Groups"
msgstr "群組"
-#: plinth/modules/sharing/templates/sharing.html:73
+#: plinth/modules/sharing/templates/sharing.html:58
msgid "public access"
msgstr ""
-#: plinth/modules/sharing/views.py:55
+#: plinth/modules/sharing/views.py:39
#, fuzzy
#| msgid "Shared"
msgid "Share added."
msgstr "共享"
-#: plinth/modules/sharing/views.py:60
+#: plinth/modules/sharing/views.py:44
#, fuzzy
#| msgid "Add Service"
msgid "Add Share"
msgstr "添加服务"
-#: plinth/modules/sharing/views.py:75
+#: plinth/modules/sharing/views.py:59
#, fuzzy
#| msgid "Shared"
msgid "Share edited."
msgstr "共享"
-#: plinth/modules/sharing/views.py:80
+#: plinth/modules/sharing/views.py:64
#, fuzzy
#| msgid "Edit User"
msgid "Edit Share"
msgstr "编辑用户"
-#: plinth/modules/sharing/views.py:111
+#: plinth/modules/sharing/views.py:95
#, fuzzy
#| msgid "{name} deleted."
msgid "Share deleted."
msgstr "{name} 已删除。"
-#: plinth/modules/snapshot/__init__.py:37
-#, fuzzy
-#| msgid "Create Snapshot"
-msgid "Storage Snapshots"
-msgstr "创建快照"
-
-#: plinth/modules/snapshot/__init__.py:40
+#: plinth/modules/snapshot/__init__.py:23
#, fuzzy
#| msgid ""
#| "Snapshots allows creating and managing filesystem snapshots. These can be "
@@ -5202,7 +5309,7 @@ msgstr ""
"快照可以允许创建并管理文件系统快照。这些可以用来回滚系统到前一个已知可用的状"
"态,以防意外改变系统状态。"
-#: plinth/modules/snapshot/__init__.py:44
+#: plinth/modules/snapshot/__init__.py:27
#, no-python-format
msgid ""
"Snapshots are taken periodically (called timeline snapshots) and also before "
@@ -5210,148 +5317,154 @@ msgid ""
"cleaned up according to the settings below."
msgstr ""
-#: plinth/modules/snapshot/__init__.py:47
+#: plinth/modules/snapshot/__init__.py:30
msgid ""
"Snapshots currently work on btrfs file systems only and on the root "
"partition only. Snapshots are not a replacement for backups since they can only be stored on the same partition. "
msgstr ""
-#: plinth/modules/snapshot/forms.py:27
+#: plinth/modules/snapshot/__init__.py:52
+#, fuzzy
+#| msgid "Create Snapshot"
+msgid "Storage Snapshots"
+msgstr "创建快照"
+
+#: plinth/modules/snapshot/forms.py:12
msgid "Free Disk Space to Maintain"
msgstr ""
-#: plinth/modules/snapshot/forms.py:28
+#: plinth/modules/snapshot/forms.py:13
msgid ""
"Maintain this percentage of free space on the disk. If free space falls "
"below this value, older snapshots are removed until this much free space is "
"regained. The default value is 30%."
msgstr ""
-#: plinth/modules/snapshot/forms.py:35
+#: plinth/modules/snapshot/forms.py:20
#, fuzzy
#| msgid "Delete Snapshot"
msgid "Timeline Snapshots"
msgstr "删除快照"
-#: plinth/modules/snapshot/forms.py:36
+#: plinth/modules/snapshot/forms.py:21
msgid ""
"Enable or disable timeline snapshots (hourly, daily, monthly and yearly)."
msgstr ""
-#: plinth/modules/snapshot/forms.py:41
+#: plinth/modules/snapshot/forms.py:26
msgid "Software Installation Snapshots"
msgstr ""
-#: plinth/modules/snapshot/forms.py:42
+#: plinth/modules/snapshot/forms.py:27
msgid "Enable or disable snapshots before and after software installation"
msgstr ""
-#: plinth/modules/snapshot/forms.py:47
+#: plinth/modules/snapshot/forms.py:32
#, fuzzy
#| msgid "Create Snapshot"
msgid "Hourly Snapshots Limit"
msgstr "创建快照"
-#: plinth/modules/snapshot/forms.py:48
+#: plinth/modules/snapshot/forms.py:33
msgid "Keep a maximum of this many hourly snapshots."
msgstr ""
-#: plinth/modules/snapshot/forms.py:51
+#: plinth/modules/snapshot/forms.py:36
#, fuzzy
#| msgid "Delete Snapshot"
msgid "Daily Snapshots Limit"
msgstr "删除快照"
-#: plinth/modules/snapshot/forms.py:52
+#: plinth/modules/snapshot/forms.py:37
msgid "Keep a maximum of this many daily snapshots."
msgstr ""
-#: plinth/modules/snapshot/forms.py:55
+#: plinth/modules/snapshot/forms.py:40
#, fuzzy
#| msgid "Delete Snapshot"
msgid "Weekly Snapshots Limit"
msgstr "删除快照"
-#: plinth/modules/snapshot/forms.py:56
+#: plinth/modules/snapshot/forms.py:41
msgid "Keep a maximum of this many weekly snapshots."
msgstr ""
-#: plinth/modules/snapshot/forms.py:59
+#: plinth/modules/snapshot/forms.py:44
msgid "Monthly Snapshots Limit"
msgstr ""
-#: plinth/modules/snapshot/forms.py:60
+#: plinth/modules/snapshot/forms.py:45
msgid "Keep a maximum of this many monthly snapshots."
msgstr ""
-#: plinth/modules/snapshot/forms.py:63
+#: plinth/modules/snapshot/forms.py:48
#, fuzzy
#| msgid "Delete Snapshot"
msgid "Yearly Snapshots Limit"
msgstr "删除快照"
-#: plinth/modules/snapshot/forms.py:64
+#: plinth/modules/snapshot/forms.py:49
msgid ""
"Keep a maximum of this many yearly snapshots. The default value is 0 "
"(disabled)."
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:27
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:12
#, fuzzy
#| msgid "Delete this snapshot permanently?"
msgid "Delete the following snapshots permanently?"
msgstr "永久删除此快照?"
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:31
-#: plinth/modules/snapshot/templates/snapshot_manage.html:43
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:39
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:16
+#: plinth/modules/snapshot/templates/snapshot_manage.html:28
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:24
msgid "Number"
msgstr "编号"
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:32
-#: plinth/modules/snapshot/templates/snapshot_manage.html:44
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:40
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:17
+#: plinth/modules/snapshot/templates/snapshot_manage.html:29
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:25
msgid "Date"
msgstr "日期"
-#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:52
-#: plinth/modules/snapshot/templates/snapshot_manage.html:37
-#: plinth/modules/snapshot/views.py:196
+#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:37
+#: plinth/modules/snapshot/templates/snapshot_manage.html:22
+#: plinth/modules/snapshot/views.py:175
#, fuzzy
#| msgid "Delete Snapshot"
msgid "Delete Snapshots"
msgstr "删除快照"
-#: plinth/modules/snapshot/templates/snapshot_manage.html:33
+#: plinth/modules/snapshot/templates/snapshot_manage.html:18
msgid "Create Snapshot"
msgstr "创建快照"
-#: plinth/modules/snapshot/templates/snapshot_manage.html:46
+#: plinth/modules/snapshot/templates/snapshot_manage.html:31
msgid "Rollback"
msgstr "回滚"
-#: plinth/modules/snapshot/templates/snapshot_manage.html:57
+#: plinth/modules/snapshot/templates/snapshot_manage.html:42
msgid "active"
msgstr "激活"
-#: plinth/modules/snapshot/templates/snapshot_manage.html:66
+#: plinth/modules/snapshot/templates/snapshot_manage.html:51
#, python-format
msgid "Rollback to snapshot #%(number)s"
msgstr "回滚到快照 #%(number)s"
-#: plinth/modules/snapshot/templates/snapshot_not_supported.html:26
+#: plinth/modules/snapshot/templates/snapshot_not_supported.html:11
#, python-format
msgid ""
"Your have a filesystem of type %(fs_type)s. Snapshots are "
"currently only available on %(types_supported)s filesystems."
msgstr ""
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:27
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:12
msgid "Roll back the system to this snapshot?"
msgstr "回滚此系统到这个快照?"
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:30
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:15
msgid ""
"A new snapshot with the current state of the file system will be "
"automatically created. You will be able to undo a rollback by reverting to "
@@ -5360,66 +5473,62 @@ msgstr ""
"将自动创建具有文件系统当前状态的新快照。您可以通过还原到新创建的快照来撤销回"
"滚。"
-#: plinth/modules/snapshot/templates/snapshot_rollback.html:57
+#: plinth/modules/snapshot/templates/snapshot_rollback.html:42
#, python-format
msgid "Rollback to Snapshot #%(number)s"
msgstr "回滚到快照 #%(number)s"
-#: plinth/modules/snapshot/views.py:45
+#: plinth/modules/snapshot/views.py:30
#, fuzzy
#| msgid "Create Snapshot"
msgid "Manage Snapshots"
msgstr "创建快照"
-#: plinth/modules/snapshot/views.py:98
+#: plinth/modules/snapshot/views.py:79
msgid "Created snapshot."
msgstr "创建快照。"
-#: plinth/modules/snapshot/views.py:156
+#: plinth/modules/snapshot/views.py:135
#, fuzzy
#| msgid "Access rights configuration updated"
msgid "Storage snapshots configuration updated"
msgstr "访问权配置已更新"
-#: plinth/modules/snapshot/views.py:160 plinth/modules/tor/views.py:79
+#: plinth/modules/snapshot/views.py:139 plinth/modules/tor/views.py:60
#, python-brace-format
msgid "Action error: {0} [{1}] [{2}]"
msgstr "操作错误:{0} [{1}] [{2}]"
-#: plinth/modules/snapshot/views.py:175
+#: plinth/modules/snapshot/views.py:154
#, fuzzy
#| msgid "Delete Snapshot"
msgid "Deleted all snapshots"
msgstr "删除快照"
-#: plinth/modules/snapshot/views.py:179
+#: plinth/modules/snapshot/views.py:158
#, fuzzy
#| msgid "Delete Snapshot"
msgid "Deleted selected snapshots"
msgstr "删除快照"
-#: plinth/modules/snapshot/views.py:184
+#: plinth/modules/snapshot/views.py:163
msgid "Snapshot is currently in use. Please try again later."
msgstr ""
-#: plinth/modules/snapshot/views.py:207
+#: plinth/modules/snapshot/views.py:186
#, python-brace-format
msgid "Rolled back to snapshot #{number}."
msgstr "回滚到快照 #{number}。"
-#: plinth/modules/snapshot/views.py:210
+#: plinth/modules/snapshot/views.py:189
msgid "The system must be restarted to complete the rollback."
msgstr "系统需要重启以完成完全回滚。"
-#: plinth/modules/snapshot/views.py:222
+#: plinth/modules/snapshot/views.py:201
msgid "Rollback to Snapshot"
msgstr "回滚到快照"
-#: plinth/modules/ssh/__init__.py:43
-msgid "Secure Shell (SSH) Server"
-msgstr "安全 Shell(SSH)服务器"
-
-#: plinth/modules/ssh/__init__.py:46
+#: plinth/modules/ssh/__init__.py:29
msgid ""
"A Secure Shell server uses the secure shell protocol to accept connections "
"from remote computers. An authorized remote computer can perform "
@@ -5427,66 +5536,64 @@ msgid ""
"connections."
msgstr ""
-#: plinth/modules/ssh/forms.py:30
+#: plinth/modules/ssh/__init__.py:50
+msgid "Secure Shell (SSH) Server"
+msgstr "安全 Shell(SSH)服务器"
+
+#: plinth/modules/ssh/forms.py:15
#, fuzzy
#| msgid "Use HTTP basic authentication"
msgid "Disable password authentication"
msgstr "使用 HTTP 基本身份验证"
-#: plinth/modules/ssh/forms.py:31
+#: plinth/modules/ssh/forms.py:16
msgid ""
"Improves security by preventing password guessing. Ensure that you have "
"setup SSH keys in your administrator user account before enabling this "
"option."
msgstr ""
-#: plinth/modules/ssh/templates/ssh.html:26
+#: plinth/modules/ssh/templates/ssh.html:11
#, fuzzy
#| msgid "SSH Fingerprint"
msgid "Server Fingerprints"
msgstr "SSH 指纹"
-#: plinth/modules/ssh/templates/ssh.html:29
+#: plinth/modules/ssh/templates/ssh.html:14
msgid ""
"When connecting to the server, ensure that the fingerprint shown by the SSH "
"client matches one of these fingerprints."
msgstr ""
-#: plinth/modules/ssh/templates/ssh.html:38
+#: plinth/modules/ssh/templates/ssh.html:23
msgid "Algorithm"
msgstr ""
-#: plinth/modules/ssh/templates/ssh.html:39
+#: plinth/modules/ssh/templates/ssh.html:24
#, fuzzy
#| msgid "SSH Fingerprint"
msgid "Fingerprint"
msgstr "SSH 指纹"
-#: plinth/modules/ssh/views.py:66
+#: plinth/modules/ssh/views.py:48
msgid "SSH authentication with password disabled."
msgstr ""
-#: plinth/modules/ssh/views.py:69
+#: plinth/modules/ssh/views.py:51
#, fuzzy
#| msgid "Authentication to remote server failed."
msgid "SSH authentication with password enabled."
msgstr "远程服务器认证失败。"
-#: plinth/modules/sso/__init__.py:30
+#: plinth/modules/sso/__init__.py:33
msgid "Single Sign On"
msgstr ""
-#: plinth/modules/sso/templates/login.html:35
+#: plinth/modules/sso/templates/login.html:20
msgid "Login"
msgstr "登录"
-#: plinth/modules/storage/__init__.py:39 plinth/modules/storage/__init__.py:331
-#, fuzzy
-#| msgid "reStore"
-msgid "Storage"
-msgstr "reStore"
-
-#: plinth/modules/storage/__init__.py:47
+#: plinth/modules/storage/__init__.py:30
#, python-brace-format
msgid ""
"This module allows you to manage storage media attached to your {box_name}. "
@@ -5494,166 +5601,172 @@ msgid ""
"media, expand the root partition etc."
msgstr ""
-#: plinth/modules/storage/__init__.py:224
+#: plinth/modules/storage/__init__.py:52 plinth/modules/storage/__init__.py:318
+#, fuzzy
+#| msgid "reStore"
+msgid "Storage"
+msgstr "reStore"
+
+#: plinth/modules/storage/__init__.py:211
#, fuzzy, python-brace-format
#| msgid "{disk_size} bytes"
msgid "{disk_size:.1f} bytes"
msgstr "{disk_size} bytes"
-#: plinth/modules/storage/__init__.py:228
+#: plinth/modules/storage/__init__.py:215
#, fuzzy, python-brace-format
#| msgid "{disk_size} KiB"
msgid "{disk_size:.1f} KiB"
msgstr "{disk_size} KiB"
-#: plinth/modules/storage/__init__.py:232
+#: plinth/modules/storage/__init__.py:219
#, fuzzy, python-brace-format
#| msgid "{disk_size} MiB"
msgid "{disk_size:.1f} MiB"
msgstr "{disk_size} MiB"
-#: plinth/modules/storage/__init__.py:236
+#: plinth/modules/storage/__init__.py:223
#, fuzzy, python-brace-format
#| msgid "{disk_size} GiB"
msgid "{disk_size:.1f} GiB"
msgstr "{disk_size} GiB"
-#: plinth/modules/storage/__init__.py:239
+#: plinth/modules/storage/__init__.py:226
#, fuzzy, python-brace-format
#| msgid "{disk_size} TiB"
msgid "{disk_size:.1f} TiB"
msgstr "{disk_size} TiB"
-#: plinth/modules/storage/__init__.py:246
+#: plinth/modules/storage/__init__.py:233
msgid "The operation failed."
msgstr ""
-#: plinth/modules/storage/__init__.py:248
+#: plinth/modules/storage/__init__.py:235
msgid "The operation was cancelled."
msgstr ""
-#: plinth/modules/storage/__init__.py:250
+#: plinth/modules/storage/__init__.py:237
#, fuzzy
#| msgid "repro service is running"
msgid "The device is already unmounting."
msgstr "repro 服务正在运行"
-#: plinth/modules/storage/__init__.py:252
+#: plinth/modules/storage/__init__.py:239
msgid "The operation is not supported due to missing driver/tool support."
msgstr ""
-#: plinth/modules/storage/__init__.py:255
+#: plinth/modules/storage/__init__.py:242
msgid "The operation timed out."
msgstr ""
-#: plinth/modules/storage/__init__.py:257
+#: plinth/modules/storage/__init__.py:244
msgid "The operation would wake up a disk that is in a deep-sleep state."
msgstr ""
-#: plinth/modules/storage/__init__.py:260
+#: plinth/modules/storage/__init__.py:247
msgid "Attempting to unmount a device that is busy."
msgstr ""
-#: plinth/modules/storage/__init__.py:262
+#: plinth/modules/storage/__init__.py:249
msgid "The operation has already been cancelled."
msgstr ""
-#: plinth/modules/storage/__init__.py:268
+#: plinth/modules/storage/__init__.py:255
msgid "Not authorized to perform the requested operation."
msgstr ""
-#: plinth/modules/storage/__init__.py:270
+#: plinth/modules/storage/__init__.py:257
#, fuzzy
#| msgid "This service already exists"
msgid "The device is already mounted."
msgstr "此服务已存在"
-#: plinth/modules/storage/__init__.py:272
+#: plinth/modules/storage/__init__.py:259
#, fuzzy
#| msgid "repro service is not running"
msgid "The device is not mounted."
msgstr "repro 服务未运行"
-#: plinth/modules/storage/__init__.py:275
+#: plinth/modules/storage/__init__.py:262
msgid "Not permitted to use the requested option."
msgstr ""
-#: plinth/modules/storage/__init__.py:278
+#: plinth/modules/storage/__init__.py:265
msgid "The device is mounted by another user."
msgstr ""
-#: plinth/modules/storage/__init__.py:326
+#: plinth/modules/storage/__init__.py:313
#, no-python-format, python-brace-format
msgid "Low space on system partition: {percent_used}% used, {free_space} free."
msgstr ""
-#: plinth/modules/storage/__init__.py:328
+#: plinth/modules/storage/__init__.py:315
msgid "Low disk space"
msgstr ""
-#: plinth/modules/storage/forms.py:79
+#: plinth/modules/storage/forms.py:64
#, fuzzy
#| msgid "Invalid hostname"
msgid "Invalid directory name."
msgstr "无效的主机名"
-#: plinth/modules/storage/forms.py:97
+#: plinth/modules/storage/forms.py:82
msgid "Directory does not exist."
msgstr ""
-#: plinth/modules/storage/forms.py:99
+#: plinth/modules/storage/forms.py:84
#, fuzzy
#| msgid "Download directory"
msgid "Path is not a directory."
msgstr "下载目录"
-#: plinth/modules/storage/forms.py:102
+#: plinth/modules/storage/forms.py:87
msgid "Directory is not readable by the user."
msgstr ""
-#: plinth/modules/storage/forms.py:105
+#: plinth/modules/storage/forms.py:90
msgid "Directory is not writable by the user."
msgstr ""
-#: plinth/modules/storage/forms.py:110
+#: plinth/modules/storage/forms.py:95
#, fuzzy
#| msgid "Download directory"
msgid "Directory"
msgstr "下载目录"
-#: plinth/modules/storage/forms.py:113
+#: plinth/modules/storage/forms.py:98
msgid "Subdirectory (optional)"
msgstr ""
-#: plinth/modules/storage/forms.py:160
+#: plinth/modules/storage/forms.py:145
#, fuzzy
#| msgid "Shared"
msgid "Share"
msgstr "共享"
-#: plinth/modules/storage/forms.py:168
+#: plinth/modules/storage/forms.py:153
msgid "Other directory (specify below)"
msgstr ""
-#: plinth/modules/storage/templates/storage.html:35
+#: plinth/modules/storage/templates/storage.html:20
#, fuzzy
#| msgid "The following disks are in use:"
msgid "The following storage devices are in use:"
msgstr "正在使用以下磁盘:"
-#: plinth/modules/storage/templates/storage.html:41
+#: plinth/modules/storage/templates/storage.html:26
msgid "Label"
msgstr ""
-#: plinth/modules/storage/templates/storage.html:42
+#: plinth/modules/storage/templates/storage.html:27
msgid "Mount Point"
msgstr "挂载点"
-#: plinth/modules/storage/templates/storage.html:90
+#: plinth/modules/storage/templates/storage.html:75
msgid "Partition Expansion"
msgstr ""
-#: plinth/modules/storage/templates/storage.html:92
+#: plinth/modules/storage/templates/storage.html:77
#, python-format
msgid ""
"There is %(expandable_root_size)s of unallocated space available after your "
@@ -5663,13 +5776,13 @@ msgstr ""
"这里有 %(expandable_root_size)s 未分配的空间可用在你的根分区。可以扩展根分区"
"以使用这个空间。这可以让你有更多空间来存储文件。"
-#: plinth/modules/storage/templates/storage.html:102
-#: plinth/modules/storage/templates/storage_expand.html:39
-#: plinth/modules/storage/views.py:76
+#: plinth/modules/storage/templates/storage.html:87
+#: plinth/modules/storage/templates/storage_expand.html:24
+#: plinth/modules/storage/views.py:58
msgid "Expand Root Partition"
msgstr "扩展根分区"
-#: plinth/modules/storage/templates/storage_expand.html:29
+#: plinth/modules/storage/templates/storage_expand.html:14
#, python-format
msgid ""
"Please backup your data before proceeding. After this operation, "
@@ -5679,39 +5792,30 @@ msgstr ""
"执行前请备份你的数据。这个操作以后,将会为你的根分区扩展出 "
"%(expandable_root_size)s 空余空间。"
-#: plinth/modules/storage/views.py:88
+#: plinth/modules/storage/views.py:70
#, python-brace-format
msgid "Error expanding partition: {exception}"
msgstr "扩展分区错误:{exception}"
-#: plinth/modules/storage/views.py:91
+#: plinth/modules/storage/views.py:73
msgid "Partition expanded successfully."
msgstr "已成功扩展分区。"
-#: plinth/modules/storage/views.py:109
+#: plinth/modules/storage/views.py:91
#, python-brace-format
msgid "{drive_vendor} {drive_model} can be safely unplugged."
msgstr ""
-#: plinth/modules/storage/views.py:113
+#: plinth/modules/storage/views.py:95
msgid "Device can be safely unplugged."
msgstr ""
-#: plinth/modules/storage/views.py:123
+#: plinth/modules/storage/views.py:105
#, python-brace-format
msgid "Error ejecting device: {error_message}"
msgstr ""
-#: plinth/modules/syncthing/__init__.py:40
-#: plinth/modules/syncthing/manifest.py:28
-msgid "Syncthing"
-msgstr ""
-
-#: plinth/modules/syncthing/__init__.py:44
-msgid "File Synchronization"
-msgstr ""
-
-#: plinth/modules/syncthing/__init__.py:47
+#: plinth/modules/syncthing/__init__.py:26
msgid ""
"Syncthing is an application to synchronize files across multiple devices, e."
"g. your desktop computer and mobile phone. Creation, modification, or "
@@ -5719,7 +5823,7 @@ msgid ""
"other devices that also run Syncthing."
msgstr ""
-#: plinth/modules/syncthing/__init__.py:52
+#: plinth/modules/syncthing/__init__.py:31
#, python-brace-format
msgid ""
"Running Syncthing on {box_name} provides an extra synchronization point for "
@@ -5730,21 +5834,22 @@ msgid ""
"{box_name} is only available for users belonging to the \"admin\" group."
msgstr ""
-#: plinth/modules/syncthing/__init__.py:63
+#: plinth/modules/syncthing/__init__.py:40
#, fuzzy
#| msgid "Install this application?"
msgid "Administer Syncthing application"
msgstr "安装此应用程序?"
-#: plinth/modules/tahoe/__init__.py:43
-msgid "Tahoe-LAFS"
+#: plinth/modules/syncthing/__init__.py:54
+#: plinth/modules/syncthing/manifest.py:13
+msgid "Syncthing"
msgstr ""
-#: plinth/modules/tahoe/__init__.py:47
-msgid "Distributed File Storage"
+#: plinth/modules/syncthing/__init__.py:55
+msgid "File Synchronization"
msgstr ""
-#: plinth/modules/tahoe/__init__.py:134
+#: plinth/modules/tahoe/__init__.py:30
msgid ""
"Tahoe-LAFS is a decentralized secure file storage system. It uses provider "
"independent security to store files over a distributed network of storage "
@@ -5752,7 +5857,7 @@ msgid ""
"remaining nodes."
msgstr ""
-#: plinth/modules/tahoe/__init__.py:139
+#: plinth/modules/tahoe/__init__.py:35
#, python-brace-format
msgid ""
"This {box_name} hosts a storage node and an introducer by default. "
@@ -5760,7 +5865,15 @@ msgid ""
"other storage nodes."
msgstr ""
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:33
+#: plinth/modules/tahoe/__init__.py:66
+msgid "Tahoe-LAFS"
+msgstr ""
+
+#: plinth/modules/tahoe/__init__.py:68
+msgid "Distributed File Storage"
+msgstr ""
+
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:17
#, python-format
msgid ""
"The Tahoe-LAFS server domain is set to %(domain_name)s. Changing the "
@@ -5769,41 +5882,37 @@ msgid ""
"%(domain_name)s:5678\">https://%(domain_name)s:5678."
msgstr ""
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:55
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:39
msgid "Local introducer"
msgstr ""
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:43
#: plinth/modules/tahoe/templates/tahoe-post-setup.html:59
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:75
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:92
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:76
#, fuzzy
#| msgid "Name"
msgid "Pet Name"
msgstr "名称"
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:72
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:56
msgid "Add new introducer"
msgstr ""
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:83
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:67
#, fuzzy
#| msgid "Address"
msgid "Add"
msgstr "地址"
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:88
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:72
msgid "Connected introducers"
msgstr ""
-#: plinth/modules/tahoe/templates/tahoe-post-setup.html:105
+#: plinth/modules/tahoe/templates/tahoe-post-setup.html:89
msgid "Remove"
msgstr ""
-#: plinth/modules/tor/__init__.py:47
-msgid "Tor"
-msgstr ""
-
-#: plinth/modules/tor/__init__.py:52
+#: plinth/modules/tor/__init__.py:33
msgid ""
"Tor is an anonymous communication system. You can learn more about it from "
"the Tor Project website. For "
@@ -5816,78 +5925,82 @@ msgstr ""
"href=\"https://www.torproject.org/download/download-easy.html.en\">Tor浏览器"
"。"
-#: plinth/modules/tor/__init__.py:83
+#: plinth/modules/tor/__init__.py:55
+msgid "Tor"
+msgstr ""
+
+#: plinth/modules/tor/__init__.py:66
#, fuzzy
#| msgid "Tor Hidden Service"
msgid "Tor Onion Service"
msgstr "隐藏的 Tor 服务"
-#: plinth/modules/tor/__init__.py:87
+#: plinth/modules/tor/__init__.py:70
msgid "Tor Socks Proxy"
msgstr ""
-#: plinth/modules/tor/__init__.py:91
+#: plinth/modules/tor/__init__.py:74
msgid "Tor Bridge Relay"
msgstr "Tor 网桥中继"
-#: plinth/modules/tor/__init__.py:112
+#: plinth/modules/tor/__init__.py:95
msgid "Tor relay port available"
msgstr "Tor 中继端口可用"
-#: plinth/modules/tor/__init__.py:122
+#: plinth/modules/tor/__init__.py:105
msgid "Obfs3 transport registered"
msgstr "已注册 Obfs3 传输"
-#: plinth/modules/tor/__init__.py:132
+#: plinth/modules/tor/__init__.py:115
msgid "Obfs4 transport registered"
msgstr "已注册 Obfs4 传输"
-#: plinth/modules/tor/__init__.py:225
+#: plinth/modules/tor/__init__.py:208
#, python-brace-format
msgid "Access URL {url} on tcp{kind} via Tor"
msgstr "在 tcp{kind} 上通过 Tor 访问 {url}"
-#: plinth/modules/tor/__init__.py:236
+#: plinth/modules/tor/__init__.py:219
#, python-brace-format
msgid "Confirm Tor usage at {url} on tcp{kind}"
msgstr "确认使用 Tor 通过 tcp{kind} 访问 {url}"
-#: plinth/modules/tor/forms.py:46
+#: plinth/modules/tor/forms.py:31
msgid ""
"Enter a valid bridge with this format: [transport] IP:ORPort [fingerprint]"
msgstr ""
-#: plinth/modules/tor/forms.py:88
+#: plinth/modules/tor/forms.py:73
msgid "Enable Tor"
msgstr "启用 Tor"
-#: plinth/modules/tor/forms.py:90
+#: plinth/modules/tor/forms.py:75
msgid "Use upstream bridges to connect to Tor network"
msgstr ""
-#: plinth/modules/tor/forms.py:92
+#: plinth/modules/tor/forms.py:77
msgid ""
"When enabled, the bridges configured below will be used to connect to the "
"Tor network. Use this option if your Internet Service Provider (ISP) blocks "
"or censors connections to the Tor Network. This will disable relay modes."
msgstr ""
-#: plinth/modules/tor/forms.py:97
+#: plinth/modules/tor/forms.py:82
msgid "Upstream bridges"
msgstr ""
-#: plinth/modules/tor/forms.py:99
+#: plinth/modules/tor/forms.py:84
msgid ""
"You can get some bridges from https://bridges.torproject.org/ and copy/paste the bridge information "
"here. Currently supported transports are none, obfs3, obfs4 and scamblesuit."
msgstr ""
-#: plinth/modules/tor/forms.py:105
+#: plinth/modules/tor/forms.py:90
msgid "Enable Tor relay"
msgstr "启用 Tor 中继"
-#: plinth/modules/tor/forms.py:106
+#: plinth/modules/tor/forms.py:91
#, python-brace-format
msgid ""
"When enabled, your {box_name} will run a Tor relay and donate bandwidth to "
@@ -5897,11 +6010,11 @@ msgstr ""
"启用后,您的 {box_name} 将运行 Tor 中继,并向 Tor 网络分配带宽。如果您的上传"
"和下载带宽超过 2 MB/s,请执行此操作。"
-#: plinth/modules/tor/forms.py:111
+#: plinth/modules/tor/forms.py:96
msgid "Enable Tor bridge relay"
msgstr "启用 Tor 网桥中继"
-#: plinth/modules/tor/forms.py:113
+#: plinth/modules/tor/forms.py:98
msgid ""
"When enabled, relay information is published in the Tor bridge database "
"instead of public Tor relay database making it harder to censor this node. "
@@ -5910,13 +6023,13 @@ msgstr ""
"当启用时,中继信息在 Tor 桥数据库中发布,而不是公共 Tor 中继数据库,使得更难"
"以检查此节点。这有助于其他人绕过审查。"
-#: plinth/modules/tor/forms.py:118
+#: plinth/modules/tor/forms.py:103
#, fuzzy
#| msgid "Enable Tor Hidden Service"
msgid "Enable Tor Hidden Service"
msgstr "启用 Tor 隐藏服务"
-#: plinth/modules/tor/forms.py:120
+#: plinth/modules/tor/forms.py:105
#, fuzzy, python-brace-format
#| msgid ""
#| "A hidden service will allow {box_name} to provide selected services (such "
@@ -5930,11 +6043,11 @@ msgstr ""
"隐藏的服务将允许 {box_name} 提供某些服务(如维基或聊天),而不暴露其位置。不"
"要使用在强匿名状态。"
-#: plinth/modules/tor/forms.py:125
+#: plinth/modules/tor/forms.py:110
msgid "Download software packages over Tor"
msgstr "通过 Tor 下载软件包"
-#: plinth/modules/tor/forms.py:126
+#: plinth/modules/tor/forms.py:111
msgid ""
"When enabled, software will be downloaded over the Tor network for "
"installations and upgrades. This adds a degree of privacy and security "
@@ -5943,37 +6056,37 @@ msgstr ""
"当启用时,软件将会下载 Tor 网络的安装和升级。这在软件下载过程中添加了一定程度"
"的隐私和安全。"
-#: plinth/modules/tor/forms.py:141
+#: plinth/modules/tor/forms.py:126
msgid "Specify at least one upstream bridge to use upstream bridges."
msgstr ""
-#: plinth/modules/tor/manifest.py:29
+#: plinth/modules/tor/manifest.py:14
msgid "Tor Browser"
msgstr "洋葱浏览器"
-#: plinth/modules/tor/manifest.py:45
+#: plinth/modules/tor/manifest.py:30
msgid "Orbot: Proxy with Tor"
msgstr ""
-#: plinth/modules/tor/templates/tor.html:41
+#: plinth/modules/tor/templates/tor.html:26
msgid "Tor configuration is being updated"
msgstr "Tor 配置已更新"
-#: plinth/modules/tor/templates/tor.html:50
+#: plinth/modules/tor/templates/tor.html:35
#, fuzzy
#| msgid "Hidden Service"
msgid "Onion Service"
msgstr "隐藏的服务"
-#: plinth/modules/tor/templates/tor.html:52
+#: plinth/modules/tor/templates/tor.html:37
msgid "Ports"
msgstr "端口"
-#: plinth/modules/tor/templates/tor.html:82
+#: plinth/modules/tor/templates/tor.html:67
msgid "Relay"
msgstr "网桥"
-#: plinth/modules/tor/templates/tor.html:84
+#: plinth/modules/tor/templates/tor.html:69
#, python-format
msgid ""
"If your %(box_name)s is behind a router or firewall, you should make sure "
@@ -5982,23 +6095,16 @@ msgstr ""
"如果你的 %(box_name)s 是在路由器或防火墙后面,你必须确保以下端口打开,必要时"
"打开端口转发。"
-#: plinth/modules/tor/templates/tor.html:112
+#: plinth/modules/tor/templates/tor.html:97
msgid "SOCKS"
msgstr "SOCKS"
-#: plinth/modules/tor/templates/tor.html:115
+#: plinth/modules/tor/templates/tor.html:100
#, python-format
msgid "A Tor SOCKS port is available on your %(box_name)s on TCP port 9050."
msgstr "Tor SOCKS 端口是你 %(box_name)s 上的 TCP 端口 9050 。"
-#: plinth/modules/transmission/__init__.py:41
-#: plinth/modules/transmission/manifest.py:24
-#, fuzzy
-#| msgid "Transmission BitTorrent"
-msgid "Transmission"
-msgstr "Transmission BitTorrent"
-
-#: plinth/modules/transmission/__init__.py:48
+#: plinth/modules/transmission/__init__.py:27
msgid ""
"BitTorrent is a peer-to-peer file sharing protocol. Transmission daemon "
"handles Bitorrent file sharing. Note that BitTorrent is not anonymous."
@@ -6006,21 +6112,14 @@ msgstr ""
"BitTorrent 是对等文件共享协议。Transmission 守护进程处理 Bitorrent 文件共享。"
"请注意,BitTorrent 不是匿名。"
-#: plinth/modules/ttrss/__init__.py:43 plinth/modules/ttrss/manifest.py:34
-msgid "Tiny Tiny RSS"
-msgstr ""
-
-#: plinth/modules/ttrss/__init__.py:47
+#: plinth/modules/transmission/__init__.py:48
+#: plinth/modules/transmission/manifest.py:9
#, fuzzy
-#| msgid ""
-#| "News Feed Reader \n"
-#| " (Tiny Tiny RSS)"
-msgid "News Feed Reader"
-msgstr ""
-"新闻收取阅读器\n"
-"(Tiny Tiny RSS)"
+#| msgid "Transmission BitTorrent"
+msgid "Transmission"
+msgstr "Transmission BitTorrent"
-#: plinth/modules/ttrss/__init__.py:50
+#: plinth/modules/ttrss/__init__.py:29
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 "
@@ -6029,7 +6128,7 @@ msgstr ""
"Tiny Tiny RSS是一个新闻源(RSS / Atom)阅读器和聚合器,旨在允许从任何位置读取"
"新闻,同时提供尽可能接近真实的桌面应用程序体验。"
-#: plinth/modules/ttrss/__init__.py:54
+#: plinth/modules/ttrss/__init__.py:33
#, fuzzy, python-brace-format
#| msgid ""
#| "When enabled, Tiny Tiny RSS will be available from /"
@@ -6041,74 +6140,88 @@ msgstr ""
"启用以后,Tiny Tiny RSS 将可从网页服务器的 /tt-rss 路"
"径访问。"
-#: plinth/modules/ttrss/__init__.py:58
+#: plinth/modules/ttrss/__init__.py:37
msgid ""
"When using a mobile or desktop application for Tiny Tiny RSS, use the URL /tt-rss-app for "
"connecting."
msgstr ""
-#: plinth/modules/ttrss/__init__.py:65
+#: plinth/modules/ttrss/__init__.py:42
msgid "Read and subscribe to news feeds"
msgstr ""
-#: plinth/modules/ttrss/manifest.py:25
+#: plinth/modules/ttrss/__init__.py:56 plinth/modules/ttrss/manifest.py:19
+msgid "Tiny Tiny RSS"
+msgstr ""
+
+#: plinth/modules/ttrss/__init__.py:57
+#, fuzzy
+#| msgid ""
+#| "News Feed Reader \n"
+#| " (Tiny Tiny RSS)"
+msgid "News Feed Reader"
+msgstr ""
+"新闻收取阅读器\n"
+"(Tiny Tiny RSS)"
+
+#: plinth/modules/ttrss/manifest.py:10
msgid "Tiny Tiny RSS (Fork)"
msgstr ""
-#: plinth/modules/upgrades/__init__.py:37 plinth/templates/setup.html:89
-msgid "Update"
-msgstr "更新"
-
-#: plinth/modules/upgrades/__init__.py:40
+#: plinth/modules/upgrades/__init__.py:23
msgid "Check for and apply the latest software and security updates."
msgstr ""
-#: plinth/modules/upgrades/__init__.py:84
+#: plinth/modules/upgrades/__init__.py:38 plinth/templates/setup.html:74
+msgid "Update"
+msgstr "更新"
+
+#: plinth/modules/upgrades/__init__.py:71
#, fuzzy
#| msgid "FreedomBox"
msgid "FreedomBox Updated"
msgstr "FreedomBox"
-#: plinth/modules/upgrades/forms.py:28
+#: plinth/modules/upgrades/forms.py:13
#, fuzzy
#| msgid "Enable automatic upgrades"
msgid "Enable auto-update"
msgstr "启用自动升级"
-#: plinth/modules/upgrades/forms.py:29
+#: plinth/modules/upgrades/forms.py:14
msgid "When enabled, FreedomBox automatically updates once a day."
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades-new-release.html:24
+#: plinth/modules/upgrades/templates/upgrades-new-release.html:9
#, fuzzy, python-format
#| msgid "%(box_name)s Setup"
msgid "%(box_name)s Updated"
msgstr "%(box_name)s 安装程序"
-#: plinth/modules/upgrades/templates/upgrades-new-release.html:28
+#: plinth/modules/upgrades/templates/upgrades-new-release.html:13
#, python-format
msgid ""
"%(box_name)s has been updated to version %(version)s. See the release announcement."
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades-new-release.html:37
-#: plinth/templates/notifications.html:59
+#: plinth/modules/upgrades/templates/upgrades-new-release.html:22
+#: plinth/templates/notifications.html:44
msgid "Dismiss"
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades.html:45
+#: plinth/modules/upgrades/templates/upgrades.html:30
#, fuzzy
#| msgid "Update"
msgid "Update now"
msgstr "更新"
-#: plinth/modules/upgrades/templates/upgrades.html:54
+#: plinth/modules/upgrades/templates/upgrades.html:39
msgid "Updating..."
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades.html:59
+#: plinth/modules/upgrades/templates/upgrades.html:44
#, fuzzy
#| msgid ""
#| "Depending on the number of packages to install, this may take a long time "
@@ -6124,55 +6237,51 @@ msgstr ""
"装其它软件包。升级期间,此 web 界面可能暂时不可用并显示错误消息。刷新页面后,"
"可以继续。"
-#: plinth/modules/upgrades/templates/upgrades.html:73
+#: plinth/modules/upgrades/templates/upgrades.html:58
msgid "Toggle recent update logs"
msgstr ""
-#: plinth/modules/upgrades/templates/upgrades_configure.html:26
-#: plinth/modules/upgrades/templates/upgrades_configure.html:27
-#: plinth/modules/upgrades/views.py:107
+#: plinth/modules/upgrades/templates/upgrades_configure.html:11
+#: plinth/modules/upgrades/templates/upgrades_configure.html:12
+#: plinth/modules/upgrades/views.py:89
#, fuzzy
#| msgid "Last update"
msgid "Manual update"
msgstr "最后一次更新"
-#: plinth/modules/upgrades/views.py:66
+#: plinth/modules/upgrades/views.py:48
#, python-brace-format
msgid "Error when configuring unattended-upgrades: {error}"
msgstr "配置无人参与升级时错误:{error}"
-#: plinth/modules/upgrades/views.py:70
+#: plinth/modules/upgrades/views.py:52
msgid "Automatic upgrades enabled"
msgstr "已启用自动升级"
-#: plinth/modules/upgrades/views.py:73
+#: plinth/modules/upgrades/views.py:55
msgid "Automatic upgrades disabled"
msgstr "已禁用自动升级"
-#: plinth/modules/upgrades/views.py:75
+#: plinth/modules/upgrades/views.py:57
msgid "Settings unchanged"
msgstr "设置未改变"
-#: plinth/modules/upgrades/views.py:101
+#: plinth/modules/upgrades/views.py:83
msgid "Upgrade process started."
msgstr "升级过程开始。"
-#: plinth/modules/upgrades/views.py:104
+#: plinth/modules/upgrades/views.py:86
msgid "Starting upgrade failed."
msgstr "开始升级失败。"
-#: plinth/modules/users/__init__.py:51
-msgid "Users and Groups"
-msgstr "用户和组"
-
-#: plinth/modules/users/__init__.py:54
+#: plinth/modules/users/__init__.py:37
msgid ""
"Create and managed user accounts. These accounts serve as centralized "
"authentication mechanism for most apps. Some apps further require a user "
"account to be part of a group to authorize the user to access the app."
msgstr ""
-#: plinth/modules/users/__init__.py:59
+#: plinth/modules/users/__init__.py:42
#, python-brace-format
msgid ""
"Any user may login to {box_name} web interface to see a list of apps "
@@ -6180,37 +6289,41 @@ msgid ""
"group may alter apps or system settings."
msgstr ""
-#: plinth/modules/users/__init__.py:128
+#: plinth/modules/users/__init__.py:64
+msgid "Users and Groups"
+msgstr "用户和组"
+
+#: plinth/modules/users/__init__.py:115
#, python-brace-format
msgid "Check LDAP entry \"{search_item}\""
msgstr "请检查 LDAP 条目“{search_item}”"
-#: plinth/modules/users/forms.py:43
+#: plinth/modules/users/forms.py:28
msgid "Access to all services and system settings"
msgstr ""
-#: plinth/modules/users/forms.py:59
+#: plinth/modules/users/forms.py:44
msgid "Username is taken or is reserved."
msgstr "用户名已经占用或保留。"
-#: plinth/modules/users/forms.py:87
+#: plinth/modules/users/forms.py:72
#, fuzzy
#| msgid "Invalid server name"
msgid "Enter a valid username."
msgstr "服务器名称无效"
-#: plinth/modules/users/forms.py:93
+#: plinth/modules/users/forms.py:78
msgid ""
"Required. 150 characters or fewer. English letters, digits and @/./-/_ only."
msgstr ""
-#: plinth/modules/users/forms.py:106 plinth/modules/users/forms.py:222
+#: plinth/modules/users/forms.py:91 plinth/modules/users/forms.py:207
#, fuzzy
#| msgid "Transmission BitTorrent"
msgid "Permissions"
msgstr "Transmission BitTorrent"
-#: plinth/modules/users/forms.py:109
+#: plinth/modules/users/forms.py:94
msgid ""
"Select which services should be available to the new user. The user will be "
"able to log in to services that support single sign-on through LDAP, if they "
@@ -6222,20 +6335,20 @@ msgstr ""
"支持单一登录的服务。
管理员(admin)组中的用户将能够登录所有服务。他"
"们还可以通过 SSH 登录到系统并具有管理权限(sudo)。"
-#: plinth/modules/users/forms.py:148 plinth/modules/users/forms.py:372
+#: plinth/modules/users/forms.py:133 plinth/modules/users/forms.py:357
msgid "Creating LDAP user failed."
msgstr "创建 LDAP 用户失败。"
-#: plinth/modules/users/forms.py:159
+#: plinth/modules/users/forms.py:144
#, python-brace-format
msgid "Failed to add new user to {group} group."
msgstr "未能将新用户添加到 {group}。"
-#: plinth/modules/users/forms.py:173
+#: plinth/modules/users/forms.py:158
msgid "Authorized SSH Keys"
msgstr ""
-#: plinth/modules/users/forms.py:175
+#: plinth/modules/users/forms.py:160
msgid ""
"Setting an SSH public key will allow this user to securely log in to the "
"system without using a password. You may enter multiple keys, one on each "
@@ -6244,84 +6357,84 @@ msgstr ""
"设置 SSH 公钥将允许此用户安全地登录到系统不使用密码。您可以输入多个密钥,每行"
"一个。将忽略空行和以 # 开头的行。"
-#: plinth/modules/users/forms.py:259
+#: plinth/modules/users/forms.py:244
msgid "Renaming LDAP user failed."
msgstr "重命名 LDAP 用户失败。"
-#: plinth/modules/users/forms.py:271
+#: plinth/modules/users/forms.py:256
msgid "Failed to remove user from group."
msgstr "无法从组中删除用户。"
-#: plinth/modules/users/forms.py:282
+#: plinth/modules/users/forms.py:267
msgid "Failed to add user to group."
msgstr "无法将用户添加到组。"
-#: plinth/modules/users/forms.py:291
+#: plinth/modules/users/forms.py:276
msgid "Unable to set SSH keys."
msgstr "不能设置 SSH 密钥。"
-#: plinth/modules/users/forms.py:306
+#: plinth/modules/users/forms.py:291
#, fuzzy
#| msgid "Failed to add user to group."
msgid "Failed to change user status."
msgstr "无法将用户添加到组。"
-#: plinth/modules/users/forms.py:314
+#: plinth/modules/users/forms.py:299
msgid "Cannot delete the only administrator in the system."
msgstr ""
-#: plinth/modules/users/forms.py:346
+#: plinth/modules/users/forms.py:331
msgid "Changing LDAP user password failed."
msgstr "更改 LDAP 用户密码失败。"
-#: plinth/modules/users/forms.py:381
+#: plinth/modules/users/forms.py:366
msgid "Failed to add new user to admin group."
msgstr "未能将新用户添加到管理员组。"
-#: plinth/modules/users/forms.py:398
+#: plinth/modules/users/forms.py:383
msgid "Failed to restrict console access."
msgstr "限制命令行访问失败。"
-#: plinth/modules/users/forms.py:410
+#: plinth/modules/users/forms.py:395
msgid "User account created, you are now logged in"
msgstr "用户帐户已创建,您现在可以登录"
-#: plinth/modules/users/templates/users_change_password.html:26
+#: plinth/modules/users/templates/users_change_password.html:11
#, python-format
msgid "Change Password for %(username)s"
msgstr "为%(username)s更改密码"
-#: plinth/modules/users/templates/users_change_password.html:36
+#: plinth/modules/users/templates/users_change_password.html:21
msgid "Save Password"
msgstr "保存密码"
-#: plinth/modules/users/templates/users_create.html:32
-#: plinth/modules/users/templates/users_list.html:42
-#: plinth/modules/users/templates/users_list.html:44
-#: plinth/modules/users/views.py:57
+#: plinth/modules/users/templates/users_create.html:17
+#: plinth/modules/users/templates/users_list.html:27
+#: plinth/modules/users/templates/users_list.html:29
+#: plinth/modules/users/views.py:42
msgid "Create User"
msgstr "创建用户"
-#: plinth/modules/users/templates/users_delete.html:26
-#: plinth/modules/users/views.py:139
+#: plinth/modules/users/templates/users_delete.html:11
+#: plinth/modules/users/views.py:121
msgid "Delete User"
msgstr "删除用户"
-#: plinth/modules/users/templates/users_delete.html:29
+#: plinth/modules/users/templates/users_delete.html:14
#, python-format
msgid "Delete user %(username)s permanently?"
msgstr "永久删除用户 %(username)s?"
-#: plinth/modules/users/templates/users_delete.html:38
+#: plinth/modules/users/templates/users_delete.html:23
#, python-format
msgid "Delete %(username)s"
msgstr "删除 %(username)s"
-#: plinth/modules/users/templates/users_firstboot.html:26
+#: plinth/modules/users/templates/users_firstboot.html:11
msgid "Administrator Account"
msgstr "管理员帐户"
-#: plinth/modules/users/templates/users_firstboot.html:29
+#: plinth/modules/users/templates/users_firstboot.html:14
msgid ""
"Choose a username and password to access this web interface. The password "
"can be changed later. This user will be granted administrative privileges. "
@@ -6330,85 +6443,80 @@ msgstr ""
"选择一个用户名和密码才能访问此 web 界面。以后可以更改密码。此用户将被授予管理"
"权限。其他用户可以在以后添加。"
-#: plinth/modules/users/templates/users_firstboot.html:42
+#: plinth/modules/users/templates/users_firstboot.html:27
msgid "Create Account"
msgstr "创建帐户"
-#: plinth/modules/users/templates/users_list.html:38
-#: plinth/modules/users/views.py:74
+#: plinth/modules/users/templates/users_list.html:23
+#: plinth/modules/users/views.py:59
msgid "Users"
msgstr "用户"
-#: plinth/modules/users/templates/users_list.html:57
+#: plinth/modules/users/templates/users_list.html:42
#, python-format
msgid "Delete user %(username)s"
msgstr "删除用户 %(username)s"
-#: plinth/modules/users/templates/users_list.html:65
+#: plinth/modules/users/templates/users_list.html:50
#, python-format
msgid "Edit user %(username)s"
msgstr "编辑用户 %(username)s"
-#: plinth/modules/users/templates/users_update.html:30
+#: plinth/modules/users/templates/users_update.html:15
#, python-format
msgid ""
"Use the change password form to "
"change the password."
msgstr "使用 更改密码窗口 更改密码。"
-#: plinth/modules/users/templates/users_update.html:42
-#: plinth/templates/language-selection.html:32
+#: plinth/modules/users/templates/users_update.html:27
+#: plinth/templates/language-selection.html:17
msgid "Save Changes"
msgstr "保存更改"
-#: plinth/modules/users/views.py:55
+#: plinth/modules/users/views.py:40
#, python-format
msgid "User %(username)s created."
msgstr "用户 %(username)s 已创建。"
-#: plinth/modules/users/views.py:93
+#: plinth/modules/users/views.py:75
#, python-format
msgid "User %(username)s updated."
msgstr "用户 %(username)s 已更新。"
-#: plinth/modules/users/views.py:94
+#: plinth/modules/users/views.py:76
msgid "Edit User"
msgstr "编辑用户"
-#: plinth/modules/users/views.py:149
+#: plinth/modules/users/views.py:131
#, python-brace-format
msgid "User {user} deleted."
msgstr "用户 {user} 已删除。"
-#: plinth/modules/users/views.py:156
+#: plinth/modules/users/views.py:138
msgid "Deleting LDAP user failed."
msgstr "删除 LDAP 用户失败。"
-#: plinth/modules/users/views.py:165
+#: plinth/modules/users/views.py:147
msgid "Change Password"
msgstr "更改密码"
-#: plinth/modules/users/views.py:166
+#: plinth/modules/users/views.py:148
msgid "Password changed successfully."
msgstr "已成功更改密码。"
-#: plinth/modules/wireguard/__init__.py:38
-#: plinth/modules/wireguard/manifest.py:29
-msgid "WireGuard"
-msgstr ""
-
-#: plinth/modules/wireguard/__init__.py:43
+#: plinth/modules/wireguard/__init__.py:24
msgid "WireGuard is a fast, modern, secure VPN tunnel."
msgstr ""
-#: plinth/modules/wireguard/__init__.py:45
+#: plinth/modules/wireguard/__init__.py:26
#, python-brace-format
msgid ""
"It can be used to connect to a VPN provider which supports WireGuard, and to "
"route all outgoing traffic from {box_name} through the VPN."
msgstr ""
-#: plinth/modules/wireguard/__init__.py:49
+#: plinth/modules/wireguard/__init__.py:30
#, python-brace-format
msgid ""
"A second use case is to connect a mobile device to {box_name} while "
@@ -6416,67 +6524,72 @@ msgid ""
"securely relayed through {box_name}."
msgstr ""
-#: plinth/modules/wireguard/forms.py:47
+#: plinth/modules/wireguard/__init__.py:52
+#: plinth/modules/wireguard/manifest.py:14
+msgid "WireGuard"
+msgstr ""
+
+#: plinth/modules/wireguard/forms.py:32
#, fuzzy
#| msgid "Invalid kite name"
msgid "Invalid key."
msgstr "无效的 Kite 名称"
-#: plinth/modules/wireguard/forms.py:76
-#: plinth/modules/wireguard/templates/wireguard.html:32
-#: plinth/modules/wireguard/templates/wireguard.html:89
-#: plinth/modules/wireguard/templates/wireguard_delete_server.html:38
+#: plinth/modules/wireguard/forms.py:61
+#: plinth/modules/wireguard/templates/wireguard.html:17
+#: plinth/modules/wireguard/templates/wireguard.html:74
+#: plinth/modules/wireguard/templates/wireguard_delete_server.html:23
#, fuzzy
#| msgid "Publish Key"
msgid "Public Key"
msgstr "发布密钥"
-#: plinth/modules/wireguard/forms.py:77
+#: plinth/modules/wireguard/forms.py:62
msgid ""
"Public key of the peer. Example: "
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs= ."
msgstr ""
-#: plinth/modules/wireguard/forms.py:85
+#: plinth/modules/wireguard/forms.py:70
msgid "Endpoint of the server"
msgstr ""
-#: plinth/modules/wireguard/forms.py:86
+#: plinth/modules/wireguard/forms.py:71
msgid ""
"Domain name and port in the form \"ip:port\". Example: demo.wireguard."
"com:12912 ."
msgstr ""
-#: plinth/modules/wireguard/forms.py:91
+#: plinth/modules/wireguard/forms.py:76
#, fuzzy
#| msgid "Published key to keyserver."
msgid "Public key of the server"
msgstr "已发布到密钥服务器的密钥。"
-#: plinth/modules/wireguard/forms.py:92
+#: plinth/modules/wireguard/forms.py:77
msgid ""
"Provided by the server operator, a long string of characters. Example: "
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs= ."
msgstr ""
-#: plinth/modules/wireguard/forms.py:97
+#: plinth/modules/wireguard/forms.py:82
#, fuzzy
#| msgid "A list of IP addresses, separated by space"
msgid "Client IP address provided by server"
msgstr "IP 地址列表,用空格分隔"
-#: plinth/modules/wireguard/forms.py:98
+#: plinth/modules/wireguard/forms.py:83
msgid ""
"IP address assigned to this machine on the VPN after connecting to the "
"endpoint. This value is usually provided by the server operator. Example: "
"192.168.0.10."
msgstr ""
-#: plinth/modules/wireguard/forms.py:104
+#: plinth/modules/wireguard/forms.py:89
msgid "Private key of this machine"
msgstr ""
-#: plinth/modules/wireguard/forms.py:105
+#: plinth/modules/wireguard/forms.py:90
msgid ""
"Optional. New public/private keys are generated if left blank. Public key "
"can then be provided to the server. This is the recommended way. However, "
@@ -6484,70 +6597,70 @@ msgid ""
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs= ."
msgstr ""
-#: plinth/modules/wireguard/forms.py:113
+#: plinth/modules/wireguard/forms.py:98
msgid "Pre-shared key"
msgstr ""
-#: plinth/modules/wireguard/forms.py:114
+#: plinth/modules/wireguard/forms.py:99
msgid ""
"Optional. A shared secret key provided by the server to add an additional "
"layer of security. Fill in only if provided. Example: "
"MConEJFIg6+DFHg2J1nn9SNLOSE9KR0ysdPgmPjibEs=."
msgstr ""
-#: plinth/modules/wireguard/forms.py:120
+#: plinth/modules/wireguard/forms.py:105
msgid "Use this connection to send all outgoing traffic"
msgstr ""
-#: plinth/modules/wireguard/forms.py:122
+#: plinth/modules/wireguard/forms.py:107
msgid "Typically checked for a VPN service though which all traffic is sent."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:25
+#: plinth/modules/wireguard/templates/wireguard.html:10
#, fuzzy
#| msgid "Web Server"
msgid "As a Server"
msgstr "Web 服务器"
-#: plinth/modules/wireguard/templates/wireguard.html:27
+#: plinth/modules/wireguard/templates/wireguard.html:12
msgid "Peers allowed to connect to this server:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:33
+#: plinth/modules/wireguard/templates/wireguard.html:18
msgid "Allowed IPs"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:34
-#: plinth/modules/wireguard/templates/wireguard.html:90
+#: plinth/modules/wireguard/templates/wireguard.html:19
+#: plinth/modules/wireguard/templates/wireguard.html:75
#, fuzzy
#| msgid "Create Connection"
msgid "Last Connected Time"
msgstr "创建连接"
-#: plinth/modules/wireguard/templates/wireguard.html:53
+#: plinth/modules/wireguard/templates/wireguard.html:38
#, python-format
msgid "No peers configured to connect to this %(box_name)s yet."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:62
+#: plinth/modules/wireguard/templates/wireguard.html:47
#, python-format
msgid "Public key for this %(box_name)s:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:68
+#: plinth/modules/wireguard/templates/wireguard.html:53
msgid "Not configured yet."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:72
+#: plinth/modules/wireguard/templates/wireguard.html:57
msgid "Add a new peer"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:76
-#: plinth/modules/wireguard/views.py:69
+#: plinth/modules/wireguard/templates/wireguard.html:61
+#: plinth/modules/wireguard/views.py:51
msgid "Add Allowed Client"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:79
+#: plinth/modules/wireguard/templates/wireguard.html:64
#, fuzzy
#| msgid ""
#| "Chat Client \n"
@@ -6557,52 +6670,52 @@ msgstr ""
"聊天客户端\n"
"(JSXC)"
-#: plinth/modules/wireguard/templates/wireguard.html:81
+#: plinth/modules/wireguard/templates/wireguard.html:66
#, python-format
msgid "Servers that %(box_name)s will connect to:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:88
-#: plinth/modules/wireguard/templates/wireguard_delete_server.html:34
+#: plinth/modules/wireguard/templates/wireguard.html:73
+#: plinth/modules/wireguard/templates/wireguard_delete_server.html:19
msgid "Endpoint"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:111
+#: plinth/modules/wireguard/templates/wireguard.html:96
#, fuzzy
#| msgid "Authentication to remote server failed."
msgid "No connections to remote servers are configured yet."
msgstr "远程服务器认证失败。"
-#: plinth/modules/wireguard/templates/wireguard.html:119
+#: plinth/modules/wireguard/templates/wireguard.html:104
msgid "Add a new server"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard.html:123
-#: plinth/modules/wireguard/views.py:178
+#: plinth/modules/wireguard/templates/wireguard.html:108
+#: plinth/modules/wireguard/views.py:160
#, fuzzy
#| msgid "Add Connection"
msgid "Add Connection to Server"
msgstr "添加连接"
-#: plinth/modules/wireguard/templates/wireguard_add_client.html:34
+#: plinth/modules/wireguard/templates/wireguard_add_client.html:19
#, fuzzy
#| msgid "Quassel IRC Client"
msgid "Add Client"
msgstr "Quassel IRC 客户端"
-#: plinth/modules/wireguard/templates/wireguard_delete_client.html:29
+#: plinth/modules/wireguard/templates/wireguard_delete_client.html:14
#, fuzzy
#| msgid "Are you sure that you want to remove this repository?"
msgid "Are you sure that you want to delete this client?"
msgstr "你确定你想移除这一项存储吗?"
-#: plinth/modules/wireguard/templates/wireguard_delete_server.html:29
+#: plinth/modules/wireguard/templates/wireguard_delete_server.html:14
#, fuzzy
#| msgid "Are you sure that you want to remove this repository?"
msgid "Are you sure that you want to delete this server?"
msgstr "你确定你想移除这一项存储吗?"
-#: plinth/modules/wireguard/templates/wireguard_edit_client.html:34
+#: plinth/modules/wireguard/templates/wireguard_edit_client.html:19
#, fuzzy
#| msgid ""
#| "Chat Client \n"
@@ -6612,61 +6725,61 @@ msgstr ""
"聊天客户端\n"
"(JSXC)"
-#: plinth/modules/wireguard/templates/wireguard_edit_server.html:34
+#: plinth/modules/wireguard/templates/wireguard_edit_server.html:19
#, fuzzy
#| msgid "Create Connection"
msgid "Update Connection"
msgstr "创建连接"
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:27
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:12
#, python-format
msgid ""
"%(box_name)s will allow this client to connect to it. Ensure that the client "
"is configured with the following information."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:35
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:20
msgid "Client public key:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:39
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:24
msgid "IP address to use for client:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:43
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:46
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:28
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:31
msgid "Pre-shared key:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:47
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:32
#, fuzzy
#| msgid "Server domain"
msgid "Server endpoints:"
msgstr "服务器域"
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:55
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:42
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:40
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:27
#, fuzzy
#| msgid "Select verified SSH public key"
msgid "Server public key:"
msgstr "选择经过验证的 SSH 公钥"
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:65
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:64
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:50
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:49
msgid "Data transmitted:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:69
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:68
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:54
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:53
msgid "Data received:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_client.html:73
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:72
+#: plinth/modules/wireguard/templates/wireguard_show_client.html:58
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:57
msgid "Latest handshake:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:29
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:14
#, python-format
msgid ""
"%(box_name)s will attempt to reach a WireGuard server with the following "
@@ -6674,31 +6787,31 @@ msgid ""
"public key and IP address."
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:38
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:23
#, fuzzy
#| msgid "Server domain"
msgid "Server endpoint:"
msgstr "服务器域"
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:50
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:35
msgid "Public key of this machine:"
msgstr ""
-#: plinth/modules/wireguard/templates/wireguard_show_server.html:54
+#: plinth/modules/wireguard/templates/wireguard_show_server.html:39
msgid "IP address of this machine:"
msgstr ""
-#: plinth/modules/wireguard/views.py:64
+#: plinth/modules/wireguard/views.py:46
msgid "Added new client."
msgstr ""
-#: plinth/modules/wireguard/views.py:79 plinth/modules/wireguard/views.py:138
+#: plinth/modules/wireguard/views.py:61 plinth/modules/wireguard/views.py:120
#, fuzzy
#| msgid "This service already exists"
msgid "Client with public key already exists"
msgstr "此服务已存在"
-#: plinth/modules/wireguard/views.py:92
+#: plinth/modules/wireguard/views.py:74
#, fuzzy
#| msgid ""
#| "Email Client \n"
@@ -6708,13 +6821,13 @@ msgstr ""
"邮件客户端\n"
"(Roundcube)"
-#: plinth/modules/wireguard/views.py:114
+#: plinth/modules/wireguard/views.py:96
#, fuzzy
#| msgid "Update setup"
msgid "Updated client."
msgstr "更新安装程序"
-#: plinth/modules/wireguard/views.py:119
+#: plinth/modules/wireguard/views.py:101
#, fuzzy
#| msgid ""
#| "Email Client \n"
@@ -6724,108 +6837,108 @@ msgstr ""
"邮件客户端\n"
"(Roundcube)"
-#: plinth/modules/wireguard/views.py:152
+#: plinth/modules/wireguard/views.py:134
#, fuzzy
#| msgid "Delete"
msgid "Delete Allowed Client"
msgstr "删除"
-#: plinth/modules/wireguard/views.py:161
+#: plinth/modules/wireguard/views.py:143
#, fuzzy
#| msgid "Archive deleted."
msgid "Client deleted."
msgstr "归档已删除。"
-#: plinth/modules/wireguard/views.py:163
+#: plinth/modules/wireguard/views.py:145
#, fuzzy
#| msgid "Repository not found"
msgid "Client not found"
msgstr "找不到存储库"
-#: plinth/modules/wireguard/views.py:173
+#: plinth/modules/wireguard/views.py:155
#, fuzzy
#| msgid "Added custom service"
msgid "Added new server."
msgstr "已添加的自定义服务"
-#: plinth/modules/wireguard/views.py:194
+#: plinth/modules/wireguard/views.py:176
#, fuzzy
#| msgid "Connection Type"
msgid "Connection to Server"
msgstr "连接类型"
-#: plinth/modules/wireguard/views.py:212
+#: plinth/modules/wireguard/views.py:194
#, fuzzy
#| msgid "Update setup"
msgid "Updated server."
msgstr "更新安装程序"
-#: plinth/modules/wireguard/views.py:217
+#: plinth/modules/wireguard/views.py:199
#, fuzzy
#| msgid "Edit Connection"
msgid "Modify Connection to Server"
msgstr "编辑连接"
-#: plinth/modules/wireguard/views.py:254
+#: plinth/modules/wireguard/views.py:236
#, fuzzy
#| msgid "Delete Connection"
msgid "Delete Connection to Server"
msgstr "删除连接"
-#: plinth/modules/wireguard/views.py:274
+#: plinth/modules/wireguard/views.py:256
#, fuzzy
#| msgid "{name} deleted."
msgid "Server deleted."
msgstr "{name} 已删除。"
-#: plinth/network.py:42
+#: plinth/network.py:27
msgid "PPPoE"
msgstr "PPPoE"
-#: plinth/network.py:43
+#: plinth/network.py:28
msgid "Generic"
msgstr "通用"
-#: plinth/package.py:137
+#: plinth/package.py:122
msgid "Error during installation"
msgstr "安装时错误"
-#: plinth/package.py:159
+#: plinth/package.py:144
msgid "installing"
msgstr "安装"
-#: plinth/package.py:161
+#: plinth/package.py:146
msgid "downloading"
msgstr "下载中"
-#: plinth/package.py:163
+#: plinth/package.py:148
msgid "media change"
msgstr "媒体改变"
-#: plinth/package.py:165
+#: plinth/package.py:150
#, python-brace-format
msgid "configuration file: {file}"
msgstr "配置文件:{file}"
-#: plinth/templates/403.html:25
+#: plinth/templates/403.html:10
msgid "403 Forbidden"
msgstr ""
-#: plinth/templates/403.html:29
+#: plinth/templates/403.html:14
#, python-format
msgid "You don't have permission to access %(request_path)s on this server."
msgstr ""
-#: plinth/templates/404.html:25
+#: plinth/templates/404.html:10
msgid "404"
msgstr "404"
-#: plinth/templates/404.html:28
+#: plinth/templates/404.html:13
#, python-format
msgid "Requested page %(request_path)s was not found."
msgstr "找不到请求的页面 %(request_path)s。"
-#: plinth/templates/404.html:34
+#: plinth/templates/404.html:19
#, fuzzy
#| msgid ""
#| "If you believe this missing page should exist, please file a bug at the "
@@ -6839,11 +6952,11 @@ msgstr ""
"如果你相信这个丢失的页面应该存在,请在 Plinth 项目 问题跟踪 报告 bug。"
-#: plinth/templates/500.html:25
+#: plinth/templates/500.html:10
msgid "500"
msgstr "500"
-#: plinth/templates/500.html:29
+#: plinth/templates/500.html:14
#, fuzzy, python-format
#| msgid ""
#| "This is an internal error and not something you caused or can fix. "
@@ -6860,76 +6973,80 @@ msgstr ""
"com/freedombox/Plinth/issues\"> bug 追踪器 上这样我们就可以修复该错误。同"
"时请附加状态日志到 Bug 报告里。"
-#: plinth/templates/app.html:47
+#: plinth/templates/app-header.html:22
+msgid "Installation"
+msgstr "安装"
+
+#: plinth/templates/app.html:32
#, fuzzy, python-format
#| msgid "Service discovery server is running"
msgid "Service %(service_name)s is running."
msgstr "服务发现服务正在运行"
-#: plinth/templates/app.html:52
+#: plinth/templates/app.html:37
#, fuzzy, python-format
#| msgid "Service discovery server is not running"
msgid "Service %(service_name)s is not running."
msgstr "服务发现服务未运行"
-#: plinth/templates/base.html:50
+#: plinth/templates/base.html:35
#, fuzzy, python-format
#| msgid "Plinth administrative interface for the %(box_name)s"
msgid "Core functionality and web interface for %(box_name)s"
msgstr "Plinth %(box_name)s 管理界面"
-#: plinth/templates/base.html:96
+#: plinth/templates/base.html:81
msgid "Toggle navigation"
msgstr "切换导航"
-#: plinth/templates/base.html:120 plinth/templates/base.html:123
+#: plinth/templates/base.html:105 plinth/templates/base.html:108
msgid "Home"
msgstr "主页"
-#: plinth/templates/base.html:128 plinth/templates/base.html:132
+#: plinth/templates/base.html:113 plinth/templates/base.html:117
msgid "Apps"
msgstr "应用程序"
-#: plinth/templates/base.html:137 plinth/templates/base.html:141
+#: plinth/templates/base.html:122 plinth/templates/base.html:126
msgid "System"
msgstr "系统"
-#: plinth/templates/base.html:173 plinth/templates/base.html:174
+#: plinth/templates/base.html:158 plinth/templates/base.html:159
msgid "Change password"
msgstr "更改密码"
-#: plinth/templates/base.html:181 plinth/templates/base.html:182
+#: plinth/templates/base.html:166 plinth/templates/base.html:167
#, fuzzy
#| msgid "Restart Now"
msgid "Restart"
msgstr "现在重新启动"
-#: plinth/templates/base.html:187 plinth/templates/base.html:188
+#: plinth/templates/base.html:172 plinth/templates/base.html:173
#, fuzzy
#| msgid "Shut Down Now"
msgid "Shut down"
msgstr "现在关闭"
-#: plinth/templates/base.html:195 plinth/templates/base.html:196
-#: plinth/templates/base.html:220 plinth/templates/base.html:222
+#: plinth/templates/base.html:180 plinth/templates/base.html:181
+#: plinth/templates/base.html:205 plinth/templates/base.html:207
msgid "Log out"
msgstr "登出"
-#: plinth/templates/base.html:204 plinth/templates/base.html:207
+#: plinth/templates/base.html:189 plinth/templates/base.html:192
#, fuzzy
#| msgid "Language"
msgid "Select language"
msgstr "语言"
-#: plinth/templates/base.html:212 plinth/templates/base.html:214
+#: plinth/templates/base.html:197 plinth/templates/base.html:199
msgid "Log in"
msgstr "登录"
-#: plinth/templates/clients.html:32
+#: plinth/templates/clients.html:17
msgid "Web"
msgstr ""
-#: plinth/templates/clients.html:57
+#: plinth/templates/clients.html:42
#, fuzzy
#| msgid ""
#| "Chat Client \n"
@@ -6939,19 +7056,19 @@ msgstr ""
"聊天客户端\n"
"(JSXC)"
-#: plinth/templates/clients.html:68
+#: plinth/templates/clients.html:53
msgid "GNU/Linux"
msgstr ""
-#: plinth/templates/clients.html:70
+#: plinth/templates/clients.html:55
msgid "Windows"
msgstr ""
-#: plinth/templates/clients.html:72
+#: plinth/templates/clients.html:57
msgid "macOS"
msgstr ""
-#: plinth/templates/clients.html:88
+#: plinth/templates/clients.html:73
#, fuzzy
#| msgid ""
#| "Email Client \n"
@@ -6961,48 +7078,44 @@ msgstr ""
"邮件客户端\n"
"(Roundcube)"
-#: plinth/templates/clients.html:99
+#: plinth/templates/clients.html:84
msgid "Play Store"
msgstr ""
-#: plinth/templates/clients.html:101
+#: plinth/templates/clients.html:86
msgid "F-Droid"
msgstr ""
-#: plinth/templates/clients.html:103
+#: plinth/templates/clients.html:88
#, fuzzy
#| msgid "reStore"
msgid "App Store"
msgstr "reStore"
-#: plinth/templates/clients.html:119
+#: plinth/templates/clients.html:104
msgid "Package"
msgstr "软件包"
-#: plinth/templates/clients.html:126
+#: plinth/templates/clients.html:111
msgid "Debian:"
msgstr ""
-#: plinth/templates/clients.html:129
+#: plinth/templates/clients.html:114
msgid "Homebrew:"
msgstr ""
-#: plinth/templates/clients.html:132
+#: plinth/templates/clients.html:117
msgid "RPM:"
msgstr ""
-#: plinth/templates/first_setup.html:39
+#: plinth/templates/first_setup.html:24
#, python-format
msgid ""
"Please wait for %(box_name)s to finish installation. You can start using "
"your %(box_name)s once it is done."
msgstr ""
-#: plinth/templates/header.html:36
-msgid "Installation"
-msgstr "安装"
-
-#: plinth/templates/index.html:37
+#: plinth/templates/index.html:22
#, python-format
msgid ""
"Enable some applications to add shortcuts to "
@@ -7010,11 +7123,11 @@ msgid ""
msgstr ""
"启用一些应用程序来将其快捷方式放到此页面。"
-#: plinth/templates/index.html:59
+#: plinth/templates/index.html:44
msgid "Configure »"
msgstr "配置 »;"
-#: plinth/templates/index.html:115
+#: plinth/templates/index.html:100
#, python-format
msgid ""
"%(box_name)s, a Debian pure blend, is a 100%% free software self-hosting web "
@@ -7024,7 +7137,7 @@ msgstr ""
"%(box_name)s 是一个基于 Debian 并完全使用自由软件来自托管部署社交应用的小机"
"器。它提供在线交流工具以尊重您的隐私和数据所有权。"
-#: plinth/templates/index.html:124
+#: plinth/templates/index.html:109
#, fuzzy, python-format
#| msgid ""
#| "This portal is a part of Plinth, the %(box_name)s web interface. Plinth "
@@ -7038,62 +7151,62 @@ msgstr ""
"此页面是 Plinth 的一部分,%(box_name)s 的 Web 接口。Plinth 是自由软件,以 "
"GNU Affero 通用许可证第 3 版或更高版发布。"
-#: plinth/templates/index.html:144
+#: plinth/templates/index.html:129
msgid "Homepage"
msgstr "主页"
-#: plinth/templates/index.html:147
+#: plinth/templates/index.html:132
msgid "Source Code"
msgstr "源代码"
-#: plinth/templates/index.html:150
+#: plinth/templates/index.html:135
msgid "Donate"
msgstr "捐赠"
-#: plinth/templates/index.html:154
+#: plinth/templates/index.html:139
#, fuzzy
#| msgid "FreedomBox"
msgid "FreedomBox Foundation"
msgstr "FreedomBox"
-#: plinth/templates/index.html:161
+#: plinth/templates/index.html:146
msgid "IRC Chatroom"
msgstr ""
-#: plinth/templates/index.html:166
+#: plinth/templates/index.html:151
msgid "Mailing list"
msgstr "邮件列表"
-#: plinth/templates/internal-zone.html:26
+#: plinth/templates/internal-zone.html:11
#, fuzzy, python-format
#| msgid "Service discovery server is not running"
msgid "%(service_name)s is available only on internal networks."
msgstr "服务发现服务未运行"
-#: plinth/templates/internal-zone.html:32
+#: plinth/templates/internal-zone.html:17
msgid "Currently there are no network interfaces configured as internal."
msgstr ""
-#: plinth/templates/internal-zone.html:34
+#: plinth/templates/internal-zone.html:19
#, python-format
msgid ""
"Currently the following network interfaces are configured as internal: "
"%(interface_list)s"
msgstr ""
-#: plinth/templates/notifications-dropdown.html:26
+#: plinth/templates/notifications-dropdown.html:11
#, fuzzy
#| msgid "No certificate"
msgid "Notifications"
msgstr "没有证书"
-#: plinth/templates/port-forwarding-info.html:23
+#: plinth/templates/port-forwarding-info.html:8
#, fuzzy
#| msgid "Enable forwarding"
msgid "Port Forwarding"
msgstr "启用转发"
-#: plinth/templates/port-forwarding-info.html:26
+#: plinth/templates/port-forwarding-info.html:11
#, python-format
msgid ""
"If your FreedomBox is behind a router, you will need to set up port "
@@ -7101,65 +7214,65 @@ msgid ""
"%(service_name)s:"
msgstr ""
-#: plinth/templates/setup.html:51
+#: plinth/templates/setup.html:36
msgid "Install this application?"
msgstr "安装此应用程序?"
-#: plinth/templates/setup.html:55
+#: plinth/templates/setup.html:40
msgid "This application needs an update. Update now?"
msgstr "此应用程序需要一次更新。立即更新?"
-#: plinth/templates/setup.html:66
+#: plinth/templates/setup.html:51
msgid ""
"Another installation or upgrade is already running. Please wait for a few "
"moments before trying again."
msgstr ""
-#: plinth/templates/setup.html:73
+#: plinth/templates/setup.html:58
msgid "This application is currently not available in your distribution."
msgstr "这项应用现在在你不中无法使用"
-#: plinth/templates/setup.html:87
+#: plinth/templates/setup.html:72
msgid "Install"
msgstr "安装"
-#: plinth/templates/setup.html:98
+#: plinth/templates/setup.html:83
msgid "Performing pre-install operation"
msgstr "执行安装前操作"
-#: plinth/templates/setup.html:102
+#: plinth/templates/setup.html:87
msgid "Performing post-install operation"
msgstr "执行安装后操作"
-#: plinth/templates/setup.html:107
+#: plinth/templates/setup.html:92
#, python-format
msgid "Installing %(package_names)s: %(status)s"
msgstr "正在安装 %(package_names)s:%(status)s"
-#: plinth/templates/setup.html:117
+#: plinth/templates/setup.html:102
#, python-format
msgid "%(percentage)s%% complete"
msgstr "已完成 %(percentage)s%%"
-#: plinth/templates/toolbar.html:38
+#: plinth/templates/toolbar.html:23
msgid "Launch web client"
msgstr "启动 web 客户端"
-#: plinth/templates/toolbar.html:47
+#: plinth/templates/toolbar.html:32
#, fuzzy
#| msgid "Quassel IRC Client"
msgid "Client Apps"
msgstr "Quassel IRC 客户端"
-#: plinth/views.py:179
+#: plinth/views.py:189
msgid "Application enabled"
msgstr "应用程序已启用"
-#: plinth/views.py:182
+#: plinth/views.py:192
msgid "Application disabled"
msgstr "应用程序已禁用"
-#: plinth/web_framework.py:190
+#: plinth/web_framework.py:107
msgid "Gujarati"
msgstr "古吉拉特语"